1 REM THIS PROGRAM IS "LGOLDS" ON DISC.
10 REM	THIS IS THE 'ADVENTURE' GAME OF 'LOST DUTCHMAN'S GOLD',
20 REM	ORIGINAL IN APPLESOFT BASIC BY TERI LI
30 REM	
40 REM	TYPE IN AND CONVERTED TO MBASIC (4.51), BY CHRIS SIDENER
50 REM	FROM THE LISTING IN BYTE OF DECEMBER 1980 (PAGE 268 +)
60 REM	
70 REM	BASIC HACKERS AND CRONIC CODE CONVERTERS ARE INVITED TO
80 REM	FIX, IMPROVE, DEBUG, AND OTHERWISE MAKE BETTER THIS CODE.
90 REM
100 REM	IT IS UNDERSTOOD, OF COURSE, THAT YOU WILL MODEM IT BACK
110 REM  SO THAT ALL MAY ENJOY!
120 REM	
130 REM	FIX, PATCH, EXPAND.... HAVE AT IT!    I,M TIRED.
140 REM
150 REM				** CHRIS SIDENER **
160 REM				SPRINGFIELD, VIRGINIA
170 REM
180 REM	*******************************************************************
210 FOR X=1 TO 35:PRINT:NEXT
220 PRINT "WELCOME TO THE SEARCH FOR THE LOST DUTCHMAN'S GOLD." : PRINT "I'M THE GHOST OF BACK-PACK SAM, YER GUIDE ON THIS ADVENTURE."
230 PRINT : PRINT"YA CAN USE TWO WORD COMMANDS TO FIND CLUES 'N MOVE 'BOUT. GET, GO, PUT, DROP,"
240 PRINT "SCORE, INVENTORY, 'N 'BOUT 100 MORE WORDS MAKE SENSE TA ME." : PRINT"ASK FER HELP IF YA GET STUMPED." : PRINT "I HOPE YA DON'T END UP A GHOST,    LIKE ME!!"
243 PRINT:PRINT:INPUT "DO YOU WANT SOME ADVICE?  (Y OR N)";A$
244 IF A$="Y" THEN GOSUB 4000
245 CLEAR 4000
250 DIM T$(200)
260 PRINT:PRINT:PRINT:PRINT"			GOOD LUCK ! !" : PRINT
265 PRINT "I AM SETTING UP A 'GOOD' GAME FOR YOU, PLEASE WAIT."
270 DIM N$(26,7),O$(32,3),R$(46) : B=0 : IN=B : LN=100 : LM=LN : X1=B : X2=B : T$="" : M1$=T$ : M2$=T$ : QM$=T$ : U=B : U1=B : IM=2 : BD=21 : L=1 : C$=CHR$(13)+CHR$(10)
280 FOR L=B TO 26 : FOR I=B TO 7 : READ N$(L,I) : NEXT I,L
290 FOR I=B TO 32 : READ O$(I,0),O$(I,1),O$(I,2) : O$(I,3)="" : NEXT
300 FOR I=B TO 46 : READ R$(I) : NEXT
305 R$(0)=LEFT$(R$(0),3)
310 L=1
315 FOR X=1 TO 35:PRINT:NEXT
320 REM
330 REM
340 REM
350 REM
360 REM
370 IF ((O$(12,2)=STR$(L) OR O$(12,3)="1") AND CL > 0) OR L < 15 THEN 420
380 PRINT "IT'S TOO DARK TA SEE !!" : IF L=15 AND O$(6,3) <> "1" AND O$(4,3) <> "1" THEN PRINT "YA HEAR A STRANGE NOISE !"
390 GOTO 750
400 T$="OK" : RETURN
410 B=1 : PRINT : PRINT "YA SEE : "; : RETURN
420 IF CL=1 THEN LN=LN-1 : IF LN < 1 THEN CL=0
430 L1=L
440 B=0 : PRINT "YER "N$(L,0)"." : FOR J=0 TO 32 : IF VAL(O$(J,2)) <> L THEN 560
450 IF B=0 THEN GOSUB 410
460 IF O$(J,3)="-7" OR O$(J,3)="-2" THEN PRINT "BURNT ";
470 IF J <> 1 OR VAL(O$(1,2)) <> L THEN 500
480 IF O$(1,3)="" THEN PRINT "UNTIED "; : GOTO 500
490 IF O$(1,3)="-9" THEN PRINT "DEAD ";
500 IF O$(J,3)="-3" THEN PRINT "SMASHED ";
510 IF L <> 26 OR J <> 32 THEN 540
520 IF U1 <> 0 THEN PRINT "UN";
530 PRINT "LOCKED ";
540 IF CL=1 AND J=12 THEN PRINT "LIT ";
545 IF J=14 OR J=15 OR J=16 OR J=17 THEN PRINT "***"+O$(J,0)+"*** ";:GOTO 560
550 PRINT O$(J,0)". ";
560 NEXT J
570 IF U1=1 AND L=1 THEN PRINT "OPEN TRAP DOOR. ";
580 IF N$(L,1)="" THEN PRINT : GOTO 690
590 IF B=0 THEN GOSUB 410
600 IF L <> 16 THEN 630
610 IF U <> 0 THEN PRINT "UN";
620 PRINT "LOCKED "; : GOTO 660
630 IF L <> 17 THEN 660
640 IF U=1 THEN PRINT "UNLOCKED "; : GOTO 660
650 PRINT "BLOCKED ";
660 PRINT N$(L,1)".
670 IF L=17 AND U=0 THEN N$(L,2)=" "+RIGHT$(N$(L,2),3)
680 IF L=16 AND U=1 THEN N$(L,2)="E"+RIGHT$(N$(L,2),3)
690 PRINT : IF N$(L,2)="" THEN 750
700 PRINT "OBVIOUS EXITS : "; : FOR I=1 TO 4 : P$=MID$(N$(L,2),I,1) : IF P$="N" THEN PRINT "NORTH ";
710 IF P$="S" THEN PRINT "SOUTH ";
720 IF P$="E" THEN PRINT "EAST ";
730 IF P$="W" THEN PRINT "WEST ";
740 NEXT : PRINT
750 B=0 : PRINT "=======================================
760 PRINT: IF L=9 AND O$(22,2)="11" THEN PRINT "THAR'S NOISE UP AHEAD." : PRINT "SOUNDS LIKE INJUNS.
770 IF L=9 AND O$(22,2)="" THEN O$(22,2)="11"
780 INPUT " --NOW WHAT";QM$
790 IF LN <10 AND CL=1 THEN PRINT "YER RUNNIN' LOW ON KEROSENE.
800 REM
810 IF QM$ <> "SCORE" THEN 870
820 IF L <> 6 THEN T$= "YA GET NOTHIN' FOR BEIN' HERE!" : GOTO 2990
830 Z=0 :FOR I=14 TO 17 : IF O$(I,2) = " 6" THEN Z=Z+1
840 NEXT
850 PRINT "YA GOT "Z" TREASURES, TOT'LIN "(Z/4)*100"%" : IF Z = 4 THEN PRINT "YA MADE IT!!": GOTO 3290
860 T$= "YA MISSED SUM' TREASURE!" : GOTO 2990
870 IF CL=0 AND L=15 AND O$(6,3) <> "1" THEN PRINT "YE GAD!" : PRINT "YA BEEN BIT BY A RATTLER." : PRINT "YER DEAD." :GOTO 3290
880 IF L=17 AND U=1 AND RND(1)*9+1 < 2 THEN PRINT "HOLEY CRAP! WOWIE!! IT'S A CAVE IN !! ": PRINT "THE IRON DOOR'S BLOCKED, " : PRINT "YER TRAPPED!!" : U=0
890 IF QM$="HELP" THEN X=VAL(N$(L,3)) : ON X GOSUB 3310,3320,3330,3340,3360,3380,3390,3400, : GOTO 370
900 X1 =LEN(QM$) : IF X1 <2 THEN T$="WHAT?" : GOTO 2990
910 X3=0 : FOR X2=3 TO X1 : M1$= MID$(QM$,X2,1) : IF M1$=" " THEN X3 = X2 : X2=X1
920 NEXT X2 : X2 = X3 : IF X3 =0 THEN X2 = X1
930 P$ = LEFT$(QM$,3) : IF X2 <> X1 AND X2+ 3 > X1 THEN 1160
940 II =-1 : FOR I= 0 TO 42 : IF P$=R$(I) THEN II=I
950 NEXT : IF II > -1 THEN I= II : GOTO 990
960 IF X1 = X2 THEN T$= "WHAT?" : GOTO 2990
970 T$="SORRY, BUT YA CAN'T "+ LEFT$(QM$,X2) : IF X2 < X1 THEN T$=T$ + RIGHT$(QM$,X1 - X2)
980 T$=T$+ "." : GOTO 2990
990 IF I < 8 AND X1=X2 THEN ON I+1 GOSUB 3130,3130,3130,3290,1230,3140,3000,3100 : GOTO 2990
1000 JJ= -1 : M1$ = MID$(QM$,X2+1,3) : FOR J= 0 TO 32 : IF M1$ = LEFT$ (O$(J,0),3) THEN JJ = J:J=32
1010 NEXT : J= JJ : IF JJ > -1 THEN 1170
1020 IF M1$ = "IRO" THEN 1130
1030 IF I=36 THEN 1570
1040 IF N$(L,1) = "" THEN 1095
1050 FLG2=0:Z=1:A=Z:X1=LEN(N$(L,1))
1052 FOR X2= 5 TO X1
1054 IF MID$(N$(L,1),X2,1)<>CHR$(46) AND X2 <> X1 GOTO 1060
1056 M2$=MID$(N$(L,1),Z,3):IF M2$=M1$ THEN FLG2=1:X2=X1:GOTO 1060
1058 Z=X2+2:A=A+1
1060 NEXT
1062 IF FLG2=0 GOTO 1095
1064 B=A:IF I = 10 THEN PRINT "YA SEE NOTHIN' SPECIAL.":GOTO 430
1065 GOTO 1170
1095 FLG3=0
1100 FOR X=43 TO 46
1102 IF M1$=R$(X) THEN X=46:FLG3=1
1110 NEXT
1115 IF FLG3=1 GOTO 1210
1120 IF O$(4,3) = "1" OR O$(6,3) = "1" THEN IF I=23 AND M1$= "SEL" THEN PRINT "OK" : PRINT "YER DEAD." : GOTO 3290
1130 IF I=32 THEN GOSUB 1390 : GOTO 2990
1140 IF I=33 THEN GOSUB 1510 : GOTO 2990
1150 T$ = "I CAN'T TELL WHATCHA WANT." : GOTO 2990
1160 T$ ="I MUST BE DUMB, YA DON'T MAKE SENSE." : GOTO 2990
1170 IF I < 9 THEN 1210
1180 IF J < 33 AND J > -1 THEN B= VAL(O$(J,2)) : IF B<> L AND B> 0 THEN 2980
1190 IF J > 32 THEN J= 29
1200 ON I - 8 GOSUB 1990,2210,2210,2210,1990,2610,2610,2610,2610,2810,2810,1990,1270,1270,1750,1740,1740,1550,1830,1920,1950,1340,1340,1390,1510,1990,1540,1570,2610,2600,2150,2170,2810,3410
1210 IF I < 9 THEN ON I+1 GOSUB 1590,1590,1590,3290,1230,1590,3000,3100,2150
1220 GOTO 2990
1230 IF O$(3,3) <> "1" THEN 2980
1240 PRINT "OK" : FOR I=13 TO 17 : IF VAL(O$(I,2)) = -L THEN T$ = "EUREKA! WE STRUCK GOLD?!??" : O$(I,2) = STR$(L) : RETURN
1250 NEXT
1260 T$ = "DAG NAB IT! THAR'S NOTHIN' HERE!" : RETURN
1270 IF J <> 23 THEN 1740
1280 IF L= 14 THEN O$(23,2) = "15" : GOTO 400
1290 IF L = 15 THEN O$(23,2) = "16" : GOTO 400
1300 IF L= 16 AND U= 1 THEN O$(23,2) = "17" : GOTO 400
1310 IF L=17 THEN O$(23,2) = "19" : GOTO 400
1320 IF L=19 THEN O$(23,2) = "23" : O$(23,3) = "-3
1330 GOTO 400
1340 IF J=3 OR J=4 OR J= 6 OR J=8 OR J=9 OR J=11 OR J=12 OR J=13 OR J=19 OR J=27 OR J=28 THEN 1360
1350 GOTO 1730
1360 IF O$(J,3) = "1" THEN IN = IN-1
1370 O$(J,3) = "-3" : O$(J,2) = STR$(L) : GOTO 400
1380 T$ = "DON'T HAFTA." : RETURN
1390 IF L <> 16 THEN 1430
1400 IF U <> 0 THEN 1380
1410 IF O$(10,3) = "1" THEN U = 1 : GOTO 400
1420 GOTO 2980
1430 IF L <> 26 THEN 1470
1440 IF U1 <> 0 THEN 1380
1450 IF O$(10,3) = "1" THEN U1 = 1 : RETURN
1460 GOTO 2980
1470 IF O$(1,3) <> "1" THEN 1500
1480 IF O$(0,3) = "2" THEN O$(0,3) = "" : O$(0,2) = STR$(L) : GOTO 400
1490 GOTO 1730
1500 IF CL = 1 AND O$(12,3) = "1" THEN CL=0 : GOTO 400
1510 IF (L=16 OR L=17) AND U = 1 THEN U=0 : GOTO 400
1520 IF L=26 AND U1 =1 THEN U1 =0 : GOTO 400
1530 GOTO 1730
1540 T$= "YA HEAR NOTHIN' SPECIAL." : RETURN
1550 IF L <> 11 OR O$(9,3) <> "1" THEN 2150
1560 PRINT "THEY TOOK THE FIRE WATER 'N RAN." : IN=IN-1 : O$(9,2) = "" :O$(9,3) = "" : O$(22,2) = "" : RETURN
1570 IF M1$= "YOH" THEN T$= "TURKEY!" : PRINT "SORRY, YER IN THE WRONG ADVENTURE." : GOTO 2990
1580 GOSUB 400 : T$=T$+ C$+ RIGHT$(QM$,X1 - X2)+ "." : GOTO 2990
1590 IF B=0 THEN 1640
1600 L= VAL(N$(L,B+3)) : IF O$(1,3)= "1" AND (L=1 OR L=6 OR L=15) THEN T$ ="HE WON'T GO." : L=L1 : RETURN
1610 IF L=17 AND U=0 THEN L=L1 : GOTO 2980
1620 IF L1 = 26 AND L=1 AND U1=0 THEN L=L1 : GOTO 2980
1630 GOTO 1740
1640 IF U1 = 1 AND L=1 THEN L=26 : GOTO 400
1650 IF U1 =1 AND M1$="TRA" AND L=26 THEN L=1 : RETURN
1660 FOR X1= 1 TO 4 : M2$= MID$(N$(L,2),X1,1) : IF M2$ <> LEFT$(M1$,1) THEN NEXT X1 : GOTO 1690
1670 FOR X2=43 TO 46 : IF M1$ <> R$(X2) THEN NEXT X2 : GOTO 1690
1680 L=VAL(N$(L,X1+3)) : IF L <> 0 THEN 1740
1690 IF L=23 THEN T$="IT'S TOO SLIPPERY." :RETURN
1700 IF L=25 THEN L=26 : RETURN
1710 IF L=26 THEN L=25 : RETURN
1720 IF L=19 THEN L=23 : PRINT "NIGH BROKE M' NECK!!" :RETURN
1730 T$= "SORRY, BUT YA CAN'T DO THAT." : RETURN
1740 B=0 : GOTO 400
1750 IF O$(4,3) <> "1" AND O$(6,3) <> "1" THEN 2150
1760 IF J <> 1 THEN 1800
1770 Z=0 : IF O$(J,3) = "1" THEN Z=99
1780 O$(J,3) = "-9" : O$(1,2) = STR$(L)
1790 IF Z=99 THEN IN=IN-1
1800 IF J=22 THEN PRINT "YA GOT ONE!" : PRINT "BUT THE REST GOT YOU!" : GOTO 3290
1810 IF J=9 THEN T$ = "YA HIT ONE!" : RETURN
1820 GOTO 400
1830 IF O$(18,3) <> "1" THEN 2980
1840 IF J < 0 THEN 970
1850 IF J=4 OR (J>5 AND J<11) OR (J>14 AND J < 18) OR J=22 OR J=29 OR J > 30 THEN 1730
1860 IF O$(J,3)="1" THEN IN=IN -1
1870 O$(J,3)="-7" : O$(J,2) = STR$(L)
1880 IF J > 0 THEN 1740
1890 IF O$(0,3) <> "-7" THEN 1740
1900 O$(0,2) = STR$(L) : FOR J=5 TO 21 : IF O$(J,2) = "-1" THEN O$(J,3) = "-7"
1910 NEXT : GOTO 1740
1920 IF J <> 12 THEN 1830
1930 IF O$(J,3) <> "1" OR O$(18,3) <> "1" THEN 1830
1940 CL = 1 : GOTO 400
1950 IF J=13 THEN PRINT "YEEECH!!" : PRINT"IT'S KEROSENE!" : PRINT "YA JUST POISONED YERSELF." : GOTO 3290
1960 IF J <> 9 THEN 1730
1970 PRINT "WHEEEE!!" : PRINT "YA GOT PLASTERED AND LOST A DAY." : IF CL=1 THEN LN=LN-10
1980 RETURN
1990 IF J > 32 OR J < 0 THEN 2030
2000 B= VAL(O$(J,2)) : IF O$(J,3) = "2" OR B=L OR B= -1 THEN 2030
2010 IF J < 22 THEN 2980
2020 T$= "IT AIN'T HERE." : RETURN
2030 IF J > 21 OR J=1 OR J= -1 THEN T$="WHO YOU THINK YA IS, PAUL BUNYON?!!" :RETURN
2040 IF O$(J,3) = "-7" THEN T$="IT'S BURNT UP 'N RUINED." : RETURN
2050 IF IN > 4 THEN T$="YA CAN'T! YER HANDS 'R FULL." : RETURN
2060 IF O$(J,3)="1" THEN PRINT "YA ALREADY GOT IT!" : RETURN
2070 IF VAL(O$(J,1))= 0 AND I <> 16 THEN 2100
2080 IN=IN+1 : IF O$(J,2) = "-1" THEN IM=IM-1 : O$(J,2)="" : O$(J,3)="1" :GOTO 2100
2090 O$(J,3)="1" : O$(J,2) =""
2100 IF J <> 9 AND J <> 11 AND J <> 2 THEN 400
2110 IF J=9 THEN IF O$(8,2)="-6" THEN O$(8,2) = "6"
2120 IF J=11 THEN IF O$(12,2)= "-8" THEN O$(12,2)="8
2130 IF J=2 THEN IF O$(18,2)="-14" THEN O$(18,2)="14
2140 RETURN
2150 IF O$(J,3) <> "1" THEN T$= "YA DON'T HAVE IT!" :RETURN
2160 T$="OK" : IN=IN-1 : O$(J,2)= STR$(L) : O$(J,3) = "" : RETURN
2170 IF O$(5,3) <> "1" THEN 2980
2180 IF L=7 THEN L=8 : GOTO 400
2190 IF L=12 THEN L=13
2200 GOTO 400
2210 GOSUB 400 : ON J+1 GOTO 2230,2270,2280,2300,2310,2315,2330,2300,2300,2340,2360,2370,2390,2400,2300,2300,2300,2300,2300,2420,2440,2460,2480,2490,2500,2520,2300,2540,2300,2300,2300,2560,2300
2220 GOTO 2300
2230 IF VAL (O$(0,3)) < 1 THEN T$= "THEY'S LUMPY OL' LEATHER SADDLEBAGS." : RETURN
2240 PRINT "THEY HOLD ";: IF IM=0 THEN PRINT "NOTHIN'." : T$="" : RETURN
2250 FOR I=6 TO 22 : IF O$(I,2) = "-1" THEN PRINT " "O$(I,0)",";
2260 NEXT : T$= CHR$(8)+"." : RETURN
2270 T$="YA SEE A WEARY OL' GREY MULE." : RETURN
2280 T$="IT'S AN OL' TORN SACK." : IF O$(18,2)= "-14" THEN O$(18,2)="14"
2290 RETURN
2300 T$="YA SEE NOTHIN' SPECIAL." : RETURN
2310 T$="IT'S AN OLD WINCHESTER SINGLE-SHOT." : RETURN
2315 IF O$(5,3)<>"1" GOTO 2975
2320 T$="LOOKS LIKE A MAP TA THE LOST DUTCHMAN'S MINE! THAR'S A SKETCH OF SOME BOULDERS." : RETURN
2330 T$="NOTHIN' SPECIAL,"+C$+"JUS' A LOADED SIX SHOOTER." : RETURN
2340 IF O$(8,2) = "-6" THEN T$="LOOKS LIKE SOMETHIN'S 'HIND THE BOTTLES." : O$(8,2)="6" : RETURN
2350 GOTO 2300
2360 T$ ="THAR'R 3 KEYS, TIED WITH A LEATHER STRAP" : RETURN
2370 IF O$(12,2) = "-8" THEN T$="LOOKS LIKE THAR'S GLASS UNDER 'UM." : O$(12,2)="8" : RETURN
2380 GOTO 2300
2390 T$="IT'S AN OL' KEROSENE LAMP, FULL TA THE '"+STR$(LN)+" TURNS LEFT' MARK." : RETURN
2400 IF I=11 THEN T$="IT SEZ 'KEROSENE.'" : RETURN
2410 T$="THAR'S WRITING ON IT." : RETURN
2420 IF O$(20,2) = "-17" THEN O$(20,2) ="17" : T$="IT'S A MESSAGE !" : RETURN
2430 GOTO 2300
2440 IF I=11 THEN T$="IT SEZ :"+C$+"BRING TREASURES TO SALOON, SAY 'SCORE.'" : RETURN
2450 GOTO 2410
2460 IF I=11 THEN T$="IT SEZ.."+C$+" HAVEN'T YOU ANYTHING BETTER TO DO?" : RETURN
2470 GOTO 2410
2480 T$="THEY'S A SAVAGE LOOKIN' BAND,"+C$+"'N THEY SEEN YA!" : RETURN
2490 T$="JUS' AN OL' CART FULL O' ROCKS." : RETURN
2500 IF O$(5,2)="-25" THEN O$(5,2)="1" : T$="THAR'S SOMETHIN' HERE!!" : RETURN
2510 GOTO 2300
2520 IF I=11 THEN T$="IT SEZ :"+C$+"WELCOME TO FRONTIERTOWN." : RETURN
2530 GOTO 2410
2540 IF O$(10,2) ="-6" THEN O$(10,2) ="6" : T$="THAR'S A SET OF KEYS THAR!" : RETURN
2550 GOTO 2300
2560 B=INT(RND(1)*3+1) : ON B GOTO 2570,2580,2590
2570 T$="IT'S A BARREL CACTUS." : RETURN
2580 T$="IT'S A CHOLLA CACTUS." : RETURN
2590 T$="IT'S A SAGUARO CACTUS." : RETURN
2600 IF J=4 AND I=38 THEN 2740
2610 IF J <> 1 OR VAL(O$(1,3)) < 0 THEN T$="SORRY, BUT THAT AIN'T POSSIBLE." : RETURN
2620 IF I <> 38 THEN 2650
2630 IF O$(1,3) ="" THEN T$="TENDERFOOT! YA HAFTA LEAD 'IM FIRST." : RETURN
2640 GOTO 2740
2650 IF O$(1,3)="1" THEN 2150
2660 IF O$(7,3)="1" THEN IF I <> 16 THEN T$= "TRY 'LEAD.' : RETURN
2670 ON I-13 GOTO 2680,2690,2700,2730
2680 T$="HE GOT AWAY FROM YA." : RETURN
2690 T$="YER TOO SLOW, HE GOT AWAY." : RETURN
2700 IF O$(7,3) <> "1" THEN T$="BAD LUCK, YA TRIPPED AND HE RAN OFF." : O$(1,3)="" : O$(1,2) = STR$(L) : RETURN
2710 IF O$(1,3) ="" THEN 2050
2720 GOTO 2150
2730 T$="HE BUCKED YA OFF." : RETURN
2740 INPUT "WITH WHAT";QM$ : IF J=4 THEN 2780
2750 IF LEFT$(QM$+" ",3) <> "SAD" THEN T$="IT FELL OFF."+C$+"HE GOT AWAY.": O$(1,3)="" : IN=IN-1 : O$(1,2)= STR$(L) : RETURN
2760 IF O$(0,3)="1" THEN O$(0,3)="2" : IN=IN-1 : GOTO 1740
2770 GOTO 2150
2780 IF LEFT$(QM$+" ",3) <> "BUL" THEN 1730
2790 IF O$(8,3) <> "1" OR O$(4,3) <> "1" THEN 2150
2800 GOTO 400
2810 IF O$(J,3) <> "1" THEN 2150
2820 INPUT "ON OR IN WHAT? (IE 'ON TABLE') ";QM$ : P$=LEFT$(QM$+" ",2) : IF P$ <> "IN" AND P$ <> "ON" THEN T$="HUH?" : RETURN
2830 M1$=MID$(QM$,4,3)
2840 IF P$ <> "ON" THEN 2890
2850 IF M1$="MUL" THEN 2760
2860 IF J <> 13 THEN 2150
2870 IF LM=0 THEN T$="IT'S EMPTY." : RETURN
2880 LM=0 : GOTO 2150
2890 IF M1$ <> "SAD" THEN 2930
2900 IF J < 5 OR J=19 OR J=22 THEN T$="SORRY, IT DON'T FIT." : RETURN
2910 IF IM > 4 THEN T$= "THE BAGS 'R FULL." : RETURN
2920 O$(J,2)="-1" : O$(J,3)="" : IN=IN-1 : IM = IM+1 : T$="OK" : RETURN
2930 IF M1$ = "MUL" THEN T$="YA GOT KICKED !" : RETURN
2940 IF M1$ <> "LAN" THEN 1730
2950 IF O$(13,3) <> "1" OR O$(12,3) <> "1" THEN 2150
2960 IF LM=50 THEN LN=LN+50 : LM =0 : GOTO 400
2970 T$="JAR'S EMPTY." :RETURN
2975 T$="YOU DON'T HAVE IT.......":RETURN
2980 T$="YA CAN'T DO THAT... YET!
2990 PRINT T$ : T$="" : GOTO 370
3000 PRINT "YA GOT WITH YA: "; : IF IN=0 AND O$(1,3) <> "1" THEN T$="NOTHIN'" : RETURN
3010 B=VAL(O$(0,3)) : X1=B : IF B <> 1 THEN 3040
3020 PRINT : PRINT O$(0,0)", CONTAINING: ";
3021 FOR I=1 TO 22
3022 IF O$(I,2) <>"-1" GOTO 3030
3023 IF I=14 OR I=15 OR I=16 OR I=17 THEN PRINT "***"+O$(I,0)+"*** ";:GOTO 3025
3024 PRINT O$(I,0)+". ";
3025 X1=2
3030 NEXT : IF X1 <> 2 THEN PRINT "NOTHIN'! ";
3040 IF O$(1,3)="1" THEN PRINT : PRINT "THE MULE, WHICH YER LEADIN. "; : IF B=2 THEN PRINT "(CARRYIN' SADDLEBAGS) ";
3050 PRINT : X1=0 : FOR I=2 TO 22 : IF VAL(O$(I,3)) < 1 THEN 3080
3060 IF CL=1 AND I=12 THEN PRINT "LIT ";
3065 IF I=14 OR I=15 OR I=16 OR I=17 THEN PRINT "***"+O$(I,0)+"*** ";:GOTO 3080
3070 PRINT O$(I,0)". ";
3080 NEXT
3090 T$="" : RETURN
3100 IF L=19 THEN PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT "YA FELL 100 FEET 'N LANDED ON THE ROCKS." : PRINT:PRINT:PRINT"		YER DEAD." : GOTO 3290
3110 IF J=23 OR J=32 OR M1$="P" THEN T$="OK" : RETURN
3120 GOTO 1730
3130 T$="WHERE?" : RETURN
3140 IF L=25 THEN L=26 : GOTO 400
3150 IF L=26 THEN L=25
3160 GOTO 400
3170 DATA ,,,,,,,,IN A MINER'S SHACK,WINDOW. DOOR,,1,3,3,,,IN A DESERT,ROAD. MOUNTAINS. DESERT,WNES,2,4,2,2,2,ON A DIRT PATH,MINER'SHACK. ROAD. MOUNTAINS," W ",5,1,4,7,2
3180 DATA ON A DIRT ROAD,MOUNTAINS. PATH. DESERT. TOWN,NE S,2,7,3,2,5,IN A GHOST TOWN,SALOON," N ",1,6,4,,,IN A SALOON,,W   ,1,5,,,
3190 DATA AT THE SUPERSTITION MOUNTAINS,ROAD. DESERT,S N ,4,4,2,2,2,AT WEAVER'S NEEDLE,,NS  ,1,9,7,,
3200 DATA IN A NARROW DEFILE,BUSHES. CAVES,"  NS",1,11,10,12,8,IN A SMALL CAVE,,E   ,1,9,,,,BEHIND A BUSH,BUSH.,W   ,1,9,,,,IN A BOX CANYON,BUSHES. TREES. BOULDERS,"   S",4,12,12,12,9
3210 DATA IN FRONT OF A HIDDEN MINE,MINE SHAFT,ESNW,8,14,12,12,12,IN THE MOUTH OF A DIM MINE,MINE SHAFT,EW  ,1,15,13,,,IN A MINE,DARK TUNNEL,EW,6,16,14,,
3220 DATA AT THE END OF A TUNNEL,IRON DOOR," W  ",1,17,15,,,IN A LARGE CHAMBER,IRON DOOR,WNES,1,16,19,18,20,IN A MAZE OF TUNNELS,,NSEW,6,18,18,18,18,IN FRONT OF A PIT,DARK HOLE," S  ",7,23,17,,
3230 DATA AT AN INTERSECTION,," SNW",6,,22,17,21,IN A DEAD END TUNNEL,,E   ,8,20,,,,IN A BLOCKED TUNNEL,,N   ,8,20,,,,AT THE BOTTOM OF A SHAFT,WALLS,S   ,8,24,,,
3240 DATA IN A TUNNEL,,NS  ,6,23,25,,,AT THE END OF A TUNNEL,LADDER," N  ",6,26,24,,,AT THE TOP OF A LADDER,,,6,1,25,,
3250 DATA SADDLEBAGS,2,1,MULE,,3,BURLAP SACK,4,14,SHOVEL,4,1,RIFLE,4,1,MAP,1,-25,GUN,1,-1,CARROTS,1,-1,BOX OF RIFLE BULLETS,1,-6,WHISKEY BOTTLES,2,6,KEYS,1,-6,PILE OF BONES (MINE),2,8
3260 DATA LANTERN,2,-8,JAR OF LIQUID,1,-11,SPANISH COINS,1,-10,TOURQUOISE,1,-23,SILVER,1,-21,GOLD,1,-22,MATCHES,1,-14,CRATES,3,17,NOTE,1,-17,PAPER,1,6,INDIANS,,11
3270 DATA ORE CART,,14,BED,,1,SIGN,,5,BROKEN GLASS,,6,TABLES,,6,CHAIRS,,6,ROCKS,,10,WOODEN RAILS,,15,CACTUS,,2,TRAP DOOR,,26
3280 DATA GO X,ENT,RUN,QUI,DIG,CLI,INV,JUM,DRO,GET,EXA,REA,LOO,MOV,CAT,CHA,LEA,RID,PUT,PLA,PIC,PUS,PUL,SHO,OPE,CLO,GIV,BUR,LIG,DRI,BRE,HIT,UNL,LOC,TAK,LIS,SAY,FEE,LOA,UNT,FOL,POU,EAT,NOR,SOU,EAS,WES
3290 PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT:PRINT: INPUT "DO YA WANNA TRY AGAIN";QM$ : IF LEFT$(QM$+" ",1)="Y" THEN RUN
3300 REM
3310 PRINT "TRY EXAM'NIN THIN'S." : RETURN
3320 PRINT "ROADS GO PLACES." : RETURN
3330 PRINT "MAYBE THE TRAIL GOES SOMEWHAR." : RETURN
3340 IF O$(5,3) <> "1" THEN PRINT "YA GOT A MAP?" :RETURN
3350 PRINT "TRY 'FOLLOW.'" : RETURN
3360 IF VAL(O$(1,2))=L THEN PRINT "THE MULE LOOKS THIN." : RETURN
3370 GOTO 3310
3380 PRINT "KEEP GOIN'." : RETURN
3390 PRINT "IT'S SLIPRY, BUTCHA MIGHT MAKE IT DOWN." : RETURN
3400 PRINT "THIS HERS'S A MINE, YA KNOW." : RETURN
3410 IF J=7 THEN T$="THEY TASTE PURTY GOOD." : RETURN
3420 T$="CAN'T DO THAT... WEIRDO !" : RETURN
3430 INPUT "SURE ";QM$ : IF LEFT$(QM$+" ",1) <> "Y" THEN 780
3440 GOTO 780
3450 END
4000 DIM INS$(200)
4005 LINES=30
4010 GOSUB 4100
4020 PRINT:PRINT:PRINT:INPUT "DO YOU WANT A HARD COPY?  (Y OR N)";A$
4030 IF A$="Y" GOTO 4070
4035 PRINT:PRINT:PRINT
4040 FOR X=1 TO LINES
4050 PRINT INS$(X)
4060 NEXT X
4065 PRINT:PRINT:PRINT:INPUT "HIT 'RETURN' TO CONTINUE.",A$
4067 RETURN
4070 FOR X=1 TO LINES
4080 LPRINT INS$(X)
4090 NEXT X
4095 RETURN
4100 INS$(1)="TO WIN THIS GAME YOU HAVE TO CONSIDER EVERYTHING."
4110 INS$(2)="YOU HAVE TO EXAMINE,GET,DIG,FOLLOW,GO,ETC. EYERYWHERE."
4120 INS$(3)="THE LIST OF FIRST WORD COMMANDS ARE;"
4130 INS$(4)="GO	ENTER	RUN	QUIT	DIG	CLIMB	INVENTORY"
4140 INS$(5)="JUMP	DROP	GET	EXAMINE	READ	LOOK	MOVE"
4150 INS$(6)="CATCH	CHASE	LEAD	RIDE	PUT	PLACE	PICK"
4160 INS$(7)="PUSH	PULL	SHOOT	OPEN	CLOSE	GIVE	BURN"
4170 INS$(8)="LIGHT	DRINK	BREAK	HIT	UNLOCK	LOCK	TAKE"
4180 INS$(9)="LISTEN	SAY	FEED	LOAD	UNTIE	FOLLOW	POUR	"
4190 INS$(10)="EAT	NORTH	SOUTH	EAST	WEST"
4200 INS$(11)=""
4210 INS$(12)="THIS LIST MAY NOT BE CORRECT, SOME OF THE WORDS MAY MEAN"
4220 INS$(13)="SOMETHING ELSE. YOU ONLY NEED THE FIRST THREE CHARACTERS"
4230 INS$(14)="OF EACH WORD TO BE UNDERSTOOD."
4240 INS$(15)="THE FIRST LINE OF WORDS CAN BE A SINGLE ENTRY."
4250 INS$(16)="YOU CAN ASK FOR 'SCORE' AND IT WILL TELL YOU,IF YOU ARE IN"
4260 INS$(17)="THE RIGHT PLACE."
4270 INS$(18)="ASK FOR 'HELP' IF YOU ARE STUCK."
4280 INS$(19)="'INVENTORY' WILL TELL YOU WHAT YOU ARE CARRYING."
4290 INS$(20)="IF YOU GET KILLED AND WANT TO RESTORE THE GAME TO WHERE YOU"
4300 INS$(21)="WERE BEFORE YOUR DEMISE, GOTO 370."
4310 INS$(22)=""
4320 INS$(23)=""
4330 INS$(24)="THE SECOND WORD OF YOUR COMMANDS ARE WHAT YOU SEE,EXITS,WHAT"
4340 INS$(25)="YOU ARE CARRYING,ETC."
4350 INS$(26)="SOME OTHERS ARE 'SELF''YOHO'"
4360 RETURN
RE WHAT YOU SEE,EXITS,WHAT"
4340 INS$(25)="YOU