Home » Personal collection » Acorn tapes » Own_Work » drawer_tl_tape08b_c15_acorn_maze.wav » LEM2A

LEM2A

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 tapes » Own_Work » drawer_tl_tape08b_c15_acorn_maze.wav
Filename: LEM2A
Read OK:
File size: 05E4 bytes
Load address: FFFF0E00
Exec address: FFFF8023
Duplicates

There is 1 duplicate copy of this file in the archive:

File contents
    1 *OPT 1,2
    3 PLAY=0
   10 DIM G%(320):DIM C%(9):SH=0:OUT=0
   20 LD=OPENIN"CHARS":FOR D=1 TO 9
   30 INPUT#LD,D1,D2D3,D4,D5,D6,D7,D8,D9,D10
   40 VDU 23,D1,D2,D3,D4,D5,D6,D7,D8,D9
   50 C%(D)=10:NEXT:FOR D=0 TO 3:INPUT#LD,D1
   60 VDU 19,D,D1,0;0;0;:NEXT:INPUT#LD,PASS1$,PASS2$
   70 CLOSE LD,INPUT"PASSWORD";PASS
   80 IF PASS<>THEN PRINT"WRONG!":GOTO 20
   90 VDU 28,0,4,19,0:LD=OPENIN"DATA"
   95 FOR LD1=1 TO 320:INPUT#LD,G(LD1):NEXT:CLOSE LD
  100 FOR P=0 TO 9:PRINT:NEXT:CLS
  110 FOR P=0 TO 18:FOR P1=0 TO 4:PRINTTAB(P,P1);
  120 G%(P+SH*10+P1)=0 THEN PRINT"O"
  130 IF G%(P+SH*10+P1)=1 THEN COLOUR C%(1):PRINTCHR$(128)
  140 IF G%(P+SH*10+P1)=2 THEN PRINT"@
  150 IF G%(P+SH*10+P1)=3 THEN PRINT"<"
  160 IF G%(P+SH*10+P1)=4 THEN COLOUR C%(2):PRINTCHR$(129)
  170 IF G%(P+SH*10+P1)=5 THEN COLOUR C%(3):PRINTCHR$(130)
  180 IF G%(P+SH*10+P1)=6 THEN COLOUR C%(4):PRINTCHR$(131)
  190 IF G%(P+SH*10+P1)=7 THEN COLOUR C%(5):PRINTCHR$(132)
  200 IF G%(P+SH*10+P1)=8 THEN COLOUR C%(6):PRINTCHR$(133)
  210 IF G%(P+SH*10+P1)=9 THEN COLOUR C%(7):PRINTCHR$(134)
  220 IF G%(P+SH*10+P1)=10 THEN PRINT" "
  230 IF G%(P+SH*10+P1)=11 THEN COLOUR C%(9):PRINTCHR$(135)
  240 NEXT P1:NEXT P:FOR LAD=1 TO 320
  250 IF G%LAD)=4 THEN IF G%(LAD+5=10 THEN G%(LAD+5)=4:G%(LAD)=10:NEXT
  260 IF G%(LAD)=4 THEN GD(LAD)=11
  270 IF G%(LAD)=5 THEN IF G%(LAD-5)1 THEN G%(LAD)=10:LAD-5)=5:NEXT
  280 IF G%(LAD)=5 G%(LAD)=11
  290 IF G%(LAD)=6 THEN SOUND 1,-15,50,1:G%(LAD)=10:G%(LAD+1)=10:G%(LAD+1)=10:G%(LAD+5)=10:G%(LAD-5)=10
  300 IF G%(LAD)=8 THEN IF G%(LAD-4)=10 AND G%(LAD-5)=10 THEN G%(LAD-4)=8:G%(LAD-5)=1:G%(LAD)=10
  310 IF G%(LAD)=9 THEN IF G%(LAD+4)=10 AND G%(LAD+5)=10 THEN G%(LAD+4)=9:G%(LAD+5)=1:G%(LAD)=10
  320 IF G%(LAD)=11 THEN IF G%(LAD+5)=10 THEN G%(LAD)=10:G%(LAD+5)=11:NEXT
  330 IF G%(LAD)=11 THEN G%(LAD)=4
  340 IF G%(LAD)=12 THEN IF G%(LAD+5)=1 THEN G%(LAD+5)=12:G%(LAD)=10:NEXT
  350 IF G%(LAD)=12 THEN GD(LAD)=11
  360 NEXT

 *OPT 1,2
 PLAY=0

