Home » Personal collection » Acorn ADFS disks » Greaseweazled » adfs_Dominic_3B.adf » Files/Programs/DART0

Files/Programs/DART0

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 » Greaseweazled » adfs_Dominic_3B.adf
Filename: Files/Programs/DART0
Read OK:
File size: 43EB bytes
Load address: FFFFFB42
Exec address: A4978FE6
File contents
   40ONERRORGOTO60
   50GOSUB32000
   60ONERRORGOTO30000
   90K%=0:MODE4:T%=9:GOSUB9000
  110G%=0:E%=0:O%=0:C%=0:T%=0:P%=0:D%=0:b$=" isn't understood":d$="No more room":e$=" has no value":f$="Too many ENDs":g$="Give name":h$="Can't call variable ":i$="Missing "
 1070I=17:j=250:k=10:l=4:m=5:n=15:o=10:p=12:q=12:DIMa j,p$(j),v$(k),v(k),b m,c m,d n+1,q%(n,l),n$(p+n),e n+1,f n+1,l$(q),w$(10),g%(o),h%(o),i o,v%30
 1090FORz=1TOp:READn$(z):NEXT:FORz=1TOq:READl$(z):NEXT
 1092DATAFORWARD,BACKWARD,LEFT,RIGHT,CLEAN,CENTRE,FRESH,PEN,HOOT,MAKE,REPEAT,END,VALUES,COMMANDS,LIST,FINISH,BUILD,CHANGE,DELETE,RESET,FAST,SLOW,SAVE,LOAD
 1105u$=CHR$237:p%=TRUE:s=1:x=0:t=0:u=0:v=100:w=0:PROCg:PROCc:PROCb:PRINT" For the list of commands type COMMANDS";
 1120*FX229,1
 1121IF(G%ANDNOTD%)THENPROCd
 1122?&FE6C=&C0:?&FE62=0:PROCb:PRINT'":";:c$=FNi:O%=0:IFE%ANDG%PROCt(0):PROCb:E%=0
 1125*FX4,0
 1130IFLEFT$(c$,1)=":"c$=MID$(c$,2):GOTO1130
 1140IFc$=""ORc$=CHR$27GOTO1120
 1141IFLEFT$(c$,1)="*"THENPROCj(LEFT$(c$,30)):GOTO1120
 1160R=0:F=0:g=0:GOSUB1230:GOSUB7610:IFG=1:ONz GOSUB1940,1330,2200,9000,5000,6000,7000,2150,2005,2020,9100,9500:GOTO1120
 1190GOSUB7510:IFS=1:PROCe(c$+b$):ELSEIFK<p-1:GOSUB3004:ELSEIFK=p-1:GOSUB4500:ELSEIFK=p:PROCe(f$):ELSEGOSUB5512
 1195GOTO1120
 1230GOSUB1810:p$="":FORA=2TOLENc$:IFMID$(c$,A,1)=" "p$=MID$(c$,A+1):c$=LEFT$(c$,A-1):A=99
 1280NEXT:B=0:RETURN
 1330PROCt(0):VDU11:FORI%=1TOp:PRINT" "n$(I%):NEXT:PRINT:FORI%=1TOq:PRINT" "l$(I%):NEXT:RETURN
 1810x$="":H=1:FORA=1TOLENc$:y$=MID$(c$,A,1):IFH=1:IFy$=" "GOTO1860ELSEH=0
 1836IFy$=" "H=1
 1840IFy$>="a"ANDy$<="z"y$=CHR$(ASC(y$)-32)
 1850x$=x$+y$
 1860NEXT:c$=x$:IFH=1:IFLENc$>0:c$=LEFT$(c$,LENc$-1)
 1880RETURN
 1940PROCt(0):IFx=0:PROCo("No values set"):GOTO1970ELSEPROCo("Store  Value"):PROCo("=====  ====="):PRINT:FORI%=1TOx:PRINTv$(I%)" ";:x$=STR$(INT(v(I%)*100+.5)/100):PRINTTAB(12-LENx$)x$:VDU11:NEXT
 1970PRINT:PROCo("Room for "+STR$(k-x)+" more"):RETURN
 1982B=1:w$(1)="":FORA=1TOLENp$:y$=MID$(p$,A,1):IFy$<>" "ANDy$<>","w$(B)=w$(B)+y$ELSEIFw$(B)<>""B=B+1:w$(B)=""
 1985NEXT:IFw$(B)=""B=B-1
 1988RETURN
 1991B=1:w$(1)="":H=1:FORA=1TOLENp$:y$=MID$(p$,A,1):IFH<>1:GOTO1994:ELSEIFy$=" "GOTO1998ELSEGOTO1995
 1994IFy$=" "B=B+1:w$(B)="":H=1:GOTO1998
 1995IFy$<>"+"ANDy$<>"-"ANDy$<>"*"ANDy$<>"/"H=0:w$(B)=w$(B)+y$:GOTO1998
 1996IFH=0:B=B+1:IFB>10THEN1998
 1997w$(B)=y$:B=B+1:IFB<11:w$(B)="":H=1
 1998IFB>10ANDLENp$>=1THENPROCe("Too many values"):g=1:A=99
 1999NEXT:IFH=1:B=B-1
 2000RETURN
 2005v=0:RETURN
 2020v=100:RETURN
 2053w$="":IFp$=""RETURN
 2065J%=LENp$+1:FORI%=1TOLENp$:IFMID$(p$,I%,1)=" "J%=I%:I%=LENp$
 2070NEXT:w$=LEFT$(p$,J%-1):p$=MID$(p$,J%+1):RETURN
 2150RUN
 2200PROCt(0):IFp$<>""THEN2240ELSEIFt=0:PROCo("No procedures")ELSEPROCo("Procedures:"):FORI%=1TOt:PROCo(n$(I%+p)):NEXT
 2220PRINT:IFt<n ANDw<j:PROCo("Room for "+STR$(n-t)+" more")ELSEPROCo(d$)
 2230RETURN
 2240c$=p$:GOSUB7705:IFG=0THENPROCe(c$+" not built"):RETURN
 2250y=J-p:q$=p$+" ":IFd?y=0THEN2260ELSEq$=q$+"WITH ":FORA=1TOd?y:q$=q$+v$(q%(y,A))+",":NEXT
 2260PRINTLEFT$(q$,LENq$-1)':IFe?y=0RETURN:ELSEr$="":FORA=1TOe?y:P=a?(f?y+A):IFP=p:r$=MID$(r$,2)
 2270PRINTr$;:IFP<>255THENPRINTn$(P)" ";
 2280PRINTp$(f?y+A):IFP=p-1r$=r$+" "
 2290NEXT:RETURN
 3004IFK=p-2:GOSUB4350:RETURN
 3012IFD%THENPROCd
 3017IFK>4:GOTO3030
 3020IFp$=""PROCe(i$+"number"):g=1:GOTO3040
 3022GOSUB7810:IFg=1 ORv(L)=0:GOTO3040
 3030ONK GOSUB4000,4050,4100,4150,4200,4250,4300,4320,4340
 3040IFv=100THENPROCd
 3050RETURN
 4000T$="F":XM=X+v(L)*COSRADM:YM=Y+v(L)*SINRADM:GOTO4070
 4050T$="B":XM=X-v(L)*COSRADM:YM=Y-v(L)*SINRADM
 4070IFFNf(ABSXM)>19500 ORFNf(ABSYM)>19500:PROCe("Outside picture range"):g=1:RETURN
 4075PROCr(T$,v(L)*2):IFs=1:PROCw(XM,YM)ELSEPROCm(XM,YM)
 4080X=XM:Y=YM:RETURN
 4100T$="L":M=M+v(L):GOTO4160
 4150T$="R":M=M-v(L)
 4160IFM<0:M=M+360
 4165IFM>360:M=M-360
 4180PROCr(T$,v(L)):RETURN
 4200CLG:D%=0:RETURN
 4250PROCc:RETURN
 4300PROCc:GOSUB4200:IFs=0THENs=1:PROCr("D",-1)
 4310RETURN
 4320IFNOTFNn("UP or DOWN")RETURN:ELSEIFp$="UP"s=0:PROCr("U",-1):RETURN:ELSEIFp$="DOWN"s=1:PROCr("D",-1):RETURN:ELSEp$="":GOTO4320
 4330DEFPROCPN(U%):?&FE60=&FE:?&FE6C=&E0:REPEAT:S%=?&FE60:UNTIL(S%AND&80)=U%*128:?&FE60=&FF:ENDPROC
 4340PROCht:RETURN
 4341DEFPROCht:IFT%THEN?&FE62=&1F:?&FE60=&FF:?&FE6C=&E0:CALL H%:RETURN:ELSESOUND1,-15,61,10:SOUND2,-15,77,10:SOUND3,-15,89,10
 4343DEFPROCht:IFT%THENPROCr("H",-1)ELSESOUND1,-15,61,10:SOUND2,-15,77,10:SOUND3,-15,89,10
 4344DEFPROCht:SOUND1,-15,61,10:SOUND2,-15,77,10:SOUND3,-15,89,10
 4345ENDPROC
 4350IFNOTFNn(g$+" & value")RETURN:ELSEIFx>=k ORFNh:PROCe(d$):g=1:RETURN
 4353GOSUB2053:GOSUB7855:IFW=1:PROCe(h$+w$):RETURN:ELSEa$=w$:GOSUB4482:t$=a$:TV=Q
 4355GOSUB1991:IFg=1:RETURN
 4360s$="+":x$="":FORi%=1TOB:IFi%=B OR(w$(i%+1)<>"MORE"ANDw$(i%+1)<>"LESS")THEN4380ELSEIFTV=0:PROCe(t$+e$):GOTO4420ELSEIFB<>2THENPROCe("Invalid expression"):GOTO4420
 4370x$=x$+STR$(v(TV)):IFw$(i%+1)="LESS"THENx$=x$+"-"ELSEx$=x$+"+"
 4380p$=w$(i%):IFp$="MORE"ORp$="LESS"THEN4430
 4390IFp$="-"THENs$="-":GOTO4430ELSEIFp$="*"ORp$="/"THENx$=x$+p$:GOTO4430ELSEIFp$="+"THEN4430
 4400GOSUB7810:IFg=1THEN4420ELSEIFW=0:GOSUB4476:x$=x$+s$+"("+STR$(v(L))+")"ELSEx$=x$+s$+"("+p$+")"
 4410s$="+":GOTO4430
 4420g=1:i%=B
 4430NEXT:IFg=0:a$=t$:GOSUB4476:v(Q)=EVAL(x$)
 4460RETURN
 4476GOSUB4482:IFQ<>0:RETURN
 4478x=x+1:v$(x)=a$:v(x)=0:Q=x:RETURN
 4482a$=LEFT$(a$,10):IFx=0:Q=0:RETURN
 4487Q=0:FORI%=1TOx:IFa$=v$(I%)Q=I%
 4489NEXT:RETURN
 4500z=0:PROCo(u$+"REPEAT "+p$):E=1:r$=" ":u=t+1:a?(w+1)=p-1:p$(w+1)=p$:e?u=1
 4551PRINT:PRINTu$;r$;:c$=FNi:GOSUB1230:IFLEFT$(c$,1)=":"ORc$=CHR$27PRINT:RETURN
 4560GOSUB7610:IFG=1THENPROCk(c$+" can't be used here"):GOTO4551:ELSEGOSUB7510:IFS=1:PROCk(c$+b$):GOTO4551
 4563e?u=e?u+1:a?(w+e?u)=K:p$(w+e?u)=p$:IFK=p-1:E=E+1:r$=r$+" "
 4569IFK=p ANDE>1:E=E-1:r$=LEFT$(r$,LENr$-1)ELSEIFK=p:d?u=0:GOTO4607
 4572IFw+e?u>=j ORFNh:PROCk(d$):RETURN
 4575GOTO4551
 4607f?u=w:K=u+p:p$="":GOTO5512
 5000IFNOTFNn(g$)RETURN:ELSEPROCt(0):ZM=w:VDU19,1,6,0,0,0:PRINT:x$=p$:GOSUB2053:c$=w$
 5036GOSUB7705:IFG=1:x$=w$+" already built":GOTO5265
 5037IFt>=n ORw>=j ORFNh:x$=d$:GOTO5265
 5038GOSUB7855:IFW=1:GOTO5042
 5039GOSUB7610:IFG=1:GOTO5042
 5040GOSUB7660:IFG=1:GOTO5042
 5041IFINSTR(w$,".")=0:GOTO5051
 5042x$="Can't use name "+w$:GOTO5265
 5051IFt>=n:x$=d$:GOTO5265
 5055t=t+1:n$(t+p)=w$:IFp$=""d?t=0:GOTO5113
 5060GOSUB2053:IFw$<>"WITH"x$="Should say WITH, not "+w$:t=t-1:GOTO5265
 5061IFp$=""d?t=0:GOTO5113
 5062GOSUB1982:IFB>l x$="Only "+STR$(l)+" stores allowed":t=t-1:GOTO5265
 5070y=t:GOSUB7405:IFg=1:t=t-1:RETURN
 5113E=0:r$="":e?t=0:f?t=w
 5115IFG%PRINT" "n$(t+p);ELSEPRINTTAB(10)x$;
 5120PRINT'u$;r$;:c$=FNi:GOSUB1230
 5155IFLEFT$(c$,1)=":"t=t-1:w=ZM:GOTO5275
 5157IFc$=CHR$27GOTO5275
 5158IFc$=""VDU11:GOTO5120
 5160GOSUB7510:IFS=1:K=255:p$=c$+" "+p$:GOTO5180
 5173IFK=p-1:E=E+1:r$=r$+" "
 5175IFK<>p:GOTO5180ELSEIFE>0:E=E-1:r$=LEFT$(r$,LEN(r$)-1)
 5180IFw>=j ORFNh:PROCk(d$):GOTO5275ELSEw=w+1:e?t=e?t+1:a?w=K:p$(w)=p$
 5210GOTO5120
 5265PROCe(x$):g=1
 5275VDU19,1,3,0,0,0:RETURN
 5512r=K:GOSUB1982:IFB<>d?(r-p)PROCe("Wrong no of values"):g=1:RETURN
 5514IFB=0:GOTO5530ELSEFORA=1TOB:p$=w$(A):GOSUB7810:IFg=1:A=B:GOTO5520
 5516TV=q%(r-p,A):v(TV)=v(L)
 5520NEXT
 5530IFFNh:PROCe(d$):g=1
 5532IFe?(r-p)=0 ORg=1:RETURN
 5533T=1
 5535IFE%THENRETURN
 5536KB=f?(r-p)+T:K=a?KB:IFK<>255THEN5545ELSEc$=p$(KB):GOSUB1230:GOSUB7610:IFG=1THENPROCe(c$+" can't be used here"):RETURN:ELSEGOSUB7510:IFS=1THENPROCe(c$+b$):RETURN
 5540a?KB=K:p$(KB)=p$
 5545p$=p$(KB):IFK<=p-2:GOTO5625ELSEIFK=p-1:GOTO5551ELSEIFK=p:GOTO5580ELSEGOTO5635
 5551IFp$=""NT=1:GOTO5557
 5552GOSUB7810:IFg=1:RETURN
 5554NT=INT(v(L)):IFNT<=0:PROCe("Can't REPEAT "+STR$(NT)+" times"):g=1:RETURN
 5557F=F+1:IFF>o:PROCe("Too many REPEATs"):g=1:RETURN ELSEg%(F)=NT:h%(F)=1:i?F=T:GOTO5650
 5580IFF<=0:PROCe(f$):g=1:RETURN
 5588NT=g%(F):NS=h%(F):LQ=i?F:NS=NS+1
 5595IFNS<=NT:h%(F)=NS:T=LQ:ELSEF=F-1
 5600GOTO5650
 5625IFv=100PROCb:PROCf:PRINTn$(K)" "p$;
 5627GOSUB3004
 5628IFg<>0:RETURN
 5630A$=INKEY$(v):GOTO5660
 5635IFK=r AND T=e?(r-p):GOTO5533
 5636IFR>=m:PROCe(d$):g=1:RETURN
 5637R=R+1:b?R=r:c?R=T:GOSUB5512:IFg<>0:RETURN
 5642r=b?R:T=c?R:R=R-1
 5650A$=INKEY$(0)
 5660IFA$=""THEN5670ELSEIFA$=":"ORA$=CHR$27g=1:PROCr("I",-1):RETURN
 5665IFA$="S"ORA$="s"v=100:ELSEIFA$="F"ORA$="f"ANDv=100:PROCf:v=0
 5670T=T+1:IFT<=e?(r-p)GOTO5535
 5710RETURN
 6000IFNOTFNn(g$)RETURN:ELSEIFFNh:PROCe(d$):RETURN:ELSEGOSUB2053:c$=w$:GOSUB7705:IFG=0 PROCe(c$+" not built yet"):RETURN
 6040VDU26:PROCf:PROCt(-1):N=1:O=1:G%=0:Z%=0:y=J-p:D=1
 6050PRINT'"Press "CHR$236" to remove a line  "CHR$237" to insert"'TAB(6)CHR$239" to move up"SPC8CHR$238" to move downCOPY to change stores     ESCAPE to exit":MOVE0,750:DRAW1279,750:*FX4,1
 6051q$=n$(y+p):IFd?y=0:GOTO6100ELSEq$=q$+" WITH "
 6053FORA=1TOd?y:q$=q$+v$(q%(y,A)):IFA<d?(y)q$=q$+","
 6056NEXT
 6100V=f?y:C=e?y:Y8=0
 6110PROCs
 6200c%=0:PRINTTAB(2,D-N+1);u$;:*FX15,1
 6220IFD>O:Z%=137ELSEZ%=GET
 6222IFZ%=27THEN6520ELSEIFZ%<135ORZ%>139THEN6220ELSEVDU127:ONZ%-134 GOSUB6475,6255,6410,6226,6229:IFc%<>0:PROCs:Z%=c%:c%=0:GOTO6222ELSEIFZ%<138THEN6051ELSE6200
 6226IFD<=C:D=D+1:IFD>O:PROCs
 6227RETURN
 6229IFD>1:D=D-1:IFD<N:PROCs
 6230RETURN
 6255IFD>C:RETURN
 6260w=w-1:FORA=D+V TOw:a?A=a?(A+1):p$(A)=p$(A+1):NEXT:IFy=t:GOTO6290
 6282FORA=y+1TOt:f?A=f?A-1:NEXT
 6290C=e?y-1:e?y=C:GOSUB6410:RETURN
 6410IFw=j ORFNh:PROCk(d$):RETURN
 6412Y8=D:PROCs:PRINTTAB(2,D-N+1);u$;s$;:c$=FNi:c%=ASCc$:IFc%=27OR c%=135OR c%=139:VDU127:RETURN:ELSEIFc%=136OR c%=138c$=""ELSEIFc%=137THEN6412
 6415c%=0:GOSUB1230:IFc$=""ORc$=":"RETURN
 6418GOSUB7510:IFS=1:K=255:p$=c$+" "+p$
 6421w=w+1:e?y=e?y+1:u=D+V:IFu=w:GOTO6450
 6425FORA=w TOu+1STEP-1:a?A=a?(A-1):p$(A)=p$(A-1):NEXT:IFy=t:GOTO6450
 6438FORA=y+1TOt:f?A=f?A+1:NEXT
 6450a?u=K:p$(u)=p$:D=D+1:RETURN
 6475VDU30:PRINTSPC39;:VDU13:PRINTn$(y+p);" WITH ";u$;:c$=FNi:GOSUB1810:p$=c$:IFp$="":d?y=0:RETURN
 6484GOSUB1982:IFB>l:PROCk("Only "+STR$l+" stores allowed"):RETURN
 6490GOSUB7405:RETURN
 6520IFe?y=0:GOTO6550ELSEE=0:z=7:p$=n$(y+p):FORA=1TOe?y:P=a?(V+A):IFP=p-1:E=E+1ELSEIFP=p:E=E-1
 6530NEXT:IFE>0:PROCk(i$+"END"):GOTO6051
 6540IFE<0:PROCk(f$):GOTO6051
 6550VDU26:PROCf:PROCc:PROCg:PROCd:RETURN
 7000IFNOTFNn(g$)RETURN:ELSEGOSUB2053
 7020c$=w$:GOSUB7705:IFG=0PROCe(w$+" not built"):RETURN
 7030y=J-p:V=f?y+1:C=e?y
 7040IFw<=1 THEN7047 ELSEFORA=1TOV+C-1:IFa?A<>255ANDa?A>=J THENp$(A)=n$(a?A)+" "+p$(A):a?A=255
 7042NEXT:IFV+C>w THEN7047ELSEFORA=V+C TOw:IFa?A<J THENa?(A-C)=a?A:p$(A-C)=p$(A)ELSEIFa?A<>255 THENp$(A-C)=n$(a?A)+" "+p$(A):a?(A-C)=255 ELSEp$(A-C)=p$(A):a?(A-C)=255
 7045NEXT
 7047w=w-C:IFy<t:FORA=y+1TOt:f?(A-1)=f?A-C:e?(A-1)=e?A:d?(A-1)=d?A:n$(p+A-1)=n$(p+A):FORI%=1TO4:q%(A-1,I%)=q%(A,I%):NEXT:NEXT
 7050t=t-1:GOSUB2200:RETURN
 7405J=0:FORA=1TOB:w$=w$(A):GOSUB7855:IFW<>1 GOTO7420ELSEx$=h$+w$:IFz=5 PROCe(x$)ELSEPROCk(x$)
 7418g=1:A=B:GOTO7425
 7420a$=w$:GOSUB4482:IFQ=0:J=J+1
 7425NEXT:IFg=1:RETURN
 7430IFx+J<=k:GOTO7435ELSEx$=d$:IFz=7:PROCe(x$)ELSEPROCk(x$)
 7432g=1:RETURN
 7435FORA=1TOB:a$=w$(A):GOSUB4476:q%(y,A)=Q:NEXT:d?y=B:RETURN
 7510GOSUB7660:IFG=1:K=z:S=0:RETURN
 7520GOSUB7705:IFG=1:K=J:S=0ELSES=1
 7530RETURN
 7610G=0:FORI%=1TOq:IFc$=l$(I%)OR(LENc$>=3ANDc$=LEFT$(l$(I%),LENc$))G=1:z=I%
 7630NEXT:RETURN
 7660G=0:FORI%=1TOp:IFc$=n$(I%)OR(LENc$>=3ANDc$=LEFT$(n$(I%),LENc$))G=1:z=I%
 7680NEXT:RETURN
 7705G=0:IFt=0:RETURN
 7710FORI%=p+1TOp+t:IFc$=n$(I%)G=1:J=I%
 7730NEXT:RETURN
 7810w$=p$:GOSUB7855:IFW=1:GOTO7841
 7824a$=p$:GOSUB4482:IFQ=0 PROCe(p$+e$):L=0:g=1:RETURN
 7826L=Q:RETURN
 7841L=0:v(0)=VALp$:RETURN
 7855W=1:FORJ%=LENw$TO1STEP-1:n$=RIGHT$(w$,J%):IFVALn$=0ANDASCn$<>48ANDASCn$<>46THENW=0:J%=1
 7860NEXT:RETURN
 8000DEFPROCd:GCOL3,1:Z=RAD(M+135):X7=X+2*SC*COSZ:Y7=Y+2*SC*SINZ:PROCm(X7,Y7):Z=RAD(M+225):X7=X+2*SC*COSZ:Y7=Y+2*SC*SINZ:PROCm(X7,Y7):PROCp(85,X,Y):GCOL0,1:D%=D%EOR-1:ENDPROC
 9000IFT%=9ANDF%=51216:RETURN:ELSEPRINT:IFF%<>51216PRINT:PRINT"DART wasn't saved correctly"
 9016*FX229,0
 9020ONERROROFF
 9025*FX4,0
 9030END
 9100IFNOTFNn(g$)RETURN
 9110*FX229,0
 9120GOSUB2053:c$=w$:p$="":GOSUB7705:IFG=0THENPROCe(c$+" not built"):RETURN
 9130PRINT:y=J-p:I=OPENOUTLEFT$(c$,7):PRINT'"Saving "LEFT$(c$,7);:PRINT#I,e?y,d?y:IFd?y=0THEN9150
 9140FORI%=1TOd?y:PRINT#I,v$(q%(y,I%)):NEXT
 9150FORI%=f?y+1TOf?y+e?y
 9160IFa?I%<=p:PRINT#I,a?I%,p$(I%)ELSEIFa?I%<>255PRINT#I,255,n$(a?I%)+" "+p$(I%)ELSEPRINT#I,255,p$(I%)
 9170NEXT:CLOSE#I:RETURN
 9500IFNOTFNn(g$)RETURN
 9510*FX229,0
 9520IFt>=n ORFNh:PROCe(d$):RETURN
 9530GOSUB2053:c$=w$:p$="":GOSUB7705:IFG=1THENPROCe(c$+" already built"):RETURN
 9540I=OPENUPLEFT$(c$,7):IFI=0THENPROCe("File not found"):RETURN:ELSEPRINT'"Loading "LEFT$(c$,7);:t=t+1:y=t:f?t=w:INPUT#I,e?t,d?t:IFd?t=0THEN9560
 9550B=d?t:FORI%=1TOB:INPUT#I,w$(I%):NEXT:GOSUB7405:IFg=1t=t-1:GOTO9590
 9560IFe?t=0THEN9580ELSEFORI%=1TOe?t:IFw>=j ORFNh:PROCe(d$):I%=e?t ELSEw=w+1:INPUT#I,a?w,p$(w)
 9570NEXT
 9575I%=INSTR(c$,"."):IFI%<>0THENc$=MID$(c$,I%+1):GOTO9575
 9580n$(t+p)=c$
 9590CLOSE#I:GOSUB2200:RETURN
