home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Overload
/
ShartewareOverload.cdr
/
games
/
gags.zip
/
ADVEN1.BAS
next >
Wrap
BASIC Source File
|
1986-01-02
|
24KB
|
506 lines
10 ' **************************************************************************
11 ' * ADVENTURE-1 *
12 ' * by Scott Adams *
14 ' * 1978 *
15 ' **************************************************************************
16 ' Adapted for the IBM PC 1-83 from the Commodore PET program.
17 ' Ammended so it may be compiled.
18 ' Uploaded to PCanada by Mark Magner (PC296) April 5, 1983
19 '
30 IL=60:CL=151:NL=59:RL=33:MX=5:AR=11:TT=13:LN=3:LT=125:ML=71:TR=3
31 DIM NV(1),C0%(151),C1%(151),C2%(151),C3%(151),C4%(151),C5%(151),C6%(151),C7%(151)
32 DIM NV$(59,1),IA$(60),IA(60),RS$(33),RM(33,5),MS$(71),NT$(1),I2(60)
43 SCREEN 0,0,0,0:COLOR 7,0,0:WIDTH 80:RESET
44 KEY OFF:KEY 1,"LIST ":KEY 2,"RUN"+CHR$(13):KEY 3,"LOAD"+CHR$(34)+"B:":KEY 4,"SAVE"+CHR$(34)+"B:":KEY 5,"GOSUB ":KEY 6,"RETURN":KEY 7,"FILES "+CHR$(34)+"B:*.*":KEY 8,"EDIT ":KEY 9,"CLS":KEY 10,"SYSTEM"
45 DEF SEG=&H40:RANDOMIZE PEEK(&H6D)*256!+PEEK(&H6C)-32768!
79 LOCATE ,,0:CLS:GOTO 100
80 GOSUB 99:REM single character input, lower case converted to uppercase
81 IN$=INKEY$:IF IN$="" THEN 81 ELSE SOUND 1000,1
82 IF ASC(IN$)=27 THEN RUN
83 IF ASC(IN$)>96 THEN IN$=CHR$(ASC(IN$)-32):REM Lower case to upper case.
84 RETURN
96 GOSUB 99:LOCATE 24,1,0:PRINT"************************** ";:COLOR 18,0:PRINT"Press any key to continue";:COLOR 7,0:PRINT" **************************";:BEEP
97 IN$=INKEY$:IF IN$="" THEN 97 ELSE CLS:SOUND 1000,1:RETURN
99 IN$=INKEY$:IF IN$<>"" THEN 99 ELSE LOCATE ,,1:RETURN
100 REM
150 X=Y=Z:K=R=V:N=LL=F:TP$=K$:W=IP=P:GOSUB 190:GOSUB 2210 ' *****
160 GOSUB 96
180 CLS:GOTO 350
190 CLS:LOCATE ,28:COLOR 0,7:PRINT" W E L C O M E T O ";:COLOR 7,0:PRINT:LOCATE 3,27:COLOR 0,7:PRINT" A D V E N T U R E - 1 ";:COLOR 1,0:PRINT
200 LOCATE 7,1:PRINT"The object of your adventure is to find treasures and return them
210 PRINT"to the proper place for you to accumulate points. I'm your clone. Give me
220 PRINT"commands that consist of a verb & noun, i.e. GO EAST, TAKE KEY, CLIMB TREE,
230 PRINT"SAVE GAME, TAKE INVENTORY, FIND AXE, etc.":PRINT
240 PRINT"You'll need some special items to do some things, but I'm sure that you'll be
250 PRINT"a good adventurer and figure these things out (which is most of the fun of
260 PRINT"this game).":PRINT
270 PRINT"Note that going in the opposite direction won't always get you back to where
280 PRINT"you were. USE CAPS LOCK.":PRINT:PRINT:A$="HAPPY ADVENTURING!!!":LOCATE ,40-((LEN(A$))/2):PRINT A$
285 LOCATE 24,31:COLOR 18:PRINT" < INITIALIZING > ";:COLOR 1:
290 RETURN
350 R=AR:LX=LT:DF=0:SF=0:PRINT:PRINT "Use saved game (Y or N)? ";:GOSUB 80:K$=IN$:PRINT K$
360 PRINT:IF LEFT$(K$,1) <> "Y" THEN CLS:GOTO 420
370 PRINT"Is previously saved game now on the disk in drive B:? ";:GOSUB 80:K$=IN$:PRINT K$:IF LEFT$(K$,1) <> "Y" THEN 350
380 OPEN "B:ADVEN-1.DAT" FOR INPUT AS 1
390 INPUT#1,SF,LX,DF,R
400 FOR X=0 TO IL:INPUT#1,IA(X):NEXT X
410 CLOSE 1:CLS
420 LOCATE ,,0:GOSUB 600:GOTO 490
430 PRINT:BEEP:INPUT "Tell me what to do";TP$:PRINT:GOSUB 500
440 IF F THEN PRINT "You use word(s) I don't know.!":GOTO 430
450 GOSUB 760:IF IA(9)=-1 THEN LX=LX-1:GOTO 470
460 GOTO 490
470 IF LX<0 THEN PRINT "light has run out!":IA(9)=0:GOTO 490
480 IF LX<25 THEN PRINT"light runs out in";LX;"turns!"
490 NV(0)=0:GOSUB 760:GOTO 430
500 K=0:NT$(0)="":NT$(1)=""
510 FOR X=1 TO LEN(TP$):K$=MID$(TP$,X,1):IF K$=" " THEN K=1:GOTO 530
520 NT$(K)=LEFT$(NT$(K)+K$,LN)
530 NEXT X:FOR X=0 TO 1:NV(X)=0:IF NT$(X)="" THEN 590
540 FOR Y=0 TO NL:K$=NV$(Y,X):IF LEFT$(K$,1)="*" THEN K$=MID$(K$,2)
550 IF X=1 AND Y<7 THEN K$=LEFT$(K$,LN)
560 IF NT$(X)=K$ THEN NV(X)=Y:GOTO 580
570 NEXT Y:GOTO 590
580 IF LEFT$(NV$(NV(X),X),1)="*" THEN NV(X)=NV(X)-1:GOTO 580
590 NEXT X:F=NV(0)<1 OR LEN(NT$(1))>0 AND NV(1)<1:RETURN
600 IF DF THEN IF IA(9)<>-1 AND IA(9)<>R THEN PRINT "I can't see. It's too dark!":RETURN
610 K=-1:IF LEFT$(RS$(R),1)="*" THEN PRINT MID$(RS$(R),2);:GOTO 630
620 PRINT "I'm in a ";RS$(R);
630 FOR Z=0 TO IL:IF K THEN IF IA(Z)=R THEN PRINT :PRINT :PRINT "VISIBLE ITEMS HERE:":K=0
640 GOTO 690
650 TP$=IA$(Z):IF RIGHT$(TP$,1)<>"/" THEN RETURN
660 FOR W=LEN(TP$)-1 TO 1 STEP -1:IF MID$(TP$,W,1)="/" THEN TP$=LEFT$(TP$,W-1):RETURN
670 NEXT W
680 RETURN
690 IF IA(Z)<>R THEN 720
700 GOSUB 650:IF POS(0)+LEN(TP$)+3>39 THEN PRINT
710 PRINT TP$;". ";
720 NEXT:PRINT
730 K=-1:FOR Z=0 TO 5:IF K THEN IF RM(R,Z)<>0 THEN PRINT :PRINT "Obvious exits: ":K=0
740 IF RM(R,Z)<>0 THEN PRINT NV$(Z+1,1);" ";
750 NEXT :PRINT :PRINT :RETURN
760 F2=-1:F=-1:F3=0:IF NV(0)=1 AND NV(1)<7 THEN 1240
770 FOR X=0 TO CL:V=INT(C0%(X)/150):IF NV(0)=0 THEN IF V<>0 THEN RETURN
780 IF NV(0)<>V THEN 830
790 N=C0%(X)-V*150
800 IF NV(0)=0 THEN F=0:GOTO 820
810 GOTO 840
820 IF INT(RND(1)*100+1)<=N THEN 850
830 NEXT X:GOTO 1760
840 IF N<>NV(1) AND N<>0 THEN 830
850 F2=-1:F=0:F3=-1:FOR Y=1 TO 5:ON Y GOTO 860,870,880,890,900
860 W=C1%(X):GOTO 910
870 W=C2%(X):GOTO 910
880 W=C3%(X):GOTO 910
890 W=C4%(X):GOTO 910
900 W=C5%(X):GOTO 910
910 LL=INT(W/20):K=W-LL*20:F1=-1
920 ON K+1 GOTO 1110,990,1010,1030,1050,1060,1070,1080,1090,1100,950,970
930 IF K<12 THEN 950
940 ON K-11 GOTO 1000,1020,1040
950 F1=-1:FOR Z=0 TO IL:IF IA(Z)=-1 THEN 1110
960 NEXT :F1=0:GOTO 1110
970 F1=0:FOR Z=0 TO IL:IF IA(Z)=-1 THEN 1110
980 NEXT :F1=-1:GOTO 1110
990 F1=IA(LL)=-1:GOTO 1110 ' *****
1000 F1=IA(LL)<>-1 AND IA(LL)<>R:GOTO 1110
1010 F1=IA(LL)=R:GOTO 1110 ' *****
1020 F1=IA(LL)<>0:GOTO 1110
1030 F1=IA(LL)=R OR IA(LL)=-1:GOTO 1110 ' *****
1040 F1=IA(LL)=0:GOTO 1110 ' *****
1050 F1=R=LL:GOTO 1110 ' *****
1060 F1=IA(LL)<>R:GOTO 1110
1070 F1=IA(LL)<>-1:GOTO 1110
1080 F1=R<>LL:GOTO 1110
1090 F1=SF AND INT(2^LL+.5):F1=F1<>0:GOTO 1110
1100 F1=SF AND INT(2^LL+.5):F1=F1=0 ' *****
1110 F2=F2 AND F1:IF F2 THEN NEXT Y:GOTO 1130
1120 GOTO 830
1130 IP=0:FOR Y=1 TO 4:K=INT((Y-1)/2+6):ON Y GOTO 1140,1150,1160,1170
1140 AC=INT(C6%(X)/150):GOTO 1180
1150 AC=C6%(X)-INT(C6%(X)/150)*150:GOTO 1180
1160 AC=INT(C7%(X)/150):GOTO 1180
1170 AC=C7%(X)-INT(C7%(X)/150)*150
1180 IF AC>101 THEN 1230
1190 IF AC=0 THEN 1720
1200 IF AC<52 THEN PRINT MS$(AC):GOTO 1720
1210 ON AC-51 GOTO 1340,1380,1450,1470,1480,1490,1500,1470,1520,1540,1550
1220 :ON AC-62 GOTO 1560,1580,1590,1640,1680,1690,1700,1710,1390,1460
1230 PRINT MS$(AC-50):GOTO 1720
1240 L=DF:IF L THEN L=DF AND IA(9)<>R AND IA(9)<>-1:GOTO 1260
1250 GOTO 1270
1260 IF L THEN PRINT "Dangerous to move in the dark!"
1270 IF NV(1)<1 THEN PRINT "Give me a direction too.":GOTO 1800
1280 K=RM(R,NV(1)-1)
1290 IF K>=1 THEN 1320
1300 IF L THEN PRINT "I fell down and broke my neck.":K=RL:DF=0:GOTO 1320
1310 PRINT"I can't go in that direction.":GOTO 1800
1320 IF NOT L THEN CLS
1330 R=K:GOSUB 600:GOTO 1800
1340 L=0:FOR Z=1 TO IL:IF IA(Z)=-1 THEN L=L+1
1350 NEXT Z
1360 IF L>=MX THEN PRINT "I've too much to carry!":GOTO 1730
1370 GOSUB 1810:IA(P)=-1:GOTO 1720
1380 GOSUB 1810:IA(P)=R:GOTO 1720
1390 PRINT "Is disk drive B: ready to receive the saved game? ";:GOSUB 80:K$=IN$:PRINT K$:IF LEFT$(K$,1)<>"Y" THEN 1440
1398 PRINT "Is disk drive B: ready to receive the saved game? ";:GOSUB 80:K$=IN$:PRINT K$:IF LEFT$(K$,1)<>"Y" THEN 1440
1410 OPEN "B:ADVEN-1.DAT" FOR OUTPUT AS 1
1420 PRINT#1,SF:PRINT#1,LX:PRINT#1,DF:PRINT#1,R
1430 FOR W=0 TO IL:PRINT#1,IA(W):NEXT W:CLOSE 1
1440 PRINT:GOTO 1720
1450 GOSUB 1810:R=P:GOTO 1720
1460 GOSUB 1810:L=P:GOSUB 1810:Z=IA(P):IA(P)=IA(L):IA(L)=Z:GOTO 1720
1470 GOSUB 1810:IA(P)=0:GOTO 1720
1480 DF=-1:GOTO 1720
1490 DF=0:GOTO 1720
1500 GOSUB 1810
1510 SF=INT(.5+2^P) OR SF:GOTO 1720
1520 GOSUB 1810
1530 SF=SF AND NOT INT(.5+2^P):GOTO 1720
1540 PRINT"I'm dead...":R=RL:DF=0:GOTO 1580
1550 GOSUB 1810:L=P:GOSUB 1810:IA(L)=P:GOTO 1720
1560 PRINT "The game is now over.":PRINT"Another game? ";:GOSUB 80:K$=IN$:PRINT K$:IF LEFT$(K$,1)="N" THEN 9999
1570 FOR X=0 TO IL:IA(X)=I2(X):NEXT :GOTO 350
1580 GOSUB 600:GOTO 1720
1590 L=0:FOR Z=1 TO IL:IF IA(Z)=TR THEN IF LEFT$(IA$(Z),1)="*" THEN L=L+1
1600 NEXT Z:PRINT"I've stored";L;"treasures. On a scale
1610 PRINT"of 0 to 100, that rates a";INT(L/TT*100);"."
1620 IF L=TT THEN PRINT "Well done. ":GOTO 1560
1630 GOTO 1720
1640 PRINT"I'm carrying:":K$="Nothing!":FOR Z=0 TO IL:IF IA(Z)<>-1 THEN 1670
1650 GOSUB 650:IF LEN(TP$)+POS(0)>39 THEN PRINT
1660 PRINT TP$;".",;:K$=""
1670 NEXT :PRINT K$:GOTO 1720
1680 P=0:GOTO 1510
1690 P=0:GOTO 1530
1700 LX=LT:IA(9)=-1:GOTO 1720
1710 CLS:GOTO 1720
1720 NEXT Y
1730 IF NV(0)<>0 THEN 1760
1740 GOTO 830
1760 IF NV(0)=0 THEN 1800
1770 GOSUB 1900
1780 IF F THEN PRINT "I don't understand your command.":GOTO 1800
1790 IF NOT F2 THEN PRINT "I can't do that yet.":GOTO 1800
1800 RETURN
1810 IP=IP+1
1820 ON IP GOTO 1830,1840,1850,1860,1870
1830 W=C1%(X):GOTO 1880
1840 W=C2%(X):GOTO 1880
1850 W=C3%(X):GOTO 1880
1860 W=C4%(X):GOTO 1880
1870 W=C5%(X):GOTO 1880
1880 P=INT(W/20):M=W-P*20:IF M<>0 THEN 1810
1890 RETURN
1900 IF NV(0)<>10 AND NV(0)<>18 OR F3 THEN 2120
1910 IF NV(1)=0 THEN PRINT "What?":GOTO 2060
1920 IF NV(0)<>10 THEN 1950
1930 L=0:FOR Z=0 TO IL:IF IA(Z)=-1 THEN L=L+1
1940 NEXT :IF L>=MX THEN PRINT "I've too much to carry!":GOTO 2060
1950 K=0:FOR X=0 TO IL:IF RIGHT$(IA$(X),1)<>"/" THEN 2070
1960 LL=LEN(IA$(X))-1:TP$=MID$(IA$(X),1,LL):FOR Y=LL TO 2 STEP -1
1970 IF MID$(TP$,Y,1)<>"/" THEN NEXT Y:GOTO 2070
1980 TP$=LEFT$(MID$(TP$,Y+1),LN)
1990 IF TP$<>NV$(NV(1),1) THEN 2070
2000 IF NV(0)=10 THEN 2030
2010 IF IA(X)<>-1 THEN K=1:GOTO 2070
2020 IA(X)=R:K=3:GOTO 2050
2030 IF IA(X)<>R THEN K=2:GOTO 2070
2040 IA(X)=-1:K=3
2050 PRINT"OK, "
2060 F=0:RETURN
2070 NEXT X
2080 IF K=1 THEN PRINT "I'm not carrying it!"
2090 IF K=2 THEN PRINT "I don't see it here."
2100 IF K=0 THEN IF NOT F3 THEN PRINT "It's beyond my power to do that.":F=0
2110 IF K<>0 THEN F=0
2120 RETURN
2210 FOR X=0 TO CL STEP 2:Y=X+1
2220 READ C0%(X),C1%(X),C2%(X),C3%(X),C4%(X),C5%(X),C6%(X),C7%(X)
2230 READ C0%(Y),C1%(Y),C2%(Y),C3%(Y),C4%(Y),C5%(Y),C6%(Y),C7%(Y):NEXT X
2240 FOR X=0 TO NL STEP 10:FOR Y=0 TO 1
2250 READ NV$(X,Y),NV$(X+1,Y),NV$(X+2,Y),NV$(X+3,Y),NV$(X+4,Y),NV$(X+5,Y)
2260 READ NV$(X+6,Y),NV$(X+7,Y),NV$(X+8,Y),NV$(X+9,Y):NEXT Y,X
2270 FOR X=0 TO RL:READ RM(X,0),RM(X,1),RM(X,2),RM(X,3),RM(X,4),RM(X,5),RS$(X):NEXT
2280 FOR X=0 TO ML:READ MS$(X):NEXT X
2290 FOR X=0 TO IL:READ IA$(X),IA(X):I2(X)=IA(X):NEXT X:RETURN
2310 DATA 75,161,386,160,200,0,17612,0
2320 DATA 10,401,420,400,146,0,1852,8850
2330 DATA 8,421,0,0,0,0,2011,0
2340 DATA 8,521,520,260,0,0,2609,7800
2350 DATA 100,108,760,820,420,100,8312,9064
2360 DATA 100,484,0,0,0,0,5613,0
2370 DATA 5,141,140,20,246,0,6062,0
2380 DATA 5,406,426,400,442,146,7845,0
2390 DATA 8,482,152,0,0,0,2311,0
2400 DATA 100,104,0,0,0,0,8550,0
2408 DATA 50,161,246,160,1100,0,7259,7800
2420 DATA 100,148,140,940,500,0,9062,9900
2430 DATA 30,841,426,406,400,0,7845,0
2440 DATA 50,542,141,0,0,0,10504,9150
2450 DATA 100,248,642,720,640,700,8005,7950
2460 DATA 100,248,542,1040,540,0,8005,0
2470 DATA 100,28,49,20,40,0,6360,8700
2480 DATA 100,288,260,280,0,0,7860,9150
2490 DATA 100,248,240,0,0,0,9660,0
2500 DATA 100,269,260,0,0,0,16558,17357
2510 DATA 100,28,48,20,40,0,4110,9000
2520 DATA 4366,22,0,0,0,0,6900,0
2530 DATA 4374,0,0,0,0,0,9750,0
2540 DATA 4404,682,0,0,0,0,6900,0
2550 DATA 4407,82,0,0,0,0,6900,0
2560 DATA 1521,142,421,420,140,0,8902,450
2570 DATA 1542,462,146,482,0,0,2311,0
2580 DATA 1521,142,401,400,140,0,8902,450
2590 DATA 2742,461,460,502,780,500,8864,8005
2600 DATA 2742,461,460,0,0,0,7950,0
2610 DATA 1523,482,146,0,0,0,2311,0
2620 DATA 1523,482,141,266,0,0,2400,0
2630 DATA 1523,482,141,261,260,520,8902,0
2640 DATA 1533,0,0,0,0,0,9900,0
2650 DATA 4350,0,0,0,0,0,10564,0
2660 DATA 5100,0,0,0,0,0,9900,0
2670 DATA 3450,581,344,460,0,0,8118,8614
2680 DATA 2125,623,566,0,0,0,2850,0
2690 DATA 2125,621,561,620,0,0,3021,9209
2700 DATA 6794,0,0,0,0,0,17100,0
2710 DATA 2125,622,561,620,240,0,10555,8720
2720 DATA 184,404,702,380,0,0,8170,9600
2730 DATA 1525,24,806,0,0,0,2400,0
2740 DATA 1525,24,801,800,620,0,8902,0
2750 DATA 2725,621,620,800,0,0,8902,3450
2760 DATA 2125,362,561,0,0,0,3300,0
2770 DATA 6803,0,0,0,0,0,17100,0
2780 DATA 185,384,0,0,0,0,3750,0
2790 DATA 1510,762,760,505,0,0,7800,0
2800 DATA 2710,761,760,582,20,0,7986,8700
2810 DATA 6343,921,920,0,0,0,509,0
2820 DATA 1513,122,261,260,240,0,8902,0
2830 DATA 900,384,420,726,0,0,8164,0
2840 DATA 900,424,380,0,0,0,8164,0
2850 DATA 185,424,502,0,0,0,3900,0
2860 DATA 185,424,505,440,0,0,8170,9600
2870 DATA 5265,0,0,0,0,0,10650,0
2880 DATA 204,682,0,0,0,0,7650,0
2890 DATA 2723,521,502,520,480,280,4259,8008
2900 DATA 1513,122,266,0,0,0,2400,0
2910 DATA 5751,62,0,0,0,0,300,0
2920 DATA 207,40,102,0,0,0,8170,9600
2930 DATA 2713,241,240,260,0,0,8902,4350
2940 DATA 1528,442,440,200,0,0,8319,8294
2950 DATA 1257,100,102,292,80,221,8303,1050
2960 DATA 5870,104,322,286,0,0,900,0
2970 DATA 5570,104,322,286,0,0,900,0
2980 DATA 3611,221,60,220,0,0,4558,7950
2990 DATA 5870,322,281,320,340,0,8303,9600
3000 DATA 2737,721,685,720,0,0,7950,0
3010 DATA 900,384,721,0,0,0,5011,0
3020 DATA 2737,721,1120,900,680,720,8003,8309
3030 DATA 1537,722,720,0,0,0,4852,0
3040 DATA 3300,0,0,0,0,0,5100,0
3050 DATA 3900,0,0,0,0,0,9813,0
3060 DATA 1510,762,502,0,0,0,3900,0
3070 DATA 2710,761,585,820,760,0,5303,8850
3080 DATA 1050,68,765,60,0,0,16710,0
3090 DATA 4800,68,60,542,0,0,5910,0
3100 DATA 4950,0,0,0,0,0,9750,0
3110 DATA 7050,401,0,0,0,0,16613,15750
3120 DATA 7050,421,0,0,0,0,16613,15750
3130 DATA 184,364,0,0,0,0,15300,0
3140 DATA 1554,682,0,0,0,0,7650,0
3150 DATA 7650,502,860,360,500,0,6212,8250
3160 DATA 2723,521,542,480,880,540,8003,8293
3170 DATA 7350,68,60,0,0,0,9001,16607
3180 DATA 5870,342,0,0,0,0,9600,0
3190 DATA 166,702,380,0,0,0,10554,9600
3200 DATA 1050,68,760,100,80,502,8308,4710
3210 DATA 6761,0,0,0,0,0,16614,0
3220 DATA 5400,0,0,0,0,0,197,0
3230 DATA 207,82,60,0,0,0,8170,9600
3240 DATA 1257,102,221,100,80,281,8303,1200
3250 DATA 6038,502,0,0,0,0,3947,0
3260 DATA 6039,542,0,0,0,0,5897,0
3270 DATA 6313,241,240,260,0,0,509,7800
3280 DATA 6313,122,0,0,0,0,450,0
3290 DATA 6342,461,460,0,0,0,509,0
3300 DATA 7500,322,68,320,340,60,8303,810
3310 DATA 4050,524,10,0,0,0,4950,0
3320 DATA 4050,524,11,200,0,0,8170,9600
3330 DATA 1200,226,0,0,0,0,5700,0
3340 DATA 6600,943,221,220,500,140,2762,8700
3350 DATA 6600,221,527,220,500,0,2762,9900
3360 DATA 4217,183,0,0,0,0,7650,0
3370 DATA 1521,142,140,0,0,0,7800,0
3380 DATA 4217,203,169,960,160,0,7403,8700
3390 DATA 4217,203,228,0,0,0,150,0
3400 DATA 4217,203,208,220,660,960,7558,8159
3410 DATA 4217,203,188,200,660,980,7558,8159
3420 DATA 4217,203,168,980,180,0,7403,8700
3430 DATA 7650,401,400,420,0,0,462,8902
3440 DATA 7650,421,0,0,0,0,463,9150
3450 DATA 4050,527,0,0,0,0,15300,0
3460 DATA 3450,586,0,0,0,0,150,0
3470 DATA 6600,0,0,0,0,0,150,0
3480 DATA 2117,183,0,0,0,0,1500,0
3490 DATA 6807,0,0,0,0,0,15450,0
3500 DATA 2723,521,480,520,260,0,8009,7800
3510 DATA 6780,0,0,0,0,0,15450,0
3520 DATA 6771,0,0,0,0,0,15450,0
3530 DATA 7200,0,0,0,0,0,15600,0
3540 DATA 207,224,560,0,0,0,8170,9600
3550 DATA 7050,524,0,0,0,0,16605,16350
3560 DATA 7050,224,0,0,0,0,16605,0
3570 DATA 7050,384,0,0,0,0,16605,0
3580 DATA 7050,464,0,0,0,0,16606,0
3590 DATA 7050,264,0,0,0,0,16609,0
3600 DATA 7050,344,0,0,0,0,16609,0
3610 DATA 7050,304,0,0,0,0,16609,0
3620 DATA 7050,424,0,0,0,0,16605,0
3630 DATA 7050,164,0,0,0,0,16608,0
3640 DATA 5570,281,322,340,320,0,8005,0
3650 DATA 206,342,120,0,0,0,8156,10564
3660 DATA 2117,201,200,180,0,0,8902,1500
3670 DATA 2119,181,180,200,0,0,8902,1350
3680 DATA 1551,62,0,0,0,0,1711,0
3690 DATA 166,1042,480,0,0,0,8170,9600
3700 DATA 1549,0,0,0,0,0,16611,0
3710 DATA 2100,561,365,0,0,0,3600,0
3720 DATA 7650,0,0,0,0,0,150,0
3730 DATA 3450,581,347,340,0,0,8118,8464
3740 DATA 7050,24,0,0,0,0,16605,0
3750 DATA 3611,226,0,0,0,0,5700,0
3760 DATA 7050,404,0,0,0,0,16616,15450
3770 DATA 6774,0,0,0,0,0,9750,0
3780 DATA 166,84,100,0,0,0,8170,9600
3790 DATA 1542,462,460,0,0,0,7800,0
3800 DATA 7050,0,0,0,0,0,150,0
3810 DATA 1200,0,0,0,0,0,197,0
3820 DATA 3600,0,0,0,0,0,16800,0
3830 REM VOCABULARY
3840 DATA AUT,GO,*ENT,*RUN,*WAL,*CLI,JUM,BEA,CHO,*CUT
3850 DATA ANY,NORTH,SOUTH,EAST,WEST,UP,DOWN,NET,FIS,AWA
3860 DATA TAK,*GET,*PIC,*CAT,LIG,*TUR,*LAM,*BUR,DRO,*REL
3870 DATA MIR,AXE,AXE,WAT,BOT,GAM,HOL,LAM,*ON,OFF
3880 DATA *SPI,*LEA,STO,AWA,THR,TOS,QUI,SWI,RUB,LOO
3890 DATA DOO,MUD,*MED,BEE,SCO,GAS,FLI,EGG,OIL,*SLI
3900 DATA *SHO,*SEE,DRA,SCO,INV,SAV,WAK,UNL,REA,OPE
3910 DATA KEY,HEL,BUN,INV,LED,THR,CRO,BRI,BEA,DRA
3920 DATA ATT,*KIL,DRI,*GAT,BUN,FIN,*LOC,HEL,SAY,WIN
3930 DATA RUG,RUB,HON,FRU,OX,RIN,CHI,*BIT,BRA,SIG
3940 DATA DOO,SCR,*YEL,*HOL," "," "," "," "," "," "
3950 DATA BLA,WEB,*WRI,SWA,LAV,ARO,HAL,TRE,*STU,FIR
3960 REM ROOMS
3970 DATA 0,7,10,1,0,24," "
3980 DATA 23,1,1,25,0,0,"dismal swamp."
3990 DATA 0,0,0,0,0,1,"*I'm in the top of a tall cypress tree."
4000 DATA 1,1,1,1,1,4,"large hollow damp stump in the swamp."
4010 DATA 0,0,0,0,3,5,"root chamber under the stump."
4020 DATA 0,0,0,0,4,0,"semi-dark hole by the root chamber."
4030 DATA 0,0,0,0,5,7,"long down-sloping hall."
4040 DATA 8,9,0,27,6,12,"large cavern."
4050 DATA 0,7,0,0,0,0,"large 8-sided room."
4060 DATA 7,0,0,0,20,0,"royal anteroom."
4070 DATA 11,10,0,1,0,26,"*I'm on the shore of a lake."
4080 DATA 11,11,23,11,0,0,"forest."
4090 DATA 13,15,15,0,0,13,"maze of pits."
4100 DATA 0,0,0,14,12,0,"maze of pits."
4110 DATA 17,12,13,16,16,17,"maze of pits."
4120 DATA 12,0,13,12,13,0,"maze of pits."
4130 DATA 0,17,0,0,14,17,"maze of pits."
4140 DATA 17,12,12,15,14,18,"maze of pits."
4150 DATA 0,0,0,0,17,0
4160 DATA "bottom of a chasm. Above 2 ledges. One has a bricked up window."
4170 DATA 0,0,0,20,0,0
4180 DATA "*I'm on a narrow ledge by a chasm. Across the chasm is a throne room."
4190 DATA 0,0,0,0,0,9,"royal chamber."
4200 DATA 0,0,0,0,0,0,"I'm on a narrow ledge by the throne room-across chasm-ledge."
4210 DATA 0,0,0,21,0,0,"throne room."
4220 DATA 10,1,10,11,0,0,"sunny meadow."
4230 DATA 0,0,0,0,0,0
4240 DATA "*I think I'm in real trouble. Here's a guy with a pitchfork!"
4250 DATA 11,0,1,11,0,0,"hidden grove."
4260 DATA 0,0,0,0,0,0,"quick-sand bog."
4270 DATA 0,0,7,0,0,0,"memory RAM of an IBM-PC. I took a wrong turn!"
4280 DATA 0,0,0,0,0,11
4290 DATA "branch on the top of an old oak tree. To the east I see a meadow beyond a lake."
4300 DATA 0,0,0,0,0,0," "
4310 DATA 0,0,0,0,0,0," "
4320 DATA 0,0,0,0,0,0," "
4330 DATA 0,0,0,0,0,0," "
4340 DATA 0,24,11,24,28,24
4350 DATA "large misty room with strange letters over the exits."
4360 REM MESSAGES
4370 DATA " ",Nothing happens,CHOP IT DOWN!,Boy that really hit the spot!
4380 DATA Dragon smells something - awakens - attacks me!,Lock shatters.
4390 DATA I can't. It's locked.
4400 DATA TIMBER... Something fell from the treetop and vanished!
4410 DATA TIMBER...,Lamp is off,Flameless lamp is on.
4420 DATA I'm bit by a spider.,My chigger bites are now infected.
4430 DATA The bites have rotted my whole body.,The bear eats the honey and falls asleep.
4440 DATA Bees sting me,I've no container.,The bees all suffocated.
4450 DATA Something I'm holding vibrated and...,Nothing to light it with.
4460 DATA Gas bladder blew up.,in my hands!
4470 DATA Gas needs to be contained before it will burn.,Gas dissipates.
4480 DATA That won't ignite.,How? Jump?
4490 DATA The bear won't let me.,Don't waste *HONEY*. Get mad instead. Dam lava!
4500 DATA Bees madden the bear. Bear then attacks me!,It soaks into the ground.
4510 DATA In one word tell me what.,Oh no...Bear dodges...CRASH!,It's heavy!
4520 DATA Something's too heavy. I fall.,To stop game say -QUIT-
4530 DATA The mirror hits the floor and shatters into a million pieces.
4540 DATA "Mirror lands softly on the rug - lights up and says:"
4550 DATA You lost *ALL* treasures.,Not carrying the axe. TAKE INVENTORY!
4560 DATA It doesn't bother him at all.,The mud dried up and fell off.
4570 DATA The bear got startled and fell off the ledge!
4580 DATA *DRAGON STINGS* and fades. I don't get it - hope you do.
4590 DATA The bees attack the dragon which gets up and flies away...
4600 DATA Magic oil attracts magic lamp. Lamp is now full.
4610 DATA I'm bit by chiggers.
4620 DATA There's something there all right! Maybe I should go there?
4630 DATA Maybe if I threw something?...,Too dry. Fish die.
4640 DATA A glowing genie appears - drops something - then vanishes.
4650 DATA A genie appears - says 'boy you're selfish' - takes something - then vanishes!
4660 DATA NO! It's too hot.,Not here.,Try the swamp,Use one word.
4670 DATA "Try: LOOK,JUMP,SWIM,CLIMB,THROW,FIND,GO,TAKE,INVENTORY,SCORE."
4680 DATA Only 3 things will wake the dragon. One of them is dangerous!
4690 DATA "If you need a hint on something, try 'HELP'."
4700 DATA Read the sign in the meadow!,You may need magic words here.
4710 DATA A voice booms out ...,PLEASE LEAVE IT ALONE!,Can only throw axe.
4720 DATA Medicine is good for bites.,I don't know where it is.
4730 DATA Treasures have an * in their name. Say 'SCORE',Blow it up.
4740 DATA Fish escape back to the lake.
4750 DATA " "," "," "," "
4760 REM ITEMS
4770 DATA " ",0,"dark hole",4,*POT OF RUBIES*/RUB/,4
4780 DATA "spider web with writing on it.",2
4790 DATA "Hollow stump and remains of a felled tree.",0,"cypress tree",1
4800 DATA "water",10,"evil smelling mud/MUD/",1,*GOLDEN FISH*/FIS/,10
4810 DATA "lit brass lamp/LAM/",0,"old fashoned brass lamp/LAM/",3
4820 DATA "rusty axe (magic word- BUNYON -on it)/AXE/",10
4830 DATA "bottle of water/BOT/",3,"empty bottle/BOT/",0
4840 DATA "ring of skeleton keys/KEY/",2
4850 DATA "sign- LEAVE TREASURE HERE - (say 'SCORE')",3
4860 DATA "locked door",5,"open door with a hallway beyond",0,"swamp gas",1
4870 DATA *GOLDEN NET*/NET/,18,"chigger bites",0,"infected chigger bites",0
4880 DATA "floating patch of oily slime",1,*ROYAL HONEY*/HON/,8
4890 DATA "large african bees",8,"thin black bear",21,"bees in a bottle/BOT/",0
4900 DATA "large sleeping dragon",23,"flint and steel/FLI/",13
4910 DATA *THICK PERSIAN RUG*/RUG/,17
4920 DATA "sign- MAGIC WORD IS AWAY. LOOK LA -(rest of sign is missing)",18
4930 DATA "distended gas bladder/BLA/",0,"bricked up window",20
4940 DATA "sign here says- IN SOME CASES MUD IS GOOD, IN OTHERS...",23
4950 DATA "stream of lava",18
4960 DATA "bricked up window with a hole in it. Beyond is a ledge.",0
4970 DATA "loose fire bricks",0,*GOLD CROWN*/CRO/,22,*MAGIC MIRROR*,21
4980 DATA "sleeping bear",0,"empty wine bladder/BLA/",9,"broken glass",0
4990 DATA "chiggers/CHI/",1,"dead bear",0,*DRAGON EGGS* (very rare)/EGG/,0
5000 DATA "lava stream with a brick dam",0,*JEWELED FRUIT*/FRU/,25
5010 DATA *SMALL STATUE OF A BLUE OXE*/OXE/,26,*DIAMOND RING*/RIN/,0
5020 DATA *DIAMOND BRACELET*/BRA/,0
5030 DATA "strange scratchings on rock reveals- ALADDIN WAS HERE -",14
5040 DATA "sign says- LIMBO. FIND RIGHT EXIT AND LIVE AGAIN!",33
5050 DATA "smoking hole. Pieces of dragon and gore.",0
5060 DATA "sign says- NO SWIMMING ALLOWED -",10,"arrow pointing down",17
5070 DATA "dead fish/FIS/",0,*FIRESTONE* (cold now)/FIR/,0
5080 DATA "sign says- S PLACE -",25,"trees",11," ",0," ",0
9999 WIDTH 80:COLOR 7,0:KEY ON:LOCATE ,,1,8,11:END