Home » Personal collection » Acorn ADFS disks » Archimedes » Dominic_3B.ADF » !STARTREK/Level2B

!STARTREK/Level2B

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 » Personal collection » Acorn ADFS disks » Archimedes » Dominic_3B.ADF
Filename: !STARTREK/Level2B
Read OK:
File size: 0484 bytes
Load address: FFFFFB41
Exec address: B9CEA92B
Duplicates

There are 3 duplicate copies of this file in the archive:

File contents
 1000 REM >Level2B
 1010 MODE7:CLS:ON ERROR CLS:END
 1020 DIM ACROSS(50),DOWN(50)
 1030 FOR ASTEROID=1 TO 50
 1040 ACROSS(ASTEROID)=RND(30)+2
 1050 DOWN(ASTEROID)=RND(20)+2
 1055 XXX=RND(7)+144
 1060 PRINTTAB(ACROSS(ASTEROID)-1,DOWN(ASTEROID))CHR$(XXX)CHR$238CHR$189
 1070 NEXT
 1080 TIME=0
 1090 C$=""
 1100 COL=0:ROW=RND(20)+3
 1110 PRINTTAB(COL,ROW)"X"
 1120 PRINTTAB(0,1)C$
 1130 PRINTTAB(0,2)C$
 1140 PRINTTAB(0,0)"Time Taken ";INT(TIME/100);" Seconds"
 1150 IF TIME>60*100 THEN GOTO 1350
 1160 INPUT"Direction(Up, Down, or Right";DIR$
 1170 IF DIR$="U" THEN UP=-1:RIGHT=0:GOTO 1210
 1180 IF DIR$="D" THEN UP=1:RIGHT=0:GOTO 1210
 1190 IF DIR$="R" THEN UP=0:RIGHT=1:GOTO 1210
 1200 GOTO 1120
 1210 INPUT"DISTANCE";DIS
 1220 PRINTTAB(COL,ROW)"O"
 1230 FORCO=1 TO DIS
 1240 ROW=ROW+UP
 1250 COL=COL+RIGHT
 1260FOR AS=1 TO 50
 1270IFCOL=ACROSS(AS) AND ROW=DOWN(AS) THEN 1370
 1280IFCOL=ACROSS(AS)+1 AND ROW=DOWN(AS) THEN 1370
 1290NEXT
 1300IF ROW>23 OR ROW<4 THEN 1390
 1310PRINTTAB(COL,ROW)"O"
 1320IF COL>33 THEN 1410
 1330NEXT
 1340GOTO 1110
 1350CLS:PRINT"You have run out of fuel!":FORX=0TO100000:NEXT:a
 1370CLS:PRINT"You have crashed into an asteroid!.":PRINT"Your ship is broken into  5,000,000                   pieces!":FORX=0TO100000:NEXT:A
 1400CLS:PRINT"You are lost in space! It was a bad move to leave orbit!":FORX=0TO100000:NEXT:a
 1410 CLS:PRINT"Well Done! You missed every asteriod! GET READY FOR LEVEL 3!":FORX=0TO100000:NEXT
 1420 CHAIN"Level3A"
� � >Level2B
� �7:�:� � �:�
� � ACROSS(50),DOWN(50)
 � ASTEROID=1 � 50
 ACROSS(ASTEROID)=�(30)+2
 DOWN(ASTEROID)=�(20)+2
 XXX=�(7)+144
$7 �ACROSS(ASTEROID)-1,DOWN(ASTEROID))�(XXX)�238�189
. �
8 �=0
B
 C$=""
L COL=0:ROW=�(20)+3
V �COL,ROW)"X"
`
 �0,1)C$
j
 �0,2)C$
t, �0,0)"Time Taken ";�(�/100);" Seconds"
~ � �>60*100 � � �DFE
�) �"Direction(Up, Down, or Right";DIR$
�& � DIR$="U" � UP=-1:RIGHT=0:� �tzD
�% � DIR$="D" � UP=1:RIGHT=0:� �tzD
�% � DIR$="R" � UP=0:RIGHT=1:� �tzD
� � �D`D
� �"DISTANCE";DIS
� �COL,ROW)"O"
� �CO=1 � DIS
� ROW=ROW+UP
� COL=COL+RIGHT
�� AS=1 � 50
�)�COL=ACROSS(AS) � ROW=DOWN(AS) � �DZE
+�COL=ACROSS(AS)+1 � ROW=DOWN(AS) � �DZE

