Home » Personal collection » Acorn tapes » Electron_User » Electron_User_tape30a_acorn_eu_1991_december.wav » LISTI

LISTI

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » Personal collection » Acorn tapes » Electron_User » Electron_User_tape30a_acorn_eu_1991_december.wav
Filename: LISTI
Read OK:
File size: 1345 bytes
Load address: FFFF1A00
Exec address: FFFF8023
Duplicates

There are 2 duplicate copies of this file in the archive:

File contents
   10REM Santa's Slip-Up!
   20REM Sprite Data
   30REM Listing I
   40REM By Oliver Bishop
   50REM (c) The Micro User
   60:
   70number=&1D00
   80MODE6:*FX16
   90CLS:VDU 23;8202;1;0;0;0; 
  100PROCassemble
  110PRINTTAB(1,10);"*SAVE ""code"" 6000 ";~O% 
  120PRINT '"Copy this line, then press Return."   
  130END
  140DEF PROCassemble
  150osbyte=&FFF4:add=&70:new=&72:temp=&74:rows=&76:temprows=&77:columns=&78:counter=&79:work=&7A:de=&7B
  160FOR pass=4 TO 6 STEP 2 
  170P%=number
  180O%=&6000
  190[ OPT pass
  200LDA#0:STA&90:STA&91
  210LDA #0:STA counter
  220.mainloop:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR store
  230LDA #sprite MOD256:STA sdata+1:LDA #sprite DIV256:STA sdata+2:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR print:RTS 
  240.mainloop2:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR store:LDA #sprite2 MOD256:STA sdata+1:LDA #sprite2 DIV256:STA sdata+2:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR print:RTS  
  250.mainloop3:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR store:LDA #sprite3 MOD256:STA sdata+1:LDA #sprite3 DIV256:STA sdata+2:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR print:RTS    
  260.mainloop4:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR store:LDA #sprite4 MOD256:STA sdata+1:LDA #sprite4 DIV256:STA sdata+2:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR print:RTS     
  270JSR &FFE0:LDA #4:SEI:.frame:BIT &FE00:BEQ frame:CLI:.res:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR restore:CLC:LDA add:ADC #8:STA add  
  280BCC main1:INC add+1:.main1:RTS
  290.res2:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR restore:SEC:LDA add:SBC #8:STA add:BCS main1:LDA add+1:CLC:SBC#0:STA add+1:.main1:RTS 
  300.res3:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR restore:CLC:LDA add:ADC #64:STA add:LDA add+1:ADC #1:STA add+1:RTS 
  310.res4:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR restore:SEC:LDA add:SBC #64:STA add:LDA add+1:SBC #1:STA add+1:RTS  
  320.restore:STX columns:STY rows:LDX #0:LDY #0:LDA new:STA temp:LDA new+1:STA temp+1:.loop1:LDA rows:STA temprows:.loop2:LDA back,X:STA (new),Y:INX:LDA new:AND #7:CMP #7:BEQ rbottom
  330INC new:BNE rnext:INC new+1:JMP rnext:.rbottom:LDA new:ADC #&38:STA new:LDA new+1:ADC #1:STA new+1:.rnext:DEC temprows:BNE loop2:LDA temp:ADC #8:STA new:STA temp:LDA temp+1:ADC #0
  340STA new+1:STA temp+1:DEC columns:BNE loop1:RTS
  350.right:INC&90:LDA counter:CMP#1:BEQover:LDA#0:STA&F5:INCcounter:JSRman:RTS:.over:LDA#3:STA&F5:LDA#0:STA counter:JSRman:RTS
  360.man:LDA#19:JSR osbyte
  370LDA &F5:CMP #3:BNE m1:JSR res:JSR mainloop4:RTS:.m1:LDA &F5:CMP #2:BNE m2:JSR res2:JSR mainloop3:RTS:.m2:LDA &F5:CMP #1:BNE m3:JSR res2:JSR mainloop2:RTS:.m3:LDA &F5:CMP#4:BNE m4:JSR res4:JSR mainloop2:RTS:.m4:LDA&F5:CMP#5:BNE m5
  380JSRres3:JSR mainloop2:RTS:.m5:LDA&F5:CMP#6:BNE m6:JSRres4:JSRmainloop:RTS:.m6:LDA&F5:CMP#7:BNE m7:JSR res3:JSR mainloop:RTS:.m7:JSR res:JSR mainloop:RTS
  390.left:DEC&90:LDA counter:CMP#1:BEQover2:LDA#1:STA&F5:INCcounter:JSRman:RTS:.over2:LDA#2:STA&F5:LDA#0:STA counter:JSRman:RTS 
  400.up:INC&91:LDA&F5:CMP#7:BEQover3:LDA&F5:CMP#0:BEQover3:LDA&F5:CMP#3:BEQover3:LDA&F5:CMP #6:BEQover3:LDA#4:STA&F5:JSRman:RTS:.over3:LDA#6:STA&F5:JSRman:RTS 
  410.down:DEC&91:LDA&F5:CMP#6:BEQover4:LDA&F5:CMP#0:BEQover4:LDA&F5:CMP#3:BEQover4:LDA&F5:CMP #7:BEQover4:LDA#5:STA&F5:JSRman:RTS:.over4:LDA#7:STA&F5:JSRman:RTS
  420.store:STX columns:STY rows:LDX #0:LDY #0:LDA new:STA temp:LDA new+1:STA temp+1:.loop1:LDA rows:STA temprows:.loop2:LDA (new),Y:STA &7E:STA back,X:INX:LDA new:AND #7:CMP #7
  430BEQ sbottom:INC new:BNE snext:INC new+1:JMP snext:.sbottom:LDA new:ADC #&38:STA new:LDA new+1:ADC #1:STA new+1:.snext:DEC temprows:BNE loop2:LDA temp:ADC #8:STA new
  440STA temp:LDA temp+1:ADC #0:STA new+1:STA temp+1:DEC columns:BNE loop1:RTS:.print:STX columns:STY rows:LDX #0:LDY #0:LDA new:STA temp:LDA new+1:STA temp+1:.loop1:LDA rows:STA temprows
  450.loop2:LDA (new),Y:STA work:ASL work:ASL work:ASL work:ASL work:LSR A:LSR A:LSR A:LSR A:ORA work:ORA (new),Y:EOR #&FF:.sdata:AND &3000,X:ORA (new),Y:STA (new),Y:INX:LDA new:AND #7
  460CMP #7:BEQ pbottom:INC new:BNE pnext:INC new+1:JMP pnext:.pbottom:LDA new:ADC #&38:STA new:LDA new+1:ADC #1:STA new+1:.pnext:DEC temprows:BNE loop2:LDA temp:ADC #8:STA new:STA temp:LDA temp+1:ADC #0
  470STA new+1:STA temp+1:DEC columns:BNE loop1:RTS
  480.back
  490EQUS STRING$(4*32,CHR$(0))  
  500OPT FNdata
  510]
  520NEXT
  530ENDPROC
  540DEF FNdata
  550sprite=P%
  560RESTORE
  570FOR i=1 TO 2*16 STEP 4  
  580READ a$
  590[ OPT pass
  600EQUD EVAL("&"+a$)
  610]
  620NEXT
  630sprite2=P%:RESTORE680:FOR i=1 TO 2*16 STEP 4:READ a$:[ OPT pass:EQUD EVAL("&"+a$):]:NEXT  
  640sprite3=P%:RESTORE690:FOR i=1 TO 2*16 STEP 4:READ a$:[ OPT pass:EQUD EVAL("&"+a$):]:NEXT
  650sprite4=P%:RESTORE700:FOR i=1 TO 2*16 STEP 4:READ a$:[ OPT pass:EQUD EVAL("&"+a$):]:NEXT  
  660=pass
  670DATA 51110147,E1E1E1E1,743F1E1,CC0C0C04,CC880800,E0E0C00,80CCC0E,EE0C0C08
  680DATA 77330301,F0F0701,307770F,CC0C0406,4000004C,E0E0E0E0,848E0E0,6606060C
  690DATA 77330301,F0F0701,307770F,11000101,4000004C,E0E0E0E0,848E0E0,88080808
  700DATA 51110147,E1E1E1E1,343F1E1,33020303,CC880800,E0E0C00,80CCC0E,0