! � G%(320):� C%(9):SH=0:OUT=0
 LD=�"CHARS":� D=1 � 9
' �#LD,D1,D2D3,D4,D5,D6,D7,D8,D9,D10
($ � 23,D1,D2,D3,D4,D5,D6,D7,D8,D9
2! C%(D)=10:�:� D=0 � 3:�#LD,D1
<* � 19,D,D1,0;0;0;:�:�#LD,PASS1$,PASS2$
F � LD,�"PASSWORD";PASS
P � PASS<>� �"WRONG!":� �TT@
Z � 28,0,4,19,0:LD=�"DATA"
_% � LD1=1 � 320:�#LD,G(LD1):�:� LD
d � P=0 � 9:�:�:�
n# � P=0 � 18:� P1=0 � 4:�P,P1);
x G%(P+SH*10+P1)=0 � �"O"
�) � G%(P+SH*10+P1)=1 � � C%(1):�(128)
� � G%(P+SH*10+P1)=2 � �"@
� � G%(P+SH*10+P1)=3 � �"<"
�) � G%(P+SH*10+P1)=4 � � C%(2):�(129)
�) � G%(P+SH*10+P1)=5 � � C%(3):�(130)
�) � G%(P+SH*10+P1)=6 � � C%(4):�(131)
�) � G%(P+SH*10+P1)=7 � � C%(5):�(132)
�) � G%(P+SH*10+P1)=8 � � C%(6):�(133)
�) � G%(P+SH*10+P1)=9 � � C%(7):�(134)
� � G%(P+SH*10+P1)=10 � �" "
�* � G%(P+SH*10+P1)=11 � � C%(9):�(135)
� � P1:� P:� LAD=1 � 320
�: � G%LAD)=4 � � G%(LAD+5=10 � G%(LAD+5)=4:G%(LAD)=10:�
 � G%(LAD)=4 � GD(LAD)=11
7 � G%(LAD)=5 � � G%(LAD-5)1 � G%(LAD)=10:LAD-5)=5:�
 � G%(LAD)=5 G%(LAD)=11
