8-Bit Software Online Conversion

Teletext in all Modes - Listing

10REM" 1 2 3 4 5 6 7 20REM" 0  30: 40REM"          50REM"           60REM"           70REM"   80REM"       90REM"           100REM"           110REM"       120HIMEM=&3000 130PROCass 140REPEAT 150VDU22,1 160VDU19,2,6;0; 170VDU19,1,5;0; 180PROCset:PROCpic:PROCreset 190IFA$="1":PROCdemo1 200IFA$="2":PROCdemo2 210VDU22,7 220PROCpic 230IFA$="1":PROCdemo1 240IFA$="2":PROCdemo2 250UNTILFALSE 260END 270: 280DEFPROCpic 290PRINT"  ,,,,,,,,,l" 300PRINT"   310PRINT"   5  320PRINT"     5  330PRINT"        5  340PRINT"      5  350PRINT"        5  360PRINT"      5  370PRINT"  software 5  380PRINT"   5  390PRINT"   400PRINT"   410PRINT"  Teletext Graphics in all M ODE's  420PRINT"   £££££  430PRINT"  Toggles between MODE 1 and 7 every  440PRINT"  10 seconds or on keypress.  450PRINT"   460PRINT"  Press 1 to see the first d emo  470PRINT"  which displays the charact er set  480PRINT"  twice first the normal set then  490PRINT"  the intercepted set for al l  500PRINT"  MODE's (0-7).  510PRINT"  Press 2 for the second dem o which  520PRINT"  CHAIN's the Resistor Progr am  530PRINT"  ,,,,,,,,,."; 540A$=INKEY$(1000) 550VDU30 560ENDPROC 570: 580DEFPROCdemo2 590PROCset 600VDU22,1 602VDU19,2,6;0; 604VDU19,1,5;0; 610CHAIN"RCODBAS" 620ENDPROC 630: 640DEFPROCdemo1 650M%=0 660FORM%=0TO7 670VDU22,M% 680X%=&55:A%=160:mode%=(USR(&FFF4)AND& FFFF)DIV&100 690PRINT"MODE ";STR$(M%) 700FORpass%=0TO1 710IFpass%:IFmode%<>7:PROCset 720PRINT 730IFmode%=2ORmode%=5:PRINT" 0123456 789ABCDEF"ELSEPRINT" 0 1 2 3 4 5 6 7 8 9 A B C D E F" 740IFmode%=2ORmode%=5:PRINT" ------- ---------"ELSEPRINT" ----------------- ---------------" 750FORI%=&A0 TO &F0 STEP 16 760IFI%=&C0:I%=&E0 770PRINTSTR$÷(I%)":"; 780IF(mode%=1ORmode%=2ORmode%=5)ANDpas s%:COLOUR2 790FORJ%=0 TO 15 800IFmode%=7ANDpass%:PRINTCHR$(147);EL SEIFmode%<>2ANDmode%<>5:PRINT" "; 810PRINTCHR$(I%+J%); 820NEXT 830VDU20 840PRINT:PRINT 850NEXT 860NEXT 870VDU30 880A=INKEY(500) 890IFpass%:IFmode%<>7:PROCreset 900NEXT 910ENDPROC 920: 930DEFPROCset 940?&7C=&20 950?&7D=?&20E 960?&7E=?&20F 970?&7F=&60 980?&80=128 990X%=&80:Y%=0:A%=10:R%=USR(&FFF1) 1000?&20E=0 1010?&20F=9 1020ENDPROC 1030: 1040DEFPROCreset 1050?&20E=?&7D 1060?&20F=?&7E 1070VDU23,128,?&81,?&82,?&83,?&84,?&85, ?&86,?&87,?&88 1080ENDPROC 1090: 1100DEFPROCass 1110FORI%=0TO2STEP2 1120P%=&0900 1130[OPTI% 1140CMP #&80:BCS tb1:JMP(&007D) 1150.tb1 1160CMP #&A0:BCS tb2 1170.chcol 1180AND #&0F 1190TAX 1200LDA #17:JSR &007C 1210TXA:JSR &007C 1220LDA #&20:JMP(&007D) 1230.tb2 1240CMP #&C0:BCC graphic 1250CMP #&E0:BCS graphic:LDA #&20:JMP(& 007D) 1260.graphic 1270STA&80 1280LDX #0 1290LDA #1:BIT &80:BEQ tp10:LDX #&F0 1300.tp10 1310LDA #2:BIT &80:BEQ tp11 1320TXA:ORA #&0F:TAX 1330.tp11 1340STX &70:STX &71 1350LDX #0 1360LDA #4:BIT &80:BEQ tp12:LDX #&F0 1370.tp12 1380LDA #8:BIT &80:BEQ tp13 1390TXA:ORA #&0F:TAX 1400.tp13 1410STX &72:STX &73:STX &74 1420LDX #0 1430LDA #16:BIT &80:BEQ tp14:LDX #&F0 1440.tp14 1450LDA #64:BIT &80:BEQ tp15 1460TXA:ORA #&0F:TAX 1470.tp15 1480STX &75:STX &76:STX &77 1490LDA #23:JSR &007C 1500LDA #128:JSR &007C 1510LDA &70:JSR &007C 1520LDA &71:JSR &007C 1530LDA &72:JSR &007C 1540LDA &73:JSR &007C 1550LDA &74:JSR &007C 1560LDA &75:JSR &007C 1570LDA &76:JSR &007C 1580LDA &77:JSR &007C 1590LDA #128 1600JMP(&007D) 1610]NEXT 1620ENDPROC