Home » Personal collection » Acorn tapes » Commercial_Releases » box02_tape07a_acorn_eu_arcade_game_creator.wav » 4_PROG2

4_PROG2

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 » Commercial_Releases » box02_tape07a_acorn_eu_arcade_game_creator.wav
Filename: 4_PROG2
Read OK:
File size: 0D08 bytes
Load address: 2000
Exec address: 1900
File contents
   10REM Maps 2
   20REM By R.A.Waddilove
   30REM (c) Electron User
   40PROCassemble
   50MODE 5:VDU23,1,0;0;0;0;
   60PRINT TAB(6,1)"Hit a key"
   70A%=0
   80REPEAT
   90CALL &900
  100VDU19,1,1+3*(A% AND 1);0;
  110A%=(A%+1)MOD 2
  120UNTIL GET=0
  130END
  140 
  150DEF PROCassemble
  160map=&50
  170addr=&52
  180xcount=&54
  190ycount=&55
  200index=&56
  210new=&70
  220FOR pass=0 TO 2 STEP 2
  230P%=&900
  240[ OPT pass
  250SEI
  260ASL A:TAY               \screen*2
  270LDA table,Y:STA map     \map address
  280LDA table+1,Y:STA map+1
  290LDA #&80:STA addr       \screen address
  300LDA #&5A:STA addr+1
  310LDY #0:STY index        \map byte index
  320LDY #10:STY ycount
  330.yloop
  340LDA addr+1:PHA:LDA addr:PHA
  350LDA #5:STA xcount
  360.xloop
  370LDA addr:STA new:LDA addr+1:STA new+1
  380LDY index
  390INC index
  400LDA (map),Y             \get map byte
  410PHA
  420LSR A:LSR A:LSR A:LSR A \left block
  430JSR print
  440LDA addr:ADC #4*8:STA new
  450LDA addr+1:ADC #0:STA new+1
  460PLA
  470AND #&0F             \right block
  480JSR print
  490LDA addr:ADC #8*8:STA addr:LDA addr+1:ADC #0:STA addr+1
  500DEC xcount:BNE xloop
  510PLA:ADC #(3*&140)MOD256:STA addr
  520PLA:ADC #(3*&140)DIV256:STA addr+1
  530DEC ycount:BNE yloop
  540CLI
  550RTS
  560 
  570.mult
  580EQUW 0
  590EQUW 1*96
  600EQUW 2*96
  610EQUW 3*96
  620EQUW 4*96
  630EQUW 5*96
  640EQUW 6*96
  650EQUW 7*96
  660EQUW 8*96
  670EQUW 9*96
  680EQUW 10*96
  690EQUW 11*96
  700EQUW 12*96
  710EQUW 13*96
  720EQUW 14*96
  730EQUW 15*96
  740 
  750.print
  760ASL A:TAY             \sprite*2
  770LDA mult,Y
  780ADC #sprites MOD256    \set data
  790STA ploop+1
  800LDA mult+1,Y
  810ADC #sprites DIV256
  820STA ploop+2
  830LDX #3
  840.ploop1
  850LDY #31
  860.ploop
  870LDA &3000,Y:STA (new),Y
  880DEY:BPL ploop
  890CLC
  900LDA new:ADC #&40:STA new
  910LDA new+1:ADC #&1:STA new+1
  920LDA ploop+1:ADC #32:STA ploop+1
  930LDA ploop+2:ADC #0:STA ploop+2
  940.p1
  950DEX:BNE ploop1
  960RTS
  970 
  980.table
  990EQUW scr0
 1000EQUW scr1
 1010 
 1020OPT FNscrdata
 1030 
 1040.sprites
 1050EQUS STRING$(96,CHR$0)
 1060OPT FNsprdata
 1070 
 1080]
 1090NEXT
 1100ENDPROC
 1110 
 1120DEF FNsprdata
 1130RESTORE 1220
 1140FOR I%=0 TO 4*4*24-1 STEP 4
 1150READ a$
 1160[ OPT pass
 1170EQUD EVAL("&"+a$)
 1180]
 1190NEXT
 1200=pass
 1210REM Brick
 1220DATA 2D2D2D2D,F02D2D2D,F0F0F0F,F00F0F0F,2D2D2D2D,F02D2D2D,F0F0F0F,F00F0F0F,F0F0F0F,F00F0F0F,4B4B4B4B,F04B4B4B,F0F0F0F,F00F0F0F,4B4B4B4B,F04B4B4B,2D2D2D2D,F02D2D2D,F0F0F0F,F00F0F0F,2D2D2D2D,F02D2D2D,F0F0F0F,F00F0F0F
 1230REM Pillar bottom
 1240DATA 0,0,FAFCFCF8,F8FCFCF8,F0F0F0F0,F0F0F0F0,0,0,0,0,FCF8F8FA,FCFCF8FA,F0F0F0F0,F0F0F0F0,0,0,0,33331111,F8FAF8,F8F0F8F0,F0F0F0,F0F0F0F0,0,C0C08080
 1250REM Pillar top
 1260DATA 11113333,0,F0F0F8F0,FAFCF800,F0F0F0F0,F0F0F000,8080C0C0,0,0,0,F8FCFCF8,FCFCF8FA,F0F0F0F0,F0F0F0F0,0,0,0,0,F8FCF8FA,F8F8FAF8,F0F0F0F0,F0F0F0F0,0,0
 1270REM Stone
 1280DATA 2D162503,2D5A2D5A,A55AA50F,A55AA55A,A55AA50F,A55AA55A,864A8608,A54BA54B,2D5A2D5A,2D5A2D5A,A55AA55A,A55AA55A,A55AA55A,A55AA55A,A54BA54B,A54BA54B,255A2D5A,1122516,A55AA55A,F5AA55A,A55AA55A,F5AA55A,A54BA54B,80C864A
 1290 
 1300DEF FNscrdata
 1310RESTORE 1480
 1320scr0=P%
 1330scr1=P%+50
 1340FOR K%=0 TO 1
 1350FOR Y%=1 TO 10
 1360READ a$
 1370FOR X%=1 TO 5
 1380[ OPT pass
 1390EQUB EVAL("&"+LEFT$(a$,2))
 1400]
 1410a$=MID$(a$,3)
 1420NEXT
 1430NEXT
 1440NEXT
 1450=pass
 1460 
 1470REM Screen 1
 1480DATA 1111111111
 1490DATA 0303000000
 1500DATA 0202000000
 1510DATA 1111100111
 1520DATA 0000000000
 1530DATA 0000000000
 1540DATA 1111001111
 1550DATA 0030000030
 1560DATA 0020000020
 1570DATA 1111111111
 1580 
 1590REM Screen 2
 1600DATA 4444444444
 1610DATA 0000000401
 1620DATA 0000000301
 1630DATA 4444000201
 1640DATA 0000044441
 1650DATA 0000400001
 1660DATA 4444000001
 1670DATA 0300000003
 1680DATA 0200000002
 1690DATA 1111111111

