10 REM Menu Driven File Transfer 20 : 30 CLEAR 40 DIM A% 40 50 PROCselect 60 CALL A% 70 IF buffer?0 = 0 THEN CLS:PRINT "Exiting...":STOP 80 file$="":count=0 90 FOR J%=0 TO 11 100 IF buffer?J% THEN file$=file$+CHR$(buffer?J%) ELSE J%=12 110 NEXT 120 PRINT "File selected:=";file$: 130 fptr=OPENIN(file$):port=OPENOUT("COM:") 140 REPEAT 150 C%=BGET#fptr:count=count+1 160 REPEAT:UNTIL NOT EXT#port 170 BPUT#port,C%:PRINT TAB(5,1)count,;:VDU 27,C% 180 UNTIL EOF#fptr 190 C%=&1A:count=count+1 200 REPEAT:UNTIL NOT EXT#port 210 BPUT#port,C%:PRINT TAB(5,1)count,;:VDU 27,C% 220 CLOSE#fptr:CLOSE#port 8999 END 9000 DEF PROCselect 9010 FOR PASS=0 TO 2 STEP 2 9020 P%=A% 9030 [ 9040 OPT PASS 9050 CALL &B8C3 9060 LD DE,buffer 9070 JR C,found 9080 LD A,0 9090 LD (DE),A 9100 RET 9110 .found 9120 LD B,12 9130 .loop 9140 LD A,(HL) 9150 LD (DE),A 9160 INC HL 9170 INC DE 9180 DJNZ loop 9190 RET 9200 .buffer 9210 ] 9220 NEXT 9230 ENDPROC