Home » Archimedes archive » Acorn User » AU 1994-06.adf » !StarInfo_StarInfo » Vibe/Tekno

Vibe/Tekno

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-06.adf » !StarInfo_StarInfo
Filename: Vibe/Tekno
Read OK:
File size: 0572 bytes
Load address: 0000
Exec address: 0000
File contents
   10REM >Tekno
   20REM by Jan Vibe
   30
   40MODE 137:MODE 9
   50DIM SPR &20000
   60K%=4
   70DIM BX%(K%),BY%(K%),BR%(K%)
   80SPR!0=&1FFFF
   90SPR!4=0
  100SPR!8=16
  110SPR!12=16
  120S1%=1
  130S2%=2
  140SYS "OS_SpriteOp",256+15,SPR,"BGR",0,320,256,9
  150SYS "OS_SpriteOp",256+15,SPR,"BAL",0,320,256,9
  160SYS "OS_SpriteOp",256+29,SPR,"BAL"
  170SYS "OS_SpriteOp",256+61,SPR,"BAL",0
  180GCOL 0
  190RECTANGLE FILL 0,0,1279,1023
  200SYS "OS_SpriteOp",256+61,SPR,0,0
  210FOR N%=8 TO 15
  220 COLOUR N%,RND(255),RND(255),RND(255)
  230NEXT
  240ON ERROR PROCdone:END
  250REPEAT
  260 SYS "OS_SpriteOp",256+60,SPR,"BGR",0
  270 MOVE 0,0
  280 MOVE 1279,1023
  290 PLOT &BD,4,0
  300 GCOL RND(15)
  310 W%=RND(49)+15
  320 H%=RND(49)+15
  330 RECTANGLE FILL RND(128)-W%,RND(1024)-H%,2*W%,2*H%
  340 SYS "OS_SpriteOp",256+60,SPR,0,0
  350 SYS "OS_SpriteOp",256+60,SPR,"BAL",0
  360 MOVE 0,0
  370 MOVE 1279,1023
  380 PLOT &BD,-4,0
  390 GCOL RND(15)
  400 W%=RND(49)+15
  410 H%=RND(49)+15
  420 RECTANGLE FILL 1152+RND(128)-W%,RND(1024)-H%,2*W%,2*H%
  430 SYS "OS_SpriteOp",256+61,SPR,"BAL",0
  440 MOVE 0,0
  450 MOVE 1279,1023
  460 PLOT &BD,0,4
  470 GCOL 3,15
  480 FOR N%=1 TO K%
  490  BY%(N%)+=4
  500  IF BY%(N%)>BR%(N%) THEN
  510   BX%(N%)=RND(1280)
  520   BR%(N%)=RND(109)+51
  530   BY%(N%)=-BR%(N%)
  540  ENDIF
  550  W%=SQR(BR%(N%)^2-BY%(N%)^2)
  560  LINE BX%(N%)-W%,0,BX%(N%)+W%,0
  570 NEXT
  580 SYS "OS_SpriteOp",256+61,SPR,0,0
  590 SYS 6,112,S1%
  600 SYS 6,113,S2%
  610 WAIT
  620 CLS
  630 SWAP S1%,S2%
  640 SYS "OS_SpriteOp",256+34,SPR,"BGR",0,0,0
  650 SYS "OS_SpriteOp",256+34,SPR,"BAL",0,0,8
  660UNTIL FALSE
  670
  680DEF PROCdone
  690MODE12
  700REPORT
  710PRINT" at line "STR$ERL
  720ON
  730ENDPROC

� >Tekno
� by Jan Vibe