"^ � G%(LAD)=6 � � 1,-15,50,1:G%(LAD)=10:G%(LAD+1)=10:G%(LAD+1)=10:G%(LAD+5)=10:G%(LAD-5)=10
,U � G%(LAD)=8 � � G%(LAD-4)=10 � G%(LAD-5)=10 � G%(LAD-4)=8:G%(LAD-5)=1:G%(LAD)=10
6U � G%(LAD)=9 � � G%(LAD+4)=10 � G%(LAD+5)=10 � G%(LAD+4)=9:G%(LAD+5)=1:G%(LAD)=10
@> � G%(LAD)=11 � � G%(LAD+5)=10 � G%(LAD)=10:G%(LAD+5)=11:�
J � G%(LAD)=11 � G%(LAD)=4
T= � G%(LAD)=12 � � G%(LAD+5)=1 � G%(LAD+5)=12:G%(LAD)=10:�
^ � G%(LAD)=12 � GD(LAD)=11
h �
�
00000000  0d 00 01 0d 20 2a 4f 50  54 20 31 2c 32 0d 00 03  |.... *OPT 1,2...|
00000010  0b 20 50 4c 41 59 3d 30  0d 00 0a 21 20 de 20 47  |. PLAY=0...! . G|
00000020  25 28 33 32 30 29 3a de  20 43 25 28 39 29 3a 53  |%(320):. C%(9):S|
00000030  48 3d 30 3a 4f 55 54 3d  30 0d 00 14 1a 20 4c 44  |H=0:OUT=0.... LD|
00000040  3d 8e 22 43 48 41 52 53  22 3a e3 20 44 3d 31 20  |=."CHARS":. D=1 |
00000050  b8 20 39 0d 00 1e 27 20  e8 23 4c 44 2c 44 31 2c  |. 9...' .#LD,D1,|
00000060  44 32 44 33 2c 44 34 2c  44 35 2c 44 36 2c 44 37  |D2D3,D4,D5,D6,D7|
00000070  2c 44 38 2c 44 39 2c 44  31 30 0d 00 28 24 20 ef  |,D8,D9,D10..($ .|
00000080  20 32 33 2c 44 31 2c 44  32 2c 44 33 2c 44 34 2c  | 23,D1,D2,D3,D4,|
00000090  44 35 2c 44 36 2c 44 37  2c 44 38 2c 44 39 0d 00  |D5,D6,D7,D8,D9..|
000000a0  32 21 20 43 25 28 44 29  3d 31 30 3a ed 3a e3 20  |2! C%(D)=10:.:. |
000000b0  44 3d 30 20 b8 20 33 3a  e8 23 4c 44 2c 44 31 0d  |D=0 . 3:.#LD,D1.|
000000c0  00 3c 2a 20 ef 20 31 39  2c 44 2c 44 31 2c 30 3b  |.<* . 19,D,D1,0;|
000000d0  30 3b 30 3b 3a ed 3a e8  23 4c 44 2c 50 41 53 53  |0;0;:.:.#LD,PASS|
000000e0  31 24 2c 50 41 53 53 32  24 0d 00 46 1a 20 d9 20  |1$,PASS2$..F. . |
000000f0  4c 44 2c e8 22 50 41 53  53 57 4f 52 44 22 3b 50  |LD,."PASSWORD";P|
00000100  41 53 53 0d 00 50 1f 20  e7 20 50 41 53 53 3c 3e  |ASS..P. . PASS<>|
00000110  8c 20 f1 22 57 52 4f 4e  47 21 22 3a e5 20 8d 54  |. ."WRONG!":. .T|
00000120  54 40 0d 00 5a 1d 20 ef  20 32 38 2c 30 2c 34 2c  |T@..Z. . 28,0,4,|
00000130  31 39 2c 30 3a 4c 44 3d  8e 22 44 41 54 41 22 0d  |19,0:LD=."DATA".|
00000140  00 5f 25 20 e3 20 4c 44  31 3d 31 20 b8 20 33 32  |._% . LD1=1 . 32|
00000150  30 3a e8 23 4c 44 2c 47  28 4c 44 31 29 3a ed 3a  |0:.#LD,G(LD1):.:|
00000160  d9 20 4c 44 0d 00 64 14  20 e3 20 50 3d 30 20 b8  |. LD..d. . P=0 .|
00000170  20 39 3a f1 3a ed 3a db  0d 00 6e 23 20 e3 20 50  | 9:.:.:...n# . P|
00000180  3d 30 20 b8 20 31 38 3a  e3 20 50 31 3d 30 20 b8  |=0 . 18:. P1=0 .|
00000190  20 34 3a f1 8a 50 2c 50  31 29 3b 0d 00 78 1c 20  | 4:..P,P1);..x. |
000001a0  47 25 28 50 2b 53 48 2a  31 30 2b 50 31 29 3d 30  |G%(P+SH*10+P1)=0|
000001b0  20 8c 20 f1 22 4f 22 0d  00 82 29 20 e7 20 47 25  | . ."O"...) . G%|
000001c0  28 50 2b 53 48 2a 31 30  2b 50 31 29 3d 31 20 8c  |(P+SH*10+P1)=1 .|
000001d0  20 fb 20 43 25 28 31 29  3a f1 bd 28 31 32 38 29  | . C%(1):..(128)|
000001e0  0d 00 8c 1d 20 e7 20 47  25 28 50 2b 53 48 2a 31  |.... . G%(P+SH*1|
000001f0  30 2b 50 31 29 3d 32 20  8c 20 f1 22 40 0d 00 96  |0+P1)=2 . ."@...|
00000200  1e 20 e7 20 47 25 28 50  2b 53 48 2a 31 30 2b 50  |. . G%(P+SH*10+P|
00000210  31 29 3d 33 20 8c 20 f1  22 3c 22 0d 00 a0 29 20  |1)=3 . ."<"...) |
00000220  e7 20 47 25 28 50 2b 53  48 2a 31 30 2b 50 31 29  |. G%(P+SH*10+P1)|
00000230  3d 34 20 8c 20 fb 20 43  25 28 32 29 3a f1 bd 28  |=4 . . C%(2):..(|
00000240  31 32 39 29 0d 00 aa 29  20 e7 20 47 25 28 50 2b  |129)...) . G%(P+|
00000250  53 48 2a 31 30 2b 50 31  29 3d 35 20 8c 20 fb 20  |SH*10+P1)=5 . . |
00000260  43 25 28 33 29 3a f1 bd  28 31 33 30 29 0d 00 b4  |C%(3):..(130)...|
00000270  29 20 e7 20 47 25 28 50  2b 53 48 2a 31 30 2b 50  |) . G%(P+SH*10+P|
00000280  31 29 3d 36 20 8c 20 fb  20 43 25 28 34 29 3a f1  |1)=6 . . C%(4):.|
00000290  bd 28 31 33 31 29 0d 00  be 29 20 e7 20 47 25 28  |.(131)...) . G%(|
000002a0  50 2b 53 48 2a 31 30 2b  50 31 29 3d 37 20 8c 20  |P+SH*10+P1)=7 . |
000002b0  fb 20 43 25 28 35 29 3a  f1 bd 28 31 33 32 29 0d  |. C%(5):..(132).|
000002c0  00 c8 29 20 e7 20 47 25  28 50 2b 53 48 2a 31 30  |..) . G%(P+SH*10|
000002d0  2b 50 31 29 3d 38 20 8c  20 fb 20 43 25 28 36 29  |+P1)=8 . . C%(6)|
000002e0  3a f1 bd 28 31 33 33 29  0d 00 d2 29 20 e7 20 47  |:..(133)...) . G|
000002f0  25 28 50 2b 53 48 2a 31  30 2b 50 31 29 3d 39 20  |%(P+SH*10+P1)=9 |
00000300  8c 20 fb 20 43 25 28 37  29 3a f1 bd 28 31 33 34  |. . C%(7):..(134|
00000310  29 0d 00 dc 1f 20 e7 20  47 25 28 50 2b 53 48 2a  |).... . G%(P+SH*|
00000320  31 30 2b 50 31 29 3d 31  30 20 8c 20 f1 22 20 22  |10+P1)=10 . ." "|
00000330  0d 00 e6 2a 20 e7 20 47  25 28 50 2b 53 48 2a 31  |...* . G%(P+SH*1|
00000340  30 2b 50 31 29 3d 31 31  20 8c 20 fb 20 43 25 28  |0+P1)=11 . . C%(|
00000350  39 29 3a f1 bd 28 31 33  35 29 0d 00 f0 1b 20 ed  |9):..(135).... .|
00000360  20 50 31 3a ed 20 50 3a  e3 20 4c 41 44 3d 31 20  | P1:. P:. LAD=1 |
00000370  b8 20 33 32 30 0d 00 fa  3a 20 e7 20 47 25 4c 41  |. 320...: . G%LA|
00000380  44 29 3d 34 20 8c 20 e7  20 47 25 28 4c 41 44 2b  |D)=4 . . G%(LAD+|
00000390  35 3d 31 30 20 8c 20 47  25 28 4c 41 44 2b 35 29  |5=10 . G%(LAD+5)|
000003a0  3d 34 3a 47 25 28 4c 41  44 29 3d 31 30 3a ed 0d  |=4:G%(LAD)=10:..|
000003b0  01 04 1d 20 e7 20 47 25  28 4c 41 44 29 3d 34 20  |... . G%(LAD)=4 |
000003c0  8c 20 47 44 28 4c 41 44  29 3d 31 31 0d 01 0e 37  |. GD(LAD)=11...7|
000003d0  20 e7 20 47 25 28 4c 41  44 29 3d 35 20 8c 20 e7  | . G%(LAD)=5 . .|
000003e0  20 47 25 28 4c 41 44 2d  35 29 31 20 8c 20 47 25  | G%(LAD-5)1 . G%|
000003f0  28 4c 41 44 29 3d 31 30  3a 4c 41 44 2d 35 29 3d  |(LAD)=10:LAD-5)=|
00000400  35 3a ed 0d 01 18 1b 20  e7 20 47 25 28 4c 41 44  |5:..... . G%(LAD|
00000410  29 3d 35 20 47 25 28 4c  41 44 29 3d 31 31 0d 01  |)=5 G%(LAD)=11..|
00000420  22 5e 20 e7 20 47 25 28  4c 41 44 29 3d 36 20 8c  |"^ . G%(LAD)=6 .|
00000430  20 d4 20 31 2c 2d 31 35  2c 35 30 2c 31 3a 47 25  | . 1,-15,50,1:G%|
00000440  28 4c 41 44 29 3d 31 30  3a 47 25 28 4c 41 44 2b  |(LAD)=10:G%(LAD+|
00000450  31 29 3d 31 30 3a 47 25  28 4c 41 44 2b 31 29 3d  |1)=10:G%(LAD+1)=|
00000460  31 30 3a 47 25 28 4c 41  44 2b 35 29 3d 31 30 3a  |10:G%(LAD+5)=10:|
00000470  47 25 28 4c 41 44 2d 35  29 3d 31 30 0d 01 2c 55  |G%(LAD-5)=10..,U|
00000480  20 e7 20 47 25 28 4c 41  44 29 3d 38 20 8c 20 e7  | . G%(LAD)=8 . .|
00000490  20 47 25 28 4c 41 44 2d  34 29 3d 31 30 20 80 20  | G%(LAD-4)=10 . |
000004a0  47 25 28 4c 41 44 2d 35  29 3d 31 30 20 8c 20 47  |G%(LAD-5)=10 . G|
000004b0  25 28 4c 41 44 2d 34 29  3d 38 3a 47 25 28 4c 41  |%(LAD-4)=8:G%(LA|
000004c0  44 2d 35 29 3d 31 3a 47  25 28 4c 41 44 29 3d 31  |D-5)=1:G%(LAD)=1|
000004d0  30 0d 01 36 55 20 e7 20  47 25 28 4c 41 44 29 3d  |0..6U . G%(LAD)=|
000004e0  39 20 8c 20 e7 20 47 25  28 4c 41 44 2b 34 29 3d  |9 . . G%(LAD+4)=|
000004f0  31 30 20 80 20 47 25 28  4c 41 44 2b 35 29 3d 31  |10 . G%(LAD+5)=1|
00000500  30 20 8c 20 47 25 28 4c  41 44 2b 34 29 3d 39 3a  |0 . G%(LAD+4)=9:|
00000510  47 25 28 4c 41 44 2b 35  29 3d 31 3a 47 25 28 4c  |G%(LAD+5)=1:G%(L|
00000520  41 44 29 3d 31 30 0d 01  40 3e 20 e7 20 47 25 28  |AD)=10..@> . G%(|
00000530  4c 41 44 29 3d 31 31 20  8c 20 e7 20 47 25 28 4c  |LAD)=11 . . G%(L|
00000540  41 44 2b 35 29 3d 31 30  20 8c 20 47 25 28 4c 41  |AD+5)=10 . G%(LA|
00000550  44 29 3d 31 30 3a 47 25  28 4c 41 44 2b 35 29 3d  |D)=10:G%(LAD+5)=|
00000560  31 31 3a ed 0d 01 4a 1d  20 e7 20 47 25 28 4c 41  |11:...J. . G%(LA|
00000570  44 29 3d 31 31 20 8c 20  47 25 28 4c 41 44 29 3d  |D)=11 . G%(LAD)=|
00000580  34 0d 01 54 3d 20 e7 20  47 25 28 4c 41 44 29 3d  |4..T= . G%(LAD)=|
00000590  31 32 20 8c 20 e7 20 47  25 28 4c 41 44 2b 35 29  |12 . . G%(LAD+5)|
000005a0  3d 31 20 8c 20 47 25 28  4c 41 44 2b 35 29 3d 31  |=1 . G%(LAD+5)=1|
000005b0  32 3a 47 25 28 4c 41 44  29 3d 31 30 3a ed 0d 01  |2:G%(LAD)=10:...|
000005c0  5e 1e 20 e7 20 47 25 28  4c 41 44 29 3d 31 32 20  |^. . G%(LAD)=12 |
000005d0  8c 20 47 44 28 4c 41 44  29 3d 31 31 0d 01 68 06  |. GD(LAD)=11..h.|
000005e0  20 ed 0d ff                                       | ...|
000005e4
LEM2A.m0
LEM2A.m1
LEM2A.m2
LEM2A.m4
LEM2A.m5