2023年3月16日木曜日

FM-7にRTCとSDを接続する試み(SDカード編 その1)

ようやくSDカード(SDHCカードも)のセクタの読み書きができました

まだ完成途上なのですが、一応、必要なセクタを読み書きできるようになりました。

任意のセクタの読み書きに加えて、MBR(マスタブートレコード)、BPB(ブートパラメータブロック)、FAT(ファイルアロケーションテーブル)、DIR(ディレクトリ)と指定したファイルの最初のセクタを読むことができます。もちろん、SDカードのみでなくSDHCカードもOKです。


まずはFM-7との接続の様子です。前回の報告ではFM-7本体に装着していましたが、今回は拡張基板上に装着しています。後ろにFDCカードとFT245カードが並んでおり、50Pフラットケーブルで本体の拡張コネクタに接続しています。


設置状態


SDカードでの起動画面です。
SDカードの初期化とカード種別の判別の終了後にメニューが表示されます。



SDカードの起動画面


SDHCカードでの起動画面です。


SDHCカードの起動画面


メニュー項目は
1.指定したセクタのリード
2.指定したセクタのライト
3.SDカードのデータ取得・表示
4.SDカードの初期化
5.MBR(Master Boot Record)内容の表示
6.BPB(Boot Parameter Block)内容の表示
7.FAT(File Allocation Table)内容の表示
8.DIR(Directory)内容の表示...(先頭セクタのみです)
9.ファイル内容の表示...(先頭セクタのみです)
です。

メニュー実行の例として、DIR内容を表示させてみます。
ファイル名、サイズ、作成日、クラスタ上位、クラスタ下位を表示させています。
先頭の番号は、9.ファイル内容の表示で使用します。



SDカードのディレクトリ表示


メニュー9です。
ファイル番号を入力するとそのファイルの内容が表示されます。(現在はテストプログラムですので、先頭セクタのみの表示です。)
この画面はSDHCカードの場合で、3行目のような意味不明の表示がありますが、これは4行目のファイル名中に小文字が使用されているためです。(拡張子が.Lstでした)
ということで、FAT32も使用できますが、ファイル名に小文字は使用できないという制限があります。


ファイル番号入力待ち


FM-7では一行が80文字までという制限があるために1セクタのデータの512バイトがうまく一画面に収まらないので、表示結果の画像はありません。代わりに、開発に使用しているFLEX9上での画面を示します。



FLEX9での動作の様子



以上、現在実現できていることのうち、読み込み機能について紹介しました。
ファイル名に小文字が使えませんし、もちろんフォルダも使用できませんが、目的がFM-7への実装ですので、どちらも問題にはなりません。
問題は、WindowsPC等でSDカードに保存したテキスト等のデータをFM-7で読み出せたとして、それをFM-7のシステムでどのようにして利用するかです。
最も簡単な方法としては、読み込んだデータをメモリ上に展開しておいてF-BASICからそれを読み込んでファイル化するという方法が考えられます。小さなデータならこれでも間に合いそうですが...

SDカードをドライブ2に割り付けることができて、FILES, LOAD, SAVEなどが使用できればベストなのですが、実現するにはなかなか敷居が高そうです...
また、プログラムサイズも結構大きくなりそうですので、どう組み込むかも課題です。

まだまだ完成には遠いですが、今回作成したサブルーチン等をベースにして仕上げていくことになると思いますので、雑な作りのものですが、作成したプログラムを紹介しておきます。


