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) Px()=-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