5 'MAIN ROUTINE 10 ONERRORGOTO8000:CLS:PRINT@7,"NUMBER CONVERSION PROGRAM" 12 PRINT@84,">>>>>RUN WITH CAPS LOCKED<<<<<":PRINT@166,"PROGRAM OR SINGLE CONVERSION" 14 PRINT@ 280,"PROG SING FILE END MENU";:KEY(1)ON:KEY(2)ON:KEY(3)ON:KEY(7)ON:KEY(8)ON 20 ONKEYGOSUB100,7000,50,,,,40,9000: A3$= INKEY$:IFA3$=CHR$(13)THEN9000ELSE GOTO20 30 CLS:PRINT@132,"ANOTHER DEVICE ?": PRINT@214,"Y)ES OR N)O":ONINSTR("YyNn", INPUT$(1))GOTO100,100,9000,9000:GOTO 1030 40 MAXFILES=0:CLEAR:CLS:PRINT@130,"***** GOODBYE *****":FORG=1TO700:NEXT:MENU 50 CLS:FILES:FORH=1TO2000:NEXT:GOTO5 100 'DEVICE OUTPUT SUBROUTINE 110 CLS:PRINT@8,"CHOOSE DEVICE FOR OUTPUT":PRINT@84,">>>>>RUN WITH CAPS LOCKED<<<<<":PRINT@167,"OUPUT TO RAM CAS LCD LPT" 111 PRINT@280,"RAM CAS LCD LPT MENU";:KEY(1)ON:KEY(2)ON:KEY(3)ON:KEY(4)ON:KEY(8)ON 120 ONKEYGOSUB1000,2000,3000,4000,,,, 9000:A1$=INKEY$:IFA1$=CHR$(13)THEN9000 ELSEGOTO120 1000 'RAM OUTPUT PROGRAM ROUTINE 1010 CLS:PRINT@5,"SAVE TO RAM CONVERSION PROGRAM":PRINT@ 84,">>>>>RUN WITH CAPS LOCKED<<<<<" 1012 PRINT@ 174,"H)EX TO DEC":PRINT@219, "OR":PRINT@ 254,"D)EC TO HEX" 1020 ONINSTR("DdHh",INPUT$(1))GOTO10000, 10000,11000,11000:GOTO1010 1030 CLS:PRINT@133,"ANOTHER FILE ?": PRINT@214,"Y)ES OR N)O":ONINSTR("YyNn", INPUT$(1))GOTO1000,1000,30,30:GOTO1030 2000 'CAS OUTPUT PROGRAM ROUTINE 2010 CLS:PRINT@1,"SAVE TO CAS NUMBER CONVERSION PROGRAM":PRINT@ 84,">>>>>RUN WITH CAPS LOCKED<<<<<" 2012 PRINT@174,"H)EX TO DEC":PRINT@219, "OR":PRINT@ 254,"D)EC TO HEX" 2020 ONINSTR("DdHh",INPUT$(1))GOTO20000, 20000,21000,21000:GOTO2020 2030 CLS:PRINT@133,"ANOTHER FILE ?": PRINT@214,"Y)ES OR N)O":ONINSTR("YyNn", INPUT$(1))GOTO2000,2000,30,30:GOTO2030 3000 'SCREEN OUTPUT PROGRAM ROUTINE 3010 CLS:PRINT@4,"SCREEN OUTPUT CONVERSION PROGRAM":PRINT@84,">>>>>RUN WITH CAPS LOCKED<<<<<":PRINT@ 174,"H)EX TO DEC" 3012 PRINT@219,"OR":PRINT@ 254,"D)EC TO HEX" 3020 ONINSTR("DdHh",INPUT$(1))GOTO3100, 3100,3850,3850:GOTO3020 3030 CLS:PRINT@133,"ANOTHER FILE ?": PRINT@214,"Y)ES OR N)O":ONINSTR("YyNn", INPUT$(1))GOTO3000,3000,30,30: GOTO3030 3100 'DECIMAL TO HEX CONVERSION ROUTINE 3110 MAXFILES=1:CLEAR:CLS:PRINT@3," DECIMAL TO HEX CONVERSION PROGRAM": PRINT @84,">>>>>RUN WITH CAPS LOCKED<<<<<" 3112 PRINT:INPUT"Program to convert";Y$ 3120 Y$=Y$+".DO" 3130 OPENY$FORINPUTAS1 3140 CLS:PRINT@175,"Working..." 3802 H$="0123456789ABCDEF":INPUT#1,N$: IFN$=""THEN3900 3803 IFEOF(1)THEN3900 3805 N=VAL(N$):X$="":J=4 3807 P=16^(J-1):FORI=1TO16:IFN-I*P<0THEN3815 3810 NEXT:GOTO8099 3815 X$=X$+MID$(H$,I,1):N=N-(I-1)*P:J=J-1:IFJ>0THEN3807 3820 CLS:PRINT@17,;Y$:PRINT@120,;N$;" DEC IS ";X$;" HEX":FORAA=1TO700:NEXT:GOTO 3802 3850 'HEX TO DECIMAL CONVERSION ROUTINE 3851 MAXFILES=1:CLEAR:CLS:PRINT@3,"HEX TO DECIMAL CONVERSION PROGRAM":PRINT@84, ">>>>>RUN WITH CAPS LOCKED<<<<<" 3852 PRINT:INPUT"Program to convert";Y$ Y$=Y$+".DO" 3853 OPENY$FORINPUTAS1 3854 CLS:PRINT@175,"Working..." 3855 H$="0123456789ABCDEF":N$="":INPUT# 1,N$:IFN$= ""THEN3900 3856 IFEOF(1)THEN3900 3860 J=1:L=LEN(N$):IFL<1THEN8099ELSEIFL>4THEN8099 3870 FORI=1TO4:O(I)=0:NEXT:FORI=5-LTO4: O(I)=ASC(MID$(N$,J,1))-48:IFO(I)>22THEN 8099ELSEIFO(I)>9THENO(I)=O(I)-7 3875 J=J+1:NEXT:O=4096*O(1)+256*O(2)+16 *O(3)+O(4) 3880 CLS:PRINT@17,;Y$:PRINT@120,;N$;" HEX IS ";O;" DEC":FORAA=1TO700:NEXT:GOTO 3855 3900 CLOSE:CLS:PRINT@173,"**** DONE ****":FORB=1TO600:NEXT:CLEAR:MAXFILES=0:GOTO3030 4000 'PRINTER OUTPUT PROGRAM ROUTINE 4010 CLS:PRINT@3,"PRINTER OUTPUT CONVERSION PROGRAM":PRINT@84,">>>>>RUN WITH CAPS LOCKED<<<<<":PRINT@174,"H)EX TO DEC" 4012 PRINT@219,"OR":PRINT@254,"D)EC TO HEX" 4020 ONINSTR("DdHh",INPUT$(1))GOTO4100, 4100,4820,4820:GOTO4020 4030 CLS:PRINT@133,"ANOTHER FILE ?": PRINT@214,"Y)ES OR N)O":ONINSTR("YyNn", INPUT$(1))GOTO4000,4000,30,30:GOTO4030 4100 'DECIMAL TO HEX CONVERSION ROUTINE 4110 MAXFILES=1:CLEAR:CLS:PRINT@3," DECIMAL TO HEX CONVERSION PROGRAM":PRINT :PRINT@84,">>>>>RUN WITH CAPS LOCKED<<<<<" 4112 PRINT:INPUT"Program to convert";Y$ 4120 IF(INP(187)AND6)=2THEN4150ELSEBEEP 4130 PRINT:PRINT"Printer not ready - Setup printer" 4140 INPUT"and press ENTER to continue: ";B$:GOTO4120 4150 CLS:PRINT@42,"OK - Working..." 4160 PRINT@82,"You should have printer output now" 4170 OPENY$FORINPUTAS1 4175 LPRINT,;TAB(34);Y$ 4802 H$="0123456789ABCDEF":INPUT#1,N$: IFN$=""THEN4900 4803 IF EOF(1)THEN4900 4805 N=VAL(N$):X$="":J=4 4807 P=16^(J-1):FORI=1TO16:IFN-I*P<0THEN4815 4810 NEXT:GOTO8099 4815 X$=X$+MID$(H$,I,1):N=N-(I-1)*P:J=J-1:IFJ>0THEN4807 4817 LPRINTN$;" DEC IS ";X$;" HEX":GOTO 4802 4820 'HEX TO DECIMAL CONVERSION ROUTINE 4825 MAXFILES=1:CLEAR:CLS:PRINT@3,"HEX TO DECIMAL CONVERSION PROGRAM":PRINT@84, ">>>>>RUN WITH CAPS LOCKED<<<<<" 4826 PRINT:INPUT"Program to convert";Y$ 4830 IF(INP(187)AND6)=2THEN4845ELSEBEEP 4835 PRINT:PRINT"Printer not ready - Setup printer" 4840 INPUT"and press ENTER to continue: ";B$:GOTO4830 4845 CLS:PRINT@42,"OK - Working..." 4850 PRINT@82,"You should have printer output now" 4852 Y$=Y$+".DO" 4853 OPENY$FORINPUTAS1 4854 LPRINT;TAB(34);Y$ 4855 H$="0123456789ABCDEF":N$="":INPUT# 1,N$:IFN$=""THEN4900 4856 IFEOF(1)THEN4900 4860 J=1:L=LEN(N$):IFL<1THEN8099ELSEIFL>4THEN8099 4870 FORI=1TO4:O(I)=0:NEXT:FORI=5-LTO4: O(I)=ASC(MID$(N$,J,1))-48:IFO(I)>22THEN 8099ELSEIFO(I)>9THENO(I)=O(I)-7 4875 J=J+1:NEXT:O=4096*O(1)+256*O(2)+16 *O(3)+O(4) 4880 LPRINTN$;" HEX IS ";O;" DEC":GOTO 4855 4900 CLOSE:CLS:PRINT@173,"**** DONE ****":FORB=1TO600:NEXT:CLEAR:MAXFILES=0:GOTO4030 7000 CLS:PRINT@4,"SINGLE INPUT CONVERSION PROGRAM":PRINT@85,">>>>>RUN WITH CAPS LOCKED<<<<<" 7005 PRINT@280," D->H H->D Menu";:KEY(4)ON:KEY(5)ON:KEY(8)ON 7010 ONKEYGOSUB,,,7800,7850,,,9000:A3$= INKEY$:IFA3$=CHR$(13)THEN8000ELSEGOTO 7010 7800 CLS:PRINT@7,"DECIMAL TO HEX CONVERSION":PRINT@84,">>>>>RUN WITH CAPS LOCKED<<<<<" 7802 H$="0123456789ABCDEF":N$="":PRINT@ 160,"DEC INPUT ";:INPUTN$:IFN$=""THEN 7000 7805 N=VAL(N$):X$="":J=4 7807 P=16^(J-1):FORI=1TO16:IFN-I*P<0 THEN 7815 7810 NEXT:GOTO8099 7815 X$=X$+MID$(H$,I,1):N=N-(I-1)*P:J=J-1:IFJ>0THEN7807 7820 PRINT@240,N$;" DECIMAL IS ";X$;" HEX":FORQ=1TO1000:NEXT:GOTO7800 7850 CLS:PRINT@7,"HEX TO DECIMAL CONVERSION":PRINT@84,">>>>>RUN WITH CAPS LOCKED<<<<<" 7855 H$="0123456789ABCDEF":N$="":PRINT@ 160,"HEX INPUT";:INPUTN$:IFN$=""THEN 7000 7860 J=1:L=LEN(N$):IFL<1THEN8099ELSEIFL>4THEN8099 7870 FORI=1TO4:O(I)=0:NEXT:FORI=5-LTO4:O(I)=ASC(MID$(N$,J,1))-48:IFO(I)>22THEN 8099ELSEIFO(I)>9THENO(I)=O(I)-7 7875 J=J+1:NEXT:O=4096*O(1)+256*O(2)+16*O(3)+O(4) 7880 PRINT@240,;N$;" HEX IS ";O; "DECIMAL":FORQ=1TO1000:NEXT:GOTO7850 8000 IFERR<>58THENCLS:PRINT:PRINT"ERROR CODE ";ERR;" IN LINE ";ERL:STOP:RESUME 8099 CLS:PRINT@129," >>>> INPUT ERROR <<<< ":FORI=1TO500:NEXT:GOTO5 9000 MAXFILES=0:CLEAR:GOTO5 10000 'DECIMAL TO HEX CONVERSION ROUTINE 10010 MAXFILES=2:CLEAR:CLS:PRINT@3," DECIMAL TO HEX CONVERSION PROGRAM": PRINT@84,">>>>>RUN WITH CAPS LOCKED<<<<<" 10015 PRINT:INPUT"Ram Program to convert";Y$:INPUT"Ram Program to create" ;Z$ 10020 Y$=Y$+".DO":Z$=Z$+".DO" 10030 OPENY$FORINPUTAS1:OPENZ$FOROUTPUT AS2 10040 CLS:PRINT@175,"Working..." 10045 PRINT#2,TAB(17);Z$ 10802 H$="0123456789ABCDEF":INPUT#1,N$: IFN$=""THEN 10803 IF EOF(1)THEN10900 10805 N=VAL(N$):X$="":J=4 10807 P=16^(J-1):FORI=1TO16:IFN-I*P<0THEN10815 10810 NEXT:GOTO8099 10815 X$=X$+MID$(H$,I,1):N=N-(I-1)*P:J=J-1:IFJ>0THEN10807 10820 PRINT#2,;N$ ;" DEC IS ";X$ ;" HEX":GOTO10802 10900 CLOSE1,2:CLS:PRINT@173,"**** DONE ****":FORB=1TO600:NEXT:CLEAR:MAXFILES=0 :GOTO1030 11000 'HEX TO DECIMAL CONVERSION ROUTINE 11010 MAXFILES=3:CLEAR:CLS:PRINT@3,"HEX TO DECIMAL CONVERSION PROGRAM":PRINT@84, ">>>>>RUN WITH CAPS LOCKED<<<<<" 11015 PRINT:INPUT"Ram Program to convert ";Y$:INPUT"Ram Program to create";Z$ 11020 Y$=Y$+".DO":Z$=Z$+".DO" 11030 OPENY$FORINPUTAS1:OPENZ$FOROUTPUT AS2 11040 CLS:PRINT@175,"Working..." 11045 PRINT#2,TAB(17);Z$ 11855 H$="0123456789ABCDEF":N$="":INPUT# 1,N$:IFN$= ""THEN11900 11856 IFEOF(1)THEN11900 11860 J=1:L=LEN(N$):IFL<1THEN8099ELSEIFL>4THEN8099 11870 FORI=1TO4:O(I)=0:NEXT:FORI=5-LTO4: O(I)=ASC(MID$(N$,J,1))-48:IFO(I)>22THEN 8099ELSEIFO(I)>9THENO(I)=O(I)-7 11875 J=J+1:NEXT:O=4096*O(1)+256*O(2)+16 *O(3)+O(4) 11880 PRINT#2,;N$ ;" HEX IS ";O ;" DEC": GOTO11855 11900 CLOSE1,2:CLS:PRINT@173,"**** DONE ****":FORB=1TO600:NEXT:CLEAR:MAXFILES=0: GOTO1030 20000 'DECIMAL TO HEX CONVERSION ROUTINE 20010 MAXFILES=3:CLEAR:CLS:PRINT@3, "DECIMAL TO HEX CONVERSION PROGRAM": PRINT@84,">>>>>RUN WITH CAPS LOCKED<<<<<" 20011 PRINT@168,"SAVE TO CASSETTE PROGRAM":PRINT:INPUT"Ram Program to convert";Y$:INPUT"Cas Program to create" ;Z$ 20012 CLS:PRINT@9,"**** Insert Tape ****":PRINT@84,"**** Press Play and Record ****":PRINT@168,"PRESS WHEN READY" 20013 INPUTQ$:IFQ$=""THEN 20014 CLS:PRINT@163,"**** Moving Tape Past Leader ****":MOTORON:FORM=1TO2500: NEXT:MOTOROFF 20020 Y$=Y$+".DO" 20030 OPENY$FORINPUTAS1:OPEN"CAS:"+Z$FOR OUTPUTAS2 20040 CLS:PRINT@175,"Working..." 20045 PRINT#2,TAB(17);Z$ 20802 H$="0123456789ABCDEF":INPUT#1,N$: IFN$=""THEN 20803 IF EOF(1)THEN20900 20805 N=VAL(N$):X$="":J=4 20807 P=16^(J-1):FORI=1TO16:IFN-I*P<0THEN20815 20810 NEXT:GOTO8099 20815 X$=X$+MID$(H$,I,1):N=N-(I-1)*P:J=J-1:IFJ>0THEN20807 20820 PRINT#2,;N$ ;" DEC IS ";X$ ;" HEX ":GOTO20802 20900 CLOSE1,2:CLS:PRINT@173,"**** DONE ****":FORB=1TO600:NEXT:CLEAR:MAXFILES=0: GOTO2030 21000 'HEX TO DECIMAL CONVERSION ROUTINE 21010 MAXFILES=3:CLEAR:CLS:PRINT@3,"HEX TO DECIMAL CONVERSION PROGRAM":PRINT@84, ">>>>>RUN WITH CAPS LOCKED<<<<<" 21011 PRINT@ 168,"SAVE TO CASSETTE PROGRAM":PRINT:INPUT"Ram Program to convert";Y$:INPUT"Cas Program to create ";Z$ 21012 CLS:PRINT@9,"**** Insert Tape ****":PRINT@84,"**** Press Play and Record ****":PRINT@168,"PRESS WHEN READY " 21013 INPUTQ$:IFQ$=""THEN 21014 CLS:PRINT@163,"**** Moving Tape Past Leader ****":MOTORON:FORM=1TO2500: NEXT:MOTOROFF 21020 Y$=Y$+".DO" 21030 OPENY$FORINPUTAS1:OPEN"CAS:"+Z$FOR OUTPUTAS2 21040 CLS:PRINT@175,"Working..." 21045 PRINT#2,TAB(17);Z$ 21855 H$="0123456789ABCDEF":N$="":INPUT# 1,N$:IFN$= ""THEN21900 21856 IFEOF(1)THEN21900 21860 J=1:L=LEN(N$):IFL<1THEN8099ELSEIFL>4THEN8099 21870 FORI=1TO4:O(I)=0:NEXT:FORI=5-LTO4: O(I)=ASC(MID$(N$,J,1))-48:IFO(I)>22THEN 8099ELSEIFO(I)>9THENO(I)=O(I)-7 21875 J=J+1:NEXT:O=4096*O(1)+256*O(2)+16 *O(3)+O(4) 21880 PRINT#2,;N$ ;" HEX IS ";O ;" DEC " :GOTO 21855 21900 CLOSE1,2:CLS:PRINT@173,"**** DONE ****":FORB=1TO600:NEXT:CLEAR:MAXFILES=0: GOTO2030