� Maps 2
� By R.A.Waddilove
� (c) Electron User
(
�assemble
2� 5:�23,1,0;0;0;0;
<� �6,1)"Hit a key"
FA%=0
P�
Z
� &900
d�19,1,1+3*(A% � 1);0;
nA%=(A%+1)� 2
x	� �=0
��
� 
�� �assemble
�map=&50
�addr=&52
�xcount=&54
�ycount=&55
�
index=&56
�new=&70
�� pass=0 � 2 � 2
�P%=&900
�[ OPT pass
�SEI
%ASL A:TAY               \screen*2
(LDA table,Y:STA map     \map address
LDA table+1,Y:STA map+1
"+LDA #&80:STA addr       \screen address
,LDA #&5A:STA addr+1
6+LDY #0:STY index        \map byte index
@LDY #10:STY ycount
J
.yloop
TLDA addr+1:PHA:LDA addr:PHA
^LDA #5:STA xcount
h
.xloop
r)LDA addr:STA new:LDA addr+1:STA new+1
|
LDY index
�
INC index
�)LDA (map),Y             \get map byte
�PHA
�'LSR A:LSR A:LSR A:LSR A \left block
�
JSR print
�LDA addr:ADC #4*8:STA new
�LDA addr+1:ADC #0:STA new+1
�PLA
�#� #&0F             \right block
�
JSR print
�;LDA addr:ADC #8*8:STA addr:LDA addr+1:ADC #0:STA addr+1
�DEC xcount:BNE xloop
�"PLA:ADC #(3*&140)�256:STA addr
$PLA:ADC #(3*&140)�256:STA addr+1
DEC ycount:BNE yloop
CLI
&RTS
0 
:	.mult
D
EQUW 0
N
EQUW 1*96
X
EQUW 2*96
b
EQUW 3*96
l
EQUW 4*96
v
EQUW 5*96
�
EQUW 6*96
�
EQUW 7*96
�
EQUW 8*96
�
EQUW 9*96
�EQUW 10*96
�EQUW 11*96
�EQUW 12*96
�EQUW 13*96
�EQUW 14*96
�EQUW 15*96
� 
�
.print
�#ASL A:TAY             \sprite*2
LDA mult,Y
"ADC #sprites �256    \set data
STA ploop+1
 LDA mult+1,Y
*ADC #sprites �256
4STA ploop+2
>
LDX #3
H.ploop1
RLDY #31
\
.ploop
fLDA &3000,Y:STA (new),Y
pDEY:BPL ploop
zCLC
�LDA new:ADC #&40:STA new
�LDA new+1:ADC #&1:STA new+1
�#LDA ploop+1:ADC #32:STA ploop+1
�"LDA ploop+2:ADC #0:STA ploop+2
�.p1
�DEX:BNE ploop1
�RTS
� 
�
.table
�
EQUW scr0
�
EQUW scr1
� 
�OPT �scrdata
 
