1 Z9=0:B$="" 2 GOTO 19 8 IFZ9=2ORZ9=61THENZ9=Z9+INT(RND(32)*5)/10 9 DISKOPEN,6,"13" 10 INPUT#6,B$:IFVAL(B$)<>Z9THEN10 12 INPUT#6,B$ 13 IFVAL(B$)=0THENPRINTB$:GOTO12 14 RETURN 19 RL=1.34 20 PRINT:PRINT"OSI 32K Adventure";RL:PRINT 30 PRINT"Press the space bar to continue.":POKE2073,96 35 POKE57088,2:RZ=RND(1):IFPEEK(57088)<>16THEN35 49 POKE2972,13:POKE2976,13 50 DIMS%(50),V%(100),O%(15),K%(150) 60 DIM SH$(45) 70 PRINT"Would you like instructions"; 80 GOSUB9860 90 IFZ0THENZ9=402:GOSUB7620 150 L1=INT(RND(RZ)*4)+1 155 L2=L1 160 B0=1:S=1:D1=1:T=1:T1=100:T2=49:T3=149:D0=2 165 DISKOPEN,6,"28" 167 FORZ2=1TO45:INPUT#6,SH$(Z2):NEXT 170 DISKOPEN,6,"29" 180 FORZ2=1TO35:INPUT#6,S%(Z2):NEXT 250 FORZ2=1TO15:INPUT#6,O%(Z2):NEXT 300 IFL1<13ORL1=58OR(L=1AND(S%(18)=L1ORS%(18)=-1))THEN350 330 Z9=45:GOSUB7620:GOTO400 350 OND0+1GOSUB6780,7990,8180 370 GOSUB6650:GOSUB7800 400 IF LEN(C$)>0THENPRINT:GOTO500 410 PRINT">"; 420 INPUTC$ 430 IF C$=""THEN410 490 IFRIGHT$(C$,1)<>"."THENC$=C$+"." 500 Z4=0 501 FORX=1TOLEN(C$) 502 IFMID$(C$,X,1)<>"."THEN509 503 IFZ4<>0THEN509 504 Z4=X 509 NEXT 510 A$=LEFT$(C$,Z4-1) 520 C$=MID$(C$,Z4+1) 550 A$=" "+A$+" " 555 DATA 8,"EGG" 560 DATA 1,"GOLD",1,"NUGGET",2,"BARS",2,"SILVER",3,"JEWELRY",4,"COINS" 590 DATA 5,"DIAMONDS",6,"MING",6,"VASE",7,"PEARL",8,"EGGS",8,"NEST" 600 DATA 9,"TRIDENT",10,"EMERALD",11,"PLATINUM",11,"PYRAMID",12,"CHAIN 610 DATA 13,"SPICES",14,"PERSIAN",14,"RUG",15,"TREASURE",15,"CHEST" 620 DATA 16,"WATER",17,"OIL",18,"LAMP",18,"LANTERN",19,"KEYS",20,"FOOD 625 DATA 21,"BOTTLE" 630 DATA 22,"CAGE",23,"ROD",23,"WAND",24,"CLAM",25,"MAGAZINE",26,"BEAR 640 DATA 27,"AXE",28,"VELVET",28,"PILLOW",29,"SHARDS",30,"OYSTER" 650 DATA 31,"BIRD",32,"TROLL",33,"DRAGON",34,"SNAKE",35,"DWARF" 660 DATA 36,"ROCK",36,"BOULDER",37,"STALKS",38,"STEPS",39,"HOUSE" 662 DATA 39,"BUILDING",40,"GRATE",41,"STREAM",42,"ROOM",43,"BRIDGE" 664 DATA 44,"PIT",45,"VOLCANO",46,"ROAD",47,"ALL",47,"EVERYTHING" 680 DATA 100,"N",100,"NORTH",101,"NE",102,"E",102,"EAST",103,"SE" 682 DATA 104,"S",104,"SOUTH",105,"SW",106,"W",106,"WEST",107,"NW" 684 DATA 108,"U",108,"UP",109,"D",109,"DOWN" 700 DATA 110,"PLUGH",111,"XYZZY",112,"PLOVER",113,"CROSS",114,"CLIMB" 705 DATA 115,"JUMP" 710 DATA 116,"FILL",117,"EMPTY",117,"POUR",118,"LOOK",118,"L" 715 DATA 119,"LIGHT",119,"ON",120,"EXTINGUISH" 720 DATA 120,"OFF",121,"IN",121,"ENTER",122,"LEAVE",122,"OUT" 725 DATA 123,"INVENTORY",123,"I",122,"EXIT" 730 DATA 124,"GET",124,"CATCH",124,"TAKE",125,"DROP",125,"DUMP" 735 DATA 126,"THROW",127,"ATTACK" 740 DATA 127,"KILL",128,"FEED",129,"WATER",130,"LOCK",131,"UNLOCK" 750 DATA132,"FREE",132,"RELEASE",133,"WAVE",134,"OPEN",134,"CLOSE" 760 DATA 136,"OIL",137,"EAT",138,"DRINK",139,"FEE FIE FOE FOO" 765 DATA 140,"SHORT",141,"LONG",142,"BRIEF",143,"QUIT",143,"STOP" 767 DATA 143,"END" 770 DATA 144,"SCORE",145,"SAVE",146,"LOAD",147,"READ",147,"EXAMINE" 772 DATA 146,"CONTINUE" 775 DATA 148,"YES",149,"GNP",150,"*" 780 RESTORE 790 FORX=1TO150:K%(X)=0:NEXTX 800 Z1=0:Z3=0 810 IFZ1>T3THEN900 830 READZ1,B$ 840 B$=" "+B$+" " 850 FORX=1TOLEN(A$)-LEN(B$)+1 851 IFLEN(B$)>LEN(A$)THEN858 853 IFB$=MID$(A$,X,LEN(B$))THENK%(Z1)=1 858 NEXTX 870 GOTO810 900 REM 910 D=1 920 IFK%(D+99)THEN1070 930 IFD<>10THEND=D+1:GOTO920 970 X=110 975 IFX=T3THEN991 980 IFK%(X)THEN1950 990 X=X+1:GOTO975 991 Z0=36:X=Z0 992 IFX=46THEN1000 993 IFK%(X)=0THEN997 994 GOSUB8390 995 PRINT"What do you want to do with the ";D$;"?" 996 GOTO410 997 X=X+1:GOTO992 1000 GOTO1950 1070 DISKOPEN,6,"26" 1080 FORZ3=1TOL1:FORZ2=1TO10:INPUT#6,D%(Z2):NEXTZ2,Z3 1090 Z2=D%(D) 1130 IFZ2=255THEN1240 1140 IFZ2<1ORZ2>254THEN1220 1150 GOTO1240 1180 L2=L1:L1=Z2 1190 IFS%(35)=L2THENS%(35)=L1 1200 GOTO9780 1210 GOTO300 1220 Z9=1:GOSUB7620 1230 GOTO400 1240 IFNOT(L1=10AND(D=10ORD=5)ORL1=11AND(D=9ORD=3))THEN1310 1270 IFGTHEN1180 1290 Z9=10:GOSUB7620 1300 GOTO400 1310 IFNOT(L1=17ANDD=9ANDS%(1)=-1)THEN1350 1330 Z9=38:GOSUB7620 1340 GOTO400 1350 IFNOT(L1=19ANDD=7ORL1=21ANDD=3)THEN1400 1370 IFB2THEN1180 1380 Z9=3:GOSUB7620 1390 GOTO400 1400 IFNOT(L1=22ANDD<>3ANDD<>9)THEN1460 1420 IFS=0THEN1180 1430 Z9=50:GOSUB7620 1450 GOTO400 1460 IFNOT(L1=44ANDD<>3ANDD<>7)THEN1580 1480 IFRND(RZ)>.5THEN1510 1490 Z9=52:GOSUB7620 1500 GOTO400 1510 D%(1)=33:D%(2)=37:D%(3)=45 1520 D%(4)=78:D%(5)=76 1540 Z2=D%(INT(RND(RZ)*5)+1) 1570 GOTO1180 1580 IFL1<>39THEN1680 1600 IFRND(RZ)<.1THEN1650 1620 Z9=52:GOSUB7620 1640 GOTO400 1650 Z2=38 1670 GOTO1180 1680 IFNOT(L1=57ORL1=58)THEN1770 1690 IFA$=" NW "ORA$=" NE "THEN1770 1700 Z3=1 1705 IFZ3=T2THEN1760 1710 IFZ3=10THEN1750 1720 IFS%(Z3)<>-1THEN1750 1730 Z9=53:GOSUB7620 1740 GOTO400 1750 Z3=Z3+1:GOTO1705 1760 GOTO1180 1770 IFNOT(L1=60ANDD=2ORL1=61ANDD=6)THEN1860 1775 IFB1=2THENS%(26)=0:S%(32)=0:T=0:B1=3:Z9=28:GOSUB7620:GOTO1860 1790 ONT+1GOTO1180,1800,1820,1840 1800 Z9=55:GOSUB7620 1810 GOTO400 1820 Z9=56:GOSUB7620:GOTO1800 1840 T=2 1850 GOTO1180 1860 IFNOT(L1=73ANDD=1ANDD2=0)THEN1890 1870 Z9=57:GOSUB7620 1880 GOTO400 1890 IFNOT(L1=82ANDS%(33)=L1ANDD=1)THEN1930 1900 Z9=51:GOSUB7620 1920 GOTO400 1930 GOTO1180 1950 Z1=100 1955 IFZ1=T3THEN1990 1960 IFK%(Z1)THEN2090 1970 Z1=Z1+1:GOTO1955 1980 REM 1990 X=1 2000 IFX=35THEN2040 2010 IFK%(X)THEND$=SH$(X) 2020 X=X+1:GOTO2000 2040 PRINT"I don't know that word." 2080 GOTO400 2090 Z1=Z1-109 2100 ONZ1GOTO2120,2220,2300,2390,2570,2650,2690,2870,2940,3010 2102 ONZ1-10GOTO3090,3140,3300,3460,3600,3930,4170,4440,4640,4810 2104 ONZ1-20GOTO4960,5070,5200,5420,5570,5770,5820,5930,6010,6100 2106 ONZ1-30GOTO6240,6280,6320,6360,6420,8970,9080,9220,4490,9330 2110 GOTO 2040 2120 IFL1<>7THEN2170 2140 IFS%(35)=L1THENS%(35)=0 2150 Z2=26 2160 GOTO1180 2170 IFL1<>26THEN2200 2180 Z2=7 2190 GOTO1180 2200 Z9=2:GOSUB7620 2210 GOTO400 2220 IFL1<>7THEN2270 2240 IFS%(35)=L1THENS%(35)=0 2250 Z2=13 2260 GOTO1180 2270 IFL1<>13THEN2200 2280 Z2=7 2290 GOTO1180 2300 IFL1<>26THEN2360 2320 IFS%(35)=L1THENS%(35)=0 2330 IFS%(10)=-1THENS%(10)=L1 2340 Z2=58 2350 GOTO1180 2360 IFL1<>58THEN2200 2370 Z2=26 2380 GOTO1180 2390 IFL1<>19THEN2470 2410 IFB2<>0THEN2440 2420 Z9=3:GOSUB7620 2430 GOTO400 2440 D=7 2450 GOTO1070 2470 IFL1<>20THEN2510 2480 IFB2=0THEN2420 2490 D=3 2500 GOTO1070 2510 IFL1<>60THEN2540 2520 D=2 2530 GOTO1070 2540 IFL1<>61THEN2200 2550 D=6 2560 GOTO1070 2570 IFL1<>48ANDL1<>50THENZ9=16:GOSUB7620:GOTO400 2590 IFP1<2THENZ9=16:GOSUB7620:GOTO400 2620 Z2=70 2630 GOTO1180 2650 IFL1<>16ANDL1<>19ANDL1<>20ANDL1<>27THENZ9=61.3:GOSUB7630:GOTO400 2660 Z9=4:GOSUB7620 2670 GOTO9550 2690 IFS%(21)=-1THEN2730 2700 B$="bottle" 2710 PRINT"You don't have the ";B$ 2720 GOTO410 2730 IFB0=0THEN2760 2740 Z9=5:GOSUB7620 2750 GOTO410 2760 IFL1<>7ANDL1<>8ANDL1<>9ANDL1<>35ANDL1<>74ANDL1<>81THEN2790 2770 B0=1:S%(16)=-1 2780 GOTO2840 2790 IFL1=49THEN2830 2800 PRINT"I see nothing here to fill the bottle with.":GOTO400 2810 PRINT"I see no ";B$;" here." 2820 GOTO400 2830 B0=2:S%(17)=-1 2840 PRINT"The bottle is now filled." 2850 GOTO400 2870 IFS%(21)=-1THEN2890 2880 GOTO2700 2890 IFB0=0THENPRINT"The bottle is already empty.":GOTO400 2900 S%(B0+15)=0:B0=0 2910 PRINT"Emptied" 2920 GOTO400 2940 IFL1<13ORL1=58OR(L=1AND(S%(18)=L1ORS%(18)=-1))THEN2970 2950 Z9=45:GOSUB7620 2960 GOTO400 2970 GOSUB8050 2980 GOSUB 6650 2990 GOTO400 3010 IFS%(18)=-1THEN3040 3020 B$="Lamp" 3030 GOTO2710 3040 L=1 3050 B$="on" 3060 PRINT"The lamp is now ";B$ 3070 GOTO2940 3090 IFS%(18)=-1THEN3110 3100 GOTO3020 3110 L=0:B$="off" 3120 GOTO3060 3140 IFL1<>6THEN3180 3160 D=3 3170 GOTO1070 3180 IFL1<>68THENPRINT"There is nothing here to enter.":GOTO410 3190 REM 3200 GOTO 3160 3220 DISKOPEN,6,"26" 3230 FORX=1TOL1:FORY=1TO10:INPUT#6,D%(Y) 3240 NEXT Y,X 3245 Z0=1 3250 IFZ0=10THEN3280 3255 Z2=D%(Z0) 3260 IFZ2>0ANDZ2<101THEN1150 3270 Z0=Z0+1:GOTO3250 3280 GOTO2200 3300 IFL1<>7THEN3340 3320 D=7 3330 GOTO1070 3340 IFL1<>69THEN3380 3360 GOTO3320 3380 PRINT"You must tell me where to go.":GOTO400 3450 REM 3460 Z0=0 3480 PRINT"You are carrying:" 3490 FORX=1TOT2 3500 IFS%(X)<>-1THEN3540 3520 PRINTSH$(X) 3530 Z0=Z0+1 3540 NEXTX 3550 IFZ0=0THENPRINT"nothing." 3560 PRINT 3570 GOTO400 3600 REM 3610 REM 3620 RESTORE 3630 IFK%(47)THEN3680 3640 GOSUB8280 3650 IFZ8>0THEN3680 3660 PRINT"Get what?" 3670 GOTO2040 3680 Z3=1 3690 IFZ3=39THEN3910 3695 A$=SH$(Z3) 3700 IFK%(47)THEN3730 3720 IFK%(Z3)=0THEN3900 3730 IFS%(Z3)<>L1THEN3750 3740 IFS%(Z3)=L1THEN3790 3750 IFK%(47)THEN3900 3760 PRINTA$;" not here." 3770 GOTO3910 3780 REM 3790 Z8=0 3800 FORX=1TOT2 3810 IFS%(X)=-1THENZ8=Z8+1 3820 NEXTX 3830 IFZ8<7THEN3870 3850 Z9=54:GOSUB7620 3860 GOTO410 3870 GOTO6880 3880 S%(Z3)=-1 3890 PRINTA$;" taken." 3900 Z3=Z3+1:GOTO3690 3910 GOTO400 3920 REM 3930 RESTORE 3940 IFK%(47)THEN4000 3950 GOSUB8280 3960 IFZ8>0THEN3990 3970 PRINT"Drop what?" 3980 GOTO2040 3990 REM 4000 Z3=1 4010 IFZ3=39THEN4150 4020 A$=SH$(Z3) 4030 IFK%(47)THEN4060 4040 IFK%(Z3)<>1THEN4140 4050 IFS%(Z3)=0THEN4140 4060 IFS%(Z3)=-1THEN4100 4070 IFK%(47)THEN4140 4080 PRINT"You don't have the ";A$ 4090 GOTO4140 4100 REM 4110 GOTO7370 4120 PRINTA$;" dropped." 4130 S%(Z3)=L1 4140 Z3=Z3+1:GOTO4010 4150 GOTO400 4170 GOSUB8280 4180 IFZ8>0THEN4210 4190 PRINT"Throw what?" 4200 GOTO2040 4210 IFS%(Z3)<>-1THEN2710 4220 IFNOT(Z3<16ANDS%(32)=L1)THEN4260 4240 Z9=27:GOSUB7620:S%(Z3)=0:T=3 4250 GOTO400 4260 IFNOT(Z3=27ANDS%(32)=L1)THEN4300 4280 Z9=26:GOSUB7620:S%(27)=L1 4290 GOTO400 4300 IFNOT(Z3=27ANDS%(35)=L1)THEN4380 4320 IFRND(RZ)>.5THEN4360 4330 Z9=29:GOSUB7620 4340 GOSUB8640 4350 GOTO4410 4360 Z9=30:GOSUB7620:S%(35)=0 4370 GOTO4410 4380 REM 4390 IFS%(35)=L1THENGOSUB8550 4400 PRINT"Thrown." 4410 S%(Z3)=L1 4420 GOTO400 4440 GOSUB8280 4450 IFNOT(Z3=33ANDS%(Z3)=L1ANDL1=82)THEN4520 4470 Z9=68:GOSUB7620 4480 GOTO410 4490 IFL1<>82THEN2040 4500 Z9=69:GOSUB7620:S%(33)=0:D1=0 4510 GOTO400 4520 IFS%(32)<>L1THEN4560 4540 Z9=25:GOSUB7620 4550 GOTO400 4560 IFNOT(Z3=26ORZ3>30)THEN4600 4580 Z9=70:GOSUB7620 4590 GOTO400 4600 REM 4610 Z9=71:GOSUB7620 4620 GOTO400 4640 GOSUB8280 4650 IFZ3<>35THEN4690 4670 Z9=24:GOSUB7620 4680 GOTO400 4690 IFS%(20)=-1THEN4720 4700 B$="FOOD" 4710 GOTO2710 4720 IFL1=69THEN4760 4730 PRINT"I can't feed it." 4740 Z9=23:GOSUB7620 4750 GOTO400 4760 IFS%(28)=L1THEN7600 4770 B1=1:S%(20)=0 4780 Z9=6:GOSUB7620 4790 GOTO400 4810 IFS%(16)=-1THEN4840 4820 B$="water" 4830 GOTO2710 4840 IFL1<>50ANDL1<>48THEN2200 4850 ONP1+1GOTO4860,4890,4920 4860 Z9=7:GOSUB7620 4870 P1=1:S%(16)=0:B0=0 4880 GOTO400 4890 Z9=8:GOSUB7620 4900 P1=2:S%(16)=0:B0=0 4910 GOTO400 4920 Z9=9:GOSUB7620 4930 P1=0:S%(16)=0:B0=0 4940 GOTO400 4960 IFL1=10ORL1=11THEN4990 4980 GOTO2200 4990 IFS%(19)=-1THEN5020 5000 B$="keys" 5010 GOTO2710 5020 G=0 5030 Z9=10:GOSUB7620 5040 GOTO400 5050 S%(Z3)=L1 5070 IFS%(19)<>-1THEN5000 5080 IFL1<>10ANDL1<>11THEN5120 5090 G=1 5100 Z9=11:GOSUB7620 5110 GOTO400 5120 IFL1<>69THEN2200 5130 IFB1>0THEN5160 5140 Z9=12:GOSUB7620 5150 GOTO400 5160 IFC=0THENC=1:B1=2 5170 Z9=13:GOSUB7620 5180 GOTO400 5200 IFK%(31)THEN5240 5220 Z9=2:GOSUB7620 5230 GOTO410 5240 IFS%(31)<>-1THEN5220 5250 S%(31)=L1:B3=0 5260 PRINT"Freed." 5270 IFL1<>22THEN5350 5280 IFS<>1THEN400 5290 B$="snake" 5300 PRINT"The little bird attacks the green ";B$;" and" 5310 IFL1=82THEN5380 5320 PRINT"drives it off" 5330 S=0:S%(34)=0 5340 GOTO400 5350 IFL1<>82THEN400 5360 B$="dragon" 5370 GOTO5300 5380 PRINT"gets burned to a crisp." 5390 S%(31)=0 5400 GOTO400 5420 IFK%(23)<>1THEN2200 5430 IFS%(23)=-1THEN5460 5440 B$="rod" 5450 GOTO2710 5460 REM 5470 IFL1<>19ANDL1<>20THEN2200 5490 ONB2+1GOTO5500,5530 5500 Z9=14:GOSUB7620 5510 B2=1 5520 GOTO400 5530 Z9=15:GOSUB7620 5540 B2=0 5550 GOTO400 5570 GOSUB8280 5580 IFZ3THEN5610 5590 PRINT"Open "; 5600 GOTO2040 5610 IFZ3=40THEN5070 5620 IFS%(Z3)=L1THEN5650 5630 PRINT"I see no ";B$;" here." 5640 GOTO400 5650 IFZ3=24THEN5680 5660 PRINT"I don't know how to open a ";B$ 5670 GOTO400 5680 IFS%(9)=-1THEN5710 5690 Z9=16:GOSUB7620 5700 GOTO400 5710 IFS%(Z3)=0THEN2200 5740 S%(7)=43:S%(24)=0:S%(30)=L1:Z9=17:GOSUB7620 5750 GOTO400 5770 GOSUB8280 5780 IFZ3=40THEN4960 5790 Z9=18:GOSUB7620 5800 GOTO400 5820 IFK%(17)=0THEN2200 5830 IFS%(17)=-1THEN5860 5840 B$="oil" 5850 GOTO5630 5860 IFL1<>73THEN2200 5880 IFD2=1THEN2200 5890 D2=1:S%(17)=0:B0=0:Z9=19:GOSUB7620 5900 GOTO400 5920 IFK%(20)THEN5950 5930 Z9=20:GOSUB7620 5940 GOTO410 5950 Z3=20 5960 GOSUB8490 5970 IFZ5=0THEN410 5980 Z9=73:GOSUB7620:S%(20)=0:B0=0 5990 GOTO400 6010 IFK%(16)THEN6040 6020 Z9=21:GOSUB7620 6030 GOTO410 6040 Z3=16 6050 GOSUB8490 6060 IFZ5=0THEN410 6070 Z9=22:GOSUB7620:S%(17)=0:B0=0 6080 GOTO400 6100 IFL1=71THEN6130 6110 Z9=2:GOSUB7620 6120 GOTO410 6130 IFS%(8)<>L1THEN6180 6150 Z9=79:GOSUB7620 6160 S%(8)=0 6170 GOTO400 6180 IFS%(8)<>0THEN6110 6190 S%(8)=L1 6210 Z9=81:GOSUB7620 6220 GOTO400 6240 PRINT"Short descriptions" 6250 D0=0 6260 GOTO400 6280 PRINT"Long descriptions" 6290 D0=1 6300 GOTO400 6320 PRINT"OK, I'll only describe the room in detail the first time." 6330 D0=2 6340 GOTO400 6360 PRINT"Save game"; 6370 GOSUB9860 6380 IFZ0THEN8970 6390 GOTO9750 6400 REM 6410 REM 6420 GOSUB6430:GOTO400 6430 REM 6440 GOSUB6510 6450 PRINT"Your score is now";S0;"out of 574 possible." 6455 PRINT"You have explored";(Z9/T1)*T1;"% of the cave." 6456 Z0=INT((S0-1)/100) 6458 IFZ0=0THEND$="beginner" 6459 IFZ0=1THEND$="novice" 6460 IFZ0=2THEND$="experienced" 6461 IFZ0=3THEND$="advanced" 6462 IFZ0=4THEND$="expert" 6463 IFZ0=5THEND$="master" 6464 IFS0=574THEN25000 6480 PRINT"That makes you a ";D$;" adventurer." 6500 RETURN 6510 REM 6520 DISKOPEN,6,"29" 6530 Z9=0:S0=0 6540 FORZ0=1TO15 6556 INPUT#6,Z1 6570 IFV%(Z1)THENS0=S0+4*O%(Z0) 6580 IFS%(Z0)=7THENS0=S0+4*O%(Z0) 6590 NEXTZ0 6600 IFG=1THENS0=S0+10 6601 IFS=0THENS0=S0+20 6602 IFD1=0THENS0=S0+30 6603 IFT=0THENS0=S0+30 6604 IFB1=3THENS0=S0+20 6605 IFB1=2THENS0=S0+10 6606 IFP1=2THENS0=S0+20 6607 IFC=1THENS0=S0+20 6608 IFB2=1THENS0=S0+20 6610 FORZ0=1TO100 6620 IFV%(Z0)=1THENS0=S0+1:Z9=Z9+1 6630 NEXT Z0 6640 RETURN 6650 DISKOPEN,6,"30" 6690 FORZ1=1TO35:INPUT#6,A$:IFS%(Z1)=L1THENPRINTA$ 6700 NEXT 6740 GOSUB8550 6750 GOSUB8800 6760 RETURN 6780 DISKOPEN,6,"24" 6810 FORZ1=1TOL1:INPUT#6,A$:NEXT 6820 V%(L1)=1:PRINTA$:RETURN 6880 IFNOT(Z3=24ORZ3=30ORZ3>31)THEN6930 6900 Z9=61:GOSUB7620 6920 GOTO400 6930 IFNOT(Z3=12ANDC=0)THEN6970 6940 Z9=58:GOSUB7620 6960 GOTO3900 6970 IFNOT(Z3=26ANDB1<>2)THEN7010 6990 Z9=61:GOSUB7620 7000 GOTO3900 7010 IFNOT(Z3=14ANDD1=1)THEN7050 7020 Z9=59:GOSUB7620 7040 GOTO3900 7050 IFNOT(Z3=16ORZ3=17)THEN7090 7060 PRINT"Why not say 'fill'?" 7080 GOTO 3880 7090 IFNOT(Z3=22ANDB3)THEN7140 7100 S%(31)=-1 7120 PRINT"Bird and "; 7130 GOTO3880 7140 IFZ3<>31THEN7310 7150 IFB3<>1THEN7210 7170 PRINT"Cage and "; 7190 S%(22)=-1 7200 GOTO3880 7210 IFS%(22)=-1THEN7240 7220 B$="cage" 7230 GOTO2810 7240 IFS%(23)=-1THEN7280 7250 S%(31)=-1:B3=1 7270 GOTO3890 7280 Z9=37:GOSUB7620 7300 GOTO3900 7310 IFNOT(Z3=21ANDB0)THEN7360 7330 PRINT"Contents and the "; 7340 S%(B0+15)=-1 7360 GOTO3880 7370 IFZ3<>31THEN7440 7390 S%(31)=L1:S%(22)=L1:B3=1 7400 REM 7410 IFZ3=31THENPRINT"Cage and "; 7420 IFZ3=22THENPRINT"Bird and "; 7430 GOTO4120 7440 IFZ3=22ANDB3=0THEN7400 7450 IFZ3<>21THEN7520 7460 IFB0=0THEN4120 7480 PRINT"Contents and "; 7500 S%(B0+15)=L1 7510 GOTO4120 7520 IFNOT(Z3=16ORZ3=17)THEN7550 7530 PRINT"Try saying 'empty'" 7540 GOTO4140 7550 IFZ3<>6THEN4120 7560 IFS%(28)=L1THEN7600 7570 Z9=43:GOSUB7620:S%(28)=0:S%(29)=L1 7590 GOTO400 7600 Z9=60:GOSUB7620 7610 GOTO4120 7620 GOTO8 7630 GOTO8 7800 IFL1=10ORL1=11THENZ9=10+G:GOSUB7620 7850 REM 7860 IF(L1=19ORL1=20)ANDB2THENZ9=14:GOSUB7620 7880 IFL1=26THENZ9=41:GOSUB7620 7900 IFL1=73ANDD2=0THENZ9=57:GOSUB7620 7920 IF(L1=60ORL1=61)ANDT=1THENZ9=63:GOSUB7620 7940 IFL1=69ANDB1=0THENZ9=64:GOSUB7620 7950 IFL1=69ANDB1=1THENZ9=66:GOSUB7620 7960 IFB1=2THENZ9=67:GOSUB7620 7970 IFL1=48ORL1=50THENZ9=47+P1:GOSUB7620 7980 RETURN 7990 V%(L1)=1 8050 IFL1<=4THENZ9=200:GOTO8120 8080 IFL1>88ANDL1<98ORL1=99THENZ9=288:GOTO8120 8090 Z9=200+L1 8120 GOSUB7620:RETURN 8180 IFL1<5OR(L1>88ANDL1<98)ORL1=99THEN8220 8200 IFV%(L1)THEN6780 8220 GOTO7990 8240 REM 8280 Z8=0:Z3=0 8300 FORZ5=1TO45 8320 IFK%(Z5)=0THEN8360 8330 Z8=Z8+1 8340 D$=SH$(Z5) 8350 IFK%(Z5)ANDZ8=1THENZ3=Z5 8360 NEXTZ5 8370 B$=D$ 8380 RETURN 8390 REM 8395 Z1=1 8400 IFZ1=47THEN8440 8410 IFK%(Z1)THENRETURN 8430 D$=SH$(Z1) 8440 Z1=Z1+1:GOTO8400 8450 RETURN 8460 REM 8490 IFS%(Z3)=-1THEN8530 8500 PRINT"You don't have the ";A$ 8510 Z5=0 8520 RETURN 8530 Z5=1 8540 RETURN 8550 IFD3<>0THEN8640 8570 IFL1<13THENRETURN 8590 IFRND(RZ)>.10THENRETURN 8600 Z9=80:GOSUB7620 8620 S%(27)=L1:D3=1 8630 RETURN 8640 IFL1<13THENRETURN 8650 IF D3>=5THENRETURN 8660 IFS%(35)<>L1THEN8770 8670 IFRND(RZ)>.3THENRETURN 8680 Z9=32:GOSUB7620 8700 IFRND(RZ)>.2THEN8750 8720 PRINT"It gets you!" 8740 GOTO9540 8750 PRINT"It misses!" 8760 RETURN 8770 IFRND(RZ)<.2THENS%(35)=L1:D3=D3+1 8790 RETURN 8800 Z3=0 8830 IFL1<13THENRETURN 8840 FORX=1TO15 8850 IFS%(X)=-1THENZ3=Z3+1 8860 NEXTX 8870 IFZ3"Y"ANDA$<>"N"THENPRINT"YES OR NO ";:GOTO9860 9880 Z0=A$="Y":RETURN 25000 PRINT"Congradulation's you have obtained the status of" 25010 PRINT"GRAND MASTER. As all adventuredom pays homage to you" 25020 PRINT"a group of friendly dwarves come into the room" 25030 PRINT"and carry our conquering hero into the sunset." 25040 NEW