0001				*
0002				*  SDHC8FM.TXT
0003				*
0004				*  SD Read/Write on SBC for FM-7
0005				*
0006				*    use RTC & SD Card
0007				*
0008				*    6821(PIA) Port A ---- RTC (I2C Mode)
0009				*
0010				*        SBC      RTC                    Ext IO
0011				*    CA2  2  ---       ---  HV4 LV4 ---  IO1
0012				*    PA0  3  ---  SCL  ---  HV1 LV1 ---  IO4
0013				*    PA1  4  ---       ---  HV2 LV2 ---  IO3
0014				*    PA7 10  ---  SDA  ---  HV3 LV3 ---  IO2
0015				*    GND     --        --           --   GND
0016				*            --        --           --   3V3
0017				*
0018				*
0019				*    6821(PIA) Port B ---- SD (SPI Mode)
0020				*
0021				*        SBC                   SD
0022				*    CB2 12  ---  HV4 LV4 ---  SCK
0023				*    PB0 13  ---  HV1 LV1 ---  CS
0024				*    PB1 14  ---  HV2 LV2 ---  MISO
0025				*    PB7 20  ---  HV3 LV3 ---  MOSI
0026				*    GND 31  --           --   GND
0027				*    VCC 33  --           --   VCC
0028				*
0029				*    cf. all data line use level converter
0030				*
0031				*    PB  output mode
0032				*    CB2 1bit output
0033				*
0034				*    READ/WRITE BUFFER  $6E00 - 6FFF
0035				*
0036				*    Add command        '2023.03.14
0037				*    Change use Port B  '2023.03.07
0038				*    Original version   '2022.06.11
0039				*         Copyright by Y.Yamamoto
0040				*
0041	6000			STTADR	EQU     $6000   		
0042	FBB8			INCHA 	EQU     $FBB8   		
0043	FBBB			OUTCHA	EQU     $FBBB   		
0044				
0045	6E00			RWBUF 	EQU     STTADR+$E00		
0046				
0047	FD9E			PBDAT 	EQU     $FD9E   		
0048	FD9F			PBCTL 	EQU     PBDAT+1 		
0049				
0050	6000			      	ORG     STTADR  		
0051				
0052	6000	20	27	START 	BRA     MAIN    		
0053	6002	01		VN    	FCB     1       		
0054	6003	00		SCTN0 	FCB     0       		top adrs of sct
0055	6004	00		SCTN1 	FCB     0       		
0056	6005	00		SCTN2 	FCB     0       		
0057	6006	00		SCTN3 	FCB     0       		
0058	6007	00		RESDAT	FCB     0       		response data
0059	6008	00		SDHC  	FCB     0       		sd:0,sdhc:1
0060				
0061	6009	0000		SCTBPB	FDB     00      		sct no of BPB(4bytes)
0062	600B	0000		      	FDB     00      		
0063	600D	0000		SCTFAT	FDB     00      		sct no of FAT#1(4bytes)
0064	600F	0000		      	FDB     00      		
0065	6011	0000		SCTDIR	FDB     00      		sct no of DIR(4bytes)
0066	6013	0000		      	FDB     00      		
0067	6015	0000		SCTCLT	FDB     00      		sct no of top CLUSTER(4bytes)
0068	6017	0000		      	FDB     00      		if SD:#2, SDHC:#3
0069	6019	00		SCTPCL	FCB     0       		sct per cluster
0070	601A	FF		WMDY  	RMB     3       		
0071	601D	FF		WFSIZ 	RMB     4       		
0072	6021	0000		CLSTH 	FDB     00      		
0073	6023	0000		CLSTL 	FDB     00      		
0074	6025	0000		WK1   	FDB     00      		
0075	6027	0000		WK2   	FDB     00      		
0076				
0077	6029			MAIN  	EQU     *       		
0078				*=====reset pia=====
0079				*portB:output
0080	6029	86	30	      	LDA     #$30    		
0081	602B	B7	FD9F	      	STA     PBCTL   		select ddra, cb2:0
0082	602E	86	FD	      	LDA     #$FD    		pb0,7:out,pb1:in
0083	6030	B7	FD9E	      	STA     PBDAT   		set output mode
0084	6033	86	34	      	LDA     #$34    		
0085	6035	B7	FD9F	      	STA     PBCTL   		select peripheral,cb2:0
0086				 
0087				*for pia exist check
0088	6038	86	55	      	LDA     #$55    		test data
0089	603A	B7	FD9E	      	STA     PBDAT   		
0090	603D	B6	FD9E	      	LDA     PBDAT   		
0091	6040	84	FD	      	ANDA    #$FD    		pb1=0
0092	6042	81	55	      	CMPA    #$55    		
0093	6044	27	07	      	BEQ     INIT    		
0094	6046	8E	68DF	      	LDX     #MERR   		
0095	6049	17	067B	      	LBSR    PSTRNG  		
0096	604C	39		      	RTS     			return FM-7
0097				
0098	604D			INIT  	EQU     *       		
0099	604D	8D	5E	      	BSR     SDINIT  		
0100				
0101				****************************************
0102				* MAIN MENU
0103				****************************************
0104	604F			MENU  	EQU     *       		
0105	604F	8E	6817	      	LDX     #MSMENU1		
0106	6052	17	0672	      	LBSR    PSTRNG  		
0107	6055	8E	6859	      	LDX     #MSMENU2		
0108	6058	17	066C	      	LBSR    PSTRNG  		
0109				
0110	605B	BD	FBB8	      	JSR     INCHA   		
0111	605E	80	30	      	SUBA    #$30    		
0112	6060	26	04	      	BNE     MEN1    		0?
0113	6062	BD	6612	      	JSR     CRLF    		
0114	6065	39		      	RTS     			return FM-7
0115	6066	4A		MEN1  	DECA    			
0116	6067	26	05	      	BNE     MEN2    		1?
0117	6069	17	0271	      	LBSR    SDRD    		
0118	606C	20	E1	      	BRA     MENU    		
0119	606E	4A		MEN2  	DECA    			
0120	606F	26	05	      	BNE     MEN3    		2?
0121	6071	17	0416	      	LBSR    SDWRT   		
0122	6074	20	D9	      	BRA     MENU    		
0123	6076	4A		MEN3  	DECA    			
0124	6077	26	05	      	BNE     MEN4    		3?
0125	6079	17	01D3	      	LBSR    GETSD   		
0126	607C	20	D1	      	BRA     MENU    		
0127	607E	4A		MEN4  	DECA    			
0128	607F	26	04	      	BNE     MEN5    		4?
0129	6081	8D	2A	      	BSR     SDINIT  		
0130	6083	20	CA	      	BRA     MENU    		
0131	6085	4A		MEN5  	DECA    			5?
0132	6086	26	05	      	BNE     MEN6    		
0133	6088	17	0265	      	LBSR    DSPMBR  		
0134	608B	20	C2	      	BRA     MENU    		
0135	608D	4A		MEN6  	DECA    			6?
0136	608E	26	05	      	BNE     MEN7    		
0137	6090	17	02B7	      	LBSR    DSPBPB  		
0138	6093	20	BA	      	BRA     MENU    		
0139	6095	4A		MEN7  	DECA    			7?
0140	6096	26	05	      	BNE     MEN8    		
0141	6098	17	02C1	      	LBSR    DSPFAT  		
0142	609B	20	B2	      	BRA     MENU    		
0143	609D	4A		MEN8  	DECA    			8?
0144	609E	26	05	      	BNE     MEN9    		
0145	60A0	17	02CB	      	LBSR    DSPDIR  		
0146	60A3	20	AA	      	BRA     MENU    		
0147	60A5	4A		MEN9  	DECA    			9?
0148	60A6	26	A7	      	BNE     MENU    		
0149	60A8	17	0349	      	LBSR    LDFILE  		
0150	60AB	20	A2	      	BRA     MENU    		
0151				*
0152				****************************************
0153				* SD Initialize routine
0154				****************************************
0155	60AD			SDINIT	EQU     *       		
0156				*---------- start ----------
0157	60AD	8E	68C3	      	LDX     #MSINIT 		
0158	60B0	BD	66C7	      	JSR     PSTRNG  		
0159				* cs:1,di:1,sck-74ms
0160	60B3	86	FF	      	LDA     #$FF    		mosi:b7=H,miso:b1=H(for PIA),cs:b0=H
0161	60B5	B7	FD9E	      	STA     PBDAT   		
0162	60B8	C6	50	      	LDB     #80     		80times
0163	60BA	17	051A	ISTT  	LBSR    SETCKL  		
0164	60BD	17	0520	      	LBSR    SETCKH  		
0165	60C0	5A		      	DECB    			
0166	60C1	26	F7	      	BNE     ISTT    		
0167				*
0168				*---------- cmd 0 ----------
0169	60C3			SCMD0 	EQU     *       		
0170				* LDX #MCMD0
0171				* LBSR PSTRNG
0172				 
0173	60C3	17	0511	      	LBSR    SETCKL  		
0174	60C6	C6	06	      	LDB     #6      		
0175	60C8	8E	67B3	      	LDX     #CMD0   		
0176	60CB	A6	80	SC01  	LDA     ,X+     		
0177	60CD	17	0496	      	LBSR    SNDDAT  		
0178	60D0	5A		      	DECB    			
0179	60D1	26	F8	      	BNE     SC01    		
0180				*get response
0181	60D3	5F		      	CLRB    			
0182	60D4			GR00  				
0183	60D4	5A		      	DECB    			
0184	60D5	1027	01FD	      	LBEQ    SDERR   		
0185	60D9	17	04A6	      	LBSR    GETDAT  		
0186	60DC	B6	6007	      	LDA     RESDAT  		
0187				* LBSR DSPBIN disp response
0188	60DF	81	01	      	CMPA    #$01    		
0189	60E1	26	F1	      	BNE     GR00    		
0190				* JSR CRLF
0191				*
0192				*---------- cmd 8 ----------
0193	60E3			SCMD8 	EQU     *       		
0194				* LDX #MCMD8
0195				* LBSR PSTRNG
0196				 
0197	60E3	17	04F1	      	LBSR    SETCKL  		
0198	60E6	86	FF	      	LDA     #$FF    		dummy cmd
0199	60E8	17	047B	      	LBSR    SNDDAT  		
0200	60EB	C6	06	      	LDB     #6      		
0201	60ED	8E	67CB	      	LDX     #CMD8   		
0202	60F0	A6	80	SC80  	LDA     ,X+     		
0203	60F2	17	0471	      	LBSR    SNDDAT  		
0204	60F5	5A		      	DECB    			
0205	60F6	26	F8	      	BNE     SC80    		
0206				*get response
0207	60F8			GR80  				
0208	60F8	17	0487	      	LBSR    GETDAT  		
0209	60FB	B6	6007	      	LDA     RESDAT  		
0210				 
0211	60FE	17	0481	      	LBSR    GETDAT  		
0212	6101	B6	6007	      	LDA     RESDAT  		
0213				* LBSR DSPBIN disp response
0214	6104	81	01	      	CMPA    #$01    		
0215	6106	26	F0	      	BNE     GR80    		
0216	6108	C6	04	      	LDB     #4      		
0217	610A	17	0475	GR81  	LBSR    GETDAT  		
0218	610D	B6	6007	      	LDA     RESDAT  		
0219				* LBSR DSPBIN disp response
0220	6110	5A		      	DECB    			
0221	6111	26	F7	      	BNE     GR81    		
0222				* JSR CRLF
0223				*
0224				*---------- cmd 58 ----------
0225	6113			SCMD58	EQU     *       		
0226				* LDX #MCMD58
0227				* LBSR PSTRNG
0228				 
0229	6113	17	04C1	      	LBSR    SETCKL  		
0230	6116	86	FF	      	LDA     #$FF    		dummy cmd
0231	6118	17	044B	      	LBSR    SNDDAT  		
0232	611B	C6	06	      	LDB     #6      		
0233	611D	8E	67D1	      	LDX     #CMD58  		
0234	6120	A6	80	SC581 	LDA     ,X+     		
0235	6122	17	0441	      	LBSR    SNDDAT  		
0236	6125	5A		      	DECB    			
0237	6126	26	F8	      	BNE     SC581   		
0238				*get response
0239	6128			GR580 				
0240	6128	17	0457	      	LBSR    GETDAT  		
0241	612B	B6	6007	      	LDA     RESDAT  		
0242				* LBSR DSPBIN disp response
0243	612E	81	01	      	CMPA    #$01    		
0244	6130	26	F6	      	BNE     GR580   		
0245	6132	C6	04	GR581 	LDB     #4      		
0246	6134	17	044B	GR582 	LBSR    GETDAT  		
0247	6137	B6	6007	      	LDA     RESDAT  		
0248				* LBSR DSPBIN disp response
0249	613A	5A		      	DECB    			
0250	613B	26	F7	      	BNE     GR582   		
0251	613D			RPT41 	EQU     *       		
0252				*---------- cmd 55 ----------
0253	613D			SCMD55	EQU     *       		
0254				* LDX #MCMD55
0255				* LBSR PSTRNG
0256				 
0257	613D	17	0497	      	LBSR    SETCKL  		
0258	6140	86	FF	      	LDA     #$FF    		dummy cmd
0259	6142	17	0421	      	LBSR    SNDDAT  		
0260	6145	C6	06	      	LDB     #6      		
0261	6147	8E	67D7	      	LDX     #CMD55  		
0262	614A	A6	80	SC551 	LDA     ,X+     		
0263	614C	17	0417	      	LBSR    SNDDAT  		
0264	614F	5A		      	DECB    			
0265	6150	26	F8	      	BNE     SC551   		
0266				*get response
0267				* CLRB
0268	6152			GR550 				
0269				* DECB
0270				* BEQ SDERR
0271	6152	17	042D	      	LBSR    GETDAT  		
0272	6155	B6	6007	      	LDA     RESDAT  		
0273				* LBSR DSPBIN disp response
0274	6158	81	01	      	CMPA    #$01    		
0275	615A	26	F6	      	BNE     GR550   		
0276				 
0277				* JSR CRLF
0278				*---------- acmd 41 ----------
0279	615C			ASCMD41	EQU     *       		
0280				* LDX #MCMD41
0281				* LBSR PSTRNG
0282				 
0283	615C	17	0478	      	LBSR    SETCKL  		
0284	615F	86	FF	      	LDA     #$FF    		dummy cmd
0285	6161	17	0402	      	LBSR    SNDDAT  		
0286	6164	C6	06	      	LDB     #6      		
0287	6166	8E	67DD	      	LDX     #ACMD41 		
0288	6169	A6	80	ASC411	LDA     ,X+     		
0289	616B	17	03F8	      	LBSR    SNDDAT  		
0290	616E	5A		      	DECB    			
0291	616F	26	F8	      	BNE     ASC411  		
0292				*get response
0293	6171			GR410 				
0294	6171	17	040E	      	LBSR    GETDAT  		
0295	6174	B6	6007	      	LDA     RESDAT  		
0296				* LBSR DSPBIN disp response
0297	6177	17	0408	      	LBSR    GETDAT  		
0298	617A	B6	6007	      	LDA     RESDAT  		
0299				* LBSR DSPBIN disp response
0300	617D	81	00	      	CMPA    #$00    		
0301	617F	26	BC	      	BNE     RPT41   		
0302				* JSR CRLF
0303				 
0304				*---------- second cmd 58 ----------
0305	6181			SCMD258	EQU     *       		
0306				* LDX #MCMD58
0307				* LBSR PSTRNG
0308				 
0309	6181	17	0453	      	LBSR    SETCKL  		
0310	6184	86	FF	      	LDA     #$FF    		dummy cmd
0311	6186	17	03DD	      	LBSR    SNDDAT  		
0312	6189	C6	06	      	LDB     #6      		
0313	618B	8E	67D1	      	LDX     #CMD58  		
0314	618E	A6	80	SC2581	LDA     ,X+     		
0315	6190	17	03D3	      	LBSR    SNDDAT  		
0316	6193	5A		      	DECB    			
0317	6194	26	F8	      	BNE     SC2581  		
0318				*get response
0319	6196			GR2580				
0320	6196	17	03E9	      	LBSR    GETDAT  		
0321	6199	B6	6007	      	LDA     RESDAT  		
0322				* LBSR DSPBIN disp response
0323	619C	81	00	      	CMPA    #$00    		
0324	619E	26	F6	      	BNE     GR2580  		
0325	61A0	17	03DF	      	LBSR    GETDAT  		
0326	61A3	B6	6007	      	LDA     RESDAT  		
0327				* LBSR DSPBIN disp response
0328	61A6	48		      	LSLA    			
0329	61A7	48		      	LSLA    			
0330	61A8	24	03	      	BCC     GR2581  		
0331	61AA	7C	6008	      	INC     SDHC    		if sdhc then 1
0332	61AD	C6	03	GR2581	LDB     #3      		
0333	61AF	17	03D0	GR2582	LBSR    GETDAT  		
0334	61B2	B6	6007	      	LDA     RESDAT  		
0335				* LBSR DSPBIN disp response
0336	61B5	5A		      	DECB    			
0337	61B6	26	F7	      	BNE     GR2582  		
0338				 
0339	61B8	8E	68A9	      	LDX     #MSSD0  		
0340	61BB	B6	6008	      	LDA     SDHC    		
0341	61BE	27	03	      	BEQ     SD1     		
0342	61C0	8E	68B5	      	LDX     #MSSD1  		
0343	61C3	17	0501	SD1   	LBSR    PSTRNG  		
0344				 
0345				*----------
0346				*set sct no of BPB
0347	61C6	17	0145	      	LBSR    GETMBR  		
0348	61C9	8E	6FCA	      	LDX     #RWBUF+446+8+4		
0349	61CC	108E	6009	      	LDY     #SCTBPB 		
0350	61D0	C6	04	      	LDB     #4      		
0351	61D2	A6	82	ILOP1 	LDA     ,-X     		
0352	61D4	A7	A0	      	STA     ,Y+     		
0353	61D6	5A		      	DECB    			
0354	61D7	26	F9	      	BNE     ILOP1   		
0355				 
0356				*set sct no of FAT#1
0357	61D9	17	0155	      	LBSR    GETBPB  		
0358	61DC	8E	6009	      	LDX     #SCTBPB 		
0359	61DF	108E	600D	      	LDY     #SCTFAT 		
0360	61E3	C6	04	      	LDB     #4      		
0361	61E5	A6	80	ILOP2 	LDA     ,X+     		
0362	61E7	A7	A0	      	STA     ,Y+     		
0363	61E9	5A		      	DECB    			
0364	61EA	26	F9	      	BNE     ILOP2   		
0365				 
0366	61EC	8E	600D	      	LDX     #SCTFAT 		
0367	61EF	108E	6E0E	      	LDY     #RWBUF+$0E		for SD & SDHC
0368	61F3	17	04A0	      	LBSR    ADD42   		
0369				 
0370				*set sct no of DIR
0371	61F6	8E	600D	      	LDX     #SCTFAT 		
0372	61F9	108E	6011	      	LDY     #SCTDIR 		
0373	61FD	C6	04	      	LDB     #4      		
0374	61FF	A6	80	ILOP3 	LDA     ,X+     		
0375	6201	A7	A0	      	STA     ,Y+     		
0376	6203	5A		      	DECB    			
0377	6204	26	F9	      	BNE     ILOP3   		
0378				 
0379	6206	8E	6E16	      	LDX     #RWBUF+$16		for SD
0380	6209	7D	6008	      	TST     SDHC    		
0381	620C	27	03	      	BEQ     SKP1    		
0382	620E	C6	0E	      	LDB     #$24-$16		
0383	6210	3A		      	ABX     			for SDHC
0384	6211	1F	12	SKP1  	TFR     X,Y     		
0385	6213	8E	6011	      	LDX     #SCTDIR 		
0386	6216	17	047D	      	LBSR    ADD42   		
0387	6219	17	047A	      	LBSR    ADD42   		skip for FAT#2
0388				
0389				*set sct per cluster
0390	621C	8E	6E0D	      	LDX     #RWBUF+$0D		
0391	621F	A6	84	      	LDA     ,X      		
0392	6221	B7	6019	      	STA     SCTPCL  		
0393				 
0394				*set sct no of CLUSTER#2
0395	6224	8E	6011	      	LDX     #SCTDIR 		
0396	6227	108E	6015	      	LDY     #SCTCLT 		
0397	622B	C6	04	      	LDB     #4      		
0398	622D	A6	80	ILOP4 	LDA     ,X+     		
0399	622F	A7	A0	      	STA     ,Y+     		
0400	6231	5A		      	DECB    			
0401	6232	26	F9	      	BNE     ILOP4   		
0402				 
0403	6234	108E	6027	      	LDY     #WK1+2  		
0404	6238	86	00	      	LDA     #$00    		
0405	623A	A7	A2	      	STA     ,-Y     		
0406	623C	86	20	      	LDA     #$20    		for SD
0407	623E	7D	6008	      	TST     SDHC    		
0408	6241	27	03	      	BEQ     SKP2    		
0409	6243	B6	6019	      	LDA     SCTPCL  		for SDHC
0410	6246	A7	A2	SKP2  	STA     ,-Y     		
0411	6248	8E	6015	      	LDX     #SCTCLT 		
0412	624B	17	0448	      	LBSR    ADD42   		
0413				*----------
0414	624E	39		      	RTS     			
0415				
0416				****************************************
0417				* GET SD DATA ROUTINE
0418				* use CMD9
0419				****************************************
0420	624F			GETSD 	EQU     *       		
0421	624F	BD	6612	      	JSR     CRLF    		
0422	6252	17	0382	      	LBSR    SETCKL  		
0423	6255	C6	06	      	LDB     #6      		
0424	6257	8E	67E3	      	LDX     #CMD9   		
0425	625A	A6	80	SC91  	LDA     ,X+     		
0426	625C	17	0307	      	LBSR    SNDDAT  		
0427	625F	5A		      	DECB    			
0428	6260	26	F8	      	BNE     SC91    		
0429				* JSR CRLF
0430				*get response
0431	6262			GR90  				
0432	6262	17	031D	      	LBSR    GETDAT  		
0433	6265	B6	6007	      	LDA     RESDAT  		
0434				* LBSR DSPBIN disp response
0435	6268	81	00	      	CMPA    #$00    		
0436	626A	26	F6	      	BNE     GR90    		
0437				 
0438				* JSR CRLF
0439	626C	BD	6612	      	JSR     CRLF    		
0440	626F	C6	14	      	LDB     #16+1+2+1		fe,crcH,crcL,ff
0441	6271	17	030E	GR91  	LBSR    GETDAT  		
0442	6274	B6	6007	      	LDA     RESDAT  		
0443	6277	17	036F	      	LBSR    DSPBIN  		disp response
0444	627A	5A		      	DECB    			
0445	627B	26	F4	      	BNE     GR91    		
0446	627D	BD	6612	      	JSR     CRLF    		
0447				
0448				*disp offset of MBR,FAT#1,DIR,CLUSTER#2
0449	6280	8E	6905	      	LDX     #MSOFS  		
0450	6283	BD	66C7	      	JSR     PSTRNG  		
0451	6286	8E	6917	      	LDX     #MSBPB  		
0452	6289	BD	66C7	      	JSR     PSTRNG  		
0453	628C	8E	6009	      	LDX     #SCTBPB 		
0454	628F	C6	04	      	LDB     #4      		
0455	6291	A6	80	SCLOP1	LDA     ,X+     		
0456	6293	17	0353	      	LBSR    DSPBIN  		
0457	6296	5A		      	DECB    			
0458	6297	26	F8	      	BNE     SCLOP1  		
0459				
0460	6299	8E	6920	      	LDX     #MSFAT  		
0461	629C	BD	66C7	      	JSR     PSTRNG  		
0462	629F	8E	600D	      	LDX     #SCTFAT 		
0463	62A2	C6	04	      	LDB     #4      		
0464	62A4	A6	80	SCLOP2	LDA     ,X+     		
0465	62A6	17	0340	      	LBSR    DSPBIN  		
0466	62A9	5A		      	DECB    			
0467	62AA	26	F8	      	BNE     SCLOP2  		
0468				
0469	62AC	8E	6929	      	LDX     #MSDIR  		
0470	62AF	BD	66C7	      	JSR     PSTRNG  		
0471	62B2	8E	6011	      	LDX     #SCTDIR 		
0472	62B5	C6	04	      	LDB     #4      		
0473	62B7	A6	80	SCLOP3	LDA     ,X+     		
0474	62B9	17	032D	      	LBSR    DSPBIN  		
0475	62BC	5A		      	DECB    			
0476	62BD	26	F8	      	BNE     SCLOP3  		
0477				
0478	62BF	8E	6932	      	LDX     #MSCL2  		
0479	62C2	BD	66C7	      	JSR     PSTRNG  		
0480	62C5	8E	6015	      	LDX     #SCTCLT 		
0481	62C8	C6	04	      	LDB     #4      		
0482	62CA	A6	80	SCLOP4	LDA     ,X+     		
0483	62CC	17	031A	      	LBSR    DSPBIN  		
0484	62CF	5A		      	DECB    			
0485	62D0	26	F8	      	BNE     SCLOP4  		
0486	62D2	BD	6612	      	JSR     CRLF    		
0487	62D5	39		      	RTS     			
0488				
0489				*
0490	62D6			SDERR 	EQU     *       		
0491	62D6	8E	68DF	      	LDX     #MERR   		
0492	62D9	17	03EB	      	LBSR    PSTRNG  		
0493	62DC			OKEND 				
0494	62DC	39		      	RTS     			return FM-7
0495				*
0496				****************************************
0497				* READ ROUTINE
0498				* use CMD17
0499				* set sctno to $6005,6006
0500				* read data set to $6800-69FF
0501				****************************************
0502	62DD			SDRD  	EQU     *       		
0503	62DD	BD	6612	      	JSR     CRLF    		
0504	62E0	17	02B9	      	LBSR    INSCT   		
0505	62E3	17	0227	      	LBSR    RD1SCT  		read 1 sct
0506				
0507				*disp data
0508	62E6	BD	6612	      	JSR     CRLF    		
0509	62E9	17	025C	      	LBSR    DSPBUF  		
0510	62EC	BD	6612	      	JSR     CRLF    		
0511	62EF	39		      	RTS     			
0512				
0513				****************************************
0514				* Read MBR & Disp parameter of BPB
0515				****************************************
0516	62F0			DSPMBR	EQU     *       		
0517	62F0	BD	6612	      	JSR     CRLF    		
0518	62F3	8D	19	      	BSR     GETMBR  		
0519				
0520				*disp BPB
0521	62F5	BD	6612	      	JSR     CRLF    		
0522	62F8	8E	6FBE	      	LDX     #RWBUF+446		
0523	62FB	C6	10	GET1  	LDB     #16     		
0524	62FD	A6	80	GET2  	LDA     ,X+     		
0525	62FF	17	02E7	      	LBSR    DSPBIN  		disp data
0526	6302	5A		      	DECB    			
0527	6303	26	F8	      	BNE     GET2    		
0528	6305	BD	6612	      	JSR     CRLF    		
0529	6308	8C	6FFE	      	CMPX    #RWBUF+510		446+16*4
0530	630B	25	EE	      	BLO     GET1    		
0531	630D	39		      	RTS     			
0532				
0533				*----------------------------------------
0534				*read MBR
0535	630E			GETMBR	EQU     *       		
0536	630E	8E	6003	      	LDX     #SCTN0  		
0537	6311	C6	04	      	LDB     #4      		
0538	6313	4F		      	CLRA    			
0539	6314	A7	80	GPLOP 	STA     ,X+     		
0540	6316	5A		      	DECB    			
0541	6317	26	FB	      	BNE     GPLOP   		
0542	6319	17	0288	      	LBSR    SETSCT  		
0543				 
0544	631C	17	01EE	      	LBSR    RD1SCT  		read 1 sct
0545	631F	39		      	RTS     			
0546				
0547				*----------------------------------------
0548				*set sector no to SCTN0
0549				*from X,X+1,X+2,X+3 to SCTN0-SCTN3
0550	6320			SETSNO	EQU     *       		
0551	6320	108E	6003	      	LDY     #SCTN0  		
0552	6324	C6	04	      	LDB     #4      		
0553	6326	A6	80	SELOP 	LDA     ,X+     		
0554	6328	A7	A0	      	STA     ,Y+     		
0555	632A	5A		      	DECB    			
0556	632B	26	F9	      	BNE     SELOP   		
0557	632D	17	0274	      	LBSR    SETSCT  		
0558	6330	39		      	RTS     			
0559				
0560				*----------------------------------------
0561				*read BPB
0562	6331			GETBPB	EQU     *       		
0563	6331	8D	DB	      	BSR     GETMBR  		
0564				*set sct no of BPB
0565	6333	8E	6FCA	      	LDX     #RWBUF+446+8+4		
0566	6336	108E	6003	      	LDY     #SCTN0  		
0567	633A	C6	04	      	LDB     #4      		
0568	633C	A6	82	GPLOP2	LDA     ,-X     		
0569	633E	A7	A0	      	STA     ,Y+     		
0570	6340	5A		      	DECB    			
0571	6341	26	F9	      	BNE     GPLOP2  		
0572	6343	17	025E	      	LBSR    SETSCT  		
0573				 
0574	6346	17	01C4	      	LBSR    RD1SCT  		read 1 sct
0575	6349	39		      	RTS     			
0576				
0577				****************************************
0578				* Disp BPB(Bios Parameter Block)
0579				****************************************
0580	634A			DSPBPB	EQU     *       		
0581	634A	8E	6009	      	LDX     #SCTBPB 		
0582	634D	8D	D1	      	BSR     SETSNO  		
0583	634F	17	01BB	      	LBSR    RD1SCT  		read 1 sct
0584				 
0585				*disp BPB
0586	6352	BD	6612	      	JSR     CRLF    		
0587	6355	17	01F0	      	LBSR    DSPBUF  		
0588	6358	BD	6612	      	JSR     CRLF    		
0589	635B	39		      	RTS     			
0590				
0591				****************************************
0592				* Disp FAT#1
0593				****************************************
0594	635C			DSPFAT	EQU     *       		
0595	635C	8E	600D	      	LDX     #SCTFAT 		
0596	635F	8D	BF	      	BSR     SETSNO  		
0597	6361	17	01A9	      	LBSR    RD1SCT  		read 1 sct
0598				 
0599				*disp FAT
0600	6364	BD	6612	      	JSR     CRLF    		
0601	6367	17	01DE	      	LBSR    DSPBUF  		
0602	636A	BD	6612	      	JSR     CRLF    		
0603	636D	39		      	RTS     			
0604				
0605				****************************************
0606				* Disp Directory
0607				****************************************
0608	636E			DSPDIR	EQU     *       		
0609	636E	8E	6011	      	LDX     #SCTDIR 		
0610	6371	8D	AD	      	BSR     SETSNO  		
0611	6373	17	0197	      	LBSR    RD1SCT  		read 1 sct
0612				 
0613				**disp DIR
0614				* JSR CRLF
0615				* LBSR DSPBUF
0616				* JSR CRLF
0617				* 
0618				*disp FILE name
0619	6376	BD	6612	      	JSR     CRLF    		
0620	6379	BD	6612	      	JSR     CRLF    		
0621	637C	8E	6E60	      	LDX     #RWBUF+96		skip top data
0622	637F	7F	6027	      	CLR     WK2     		counter
0623	6382	A6	84	DSPFL1	LDA     ,X      		
0624	6384	27	6D	      	BEQ     DSPEND  		
0625	6386	81	E5	      	CMPA    #$E5    		delete mark?
0626	6388	26	05	      	BNE     DSPFL2  		
0627	638A	30	88 20	      	LEAX    32,X    		
0628	638D	20	F3	      	BRA     DSPFL1  		
0629				 
0630	638F	7C	6027	DSPFL2	INC     WK2     		
0631	6392	B6	6027	      	LDA     WK2     		
0632	6395	17	0251	      	LBSR    DSPBIN  		disp counter
0633	6398	C6	08	      	LDB     #8      		
0634	639A	A6	80	DSPFL3	LDA     ,X+     		
0635	639C	BD	FBBB	      	JSR     OUTCHA  		
0636	639F	5A		      	DECB    			
0637	63A0	26	F8	      	BNE     DSPFL3  		
0638	63A2	86	2E	      	LDA     #'.     		
0639	63A4	BD	FBBB	      	JSR     OUTCHA  		
0640	63A7	C6	03	      	LDB     #3      		
0641	63A9	A6	80	DSPFL4	LDA     ,X+     		
0642	63AB	BD	FBBB	      	JSR     OUTCHA  		
0643	63AE	5A		      	DECB    			
0644	63AF	26	F8	      	BNE     DSPFL4  		
0645	63B1	86	20	      	LDA     #'      		
0646	63B3	BD	FBBB	      	JSR     OUTCHA  		
0647	63B6	BD	FBBB	      	JSR     OUTCHA  		
0648				
0649				*get FILE time data
0650	63B9	30	07	      	LEAX    7,X     		
0651	63BB	EC	81	      	LDD     ,X++    		
0652	63BD	FD	6025	      	STD     WK1     		
0653				
0654				*get CLUSTER(H) data
0655	63C0	EC	81	      	LDD     ,X++    		
0656	63C2	1E	89	      	EXG     A,B     		
0657	63C4	FD	6021	      	STD     CLSTH   		
0658	63C7	30	04	      	LEAX    4,X     		
0659	63C9	EC	81	      	LDD     ,X++    		
0660	63CB	1E	89	      	EXG     A,B     		
0661	63CD	FD	6023	      	STD     CLSTL   		
0662				 
0663				*get FILE size data
0664	63D0	108E	6021	      	LDY     #WFSIZ+4		
0665	63D4	C6	04	      	LDB     #4      		
0666	63D6	A6	80	DSPC1 	LDA     ,X+     		
0667	63D8	A7	A2	      	STA     ,-Y     		
0668	63DA	5A		      	DECB    			
0669	63DB	26	F9	      	BNE     DSPC1   		
0670				
0671				*disp FILE size
0672	63DD	86	20	      	LDA     #'      		
0673	63DF	BD	FBBB	      	JSR     OUTCHA  		
0674	63E2	17	0353	      	LBSR    DSPSIZ  		disp FILE size
0675				
0676				
0677				*disp FILE time
0678	63E5	FC	6025	      	LDD     WK1     		
0679	63E8	17	02EC	      	LBSR    DSPYMD  		disp MM-DD-YY
0680				
0681				*disp CLUSTER(H,L)
0682	63EB	17	03A0	      	LBSR    DSPCLS  		
0683				
0684	63EE	BD	6612	      	JSR     CRLF    		
0685	63F1	20	8F	      	BRA     DSPFL1  		
0686				* 
0687	63F3	39		DSPEND	RTS     			
0688				
0689				****************************************
0690				* Load FILE
0691				****************************************
0692	63F4			LDFILE	EQU     *       		
0693	63F4	17	FF77	      	LBSR    DSPDIR  		
0694	63F7	8E	6942	      	LDX     #MSINFL 		
0695	63FA	BD	66C7	      	JSR     PSTRNG  		
0696	63FD	BD	FBB8	      	JSR     INCHA   		file no
0697	6400	80	30	      	SUBA    #$30    		to binary
0698				 
0699	6402	8E	6E60	      	LDX     #RWBUF+96		skip top data
0700	6405	1F	89	      	TFR     A,B     		
0701				 
0702	6407	A6	84	LDLOP 	LDA     ,X      		
0703	6409	81	E5	      	CMPA    #$E5    		delete mark?
0704	640B	26	05	      	BNE     LD1     		
0705	640D	30	88 20	      	LEAX    32,X    		skip
0706	6410	20	F5	      	BRA     LDLOP   		
0707	6412	5A		LD1   	DECB    			
0708	6413	27	05	      	BEQ     LD2     		
0709	6415	30	88 20	      	LEAX    32,X    		
0710	6418	20	ED	      	BRA     LDLOP   		
0711				*hit file, get cluster no
0712	641A	EC	88 14	LD2   	LDD     $14,X   		
0713	641D	1E	89	      	EXG     A,B     		
0714	641F	FD	6021	      	STD     CLSTH   		
0715	6422	EC	88 1A	      	LDD     $1A,X   		
0716	6425	1E	89	      	EXG     A,B     		
0717	6427	FD	6023	      	STD     CLSTL   		
0718				*get sct no
0719	642A	C0	02	      	SUBB    #2      		sub top cluseter no
0720	642C	7D	6008	      	TST     SDHC    		SD:0,SDHC:1
0721	642F	27	01	      	BEQ     LD3     		
0722	6431	5A		      	DECB    			
0723				 
0724	6432	34	04	LD3   	PSHS    B       		
0725	6434	8E	6015	      	LDX     #SCTCLT 		
0726	6437	108E	6025	      	LDY     #WK1    		
0727	643B	C6	04	      	LDB     #4      		
0728	643D	A6	80	LD4   	LDA     ,X+     		
0729	643F	A7	A0	      	STA     ,Y+     		
0730	6441	5A		      	DECB    			
0731	6442	26	F9	      	BNE     LD4     		
0732	6444	35	04	      	PULS    B       		
0733				 
0734	6446	8E	6025	      	LDX     #WK1    		
0735	6449	A6	03	LD5   	LDA     3,X     		
0736	644B	8B	40	      	ADDA    #$40    		
0737	644D	A7	03	      	STA     3,X     		
0738	644F	24	06	      	BCC     LD51    		
0739	6451	A6	02	      	LDA     2,X     		
0740	6453	8B	01	      	ADDA    #1      		
0741	6455	A7	02	      	STA     2,X     		
0742	6457	24	06	LD51  	BCC     LD52    		
0743	6459	A6	01	      	LDA     1,X     		
0744	645B	8B	01	      	ADDA    #1      		
0745	645D	A7	01	      	STA     1,X     		
0746	645F	24	06	LD52  	BCC     LD53    		
0747	6461	A6	84	      	LDA     ,X      		
0748	6463	8B	01	      	ADDA    #1      		
0749	6465	A7	84	      	STA     ,X      		
0750	6467	5A		LD53  	DECB    			
0751	6468	26	DF	      	BNE     LD5     		
0752				 
0753	646A	8E	6025	      	LDX     #WK1    		
0754	646D	108E	6003	      	LDY     #SCTN0  		
0755	6471	C6	04	      	LDB     #4      		
0756	6473	A6	80	LD6   	LDA     ,X+     		
0757	6475	A7	A0	      	STA     ,Y+     		
0758	6477	5A		      	DECB    			
0759	6478	26	F9	      	BNE     LD6     		
0760	647A	17	0127	      	LBSR    SETSCT  		
0761	647D	17	008D	      	LBSR    RD1SCT  		read 1 sct
0762				
0763				* LDX #SCTCLT
0764				* LBSR SETSNO
0765				* LBSR RD1SCT read 1 sct
0766				* 
0767				**disp CLUSTER#2
0768	6480	BD	6612	      	JSR     CRLF    		
0769	6483	17	00C2	      	LBSR    DSPBUF  		
0770	6486	BD	6612	      	JSR     CRLF    		
0771	6489	39		      	RTS     			
0772				
0773				****************************************
0774				* WRITE ROUTINE
0775				* use CMD24
0776				* set sctno to $6005,6006
0777				* write data from $6A00-6BFF
0778				****************************************
0779	648A			SDWRT 	EQU     *       		
0780	648A	8E	689D	      	LDX     #MSWROK 		
0781	648D	17	0237	      	LBSR    PSTRNG  		
0782	6490	BD	FBB8	      	JSR     INCHA   		
0783	6493	84	DF	      	ANDA    #$DF    		
0784	6495	81	59	      	CMPA    #'Y     		
0785	6497	27	01	      	BEQ     SDWR1   		
0786	6499	39		      	RTS     			
0787	649A	BD	6612	SDWR1 	JSR     CRLF    		
0788	649D	17	00FC	      	LBSR    INSCT   		*input SCT No
0789				*copy sct no to cmd param
0790	64A0	8E	6003	      	LDX     #SCTN0  		
0791	64A3	108E	67C6	      	LDY     #CMD24+1		
0792	64A7	C6	04	      	LDB     #4      		
0793	64A9	A6	80	CPY2  	LDA     ,X+     		
0794	64AB	A7	A0	      	STA     ,Y+     		
0795	64AD	5A		      	DECB    			
0796	64AE	26	F9	      	BNE     CPY2    		
0797				*send cmd
0798	64B0	17	0124	      	LBSR    SETCKL  		
0799	64B3	C6	06	      	LDB     #6      		
0800	64B5	8E	67C5	      	LDX     #CMD24  		
0801	64B8	A6	80	SDW1  	LDA     ,X+     		
0802	64BA	17	012C	      	LBSR    DSPBIN  		disp response
0803	64BD	17	00A6	      	LBSR    SNDDAT  		
0804	64C0	5A		      	DECB    			
0805	64C1	26	F5	      	BNE     SDW1    		
0806				*get cmd response
0807	64C3			SDW2  				
0808	64C3	17	00BC	      	LBSR    GETDAT  		
0809	64C6	B6	6007	      	LDA     RESDAT  		
0810	64C9	17	011D	      	LBSR    DSPBIN  		disp response
0811	64CC	81	00	      	CMPA    #$00    		
0812	64CE	26	F3	      	BNE     SDW2    		
0813				*1byte skip
0814	64D0	86	FF	      	LDA     #$FF    		
0815	64D2	17	0091	      	LBSR    SNDDAT  		1byte skip
0816	64D5	BD	6612	      	JSR     CRLF    		
0817				 
0818				*send data packet
0819	64D8	8E	6E00	      	LDX     #RWBUF  		--temp buf
0820	64DB	108E	0200	      	LDY     #512    		
0821				*send data token
0822	64DF	86	FE	      	LDA     #$FE    		
0823	64E1	17	0082	      	LBSR    SNDDAT  		data token
0824	64E4	A6	80	SNDDT1	LDA     ,X+     		
0825	64E6	8D	7E	      	BSR     SNDDAT  		
0826	64E8	31	3F	      	LEAY    -1,Y    		
0827	64EA	26	F8	      	BNE     SNDDT1  		
0828				 
0829	64EC	86	FF	      	LDA     #$FF    		
0830	64EE	8D	76	      	BSR     SNDDAT  		crcH
0831	64F0	8D	74	      	BSR     SNDDAT  		crcL
0832				*get data response
0833	64F2			CKRS  				
0834	64F2	17	008D	      	LBSR    GETDAT  		
0835	64F5	B6	6007	      	LDA     RESDAT  		
0836	64F8	17	00EE	      	LBSR    DSPBIN  		disp response
0837	64FB	81	E5	      	CMPA    #$E5    		data response?
0838	64FD	26	F3	      	BNE     CKRS    		
0839				*wait until busy
0840	64FF			BUSY  				
0841	64FF	17	0080	      	LBSR    GETDAT  		
0842	6502	B6	6007	      	LDA     RESDAT  		
0843	6505	17	00E1	      	LBSR    DSPBIN  		disp response
0844	6508	81	FF	      	CMPA    #$FF    		
0845	650A	26	F3	      	BNE     BUSY    		
0846	650C	39		      	RTS     			
0847				
0848				*------------------------------
0849				*read 1 sct
0850				*------------------------------
0851	650D			RD1SCT	EQU     *       		
0852				*copy sct no to cmd param
0853	650D	8E	6003	      	LDX     #SCTN0  		
0854	6510	108E	67C0	      	LDY     #CMD17+1		
0855	6514	C6	04	      	LDB     #4      		
0856	6516	A6	80	CPY1  	LDA     ,X+     		
0857	6518	A7	A0	      	STA     ,Y+     		
0858	651A	5A		      	DECB    			
0859	651B	26	F9	      	BNE     CPY1    		
0860				*send cmd
0861	651D	17	00B7	      	LBSR    SETCKL  		
0862	6520	C6	06	      	LDB     #6      		
0863	6522	8E	67BF	      	LDX     #CMD17  		
0864	6525	A6	80	RD1   	LDA     ,X+     		
0865	6527	8D	3D	      	BSR     SNDDAT  		
0866	6529	5A		      	DECB    			
0867	652A	26	F9	      	BNE     RD1     		
0868				*get response
0869	652C			RD2   				
0870	652C	8D	54	      	BSR     GETDAT  		
0871	652E	B6	6007	      	LDA     RESDAT  		
0872	6531	81	FE	      	CMPA    #$FE    		token?
0873	6533	26	F7	      	BNE     RD2     		
0874				
0875				*get data
0876				* JSR CRLF
0877	6535	8E	6E00	      	LDX     #RWBUF  		--temp buf
0878	6538	108E	0200	      	LDY     #512    		
0879	653C			RD3   				
0880	653C	8D	44	      	BSR     GETDAT  		
0881	653E	B6	6007	      	LDA     RESDAT  		
0882	6541	A7	80	      	STA     ,X+     		save buf
0883	6543	31	3F	      	LEAY    -1,Y    		
0884	6545	26	F5	      	BNE     RD3     		
0885	6547	39		      	RTS     			
0886				
0887				*------------------------------
0888				*disp data
0889	6548			DSPBUF	EQU     *       		
0890	6548	BD	6612	      	JSR     CRLF    		
0891	654B	8E	6E00	      	LDX     #RWBUF  		--temp buf
0892	654E	108E	0200	      	LDY     #512    		
0893	6552	C6	20	DSPB1 	LDB     #32     		
0894	6554			DSPB2 				
0895	6554	A6	80	      	LDA     ,X+     		save buf
0896	6556	17	0090	      	LBSR    DSPBIN  		disp data
0897	6559	31	3F	      	LEAY    -1,Y    		
0898	655B	27	08	      	BEQ     DSPB3   		
0899	655D	5A		      	DECB    			
0900	655E	26	F4	      	BNE     DSPB2   		
0901	6560	BD	6612	      	JSR     CRLF    		
0902	6563	20	ED	      	BRA     DSPB1   		
0903	6565	39		DSPB3 	RTS     			
0904				
0905				*------------------------------
0906				*send data
0907	6566			SNDDAT	EQU     *       		
0908	6566	34	06	      	PSHS    A,B     		
0909	6568	7F	6007	      	CLR     RESDAT  		
0910	656B	C6	08	      	LDB     #8      		
0911	656D	34	02	SNDD1 	PSHS    A       		
0912	656F	84	FC	      	ANDA    #$FC    		
0913	6571	8A	02	      	ORA     #$02    		miso:b1=H(for PIA),cs:b0=L
0914	6573	B7	FD9E	      	STA     PBDAT   		send data
0915	6576	8D	5F	      	BSR     SETCKL  		
0916	6578	35	02	      	PULS    A       		
0917	657A	48		      	LSLA    			
0918	657B	8D	63	      	BSR     SETCKH  		
0919	657D	5A		      	DECB    			
0920	657E	26	ED	      	BNE     SNDD1   		
0921	6580	35	86	      	PULS    A,B,PC  		
0922				
0923				*get data
0924	6582			GETDAT	EQU     *       		
0925	6582	34	06	      	PSHS    A,B     		
0926	6584	C6	08	      	LDB     #8      		
0927	6586	8D	4F	GETD1 	BSR     SETCKL  		
0928	6588	12		      	NOP     			
0929	6589	12		      	NOP     			
0930	658A	12		      	NOP     			
0931	658B	8D	53	      	BSR     SETCKH  		
0932	658D	B6	FD9E	      	LDA     PBDAT   		get response
0933	6590	44		      	LSRA    			
0934	6591	44		      	LSRA    			b1--C
0935	6592	79	6007	      	ROL     RESDAT  		C--b0
0936	6595	5A		      	DECB    			
0937	6596	26	EE	      	BNE     GETD1   		
0938	6598	8D	3D	      	BSR     SETCKL  		
0939	659A	35	86	      	PULS    A,B,PC  		
0940				*
0941				*------------------------------
0942				*input SCT No
0943	659C			INSCT 	EQU     *       		
0944	659C	8E	6895	      	LDX     #MSSCT  		
0945	659F	17	0125	      	LBSR    PSTRNG  		
0946	65A2	8D	79	      	BSR     GET8CH  		get 8chr, convert 4bin
0947				 
0948	65A4			SETSCT	EQU     *       		
0949	65A4	7D	6008	      	TST     SDHC    		
0950	65A7	26	1D	      	BNE     CALCHC  		
0951				*SD card
0952	65A9	C6	03	      	LDB     #3      		
0953	65AB	8E	6004	      	LDX     #SCTN1  		
0954	65AE	108E	6003	      	LDY     #SCTN0  		
0955	65B2	A6	80	SFT1  	LDA     ,X+     		
0956	65B4	A7	A0	      	STA     ,Y+     		
0957	65B6	5A		      	DECB    			
0958	65B7	26	F9	      	BNE     SFT1    		
0959	65B9	7F	6006	      	CLR     SCTN3   		
0960				*calc top adrs of sct
0961	65BC			CALCSD	EQU     *       		
0962	65BC	78	6006	      	LSL     SCTN3   		
0963	65BF	79	6005	      	ROL     SCTN2   		
0964	65C2	79	6004	      	ROL     SCTN1   		
0965	65C5	39		      	RTS     			
0966				
0967				*SDHC card
0968				*calc top adrs of sct
0969	65C6			CALCHC	EQU     *       		
0970	65C6	8E	6003	      	LDX     #SCTN0  		
0971	65C9	108E	67C0	      	LDY     #CMD17+1		
0972	65CD	C6	04	      	LDB     #4      		
0973	65CF	A6	80	CALCH1	LDA     ,X+     		
0974	65D1	A7	A0	      	STA     ,Y+     		
0975	65D3	5A		      	DECB    			
0976	65D4	26	F9	      	BNE     CALCH1  		
0977	65D6	39		      	RTS     			
0978				
0979				*
0980				*set sck:L
0981	65D7			SETCKL	EQU     *       		
0982	65D7	34	02	      	PSHS    A       		
0983	65D9	86	34	      	LDA     #$34    		ca2=L
0984	65DB	B7	FD9F	      	STA     PBCTL   		
0985	65DE	35	82	      	PULS    A,PC    		
0986				
0987				*set sck:H
0988	65E0			SETCKH	EQU     *       		
0989	65E0	34	02	      	PSHS    A       		
0990	65E2	86	3C	      	LDA     #$3C    		ca2=H
0991	65E4	B7	FD9F	      	STA     PBCTL   		
0992	65E7	35	82	      	PULS    A,PC    		
0993				
0994				*binary(A)--ascii(A)(B)
0995	65E9			DSPBIN	EQU     *       		
0996	65E9	34	06	      	PSHS    A,B     		
0997	65EB	1F	89	      	TFR     A,B     		
0998	65ED	44		      	LSRA    			
0999	65EE	44		      	LSRA    			
1000	65EF	44		      	LSRA    			
1001	65F0	44		      	LSRA    			
1002	65F1	8A	30	      	ORA     #$30    		
1003	65F3	C4	0F	      	ANDB    #$0F    		
1004	65F5	CA	30	      	ORB     #$30    		
1005	65F7	81	39	      	CMPA    #$39    		
1006	65F9	23	02	      	BLS     BI21    		
1007	65FB	8B	07	      	ADDA    #$07    		
1008	65FD	C1	39	BI21  	CMPB    #$39    		
1009	65FF	23	02	      	BLS     BI22    		
1010	6601	CB	07	      	ADDB    #$07    		
1011	6603	BD	FBBB	BI22  	JSR     OUTCHA  		
1012	6606	1F	98	      	TFR     B,A     		
1013	6608	BD	FBBB	      	JSR     OUTCHA  		
1014	660B	86	20	      	LDA     #$20    		
1015	660D	BD	FBBB	      	JSR     OUTCHA  		
1016	6610	35	86	      	PULS    A,B,PC  		
1017				
1018				*crlf
1019	6612			CRLF  	EQU     *       		
1020	6612	86	0D	      	LDA     #$0D    		
1021	6614	BD	FBBB	      	JSR     OUTCHA  		
1022	6617	86	0A	      	LDA     #$0A    		
1023	6619	BD	FBBB	      	JSR     OUTCHA  		
1024	661C	39		      	RTS     			
1025				
1026				*
1027	661D			GET8CH	EQU     *       		
1028				*input chr
1029	661D	8E	6956	      	LDX     #INPBUF 		
1030	6620	5F		      	CLRB    			
1031	6621	BD	FBB8	CLOP  	JSR     INCHA   		
1032	6624	81	0D	      	CMPA    #$0D    		
1033	6626	27	07	      	BEQ     INEND   		
1034	6628	A7	85	      	STA     B,X     		
1035	662A	5C		      	INCB    			
1036	662B	C1	08	      	CMPB    #8      		
1037	662D	25	F2	      	BLO     CLOP    		
1038				
1039	662F			INEND 				 
1040				*shift
1041	662F	5D		      	TSTB    			
1042	6630	27	11	      	BEQ     CL1     		
1043	6632	8E	6956	      	LDX     #INPBUF 		
1044	6635	3A		      	ABX     			
1045	6636	108E	695E	      	LDY     #INPBUF+8		
1046	663A	34	04	      	PSHS    B       		
1047	663C	A6	82	SFLOP 	LDA     ,-X     		
1048	663E	A7	A2	      	STA     ,-Y     		
1049	6640	5A		      	DECB    			
1050	6641	26	F9	      	BNE     SFLOP   		
1051				*clr
1052	6643	C6	08	CL1   	LDB     #8      		
1053	6645	E0	E0	      	SUBB    ,S+     		
1054	6647	27	0A	      	BEQ     CLEND   		
1055	6649	8E	6956	      	LDX     #INPBUF 		
1056	664C	86	30	      	LDA     #'0     		
1057	664E	A7	80	CLLOP 	STA     ,X+     		
1058	6650	5A		      	DECB    			
1059	6651	26	FB	      	BNE     CLLOP   		
1060	6653			CLEND 				
1061				
1062				*convert to bin
1063	6653	C6	04	      	LDB     #4      		
1064	6655	8E	6956	      	LDX     #INPBUF 		
1065	6658	108E	6003	      	LDY     #SCTN0  		
1066	665C			CVT1  				
1067	665C	A6	80	      	LDA     ,X+     		
1068	665E	8D	1E	      	BSR     CVBIN   		
1069	6660	25	16	      	BCS     EREND1  		
1070	6662	48		      	LSLA    			
1071	6663	48		      	LSLA    			
1072	6664	48		      	LSLA    			
1073	6665	48		      	LSLA    			
1074	6666	34	02	      	PSHS    A       		
1075	6668	A6	80	      	LDA     ,X+     		
1076	666A	8D	12	      	BSR     CVBIN   		
1077	666C	25	08	      	BCS     EREND0  		
1078	666E	AB	E0	      	ADDA    ,S+     		
1079	6670	A7	A0	      	STA     ,Y+     		
1080	6672	5A		      	DECB    			
1081	6673	26	E7	      	BNE     CVT1    		
1082	6675	39		      	RTS     			
1083				 
1084	6676	35	02	EREND0	PULS    A       		
1085	6678	8E	68F6	EREND1	LDX     #MSERR  		
1086	667B	8D	4A	      	BSR     PSTRNG  		
1087	667D	39		EEND  	RTS     			
1088				
1089				*--------------------
1090				*ascii -- bin
1091	667E			CVBIN 	EQU     *       		
1092	667E	80	30	      	SUBA    #'0     		
1093	6680	2B	11	      	BMI     CVERR   		
1094	6682	81	09	      	CMPA    #9      		
1095	6684	23	0A	      	BLS     CVBEND  		
1096	6686	81	11	      	CMPA    #$11    		
1097	6688	25	09	      	BLO     CVERR   		
1098	668A	81	16	      	CMPA    #$16    		
1099	668C	22	05	      	BHI     CVERR   		
1100	668E	80	07	      	SUBA    #7      		
1101	6690			CVBEND				
1102	6690	1C	FE	      	ANDCC   #$FE    		reset C
1103	6692	39		      	RTS     			
1104	6693	1A	01	CVERR 	ORCC    #$01    		set C
1105	6695	39		      	RTS     			
1106				
1107				*--------------------
1108				*add 2bytes to 4bytes
1109				* X,X+1,X+2,X+3 + Y,Y+1
1110				* data X is big endian
1111				* data Y is little endian
1112	6696			ADD42 	EQU     *       		
1113	6696	34	36	      	PSHS    A,B,X,Y 		
1114	6698	32	7C	      	LEAS    -4,S    		
1115	669A	C6	04	      	LDB     #4      		
1116	669C	A6	80	AD1   	LDA     ,X+     		
1117	669E	A7	E0	      	STA     ,S+     		
1118	66A0	5A		      	DECB    			
1119	66A1	26	F9	      	BNE     AD1     		
1120				 
1121				*add (lower)
1122	66A3	A6	A0	      	LDA     ,Y+     		
1123	66A5	AB	E2	      	ADDA    ,-S     		
1124	66A7	A7	E4	      	STA     ,S      		
1125	66A9	24	02	      	BCC     AD2     		
1126	66AB	6C	7F	      	INC     -1,S    		
1127				*add (upper)
1128	66AD	A6	A4	AD2   	LDA     ,Y      		
1129	66AF	AB	E2	      	ADDA    ,-S     		
1130	66B1	A7	E4	      	STA     ,S      		
1131	66B3	24	02	      	BCC     AD3     		
1132	66B5	6C	7F	      	INC     -1,S    		
1133	66B7	30	1C	AD3   	LEAX    -4,X    		
1134	66B9	32	7E	      	LEAS    -2,S    		
1135	66BB	C6	04	      	LDB     #4      		
1136	66BD	A6	E0	AD4   	LDA     ,S+     		
1137	66BF	A7	80	      	STA     ,X+     		
1138	66C1	5A		      	DECB    			
1139	66C2	26	F9	      	BNE     AD4     		
1140	66C4	35	36	      	PULS    A,B,X,Y 		
1141	66C6	39		      	RTS     			
1142				
1143				*--------------------
1144				* pstring
1145	66C7			PSTRNG	EQU     *       		
1146	66C7	34	02	      	PSHS    A       		
1147	66C9	A6	80	PSLOP 	LDA     ,X+     		
1148	66CB	81	04	      	CMPA    #4      		
1149	66CD	27	05	      	BEQ     PSEND   		
1150	66CF	BD	FBBB	      	JSR     OUTCHA  		
1151	66D2	20	F5	      	BRA     PSLOP   		
1152	66D4	35	02	PSEND 	PULS    A       		
1153	66D6	39		      	RTS     			
1154				
1155				*--------------------
1156				*disp MM-DD-YY
1157				*indata A(Low),B(High)
1158	66D7			DSPYMD	EQU     *       		
1159	66D7	1E	89	      	EXG     A,B     		
1160	66D9	34	10	      	PSHS    X       		
1161	66DB	34	06	      	PSHS    A,B     		
1162	66DD	C4	E0	      	ANDB    #$E0    		
1163	66DF	54		      	LSRB    			
1164	66E0	54		      	LSRB    			
1165	66E1	54		      	LSRB    			
1166	66E2	54		      	LSRB    			
1167	66E3	54		      	LSRB    			
1168	66E4	47		      	ASRA    			
1169	66E5	24	02	      	BCC     DYMD1   		
1170	66E7	CB	08	      	ADDB    #8      		
1171	66E9	F7	601A	DYMD1 	STB     WMDY    		MM
1172	66EC	35	06	      	PULS    A,B     		
1173	66EE	34	04	      	PSHS    B       		
1174	66F0	C4	1F	      	ANDB    #$1F    		
1175	66F2	F7	601B	      	STB     WMDY+1  		DD
1176	66F5	35	04	      	PULS    B       		
1177				 
1178	66F7	44		      	LSRA    			
1179				* ASLB
1180				* BCC DYMD2
1181				* INCA
1182	66F8			DYMD2 				
1183	66F8	80	14	      	SUBA    #20     		A+1980-2000
1184	66FA	B7	601C	      	STA     WMDY+2  		YY
1185				 
1186				*disp MM-DD-YY
1187	66FD	86	20	      	LDA     #'      		
1188	66FF	BD	FBBB	      	JSR     OUTCHA  		
1189	6702	8E	601A	      	LDX     #WMDY   		
1190	6705	A6	80	      	LDA     ,X+     		
1191	6707	8D	14	      	BSR     DB2ASC  		MM
1192	6709	86	2D	      	LDA     #'-     		
1193	670B	BD	FBBB	      	JSR     OUTCHA  		
1194	670E	A6	80	      	LDA     ,X+     		
1195	6710	8D	0B	      	BSR     DB2ASC  		DD
1196	6712	86	2D	      	LDA     #'-     		
1197	6714	BD	FBBB	      	JSR     OUTCHA  		
1198	6717	A6	80	      	LDA     ,X+     		
1199	6719	8D	02	      	BSR     DB2ASC  		YY
1200	671B	35	90	      	PULS    X,PC    		
1201				
1202				*
1203				*----------
1204				*(A:BIN)--ASCII
1205	671D			DB2ASC	EQU     *       		
1206	671D	34	06	      	PSHS    A,B     		
1207	671F	1F	89	      	TFR     A,B     		
1208	6721	86	30	      	LDA     #$30    		
1209	6723	C1	0A	DBLOP 	CMPB    #10     		
1210	6725	25	05	      	BLO     DB2     		
1211	6727	C0	0A	      	SUBB    #10     		
1212	6729	4C		      	INCA    			
1213	672A	20	F7	      	BRA     DBLOP   		
1214	672C	BD	FBBB	DB2   	JSR     OUTCHA  		
1215	672F	1F	98	      	TFR     B,A     		
1216	6731	8B	30	      	ADDA    #$30    		
1217	6733	BD	FBBB	      	JSR     OUTCHA  		
1218	6736	35	86	      	PULS    A,B,PC  		
1219				
1220				*disp FILE size
1221	6738			DSPSIZ	EQU     *       		
1222	6738	34	10	      	PSHS    X       		
1223	673A	BE	601D	      	LDX     WFSIZ   		
1224	673D	27	12	      	BEQ     DSS1    		if 64k over?
1225	673F	86	2D	      	LDA     #'-     		
1226	6741	BD	FBBB	      	JSR     OUTCHA  		
1227	6744	BD	FBBB	      	JSR     OUTCHA  		
1228	6747	BD	FBBB	      	JSR     OUTCHA  		
1229	674A	86	6B	      	LDA     #'k     		
1230	674C	BD	FBBB	      	JSR     OUTCHA  		
1231	674F	20	3B	      	BRA     DSEND   		
1232	6751			DSS1  				 
1233	6751	B6	601F	      	LDA     WFSIZ+2 		
1234	6754	81	64	      	CMPA    #100    		
1235	6756	23	12	      	BLS     DSS13   		
1236	6758	1F	89	      	TFR     A,B     		
1237	675A	86	30	      	LDA     #$30    		
1238	675C	C1	64	DSLOP1	CMPB    #100    		
1239	675E	25	05	      	BLO     DSS12   		
1240	6760	C0	64	      	SUBB    #100    		
1241	6762	4C		      	INCA    			
1242	6763	20	F7	      	BRA     DSLOP1  		
1243	6765	BD	FBBB	DSS12 	JSR     OUTCHA  		
1244	6768	20	05	      	BRA     DSS14   		
1245				
1246	676A	86	20	DSS13 	LDA     #'      		
1247	676C	BD	FBBB	      	JSR     OUTCHA  		
1248	676F	86	30	DSS14 	LDA     #$30    		
1249	6771	C1	0A	DSLOP2	CMPB    #10     		
1250	6773	25	05	      	BLO     DSS2    		
1251	6775	C0	0A	      	SUBB    #10     		
1252	6777	4C		      	INCA    			
1253	6778	20	F7	      	BRA     DSLOP2  		
1254	677A	81	30	DSS2  	CMPA    #$30    		
1255	677C	26	01	      	BNE     DSS3    		
1256	677E	4C		      	INCA    			
1257	677F	BD	FBBB	DSS3  	JSR     OUTCHA  		
1258	6782	86	6B	      	LDA     #'k     		
1259	6784	BD	FBBB	      	JSR     OUTCHA  		
1260	6787	86	20	      	LDA     #'      		
1261	6789	BD	FBBB	      	JSR     OUTCHA  		
1262	678C	35	90	DSEND 	PULS    X,PC    		
1263				
1264				*----------
1265	678E			DSPCLS	EQU     *       		
1266	678E	34	10	      	PSHS    X       		
1267	6790	86	20	      	LDA     #'      		
1268	6792	BD	FBBB	      	JSR     OUTCHA  		
1269	6795	8E	6021	      	LDX     #CLSTH  		
1270	6798	C6	02	      	LDB     #2      		
1271	679A	A6	80	DCLOP1	LDA     ,X+     		
1272	679C	17	FF7E	      	LBSR    DB2ASC  		
1273	679F	5A		      	DECB    			
1274	67A0	26	F8	      	BNE     DCLOP1  		
1275	67A2	86	20	      	LDA     #'      		
1276	67A4	BD	FBBB	      	JSR     OUTCHA  		
1277	67A7	C6	02	      	LDB     #2      		
1278	67A9	A6	80	DCLOP2	LDA     ,X+     		
1279	67AB	17	FF6F	      	LBSR    DB2ASC  		
1280	67AE	5A		      	DECB    			
1281	67AF	26	F8	      	BNE     DCLOP2  		
1282	67B1	35	90	      	PULS    X,PC    		
1283				
1284				**************************************************
1285				*========== parameter ==========
1286	67B3	40		CMD0  	FCB     $40,$00,$00,$00,$00,$95	'@		
1287	67B9	41		CMD1  	FCB     $41,$00,$00,$00,$00,$FF	'A		
1288	67BF	51		CMD17 	FCB     $51,$00,$00,$00,$00,$FF	'Q		
1289	67C5	58		CMD24 	FCB     $58,$00,$00,$00,$00,$FF	'X		
1290	67CB	48		CMD8  	FCB     $48,$00,$00,$01,$AA,$87	'H		
1291	67D1	7A		CMD58 	FCB     $7A,$00,$00,$00,$00,$FF	'z		
1292	67D7	77		CMD55 	FCB     $77,$00,$00,$00,$00,$FF	'w		
1293	67DD	69		ACMD41	FCB     $69,$40,$FF,$80,$00,$FF	'i		
1294	67E3	49		CMD9  	FCB     $49,$00,$00,$00,$00,$FF	'I		
1295				*
1296	67E9	43  		MCMD0 	FCC     /CMD0/,$D,$A		
1297	67EF	04		      	FCB     4       		
1298	67F0	43  		MCMD8 	FCC     /CMD8/,$D,$A		
1299	67F6	04		      	FCB     4       		
1300	67F7	43  		MCMD58	FCC     /CMD58/,$D,$A		
1301	67FE	04		      	FCB     4       		
1302	67FF	43  		MCMD55	FCC     /CMD55/,$D,$A		
1303	6806	04		      	FCB     4       		
1304	6807	41  		MCMD41	FCC     /ACMD41/,$D,$A		
1305	680F	04		      	FCB     4       		
1306	6810	43  		MCMD9 	FCC     /CMD9/,$D,$A		
1307	6816	04		      	FCB     4       		
1308				*
1309	6817	0D  		MSMENU1	FCC     $0D,$0A,/1:Read Sct, 2:Write Sct, 3:Get SD data, 4:SD Init, 5:Disp MBR, /		
1310	6858	04		      	FCB     4       		
1311	6859	0D  		MSMENU2	FCC     $0D,$0A,/6:Disp BPB, 7:Disp FAT, 8:Disp DIR, 9:Load FILE, 0:End : /		
1312	6894	04		      	FCB     4       		
1313	6895	53  		MSSCT 	FCC     /SctNo: /		
1314	689C	04		      	FCB     4       		
1315	689D	57  		MSWROK	FCC     /Write OK?: /		
1316	68A8	04		      	FCB     4       		
1317	68A9	0D  		MSSD0 	FCC     $0D,$0A,/SD Card/,$0D,$0A		
1318	68B4	04		      	FCB     4       		
1319	68B5	0D  		MSSD1 	FCC     $0D,$0A,/SDHC Card/,$0D,$0A		
1320	68C2	04		      	FCB     4       		
1321	68C3	0D  		MSINIT	FCC     $0D,$0A,$0D,$0A,/SD Card initializing.../		
1322	68DE	04		      	FCB     4       		
1323	68DF	53  		MERR  	FCC     /SD Initialize error!/,$0D,$0A		
1324	68F5	04		      	FCB     4       		
1325	68F6	49  		MSERR 	FCC     /Input error!/,$0D,$0A		
1326	6904	04		      	FCB     4       		
1327	6905	0D  		MSOFS 	FCC     $0D,$0A,/Sector no is:/,$0D,$0A		
1328	6916	04		      	FCB     4       		
1329	6917	0D  		MSBPB 	FCC     $0D,$0A,/ BPB: /		
1330	691F	04		      	FCB     4       		
1331	6920	0D  		MSFAT 	FCC     $0D,$0A,/ FAT: /		
1332	6928	04		      	FCB     4       		
1333	6929	0D  		MSDIR 	FCC     $0D,$0A,/ DIR: /		
1334	6931	04		      	FCB     4       		
1335	6932	0D  		MSCL2 	FCC     $0D,$0A,/ 1stCLUSTER: /		
1336	6941	04		      	FCB     4       		
1337	6942	0D  		MSINFL	FCC     $0D,$0A,/Select File No : /		
1338	6955	04		      	FCB     4       		
1339				
1340				**************************************************
1341	6956	FF		INPBUF	RMB     8       		
1342				
1343					END   	START   		

