Home » Personal collection » Acorn tapes » Electron_User » Electron_User_tape14a_acorn_eu_1990_september.wav » Griddle

Griddle

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_tape14a_acorn_eu_1990_september.wav
Filename: Griddle
Read OK:
File size: 03AC bytes
Load address: FFFF1900
Exec address: FFFF8023
Duplicates

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

File contents
   10 REM Griddles
   20 REM by Gordon Lee
   30 REM (c) The Micro User
   40 MODE 1
   50 VDU 23,240,127,127,127,127,127,127,127,0:VDU 23,1,0;0;0;0;:VDU 19,7,6,0,0,0
   60 INPUT"Input number of colours? (2 or 3) "M%
   70 INPUT"Input size of grid  (Max. 20) "S%
   80 DIM N%(S%+1,S%+1),M%(S%+1,S%+1),C%(2)
   90 CLS:G%=0:FOR X%=1 TO S%:FOR Y%=1 TO S%:N%(X%,Y%)=1:NEXT:NEXT
  100 PROCprint:PROCchange:GOTO 100
  110 DEFPROCchange
  120 FOR X%=1 TO S%:FOR Y%=1 TO S%
  130 Z%=N%(X%-1,Y%-1)+N%(X%,Y%-1)+N%(X%+1,Y%-1)+N%(X%-1,Y%)+N%(X%+1,Y%)+N%(X%-1,Y%+1)+N%(X%,Y%+1)+N%(X%+1,Y%+1)
  140 M%(X%,Y%)=Z% MOD M%:NEXT:NEXT
  150 FOR X%=1 TO S%:FOR Y%=1 TO S%:N%(X%,Y%)=M%(X%,Y%):NEXT:NEXT
  160 ENDPROC
  170 DEFPROCprint
  180 FOR Y%=1 TO S%:FOR X%=1 TO S%
  190 Z%=N%(X%,Y%)+1
  200 COLOUR Z%:PRINTTAB(X%+5,Y%+1)CHR$(240);
  210 C%=N%(X%,Y%):C%(C%)=C%(C%)+1:NEXT:NEXT
  220 COLOUR 2:PRINTTAB(1,S%+3)"Red:";STR$(C%(0));"  Yellow:";STR$(C%(1));
  230 IF M%=3 PRINT"  Blue:";STR$(C%(2));"   Gen:";STR$(G%);"    "; ELSE PRINT"   Gen:";STR$(G%);"    ";
  240 IF (C%(0)=S%*S% OR C%(1)=S%*S% OR C%(2)=S%*S%) AND G%>0 THEN END
  250 C%(0)=0:C%(1)=0:C%(2)=0:G%=G%+1:ENDPROC

 � Griddles
 � by Gordon Lee
 � (c) The Micro User
