Home » Archimedes archive » Acorn Computing » 1994 02 subscription disc.adf » 9402s » Laser/The/!LASER/INTRO

Laser/The/!LASER/INTRO

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 Computing » 1994 02 subscription disc.adf » 9402s
Filename: Laser/The/!LASER/INTRO
Read OK:
File size: 056A bytes
Load address: 0000
Exec address: 0000
File contents
   10REM > <LASER$DIR>.INTRO
   20REM by MAG & CAT
   30REM Acorn Computerating
   40MODE13
   50OFF
   60O$="OS_SpriteOp"
   70REMDIV Load in the Spritefile
   80sprites$="<LASER$DIR>.INTROfile"
   90file%=OPENIN(sprites$)
  100size%=EXT#file%+64
  110CLOSE#file%
  120 
  130REMMODDimension an AREA the SIZE of          MODthe file to store sprites in
  140DIM area% size%
  150area%!0=size%
  160 
  170REMEORInitialise area to load the            EORsprite definitions to
  180SYS O$,256+9,area%
  190 
  200REMORNow load the sprite definitions        ORto this area
  210SYS O$,256+10,area%,sprites$
  220 
  230REMDIV_____SET UP ONCE ONLY_________
  240PROCsprites
  250PROCintro
  260END
  270 
  280REMDIV------------------------------
  290DEFPROCsprites
  300DIMendpic%(2)
  310FORI%=1TO2
  320PROCsetsprite("ENDPIC"+STR$(I%),endpic%(I%),h%,w%)
  330NEXT
  340PROCsetsprite("WORDS",words%,h%,w%)
  350ENDPROC
  360REMMODInit sprites
  370DEFPROCsetsprite(string$,RETURN value%,RETURN width%,RETURN height%)
  380SYS O$,256+24,area%,string$ TO,,value%
  390SYS O$,256+40,area%,string$ TO,,,width%,height%
  400ENDPROC
  410 
  420REMMODINTRO
  430DEFPROCintro
  440VDU26
  450VDU24,148;64;1100;1000;
  460SYS6,112,1:CLS
  470SYS6,113,1
  480SYS6,15
  490x%=1154
  500y%=64
  510thru%=0
  520REPEAT
  530SYS O$,&222,area%,endpic%(1),148,48,0
  540TIME=0:REPEAT:GOSUB620:UNTILTIME>RND(50)+100ORINKEY-99
  550SYS O$,&222,area%,endpic%(2),148,48,0
  560TIME=0:REPEAT:GOSUB620:UNTILTIME>RND(50)+80ORINKEY-99
  570thru%+=1
  580UNTILINKEY-99 OR thru%=3
  582SYS O$,&222,area%,endpic%(1),148,48,0
  590SYS O$,&222,area%,words%,x%,y%,11
  600TIME=0:REPEATUNTILTIME>250
  610ENDPROC
  620SYS O$,&222,area%,words%,x%,y%,12
  630x%-=3
  640WAIT
  650RETURN

