Home » Personal collection » Acorn ADFS disks » Electron » White_Magic_2.ADF » WMagic2/DEF2

WMagic2/DEF2

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 » Electron » White_Magic_2.ADF
Filename: WMagic2/DEF2
Read OK:
File size: 1D1F bytes
Load address: FFFF1D00
Exec address: FFFF8023
File contents
   10GOTO 40
   15IF ?&8F=1 THEN FORL%=&3500 TO &38FF:?L%=47:NEXT
   20PROCwind(4,20,26,10):IF ERR=17 THEN PROCtext("ESCAPE",12,14) ELSE PROCtext("ERROR!",12,14)
   30PROCpret:CALL&B8D:A%=X%:B%=Y%:CALL&B20:GOTO 950
   40HIMEM=&3148:VDU23,1,0;0;0;0;:ON ERROR GOTO 15
   50DIM S%(3,4):*FX11 30
   60*FX12 2
   80*LOAD DGRAFIX 3900
  100*LOAD MAPSYMB 3148
  110*LOAD MINIFONT 3E10
  120FORL%=&3500 TO &38FF:?L%=47:NEXT
  130*LOAD DEFCODE A00
  140GOTO 930
  150DEFPROCload
  160PROCwind(4,20,26,10):PROCtext("LOAD FILE",10,11):PROCtext("LEVEL NO. :",6,15):PROCinput(17,15,2):IF VAL(A$)>32 OR VAL(A$)<1 THEN 160
  170A%=VAL(A$):IF A%<10 THEN A$="LEV.0"+STR$(A%) ELSE A$="LEV."+STR$(A%)
  171VDU28,2,19,12,13:COLOUR3:CLS:?&8F=1:OSCLI("*LOAD "+A$+" 3500"):CLS:VDU26:?&8F=0
  172OSCLI("*FX229,1"):PROCtext("ENTER CODE :",6,15):PROCinput(18,15,4):PROCgpcd:IF A$<>T$ THEN VDU7:FORL%=&3500 TO &38FF:?L%=47:NEXT:OSCLI("*FX229"):CALL&B8D:R%=0:T%=0:ENDPROC ELSE OSCLI("*FX229")
  180CALL&B8D:VDU19,1,?&3500;0;0;0;19,2,?&3501;0;0;0;19,3,?&350A;0;0;0;
  190T%=0:R%=0:FORL%=(&3500+63) TO (&3500+1023):IF ?L%=107 THEN T%=T%+1
  200IF ?L%>109 AND ?L%<114 THEN R%=R%+1:NEXT:ENDPROC ELSE NEXT:ENDPROC
  210DEFPROCcat:VDU26,28,0,30,14,0,24,0;32;984;1023;:CLG:COLOUR128:CLS:*CAT
  220VDU7:REPEAT UNTIL INKEY(-74):CALL&B8D:ENDPROC
  230DEFPROCgrid:A%=0:B%=32:GCOL3,3:FORL%=1 TO 5:FORK%=1 TO 5:PLOT4,A%,B%:PLOT1,216,0:PLOT1,0,220:PLOT1,-216,0:PLOT1,0,-220:A%=A%+192:NEXT:A%=0:B%=B%+192:NEXT:ENDPROC
  250DEFPROCcd:TIME=0:REPEAT UNTIL TIME>10:ENDPROC
  260DEFPROCcols:B%=X%:C%=Y%:A%=&B:X%=&70:Y%=0:?&70=1:CALL &FFF1:M%=?&71:?&70=2:CALL &FFF1:N%=?&71:?&70=3:CALL &FFF1:H%=?&71:PROCwind(5,24,25,10):PROCtext("COLOUR DEFINER",8,11):PROCtext("PRESS 1,2 OR 3",8,14)
  270PROCtext("TO ALTER COLOURS",7,15):X%=B%:Y%=C%:
  280PROCtext("RETURN TO EXIT",8,17):PROCtext("1 : ",7,19):PROCtext("2 : ",7,21):PROCtext("3 : ",7,23):COLOUR129:PRINTTAB(5,19);SPC(5):COLOUR130:PRINTTAB(5,21);SPC(5):COLOUR131:PRINTTAB(5,23);SPC(5):COLOUR128:VDU30
  290IF INKEY(-49) THEN M%=((M%+1) AND 7):VDU19,1,M%;0;0;0;:PROCcd
  300IF INKEY(-50) THEN N%=((N%+1) AND 7):VDU19,2,N%;0;0;0;:PROCcd
  310IF INKEY(-18) THEN H%=((H%+1) AND 7):VDU19,3,H%;0;0;0;:PROCcd
  320IF NOT INKEY(-74) THEN 290
  330CALL&B8D:ENDPROC
  340DEFPROCswind:PROCwind(4,20,26,10):PROCtext("SAVE LEVEL",10,11):ENDPROC
  350DEFPROCsave:PROCswind:PROCtext("PLEASE WAIT",9,15):K%=0:FORL%=(&3500+63) TO (&3500+93):IF FNtest(?L%)=1 THEN K%=1:NEXT ELSE NEXT
  360IF K%=1 THEN VDU7:PROCtext("EDGE NOT COMPLETE!",6,15):PROCpret:CALL&B8D:ENDPROC
  370FORL%=(&3500+63) TO (&3500+993) STEP 31:IF FNtest(?L%)=1 OR FNtest(?(L%+30))=1 THEN K%=1:NEXT ELSE NEXT
  380IF K%=1 THEN VDU7:PROCtext("EDGE NOT COMPLETE!",6,15):PROCpret:CALL&B8D:ENDPROC
  390FORL%=(&3500+993) TO (&3500+1023):IF FNtest(?L%)=1 THEN K%=1:NEXT ELSE NEXT
  400IF K%=1 THEN VDU7:PROCtext("EDGE NOT COMPLETE!",6,15):PROCpret:CALL&B8D:ENDPROC
  410K%=0:M%=0:FORL%=&353F TO &38FF:IF ?L%=118 THEN K%=1
  420IF ?L%=58 THEN M%=1
  430NEXT:IF K%=0 THEN VDU7:PROCtext("NO MASTER KEY!    ",6,15):PROCpret:CALL&B8D:ENDPROC ELSE IF M%=0 THEN VDU7:PROCtext("NO TRAPDOOR!      ",6,15):PROCpret:CALL&B8D:ENDPROC
  440PROCswind:PROCtext("SAVE AS LEVEL NO.:",5,15):PROCinput(23,15,2):IF VAL(A$)<0 OR VAL(A$)>32 THEN GOTO 440 ELSE O%=VAL(A$)
  450PROCswind:PROCtext("LEVEL TITLE (MAX 20)",5,15):PROCinput(6,17,20):IF A$="" OR LEN(A$)>20 THEN 450 ELSE T$=A$
  460IF LEN(T$)<20 THEN T$=" "+T$
  470PROCswind:PROCtext("TIME (MAX 9899):",5,15):PROCinput(21,15,4):IF VAL(A$)<1 OR VAL(A$)>9899 THEN 470 ELSE Z%=VAL(A$)
  480PROCswind:PROCtext("POSITION START",9,15):PROCpoint(6,6):IF ?H%<>47 THEN VDU7:GOTO 480 ELSE U%=A%:G%=B%
  490IF T%=0 THEN 540
  500PROCswind:PROCtext("SET DESTINATION",5,15):PROCtext("FOR EACH TELEPORTER",5,16):PROCpret:CALL&B8D:F%=(&3500+14):V%=(&3500+63):FORY2%=0 TO 30:FORX2%=0 TO 30:IF ?V%<>107 THEN 530
  510A%=X2%:B%=Y2%:CALL&B20:SOUND1,-15,200,2:PROCpoint(30,30):IF ?H%<>47 THEN A%=X2%:B%=Y2%:CALL&B20:GOTO 510
  520?F%=A%:?(F%+1)=B%:M%=-6:REPEAT:M%=M%+6:UNTIL A%>(M%-1) AND A%<(M%+7):?(F%+2)=M%:M%=-6:REPEAT:M%=M%+6:UNTIL B%>(M%-1) AND B%<(M%+7):?(F%+3)=M%:F%=F%+4:A%=X2%:B%=Y2%:CALL&B20
  530V%=V%+1:NEXT:NEXT
  540?&3502=0:?&3503=0:?&3504=(U%*3):?&3505=(G%*3):V%=(&43F+U%+(G%*31)):?&3506=(V% MOD 256):?&3507=(V% DIV 256):?&350B=&3F:?&350C=&4:IF LEN(T$)>19 THEN PROCcstr:GOTO 560
  550V%=20-LEN(T$):T$=STRING$((V%/2)," ")+T$:PROCcstr
  560A%=0:B%=0:A%=(Z% MOD 10):A%=(A% OR (((Z% MOD 100) DIV 10)*16)):Z%=(Z% DIV 100):B%=(Z% MOD 10):B%=(B% OR ((Z% DIV 10)*16)):?&3508=A%:?&3509=B%
  570X2%=X%:Y2%=Y%:A%=&B:X%=&70:Y%=0:?&70=1:CALL&FFF1:M%=?&71:?&70=2:CALL&FFF1:N%=?&71:?&70=3:CALL&FFF1:H%=?&71:X%=X2%:Y%=Y2%:X2%=236:Y2%=46:?&3500=M%:?&3501=N%:?&350A=H%
  580PROCswind
  590PROCtext("PREPARE TO SAVE",7,14):PROCtext("LEVEL DATA",10,16):PROCpret:VDU28,3,19,12,13:COLOUR128:CLS:IF O%<10 THEN T$="LEV.0"+STR$(O%) ELSE T$="LEV."+STR$(O%)
  600OSCLI("*SAVE "+T$+" 3500 3900 400 400"):VDU26:PROCswind:PROCgpcd:A$="PASSCODE :"+T$:PROCtext(A$,6,15):PROCpret:CALL&B8D:ENDPROC
  611DEFPROCgpcd:T$=CHR$(48+(?&3533 AND 7))+CHR$(48+(?&3534 AND 7))+CHR$(48+((?&3533 AND 56)/8))+CHR$(48+((?&3534 AND 56)/8)):ENDPROC
  620DEFPROCpret:PROCtext("PRESS RETURN",9,19):REPEAT UNTIL INKEY(-74):TIME=0:REPEAT UNTIL TIME>30:OSCLI("*FX21"):ENDPROC
  630DEFFNtest(A%):IF A%>31 AND A%<37 THEN =0
  640IF A%>71 AND A%<85 THEN =0
  650IF A%=86 OR A%=93 OR A%=94 OR A%=116 OR A%=117 THEN =0
  660IF A%>118 AND A%<132 THEN =0
  670IF A%>132 AND A%<138 THEN =0
  680IF A%=250 THEN =0
  690=1
  700DEFPROCcstr:A%=(&3500+42):FORL%=A% TO (A%+20):?L%=32:NEXT:$A%=T$:ENDPROC
  710DEFPROCpoint(K%,L%):FORA%=1 TO 300:NEXT:OSCLI("*FX21"):A%=0:B%=0:H%=(&3500+63):CALL&B20
  720OSCLI("*FX19"):CALL&B20:IF INKEY(-98) AND A%>0 THEN A%=A%-1:H%=H%-1
  730IF INKEY(-73) AND B%>0 THEN B%=B%-1:H%=H%-31
  740IF INKEY(-67) AND A%<K% THEN A%=A%+1:H%=H%+1
  750IF INKEY(-105) AND B%<L% THEN B%=B%+1:H%=H%+31
  760IF INKEY(-74) THEN ENDPROC
  770OSCLI("*FX19"):CALL&B20:GOTO 720
  780DATA 32,33,34,35,36,45,46,48,49,58,59,60,61,62,63,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125
  790DATA 126,127,128,129,130,131,132,133,134,135,136,137
  820DEFPROCpshet:RESTORE 780:IF S%=1 THEN 830 ELSE FORL%=1 TO (S%-1):FORK%=1 TO 20:READ A%:NEXT:NEXT
  830FORB%=22 TO 30 STEP 2:FORA%=32 TO 38 STEP 2:READ C%:S%(((A%-32)/2),((B%-22)/2))=C%:CALL&AAA:NEXT:NEXT:ENDPROC
  840DEFPROCishet:PLOT4,1016+(Q%*64),287-(W%*64):GCOL3,3:PLOT1,40,0:PLOT1,0,36:PLOT1,-40,0:PLOT1,0,-36:ENDPROC
  850DEFPROCwind(A%,B%,C%,D%):C%=((C%-A%)*32)+24:D%=((B%-D%)*32)+28:VDU24,(A%*32);(1023-(B%*32))-28;(A%*32)+C%;((1023-(B%*32))-28)+D%;:GCOL0,128:CLG:VDU26:GCOL0,1:PLOT4,(A%*32)-8,((1023-(B%*32))-28)-4:PLOT1,C%+16,0:PLOT1,0,D%+8
  860PLOT1,-(C%+16),0:PLOT1,0,-(D%+8):ENDPROC
  870DEFPROCtext(A$,A%,B%):$&34A0=A$:CALL&A00:ENDPROC
  880DEFPROCinput(A%,B%,C%):FORL%=100 TO 0 STEP -1:NEXT:L%=0:A$="":*FX21
  890K%=GET:IF K%=13 AND L%>0 THEN ENDPROC
  900IF K%>31 AND K%<127 AND L%<C% THEN A$=A$+CHR$(K%):?&34A0=K%:?&34A1=13:CALL&A00:A%=A%+1:L%=L%+1:GOTO 890
  910IF K%=127 AND L%>0 THEN A%=A%-1:?&34A0=32:?&34A1=13:CALL&A00:L%=L%-1:IF L%=0 THEN A$="":GOTO 890 ELSE A$=LEFT$(A$,L%):GOTO 890
  920GOTO 890
  930:
  940S%=1:PROCpshet:Q%=0:W%=0:X%=0:Y%=0:E%=(&3500+63):I%=S%(Q%,W%):PROCishet:CALL&B8D:T%=0:R%=0:A%=34:B%=16:C%=I%:CALL&B31:A%=34:B%=10:C%=?E%:CALL&B31:A%=X%:B%=Y%:CALL&B20
  950OSCLI("*FX19"):A%=X%:B%=Y%:CALL&B20:IF INKEY(-98) AND X%>0 THEN X%=X%-1:E%=E%-1
  960IF INKEY(-67) AND X%<30 THEN X%=X%+1:E%=E%+1
  970IF INKEY(-73) AND Y%>0 THEN Y%=Y%-1:E%=E%-31
  980IF INKEY(-105) AND Y%<30 THEN Y%=Y%+1:E%=E%+31
  990A%=34:B%=10:IF ?E%=250 THEN PROCiii ELSE C%=?E%:CALL&B31
 1000IF INKEY(-66) AND Q%>0 THEN PROCishet:Q%=Q%-1:PROCishet:I%=S%(Q%,W%):A%=34:B%=16:C%=I%:CALL&B31
 1010IF INKEY(-82) AND Q%<3 THEN PROCishet:Q%=Q%+1:PROCishet:I%=S%(Q%,W%):A%=34:B%=16:C%=I%:CALL&B31
 1020IF INKEY(-56) AND W%>0 THEN PROCishet:W%=W%-1:PROCishet:I%=S%(Q%,W%):A%=34:B%=16:C%=I%:CALL&B31
 1030IF INKEY(-87) AND W%<4 THEN PROCishet:W%=W%+1:PROCishet:I%=S%(Q%,W%):A%=34:B%=16:C%=I%:CALL&B31
 1040IF NOT INKEY(-40) THEN 1070
 1050S%=S%+1:IF S%>4 THEN S%=1
 1060PROCpshet:I%=S%(Q%,W%):A%=34:B%=16:C%=I%:CALL&B31:$&34A0="SHEET  ":?&34A6=ASC(STR$(S%)):A%=32:B%=20:CALL&A00
 1070IF INKEY(-20) THEN PROCcat
 1080GOTO 1100
 1090DEFPROCiii:PROCtext("   ",34,10):PROCtext("INV",34,11):PROCtext("   ",34,12):ENDPROC
 1100IF NOT INKEY(-74) THEN 1160
 1110IF (I%>109 AND I%<114) AND R%>11 THEN VDU7:GOTO 1160
 1120IF I%=107 AND T%>6 THEN VDU7:GOTO 1160
 1130PROCeb
 1140?E%=I%:C%=I%:CALL&BE9:IF I%=107 THEN T%=T%+1
 1150IF I%>109 AND I%<114 THEN R%=R%+1
 1160IF NOT INKEY(-90) THEN 1230
 1170PROCeb:GOTO 1180
 1180?E%=47:GOTO 1230
 1190DEFPROCeb:IF ?E%>109 AND ?E%<114 THEN R%=R%-1:GOTO 1210
 1200IF ?E%=107 THEN T%=T%-1
 1210A%=X%:B%=Y%:C%=?E%:IF C%=250 THEN CALL&B20 ELSE CALL&BE9
 1220ENDPROC
 1230IF NOT INKEY(-18) THEN 1260
 1240PROCwind(5,20,25,10):PROCtext("THIS WILL WIPE THE",6,11):PROCtext("ENTIRE LEVEL!",8,13):PROCtext("ARE YOU SURE (Y/N)",6,17):REPEAT UNTIL INKEY(-69) OR INKEY(-86):IF INKEY(-86) THEN CALL&B8D:GOTO 1260
 1250FORL%=(&3500+63) TO (&3500+1023):?L%=47:NEXT:R%=0:T%=0:CALL&B8D:GOTO 1260
 1260IF INKEY(-49) THEN PROCload
 1270IF INKEY(-84) THEN PROCgrid
 1280IF INKEY(-19) THEN PROCcols
 1290IF INKEY(-50) THEN PROCsave
 1300IF INKEY(-1) THEN PROCeb:?E%=250:CALL&B20
 1310A%=X%:B%=Y%:CALL&B20:OSCLI("*FX19"):GOTO950


