Compucolor.org – Virtual Media

Listing of file='XFER.BAS;01' on disk='vmedia/scratch-sector.ccvf'

65000 REM  *** BASIC FILE TRANSFER PROGRAM ***
65010 REM
65020 REM  THE PROGRAM SETS UP A LITTLE MACHINE LANGUAGE ROUTINE
65030 REM  TO FILTER THE INPUT FROM THE RS-232 PORT, THEN RETURNS
65040 REM  TO BASIC. BASIC THINKS THE INPUT FROM THE RS-232 PORT
65050 REM  IS BEING TYPED AT THE KEYBOARD, SO A "READY" MESSAGE
65060 REM  APPEARS AND THE FILE COMES OUT ON THE SCREEN ALSO.
65070 REM
65080 REM  *** MACHINE LANGUAGE CODE ***
65090 DATA  123,230,127,95,33,0,0,195,140,57,23
65095 REM  *** FIND END OF BASIC AND MOVE IT BACK ***
65100 EB =  256* PEEK (32941)+ PEEK (32940)
65110 EB =  EB- 11:Z =  EB:AD =  32940: GOSUB  65200
65115 RESTORE  65090
65125 REM  *** STORE THE MACHINE LANGUAGE ROUTINE ***
65130 FOR  I= 1 TO  11:READ  X:POKE  EB+ I,X:NEXT  I
65140 Z =  EB+ 11:AD =  EB+ 6:GOSUB  65200
65155 REM  *** SET UP JUMP VECTOR FOR RS-232 PORT ***
65160 POKE  33221,195:Z =  EB+ 1:AD =  33222:GOSUB  65200
65170 CLEAR  100:INPUT  "ENTER COMMAND LINE: ";CM$
65175 REM  *** ENABLE ALL INTERRUPTS AND SETUP RS-232 PORT ***
65180 OUT  8,255: PLOT  14,27,18,3,15,27,13
65185 REM  *** OUTPUT THE COMMAND LINE TO THE RS-232 PORT ***
65190 PRINT  CM$;CHR$ (13);:POKE  33265,0:POKE  33251,31:END
65195 REM  *** SUBROUTINE TO STORE AN ADDRESS IN MEMORY ***
65200 HI =  INT (Z/ 256):POKE  AD,Z- 256* HI:POKE  AD+ 1,HI:RETURN