8-Bit Software Online Conversion

Message File Reader - Listing

10REM >MesgRdr 20ONERROR CLOSE#0:VDU3,15,12:IFERR<>1 7REPORT:PRINT" at ";ERL:END:ELSEEND 30REM v1.00 40DIM r%(25) 50REPEAT:MODE0:PROCreadsubject:PROCre adascii :UNTIL0 60: 70DEFPROCreadsubject:LOCAL C%,p%,i%,i d$ 80G%=OPENIN("!Mesg") :IFG%=0PRINT'"!M esg file Not Found!":END 90S%=((EXT#G%)-256)/4096 100i%=BGET#G% :IFi%<>1PRINT'"Version 1 data files only!":END 110INPUT#G%,id$,name$ :PTR#G%=256 120I%=0 :id$="":PROCdh("* * M E S S A G E S * *") 130FOR R%=1 TO S% 140INPUT#G%,id$ :C%=BGET#G%:IFC%>0GOTO 200 150id$="" 160FORp%=1TO76:C%=BGET#G% 170IFC%>31 AND C%<127 id$=id$+CHR$C% E LSE id$=id$+" " 180NEXT 190PRINT"<"CHR$(I%+65)">"id$ :r%(I%)=R % :I%=I%+1 200PTR#G%=256+R%*4096 210NEXT :CLOSE#0 220ENDPROC 230: 240DEFPROCreadascii:LOCAL C%,i%,l%,c$, id$ 250PRINT'"<ESC> <Z>=All or select A to "CHR$(I%+64)" ?"; 260REPEAT :R%=((GETAND223)-65):UNTILR% <=I%-1 OR R%=25 270CLS:G%=OPENIN("!Mesg") 280PRINT''"SEND TO PRINTER Y/N ?";:*FX 21 290REPEAT:a%=INSTR("YN",CHR$(GETAND223 )):UNTILa% :CLS 300i%=BGET#G%:INPUT#G%,id$,name$ 310PRINT" <Esc>" :VDU(a%+1) :IFa%=2VDU 31,7,0,14:PRINT"<Shift> to scroll."' 320IFR%=25 r%=S% :i%=0 :ELSE r%=r%(R%) :i%=r%-1 330FOR N%=i% TO r%-1 :PTR#G%=256+N%*40 96 340INPUT#G%,id$ :C%=BGET#G%:IFC%>0GOTO 400 350l%=0 :c$="" 360REPEAT:C%=BGET#G% :l%=l%+1 370IFC%>32 AND C%<127 VDUC% ELSE VDU32 :c$=c$+" ":IFLENc$=40PRINT:c$="" 380IFl%MOD40=0c$="" 390UNTILC%=152:PRINT' 400NEXT:CLOSE#0 410PRINT:VDU3,15:PROCkey:ENDPROC 420: 430DEFPROCkey:*FX21 440PRINT"Press <key>";:IF GET 450ENDPROC 460: 470DEFPROCdh(A$) :LOCALA%,X%,Y%,N:VDU3 1,22,0 480FOR N=1 TO LEN(A$) :?&70=ASC(MID$(A $,N)) :A%=10 :X%=&70 :Y%=0 :CALL&FFF1 490VDU23,255,?&71,?&71,?&72,?&72,?&73, ?&73,?&74,?&74,255,10,8 500VDU23,255,?&75,?&75,?&76,?&76,?&77, ?&77,?&78,?&78,255,11 510NEXT:PRINT'' 520ENDPROC