� �Th@
)� ?&8F=1 � �L%=&3500 � &38FF:?L%=47:�
L�wind(4,20,26,10):� �=17 � �text("ESCAPE",12,14) � �text("ERROR!",12,14)
(�pret:�&B8D:A%=X%:B%=Y%:�&B20:� �tvC
(%�=&3148:�23,1,0;0;0;0;:� � � �TO@
2� S%(3,4):*FX11 30
<*FX12 2
P*LOAD DGRAFIX 3900
d*LOAD MAPSYMB 3148
n*LOAD MINIFONT 3E10
x�L%=&3500 � &38FF:?L%=47:�
�*LOAD DEFCODE A00
�
� �tbC
�
��load
�t�wind(4,20,26,10):�text("LOAD FILE",10,11):�text("LEVEL NO. :",6,15):�input(17,15,2):� �(A$)>32 � �(A$)<1 � �t`@
�9A%=�(A$):� A%<10 � A$="LEV.0"+�(A%) � A$="LEV."+�(A%)
�B�28,2,19,12,13:�3:�:?&8F=1:�("*LOAD "+A$+" 3500"):�:�26:?&8F=0
���("*FX229,1"):�text("ENTER CODE :",6,15):�input(18,15,4):�gpcd:� A$<>T$ � �7:�L%=&3500 � &38FF:?L%=47:�:�("*FX229"):�&B8D:R%=0:T%=0:� � �("*FX229")
�A�&B8D:�19,1,?&3500;0;0;0;19,2,?&3501;0;0;0;19,3,?&350A;0;0;0;
�?T%=0:R%=0:�L%=(&3500+63) � (&3500+1023):� ?L%=107 � T%=T%+1
�+� ?L%>109 � ?L%<114 � R%=R%+1:�:� � �:�
�:��cat:�26,28,0,30,14,0,24,0;32;984;1023;:�:�128:�:*CAT
��7:� � �(-74):�&B8D:�
�|��grid:A%=0:B%=32:�3,3:�L%=1 � 5:�K%=1 � 5:�4,A%,B%:�1,216,0:�1,0,220:�1,-216,0:�1,0,-220:A%=A%+192:�:A%=0:B%=B%+192:�:�
���cd:�=0:� � �>10:�
���cols:B%=X%:C%=Y%:A%=&B:X%=&70:Y%=0:?&70=1:� &FFF1:M%=?&71:?&70=2:� &FFF1:N%=?&71:?&70=3:� &FFF1:H%=?&71:�wind(5,24,25,10):�text("COLOUR DEFINER",8,11):�text("PRESS 1,2 OR 3",8,14)
/�text("TO ALTER COLOURS",7,15):X%=B%:Y%=C%:
��text("RETURN TO EXIT",8,17):�text("1 : ",7,19):�text("2 : ",7,21):�text("3 : ",7,23):�129:�5,19);�(5):�130:�5,21);�(5):�131:�5,23);�(5):�128:�30
"2� �(-49) � M%=((M%+1) � 7):�19,1,M%;0;0;0;:�cd
,2� �(-50) � N%=((N%+1) � 7):�19,2,N%;0;0;0;:�cd
62� �(-18) � H%=((H%+1) � 7):�19,3,H%;0;0;0;:�cd
@� � �(-74) � �TbA
J�&B8D:�
T9��swind:�wind(4,20,26,10):�text("SAVE LEVEL",10,11):�
^h��save:�swind:�text("PLEASE WAIT",9,15):K%=0:�L%=(&3500+63) � (&3500+93):� �test(?L%)=1 � K%=1:� � �
h>� K%=1 � �7:�text("EDGE NOT COMPLETE!",6,15):�pret:�&B8D:�
rU�L%=(&3500+63) � (&3500+993) � 31:� �test(?L%)=1 � �test(?(L%+30))=1 � K%=1:� � �
|>� K%=1 � �7:�text("EDGE NOT COMPLETE!",6,15):�pret:�&B8D:�
�>�L%=(&3500+993) � (&3500+1023):� �test(?L%)=1 � K%=1:� � �
�>� K%=1 � �7:�text("EDGE NOT COMPLETE!",6,15):�pret:�&B8D:�
�0K%=0:M%=0:�L%=&353F � &38FF:� ?L%=118 � K%=1
�� ?L%=58 � M%=1
�}�:� K%=0 � �7:�text("NO MASTER KEY!    ",6,15):�pret:�&B8D:� � � M%=0 � �7:�text("NO TRAPDOOR!      ",6,15):�pret:�&B8D:�
�d�swind:�text("SAVE AS LEVEL NO.:",5,15):�input(23,15,2):� �(A$)<0 � �(A$)>32 � � �txA � O%=�(A$)
�_�swind:�text("LEVEL TITLE (MAX 20)",5,15):�input(6,17,20):� A$="" � �(A$)>20 � �dBA � T$=A$
�� �(T$)<20 � T$=" "+T$
�b�swind:�text("TIME (MAX 9899):",5,15):�input(21,15,4):� �(A$)<1 � �(A$)>9899 � �dVA � Z%=�(A$)
�W�swind:�text("POSITION START",9,15):�point(6,6):� ?H%<>47 � �7:� �d`A � U%=A%:G%=B%
�� T%=0 � �T\B
��swind:�text("SET DESTINATION",5,15):�text("FOR EACH TELEPORTER",5,16):�pret:�&B8D:F%=(&3500+14):V%=(&3500+63):�Y2%=0 � 30:�X2%=0 � 30:� ?V%<>107 � �TRB
�YA%=X2%:B%=Y2%:�&B20:�1,-15,200,2:�point(30,30):� ?H%<>47 � A%=X2%:B%=Y2%:�&B20:� �d~A
�?F%=A%:?(F%+1)=B%:M%=-6:�:M%=M%+6:� A%>(M%-1) � A%<(M%+7):?(F%+2)=M%:M%=-6:�:M%=M%+6:� B%>(M%-1) � B%<(M%+7):?(F%+3)=M%:F%=F%+4:A%=X2%:B%=Y2%:�&B20
V%=V%+1:�:�
�?&3502=0:?&3503=0:?&3504=(U%*3):?&3505=(G%*3):V%=(&43F+U%+(G%*31)):?&3506=(V% � 256):?&3507=(V% � 256):?&350B=&3F:?&350C=&4:� �(T$)>19 � �cstr:� �TpB
&(V%=20-�(T$):T$=�(V%/2)," ")+T$:�cstr
0�A%=0:B%=0:A%=(Z% � 10):A%=(A% � (((Z% � 100) � 10)*16)):Z%=(Z% � 100):B%=(Z% � 10):B%=(B% � ((Z% � 10)*16)):?&3508=A%:?&3509=B%
:�X2%=X%:Y2%=Y%:A%=&B:X%=&70:Y%=0:?&70=1:�&FFF1:M%=?&71:?&70=2:�&FFF1:N%=?&71:?&70=3:�&FFF1:H%=?&71:X%=X2%:Y%=Y2%:X2%=236:Y2%=46:?&3500=M%:?&3501=N%:?&350A=H%
D
�swind
N��text("PREPARE TO SAVE",7,14):�text("LEVEL DATA",10,16):�pret:�28,3,19,12,13:�128:�:� O%<10 � T$="LEV.0"+�(O%) � T$="LEV."+�(O%)
Xh�("*SAVE "+T$+" 3500 3900 400 400"):�26:�swind:�gpcd:A$="PASSCODE :"+T$:�text(A$,6,15):�pret:�&B8D:�
ce��gpcd:T$=�(48+(?&3533 � 7))+�(48+(?&3534 � 7))+�(48+((?&3533 � 56)/8))+�(48+((?&3534 � 56)/8)):�
lJ��pret:�text("PRESS RETURN",9,19):� � �(-74):�=0:� � �>30:�("*FX21"):�
v#ݤtest(A%):� A%>31 � A%<37 � =0
�� A%>71 � A%<85 � =0
�2� A%=86 � A%=93 � A%=94 � A%=116 � A%=117 � =0
�� A%>118 � A%<132 � =0
�� A%>132 � A%<138 � =0
�� A%=250 � =0
�=1
�;��cstr:A%=(&3500+42):�L%=A% � (A%+20):?L%=32:�:$A%=T$:�
�I��point(K%,L%):�A%=1 � 300:�:�("*FX21"):A%=0:B%=0:H%=(&3500+63):�&B20
�6�("*FX19"):�&B20:� �(-98) � A%>0 � A%=A%-1:H%=H%-1
�&� �(-73) � B%>0 � B%=B%-1:H%=H%-31
�&� �(-67) � A%<K% � A%=A%+1:H%=H%+1
�(� �(-105) � B%<L% � B%=B%+1:H%=H%+31
�� �(-74) � �
�("*FX19"):�&B20:� �dPB
�� 32,33,34,35,36,45,46,48,49,58,59,60,61,62,63,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125
5� 126,127,128,129,130,131,132,133,134,135,136,137
4E��pshet:� �TLC:� S%=1 � �T~C � �L%=1 � (S%-1):�K%=1 � 20:� A%:�:�
>S�B%=22 � 30 � 2:�A%=32 � 38 � 2:� C%:S%(((A%-32)/2),((B%-22)/2))=C%:�&AAA:�:�:�
HP��ishet:�4,1016+(Q%*64),287-(W%*64):�3,3:�1,40,0:�1,0,36:�1,-40,0:�1,0,-36:�
R���wind(A%,B%,C%,D%):C%=((C%-A%)*32)+24:D%=((B%-D%)*32)+28:�24,(A%*32);(1023-(B%*32))-28;(A%*32)+C%;((1023-(B%*32))-28)+D%;:�0,128:�:�26:�0,1:�4,(A%*32)-8,((1023-(B%*32))-28)-4:�1,C%+16,0:�1,0,D%+8
\ �1,-(C%+16),0:�1,0,-(D%+8):�
f&��text(A$,A%,B%):$&34A0=A$:�&A00:�
p9��input(A%,B%,C%):�L%=100 � 0 � -1:�:L%=0:A$="":*FX21
zK%=�:� K%=13 � L%>0 � �
�[� K%>31 � K%<127 � L%<C% � A$=A$+�(K%):?&34A0=K%:?&34A1=13:�&A00:A%=A%+1:L%=L%+1:� �DzC
�i� K%=127 � L%>0 � A%=A%-1:?&34A0=32:?&34A1=13:�&A00:L%=L%-1:� L%=0 � A$="":� �DzC � A$=�A$,L%):� �DzC
�
� �DzC
�:
��S%=1:�pshet:Q%=0:W%=0:X%=0:Y%=0:E%=(&3500+63):I%=S%(Q%,W%):�ishet:�&B8D:T%=0:R%=0:A%=34:B%=16:C%=I%:�&B31:A%=34:B%=10:C%=?E%:�&B31:A%=X%:B%=Y%:�&B20
�B�("*FX19"):A%=X%:B%=Y%:�&B20:� �(-98) � X%>0 � X%=X%-1:E%=E%-1
�&� �(-67) � X%<30 � X%=X%+1:E%=E%+1
�&� �(-73) � Y%>0 � Y%=Y%-1:E%=E%-31
�(� �(-105) � Y%<30 � Y%=Y%+1:E%=E%+31
�/A%=34:B%=10:� ?E%=250 � �iii � C%=?E%:�&B31
�P� �(-66) � Q%>0 � �ishet:Q%=Q%-1:�ishet:I%=S%(Q%,W%):A%=34:B%=16:C%=I%:�&B31
�P� �(-82) � Q%<3 � �ishet:Q%=Q%+1:�ishet:I%=S%(Q%,W%):A%=34:B%=16:C%=I%:�&B31
�P� �(-56) � W%>0 � �ishet:W%=W%-1:�ishet:I%=S%(Q%,W%):A%=34:B%=16:C%=I%:�&B31
P� �(-87) � W%<4 � �ishet:W%=W%+1:�ishet:I%=S%(Q%,W%):A%=34:B%=16:C%=I%:�&B31
� � �(-40) � �TnD
S%=S%+1:� S%>4 � S%=1
$b�pshet:I%=S%(Q%,W%):A%=34:B%=16:C%=I%:�&B31:$&34A0="SHEET  ":?&34A6=�(�(S%)):A%=32:B%=20:�&A00
.� �(-20) � �cat
8
� �DLD
BD��iii:�text("   ",34,10):�text("INV",34,11):�text("   ",34,12):�
L� � �(-74) � �tHD
V+� (I%>109 � I%<114) � R%>11 � �7:� �tHD
`� I%=107 � T%>6 � �7:� �tHD
j�eb
t)?E%=I%:C%=I%:�&BE9:� I%=107 � T%=T%+1
~� I%>109 � I%<114 � R%=R%+1
�� � �(-90) � �dND
��eb:� �t\D
�?E%=47:� �dND
�-��eb:� ?E%>109 � ?E%<114 � R%=R%-1:� �tzD
�� ?E%=107 � T%=T%-1
�/A%=X%:B%=Y%:C%=?E%:� C%=250 � �&B20 � �&BE9
��
�� � �(-18) � �dlD
؟�wind(5,20,25,10):�text("THIS WILL WIPE THE",6,11):�text("ENTIRE LEVEL!",8,13):�text("ARE YOU SURE (Y/N)",6,17):� � �(-69) � �(-86):� �(-86) � �&B8D:� �dlD
�A�L%=(&3500+63) � (&3500+1023):?L%=47:�:R%=0:T%=0:�&B8D:� �dlD
�� �(-49) � �load
�� �(-84) � �grid
� �(-19) � �cols

� �(-50) � �save
� �(-1) � �eb:?E%=250:�&B20
&A%=X%:B%=Y%:�&B20:�("*FX19"):�tvC
�
00000000  0d 00 0a 0a e5 20 8d 54  68 40 0d 00 0f 29 e7 20  |..... .Th@...). |
00000010  3f 26 38 46 3d 31 20 8c  20 e3 4c 25 3d 26 33 35  |?&8F=1 . .L%=&35|
00000020  30 30 20 b8 20 26 33 38  46 46 3a 3f 4c 25 3d 34  |00 . &38FF:?L%=4|
00000030  37 3a ed 0d 00 14 4c f2  77 69 6e 64 28 34 2c 32  |7:....L.wind(4,2|
00000040  30 2c 32 36 2c 31 30 29  3a e7 20 9f 3d 31 37 20  |0,26,10):. .=17 |
00000050  8c 20 f2 74 65 78 74 28  22 45 53 43 41 50 45 22  |. .text("ESCAPE"|
00000060  2c 31 32 2c 31 34 29 20  8b 20 f2 74 65 78 74 28  |,12,14) . .text(|
00000070  22 45 52 52 4f 52 21 22  2c 31 32 2c 31 34 29 0d  |"ERROR!",12,14).|
00000080  00 1e 28 f2 70 72 65 74  3a d6 26 42 38 44 3a 41  |..(.pret:.&B8D:A|
00000090  25 3d 58 25 3a 42 25 3d  59 25 3a d6 26 42 32 30  |%=X%:B%=Y%:.&B20|
000000a0  3a e5 20 8d 74 76 43 0d  00 28 25 d3 3d 26 33 31  |:. .tvC..(%.=&31|
000000b0  34 38 3a ef 32 33 2c 31  2c 30 3b 30 3b 30 3b 30  |48:.23,1,0;0;0;0|
000000c0  3b 3a ee 20 85 20 e5 20  8d 54 4f 40 0d 00 32 16  |;:. . . .TO@..2.|
000000d0  de 20 53 25 28 33 2c 34  29 3a 2a 46 58 31 31 20  |. S%(3,4):*FX11 |
000000e0  33 30 0d 00 3c 0b 2a 46  58 31 32 20 32 0d 00 50  |30..<.*FX12 2..P|
000000f0  16 2a 4c 4f 41 44 20 44  47 52 41 46 49 58 20 33  |.*LOAD DGRAFIX 3|
00000100  39 30 30 0d 00 64 16 2a  4c 4f 41 44 20 4d 41 50  |900..d.*LOAD MAP|
00000110  53 59 4d 42 20 33 31 34  38 0d 00 6e 17 2a 4c 4f  |SYMB 3148..n.*LO|
00000120  41 44 20 4d 49 4e 49 46  4f 4e 54 20 33 45 31 30  |AD MINIFONT 3E10|
00000130  0d 00 78 1e e3 4c 25 3d  26 33 35 30 30 20 b8 20  |..x..L%=&3500 . |
00000140  26 33 38 46 46 3a 3f 4c  25 3d 34 37 3a ed 0d 00  |&38FF:?L%=47:...|
00000150  82 15 2a 4c 4f 41 44 20  44 45 46 43 4f 44 45 20  |..*LOAD DEFCODE |
00000160  41 30 30 0d 00 8c 0a e5  20 8d 74 62 43 0d 00 96  |A00..... .tbC...|
00000170  0a dd f2 6c 6f 61 64 0d  00 a0 74 f2 77 69 6e 64  |...load...t.wind|
00000180  28 34 2c 32 30 2c 32 36  2c 31 30 29 3a f2 74 65  |(4,20,26,10):.te|
00000190  78 74 28 22 4c 4f 41 44  20 46 49 4c 45 22 2c 31  |xt("LOAD FILE",1|
000001a0  30 2c 31 31 29 3a f2 74  65 78 74 28 22 4c 45 56  |0,11):.text("LEV|
000001b0  45 4c 20 4e 4f 2e 20 3a  22 2c 36 2c 31 35 29 3a  |EL NO. :",6,15):|
000001c0  f2 69 6e 70 75 74 28 31  37 2c 31 35 2c 32 29 3a  |.input(17,15,2):|
000001d0  e7 20 bb 28 41 24 29 3e  33 32 20 84 20 bb 28 41  |. .(A$)>32 . .(A|
000001e0  24 29 3c 31 20 8c 20 8d  74 60 40 0d 00 aa 39 41  |$)<1 . .t`@...9A|
000001f0  25 3d bb 28 41 24 29 3a  e7 20 41 25 3c 31 30 20  |%=.(A$):. A%<10 |
00000200  8c 20 41 24 3d 22 4c 45  56 2e 30 22 2b c3 28 41  |. A$="LEV.0"+.(A|
00000210  25 29 20 8b 20 41 24 3d  22 4c 45 56 2e 22 2b c3  |%) . A$="LEV."+.|
00000220  28 41 25 29 0d 00 ab 42  ef 32 38 2c 32 2c 31 39  |(A%)...B.28,2,19|
00000230  2c 31 32 2c 31 33 3a fb  33 3a db 3a 3f 26 38 46  |,12,13:.3:.:?&8F|
00000240  3d 31 3a ff 28 22 2a 4c  4f 41 44 20 22 2b 41 24  |=1:.("*LOAD "+A$|
00000250  2b 22 20 33 35 30 30 22  29 3a db 3a ef 32 36 3a  |+" 3500"):.:.26:|
00000260  3f 26 38 46 3d 30 0d 00  ac 97 ff 28 22 2a 46 58  |?&8F=0.....("*FX|
00000270  32 32 39 2c 31 22 29 3a  f2 74 65 78 74 28 22 45  |229,1"):.text("E|
00000280  4e 54 45 52 20 43 4f 44  45 20 3a 22 2c 36 2c 31  |NTER CODE :",6,1|
00000290  35 29 3a f2 69 6e 70 75  74 28 31 38 2c 31 35 2c  |5):.input(18,15,|
000002a0  34 29 3a f2 67 70 63 64  3a e7 20 41 24 3c 3e 54  |4):.gpcd:. A$<>T|
000002b0  24 20 8c 20 ef 37 3a e3  4c 25 3d 26 33 35 30 30  |$ . .7:.L%=&3500|
000002c0  20 b8 20 26 33 38 46 46  3a 3f 4c 25 3d 34 37 3a  | . &38FF:?L%=47:|
000002d0  ed 3a ff 28 22 2a 46 58  32 32 39 22 29 3a d6 26  |.:.("*FX229"):.&|
000002e0  42 38 44 3a 52 25 3d 30  3a 54 25 3d 30 3a e1 20  |B8D:R%=0:T%=0:. |
000002f0  8b 20 ff 28 22 2a 46 58  32 32 39 22 29 0d 00 b4  |. .("*FX229")...|
00000300  41 d6 26 42 38 44 3a ef  31 39 2c 31 2c 3f 26 33  |A.&B8D:.19,1,?&3|
00000310  35 30 30 3b 30 3b 30 3b  30 3b 31 39 2c 32 2c 3f  |500;0;0;0;19,2,?|
00000320  26 33 35 30 31 3b 30 3b  30 3b 30 3b 31 39 2c 33  |&3501;0;0;0;19,3|
00000330  2c 3f 26 33 35 30 41 3b  30 3b 30 3b 30 3b 0d 00  |,?&350A;0;0;0;..|
00000340  be 3f 54 25 3d 30 3a 52  25 3d 30 3a e3 4c 25 3d  |.?T%=0:R%=0:.L%=|
00000350  28 26 33 35 30 30 2b 36  33 29 20 b8 20 28 26 33  |(&3500+63) . (&3|
00000360  35 30 30 2b 31 30 32 33  29 3a e7 20 3f 4c 25 3d  |500+1023):. ?L%=|
00000370  31 30 37 20 8c 20 54 25  3d 54 25 2b 31 0d 00 c8  |107 . T%=T%+1...|
00000380  2b e7 20 3f 4c 25 3e 31  30 39 20 80 20 3f 4c 25  |+. ?L%>109 . ?L%|
00000390  3c 31 31 34 20 8c 20 52  25 3d 52 25 2b 31 3a ed  |<114 . R%=R%+1:.|
000003a0  3a e1 20 8b 20 ed 3a e1  0d 00 d2 3a dd f2 63 61  |:. . .:....:..ca|
000003b0  74 3a ef 32 36 2c 32 38  2c 30 2c 33 30 2c 31 34  |t:.26,28,0,30,14|
000003c0  2c 30 2c 32 34 2c 30 3b  33 32 3b 39 38 34 3b 31  |,0,24,0;32;984;1|
000003d0  30 32 33 3b 3a da 3a fb  31 32 38 3a db 3a 2a 43  |023;:.:.128:.:*C|
000003e0  41 54 0d 00 dc 19 ef 37  3a f5 20 fd 20 a6 28 2d  |AT.....7:. . .(-|
000003f0  37 34 29 3a d6 26 42 38  44 3a e1 0d 00 e6 7c dd  |74):.&B8D:....|.|
00000400  f2 67 72 69 64 3a 41 25  3d 30 3a 42 25 3d 33 32  |.grid:A%=0:B%=32|
00000410  3a e6 33 2c 33 3a e3 4c  25 3d 31 20 b8 20 35 3a  |:.3,3:.L%=1 . 5:|
00000420  e3 4b 25 3d 31 20 b8 20  35 3a f0 34 2c 41 25 2c  |.K%=1 . 5:.4,A%,|
00000430  42 25 3a f0 31 2c 32 31  36 2c 30 3a f0 31 2c 30  |B%:.1,216,0:.1,0|
00000440  2c 32 32 30 3a f0 31 2c  2d 32 31 36 2c 30 3a f0  |,220:.1,-216,0:.|
00000450  31 2c 30 2c 2d 32 32 30  3a 41 25 3d 41 25 2b 31  |1,0,-220:A%=A%+1|
00000460  39 32 3a ed 3a 41 25 3d  30 3a 42 25 3d 42 25 2b  |92:.:A%=0:B%=B%+|
00000470  31 39 32 3a ed 3a e1 0d  00 fa 17 dd f2 63 64 3a  |192:.:.......cd:|
00000480  d1 3d 30 3a f5 20 fd 20  91 3e 31 30 3a e1 0d 01  |.=0:. . .>10:...|
00000490  04 b9 dd f2 63 6f 6c 73  3a 42 25 3d 58 25 3a 43  |....cols:B%=X%:C|
000004a0  25 3d 59 25 3a 41 25 3d  26 42 3a 58 25 3d 26 37  |%=Y%:A%=&B:X%=&7|
000004b0  30 3a 59 25 3d 30 3a 3f  26 37 30 3d 31 3a d6 20  |0:Y%=0:?&70=1:. |
000004c0  26 46 46 46 31 3a 4d 25  3d 3f 26 37 31 3a 3f 26  |&FFF1:M%=?&71:?&|
000004d0  37 30 3d 32 3a d6 20 26  46 46 46 31 3a 4e 25 3d  |70=2:. &FFF1:N%=|
000004e0  3f 26 37 31 3a 3f 26 37  30 3d 33 3a d6 20 26 46  |?&71:?&70=3:. &F|
000004f0  46 46 31 3a 48 25 3d 3f  26 37 31 3a f2 77 69 6e  |FF1:H%=?&71:.win|
00000500  64 28 35 2c 32 34 2c 32  35 2c 31 30 29 3a f2 74  |d(5,24,25,10):.t|
00000510  65 78 74 28 22 43 4f 4c  4f 55 52 20 44 45 46 49  |ext("COLOUR DEFI|
00000520  4e 45 52 22 2c 38 2c 31  31 29 3a f2 74 65 78 74  |NER",8,11):.text|
00000530  28 22 50 52 45 53 53 20  31 2c 32 20 4f 52 20 33  |("PRESS 1,2 OR 3|
00000540  22 2c 38 2c 31 34 29 0d  01 0e 2f f2 74 65 78 74  |",8,14).../.text|
00000550  28 22 54 4f 20 41 4c 54  45 52 20 43 4f 4c 4f 55  |("TO ALTER COLOU|
00000560  52 53 22 2c 37 2c 31 35  29 3a 58 25 3d 42 25 3a  |RS",7,15):X%=B%:|
00000570  59 25 3d 43 25 3a 0d 01  18 98 f2 74 65 78 74 28  |Y%=C%:.....text(|
00000580  22 52 45 54 55 52 4e 20  54 4f 20 45 58 49 54 22  |"RETURN TO EXIT"|
00000590  2c 38 2c 31 37 29 3a f2  74 65 78 74 28 22 31 20  |,8,17):.text("1 |
000005a0  3a 20 22 2c 37 2c 31 39  29 3a f2 74 65 78 74 28  |: ",7,19):.text(|
000005b0  22 32 20 3a 20 22 2c 37  2c 32 31 29 3a f2 74 65  |"2 : ",7,21):.te|
000005c0  78 74 28 22 33 20 3a 20  22 2c 37 2c 32 33 29 3a  |xt("3 : ",7,23):|
000005d0  fb 31 32 39 3a f1 8a 35  2c 31 39 29 3b 89 28 35  |.129:..5,19);.(5|
000005e0  29 3a fb 31 33 30 3a f1  8a 35 2c 32 31 29 3b 89  |):.130:..5,21);.|
000005f0  28 35 29 3a fb 31 33 31  3a f1 8a 35 2c 32 33 29  |(5):.131:..5,23)|
00000600  3b 89 28 35 29 3a fb 31  32 38 3a ef 33 30 0d 01  |;.(5):.128:.30..|
00000610  22 32 e7 20 a6 28 2d 34  39 29 20 8c 20 4d 25 3d  |"2. .(-49) . M%=|
00000620  28 28 4d 25 2b 31 29 20  80 20 37 29 3a ef 31 39  |((M%+1) . 7):.19|
00000630  2c 31 2c 4d 25 3b 30 3b  30 3b 30 3b 3a f2 63 64  |,1,M%;0;0;0;:.cd|
00000640  0d 01 2c 32 e7 20 a6 28  2d 35 30 29 20 8c 20 4e  |..,2. .(-50) . N|
00000650  25 3d 28 28 4e 25 2b 31  29 20 80 20 37 29 3a ef  |%=((N%+1) . 7):.|
00000660  31 39 2c 32 2c 4e 25 3b  30 3b 30 3b 30 3b 3a f2  |19,2,N%;0;0;0;:.|
00000670  63 64 0d 01 36 32 e7 20  a6 28 2d 31 38 29 20 8c  |cd..62. .(-18) .|
00000680  20 48 25 3d 28 28 48 25  2b 31 29 20 80 20 37 29  | H%=((H%+1) . 7)|
00000690  3a ef 31 39 2c 33 2c 48  25 3b 30 3b 30 3b 30 3b  |:.19,3,H%;0;0;0;|
000006a0  3a f2 63 64 0d 01 40 15  e7 20 ac 20 a6 28 2d 37  |:.cd..@.. . .(-7|
000006b0  34 29 20 8c 20 8d 54 62  41 0d 01 4a 0b d6 26 42  |4) . .TbA..J..&B|
000006c0  38 44 3a e1 0d 01 54 39  dd f2 73 77 69 6e 64 3a  |8D:...T9..swind:|
000006d0  f2 77 69 6e 64 28 34 2c  32 30 2c 32 36 2c 31 30  |.wind(4,20,26,10|
000006e0  29 3a f2 74 65 78 74 28  22 53 41 56 45 20 4c 45  |):.text("SAVE LE|
000006f0  56 45 4c 22 2c 31 30 2c  31 31 29 3a e1 0d 01 5e  |VEL",10,11):...^|
00000700  68 dd f2 73 61 76 65 3a  f2 73 77 69 6e 64 3a f2  |h..save:.swind:.|
00000710  74 65 78 74 28 22 50 4c  45 41 53 45 20 57 41 49  |text("PLEASE WAI|
00000720  54 22 2c 39 2c 31 35 29  3a 4b 25 3d 30 3a e3 4c  |T",9,15):K%=0:.L|
00000730  25 3d 28 26 33 35 30 30  2b 36 33 29 20 b8 20 28  |%=(&3500+63) . (|
00000740  26 33 35 30 30 2b 39 33  29 3a e7 20 a4 74 65 73  |&3500+93):. .tes|
00000750  74 28 3f 4c 25 29 3d 31  20 8c 20 4b 25 3d 31 3a  |t(?L%)=1 . K%=1:|
00000760  ed 20 8b 20 ed 0d 01 68  3e e7 20 4b 25 3d 31 20  |. . ...h>. K%=1 |
00000770  8c 20 ef 37 3a f2 74 65  78 74 28 22 45 44 47 45  |. .7:.text("EDGE|
00000780  20 4e 4f 54 20 43 4f 4d  50 4c 45 54 45 21 22 2c  | NOT COMPLETE!",|
00000790  36 2c 31 35 29 3a f2 70  72 65 74 3a d6 26 42 38  |6,15):.pret:.&B8|
000007a0  44 3a e1 0d 01 72 55 e3  4c 25 3d 28 26 33 35 30  |D:...rU.L%=(&350|
000007b0  30 2b 36 33 29 20 b8 20  28 26 33 35 30 30 2b 39  |0+63) . (&3500+9|
000007c0  39 33 29 20 88 20 33 31  3a e7 20 a4 74 65 73 74  |93) . 31:. .test|
000007d0  28 3f 4c 25 29 3d 31 20  84 20 a4 74 65 73 74 28  |(?L%)=1 . .test(|
000007e0  3f 28 4c 25 2b 33 30 29  29 3d 31 20 8c 20 4b 25  |?(L%+30))=1 . K%|
000007f0  3d 31 3a ed 20 8b 20 ed  0d 01 7c 3e e7 20 4b 25  |=1:. . ...|>. K%|
00000800  3d 31 20 8c 20 ef 37 3a  f2 74 65 78 74 28 22 45  |=1 . .7:.text("E|
00000810  44 47 45 20 4e 4f 54 20  43 4f 4d 50 4c 45 54 45  |DGE NOT COMPLETE|
00000820  21 22 2c 36 2c 31 35 29  3a f2 70 72 65 74 3a d6  |!",6,15):.pret:.|
00000830  26 42 38 44 3a e1 0d 01  86 3e e3 4c 25 3d 28 26  |&B8D:....>.L%=(&|
00000840  33 35 30 30 2b 39 39 33  29 20 b8 20 28 26 33 35  |3500+993) . (&35|
00000850  30 30 2b 31 30 32 33 29  3a e7 20 a4 74 65 73 74  |00+1023):. .test|
00000860  28 3f 4c 25 29 3d 31 20  8c 20 4b 25 3d 31 3a ed  |(?L%)=1 . K%=1:.|
00000870  20 8b 20 ed 0d 01 90 3e  e7 20 4b 25 3d 31 20 8c  | . ....>. K%=1 .|
00000880  20 ef 37 3a f2 74 65 78  74 28 22 45 44 47 45 20  | .7:.text("EDGE |
00000890  4e 4f 54 20 43 4f 4d 50  4c 45 54 45 21 22 2c 36  |NOT COMPLETE!",6|
000008a0  2c 31 35 29 3a f2 70 72  65 74 3a d6 26 42 38 44  |,15):.pret:.&B8D|
000008b0  3a e1 0d 01 9a 30 4b 25  3d 30 3a 4d 25 3d 30 3a  |:....0K%=0:M%=0:|
000008c0  e3 4c 25 3d 26 33 35 33  46 20 b8 20 26 33 38 46  |.L%=&353F . &38F|
000008d0  46 3a e7 20 3f 4c 25 3d  31 31 38 20 8c 20 4b 25  |F:. ?L%=118 . K%|
000008e0  3d 31 0d 01 a4 13 e7 20  3f 4c 25 3d 35 38 20 8c  |=1..... ?L%=58 .|
000008f0  20 4d 25 3d 31 0d 01 ae  7d ed 3a e7 20 4b 25 3d  | M%=1...}.:. K%=|
00000900  30 20 8c 20 ef 37 3a f2  74 65 78 74 28 22 4e 4f  |0 . .7:.text("NO|
00000910  20 4d 41 53 54 45 52 20  4b 45 59 21 20 20 20 20  | MASTER KEY!    |
00000920  22 2c 36 2c 31 35 29 3a  f2 70 72 65 74 3a d6 26  |",6,15):.pret:.&|
00000930  42 38 44 3a e1 20 8b 20  e7 20 4d 25 3d 30 20 8c  |B8D:. . . M%=0 .|
00000940  20 ef 37 3a f2 74 65 78  74 28 22 4e 4f 20 54 52  | .7:.text("NO TR|
00000950  41 50 44 4f 4f 52 21 20  20 20 20 20 20 22 2c 36  |APDOOR!      ",6|
00000960  2c 31 35 29 3a f2 70 72  65 74 3a d6 26 42 38 44  |,15):.pret:.&B8D|
00000970  3a e1 0d 01 b8 64 f2 73  77 69 6e 64 3a f2 74 65  |:....d.swind:.te|
00000980  78 74 28 22 53 41 56 45  20 41 53 20 4c 45 56 45  |xt("SAVE AS LEVE|
00000990  4c 20 4e 4f 2e 3a 22 2c  35 2c 31 35 29 3a f2 69  |L NO.:",5,15):.i|
000009a0  6e 70 75 74 28 32 33 2c  31 35 2c 32 29 3a e7 20  |nput(23,15,2):. |
000009b0  bb 28 41 24 29 3c 30 20  84 20 bb 28 41 24 29 3e  |.(A$)<0 . .(A$)>|
000009c0  33 32 20 8c 20 e5 20 8d  74 78 41 20 8b 20 4f 25  |32 . . .txA . O%|
000009d0  3d bb 28 41 24 29 0d 01  c2 5f f2 73 77 69 6e 64  |=.(A$)..._.swind|
000009e0  3a f2 74 65 78 74 28 22  4c 45 56 45 4c 20 54 49  |:.text("LEVEL TI|
000009f0  54 4c 45 20 28 4d 41 58  20 32 30 29 22 2c 35 2c  |TLE (MAX 20)",5,|
00000a00  31 35 29 3a f2 69 6e 70  75 74 28 36 2c 31 37 2c  |15):.input(6,17,|
00000a10  32 30 29 3a e7 20 41 24  3d 22 22 20 84 20 a9 28  |20):. A$="" . .(|
00000a20  41 24 29 3e 32 30 20 8c  20 8d 64 42 41 20 8b 20  |A$)>20 . .dBA . |
00000a30  54 24 3d 41 24 0d 01 cc  1a e7 20 a9 28 54 24 29  |T$=A$..... .(T$)|
00000a40  3c 32 30 20 8c 20 54 24  3d 22 20 22 2b 54 24 0d  |<20 . T$=" "+T$.|
00000a50  01 d6 62 f2 73 77 69 6e  64 3a f2 74 65 78 74 28  |..b.swind:.text(|
00000a60  22 54 49 4d 45 20 28 4d  41 58 20 39 38 39 39 29  |"TIME (MAX 9899)|
00000a70  3a 22 2c 35 2c 31 35 29  3a f2 69 6e 70 75 74 28  |:",5,15):.input(|
00000a80  32 31 2c 31 35 2c 34 29  3a e7 20 bb 28 41 24 29  |21,15,4):. .(A$)|
00000a90  3c 31 20 84 20 bb 28 41  24 29 3e 39 38 39 39 20  |<1 . .(A$)>9899 |
00000aa0  8c 20 8d 64 56 41 20 8b  20 5a 25 3d bb 28 41 24  |. .dVA . Z%=.(A$|
00000ab0  29 0d 01 e0 57 f2 73 77  69 6e 64 3a f2 74 65 78  |)...W.swind:.tex|
00000ac0  74 28 22 50 4f 53 49 54  49 4f 4e 20 53 54 41 52  |t("POSITION STAR|
00000ad0  54 22 2c 39 2c 31 35 29  3a f2 70 6f 69 6e 74 28  |T",9,15):.point(|
00000ae0  36 2c 36 29 3a e7 20 3f  48 25 3c 3e 34 37 20 8c  |6,6):. ?H%<>47 .|
00000af0  20 ef 37 3a e5 20 8d 64  60 41 20 8b 20 55 25 3d  | .7:. .d`A . U%=|
00000b00  41 25 3a 47 25 3d 42 25  0d 01 ea 11 e7 20 54 25  |A%:G%=B%..... T%|
00000b10  3d 30 20 8c 20 8d 54 5c  42 0d 01 f4 9c f2 73 77  |=0 . .T\B.....sw|
00000b20  69 6e 64 3a f2 74 65 78  74 28 22 53 45 54 20 44  |ind:.text("SET D|
00000b30  45 53 54 49 4e 41 54 49  4f 4e 22 2c 35 2c 31 35  |ESTINATION",5,15|
00000b40  29 3a f2 74 65 78 74 28  22 46 4f 52 20 45 41 43  |):.text("FOR EAC|
00000b50  48 20 54 45 4c 45 50 4f  52 54 45 52 22 2c 35 2c  |H TELEPORTER",5,|
00000b60  31 36 29 3a f2 70 72 65  74 3a d6 26 42 38 44 3a  |16):.pret:.&B8D:|
00000b70  46 25 3d 28 26 33 35 30  30 2b 31 34 29 3a 56 25  |F%=(&3500+14):V%|
00000b80  3d 28 26 33 35 30 30 2b  36 33 29 3a e3 59 32 25  |=(&3500+63):.Y2%|
00000b90  3d 30 20 b8 20 33 30 3a  e3 58 32 25 3d 30 20 b8  |=0 . 30:.X2%=0 .|
00000ba0  20 33 30 3a e7 20 3f 56  25 3c 3e 31 30 37 20 8c  | 30:. ?V%<>107 .|
00000bb0  20 8d 54 52 42 0d 01 fe  59 41 25 3d 58 32 25 3a  | .TRB...YA%=X2%:|
00000bc0  42 25 3d 59 32 25 3a d6  26 42 32 30 3a d4 31 2c  |B%=Y2%:.&B20:.1,|
00000bd0  2d 31 35 2c 32 30 30 2c  32 3a f2 70 6f 69 6e 74  |-15,200,2:.point|
00000be0  28 33 30 2c 33 30 29 3a  e7 20 3f 48 25 3c 3e 34  |(30,30):. ?H%<>4|
00000bf0  37 20 8c 20 41 25 3d 58  32 25 3a 42 25 3d 59 32  |7 . A%=X2%:B%=Y2|
00000c00  25 3a d6 26 42 32 30 3a  e5 20 8d 64 7e 41 0d 02  |%:.&B20:. .d~A..|
00000c10  08 97 3f 46 25 3d 41 25  3a 3f 28 46 25 2b 31 29  |..?F%=A%:?(F%+1)|
00000c20  3d 42 25 3a 4d 25 3d 2d  36 3a f5 3a 4d 25 3d 4d  |=B%:M%=-6:.:M%=M|
00000c30  25 2b 36 3a fd 20 41 25  3e 28 4d 25 2d 31 29 20  |%+6:. A%>(M%-1) |
00000c40  80 20 41 25 3c 28 4d 25  2b 37 29 3a 3f 28 46 25  |. A%<(M%+7):?(F%|
00000c50  2b 32 29 3d 4d 25 3a 4d  25 3d 2d 36 3a f5 3a 4d  |+2)=M%:M%=-6:.:M|
00000c60  25 3d 4d 25 2b 36 3a fd  20 42 25 3e 28 4d 25 2d  |%=M%+6:. B%>(M%-|
00000c70  31 29 20 80 20 42 25 3c  28 4d 25 2b 37 29 3a 3f  |1) . B%<(M%+7):?|
00000c80  28 46 25 2b 33 29 3d 4d  25 3a 46 25 3d 46 25 2b  |(F%+3)=M%:F%=F%+|
00000c90  34 3a 41 25 3d 58 32 25  3a 42 25 3d 59 32 25 3a  |4:A%=X2%:B%=Y2%:|
00000ca0  d6 26 42 32 30 0d 02 12  0f 56 25 3d 56 25 2b 31  |.&B20....V%=V%+1|
00000cb0  3a ed 3a ed 0d 02 1c 99  3f 26 33 35 30 32 3d 30  |:.:.....?&3502=0|
00000cc0  3a 3f 26 33 35 30 33 3d  30 3a 3f 26 33 35 30 34  |:?&3503=0:?&3504|
00000cd0  3d 28 55 25 2a 33 29 3a  3f 26 33 35 30 35 3d 28  |=(U%*3):?&3505=(|
00000ce0  47 25 2a 33 29 3a 56 25  3d 28 26 34 33 46 2b 55  |G%*3):V%=(&43F+U|
00000cf0  25 2b 28 47 25 2a 33 31  29 29 3a 3f 26 33 35 30  |%+(G%*31)):?&350|
00000d00  36 3d 28 56 25 20 83 20  32 35 36 29 3a 3f 26 33  |6=(V% . 256):?&3|
00000d10  35 30 37 3d 28 56 25 20  81 20 32 35 36 29 3a 3f  |507=(V% . 256):?|
00000d20  26 33 35 30 42 3d 26 33  46 3a 3f 26 33 35 30 43  |&350B=&3F:?&350C|
00000d30  3d 26 34 3a e7 20 a9 28  54 24 29 3e 31 39 20 8c  |=&4:. .(T$)>19 .|
00000d40  20 f2 63 73 74 72 3a e5  20 8d 54 70 42 0d 02 26  | .cstr:. .TpB..&|
00000d50  28 56 25 3d 32 30 2d a9  28 54 24 29 3a 54 24 3d  |(V%=20-.(T$):T$=|
00000d60  c4 28 56 25 2f 32 29 2c  22 20 22 29 2b 54 24 3a  |.(V%/2)," ")+T$:|
00000d70  f2 63 73 74 72 0d 02 30  83 41 25 3d 30 3a 42 25  |.cstr..0.A%=0:B%|
00000d80  3d 30 3a 41 25 3d 28 5a  25 20 83 20 31 30 29 3a  |=0:A%=(Z% . 10):|
00000d90  41 25 3d 28 41 25 20 84  20 28 28 28 5a 25 20 83  |A%=(A% . (((Z% .|
00000da0  20 31 30 30 29 20 81 20  31 30 29 2a 31 36 29 29  | 100) . 10)*16))|
00000db0  3a 5a 25 3d 28 5a 25 20  81 20 31 30 30 29 3a 42  |:Z%=(Z% . 100):B|
00000dc0  25 3d 28 5a 25 20 83 20  31 30 29 3a 42 25 3d 28  |%=(Z% . 10):B%=(|
00000dd0  42 25 20 84 20 28 28 5a  25 20 81 20 31 30 29 2a  |B% . ((Z% . 10)*|
00000de0  31 36 29 29 3a 3f 26 33  35 30 38 3d 41 25 3a 3f  |16)):?&3508=A%:?|
00000df0  26 33 35 30 39 3d 42 25  0d 02 3a a0 58 32 25 3d  |&3509=B%..:.X2%=|
00000e00  58 25 3a 59 32 25 3d 59  25 3a 41 25 3d 26 42 3a  |X%:Y2%=Y%:A%=&B:|
00000e10  58 25 3d 26 37 30 3a 59  25 3d 30 3a 3f 26 37 30  |X%=&70:Y%=0:?&70|
00000e20  3d 31 3a d6 26 46 46 46  31 3a 4d 25 3d 3f 26 37  |=1:.&FFF1:M%=?&7|
00000e30  31 3a 3f 26 37 30 3d 32  3a d6 26 46 46 46 31 3a  |1:?&70=2:.&FFF1:|
00000e40  4e 25 3d 3f 26 37 31 3a  3f 26 37 30 3d 33 3a d6  |N%=?&71:?&70=3:.|
00000e50  26 46 46 46 31 3a 48 25  3d 3f 26 37 31 3a 58 25  |&FFF1:H%=?&71:X%|
00000e60  3d 58 32 25 3a 59 25 3d  59 32 25 3a 58 32 25 3d  |=X2%:Y%=Y2%:X2%=|
00000e70  32 33 36 3a 59 32 25 3d  34 36 3a 3f 26 33 35 30  |236:Y2%=46:?&350|
00000e80  30 3d 4d 25 3a 3f 26 33  35 30 31 3d 4e 25 3a 3f  |0=M%:?&3501=N%:?|
00000e90  26 33 35 30 41 3d 48 25  0d 02 44 0a f2 73 77 69  |&350A=H%..D..swi|
00000ea0  6e 64 0d 02 4e 84 f2 74  65 78 74 28 22 50 52 45  |nd..N..text("PRE|
00000eb0  50 41 52 45 20 54 4f 20  53 41 56 45 22 2c 37 2c  |PARE TO SAVE",7,|
00000ec0  31 34 29 3a f2 74 65 78  74 28 22 4c 45 56 45 4c  |14):.text("LEVEL|
00000ed0  20 44 41 54 41 22 2c 31  30 2c 31 36 29 3a f2 70  | DATA",10,16):.p|
00000ee0  72 65 74 3a ef 32 38 2c  33 2c 31 39 2c 31 32 2c  |ret:.28,3,19,12,|
00000ef0  31 33 3a fb 31 32 38 3a  db 3a e7 20 4f 25 3c 31  |13:.128:.:. O%<1|
00000f00  30 20 8c 20 54 24 3d 22  4c 45 56 2e 30 22 2b c3  |0 . T$="LEV.0"+.|
00000f10  28 4f 25 29 20 8b 20 54  24 3d 22 4c 45 56 2e 22  |(O%) . T$="LEV."|
00000f20  2b c3 28 4f 25 29 0d 02  58 68 ff 28 22 2a 53 41  |+.(O%)..Xh.("*SA|
00000f30  56 45 20 22 2b 54 24 2b  22 20 33 35 30 30 20 33  |VE "+T$+" 3500 3|
00000f40  39 30 30 20 34 30 30 20  34 30 30 22 29 3a ef 32  |900 400 400"):.2|
00000f50  36 3a f2 73 77 69 6e 64  3a f2 67 70 63 64 3a 41  |6:.swind:.gpcd:A|
00000f60  24 3d 22 50 41 53 53 43  4f 44 45 20 3a 22 2b 54  |$="PASSCODE :"+T|
00000f70  24 3a f2 74 65 78 74 28  41 24 2c 36 2c 31 35 29  |$:.text(A$,6,15)|
00000f80  3a f2 70 72 65 74 3a d6  26 42 38 44 3a e1 0d 02  |:.pret:.&B8D:...|
00000f90  63 65 dd f2 67 70 63 64  3a 54 24 3d bd 28 34 38  |ce..gpcd:T$=.(48|
00000fa0  2b 28 3f 26 33 35 33 33  20 80 20 37 29 29 2b bd  |+(?&3533 . 7))+.|
00000fb0  28 34 38 2b 28 3f 26 33  35 33 34 20 80 20 37 29  |(48+(?&3534 . 7)|
00000fc0  29 2b bd 28 34 38 2b 28  28 3f 26 33 35 33 33 20  |)+.(48+((?&3533 |
00000fd0  80 20 35 36 29 2f 38 29  29 2b bd 28 34 38 2b 28  |. 56)/8))+.(48+(|
00000fe0  28 3f 26 33 35 33 34 20  80 20 35 36 29 2f 38 29  |(?&3534 . 56)/8)|
00000ff0  29 3a e1 0d 02 6c 4a dd  f2 70 72 65 74 3a f2 74  |):...lJ..pret:.t|
00001000  65 78 74 28 22 50 52 45  53 53 20 52 45 54 55 52  |ext("PRESS RETUR|
00001010  4e 22 2c 39 2c 31 39 29  3a f5 20 fd 20 a6 28 2d  |N",9,19):. . .(-|
00001020  37 34 29 3a d1 3d 30 3a  f5 20 fd 20 91 3e 33 30  |74):.=0:. . .>30|
00001030  3a ff 28 22 2a 46 58 32  31 22 29 3a e1 0d 02 76  |:.("*FX21"):...v|
00001040  23 dd a4 74 65 73 74 28  41 25 29 3a e7 20 41 25  |#..test(A%):. A%|
00001050  3e 33 31 20 80 20 41 25  3c 33 37 20 8c 20 3d 30  |>31 . A%<37 . =0|
00001060  0d 02 80 18 e7 20 41 25  3e 37 31 20 80 20 41 25  |..... A%>71 . A%|
00001070  3c 38 35 20 8c 20 3d 30  0d 02 8a 32 e7 20 41 25  |<85 . =0...2. A%|
00001080  3d 38 36 20 84 20 41 25  3d 39 33 20 84 20 41 25  |=86 . A%=93 . A%|
00001090  3d 39 34 20 84 20 41 25  3d 31 31 36 20 84 20 41  |=94 . A%=116 . A|
000010a0  25 3d 31 31 37 20 8c 20  3d 30 0d 02 94 1a e7 20  |%=117 . =0..... |
000010b0  41 25 3e 31 31 38 20 80  20 41 25 3c 31 33 32 20  |A%>118 . A%<132 |
000010c0  8c 20 3d 30 0d 02 9e 1a  e7 20 41 25 3e 31 33 32  |. =0..... A%>132|
000010d0  20 80 20 41 25 3c 31 33  38 20 8c 20 3d 30 0d 02  | . A%<138 . =0..|
000010e0  a8 11 e7 20 41 25 3d 32  35 30 20 8c 20 3d 30 0d  |... A%=250 . =0.|
000010f0  02 b2 06 3d 31 0d 02 bc  3b dd f2 63 73 74 72 3a  |...=1...;..cstr:|
00001100  41 25 3d 28 26 33 35 30  30 2b 34 32 29 3a e3 4c  |A%=(&3500+42):.L|
00001110  25 3d 41 25 20 b8 20 28  41 25 2b 32 30 29 3a 3f  |%=A% . (A%+20):?|
00001120  4c 25 3d 33 32 3a ed 3a  24 41 25 3d 54 24 3a e1  |L%=32:.:$A%=T$:.|
00001130  0d 02 c6 49 dd f2 70 6f  69 6e 74 28 4b 25 2c 4c  |...I..point(K%,L|
00001140  25 29 3a e3 41 25 3d 31  20 b8 20 33 30 30 3a ed  |%):.A%=1 . 300:.|
00001150  3a ff 28 22 2a 46 58 32  31 22 29 3a 41 25 3d 30  |:.("*FX21"):A%=0|
00001160  3a 42 25 3d 30 3a 48 25  3d 28 26 33 35 30 30 2b  |:B%=0:H%=(&3500+|
00001170  36 33 29 3a d6 26 42 32  30 0d 02 d0 36 ff 28 22  |63):.&B20...6.("|
00001180  2a 46 58 31 39 22 29 3a  d6 26 42 32 30 3a e7 20  |*FX19"):.&B20:. |
00001190  a6 28 2d 39 38 29 20 80  20 41 25 3e 30 20 8c 20  |.(-98) . A%>0 . |
000011a0  41 25 3d 41 25 2d 31 3a  48 25 3d 48 25 2d 31 0d  |A%=A%-1:H%=H%-1.|
000011b0  02 da 26 e7 20 a6 28 2d  37 33 29 20 80 20 42 25  |..&. .(-73) . B%|
000011c0  3e 30 20 8c 20 42 25 3d  42 25 2d 31 3a 48 25 3d  |>0 . B%=B%-1:H%=|
000011d0  48 25 2d 33 31 0d 02 e4  26 e7 20 a6 28 2d 36 37  |H%-31...&. .(-67|
000011e0  29 20 80 20 41 25 3c 4b  25 20 8c 20 41 25 3d 41  |) . A%<K% . A%=A|
000011f0  25 2b 31 3a 48 25 3d 48  25 2b 31 0d 02 ee 28 e7  |%+1:H%=H%+1...(.|
00001200  20 a6 28 2d 31 30 35 29  20 80 20 42 25 3c 4c 25  | .(-105) . B%<L%|
00001210  20 8c 20 42 25 3d 42 25  2b 31 3a 48 25 3d 48 25  | . B%=B%+1:H%=H%|
00001220  2b 33 31 0d 02 f8 10 e7  20 a6 28 2d 37 34 29 20  |+31..... .(-74) |
00001230  8c 20 e1 0d 03 02 1b ff  28 22 2a 46 58 31 39 22  |. ......("*FX19"|
00001240  29 3a d6 26 42 32 30 3a  e5 20 8d 64 50 42 0d 03  |):.&B20:. .dPB..|
00001250  0c eb dc 20 33 32 2c 33  33 2c 33 34 2c 33 35 2c  |... 32,33,34,35,|
00001260  33 36 2c 34 35 2c 34 36  2c 34 38 2c 34 39 2c 35  |36,45,46,48,49,5|
00001270  38 2c 35 39 2c 36 30 2c  36 31 2c 36 32 2c 36 33  |8,59,60,61,62,63|
00001280  2c 37 32 2c 37 33 2c 37  34 2c 37 35 2c 37 36 2c  |,72,73,74,75,76,|
00001290  37 37 2c 37 38 2c 37 39  2c 38 30 2c 38 31 2c 38  |77,78,79,80,81,8|
000012a0  32 2c 38 33 2c 38 34 2c  38 36 2c 38 37 2c 38 38  |2,83,84,86,87,88|
000012b0  2c 38 39 2c 39 30 2c 39  31 2c 39 32 2c 39 33 2c  |,89,90,91,92,93,|
000012c0  39 34 2c 39 35 2c 39 36  2c 39 37 2c 39 38 2c 39  |94,95,96,97,98,9|
000012d0  39 2c 31 30 30 2c 31 30  31 2c 31 30 32 2c 31 30  |9,100,101,102,10|
000012e0  33 2c 31 30 34 2c 31 30  35 2c 31 30 36 2c 31 30  |3,104,105,106,10|
000012f0  37 2c 31 30 38 2c 31 30  39 2c 31 31 30 2c 31 31  |7,108,109,110,11|
00001300  31 2c 31 31 32 2c 31 31  33 2c 31 31 34 2c 31 31  |1,112,113,114,11|
00001310  35 2c 31 31 36 2c 31 31  37 2c 31 31 38 2c 31 31  |5,116,117,118,11|
00001320  39 2c 31 32 30 2c 31 32  31 2c 31 32 32 2c 31 32  |9,120,121,122,12|
00001330  33 2c 31 32 34 2c 31 32  35 0d 03 16 35 dc 20 31  |3,124,125...5. 1|
00001340  32 36 2c 31 32 37 2c 31  32 38 2c 31 32 39 2c 31  |26,127,128,129,1|
00001350  33 30 2c 31 33 31 2c 31  33 32 2c 31 33 33 2c 31  |30,131,132,133,1|
00001360  33 34 2c 31 33 35 2c 31  33 36 2c 31 33 37 0d 03  |34,135,136,137..|
00001370  34 45 dd f2 70 73 68 65  74 3a f7 20 8d 54 4c 43  |4E..pshet:. .TLC|
00001380  3a e7 20 53 25 3d 31 20  8c 20 8d 54 7e 43 20 8b  |:. S%=1 . .T~C .|
00001390  20 e3 4c 25 3d 31 20 b8  20 28 53 25 2d 31 29 3a  | .L%=1 . (S%-1):|
000013a0  e3 4b 25 3d 31 20 b8 20  32 30 3a f3 20 41 25 3a  |.K%=1 . 20:. A%:|
000013b0  ed 3a ed 0d 03 3e 53 e3  42 25 3d 32 32 20 b8 20  |.:...>S.B%=22 . |
000013c0  33 30 20 88 20 32 3a e3  41 25 3d 33 32 20 b8 20  |30 . 2:.A%=32 . |
000013d0  33 38 20 88 20 32 3a f3  20 43 25 3a 53 25 28 28  |38 . 2:. C%:S%((|
000013e0  28 41 25 2d 33 32 29 2f  32 29 2c 28 28 42 25 2d  |(A%-32)/2),((B%-|
000013f0  32 32 29 2f 32 29 29 3d  43 25 3a d6 26 41 41 41  |22)/2))=C%:.&AAA|
00001400  3a ed 3a ed 3a e1 0d 03  48 50 dd f2 69 73 68 65  |:.:.:...HP..ishe|
00001410  74 3a f0 34 2c 31 30 31  36 2b 28 51 25 2a 36 34  |t:.4,1016+(Q%*64|
00001420  29 2c 32 38 37 2d 28 57  25 2a 36 34 29 3a e6 33  |),287-(W%*64):.3|
00001430  2c 33 3a f0 31 2c 34 30  2c 30 3a f0 31 2c 30 2c  |,3:.1,40,0:.1,0,|
00001440  33 36 3a f0 31 2c 2d 34  30 2c 30 3a f0 31 2c 30  |36:.1,-40,0:.1,0|
00001450  2c 2d 33 36 3a e1 0d 03  52 c8 dd f2 77 69 6e 64  |,-36:...R...wind|
00001460  28 41 25 2c 42 25 2c 43  25 2c 44 25 29 3a 43 25  |(A%,B%,C%,D%):C%|
00001470  3d 28 28 43 25 2d 41 25  29 2a 33 32 29 2b 32 34  |=((C%-A%)*32)+24|
00001480  3a 44 25 3d 28 28 42 25  2d 44 25 29 2a 33 32 29  |:D%=((B%-D%)*32)|
00001490  2b 32 38 3a ef 32 34 2c  28 41 25 2a 33 32 29 3b  |+28:.24,(A%*32);|
000014a0  28 31 30 32 33 2d 28 42  25 2a 33 32 29 29 2d 32  |(1023-(B%*32))-2|
000014b0  38 3b 28 41 25 2a 33 32  29 2b 43 25 3b 28 28 31  |8;(A%*32)+C%;((1|
000014c0  30 32 33 2d 28 42 25 2a  33 32 29 29 2d 32 38 29  |023-(B%*32))-28)|
000014d0  2b 44 25 3b 3a e6 30 2c  31 32 38 3a da 3a ef 32  |+D%;:.0,128:.:.2|
000014e0  36 3a e6 30 2c 31 3a f0  34 2c 28 41 25 2a 33 32  |6:.0,1:.4,(A%*32|
000014f0  29 2d 38 2c 28 28 31 30  32 33 2d 28 42 25 2a 33  |)-8,((1023-(B%*3|
00001500  32 29 29 2d 32 38 29 2d  34 3a f0 31 2c 43 25 2b  |2))-28)-4:.1,C%+|
00001510  31 36 2c 30 3a f0 31 2c  30 2c 44 25 2b 38 0d 03  |16,0:.1,0,D%+8..|
00001520  5c 20 f0 31 2c 2d 28 43  25 2b 31 36 29 2c 30 3a  |\ .1,-(C%+16),0:|
00001530  f0 31 2c 30 2c 2d 28 44  25 2b 38 29 3a e1 0d 03  |.1,0,-(D%+8):...|
00001540  66 26 dd f2 74 65 78 74  28 41 24 2c 41 25 2c 42  |f&..text(A$,A%,B|
00001550  25 29 3a 24 26 33 34 41  30 3d 41 24 3a d6 26 41  |%):$&34A0=A$:.&A|
00001560  30 30 3a e1 0d 03 70 39  dd f2 69 6e 70 75 74 28  |00:...p9..input(|
00001570  41 25 2c 42 25 2c 43 25  29 3a e3 4c 25 3d 31 30  |A%,B%,C%):.L%=10|
00001580  30 20 b8 20 30 20 88 20  2d 31 3a ed 3a 4c 25 3d  |0 . 0 . -1:.:L%=|
00001590  30 3a 41 24 3d 22 22 3a  2a 46 58 32 31 0d 03 7a  |0:A$="":*FX21..z|
000015a0  1b 4b 25 3d a5 3a e7 20  4b 25 3d 31 33 20 80 20  |.K%=.:. K%=13 . |
000015b0  4c 25 3e 30 20 8c 20 e1  0d 03 84 5b e7 20 4b 25  |L%>0 . ....[. K%|
000015c0  3e 33 31 20 80 20 4b 25  3c 31 32 37 20 80 20 4c  |>31 . K%<127 . L|
000015d0  25 3c 43 25 20 8c 20 41  24 3d 41 24 2b bd 28 4b  |%<C% . A$=A$+.(K|
000015e0  25 29 3a 3f 26 33 34 41  30 3d 4b 25 3a 3f 26 33  |%):?&34A0=K%:?&3|
000015f0  34 41 31 3d 31 33 3a d6  26 41 30 30 3a 41 25 3d  |4A1=13:.&A00:A%=|
00001600  41 25 2b 31 3a 4c 25 3d  4c 25 2b 31 3a e5 20 8d  |A%+1:L%=L%+1:. .|
00001610  44 7a 43 0d 03 8e 69 e7  20 4b 25 3d 31 32 37 20  |DzC...i. K%=127 |
00001620  80 20 4c 25 3e 30 20 8c  20 41 25 3d 41 25 2d 31  |. L%>0 . A%=A%-1|
00001630  3a 3f 26 33 34 41 30 3d  33 32 3a 3f 26 33 34 41  |:?&34A0=32:?&34A|
00001640  31 3d 31 33 3a d6 26 41  30 30 3a 4c 25 3d 4c 25  |1=13:.&A00:L%=L%|
00001650  2d 31 3a e7 20 4c 25 3d  30 20 8c 20 41 24 3d 22  |-1:. L%=0 . A$="|
00001660  22 3a e5 20 8d 44 7a 43  20 8b 20 41 24 3d c0 41  |":. .DzC . A$=.A|
00001670  24 2c 4c 25 29 3a e5 20  8d 44 7a 43 0d 03 98 0a  |$,L%):. .DzC....|
00001680  e5 20 8d 44 7a 43 0d 03  a2 05 3a 0d 03 ac 98 53  |. .DzC....:....S|
00001690  25 3d 31 3a f2 70 73 68  65 74 3a 51 25 3d 30 3a  |%=1:.pshet:Q%=0:|
000016a0  57 25 3d 30 3a 58 25 3d  30 3a 59 25 3d 30 3a 45  |W%=0:X%=0:Y%=0:E|
000016b0  25 3d 28 26 33 35 30 30  2b 36 33 29 3a 49 25 3d  |%=(&3500+63):I%=|
000016c0  53 25 28 51 25 2c 57 25  29 3a f2 69 73 68 65 74  |S%(Q%,W%):.ishet|
000016d0  3a d6 26 42 38 44 3a 54  25 3d 30 3a 52 25 3d 30  |:.&B8D:T%=0:R%=0|
000016e0  3a 41 25 3d 33 34 3a 42  25 3d 31 36 3a 43 25 3d  |:A%=34:B%=16:C%=|
000016f0  49 25 3a d6 26 42 33 31  3a 41 25 3d 33 34 3a 42  |I%:.&B31:A%=34:B|
00001700  25 3d 31 30 3a 43 25 3d  3f 45 25 3a d6 26 42 33  |%=10:C%=?E%:.&B3|
00001710  31 3a 41 25 3d 58 25 3a  42 25 3d 59 25 3a d6 26  |1:A%=X%:B%=Y%:.&|
00001720  42 32 30 0d 03 b6 42 ff  28 22 2a 46 58 31 39 22  |B20...B.("*FX19"|
00001730  29 3a 41 25 3d 58 25 3a  42 25 3d 59 25 3a d6 26  |):A%=X%:B%=Y%:.&|
00001740  42 32 30 3a e7 20 a6 28  2d 39 38 29 20 80 20 58  |B20:. .(-98) . X|
00001750  25 3e 30 20 8c 20 58 25  3d 58 25 2d 31 3a 45 25  |%>0 . X%=X%-1:E%|
00001760  3d 45 25 2d 31 0d 03 c0  26 e7 20 a6 28 2d 36 37  |=E%-1...&. .(-67|
00001770  29 20 80 20 58 25 3c 33  30 20 8c 20 58 25 3d 58  |) . X%<30 . X%=X|
00001780  25 2b 31 3a 45 25 3d 45  25 2b 31 0d 03 ca 26 e7  |%+1:E%=E%+1...&.|
00001790  20 a6 28 2d 37 33 29 20  80 20 59 25 3e 30 20 8c  | .(-73) . Y%>0 .|
000017a0  20 59 25 3d 59 25 2d 31  3a 45 25 3d 45 25 2d 33  | Y%=Y%-1:E%=E%-3|
000017b0  31 0d 03 d4 28 e7 20 a6  28 2d 31 30 35 29 20 80  |1...(. .(-105) .|
000017c0  20 59 25 3c 33 30 20 8c  20 59 25 3d 59 25 2b 31  | Y%<30 . Y%=Y%+1|
000017d0  3a 45 25 3d 45 25 2b 33  31 0d 03 de 2f 41 25 3d  |:E%=E%+31.../A%=|
000017e0  33 34 3a 42 25 3d 31 30  3a e7 20 3f 45 25 3d 32  |34:B%=10:. ?E%=2|
000017f0  35 30 20 8c 20 f2 69 69  69 20 8b 20 43 25 3d 3f  |50 . .iii . C%=?|
00001800  45 25 3a d6 26 42 33 31  0d 03 e8 50 e7 20 a6 28  |E%:.&B31...P. .(|
00001810  2d 36 36 29 20 80 20 51  25 3e 30 20 8c 20 f2 69  |-66) . Q%>0 . .i|
00001820  73 68 65 74 3a 51 25 3d  51 25 2d 31 3a f2 69 73  |shet:Q%=Q%-1:.is|
00001830  68 65 74 3a 49 25 3d 53  25 28 51 25 2c 57 25 29  |het:I%=S%(Q%,W%)|
00001840  3a 41 25 3d 33 34 3a 42  25 3d 31 36 3a 43 25 3d  |:A%=34:B%=16:C%=|
00001850  49 25 3a d6 26 42 33 31  0d 03 f2 50 e7 20 a6 28  |I%:.&B31...P. .(|
00001860  2d 38 32 29 20 80 20 51  25 3c 33 20 8c 20 f2 69  |-82) . Q%<3 . .i|
00001870  73 68 65 74 3a 51 25 3d  51 25 2b 31 3a f2 69 73  |shet:Q%=Q%+1:.is|
00001880  68 65 74 3a 49 25 3d 53  25 28 51 25 2c 57 25 29  |het:I%=S%(Q%,W%)|
00001890  3a 41 25 3d 33 34 3a 42  25 3d 31 36 3a 43 25 3d  |:A%=34:B%=16:C%=|
000018a0  49 25 3a d6 26 42 33 31  0d 03 fc 50 e7 20 a6 28  |I%:.&B31...P. .(|
000018b0  2d 35 36 29 20 80 20 57  25 3e 30 20 8c 20 f2 69  |-56) . W%>0 . .i|
000018c0  73 68 65 74 3a 57 25 3d  57 25 2d 31 3a f2 69 73  |shet:W%=W%-1:.is|
000018d0  68 65 74 3a 49 25 3d 53  25 28 51 25 2c 57 25 29  |het:I%=S%(Q%,W%)|
000018e0  3a 41 25 3d 33 34 3a 42  25 3d 31 36 3a 43 25 3d  |:A%=34:B%=16:C%=|
000018f0  49 25 3a d6 26 42 33 31  0d 04 06 50 e7 20 a6 28  |I%:.&B31...P. .(|
00001900  2d 38 37 29 20 80 20 57  25 3c 34 20 8c 20 f2 69  |-87) . W%<4 . .i|
00001910  73 68 65 74 3a 57 25 3d  57 25 2b 31 3a f2 69 73  |shet:W%=W%+1:.is|
00001920  68 65 74 3a 49 25 3d 53  25 28 51 25 2c 57 25 29  |het:I%=S%(Q%,W%)|
00001930  3a 41 25 3d 33 34 3a 42  25 3d 31 36 3a 43 25 3d  |:A%=34:B%=16:C%=|
00001940  49 25 3a d6 26 42 33 31  0d 04 10 15 e7 20 ac 20  |I%:.&B31..... . |
00001950  a6 28 2d 34 30 29 20 8c  20 8d 54 6e 44 0d 04 1a  |.(-40) . .TnD...|
00001960  19 53 25 3d 53 25 2b 31  3a e7 20 53 25 3e 34 20  |.S%=S%+1:. S%>4 |
00001970  8c 20 53 25 3d 31 0d 04  24 62 f2 70 73 68 65 74  |. S%=1..$b.pshet|
00001980  3a 49 25 3d 53 25 28 51  25 2c 57 25 29 3a 41 25  |:I%=S%(Q%,W%):A%|
00001990  3d 33 34 3a 42 25 3d 31  36 3a 43 25 3d 49 25 3a  |=34:B%=16:C%=I%:|
000019a0  d6 26 42 33 31 3a 24 26  33 34 41 30 3d 22 53 48  |.&B31:$&34A0="SH|
000019b0  45 45 54 20 20 22 3a 3f  26 33 34 41 36 3d 97 28  |EET  ":?&34A6=.(|
000019c0  c3 28 53 25 29 29 3a 41  25 3d 33 32 3a 42 25 3d  |.(S%)):A%=32:B%=|
000019d0  32 30 3a d6 26 41 30 30  0d 04 2e 13 e7 20 a6 28  |20:.&A00..... .(|
000019e0  2d 32 30 29 20 8c 20 f2  63 61 74 0d 04 38 0a e5  |-20) . .cat..8..|
000019f0  20 8d 44 4c 44 0d 04 42  44 dd f2 69 69 69 3a f2  | .DLD..BD..iii:.|
00001a00  74 65 78 74 28 22 20 20  20 22 2c 33 34 2c 31 30  |text("   ",34,10|
00001a10  29 3a f2 74 65 78 74 28  22 49 4e 56 22 2c 33 34  |):.text("INV",34|
00001a20  2c 31 31 29 3a f2 74 65  78 74 28 22 20 20 20 22  |,11):.text("   "|
00001a30  2c 33 34 2c 31 32 29 3a  e1 0d 04 4c 15 e7 20 ac  |,34,12):...L.. .|
00001a40  20 a6 28 2d 37 34 29 20  8c 20 8d 74 48 44 0d 04  | .(-74) . .tHD..|
00001a50  56 2b e7 20 28 49 25 3e  31 30 39 20 80 20 49 25  |V+. (I%>109 . I%|
00001a60  3c 31 31 34 29 20 80 20  52 25 3e 31 31 20 8c 20  |<114) . R%>11 . |
00001a70  ef 37 3a e5 20 8d 74 48  44 0d 04 60 1f e7 20 49  |.7:. .tHD..`.. I|
00001a80  25 3d 31 30 37 20 80 20  54 25 3e 36 20 8c 20 ef  |%=107 . T%>6 . .|
00001a90  37 3a e5 20 8d 74 48 44  0d 04 6a 07 f2 65 62 0d  |7:. .tHD..j..eb.|
00001aa0  04 74 29 3f 45 25 3d 49  25 3a 43 25 3d 49 25 3a  |.t)?E%=I%:C%=I%:|
00001ab0  d6 26 42 45 39 3a e7 20  49 25 3d 31 30 37 20 8c  |.&BE9:. I%=107 .|
00001ac0  20 54 25 3d 54 25 2b 31  0d 04 7e 1f e7 20 49 25  | T%=T%+1..~.. I%|
00001ad0  3e 31 30 39 20 80 20 49  25 3c 31 31 34 20 8c 20  |>109 . I%<114 . |
00001ae0  52 25 3d 52 25 2b 31 0d  04 88 15 e7 20 ac 20 a6  |R%=R%+1..... . .|
00001af0  28 2d 39 30 29 20 8c 20  8d 64 4e 44 0d 04 92 0e  |(-90) . .dND....|
00001b00  f2 65 62 3a e5 20 8d 74  5c 44 0d 04 9c 11 3f 45  |.eb:. .t\D....?E|
00001b10  25 3d 34 37 3a e5 20 8d  64 4e 44 0d 04 a6 2d dd  |%=47:. .dND...-.|
00001b20  f2 65 62 3a e7 20 3f 45  25 3e 31 30 39 20 80 20  |.eb:. ?E%>109 . |
00001b30  3f 45 25 3c 31 31 34 20  8c 20 52 25 3d 52 25 2d  |?E%<114 . R%=R%-|
00001b40  31 3a e5 20 8d 74 7a 44  0d 04 b0 17 e7 20 3f 45  |1:. .tzD..... ?E|
00001b50  25 3d 31 30 37 20 8c 20  54 25 3d 54 25 2d 31 0d  |%=107 . T%=T%-1.|
00001b60  04 ba 2f 41 25 3d 58 25  3a 42 25 3d 59 25 3a 43  |../A%=X%:B%=Y%:C|
00001b70  25 3d 3f 45 25 3a e7 20  43 25 3d 32 35 30 20 8c  |%=?E%:. C%=250 .|
00001b80  20 d6 26 42 32 30 20 8b  20 d6 26 42 45 39 0d 04  | .&B20 . .&BE9..|
00001b90  c4 05 e1 0d 04 ce 15 e7  20 ac 20 a6 28 2d 31 38  |........ . .(-18|
00001ba0  29 20 8c 20 8d 64 6c 44  0d 04 d8 9f f2 77 69 6e  |) . .dlD.....win|
00001bb0  64 28 35 2c 32 30 2c 32  35 2c 31 30 29 3a f2 74  |d(5,20,25,10):.t|
00001bc0  65 78 74 28 22 54 48 49  53 20 57 49 4c 4c 20 57  |ext("THIS WILL W|
00001bd0  49 50 45 20 54 48 45 22  2c 36 2c 31 31 29 3a f2  |IPE THE",6,11):.|
00001be0  74 65 78 74 28 22 45 4e  54 49 52 45 20 4c 45 56  |text("ENTIRE LEV|
00001bf0  45 4c 21 22 2c 38 2c 31  33 29 3a f2 74 65 78 74  |EL!",8,13):.text|
00001c00  28 22 41 52 45 20 59 4f  55 20 53 55 52 45 20 28  |("ARE YOU SURE (|
00001c10  59 2f 4e 29 22 2c 36 2c  31 37 29 3a f5 20 fd 20  |Y/N)",6,17):. . |
00001c20  a6 28 2d 36 39 29 20 84  20 a6 28 2d 38 36 29 3a  |.(-69) . .(-86):|
00001c30  e7 20 a6 28 2d 38 36 29  20 8c 20 d6 26 42 38 44  |. .(-86) . .&B8D|
00001c40  3a e5 20 8d 64 6c 44 0d  04 e2 41 e3 4c 25 3d 28  |:. .dlD...A.L%=(|
00001c50  26 33 35 30 30 2b 36 33  29 20 b8 20 28 26 33 35  |&3500+63) . (&35|
00001c60  30 30 2b 31 30 32 33 29  3a 3f 4c 25 3d 34 37 3a  |00+1023):?L%=47:|
00001c70  ed 3a 52 25 3d 30 3a 54  25 3d 30 3a d6 26 42 38  |.:R%=0:T%=0:.&B8|
00001c80  44 3a e5 20 8d 64 6c 44  0d 04 ec 14 e7 20 a6 28  |D:. .dlD..... .(|
00001c90  2d 34 39 29 20 8c 20 f2  6c 6f 61 64 0d 04 f6 14  |-49) . .load....|
00001ca0  e7 20 a6 28 2d 38 34 29  20 8c 20 f2 67 72 69 64  |. .(-84) . .grid|
00001cb0  0d 05 00 14 e7 20 a6 28  2d 31 39 29 20 8c 20 f2  |..... .(-19) . .|
00001cc0  63 6f 6c 73 0d 05 0a 14  e7 20 a6 28 2d 35 30 29  |cols..... .(-50)|
00001cd0  20 8c 20 f2 73 61 76 65  0d 05 14 1f e7 20 a6 28  | . .save..... .(|
00001ce0  2d 31 29 20 8c 20 f2 65  62 3a 3f 45 25 3d 32 35  |-1) . .eb:?E%=25|
00001cf0  30 3a d6 26 42 32 30 0d  05 1e 26 41 25 3d 58 25  |0:.&B20...&A%=X%|
00001d00  3a 42 25 3d 59 25 3a d6  26 42 32 30 3a ff 28 22  |:B%=Y%:.&B20:.("|
00001d10  2a 46 58 31 39 22 29 3a  e5 8d 74 76 43 0d ff     |*FX19"):..tvC..|
00001d1f
WMagic2/DEF2.m0
WMagic2/DEF2.m1
WMagic2/DEF2.m2
WMagic2/DEF2.m4
WMagic2/DEF2.m5