10000DEFPROCg:PRINT:VDU26:VDU28,0,29,39,0:PROCf:VDU19,1,3,0,0,0:MOVE892,70:PLOT21,892,1023:MOVE0,70:PLOT21,1279,70:VDU24,0;72;890;1023;:VDU29,0;72;:SC=4:E%=0:G%=-1:D%=0:ENDPROC
10100DEFPROCt(C%):PRINT:IFG%ANDNOTC% VDU28,28,28,39,0:PROCf ELSEVDU26:VDU28,0,29,39,0:PROCf:VDU4:VDU19,1,2,0,0,0:MOVE0,880:DRAW1279,880:MOVE0,70:DRAW1279,70:Z%=G%:G%=0:IFZ%MOVE892,0:PLOT7,892,200
10120PRINT'':IFNOTG%PRINTl$(z)
10130ENDPROC
10490DEFFNf(zz)=SC*zz+.5
10500DEFPROCm(xx,yy):MOVEFNf(xx),FNf(yy):ENDPROC
10600DEFPROCw(xx,yy):DRAWFNf(xx),FNf(yy):ENDPROC
10700DEFPROCp(kk,xx,yy):PLOTkk,FNf(xx),FNf(yy):ENDPROC
10800DEFPROCs:IF(D=C+1)AND(O=C)ANDZ%<>135:ENDPROC:ELSEr$="":s$="":VDU28,0,27,39,9:PROCf:PRINTq$:IFC<=16:N=1:O=C:ELSEN=D-8:O=D+8:IFN<1:N=1:O=17ELSEIFO>C:N=C-16:O=C
10830U=N:IFO=0 ANDZ%<>137GOTO10905
10840FORA=N TOO:IFU=Y8:A=A-1:Y8=0:s$=r$:GOTO10890
10850P=a?(V+A):IFP=p:r$=MID$(r$,2)
10880PRINTTAB(3,U-N+1);r$;:IFP<>255THENPRINTn$(P)" ";
10885PRINTp$(V+A);:IFP=p-1r$=r$+" "
10890U=U+1:NEXT
10905IFU=Y8:U=U+1
10920ENDPROC
10930DEFPROCj($v%):LOCALX%,Y%:X%=v%:Y%=v%DIV256:IFLEFT$($v%,4)="*CAT"ORLEFT$($v%,2)="*."THENVDU26:CLS:CALL&FFF7:PROCb:PRINT"Press RETURN to continue";:REPEAT:UNTILGET=13:PROCg:GOSUB4300:PROCd:PROCb:PRINT:ENDPROC
10940CALL&FFF7:ENDPROC
11100DEFPROCo(x$):LOCALI%:IFNOTG%PRINT:PRINTx$;:ENDPROC:ELSEIFx$=""ENDPROC
11110IFNOTO%PROCt(0)
11115IFP%<>12PRINT
11117P%=0:REPEATI%=INSTR(x$," "):IFI%=0w$=x$:x$="":I%=LENw$+1ELSEw$=LEFT$(x$,I%-1):x$=MID$(x$,I%+1)
11120IFP%=0ORP%=12PRINTw$;:P%=I%-1ELSEP%=P%+I%:IFP%<=12PRINT" "w$;ELSEPRINT:P%=0:GOTO11120
11130UNTILx$="":O%=-1:ENDPROC
11200DEFPROCe(x$):VDU7:O%=0:PROCo(x$):E%=-1:ENDPROC
11300DEFPROCk(x$):VDU29,0;0;24,0;0;1279;60;5,7,16:MOVE0,60:PRINTx$;:VDU4,24,0;72;890;1023;29,0;72;:TIME=0:REPEAT:UNTILTIME>200:PRINTSTRING$(X%,CHR$127);:VDU11:ENDPROC
11400DEFFNh:=(HIMEM-!2AND&FFFF)<250
11500DEFPROCb:VDU28,0,31,39,30:VDU4:ENDPROC
20040DEFPROCr(T$,TT%):IFT%=0ENDPROC
20300DEFFNa(T$,TT):IFTT=-1=T$ELSE=T$+STR$(INT(TT+.5))
20400DEFFNi:LOCALZ%:x$=""
20405Z%=GET:A$=CHR$Z%:IFT%ANDZ%=58PROCr("I",-1)
20410IFZ%=2ORZ%=3THENVDUZ%:GOTO20405
20415IFZ%=21PRINTSTRING$(LENx$,CHR$127);:x$="":GOTO20405
20417IFZ%=127ANDx$<>""PRINTA$;:x$=LEFT$(x$,LENx$-1):GOTO20405ELSEIFZ%=127GOTO20405
20418IFx$=""ANDZ%=32THEN20405
20420IFZ%=13:X%=LENx$:=x$ELSEIFZ%=27:=CHR$27ELSEIFZ%>134AND Z%<140:=CHR$Z%ELSEIFZ%<32OR Z%>127THEN20405ELSEPRINTA$;:x$=x$+A$:GOTO20405
20500DEFPROCc:X=110:Y=110:M=90:PROCm(X,Y):ENDPROC
20600DEFFNn(m$)
20610IFp$=":"=0ELSEIFp$<>""=-1ELSEPRINT'm$;:VDU7:INPUTp$:VDU11:GOTO20610
20700DEFPROCf:*FX3,4
20710CLS:*FX3,0
20720ENDPROC
30000:
30002E%=TRUE:*FX4,0
30003*FX229,1
30010IFERR<>17PROCt(0):PRINT:VDU7:PRINT"DART error:":REPORT:CLOSE#0:GOTO1120
30028PRINT:GOTO1120
30030PI
30031REM CODE DELETED ON EXECUTION
32000VDU23,236,24,48,96,255,96,48,24,0:VDU23,237,24,12,6,255,6,12,24,0:VDU23,238,16,16,16,146,214,124,56,16:VDU23,239,16,56,124,214,146,16,16,16
32002pr%=3:MODE7:VDU23,1,0;0;0;0;
32003ONERROROFF
32004*FX18
32006DIMN$(4):N$(0)="TURTLE":N$(1)="turtle":N$(2)="turtle robot":N$(3)="turtle":N$(4)="robot"
32010MODE7:VDU23,1,0;0;0;0;:PROCtitle_page
32018 *KEY1"FORWARD "
32019 *KEY2"BACKWARD "
32020 *KEY3"LEFT "
32021 *KEY4"RIGHT "
32022 *KEY5"REPEAT "
32023 *KEY6END|M
32024 *KEY7"MAKE "
32026 *KEY8"BUILD "
32028 *KEY9"CHANGE "
32030 *KEY10FRESH|M
32032 *KEY11 OLD|MRUN|M
32033F%=51216:*FX229,1
32034g%=GET:IFg%=32THENPROCf:PROChelp:GOTO32010
32035IFg%=27THENMODE7:*FX229,0
32036IFg%=27THENEND
32037IFg%=13THENPROCf:GOTO32700
32038GOTO32034
32040DEFPROChelp
32041PRINT''
32042 PRINT"If you have a printer, switch it on now"'"to make a copy of the help."'"(Type�CTRL B�)"''"Press�SPACE�after each page of help"'"to see the next one"''"Press�SPACE�now.":PROCspace
32044PRINT"�Instructions":PRINTCHR$130;STRING$(38,"=")
32046 PRINT:PRINT"DART allows you to create pictures by"'"moving a 'pen' around the screen or a"'N$(2)" around the floor."''"You can draw directly by using commands"'"like FORWARD 50 and LEFT 45."
32048 PRINT'"You can repeat a sequence of commands"'"by starting the sequence with REPEAT n"'"where n is the number of repeats you"'"want, and ending it with END."''"Eg�  REPEAT 36"'"�     LEFT 10"'"�     FORWARD 10"'"�    END"
32049 PROCspace
32050 PRINT"You can define your own commands by"'"using the BUILD command, change them"'"using CHANGE and delete them using"'"DELETE."
32051 PRINT'"SAVE lets you save commands you have"'"built on disk or tape and LOAD lets"'"you load them back into memory."'
32052 PRINT"MAKE lets you store values and do"'"simple arithmetic on them."''"Remember that you can shorten DART's"'"commands to a minimum of three letters"'"but you must type your own command"'"names in full."
32054PROCspace
32056 PRINT'CHR$130+"Help with commands:":PRINTCHR$130;STRING$(38,"=")
32058 PRINT'"**�VALUES�**"'"Lists values held in stores."
32060 PRINT'"**�COMMANDS�**"'"Lists the DART commands."
32061 PRINT'"**�LIST�**"'"Type LIST for a list of the commands"'"you've built."'"To see a listing of a particular"'"command type LIST <name>"'"Eg:"'"�LIST SQUARE"
32062 PRINT'"**�FINISH�**"'"Ends DART."
32064PROCspace
32066 PRINT'"**�BUILD�**"'"Lets you build a new command."'"Eg:"'"�BUILD BOX WITH SIDE �lets you"'" define a command called BOX using"'" the store SIDE."
32067 PRINT" Then you type in the commands which"'" define your new command."'" Press ESCAPE when you've finished."
32068 PRINT'"**�CHANGE�**"'"Lets you change a command you've built."'"Eg:"'"�CHANGE BOX"'" Remember, CHANGE wipes out your"'" current screen display."
32070 PRINT'"**�DELETE�**":PRINT "Lets you delete a command you've built."'"Eg:"'"�DELETE BOX"
32072PROCspace
32076 PRINT'"**�RESET�**"'"Restarts DART."
32078 PRINT:PRINT "**�FAST�**":PRINT "Makes drawing speed fast."'"To change speed to fast when drawing is"'"in progress simply type F"
32080 PRINT:PRINT "**�SLOW�**":PRINT "Makes drawing speed slow."'"To change speed to slow when drawing is"'"in progress simply type S"
32082 PRINT:PRINT "**�"N$(0)"�**":PRINT"�"N$(0)" ON� starts the "N$(1)"."'"�"N$(0)" OFF� stops the "N$(1)"."
32084PROCspace
32085PRINT'"**�SAVE�**"'"Saves on tape or disc a procedure"'"which has been built."'"Eg:"'"�SAVE POLYGON"''"**�LOAD�**"'"Loads from tape or disc a previously"'"saved procedure."'"Eg:"'"�LOAD HOUSE":PROCspace
32086 PRINT'"**�FORWARD�**"'"Moves dart this amount forward."'"Eg:"'"�FORWARD 5� or� FOR SIDE"
32088 PRINT'"**�BACKWARD�**"'"Moves dart this amount backward."'"Eg:"'"�BACKWARD 20� or �BACK HOP"
32090 PRINT'"**�LEFT�**"'"Turns dart this amount left."'"Eg:"'"�LEFT 90� or� LEFT ANGLE"
32092 PRINT'"**�RIGHT�**"'"Turns dart this amount right."'"Eg:"'"�RIGHT 45� or� RIG BIT"
32094PROCspace
32096PRINT:PRINT "**�CLEAN�**"'"Cleans screen without moving dart."'"Has no effect on the "N$(1)"."
32098 PRINT'"**�CENTRE�**"'"Centres dart without changing picture."'"Has no effect on the "N$(1)"."
32100PRINT:PRINT "**�FRESH�**"'"Cleans screen and centres dart."'"Has no effect on the "N$(1)"."
32102 PRINT'"**�PEN�**"'"�PEN DOWN �starts drawing."'"�PEN UP� stops drawing."
32104 PRINT'"**�HOOT�**"'"Makes the "N$(1)" hoot."
32106PROCspace
32107PRINT'"**�MAKE�**"'"Lets you set or change a value in a"'"store. A store name can have up to"'"ten characters. Remember that all"'"the stores are 'global' ie you can use"'"any store you have set up at any time."
32108PRINT"Eg:"'"�MAKE UNIT 20"'"�MAKE SIDE UNIT*2"'"�MAKE SIDE 5 LESS"'"�MAKE SIDE2 SIDE/UNIT"'"�MAKE SIDE2 UNIT MORE"
32110 PRINT'"**�REPEAT�**"'"Repeats instructions up to next"'"END this number of times."'"Eg:"'"�REPEAT 4� or �REP COUNT"
32112 PRINT'"**�END�**"'"Ends effect of last REPEAT."
32114PROCspace:VDU3:ENDPROC
32116DEFPROCspace:LOCALg%:REPEATg%=GET:IFg%=2THENpr%=2ELSEIFg%=3THENpr%=3
32118UNTILg%=32:VDU3:CLS:PRINT:PRINT:VDUpr%:ENDPROC
32300DEFPROCtitle_page:V$="2.4b"
32310PRINTCHR$158;CHR$145;CHR$183;:FORI=1TO7:PRINTCHR$163;:NEXT:PRINTCHR$183;:FORI=1TO25:PRINTCHR$163;:NEXT:PRINTCHR$235
32320PRINT" "CHR$145;CHR$181;CHR$134;"     ";CHR$145;CHR$181;CHR$135;"Creating pictures by   "CHR$145CHR$234
32330PRINT" "CHR$145;CHR$181;CHR$130"DART ";CHR$145;CHR$181;CHR$135;"moving a 'dart' around "CHR$145CHR$234
32332PRINT" "CHR$145CHR$181"      "CHR$145CHR$181CHR$135"the screen and a "N$(3)CHR$145CHR$234
32334PRINT" "CHR$145CHR$181"      "CHR$145CHR$181CHR$135N$(4)" around the floor."CHR$145CHR$234
32340PRINTCHR$158;CHR$145;CHR$245;:FORI=1TO7:PRINTCHR$240;:NEXT:PRINTCHR$245;:FORI=1TO25:PRINTCHR$240;:NEXT:PRINTCHR$250
32350PRINT'SPC9"Operating System 1.2"''TAB(6)"Based on Oxfordshire County"'TAB(6)"Council copyright material"
32355PRINT'"  Press"CHR$130"SPACE"CHR$135"if you want help."'"  This is your only chance to see the"'"  help pages."
32360PRINT'"  If you want to copy this program,"'"  press"CHR$130"ESCAPE"CHR$135"and do it now."''"  Press"CHR$130"RETURN"CHR$135"when you want to start"'"  drawing." 
32400PRINTTAB(2,22)"Version "V$TAB(15)"Copyright AUCBE 1984"
32410PRINTCHR$158CHR$145STRING$(35,CHR$172)
32420ENDPROC
32700REM
32701D%=5300
32710A%=TOP-D%:REPEAT:A%=A%-1:UNTIL?A%=&AF:?(A%-3)=&FF:A%=A%-2:LOMEM=A%:?&12=A% MOD 256:?&13=A% DIV 256:RUN
32719R%=&A50:A$=CHR$12+STRING$(13,CHR$10)
32720IFG=1THEN $&A50=A$+"REMEMBER TO SAVE THIS PROGRAM AS�DART1"
32721IFG=2THEN $&A50=A$+"REMEMBER TO SAVE THIS PROGRAM AS�DART2"
32722IFG=3THEN $&A50=A$+"REMEMBER TO SAVE THIS PROGRAM AS�DART3"
32723IFG=0THEN $&A50=A$+"REMEMBER TO SAVE THIS PROGRAM AS�DART0"
32724IFG=4THEN $&A50=A$+"REMEMBER TO SAVE THIS PROGRAM AS�DART4"
32726S%=&A00:$&A00=A$+CHR$136+STRING$(14," ")+"Please wait"+CHR$30
32740FORPASS=0TO2STEP2:P%=&70:[OPT PASS:LDA#31:JSR&FFEE:LDA#0:JSR&FFEE:LDA#24:JSR&FFEE:LDA#10:JSR&FFEE:JSR&FFE7:LDA #21:JSR&FFEE:RTS:]:NEXT
32750RETURN
(��T|@
2	�P@}
<��Ppu
ZK%=0:�4:T%=9:�Thc
n�G%=0:E%=0:O%=0:C%=0:T%=0:P%=0:D%=0:b$=" isn't understood":d$="No more room":e$=" has no value":f$="Too many ENDs":g$="Give name":h$="Can't call variable ":i$="Missing "
.�I=17:j=250:k=10:l=4:m=5:n=15:o=10:p=12:q=12:�a j,p$(j),v$(k),v(k),b m,c m,d n+1,q%(n,l),n$(p+n),e n+1,f n+1,l$(q),w$(10),g%(o),h%(o),i o,v%30
B#�z=1�p:�n$(z):�:�z=1�q:�l$(z):�
D��FORWARD,BACKWARD,LEFT,RIGHT,CLEAN,CENTRE,FRESH,PEN,HOOT,MAKE,REPEAT,END,VALUES,COMMANDS,LIST,FINISH,BUILD,CHANGE,DELETE,RESET,FAST,SLOW,SAVE,LOAD
Q_u$=�237:p%=�:s=1:x=0:t=0:u=0:v=100:w=0:�g:�c:�b:�" For the list of commands type COMMANDS";
`*FX229,1
a�(G%��D%)��d
b@?&FE6C=&C0:?&FE62=0:�b:�'":";:c$=�i:O%=0:�E%�G%�t(0):�b:E%=0
e
*FX4,0
j�c$,1)=":"c$=�c$,2):�DjD
t�c$=""�c$=�27�D`D
u!�c$,1)="*"��j(�c$,30)):�D`D
�fR=0:F=0:g=0:�dND:�tz]:�G=1:�z �tTG,�TrE,�tXH,�Thc,�tHS,�DpW,�DX[,�DfH,�dUG,�ddG,�tLc,�T\e:�D`D
�H�DV]:�S=1:�e(c$+b$):��K<p-1:�t|K:��K=p-1:�tTQ:��K=p:�e(f$):��tHU
�	�D`D
�B�TRG:p$="":�A=2��c$:�c$,A,1)=" "p$=�c$,A+1):c$=�c$,A-1):A=99
�:B=0:�
2;�t(0):�11:�I%=1�p:�" "n$(I%):�:�:�I%=1�q:�" "l$(I%):�:�
8x$="":H=1:�A=1��c$:y$=�c$,A,1):�H=1:�y$=" "�DDG�H=0
,�y$=" "H=1
0"�y$>="a"�y$<="z"y$=�(�(y$)-32)
:x$=x$+y$
D%�:c$=x$:�H=1:�c$>0:c$=�c$,�c$-1)
X�
���t(0):�x=0:�o("No values set"):�trG��o("Store  Value"):�o("=====  ====="):�:�I%=1�x:�v$(I%)" ";:x$=�(�(v(I%)*100+.5)/100):�12-�x$)x$:�11:�
�&�:�o("Room for "+�(k-x)+" more"):�
�]B=1:w$(1)="":�A=1��p$:y$=�p$,A,1):�y$<>" "�y$<>","w$(B)=w$(B)+y$��w$(B)<>""B=B+1:w$(B)=""
��:�w$(B)=""B=B-1
��
�IB=1:w$(1)="":H=1:�A=1��p$:y$=�p$,A,1):�H<>1:�dJG:��y$=" "�dNG��dKG
�#�y$=" "B=B+1:w$(B)="":H=1:�dNG
�<�y$<>"+"�y$<>"-"�y$<>"*"�y$<>"/"H=0:w$(B)=w$(B)+y$:�dNG
��H=0:B=B+1:�B>10��dNG
�%w$(B)=y$:B=B+1:�B<11:w$(B)="":H=1
�/�B>10��p$>=1��e("Too many values"):g=1:A=99
��:�H=1:B=B-1
��
�	v=0:�
�v=100:�
w$="":�p$=""�
1J%=�p$+1:�I%=1��p$:�p$,I%,1)=" "J%=I%:I%=�p$
!�:w$=�p$,J%-1):p$=�p$,J%+1):�
f�
�X�t(0):�p$<>""��d@H��t=0:�o("No procedures")��o("Procedures:"):�I%=1�t:�o(n$(I%+p)):�
�5�:�t<n �w<j:�o("Room for "+�(n-t)+" more")��o(d$)
��
�*c$=p$:�TY^:�G=0��e(c$+" not built"):�
�Ny=J-p:q$=p$+" ":�d?y=0��dTH�q$=q$+"WITH ":�A=1�d?y:q$=q$+v$(q%(y,A))+",":�
�C�q$,�q$-1)':�e?y=0�:�r$="":�A=1�e?y:P=a?(f?y+A):�P=p:r$=�r$,2)
��r$;:�P<>255��n$(P)" ";
��p$(f?y+A):�P=p-1r$=r$+" "
��:�
��K=p-2:�d~P:�
�
�D%��d
��K>4:�dVK
�#�p$=""�e(i$+"number"):g=1:�d`K
��tB^:�g=1 �v(L)=0:�d`K
�4�K �t`O,�dRO,�TDP,�TvP,�DhP,�tZP,�dLP,�d`P,�dtP
�
�v=100��d
��
�,T$="F":XM=X+v(L)*��M:YM=Y+v(L)*��M:�dfO
�&T$="B":XM=X-v(L)*��M:YM=Y-v(L)*��M
�C�f(�XM)>19500 ��f(�YM)>19500:�e("Outside picture range"):g=1:�
�*�r(T$,v(L)*2):�s=1:�w(XM,YM)��m(XM,YM)
�X=XM:Y=YM:�
T$="L":M=M+v(L):�D@P
6T$="R":M=M-v(L)
@�M<0:M=M+360
E�M>360:M=M-360
T�r(T$,v(L)):�
h�:D%=0:�
��c:�
� �c:�DhP:�s=0�s=1:�r("D",-1)
��
�Z笤n("UP or DOWN")�:��p$="UP"s=0:�r("U",-1):�:��p$="DOWN"s=1:�r("D",-1):�:�p$="":�d`P
�L��PN(U%):?&FE60=&FE:?&FE6C=&E0:�:S%=?&FE60:�(S%�&80)=U%*128:?&FE60=&FF:�
�	�ht:�
�\��ht:�T%�?&FE62=&1F:?&FE60=&FF:?&FE6C=&E0:� H%:�:��1,-15,61,10:�2,-15,77,10:�3,-15,89,10
�>��ht:�T%��r("H",-1)��1,-15,61,10:�2,-15,77,10:�3,-15,89,10
�/��ht:�1,-15,61,10:�2,-15,77,10:�3,-15,89,10
��
�0笤n(g$+" & value")�:��x>=k ��h:�e(d$):g=1:�
8�TEH:�to^:�W=1:�e(h$+w$):�:�a$=w$:�tBQ:t$=a$:TV=Q
�dGG:�g=1:�
�s$="+":x$="":�i%=1�B:�i%=B �(w$(i%+1)<>"MORE"�w$(i%+1)<>"LESS")��T\Q��TV=0:�e(t$+e$):�DDQ��B<>2��e("Invalid expression"):�DDQ
7x$=x$+�(v(TV)):�w$(i%+1)="LESS"�x$=x$+"-"�x$=x$+"+"
'p$=w$(i%):�p$="MORE"�p$="LESS"��DNQ
&C�p$="-"�s$="-":�DNQ��p$="*"�p$="/"�x$=x$+p$:�DNQ��p$="+"��DNQ
0K�tB^:�g=1��DDQ��W=0:�D|Q:x$=x$+s$+"("+�(v(L))+")"�x$=x$+s$+"("+p$+")"
:s$="+":�DNQ
Dg=1:i%=B
N!�:�g=0:a$=t$:�D|Q:v(Q)=�(x$)
l�
|�tBQ:�Q<>0:�
~x=x+1:v$(x)=a$:v(x)=0:Q=x:�
�a$=�a$,10):�x=0:Q=0:�
�Q=0:�I%=1�x:�a$=v$(I%)Q=I%
��:�
�Iz=0:�o(u$+"REPEAT "+p$):E=1:r$=" ":u=t+1:a?(w+1)=p-1:p$(w+1)=p$:e?u=1
�/�:�u$;r$;:c$=�i:�dND:�c$,1)=":"�c$=�27�:�
�M�tz]:�G=1��k(c$+" can't be used here"):�dGQ:��DV]:�S=1:�k(c$+b$):�dGQ
�=e?u=e?u+1:a?(w+e?u)=K:p$(w+e?u)=p$:�K=p-1:E=E+1:r$=r$+" "
�2�K=p �E>1:E=E-1:r$=�r$,�r$-1)��K=p:d?u=0:�dQ
��w+e?u>=j ��h:�k(d$):�
�	�dGQ
�f?u=w:K=u+p:p$="":�tHU
�;笤n(g$)�:��t(0):ZM=w:�19,1,6,0,0,0:�:x$=p$:�TEH:c$=w$
�+�TY^:�G=1:x$=w$+" already built":�tQT
��t>=n �w>=j ��h:x$=d$:�tQT
��to^:�W=1:�trS
��tz]:�G=1:�trS
��dl]:�G=1:�trS
��w$,".")=0:�t{S
�!x$="Can't use name "+w$:�tQT
��t>=n:x$=d$:�tQT
�&t=t+1:n$(t+p)=w$:�p$=""d?t=0:�dyS
�>�TEH:�w$<>"WITH"x$="Should say WITH, not "+w$:t=t-1:�tQT
��p$=""d?t=0:�dyS
�<�t~G:�B>l x$="Only "+�(l)+" stores allowed":t=t-1:�tQT
�y=t:�dm\:�g=1:t=t-1:�
�E=0:r$="":e?t=0:f?t=w
��G%�" "n$(t+p);��10)x$;
�'u$;r$;:c$=�i:�dND
#�c$,1)=":"t=t-1:w=ZM:�t[T
%�c$=�27�t[T
&�c$=""�11:�T@T
('�DV]:�S=1:K=255:p$=c$+" "+p$:�T|T
5�K=p-1:E=E+1:r$=r$+" "
7*�K<>p:�T|T��E>0:E=E-1:r$=�r$,�(r$)-1)
<9�w>=j ��h:�k(d$):�t[T�w=w+1:e?t=e?t+1:a?w=K:p$(w)=p$
Z	�T@T
��e(x$):g=1
��19,1,3,0,0,0:�
�7r=K:�t~G:�B<>d?(r-p)�e("Wrong no of values"):g=1:�
�3�B=0:�tZU��A=1�B:p$=w$(A):�tB^:�g=1:A=B:�tPU
�TV=q%(r-p,A):v(TV)=v(L)
��
��h:�e(d$):g=1
��e?(r-p)=0 �g=1:�
�T=1
�	�E%��
�vKB=f?(r-p)+T:K=a?KB:�K<>255��tiU�c$=p$(KB):�dND:�tz]:�G=1��e(c$+" can't be used here"):�:��DV]:�S=1��e(c$+b$):�
�a?KB=K:p$(KB)=p$
�9p$=p$(KB):�K<=p-2:�dyU��K=p-1:�toU��K=p:�dLU��TCV
��p$=""NT=1:�tuU
��tB^:�g=1:�
�>NT=�(v(L)):�NT<=0:�e("Can't REPEAT "+�(NT)+" times"):g=1:�
�IF=F+1:�F>o:�e("Too many REPEATs"):g=1:� �g%(F)=NT:h%(F)=1:i?F=T:�TRV
��F<=0:�e(f$):g=1:�
�$NT=g%(F):NS=h%(F):LQ=i?F:NS=NS+1
� �NS<=NT:h%(F)=NS:T=LQ:�F=F-1
�	�TRV
��v=100�b:�f:�n$(K)" "p$;
�	�t|K
��g<>0:�
�A$=�(v):�T\V
�K=r � T=e?(r-p):�t]U
�R>=m:�e(d$):g=1:�
#R=R+1:b?R=r:c?R=T:�tHU:�g<>0:�

r=b?R:T=c?R:R=R-1
A$=�(0)
.�A$=""��TfV��A$=":"�A$=�27g=1:�r("I",-1):�
!4�A$="S"�A$="s"v=100:��A$="F"�A$="f"�v=100:�f:v=0
&T=T+1:�T<=e?(r-p)�t_U
N�
pM笤n(g$)�:��h:�e(d$):�:��TEH:c$=w$:�TY^:�G=0 �e(c$+" not built yet"):�
�-�26:�f:�t(-1):N=1:O=1:G%=0:Z%=0:y=J-p:D=1
���'"Press "�236" to remove a line  "�237" to insert"'�6)�239" to move up"�8�238" to move downCOPY to change stores     ESCAPE to exit":�0,750:�1279,750:*FX4,1
�*q$=n$(y+p):�d?y=0:�dTW�q$=q$+" WITH "
�0�A=1�d?y:q$=q$+v$(q%(y,A)):�A<d?(y)q$=q$+","
��
�V=f?y:C=e?y:Y8=0
��s
8c%=0:�2,D-N+1);u$;:*FX15,1
L�D>O:Z%=137�Z%=�
Nw�Z%=27��DxY��Z%<135�Z%>139��DLX��127:�Z%-134 �DKY,�DoX,�TJY,�DRX,�DUX:�c%<>0:�s:Z%=c%:c%=0:�DNX��Z%<138��tcW��TxX
R�D<=C:D=D+1:�D>O:�s
S�
U�D>1:D=D-1:�D<N:�s
V�
o
�D>C:�
t:w=w-1:�A=D+V �w:a?A=a?(A+1):p$(A)=p$(A+1):�:�y=t:�tRX
��A=y+1�t:f?A=f?A-1:�
�C=e?y-1:e?y=C:�TJY:�

�w=j ��h:�k(d$):�
kY8=D:�s:�2,D-N+1);u$;s$;:c$=�i:c%=�c$:�c%=27� c%=135� c%=139:�127:�:��c%=136� c%=138c$=""��c%=137��TLY
c%=0:�dND:�c$=""�c$=":"�
!�DV]:�S=1:K=255:p$=c$+" "+p$
$w=w+1:e?y=e?y+1:u=D+V:�u=w:�TrY
7�A=w �u+1�-1:a?A=a?(A-1):p$(A)=p$(A-1):�:�y=t:�TrY
&�A=y+1�t:f?A=f?A+1:�
2a?u=K:p$(u)=p$:D=D+1:�
KH�30:�39;:�13:�n$(y+p);" WITH ";u$;:c$=�i:�TRG:p$=c$:�p$="":d?y=0:�
T1�t~G:�B>l:�k("Only "+�l+" stores allowed"):�
Z�dm\:�
xN�e?y=0:�tVY�E=0:z=7:p$=n$(y+p):�A=1�e?y:P=a?(V+A):�P=p-1:E=E+1��P=p:E=E-1
��:�E>0:�k(i$+"END"):�tcW
��E<0:�k(f$):�tcW
��26:�f:�c:�g:�d:�
X笤n(g$)�:��TEH
l)c$=w$:�TY^:�G=0�e(w$+" not built"):�
vy=J-p:V=f?y+1:C=e?y
�M�w<=1 ��tG[ ��A=1�V+C-1:�a?A<>255�a?A>=J �p$(A)=n$(a?A)+" "+p$(A):a?A=255
���:�V+C>w ��tG[��A=V+C �w:�a?A<J �a?(A-C)=a?A:p$(A-C)=p$(A)��a?A<>255 �p$(A-C)=n$(a?A)+" "+p$(A):a?(A-C)=255 �p$(A-C)=p$(A):a?(A-C)=255
��
�ow=w-C:�y<t:�A=y+1�t:f?(A-1)=f?A-C:e?(A-1)=e?A:d?(A-1)=d?A:n$(p+A-1)=n$(p+A):�I%=1�4:q%(A-1,I%)=q%(A,I%):�:�
�t=t-1:�tXH:�
�EJ=0:�A=1�B:w$=w$(A):�to^:�W<>1 �d|\�x$=h$+w$:�z=5 �e(x$)��k(x$)
�g=1:A=B:�TA]
�a$=w$:�tBQ:�Q=0:J=J+1
�:�g=1:�
*�x+J<=k:�TK]�x$=d$:�z=7:�e(x$)��k(x$)
	g=1:�
-�A=1�B:a$=w$(A):�D|Q:q%(y,A)=Q:�:d?y=B:�
V�dl]:�G=1:K=z:S=0:�
`�TY^:�G=1:K=J:S=0�S=1
j�
�;G=0:�I%=1�q:�c$=l$(I%)�(�c$>=3�c$=�l$(I%),�c$))G=1:z=I%
��:�
�;G=0:�I%=1�p:�c$=n$(I%)�(�c$>=3�c$=�n$(I%),�c$))G=1:z=I%
�:�
G=0:�t=0:�
"�I%=p+1�p+t:�c$=n$(I%)G=1:J=I%
2�:�
�w$=p$:�to^:�W=1:�ta^
�(a$=p$:�tBQ:�Q=0 �e(p$+e$):L=0:g=1:�
�	L=Q:�
�L=0:v(0)=�p$:�
�?W=1:�J%=�w$�1�-1:n$=�w$,J%):�n$=0��n$<>48��n$<>46�W=0:J%=1
��:�
@���d:�3,1:Z=�(M+135):X7=X+2*SC*�Z:Y7=Y+2*SC*�Z:�m(X7,Y7):Z=�(M+225):X7=X+2*SC*�Z:Y7=Y+2*SC*�Z:�m(X7,Y7):�p(85,X,Y):�0,1:D%=D%�-1:�
#(B�T%=9�F%=51216:�:��:�F%<>51216�:�"DART wasn't saved correctly"
#8*FX229,0
#<
#A
*FX4,0
#F�
#�
笤n(g$)�
#�*FX229,0
#�6�TEH:c$=w$:p$="":�TY^:�G=0��e(c$+" not built"):�
#�@�:y=J-p:I=��c$,7):�'"Saving "�c$,7);:�#I,e?y,d?y:�d?y=0��t~c
#� �I%=1�d?y:�#I,v$(q%(y,I%)):�
#��I%=f?y+1�f?y+e?y
#�Q�a?I%<=p:�#I,a?I%,p$(I%)��a?I%<>255�#I,255,n$(a?I%)+" "+p$(I%)��#I,255,p$(I%)
#��:�#I:�
%
笤n(g$)�
%&*FX229,0
%0�t>=n ��h:�e(d$):�
%::�TEH:c$=w$:p$="":�TY^:�G=1��e(c$+" already built"):�
%DfI=��c$,7):�I=0��e("File not found"):�:��'"Loading "�c$,7);:t=t+1:y=t:f?t=w:�#I,e?t,d?t:�d?t=0��DXe
%N4B=d?t:�I%=1�B:�#I,w$(I%):�:�dm\:�g=1t=t-1:�Dve
%XF�e?t=0��Dle��I%=1�e?t:�w>=j ��h:�e(d$):I%=e?t �w=w+1:�#I,a?w,p$(w)
%b�
%g)I%=�c$,"."):�I%<>0�c$=�c$,I%+1):�Dge
%ln$(t+p)=c$
%v�#I:�tXH:�
'���g:�:�26:�28,0,29,39,0:�f:�19,1,3,0,0,0:�892,70:�21,892,1023:�0,70:�21,1279,70:�24,0;72;890;1023;:�29,0;72;:SC=4:E%=0:G%=-1:D%=0:�
't���t(C%):�:�G%��C% �28,28,28,39,0:�f ��26:�28,0,29,39,0:�f:�4:�19,1,2,0,0,0:�0,880:�1279,880:�0,70:�1279,70:Z%=G%:G%=0:�Z%�892,0:�7,892,200
'��'':�G%�l$(z)
'��
(�ݤf(zz)=SC*zz+.5
)��m(xx,yy):�f(xx),�f(yy):�
)h��w(xx,yy):ߤf(xx),�f(yy):�
)�%��p(kk,xx,yy):�kk,�f(xx),�f(yy):�
*0|��s:�(D=C+1)�(O=C)�Z%<>135:�:�r$="":s$="":�28,0,27,39,9:�f:�q$:�C<=16:N=1:O=C:�N=D-8:O=D+8:�N<1:N=1:O=17��O>C:N=C-16:O=C
*NU=N:�O=0 �Z%<>137�tYj
*X(�A=N �O:�U=Y8:A=A-1:Y8=0:s$=r$:�tJj
*bP=a?(V+A):�P=p:r$=�r$,2)
*�%�3,U-N+1);r$;:�P<>255��n$(P)" ";
*��p$(V+A);:�P=p-1r$=r$+" "
*�U=U+1:�
*��U=Y8:U=U+1
*��
*����j($v%):�X%,Y%:X%=v%:Y%=v%�256:�$v%,4)="*CAT"��$v%,2)="*."��26:�:�&FFF7:�b:�"Press RETURN to continue";:�:��=13:�g:�dLP:�d:�b:�:�
*��&FFF7:�
+\%��o(x$):�I%:�G%�:�x$;:�:��x$=""�
+f
�O%�t(0)
+k�P%<>12�
+mIP%=0:�I%=�x$," "):�I%=0w$=x$:x$="":I%=�w$+1�w$=�x$,I%-1):x$=�x$,I%+1)
+p@�P%=0�P%=12�w$;:P%=I%-1�P%=P%+I%:�P%<=12�" "w$;��:P%=0:�Dpk
+z�x$="":O%=-1:�
+�"��e(x$):�7:O%=0:�o(x$):E%=-1:�
,$p��k(x$):�29,0;0;24,0;0;1279;60;5,7,16:�0,60:�x$;:�4,24,0;72;890;1023;29,0;72;:�=0:�:��>200:��X%,�127);:�11:�
,�ݤh:=(�-!2�&FFFF)<250
,���b:�28,0,31,39,30:�4:�
NH��r(T$,TT%):�T%=0�
OL(ݤa(T$,TT):�TT=-1=T$�=T$+�(�(TT+.5))
O�ݤi:�Z%:x$=""
O�#Z%=�:A$=�Z%:�T%�Z%=58�r("I",-1)
O��Z%=2�Z%=3��Z%:�puO
O�"�Z%=21�ĩx$,�127);:x$="":�puO
O�7�Z%=127�x$<>""�A$;:x$=�x$,�x$-1):�puO��Z%=127�puO
O��x$=""�Z%=32��puO
O�^�Z%=13:X%=�x$:=x$��Z%=27:=�27��Z%>134� Z%<140:=�Z%��Z%<32� Z%>127��puO��A$;:x$=x$+A$:�puO
P"��c:X=110:Y=110:M=90:�m(X,Y):�
Pxݤn(m$)
P�/�p$=":"=0��p$<>""=-1��'m$;:�7:�p$:�11:�pBP
P���f:*FX3,4
P��:*FX3,0
P��
u0:
u2E%=�:*FX4,0
u3*FX229,1
u:/�<>17�t(0):�:�7:�"DART error:":�:�#0:�D`D
uL�:�D`D
uN�
uO� CODE DELETED ON EXECUTION
}��23,236,24,48,96,255,96,48,24,0:�23,237,24,12,6,255,6,12,24,0:�23,238,16,16,16,146,214,124,56,16:�23,239,16,56,124,214,146,16,16,16
}pr%=3:�7:�23,1,0;0;0;0;
}
}	*FX18
}Z�N$(4):N$(0)="TURTLE":N$(1)="turtle":N$(2)="turtle robot":N$(3)="turtle":N$(4)="robot"
}
!�7:�23,1,0;0;0;0;:�title_page
} *KEY1"FORWARD "
} *KEY2"BACKWARD "
} *KEY3"LEFT "
} *KEY4"RIGHT "
} *KEY5"REPEAT "
} *KEY6END|M
} *KEY7"MAKE "
} *KEY8"BUILD "
} *KEY9"CHANGE "
} *KEY10FRESH|M
}  *KEY11 OLD|MRUN|M
}!F%=51216:*FX229,1
}"g%=�:�g%=32��f:�help:�PJ}
}#�g%=27��7:*FX229,0
}$�g%=27��
}%�g%=13��f:�p|
}&	�Pb}
}(
��help
})�''
}*� �"If you have a printer, switch it on now"'"to make a copy of the help."'"(Type�CTRL B�)"''"Press�SPACE�after each page of help"'"to see the next one"''"Press�SPACE�now.":�space
},#�"�Instructions":�130;�38,"=")
}.� �:�"DART allows you to create pictures by"'"moving a 'pen' around the screen or a"'N$(2)" around the floor."''"You can draw directly by using commands"'"like FORWARD 50 and LEFT 45."
}0� �'"You can repeat a sequence of commands"'"by starting the sequence with REPEAT n"'"where n is the number of repeats you"'"want, and ending it with END."''"Eg�  REPEAT 36"'"�     LEFT 10"'"�     FORWARD 10"'"�    END"
}1 �space
}2� �"You can define your own commands by"'"using the BUILD command, change them"'"using CHANGE and delete them using"'"DELETE."
}3v �'"SAVE lets you save commands you have"'"built on disk or tape and LOAD lets"'"you load them back into memory."'
}4� �"MAKE lets you store values and do"'"simple arithmetic on them."''"Remember that you can shorten DART's"'"commands to a minimum of three letters"'"but you must type your own command"'"names in full."
}6
�space
}80 �'�130+"Help with commands:":�130;�38,"=")
}:4 �'"**�VALUES�**"'"Lists values held in stores."
}<2 �'"**�COMMANDS�**"'"Lists the DART commands."
}=� �'"**�LIST�**"'"Type LIST for a list of the commands"'"you've built."'"To see a listing of a particular"'"command type LIST <name>"'"Eg:"'"�LIST SQUARE"
}>" �'"**�FINISH�**"'"Ends DART."
}@
�space
}B� �'"**�BUILD�**"'"Lets you build a new command."'"Eg:"'"�BUILD BOX WITH SIDE �lets you"'" define a command called BOX using"'" the store SIDE."
}Cn �" Then you type in the commands which"'" define your new command."'" Press ESCAPE when you've finished."
}D� �'"**�CHANGE�**"'"Lets you change a command you've built."'"Eg:"'"�CHANGE BOX"'" Remember, CHANGE wipes out your"'" current screen display."
}FU �'"**�DELETE�**":� "Lets you delete a command you've built."'"Eg:"'"�DELETE BOX"
}H
�space
}L% �'"**�RESET�**"'"Restarts DART."
}Ny �:� "**�FAST�**":� "Makes drawing speed fast."'"To change speed to fast when drawing is"'"in progress simply type F"
}Py �:� "**�SLOW�**":� "Makes drawing speed slow."'"To change speed to slow when drawing is"'"in progress simply type S"
}R_ �:� "**�"N$(0)"�**":�"�"N$(0)" ON� starts the "N$(1)"."'"�"N$(0)" OFF� stops the "N$(1)"."
}T
�space
}U��'"**�SAVE�**"'"Saves on tape or disc a procedure"'"which has been built."'"Eg:"'"�SAVE POLYGON"''"**�LOAD�**"'"Loads from tape or disc a previously"'"saved procedure."'"Eg:"'"�LOAD HOUSE":�space
}VY �'"**�FORWARD�**"'"Moves dart this amount forward."'"Eg:"'"�FORWARD 5� or� FOR SIDE"
}X] �'"**�BACKWARD�**"'"Moves dart this amount backward."'"Eg:"'"�BACKWARD 20� or �BACK HOP"
}ZS �'"**�LEFT�**"'"Turns dart this amount left."'"Eg:"'"�LEFT 90� or� LEFT ANGLE"
}\S �'"**�RIGHT�**"'"Turns dart this amount right."'"Eg:"'"�RIGHT 45� or� RIG BIT"
}^
�space
}`Z�:� "**�CLEAN�**"'"Cleans screen without moving dart."'"Has no effect on the "N$(1)"."
}b^ �'"**�CENTRE�**"'"Centres dart without changing picture."'"Has no effect on the "N$(1)"."
}dW�:� "**�FRESH�**"'"Cleans screen and centres dart."'"Has no effect on the "N$(1)"."
}fI �'"**�PEN�**"'"�PEN DOWN �starts drawing."'"�PEN UP� stops drawing."
}h- �'"**�HOOT�**"'"Makes the "N$(1)" hoot."
}j
�space
}k��'"**�MAKE�**"'"Lets you set or change a value in a"'"store. A store name can have up to"'"ten characters. Remember that all"'"the stores are 'global' ie you can use"'"any store you have set up at any time."
}lr�"Eg:"'"�MAKE UNIT 20"'"�MAKE SIDE UNIT*2"'"�MAKE SIDE 5 LESS"'"�MAKE SIDE2 SIDE/UNIT"'"�MAKE SIDE2 UNIT MORE"
}nt �'"**�REPEAT�**"'"Repeats instructions up to next"'"END this number of times."'"Eg:"'"�REPEAT 4� or �REP COUNT"
}p0 �'"**�END�**"'"Ends effect of last REPEAT."
}r�space:�3:�
}t-��space:�g%:�g%=�:�g%=2�pr%=2��g%=3�pr%=3
}v�g%=32:�3:�:�:�:�pr%:�
~,��title_page:V$="2.4b"
~6B�158;�145;�183;:�I=1�7:�163;:�:�183;:�I=1�25:�163;:�:�235
~@O�" "�145;�181;�134;"     ";�145;�181;�135;"Creating pictures by   "�145�234
~JN�" "�145;�181;�130"DART ";�145;�181;�135;"moving a 'dart' around "�145�234
~LD�" "�145�181"      "�145�181�135"the screen and a "N$(3)�145�234
~NE�" "�145�181"      "�145�181�135N$(4)" around the floor."�145�234
~TB�158;�145;�245;:�I=1�7:�240;:�:�245;:�I=1�25:�240;:�:�250
~^`�'�9"Operating System 1.2"''�6)"Based on Oxfordshire County"'�6)"Council copyright material"
~ci�'"  Press"�130"SPACE"�135"if you want help."'"  This is your only chance to see the"'"  help pages."
~h��'"  If you want to copy this program,"'"  press"�130"ESCAPE"�135"and do it now."''"  Press"�130"RETURN"�135"when you want to start"'"  drawing." 
~�1�2,22)"Version "V$�15)"Copyright AUCBE 1984"
~��158�145�35,�172)
~��
��
�D%=5300
�VA%=�P-D%:�:A%=A%-1:�?A%=&AF:?(A%-3)=&FF:A%=A%-2:�=A%:?&12=A% � 256:?&13=A% � 256:�
�R%=&A50:A$=�12+�13,�10)
�;�G=1� $&A50=A$+"REMEMBER TO SAVE THIS PROGRAM AS�DART1"
�;�G=2� $&A50=A$+"REMEMBER TO SAVE THIS PROGRAM AS�DART2"
�;�G=3� $&A50=A$+"REMEMBER TO SAVE THIS PROGRAM AS�DART3"
�;�G=0� $&A50=A$+"REMEMBER TO SAVE THIS PROGRAM AS�DART0"
�;�G=4� $&A50=A$+"REMEMBER TO SAVE THIS PROGRAM AS�DART4"
�4S%=&A00:$&A00=A$+�136+�14," ")+"Please wait"+�30
��PASS=0�2�2:P%=&70:[OPT PASS:LDA#31:JSR&FFEE:LDA#0:JSR&FFEE:LDA#24:JSR&FFEE:LDA#10:JSR&FFEE:JSR&FFE7:LDA #21:JSR&FFEE:RTS:]:�
��
�
00000000  0d 00 28 0b ee 85 e5 8d  54 7c 40 0d 00 32 09 e4  |..(.....T|@..2..|
00000010  8d 50 40 7d 0d 00 3c 0b  ee 85 e5 8d 50 70 75 0d  |.P@}..<.....Ppu.|
00000020  00 5a 16 4b 25 3d 30 3a  eb 34 3a 54 25 3d 39 3a  |.Z.K%=0:.4:T%=9:|
00000030  e4 8d 54 68 63 0d 00 6e  ac 47 25 3d 30 3a 45 25  |..Thc..n.G%=0:E%|
00000040  3d 30 3a 4f 25 3d 30 3a  43 25 3d 30 3a 54 25 3d  |=0:O%=0:C%=0:T%=|
00000050  30 3a 50 25 3d 30 3a 44  25 3d 30 3a 62 24 3d 22  |0:P%=0:D%=0:b$="|
00000060  20 69 73 6e 27 74 20 75  6e 64 65 72 73 74 6f 6f  | isn't understoo|
00000070  64 22 3a 64 24 3d 22 4e  6f 20 6d 6f 72 65 20 72  |d":d$="No more r|
00000080  6f 6f 6d 22 3a 65 24 3d  22 20 68 61 73 20 6e 6f  |oom":e$=" has no|
00000090  20 76 61 6c 75 65 22 3a  66 24 3d 22 54 6f 6f 20  | value":f$="Too |
000000a0  6d 61 6e 79 20 45 4e 44  73 22 3a 67 24 3d 22 47  |many ENDs":g$="G|
000000b0  69 76 65 20 6e 61 6d 65  22 3a 68 24 3d 22 43 61  |ive name":h$="Ca|
000000c0  6e 27 74 20 63 61 6c 6c  20 76 61 72 69 61 62 6c  |n't call variabl|
000000d0  65 20 22 3a 69 24 3d 22  4d 69 73 73 69 6e 67 20  |e ":i$="Missing |
000000e0  22 0d 04 2e 91 49 3d 31  37 3a 6a 3d 32 35 30 3a  |"....I=17:j=250:|
000000f0  6b 3d 31 30 3a 6c 3d 34  3a 6d 3d 35 3a 6e 3d 31  |k=10:l=4:m=5:n=1|
00000100  35 3a 6f 3d 31 30 3a 70  3d 31 32 3a 71 3d 31 32  |5:o=10:p=12:q=12|
00000110  3a de 61 20 6a 2c 70 24  28 6a 29 2c 76 24 28 6b  |:.a j,p$(j),v$(k|
00000120  29 2c 76 28 6b 29 2c 62  20 6d 2c 63 20 6d 2c 64  |),v(k),b m,c m,d|
00000130  20 6e 2b 31 2c 71 25 28  6e 2c 6c 29 2c 6e 24 28  | n+1,q%(n,l),n$(|
00000140  70 2b 6e 29 2c 65 20 6e  2b 31 2c 66 20 6e 2b 31  |p+n),e n+1,f n+1|
00000150  2c 6c 24 28 71 29 2c 77  24 28 31 30 29 2c 67 25  |,l$(q),w$(10),g%|
00000160  28 6f 29 2c 68 25 28 6f  29 2c 69 20 6f 2c 76 25  |(o),h%(o),i o,v%|
00000170  33 30 0d 04 42 23 e3 7a  3d 31 b8 70 3a f3 6e 24  |30..B#.z=1.p:.n$|
00000180  28 7a 29 3a ed 3a e3 7a  3d 31 b8 71 3a f3 6c 24  |(z):.:.z=1.q:.l$|
00000190  28 7a 29 3a ed 0d 04 44  96 dc 46 4f 52 57 41 52  |(z):...D..FORWAR|
000001a0  44 2c 42 41 43 4b 57 41  52 44 2c 4c 45 46 54 2c  |D,BACKWARD,LEFT,|
000001b0  52 49 47 48 54 2c 43 4c  45 41 4e 2c 43 45 4e 54  |RIGHT,CLEAN,CENT|
000001c0  52 45 2c 46 52 45 53 48  2c 50 45 4e 2c 48 4f 4f  |RE,FRESH,PEN,HOO|
000001d0  54 2c 4d 41 4b 45 2c 52  45 50 45 41 54 2c 45 4e  |T,MAKE,REPEAT,EN|
000001e0  44 2c 56 41 4c 55 45 53  2c 43 4f 4d 4d 41 4e 44  |D,VALUES,COMMAND|
000001f0  53 2c 4c 49 53 54 2c 46  49 4e 49 53 48 2c 42 55  |S,LIST,FINISH,BU|
00000200  49 4c 44 2c 43 48 41 4e  47 45 2c 44 45 4c 45 54  |ILD,CHANGE,DELET|
00000210  45 2c 52 45 53 45 54 2c  46 41 53 54 2c 53 4c 4f  |E,RESET,FAST,SLO|
00000220  57 2c 53 41 56 45 2c 4c  4f 41 44 0d 04 51 5f 75  |W,SAVE,LOAD..Q_u|
00000230  24 3d bd 32 33 37 3a 70  25 3d b9 3a 73 3d 31 3a  |$=.237:p%=.:s=1:|
00000240  78 3d 30 3a 74 3d 30 3a  75 3d 30 3a 76 3d 31 30  |x=0:t=0:u=0:v=10|
00000250  30 3a 77 3d 30 3a f2 67  3a f2 63 3a f2 62 3a f1  |0:w=0:.g:.c:.b:.|
00000260  22 20 46 6f 72 20 74 68  65 20 6c 69 73 74 20 6f  |" For the list o|
00000270  66 20 63 6f 6d 6d 61 6e  64 73 20 74 79 70 65 20  |f commands type |
00000280  43 4f 4d 4d 41 4e 44 53  22 3b 0d 04 60 0c 2a 46  |COMMANDS";..`.*F|
00000290  58 32 32 39 2c 31 0d 04  61 10 e7 28 47 25 80 ac  |X229,1..a..(G%..|
000002a0  44 25 29 8c f2 64 0d 04  62 40 3f 26 46 45 36 43  |D%)..d..b@?&FE6C|
000002b0  3d 26 43 30 3a 3f 26 46  45 36 32 3d 30 3a f2 62  |=&C0:?&FE62=0:.b|
000002c0  3a f1 27 22 3a 22 3b 3a  63 24 3d a4 69 3a 4f 25  |:.'":";:c$=.i:O%|
000002d0  3d 30 3a e7 45 25 80 47  25 f2 74 28 30 29 3a f2  |=0:.E%.G%.t(0):.|
000002e0  62 3a 45 25 3d 30 0d 04  65 0a 2a 46 58 34 2c 30  |b:E%=0..e.*FX4,0|
000002f0  0d 04 6a 1e e7 c0 63 24  2c 31 29 3d 22 3a 22 63  |..j...c$,1)=":"c|
00000300  24 3d c1 63 24 2c 32 29  3a e5 8d 44 6a 44 0d 04  |$=.c$,2):..DjD..|
00000310  74 16 e7 63 24 3d 22 22  84 63 24 3d bd 32 37 e5  |t..c$="".c$=.27.|
00000320  8d 44 60 44 0d 04 75 21  e7 c0 63 24 2c 31 29 3d  |.D`D..u!..c$,1)=|
00000330  22 2a 22 8c f2 6a 28 c0  63 24 2c 33 30 29 29 3a  |"*"..j(.c$,30)):|
00000340  e5 8d 44 60 44 0d 04 88  66 52 3d 30 3a 46 3d 30  |..D`D...fR=0:F=0|
00000350  3a 67 3d 30 3a e4 8d 64  4e 44 3a e4 8d 74 7a 5d  |:g=0:..dND:..tz]|
00000360  3a e7 47 3d 31 3a ee 7a  20 e4 8d 74 54 47 2c 8d  |:.G=1:.z ..tTG,.|
00000370  54 72 45 2c 8d 74 58 48  2c 8d 54 68 63 2c 8d 74  |TrE,.tXH,.Thc,.t|
00000380  48 53 2c 8d 44 70 57 2c  8d 44 58 5b 2c 8d 44 66  |HS,.DpW,.DX[,.Df|
00000390  48 2c 8d 64 55 47 2c 8d  64 64 47 2c 8d 74 4c 63  |H,.dUG,.ddG,.tLc|
000003a0  2c 8d 54 5c 65 3a e5 8d  44 60 44 0d 04 a6 48 e4  |,.T\e:..D`D...H.|
000003b0  8d 44 56 5d 3a e7 53 3d  31 3a f2 65 28 63 24 2b  |.DV]:.S=1:.e(c$+|
000003c0  62 24 29 3a 8b e7 4b 3c  70 2d 31 3a e4 8d 74 7c  |b$):..K<p-1:..t||
000003d0  4b 3a 8b e7 4b 3d 70 2d  31 3a e4 8d 74 54 51 3a  |K:..K=p-1:..tTQ:|
000003e0  8b e7 4b 3d 70 3a f2 65  28 66 24 29 3a 8b e4 8d  |..K=p:.e(f$):...|
000003f0  74 48 55 0d 04 ab 09 e5  8d 44 60 44 0d 04 ce 42  |tHU......D`D...B|
00000400  e4 8d 54 52 47 3a 70 24  3d 22 22 3a e3 41 3d 32  |..TRG:p$="":.A=2|
00000410  b8 a9 63 24 3a e7 c1 63  24 2c 41 2c 31 29 3d 22  |..c$:..c$,A,1)="|
00000420  20 22 70 24 3d c1 63 24  2c 41 2b 31 29 3a 63 24  | "p$=.c$,A+1):c$|
00000430  3d c0 63 24 2c 41 2d 31  29 3a 41 3d 39 39 0d 05  |=.c$,A-1):A=99..|
00000440  00 0b ed 3a 42 3d 30 3a  f8 0d 05 32 3b f2 74 28  |...:B=0:...2;.t(|
00000450  30 29 3a ef 31 31 3a e3  49 25 3d 31 b8 70 3a f1  |0):.11:.I%=1.p:.|
00000460  22 20 22 6e 24 28 49 25  29 3a ed 3a f1 3a e3 49  |" "n$(I%):.:.:.I|
00000470  25 3d 31 b8 71 3a f1 22  20 22 6c 24 28 49 25 29  |%=1.q:." "l$(I%)|
00000480  3a ed 3a f8 0d 07 12 38  78 24 3d 22 22 3a 48 3d  |:.:....8x$="":H=|
00000490  31 3a e3 41 3d 31 b8 a9  63 24 3a 79 24 3d c1 63  |1:.A=1..c$:y$=.c|
000004a0  24 2c 41 2c 31 29 3a e7  48 3d 31 3a e7 79 24 3d  |$,A,1):.H=1:.y$=|
000004b0  22 20 22 e5 8d 44 44 47  8b 48 3d 30 0d 07 2c 0e  |" "..DDG.H=0..,.|
000004c0  e7 79 24 3d 22 20 22 48  3d 31 0d 07 30 22 e7 79  |.y$=" "H=1..0".y|
000004d0  24 3e 3d 22 61 22 80 79  24 3c 3d 22 7a 22 79 24  |$>="a".y$<="z"y$|
000004e0  3d bd 28 97 28 79 24 29  2d 33 32 29 0d 07 3a 0c  |=.(.(y$)-32)..:.|
000004f0  78 24 3d 78 24 2b 79 24  0d 07 44 25 ed 3a 63 24  |x$=x$+y$..D%.:c$|
00000500  3d 78 24 3a e7 48 3d 31  3a e7 a9 63 24 3e 30 3a  |=x$:.H=1:..c$>0:|
00000510  63 24 3d c0 63 24 2c a9  63 24 2d 31 29 0d 07 58  |c$=.c$,.c$-1)..X|
00000520  05 f8 0d 07 94 90 f2 74  28 30 29 3a e7 78 3d 30  |.......t(0):.x=0|
00000530  3a f2 6f 28 22 4e 6f 20  76 61 6c 75 65 73 20 73  |:.o("No values s|
00000540  65 74 22 29 3a e5 8d 74  72 47 8b f2 6f 28 22 53  |et"):..trG..o("S|
00000550  74 6f 72 65 20 20 56 61  6c 75 65 22 29 3a f2 6f  |tore  Value"):.o|
00000560  28 22 3d 3d 3d 3d 3d 20  20 3d 3d 3d 3d 3d 22 29  |("=====  =====")|
00000570  3a f1 3a e3 49 25 3d 31  b8 78 3a f1 76 24 28 49  |:.:.I%=1.x:.v$(I|
00000580  25 29 22 20 22 3b 3a 78  24 3d c3 28 a8 28 76 28  |%)" ";:x$=.(.(v(|
00000590  49 25 29 2a 31 30 30 2b  2e 35 29 2f 31 30 30 29  |I%)*100+.5)/100)|
000005a0  3a f1 8a 31 32 2d a9 78  24 29 78 24 3a ef 31 31  |:..12-.x$)x$:.11|
000005b0  3a ed 0d 07 b2 26 f1 3a  f2 6f 28 22 52 6f 6f 6d  |:....&.:.o("Room|
000005c0  20 66 6f 72 20 22 2b c3  28 6b 2d 78 29 2b 22 20  | for "+.(k-x)+" |
000005d0  6d 6f 72 65 22 29 3a f8  0d 07 be 5d 42 3d 31 3a  |more"):....]B=1:|
000005e0  77 24 28 31 29 3d 22 22  3a e3 41 3d 31 b8 a9 70  |w$(1)="":.A=1..p|
000005f0  24 3a 79 24 3d c1 70 24  2c 41 2c 31 29 3a e7 79  |$:y$=.p$,A,1):.y|
00000600  24 3c 3e 22 20 22 80 79  24 3c 3e 22 2c 22 77 24  |$<>" ".y$<>","w$|
00000610  28 42 29 3d 77 24 28 42  29 2b 79 24 8b e7 77 24  |(B)=w$(B)+y$..w$|
00000620  28 42 29 3c 3e 22 22 42  3d 42 2b 31 3a 77 24 28  |(B)<>""B=B+1:w$(|
00000630  42 29 3d 22 22 0d 07 c1  14 ed 3a e7 77 24 28 42  |B)="".....:.w$(B|
00000640  29 3d 22 22 42 3d 42 2d  31 0d 07 c4 05 f8 0d 07  |)=""B=B-1.......|
00000650  c7 49 42 3d 31 3a 77 24  28 31 29 3d 22 22 3a 48  |.IB=1:w$(1)="":H|
00000660  3d 31 3a e3 41 3d 31 b8  a9 70 24 3a 79 24 3d c1  |=1:.A=1..p$:y$=.|
00000670  70 24 2c 41 2c 31 29 3a  e7 48 3c 3e 31 3a e5 8d  |p$,A,1):.H<>1:..|
00000680  64 4a 47 3a 8b e7 79 24  3d 22 20 22 e5 8d 64 4e  |dJG:..y$=" "..dN|
00000690  47 8b e5 8d 64 4b 47 0d  07 ca 23 e7 79 24 3d 22  |G...dKG...#.y$="|
000006a0  20 22 42 3d 42 2b 31 3a  77 24 28 42 29 3d 22 22  | "B=B+1:w$(B)=""|
000006b0  3a 48 3d 31 3a e5 8d 64  4e 47 0d 07 cb 3c e7 79  |:H=1:..dNG...<.y|
000006c0  24 3c 3e 22 2b 22 80 79  24 3c 3e 22 2d 22 80 79  |$<>"+".y$<>"-".y|
000006d0  24 3c 3e 22 2a 22 80 79  24 3c 3e 22 2f 22 48 3d  |$<>"*".y$<>"/"H=|
000006e0  30 3a 77 24 28 42 29 3d  77 24 28 42 29 2b 79 24  |0:w$(B)=w$(B)+y$|
000006f0  3a e5 8d 64 4e 47 0d 07  cc 19 e7 48 3d 30 3a 42  |:..dNG.....H=0:B|
00000700  3d 42 2b 31 3a e7 42 3e  31 30 8c 8d 64 4e 47 0d  |=B+1:.B>10..dNG.|
00000710  07 cd 25 77 24 28 42 29  3d 79 24 3a 42 3d 42 2b  |..%w$(B)=y$:B=B+|
00000720  31 3a e7 42 3c 31 31 3a  77 24 28 42 29 3d 22 22  |1:.B<11:w$(B)=""|
00000730  3a 48 3d 31 0d 07 ce 2f  e7 42 3e 31 30 80 a9 70  |:H=1.../.B>10..p|
00000740  24 3e 3d 31 8c f2 65 28  22 54 6f 6f 20 6d 61 6e  |$>=1..e("Too man|
00000750  79 20 76 61 6c 75 65 73  22 29 3a 67 3d 31 3a 41  |y values"):g=1:A|
00000760  3d 39 39 0d 07 cf 10 ed  3a e7 48 3d 31 3a 42 3d  |=99.....:.H=1:B=|
00000770  42 2d 31 0d 07 d0 05 f8  0d 07 d5 09 76 3d 30 3a  |B-1.........v=0:|
00000780  f8 0d 07 e4 0b 76 3d 31  30 30 3a f8 0d 08 05 11  |.....v=100:.....|
00000790  77 24 3d 22 22 3a e7 70  24 3d 22 22 f8 0d 08 11  |w$="":.p$=""....|
000007a0  31 4a 25 3d a9 70 24 2b  31 3a e3 49 25 3d 31 b8  |1J%=.p$+1:.I%=1.|
000007b0  a9 70 24 3a e7 c1 70 24  2c 49 25 2c 31 29 3d 22  |.p$:..p$,I%,1)="|
000007c0  20 22 4a 25 3d 49 25 3a  49 25 3d a9 70 24 0d 08  | "J%=I%:I%=.p$..|
000007d0  16 21 ed 3a 77 24 3d c0  70 24 2c 4a 25 2d 31 29  |.!.:w$=.p$,J%-1)|
000007e0  3a 70 24 3d c1 70 24 2c  4a 25 2b 31 29 3a f8 0d  |:p$=.p$,J%+1):..|
000007f0  08 66 05 f9 0d 08 98 58  f2 74 28 30 29 3a e7 70  |.f.....X.t(0):.p|
00000800  24 3c 3e 22 22 8c 8d 64  40 48 8b e7 74 3d 30 3a  |$<>""..d@H..t=0:|
00000810  f2 6f 28 22 4e 6f 20 70  72 6f 63 65 64 75 72 65  |.o("No procedure|
00000820  73 22 29 8b f2 6f 28 22  50 72 6f 63 65 64 75 72  |s")..o("Procedur|
00000830  65 73 3a 22 29 3a e3 49  25 3d 31 b8 74 3a f2 6f  |es:"):.I%=1.t:.o|
00000840  28 6e 24 28 49 25 2b 70  29 29 3a ed 0d 08 ac 35  |(n$(I%+p)):....5|
00000850  f1 3a e7 74 3c 6e 20 80  77 3c 6a 3a f2 6f 28 22  |.:.t<n .w<j:.o("|
00000860  52 6f 6f 6d 20 66 6f 72  20 22 2b c3 28 6e 2d 74  |Room for "+.(n-t|
00000870  29 2b 22 20 6d 6f 72 65  22 29 8b f2 6f 28 64 24  |)+" more")..o(d$|
00000880  29 0d 08 b6 05 f8 0d 08  c0 2a 63 24 3d 70 24 3a  |)........*c$=p$:|
00000890  e4 8d 54 59 5e 3a e7 47  3d 30 8c f2 65 28 63 24  |..TY^:.G=0..e(c$|
000008a0  2b 22 20 6e 6f 74 20 62  75 69 6c 74 22 29 3a f8  |+" not built"):.|
000008b0  0d 08 ca 4e 79 3d 4a 2d  70 3a 71 24 3d 70 24 2b  |...Ny=J-p:q$=p$+|
000008c0  22 20 22 3a e7 64 3f 79  3d 30 8c 8d 64 54 48 8b  |" ":.d?y=0..dTH.|
000008d0  71 24 3d 71 24 2b 22 57  49 54 48 20 22 3a e3 41  |q$=q$+"WITH ":.A|
000008e0  3d 31 b8 64 3f 79 3a 71  24 3d 71 24 2b 76 24 28  |=1.d?y:q$=q$+v$(|
000008f0  71 25 28 79 2c 41 29 29  2b 22 2c 22 3a ed 0d 08  |q%(y,A))+",":...|
00000900  d4 43 f1 c0 71 24 2c a9  71 24 2d 31 29 27 3a e7  |.C..q$,.q$-1)':.|
00000910  65 3f 79 3d 30 f8 3a 8b  72 24 3d 22 22 3a e3 41  |e?y=0.:.r$="":.A|
00000920  3d 31 b8 65 3f 79 3a 50  3d 61 3f 28 66 3f 79 2b  |=1.e?y:P=a?(f?y+|
00000930  41 29 3a e7 50 3d 70 3a  72 24 3d c1 72 24 2c 32  |A):.P=p:r$=.r$,2|
00000940  29 0d 08 de 1b f1 72 24  3b 3a e7 50 3c 3e 32 35  |).....r$;:.P<>25|
00000950  35 8c f1 6e 24 28 50 29  22 20 22 3b 0d 08 e8 1e  |5..n$(P)" ";....|
00000960  f1 70 24 28 66 3f 79 2b  41 29 3a e7 50 3d 70 2d  |.p$(f?y+A):.P=p-|
00000970  31 72 24 3d 72 24 2b 22  20 22 0d 08 f2 07 ed 3a  |1r$=r$+" ".....:|
00000980  f8 0d 0b bc 12 e7 4b 3d  70 2d 32 3a e4 8d 64 7e  |......K=p-2:..d~|
00000990  50 3a f8 0d 0b c4 0a e7  44 25 8c f2 64 0d 0b c9  |P:......D%..d...|
000009a0  0e e7 4b 3e 34 3a e5 8d  64 56 4b 0d 0b cc 23 e7  |..K>4:..dVK...#.|
000009b0  70 24 3d 22 22 f2 65 28  69 24 2b 22 6e 75 6d 62  |p$="".e(i$+"numb|
000009c0  65 72 22 29 3a 67 3d 31  3a e5 8d 64 60 4b 0d 0b  |er"):g=1:..d`K..|
000009d0  ce 1c e4 8d 74 42 5e 3a  e7 67 3d 31 20 84 76 28  |....tB^:.g=1 .v(|
000009e0  4c 29 3d 30 3a e5 8d 64  60 4b 0d 0b d6 34 ee 4b  |L)=0:..d`K...4.K|
000009f0  20 e4 8d 74 60 4f 2c 8d  64 52 4f 2c 8d 54 44 50  | ..t`O,.dRO,.TDP|
00000a00  2c 8d 54 76 50 2c 8d 44  68 50 2c 8d 74 5a 50 2c  |,.TvP,.DhP,.tZP,|
00000a10  8d 64 4c 50 2c 8d 64 60  50 2c 8d 64 74 50 0d 0b  |.dLP,.d`P,.dtP..|
00000a20  e0 0d e7 76 3d 31 30 30  8c f2 64 0d 0b ea 05 f8  |...v=100..d.....|
00000a30  0d 0f a0 2c 54 24 3d 22  46 22 3a 58 4d 3d 58 2b  |...,T$="F":XM=X+|
00000a40  76 28 4c 29 2a 9b b2 4d  3a 59 4d 3d 59 2b 76 28  |v(L)*..M:YM=Y+v(|
00000a50  4c 29 2a b5 b2 4d 3a e5  8d 64 66 4f 0d 0f d2 26  |L)*..M:..dfO...&|
00000a60  54 24 3d 22 42 22 3a 58  4d 3d 58 2d 76 28 4c 29  |T$="B":XM=X-v(L)|
00000a70  2a 9b b2 4d 3a 59 4d 3d  59 2d 76 28 4c 29 2a b5  |*..M:YM=Y-v(L)*.|
00000a80  b2 4d 0d 0f e6 43 e7 a4  66 28 94 58 4d 29 3e 31  |.M...C..f(.XM)>1|
00000a90  39 35 30 30 20 84 a4 66  28 94 59 4d 29 3e 31 39  |9500 ..f(.YM)>19|
00000aa0  35 30 30 3a f2 65 28 22  4f 75 74 73 69 64 65 20  |500:.e("Outside |
00000ab0  70 69 63 74 75 72 65 20  72 61 6e 67 65 22 29 3a  |picture range"):|
00000ac0  67 3d 31 3a f8 0d 0f eb  2a f2 72 28 54 24 2c 76  |g=1:....*.r(T$,v|
00000ad0  28 4c 29 2a 32 29 3a e7  73 3d 31 3a f2 77 28 58  |(L)*2):.s=1:.w(X|
00000ae0  4d 2c 59 4d 29 8b f2 6d  28 58 4d 2c 59 4d 29 0d  |M,YM)..m(XM,YM).|
00000af0  0f f0 0f 58 3d 58 4d 3a  59 3d 59 4d 3a f8 0d 10  |...X=XM:Y=YM:...|
00000b00  04 19 54 24 3d 22 4c 22  3a 4d 3d 4d 2b 76 28 4c  |..T$="L":M=M+v(L|
00000b10  29 3a e5 8d 44 40 50 0d  10 36 13 54 24 3d 22 52  |):..D@P..6.T$="R|
00000b20  22 3a 4d 3d 4d 2d 76 28  4c 29 0d 10 40 10 e7 4d  |":M=M-v(L)..@..M|
00000b30  3c 30 3a 4d 3d 4d 2b 33  36 30 0d 10 45 12 e7 4d  |<0:M=M+360..E..M|
00000b40  3e 33 36 30 3a 4d 3d 4d  2d 33 36 30 0d 10 54 11  |>360:M=M-360..T.|
00000b50  f2 72 28 54 24 2c 76 28  4c 29 29 3a f8 0d 10 68  |.r(T$,v(L)):...h|
00000b60  0c da 3a 44 25 3d 30 3a  f8 0d 10 9a 08 f2 63 3a  |..:D%=0:......c:|
00000b70  f8 0d 10 cc 20 f2 63 3a  e4 8d 44 68 50 3a e7 73  |.... .c:..DhP:.s|
00000b80  3d 30 8c 73 3d 31 3a f2  72 28 22 44 22 2c 2d 31  |=0.s=1:.r("D",-1|
00000b90  29 0d 10 d6 05 f8 0d 10  e0 5a e7 ac a4 6e 28 22  |)........Z...n("|
00000ba0  55 50 20 6f 72 20 44 4f  57 4e 22 29 f8 3a 8b e7  |UP or DOWN").:..|
00000bb0  70 24 3d 22 55 50 22 73  3d 30 3a f2 72 28 22 55  |p$="UP"s=0:.r("U|
00000bc0  22 2c 2d 31 29 3a f8 3a  8b e7 70 24 3d 22 44 4f  |",-1):.:..p$="DO|
00000bd0  57 4e 22 73 3d 31 3a f2  72 28 22 44 22 2c 2d 31  |WN"s=1:.r("D",-1|
00000be0  29 3a f8 3a 8b 70 24 3d  22 22 3a e5 8d 64 60 50  |):.:.p$="":..d`P|
00000bf0  0d 10 ea 4c dd f2 50 4e  28 55 25 29 3a 3f 26 46  |...L..PN(U%):?&F|
00000c00  45 36 30 3d 26 46 45 3a  3f 26 46 45 36 43 3d 26  |E60=&FE:?&FE6C=&|
00000c10  45 30 3a f5 3a 53 25 3d  3f 26 46 45 36 30 3a fd  |E0:.:S%=?&FE60:.|
00000c20  28 53 25 80 26 38 30 29  3d 55 25 2a 31 32 38 3a  |(S%.&80)=U%*128:|
00000c30  3f 26 46 45 36 30 3d 26  46 46 3a e1 0d 10 f4 09  |?&FE60=&FF:.....|
00000c40  f2 68 74 3a f8 0d 10 f5  5c dd f2 68 74 3a e7 54  |.ht:....\..ht:.T|
00000c50  25 8c 3f 26 46 45 36 32  3d 26 31 46 3a 3f 26 46  |%.?&FE62=&1F:?&F|
00000c60  45 36 30 3d 26 46 46 3a  3f 26 46 45 36 43 3d 26  |E60=&FF:?&FE6C=&|
00000c70  45 30 3a d6 20 48 25 3a  f8 3a 8b d4 31 2c 2d 31  |E0:. H%:.:..1,-1|
00000c80  35 2c 36 31 2c 31 30 3a  d4 32 2c 2d 31 35 2c 37  |5,61,10:.2,-15,7|
00000c90  37 2c 31 30 3a d4 33 2c  2d 31 35 2c 38 39 2c 31  |7,10:.3,-15,89,1|
00000ca0  30 0d 10 f7 3e dd f2 68  74 3a e7 54 25 8c f2 72  |0...>..ht:.T%..r|
00000cb0  28 22 48 22 2c 2d 31 29  8b d4 31 2c 2d 31 35 2c  |("H",-1)..1,-15,|
00000cc0  36 31 2c 31 30 3a d4 32  2c 2d 31 35 2c 37 37 2c  |61,10:.2,-15,77,|
00000cd0  31 30 3a d4 33 2c 2d 31  35 2c 38 39 2c 31 30 0d  |10:.3,-15,89,10.|
00000ce0  10 f8 2f dd f2 68 74 3a  d4 31 2c 2d 31 35 2c 36  |../..ht:.1,-15,6|
00000cf0  31 2c 31 30 3a d4 32 2c  2d 31 35 2c 37 37 2c 31  |1,10:.2,-15,77,1|
00000d00  30 3a d4 33 2c 2d 31 35  2c 38 39 2c 31 30 0d 10  |0:.3,-15,89,10..|
00000d10  f9 05 e1 0d 10 fe 30 e7  ac a4 6e 28 67 24 2b 22  |......0...n(g$+"|
00000d20  20 26 20 76 61 6c 75 65  22 29 f8 3a 8b e7 78 3e  | & value").:..x>|
00000d30  3d 6b 20 84 a4 68 3a f2  65 28 64 24 29 3a 67 3d  |=k ..h:.e(d$):g=|
00000d40  31 3a f8 0d 11 01 38 e4  8d 54 45 48 3a e4 8d 74  |1:....8..TEH:..t|
00000d50  6f 5e 3a e7 57 3d 31 3a  f2 65 28 68 24 2b 77 24  |o^:.W=1:.e(h$+w$|
00000d60  29 3a f8 3a 8b 61 24 3d  77 24 3a e4 8d 74 42 51  |):.:.a$=w$:..tBQ|
00000d70  3a 74 24 3d 61 24 3a 54  56 3d 51 0d 11 03 10 e4  |:t$=a$:TV=Q.....|
00000d80  8d 64 47 47 3a e7 67 3d  31 3a f8 0d 11 08 83 73  |.dGG:.g=1:.....s|
00000d90  24 3d 22 2b 22 3a 78 24  3d 22 22 3a e3 69 25 3d  |$="+":x$="":.i%=|
00000da0  31 b8 42 3a e7 69 25 3d  42 20 84 28 77 24 28 69  |1.B:.i%=B .(w$(i|
00000db0  25 2b 31 29 3c 3e 22 4d  4f 52 45 22 80 77 24 28  |%+1)<>"MORE".w$(|
00000dc0  69 25 2b 31 29 3c 3e 22  4c 45 53 53 22 29 8c 8d  |i%+1)<>"LESS")..|
00000dd0  54 5c 51 8b e7 54 56 3d  30 3a f2 65 28 74 24 2b  |T\Q..TV=0:.e(t$+|
00000de0  65 24 29 3a e5 8d 44 44  51 8b e7 42 3c 3e 32 8c  |e$):..DDQ..B<>2.|
00000df0  f2 65 28 22 49 6e 76 61  6c 69 64 20 65 78 70 72  |.e("Invalid expr|
00000e00  65 73 73 69 6f 6e 22 29  3a e5 8d 44 44 51 0d 11  |ession"):..DDQ..|
00000e10  12 37 78 24 3d 78 24 2b  c3 28 76 28 54 56 29 29  |.7x$=x$+.(v(TV))|
00000e20  3a e7 77 24 28 69 25 2b  31 29 3d 22 4c 45 53 53  |:.w$(i%+1)="LESS|
00000e30  22 8c 78 24 3d 78 24 2b  22 2d 22 8b 78 24 3d 78  |".x$=x$+"-".x$=x|
00000e40  24 2b 22 2b 22 0d 11 1c  27 70 24 3d 77 24 28 69  |$+"+"...'p$=w$(i|
00000e50  25 29 3a e7 70 24 3d 22  4d 4f 52 45 22 84 70 24  |%):.p$="MORE".p$|
00000e60  3d 22 4c 45 53 53 22 8c  8d 44 4e 51 0d 11 26 43  |="LESS"..DNQ..&C|
00000e70  e7 70 24 3d 22 2d 22 8c  73 24 3d 22 2d 22 3a e5  |.p$="-".s$="-":.|
00000e80  8d 44 4e 51 8b e7 70 24  3d 22 2a 22 84 70 24 3d  |.DNQ..p$="*".p$=|
00000e90  22 2f 22 8c 78 24 3d 78  24 2b 70 24 3a e5 8d 44  |"/".x$=x$+p$:..D|
00000ea0  4e 51 8b e7 70 24 3d 22  2b 22 8c 8d 44 4e 51 0d  |NQ..p$="+"..DNQ.|
00000eb0  11 30 4b e4 8d 74 42 5e  3a e7 67 3d 31 8c 8d 44  |.0K..tB^:.g=1..D|
00000ec0  44 51 8b e7 57 3d 30 3a  e4 8d 44 7c 51 3a 78 24  |DQ..W=0:..D|Q:x$|
00000ed0  3d 78 24 2b 73 24 2b 22  28 22 2b c3 28 76 28 4c  |=x$+s$+"("+.(v(L|
00000ee0  29 29 2b 22 29 22 8b 78  24 3d 78 24 2b 73 24 2b  |))+")".x$=x$+s$+|
00000ef0  22 28 22 2b 70 24 2b 22  29 22 0d 11 3a 10 73 24  |"("+p$+")"..:.s$|
00000f00  3d 22 2b 22 3a e5 8d 44  4e 51 0d 11 44 0c 67 3d  |="+":..DNQ..D.g=|
00000f10  31 3a 69 25 3d 42 0d 11  4e 21 ed 3a e7 67 3d 30  |1:i%=B..N!.:.g=0|
00000f20  3a 61 24 3d 74 24 3a e4  8d 44 7c 51 3a 76 28 51  |:a$=t$:..D|Q:v(Q|
00000f30  29 3d a0 28 78 24 29 0d  11 6c 05 f8 0d 11 7c 11  |)=.(x$)..l....|.|
00000f40  e4 8d 74 42 51 3a e7 51  3c 3e 30 3a f8 0d 11 7e  |..tBQ:.Q<>0:...~|
00000f50  1f 78 3d 78 2b 31 3a 76  24 28 78 29 3d 61 24 3a  |.x=x+1:v$(x)=a$:|
00000f60  76 28 78 29 3d 30 3a 51  3d 78 3a f8 0d 11 82 19  |v(x)=0:Q=x:.....|
00000f70  61 24 3d c0 61 24 2c 31  30 29 3a e7 78 3d 30 3a  |a$=.a$,10):.x=0:|
00000f80  51 3d 30 3a f8 0d 11 87  1e 51 3d 30 3a e3 49 25  |Q=0:.....Q=0:.I%|
00000f90  3d 31 b8 78 3a e7 61 24  3d 76 24 28 49 25 29 51  |=1.x:.a$=v$(I%)Q|
00000fa0  3d 49 25 0d 11 89 07 ed  3a f8 0d 11 94 49 7a 3d  |=I%.....:....Iz=|
00000fb0  30 3a f2 6f 28 75 24 2b  22 52 45 50 45 41 54 20  |0:.o(u$+"REPEAT |
00000fc0  22 2b 70 24 29 3a 45 3d  31 3a 72 24 3d 22 20 22  |"+p$):E=1:r$=" "|
00000fd0  3a 75 3d 74 2b 31 3a 61  3f 28 77 2b 31 29 3d 70  |:u=t+1:a?(w+1)=p|
00000fe0  2d 31 3a 70 24 28 77 2b  31 29 3d 70 24 3a 65 3f  |-1:p$(w+1)=p$:e?|
00000ff0  75 3d 31 0d 11 c7 2f f1  3a f1 75 24 3b 72 24 3b  |u=1.../.:.u$;r$;|
00001000  3a 63 24 3d a4 69 3a e4  8d 64 4e 44 3a e7 c0 63  |:c$=.i:..dND:..c|
00001010  24 2c 31 29 3d 22 3a 22  84 63 24 3d bd 32 37 f1  |$,1)=":".c$=.27.|
00001020  3a f8 0d 11 d0 4d e4 8d  74 7a 5d 3a e7 47 3d 31  |:....M..tz]:.G=1|
00001030  8c f2 6b 28 63 24 2b 22  20 63 61 6e 27 74 20 62  |..k(c$+" can't b|
00001040  65 20 75 73 65 64 20 68  65 72 65 22 29 3a e5 8d  |e used here"):..|
00001050  64 47 51 3a 8b e4 8d 44  56 5d 3a e7 53 3d 31 3a  |dGQ:...DV]:.S=1:|
00001060  f2 6b 28 63 24 2b 62 24  29 3a e5 8d 64 47 51 0d  |.k(c$+b$):..dGQ.|
00001070  11 d3 3d 65 3f 75 3d 65  3f 75 2b 31 3a 61 3f 28  |..=e?u=e?u+1:a?(|
00001080  77 2b 65 3f 75 29 3d 4b  3a 70 24 28 77 2b 65 3f  |w+e?u)=K:p$(w+e?|
00001090  75 29 3d 70 24 3a e7 4b  3d 70 2d 31 3a 45 3d 45  |u)=p$:.K=p-1:E=E|
000010a0  2b 31 3a 72 24 3d 72 24  2b 22 20 22 0d 11 d9 32  |+1:r$=r$+" "...2|
000010b0  e7 4b 3d 70 20 80 45 3e  31 3a 45 3d 45 2d 31 3a  |.K=p .E>1:E=E-1:|
000010c0  72 24 3d c0 72 24 2c a9  72 24 2d 31 29 8b e7 4b  |r$=.r$,.r$-1)..K|
000010d0  3d 70 3a 64 3f 75 3d 30  3a e5 8d 64 7f 51 0d 11  |=p:d?u=0:..d.Q..|
000010e0  dc 1a e7 77 2b 65 3f 75  3e 3d 6a 20 84 a4 68 3a  |...w+e?u>=j ..h:|
000010f0  f2 6b 28 64 24 29 3a f8  0d 11 df 09 e5 8d 64 47  |.k(d$):.......dG|
00001100  51 0d 11 ff 1b 66 3f 75  3d 77 3a 4b 3d 75 2b 70  |Q....f?u=w:K=u+p|
00001110  3a 70 24 3d 22 22 3a e5  8d 74 48 55 0d 13 88 3b  |:p$="":..tHU...;|
00001120  e7 ac a4 6e 28 67 24 29  f8 3a 8b f2 74 28 30 29  |...n(g$).:..t(0)|
00001130  3a 5a 4d 3d 77 3a ef 31  39 2c 31 2c 36 2c 30 2c  |:ZM=w:.19,1,6,0,|
00001140  30 2c 30 3a f1 3a 78 24  3d 70 24 3a e4 8d 54 45  |0,0:.:x$=p$:..TE|
00001150  48 3a 63 24 3d 77 24 0d  13 ac 2b e4 8d 54 59 5e  |H:c$=w$...+..TY^|
00001160  3a e7 47 3d 31 3a 78 24  3d 77 24 2b 22 20 61 6c  |:.G=1:x$=w$+" al|
00001170  72 65 61 64 79 20 62 75  69 6c 74 22 3a e5 8d 74  |ready built":..t|
00001180  51 54 0d 13 ad 1f e7 74  3e 3d 6e 20 84 77 3e 3d  |QT.....t>=n .w>=|
00001190  6a 20 84 a4 68 3a 78 24  3d 64 24 3a e5 8d 74 51  |j ..h:x$=d$:..tQ|
000011a0  54 0d 13 ae 14 e4 8d 74  6f 5e 3a e7 57 3d 31 3a  |T......to^:.W=1:|
000011b0  e5 8d 74 72 53 0d 13 af  14 e4 8d 74 7a 5d 3a e7  |..trS......tz]:.|
000011c0  47 3d 31 3a e5 8d 74 72  53 0d 13 b0 14 e4 8d 64  |G=1:..trS......d|
000011d0  6c 5d 3a e7 47 3d 31 3a  e5 8d 74 72 53 0d 13 b1  |l]:.G=1:..trS...|
000011e0  15 e7 a7 77 24 2c 22 2e  22 29 3d 30 3a e5 8d 74  |...w$,".")=0:..t|
000011f0  7b 53 0d 13 b2 21 78 24  3d 22 43 61 6e 27 74 20  |{S...!x$="Can't |
00001200  75 73 65 20 6e 61 6d 65  20 22 2b 77 24 3a e5 8d  |use name "+w$:..|
00001210  74 51 54 0d 13 bb 15 e7  74 3e 3d 6e 3a 78 24 3d  |tQT.....t>=n:x$=|
00001220  64 24 3a e5 8d 74 51 54  0d 13 bf 26 74 3d 74 2b  |d$:..tQT...&t=t+|
00001230  31 3a 6e 24 28 74 2b 70  29 3d 77 24 3a e7 70 24  |1:n$(t+p)=w$:.p$|
00001240  3d 22 22 64 3f 74 3d 30  3a e5 8d 64 79 53 0d 13  |=""d?t=0:..dyS..|
00001250  c4 3e e4 8d 54 45 48 3a  e7 77 24 3c 3e 22 57 49  |.>..TEH:.w$<>"WI|
00001260  54 48 22 78 24 3d 22 53  68 6f 75 6c 64 20 73 61  |TH"x$="Should sa|
00001270  79 20 57 49 54 48 2c 20  6e 6f 74 20 22 2b 77 24  |y WITH, not "+w$|
00001280  3a 74 3d 74 2d 31 3a e5  8d 74 51 54 0d 13 c5 15  |:t=t-1:..tQT....|
00001290  e7 70 24 3d 22 22 64 3f  74 3d 30 3a e5 8d 64 79  |.p$=""d?t=0:..dy|
000012a0  53 0d 13 c6 3c e4 8d 74  7e 47 3a e7 42 3e 6c 20  |S...<..t~G:.B>l |
000012b0  78 24 3d 22 4f 6e 6c 79  20 22 2b c3 28 6c 29 2b  |x$="Only "+.(l)+|
000012c0  22 20 73 74 6f 72 65 73  20 61 6c 6c 6f 77 65 64  |" stores allowed|
000012d0  22 3a 74 3d 74 2d 31 3a  e5 8d 74 51 54 0d 13 ce  |":t=t-1:..tQT...|
000012e0  1a 79 3d 74 3a e4 8d 64  6d 5c 3a e7 67 3d 31 3a  |.y=t:..dm\:.g=1:|
000012f0  74 3d 74 2d 31 3a f8 0d  13 f9 19 45 3d 30 3a 72  |t=t-1:.....E=0:r|
00001300  24 3d 22 22 3a 65 3f 74  3d 30 3a 66 3f 74 3d 77  |$="":e?t=0:f?t=w|
00001310  0d 13 fb 1c e7 47 25 f1  22 20 22 6e 24 28 74 2b  |.....G%." "n$(t+|
00001320  70 29 3b 8b f1 8a 31 30  29 78 24 3b 0d 14 00 18  |p);...10)x$;....|
00001330  f1 27 75 24 3b 72 24 3b  3a 63 24 3d a4 69 3a e4  |.'u$;r$;:c$=.i:.|
00001340  8d 64 4e 44 0d 14 23 1f  e7 c0 63 24 2c 31 29 3d  |.dND..#...c$,1)=|
00001350  22 3a 22 74 3d 74 2d 31  3a 77 3d 5a 4d 3a e5 8d  |":"t=t-1:w=ZM:..|
00001360  74 5b 54 0d 14 25 10 e7  63 24 3d bd 32 37 e5 8d  |t[T..%..c$=.27..|
00001370  74 5b 54 0d 14 26 13 e7  63 24 3d 22 22 ef 31 31  |t[T..&..c$="".11|
00001380  3a e5 8d 54 40 54 0d 14  28 27 e4 8d 44 56 5d 3a  |:..T@T..('..DV]:|
00001390  e7 53 3d 31 3a 4b 3d 32  35 35 3a 70 24 3d 63 24  |.S=1:K=255:p$=c$|
000013a0  2b 22 20 22 2b 70 24 3a  e5 8d 54 7c 54 0d 14 35  |+" "+p$:..T|T..5|
000013b0  1a e7 4b 3d 70 2d 31 3a  45 3d 45 2b 31 3a 72 24  |..K=p-1:E=E+1:r$|
000013c0  3d 72 24 2b 22 20 22 0d  14 37 2a e7 4b 3c 3e 70  |=r$+" "..7*.K<>p|
000013d0  3a e5 8d 54 7c 54 8b e7  45 3e 30 3a 45 3d 45 2d  |:..T|T..E>0:E=E-|
000013e0  31 3a 72 24 3d c0 72 24  2c a9 28 72 24 29 2d 31  |1:r$=.r$,.(r$)-1|
000013f0  29 0d 14 3c 39 e7 77 3e  3d 6a 20 84 a4 68 3a f2  |)..<9.w>=j ..h:.|
00001400  6b 28 64 24 29 3a e5 8d  74 5b 54 8b 77 3d 77 2b  |k(d$):..t[T.w=w+|
00001410  31 3a 65 3f 74 3d 65 3f  74 2b 31 3a 61 3f 77 3d  |1:e?t=e?t+1:a?w=|
00001420  4b 3a 70 24 28 77 29 3d  70 24 0d 14 5a 09 e5 8d  |K:p$(w)=p$..Z...|
00001430  54 40 54 0d 14 91 0e f2  65 28 78 24 29 3a 67 3d  |T@T.....e(x$):g=|
00001440  31 0d 14 9b 13 ef 31 39  2c 31 2c 33 2c 30 2c 30  |1.....19,1,3,0,0|
00001450  2c 30 3a f8 0d 15 88 37  72 3d 4b 3a e4 8d 74 7e  |,0:....7r=K:..t~|
00001460  47 3a e7 42 3c 3e 64 3f  28 72 2d 70 29 f2 65 28  |G:.B<>d?(r-p).e(|
00001470  22 57 72 6f 6e 67 20 6e  6f 20 6f 66 20 76 61 6c  |"Wrong no of val|
00001480  75 65 73 22 29 3a 67 3d  31 3a f8 0d 15 8a 33 e7  |ues"):g=1:....3.|
00001490  42 3d 30 3a e5 8d 74 5a  55 8b e3 41 3d 31 b8 42  |B=0:..tZU..A=1.B|
000014a0  3a 70 24 3d 77 24 28 41  29 3a e4 8d 74 42 5e 3a  |:p$=w$(A):..tB^:|
000014b0  e7 67 3d 31 3a 41 3d 42  3a e5 8d 74 50 55 0d 15  |.g=1:A=B:..tPU..|
000014c0  8c 1b 54 56 3d 71 25 28  72 2d 70 2c 41 29 3a 76  |..TV=q%(r-p,A):v|
000014d0  28 54 56 29 3d 76 28 4c  29 0d 15 90 05 ed 0d 15  |(TV)=v(L).......|
000014e0  9a 12 e7 a4 68 3a f2 65  28 64 24 29 3a 67 3d 31  |....h:.e(d$):g=1|
000014f0  0d 15 9c 15 e7 65 3f 28  72 2d 70 29 3d 30 20 84  |.....e?(r-p)=0 .|
00001500  67 3d 31 3a f8 0d 15 9d  07 54 3d 31 0d 15 9f 09  |g=1:.....T=1....|
00001510  e7 45 25 8c f8 0d 15 a0  76 4b 42 3d 66 3f 28 72  |.E%.....vKB=f?(r|
00001520  2d 70 29 2b 54 3a 4b 3d  61 3f 4b 42 3a e7 4b 3c  |-p)+T:K=a?KB:.K<|
00001530  3e 32 35 35 8c 8d 74 69  55 8b 63 24 3d 70 24 28  |>255..tiU.c$=p$(|
00001540  4b 42 29 3a e4 8d 64 4e  44 3a e4 8d 74 7a 5d 3a  |KB):..dND:..tz]:|
00001550  e7 47 3d 31 8c f2 65 28  63 24 2b 22 20 63 61 6e  |.G=1..e(c$+" can|
00001560  27 74 20 62 65 20 75 73  65 64 20 68 65 72 65 22  |'t be used here"|
00001570  29 3a f8 3a 8b e4 8d 44  56 5d 3a e7 53 3d 31 8c  |):.:...DV]:.S=1.|
00001580  f2 65 28 63 24 2b 62 24  29 3a f8 0d 15 a4 14 61  |.e(c$+b$):.....a|
00001590  3f 4b 42 3d 4b 3a 70 24  28 4b 42 29 3d 70 24 0d  |?KB=K:p$(KB)=p$.|
000015a0  15 a9 39 70 24 3d 70 24  28 4b 42 29 3a e7 4b 3c  |..9p$=p$(KB):.K<|
000015b0  3d 70 2d 32 3a e5 8d 64  79 55 8b e7 4b 3d 70 2d  |=p-2:..dyU..K=p-|
000015c0  31 3a e5 8d 74 6f 55 8b  e7 4b 3d 70 3a e5 8d 64  |1:..toU..K=p:..d|
000015d0  4c 55 8b e5 8d 54 43 56  0d 15 af 14 e7 70 24 3d  |LU...TCV.....p$=|
000015e0  22 22 4e 54 3d 31 3a e5  8d 74 75 55 0d 15 b0 10  |""NT=1:..tuU....|
000015f0  e4 8d 74 42 5e 3a e7 67  3d 31 3a f8 0d 15 b2 3e  |..tB^:.g=1:....>|
00001600  4e 54 3d a8 28 76 28 4c  29 29 3a e7 4e 54 3c 3d  |NT=.(v(L)):.NT<=|
00001610  30 3a f2 65 28 22 43 61  6e 27 74 20 52 45 50 45  |0:.e("Can't REPE|
00001620  41 54 20 22 2b c3 28 4e  54 29 2b 22 20 74 69 6d  |AT "+.(NT)+" tim|
00001630  65 73 22 29 3a 67 3d 31  3a f8 0d 15 b5 49 46 3d  |es"):g=1:....IF=|
00001640  46 2b 31 3a e7 46 3e 6f  3a f2 65 28 22 54 6f 6f  |F+1:.F>o:.e("Too|
00001650  20 6d 61 6e 79 20 52 45  50 45 41 54 73 22 29 3a  | many REPEATs"):|
00001660  67 3d 31 3a f8 20 8b 67  25 28 46 29 3d 4e 54 3a  |g=1:. .g%(F)=NT:|
00001670  68 25 28 46 29 3d 31 3a  69 3f 46 3d 54 3a e5 8d  |h%(F)=1:i?F=T:..|
00001680  54 52 56 0d 15 cc 16 e7  46 3c 3d 30 3a f2 65 28  |TRV.....F<=0:.e(|
00001690  66 24 29 3a 67 3d 31 3a  f8 0d 15 d4 24 4e 54 3d  |f$):g=1:....$NT=|
000016a0  67 25 28 46 29 3a 4e 53  3d 68 25 28 46 29 3a 4c  |g%(F):NS=h%(F):L|
000016b0  51 3d 69 3f 46 3a 4e 53  3d 4e 53 2b 31 0d 15 db  |Q=i?F:NS=NS+1...|
000016c0  20 e7 4e 53 3c 3d 4e 54  3a 68 25 28 46 29 3d 4e  | .NS<=NT:h%(F)=N|
000016d0  53 3a 54 3d 4c 51 3a 8b  46 3d 46 2d 31 0d 15 e0  |S:T=LQ:.F=F-1...|
000016e0  09 e5 8d 54 52 56 0d 15  f9 1c e7 76 3d 31 30 30  |...TRV.....v=100|
000016f0  f2 62 3a f2 66 3a f1 6e  24 28 4b 29 22 20 22 70  |.b:.f:.n$(K)" "p|
00001700  24 3b 0d 15 fb 09 e4 8d  74 7c 4b 0d 15 fc 0b e7  |$;......t|K.....|
00001710  67 3c 3e 30 3a f8 0d 15  fe 11 41 24 3d bf 28 76  |g<>0:.....A$=.(v|
00001720  29 3a e5 8d 54 5c 56 0d  16 03 1a e7 4b 3d 72 20  |):..T\V.....K=r |
00001730  80 20 54 3d 65 3f 28 72  2d 70 29 3a e5 8d 74 5d  |. T=e?(r-p):..t]|
00001740  55 0d 16 04 16 e7 52 3e  3d 6d 3a f2 65 28 64 24  |U.....R>=m:.e(d$|
00001750  29 3a 67 3d 31 3a f8 0d  16 05 23 52 3d 52 2b 31  |):g=1:....#R=R+1|
00001760  3a 62 3f 52 3d 72 3a 63  3f 52 3d 54 3a e4 8d 74  |:b?R=r:c?R=T:..t|
00001770  48 55 3a e7 67 3c 3e 30  3a f8 0d 16 0a 15 72 3d  |HU:.g<>0:.....r=|
00001780  62 3f 52 3a 54 3d 63 3f  52 3a 52 3d 52 2d 31 0d  |b?R:T=c?R:R=R-1.|
00001790  16 12 0b 41 24 3d bf 28  30 29 0d 16 1c 2e e7 41  |...A$=.(0).....A|
000017a0  24 3d 22 22 8c 8d 54 66  56 8b e7 41 24 3d 22 3a  |$=""..TfV..A$=":|
000017b0  22 84 41 24 3d bd 32 37  67 3d 31 3a f2 72 28 22  |".A$=.27g=1:.r("|
000017c0  49 22 2c 2d 31 29 3a f8  0d 16 21 34 e7 41 24 3d  |I",-1):...!4.A$=|
000017d0  22 53 22 84 41 24 3d 22  73 22 76 3d 31 30 30 3a  |"S".A$="s"v=100:|
000017e0  8b e7 41 24 3d 22 46 22  84 41 24 3d 22 66 22 80  |..A$="F".A$="f".|
000017f0  76 3d 31 30 30 3a f2 66  3a 76 3d 30 0d 16 26 1a  |v=100:.f:v=0..&.|
00001800  54 3d 54 2b 31 3a e7 54  3c 3d 65 3f 28 72 2d 70  |T=T+1:.T<=e?(r-p|
00001810  29 e5 8d 74 5f 55 0d 16  4e 05 f8 0d 17 70 4d e7  |)..t_U..N....pM.|
00001820  ac a4 6e 28 67 24 29 f8  3a 8b e7 a4 68 3a f2 65  |..n(g$).:...h:.e|
00001830  28 64 24 29 3a f8 3a 8b  e4 8d 54 45 48 3a 63 24  |(d$):.:...TEH:c$|
00001840  3d 77 24 3a e4 8d 54 59  5e 3a e7 47 3d 30 20 f2  |=w$:..TY^:.G=0 .|
00001850  65 28 63 24 2b 22 20 6e  6f 74 20 62 75 69 6c 74  |e(c$+" not built|
00001860  20 79 65 74 22 29 3a f8  0d 17 98 2d ef 32 36 3a  | yet"):....-.26:|
00001870  f2 66 3a f2 74 28 2d 31  29 3a 4e 3d 31 3a 4f 3d  |.f:.t(-1):N=1:O=|
00001880  31 3a 47 25 3d 30 3a 5a  25 3d 30 3a 79 3d 4a 2d  |1:G%=0:Z%=0:y=J-|
00001890  70 3a 44 3d 31 0d 17 a2  a1 f1 27 22 50 72 65 73  |p:D=1.....'"Pres|
000018a0  73 20 22 bd 32 33 36 22  20 74 6f 20 72 65 6d 6f  |s ".236" to remo|
000018b0  76 65 20 61 20 6c 69 6e  65 20 20 22 bd 32 33 37  |ve a line  ".237|
000018c0  22 20 74 6f 20 69 6e 73  65 72 74 22 27 8a 36 29  |" to insert"'.6)|
000018d0  bd 32 33 39 22 20 74 6f  20 6d 6f 76 65 20 75 70  |.239" to move up|
000018e0  22 89 38 bd 32 33 38 22  20 74 6f 20 6d 6f 76 65  |".8.238" to move|
000018f0  20 64 6f 77 6e 43 4f 50  59 20 74 6f 20 63 68 61  | downCOPY to cha|
00001900  6e 67 65 20 73 74 6f 72  65 73 20 20 20 20 20 45  |nge stores     E|
00001910  53 43 41 50 45 20 74 6f  20 65 78 69 74 22 3a ec  |SCAPE to exit":.|
00001920  30 2c 37 35 30 3a df 31  32 37 39 2c 37 35 30 3a  |0,750:.1279,750:|
00001930  2a 46 58 34 2c 31 0d 17  a3 2a 71 24 3d 6e 24 28  |*FX4,1...*q$=n$(|
00001940  79 2b 70 29 3a e7 64 3f  79 3d 30 3a e5 8d 64 54  |y+p):.d?y=0:..dT|
00001950  57 8b 71 24 3d 71 24 2b  22 20 57 49 54 48 20 22  |W.q$=q$+" WITH "|
00001960  0d 17 a5 30 e3 41 3d 31  b8 64 3f 79 3a 71 24 3d  |...0.A=1.d?y:q$=|
00001970  71 24 2b 76 24 28 71 25  28 79 2c 41 29 29 3a e7  |q$+v$(q%(y,A)):.|
00001980  41 3c 64 3f 28 79 29 71  24 3d 71 24 2b 22 2c 22  |A<d?(y)q$=q$+","|
00001990  0d 17 a8 05 ed 0d 17 d4  14 56 3d 66 3f 79 3a 43  |.........V=f?y:C|
000019a0  3d 65 3f 79 3a 59 38 3d  30 0d 17 de 06 f2 73 0d  |=e?y:Y8=0.....s.|
000019b0  18 38 1f 63 25 3d 30 3a  f1 8a 32 2c 44 2d 4e 2b  |.8.c%=0:..2,D-N+|
000019c0  31 29 3b 75 24 3b 3a 2a  46 58 31 35 2c 31 0d 18  |1);u$;:*FX15,1..|
000019d0  4c 14 e7 44 3e 4f 3a 5a  25 3d 31 33 37 8b 5a 25  |L..D>O:Z%=137.Z%|
000019e0  3d a5 0d 18 4e 77 e7 5a  25 3d 32 37 8c 8d 44 78  |=...Nw.Z%=27..Dx|
000019f0  59 8b e7 5a 25 3c 31 33  35 84 5a 25 3e 31 33 39  |Y..Z%<135.Z%>139|
00001a00  8c 8d 44 4c 58 8b ef 31  32 37 3a ee 5a 25 2d 31  |..DLX..127:.Z%-1|
00001a10  33 34 20 e4 8d 44 4b 59  2c 8d 44 6f 58 2c 8d 54  |34 ..DKY,.DoX,.T|
00001a20  4a 59 2c 8d 44 52 58 2c  8d 44 55 58 3a e7 63 25  |JY,.DRX,.DUX:.c%|
00001a30  3c 3e 30 3a f2 73 3a 5a  25 3d 63 25 3a 63 25 3d  |<>0:.s:Z%=c%:c%=|
00001a40  30 3a e5 8d 44 4e 58 8b  e7 5a 25 3c 31 33 38 8c  |0:..DNX..Z%<138.|
00001a50  8d 74 63 57 8b 8d 54 78  58 0d 18 52 17 e7 44 3c  |.tcW..TxX..R..D<|
00001a60  3d 43 3a 44 3d 44 2b 31  3a e7 44 3e 4f 3a f2 73  |=C:D=D+1:.D>O:.s|
00001a70  0d 18 53 05 f8 0d 18 55  16 e7 44 3e 31 3a 44 3d  |..S....U..D>1:D=|
00001a80  44 2d 31 3a e7 44 3c 4e  3a f2 73 0d 18 56 05 f8  |D-1:.D<N:.s..V..|
00001a90  0d 18 6f 0a e7 44 3e 43  3a f8 0d 18 74 3a 77 3d  |..o..D>C:...t:w=|
00001aa0  77 2d 31 3a e3 41 3d 44  2b 56 20 b8 77 3a 61 3f  |w-1:.A=D+V .w:a?|
00001ab0  41 3d 61 3f 28 41 2b 31  29 3a 70 24 28 41 29 3d  |A=a?(A+1):p$(A)=|
00001ac0  70 24 28 41 2b 31 29 3a  ed 3a e7 79 3d 74 3a e5  |p$(A+1):.:.y=t:.|
00001ad0  8d 74 52 58 0d 18 8a 18  e3 41 3d 79 2b 31 b8 74  |.tRX.....A=y+1.t|
00001ae0  3a 66 3f 41 3d 66 3f 41  2d 31 3a ed 0d 18 92 19  |:f?A=f?A-1:.....|
00001af0  43 3d 65 3f 79 2d 31 3a  65 3f 79 3d 43 3a e4 8d  |C=e?y-1:e?y=C:..|
00001b00  54 4a 59 3a f8 0d 19 0a  15 e7 77 3d 6a 20 84 a4  |TJY:......w=j ..|
00001b10  68 3a f2 6b 28 64 24 29  3a f8 0d 19 0c 6b 59 38  |h:.k(d$):....kY8|
00001b20  3d 44 3a f2 73 3a f1 8a  32 2c 44 2d 4e 2b 31 29  |=D:.s:..2,D-N+1)|
00001b30  3b 75 24 3b 73 24 3b 3a  63 24 3d a4 69 3a 63 25  |;u$;s$;:c$=.i:c%|
00001b40  3d 97 63 24 3a e7 63 25  3d 32 37 84 20 63 25 3d  |=.c$:.c%=27. c%=|
00001b50  31 33 35 84 20 63 25 3d  31 33 39 3a ef 31 32 37  |135. c%=139:.127|
00001b60  3a f8 3a 8b e7 63 25 3d  31 33 36 84 20 63 25 3d  |:.:..c%=136. c%=|
00001b70  31 33 38 63 24 3d 22 22  8b e7 63 25 3d 31 33 37  |138c$=""..c%=137|
00001b80  8c 8d 54 4c 59 0d 19 0f  1d 63 25 3d 30 3a e4 8d  |..TLY....c%=0:..|
00001b90  64 4e 44 3a e7 63 24 3d  22 22 84 63 24 3d 22 3a  |dND:.c$="".c$=":|
00001ba0  22 f8 0d 19 12 21 e4 8d  44 56 5d 3a e7 53 3d 31  |"....!..DV]:.S=1|
00001bb0  3a 4b 3d 32 35 35 3a 70  24 3d 63 24 2b 22 20 22  |:K=255:p$=c$+" "|
00001bc0  2b 70 24 0d 19 15 24 77  3d 77 2b 31 3a 65 3f 79  |+p$...$w=w+1:e?y|
00001bd0  3d 65 3f 79 2b 31 3a 75  3d 44 2b 56 3a e7 75 3d  |=e?y+1:u=D+V:.u=|
00001be0  77 3a e5 8d 54 72 59 0d  19 19 37 e3 41 3d 77 20  |w:..TrY...7.A=w |
00001bf0  b8 75 2b 31 88 2d 31 3a  61 3f 41 3d 61 3f 28 41  |.u+1.-1:a?A=a?(A|
00001c00  2d 31 29 3a 70 24 28 41  29 3d 70 24 28 41 2d 31  |-1):p$(A)=p$(A-1|
00001c10  29 3a ed 3a e7 79 3d 74  3a e5 8d 54 72 59 0d 19  |):.:.y=t:..TrY..|
00001c20  26 18 e3 41 3d 79 2b 31  b8 74 3a 66 3f 41 3d 66  |&..A=y+1.t:f?A=f|
00001c30  3f 41 2b 31 3a ed 0d 19  32 1a 61 3f 75 3d 4b 3a  |?A+1:...2.a?u=K:|
00001c40  70 24 28 75 29 3d 70 24  3a 44 3d 44 2b 31 3a f8  |p$(u)=p$:D=D+1:.|
00001c50  0d 19 4b 48 ef 33 30 3a  f1 89 33 39 3b 3a ef 31  |..KH.30:..39;:.1|
00001c60  33 3a f1 6e 24 28 79 2b  70 29 3b 22 20 57 49 54  |3:.n$(y+p);" WIT|
00001c70  48 20 22 3b 75 24 3b 3a  63 24 3d a4 69 3a e4 8d  |H ";u$;:c$=.i:..|
00001c80  54 52 47 3a 70 24 3d 63  24 3a e7 70 24 3d 22 22  |TRG:p$=c$:.p$=""|
00001c90  3a 64 3f 79 3d 30 3a f8  0d 19 54 31 e4 8d 74 7e  |:d?y=0:...T1..t~|
00001ca0  47 3a e7 42 3e 6c 3a f2  6b 28 22 4f 6e 6c 79 20  |G:.B>l:.k("Only |
00001cb0  22 2b c3 6c 2b 22 20 73  74 6f 72 65 73 20 61 6c  |"+.l+" stores al|
00001cc0  6c 6f 77 65 64 22 29 3a  f8 0d 19 5a 0b e4 8d 64  |lowed"):...Z...d|
00001cd0  6d 5c 3a f8 0d 19 78 4e  e7 65 3f 79 3d 30 3a e5  |m\:...xN.e?y=0:.|
00001ce0  8d 74 56 59 8b 45 3d 30  3a 7a 3d 37 3a 70 24 3d  |.tVY.E=0:z=7:p$=|
00001cf0  6e 24 28 79 2b 70 29 3a  e3 41 3d 31 b8 65 3f 79  |n$(y+p):.A=1.e?y|
00001d00  3a 50 3d 61 3f 28 56 2b  41 29 3a e7 50 3d 70 2d  |:P=a?(V+A):.P=p-|
00001d10  31 3a 45 3d 45 2b 31 8b  e7 50 3d 70 3a 45 3d 45  |1:E=E+1..P=p:E=E|
00001d20  2d 31 0d 19 82 1d ed 3a  e7 45 3e 30 3a f2 6b 28  |-1.....:.E>0:.k(|
00001d30  69 24 2b 22 45 4e 44 22  29 3a e5 8d 74 63 57 0d  |i$+"END"):..tcW.|
00001d40  19 8c 15 e7 45 3c 30 3a  f2 6b 28 66 24 29 3a e5  |....E<0:.k(f$):.|
00001d50  8d 74 63 57 0d 19 96 15  ef 32 36 3a f2 66 3a f2  |.tcW.....26:.f:.|
00001d60  63 3a f2 67 3a f2 64 3a  f8 0d 1b 58 14 e7 ac a4  |c:.g:.d:...X....|
00001d70  6e 28 67 24 29 f8 3a 8b  e4 8d 54 45 48 0d 1b 6c  |n(g$).:...TEH..l|
00001d80  29 63 24 3d 77 24 3a e4  8d 54 59 5e 3a e7 47 3d  |)c$=w$:..TY^:.G=|
00001d90  30 f2 65 28 77 24 2b 22  20 6e 6f 74 20 62 75 69  |0.e(w$+" not bui|
00001da0  6c 74 22 29 3a f8 0d 1b  76 17 79 3d 4a 2d 70 3a  |lt"):...v.y=J-p:|
00001db0  56 3d 66 3f 79 2b 31 3a  43 3d 65 3f 79 0d 1b 80  |V=f?y+1:C=e?y...|
00001dc0  4d e7 77 3c 3d 31 20 8c  8d 74 47 5b 20 8b e3 41  |M.w<=1 ..tG[ ..A|
00001dd0  3d 31 b8 56 2b 43 2d 31  3a e7 61 3f 41 3c 3e 32  |=1.V+C-1:.a?A<>2|
00001de0  35 35 80 61 3f 41 3e 3d  4a 20 8c 70 24 28 41 29  |55.a?A>=J .p$(A)|
00001df0  3d 6e 24 28 61 3f 41 29  2b 22 20 22 2b 70 24 28  |=n$(a?A)+" "+p$(|
00001e00  41 29 3a 61 3f 41 3d 32  35 35 0d 1b 82 8a ed 3a  |A):a?A=255.....:|
00001e10  e7 56 2b 43 3e 77 20 8c  8d 74 47 5b 8b e3 41 3d  |.V+C>w ..tG[..A=|
00001e20  56 2b 43 20 b8 77 3a e7  61 3f 41 3c 4a 20 8c 61  |V+C .w:.a?A<J .a|
00001e30  3f 28 41 2d 43 29 3d 61  3f 41 3a 70 24 28 41 2d  |?(A-C)=a?A:p$(A-|
00001e40  43 29 3d 70 24 28 41 29  8b e7 61 3f 41 3c 3e 32  |C)=p$(A)..a?A<>2|
00001e50  35 35 20 8c 70 24 28 41  2d 43 29 3d 6e 24 28 61  |55 .p$(A-C)=n$(a|
00001e60  3f 41 29 2b 22 20 22 2b  70 24 28 41 29 3a 61 3f  |?A)+" "+p$(A):a?|
00001e70  28 41 2d 43 29 3d 32 35  35 20 8b 70 24 28 41 2d  |(A-C)=255 .p$(A-|
00001e80  43 29 3d 70 24 28 41 29  3a 61 3f 28 41 2d 43 29  |C)=p$(A):a?(A-C)|
00001e90  3d 32 35 35 0d 1b 85 05  ed 0d 1b 87 6f 77 3d 77  |=255........ow=w|
00001ea0  2d 43 3a e7 79 3c 74 3a  e3 41 3d 79 2b 31 b8 74  |-C:.y<t:.A=y+1.t|
00001eb0  3a 66 3f 28 41 2d 31 29  3d 66 3f 41 2d 43 3a 65  |:f?(A-1)=f?A-C:e|
00001ec0  3f 28 41 2d 31 29 3d 65  3f 41 3a 64 3f 28 41 2d  |?(A-1)=e?A:d?(A-|
00001ed0  31 29 3d 64 3f 41 3a 6e  24 28 70 2b 41 2d 31 29  |1)=d?A:n$(p+A-1)|
00001ee0  3d 6e 24 28 70 2b 41 29  3a e3 49 25 3d 31 b8 34  |=n$(p+A):.I%=1.4|
00001ef0  3a 71 25 28 41 2d 31 2c  49 25 29 3d 71 25 28 41  |:q%(A-1,I%)=q%(A|
00001f00  2c 49 25 29 3a ed 3a ed  0d 1b 8a 11 74 3d 74 2d  |,I%):.:.....t=t-|
00001f10  31 3a e4 8d 74 58 48 3a  f8 0d 1c ed 45 4a 3d 30  |1:..tXH:....EJ=0|
00001f20  3a e3 41 3d 31 b8 42 3a  77 24 3d 77 24 28 41 29  |:.A=1.B:w$=w$(A)|
00001f30  3a e4 8d 74 6f 5e 3a e7  57 3c 3e 31 20 e5 8d 64  |:..to^:.W<>1 ..d|
00001f40  7c 5c 8b 78 24 3d 68 24  2b 77 24 3a e7 7a 3d 35  ||\.x$=h$+w$:.z=5|
00001f50  20 f2 65 28 78 24 29 8b  f2 6b 28 78 24 29 0d 1c  | .e(x$)..k(x$)..|
00001f60  fa 11 67 3d 31 3a 41 3d  42 3a e5 8d 54 41 5d 0d  |..g=1:A=B:..TA].|
00001f70  1c fc 1a 61 24 3d 77 24  3a e4 8d 74 42 51 3a e7  |...a$=w$:..tBQ:.|
00001f80  51 3d 30 3a 4a 3d 4a 2b  31 0d 1d 01 0c ed 3a e7  |Q=0:J=J+1.....:.|
00001f90  67 3d 31 3a f8 0d 1d 06  2a e7 78 2b 4a 3c 3d 6b  |g=1:....*.x+J<=k|
00001fa0  3a e5 8d 54 4b 5d 8b 78  24 3d 64 24 3a e7 7a 3d  |:..TK].x$=d$:.z=|
00001fb0  37 3a f2 65 28 78 24 29  8b f2 6b 28 78 24 29 0d  |7:.e(x$)..k(x$).|
00001fc0  1d 08 09 67 3d 31 3a f8  0d 1d 0b 2d e3 41 3d 31  |...g=1:....-.A=1|
00001fd0  b8 42 3a 61 24 3d 77 24  28 41 29 3a e4 8d 44 7c  |.B:a$=w$(A):..D||
00001fe0  51 3a 71 25 28 79 2c 41  29 3d 51 3a ed 3a 64 3f  |Q:q%(y,A)=Q:.:d?|
00001ff0  79 3d 42 3a f8 0d 1d 56  18 e4 8d 64 6c 5d 3a e7  |y=B:...V...dl]:.|
00002000  47 3d 31 3a 4b 3d 7a 3a  53 3d 30 3a f8 0d 1d 60  |G=1:K=z:S=0:...`|
00002010  1a e4 8d 54 59 5e 3a e7  47 3d 31 3a 4b 3d 4a 3a  |...TY^:.G=1:K=J:|
00002020  53 3d 30 8b 53 3d 31 0d  1d 6a 05 f8 0d 1d ba 3b  |S=0.S=1..j.....;|
00002030  47 3d 30 3a e3 49 25 3d  31 b8 71 3a e7 63 24 3d  |G=0:.I%=1.q:.c$=|
00002040  6c 24 28 49 25 29 84 28  a9 63 24 3e 3d 33 80 63  |l$(I%).(.c$>=3.c|
00002050  24 3d c0 6c 24 28 49 25  29 2c a9 63 24 29 29 47  |$=.l$(I%),.c$))G|
00002060  3d 31 3a 7a 3d 49 25 0d  1d ce 07 ed 3a f8 0d 1d  |=1:z=I%.....:...|
00002070  ec 3b 47 3d 30 3a e3 49  25 3d 31 b8 70 3a e7 63  |.;G=0:.I%=1.p:.c|
00002080  24 3d 6e 24 28 49 25 29  84 28 a9 63 24 3e 3d 33  |$=n$(I%).(.c$>=3|
00002090  80 63 24 3d c0 6e 24 28  49 25 29 2c a9 63 24 29  |.c$=.n$(I%),.c$)|
000020a0  29 47 3d 31 3a 7a 3d 49  25 0d 1e 00 07 ed 3a f8  |)G=1:z=I%.....:.|
000020b0  0d 1e 19 0e 47 3d 30 3a  e7 74 3d 30 3a f8 0d 1e  |....G=0:.t=0:...|
000020c0  1e 22 e3 49 25 3d 70 2b  31 b8 70 2b 74 3a e7 63  |.".I%=p+1.p+t:.c|
000020d0  24 3d 6e 24 28 49 25 29  47 3d 31 3a 4a 3d 49 25  |$=n$(I%)G=1:J=I%|
000020e0  0d 1e 32 07 ed 3a f8 0d  1e 82 1a 77 24 3d 70 24  |..2..:.....w$=p$|
000020f0  3a e4 8d 74 6f 5e 3a e7  57 3d 31 3a e5 8d 74 61  |:..to^:.W=1:..ta|
00002100  5e 0d 1e 90 28 61 24 3d  70 24 3a e4 8d 74 42 51  |^...(a$=p$:..tBQ|
00002110  3a e7 51 3d 30 20 f2 65  28 70 24 2b 65 24 29 3a  |:.Q=0 .e(p$+e$):|
00002120  4c 3d 30 3a 67 3d 31 3a  f8 0d 1e 92 09 4c 3d 51  |L=0:g=1:.....L=Q|
00002130  3a f8 0d 1e a1 12 4c 3d  30 3a 76 28 30 29 3d bb  |:.....L=0:v(0)=.|
00002140  70 24 3a f8 0d 1e af 3f  57 3d 31 3a e3 4a 25 3d  |p$:....?W=1:.J%=|
00002150  a9 77 24 b8 31 88 2d 31  3a 6e 24 3d c2 77 24 2c  |.w$.1.-1:n$=.w$,|
00002160  4a 25 29 3a e7 bb 6e 24  3d 30 80 97 6e 24 3c 3e  |J%):..n$=0..n$<>|
00002170  34 38 80 97 6e 24 3c 3e  34 36 8c 57 3d 30 3a 4a  |48..n$<>46.W=0:J|
00002180  25 3d 31 0d 1e b4 07 ed  3a f8 0d 1f 40 85 dd f2  |%=1.....:...@...|
00002190  64 3a e6 33 2c 31 3a 5a  3d b2 28 4d 2b 31 33 35  |d:.3,1:Z=.(M+135|
000021a0  29 3a 58 37 3d 58 2b 32  2a 53 43 2a 9b 5a 3a 59  |):X7=X+2*SC*.Z:Y|
000021b0  37 3d 59 2b 32 2a 53 43  2a b5 5a 3a f2 6d 28 58  |7=Y+2*SC*.Z:.m(X|
000021c0  37 2c 59 37 29 3a 5a 3d  b2 28 4d 2b 32 32 35 29  |7,Y7):Z=.(M+225)|
000021d0  3a 58 37 3d 58 2b 32 2a  53 43 2a 9b 5a 3a 59 37  |:X7=X+2*SC*.Z:Y7|
000021e0  3d 59 2b 32 2a 53 43 2a  b5 5a 3a f2 6d 28 58 37  |=Y+2*SC*.Z:.m(X7|
000021f0  2c 59 37 29 3a f2 70 28  38 35 2c 58 2c 59 29 3a  |,Y7):.p(85,X,Y):|
00002200  e6 30 2c 31 3a 44 25 3d  44 25 82 2d 31 3a e1 0d  |.0,1:D%=D%.-1:..|
00002210  23 28 42 e7 54 25 3d 39  80 46 25 3d 35 31 32 31  |#(B.T%=9.F%=5121|
00002220  36 3a f8 3a 8b f1 3a e7  46 25 3c 3e 35 31 32 31  |6:.:..:.F%<>5121|
00002230  36 f1 3a f1 22 44 41 52  54 20 77 61 73 6e 27 74  |6.:."DART wasn't|
00002240  20 73 61 76 65 64 20 63  6f 72 72 65 63 74 6c 79  | saved correctly|
00002250  22 0d 23 38 0c 2a 46 58  32 32 39 2c 30 0d 23 3c  |".#8.*FX229,0.#<|
00002260  07 ee 85 87 0d 23 41 0a  2a 46 58 34 2c 30 0d 23  |.....#A.*FX4,0.#|
00002270  46 05 e0 0d 23 8c 0d e7  ac a4 6e 28 67 24 29 f8  |F...#.....n(g$).|
00002280  0d 23 96 0c 2a 46 58 32  32 39 2c 30 0d 23 a0 36  |.#..*FX229,0.#.6|
00002290  e4 8d 54 45 48 3a 63 24  3d 77 24 3a 70 24 3d 22  |..TEH:c$=w$:p$="|
000022a0  22 3a e4 8d 54 59 5e 3a  e7 47 3d 30 8c f2 65 28  |":..TY^:.G=0..e(|
000022b0  63 24 2b 22 20 6e 6f 74  20 62 75 69 6c 74 22 29  |c$+" not built")|
000022c0  3a f8 0d 23 aa 40 f1 3a  79 3d 4a 2d 70 3a 49 3d  |:..#.@.:y=J-p:I=|
000022d0  ae c0 63 24 2c 37 29 3a  f1 27 22 53 61 76 69 6e  |..c$,7):.'"Savin|
000022e0  67 20 22 c0 63 24 2c 37  29 3b 3a f1 23 49 2c 65  |g ".c$,7);:.#I,e|
000022f0  3f 79 2c 64 3f 79 3a e7  64 3f 79 3d 30 8c 8d 74  |?y,d?y:.d?y=0..t|
00002300  7e 63 0d 23 b4 20 e3 49  25 3d 31 b8 64 3f 79 3a  |~c.#. .I%=1.d?y:|
00002310  f1 23 49 2c 76 24 28 71  25 28 79 2c 49 25 29 29  |.#I,v$(q%(y,I%))|
00002320  3a ed 0d 23 be 15 e3 49  25 3d 66 3f 79 2b 31 b8  |:..#...I%=f?y+1.|
00002330  66 3f 79 2b 65 3f 79 0d  23 c8 51 e7 61 3f 49 25  |f?y+e?y.#.Q.a?I%|
00002340  3c 3d 70 3a f1 23 49 2c  61 3f 49 25 2c 70 24 28  |<=p:.#I,a?I%,p$(|
00002350  49 25 29 8b e7 61 3f 49  25 3c 3e 32 35 35 f1 23  |I%)..a?I%<>255.#|
00002360  49 2c 32 35 35 2c 6e 24  28 61 3f 49 25 29 2b 22  |I,255,n$(a?I%)+"|
00002370  20 22 2b 70 24 28 49 25  29 8b f1 23 49 2c 32 35  | "+p$(I%)..#I,25|
00002380  35 2c 70 24 28 49 25 29  0d 23 d2 0b ed 3a d9 23  |5,p$(I%).#...:.#|
00002390  49 3a f8 0d 25 1c 0d e7  ac a4 6e 28 67 24 29 f8  |I:..%.....n(g$).|
000023a0  0d 25 26 0c 2a 46 58 32  32 39 2c 30 0d 25 30 16  |.%&.*FX229,0.%0.|
000023b0  e7 74 3e 3d 6e 20 84 a4  68 3a f2 65 28 64 24 29  |.t>=n ..h:.e(d$)|
000023c0  3a f8 0d 25 3a 3a e4 8d  54 45 48 3a 63 24 3d 77  |:..%::..TEH:c$=w|
000023d0  24 3a 70 24 3d 22 22 3a  e4 8d 54 59 5e 3a e7 47  |$:p$="":..TY^:.G|
000023e0  3d 31 8c f2 65 28 63 24  2b 22 20 61 6c 72 65 61  |=1..e(c$+" alrea|
000023f0  64 79 20 62 75 69 6c 74  22 29 3a f8 0d 25 44 66  |dy built"):..%Df|
00002400  49 3d ad c0 63 24 2c 37  29 3a e7 49 3d 30 8c f2  |I=..c$,7):.I=0..|
00002410  65 28 22 46 69 6c 65 20  6e 6f 74 20 66 6f 75 6e  |e("File not foun|
00002420  64 22 29 3a f8 3a 8b f1  27 22 4c 6f 61 64 69 6e  |d"):.:..'"Loadin|
00002430  67 20 22 c0 63 24 2c 37  29 3b 3a 74 3d 74 2b 31  |g ".c$,7);:t=t+1|
00002440  3a 79 3d 74 3a 66 3f 74  3d 77 3a e8 23 49 2c 65  |:y=t:f?t=w:.#I,e|
00002450  3f 74 2c 64 3f 74 3a e7  64 3f 74 3d 30 8c 8d 44  |?t,d?t:.d?t=0..D|
00002460  58 65 0d 25 4e 34 42 3d  64 3f 74 3a e3 49 25 3d  |Xe.%N4B=d?t:.I%=|
00002470  31 b8 42 3a e8 23 49 2c  77 24 28 49 25 29 3a ed  |1.B:.#I,w$(I%):.|
00002480  3a e4 8d 64 6d 5c 3a e7  67 3d 31 74 3d 74 2d 31  |:..dm\:.g=1t=t-1|
00002490  3a e5 8d 44 76 65 0d 25  58 46 e7 65 3f 74 3d 30  |:..Dve.%XF.e?t=0|
000024a0  8c 8d 44 6c 65 8b e3 49  25 3d 31 b8 65 3f 74 3a  |..Dle..I%=1.e?t:|
000024b0  e7 77 3e 3d 6a 20 84 a4  68 3a f2 65 28 64 24 29  |.w>=j ..h:.e(d$)|
000024c0  3a 49 25 3d 65 3f 74 20  8b 77 3d 77 2b 31 3a e8  |:I%=e?t .w=w+1:.|
000024d0  23 49 2c 61 3f 77 2c 70  24 28 77 29 0d 25 62 05  |#I,a?w,p$(w).%b.|
000024e0  ed 0d 25 67 29 49 25 3d  a7 63 24 2c 22 2e 22 29  |..%g)I%=.c$,".")|
000024f0  3a e7 49 25 3c 3e 30 8c  63 24 3d c1 63 24 2c 49  |:.I%<>0.c$=.c$,I|
00002500  25 2b 31 29 3a e5 8d 44  67 65 0d 25 6c 0e 6e 24  |%+1):..Dge.%l.n$|
00002510  28 74 2b 70 29 3d 63 24  0d 25 76 0f d9 23 49 3a  |(t+p)=c$.%v..#I:|
00002520  e4 8d 74 58 48 3a f8 0d  27 10 87 dd f2 67 3a f1  |..tXH:..'....g:.|
00002530  3a ef 32 36 3a ef 32 38  2c 30 2c 32 39 2c 33 39  |:.26:.28,0,29,39|
00002540  2c 30 3a f2 66 3a ef 31  39 2c 31 2c 33 2c 30 2c  |,0:.f:.19,1,3,0,|
00002550  30 2c 30 3a ec 38 39 32  2c 37 30 3a f0 32 31 2c  |0,0:.892,70:.21,|
00002560  38 39 32 2c 31 30 32 33  3a ec 30 2c 37 30 3a f0  |892,1023:.0,70:.|
00002570  32 31 2c 31 32 37 39 2c  37 30 3a ef 32 34 2c 30  |21,1279,70:.24,0|
00002580  3b 37 32 3b 38 39 30 3b  31 30 32 33 3b 3a ef 32  |;72;890;1023;:.2|
00002590  39 2c 30 3b 37 32 3b 3a  53 43 3d 34 3a 45 25 3d  |9,0;72;:SC=4:E%=|
000025a0  30 3a 47 25 3d 2d 31 3a  44 25 3d 30 3a e1 0d 27  |0:G%=-1:D%=0:..'|
000025b0  74 8e dd f2 74 28 43 25  29 3a f1 3a e7 47 25 80  |t...t(C%):.:.G%.|
000025c0  ac 43 25 20 ef 32 38 2c  32 38 2c 32 38 2c 33 39  |.C% .28,28,28,39|
000025d0  2c 30 3a f2 66 20 8b ef  32 36 3a ef 32 38 2c 30  |,0:.f ..26:.28,0|
000025e0  2c 32 39 2c 33 39 2c 30  3a f2 66 3a ef 34 3a ef  |,29,39,0:.f:.4:.|
000025f0  31 39 2c 31 2c 32 2c 30  2c 30 2c 30 3a ec 30 2c  |19,1,2,0,0,0:.0,|
00002600  38 38 30 3a df 31 32 37  39 2c 38 38 30 3a ec 30  |880:.1279,880:.0|
00002610  2c 37 30 3a df 31 32 37  39 2c 37 30 3a 5a 25 3d  |,70:.1279,70:Z%=|
00002620  47 25 3a 47 25 3d 30 3a  e7 5a 25 ec 38 39 32 2c  |G%:G%=0:.Z%.892,|
00002630  30 3a f0 37 2c 38 39 32  2c 32 30 30 0d 27 88 12  |0:.7,892,200.'..|
00002640  f1 27 27 3a e7 ac 47 25  f1 6c 24 28 7a 29 0d 27  |.'':..G%.l$(z).'|
00002650  92 05 e1 0d 28 fa 14 dd  a4 66 28 7a 7a 29 3d 53  |....(....f(zz)=S|
00002660  43 2a 7a 7a 2b 2e 35 0d  29 04 1f dd f2 6d 28 78  |C*zz+.5.)....m(x|
00002670  78 2c 79 79 29 3a ec a4  66 28 78 78 29 2c a4 66  |x,yy):..f(xx),.f|
00002680  28 79 79 29 3a e1 0d 29  68 1f dd f2 77 28 78 78  |(yy):..)h...w(xx|
00002690  2c 79 79 29 3a df a4 66  28 78 78 29 2c a4 66 28  |,yy):..f(xx),.f(|
000026a0  79 79 29 3a e1 0d 29 cc  25 dd f2 70 28 6b 6b 2c  |yy):..).%..p(kk,|
000026b0  78 78 2c 79 79 29 3a f0  6b 6b 2c a4 66 28 78 78  |xx,yy):.kk,.f(xx|
000026c0  29 2c a4 66 28 79 79 29  3a e1 0d 2a 30 7c dd f2  |),.f(yy):..*0|..|
000026d0  73 3a e7 28 44 3d 43 2b  31 29 80 28 4f 3d 43 29  |s:.(D=C+1).(O=C)|
000026e0  80 5a 25 3c 3e 31 33 35  3a e1 3a 8b 72 24 3d 22  |.Z%<>135:.:.r$="|
000026f0  22 3a 73 24 3d 22 22 3a  ef 32 38 2c 30 2c 32 37  |":s$="":.28,0,27|
00002700  2c 33 39 2c 39 3a f2 66  3a f1 71 24 3a e7 43 3c  |,39,9:.f:.q$:.C<|
00002710  3d 31 36 3a 4e 3d 31 3a  4f 3d 43 3a 8b 4e 3d 44  |=16:N=1:O=C:.N=D|
00002720  2d 38 3a 4f 3d 44 2b 38  3a e7 4e 3c 31 3a 4e 3d  |-8:O=D+8:.N<1:N=|
00002730  31 3a 4f 3d 31 37 8b e7  4f 3e 43 3a 4e 3d 43 2d  |1:O=17..O>C:N=C-|
00002740  31 36 3a 4f 3d 43 0d 2a  4e 1a 55 3d 4e 3a e7 4f  |16:O=C.*N.U=N:.O|
00002750  3d 30 20 80 5a 25 3c 3e  31 33 37 e5 8d 74 59 6a  |=0 .Z%<>137..tYj|
00002760  0d 2a 58 28 e3 41 3d 4e  20 b8 4f 3a e7 55 3d 59  |.*X(.A=N .O:.U=Y|
00002770  38 3a 41 3d 41 2d 31 3a  59 38 3d 30 3a 73 24 3d  |8:A=A-1:Y8=0:s$=|
00002780  72 24 3a e5 8d 74 4a 6a  0d 2a 62 1c 50 3d 61 3f  |r$:..tJj.*b.P=a?|
00002790  28 56 2b 41 29 3a e7 50  3d 70 3a 72 24 3d c1 72  |(V+A):.P=p:r$=.r|
000027a0  24 2c 32 29 0d 2a 80 25  f1 8a 33 2c 55 2d 4e 2b  |$,2).*.%..3,U-N+|
000027b0  31 29 3b 72 24 3b 3a e7  50 3c 3e 32 35 35 8c f1  |1);r$;:.P<>255..|
000027c0  6e 24 28 50 29 22 20 22  3b 0d 2a 85 1d f1 70 24  |n$(P)" ";.*...p$|
000027d0  28 56 2b 41 29 3b 3a e7  50 3d 70 2d 31 72 24 3d  |(V+A);:.P=p-1r$=|
000027e0  72 24 2b 22 20 22 0d 2a  8a 0b 55 3d 55 2b 31 3a  |r$+" ".*..U=U+1:|
000027f0  ed 0d 2a 99 0f e7 55 3d  59 38 3a 55 3d 55 2b 31  |..*...U=Y8:U=U+1|
00002800  0d 2a a8 05 e1 0d 2a b2  88 dd f2 6a 28 24 76 25  |.*....*....j($v%|
00002810  29 3a ea 58 25 2c 59 25  3a 58 25 3d 76 25 3a 59  |):.X%,Y%:X%=v%:Y|
00002820  25 3d 76 25 81 32 35 36  3a e7 c0 24 76 25 2c 34  |%=v%.256:..$v%,4|
00002830  29 3d 22 2a 43 41 54 22  84 c0 24 76 25 2c 32 29  |)="*CAT"..$v%,2)|
00002840  3d 22 2a 2e 22 8c ef 32  36 3a db 3a d6 26 46 46  |="*."..26:.:.&FF|
00002850  46 37 3a f2 62 3a f1 22  50 72 65 73 73 20 52 45  |F7:.b:."Press RE|
00002860  54 55 52 4e 20 74 6f 20  63 6f 6e 74 69 6e 75 65  |TURN to continue|
00002870  22 3b 3a f5 3a fd a5 3d  31 33 3a f2 67 3a e4 8d  |";:.:..=13:.g:..|
00002880  64 4c 50 3a f2 64 3a f2  62 3a f1 3a e1 0d 2a bc  |dLP:.d:.b:.:..*.|
00002890  0c d6 26 46 46 46 37 3a  e1 0d 2b 5c 25 dd f2 6f  |..&FFF7:..+\%..o|
000028a0  28 78 24 29 3a ea 49 25  3a e7 ac 47 25 f1 3a f1  |(x$):.I%:..G%.:.|
000028b0  78 24 3b 3a e1 3a 8b e7  78 24 3d 22 22 e1 0d 2b  |x$;:.:..x$=""..+|
000028c0  66 0d e7 ac 4f 25 f2 74  28 30 29 0d 2b 6b 0c e7  |f...O%.t(0).+k..|
000028d0  50 25 3c 3e 31 32 f1 0d  2b 6d 49 50 25 3d 30 3a  |P%<>12..+mIP%=0:|
000028e0  f5 49 25 3d a7 78 24 2c  22 20 22 29 3a e7 49 25  |.I%=.x$," "):.I%|
000028f0  3d 30 77 24 3d 78 24 3a  78 24 3d 22 22 3a 49 25  |=0w$=x$:x$="":I%|
00002900  3d a9 77 24 2b 31 8b 77  24 3d c0 78 24 2c 49 25  |=.w$+1.w$=.x$,I%|
00002910  2d 31 29 3a 78 24 3d c1  78 24 2c 49 25 2b 31 29  |-1):x$=.x$,I%+1)|
00002920  0d 2b 70 40 e7 50 25 3d  30 84 50 25 3d 31 32 f1  |.+p@.P%=0.P%=12.|
00002930  77 24 3b 3a 50 25 3d 49  25 2d 31 8b 50 25 3d 50  |w$;:P%=I%-1.P%=P|
00002940  25 2b 49 25 3a e7 50 25  3c 3d 31 32 f1 22 20 22  |%+I%:.P%<=12." "|
00002950  77 24 3b 8b f1 3a 50 25  3d 30 3a e5 8d 44 70 6b  |w$;..:P%=0:..Dpk|
00002960  0d 2b 7a 12 fd 78 24 3d  22 22 3a 4f 25 3d 2d 31  |.+z..x$="":O%=-1|
00002970  3a e1 0d 2b c0 22 dd f2  65 28 78 24 29 3a ef 37  |:..+."..e(x$):.7|
00002980  3a 4f 25 3d 30 3a f2 6f  28 78 24 29 3a 45 25 3d  |:O%=0:.o(x$):E%=|
00002990  2d 31 3a e1 0d 2c 24 70  dd f2 6b 28 78 24 29 3a  |-1:..,$p..k(x$):|
000029a0  ef 32 39 2c 30 3b 30 3b  32 34 2c 30 3b 30 3b 31  |.29,0;0;24,0;0;1|
000029b0  32 37 39 3b 36 30 3b 35  2c 37 2c 31 36 3a ec 30  |279;60;5,7,16:.0|
000029c0  2c 36 30 3a f1 78 24 3b  3a ef 34 2c 32 34 2c 30  |,60:.x$;:.4,24,0|
000029d0  3b 37 32 3b 38 39 30 3b  31 30 32 33 3b 32 39 2c  |;72;890;1023;29,|
000029e0  30 3b 37 32 3b 3a d1 3d  30 3a f5 3a fd 91 3e 32  |0;72;:.=0:.:..>2|
000029f0  30 30 3a f1 c4 58 25 2c  bd 31 32 37 29 3b 3a ef  |00:..X%,.127);:.|
00002a00  31 31 3a e1 0d 2c 88 19  dd a4 68 3a 3d 28 93 2d  |11:..,....h:=(.-|
00002a10  21 32 80 26 46 46 46 46  29 3c 32 35 30 0d 2c ec  |!2.&FFFF)<250.,.|
00002a20  1b dd f2 62 3a ef 32 38  2c 30 2c 33 31 2c 33 39  |...b:.28,0,31,39|
00002a30  2c 33 30 3a ef 34 3a e1  0d 4e 48 16 dd f2 72 28  |,30:.4:..NH...r(|
00002a40  54 24 2c 54 54 25 29 3a  e7 54 25 3d 30 e1 0d 4f  |T$,TT%):.T%=0..O|
00002a50  4c 28 dd a4 61 28 54 24  2c 54 54 29 3a e7 54 54  |L(..a(T$,TT):.TT|
00002a60  3d 2d 31 3d 54 24 8b 3d  54 24 2b c3 28 a8 28 54  |=-1=T$.=T$+.(.(T|
00002a70  54 2b 2e 35 29 29 0d 4f  b0 11 dd a4 69 3a ea 5a  |T+.5)).O....i:.Z|
00002a80  25 3a 78 24 3d 22 22 0d  4f b5 23 5a 25 3d a5 3a  |%:x$="".O.#Z%=.:|
00002a90  41 24 3d bd 5a 25 3a e7  54 25 80 5a 25 3d 35 38  |A$=.Z%:.T%.Z%=58|
00002aa0  f2 72 28 22 49 22 2c 2d  31 29 0d 4f ba 18 e7 5a  |.r("I",-1).O...Z|
00002ab0  25 3d 32 84 5a 25 3d 33  8c ef 5a 25 3a e5 8d 70  |%=2.Z%=3..Z%:..p|
00002ac0  75 4f 0d 4f bf 22 e7 5a  25 3d 32 31 f1 c4 a9 78  |uO.O.".Z%=21...x|
00002ad0  24 2c bd 31 32 37 29 3b  3a 78 24 3d 22 22 3a e5  |$,.127);:x$="":.|
00002ae0  8d 70 75 4f 0d 4f c1 37  e7 5a 25 3d 31 32 37 80  |.puO.O.7.Z%=127.|
00002af0  78 24 3c 3e 22 22 f1 41  24 3b 3a 78 24 3d c0 78  |x$<>"".A$;:x$=.x|
00002b00  24 2c a9 78 24 2d 31 29  3a e5 8d 70 75 4f 8b e7  |$,.x$-1):..puO..|
00002b10  5a 25 3d 31 32 37 e5 8d  70 75 4f 0d 4f c2 15 e7  |Z%=127..puO.O...|
00002b20  78 24 3d 22 22 80 5a 25  3d 33 32 8c 8d 70 75 4f  |x$="".Z%=32..puO|
00002b30  0d 4f c4 5e e7 5a 25 3d  31 33 3a 58 25 3d a9 78  |.O.^.Z%=13:X%=.x|
00002b40  24 3a 3d 78 24 8b e7 5a  25 3d 32 37 3a 3d bd 32  |$:=x$..Z%=27:=.2|
00002b50  37 8b e7 5a 25 3e 31 33  34 80 20 5a 25 3c 31 34  |7..Z%>134. Z%<14|
00002b60  30 3a 3d bd 5a 25 8b e7  5a 25 3c 33 32 84 20 5a  |0:=.Z%..Z%<32. Z|
00002b70  25 3e 31 32 37 8c 8d 70  75 4f 8b f1 41 24 3b 3a  |%>127..puO..A$;:|
00002b80  78 24 3d 78 24 2b 41 24  3a e5 8d 70 75 4f 0d 50  |x$=x$+A$:..puO.P|
00002b90  14 22 dd f2 63 3a 58 3d  31 31 30 3a 59 3d 31 31  |."..c:X=110:Y=11|
00002ba0  30 3a 4d 3d 39 30 3a f2  6d 28 58 2c 59 29 3a e1  |0:M=90:.m(X,Y):.|
00002bb0  0d 50 78 0b dd a4 6e 28  6d 24 29 0d 50 82 2f e7  |.Px...n(m$).P./.|
00002bc0  70 24 3d 22 3a 22 3d 30  8b e7 70 24 3c 3e 22 22  |p$=":"=0..p$<>""|
00002bd0  3d 2d 31 8b f1 27 6d 24  3b 3a ef 37 3a e8 70 24  |=-1..'m$;:.7:.p$|
00002be0  3a ef 31 31 3a e5 8d 70  42 50 0d 50 dc 0e dd f2  |:.11:..pBP.P....|
00002bf0  66 3a 2a 46 58 33 2c 34  0d 50 e6 0c db 3a 2a 46  |f:*FX3,4.P...:*F|
00002c00  58 33 2c 30 0d 50 f0 05  e1 0d 75 30 05 3a 0d 75  |X3,0.P....u0.:.u|
00002c10  32 0f 45 25 3d b9 3a 2a  46 58 34 2c 30 0d 75 33  |2.E%=.:*FX4,0.u3|
00002c20  0c 2a 46 58 32 32 39 2c  31 0d 75 3a 2f e7 9f 3c  |.*FX229,1.u:/..<|
00002c30  3e 31 37 f2 74 28 30 29  3a f1 3a ef 37 3a f1 22  |>17.t(0):.:.7:."|
00002c40  44 41 52 54 20 65 72 72  6f 72 3a 22 3a f6 3a d9  |DART error:":.:.|
00002c50  23 30 3a e5 8d 44 60 44  0d 75 4c 0b f1 3a e5 8d  |#0:..D`D.uL..:..|
00002c60  44 60 44 0d 75 4e 05 af  0d 75 4f 1f f4 20 43 4f  |D`D.uN...uO.. CO|
00002c70  44 45 20 44 45 4c 45 54  45 44 20 4f 4e 20 45 58  |DE DELETED ON EX|
00002c80  45 43 55 54 49 4f 4e 0d  7d 00 87 ef 32 33 2c 32  |ECUTION.}...23,2|
00002c90  33 36 2c 32 34 2c 34 38  2c 39 36 2c 32 35 35 2c  |36,24,48,96,255,|
00002ca0  39 36 2c 34 38 2c 32 34  2c 30 3a ef 32 33 2c 32  |96,48,24,0:.23,2|
00002cb0  33 37 2c 32 34 2c 31 32  2c 36 2c 32 35 35 2c 36  |37,24,12,6,255,6|
00002cc0  2c 31 32 2c 32 34 2c 30  3a ef 32 33 2c 32 33 38  |,12,24,0:.23,238|
00002cd0  2c 31 36 2c 31 36 2c 31  36 2c 31 34 36 2c 32 31  |,16,16,16,146,21|
00002ce0  34 2c 31 32 34 2c 35 36  2c 31 36 3a ef 32 33 2c  |4,124,56,16:.23,|
00002cf0  32 33 39 2c 31 36 2c 35  36 2c 31 32 34 2c 32 31  |239,16,56,124,21|
00002d00  34 2c 31 34 36 2c 31 36  2c 31 36 2c 31 36 0d 7d  |4,146,16,16,16.}|
00002d10  02 1b 70 72 25 3d 33 3a  eb 37 3a ef 32 33 2c 31  |..pr%=3:.7:.23,1|
00002d20  2c 30 3b 30 3b 30 3b 30  3b 0d 7d 03 07 ee 85 87  |,0;0;0;0;.}.....|
00002d30  0d 7d 04 09 2a 46 58 31  38 0d 7d 06 5a de 4e 24  |.}..*FX18.}.Z.N$|
00002d40  28 34 29 3a 4e 24 28 30  29 3d 22 54 55 52 54 4c  |(4):N$(0)="TURTL|
00002d50  45 22 3a 4e 24 28 31 29  3d 22 74 75 72 74 6c 65  |E":N$(1)="turtle|
00002d60  22 3a 4e 24 28 32 29 3d  22 74 75 72 74 6c 65 20  |":N$(2)="turtle |
00002d70  72 6f 62 6f 74 22 3a 4e  24 28 33 29 3d 22 74 75  |robot":N$(3)="tu|
00002d80  72 74 6c 65 22 3a 4e 24  28 34 29 3d 22 72 6f 62  |rtle":N$(4)="rob|
00002d90  6f 74 22 0d 7d 0a 21 eb  37 3a ef 32 33 2c 31 2c  |ot".}.!.7:.23,1,|
00002da0  30 3b 30 3b 30 3b 30 3b  3a f2 74 69 74 6c 65 5f  |0;0;0;0;:.title_|
00002db0  70 61 67 65 0d 7d 12 14  20 2a 4b 45 59 31 22 46  |page.}.. *KEY1"F|
00002dc0  4f 52 57 41 52 44 20 22  0d 7d 13 15 20 2a 4b 45  |ORWARD ".}.. *KE|
00002dd0  59 32 22 42 41 43 4b 57  41 52 44 20 22 0d 7d 14  |Y2"BACKWARD ".}.|
00002de0  11 20 2a 4b 45 59 33 22  4c 45 46 54 20 22 0d 7d  |. *KEY3"LEFT ".}|
00002df0  15 12 20 2a 4b 45 59 34  22 52 49 47 48 54 20 22  |.. *KEY4"RIGHT "|
00002e00  0d 7d 16 13 20 2a 4b 45  59 35 22 52 45 50 45 41  |.}.. *KEY5"REPEA|
00002e10  54 20 22 0d 7d 17 0f 20  2a 4b 45 59 36 45 4e 44  |T ".}.. *KEY6END|
00002e20  7c 4d 0d 7d 18 11 20 2a  4b 45 59 37 22 4d 41 4b  ||M.}.. *KEY7"MAK|
00002e30  45 20 22 0d 7d 1a 12 20  2a 4b 45 59 38 22 42 55  |E ".}.. *KEY8"BU|
00002e40  49 4c 44 20 22 0d 7d 1c  13 20 2a 4b 45 59 39 22  |ILD ".}.. *KEY9"|
00002e50  43 48 41 4e 47 45 20 22  0d 7d 1e 12 20 2a 4b 45  |CHANGE ".}.. *KE|
00002e60  59 31 30 46 52 45 53 48  7c 4d 0d 7d 20 16 20 2a  |Y10FRESH|M.} . *|
00002e70  4b 45 59 31 31 20 4f 4c  44 7c 4d 52 55 4e 7c 4d  |KEY11 OLD|MRUN|M|
00002e80  0d 7d 21 15 46 25 3d 35  31 32 31 36 3a 2a 46 58  |.}!.F%=51216:*FX|
00002e90  32 32 39 2c 31 0d 7d 22  1e 67 25 3d a5 3a e7 67  |229,1.}".g%=.:.g|
00002ea0  25 3d 33 32 8c f2 66 3a  f2 68 65 6c 70 3a e5 8d  |%=32..f:.help:..|
00002eb0  50 4a 7d 0d 7d 23 16 e7  67 25 3d 32 37 8c eb 37  |PJ}.}#..g%=27..7|
00002ec0  3a 2a 46 58 32 32 39 2c  30 0d 7d 24 0c e7 67 25  |:*FX229,0.}$..g%|
00002ed0  3d 32 37 8c e0 0d 7d 25  13 e7 67 25 3d 31 33 8c  |=27...}%..g%=13.|
00002ee0  f2 66 3a e5 8d 70 7c 7f  0d 7d 26 09 e5 8d 50 62  |.f:..p|..}&...Pb|
00002ef0  7d 0d 7d 28 0a dd f2 68  65 6c 70 0d 7d 29 07 f1  |}.}(...help.})..|
00002f00  27 27 0d 7d 2a b6 20 f1  22 49 66 20 79 6f 75 20  |''.}*. ."If you |
00002f10  68 61 76 65 20 61 20 70  72 69 6e 74 65 72 2c 20  |have a printer, |
00002f20  73 77 69 74 63 68 20 69  74 20 6f 6e 20 6e 6f 77  |switch it on now|
00002f30  22 27 22 74 6f 20 6d 61  6b 65 20 61 20 63 6f 70  |"'"to make a cop|
00002f40  79 20 6f 66 20 74 68 65  20 68 65 6c 70 2e 22 27  |y of the help."'|
00002f50  22 28 54 79 70 65 83 43  54 52 4c 20 42 87 29 22  |"(Type.CTRL B.)"|
00002f60  27 27 22 50 72 65 73 73  83 53 50 41 43 45 87 61  |''"Press.SPACE.a|
00002f70  66 74 65 72 20 65 61 63  68 20 70 61 67 65 20 6f  |fter each page o|
00002f80  66 20 68 65 6c 70 22 27  22 74 6f 20 73 65 65 20  |f help"'"to see |
00002f90  74 68 65 20 6e 65 78 74  20 6f 6e 65 22 27 27 22  |the next one"''"|
00002fa0  50 72 65 73 73 83 53 50  41 43 45 87 6e 6f 77 2e  |Press.SPACE.now.|
00002fb0  22 3a f2 73 70 61 63 65  0d 7d 2c 23 f1 22 82 49  |":.space.},#.".I|
00002fc0  6e 73 74 72 75 63 74 69  6f 6e 73 22 3a f1 bd 31  |nstructions":..1|
00002fd0  33 30 3b c4 33 38 2c 22  3d 22 29 0d 7d 2e bb 20  |30;.38,"=").}.. |
00002fe0  f1 3a f1 22 44 41 52 54  20 61 6c 6c 6f 77 73 20  |.:."DART allows |
00002ff0  79 6f 75 20 74 6f 20 63  72 65 61 74 65 20 70 69  |you to create pi|
00003000  63 74 75 72 65 73 20 62  79 22 27 22 6d 6f 76 69  |ctures by"'"movi|
00003010  6e 67 20 61 20 27 70 65  6e 27 20 61 72 6f 75 6e  |ng a 'pen' aroun|
00003020  64 20 74 68 65 20 73 63  72 65 65 6e 20 6f 72 20  |d the screen or |
00003030  61 22 27 4e 24 28 32 29  22 20 61 72 6f 75 6e 64  |a"'N$(2)" around|
00003040  20 74 68 65 20 66 6c 6f  6f 72 2e 22 27 27 22 59  | the floor."''"Y|
00003050  6f 75 20 63 61 6e 20 64  72 61 77 20 64 69 72 65  |ou can draw dire|
00003060  63 74 6c 79 20 62 79 20  75 73 69 6e 67 20 63 6f  |ctly by using co|
00003070  6d 6d 61 6e 64 73 22 27  22 6c 69 6b 65 20 46 4f  |mmands"'"like FO|
00003080  52 57 41 52 44 20 35 30  20 61 6e 64 20 4c 45 46  |RWARD 50 and LEF|
00003090  54 20 34 35 2e 22 0d 7d  30 de 20 f1 27 22 59 6f  |T 45.".}0. .'"Yo|
000030a0  75 20 63 61 6e 20 72 65  70 65 61 74 20 61 20 73  |u can repeat a s|
000030b0  65 71 75 65 6e 63 65 20  6f 66 20 63 6f 6d 6d 61  |equence of comma|
000030c0  6e 64 73 22 27 22 62 79  20 73 74 61 72 74 69 6e  |nds"'"by startin|
000030d0  67 20 74 68 65 20 73 65  71 75 65 6e 63 65 20 77  |g the sequence w|
000030e0  69 74 68 20 52 45 50 45  41 54 20 6e 22 27 22 77  |ith REPEAT n"'"w|
000030f0  68 65 72 65 20 6e 20 69  73 20 74 68 65 20 6e 75  |here n is the nu|
00003100  6d 62 65 72 20 6f 66 20  72 65 70 65 61 74 73 20  |mber of repeats |
00003110  79 6f 75 22 27 22 77 61  6e 74 2c 20 61 6e 64 20  |you"'"want, and |
00003120  65 6e 64 69 6e 67 20 69  74 20 77 69 74 68 20 45  |ending it with E|
00003130  4e 44 2e 22 27 27 22 45  67 83 20 20 52 45 50 45  |ND."''"Eg.  REPE|
00003140  41 54 20 33 36 22 27 22  83 20 20 20 20 20 4c 45  |AT 36"'".     LE|
00003150  46 54 20 31 30 22 27 22  83 20 20 20 20 20 46 4f  |FT 10"'".     FO|
00003160  52 57 41 52 44 20 31 30  22 27 22 83 20 20 20 20  |RWARD 10"'".    |
00003170  45 4e 44 22 0d 7d 31 0b  20 f2 73 70 61 63 65 0d  |END".}1. .space.|
00003180  7d 32 81 20 f1 22 59 6f  75 20 63 61 6e 20 64 65  |}2. ."You can de|
00003190  66 69 6e 65 20 79 6f 75  72 20 6f 77 6e 20 63 6f  |fine your own co|
000031a0  6d 6d 61 6e 64 73 20 62  79 22 27 22 75 73 69 6e  |mmands by"'"usin|
000031b0  67 20 74 68 65 20 42 55  49 4c 44 20 63 6f 6d 6d  |g the BUILD comm|
000031c0  61 6e 64 2c 20 63 68 61  6e 67 65 20 74 68 65 6d  |and, change them|
000031d0  22 27 22 75 73 69 6e 67  20 43 48 41 4e 47 45 20  |"'"using CHANGE |
000031e0  61 6e 64 20 64 65 6c 65  74 65 20 74 68 65 6d 20  |and delete them |
000031f0  75 73 69 6e 67 22 27 22  44 45 4c 45 54 45 2e 22  |using"'"DELETE."|
00003200  0d 7d 33 76 20 f1 27 22  53 41 56 45 20 6c 65 74  |.}3v .'"SAVE let|
00003210  73 20 79 6f 75 20 73 61  76 65 20 63 6f 6d 6d 61  |s you save comma|
00003220  6e 64 73 20 79 6f 75 20  68 61 76 65 22 27 22 62  |nds you have"'"b|
00003230  75 69 6c 74 20 6f 6e 20  64 69 73 6b 20 6f 72 20  |uilt on disk or |
00003240  74 61 70 65 20 61 6e 64  20 4c 4f 41 44 20 6c 65  |tape and LOAD le|
00003250  74 73 22 27 22 79 6f 75  20 6c 6f 61 64 20 74 68  |ts"'"you load th|
00003260  65 6d 20 62 61 63 6b 20  69 6e 74 6f 20 6d 65 6d  |em back into mem|
00003270  6f 72 79 2e 22 27 0d 7d  34 cd 20 f1 22 4d 41 4b  |ory."'.}4. ."MAK|
00003280  45 20 6c 65 74 73 20 79  6f 75 20 73 74 6f 72 65  |E lets you store|
00003290  20 76 61 6c 75 65 73 20  61 6e 64 20 64 6f 22 27  | values and do"'|
000032a0  22 73 69 6d 70 6c 65 20  61 72 69 74 68 6d 65 74  |"simple arithmet|
000032b0  69 63 20 6f 6e 20 74 68  65 6d 2e 22 27 27 22 52  |ic on them."''"R|
000032c0  65 6d 65 6d 62 65 72 20  74 68 61 74 20 79 6f 75  |emember that you|
000032d0  20 63 61 6e 20 73 68 6f  72 74 65 6e 20 44 41 52  | can shorten DAR|
000032e0  54 27 73 22 27 22 63 6f  6d 6d 61 6e 64 73 20 74  |T's"'"commands t|
000032f0  6f 20 61 20 6d 69 6e 69  6d 75 6d 20 6f 66 20 74  |o a minimum of t|
00003300  68 72 65 65 20 6c 65 74  74 65 72 73 22 27 22 62  |hree letters"'"b|
00003310  75 74 20 79 6f 75 20 6d  75 73 74 20 74 79 70 65  |ut you must type|
00003320  20 79 6f 75 72 20 6f 77  6e 20 63 6f 6d 6d 61 6e  | your own comman|
00003330  64 22 27 22 6e 61 6d 65  73 20 69 6e 20 66 75 6c  |d"'"names in ful|
00003340  6c 2e 22 0d 7d 36 0a f2  73 70 61 63 65 0d 7d 38  |l.".}6..space.}8|
00003350  30 20 f1 27 bd 31 33 30  2b 22 48 65 6c 70 20 77  |0 .'.130+"Help w|
00003360  69 74 68 20 63 6f 6d 6d  61 6e 64 73 3a 22 3a f1  |ith commands:":.|
00003370  bd 31 33 30 3b c4 33 38  2c 22 3d 22 29 0d 7d 3a  |.130;.38,"=").}:|
00003380  34 20 f1 27 22 2a 2a 82  56 41 4c 55 45 53 87 2a  |4 .'"**.VALUES.*|
00003390  2a 22 27 22 4c 69 73 74  73 20 76 61 6c 75 65 73  |*"'"Lists values|
000033a0  20 68 65 6c 64 20 69 6e  20 73 74 6f 72 65 73 2e  | held in stores.|
000033b0  22 0d 7d 3c 32 20 f1 27  22 2a 2a 82 43 4f 4d 4d  |".}<2 .'"**.COMM|
000033c0  41 4e 44 53 87 2a 2a 22  27 22 4c 69 73 74 73 20  |ANDS.**"'"Lists |
000033d0  74 68 65 20 44 41 52 54  20 63 6f 6d 6d 61 6e 64  |the DART command|
000033e0  73 2e 22 0d 7d 3d 9d 20  f1 27 22 2a 2a 82 4c 49  |s.".}=. .'"**.LI|
000033f0  53 54 87 2a 2a 22 27 22  54 79 70 65 20 4c 49 53  |ST.**"'"Type LIS|
00003400  54 20 66 6f 72 20 61 20  6c 69 73 74 20 6f 66 20  |T for a list of |
00003410  74 68 65 20 63 6f 6d 6d  61 6e 64 73 22 27 22 79  |the commands"'"y|
00003420  6f 75 27 76 65 20 62 75  69 6c 74 2e 22 27 22 54  |ou've built."'"T|
00003430  6f 20 73 65 65 20 61 20  6c 69 73 74 69 6e 67 20  |o see a listing |
00003440  6f 66 20 61 20 70 61 72  74 69 63 75 6c 61 72 22  |of a particular"|
00003450  27 22 63 6f 6d 6d 61 6e  64 20 74 79 70 65 20 4c  |'"command type L|
00003460  49 53 54 20 3c 6e 61 6d  65 3e 22 27 22 45 67 3a  |IST <name>"'"Eg:|
00003470  22 27 22 83 4c 49 53 54  20 53 51 55 41 52 45 22  |"'".LIST SQUARE"|
00003480  0d 7d 3e 22 20 f1 27 22  2a 2a 82 46 49 4e 49 53  |.}>" .'"**.FINIS|
00003490  48 87 2a 2a 22 27 22 45  6e 64 73 20 44 41 52 54  |H.**"'"Ends DART|
000034a0  2e 22 0d 7d 40 0a f2 73  70 61 63 65 0d 7d 42 93  |.".}@..space.}B.|
000034b0  20 f1 27 22 2a 2a 82 42  55 49 4c 44 87 2a 2a 22  | .'"**.BUILD.**"|
000034c0  27 22 4c 65 74 73 20 79  6f 75 20 62 75 69 6c 64  |'"Lets you build|
000034d0  20 61 20 6e 65 77 20 63  6f 6d 6d 61 6e 64 2e 22  | a new command."|
000034e0  27 22 45 67 3a 22 27 22  83 42 55 49 4c 44 20 42  |'"Eg:"'".BUILD B|
000034f0  4f 58 20 57 49 54 48 20  53 49 44 45 20 87 6c 65  |OX WITH SIDE .le|
00003500  74 73 20 79 6f 75 22 27  22 20 64 65 66 69 6e 65  |ts you"'" define|
00003510  20 61 20 63 6f 6d 6d 61  6e 64 20 63 61 6c 6c 65  | a command calle|
00003520  64 20 42 4f 58 20 75 73  69 6e 67 22 27 22 20 74  |d BOX using"'" t|
00003530  68 65 20 73 74 6f 72 65  20 53 49 44 45 2e 22 0d  |he store SIDE.".|
00003540  7d 43 6e 20 f1 22 20 54  68 65 6e 20 79 6f 75 20  |}Cn ." Then you |
00003550  74 79 70 65 20 69 6e 20  74 68 65 20 63 6f 6d 6d  |type in the comm|
00003560  61 6e 64 73 20 77 68 69  63 68 22 27 22 20 64 65  |ands which"'" de|
00003570  66 69 6e 65 20 79 6f 75  72 20 6e 65 77 20 63 6f  |fine your new co|
00003580  6d 6d 61 6e 64 2e 22 27  22 20 50 72 65 73 73 20  |mmand."'" Press |
00003590  45 53 43 41 50 45 20 77  68 65 6e 20 79 6f 75 27  |ESCAPE when you'|
000035a0  76 65 20 66 69 6e 69 73  68 65 64 2e 22 0d 7d 44  |ve finished.".}D|
000035b0  91 20 f1 27 22 2a 2a 82  43 48 41 4e 47 45 87 2a  |. .'"**.CHANGE.*|
000035c0  2a 22 27 22 4c 65 74 73  20 79 6f 75 20 63 68 61  |*"'"Lets you cha|
000035d0  6e 67 65 20 61 20 63 6f  6d 6d 61 6e 64 20 79 6f  |nge a command yo|
000035e0  75 27 76 65 20 62 75 69  6c 74 2e 22 27 22 45 67  |u've built."'"Eg|
000035f0  3a 22 27 22 83 43 48 41  4e 47 45 20 42 4f 58 22  |:"'".CHANGE BOX"|
00003600  27 22 20 52 65 6d 65 6d  62 65 72 2c 20 43 48 41  |'" Remember, CHA|
00003610  4e 47 45 20 77 69 70 65  73 20 6f 75 74 20 79 6f  |NGE wipes out yo|
00003620  75 72 22 27 22 20 63 75  72 72 65 6e 74 20 73 63  |ur"'" current sc|
00003630  72 65 65 6e 20 64 69 73  70 6c 61 79 2e 22 0d 7d  |reen display.".}|
00003640  46 55 20 f1 27 22 2a 2a  82 44 45 4c 45 54 45 87  |FU .'"**.DELETE.|
00003650  2a 2a 22 3a f1 20 22 4c  65 74 73 20 79 6f 75 20  |**":. "Lets you |
00003660  64 65 6c 65 74 65 20 61  20 63 6f 6d 6d 61 6e 64  |delete a command|
00003670  20 79 6f 75 27 76 65 20  62 75 69 6c 74 2e 22 27  | you've built."'|
00003680  22 45 67 3a 22 27 22 83  44 45 4c 45 54 45 20 42  |"Eg:"'".DELETE B|
00003690  4f 58 22 0d 7d 48 0a f2  73 70 61 63 65 0d 7d 4c  |OX".}H..space.}L|
000036a0  25 20 f1 27 22 2a 2a 82  52 45 53 45 54 87 2a 2a  |% .'"**.RESET.**|
000036b0  22 27 22 52 65 73 74 61  72 74 73 20 44 41 52 54  |"'"Restarts DART|
000036c0  2e 22 0d 7d 4e 79 20 f1  3a f1 20 22 2a 2a 82 46  |.".}Ny .:. "**.F|
000036d0  41 53 54 87 2a 2a 22 3a  f1 20 22 4d 61 6b 65 73  |AST.**":. "Makes|
000036e0  20 64 72 61 77 69 6e 67  20 73 70 65 65 64 20 66  | drawing speed f|
000036f0  61 73 74 2e 22 27 22 54  6f 20 63 68 61 6e 67 65  |ast."'"To change|
00003700  20 73 70 65 65 64 20 74  6f 20 66 61 73 74 20 77  | speed to fast w|
00003710  68 65 6e 20 64 72 61 77  69 6e 67 20 69 73 22 27  |hen drawing is"'|
00003720  22 69 6e 20 70 72 6f 67  72 65 73 73 20 73 69 6d  |"in progress sim|
00003730  70 6c 79 20 74 79 70 65  20 46 22 0d 7d 50 79 20  |ply type F".}Py |
00003740  f1 3a f1 20 22 2a 2a 82  53 4c 4f 57 87 2a 2a 22  |.:. "**.SLOW.**"|
00003750  3a f1 20 22 4d 61 6b 65  73 20 64 72 61 77 69 6e  |:. "Makes drawin|
00003760  67 20 73 70 65 65 64 20  73 6c 6f 77 2e 22 27 22  |g speed slow."'"|
00003770  54 6f 20 63 68 61 6e 67  65 20 73 70 65 65 64 20  |To change speed |
00003780  74 6f 20 73 6c 6f 77 20  77 68 65 6e 20 64 72 61  |to slow when dra|
00003790  77 69 6e 67 20 69 73 22  27 22 69 6e 20 70 72 6f  |wing is"'"in pro|
000037a0  67 72 65 73 73 20 73 69  6d 70 6c 79 20 74 79 70  |gress simply typ|
000037b0  65 20 53 22 0d 7d 52 5f  20 f1 3a f1 20 22 2a 2a  |e S".}R_ .:. "**|
000037c0  82 22 4e 24 28 30 29 22  87 2a 2a 22 3a f1 22 83  |."N$(0)".**":.".|
000037d0  22 4e 24 28 30 29 22 20  4f 4e 87 20 73 74 61 72  |"N$(0)" ON. star|
000037e0  74 73 20 74 68 65 20 22  4e 24 28 31 29 22 2e 22  |ts the "N$(1)"."|
000037f0  27 22 83 22 4e 24 28 30  29 22 20 4f 46 46 87 20  |'"."N$(0)" OFF. |
00003800  73 74 6f 70 73 20 74 68  65 20 22 4e 24 28 31 29  |stops the "N$(1)|
00003810  22 2e 22 0d 7d 54 0a f2  73 70 61 63 65 0d 7d 55  |".".}T..space.}U|
00003820  c7 f1 27 22 2a 2a 82 53  41 56 45 87 2a 2a 22 27  |..'"**.SAVE.**"'|
00003830  22 53 61 76 65 73 20 6f  6e 20 74 61 70 65 20 6f  |"Saves on tape o|
00003840  72 20 64 69 73 63 20 61  20 70 72 6f 63 65 64 75  |r disc a procedu|
00003850  72 65 22 27 22 77 68 69  63 68 20 68 61 73 20 62  |re"'"which has b|
00003860  65 65 6e 20 62 75 69 6c  74 2e 22 27 22 45 67 3a  |een built."'"Eg:|
00003870  22 27 22 83 53 41 56 45  20 50 4f 4c 59 47 4f 4e  |"'".SAVE POLYGON|
00003880  22 27 27 22 2a 2a 82 4c  4f 41 44 87 2a 2a 22 27  |"''"**.LOAD.**"'|
00003890  22 4c 6f 61 64 73 20 66  72 6f 6d 20 74 61 70 65  |"Loads from tape|
000038a0  20 6f 72 20 64 69 73 63  20 61 20 70 72 65 76 69  | or disc a previ|
000038b0  6f 75 73 6c 79 22 27 22  73 61 76 65 64 20 70 72  |ously"'"saved pr|
000038c0  6f 63 65 64 75 72 65 2e  22 27 22 45 67 3a 22 27  |ocedure."'"Eg:"'|
000038d0  22 83 4c 4f 41 44 20 48  4f 55 53 45 22 3a f2 73  |".LOAD HOUSE":.s|
000038e0  70 61 63 65 0d 7d 56 59  20 f1 27 22 2a 2a 82 46  |pace.}VY .'"**.F|
000038f0  4f 52 57 41 52 44 87 2a  2a 22 27 22 4d 6f 76 65  |ORWARD.**"'"Move|
00003900  73 20 64 61 72 74 20 74  68 69 73 20 61 6d 6f 75  |s dart this amou|
00003910  6e 74 20 66 6f 72 77 61  72 64 2e 22 27 22 45 67  |nt forward."'"Eg|
00003920  3a 22 27 22 83 46 4f 52  57 41 52 44 20 35 87 20  |:"'".FORWARD 5. |
00003930  6f 72 83 20 46 4f 52 20  53 49 44 45 22 0d 7d 58  |or. FOR SIDE".}X|
00003940  5d 20 f1 27 22 2a 2a 82  42 41 43 4b 57 41 52 44  |] .'"**.BACKWARD|
00003950  87 2a 2a 22 27 22 4d 6f  76 65 73 20 64 61 72 74  |.**"'"Moves dart|
00003960  20 74 68 69 73 20 61 6d  6f 75 6e 74 20 62 61 63  | this amount bac|
00003970  6b 77 61 72 64 2e 22 27  22 45 67 3a 22 27 22 83  |kward."'"Eg:"'".|
00003980  42 41 43 4b 57 41 52 44  20 32 30 87 20 6f 72 20  |BACKWARD 20. or |
00003990  83 42 41 43 4b 20 48 4f  50 22 0d 7d 5a 53 20 f1  |.BACK HOP".}ZS .|
000039a0  27 22 2a 2a 82 4c 45 46  54 87 2a 2a 22 27 22 54  |'"**.LEFT.**"'"T|
000039b0  75 72 6e 73 20 64 61 72  74 20 74 68 69 73 20 61  |urns dart this a|
000039c0  6d 6f 75 6e 74 20 6c 65  66 74 2e 22 27 22 45 67  |mount left."'"Eg|
000039d0  3a 22 27 22 83 4c 45 46  54 20 39 30 87 20 6f 72  |:"'".LEFT 90. or|
000039e0  83 20 4c 45 46 54 20 41  4e 47 4c 45 22 0d 7d 5c  |. LEFT ANGLE".}\|
000039f0  53 20 f1 27 22 2a 2a 82  52 49 47 48 54 87 2a 2a  |S .'"**.RIGHT.**|
00003a00  22 27 22 54 75 72 6e 73  20 64 61 72 74 20 74 68  |"'"Turns dart th|
00003a10  69 73 20 61 6d 6f 75 6e  74 20 72 69 67 68 74 2e  |is amount right.|
00003a20  22 27 22 45 67 3a 22 27  22 83 52 49 47 48 54 20  |"'"Eg:"'".RIGHT |
00003a30  34 35 87 20 6f 72 83 20  52 49 47 20 42 49 54 22  |45. or. RIG BIT"|
00003a40  0d 7d 5e 0a f2 73 70 61  63 65 0d 7d 60 5a f1 3a  |.}^..space.}`Z.:|
00003a50  f1 20 22 2a 2a 82 43 4c  45 41 4e 87 2a 2a 22 27  |. "**.CLEAN.**"'|
00003a60  22 43 6c 65 61 6e 73 20  73 63 72 65 65 6e 20 77  |"Cleans screen w|
00003a70  69 74 68 6f 75 74 20 6d  6f 76 69 6e 67 20 64 61  |ithout moving da|
00003a80  72 74 2e 22 27 22 48 61  73 20 6e 6f 20 65 66 66  |rt."'"Has no eff|
00003a90  65 63 74 20 6f 6e 20 74  68 65 20 22 4e 24 28 31  |ect on the "N$(1|
00003aa0  29 22 2e 22 0d 7d 62 5e  20 f1 27 22 2a 2a 82 43  |)".".}b^ .'"**.C|
00003ab0  45 4e 54 52 45 87 2a 2a  22 27 22 43 65 6e 74 72  |ENTRE.**"'"Centr|
00003ac0  65 73 20 64 61 72 74 20  77 69 74 68 6f 75 74 20  |es dart without |
00003ad0  63 68 61 6e 67 69 6e 67  20 70 69 63 74 75 72 65  |changing picture|
00003ae0  2e 22 27 22 48 61 73 20  6e 6f 20 65 66 66 65 63  |."'"Has no effec|
00003af0  74 20 6f 6e 20 74 68 65  20 22 4e 24 28 31 29 22  |t on the "N$(1)"|
00003b00  2e 22 0d 7d 64 57 f1 3a  f1 20 22 2a 2a 82 46 52  |.".}dW.:. "**.FR|
00003b10  45 53 48 87 2a 2a 22 27  22 43 6c 65 61 6e 73 20  |ESH.**"'"Cleans |
00003b20  73 63 72 65 65 6e 20 61  6e 64 20 63 65 6e 74 72  |screen and centr|
00003b30  65 73 20 64 61 72 74 2e  22 27 22 48 61 73 20 6e  |es dart."'"Has n|
00003b40  6f 20 65 66 66 65 63 74  20 6f 6e 20 74 68 65 20  |o effect on the |
00003b50  22 4e 24 28 31 29 22 2e  22 0d 7d 66 49 20 f1 27  |"N$(1)".".}fI .'|
00003b60  22 2a 2a 82 50 45 4e 87  2a 2a 22 27 22 83 50 45  |"**.PEN.**"'".PE|
00003b70  4e 20 44 4f 57 4e 20 87  73 74 61 72 74 73 20 64  |N DOWN .starts d|
00003b80  72 61 77 69 6e 67 2e 22  27 22 83 50 45 4e 20 55  |rawing."'".PEN U|
00003b90  50 87 20 73 74 6f 70 73  20 64 72 61 77 69 6e 67  |P. stops drawing|
00003ba0  2e 22 0d 7d 68 2d 20 f1  27 22 2a 2a 82 48 4f 4f  |.".}h- .'"**.HOO|
00003bb0  54 87 2a 2a 22 27 22 4d  61 6b 65 73 20 74 68 65  |T.**"'"Makes the|
00003bc0  20 22 4e 24 28 31 29 22  20 68 6f 6f 74 2e 22 0d  | "N$(1)" hoot.".|
00003bd0  7d 6a 0a f2 73 70 61 63  65 0d 7d 6b d3 f1 27 22  |}j..space.}k..'"|
00003be0  2a 2a 82 4d 41 4b 45 87  2a 2a 22 27 22 4c 65 74  |**.MAKE.**"'"Let|
00003bf0  73 20 79 6f 75 20 73 65  74 20 6f 72 20 63 68 61  |s you set or cha|
00003c00  6e 67 65 20 61 20 76 61  6c 75 65 20 69 6e 20 61  |nge a value in a|
00003c10  22 27 22 73 74 6f 72 65  2e 20 41 20 73 74 6f 72  |"'"store. A stor|
00003c20  65 20 6e 61 6d 65 20 63  61 6e 20 68 61 76 65 20  |e name can have |
00003c30  75 70 20 74 6f 22 27 22  74 65 6e 20 63 68 61 72  |up to"'"ten char|
00003c40  61 63 74 65 72 73 2e 20  52 65 6d 65 6d 62 65 72  |acters. Remember|
00003c50  20 74 68 61 74 20 61 6c  6c 22 27 22 74 68 65 20  | that all"'"the |
00003c60  73 74 6f 72 65 73 20 61  72 65 20 27 67 6c 6f 62  |stores are 'glob|
00003c70  61 6c 27 20 69 65 20 79  6f 75 20 63 61 6e 20 75  |al' ie you can u|
00003c80  73 65 22 27 22 61 6e 79  20 73 74 6f 72 65 20 79  |se"'"any store y|
00003c90  6f 75 20 68 61 76 65 20  73 65 74 20 75 70 20 61  |ou have set up a|
00003ca0  74 20 61 6e 79 20 74 69  6d 65 2e 22 0d 7d 6c 72  |t any time.".}lr|
00003cb0  f1 22 45 67 3a 22 27 22  83 4d 41 4b 45 20 55 4e  |."Eg:"'".MAKE UN|
00003cc0  49 54 20 32 30 22 27 22  83 4d 41 4b 45 20 53 49  |IT 20"'".MAKE SI|
00003cd0  44 45 20 55 4e 49 54 2a  32 22 27 22 83 4d 41 4b  |DE UNIT*2"'".MAK|
00003ce0  45 20 53 49 44 45 20 35  20 4c 45 53 53 22 27 22  |E SIDE 5 LESS"'"|
00003cf0  83 4d 41 4b 45 20 53 49  44 45 32 20 53 49 44 45  |.MAKE SIDE2 SIDE|
00003d00  2f 55 4e 49 54 22 27 22  83 4d 41 4b 45 20 53 49  |/UNIT"'".MAKE SI|
00003d10  44 45 32 20 55 4e 49 54  20 4d 4f 52 45 22 0d 7d  |DE2 UNIT MORE".}|
00003d20  6e 74 20 f1 27 22 2a 2a  82 52 45 50 45 41 54 87  |nt .'"**.REPEAT.|
00003d30  2a 2a 22 27 22 52 65 70  65 61 74 73 20 69 6e 73  |**"'"Repeats ins|
00003d40  74 72 75 63 74 69 6f 6e  73 20 75 70 20 74 6f 20  |tructions up to |
00003d50  6e 65 78 74 22 27 22 45  4e 44 20 74 68 69 73 20  |next"'"END this |
00003d60  6e 75 6d 62 65 72 20 6f  66 20 74 69 6d 65 73 2e  |number of times.|
00003d70  22 27 22 45 67 3a 22 27  22 83 52 45 50 45 41 54  |"'"Eg:"'".REPEAT|
00003d80  20 34 87 20 6f 72 20 83  52 45 50 20 43 4f 55 4e  | 4. or .REP COUN|
00003d90  54 22 0d 7d 70 30 20 f1  27 22 2a 2a 82 45 4e 44  |T".}p0 .'"**.END|
00003da0  87 2a 2a 22 27 22 45 6e  64 73 20 65 66 66 65 63  |.**"'"Ends effec|
00003db0  74 20 6f 66 20 6c 61 73  74 20 52 45 50 45 41 54  |t of last REPEAT|
00003dc0  2e 22 0d 7d 72 0f f2 73  70 61 63 65 3a ef 33 3a  |.".}r..space:.3:|
00003dd0  e1 0d 7d 74 2d dd f2 73  70 61 63 65 3a ea 67 25  |..}t-..space:.g%|
00003de0  3a f5 67 25 3d a5 3a e7  67 25 3d 32 8c 70 72 25  |:.g%=.:.g%=2.pr%|
00003df0  3d 32 8b e7 67 25 3d 33  8c 70 72 25 3d 33 0d 7d  |=2..g%=3.pr%=3.}|
00003e00  76 1a fd 67 25 3d 33 32  3a ef 33 3a db 3a f1 3a  |v..g%=32:.3:.:.:|
00003e10  f1 3a ef 70 72 25 3a e1  0d 7e 2c 1a dd f2 74 69  |.:.pr%:..~,...ti|
00003e20  74 6c 65 5f 70 61 67 65  3a 56 24 3d 22 32 2e 34  |tle_page:V$="2.4|
00003e30  62 22 0d 7e 36 42 f1 bd  31 35 38 3b bd 31 34 35  |b".~6B..158;.145|
00003e40  3b bd 31 38 33 3b 3a e3  49 3d 31 b8 37 3a f1 bd  |;.183;:.I=1.7:..|
00003e50  31 36 33 3b 3a ed 3a f1  bd 31 38 33 3b 3a e3 49  |163;:.:..183;:.I|
00003e60  3d 31 b8 32 35 3a f1 bd  31 36 33 3b 3a ed 3a f1  |=1.25:..163;:.:.|
00003e70  bd 32 33 35 0d 7e 40 4f  f1 22 20 22 bd 31 34 35  |.235.~@O." ".145|
00003e80  3b bd 31 38 31 3b bd 31  33 34 3b 22 20 20 20 20  |;.181;.134;"    |
00003e90  20 22 3b bd 31 34 35 3b  bd 31 38 31 3b bd 31 33  | ";.145;.181;.13|
00003ea0  35 3b 22 43 72 65 61 74  69 6e 67 20 70 69 63 74  |5;"Creating pict|
00003eb0  75 72 65 73 20 62 79 20  20 20 22 bd 31 34 35 bd  |ures by   ".145.|
00003ec0  32 33 34 0d 7e 4a 4e f1  22 20 22 bd 31 34 35 3b  |234.~JN." ".145;|
00003ed0  bd 31 38 31 3b bd 31 33  30 22 44 41 52 54 20 22  |.181;.130"DART "|
00003ee0  3b bd 31 34 35 3b bd 31  38 31 3b bd 31 33 35 3b  |;.145;.181;.135;|
00003ef0  22 6d 6f 76 69 6e 67 20  61 20 27 64 61 72 74 27  |"moving a 'dart'|
00003f00  20 61 72 6f 75 6e 64 20  22 bd 31 34 35 bd 32 33  | around ".145.23|
00003f10  34 0d 7e 4c 44 f1 22 20  22 bd 31 34 35 bd 31 38  |4.~LD." ".145.18|
00003f20  31 22 20 20 20 20 20 20  22 bd 31 34 35 bd 31 38  |1"      ".145.18|
00003f30  31 bd 31 33 35 22 74 68  65 20 73 63 72 65 65 6e  |1.135"the screen|
00003f40  20 61 6e 64 20 61 20 22  4e 24 28 33 29 bd 31 34  | and a "N$(3).14|
00003f50  35 bd 32 33 34 0d 7e 4e  45 f1 22 20 22 bd 31 34  |5.234.~NE." ".14|
00003f60  35 bd 31 38 31 22 20 20  20 20 20 20 22 bd 31 34  |5.181"      ".14|
00003f70  35 bd 31 38 31 bd 31 33  35 4e 24 28 34 29 22 20  |5.181.135N$(4)" |
00003f80  61 72 6f 75 6e 64 20 74  68 65 20 66 6c 6f 6f 72  |around the floor|
00003f90  2e 22 bd 31 34 35 bd 32  33 34 0d 7e 54 42 f1 bd  |.".145.234.~TB..|
00003fa0  31 35 38 3b bd 31 34 35  3b bd 32 34 35 3b 3a e3  |158;.145;.245;:.|
00003fb0  49 3d 31 b8 37 3a f1 bd  32 34 30 3b 3a ed 3a f1  |I=1.7:..240;:.:.|
00003fc0  bd 32 34 35 3b 3a e3 49  3d 31 b8 32 35 3a f1 bd  |.245;:.I=1.25:..|
00003fd0  32 34 30 3b 3a ed 3a f1  bd 32 35 30 0d 7e 5e 60  |240;:.:..250.~^`|
00003fe0  f1 27 89 39 22 4f 70 65  72 61 74 69 6e 67 20 53  |.'.9"Operating S|
00003ff0  79 73 74 65 6d 20 31 2e  32 22 27 27 8a 36 29 22  |ystem 1.2"''.6)"|
00004000  42 61 73 65 64 20 6f 6e  20 4f 78 66 6f 72 64 73  |Based on Oxfords|
00004010  68 69 72 65 20 43 6f 75  6e 74 79 22 27 8a 36 29  |hire County"'.6)|
00004020  22 43 6f 75 6e 63 69 6c  20 63 6f 70 79 72 69 67  |"Council copyrig|
00004030  68 74 20 6d 61 74 65 72  69 61 6c 22 0d 7e 63 69  |ht material".~ci|
00004040  f1 27 22 20 20 50 72 65  73 73 22 bd 31 33 30 22  |.'"  Press".130"|
00004050  53 50 41 43 45 22 bd 31  33 35 22 69 66 20 79 6f  |SPACE".135"if yo|
00004060  75 20 77 61 6e 74 20 68  65 6c 70 2e 22 27 22 20  |u want help."'" |
00004070  20 54 68 69 73 20 69 73  20 79 6f 75 72 20 6f 6e  | This is your on|
00004080  6c 79 20 63 68 61 6e 63  65 20 74 6f 20 73 65 65  |ly chance to see|
00004090  20 74 68 65 22 27 22 20  20 68 65 6c 70 20 70 61  | the"'"  help pa|
000040a0  67 65 73 2e 22 0d 7e 68  96 f1 27 22 20 20 49 66  |ges.".~h..'"  If|
000040b0  20 79 6f 75 20 77 61 6e  74 20 74 6f 20 63 6f 70  | you want to cop|
000040c0  79 20 74 68 69 73 20 70  72 6f 67 72 61 6d 2c 22  |y this program,"|
000040d0  27 22 20 20 70 72 65 73  73 22 bd 31 33 30 22 45  |'"  press".130"E|
000040e0  53 43 41 50 45 22 bd 31  33 35 22 61 6e 64 20 64  |SCAPE".135"and d|
000040f0  6f 20 69 74 20 6e 6f 77  2e 22 27 27 22 20 20 50  |o it now."''"  P|
00004100  72 65 73 73 22 bd 31 33  30 22 52 45 54 55 52 4e  |ress".130"RETURN|
00004110  22 bd 31 33 35 22 77 68  65 6e 20 79 6f 75 20 77  |".135"when you w|
00004120  61 6e 74 20 74 6f 20 73  74 61 72 74 22 27 22 20  |ant to start"'" |
00004130  20 64 72 61 77 69 6e 67  2e 22 20 0d 7e 90 31 f1  | drawing." .~.1.|
00004140  8a 32 2c 32 32 29 22 56  65 72 73 69 6f 6e 20 22  |.2,22)"Version "|
00004150  56 24 8a 31 35 29 22 43  6f 70 79 72 69 67 68 74  |V$.15)"Copyright|
00004160  20 41 55 43 42 45 20 31  39 38 34 22 0d 7e 9a 16  | AUCBE 1984".~..|
00004170  f1 bd 31 35 38 bd 31 34  35 c4 33 35 2c bd 31 37  |..158.145.35,.17|
00004180  32 29 0d 7e a4 05 e1 0d  7f bc 05 f4 0d 7f bd 0b  |2).~............|
00004190  44 25 3d 35 33 30 30 0d  7f c6 56 41 25 3d b8 50  |D%=5300...VA%=.P|
000041a0  2d 44 25 3a f5 3a 41 25  3d 41 25 2d 31 3a fd 3f  |-D%:.:A%=A%-1:.?|
000041b0  41 25 3d 26 41 46 3a 3f  28 41 25 2d 33 29 3d 26  |A%=&AF:?(A%-3)=&|
000041c0  46 46 3a 41 25 3d 41 25  2d 32 3a d2 3d 41 25 3a  |FF:A%=A%-2:.=A%:|
000041d0  3f 26 31 32 3d 41 25 20  83 20 32 35 36 3a 3f 26  |?&12=A% . 256:?&|
000041e0  31 33 3d 41 25 20 81 20  32 35 36 3a f9 0d 7f cf  |13=A% . 256:....|
000041f0  1b 52 25 3d 26 41 35 30  3a 41 24 3d bd 31 32 2b  |.R%=&A50:A$=.12+|
00004200  c4 31 33 2c bd 31 30 29  0d 7f d0 3b e7 47 3d 31  |.13,.10)...;.G=1|
00004210  8c 20 24 26 41 35 30 3d  41 24 2b 22 52 45 4d 45  |. $&A50=A$+"REME|
00004220  4d 42 45 52 20 54 4f 20  53 41 56 45 20 54 48 49  |MBER TO SAVE THI|
00004230  53 20 50 52 4f 47 52 41  4d 20 41 53 81 44 41 52  |S PROGRAM AS.DAR|
00004240  54 31 22 0d 7f d1 3b e7  47 3d 32 8c 20 24 26 41  |T1"...;.G=2. $&A|
00004250  35 30 3d 41 24 2b 22 52  45 4d 45 4d 42 45 52 20  |50=A$+"REMEMBER |
00004260  54 4f 20 53 41 56 45 20  54 48 49 53 20 50 52 4f  |TO SAVE THIS PRO|
00004270  47 52 41 4d 20 41 53 83  44 41 52 54 32 22 0d 7f  |GRAM AS.DART2"..|
00004280  d2 3b e7 47 3d 33 8c 20  24 26 41 35 30 3d 41 24  |.;.G=3. $&A50=A$|
00004290  2b 22 52 45 4d 45 4d 42  45 52 20 54 4f 20 53 41  |+"REMEMBER TO SA|
000042a0  56 45 20 54 48 49 53 20  50 52 4f 47 52 41 4d 20  |VE THIS PROGRAM |
000042b0  41 53 85 44 41 52 54 33  22 0d 7f d3 3b e7 47 3d  |AS.DART3"...;.G=|
000042c0  30 8c 20 24 26 41 35 30  3d 41 24 2b 22 52 45 4d  |0. $&A50=A$+"REM|
000042d0  45 4d 42 45 52 20 54 4f  20 53 41 56 45 20 54 48  |EMBER TO SAVE TH|
000042e0  49 53 20 50 52 4f 47 52  41 4d 20 41 53 82 44 41  |IS PROGRAM AS.DA|
000042f0  52 54 30 22 0d 7f d4 3b  e7 47 3d 34 8c 20 24 26  |RT0"...;.G=4. $&|
00004300  41 35 30 3d 41 24 2b 22  52 45 4d 45 4d 42 45 52  |A50=A$+"REMEMBER|
00004310  20 54 4f 20 53 41 56 45  20 54 48 49 53 20 50 52  | TO SAVE THIS PR|
00004320  4f 47 52 41 4d 20 41 53  86 44 41 52 54 34 22 0d  |OGRAM AS.DART4".|
00004330  7f d6 34 53 25 3d 26 41  30 30 3a 24 26 41 30 30  |..4S%=&A00:$&A00|
00004340  3d 41 24 2b bd 31 33 36  2b c4 31 34 2c 22 20 22  |=A$+.136+.14," "|
00004350  29 2b 22 50 6c 65 61 73  65 20 77 61 69 74 22 2b  |)+"Please wait"+|
00004360  bd 33 30 0d 7f e4 81 e3  50 41 53 53 3d 30 b8 32  |.30.....PASS=0.2|
00004370  88 32 3a 50 25 3d 26 37  30 3a 5b 4f 50 54 20 50  |.2:P%=&70:[OPT P|
00004380  41 53 53 3a 4c 44 41 23  33 31 3a 4a 53 52 26 46  |ASS:LDA#31:JSR&F|
00004390  46 45 45 3a 4c 44 41 23  30 3a 4a 53 52 26 46 46  |FEE:LDA#0:JSR&FF|
000043a0  45 45 3a 4c 44 41 23 32  34 3a 4a 53 52 26 46 46  |EE:LDA#24:JSR&FF|
000043b0  45 45 3a 4c 44 41 23 31  30 3a 4a 53 52 26 46 46  |EE:LDA#10:JSR&FF|
000043c0  45 45 3a 4a 53 52 26 46  46 45 37 3a 4c 44 41 20  |EE:JSR&FFE7:LDA |
000043d0  23 32 31 3a 4a 53 52 26  46 46 45 45 3a 52 54 53  |#21:JSR&FFEE:RTS|
000043e0  3a 5d 3a ed 0d 7f ee 05  f8 0d ff                 |:]:........|
000043eb
Files/Programs/DART0.m0
Files/Programs/DART0.m1
Files/Programs/DART0.m2
Files/Programs/DART0.m4
Files/Programs/DART0.m5