Home » Archimedes archive » Acorn User » AU 1994-10.adf » !StarInfo_StarInfo » VanMourik/Candy

VanMourik/Candy

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 » Archimedes archive » Acorn User » AU 1994-10.adf » !StarInfo_StarInfo
Filename: VanMourik/Candy
Read OK:
File size: 0498 bytes
Load address: 0000
Exec address: 0000
File contents
   10REM >CANDY
   20REM (C) JEAN VAN MOURIK MILLCOTTAGE DERWYDD AMMANFORD DYFED SA183LQ UK  94
   40PROCMODE:DIMA%(23456),B%(23456):F%=4:IF MO%=1 F%=2
   50PRINT" CANDY CELLULAR AUTOMATON":PRINT:PRINT"CLICK MOUSE"
   60FORX=1TO8:READ C,D,E:COLOUR X,C,D,E:NEXT
   70REPEAT:MOUSE A,B,C:B=RND:UNTIL C:CLS:N%=12
   80FORX=1TON%:A%(X)=RND(1280):B%(X)=RND(1024):NEXT:H%=1280:V%=1024
   90E%=H%+F%:G%=H%-F%:I%=V%+F%:J%=V%-F%
  100 
  110REM MAIN LOOP
  120REPEAT:P%=RND(N%):X%=A%(P%):Y%=B%(P%):A%=(X%+E%)MODH%:B%=(X%+G%)MODH%:C%=(Y%+I%)MODV%:D%=(Y%+J%)MODV%:A%(P%)=A%(N%):B%(P%)=B%(N%):N%-=1
  130IFPOINT(A%,C%)=0 N%+=1:A%(N%)=A%:B%(N%)=C%:GCOL1:POINTA%,C%
  140IFPOINT(X%,C%)=0 N%+=1:A%(N%)=X%:B%(N%)=C%:GCOL2:POINTX%,C%
  150IFPOINT(B%,C%)=0 N%+=1:A%(N%)=B%:B%(N%)=C%:GCOL3:POINTB%,C%
  160IFPOINT(B%,Y%)=0 N%+=1:A%(N%)=B%:B%(N%)=Y%:GCOL4:POINTB%,Y%
  170IFPOINT(B%,D%)=0 N%+=1:A%(N%)=B%:B%(N%)=D%:GCOL5:POINTB%,D%
  180IFPOINT(X%,D%)=0 N%+=1:A%(N%)=X%:B%(N%)=D%:GCOL6:POINTX%,D%
  190IFPOINT(A%,D%)=0 N%+=1:A%(N%)=A%:B%(N%)=D%:GCOL7:POINTA%,D%
  200IFPOINT(A%,Y%)=0 N%+=1:A%(N%)=A%:B%(N%)=Y%:GCOL8:POINTA%,Y%
  210UNTIL N%<8:END
  220 
  230REM PALETTE DATA
  240DATA 192,0,240,96,96,240,0,192,240,48,240,144,144,240,48,240,192,0,240,96,96,240,0,192
  250 
  260REM SUITABLE MODE DETECTION ROUTINE
  270DEFPROCMODE LOCAL C%,F%
  280SYS "OS_CheckModeValid",20 TO ;F%
  290C%=(F%AND%0010)>>1
  300IF NOT (C%=1) MODE 20:MO%=1 ELSE MODE 9:MO%=0
  310OFF:ENDPROC

