36'CRD2XB.ETJ XBASIC for CRDFIL see CDMCDC.DOC for use 102 RF$(0)="CRDMAC":KEY7,"":RF$=RF$(0):IFPEEK(2)=152THENAK=639:AL=599:LQ=15:POKE63605, 0ELSEAK=319:AL=279:LQ=7 200GOSUB3200:CLS 412 IFTF<>1THENIFEOF(1)THEN440 506IFTF=1THEN508ELSEIFEOF(1)THEN520 602 IFTF=1THENGOSUB3260ELSECLOSE 603 GOSUB1400 621 IFTF=1THENGOSUB3520:GOTO626 1201 FF$=F$:GOSUB3200:F$=FF$:IFTF=1THEN1204 1300 IFTF=1THENGOSUB3300:RETURNELSECLOSE:OPENF$FORINPUTAS1 1350 IFTF=1THENGOSUB3500:RETURN 1351 FORA=1TON:IFEOF(1)THEN1320 1932 GOSUB3750 1944 IFT9=1THENGOSUB3600:GOTO1970 1974 IFT9<>1THEN1980 1975 GOSUB3400:IFPEEK(63605)=17THENGOSUB3260:T9=0:GOTO2100ELSEXX$=NN$:GOTO2000 2015 GOSUB3260:T9=0 2090 IFQ$="S"ORQ$="s"THENGOSUB3780:GOSUB3260:T9=0:MR=0:HP=0:CLOSE2:GOSUB4002:GOTO1560ELSEPRINT:GOTO1970 2104 IFINKEY$=""THEN2104ELSEGOSUB3260:T9=0:CLOSE2:GOSUB4002:GOSUB2124:GOTO1560 2120 IFINKEY$=""THEN2120ELSEGOSUB3260:T9=0:GOTO1900 2275 GOSUB3750:IFT9=1THENGOSUB3700:GOTO2340 2350 FORJ=1TOU:IFT9=1THEN2360ELSEIFEOF(2)THEN2550 2360 IFT9=1THENGOSUB3710:NEXTELSELINEINPUT#2,V$(J):NEXT 2520 IF(W-1)=MWTHENA=RM(W-1):GOSUB3260:T9=0:GOSUB2700:CLOSE2:RD=1:GOSUB2124:B$(0)=B$(A):GOTO1820ELSE2470 2670 IFINKEY$=""THEN2670ELSEGOSUB3260:T9=0:GOSUB2700:GOSUB2124:GOTO1900 3200 IFMID$(FF$,3,1)=":"THEN3210ELSERETURN 3210 TF=VAL(MID$(FF$,2,1)):IFTF<1ORTF>3THENCLS:PRINT@41,"Data file name error":FORAA=1TO400:NEXT:RETURN 3220 IFAK<>639THENCLS:PRINT@41,"ERROR... Data file is for M200":FORYY=1TO400:NEXT:RETURN 3230 FF$=MID$(FF$+" ",2,8) 3235 ONERRORGOTO3270 3240 LOADM"XBASIC":CALL63600,1,VARPTR(FF$) 3245 ONERRORGOTO5000 3250 IFPEEK(63605)<>1THEN1320ELSETF=1 3260 IFAK=639THENCALL63600,0 3262RETURN 3270 CLS:PRINT@41,"XBASIC loading error check program":GOTO0 3300 LOADM"XBASIC":CALL63600,1,VARPTR(F$) 3310 IFPEEK(63605)=17THENBEEP:PRINT"Data file is empty":PRINT:CLOSE:STOP 3320 GOSUB3400:N=VAL(NN$):GOSUB1000 3330 FORA=1TON 3340 GOSUB3400:GOSUB3360:A$(A)=NN$:GOSUB3400:GOSUB3360:P(A)=VAL(NN$):NEXT 3350 RETURN 3360 IFPEEK(63605)=17THEN1320ELSERETURN 3400 NN$="":CALL63600,3,VARPTR(NN$):RETURN 3500 FORA=1TON:GOSUB3400:IFA=1ANDPEEK(63605)=17THEN440 3510 B$(A)=NN$:NEXT:RETURN 3520 CALL63600,2,VARPTR(F$):FORA=1TON:B$(A)=B$(A)+CHR$(13)+CHR$(10):CALL63600,4,VARPTR(B$(A)):NEXT:GOSUB3260:RETURN 3600 CALL63600,1,VARPTR(RF$):RETURN 3700 GOSUB3600:GOSUB3400:GOSUB3360:U=VAL(NN$):FORJ=1TOU:GOSUB3400:GOSUB3360:VV$(J)=NN$:GOSUB3400:GOSUB3360:NEXT:RETURN 3710 GOSUB3400:GOSUB3720:V$(J)=NN$:RETURN 3720 IFPEEK(63605)=17THEN2550 3730RETURN 3750 T8=TF:TF=0:FF$=RF$:GOSUB3200:RF$=FF$:T9=TF:TF=T8:RETURN 3780IFT9=1ANDMID$(RF$,2,1)=":"THENRF$="B"+RF$ 3790RETURN 4627 CLS:PRINT@41," = M200 cross bank I/O file format using "; 4628PRINT"XBASIC.CO. ";CHR$(164);"B";CHR$(160);" must be part of format - ";CHR$(164);"x";CHR$(160);" is the bank ";CHR$(164);":";CHR$(160);" must be part of format and ";CHR$(164);"file name";CHR$(160);" is file name.