0 error(s),  0 warning(s) is detected.

Label	address
ACMD41	67DD	AD1   	669C	AD2   	66AD	AD3   	66B7	AD4   	66BD
ADD42 	6696	ASC411	6169	ASCMD41	615C	BI21  	65FD	BI22  	6603
BUSY  	64FF	CALCH1	65CF	CALCHC	65C6	CALCSD	65BC	CKRS  	64F2
CL1   	6643	CLEND 	6653	CLLOP 	664E	CLOP  	6621	CLSTH 	6021
CLSTL 	6023	CMD0  	67B3	CMD1  	67B9	CMD17 	67BF	CMD24 	67C5
CMD55 	67D7	CMD58 	67D1	CMD8  	67CB	CMD9  	67E3	CPY1  	6516
CPY2  	64A9	CRLF  	6612	CVBEND	6690	CVBIN 	667E	CVERR 	6693
CVT1  	665C	DB2   	672C	DB2ASC	671D	DBLOP 	6723	DCLOP1	679A
DCLOP2	67A9	DSEND 	678C	DSLOP1	675C	DSLOP2	6771	DSPB1 	6552
DSPB2 	6554	DSPB3 	6565	DSPBIN	65E9	DSPBPB	634A	DSPBUF	6548
DSPC1 	63D6	DSPCLS	678E	DSPDIR	636E	DSPEND	63F3	DSPFAT	635C
DSPFL1	6382	DSPFL2	638F	DSPFL3	639A	DSPFL4	63A9	DSPMBR	62F0
DSPSIZ	6738	DSPYMD	66D7	DSS1  	6751	DSS12 	6765	DSS13 	676A
DSS14 	676F	DSS2  	677A	DSS3  	677F	DYMD1 	66E9	DYMD2 	66F8
EEND  	667D	EREND0	6676	EREND1	6678	GET1  	62FB	GET2  	62FD
GET8CH	661D	GETBPB	6331	GETD1 	6586	GETDAT	6582	GETMBR	630E
GETSD 	624F	GPLOP 	6314	GPLOP2	633C	GR00  	60D4	GR2580	6196
GR2581	61AD	GR2582	61AF	GR410 	6171	GR550 	6152	GR580 	6128
GR581 	6132	GR582 	6134	GR80  	60F8	GR81  	610A	GR90  	6262
GR91  	6271	ILOP1 	61D2	ILOP2 	61E5	ILOP3 	61FF	ILOP4 	622D
INCHA 	FBB8	INEND 	662F	INIT  	604D	INPBUF	6956	INSCT 	659C
ISTT  	60BA	LD1   	6412	LD2   	641A	LD3   	6432	LD4   	643D
LD5   	6449	LD51  	6457	LD52  	645F	LD53  	6467	LD6   	6473
LDFILE	63F4	LDLOP 	6407	MAIN  	6029	MCMD0 	67E9	MCMD41	6807
MCMD55	67FF	MCMD58	67F7	MCMD8 	67F0	MCMD9 	6810	MEN1  	6066
MEN2  	606E	MEN3  	6076	MEN4  	607E	MEN5  	6085	MEN6  	608D
MEN7  	6095	MEN8  	609D	MEN9  	60A5	MENU  	604F	MERR  	68DF
MSBPB 	6917	MSCL2 	6932	MSDIR 	6929	MSERR 	68F6	MSFAT 	6920
MSINFL	6942	MSINIT	68C3	MSMENU1	6817	MSMENU2	6859	MSOFS 	6905
MSSCT 	6895	MSSD0 	68A9	MSSD1 	68B5	MSWROK	689D	OKEND 	62DC
OUTCHA	FBBB	PBCTL 	FD9F	PBDAT 	FD9E	PSEND 	66D4	PSLOP 	66C9
PSTRNG	66C7	RD1   	6525	RD1SCT	650D	RD2   	652C	RD3   	653C
RESDAT	6007	RPT41 	613D	RWBUF 	6E00	SC01  	60CB	SC2581	618E
SC551 	614A	SC581 	6120	SC80  	60F0	SC91  	625A	SCLOP1	6291
SCLOP2	62A4	SCLOP3	62B7	SCLOP4	62CA	SCMD0 	60C3	SCMD258	6181
SCMD55	613D	SCMD58	6113	SCMD8 	60E3	SCTBPB	6009	SCTCLT	6015
SCTDIR	6011	SCTFAT	600D	SCTN0 	6003	SCTN1 	6004	SCTN2 	6005
SCTN3 	6006	SCTPCL	6019	SD1   	61C3	SDERR 	62D6	SDHC  	6008
SDINIT	60AD	SDRD  	62DD	SDW1  	64B8	SDW2  	64C3	SDWR1 	649A
SDWRT 	648A	SELOP 	6326	SETCKH	65E0	SETCKL	65D7	SETSCT	65A4
SETSNO	6320	SFLOP 	663C	SFT1  	65B2	SKP1  	6211	SKP2  	6246
SNDD1 	656D	SNDDAT	6566	SNDDT1	64E4	START 	6000	STTADR	6000
VN    	6002	WFSIZ 	601D	WK1   	6025	WK2   	6027	WMDY  	601A




リストが長いので今回は縦スクロール付きにしてみました。「全選択」ボタンがありませんが、リスト中でダブルクリックしておいてCtrl-Cでコピーできます。




0 件のコメント:

コメントを投稿