� >CANDY
L� (C) JEAN VAN MOURIK MILLCOTTAGE DERWYDD AMMANFORD DYFED SA183LQ UK  94
(0�MODE:�A%(23456),B%(23456):F%=4:� MO%=1 F%=2
21�" CANDY CELLULAR AUTOMATON":�:�"CLICK MOUSE"
<�X=1�8:� C,D,E:� X,C,D,E:�
F�:ȗ A,B,C:B=�:� C:�:N%=12
P9�X=1�N%:A%(X)=�(1280):B%(X)=�(1024):�:H%=1280:V%=1024
Z'E%=H%+F%:G%=H%-F%:I%=V%+F%:J%=V%-F%
d 
n� MAIN LOOP
x|�:P%=�(N%):X%=A%(P%):Y%=B%(P%):A%=(X%+E%)�H%:B%=(X%+G%)�H%:C%=(Y%+I%)�V%:D%=(Y%+J%)�V%:A%(P%)=A%(N%):B%(P%)=B%(N%):N%-=1
�3�A%,C%)=0 N%+=1:A%(N%)=A%:B%(N%)=C%:�1:ȒA%,C%
�3�X%,C%)=0 N%+=1:A%(N%)=X%:B%(N%)=C%:�2:ȒX%,C%
�3�B%,C%)=0 N%+=1:A%(N%)=B%:B%(N%)=C%:�3:ȒB%,C%
�3�B%,Y%)=0 N%+=1:A%(N%)=B%:B%(N%)=Y%:�4:ȒB%,Y%
�3�B%,D%)=0 N%+=1:A%(N%)=B%:B%(N%)=D%:�5:ȒB%,D%
�3�X%,D%)=0 N%+=1:A%(N%)=X%:B%(N%)=D%:�6:ȒX%,D%
�3�A%,D%)=0 N%+=1:A%(N%)=A%:B%(N%)=D%:�7:ȒA%,D%
�3�A%,Y%)=0 N%+=1:A%(N%)=A%:B%(N%)=Y%:�8:ȒA%,Y%
�� N%<8:�
� 
�� PALETTE DATA
�W� 192,0,240,96,96,240,0,192,240,48,240,144,144,240,48,240,192,0,240,96,96,240,0,192
� 
%� SUITABLE MODE DETECTION ROUTINE
��MODE � C%,F%
#ș "OS_CheckModeValid",20 � ;F%
"C%=(F%�%0010)>>1
,%� � (C%=1) � 20:MO%=1 � � 9:MO%=0
6�:�
�
00000000  0d 00 0a 0c f4 20 3e 43  41 4e 44 59 0d 00 14 4c  |..... >CANDY...L|
00000010  f4 20 28 43 29 20 4a 45  41 4e 20 56 41 4e 20 4d  |. (C) JEAN VAN M|
00000020  4f 55 52 49 4b 20 4d 49  4c 4c 43 4f 54 54 41 47  |OURIK MILLCOTTAG|
00000030  45 20 44 45 52 57 59 44  44 20 41 4d 4d 41 4e 46  |E DERWYDD AMMANF|
00000040  4f 52 44 20 44 59 46 45  44 20 53 41 31 38 33 4c  |ORD DYFED SA183L|
00000050  51 20 55 4b 20 20 39 34  0d 00 28 30 f2 4d 4f 44  |Q UK  94..(0.MOD|
00000060  45 3a de 41 25 28 32 33  34 35 36 29 2c 42 25 28  |E:.A%(23456),B%(|
00000070  32 33 34 35 36 29 3a 46  25 3d 34 3a e7 20 4d 4f  |23456):F%=4:. MO|
00000080  25 3d 31 20 46 25 3d 32  0d 00 32 31 f1 22 20 43  |%=1 F%=2..21." C|
00000090  41 4e 44 59 20 43 45 4c  4c 55 4c 41 52 20 41 55  |ANDY CELLULAR AU|
000000a0  54 4f 4d 41 54 4f 4e 22  3a f1 3a f1 22 43 4c 49  |TOMATON":.:."CLI|
000000b0  43 4b 20 4d 4f 55 53 45  22 0d 00 3c 1e e3 58 3d  |CK MOUSE"..<..X=|
000000c0  31 b8 38 3a f3 20 43 2c  44 2c 45 3a fb 20 58 2c  |1.8:. C,D,E:. X,|
000000d0  43 2c 44 2c 45 3a ed 0d  00 46 1e f5 3a c8 97 20  |C,D,E:...F..:.. |
000000e0  41 2c 42 2c 43 3a 42 3d  b3 3a fd 20 43 3a db 3a  |A,B,C:B=.:. C:.:|
000000f0  4e 25 3d 31 32 0d 00 50  39 e3 58 3d 31 b8 4e 25  |N%=12..P9.X=1.N%|
00000100  3a 41 25 28 58 29 3d b3  28 31 32 38 30 29 3a 42  |:A%(X)=.(1280):B|
00000110  25 28 58 29 3d b3 28 31  30 32 34 29 3a ed 3a 48  |%(X)=.(1024):.:H|
00000120  25 3d 31 32 38 30 3a 56  25 3d 31 30 32 34 0d 00  |%=1280:V%=1024..|
00000130  5a 27 45 25 3d 48 25 2b  46 25 3a 47 25 3d 48 25  |Z'E%=H%+F%:G%=H%|
00000140  2d 46 25 3a 49 25 3d 56  25 2b 46 25 3a 4a 25 3d  |-F%:I%=V%+F%:J%=|
00000150  56 25 2d 46 25 0d 00 64  05 20 0d 00 6e 0f f4 20  |V%-F%..d. ..n.. |
00000160  4d 41 49 4e 20 4c 4f 4f  50 0d 00 78 7c f5 3a 50  |MAIN LOOP..x|.:P|
00000170  25 3d b3 28 4e 25 29 3a  58 25 3d 41 25 28 50 25  |%=.(N%):X%=A%(P%|
00000180  29 3a 59 25 3d 42 25 28  50 25 29 3a 41 25 3d 28  |):Y%=B%(P%):A%=(|
00000190  58 25 2b 45 25 29 83 48  25 3a 42 25 3d 28 58 25  |X%+E%).H%:B%=(X%|
000001a0  2b 47 25 29 83 48 25 3a  43 25 3d 28 59 25 2b 49  |+G%).H%:C%=(Y%+I|
000001b0  25 29 83 56 25 3a 44 25  3d 28 59 25 2b 4a 25 29  |%).V%:D%=(Y%+J%)|
000001c0  83 56 25 3a 41 25 28 50  25 29 3d 41 25 28 4e 25  |.V%:A%(P%)=A%(N%|
000001d0  29 3a 42 25 28 50 25 29  3d 42 25 28 4e 25 29 3a  |):B%(P%)=B%(N%):|
000001e0  4e 25 2d 3d 31 0d 00 82  33 e7 b0 41 25 2c 43 25  |N%-=1...3..A%,C%|
000001f0  29 3d 30 20 4e 25 2b 3d  31 3a 41 25 28 4e 25 29  |)=0 N%+=1:A%(N%)|
00000200  3d 41 25 3a 42 25 28 4e  25 29 3d 43 25 3a e6 31  |=A%:B%(N%)=C%:.1|
00000210  3a c8 92 41 25 2c 43 25  0d 00 8c 33 e7 b0 58 25  |:..A%,C%...3..X%|
00000220  2c 43 25 29 3d 30 20 4e  25 2b 3d 31 3a 41 25 28  |,C%)=0 N%+=1:A%(|
00000230  4e 25 29 3d 58 25 3a 42  25 28 4e 25 29 3d 43 25  |N%)=X%:B%(N%)=C%|
00000240  3a e6 32 3a c8 92 58 25  2c 43 25 0d 00 96 33 e7  |:.2:..X%,C%...3.|
00000250  b0 42 25 2c 43 25 29 3d  30 20 4e 25 2b 3d 31 3a  |.B%,C%)=0 N%+=1:|
00000260  41 25 28 4e 25 29 3d 42  25 3a 42 25 28 4e 25 29  |A%(N%)=B%:B%(N%)|
00000270  3d 43 25 3a e6 33 3a c8  92 42 25 2c 43 25 0d 00  |=C%:.3:..B%,C%..|
00000280  a0 33 e7 b0 42 25 2c 59  25 29 3d 30 20 4e 25 2b  |.3..B%,Y%)=0 N%+|
00000290  3d 31 3a 41 25 28 4e 25  29 3d 42 25 3a 42 25 28  |=1:A%(N%)=B%:B%(|
000002a0  4e 25 29 3d 59 25 3a e6  34 3a c8 92 42 25 2c 59  |N%)=Y%:.4:..B%,Y|
000002b0  25 0d 00 aa 33 e7 b0 42  25 2c 44 25 29 3d 30 20  |%...3..B%,D%)=0 |
000002c0  4e 25 2b 3d 31 3a 41 25  28 4e 25 29 3d 42 25 3a  |N%+=1:A%(N%)=B%:|
000002d0  42 25 28 4e 25 29 3d 44  25 3a e6 35 3a c8 92 42  |B%(N%)=D%:.5:..B|
000002e0  25 2c 44 25 0d 00 b4 33  e7 b0 58 25 2c 44 25 29  |%,D%...3..X%,D%)|
000002f0  3d 30 20 4e 25 2b 3d 31  3a 41 25 28 4e 25 29 3d  |=0 N%+=1:A%(N%)=|
00000300  58 25 3a 42 25 28 4e 25  29 3d 44 25 3a e6 36 3a  |X%:B%(N%)=D%:.6:|
00000310  c8 92 58 25 2c 44 25 0d  00 be 33 e7 b0 41 25 2c  |..X%,D%...3..A%,|
00000320  44 25 29 3d 30 20 4e 25  2b 3d 31 3a 41 25 28 4e  |D%)=0 N%+=1:A%(N|
00000330  25 29 3d 41 25 3a 42 25  28 4e 25 29 3d 44 25 3a  |%)=A%:B%(N%)=D%:|
00000340  e6 37 3a c8 92 41 25 2c  44 25 0d 00 c8 33 e7 b0  |.7:..A%,D%...3..|
00000350  41 25 2c 59 25 29 3d 30  20 4e 25 2b 3d 31 3a 41  |A%,Y%)=0 N%+=1:A|
00000360  25 28 4e 25 29 3d 41 25  3a 42 25 28 4e 25 29 3d  |%(N%)=A%:B%(N%)=|
00000370  59 25 3a e6 38 3a c8 92  41 25 2c 59 25 0d 00 d2  |Y%:.8:..A%,Y%...|
00000380  0c fd 20 4e 25 3c 38 3a  e0 0d 00 dc 05 20 0d 00  |.. N%<8:..... ..|
00000390  e6 12 f4 20 50 41 4c 45  54 54 45 20 44 41 54 41  |... PALETTE DATA|
000003a0  0d 00 f0 57 dc 20 31 39  32 2c 30 2c 32 34 30 2c  |...W. 192,0,240,|
000003b0  39 36 2c 39 36 2c 32 34  30 2c 30 2c 31 39 32 2c  |96,96,240,0,192,|
000003c0  32 34 30 2c 34 38 2c 32  34 30 2c 31 34 34 2c 31  |240,48,240,144,1|
000003d0  34 34 2c 32 34 30 2c 34  38 2c 32 34 30 2c 31 39  |44,240,48,240,19|
000003e0  32 2c 30 2c 32 34 30 2c  39 36 2c 39 36 2c 32 34  |2,0,240,96,96,24|
000003f0  30 2c 30 2c 31 39 32 0d  00 fa 05 20 0d 01 04 25  |0,0,192.... ...%|
00000400  f4 20 53 55 49 54 41 42  4c 45 20 4d 4f 44 45 20  |. SUITABLE MODE |
00000410  44 45 54 45 43 54 49 4f  4e 20 52 4f 55 54 49 4e  |DETECTION ROUTIN|
00000420  45 0d 01 0e 12 dd f2 4d  4f 44 45 20 ea 20 43 25  |E......MODE . C%|
00000430  2c 46 25 0d 01 18 23 c8  99 20 22 4f 53 5f 43 68  |,F%...#.. "OS_Ch|
00000440  65 63 6b 4d 6f 64 65 56  61 6c 69 64 22 2c 32 30  |eckModeValid",20|
00000450  20 b8 20 3b 46 25 0d 01  22 14 43 25 3d 28 46 25  | . ;F%..".C%=(F%|
00000460  80 25 30 30 31 30 29 3e  3e 31 0d 01 2c 25 e7 20  |.%0010)>>1..,%. |
00000470  ac 20 28 43 25 3d 31 29  20 eb 20 32 30 3a 4d 4f  |. (C%=1) . 20:MO|
00000480  25 3d 31 20 8b 20 eb 20  39 3a 4d 4f 25 3d 30 0d  |%=1 . . 9:MO%=0.|
00000490  01 36 07 87 3a e1 0d ff                           |.6..:...|
00000498