� Santa's Slip-Up!
� Sprite Data
� Listing I
(� By Oliver Bishop
2� (c) The Micro User
<:
Fnumber=&1D00
P�6:*FX16
Z�:� 23;8202;1;0;0;0; 
d
�assemble
n'�1,10);"*SAVE ""code"" 6000 ";~O% 
x.� '"Copy this line, then press Return."   
��
�� �assemble
�gosbyte=&FFF4:add=&70:new=&72:temp=&74:rows=&76:temprows=&77:columns=&78:counter=&79:work=&7A:de=&7B
�� pass=4 � 6 � 2 
�
P%=number
�O%=&6000
�[ OPT pass
�LDA#0:STA&90:STA&91
�LDA #0:STA counter
�J.mainloop:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR store
�LDA #sprite �256:STA sdata+1:LDA #sprite �256:STA sdata+2:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR print:RTS 
��.mainloop2:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR store:LDA #sprite2 �256:STA sdata+1:LDA #sprite2 �256:STA sdata+2:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR print:RTS  
��.mainloop3:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR store:LDA #sprite3 �256:STA sdata+1:LDA #sprite3 �256:STA sdata+2:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR print:RTS    
�.mainloop4:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR store:LDA #sprite4 �256:STA sdata+1:LDA #sprite4 �256:STA sdata+2:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR print:RTS     
�JSR &FFE0:LDA #4:SEI:.frame:BIT &FE00:BEQ frame:CLI:.res:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR restore:CLC:LDA add:ADC #8:STA add  
"BCC main1:INC add+1:.main1:RTS
"�.res2:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR restore:SEC:LDA add:SBC #8:STA add:BCS main1:LDA add+1:CLC:SBC#0:STA add+1:.main1:RTS 
,�.res3:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR restore:CLC:LDA add:ADC #64:STA add:LDA add+1:ADC #1:STA add+1:RTS 
6�.res4:LDA add:STA new:LDA add+1:STA new+1:LDX #2:LDY #16:JSR restore:SEC:LDA add:SBC #64:STA add:LDA add+1:SBC #1:STA add+1:RTS  
@�.restore:STX columns:STY rows:LDX #0:LDY #0:LDA new:STA temp:LDA new+1:STA temp+1:.loop1:LDA rows:STA temprows:.loop2:LDA back,X:STA (new),Y:INX:LDA new:� #7:CMP #7:BEQ rbottom
J�INC new:BNE rnext:INC new+1:JMP rnext:.rbottom:LDA new:ADC #&38:STA new:LDA new+1:ADC #1:STA new+1:.rnext:DEC temprows:BNE loop2:LDA temp:ADC #8:STA new:STA temp:LDA temp+1:ADC #0
T2STA new+1:STA temp+1:DEC columns:BNE loop1:RTS
^~.right:INC&90:LDA counter:CMP#1:BEQover:LDA#0:STA&F5:INCcounter:JSRman:RTS:.over:LDA#3:STA&F5:LDA#0:STA counter:JSRman:RTS
h.man:LDA#19:JSR osbyte
r�LDA &F5:CMP #3:BNE m1:JSR res:JSR mainloop4:RTS:.m1:LDA &F5:CMP #2:BNE m2:JSR res2:JSR mainloop3:RTS:.m2:LDA &F5:CMP #1:BNE m3:JSR res2:JSR mainloop2:RTS:.m3:LDA &F5:CMP#4:BNE m4:JSR res4:JSR mainloop2:RTS:.m4:LDA&F5:CMP#5:BNE m5
|�JSRres3:JSR mainloop2:RTS:.m5:LDA&F5:CMP#6:BNE m6:JSRres4:JSRmainloop:RTS:.m6:LDA&F5:CMP#7:BNE m7:JSR res3:JSR mainloop:RTS:.m7:JSR res:JSR mainloop:RTS
��.left:DEC&90:LDA counter:CMP#1:BEQover2:LDA#1:STA&F5:INCcounter:JSRman:RTS:.over2:LDA#2:STA&F5:LDA#0:STA counter:JSRman:RTS 
��.up:INC&91:LDA&F5:CMP#7:BEQover3:LDA&F5:CMP#0:BEQover3:LDA&F5:CMP#3:BEQover3:LDA&F5:CMP #6:BEQover3:LDA#4:STA&F5:JSRman:RTS:.over3:LDA#6:STA&F5:JSRman:RTS 
��.down:DEC&91:LDA&F5:CMP#6:BEQover4:LDA&F5:CMP#0:BEQover4:LDA&F5:CMP#3:BEQover4:LDA&F5:CMP #7:BEQover4:LDA#5:STA&F5:JSRman:RTS:.over4:LDA#7:STA&F5:JSRman:RTS
��.store:STX columns:STY rows:LDX #0:LDY #0:LDA new:STA temp:LDA new+1:STA temp+1:.loop1:LDA rows:STA temprows:.loop2:LDA (new),Y:STA &7E:STA back,X:INX:LDA new:� #7:CMP #7
��BEQ sbottom:INC new:BNE snext:INC new+1:JMP snext:.sbottom:LDA new:ADC #&38:STA new:LDA new+1:ADC #1:STA new+1:.snext:DEC temprows:BNE loop2:LDA temp:ADC #8:STA new
��STA temp:LDA temp+1:ADC #0:STA new+1:STA temp+1:DEC columns:BNE loop1:RTS:.print:STX columns:STY rows:LDX #0:LDY #0:LDA new:STA temp:LDA new+1:STA temp+1:.loop1:LDA rows:STA temprows
®.loop2:LDA (new),Y:STA work:ASL work:ASL work:ASL work:ASL work:LSR A:LSR A:LSR A:LSR A:�A work:�A (new),Y:� #&FF:.sdata:� &3000,X:�A (new),Y:STA (new),Y:INX:LDA new:� #7
��CMP #7:BEQ pbottom:INC new:BNE pnext:INC new+1:JMP pnext:.pbottom:LDA new:ADC #&38:STA new:LDA new+1:ADC #1:STA new+1:.pnext:DEC temprows:BNE loop2:LDA temp:ADC #8:STA new:STA temp:LDA temp+1:ADC #0
�2STA new+1:STA temp+1:DEC columns:BNE loop1:RTS
�	.back
�EQUS �4*32,�(0))  
�
OPT �data
�]
�
�
� �data
&
sprite=P%
0�
:� i=1 � 2*16 � 4  
D� a$
N[ OPT pass
XEQUD �("&"+a$)
b]
l�
vJsprite2=P%:��thB:� i=1 � 2*16 � 4:� a$:[ OPT pass:EQUD �("&"+a$):]:�  
�Hsprite3=P%:��trB:� i=1 � 2*16 � 4:� a$:[ OPT pass:EQUD �("&"+a$):]:�
�Jsprite4=P%:��t|B:� i=1 � 2*16 � 4:� a$:[ OPT pass:EQUD �("&"+a$):]:�  
�	=pass
�J� 51110147,E1E1E1E1,743F1E1,CC0C0C04,CC880800,E0E0C00,80CCC0E,EE0C0C08
�J� 77330301,F0F0701,307770F,CC0C0406,4000004C,E0E0E0E0,848E0E0,6606060C
�J� 77330301,F0F0701,307770F,11000101,4000004C,E0E0E0E0,848E0E0,88080808
�C� 51110147,E1E1E1E1,343F1E1,33020303,CC880800,E0E0C00,80CCC0E,0
�
00000000  0d 00 0a 16 f4 20 53 61  6e 74 61 27 73 20 53 6c  |..... Santa's Sl|
00000010  69 70 2d 55 70 21 0d 00  14 11 f4 20 53 70 72 69  |ip-Up!..... Spri|
00000020  74 65 20 44 61 74 61 0d  00 1e 0f f4 20 4c 69 73  |te Data..... Lis|
00000030  74 69 6e 67 20 49 0d 00  28 16 f4 20 42 79 20 4f  |ting I..(.. By O|
00000040  6c 69 76 65 72 20 42 69  73 68 6f 70 0d 00 32 18  |liver Bishop..2.|
00000050  f4 20 28 63 29 20 54 68  65 20 4d 69 63 72 6f 20  |. (c) The Micro |
00000060  55 73 65 72 0d 00 3c 05  3a 0d 00 46 10 6e 75 6d  |User..<.:..F.num|
00000070  62 65 72 3d 26 31 44 30  30 0d 00 50 0c eb 36 3a  |ber=&1D00..P..6:|
00000080  2a 46 58 31 36 0d 00 5a  19 db 3a ef 20 32 33 3b  |*FX16..Z..:. 23;|
00000090  38 32 30 32 3b 31 3b 30  3b 30 3b 30 3b 20 0d 00  |8202;1;0;0;0; ..|
000000a0  64 0d f2 61 73 73 65 6d  62 6c 65 0d 00 6e 27 f1  |d..assemble..n'.|
000000b0  8a 31 2c 31 30 29 3b 22  2a 53 41 56 45 20 22 22  |.1,10);"*SAVE ""|
000000c0  63 6f 64 65 22 22 20 36  30 30 30 20 22 3b 7e 4f  |code"" 6000 ";~O|
000000d0  25 20 0d 00 78 2e f1 20  27 22 43 6f 70 79 20 74  |% ..x.. '"Copy t|
000000e0  68 69 73 20 6c 69 6e 65  2c 20 74 68 65 6e 20 70  |his line, then p|
000000f0  72 65 73 73 20 52 65 74  75 72 6e 2e 22 20 20 20  |ress Return."   |
00000100  0d 00 82 05 e0 0d 00 8c  0f dd 20 f2 61 73 73 65  |.......... .asse|
00000110  6d 62 6c 65 0d 00 96 67  6f 73 62 79 74 65 3d 26  |mble...gosbyte=&|
00000120  46 46 46 34 3a 61 64 64  3d 26 37 30 3a 6e 65 77  |FFF4:add=&70:new|
00000130  3d 26 37 32 3a 74 65 6d  70 3d 26 37 34 3a 72 6f  |=&72:temp=&74:ro|
00000140  77 73 3d 26 37 36 3a 74  65 6d 70 72 6f 77 73 3d  |ws=&76:temprows=|
00000150  26 37 37 3a 63 6f 6c 75  6d 6e 73 3d 26 37 38 3a  |&77:columns=&78:|
00000160  63 6f 75 6e 74 65 72 3d  26 37 39 3a 77 6f 72 6b  |counter=&79:work|
00000170  3d 26 37 41 3a 64 65 3d  26 37 42 0d 00 a0 15 e3  |=&7A:de=&7B.....|
00000180  20 70 61 73 73 3d 34 20  b8 20 36 20 88 20 32 20  | pass=4 . 6 . 2 |
00000190  0d 00 aa 0d 50 25 3d 6e  75 6d 62 65 72 0d 00 b4  |....P%=number...|
000001a0  0c 4f 25 3d 26 36 30 30  30 0d 00 be 0e 5b 20 4f  |.O%=&6000....[ O|
000001b0  50 54 20 70 61 73 73 0d  00 c8 17 4c 44 41 23 30  |PT pass....LDA#0|
000001c0  3a 53 54 41 26 39 30 3a  53 54 41 26 39 31 0d 00  |:STA&90:STA&91..|
000001d0  d2 16 4c 44 41 20 23 30  3a 53 54 41 20 63 6f 75  |..LDA #0:STA cou|
000001e0  6e 74 65 72 0d 00 dc 4a  2e 6d 61 69 6e 6c 6f 6f  |nter...J.mainloo|
000001f0  70 3a 4c 44 41 20 61 64  64 3a 53 54 41 20 6e 65  |p:LDA add:STA ne|
00000200  77 3a 4c 44 41 20 61 64  64 2b 31 3a 53 54 41 20  |w:LDA add+1:STA |
00000210  6e 65 77 2b 31 3a 4c 44  58 20 23 32 3a 4c 44 59  |new+1:LDX #2:LDY|
00000220  20 23 31 36 3a 4a 53 52  20 73 74 6f 72 65 0d 00  | #16:JSR store..|
00000230  e6 7f 4c 44 41 20 23 73  70 72 69 74 65 20 83 32  |..LDA #sprite .2|
00000240  35 36 3a 53 54 41 20 73  64 61 74 61 2b 31 3a 4c  |56:STA sdata+1:L|
00000250  44 41 20 23 73 70 72 69  74 65 20 81 32 35 36 3a  |DA #sprite .256:|
00000260  53 54 41 20 73 64 61 74  61 2b 32 3a 4c 44 41 20  |STA sdata+2:LDA |
00000270  61 64 64 3a 53 54 41 20  6e 65 77 3a 4c 44 41 20  |add:STA new:LDA |
00000280  61 64 64 2b 31 3a 53 54  41 20 6e 65 77 2b 31 3a  |add+1:STA new+1:|
00000290  4c 44 58 20 23 32 3a 4c  44 59 20 23 31 36 3a 4a  |LDX #2:LDY #16:J|
000002a0  53 52 20 70 72 69 6e 74  3a 52 54 53 20 0d 00 f0  |SR print:RTS ...|
000002b0  ca 2e 6d 61 69 6e 6c 6f  6f 70 32 3a 4c 44 41 20  |..mainloop2:LDA |
000002c0  61 64 64 3a 53 54 41 20  6e 65 77 3a 4c 44 41 20  |add:STA new:LDA |
000002d0  61 64 64 2b 31 3a 53 54  41 20 6e 65 77 2b 31 3a  |add+1:STA new+1:|
000002e0  4c 44 58 20 23 32 3a 4c  44 59 20 23 31 36 3a 4a  |LDX #2:LDY #16:J|
000002f0  53 52 20 73 74 6f 72 65  3a 4c 44 41 20 23 73 70  |SR store:LDA #sp|
00000300  72 69 74 65 32 20 83 32  35 36 3a 53 54 41 20 73  |rite2 .256:STA s|
00000310  64 61 74 61 2b 31 3a 4c  44 41 20 23 73 70 72 69  |data+1:LDA #spri|
00000320  74 65 32 20 81 32 35 36  3a 53 54 41 20 73 64 61  |te2 .256:STA sda|
00000330  74 61 2b 32 3a 4c 44 41  20 61 64 64 3a 53 54 41  |ta+2:LDA add:STA|
00000340  20 6e 65 77 3a 4c 44 41  20 61 64 64 2b 31 3a 53  | new:LDA add+1:S|
00000350  54 41 20 6e 65 77 2b 31  3a 4c 44 58 20 23 32 3a  |TA new+1:LDX #2:|
00000360  4c 44 59 20 23 31 36 3a  4a 53 52 20 70 72 69 6e  |LDY #16:JSR prin|
00000370  74 3a 52 54 53 20 20 0d  00 fa cc 2e 6d 61 69 6e  |t:RTS  .....main|
00000380  6c 6f 6f 70 33 3a 4c 44  41 20 61 64 64 3a 53 54  |loop3:LDA add:ST|
00000390  41 20 6e 65 77 3a 4c 44  41 20 61 64 64 2b 31 3a  |A new:LDA add+1:|
000003a0  53 54 41 20 6e 65 77 2b  31 3a 4c 44 58 20 23 32  |STA new+1:LDX #2|
000003b0  3a 4c 44 59 20 23 31 36  3a 4a 53 52 20 73 74 6f  |:LDY #16:JSR sto|
000003c0  72 65 3a 4c 44 41 20 23  73 70 72 69 74 65 33 20  |re:LDA #sprite3 |
000003d0  83 32 35 36 3a 53 54 41  20 73 64 61 74 61 2b 31  |.256:STA sdata+1|
000003e0  3a 4c 44 41 20 23 73 70  72 69 74 65 33 20 81 32  |:LDA #sprite3 .2|
000003f0  35 36 3a 53 54 41 20 73  64 61 74 61 2b 32 3a 4c  |56:STA sdata+2:L|
00000400  44 41 20 61 64 64 3a 53  54 41 20 6e 65 77 3a 4c  |DA add:STA new:L|
00000410  44 41 20 61 64 64 2b 31  3a 53 54 41 20 6e 65 77  |DA add+1:STA new|
00000420  2b 31 3a 4c 44 58 20 23  32 3a 4c 44 59 20 23 31  |+1:LDX #2:LDY #1|
00000430  36 3a 4a 53 52 20 70 72  69 6e 74 3a 52 54 53 20  |6:JSR print:RTS |
00000440  20 20 20 0d 01 04 cd 2e  6d 61 69 6e 6c 6f 6f 70  |   .....mainloop|
00000450  34 3a 4c 44 41 20 61 64  64 3a 53 54 41 20 6e 65  |4:LDA add:STA ne|
00000460  77 3a 4c 44 41 20 61 64  64 2b 31 3a 53 54 41 20  |w:LDA add+1:STA |
00000470  6e 65 77 2b 31 3a 4c 44  58 20 23 32 3a 4c 44 59  |new+1:LDX #2:LDY|
00000480  20 23 31 36 3a 4a 53 52  20 73 74 6f 72 65 3a 4c  | #16:JSR store:L|
00000490  44 41 20 23 73 70 72 69  74 65 34 20 83 32 35 36  |DA #sprite4 .256|
000004a0  3a 53 54 41 20 73 64 61  74 61 2b 31 3a 4c 44 41  |:STA sdata+1:LDA|
000004b0  20 23 73 70 72 69 74 65  34 20 81 32 35 36 3a 53  | #sprite4 .256:S|
000004c0  54 41 20 73 64 61 74 61  2b 32 3a 4c 44 41 20 61  |TA sdata+2:LDA a|
000004d0  64 64 3a 53 54 41 20 6e  65 77 3a 4c 44 41 20 61  |dd:STA new:LDA a|
000004e0  64 64 2b 31 3a 53 54 41  20 6e 65 77 2b 31 3a 4c  |dd+1:STA new+1:L|
000004f0  44 58 20 23 32 3a 4c 44  59 20 23 31 36 3a 4a 53  |DX #2:LDY #16:JS|
00000500  52 20 70 72 69 6e 74 3a  52 54 53 20 20 20 20 20  |R print:RTS     |
00000510  0d 01 0e 98 4a 53 52 20  26 46 46 45 30 3a 4c 44  |....JSR &FFE0:LD|
00000520  41 20 23 34 3a 53 45 49  3a 2e 66 72 61 6d 65 3a  |A #4:SEI:.frame:|
00000530  42 49 54 20 26 46 45 30  30 3a 42 45 51 20 66 72  |BIT &FE00:BEQ fr|
00000540  61 6d 65 3a 43 4c 49 3a  2e 72 65 73 3a 4c 44 41  |ame:CLI:.res:LDA|
00000550  20 61 64 64 3a 53 54 41  20 6e 65 77 3a 4c 44 41  | add:STA new:LDA|
00000560  20 61 64 64 2b 31 3a 53  54 41 20 6e 65 77 2b 31  | add+1:STA new+1|
00000570  3a 4c 44 58 20 23 32 3a  4c 44 59 20 23 31 36 3a  |:LDX #2:LDY #16:|
00000580  4a 53 52 20 72 65 73 74  6f 72 65 3a 43 4c 43 3a  |JSR restore:CLC:|
00000590  4c 44 41 20 61 64 64 3a  41 44 43 20 23 38 3a 53  |LDA add:ADC #8:S|
000005a0  54 41 20 61 64 64 20 20  0d 01 18 22 42 43 43 20  |TA add  ..."BCC |
000005b0  6d 61 69 6e 31 3a 49 4e  43 20 61 64 64 2b 31 3a  |main1:INC add+1:|
000005c0  2e 6d 61 69 6e 31 3a 52  54 53 0d 01 22 97 2e 72  |.main1:RTS.."..r|
000005d0  65 73 32 3a 4c 44 41 20  61 64 64 3a 53 54 41 20  |es2:LDA add:STA |
000005e0  6e 65 77 3a 4c 44 41 20  61 64 64 2b 31 3a 53 54  |new:LDA add+1:ST|
000005f0  41 20 6e 65 77 2b 31 3a  4c 44 58 20 23 32 3a 4c  |A new+1:LDX #2:L|
00000600  44 59 20 23 31 36 3a 4a  53 52 20 72 65 73 74 6f  |DY #16:JSR resto|
00000610  72 65 3a 53 45 43 3a 4c  44 41 20 61 64 64 3a 53  |re:SEC:LDA add:S|
00000620  42 43 20 23 38 3a 53 54  41 20 61 64 64 3a 42 43  |BC #8:STA add:BC|
00000630  53 20 6d 61 69 6e 31 3a  4c 44 41 20 61 64 64 2b  |S main1:LDA add+|
00000640  31 3a 43 4c 43 3a 53 42  43 23 30 3a 53 54 41 20  |1:CLC:SBC#0:STA |
00000650  61 64 64 2b 31 3a 2e 6d  61 69 6e 31 3a 52 54 53  |add+1:.main1:RTS|
00000660  20 0d 01 2c 84 2e 72 65  73 33 3a 4c 44 41 20 61  | ..,..res3:LDA a|
00000670  64 64 3a 53 54 41 20 6e  65 77 3a 4c 44 41 20 61  |dd:STA new:LDA a|
00000680  64 64 2b 31 3a 53 54 41  20 6e 65 77 2b 31 3a 4c  |dd+1:STA new+1:L|
00000690  44 58 20 23 32 3a 4c 44  59 20 23 31 36 3a 4a 53  |DX #2:LDY #16:JS|
000006a0  52 20 72 65 73 74 6f 72  65 3a 43 4c 43 3a 4c 44  |R restore:CLC:LD|
000006b0  41 20 61 64 64 3a 41 44  43 20 23 36 34 3a 53 54  |A add:ADC #64:ST|
000006c0  41 20 61 64 64 3a 4c 44  41 20 61 64 64 2b 31 3a  |A add:LDA add+1:|
000006d0  41 44 43 20 23 31 3a 53  54 41 20 61 64 64 2b 31  |ADC #1:STA add+1|
000006e0  3a 52 54 53 20 0d 01 36  85 2e 72 65 73 34 3a 4c  |:RTS ..6..res4:L|
000006f0  44 41 20 61 64 64 3a 53  54 41 20 6e 65 77 3a 4c  |DA add:STA new:L|
00000700  44 41 20 61 64 64 2b 31  3a 53 54 41 20 6e 65 77  |DA add+1:STA new|
00000710  2b 31 3a 4c 44 58 20 23  32 3a 4c 44 59 20 23 31  |+1:LDX #2:LDY #1|
00000720  36 3a 4a 53 52 20 72 65  73 74 6f 72 65 3a 53 45  |6:JSR restore:SE|
00000730  43 3a 4c 44 41 20 61 64  64 3a 53 42 43 20 23 36  |C:LDA add:SBC #6|
00000740  34 3a 53 54 41 20 61 64  64 3a 4c 44 41 20 61 64  |4:STA add:LDA ad|
00000750  64 2b 31 3a 53 42 43 20  23 31 3a 53 54 41 20 61  |d+1:SBC #1:STA a|
00000760  64 64 2b 31 3a 52 54 53  20 20 0d 01 40 b4 2e 72  |dd+1:RTS  ..@..r|
00000770  65 73 74 6f 72 65 3a 53  54 58 20 63 6f 6c 75 6d  |estore:STX colum|
00000780  6e 73 3a 53 54 59 20 72  6f 77 73 3a 4c 44 58 20  |ns:STY rows:LDX |
00000790  23 30 3a 4c 44 59 20 23  30 3a 4c 44 41 20 6e 65  |#0:LDY #0:LDA ne|
000007a0  77 3a 53 54 41 20 74 65  6d 70 3a 4c 44 41 20 6e  |w:STA temp:LDA n|
000007b0  65 77 2b 31 3a 53 54 41  20 74 65 6d 70 2b 31 3a  |ew+1:STA temp+1:|
000007c0  2e 6c 6f 6f 70 31 3a 4c  44 41 20 72 6f 77 73 3a  |.loop1:LDA rows:|
000007d0  53 54 41 20 74 65 6d 70  72 6f 77 73 3a 2e 6c 6f  |STA temprows:.lo|
000007e0  6f 70 32 3a 4c 44 41 20  62 61 63 6b 2c 58 3a 53  |op2:LDA back,X:S|
000007f0  54 41 20 28 6e 65 77 29  2c 59 3a 49 4e 58 3a 4c  |TA (new),Y:INX:L|
00000800  44 41 20 6e 65 77 3a 80  20 23 37 3a 43 4d 50 20  |DA new:. #7:CMP |
00000810  23 37 3a 42 45 51 20 72  62 6f 74 74 6f 6d 0d 01  |#7:BEQ rbottom..|
00000820  4a b7 49 4e 43 20 6e 65  77 3a 42 4e 45 20 72 6e  |J.INC new:BNE rn|
00000830  65 78 74 3a 49 4e 43 20  6e 65 77 2b 31 3a 4a 4d  |ext:INC new+1:JM|
00000840  50 20 72 6e 65 78 74 3a  2e 72 62 6f 74 74 6f 6d  |P rnext:.rbottom|
00000850  3a 4c 44 41 20 6e 65 77  3a 41 44 43 20 23 26 33  |:LDA new:ADC #&3|
00000860  38 3a 53 54 41 20 6e 65  77 3a 4c 44 41 20 6e 65  |8:STA new:LDA ne|
00000870  77 2b 31 3a 41 44 43 20  23 31 3a 53 54 41 20 6e  |w+1:ADC #1:STA n|
00000880  65 77 2b 31 3a 2e 72 6e  65 78 74 3a 44 45 43 20  |ew+1:.rnext:DEC |
00000890  74 65 6d 70 72 6f 77 73  3a 42 4e 45 20 6c 6f 6f  |temprows:BNE loo|
000008a0  70 32 3a 4c 44 41 20 74  65 6d 70 3a 41 44 43 20  |p2:LDA temp:ADC |
000008b0  23 38 3a 53 54 41 20 6e  65 77 3a 53 54 41 20 74  |#8:STA new:STA t|
000008c0  65 6d 70 3a 4c 44 41 20  74 65 6d 70 2b 31 3a 41  |emp:LDA temp+1:A|
000008d0  44 43 20 23 30 0d 01 54  32 53 54 41 20 6e 65 77  |DC #0..T2STA new|
000008e0  2b 31 3a 53 54 41 20 74  65 6d 70 2b 31 3a 44 45  |+1:STA temp+1:DE|
000008f0  43 20 63 6f 6c 75 6d 6e  73 3a 42 4e 45 20 6c 6f  |C columns:BNE lo|
00000900  6f 70 31 3a 52 54 53 0d  01 5e 7e 2e 72 69 67 68  |op1:RTS..^~.righ|
00000910  74 3a 49 4e 43 26 39 30  3a 4c 44 41 20 63 6f 75  |t:INC&90:LDA cou|
00000920  6e 74 65 72 3a 43 4d 50  23 31 3a 42 45 51 6f 76  |nter:CMP#1:BEQov|
00000930  65 72 3a 4c 44 41 23 30  3a 53 54 41 26 46 35 3a  |er:LDA#0:STA&F5:|
00000940  49 4e 43 63 6f 75 6e 74  65 72 3a 4a 53 52 6d 61  |INCcounter:JSRma|
00000950  6e 3a 52 54 53 3a 2e 6f  76 65 72 3a 4c 44 41 23  |n:RTS:.over:LDA#|
00000960  33 3a 53 54 41 26 46 35  3a 4c 44 41 23 30 3a 53  |3:STA&F5:LDA#0:S|
00000970  54 41 20 63 6f 75 6e 74  65 72 3a 4a 53 52 6d 61  |TA counter:JSRma|
00000980  6e 3a 52 54 53 0d 01 68  1a 2e 6d 61 6e 3a 4c 44  |n:RTS..h..man:LD|
00000990  41 23 31 39 3a 4a 53 52  20 6f 73 62 79 74 65 0d  |A#19:JSR osbyte.|
000009a0  01 72 e9 4c 44 41 20 26  46 35 3a 43 4d 50 20 23  |.r.LDA &F5:CMP #|
000009b0  33 3a 42 4e 45 20 6d 31  3a 4a 53 52 20 72 65 73  |3:BNE m1:JSR res|
000009c0  3a 4a 53 52 20 6d 61 69  6e 6c 6f 6f 70 34 3a 52  |:JSR mainloop4:R|
000009d0  54 53 3a 2e 6d 31 3a 4c  44 41 20 26 46 35 3a 43  |TS:.m1:LDA &F5:C|
000009e0  4d 50 20 23 32 3a 42 4e  45 20 6d 32 3a 4a 53 52  |MP #2:BNE m2:JSR|
000009f0  20 72 65 73 32 3a 4a 53  52 20 6d 61 69 6e 6c 6f  | res2:JSR mainlo|
00000a00  6f 70 33 3a 52 54 53 3a  2e 6d 32 3a 4c 44 41 20  |op3:RTS:.m2:LDA |
00000a10  26 46 35 3a 43 4d 50 20  23 31 3a 42 4e 45 20 6d  |&F5:CMP #1:BNE m|
00000a20  33 3a 4a 53 52 20 72 65  73 32 3a 4a 53 52 20 6d  |3:JSR res2:JSR m|
00000a30  61 69 6e 6c 6f 6f 70 32  3a 52 54 53 3a 2e 6d 33  |ainloop2:RTS:.m3|
00000a40  3a 4c 44 41 20 26 46 35  3a 43 4d 50 23 34 3a 42  |:LDA &F5:CMP#4:B|
00000a50  4e 45 20 6d 34 3a 4a 53  52 20 72 65 73 34 3a 4a  |NE m4:JSR res4:J|
00000a60  53 52 20 6d 61 69 6e 6c  6f 6f 70 32 3a 52 54 53  |SR mainloop2:RTS|
00000a70  3a 2e 6d 34 3a 4c 44 41  26 46 35 3a 43 4d 50 23  |:.m4:LDA&F5:CMP#|
00000a80  35 3a 42 4e 45 20 6d 35  0d 01 7c 9c 4a 53 52 72  |5:BNE m5..|.JSRr|
00000a90  65 73 33 3a 4a 53 52 20  6d 61 69 6e 6c 6f 6f 70  |es3:JSR mainloop|
00000aa0  32 3a 52 54 53 3a 2e 6d  35 3a 4c 44 41 26 46 35  |2:RTS:.m5:LDA&F5|
00000ab0  3a 43 4d 50 23 36 3a 42  4e 45 20 6d 36 3a 4a 53  |:CMP#6:BNE m6:JS|
00000ac0  52 72 65 73 34 3a 4a 53  52 6d 61 69 6e 6c 6f 6f  |Rres4:JSRmainloo|
00000ad0  70 3a 52 54 53 3a 2e 6d  36 3a 4c 44 41 26 46 35  |p:RTS:.m6:LDA&F5|
00000ae0  3a 43 4d 50 23 37 3a 42  4e 45 20 6d 37 3a 4a 53  |:CMP#7:BNE m7:JS|
00000af0  52 20 72 65 73 33 3a 4a  53 52 20 6d 61 69 6e 6c  |R res3:JSR mainl|
00000b00  6f 6f 70 3a 52 54 53 3a  2e 6d 37 3a 4a 53 52 20  |oop:RTS:.m7:JSR |
00000b10  72 65 73 3a 4a 53 52 20  6d 61 69 6e 6c 6f 6f 70  |res:JSR mainloop|
00000b20  3a 52 54 53 0d 01 86 80  2e 6c 65 66 74 3a 44 45  |:RTS.....left:DE|
00000b30  43 26 39 30 3a 4c 44 41  20 63 6f 75 6e 74 65 72  |C&90:LDA counter|
00000b40  3a 43 4d 50 23 31 3a 42  45 51 6f 76 65 72 32 3a  |:CMP#1:BEQover2:|
00000b50  4c 44 41 23 31 3a 53 54  41 26 46 35 3a 49 4e 43  |LDA#1:STA&F5:INC|
00000b60  63 6f 75 6e 74 65 72 3a  4a 53 52 6d 61 6e 3a 52  |counter:JSRman:R|
00000b70  54 53 3a 2e 6f 76 65 72  32 3a 4c 44 41 23 32 3a  |TS:.over2:LDA#2:|
00000b80  53 54 41 26 46 35 3a 4c  44 41 23 30 3a 53 54 41  |STA&F5:LDA#0:STA|
00000b90  20 63 6f 75 6e 74 65 72  3a 4a 53 52 6d 61 6e 3a  | counter:JSRman:|
00000ba0  52 54 53 20 0d 01 90 9f  2e 75 70 3a 49 4e 43 26  |RTS .....up:INC&|
00000bb0  39 31 3a 4c 44 41 26 46  35 3a 43 4d 50 23 37 3a  |91:LDA&F5:CMP#7:|
00000bc0  42 45 51 6f 76 65 72 33  3a 4c 44 41 26 46 35 3a  |BEQover3:LDA&F5:|
00000bd0  43 4d 50 23 30 3a 42 45  51 6f 76 65 72 33 3a 4c  |CMP#0:BEQover3:L|
00000be0  44 41 26 46 35 3a 43 4d  50 23 33 3a 42 45 51 6f  |DA&F5:CMP#3:BEQo|
00000bf0  76 65 72 33 3a 4c 44 41  26 46 35 3a 43 4d 50 20  |ver3:LDA&F5:CMP |
00000c00  23 36 3a 42 45 51 6f 76  65 72 33 3a 4c 44 41 23  |#6:BEQover3:LDA#|
00000c10  34 3a 53 54 41 26 46 35  3a 4a 53 52 6d 61 6e 3a  |4:STA&F5:JSRman:|
00000c20  52 54 53 3a 2e 6f 76 65  72 33 3a 4c 44 41 23 36  |RTS:.over3:LDA#6|
00000c30  3a 53 54 41 26 46 35 3a  4a 53 52 6d 61 6e 3a 52  |:STA&F5:JSRman:R|
00000c40  54 53 20 0d 01 9a a0 2e  64 6f 77 6e 3a 44 45 43  |TS .....down:DEC|
00000c50  26 39 31 3a 4c 44 41 26  46 35 3a 43 4d 50 23 36  |&91:LDA&F5:CMP#6|
00000c60  3a 42 45 51 6f 76 65 72  34 3a 4c 44 41 26 46 35  |:BEQover4:LDA&F5|
00000c70  3a 43 4d 50 23 30 3a 42  45 51 6f 76 65 72 34 3a  |:CMP#0:BEQover4:|
00000c80  4c 44 41 26 46 35 3a 43  4d 50 23 33 3a 42 45 51  |LDA&F5:CMP#3:BEQ|
00000c90  6f 76 65 72 34 3a 4c 44  41 26 46 35 3a 43 4d 50  |over4:LDA&F5:CMP|
00000ca0  20 23 37 3a 42 45 51 6f  76 65 72 34 3a 4c 44 41  | #7:BEQover4:LDA|
00000cb0  23 35 3a 53 54 41 26 46  35 3a 4a 53 52 6d 61 6e  |#5:STA&F5:JSRman|
00000cc0  3a 52 54 53 3a 2e 6f 76  65 72 34 3a 4c 44 41 23  |:RTS:.over4:LDA#|
00000cd0  37 3a 53 54 41 26 46 35  3a 4a 53 52 6d 61 6e 3a  |7:STA&F5:JSRman:|
00000ce0  52 54 53 0d 01 a4 ae 2e  73 74 6f 72 65 3a 53 54  |RTS.....store:ST|
00000cf0  58 20 63 6f 6c 75 6d 6e  73 3a 53 54 59 20 72 6f  |X columns:STY ro|
00000d00  77 73 3a 4c 44 58 20 23  30 3a 4c 44 59 20 23 30  |ws:LDX #0:LDY #0|
00000d10  3a 4c 44 41 20 6e 65 77  3a 53 54 41 20 74 65 6d  |:LDA new:STA tem|
00000d20  70 3a 4c 44 41 20 6e 65  77 2b 31 3a 53 54 41 20  |p:LDA new+1:STA |
00000d30  74 65 6d 70 2b 31 3a 2e  6c 6f 6f 70 31 3a 4c 44  |temp+1:.loop1:LD|
00000d40  41 20 72 6f 77 73 3a 53  54 41 20 74 65 6d 70 72  |A rows:STA tempr|
00000d50  6f 77 73 3a 2e 6c 6f 6f  70 32 3a 4c 44 41 20 28  |ows:.loop2:LDA (|
00000d60  6e 65 77 29 2c 59 3a 53  54 41 20 26 37 45 3a 53  |new),Y:STA &7E:S|
00000d70  54 41 20 62 61 63 6b 2c  58 3a 49 4e 58 3a 4c 44  |TA back,X:INX:LD|
00000d80  41 20 6e 65 77 3a 80 20  23 37 3a 43 4d 50 20 23  |A new:. #7:CMP #|
00000d90  37 0d 01 ae a8 42 45 51  20 73 62 6f 74 74 6f 6d  |7....BEQ sbottom|
00000da0  3a 49 4e 43 20 6e 65 77  3a 42 4e 45 20 73 6e 65  |:INC new:BNE sne|
00000db0  78 74 3a 49 4e 43 20 6e  65 77 2b 31 3a 4a 4d 50  |xt:INC new+1:JMP|
00000dc0  20 73 6e 65 78 74 3a 2e  73 62 6f 74 74 6f 6d 3a  | snext:.sbottom:|
00000dd0  4c 44 41 20 6e 65 77 3a  41 44 43 20 23 26 33 38  |LDA new:ADC #&38|
00000de0  3a 53 54 41 20 6e 65 77  3a 4c 44 41 20 6e 65 77  |:STA new:LDA new|
00000df0  2b 31 3a 41 44 43 20 23  31 3a 53 54 41 20 6e 65  |+1:ADC #1:STA ne|
00000e00  77 2b 31 3a 2e 73 6e 65  78 74 3a 44 45 43 20 74  |w+1:.snext:DEC t|
00000e10  65 6d 70 72 6f 77 73 3a  42 4e 45 20 6c 6f 6f 70  |emprows:BNE loop|
00000e20  32 3a 4c 44 41 20 74 65  6d 70 3a 41 44 43 20 23  |2:LDA temp:ADC #|
00000e30  38 3a 53 54 41 20 6e 65  77 0d 01 b8 ba 53 54 41  |8:STA new....STA|
00000e40  20 74 65 6d 70 3a 4c 44  41 20 74 65 6d 70 2b 31  | temp:LDA temp+1|
00000e50  3a 41 44 43 20 23 30 3a  53 54 41 20 6e 65 77 2b  |:ADC #0:STA new+|
00000e60  31 3a 53 54 41 20 74 65  6d 70 2b 31 3a 44 45 43  |1:STA temp+1:DEC|
00000e70  20 63 6f 6c 75 6d 6e 73  3a 42 4e 45 20 6c 6f 6f  | columns:BNE loo|
00000e80  70 31 3a 52 54 53 3a 2e  70 72 69 6e 74 3a 53 54  |p1:RTS:.print:ST|
00000e90  58 20 63 6f 6c 75 6d 6e  73 3a 53 54 59 20 72 6f  |X columns:STY ro|
00000ea0  77 73 3a 4c 44 58 20 23  30 3a 4c 44 59 20 23 30  |ws:LDX #0:LDY #0|
00000eb0  3a 4c 44 41 20 6e 65 77  3a 53 54 41 20 74 65 6d  |:LDA new:STA tem|
00000ec0  70 3a 4c 44 41 20 6e 65  77 2b 31 3a 53 54 41 20  |p:LDA new+1:STA |
00000ed0  74 65 6d 70 2b 31 3a 2e  6c 6f 6f 70 31 3a 4c 44  |temp+1:.loop1:LD|
00000ee0  41 20 72 6f 77 73 3a 53  54 41 20 74 65 6d 70 72  |A rows:STA tempr|
00000ef0  6f 77 73 0d 01 c2 ae 2e  6c 6f 6f 70 32 3a 4c 44  |ows.....loop2:LD|
00000f00  41 20 28 6e 65 77 29 2c  59 3a 53 54 41 20 77 6f  |A (new),Y:STA wo|
00000f10  72 6b 3a 41 53 4c 20 77  6f 72 6b 3a 41 53 4c 20  |rk:ASL work:ASL |
00000f20  77 6f 72 6b 3a 41 53 4c  20 77 6f 72 6b 3a 41 53  |work:ASL work:AS|
00000f30  4c 20 77 6f 72 6b 3a 4c  53 52 20 41 3a 4c 53 52  |L work:LSR A:LSR|
00000f40  20 41 3a 4c 53 52 20 41  3a 4c 53 52 20 41 3a 84  | A:LSR A:LSR A:.|
00000f50  41 20 77 6f 72 6b 3a 84  41 20 28 6e 65 77 29 2c  |A work:.A (new),|
00000f60  59 3a 82 20 23 26 46 46  3a 2e 73 64 61 74 61 3a  |Y:. #&FF:.sdata:|
00000f70  80 20 26 33 30 30 30 2c  58 3a 84 41 20 28 6e 65  |. &3000,X:.A (ne|
00000f80  77 29 2c 59 3a 53 54 41  20 28 6e 65 77 29 2c 59  |w),Y:STA (new),Y|
00000f90  3a 49 4e 58 3a 4c 44 41  20 6e 65 77 3a 80 20 23  |:INX:LDA new:. #|
00000fa0  37 0d 01 cc ca 43 4d 50  20 23 37 3a 42 45 51 20  |7....CMP #7:BEQ |
00000fb0  70 62 6f 74 74 6f 6d 3a  49 4e 43 20 6e 65 77 3a  |pbottom:INC new:|
00000fc0  42 4e 45 20 70 6e 65 78  74 3a 49 4e 43 20 6e 65  |BNE pnext:INC ne|
00000fd0  77 2b 31 3a 4a 4d 50 20  70 6e 65 78 74 3a 2e 70  |w+1:JMP pnext:.p|
00000fe0  62 6f 74 74 6f 6d 3a 4c  44 41 20 6e 65 77 3a 41  |bottom:LDA new:A|
00000ff0  44 43 20 23 26 33 38 3a  53 54 41 20 6e 65 77 3a  |DC #&38:STA new:|
00001000  4c 44 41 20 6e 65 77 2b  31 3a 41 44 43 20 23 31  |LDA new+1:ADC #1|
00001010  3a 53 54 41 20 6e 65 77  2b 31 3a 2e 70 6e 65 78  |:STA new+1:.pnex|
00001020  74 3a 44 45 43 20 74 65  6d 70 72 6f 77 73 3a 42  |t:DEC temprows:B|
00001030  4e 45 20 6c 6f 6f 70 32  3a 4c 44 41 20 74 65 6d  |NE loop2:LDA tem|
00001040  70 3a 41 44 43 20 23 38  3a 53 54 41 20 6e 65 77  |p:ADC #8:STA new|
00001050  3a 53 54 41 20 74 65 6d  70 3a 4c 44 41 20 74 65  |:STA temp:LDA te|
00001060  6d 70 2b 31 3a 41 44 43  20 23 30 0d 01 d6 32 53  |mp+1:ADC #0...2S|
00001070  54 41 20 6e 65 77 2b 31  3a 53 54 41 20 74 65 6d  |TA new+1:STA tem|
00001080  70 2b 31 3a 44 45 43 20  63 6f 6c 75 6d 6e 73 3a  |p+1:DEC columns:|
00001090  42 4e 45 20 6c 6f 6f 70  31 3a 52 54 53 0d 01 e0  |BNE loop1:RTS...|
000010a0  09 2e 62 61 63 6b 0d 01  ea 16 45 51 55 53 20 c4  |..back....EQUS .|
000010b0  34 2a 33 32 2c bd 28 30  29 29 20 20 0d 01 f4 0d  |4*32,.(0))  ....|
000010c0  4f 50 54 20 a4 64 61 74  61 0d 01 fe 05 5d 0d 02  |OPT .data....]..|
000010d0  08 05 ed 0d 02 12 05 e1  0d 02 1c 0b dd 20 a4 64  |............. .d|
000010e0  61 74 61 0d 02 26 0d 73  70 72 69 74 65 3d 50 25  |ata..&.sprite=P%|
000010f0  0d 02 30 05 f7 0d 02 3a  16 e3 20 69 3d 31 20 b8  |..0....:.. i=1 .|
00001100  20 32 2a 31 36 20 88 20  34 20 20 0d 02 44 08 f3  | 2*16 . 4  ..D..|
00001110  20 61 24 0d 02 4e 0e 5b  20 4f 50 54 20 70 61 73  | a$..N.[ OPT pas|
00001120  73 0d 02 58 12 45 51 55  44 20 a0 28 22 26 22 2b  |s..X.EQUD .("&"+|
00001130  61 24 29 0d 02 62 05 5d  0d 02 6c 05 ed 0d 02 76  |a$)..b.]..l....v|
00001140  4a 73 70 72 69 74 65 32  3d 50 25 3a f7 8d 74 68  |Jsprite2=P%:..th|
00001150  42 3a e3 20 69 3d 31 20  b8 20 32 2a 31 36 20 88  |B:. i=1 . 2*16 .|
00001160  20 34 3a f3 20 61 24 3a  5b 20 4f 50 54 20 70 61  | 4:. a$:[ OPT pa|
00001170  73 73 3a 45 51 55 44 20  a0 28 22 26 22 2b 61 24  |ss:EQUD .("&"+a$|
00001180  29 3a 5d 3a ed 20 20 0d  02 80 48 73 70 72 69 74  |):]:.  ...Hsprit|
00001190  65 33 3d 50 25 3a f7 8d  74 72 42 3a e3 20 69 3d  |e3=P%:..trB:. i=|
000011a0  31 20 b8 20 32 2a 31 36  20 88 20 34 3a f3 20 61  |1 . 2*16 . 4:. a|
000011b0  24 3a 5b 20 4f 50 54 20  70 61 73 73 3a 45 51 55  |$:[ OPT pass:EQU|
000011c0  44 20 a0 28 22 26 22 2b  61 24 29 3a 5d 3a ed 0d  |D .("&"+a$):]:..|
000011d0  02 8a 4a 73 70 72 69 74  65 34 3d 50 25 3a f7 8d  |..Jsprite4=P%:..|
000011e0  74 7c 42 3a e3 20 69 3d  31 20 b8 20 32 2a 31 36  |t|B:. i=1 . 2*16|
000011f0  20 88 20 34 3a f3 20 61  24 3a 5b 20 4f 50 54 20  | . 4:. a$:[ OPT |
00001200  70 61 73 73 3a 45 51 55  44 20 a0 28 22 26 22 2b  |pass:EQUD .("&"+|
00001210  61 24 29 3a 5d 3a ed 20  20 0d 02 94 09 3d 70 61  |a$):]:.  ....=pa|
00001220  73 73 0d 02 9e 4a dc 20  35 31 31 31 30 31 34 37  |ss...J. 51110147|
00001230  2c 45 31 45 31 45 31 45  31 2c 37 34 33 46 31 45  |,E1E1E1E1,743F1E|
00001240  31 2c 43 43 30 43 30 43  30 34 2c 43 43 38 38 30  |1,CC0C0C04,CC880|
00001250  38 30 30 2c 45 30 45 30  43 30 30 2c 38 30 43 43  |800,E0E0C00,80CC|
00001260  43 30 45 2c 45 45 30 43  30 43 30 38 0d 02 a8 4a  |C0E,EE0C0C08...J|
00001270  dc 20 37 37 33 33 30 33  30 31 2c 46 30 46 30 37  |. 77330301,F0F07|
00001280  30 31 2c 33 30 37 37 37  30 46 2c 43 43 30 43 30  |01,307770F,CC0C0|
00001290  34 30 36 2c 34 30 30 30  30 30 34 43 2c 45 30 45  |406,4000004C,E0E|
000012a0  30 45 30 45 30 2c 38 34  38 45 30 45 30 2c 36 36  |0E0E0,848E0E0,66|
000012b0  30 36 30 36 30 43 0d 02  b2 4a dc 20 37 37 33 33  |06060C...J. 7733|
000012c0  30 33 30 31 2c 46 30 46  30 37 30 31 2c 33 30 37  |0301,F0F0701,307|
000012d0  37 37 30 46 2c 31 31 30  30 30 31 30 31 2c 34 30  |770F,11000101,40|
000012e0  30 30 30 30 34 43 2c 45  30 45 30 45 30 45 30 2c  |00004C,E0E0E0E0,|
000012f0  38 34 38 45 30 45 30 2c  38 38 30 38 30 38 30 38  |848E0E0,88080808|
00001300  0d 02 bc 43 dc 20 35 31  31 31 30 31 34 37 2c 45  |...C. 51110147,E|
00001310  31 45 31 45 31 45 31 2c  33 34 33 46 31 45 31 2c  |1E1E1E1,343F1E1,|
00001320  33 33 30 32 30 33 30 33  2c 43 43 38 38 30 38 30  |33020303,CC88080|
00001330  30 2c 45 30 45 30 43 30  30 2c 38 30 43 43 43 30  |0,E0E0C00,80CCC0|
00001340  45 2c 30 0d ff                                    |E,0..|
00001345
LISTI.m0
LISTI.m1
LISTI.m2
LISTI.m4
LISTI.m5