Home » Recent acquisitions » Acorn ADFS disks » adfs_AcornUser_199611.adf » Regulars » StarInfo/Llew-Jones/!Lights/!RunImage
StarInfo/Llew-Jones/!Lights/!RunImage
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 » Recent acquisitions » Acorn ADFS disks » adfs_AcornUser_199611.adf » Regulars |
Filename: | StarInfo/Llew-Jones/!Lights/!RunImage |
Read OK: | ✔ |
File size: | 0E38 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10REM > Program 20REM 22nd September 1995 30REM The Flying Pig! 40: 50save%=FALSE 60: 70MODE28 80OFF 90PROCassemble 100PROCtables 110GCOL0,63TINT255 120CALLsetup 130a%=0 140REPEAT 150!rnd2=RND(255) 160!rnd3=RND(255) 170CALLstart 180MOUSEx%,y%,z% 190IFz%CIRCLEFILLx%,y%,64 200IFa%>500a%=0:CIRCLEFILLRND(1280),RND(960),64 210a%+=1 220UNTILINKEY-99 230END 240: 250DEFPROCtables 260DIMshades%72 270shades%!64=0 280shades%!68=0 290OSCLI("Load <Obey$Dir>.Shade "+STR$~shades%) 300!colours=0 310FORn%=1TO255 320c2%=n% 330FORn2%=0TO63 340c%=shades%?n2% 350IFc%=n%THENc2%=shades%?(n2%+2) 360NEXT 370colours?n%=c2% 380NEXT 390ENDPROC 400: 410DEFFNplot(t%) 420FORn%=1TOt% 430[OPTpass% 440 LDR y,[read],#4 450 ANDS temp,y,#%1 460 STRNEB colour2,[x] 470 ANDS temp,y,#%100000000 480 STRNEB colour2,[x,#1] 490 ANDS temp,y,#%10000000000000000 500 STRNEB colour2,[x,#2] 510 ANDS temp,y,#%1000000000000000000000000 520 STRNEB colour2,[x,#3] 530 ADD x,x,#4 540]NEXT 550=0 560: 570DEFPROCassemble 580DIMcode%20000 590: 600REM******************************************************************* 610registers=TRUE:x=1:y=2:address=3:count=4:temp=5:read=6:top=7:colour=8 620registers=TRUE:colour2=9:base=10:end=11 630link=14 640REM******************************************************************* 650: 660FORpass%=0TO2STEP2 670P%=code% 680[OPTpass% 690.setup 700 ADR 0,vduout 710 ADR 1,vduout 720 SWI "OS_ReadVduVariables" 730 LDR address,vduout 740 STR address,position 750 MOV PC,link 760.start 770 MOV count,#16 780 STR count,times 790.loop 800 LDR address,position 810 LDR base,vduout 820 SUB address,address,#640*480 830 SUB address,address,#640*8 840 SUB temp,base,#640*8 850.loop1 860 CMP address,temp 870 ADDLE address,address,#251 880 BLE loop1 890 ADD top,base,#640*480 900 SUB end,top,#640*8 910.loop2 920 ADD temp,address,#5120 930 LDRB colour,[temp,#8] 940 ADR temp,colours 950 LDRB colour2,[temp,colour] 960 CMP colour,colour2 970 BEQ skip 980 ADR read,sprite 990 MOV x,address 1000 MOV count,#15 1010.loop25 1020 CMP x,base 1030 ADDLT x,x,#640 1040 SUBLT count,count,#1 1050 ADDLT read,read,#16 1060 BLT loop25 1070.loop3 1080 FNplot(4) 1090 ADD x,x,#640-16 1100 CMP top,x 1110 SUBGES count,count,#1 1120 BGE loop3 1130 1140: 1150.skip 1160 LDR x,rnd2 1170 LDR y,rnd3 1180 SUBS y,y,#1 1190 MOVLE y,#11 1200 MUL x,y,x 1210 ANDS temp,x,#%10 1220 ADDNE y,y,#3 1230 STR y,rnd3 1240 ADD x,x,#1 1250 STR x,rnd2 1260 BIC x,x,#%111111100000000000000000 1270 BIC x,x,#%11111111000000000000000000000000 1280 ADD address,address,x 1290 CMP address,end 1300 BLT loop2 1310 STR address,position 1320: 1330 LDR count,times 1340 SUBS count,count,#1 1350 STR count,times 1360 BGT loop 1370 MOV PC,link 1380 1390.vduout EQUD 148 1400 EQUD -1 1410.position EQUD 0 1420.rnd1 EQUD 0 1430.rnd2 EQUD 0 1440.rnd3 EQUD 0 1450.times EQUD 0 1460.colours 1470]P%+=256+56 1480[OPTpass% 1490ALIGN 1500.sprite 1510]NEXT 1520OSCLI("Load <Obey$Dir>.!Sprites "+STR$~(sprite-56)) 1530ENDPROC 1540:
� > Program � 22nd September 1995 � The Flying Pig! (: 2save%=� <: F�28 P� Z �assemble d�tables n�0,63Ȝ255 x �setup �a%=0 �� �!rnd2=�(255) �!rnd3=�(255) � �start �ȗx%,y%,z% ��z%ȏȐx%,y%,64 �%�a%>500a%=0:ȏȐ�(1280),�(960),64 � a%+=1 � ��-99 �� �: ���tables �shades%72 shades%!64=0 shades%!68=0 ")�("Load <Obey$Dir>.Shade "+�~shades%) ,!colours=0 6 �n%=1�255 @ c2%=n% J �n2%=0�63 Tc%=shades%?n2% ^�c%=n%�c2%=shades%?(n2%+2) h� rcolours?n%=c2% |� �� �: �ݤplot(t%) ��n%=1�t% � [OPTpass% �! LDR y,[read],#4 � �S temp,y,#%1 �! STRNEB colour2,[x] �& �S temp,y,#%100000000 �$ STRNEB colour2,[x,#1] �. �S temp,y,#%10000000000000000 �$ STRNEB colour2,[x,#2] �6 �S temp,y,#%1000000000000000000000000 $ STRNEB colour2,[x,#3] ADD x,x,#4 ]� &=0 0: :��assemble D�code%20000 N: XH�******************************************************************* bFregisters=�:x=1:y=2:address=3:count=4:temp=5:read=6:top=7:colour=8 l(registers=�:colour2=9:base=10:end=11 vlink=14 �H�******************************************************************* �: ��pass%=0�2�2 �P%=code% � [OPTpass% � .setup � ADR 0,vduout � ADR 1,vduout �+ SWI "OS_ReadVduVariables" �$ LDR address,vduout �& STR address,position � MOV PC,link � .start MOV count,#16 ! STR count,times .loop & LDR address,position *! LDR base,vduout 4. SUB address,address,#640*480 >, SUB address,address,#640*8 H& SUB temp,base,#640*8 R .loop1 \" CMP address,temp f* ADDLE address,address,#251 p BLE loop1 z' ADD top,base,#640*480 �$ SUB end,top,#640*8 � .loop2 �( ADD temp,address,#5120 �& LDRB colour,[temp,#8] �" ADR temp,colours �+ LDRB colour2,[temp,colour] �$ CMP colour,colour2 � BEQ skip �! ADR read,sprite � MOV x,address � MOV count,#15 �.loop25 � CMP x,base ADDLT x,x,#640 $ SUBLT count,count,#1 # ADDLT read,read,#16 $ BLT loop25 . .loop3 8 �plot(4) B! ADD x,x,#640-16 L CMP top,x V$ SUBGES count,count,#1 ` BGE loop3 j t: ~ .skip � LDR x,rnd2 � LDR y,rnd3 � SUBS y,y,#1 � MOVLE y,#11 � MUL x,y,x � �S temp,x,#%10 � ADDNE y,y,#3 � STR y,rnd3 � ADD x,x,#1 � STR x,rnd2 �4 BIC x,x,#%111111100000000000000000 �< BIC x,x,#%11111111000000000000000000000000 ' ADD address,address,x ! CMP address,end BLT loop2 & STR address,position (: 2! LDR count,times <$ SUBS count,count,#1 F! STR count,times P BGT loop Z MOV PC,link d n.vduout EQUD 148 x EQUD -1 �.position EQUD 0 �.rnd1 EQUD 0 �.rnd2 EQUD 0 �.rnd3 EQUD 0 �.times EQUD 0 �.colours �]P%+=256+56 � [OPTpass% � ALIGN �.sprite �]� �0�("Load <Obey$Dir>.!Sprites "+�~(sprite-56)) �� : �
00000000 0d 00 0a 0f f4 20 3e 20 50 72 6f 67 72 61 6d 0d |..... > Program.| 00000010 00 14 1b f4 20 20 20 32 32 6e 64 20 53 65 70 74 |.... 22nd Sept| 00000020 65 6d 62 65 72 20 31 39 39 35 0d 00 1e 17 f4 20 |ember 1995..... | 00000030 20 20 54 68 65 20 46 6c 79 69 6e 67 20 50 69 67 | The Flying Pig| 00000040 21 0d 00 28 05 3a 0d 00 32 0b 73 61 76 65 25 3d |!..(.:..2.save%=| 00000050 a3 0d 00 3c 05 3a 0d 00 46 07 eb 32 38 0d 00 50 |...<.:..F..28..P| 00000060 05 87 0d 00 5a 0d f2 61 73 73 65 6d 62 6c 65 0d |....Z..assemble.| 00000070 00 64 0b f2 74 61 62 6c 65 73 0d 00 6e 0e e6 30 |.d..tables..n..0| 00000080 2c 36 33 c8 9c 32 35 35 0d 00 78 0a d6 73 65 74 |,63..255..x..set| 00000090 75 70 0d 00 82 08 61 25 3d 30 0d 00 8c 05 f5 0d |up....a%=0......| 000000a0 00 96 10 21 72 6e 64 32 3d b3 28 32 35 35 29 0d |...!rnd2=.(255).| 000000b0 00 a0 10 21 72 6e 64 33 3d b3 28 32 35 35 29 0d |...!rnd3=.(255).| 000000c0 00 aa 0a d6 73 74 61 72 74 0d 00 b4 0e c8 97 78 |....start......x| 000000d0 25 2c 79 25 2c 7a 25 0d 00 be 13 e7 7a 25 c8 8f |%,y%,z%.....z%..| 000000e0 c8 90 78 25 2c 79 25 2c 36 34 0d 00 c8 25 e7 61 |..x%,y%,64...%.a| 000000f0 25 3e 35 30 30 61 25 3d 30 3a c8 8f c8 90 b3 28 |%>500a%=0:.....(| 00000100 31 32 38 30 29 2c b3 28 39 36 30 29 2c 36 34 0d |1280),.(960),64.| 00000110 00 d2 09 61 25 2b 3d 31 0d 00 dc 09 fd a6 2d 39 |...a%+=1......-9| 00000120 39 0d 00 e6 05 e0 0d 00 f0 05 3a 0d 00 fa 0c dd |9.........:.....| 00000130 f2 74 61 62 6c 65 73 0d 01 04 0e de 73 68 61 64 |.tables.....shad| 00000140 65 73 25 37 32 0d 01 0e 10 73 68 61 64 65 73 25 |es%72....shades%| 00000150 21 36 34 3d 30 0d 01 18 10 73 68 61 64 65 73 25 |!64=0....shades%| 00000160 21 36 38 3d 30 0d 01 22 29 ff 28 22 4c 6f 61 64 |!68=0..").("Load| 00000170 20 3c 4f 62 65 79 24 44 69 72 3e 2e 53 68 61 64 | <Obey$Dir>.Shad| 00000180 65 20 22 2b c3 7e 73 68 61 64 65 73 25 29 0d 01 |e "+.~shades%)..| 00000190 2c 0e 21 63 6f 6c 6f 75 72 73 3d 30 0d 01 36 0d |,.!colours=0..6.| 000001a0 e3 6e 25 3d 31 b8 32 35 35 0d 01 40 0a 63 32 25 |.n%=1.255..@.c2%| 000001b0 3d 6e 25 0d 01 4a 0d e3 6e 32 25 3d 30 b8 36 33 |=n%..J..n2%=0.63| 000001c0 0d 01 54 12 63 25 3d 73 68 61 64 65 73 25 3f 6e |..T.c%=shades%?n| 000001d0 32 25 0d 01 5e 1e e7 63 25 3d 6e 25 8c 63 32 25 |2%..^..c%=n%.c2%| 000001e0 3d 73 68 61 64 65 73 25 3f 28 6e 32 25 2b 32 29 |=shades%?(n2%+2)| 000001f0 0d 01 68 05 ed 0d 01 72 12 63 6f 6c 6f 75 72 73 |..h....r.colours| 00000200 3f 6e 25 3d 63 32 25 0d 01 7c 05 ed 0d 01 86 05 |?n%=c2%..|......| 00000210 e1 0d 01 90 05 3a 0d 01 9a 0e dd a4 70 6c 6f 74 |.....:......plot| 00000220 28 74 25 29 0d 01 a4 0c e3 6e 25 3d 31 b8 74 25 |(t%).....n%=1.t%| 00000230 0d 01 ae 0d 5b 4f 50 54 70 61 73 73 25 0d 01 b8 |....[OPTpass%...| 00000240 21 20 20 20 20 20 20 20 20 20 20 4c 44 52 20 20 |! LDR | 00000250 20 20 20 79 2c 5b 72 65 61 64 5d 2c 23 34 0d 01 | y,[read],#4..| 00000260 c2 1e 20 20 20 20 20 20 20 20 20 20 80 53 20 20 |.. .S | 00000270 20 20 74 65 6d 70 2c 79 2c 23 25 31 0d 01 cc 21 | temp,y,#%1...!| 00000280 20 20 20 20 20 20 20 20 20 20 53 54 52 4e 45 42 | STRNEB| 00000290 20 20 63 6f 6c 6f 75 72 32 2c 5b 78 5d 0d 01 d6 | colour2,[x]...| 000002a0 26 20 20 20 20 20 20 20 20 20 20 80 53 20 20 20 |& .S | 000002b0 20 74 65 6d 70 2c 79 2c 23 25 31 30 30 30 30 30 | temp,y,#%100000| 000002c0 30 30 30 0d 01 e0 24 20 20 20 20 20 20 20 20 20 |000...$ | 000002d0 20 53 54 52 4e 45 42 20 20 63 6f 6c 6f 75 72 32 | STRNEB colour2| 000002e0 2c 5b 78 2c 23 31 5d 0d 01 ea 2e 20 20 20 20 20 |,[x,#1].... | 000002f0 20 20 20 20 20 80 53 20 20 20 20 74 65 6d 70 2c | .S temp,| 00000300 79 2c 23 25 31 30 30 30 30 30 30 30 30 30 30 30 |y,#%100000000000| 00000310 30 30 30 30 30 0d 01 f4 24 20 20 20 20 20 20 20 |00000...$ | 00000320 20 20 20 53 54 52 4e 45 42 20 20 63 6f 6c 6f 75 | STRNEB colou| 00000330 72 32 2c 5b 78 2c 23 32 5d 0d 01 fe 36 20 20 20 |r2,[x,#2]...6 | 00000340 20 20 20 20 20 20 20 80 53 20 20 20 20 74 65 6d | .S tem| 00000350 70 2c 79 2c 23 25 31 30 30 30 30 30 30 30 30 30 |p,y,#%1000000000| 00000360 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 0d |000000000000000.| 00000370 02 08 24 20 20 20 20 20 20 20 20 20 20 53 54 52 |..$ STR| 00000380 4e 45 42 20 20 63 6f 6c 6f 75 72 32 2c 5b 78 2c |NEB colour2,[x,| 00000390 23 33 5d 0d 02 12 1c 20 20 20 20 20 20 20 20 20 |#3].... | 000003a0 20 41 44 44 20 20 20 20 20 78 2c 78 2c 23 34 0d | ADD x,x,#4.| 000003b0 02 1c 06 5d ed 0d 02 26 06 3d 30 0d 02 30 05 3a |...]...&.=0..0.:| 000003c0 0d 02 3a 0e dd f2 61 73 73 65 6d 62 6c 65 0d 02 |..:...assemble..| 000003d0 44 0f de 63 6f 64 65 25 32 30 30 30 30 0d 02 4e |D..code%20000..N| 000003e0 05 3a 0d 02 58 48 f4 2a 2a 2a 2a 2a 2a 2a 2a 2a |.:..XH.*********| 000003f0 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |****************| * 00000420 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 02 62 46 72 65 |**********..bFre| 00000430 67 69 73 74 65 72 73 3d b9 3a 78 3d 31 3a 79 3d |gisters=.:x=1:y=| 00000440 32 3a 61 64 64 72 65 73 73 3d 33 3a 63 6f 75 6e |2:address=3:coun| 00000450 74 3d 34 3a 74 65 6d 70 3d 35 3a 72 65 61 64 3d |t=4:temp=5:read=| 00000460 36 3a 74 6f 70 3d 37 3a 63 6f 6c 6f 75 72 3d 38 |6:top=7:colour=8| 00000470 0d 02 6c 28 72 65 67 69 73 74 65 72 73 3d b9 3a |..l(registers=.:| 00000480 63 6f 6c 6f 75 72 32 3d 39 3a 62 61 73 65 3d 31 |colour2=9:base=1| 00000490 30 3a 65 6e 64 3d 31 31 0d 02 76 0b 6c 69 6e 6b |0:end=11..v.link| 000004a0 3d 31 34 0d 02 80 48 f4 2a 2a 2a 2a 2a 2a 2a 2a |=14...H.********| 000004b0 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a |****************| * 000004e0 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 0d 02 8a 05 3a |***********....:| 000004f0 0d 02 94 10 e3 70 61 73 73 25 3d 30 b8 32 88 32 |.....pass%=0.2.2| 00000500 0d 02 9e 0c 50 25 3d 63 6f 64 65 25 0d 02 a8 0d |....P%=code%....| 00000510 5b 4f 50 54 70 61 73 73 25 0d 02 b2 0a 2e 73 65 |[OPTpass%.....se| 00000520 74 75 70 0d 02 bc 1e 20 20 20 20 20 20 20 20 20 |tup.... | 00000530 20 41 44 52 20 20 20 20 20 30 2c 76 64 75 6f 75 | ADR 0,vduou| 00000540 74 0d 02 c6 1e 20 20 20 20 20 20 20 20 20 20 41 |t.... A| 00000550 44 52 20 20 20 20 20 31 2c 76 64 75 6f 75 74 0d |DR 1,vduout.| 00000560 02 d0 2b 20 20 20 20 20 20 20 20 20 20 53 57 49 |..+ SWI| 00000570 20 20 20 20 20 22 4f 53 5f 52 65 61 64 56 64 75 | "OS_ReadVdu| 00000580 56 61 72 69 61 62 6c 65 73 22 0d 02 da 24 20 20 |Variables"...$ | 00000590 20 20 20 20 20 20 20 20 4c 44 52 20 20 20 20 20 | LDR | 000005a0 61 64 64 72 65 73 73 2c 76 64 75 6f 75 74 0d 02 |address,vduout..| 000005b0 e4 26 20 20 20 20 20 20 20 20 20 20 53 54 52 20 |.& STR | 000005c0 20 20 20 20 61 64 64 72 65 73 73 2c 70 6f 73 69 | address,posi| 000005d0 74 69 6f 6e 0d 02 ee 1d 20 20 20 20 20 20 20 20 |tion.... | 000005e0 20 20 4d 4f 56 20 20 20 20 20 50 43 2c 6c 69 6e | MOV PC,lin| 000005f0 6b 0d 02 f8 0a 2e 73 74 61 72 74 0d 03 02 1f 20 |k.....start.... | 00000600 20 20 20 20 20 20 20 20 20 4d 4f 56 20 20 20 20 | MOV | 00000610 20 63 6f 75 6e 74 2c 23 31 36 0d 03 0c 21 20 20 | count,#16...! | 00000620 20 20 20 20 20 20 20 20 53 54 52 20 20 20 20 20 | STR | 00000630 63 6f 75 6e 74 2c 74 69 6d 65 73 0d 03 16 09 2e |count,times.....| 00000640 6c 6f 6f 70 0d 03 20 26 20 20 20 20 20 20 20 20 |loop.. & | 00000650 20 20 4c 44 52 20 20 20 20 20 61 64 64 72 65 73 | LDR addres| 00000660 73 2c 70 6f 73 69 74 69 6f 6e 0d 03 2a 21 20 20 |s,position..*! | 00000670 20 20 20 20 20 20 20 20 4c 44 52 20 20 20 20 20 | LDR | 00000680 62 61 73 65 2c 76 64 75 6f 75 74 0d 03 34 2e 20 |base,vduout..4. | 00000690 20 20 20 20 20 20 20 20 20 53 55 42 20 20 20 20 | SUB | 000006a0 20 61 64 64 72 65 73 73 2c 61 64 64 72 65 73 73 | address,address| 000006b0 2c 23 36 34 30 2a 34 38 30 0d 03 3e 2c 20 20 20 |,#640*480..>, | 000006c0 20 20 20 20 20 20 20 53 55 42 20 20 20 20 20 61 | SUB a| 000006d0 64 64 72 65 73 73 2c 61 64 64 72 65 73 73 2c 23 |ddress,address,#| 000006e0 36 34 30 2a 38 0d 03 48 26 20 20 20 20 20 20 20 |640*8..H& | 000006f0 20 20 20 53 55 42 20 20 20 20 20 74 65 6d 70 2c | SUB temp,| 00000700 62 61 73 65 2c 23 36 34 30 2a 38 0d 03 52 0a 2e |base,#640*8..R..| 00000710 6c 6f 6f 70 31 0d 03 5c 22 20 20 20 20 20 20 20 |loop1..\" | 00000720 20 20 20 43 4d 50 20 20 20 20 20 61 64 64 72 65 | CMP addre| 00000730 73 73 2c 74 65 6d 70 0d 03 66 2a 20 20 20 20 20 |ss,temp..f* | 00000740 20 20 20 20 20 41 44 44 4c 45 20 20 20 61 64 64 | ADDLE add| 00000750 72 65 73 73 2c 61 64 64 72 65 73 73 2c 23 32 35 |ress,address,#25| 00000760 31 0d 03 70 1b 20 20 20 20 20 20 20 20 20 20 42 |1..p. B| 00000770 4c 45 20 20 20 20 20 6c 6f 6f 70 31 0d 03 7a 27 |LE loop1..z'| 00000780 20 20 20 20 20 20 20 20 20 20 41 44 44 20 20 20 | ADD | 00000790 20 20 74 6f 70 2c 62 61 73 65 2c 23 36 34 30 2a | top,base,#640*| 000007a0 34 38 30 0d 03 84 24 20 20 20 20 20 20 20 20 20 |480...$ | 000007b0 20 53 55 42 20 20 20 20 20 65 6e 64 2c 74 6f 70 | SUB end,top| 000007c0 2c 23 36 34 30 2a 38 0d 03 8e 0a 2e 6c 6f 6f 70 |,#640*8.....loop| 000007d0 32 0d 03 98 28 20 20 20 20 20 20 20 20 20 20 41 |2...( A| 000007e0 44 44 20 20 20 20 20 74 65 6d 70 2c 61 64 64 72 |DD temp,addr| 000007f0 65 73 73 2c 23 35 31 32 30 0d 03 a2 26 20 20 20 |ess,#5120...& | 00000800 20 20 20 20 20 20 20 4c 44 52 42 20 20 20 20 63 | LDRB c| 00000810 6f 6c 6f 75 72 2c 5b 74 65 6d 70 2c 23 38 5d 0d |olour,[temp,#8].| 00000820 03 ac 22 20 20 20 20 20 20 20 20 20 20 41 44 52 |.." ADR| 00000830 20 20 20 20 20 74 65 6d 70 2c 63 6f 6c 6f 75 72 | temp,colour| 00000840 73 0d 03 b6 2b 20 20 20 20 20 20 20 20 20 20 4c |s...+ L| 00000850 44 52 42 20 20 20 20 63 6f 6c 6f 75 72 32 2c 5b |DRB colour2,[| 00000860 74 65 6d 70 2c 63 6f 6c 6f 75 72 5d 0d 03 c0 24 |temp,colour]...$| 00000870 20 20 20 20 20 20 20 20 20 20 43 4d 50 20 20 20 | CMP | 00000880 20 20 63 6f 6c 6f 75 72 2c 63 6f 6c 6f 75 72 32 | colour,colour2| 00000890 0d 03 ca 1a 20 20 20 20 20 20 20 20 20 20 42 45 |.... BE| 000008a0 51 20 20 20 20 20 73 6b 69 70 0d 03 d4 21 20 20 |Q skip...! | 000008b0 20 20 20 20 20 20 20 20 41 44 52 20 20 20 20 20 | ADR | 000008c0 72 65 61 64 2c 73 70 72 69 74 65 0d 03 de 1f 20 |read,sprite.... | 000008d0 20 20 20 20 20 20 20 20 20 4d 4f 56 20 20 20 20 | MOV | 000008e0 20 78 2c 61 64 64 72 65 73 73 0d 03 e8 1f 20 20 | x,address.... | 000008f0 20 20 20 20 20 20 20 20 4d 4f 56 20 20 20 20 20 | MOV | 00000900 63 6f 75 6e 74 2c 23 31 35 0d 03 f2 0b 2e 6c 6f |count,#15.....lo| 00000910 6f 70 32 35 0d 03 fc 1c 20 20 20 20 20 20 20 20 |op25.... | 00000920 20 20 43 4d 50 20 20 20 20 20 78 2c 62 61 73 65 | CMP x,base| 00000930 0d 04 06 1e 20 20 20 20 20 20 20 20 20 20 41 44 |.... AD| 00000940 44 4c 54 20 20 20 78 2c 78 2c 23 36 34 30 0d 04 |DLT x,x,#640..| 00000950 10 24 20 20 20 20 20 20 20 20 20 20 53 55 42 4c |.$ SUBL| 00000960 54 20 20 20 63 6f 75 6e 74 2c 63 6f 75 6e 74 2c |T count,count,| 00000970 23 31 0d 04 1a 23 20 20 20 20 20 20 20 20 20 20 |#1...# | 00000980 41 44 44 4c 54 20 20 20 72 65 61 64 2c 72 65 61 |ADDLT read,rea| 00000990 64 2c 23 31 36 0d 04 24 1c 20 20 20 20 20 20 20 |d,#16..$. | 000009a0 20 20 20 42 4c 54 20 20 20 20 20 6c 6f 6f 70 32 | BLT loop2| 000009b0 35 0d 04 2e 0a 2e 6c 6f 6f 70 33 0d 04 38 16 20 |5.....loop3..8. | 000009c0 20 20 20 20 20 20 20 20 20 a4 70 6c 6f 74 28 34 | .plot(4| 000009d0 29 0d 04 42 21 20 20 20 20 20 20 20 20 20 20 41 |)..B! A| 000009e0 44 44 20 20 20 20 20 78 2c 78 2c 23 36 34 30 2d |DD x,x,#640-| 000009f0 31 36 0d 04 4c 1b 20 20 20 20 20 20 20 20 20 20 |16..L. | 00000a00 43 4d 50 20 20 20 20 20 74 6f 70 2c 78 0d 04 56 |CMP top,x..V| 00000a10 24 20 20 20 20 20 20 20 20 20 20 53 55 42 47 45 |$ SUBGE| 00000a20 53 20 20 63 6f 75 6e 74 2c 63 6f 75 6e 74 2c 23 |S count,count,#| 00000a30 31 0d 04 60 1b 20 20 20 20 20 20 20 20 20 20 42 |1..`. B| 00000a40 47 45 20 20 20 20 20 6c 6f 6f 70 33 0d 04 6a 04 |GE loop3..j.| 00000a50 0d 04 74 05 3a 0d 04 7e 09 2e 73 6b 69 70 0d 04 |..t.:..~..skip..| 00000a60 88 1c 20 20 20 20 20 20 20 20 20 20 4c 44 52 20 |.. LDR | 00000a70 20 20 20 20 78 2c 72 6e 64 32 0d 04 92 1c 20 20 | x,rnd2.... | 00000a80 20 20 20 20 20 20 20 20 4c 44 52 20 20 20 20 20 | LDR | 00000a90 79 2c 72 6e 64 33 0d 04 9c 1c 20 20 20 20 20 20 |y,rnd3.... | 00000aa0 20 20 20 20 53 55 42 53 20 20 20 20 79 2c 79 2c | SUBS y,y,| 00000ab0 23 31 0d 04 a6 1b 20 20 20 20 20 20 20 20 20 20 |#1.... | 00000ac0 4d 4f 56 4c 45 20 20 20 79 2c 23 31 31 0d 04 b0 |MOVLE y,#11...| 00000ad0 1b 20 20 20 20 20 20 20 20 20 20 4d 55 4c 20 20 |. MUL | 00000ae0 20 20 20 78 2c 79 2c 78 0d 04 ba 1f 20 20 20 20 | x,y,x.... | 00000af0 20 20 20 20 20 20 80 53 20 20 20 20 74 65 6d 70 | .S temp| 00000b00 2c 78 2c 23 25 31 30 0d 04 c4 1c 20 20 20 20 20 |,x,#%10.... | 00000b10 20 20 20 20 20 41 44 44 4e 45 20 20 20 79 2c 79 | ADDNE y,y| 00000b20 2c 23 33 0d 04 ce 1c 20 20 20 20 20 20 20 20 20 |,#3.... | 00000b30 20 53 54 52 20 20 20 20 20 79 2c 72 6e 64 33 0d | STR y,rnd3.| 00000b40 04 d8 1c 20 20 20 20 20 20 20 20 20 20 41 44 44 |... ADD| 00000b50 20 20 20 20 20 78 2c 78 2c 23 31 0d 04 e2 1c 20 | x,x,#1.... | 00000b60 20 20 20 20 20 20 20 20 20 53 54 52 20 20 20 20 | STR | 00000b70 20 78 2c 72 6e 64 32 0d 04 ec 34 20 20 20 20 20 | x,rnd2...4 | 00000b80 20 20 20 20 20 42 49 43 20 20 20 20 20 78 2c 78 | BIC x,x| 00000b90 2c 23 25 31 31 31 31 31 31 31 30 30 30 30 30 30 |,#%1111111000000| 00000ba0 30 30 30 30 30 30 30 30 30 30 30 0d 04 f6 3c 20 |00000000000...< | 00000bb0 20 20 20 20 20 20 20 20 20 42 49 43 20 20 20 20 | BIC | 00000bc0 20 78 2c 78 2c 23 25 31 31 31 31 31 31 31 31 30 | x,x,#%111111110| 00000bd0 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 |0000000000000000| 00000be0 30 30 30 30 30 30 30 0d 05 00 27 20 20 20 20 20 |0000000...' | 00000bf0 20 20 20 20 20 41 44 44 20 20 20 20 20 61 64 64 | ADD add| 00000c00 72 65 73 73 2c 61 64 64 72 65 73 73 2c 78 0d 05 |ress,address,x..| 00000c10 0a 21 20 20 20 20 20 20 20 20 20 20 43 4d 50 20 |.! CMP | 00000c20 20 20 20 20 61 64 64 72 65 73 73 2c 65 6e 64 0d | address,end.| 00000c30 05 14 1b 20 20 20 20 20 20 20 20 20 20 42 4c 54 |... BLT| 00000c40 20 20 20 20 20 6c 6f 6f 70 32 0d 05 1e 26 20 20 | loop2...& | 00000c50 20 20 20 20 20 20 20 20 53 54 52 20 20 20 20 20 | STR | 00000c60 61 64 64 72 65 73 73 2c 70 6f 73 69 74 69 6f 6e |address,position| 00000c70 0d 05 28 05 3a 0d 05 32 21 20 20 20 20 20 20 20 |..(.:..2! | 00000c80 20 20 20 4c 44 52 20 20 20 20 20 63 6f 75 6e 74 | LDR count| 00000c90 2c 74 69 6d 65 73 0d 05 3c 24 20 20 20 20 20 20 |,times..<$ | 00000ca0 20 20 20 20 53 55 42 53 20 20 20 20 63 6f 75 6e | SUBS coun| 00000cb0 74 2c 63 6f 75 6e 74 2c 23 31 0d 05 46 21 20 20 |t,count,#1..F! | 00000cc0 20 20 20 20 20 20 20 20 53 54 52 20 20 20 20 20 | STR | 00000cd0 63 6f 75 6e 74 2c 74 69 6d 65 73 0d 05 50 1a 20 |count,times..P. | 00000ce0 20 20 20 20 20 20 20 20 20 42 47 54 20 20 20 20 | BGT | 00000cf0 20 6c 6f 6f 70 0d 05 5a 1d 20 20 20 20 20 20 20 | loop..Z. | 00000d00 20 20 20 4d 4f 56 20 20 20 20 20 50 43 2c 6c 69 | MOV PC,li| 00000d10 6e 6b 0d 05 64 04 0d 05 6e 19 2e 76 64 75 6f 75 |nk..d...n..vduou| 00000d20 74 20 20 20 45 51 55 44 20 20 20 20 31 34 38 0d |t EQUD 148.| 00000d30 05 78 18 20 20 20 20 20 20 20 20 20 20 45 51 55 |.x. EQU| 00000d40 44 20 20 20 20 2d 31 0d 05 82 17 2e 70 6f 73 69 |D -1.....posi| 00000d50 74 69 6f 6e 20 45 51 55 44 20 20 20 20 30 0d 05 |tion EQUD 0..| 00000d60 8c 17 2e 72 6e 64 31 20 20 20 20 20 45 51 55 44 |...rnd1 EQUD| 00000d70 20 20 20 20 30 0d 05 96 17 2e 72 6e 64 32 20 20 | 0.....rnd2 | 00000d80 20 20 20 45 51 55 44 20 20 20 20 30 0d 05 a0 17 | EQUD 0....| 00000d90 2e 72 6e 64 33 20 20 20 20 20 45 51 55 44 20 20 |.rnd3 EQUD | 00000da0 20 20 30 0d 05 aa 17 2e 74 69 6d 65 73 20 20 20 | 0.....times | 00000db0 20 45 51 55 44 20 20 20 20 30 0d 05 b4 0c 2e 63 | EQUD 0.....c| 00000dc0 6f 6c 6f 75 72 73 0d 05 be 0f 5d 50 25 2b 3d 32 |olours....]P%+=2| 00000dd0 35 36 2b 35 36 0d 05 c8 0d 5b 4f 50 54 70 61 73 |56+56....[OPTpas| 00000de0 73 25 0d 05 d2 09 41 4c 49 47 4e 0d 05 dc 0b 2e |s%....ALIGN.....| 00000df0 73 70 72 69 74 65 0d 05 e6 06 5d ed 0d 05 f0 30 |sprite....]....0| 00000e00 ff 28 22 4c 6f 61 64 20 3c 4f 62 65 79 24 44 69 |.("Load <Obey$Di| 00000e10 72 3e 2e 21 53 70 72 69 74 65 73 20 22 2b c3 7e |r>.!Sprites "+.~| 00000e20 28 73 70 72 69 74 65 2d 35 36 29 29 0d 05 fa 05 |(sprite-56))....| 00000e30 e1 0d 06 04 05 3a 0d ff |.....:..| 00000e38