8-Bit Software Online Conversion
:2.$.L305 - Listing
10REM Thousand Loader V.1.02
20MODE1:VDU23;8202;0;0;0;19,2,2;0;:*L
.KQJdata B00
30PROCassemble
40VDU23,224,0,54,127,127,127,62,28,8,
23,225,0,8,28,62,127,127,28,62,23,226,0,
8,28,62,127,62,28,8,23,227,0,28,28,107,1
27,107,8,28,23,228,206,219,219,219,219,2
19,206,0
50VDU23,229,240,240,240,240,240,240,0
;23,239,224,0,224,0,224,0,0;
60VDU23,240,7950;32575;32639;32639;23
,241,31800;65534;65535;65535;23,242,7999
;1807;259;0;23,243,64766;61688;49376;128
;23,244,256;1795;7951;32575;23,245,49280
;61664;64760;65534;23,246,32639;15486;76
9;7;23,247,65535;40639;57536;240;
70VDU23,248,256;1795;7951;32575;23,24
9,49280;61664;64760;65534;23,250,7999;18
07;259;0;23,251,64766;61688;49376;128;23
,252,256;771;7427;16190;23,253,49152;575
68;56544;65214;23,254,7230;257;1795;0;23
,255,40126;49344;61664;0;
80ENVELOPE 1,1,0,0,0,0,0,0,126,-1,0,-
1,88,0
90ENVELOPE 2,2,33,-33,33,2,2,2,127,0,
0,-20,88,0
100ENVELOPE 3,2,1,1,1,50,50,50,63,-10,
0,-63,63,63
110ENVELOPE 4,3,1,-1,1,1,2,1,75,0,0,-7
5,75,0
120GCOL0,130:CLG:MOVE0,0:DRAW1276,0:DR
AW1276,1023:DRAW0,1023:DRAW0,4:DRAW1272,
4:DRAW1272,1019:DRAW4,1019:DRAW4,4:MOVE0
,152:DRAW1276,152:DRAW1276,156:DRAW0,156
:MOVE 0,799:DRAW1276,799:DRAW1276,795:DR
AW0,795
130VDU5:GCOL0,1:Z%=1:FORX%=140 TO 1100
STEP 192:MOVE X%,204:PRINT;Z%;:Z%=Z%+1:
NEXT:VDU4
140GCOL0,128:VDU24,8;8;1268;148;16:GCO
L0,129:VDU24,8;803;1268;1015;16:GCOL0,3:
MOVE732,803:DRAW732,1023:DRAW736,1023:DR
AW736,803:VDU5:MOVE912,1007:PRINT"Last":
MOVE896,971:PRINT"Round":MOVE1088,1007:P
RINT"Total":MOVE1088,971:PRINT"Score"
150MOVE 756,927:PRINT"You":MOVE 756,86
3:PRINT"Comp":VDU4:GCOL0,130:PROCtitle("
THOUSAND",3,12,991):GCOL0,131:VDU24,892;
831;1248;931;16
160A%=&900:C%=&920:P%=&928:W%=&930
170W%?1=11:W%?2=10:W%?3=4:W%?4=3:W%?5=
2:W%?6=0
180PAGE=&1100:CHAIN"T305"
190:
200DEF PROCtitle(A$,C%,H%,V%)
210GCOL 0,C%:FOR K%=1 TO LENA$
220?&70=ASCMID$(A$,K%,1)
230A%=10:X%=&70:Y%=0:CALL &FFF1
240Y%=V%:FOR J%=0 TO 7:B%=J%?&71
250FOR I%=7 TO 0 STEP-1:Z%=2^I%
260IF B%DIVZ% X%=7-I%:VDU5:MOVE H%+X%*
12,Y%:VDU239,4
270B%=B%MODZ%
280NEXT:Y%=Y%-24
290NEXT:H%=H%+88
300NEXT:ENDPROC
310:
320DEF PROCassemble
330addr=&70:x=&72:y=&74:col=&76:count=
&77:scr=&78:data=&7A:oswrch=&FFEE
340FOR pass=0 TO 2 STEP 2
350P%=&938:[OPT pass
360LDX #230
370.loop1
380LDA #23:JSR oswrch:TXA:JSR oswrch
390LDY #0
400.loop2
410LDA (addr),Y:JSR oswrch
420INY:CPY #8:BNE loop2
430CLC:TYA:ADC addr:STA addr
440INX:CPX #239:BNE loop1
450LDA #25:JSR oswrch:LDA #4:JSR oswrc
h
460LDA x:JSR oswrch:LDA x+1:JSR oswrch
470LDA y:JSR oswrch:LDA y+1:JSR oswrch
480LDX #0
490.loop3
500LDA vdu,X:JSR oswrch
510INX:CPX #17:BNE loop3
520RTS
530.vdu
540EQUB 230:EQUB 231:EQUB 232
550EQUB 8:EQUB 8:EQUB 8:EQUB 10
560EQUB 233:EQUB 234:EQUB 235
570EQUB 8:EQUB 8:EQUB 8:EQUB 10
580EQUB 236:EQUB 237:EQUB 238:EQUB 0
590:
600.card
610LDA #blank MOD 256:STA data
620LDA #blank DIV 256:STA data+1
630JSR line
640LDA #0:STA count
650.loop1
660JSR line:JSR ddata
670INC count:LDA count:CMP #4:BNE loop
1
680JSR line
690JSR line
700RTS
710.line
720JSR draw
730JSR idata
740LDX #9
750.loop2
760JSR draw
770DEX:BPL loop2
780JSR idata
790JSR draw
800CLC:LDA scr:ADC #&20:STA scr
810LDA scr+1:ADC #2:STA scr+1
820JSR idata
830RTS
840:
850.draw
860LDY #0
870.dloop
880LDA (data),Y:STA (scr),Y
890INY:CPY #8:BNE dloop
900CLC:TYA:ADC scr:STA scr
910BCC nocarry:INC scr+1
920.nocarry
930RTS
940.idata
950CLC:LDA data:ADC #8:STA data
960BCC nocarry2:INC data+1
970.nocarry2
980RTS
990.ddata
1000SEC:LDA data:SBC #24:STA data
1010BCS carry:DEC data+1
1020.carry
1030RTS
1040.blank
1050EQUD &77773380:EQUD &77777777:EQUD
&FFFFFF00:EQUD &FFFFFFFF:EQUD &B8B83070:
EQUD &B8B8B8B8
1060EQUD &77777777:EQUD &77777777:EQUD
&FFFFFFFF:EQUD &FFFFFFFF:EQUD &B8B8B8B8:
EQUD &B8B8B8B8
1070EQUD &77777777:EQUD &80337777:EQUD
&FFFFFFFF:EQUD &00FFFFFF:EQUD &B8B8B8B8:
EQUD &7030B8B8
1080]
1090NEXT:ENDPROC