� > <LASER$DIR>.INTRO
� by MAG & CAT
� Acorn Computerating
(�13
2�
<O$="OS_SpriteOp"
F� Load in the Spritefile
P$sprites$="<LASER$DIR>.INTROfile"
Zfile%=�(sprites$)
dsize%=�#file%+64
n�#file%
x 
�J�Dimension an AREA the SIZE of          �the file to store sprites in
�� area% size%
�area%!0=size%
� 
�C�Initialise area to load the            �sprite definitions to
�ș O$,256+9,area%
� 
�:�Now load the sprite definitions        �to this area
�ș O$,256+10,area%,sprites$
� 
�$�_____SET UP ONCE ONLY_________
��sprites
�
�intro
�
 
$�------------------------------
"
��sprites
,�endpic%(2)
6�I%=1�2
@0�setsprite("ENDPIC"+�(I%),endpic%(I%),h%,w%)
J�
T$�setsprite("WORDS",words%,h%,w%)
^�
h�Init sprites
r4��setsprite(string$,� value%,� width%,� height%)
|(ș O$,256+24,area%,string$ �,,value%
�1ș O$,256+40,area%,string$ �,,,width%,height%
��
� 
��INTRO
���intro
��26
��24,148;64;1100;1000;
�ș6,112,1:�
�
ș6,113,1
�
ș6,15
�x%=1154
�	y%=64
�thru%=0
�
(ș O$,&222,area%,endpic%(1),148,48,0
!�=0:�:�DlB:��>�(50)+100��-99
&(ș O$,&222,area%,endpic%(2),148,48,0
0 �=0:�:�DlB:��>�(50)+80��-99
:thru%+=1
D��-99 � thru%=3
F(ș O$,&222,area%,endpic%(1),148,48,0
N$ș O$,&222,area%,words%,x%,y%,11
X�=0:���>250
b�
l$ș O$,&222,area%,words%,x%,y%,12
v	x%-=3
�Ȗ
��
�
00000000  0d 00 0a 19 f4 20 3e 20  3c 4c 41 53 45 52 24 44  |..... > <LASER$D|
00000010  49 52 3e 2e 49 4e 54 52  4f 0d 00 14 12 f4 20 62  |IR>.INTRO..... b|
00000020  79 20 4d 41 47 20 26 20  43 41 54 0d 00 1e 19 f4  |y MAG & CAT.....|
00000030  20 41 63 6f 72 6e 20 43  6f 6d 70 75 74 65 72 61  | Acorn Computera|
00000040  74 69 6e 67 0d 00 28 07  eb 31 33 0d 00 32 05 87  |ting..(..13..2..|
00000050  0d 00 3c 14 4f 24 3d 22  4f 53 5f 53 70 72 69 74  |..<.O$="OS_Sprit|
00000060  65 4f 70 22 0d 00 46 1d  f4 81 20 4c 6f 61 64 20  |eOp"..F... Load |
00000070  69 6e 20 74 68 65 20 53  70 72 69 74 65 66 69 6c  |in the Spritefil|
00000080  65 0d 00 50 24 73 70 72  69 74 65 73 24 3d 22 3c  |e..P$sprites$="<|
00000090  4c 41 53 45 52 24 44 49  52 3e 2e 49 4e 54 52 4f  |LASER$DIR>.INTRO|
000000a0  66 69 6c 65 22 0d 00 5a  15 66 69 6c 65 25 3d 8e  |file"..Z.file%=.|
000000b0  28 73 70 72 69 74 65 73  24 29 0d 00 64 14 73 69  |(sprites$)..d.si|
000000c0  7a 65 25 3d a2 23 66 69  6c 65 25 2b 36 34 0d 00  |ze%=.#file%+64..|
000000d0  6e 0b d9 23 66 69 6c 65  25 0d 00 78 05 20 0d 00  |n..#file%..x. ..|
000000e0  82 4a f4 83 44 69 6d 65  6e 73 69 6f 6e 20 61 6e  |.J..Dimension an|
000000f0  20 41 52 45 41 20 74 68  65 20 53 49 5a 45 20 6f  | AREA the SIZE o|
00000100  66 20 20 20 20 20 20 20  20 20 20 83 74 68 65 20  |f          .the |
00000110  66 69 6c 65 20 74 6f 20  73 74 6f 72 65 20 73 70  |file to store sp|
00000120  72 69 74 65 73 20 69 6e  0d 00 8c 11 de 20 61 72  |rites in..... ar|
00000130  65 61 25 20 73 69 7a 65  25 0d 00 96 11 61 72 65  |ea% size%....are|
00000140  61 25 21 30 3d 73 69 7a  65 25 0d 00 a0 05 20 0d  |a%!0=size%.... .|
00000150  00 aa 43 f4 82 49 6e 69  74 69 61 6c 69 73 65 20  |..C..Initialise |
00000160  61 72 65 61 20 74 6f 20  6c 6f 61 64 20 74 68 65  |area to load the|
00000170  20 20 20 20 20 20 20 20  20 20 20 20 82 73 70 72  |            .spr|
00000180  69 74 65 20 64 65 66 69  6e 69 74 69 6f 6e 73 20  |ite definitions |
00000190  74 6f 0d 00 b4 15 c8 99  20 4f 24 2c 32 35 36 2b  |to...... O$,256+|
000001a0  39 2c 61 72 65 61 25 0d  00 be 05 20 0d 00 c8 3a  |9,area%.... ...:|
000001b0  f4 84 4e 6f 77 20 6c 6f  61 64 20 74 68 65 20 73  |..Now load the s|
000001c0  70 72 69 74 65 20 64 65  66 69 6e 69 74 69 6f 6e  |prite definition|
000001d0  73 20 20 20 20 20 20 20  20 84 74 6f 20 74 68 69  |s        .to thi|
000001e0  73 20 61 72 65 61 0d 00  d2 1f c8 99 20 4f 24 2c  |s area...... O$,|
000001f0  32 35 36 2b 31 30 2c 61  72 65 61 25 2c 73 70 72  |256+10,area%,spr|
00000200  69 74 65 73 24 0d 00 dc  05 20 0d 00 e6 24 f4 81  |ites$.... ...$..|
00000210  5f 5f 5f 5f 5f 53 45 54  20 55 50 20 4f 4e 43 45  |_____SET UP ONCE|
00000220  20 4f 4e 4c 59 5f 5f 5f  5f 5f 5f 5f 5f 5f 0d 00  | ONLY_________..|
00000230  f0 0c f2 73 70 72 69 74  65 73 0d 00 fa 0a f2 69  |...sprites.....i|
00000240  6e 74 72 6f 0d 01 04 05  e0 0d 01 0e 05 20 0d 01  |ntro......... ..|
00000250  18 24 f4 81 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |.$..------------|
00000260  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
00000270  2d 2d 0d 01 22 0d dd f2  73 70 72 69 74 65 73 0d  |--.."...sprites.|
00000280  01 2c 0f de 65 6e 64 70  69 63 25 28 32 29 0d 01  |.,..endpic%(2)..|
00000290  36 0b e3 49 25 3d 31 b8  32 0d 01 40 30 f2 73 65  |6..I%=1.2..@0.se|
000002a0  74 73 70 72 69 74 65 28  22 45 4e 44 50 49 43 22  |tsprite("ENDPIC"|
000002b0  2b c3 28 49 25 29 2c 65  6e 64 70 69 63 25 28 49  |+.(I%),endpic%(I|
000002c0  25 29 2c 68 25 2c 77 25  29 0d 01 4a 05 ed 0d 01  |%),h%,w%)..J....|
000002d0  54 24 f2 73 65 74 73 70  72 69 74 65 28 22 57 4f  |T$.setsprite("WO|
000002e0  52 44 53 22 2c 77 6f 72  64 73 25 2c 68 25 2c 77  |RDS",words%,h%,w|
000002f0  25 29 0d 01 5e 05 e1 0d  01 68 12 f4 83 49 6e 69  |%)..^....h...Ini|
00000300  74 20 73 70 72 69 74 65  73 0d 01 72 34 dd f2 73  |t sprites..r4..s|
00000310  65 74 73 70 72 69 74 65  28 73 74 72 69 6e 67 24  |etsprite(string$|
00000320  2c f8 20 76 61 6c 75 65  25 2c f8 20 77 69 64 74  |,. value%,. widt|
00000330  68 25 2c f8 20 68 65 69  67 68 74 25 29 0d 01 7c  |h%,. height%)..||
00000340  28 c8 99 20 4f 24 2c 32  35 36 2b 32 34 2c 61 72  |(.. O$,256+24,ar|
00000350  65 61 25 2c 73 74 72 69  6e 67 24 20 b8 2c 2c 76  |ea%,string$ .,,v|
00000360  61 6c 75 65 25 0d 01 86  31 c8 99 20 4f 24 2c 32  |alue%...1.. O$,2|
00000370  35 36 2b 34 30 2c 61 72  65 61 25 2c 73 74 72 69  |56+40,area%,stri|
00000380  6e 67 24 20 b8 2c 2c 2c  77 69 64 74 68 25 2c 68  |ng$ .,,,width%,h|
00000390  65 69 67 68 74 25 0d 01  90 05 e1 0d 01 9a 05 20  |eight%......... |
000003a0  0d 01 a4 0b f4 83 49 4e  54 52 4f 0d 01 ae 0b dd  |......INTRO.....|
000003b0  f2 69 6e 74 72 6f 0d 01  b8 07 ef 32 36 0d 01 c2  |.intro.....26...|
000003c0  19 ef 32 34 2c 31 34 38  3b 36 34 3b 31 31 30 30  |..24,148;64;1100|
000003d0  3b 31 30 30 30 3b 0d 01  cc 0f c8 99 36 2c 31 31  |;1000;......6,11|
000003e0  32 2c 31 3a db 0d 01 d6  0d c8 99 36 2c 31 31 33  |2,1:.......6,113|
000003f0  2c 31 0d 01 e0 0a c8 99  36 2c 31 35 0d 01 ea 0b  |,1......6,15....|
00000400  78 25 3d 31 31 35 34 0d  01 f4 09 79 25 3d 36 34  |x%=1154....y%=64|
00000410  0d 01 fe 0b 74 68 72 75  25 3d 30 0d 02 08 05 f5  |....thru%=0.....|
00000420  0d 02 12 28 c8 99 20 4f  24 2c 26 32 32 32 2c 61  |...(.. O$,&222,a|
00000430  72 65 61 25 2c 65 6e 64  70 69 63 25 28 31 29 2c  |rea%,endpic%(1),|
00000440  31 34 38 2c 34 38 2c 30  0d 02 1c 21 d1 3d 30 3a  |148,48,0...!.=0:|
00000450  f5 3a e4 8d 44 6c 42 3a  fd 91 3e b3 28 35 30 29  |.:..DlB:..>.(50)|
00000460  2b 31 30 30 84 a6 2d 39  39 0d 02 26 28 c8 99 20  |+100..-99..&(.. |
00000470  4f 24 2c 26 32 32 32 2c  61 72 65 61 25 2c 65 6e  |O$,&222,area%,en|
00000480  64 70 69 63 25 28 32 29  2c 31 34 38 2c 34 38 2c  |dpic%(2),148,48,|
00000490  30 0d 02 30 20 d1 3d 30  3a f5 3a e4 8d 44 6c 42  |0..0 .=0:.:..DlB|
000004a0  3a fd 91 3e b3 28 35 30  29 2b 38 30 84 a6 2d 39  |:..>.(50)+80..-9|
000004b0  39 0d 02 3a 0c 74 68 72  75 25 2b 3d 31 0d 02 44  |9..:.thru%+=1..D|
000004c0  13 fd a6 2d 39 39 20 84  20 74 68 72 75 25 3d 33  |...-99 . thru%=3|
000004d0  0d 02 46 28 c8 99 20 4f  24 2c 26 32 32 32 2c 61  |..F(.. O$,&222,a|
000004e0  72 65 61 25 2c 65 6e 64  70 69 63 25 28 31 29 2c  |rea%,endpic%(1),|
000004f0  31 34 38 2c 34 38 2c 30  0d 02 4e 24 c8 99 20 4f  |148,48,0..N$.. O|
00000500  24 2c 26 32 32 32 2c 61  72 65 61 25 2c 77 6f 72  |$,&222,area%,wor|
00000510  64 73 25 2c 78 25 2c 79  25 2c 31 31 0d 02 58 0f  |ds%,x%,y%,11..X.|
00000520  d1 3d 30 3a f5 fd 91 3e  32 35 30 0d 02 62 05 e1  |.=0:...>250..b..|
00000530  0d 02 6c 24 c8 99 20 4f  24 2c 26 32 32 32 2c 61  |..l$.. O$,&222,a|
00000540  72 65 61 25 2c 77 6f 72  64 73 25 2c 78 25 2c 79  |rea%,words%,x%,y|
00000550  25 2c 31 32 0d 02 76 09  78 25 2d 3d 33 0d 02 80  |%,12..v.x%-=3...|
00000560  06 c8 96 0d 02 8a 05 f8  0d ff                    |..........|
0000056a