Home » Recent acquisitions » Acorn ADFS disks » adfs_AcornUser_199312.adf » !StarInfo_StarInfo » Vibe/Ooze

Vibe/Ooze

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_199312.adf » !StarInfo_StarInfo
Filename: Vibe/Ooze
Read OK:
File size: 0573 bytes
Load address: 0000
Exec address: 0000
File contents
   10REM    >Ooze
   20REM By  Jan Vibe
   30REM For 32-bit machines
   40REM (c) BAU December 1993
   50:
   60MODE 15:OFF
   70DIM x(15),y(15),z(15),r(15),g(15),b(15)
   80x()=-100
   90SYS "OS_SWINumberFromString",,"ColourTrans_SetGCOL" TO gcol
  100x1 =RND(768)+256
  110y1 =RND(512)+256
  120dx1=RND(16)*SGNRND
  130dy1=RND(16)*SGNRND
  140x2 =RND(768)+256
  150y2 =RND(512)+256
  160dx2=RND(16)*SGNRND
  170dy2=RND(16)*SGNRND
  180r  =RND(360)
  190g  =RND(360)
  200b  =RND(360)
  210a  =0
  220ON ERROR PROCerror
  230REPEAT
  240 IF x1+dx1<256 OR x1+dx1>1024 dx1=RND(16)*SGN(-dx1)
  250 IF y1+dy1<256 OR y1+dy1>768 dy1=RND(16)*SGN(-dy1)
  260 x1+=dx1
  270 y1+=dy1
  280 IF x2<x1 AND dx2<24  dx2+=1
  290 IF x2>x1 AND dx2>-24 dx2-=1
  300 IF y2<y1 AND dy2<24  dy2+=1
  310 IF y2>y1 AND dy2>-24 dy2-=1
  320 x2+=dx2
  330 y2+=dy2
  340 a=(a+10)MOD360
  350 r=(r+RND(12))MOD360
  360 g=(g+RND(12))MOD360
  370 b=(b+RND(12))MOD360
  380 FOR i=2 TO 15
  390  x(i-1)=x(i)
  400  y(i-1)=y(i)
  410  z(i-1)=z(i)
  420  r(i-1)=r(i)
  430  g(i-1)=g(i)
  440  b(i-1)=b(i)
  450 NEXT
  460 x(15)=x2
  470 y(15)=y2
  480 z(15)=(1+SINRADa)+2
  490 r(15)=(1+SINRADr)/2
  500 g(15)=(1+SINRADg)/2
  510 b(15)=(1+SINRADb)/2
  520 FOR i=1 TO 15
  530  rr=255*(1-i/15*r(i))<<8
  540  gg=255*(1-i/15*g(i))<<16
  550  bb=255*(1-i/15*b(i))<<24
  560  SYS gcol,bb OR gg OR rr,,,&100,0
  570  CIRCLE FILL x(i),y(i),i*z(i)
  580 NEXT
  590UNTIL0
  600:
  610DEF PROCerror
  620ON ERROR OFF
  630FOR i=15 TO 1 STEP -1
  640 FOR j=i TO 15
  650  rr=255*(1-i/15*r(j))<<8
  660  gg=255*(1-i/15*g(j))<<16
  670  bb=255*(1-i/15*b(j))<<24
  680  SYS gcol,bb OR gg OR rr,,,&100,0
  690  CIRCLE FILL x(j),y(j),i*z(j)
  700 NEXT
  710NEXT
  720END

�    >Ooze
� By  Jan Vibe
� For 32-bit machines
(� (c) BAU December 1993
2:
<
� 15:�
F)� x(15),y(15),z(15),r(15),g(15),b(15)
Px()=-100
Z=ș "OS_SWINumberFromString",,"ColourTrans_SetGCOL" � gcol
dx1 =�(768)+256
ny1 =�(512)+256
xdx1=�(16)*��
�dy1=�(16)*��
�x2 =�(768)+256
�y2 =�(512)+256
�dx2=�(16)*��
�dy2=�(16)*��
�r  =�(360)
�g  =�(360)
�b  =�(360)
�	a  =0
�� � �error
��
�1 � x1+dx1<256 � x1+dx1>1024 dx1=�(16)*�(-dx1)
�0 � y1+dy1<256 � y1+dy1>768 dy1=�(16)*�(-dy1)
 x1+=dx1
 y1+=dy1
 � x2<x1 � dx2<24  dx2+=1
