Home » Archimedes archive » Acorn User » AU 1996-02.adf » Regulars » StarInfo/Northcott/Nematode2

StarInfo/Northcott/Nematode2

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 1996-02.adf » Regulars
Filename: StarInfo/Northcott/Nematode2
Read OK:
File size: 033D bytes
Load address: 0000
Exec address: 0000
File contents
   10REM >Nematode
   20REM By dL 31Jul95
   30REM Downgraded to OS2+ColourTrans
   40REM By D.Northcott 06/09/95
   50
   60SYS "OS_SWINumberFromString",,"ColourTrans_SetGCOL" TO CTSG%
   70MODE122:xx=800:yy=600:IF MODE<>122 THEN MODE 21:xx=640:yy=512
   80OFF
   90s=50
  100DIM x(s-1),y(s-1)
  110REPEAT
  120 x=RND(xx*2-300)+300
  130 y=RND(yy*2-200)+200
  140 a=RND(1)*360
  150 x()=x
  160 y()=y
  170 n=0
  180 r2=RND(64)
  190 g2=RND(64)
  200 b2=RND(64)
  210 r1=255-RND(160)
  220 g1=255-RND(160)
  230 b1=255-RND(160)
  240 t=RND(100)+100
  250REPEAT
  260d=RND(1)*180-90:l=RND(10)+2:FOR i=0 TO l-1
  270IF t>31 THEN x+=SINRAD(a)*4:y+=COSRAD(a)*4:a+=d/l
  280x(n)=x:y(n)=y:k=n
  290r3=r2-r1:g3=g2-g1:b3=b2-b1
  300FOR r=31 TO 0 STEP -1
  310SYS CTSG%,(((r1+r3*r/31)<<8)+((g1+g3*r/31)<<16)+((b1+b3*r/31)<<24)),,,&100
  320IF t>31 OR (t<32 AND t>r) THEN CIRCLE FILL x(k),y(k),r
  330k-=1
  340IF k<0 k+=s
  350NEXT
  360n=(n+1) MOD s:t-=1
  370NEXT
  380UNTIL t<0
  390UNTIL 0
  400DEF FNmin(a,b)
  410IF a<b =a ELSE =b

