Home » Personal collection » Acorn ADFS disks » Archimedes » Dominic_3.ADF » Files/Programs/Fireworks
Files/Programs/Fireworks
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 ADFS disks » Archimedes » Dominic_3.ADF |
Filename: | Files/Programs/Fireworks |
Read OK: | ✔ |
File size: | 02A8 bytes |
Load address: | FFFFFB44 |
Exec address: | 9BE30034 |
Duplicates
There are 3 duplicate copies of this file in the archive:
- Personal collection » Acorn ADFS disks » Archimedes » Dominic_3B.ADF » Files/Programs/Fireworks
- Personal collection » Acorn ADFS disks » Archimedes » Dominic_3.ADF » Files/Programs/Fireworks
- Personal collection » Acorn ADFS disks » Greaseweazled » adfs_Dominic_3.adf » Files/Programs/Fireworks
- Personal collection » Acorn ADFS disks » Greaseweazled » adfs_Dominic_3B.adf » Files/Programs/Fireworks
File contents
10 DIMX(500):DIMY(500):DIMCO(500) 20 DIMPX(500):DIMPY(500) 30 FORX=1 TO 300:X(X)=RND(1000):Y(X)=RND(1000):CO(X)=RND(127) 40 PX(X)=RND(50)-25:PY(X)=RND(50)-25:NEXT:IN=300 50 FOR X=1 TO IN:GCOL0,CO(X):MOVEX(X),Y(X):DRAWX(X),Y(X):NEXT 60 FOR X=1 TO IN:PX=PX(X):X(X)=X(X)-PX(X):PY=PY(X):IF PX=0 THEN 80 70 IF PX>0 THEN PX=PX-1 ELSE PX=PX+1 80 Y(X)=Y(X)-PY(X):IF PY=0 THEN 110 90 IF PY>0 THEN PY=PY-1 ELSE PY=PY+1 100 PX(X)=PX:PY(X)=PY 110 NEXT:IN=IN-RND(50) 120 M=RND(5):IF M<>2 THEN 50 130 FOR X=RND(25) TO RND(75)+25 STEP RND(3) 140 X(X)=RND(1000):X(X+RND(100)+200)=RND(1000) 150 Y(X)=RND(1000):Y(X+RND(100)+200)=RND(1000) 160 CO(X)=RND(127):CO(X+RND(100)+200)=RND(127) 170 PX(X)=RND(50)-25:PX(X+RND(100)+200)=RND(50)-25 180 PY(X)=RND(50)-25:PY(X+RND(100)+200)=RND(50)-25 190 NEXT:GOTO 50
�X(500):�Y(500):�CO(500) �PX(500):�PY(500) 6 �X=1 � 300:X(X)=�(1000):Y(X)=�(1000):CO(X)=�(127) (+ PX(X)=�(50)-25:PY(X)=�(50)-25:�:IN=300 20 � X=1 � IN:�0,CO(X):�X(X),Y(X):�X(X),Y(X):� <? � X=1 � IN:PX=PX(X):X(X)=X(X)-PX(X):PY=PY(X):� PX=0 � �DP@ F � PX>0 � PX=PX-1 � PX=PX+1 P" Y(X)=Y(X)-PY(X):� PY=0 � �Dn@ Z � PY>0 � PY=PY-1 � PY=PY+1 d PX(X)=PX:PY(X)=PY n �:IN=IN-�(50) x M=�(5):� M<>2 � �Tr@ � � X=�(25) � �(75)+25 � �(3) �) X(X)=�(1000):X(X+�(100)+200)=�(1000) �) Y(X)=�(1000):Y(X+�(100)+200)=�(1000) �) CO(X)=�(127):CO(X+�(100)+200)=�(127) �- PX(X)=�(50)-25:PX(X+�(100)+200)=�(50)-25 �- PY(X)=�(50)-25:PY(X+�(100)+200)=�(50)-25 � �:� �Tr@ �
00000000 0d 00 0a 1d 20 de 58 28 35 30 30 29 3a de 59 28 |.... .X(500):.Y(| 00000010 35 30 30 29 3a de 43 4f 28 35 30 30 29 0d 00 14 |500):.CO(500)...| 00000020 16 20 de 50 58 28 35 30 30 29 3a de 50 59 28 35 |. .PX(500):.PY(5| 00000030 30 30 29 0d 00 1e 36 20 e3 58 3d 31 20 b8 20 33 |00)...6 .X=1 . 3| 00000040 30 30 3a 58 28 58 29 3d b3 28 31 30 30 30 29 3a |00:X(X)=.(1000):| 00000050 59 28 58 29 3d b3 28 31 30 30 30 29 3a 43 4f 28 |Y(X)=.(1000):CO(| 00000060 58 29 3d b3 28 31 32 37 29 0d 00 28 2b 20 50 58 |X)=.(127)..(+ PX| 00000070 28 58 29 3d b3 28 35 30 29 2d 32 35 3a 50 59 28 |(X)=.(50)-25:PY(| 00000080 58 29 3d b3 28 35 30 29 2d 32 35 3a ed 3a 49 4e |X)=.(50)-25:.:IN| 00000090 3d 33 30 30 0d 00 32 30 20 e3 20 58 3d 31 20 b8 |=300..20 . X=1 .| 000000a0 20 49 4e 3a e6 30 2c 43 4f 28 58 29 3a ec 58 28 | IN:.0,CO(X):.X(| 000000b0 58 29 2c 59 28 58 29 3a df 58 28 58 29 2c 59 28 |X),Y(X):.X(X),Y(| 000000c0 58 29 3a ed 0d 00 3c 3f 20 e3 20 58 3d 31 20 b8 |X):...<? . X=1 .| 000000d0 20 49 4e 3a 50 58 3d 50 58 28 58 29 3a 58 28 58 | IN:PX=PX(X):X(X| 000000e0 29 3d 58 28 58 29 2d 50 58 28 58 29 3a 50 59 3d |)=X(X)-PX(X):PY=| 000000f0 50 59 28 58 29 3a e7 20 50 58 3d 30 20 8c 20 8d |PY(X):. PX=0 . .| 00000100 44 50 40 0d 00 46 1f 20 e7 20 50 58 3e 30 20 8c |DP@..F. . PX>0 .| 00000110 20 50 58 3d 50 58 2d 31 20 8b 20 50 58 3d 50 58 | PX=PX-1 . PX=PX| 00000120 2b 31 0d 00 50 22 20 59 28 58 29 3d 59 28 58 29 |+1..P" Y(X)=Y(X)| 00000130 2d 50 59 28 58 29 3a e7 20 50 59 3d 30 20 8c 20 |-PY(X):. PY=0 . | 00000140 8d 44 6e 40 0d 00 5a 1f 20 e7 20 50 59 3e 30 20 |.Dn@..Z. . PY>0 | 00000150 8c 20 50 59 3d 50 59 2d 31 20 8b 20 50 59 3d 50 |. PY=PY-1 . PY=P| 00000160 59 2b 31 0d 00 64 16 20 50 58 28 58 29 3d 50 58 |Y+1..d. PX(X)=PX| 00000170 3a 50 59 28 58 29 3d 50 59 0d 00 6e 12 20 ed 3a |:PY(X)=PY..n. .:| 00000180 49 4e 3d 49 4e 2d b3 28 35 30 29 0d 00 78 19 20 |IN=IN-.(50)..x. | 00000190 4d 3d b3 28 35 29 3a e7 20 4d 3c 3e 32 20 8c 20 |M=.(5):. M<>2 . | 000001a0 8d 54 72 40 0d 00 82 20 20 e3 20 58 3d b3 28 32 |.Tr@... . X=.(2| 000001b0 35 29 20 b8 20 b3 28 37 35 29 2b 32 35 20 88 20 |5) . .(75)+25 . | 000001c0 b3 28 33 29 0d 00 8c 29 20 58 28 58 29 3d b3 28 |.(3)...) X(X)=.(| 000001d0 31 30 30 30 29 3a 58 28 58 2b b3 28 31 30 30 29 |1000):X(X+.(100)| 000001e0 2b 32 30 30 29 3d b3 28 31 30 30 30 29 0d 00 96 |+200)=.(1000)...| 000001f0 29 20 59 28 58 29 3d b3 28 31 30 30 30 29 3a 59 |) Y(X)=.(1000):Y| 00000200 28 58 2b b3 28 31 30 30 29 2b 32 30 30 29 3d b3 |(X+.(100)+200)=.| 00000210 28 31 30 30 30 29 0d 00 a0 29 20 43 4f 28 58 29 |(1000)...) CO(X)| 00000220 3d b3 28 31 32 37 29 3a 43 4f 28 58 2b b3 28 31 |=.(127):CO(X+.(1| 00000230 30 30 29 2b 32 30 30 29 3d b3 28 31 32 37 29 0d |00)+200)=.(127).| 00000240 00 aa 2d 20 50 58 28 58 29 3d b3 28 35 30 29 2d |..- PX(X)=.(50)-| 00000250 32 35 3a 50 58 28 58 2b b3 28 31 30 30 29 2b 32 |25:PX(X+.(100)+2| 00000260 30 30 29 3d b3 28 35 30 29 2d 32 35 0d 00 b4 2d |00)=.(50)-25...-| 00000270 20 50 59 28 58 29 3d b3 28 35 30 29 2d 32 35 3a | PY(X)=.(50)-25:| 00000280 50 59 28 58 2b b3 28 31 30 30 29 2b 32 30 30 29 |PY(X+.(100)+200)| 00000290 3d b3 28 35 30 29 2d 32 35 0d 00 be 0d 20 ed 3a |=.(50)-25.... .:| 000002a0 e5 20 8d 54 72 40 0d ff |. .Tr@..| 000002a8