( � 1
2J � 23,240,127,127,127,127,127,127,127,0:� 23,1,0;0;0;0;:� 19,7,6,0,0,0
<, �"Input number of colours? (2 or 3) "M%
F( �"Input size of grid  (Max. 20) "S%
P( � N%(S%+1,S%+1),M%(S%+1,S%+1),C%(2)
Z3 �:G%=0:� X%=1 � S%:� Y%=1 � S%:N%(X%,Y%)=1:�:�
d �print:�change:� �Dd@
n
 ��change
x � X%=1 � S%:� Y%=1 � S%
�o Z%=N%(X%-1,Y%-1)+N%(X%,Y%-1)+N%(X%+1,Y%-1)+N%(X%-1,Y%)+N%(X%+1,Y%)+N%(X%-1,Y%+1)+N%(X%,Y%+1)+N%(X%+1,Y%+1)
� M%(X%,Y%)=Z% � M%:�:�
�4 � X%=1 � S%:� Y%=1 � S%:N%(X%,Y%)=M%(X%,Y%):�:�
� �
� ��print
� � Y%=1 � S%:� X%=1 � S%
� Z%=N%(X%,Y%)+1
� � Z%:�X%+5,Y%+1)�(240);
�% C%=N%(X%,Y%):C%(C%)=C%(C%)+1:�:�
�7 � 2:�1,S%+3)"Red:";�(C%(0));"  Yellow:";�(C%(1));
�R � M%=3 �"  Blue:";�(C%(2));"   Gen:";�(G%);"    "; � �"   Gen:";�(G%);"    ";
�; � (C%(0)=S%*S% � C%(1)=S%*S% � C%(2)=S%*S%) � G%>0 � �
�& C%(0)=0:C%(1)=0:C%(2)=0:G%=G%+1:�
�
00000000  0d 00 0a 0f 20 f4 20 47  72 69 64 64 6c 65 73 0d  |.... . Griddles.|
00000010  00 14 14 20 f4 20 62 79  20 47 6f 72 64 6f 6e 20  |... . by Gordon |
00000020  4c 65 65 0d 00 1e 19 20  f4 20 28 63 29 20 54 68  |Lee.... . (c) Th|
00000030  65 20 4d 69 63 72 6f 20  55 73 65 72 0d 00 28 08  |e Micro User..(.|
00000040  20 eb 20 31 0d 00 32 4a  20 ef 20 32 33 2c 32 34  | . 1..2J . 23,24|
00000050  30 2c 31 32 37 2c 31 32  37 2c 31 32 37 2c 31 32  |0,127,127,127,12|
00000060  37 2c 31 32 37 2c 31 32  37 2c 31 32 37 2c 30 3a  |7,127,127,127,0:|
00000070  ef 20 32 33 2c 31 2c 30  3b 30 3b 30 3b 30 3b 3a  |. 23,1,0;0;0;0;:|
00000080  ef 20 31 39 2c 37 2c 36  2c 30 2c 30 2c 30 0d 00  |. 19,7,6,0,0,0..|
00000090  3c 2c 20 e8 22 49 6e 70  75 74 20 6e 75 6d 62 65  |<, ."Input numbe|
000000a0  72 20 6f 66 20 63 6f 6c  6f 75 72 73 3f 20 28 32  |r of colours? (2|
000000b0  20 6f 72 20 33 29 20 22  4d 25 0d 00 46 28 20 e8  | or 3) "M%..F( .|
000000c0  22 49 6e 70 75 74 20 73  69 7a 65 20 6f 66 20 67  |"Input size of g|
000000d0  72 69 64 20 20 28 4d 61  78 2e 20 32 30 29 20 22  |rid  (Max. 20) "|
000000e0  53 25 0d 00 50 28 20 de  20 4e 25 28 53 25 2b 31  |S%..P( . N%(S%+1|
000000f0  2c 53 25 2b 31 29 2c 4d  25 28 53 25 2b 31 2c 53  |,S%+1),M%(S%+1,S|
00000100  25 2b 31 29 2c 43 25 28  32 29 0d 00 5a 33 20 db  |%+1),C%(2)..Z3 .|
00000110  3a 47 25 3d 30 3a e3 20  58 25 3d 31 20 b8 20 53  |:G%=0:. X%=1 . S|
00000120  25 3a e3 20 59 25 3d 31  20 b8 20 53 25 3a 4e 25  |%:. Y%=1 . S%:N%|
00000130  28 58 25 2c 59 25 29 3d  31 3a ed 3a ed 0d 00 64  |(X%,Y%)=1:.:...d|
00000140  1a 20 f2 70 72 69 6e 74  3a f2 63 68 61 6e 67 65  |. .print:.change|
00000150  3a e5 20 8d 44 64 40 0d  00 6e 0d 20 dd f2 63 68  |:. .Dd@..n. ..ch|
00000160  61 6e 67 65 0d 00 78 1c  20 e3 20 58 25 3d 31 20  |ange..x. . X%=1 |
00000170  b8 20 53 25 3a e3 20 59  25 3d 31 20 b8 20 53 25  |. S%:. Y%=1 . S%|
00000180  0d 00 82 6f 20 5a 25 3d  4e 25 28 58 25 2d 31 2c  |...o Z%=N%(X%-1,|
00000190  59 25 2d 31 29 2b 4e 25  28 58 25 2c 59 25 2d 31  |Y%-1)+N%(X%,Y%-1|
000001a0  29 2b 4e 25 28 58 25 2b  31 2c 59 25 2d 31 29 2b  |)+N%(X%+1,Y%-1)+|
000001b0  4e 25 28 58 25 2d 31 2c  59 25 29 2b 4e 25 28 58  |N%(X%-1,Y%)+N%(X|
000001c0  25 2b 31 2c 59 25 29 2b  4e 25 28 58 25 2d 31 2c  |%+1,Y%)+N%(X%-1,|
000001d0  59 25 2b 31 29 2b 4e 25  28 58 25 2c 59 25 2b 31  |Y%+1)+N%(X%,Y%+1|
000001e0  29 2b 4e 25 28 58 25 2b  31 2c 59 25 2b 31 29 0d  |)+N%(X%+1,Y%+1).|
000001f0  00 8c 1a 20 4d 25 28 58  25 2c 59 25 29 3d 5a 25  |... M%(X%,Y%)=Z%|
00000200  20 83 20 4d 25 3a ed 3a  ed 0d 00 96 34 20 e3 20  | . M%:.:....4 . |
00000210  58 25 3d 31 20 b8 20 53  25 3a e3 20 59 25 3d 31  |X%=1 . S%:. Y%=1|
00000220  20 b8 20 53 25 3a 4e 25  28 58 25 2c 59 25 29 3d  | . S%:N%(X%,Y%)=|
00000230  4d 25 28 58 25 2c 59 25  29 3a ed 3a ed 0d 00 a0  |M%(X%,Y%):.:....|
00000240  06 20 e1 0d 00 aa 0c 20  dd f2 70 72 69 6e 74 0d  |. ..... ..print.|
00000250  00 b4 1c 20 e3 20 59 25  3d 31 20 b8 20 53 25 3a  |... . Y%=1 . S%:|
00000260  e3 20 58 25 3d 31 20 b8  20 53 25 0d 00 be 13 20  |. X%=1 . S%.... |
00000270  5a 25 3d 4e 25 28 58 25  2c 59 25 29 2b 31 0d 00  |Z%=N%(X%,Y%)+1..|
00000280  c8 1d 20 fb 20 5a 25 3a  f1 8a 58 25 2b 35 2c 59  |.. . Z%:..X%+5,Y|
00000290  25 2b 31 29 bd 28 32 34  30 29 3b 0d 00 d2 25 20  |%+1).(240);...% |
000002a0  43 25 3d 4e 25 28 58 25  2c 59 25 29 3a 43 25 28  |C%=N%(X%,Y%):C%(|
000002b0  43 25 29 3d 43 25 28 43  25 29 2b 31 3a ed 3a ed  |C%)=C%(C%)+1:.:.|
000002c0  0d 00 dc 37 20 fb 20 32  3a f1 8a 31 2c 53 25 2b  |...7 . 2:..1,S%+|
000002d0  33 29 22 52 65 64 3a 22  3b c3 28 43 25 28 30 29  |3)"Red:";.(C%(0)|
000002e0  29 3b 22 20 20 59 65 6c  6c 6f 77 3a 22 3b c3 28  |);"  Yellow:";.(|
000002f0  43 25 28 31 29 29 3b 0d  00 e6 52 20 e7 20 4d 25  |C%(1));...R . M%|
00000300  3d 33 20 f1 22 20 20 42  6c 75 65 3a 22 3b c3 28  |=3 ."  Blue:";.(|
00000310  43 25 28 32 29 29 3b 22  20 20 20 47 65 6e 3a 22  |C%(2));"   Gen:"|
00000320  3b c3 28 47 25 29 3b 22  20 20 20 20 22 3b 20 8b  |;.(G%);"    "; .|
00000330  20 f1 22 20 20 20 47 65  6e 3a 22 3b c3 28 47 25  | ."   Gen:";.(G%|
00000340  29 3b 22 20 20 20 20 22  3b 0d 00 f0 3b 20 e7 20  |);"    ";...; . |
00000350  28 43 25 28 30 29 3d 53  25 2a 53 25 20 84 20 43  |(C%(0)=S%*S% . C|
00000360  25 28 31 29 3d 53 25 2a  53 25 20 84 20 43 25 28  |%(1)=S%*S% . C%(|
00000370  32 29 3d 53 25 2a 53 25  29 20 80 20 47 25 3e 30  |2)=S%*S%) . G%>0|
00000380  20 8c 20 e0 0d 00 fa 26  20 43 25 28 30 29 3d 30  | . ....& C%(0)=0|
00000390  3a 43 25 28 31 29 3d 30  3a 43 25 28 32 29 3d 30  |:C%(1)=0:C%(2)=0|
000003a0  3a 47 25 3d 47 25 2b 31  3a e1 0d ff              |:G%=G%+1:...|
000003ac
Griddle.m0
Griddle.m1
Griddle.m2
Griddle.m4
Griddle.m5