(
� 137:� 9
2� SPR &20000
<K%=4
F� BX%(K%),BY%(K%),BR%(K%)
PSPR!0=&1FFFF
ZSPR!4=0
dSPR!8=16
n
SPR!12=16
x	S1%=1
�	S2%=2
�1ș "OS_SpriteOp",256+15,SPR,"BGR",0,320,256,9
�1ș "OS_SpriteOp",256+15,SPR,"BAL",0,320,256,9
�%ș "OS_SpriteOp",256+29,SPR,"BAL"
�'ș "OS_SpriteOp",256+61,SPR,"BAL",0
�� 0
�ȓ Ȑ 0,0,1279,1023
�#ș "OS_SpriteOp",256+61,SPR,0,0
�� N%=8 � 15
� � N%,�(255),�(255),�(255)
��
�� � �done:�
��
( ș "OS_SpriteOp",256+60,SPR,"BGR",0

 � 0,0
 � 1279,1023
" � &BD,4,0
, � �(15)
6 W%=�(49)+15
@ H%=�(49)+15
J) ȓ Ȑ �(128)-W%,�(1024)-H%,2*W%,2*H%
T$ ș "OS_SpriteOp",256+60,SPR,0,0
^( ș "OS_SpriteOp",256+60,SPR,"BAL",0
h
 � 0,0
r � 1279,1023
| � &BD,-4,0
� � �(15)
� W%=�(49)+15
� H%=�(49)+15
�. ȓ Ȑ 1152+�(128)-W%,�(1024)-H%,2*W%,2*H%
�( ș "OS_SpriteOp",256+61,SPR,"BAL",0
�
 � 0,0
� � 1279,1023
� � &BD,0,4
� � 3,15
� � N%=1 � K%
�  BY%(N%)+=4
�  � BY%(N%)>BR%(N%) �
�   BX%(N%)=�(1280)
   BR%(N%)=�(109)+51
   BY%(N%)=-BR%(N%)
  �
&  W%=�(BR%(N%)^2-BY%(N%)^2)
0!  � BX%(N%)-W%,0,BX%(N%)+W%,0
: �
D$ ș "OS_SpriteOp",256+61,SPR,0,0
N ș 6,112,S1%
X ș 6,113,S2%
b Ȗ
l �
v Ȕ S1%,S2%
�, ș "OS_SpriteOp",256+34,SPR,"BGR",0,0,0
�, ș "OS_SpriteOp",256+34,SPR,"BAL",0,0,8
�� �
�
�� �done
��12
��
��" at line "Þ
��
��
�
00000000  0d 00 0a 0c f4 20 3e 54  65 6b 6e 6f 0d 00 14 11  |..... >Tekno....|
00000010  f4 20 62 79 20 4a 61 6e  20 56 69 62 65 0d 00 1e  |. by Jan Vibe...|
00000020  04 0d 00 28 0d eb 20 31  33 37 3a eb 20 39 0d 00  |...(.. 137:. 9..|
00000030  32 10 de 20 53 50 52 20  26 32 30 30 30 30 0d 00  |2.. SPR &20000..|
00000040  3c 08 4b 25 3d 34 0d 00  46 1d de 20 42 58 25 28  |<.K%=4..F.. BX%(|
00000050  4b 25 29 2c 42 59 25 28  4b 25 29 2c 42 52 25 28  |K%),BY%(K%),BR%(|
00000060  4b 25 29 0d 00 50 10 53  50 52 21 30 3d 26 31 46  |K%)..P.SPR!0=&1F|
00000070  46 46 46 0d 00 5a 0b 53  50 52 21 34 3d 30 0d 00  |FFF..Z.SPR!4=0..|
00000080  64 0c 53 50 52 21 38 3d  31 36 0d 00 6e 0d 53 50  |d.SPR!8=16..n.SP|
00000090  52 21 31 32 3d 31 36 0d  00 78 09 53 31 25 3d 31  |R!12=16..x.S1%=1|
000000a0  0d 00 82 09 53 32 25 3d  32 0d 00 8c 31 c8 99 20  |....S2%=2...1.. |
000000b0  22 4f 53 5f 53 70 72 69  74 65 4f 70 22 2c 32 35  |"OS_SpriteOp",25|
000000c0  36 2b 31 35 2c 53 50 52  2c 22 42 47 52 22 2c 30  |6+15,SPR,"BGR",0|
000000d0  2c 33 32 30 2c 32 35 36  2c 39 0d 00 96 31 c8 99  |,320,256,9...1..|
000000e0  20 22 4f 53 5f 53 70 72  69 74 65 4f 70 22 2c 32  | "OS_SpriteOp",2|
000000f0  35 36 2b 31 35 2c 53 50  52 2c 22 42 41 4c 22 2c  |56+15,SPR,"BAL",|
00000100  30 2c 33 32 30 2c 32 35  36 2c 39 0d 00 a0 25 c8  |0,320,256,9...%.|
00000110  99 20 22 4f 53 5f 53 70  72 69 74 65 4f 70 22 2c  |. "OS_SpriteOp",|
00000120  32 35 36 2b 32 39 2c 53  50 52 2c 22 42 41 4c 22  |256+29,SPR,"BAL"|
00000130  0d 00 aa 27 c8 99 20 22  4f 53 5f 53 70 72 69 74  |...'.. "OS_Sprit|
00000140  65 4f 70 22 2c 32 35 36  2b 36 31 2c 53 50 52 2c  |eOp",256+61,SPR,|
00000150  22 42 41 4c 22 2c 30 0d  00 b4 07 e6 20 30 0d 00  |"BAL",0..... 0..|
00000160  be 17 c8 93 20 c8 90 20  30 2c 30 2c 31 32 37 39  |.... .. 0,0,1279|
00000170  2c 31 30 32 33 0d 00 c8  23 c8 99 20 22 4f 53 5f  |,1023...#.. "OS_|
00000180  53 70 72 69 74 65 4f 70  22 2c 32 35 36 2b 36 31  |SpriteOp",256+61|
00000190  2c 53 50 52 2c 30 2c 30  0d 00 d2 0f e3 20 4e 25  |,SPR,0,0..... N%|
000001a0  3d 38 20 b8 20 31 35 0d  00 dc 1e 20 fb 20 4e 25  |=8 . 15.... . N%|
000001b0  2c b3 28 32 35 35 29 2c  b3 28 32 35 35 29 2c b3  |,.(255),.(255),.|
000001c0  28 32 35 35 29 0d 00 e6  05 ed 0d 00 f0 0f ee 20  |(255).......... |
000001d0  85 20 f2 64 6f 6e 65 3a  e0 0d 00 fa 05 f5 0d 01  |. .done:........|
000001e0  04 28 20 c8 99 20 22 4f  53 5f 53 70 72 69 74 65  |.( .. "OS_Sprite|
000001f0  4f 70 22 2c 32 35 36 2b  36 30 2c 53 50 52 2c 22  |Op",256+60,SPR,"|
00000200  42 47 52 22 2c 30 0d 01  0e 0a 20 ec 20 30 2c 30  |BGR",0.... . 0,0|
00000210  0d 01 18 10 20 ec 20 31  32 37 39 2c 31 30 32 33  |.... . 1279,1023|
00000220  0d 01 22 0e 20 f0 20 26  42 44 2c 34 2c 30 0d 01  |..". . &BD,4,0..|
00000230  2c 0c 20 e6 20 b3 28 31  35 29 0d 01 36 10 20 57  |,. . .(15)..6. W|
00000240  25 3d b3 28 34 39 29 2b  31 35 0d 01 40 10 20 48  |%=.(49)+15..@. H|
00000250  25 3d b3 28 34 39 29 2b  31 35 0d 01 4a 29 20 c8  |%=.(49)+15..J) .|
00000260  93 20 c8 90 20 b3 28 31  32 38 29 2d 57 25 2c b3  |. .. .(128)-W%,.|
00000270  28 31 30 32 34 29 2d 48  25 2c 32 2a 57 25 2c 32  |(1024)-H%,2*W%,2|
00000280  2a 48 25 0d 01 54 24 20  c8 99 20 22 4f 53 5f 53  |*H%..T$ .. "OS_S|
00000290  70 72 69 74 65 4f 70 22  2c 32 35 36 2b 36 30 2c  |priteOp",256+60,|
000002a0  53 50 52 2c 30 2c 30 0d  01 5e 28 20 c8 99 20 22  |SPR,0,0..^( .. "|
000002b0  4f 53 5f 53 70 72 69 74  65 4f 70 22 2c 32 35 36  |OS_SpriteOp",256|
000002c0  2b 36 30 2c 53 50 52 2c  22 42 41 4c 22 2c 30 0d  |+60,SPR,"BAL",0.|
000002d0  01 68 0a 20 ec 20 30 2c  30 0d 01 72 10 20 ec 20  |.h. . 0,0..r. . |
000002e0  31 32 37 39 2c 31 30 32  33 0d 01 7c 0f 20 f0 20  |1279,1023..|. . |
000002f0  26 42 44 2c 2d 34 2c 30  0d 01 86 0c 20 e6 20 b3  |&BD,-4,0.... . .|
00000300  28 31 35 29 0d 01 90 10  20 57 25 3d b3 28 34 39  |(15).... W%=.(49|
00000310  29 2b 31 35 0d 01 9a 10  20 48 25 3d b3 28 34 39  |)+15.... H%=.(49|
00000320  29 2b 31 35 0d 01 a4 2e  20 c8 93 20 c8 90 20 31  |)+15.... .. .. 1|
00000330  31 35 32 2b b3 28 31 32  38 29 2d 57 25 2c b3 28  |152+.(128)-W%,.(|
00000340  31 30 32 34 29 2d 48 25  2c 32 2a 57 25 2c 32 2a  |1024)-H%,2*W%,2*|
00000350  48 25 0d 01 ae 28 20 c8  99 20 22 4f 53 5f 53 70  |H%...( .. "OS_Sp|
00000360  72 69 74 65 4f 70 22 2c  32 35 36 2b 36 31 2c 53  |riteOp",256+61,S|
00000370  50 52 2c 22 42 41 4c 22  2c 30 0d 01 b8 0a 20 ec  |PR,"BAL",0.... .|
00000380  20 30 2c 30 0d 01 c2 10  20 ec 20 31 32 37 39 2c  | 0,0.... . 1279,|
00000390  31 30 32 33 0d 01 cc 0e  20 f0 20 26 42 44 2c 30  |1023.... . &BD,0|
000003a0  2c 34 0d 01 d6 0b 20 e6  20 33 2c 31 35 0d 01 e0  |,4.... . 3,15...|
000003b0  10 20 e3 20 4e 25 3d 31  20 b8 20 4b 25 0d 01 ea  |. . N%=1 . K%...|
000003c0  10 20 20 42 59 25 28 4e  25 29 2b 3d 34 0d 01 f4  |.  BY%(N%)+=4...|
000003d0  19 20 20 e7 20 42 59 25  28 4e 25 29 3e 42 52 25  |.  . BY%(N%)>BR%|
000003e0  28 4e 25 29 20 8c 0d 01  fe 16 20 20 20 42 58 25  |(N%) .....   BX%|
000003f0  28 4e 25 29 3d b3 28 31  32 38 30 29 0d 02 08 18  |(N%)=.(1280)....|
00000400  20 20 20 42 52 25 28 4e  25 29 3d b3 28 31 30 39  |   BR%(N%)=.(109|
00000410  29 2b 35 31 0d 02 12 17  20 20 20 42 59 25 28 4e  |)+51....   BY%(N|
00000420  25 29 3d 2d 42 52 25 28  4e 25 29 0d 02 1c 07 20  |%)=-BR%(N%).... |
00000430  20 cd 0d 02 26 1f 20 20  57 25 3d b6 28 42 52 25  | ...&.  W%=.(BR%|
00000440  28 4e 25 29 5e 32 2d 42  59 25 28 4e 25 29 5e 32  |(N%)^2-BY%(N%)^2|
00000450  29 0d 02 30 21 20 20 86  20 42 58 25 28 4e 25 29  |)..0!  . BX%(N%)|
00000460  2d 57 25 2c 30 2c 42 58  25 28 4e 25 29 2b 57 25  |-W%,0,BX%(N%)+W%|
00000470  2c 30 0d 02 3a 06 20 ed  0d 02 44 24 20 c8 99 20  |,0..:. ...D$ .. |
00000480  22 4f 53 5f 53 70 72 69  74 65 4f 70 22 2c 32 35  |"OS_SpriteOp",25|
00000490  36 2b 36 31 2c 53 50 52  2c 30 2c 30 0d 02 4e 11  |6+61,SPR,0,0..N.|
000004a0  20 c8 99 20 36 2c 31 31  32 2c 53 31 25 0d 02 58  | .. 6,112,S1%..X|
000004b0  11 20 c8 99 20 36 2c 31  31 33 2c 53 32 25 0d 02  |. .. 6,113,S2%..|
000004c0  62 07 20 c8 96 0d 02 6c  06 20 db 0d 02 76 0f 20  |b. ....l. ...v. |
000004d0  c8 94 20 53 31 25 2c 53  32 25 0d 02 80 2c 20 c8  |.. S1%,S2%..., .|
000004e0  99 20 22 4f 53 5f 53 70  72 69 74 65 4f 70 22 2c  |. "OS_SpriteOp",|
000004f0  32 35 36 2b 33 34 2c 53  50 52 2c 22 42 47 52 22  |256+34,SPR,"BGR"|
00000500  2c 30 2c 30 2c 30 0d 02  8a 2c 20 c8 99 20 22 4f  |,0,0,0..., .. "O|
00000510  53 5f 53 70 72 69 74 65  4f 70 22 2c 32 35 36 2b  |S_SpriteOp",256+|
00000520  33 34 2c 53 50 52 2c 22  42 41 4c 22 2c 30 2c 30  |34,SPR,"BAL",0,0|
00000530  2c 38 0d 02 94 07 fd 20  a3 0d 02 9e 04 0d 02 a8  |,8..... ........|
00000540  0b dd 20 f2 64 6f 6e 65  0d 02 b2 07 eb 31 32 0d  |.. .done.....12.|
00000550  02 bc 05 f6 0d 02 c6 12  f1 22 20 61 74 20 6c 69  |........." at li|
00000560  6e 65 20 22 c3 9e 0d 02  d0 05 ee 0d 02 da 05 e1  |ne "............|
00000570  0d ff                                             |..|
00000572