0 REM COALA.100 by Don Zeikel [75775,1430] 5 REM Intended for compilation into machine language with Michael Weiblen"s TCOMP.110 (or later version) 10 DIMB(6):PRINT@94,"COALA.100":PRINT@132,"by Don Zeikel":GOSUB2000 11 GOTO390 12 I=0:P=0:Q=0:RETURN 14 P=0:Q=0:RETURN 16 J=J+1:RETURN 17 D=0:W=0:RN=0:RETURN 18 D=0:RN=0:W=1:RETURN 20 SOUND2348,20:GOTO420 30 IFW=1THEN40 32 IFD=1THEN42 33 IFRN=1THEN44 35 PSET(X,Y):RETURN 40 PRESET(X,Y):RETURN 42 Z1=XMOD2:Z2=YMOD2:Z=Z1+Z2:IFZ=1THEN35 43 GOTO40 44 Z=PEEK(63791):Z=ZMOD2:IFZ=1THEN35 45 GOTO40 50 IFW=1THEN60 52 IFD=1THEN62 54 IFRN=1THEN64 55 PSET(P,Y):RETURN 60 PRESET(P,Y):RETURN 62 Z1=PMOD2:Z2=YMOD2:Z=Z1+Z2:IFZ=1THEN55 63 GOTO60 64 Z=PEEK(63791):Z=ZMOD2:IFZ=1THEN55 65 GOTO60 70 IFW=1THEN80 72 IFD=1THEN82 73 IFRN=1THEN84 75 PSET(X,Q):RETURN 80 PRESET(X,Q):RETURN 82 Z1=XMOD2:Z2=QMOD2:Z=Z1+Z2:IFZ=1THEN75 83 GOTO80 84 Z=PEEK(63791):Z=ZMOD2:IFZ=1THEN75 85 GOTO80 90 I=I+1:RETURN 100 TR=0:IFX=0THEN310 110 IFP=0THEN310 120 IFY=0THEN320 130 IFQ=0THEN320 140 J=0:R=0:R=R+S 150 GOSUB16:R=X+B(J):IFJ=5THEN170 160 GOTO150 170 IFR>238THEN330 180 J=0:R=0 190 GOSUB16:R=P+B(J):IFJ=5THEN210 200 GOTO190 210 IFR>238THEN330 220 J=0:R=0 230 GOSUB16:R=Y+B(J):IFJ=5THEN250 240 GOTO230 250 IFR>62THEN340 260 J=0:R=0 270 GOSUB16:R=Q+B(J):IFJ=5THEN290 280 GOTO270 290 IFR>62THEN340 300 RETURN 310 X=X+1:TR=1:RETURN 320 Y=Y+1:TR=1:RETURN 330 X=X-1:TR=1:RETURN 340 Y=Y-1:TR=1:RETURN 350 I=0:S=0 360 GOSUB90:B(I)=0:IFI=5THEN380 370 GOTO360 380 I=0:RETURN 390 CLS 400 X=116:Y=30 410 GOSUB30 420 I=0:P=1:Q=1 430 A=0:A$=INKEY$:IFA$<>""THENA=ASC(A$):REM WAIT FOR KEYSTROKE 440 IFA=0THEN430 450 IFA=128THEN1560 453 IFA=114THEN1600 457 IFA=102THEN1700 460 IFA=122THEN1190 470 IFA=120THEN1220 480 IFA=99THEN1260 490 IFA=118THEN1300 500 IFA=98THEN1340 510 IFA=97THEN1380 520 IFA=115THEN1420 530 IFA=100THEN1450 540 IFA=119THEN1480 550 IFA=101THEN1490 560 IFA=49THEN1500 570 IFA=50THEN1510 580 IFA=51THEN1520 590 IFA=52THEN1530 600 IFA=53THEN1540 610 IFA=113THEN1550 620 I=0:IFA=105THEN710 630 IFA=107THEN770 640 IFA=109THEN830 650 IFA=106THEN890 660 IFA=111THEN950 670 IFA=44THEN1010 680 IFA=110THEN1070 690 IFA=117THEN1130 700 SOUND4697,20:GOTO420 710 Y=Y-1:REM "i" 720 GOSUB100:IFTR=1THEN20 730 GOSUB30:P=X 740 GOSUB90:P=P+B(I):GOSUB100:IFTR=1THEN20 750 GOSUB50:IFI=5THEN420 760 GOTO740 770 X=X+1:Q=Y:REM "k" 780 GOSUB100:IFTR=1THEN20 790 GOSUB30 800 GOSUB90:Q=Q+B(I):GOSUB100:IFTR=1THEN20 810 GOSUB70:IFI=5THEN420 820 GOTO800 830 Y=Y+1:P=X:REM "m" 840 GOSUB100:IFTR=1THEN20 850 GOSUB30 860 GOSUB90:P=P-B(I):GOSUB100:IFTR=1THEN20 870 GOSUB50:IFI=5THEN420 880 GOTO860 890 X=X-1:Q=Y:REM "j" 900 GOSUB100:IFTR=1THEN20 910 GOSUB30 920 GOSUB90:Q=Q+B(I):GOSUB100:IFTR=1THEN20 930 GOSUB70:IFI=5THEN420 940 GOTO920 950 X=X+1:Y=Y-1:P=X:REM "o" 960 GOSUB100:IFTR=1THEN20 970 GOSUB30 980 GOSUB90:P=P+B(I):GOSUB100:IFTR=1THEN20 990 GOSUB50:IFI=5THEN420 1000 GOTO980 1010 X=X+1:Y=Y+1:P=X:REM "," 1020 GOSUB100:IFTR=1THEN20 1030 GOSUB30 1040 GOSUB90:P=P+B(I):GOSUB100:IFTR=1THEN20 1050 GOSUB50:IFI=5THEN420 1060 GOTO1040 1070 X=X-1:Y=Y+1:P=X:REM "n" 1080 GOSUB100:IFTR=1THEN20 1090 GOSUB30 1100 GOSUB90:P=P-B(I):GOSUB100:IFTR=1THEN20 1110 GOSUB50:IFI=5THEN420 1120 GOTO1100 1130 X=X-1:Y=Y-1:P=X:REM "u" 1140 GOSUB100:IFTR=1THEN20 1150 GOSUB30 1160 GOSUB90:P=P-B(I):GOSUB100:IFTR=1THEN20 1170 GOSUB50:IFI=5THEN420 1180 GOTO1160 1190 GOSUB17:REM "z" 1200 GOSUB12:GOSUB350 1210 B(1)=1:GOTO420 1220 GOSUB17:REM "x" 1230 GOSUB12:GOSUB350 1240 GOSUB90:B(I)=1:IFI=2THEN420 1250 GOTO1240 1260 GOSUB17:REM "c" 1270 GOSUB12:GOSUB350 1280 GOSUB90:B(I)=1:IFI=3THEN420 1290 GOTO1280 1300 GOSUB17:REM "v" 1310 GOSUB12:GOSUB350 1320 GOSUB90:B(I)=1:IFI=4THEN420 1330 GOTO1320 1340 GOSUB17:REM "b" 1350 GOSUB12:GOSUB350 1360 GOSUB90:B(I)=1:IFI=5THEN420 1370 GOTO1360 1380 GOSUB17:REM "a" 1390 GOSUB12:GOSUB350 1400 GOTO420 1410 END 1420 GOSUB17:REM "s" 1425 GOSUB14:GOSUB350:S=1 1430 B(1)=0:B(3)=2 1440 GOTO420 1450 GOSUB17:REM "d" 1455 GOSUB14:GOSUB350:S=2 1460 B(3)=2:B(5)=2 1470 GOTO420 1480 GOSUB18:GOTO1425:REM "w" 1490 GOSUB18:GOTO1455:REM "e" 1500 GOSUB18:GOTO1200:REM "1" 1510 GOSUB18:GOTO1230:REM "2" 1520 GOSUB18:GOTO1270:REM "3" 1530 GOSUB18:GOTO1310:REM "4" 1540 GOSUB18:GOTO1350:REM "5" 1550 GOSUB18:GOTO1390:REM "q" 1560 END:REM GRPH "p" 1600 RN=1:D=0:W=0:GOTO1350:REM "r" 1700 D=1:RN=0:W=0:GOTO1350:REM "f" 2000 I=0 2010 I=I+1 2020 IFI<30000THEN2010 2030 RETURN