� >Nematode
� By dL 31Jul95
#� Downgraded to OS2+ColourTrans
(� By D.Northcott 06/09/95
2
<>ș "OS_SWINumberFromString",,"ColourTrans_SetGCOL" � CTSG%
F4�122:xx=800:yy=600:� �<>122 � � 21:xx=640:yy=512
P�
Zs=50
d� x(s-1),y(s-1)
n�
x x=�(xx*2-300)+300
� y=�(yy*2-200)+200
� a=�(1)*360
�
 x()=x
�
 y()=y
� n=0
�
 r2=�(64)
�
 g2=�(64)
�
 b2=�(64)
� r1=255-�(160)
� g1=255-�(160)
� b1=255-�(160)
� t=�(100)+100
��
'd=�(1)*180-90:l=�(10)+2:� i=0 � l-1
)� t>31 � x+=��(a)*4:y+=��(a)*4:a+=d/l
x(n)=x:y(n)=y:k=n
"r3=r2-r1:g3=g2-g1:b3=b2-b1
,� r=31 � 0 � -1
6Mș CTSG%,(((r1+r3*r/31)<<8)+((g1+g3*r/31)<<16)+((b1+b3*r/31)<<24)),,,&100
@-� t>31 � (t<32 � t>r) � ȏ Ȑ x(k),y(k),r
Jk-=1
T� k<0 k+=s
^�
hn=(n+1) � s:t-=1
r�
|	� t<0
�� 0
�� �min(a,b)
�� a<b =a � =b
�
00000000  0d 00 0a 0f f4 20 3e 4e  65 6d 61 74 6f 64 65 0d  |..... >Nematode.|
00000010  00 14 13 f4 20 42 79 20  64 4c 20 33 31 4a 75 6c  |.... By dL 31Jul|
00000020  39 35 0d 00 1e 23 f4 20  44 6f 77 6e 67 72 61 64  |95...#. Downgrad|
00000030  65 64 20 74 6f 20 4f 53  32 2b 43 6f 6c 6f 75 72  |ed to OS2+Colour|
00000040  54 72 61 6e 73 0d 00 28  1d f4 20 42 79 20 44 2e  |Trans..(.. By D.|
00000050  4e 6f 72 74 68 63 6f 74  74 20 30 36 2f 30 39 2f  |Northcott 06/09/|
00000060  39 35 0d 00 32 04 0d 00  3c 3e c8 99 20 22 4f 53  |95..2...<>.. "OS|
00000070  5f 53 57 49 4e 75 6d 62  65 72 46 72 6f 6d 53 74  |_SWINumberFromSt|
00000080  72 69 6e 67 22 2c 2c 22  43 6f 6c 6f 75 72 54 72  |ring",,"ColourTr|
00000090  61 6e 73 5f 53 65 74 47  43 4f 4c 22 20 b8 20 43  |ans_SetGCOL" . C|
000000a0  54 53 47 25 0d 00 46 34  eb 31 32 32 3a 78 78 3d  |TSG%..F4.122:xx=|
000000b0  38 30 30 3a 79 79 3d 36  30 30 3a e7 20 eb 3c 3e  |800:yy=600:. .<>|
000000c0  31 32 32 20 8c 20 eb 20  32 31 3a 78 78 3d 36 34  |122 . . 21:xx=64|
000000d0  30 3a 79 79 3d 35 31 32  0d 00 50 05 87 0d 00 5a  |0:yy=512..P....Z|
000000e0  08 73 3d 35 30 0d 00 64  13 de 20 78 28 73 2d 31  |.s=50..d.. x(s-1|
000000f0  29 2c 79 28 73 2d 31 29  0d 00 6e 05 f5 0d 00 78  |),y(s-1)..n....x|
00000100  16 20 78 3d b3 28 78 78  2a 32 2d 33 30 30 29 2b  |. x=.(xx*2-300)+|
00000110  33 30 30 0d 00 82 16 20  79 3d b3 28 79 79 2a 32  |300.... y=.(yy*2|
00000120  2d 32 30 30 29 2b 32 30  30 0d 00 8c 0f 20 61 3d  |-200)+200.... a=|
00000130  b3 28 31 29 2a 33 36 30  0d 00 96 0a 20 78 28 29  |.(1)*360.... x()|
00000140  3d 78 0d 00 a0 0a 20 79  28 29 3d 79 0d 00 aa 08  |=x.... y()=y....|
00000150  20 6e 3d 30 0d 00 b4 0d  20 72 32 3d b3 28 36 34  | n=0.... r2=.(64|
00000160  29 0d 00 be 0d 20 67 32  3d b3 28 36 34 29 0d 00  |).... g2=.(64)..|
00000170  c8 0d 20 62 32 3d b3 28  36 34 29 0d 00 d2 12 20  |.. b2=.(64).... |
00000180  72 31 3d 32 35 35 2d b3  28 31 36 30 29 0d 00 dc  |r1=255-.(160)...|
00000190  12 20 67 31 3d 32 35 35  2d b3 28 31 36 30 29 0d  |. g1=255-.(160).|
000001a0  00 e6 12 20 62 31 3d 32  35 35 2d b3 28 31 36 30  |... b1=255-.(160|
000001b0  29 0d 00 f0 11 20 74 3d  b3 28 31 30 30 29 2b 31  |).... t=.(100)+1|
000001c0  30 30 0d 00 fa 05 f5 0d  01 04 27 64 3d b3 28 31  |00........'d=.(1|
000001d0  29 2a 31 38 30 2d 39 30  3a 6c 3d b3 28 31 30 29  |)*180-90:l=.(10)|
000001e0  2b 32 3a e3 20 69 3d 30  20 b8 20 6c 2d 31 0d 01  |+2:. i=0 . l-1..|
000001f0  0e 29 e7 20 74 3e 33 31  20 8c 20 78 2b 3d b5 b2  |.). t>31 . x+=..|
00000200  28 61 29 2a 34 3a 79 2b  3d 9b b2 28 61 29 2a 34  |(a)*4:y+=..(a)*4|
00000210  3a 61 2b 3d 64 2f 6c 0d  01 18 15 78 28 6e 29 3d  |:a+=d/l....x(n)=|
00000220  78 3a 79 28 6e 29 3d 79  3a 6b 3d 6e 0d 01 22 1e  |x:y(n)=y:k=n..".|
00000230  72 33 3d 72 32 2d 72 31  3a 67 33 3d 67 32 2d 67  |r3=r2-r1:g3=g2-g|
00000240  31 3a 62 33 3d 62 32 2d  62 31 0d 01 2c 13 e3 20  |1:b3=b2-b1..,.. |
00000250  72 3d 33 31 20 b8 20 30  20 88 20 2d 31 0d 01 36  |r=31 . 0 . -1..6|
00000260  4d c8 99 20 43 54 53 47  25 2c 28 28 28 72 31 2b  |M.. CTSG%,(((r1+|
00000270  72 33 2a 72 2f 33 31 29  3c 3c 38 29 2b 28 28 67  |r3*r/31)<<8)+((g|
00000280  31 2b 67 33 2a 72 2f 33  31 29 3c 3c 31 36 29 2b  |1+g3*r/31)<<16)+|
00000290  28 28 62 31 2b 62 33 2a  72 2f 33 31 29 3c 3c 32  |((b1+b3*r/31)<<2|
000002a0  34 29 29 2c 2c 2c 26 31  30 30 0d 01 40 2d e7 20  |4)),,,&100..@-. |
000002b0  74 3e 33 31 20 84 20 28  74 3c 33 32 20 80 20 74  |t>31 . (t<32 . t|
000002c0  3e 72 29 20 8c 20 c8 8f  20 c8 90 20 78 28 6b 29  |>r) . .. .. x(k)|
000002d0  2c 79 28 6b 29 2c 72 0d  01 4a 08 6b 2d 3d 31 0d  |,y(k),r..J.k-=1.|
000002e0  01 54 0e e7 20 6b 3c 30  20 6b 2b 3d 73 0d 01 5e  |.T.. k<0 k+=s..^|
000002f0  05 ed 0d 01 68 14 6e 3d  28 6e 2b 31 29 20 83 20  |....h.n=(n+1) . |
00000300  73 3a 74 2d 3d 31 0d 01  72 05 ed 0d 01 7c 09 fd  |s:t-=1..r....|..|
00000310  20 74 3c 30 0d 01 86 07  fd 20 30 0d 01 90 0f dd  | t<0..... 0.....|
00000320  20 a4 6d 69 6e 28 61 2c  62 29 0d 01 9a 11 e7 20  | .min(a,b)..... |
00000330  61 3c 62 20 3d 61 20 8b  20 3d 62 0d ff           |a<b =a . =b..|
0000033d