10 ;›20  .TITLE "PRNTSC ROUTINE"›30  .PAGE "ROUTINE FOR PRINTING ON THE SCREEN"›40 ;›50  *=$5000›60 ;›70 BUFLEN=255 ;(EXPANDED BEYOND PREVIOUS LIMITS)›80 ;›90 EOL=$9B;ATASCII CODE FOR END OF LINE CHARACTER›0100 ;›0110 OPEN=$03 ;TOKEN FOR OPENING A DEVICE OR FILE›0120 OWRIT=$0B ;TOKEN FOR "OPEN FOR WRITE OPERATIONS"›0130 PUTCHR=$0B ;TOKEN FOR "PUT CHARACTER"›0140 CLOSE=$0C ;TOKEN FOR CLOSING A DEVICE›0150 ;›0160 IOCB2=$20 ;OFFSET FOR IOCB NO.2›0170 ICCOM=$342 ;COMMAND BYTE (CONTROLS CIO OPERATIONS)›0180 ICBAL=$344 ;BUFFER ADDRESS (LOW BYTE)›0190 ICBAH=$345 ;BUFFER ADDRESS (HIGH BYTE)›0200 ICBLL=$348 ;BUFFER LENGTH (LOW BYTE)›0210 ICBLH=$349 ;BUFFER LENGTH (HIGH BYTE)›0220 ICAX1=$34A ;AUXILIARY BYTE NO.1›0230 ICAX2=$34B ;AUXILIARY BYTE NO.2›0235 ;›0240 CIOV=$E456 ;CIO VECTOR›0250 ;›0260 DEVNAM .BYTE "E:",EOL›0270 ;›0280 OSCR ;OPEN SCREEN ROUTINE›0290  LDX #IOCB2›0300  LDA #OPEN›0310  STA ICCOM,X›0320 ;›0330  LDA #DEVNAM&255›0340  STA ICBAL,X›0350  LDA #DEVNAM/256›0360  STA ICBAH,X›0370 ;›0380  LDA #OWRIT›0390  STA ICAX1,X›0400  LDA #0›0410  STA ICAX2,X›0420  JSR CIOV›0430 ;›0440  LDA #PUTCHR›0450  STA ICCOM,X›0460 ;›0470  LDA #TXTBUF&255›0480  STA ICBAL,X›0490  LDA #TXTBUF/256›0500  STA ICBAH,X›0510  RTS›0520 ;›0530 PRNT›0540  LDX #IOCB2›0550  LDA #BUFLEN&255›0560  STA ICBLL,X›0570  LDA #BUFLEN/256›0580  STA ICBLH,X›0590  JSR CIOV›0600  RTS›0605 ;›0610 CLOSED›0620  LDX #IOCB2›0630  LDA #CLOSE›0640  STA ICCOM,X›0650  JSR CIOV›0660  RTS›0680 TXTBUF=*›0690 ;›0700  *=*+BUFLEN›0710 ;›0720  .END››