�
� ROW>23 � ROW<4 � �DnE
�COL,ROW)"O"
(� COL>33 � �tBE
2�
<
� �DVD
F2�:�"You have run out of fuel!":�X=0�100000:�:a
Z}�:�"You have crashed into an asteroid!.":�"Your ship is broken into  5,000,000                   pieces!":�X=0�100000:�:A
xQ�:�"You are lost in space! It was a bad move to leave orbit!":�X=0�100000:�:a
�T �:�"Well Done! You missed every asteriod! GET READY FOR LEVEL 3!":�X=0�100000:�
� �"Level3A"
�
00000000  0d 03 e8 0f 20 f4 20 3e  4c 65 76 65 6c 32 42 0d  |.... . >Level2B.|
00000010  03 f2 11 20 eb 37 3a db  3a ee 20 85 20 db 3a e0  |... .7:.:. . .:.|
00000020  0d 03 fc 1a 20 de 20 41  43 52 4f 53 53 28 35 30  |.... . ACROSS(50|
00000030  29 2c 44 4f 57 4e 28 35  30 29 0d 04 06 16 20 e3  |),DOWN(50).... .|
00000040  20 41 53 54 45 52 4f 49  44 3d 31 20 b8 20 35 30  | ASTEROID=1 . 50|
00000050  0d 04 10 1d 20 41 43 52  4f 53 53 28 41 53 54 45  |.... ACROSS(ASTE|
00000060  52 4f 49 44 29 3d b3 28  33 30 29 2b 32 0d 04 1a  |ROID)=.(30)+2...|
00000070  1b 20 44 4f 57 4e 28 41  53 54 45 52 4f 49 44 29  |. DOWN(ASTEROID)|
00000080  3d b3 28 32 30 29 2b 32  0d 04 1f 11 20 58 58 58  |=.(20)+2.... XXX|
00000090  3d b3 28 37 29 2b 31 34  34 0d 04 24 37 20 f1 8a  |=.(7)+144..$7 ..|
000000a0  41 43 52 4f 53 53 28 41  53 54 45 52 4f 49 44 29  |ACROSS(ASTEROID)|
000000b0  2d 31 2c 44 4f 57 4e 28  41 53 54 45 52 4f 49 44  |-1,DOWN(ASTEROID|
000000c0  29 29 bd 28 58 58 58 29  bd 32 33 38 bd 31 38 39  |)).(XXX).238.189|
000000d0  0d 04 2e 06 20 ed 0d 04  38 08 20 d1 3d 30 0d 04  |.... ...8. .=0..|
000000e0  42 0a 20 43 24 3d 22 22  0d 04 4c 16 20 43 4f 4c  |B. C$=""..L. COL|
000000f0  3d 30 3a 52 4f 57 3d b3  28 32 30 29 2b 33 0d 04  |=0:ROW=.(20)+3..|
00000100  56 12 20 f1 8a 43 4f 4c  2c 52 4f 57 29 22 58 22  |V. ..COL,ROW)"X"|
00000110  0d 04 60 0d 20 f1 8a 30  2c 31 29 43 24 0d 04 6a  |..`. ..0,1)C$..j|
00000120  0d 20 f1 8a 30 2c 32 29  43 24 0d 04 74 2c 20 f1  |. ..0,2)C$..t, .|
00000130  8a 30 2c 30 29 22 54 69  6d 65 20 54 61 6b 65 6e  |.0,0)"Time Taken|
00000140  20 22 3b a8 28 91 2f 31  30 30 29 3b 22 20 53 65  | ";.(./100);" Se|
00000150  63 6f 6e 64 73 22 0d 04  7e 18 20 e7 20 91 3e 36  |conds"..~. . .>6|
00000160  30 2a 31 30 30 20 8c 20  e5 20 8d 44 46 45 0d 04  |0*100 . . .DFE..|
00000170  88 29 20 e8 22 44 69 72  65 63 74 69 6f 6e 28 55  |.) ."Direction(U|
00000180  70 2c 20 44 6f 77 6e 2c  20 6f 72 20 52 69 67 68  |p, Down, or Righ|
00000190  74 22 3b 44 49 52 24 0d  04 92 26 20 e7 20 44 49  |t";DIR$...& . DI|
000001a0  52 24 3d 22 55 22 20 8c  20 55 50 3d 2d 31 3a 52  |R$="U" . UP=-1:R|
000001b0  49 47 48 54 3d 30 3a e5  20 8d 74 7a 44 0d 04 9c  |IGHT=0:. .tzD...|
000001c0  25 20 e7 20 44 49 52 24  3d 22 44 22 20 8c 20 55  |% . DIR$="D" . U|
000001d0  50 3d 31 3a 52 49 47 48  54 3d 30 3a e5 20 8d 74  |P=1:RIGHT=0:. .t|
000001e0  7a 44 0d 04 a6 25 20 e7  20 44 49 52 24 3d 22 52  |zD...% . DIR$="R|
000001f0  22 20 8c 20 55 50 3d 30  3a 52 49 47 48 54 3d 31  |" . UP=0:RIGHT=1|
00000200  3a e5 20 8d 74 7a 44 0d  04 b0 0b 20 e5 20 8d 44  |:. .tzD.... . .D|
00000210  60 44 0d 04 ba 14 20 e8  22 44 49 53 54 41 4e 43  |`D.... ."DISTANC|
00000220  45 22 3b 44 49 53 0d 04  c4 12 20 f1 8a 43 4f 4c  |E";DIS.... ..COL|
00000230  2c 52 4f 57 29 22 4f 22  0d 04 ce 10 20 e3 43 4f  |,ROW)"O".... .CO|
00000240  3d 31 20 b8 20 44 49 53  0d 04 d8 0f 20 52 4f 57  |=1 . DIS.... ROW|
00000250  3d 52 4f 57 2b 55 50 0d  04 e2 12 20 43 4f 4c 3d  |=ROW+UP.... COL=|
00000260  43 4f 4c 2b 52 49 47 48  54 0d 04 ec 0f e3 20 41  |COL+RIGHT..... A|
00000270  53 3d 31 20 b8 20 35 30  0d 04 f6 29 e7 43 4f 4c  |S=1 . 50...).COL|
00000280  3d 41 43 52 4f 53 53 28  41 53 29 20 80 20 52 4f  |=ACROSS(AS) . RO|
00000290  57 3d 44 4f 57 4e 28 41  53 29 20 8c 20 8d 44 5a  |W=DOWN(AS) . .DZ|
000002a0  45 0d 05 00 2b e7 43 4f  4c 3d 41 43 52 4f 53 53  |E...+.COL=ACROSS|
000002b0  28 41 53 29 2b 31 20 80  20 52 4f 57 3d 44 4f 57  |(AS)+1 . ROW=DOW|
000002c0  4e 28 41 53 29 20 8c 20  8d 44 5a 45 0d 05 0a 05  |N(AS) . .DZE....|
000002d0  ed 0d 05 14 1b e7 20 52  4f 57 3e 32 33 20 84 20  |...... ROW>23 . |
000002e0  52 4f 57 3c 34 20 8c 20  8d 44 6e 45 0d 05 1e 11  |ROW<4 . .DnE....|
000002f0  f1 8a 43 4f 4c 2c 52 4f  57 29 22 4f 22 0d 05 28  |..COL,ROW)"O"..(|
00000300  13 e7 20 43 4f 4c 3e 33  33 20 8c 20 8d 74 42 45  |.. COL>33 . .tBE|
00000310  0d 05 32 05 ed 0d 05 3c  0a e5 20 8d 44 56 44 0d  |..2....<.. .DVD.|
00000320  05 46 32 db 3a f1 22 59  6f 75 20 68 61 76 65 20  |.F2.:."You have |
00000330  72 75 6e 20 6f 75 74 20  6f 66 20 66 75 65 6c 21  |run out of fuel!|
00000340  22 3a e3 58 3d 30 b8 31  30 30 30 30 30 3a ed 3a  |":.X=0.100000:.:|
00000350  61 0d 05 5a 7d db 3a f1  22 59 6f 75 20 68 61 76  |a..Z}.:."You hav|
00000360  65 20 63 72 61 73 68 65  64 20 69 6e 74 6f 20 61  |e crashed into a|
00000370  6e 20 61 73 74 65 72 6f  69 64 21 2e 22 3a f1 22  |n asteroid!.":."|
00000380  59 6f 75 72 20 73 68 69  70 20 69 73 20 62 72 6f  |Your ship is bro|
00000390  6b 65 6e 20 69 6e 74 6f  20 20 35 2c 30 30 30 2c  |ken into  5,000,|
000003a0  30 30 30 20 20 20 20 20  20 20 20 20 20 20 20 20  |000             |
000003b0  20 20 20 20 20 20 70 69  65 63 65 73 21 22 3a e3  |      pieces!":.|
000003c0  58 3d 30 b8 31 30 30 30  30 30 3a ed 3a 41 0d 05  |X=0.100000:.:A..|
000003d0  78 51 db 3a f1 22 59 6f  75 20 61 72 65 20 6c 6f  |xQ.:."You are lo|
000003e0  73 74 20 69 6e 20 73 70  61 63 65 21 20 49 74 20  |st in space! It |
000003f0  77 61 73 20 61 20 62 61  64 20 6d 6f 76 65 20 74  |was a bad move t|
00000400  6f 20 6c 65 61 76 65 20  6f 72 62 69 74 21 22 3a  |o leave orbit!":|
00000410  e3 58 3d 30 b8 31 30 30  30 30 30 3a ed 3a 61 0d  |.X=0.100000:.:a.|
00000420  05 82 54 20 db 3a f1 22  57 65 6c 6c 20 44 6f 6e  |..T .:."Well Don|
00000430  65 21 20 59 6f 75 20 6d  69 73 73 65 64 20 65 76  |e! You missed ev|
00000440  65 72 79 20 61 73 74 65  72 69 6f 64 21 20 47 45  |ery asteriod! GE|
00000450  54 20 52 45 41 44 59 20  46 4f 52 20 4c 45 56 45  |T READY FOR LEVE|
00000460  4c 20 33 21 22 3a e3 58  3d 30 b8 31 30 30 30 30  |L 3!":.X=0.10000|
00000470  30 3a ed 0d 05 8c 0f 20  d7 22 4c 65 76 65 6c 33  |0:..... ."Level3|
00000480  41 22 0d ff                                       |A"..|
00000484
!STARTREK/Level2B.m0
!STARTREK/Level2B.m1
!STARTREK/Level2B.m2
!STARTREK/Level2B.m4
!STARTREK/Level2B.m5