.sprites
EQUS �96,�0)
$OPT �sprdata
. 
8]
B�
L�
V 
`� �sprdata
j
� �dDD
t� I%=0 � 4*4*24-1 � 4
~� a$
�[ OPT pass
�EQUD �("&"+a$)
�]
��
�	=pass
�� Brick
��� 2D2D2D2D,F02D2D2D,F0F0F0F,F00F0F0F,2D2D2D2D,F02D2D2D,F0F0F0F,F00F0F0F,F0F0F0F,F00F0F0F,4B4B4B4B,F04B4B4B,F0F0F0F,F00F0F0F,4B4B4B4B,F04B4B4B,2D2D2D2D,F02D2D2D,F0F0F0F,F00F0F0F,2D2D2D2D,F02D2D2D,F0F0F0F,F00F0F0F
�� Pillar bottom
ؓ� 0,0,FAFCFCF8,F8FCFCF8,F0F0F0F0,F0F0F0F0,0,0,0,0,FCF8F8FA,FCFCF8FA,F0F0F0F0,F0F0F0F0,0,0,0,33331111,F8FAF8,F8F0F8F0,F0F0F0,F0F0F0F0,0,C0C08080
�� Pillar top
�� 11113333,0,F0F0F8F0,FAFCF800,F0F0F0F0,F0F0F000,8080C0C0,0,0,0,F8FCFCF8,FCFCF8FA,F0F0F0F0,F0F0F0F0,0,0,0,0,F8FCF8FA,F8F8FAF8,F0F0F0F0,F0F0F0F0,0,0
�� Stone
�� 2D162503,2D5A2D5A,A55AA50F,A55AA55A,A55AA50F,A55AA55A,864A8608,A54BA54B,2D5A2D5A,2D5A2D5A,A55AA55A,A55AA55A,A55AA55A,A55AA55A,A54BA54B,A54BA54B,255A2D5A,1122516,A55AA55A,F5AA55A,A55AA55A,F5AA55A,A54BA54B,80C864A

 
� �scrdata

� �dHE
(scr0=P%
2scr1=P%+50
<� K%=0 � 1
F� Y%=1 � 10
P� a$
Z� X%=1 � 5
d[ OPT pass
nEQUB �("&"+�a$,2))
x]
�
a$=�a$,3)
��
��
��
�	=pass
� 
�� Screen 1
�� 1111111111
�� 0303000000
�� 0202000000
�� 1111100111
�� 0000000000
�� 0000000000
� 1111001111
� 0030000030
� 0020000020
"� 1111111111
, 
6� Screen 2
@� 4444444444
J� 0000000401
T� 0000000301
^� 4444000201
h� 0000044441
r� 0000400001
|� 4444000001
�� 0300000003
�� 0200000002
�� 1111111111
�
00000000  0d 00 0a 0c f4 20 4d 61  70 73 20 32 0d 00 14 16  |..... Maps 2....|
00000010  f4 20 42 79 20 52 2e 41  2e 57 61 64 64 69 6c 6f  |. By R.A.Waddilo|
00000020  76 65 0d 00 1e 17 f4 20  28 63 29 20 45 6c 65 63  |ve..... (c) Elec|
00000030  74 72 6f 6e 20 55 73 65  72 0d 00 28 0d f2 61 73  |tron User..(..as|
00000040  73 65 6d 62 6c 65 0d 00  32 16 eb 20 35 3a ef 32  |semble..2.. 5:.2|
00000050  33 2c 31 2c 30 3b 30 3b  30 3b 30 3b 0d 00 3c 16  |3,1,0;0;0;0;..<.|
00000060  f1 20 8a 36 2c 31 29 22  48 69 74 20 61 20 6b 65  |. .6,1)"Hit a ke|
00000070  79 22 0d 00 46 08 41 25  3d 30 0d 00 50 05 f5 0d  |y"..F.A%=0..P...|
00000080  00 5a 0a d6 20 26 39 30  30 0d 00 64 19 ef 31 39  |.Z.. &900..d..19|
00000090  2c 31 2c 31 2b 33 2a 28  41 25 20 80 20 31 29 3b  |,1,1+3*(A% . 1);|
000000a0  30 3b 0d 00 6e 10 41 25  3d 28 41 25 2b 31 29 83  |0;..n.A%=(A%+1).|
000000b0  20 32 0d 00 78 09 fd 20  a5 3d 30 0d 00 82 05 e0  | 2..x.. .=0.....|
000000c0  0d 00 8c 05 20 0d 00 96  0f dd 20 f2 61 73 73 65  |.... ..... .asse|
000000d0  6d 62 6c 65 0d 00 a0 0b  6d 61 70 3d 26 35 30 0d  |mble....map=&50.|
000000e0  00 aa 0c 61 64 64 72 3d  26 35 32 0d 00 b4 0e 78  |...addr=&52....x|
000000f0  63 6f 75 6e 74 3d 26 35  34 0d 00 be 0e 79 63 6f  |count=&54....yco|
00000100  75 6e 74 3d 26 35 35 0d  00 c8 0d 69 6e 64 65 78  |unt=&55....index|
00000110  3d 26 35 36 0d 00 d2 0b  6e 65 77 3d 26 37 30 0d  |=&56....new=&70.|
00000120  00 dc 14 e3 20 70 61 73  73 3d 30 20 b8 20 32 20  |.... pass=0 . 2 |
00000130  88 20 32 0d 00 e6 0b 50  25 3d 26 39 30 30 0d 00  |. 2....P%=&900..|
00000140  f0 0e 5b 20 4f 50 54 20  70 61 73 73 0d 00 fa 07  |..[ OPT pass....|
00000150  53 45 49 0d 01 04 25 41  53 4c 20 41 3a 54 41 59  |SEI...%ASL A:TAY|
00000160  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 5c  |               \|
00000170  73 63 72 65 65 6e 2a 32  0d 01 0e 28 4c 44 41 20  |screen*2...(LDA |
00000180  74 61 62 6c 65 2c 59 3a  53 54 41 20 6d 61 70 20  |table,Y:STA map |
00000190  20 20 20 20 5c 6d 61 70  20 61 64 64 72 65 73 73  |    \map address|
000001a0  0d 01 18 1b 4c 44 41 20  74 61 62 6c 65 2b 31 2c  |....LDA table+1,|
000001b0  59 3a 53 54 41 20 6d 61  70 2b 31 0d 01 22 2b 4c  |Y:STA map+1.."+L|
000001c0  44 41 20 23 26 38 30 3a  53 54 41 20 61 64 64 72  |DA #&80:STA addr|
000001d0  20 20 20 20 20 20 20 5c  73 63 72 65 65 6e 20 61  |       \screen a|
000001e0  64 64 72 65 73 73 0d 01  2c 17 4c 44 41 20 23 26  |ddress..,.LDA #&|
000001f0  35 41 3a 53 54 41 20 61  64 64 72 2b 31 0d 01 36  |5A:STA addr+1..6|
00000200  2b 4c 44 59 20 23 30 3a  53 54 59 20 69 6e 64 65  |+LDY #0:STY inde|
00000210  78 20 20 20 20 20 20 20  20 5c 6d 61 70 20 62 79  |x        \map by|
00000220  74 65 20 69 6e 64 65 78  0d 01 40 16 4c 44 59 20  |te index..@.LDY |
00000230  23 31 30 3a 53 54 59 20  79 63 6f 75 6e 74 0d 01  |#10:STY ycount..|
00000240  4a 0a 2e 79 6c 6f 6f 70  0d 01 54 1f 4c 44 41 20  |J..yloop..T.LDA |
00000250  61 64 64 72 2b 31 3a 50  48 41 3a 4c 44 41 20 61  |addr+1:PHA:LDA a|
00000260  64 64 72 3a 50 48 41 0d  01 5e 15 4c 44 41 20 23  |ddr:PHA..^.LDA #|
00000270  35 3a 53 54 41 20 78 63  6f 75 6e 74 0d 01 68 0a  |5:STA xcount..h.|
00000280  2e 78 6c 6f 6f 70 0d 01  72 29 4c 44 41 20 61 64  |.xloop..r)LDA ad|
00000290  64 72 3a 53 54 41 20 6e  65 77 3a 4c 44 41 20 61  |dr:STA new:LDA a|
000002a0  64 64 72 2b 31 3a 53 54  41 20 6e 65 77 2b 31 0d  |ddr+1:STA new+1.|
000002b0  01 7c 0d 4c 44 59 20 69  6e 64 65 78 0d 01 86 0d  |.|.LDY index....|
000002c0  49 4e 43 20 69 6e 64 65  78 0d 01 90 29 4c 44 41  |INC index...)LDA|
000002d0  20 28 6d 61 70 29 2c 59  20 20 20 20 20 20 20 20  | (map),Y        |
000002e0  20 20 20 20 20 5c 67 65  74 20 6d 61 70 20 62 79  |     \get map by|
000002f0  74 65 0d 01 9a 07 50 48  41 0d 01 a4 27 4c 53 52  |te....PHA...'LSR|
00000300  20 41 3a 4c 53 52 20 41  3a 4c 53 52 20 41 3a 4c  | A:LSR A:LSR A:L|
00000310  53 52 20 41 20 5c 6c 65  66 74 20 62 6c 6f 63 6b  |SR A \left block|
00000320  0d 01 ae 0d 4a 53 52 20  70 72 69 6e 74 0d 01 b8  |....JSR print...|
00000330  1d 4c 44 41 20 61 64 64  72 3a 41 44 43 20 23 34  |.LDA addr:ADC #4|
00000340  2a 38 3a 53 54 41 20 6e  65 77 0d 01 c2 1f 4c 44  |*8:STA new....LD|
00000350  41 20 61 64 64 72 2b 31  3a 41 44 43 20 23 30 3a  |A addr+1:ADC #0:|
00000360  53 54 41 20 6e 65 77 2b  31 0d 01 cc 07 50 4c 41  |STA new+1....PLA|
00000370  0d 01 d6 23 80 20 23 26  30 46 20 20 20 20 20 20  |...#. #&0F      |
00000380  20 20 20 20 20 20 20 5c  72 69 67 68 74 20 62 6c  |       \right bl|
00000390  6f 63 6b 0d 01 e0 0d 4a  53 52 20 70 72 69 6e 74  |ock....JSR print|
000003a0  0d 01 ea 3b 4c 44 41 20  61 64 64 72 3a 41 44 43  |...;LDA addr:ADC|
000003b0  20 23 38 2a 38 3a 53 54  41 20 61 64 64 72 3a 4c  | #8*8:STA addr:L|
000003c0  44 41 20 61 64 64 72 2b  31 3a 41 44 43 20 23 30  |DA addr+1:ADC #0|
000003d0  3a 53 54 41 20 61 64 64  72 2b 31 0d 01 f4 18 44  |:STA addr+1....D|
000003e0  45 43 20 78 63 6f 75 6e  74 3a 42 4e 45 20 78 6c  |EC xcount:BNE xl|
000003f0  6f 6f 70 0d 01 fe 22 50  4c 41 3a 41 44 43 20 23  |oop..."PLA:ADC #|
00000400  28 33 2a 26 31 34 30 29  83 32 35 36 3a 53 54 41  |(3*&140).256:STA|
00000410  20 61 64 64 72 0d 02 08  24 50 4c 41 3a 41 44 43  | addr...$PLA:ADC|
00000420  20 23 28 33 2a 26 31 34  30 29 81 32 35 36 3a 53  | #(3*&140).256:S|
00000430  54 41 20 61 64 64 72 2b  31 0d 02 12 18 44 45 43  |TA addr+1....DEC|
00000440  20 79 63 6f 75 6e 74 3a  42 4e 45 20 79 6c 6f 6f  | ycount:BNE yloo|
00000450  70 0d 02 1c 07 43 4c 49  0d 02 26 07 52 54 53 0d  |p....CLI..&.RTS.|
00000460  02 30 05 20 0d 02 3a 09  2e 6d 75 6c 74 0d 02 44  |.0. ..:..mult..D|
00000470  0a 45 51 55 57 20 30 0d  02 4e 0d 45 51 55 57 20  |.EQUW 0..N.EQUW |
00000480  31 2a 39 36 0d 02 58 0d  45 51 55 57 20 32 2a 39  |1*96..X.EQUW 2*9|
00000490  36 0d 02 62 0d 45 51 55  57 20 33 2a 39 36 0d 02  |6..b.EQUW 3*96..|
000004a0  6c 0d 45 51 55 57 20 34  2a 39 36 0d 02 76 0d 45  |l.EQUW 4*96..v.E|
000004b0  51 55 57 20 35 2a 39 36  0d 02 80 0d 45 51 55 57  |QUW 5*96....EQUW|
000004c0  20 36 2a 39 36 0d 02 8a  0d 45 51 55 57 20 37 2a  | 6*96....EQUW 7*|
000004d0  39 36 0d 02 94 0d 45 51  55 57 20 38 2a 39 36 0d  |96....EQUW 8*96.|
000004e0  02 9e 0d 45 51 55 57 20  39 2a 39 36 0d 02 a8 0e  |...EQUW 9*96....|
000004f0  45 51 55 57 20 31 30 2a  39 36 0d 02 b2 0e 45 51  |EQUW 10*96....EQ|
00000500  55 57 20 31 31 2a 39 36  0d 02 bc 0e 45 51 55 57  |UW 11*96....EQUW|
00000510  20 31 32 2a 39 36 0d 02  c6 0e 45 51 55 57 20 31  | 12*96....EQUW 1|
00000520  33 2a 39 36 0d 02 d0 0e  45 51 55 57 20 31 34 2a  |3*96....EQUW 14*|
00000530  39 36 0d 02 da 0e 45 51  55 57 20 31 35 2a 39 36  |96....EQUW 15*96|
00000540  0d 02 e4 05 20 0d 02 ee  0a 2e 70 72 69 6e 74 0d  |.... .....print.|
00000550  02 f8 23 41 53 4c 20 41  3a 54 41 59 20 20 20 20  |..#ASL A:TAY    |
00000560  20 20 20 20 20 20 20 20  20 5c 73 70 72 69 74 65  |         \sprite|
00000570  2a 32 0d 03 02 0e 4c 44  41 20 6d 75 6c 74 2c 59  |*2....LDA mult,Y|
00000580  0d 03 0c 22 41 44 43 20  23 73 70 72 69 74 65 73  |..."ADC #sprites|
00000590  20 83 32 35 36 20 20 20  20 5c 73 65 74 20 64 61  | .256    \set da|
000005a0  74 61 0d 03 16 0f 53 54  41 20 70 6c 6f 6f 70 2b  |ta....STA ploop+|
000005b0  31 0d 03 20 10 4c 44 41  20 6d 75 6c 74 2b 31 2c  |1.. .LDA mult+1,|
000005c0  59 0d 03 2a 15 41 44 43  20 23 73 70 72 69 74 65  |Y..*.ADC #sprite|
000005d0  73 20 81 32 35 36 0d 03  34 0f 53 54 41 20 70 6c  |s .256..4.STA pl|
000005e0  6f 6f 70 2b 32 0d 03 3e  0a 4c 44 58 20 23 33 0d  |oop+2..>.LDX #3.|
000005f0  03 48 0b 2e 70 6c 6f 6f  70 31 0d 03 52 0b 4c 44  |.H..ploop1..R.LD|
00000600  59 20 23 33 31 0d 03 5c  0a 2e 70 6c 6f 6f 70 0d  |Y #31..\..ploop.|
00000610  03 66 1b 4c 44 41 20 26  33 30 30 30 2c 59 3a 53  |.f.LDA &3000,Y:S|
00000620  54 41 20 28 6e 65 77 29  2c 59 0d 03 70 11 44 45  |TA (new),Y..p.DE|
00000630  59 3a 42 50 4c 20 70 6c  6f 6f 70 0d 03 7a 07 43  |Y:BPL ploop..z.C|
00000640  4c 43 0d 03 84 1c 4c 44  41 20 6e 65 77 3a 41 44  |LC....LDA new:AD|
00000650  43 20 23 26 34 30 3a 53  54 41 20 6e 65 77 0d 03  |C #&40:STA new..|
00000660  8e 1f 4c 44 41 20 6e 65  77 2b 31 3a 41 44 43 20  |..LDA new+1:ADC |
00000670  23 26 31 3a 53 54 41 20  6e 65 77 2b 31 0d 03 98  |#&1:STA new+1...|
00000680  23 4c 44 41 20 70 6c 6f  6f 70 2b 31 3a 41 44 43  |#LDA ploop+1:ADC|
00000690  20 23 33 32 3a 53 54 41  20 70 6c 6f 6f 70 2b 31  | #32:STA ploop+1|
000006a0  0d 03 a2 22 4c 44 41 20  70 6c 6f 6f 70 2b 32 3a  |..."LDA ploop+2:|
000006b0  41 44 43 20 23 30 3a 53  54 41 20 70 6c 6f 6f 70  |ADC #0:STA ploop|
000006c0  2b 32 0d 03 ac 07 2e 70  31 0d 03 b6 12 44 45 58  |+2.....p1....DEX|
000006d0  3a 42 4e 45 20 70 6c 6f  6f 70 31 0d 03 c0 07 52  |:BNE ploop1....R|
000006e0  54 53 0d 03 ca 05 20 0d  03 d4 0a 2e 74 61 62 6c  |TS.... .....tabl|
000006f0  65 0d 03 de 0d 45 51 55  57 20 73 63 72 30 0d 03  |e....EQUW scr0..|
00000700  e8 0d 45 51 55 57 20 73  63 72 31 0d 03 f2 05 20  |..EQUW scr1.... |
00000710  0d 03 fc 10 4f 50 54 20  a4 73 63 72 64 61 74 61  |....OPT .scrdata|
00000720  0d 04 06 05 20 0d 04 10  0c 2e 73 70 72 69 74 65  |.... .....sprite|
00000730  73 0d 04 1a 10 45 51 55  53 20 c4 39 36 2c bd 30  |s....EQUS .96,.0|
00000740  29 0d 04 24 10 4f 50 54  20 a4 73 70 72 64 61 74  |)..$.OPT .sprdat|
00000750  61 0d 04 2e 05 20 0d 04  38 05 5d 0d 04 42 05 ed  |a.... ..8.]..B..|
00000760  0d 04 4c 05 e1 0d 04 56  05 20 0d 04 60 0e dd 20  |..L....V. ..`.. |
00000770  a4 73 70 72 64 61 74 61  0d 04 6a 0a f7 20 8d 64  |.sprdata..j.. .d|
00000780  44 44 0d 04 74 19 e3 20  49 25 3d 30 20 b8 20 34  |DD..t.. I%=0 . 4|
00000790  2a 34 2a 32 34 2d 31 20  88 20 34 0d 04 7e 08 f3  |*4*24-1 . 4..~..|
000007a0  20 61 24 0d 04 88 0e 5b  20 4f 50 54 20 70 61 73  | a$....[ OPT pas|
000007b0  73 0d 04 92 12 45 51 55  44 20 a0 28 22 26 22 2b  |s....EQUD .("&"+|
000007c0  61 24 29 0d 04 9c 05 5d  0d 04 a6 05 ed 0d 04 b0  |a$)....]........|
000007d0  09 3d 70 61 73 73 0d 04  ba 0b f4 20 42 72 69 63  |.=pass..... Bric|
000007e0  6b 0d 04 c4 d7 dc 20 32  44 32 44 32 44 32 44 2c  |k..... 2D2D2D2D,|
000007f0  46 30 32 44 32 44 32 44  2c 46 30 46 30 46 30 46  |F02D2D2D,F0F0F0F|
00000800  2c 46 30 30 46 30 46 30  46 2c 32 44 32 44 32 44  |,F00F0F0F,2D2D2D|
00000810  32 44 2c 46 30 32 44 32  44 32 44 2c 46 30 46 30  |2D,F02D2D2D,F0F0|
00000820  46 30 46 2c 46 30 30 46  30 46 30 46 2c 46 30 46  |F0F,F00F0F0F,F0F|
00000830  30 46 30 46 2c 46 30 30  46 30 46 30 46 2c 34 42  |0F0F,F00F0F0F,4B|
00000840  34 42 34 42 34 42 2c 46  30 34 42 34 42 34 42 2c  |4B4B4B,F04B4B4B,|
00000850  46 30 46 30 46 30 46 2c  46 30 30 46 30 46 30 46  |F0F0F0F,F00F0F0F|
00000860  2c 34 42 34 42 34 42 34  42 2c 46 30 34 42 34 42  |,4B4B4B4B,F04B4B|
00000870  34 42 2c 32 44 32 44 32  44 32 44 2c 46 30 32 44  |4B,2D2D2D2D,F02D|
00000880  32 44 32 44 2c 46 30 46  30 46 30 46 2c 46 30 30  |2D2D,F0F0F0F,F00|
00000890  46 30 46 30 46 2c 32 44  32 44 32 44 32 44 2c 46  |F0F0F,2D2D2D2D,F|
000008a0  30 32 44 32 44 32 44 2c  46 30 46 30 46 30 46 2c  |02D2D2D,F0F0F0F,|
000008b0  46 30 30 46 30 46 30 46  0d 04 ce 13 f4 20 50 69  |F00F0F0F..... Pi|
000008c0  6c 6c 61 72 20 62 6f 74  74 6f 6d 0d 04 d8 93 dc  |llar bottom.....|
000008d0  20 30 2c 30 2c 46 41 46  43 46 43 46 38 2c 46 38  | 0,0,FAFCFCF8,F8|
000008e0  46 43 46 43 46 38 2c 46  30 46 30 46 30 46 30 2c  |FCFCF8,F0F0F0F0,|
000008f0  46 30 46 30 46 30 46 30  2c 30 2c 30 2c 30 2c 30  |F0F0F0F0,0,0,0,0|
00000900  2c 46 43 46 38 46 38 46  41 2c 46 43 46 43 46 38  |,FCF8F8FA,FCFCF8|
00000910  46 41 2c 46 30 46 30 46  30 46 30 2c 46 30 46 30  |FA,F0F0F0F0,F0F0|
00000920  46 30 46 30 2c 30 2c 30  2c 30 2c 33 33 33 33 31  |F0F0,0,0,0,33331|
00000930  31 31 31 2c 46 38 46 41  46 38 2c 46 38 46 30 46  |111,F8FAF8,F8F0F|
00000940  38 46 30 2c 46 30 46 30  46 30 2c 46 30 46 30 46  |8F0,F0F0F0,F0F0F|
00000950  30 46 30 2c 30 2c 43 30  43 30 38 30 38 30 0d 04  |0F0,0,C0C08080..|
00000960  e2 10 f4 20 50 69 6c 6c  61 72 20 74 6f 70 0d 04  |... Pillar top..|
00000970  ec 97 dc 20 31 31 31 31  33 33 33 33 2c 30 2c 46  |... 11113333,0,F|
00000980  30 46 30 46 38 46 30 2c  46 41 46 43 46 38 30 30  |0F0F8F0,FAFCF800|
00000990  2c 46 30 46 30 46 30 46  30 2c 46 30 46 30 46 30  |,F0F0F0F0,F0F0F0|
000009a0  30 30 2c 38 30 38 30 43  30 43 30 2c 30 2c 30 2c  |00,8080C0C0,0,0,|
000009b0  30 2c 46 38 46 43 46 43  46 38 2c 46 43 46 43 46  |0,F8FCFCF8,FCFCF|
000009c0  38 46 41 2c 46 30 46 30  46 30 46 30 2c 46 30 46  |8FA,F0F0F0F0,F0F|
000009d0  30 46 30 46 30 2c 30 2c  30 2c 30 2c 30 2c 46 38  |0F0F0,0,0,0,0,F8|
000009e0  46 43 46 38 46 41 2c 46  38 46 38 46 41 46 38 2c  |FCF8FA,F8F8FAF8,|
000009f0  46 30 46 30 46 30 46 30  2c 46 30 46 30 46 30 46  |F0F0F0F0,F0F0F0F|
00000a00  30 2c 30 2c 30 0d 04 f6  0b f4 20 53 74 6f 6e 65  |0,0,0..... Stone|
00000a10  0d 05 00 d9 dc 20 32 44  31 36 32 35 30 33 2c 32  |..... 2D162503,2|
00000a20  44 35 41 32 44 35 41 2c  41 35 35 41 41 35 30 46  |D5A2D5A,A55AA50F|
00000a30  2c 41 35 35 41 41 35 35  41 2c 41 35 35 41 41 35  |,A55AA55A,A55AA5|
00000a40  30 46 2c 41 35 35 41 41  35 35 41 2c 38 36 34 41  |0F,A55AA55A,864A|
00000a50  38 36 30 38 2c 41 35 34  42 41 35 34 42 2c 32 44  |8608,A54BA54B,2D|
00000a60  35 41 32 44 35 41 2c 32  44 35 41 32 44 35 41 2c  |5A2D5A,2D5A2D5A,|
00000a70  41 35 35 41 41 35 35 41  2c 41 35 35 41 41 35 35  |A55AA55A,A55AA55|
00000a80  41 2c 41 35 35 41 41 35  35 41 2c 41 35 35 41 41  |A,A55AA55A,A55AA|
00000a90  35 35 41 2c 41 35 34 42  41 35 34 42 2c 41 35 34  |55A,A54BA54B,A54|
00000aa0  42 41 35 34 42 2c 32 35  35 41 32 44 35 41 2c 31  |BA54B,255A2D5A,1|
00000ab0  31 32 32 35 31 36 2c 41  35 35 41 41 35 35 41 2c  |122516,A55AA55A,|
00000ac0  46 35 41 41 35 35 41 2c  41 35 35 41 41 35 35 41  |F5AA55A,A55AA55A|
00000ad0  2c 46 35 41 41 35 35 41  2c 41 35 34 42 41 35 34  |,F5AA55A,A54BA54|
00000ae0  42 2c 38 30 43 38 36 34  41 0d 05 0a 05 20 0d 05  |B,80C864A.... ..|
00000af0  14 0e dd 20 a4 73 63 72  64 61 74 61 0d 05 1e 0a  |... .scrdata....|
00000b00  f7 20 8d 64 48 45 0d 05  28 0b 73 63 72 30 3d 50  |. .dHE..(.scr0=P|
00000b10  25 0d 05 32 0e 73 63 72  31 3d 50 25 2b 35 30 0d  |%..2.scr1=P%+50.|
00000b20  05 3c 0e e3 20 4b 25 3d  30 20 b8 20 31 0d 05 46  |.<.. K%=0 . 1..F|
00000b30  0f e3 20 59 25 3d 31 20  b8 20 31 30 0d 05 50 08  |.. Y%=1 . 10..P.|
00000b40  f3 20 61 24 0d 05 5a 0e  e3 20 58 25 3d 31 20 b8  |. a$..Z.. X%=1 .|
00000b50  20 35 0d 05 64 0e 5b 20  4f 50 54 20 70 61 73 73  | 5..d.[ OPT pass|
00000b60  0d 05 6e 16 45 51 55 42  20 a0 28 22 26 22 2b c0  |..n.EQUB .("&"+.|
00000b70  61 24 2c 32 29 29 0d 05  78 05 5d 0d 05 82 0d 61  |a$,2))..x.]....a|
00000b80  24 3d c1 61 24 2c 33 29  0d 05 8c 05 ed 0d 05 96  |$=.a$,3)........|
00000b90  05 ed 0d 05 a0 05 ed 0d  05 aa 09 3d 70 61 73 73  |...........=pass|
00000ba0  0d 05 b4 05 20 0d 05 be  0e f4 20 53 63 72 65 65  |.... ..... Scree|
00000bb0  6e 20 31 0d 05 c8 10 dc  20 31 31 31 31 31 31 31  |n 1..... 1111111|
00000bc0  31 31 31 0d 05 d2 10 dc  20 30 33 30 33 30 30 30  |111..... 0303000|
00000bd0  30 30 30 0d 05 dc 10 dc  20 30 32 30 32 30 30 30  |000..... 0202000|
00000be0  30 30 30 0d 05 e6 10 dc  20 31 31 31 31 31 30 30  |000..... 1111100|
00000bf0  31 31 31 0d 05 f0 10 dc  20 30 30 30 30 30 30 30  |111..... 0000000|
00000c00  30 30 30 0d 05 fa 10 dc  20 30 30 30 30 30 30 30  |000..... 0000000|
00000c10  30 30 30 0d 06 04 10 dc  20 31 31 31 31 30 30 31  |000..... 1111001|
00000c20  31 31 31 0d 06 0e 10 dc  20 30 30 33 30 30 30 30  |111..... 0030000|
00000c30  30 33 30 0d 06 18 10 dc  20 30 30 32 30 30 30 30  |030..... 0020000|
00000c40  30 32 30 0d 06 22 10 dc  20 31 31 31 31 31 31 31  |020..".. 1111111|
00000c50  31 31 31 0d 06 2c 05 20  0d 06 36 0e f4 20 53 63  |111..,. ..6.. Sc|
00000c60  72 65 65 6e 20 32 0d 06  40 10 dc 20 34 34 34 34  |reen 2..@.. 4444|
00000c70  34 34 34 34 34 34 0d 06  4a 10 dc 20 30 30 30 30  |444444..J.. 0000|
00000c80  30 30 30 34 30 31 0d 06  54 10 dc 20 30 30 30 30  |000401..T.. 0000|
00000c90  30 30 30 33 30 31 0d 06  5e 10 dc 20 34 34 34 34  |000301..^.. 4444|
00000ca0  30 30 30 32 30 31 0d 06  68 10 dc 20 30 30 30 30  |000201..h.. 0000|
00000cb0  30 34 34 34 34 31 0d 06  72 10 dc 20 30 30 30 30  |044441..r.. 0000|
00000cc0  34 30 30 30 30 31 0d 06  7c 10 dc 20 34 34 34 34  |400001..|.. 4444|
00000cd0  30 30 30 30 30 31 0d 06  86 10 dc 20 30 33 30 30  |000001..... 0300|
00000ce0  30 30 30 30 30 33 0d 06  90 10 dc 20 30 32 30 30  |000003..... 0200|
00000cf0  30 30 30 30 30 32 0d 06  9a 10 dc 20 31 31 31 31  |000002..... 1111|
00000d00  31 31 31 31 31 31 0d ff                           |111111..|
00000d08
4_PROG2.m0
4_PROG2.m1
4_PROG2.m2
4_PROG2.m4
4_PROG2.m5