" � x2>x1 � dx2>-24 dx2-=1
, � y2<y1 � dy2<24  dy2+=1
6 � y2>y1 � dy2>-24 dy2-=1
@ x2+=dx2
J y2+=dy2
T a=(a+10)�360
^ r=(r+�(12))�360
h g=(g+�(12))�360
r b=(b+�(12))�360
| � i=2 � 15
�  x(i-1)=x(i)
�  y(i-1)=y(i)
�  z(i-1)=z(i)
�  r(i-1)=r(i)
�  g(i-1)=g(i)
�  b(i-1)=b(i)
� �
�
 x(15)=x2
�
 y(15)=y2
� z(15)=(1+��a)+2
� r(15)=(1+��r)/2
� g(15)=(1+��g)/2
� b(15)=(1+��b)/2
 � i=1 � 15
  rr=255*(1-i/15*r(i))<<8
  gg=255*(1-i/15*g(i))<<16
&  bb=255*(1-i/15*b(i))<<24
0#  ș gcol,bb � gg � rr,,,&100,0
:  ȏ Ȑ x(i),y(i),i*z(i)
D �
N�0
X:
b� �error
l	� � �
v� i=15 � 1 � -1
� � j=i � 15
�  rr=255*(1-i/15*r(j))<<8
�  gg=255*(1-i/15*g(j))<<16
�  bb=255*(1-i/15*b(j))<<24
�#  ș gcol,bb � gg � rr,,,&100,0
�  ȏ Ȑ x(j),y(j),i*z(j)
� �
��
��
�
00000000  0d 00 0a 0e f4 20 20 20  20 3e 4f 6f 7a 65 0d 00  |.....    >Ooze..|
00000010  14 12 f4 20 42 79 20 20  4a 61 6e 20 56 69 62 65  |... By  Jan Vibe|
00000020  0d 00 1e 19 f4 20 46 6f  72 20 33 32 2d 62 69 74  |..... For 32-bit|
00000030  20 6d 61 63 68 69 6e 65  73 0d 00 28 1b f4 20 28  | machines..(.. (|
00000040  63 29 20 42 41 55 20 44  65 63 65 6d 62 65 72 20  |c) BAU December |
00000050  31 39 39 33 0d 00 32 05  3a 0d 00 3c 0a eb 20 31  |1993..2.:..<.. 1|
00000060  35 3a 87 0d 00 46 29 de  20 78 28 31 35 29 2c 79  |5:...F). x(15),y|
00000070  28 31 35 29 2c 7a 28 31  35 29 2c 72 28 31 35 29  |(15),z(15),r(15)|
00000080  2c 67 28 31 35 29 2c 62  28 31 35 29 0d 00 50 0c  |,g(15),b(15)..P.|
00000090  78 28 29 3d 2d 31 30 30  0d 00 5a 3d c8 99 20 22  |x()=-100..Z=.. "|
000000a0  4f 53 5f 53 57 49 4e 75  6d 62 65 72 46 72 6f 6d  |OS_SWINumberFrom|
000000b0  53 74 72 69 6e 67 22 2c  2c 22 43 6f 6c 6f 75 72  |String",,"Colour|
000000c0  54 72 61 6e 73 5f 53 65  74 47 43 4f 4c 22 20 b8  |Trans_SetGCOL" .|
000000d0  20 67 63 6f 6c 0d 00 64  12 78 31 20 3d b3 28 37  | gcol..d.x1 =.(7|
000000e0  36 38 29 2b 32 35 36 0d  00 6e 12 79 31 20 3d b3  |68)+256..n.y1 =.|
000000f0  28 35 31 32 29 2b 32 35  36 0d 00 78 10 64 78 31  |(512)+256..x.dx1|
00000100  3d b3 28 31 36 29 2a b4  b3 0d 00 82 10 64 79 31  |=.(16)*......dy1|
00000110  3d b3 28 31 36 29 2a b4  b3 0d 00 8c 12 78 32 20  |=.(16)*......x2 |
00000120  3d b3 28 37 36 38 29 2b  32 35 36 0d 00 96 12 79  |=.(768)+256....y|
00000130  32 20 3d b3 28 35 31 32  29 2b 32 35 36 0d 00 a0  |2 =.(512)+256...|
00000140  10 64 78 32 3d b3 28 31  36 29 2a b4 b3 0d 00 aa  |.dx2=.(16)*.....|
00000150  10 64 79 32 3d b3 28 31  36 29 2a b4 b3 0d 00 b4  |.dy2=.(16)*.....|
00000160  0e 72 20 20 3d b3 28 33  36 30 29 0d 00 be 0e 67  |.r  =.(360)....g|
00000170  20 20 3d b3 28 33 36 30  29 0d 00 c8 0e 62 20 20  |  =.(360)....b  |
00000180  3d b3 28 33 36 30 29 0d  00 d2 09 61 20 20 3d 30  |=.(360)....a  =0|
00000190  0d 00 dc 0e ee 20 85 20  f2 65 72 72 6f 72 0d 00  |..... . .error..|
000001a0  e6 05 f5 0d 00 f0 31 20  e7 20 78 31 2b 64 78 31  |......1 . x1+dx1|
000001b0  3c 32 35 36 20 84 20 78  31 2b 64 78 31 3e 31 30  |<256 . x1+dx1>10|
000001c0  32 34 20 64 78 31 3d b3  28 31 36 29 2a b4 28 2d  |24 dx1=.(16)*.(-|
000001d0  64 78 31 29 0d 00 fa 30  20 e7 20 79 31 2b 64 79  |dx1)...0 . y1+dy|
000001e0  31 3c 32 35 36 20 84 20  79 31 2b 64 79 31 3e 37  |1<256 . y1+dy1>7|
000001f0  36 38 20 64 79 31 3d b3  28 31 36 29 2a b4 28 2d  |68 dy1=.(16)*.(-|
00000200  64 79 31 29 0d 01 04 0c  20 78 31 2b 3d 64 78 31  |dy1).... x1+=dx1|
00000210  0d 01 0e 0c 20 79 31 2b  3d 64 79 31 0d 01 18 1d  |.... y1+=dy1....|
00000220  20 e7 20 78 32 3c 78 31  20 80 20 64 78 32 3c 32  | . x2<x1 . dx2<2|
00000230  34 20 20 64 78 32 2b 3d  31 0d 01 22 1d 20 e7 20  |4  dx2+=1..". . |
00000240  78 32 3e 78 31 20 80 20  64 78 32 3e 2d 32 34 20  |x2>x1 . dx2>-24 |
00000250  64 78 32 2d 3d 31 0d 01  2c 1d 20 e7 20 79 32 3c  |dx2-=1..,. . y2<|
00000260  79 31 20 80 20 64 79 32  3c 32 34 20 20 64 79 32  |y1 . dy2<24  dy2|
00000270  2b 3d 31 0d 01 36 1d 20  e7 20 79 32 3e 79 31 20  |+=1..6. . y2>y1 |
00000280  80 20 64 79 32 3e 2d 32  34 20 64 79 32 2d 3d 31  |. dy2>-24 dy2-=1|
00000290  0d 01 40 0c 20 78 32 2b  3d 64 78 32 0d 01 4a 0c  |..@. x2+=dx2..J.|
000002a0  20 79 32 2b 3d 64 79 32  0d 01 54 11 20 61 3d 28  | y2+=dy2..T. a=(|
000002b0  61 2b 31 30 29 83 33 36  30 0d 01 5e 14 20 72 3d  |a+10).360..^. r=|
000002c0  28 72 2b b3 28 31 32 29  29 83 33 36 30 0d 01 68  |(r+.(12)).360..h|
000002d0  14 20 67 3d 28 67 2b b3  28 31 32 29 29 83 33 36  |. g=(g+.(12)).36|
000002e0  30 0d 01 72 14 20 62 3d  28 62 2b b3 28 31 32 29  |0..r. b=(b+.(12)|
000002f0  29 83 33 36 30 0d 01 7c  0f 20 e3 20 69 3d 32 20  |).360..|. . i=2 |
00000300  b8 20 31 35 0d 01 86 11  20 20 78 28 69 2d 31 29  |. 15....  x(i-1)|
00000310  3d 78 28 69 29 0d 01 90  11 20 20 79 28 69 2d 31  |=x(i)....  y(i-1|
00000320  29 3d 79 28 69 29 0d 01  9a 11 20 20 7a 28 69 2d  |)=y(i)....  z(i-|
00000330  31 29 3d 7a 28 69 29 0d  01 a4 11 20 20 72 28 69  |1)=z(i)....  r(i|
00000340  2d 31 29 3d 72 28 69 29  0d 01 ae 11 20 20 67 28  |-1)=r(i)....  g(|
00000350  69 2d 31 29 3d 67 28 69  29 0d 01 b8 11 20 20 62  |i-1)=g(i)....  b|
00000360  28 69 2d 31 29 3d 62 28  69 29 0d 01 c2 06 20 ed  |(i-1)=b(i).... .|
00000370  0d 01 cc 0d 20 78 28 31  35 29 3d 78 32 0d 01 d6  |.... x(15)=x2...|
00000380  0d 20 79 28 31 35 29 3d  79 32 0d 01 e0 14 20 7a  |. y(15)=y2.... z|
00000390  28 31 35 29 3d 28 31 2b  b5 b2 61 29 2b 32 0d 01  |(15)=(1+..a)+2..|
000003a0  ea 14 20 72 28 31 35 29  3d 28 31 2b b5 b2 72 29  |.. r(15)=(1+..r)|
000003b0  2f 32 0d 01 f4 14 20 67  28 31 35 29 3d 28 31 2b  |/2.... g(15)=(1+|
000003c0  b5 b2 67 29 2f 32 0d 01  fe 14 20 62 28 31 35 29  |..g)/2.... b(15)|
000003d0  3d 28 31 2b b5 b2 62 29  2f 32 0d 02 08 0f 20 e3  |=(1+..b)/2.... .|
000003e0  20 69 3d 31 20 b8 20 31  35 0d 02 12 1d 20 20 72  | i=1 . 15....  r|
000003f0  72 3d 32 35 35 2a 28 31  2d 69 2f 31 35 2a 72 28  |r=255*(1-i/15*r(|
00000400  69 29 29 3c 3c 38 0d 02  1c 1e 20 20 67 67 3d 32  |i))<<8....  gg=2|
00000410  35 35 2a 28 31 2d 69 2f  31 35 2a 67 28 69 29 29  |55*(1-i/15*g(i))|
00000420  3c 3c 31 36 0d 02 26 1e  20 20 62 62 3d 32 35 35  |<<16..&.  bb=255|
00000430  2a 28 31 2d 69 2f 31 35  2a 62 28 69 29 29 3c 3c  |*(1-i/15*b(i))<<|
00000440  32 34 0d 02 30 23 20 20  c8 99 20 67 63 6f 6c 2c  |24..0#  .. gcol,|
00000450  62 62 20 84 20 67 67 20  84 20 72 72 2c 2c 2c 26  |bb . gg . rr,,,&|
00000460  31 30 30 2c 30 0d 02 3a  1c 20 20 c8 8f 20 c8 90  |100,0..:.  .. ..|
00000470  20 78 28 69 29 2c 79 28  69 29 2c 69 2a 7a 28 69  | x(i),y(i),i*z(i|
00000480  29 0d 02 44 06 20 ed 0d  02 4e 06 fd 30 0d 02 58  |)..D. ...N..0..X|
00000490  05 3a 0d 02 62 0c dd 20  f2 65 72 72 6f 72 0d 02  |.:..b.. .error..|
000004a0  6c 09 ee 20 85 20 87 0d  02 76 13 e3 20 69 3d 31  |l.. . ...v.. i=1|
000004b0  35 20 b8 20 31 20 88 20  2d 31 0d 02 80 0f 20 e3  |5 . 1 . -1.... .|
000004c0  20 6a 3d 69 20 b8 20 31  35 0d 02 8a 1d 20 20 72  | j=i . 15....  r|
000004d0  72 3d 32 35 35 2a 28 31  2d 69 2f 31 35 2a 72 28  |r=255*(1-i/15*r(|
000004e0  6a 29 29 3c 3c 38 0d 02  94 1e 20 20 67 67 3d 32  |j))<<8....  gg=2|
000004f0  35 35 2a 28 31 2d 69 2f  31 35 2a 67 28 6a 29 29  |55*(1-i/15*g(j))|
00000500  3c 3c 31 36 0d 02 9e 1e  20 20 62 62 3d 32 35 35  |<<16....  bb=255|
00000510  2a 28 31 2d 69 2f 31 35  2a 62 28 6a 29 29 3c 3c  |*(1-i/15*b(j))<<|
00000520  32 34 0d 02 a8 23 20 20  c8 99 20 67 63 6f 6c 2c  |24...#  .. gcol,|
00000530  62 62 20 84 20 67 67 20  84 20 72 72 2c 2c 2c 26  |bb . gg . rr,,,&|
00000540  31 30 30 2c 30 0d 02 b2  1c 20 20 c8 8f 20 c8 90  |100,0....  .. ..|
00000550  20 78 28 6a 29 2c 79 28  6a 29 2c 69 2a 7a 28 6a  | x(j),y(j),i*z(j|
00000560  29 0d 02 bc 06 20 ed 0d  02 c6 05 ed 0d 02 d0 05  |).... ..........|
00000570  e0 0d ff                                          |...|
00000573