5 RANDOMIZE TIMER
10  'CLUB 100 Library - 415/939-1246 BBS, 937-5039 NEWSLETTER, 932-8856 VOICE
20 CLEAR:CLS:DEFINT I,J,T:DIM LO(41,6),LO$(41),CO$(24),O1$(45),OB$(45),IT(45),I1(41)
30 PRINT " The Nuclear Submarine Adventure by Steven Neighorn":GOTO 60
40 FOR I=1 TO 45:IF VE$=OB$(I) AND (IT(I)=L OR IT(I)=-1) THEN JH=1:RETURN
50 NEXT:PRINT "That's not here.":JH=2:RETURN
60 FOR I=1 TO 24:READ CO$(I):NEXT:FOR I=1 TO 45:READ O1$(I),OB$(I),IT(I):NEXT:FOR I=1 TO 41:READ LO$(I):FOR J=1 TO 6:READ LO(I,J):NEXT J,I:FOR I=1 TO 41:READ I1(I):NEXT:L=1:C1$=" which you are wearing":JY=1:BK$=SPACE$(40)
70 FOR I=1 TO 3:RN=60:GOSUB 2360:SF$(I)=STR$(RN):NEXT:SF$(1)="R"+SF$(1):SF$(2)="L"+SF$(2):SF$(3)="R"+SF$(3):SC=VAL(RIGHT$(TIME$,2)):FOR I=1 TO SC:DU=RND(1):NEXT:RN=INT(DU*100):RN=7:GOSUB 2360:T1=RN+1
80 T=T+1
90 IF T=T1 THEN BEEP:PRINT "Something has hit the ship!!! You feel a sinking feeling.":FOR J1=0 TO 1000:NEXT J1:RN=300:GOSUB 2360:J1=RN+100
100 IF T>100 AND J7=0 THEN JL=1 ELSE JL=0
110 GOSUB 2350:IF JC=1 AND L<>1 AND L<>13 AND L<>14 AND L<>37 AND L<>41 THEN IT(26)=L:I1(L)=I1(L)+1
120 PRINT RV$;"You are:";NR$;" ";LO$(L);".":IF JL=1 THEN PRINT "The batteries have run down AND the lights have gone out!!!":GOTO 220
130 PRINT RV$;"You see:";NR$;" ";:IF I1(L)=0 THEN PRINT "Nothing of interest.":GOTO 160
140 FOR I=1 TO 45:IF IT(I)=L THEN PRINT O1$(I);". "; 
150 NEXT
160 PRINT:PRINT "(";:IF LO(L,1)<>0 THEN PRINT "fore ";
170 IF LO(L,2)<>0 THEN PRINT "Aft ";
180 IF LO(L,3)<>0 THEN PRINT "port ";
190 IF LO(L,4)<>0 THEN PRINT "Starboard ";
200 IF LO(L,5)<>0 THEN PRINT "Up ";
210 IF LO(L,6)<>0 THEN PRINT "Down ";
220 IF JC=1 AND IT(26)=L THEN I1(L)=I1(L)-1
230 IF T>350 AND J1<>0 THEN GOSUB 2350:PRINT "You didn't make it to the surface quickly enough!!! You die, of course. ":GOSUB 2350:GOTO 2100
240 IF T>115 AND J0<>2 THEN GOSUB 2350:PRINT "You can't make it any further without food... You starve to death.":GOSUB 2350:GOTO 2100
250 IF J0<>2 AND T>95 THEN PRINT ;SPACES$(5);" You're awfully hungry!
260 IF J5=0 AND T>75 THEN GOSUB 2350:PRINT "The hot reactor has a MELT-DOWN...You die, of course.":GOSUB 2350:GOTO 2100 ELSE IF J5=0 AND T>50 THEN PRINT "** You hear a <reactor WARNING> claxon**":BEEP
270 IF L=14 AND JZ<>1 THEN GOSUB 2350:PRINT " You FOR got to wear the Anti-Radiation suit...you die, of course.":GOSUB 2350:GOTO 2100
280 IF L=23 THEN GOSUB 2350:GOTO 2130
290 L1=L:A$="":INPUT "What do you want to do now";A$:CLS:IF A$="" THEN 80
300 IF LEN(A$)=1 THEN GOSUB 2020
310 VE$="":CO$=LEFT$(A$,3):FOR I=3 TO LEN(A$):IF MID$(A$,I,1)=" " THEN VE$=MID$(A$,I+1,3):GOTO 330
320 NEXT 
330 FOR I=1 TO 24:IF CO$=CO$(I) THEN 350
340 NEXT:PRINT "You don't know how to ";CHR$(34);A$;".";CHR$(34):GOTO 80
350 ON I GOTO 360,470,570,620,910,980,1300,1440,1460,1490,1520,1540,1570,1630,1780,1740,2100,1810,1850,1830,1930,1980,470,570
360 IF JL=1 THEN PRINT "It's dangerous to move in the dark!"
370 L1=L:IF LEFT$(VE$,1)="F" AND LO(L,1)<>0 THEN L=LO(L,1):GOTO 80
380 IF LEFT$(VE$,1)="A" AND LO(L,2)<>0 THEN L=LO(L,2):GOTO 80
390 IF LEFT$(VE$,1)="P" AND LO(L,3)<>0 THEN L=LO(L,3):GOTO 80
400 IF LEFT$(VE$,1)="S" AND LO(L,4)<>0 THEN L=LO(L,4):GOTO 80
410 IF LEFT$(VE$,1)="U" AND LO(L,5)<>0 AND (L=1 OR L=37) THEN L=LO(L,5):PRINT "You climb out of the bunk. ":GOTO 80
420 IF LEFT$(VE$,1)="D" AND LO(L,6)<>0 AND (L=2 OR L=36) THEN L=LO(L,6):PRINT "You climb in to the nearest bunk. ":GOTO 80
430 IF LEFT$(VE$,1)="U" AND LO(L,5)<>0 THEN L=LO(L,5):GOTO 80
440 IF LEFT$(VE$,1)="D" AND LO(L,6)<>0 THEN L=LO(L,6):GOTO 80
450 PRINT "You can't go in that direction.":IF JL=1 THEN GOSUB 2350:PRINT "You fall AND break your neck! ":GOSUB 2350:GOTO 2100
460 GOTO 80
470 GOSUB 40:IF JH=2 THEN 80
480 IF IT(I)<>L AND IT(I)<>-1 THEN PRINT "That's not here. ":GOTO 80
490 IF I<29 OR I=31 OR I=43 THEN PRINT "You can't pick that up! ":GOTO 80
500 IF IT(I)=-1 THEN PRINT "You already have it. ":GOTO 80
510 IF I=41 THEN PRINT "You can lift it up but not get it. ":GOTO 80
520 IF IN>=5 THEN PRINT "You can't carry anymore e. ":GOTO 80
530 IN=IN+1:IT(I)=-1:I1(L)=I1(L)-1:PRINT "Taken...":IF I=42 THEN JP=0:GOTO 80
540 IF I=44 THEN JT=0:GOTO 80
550 IF I=45 THEN JD=0:GOTO 80
560 GOTO 80
570 GOSUB 40:IF JH=2 THEN 80
580 IF IT(I)<>-1 THEN PRINT "You aren't carrying it.":GOTO 80
590 IF I1(L)=5 THEN PRINT "There is no more room to drop anything here.":GOTO 80
600 IF I=30 THEN O1$(30)=LEFT$(O1$(30),21):JU=0 ELSE IF I=37 THEN O1$(37)=LEFT$(O1$(37),24):JZ=0
610 IT(I)=L:IN=IN-1:I1(L)=I1(L)+1:PRINT "Dropped...":GOTO 80
620 GOSUB 40:IF JH=2 THEN 80
630 IF I=1 OR I=2 OR I=3 THEN PRINT "The water-tight door is ";:IF J(I)=0 THEN PRINT "closed.":GOTO 80 ELSE PRINT "open.":GOTO 80
640 IF I=4 OR I=5 OR I=6 THEN PRINT "The locker is ";:IF J(I)=0 THEN PRINT "closed AND locked.":GOTO 80 ELSE PRINT "open.":GOTO 80 ELSE IF I=7 OR I=8 OR I=9 THEN PRINT "The hatch is ";:IF J(I)=0 THEN PRINT "closed.":GOTO 80 ELSE PRINT "open.":GOTO 80
650 IF I=10 AND IT(32)=0 AND L=2 THEN PRINT "You see a key!":IT(32)=2:I1(2)=I1(2)+1:GOTO 80
660 IF I=10 OR I=11 THEN PRINT "The bunks look comfy.":GOTO 80
670 IF I=12 THEN PRINT "The torpedo is ready to fire.":GOTO 80
680 IF I=13 THEN PRINT "The tube is empty.":GOTO 80
690 IF I=14 THEN PRINT "The depth gauge reads <";J1;"> fathoms.":GOTO 80
700 IF I=15 THEN PRINT "The push-button ballast control is set FOR ";RV$;:IF J2=0 THEN PRINT "DIVE";NR$;:GOTO 80 ELSE PRINT "SURFACE";NR$:GOTO 80
710 IF I=16 THEN PRINT "The player ";:IF JP=0 THEN PRINT "is empty.":GOTO 80 ELSE PRINT "has a tape in it.":GOTO 80 ELSE IF I=17 OR I=29 OR I=36 THEN PRINT "It has writing on it.":GOTO 80 ELSE IF I<>18 THEN 760 ELSE ON J4+1 GOTO 720,730,750
720 PRINT "The radio is broken.":GOTO 80
730 PRINT "The radio is in working order, AND there is ";:IF JD=1 THEN PRINT "a decoder plugged in to it.":GOTO 80
740 PRINT "an empty plug in it.":GOTO 80
750 PRINT "The radio is broken beyond repair.":GOTO 80
760 IF I=19 THEN PRINT "The panels READ ";:PRINT RV$;"<MISSLE ready>";NR$;" STATUS.":GOTO 80
770 IF I=20 THEN PRINT "The push-button control regulates the reactor.":GOTO 80
780 IF I=21 THEN PRINT "The reactor is running ";RV$;:IF J5=0 THEN PRINT "HOT";NR$;:GOTO 80 ELSE PRINT "NORMAL";NR$;:GOTO 80
790 IF I=22 THEN PRINT "The engine is turning normally, ";:IF J7=0 THEN PRINT "but something is wrong.":GOTO 80 ELSE PRINT " AND everything is in working order.":GOTO 80
800 IF I=23 THEN PRINT "The generator normally meets the ship's electrical needs, ":IF J7=0 THEN PRINT "but now the ship is running on batteries.":GOTO 80 ELSE PRINT " AND it is running properly.":GOTO 80
810 IF I=26 THEN PRINT "They are the remainder of the skeleton crew.":GOTO 80
820 IF I=27 THEN PRINT "The drive train connects the engine to the generator, ";:IF J7=0 THEN PRINT "but it is broken.":GOTO 80 ELSE PRINT " AND it is working properly.":GOTO 80
830 IF I=30 OR I=37 THEN PRINT "It just happens to be in your size.":GOTO 80
840 IF I=31 THEN PRINT "The combination safe is ";:IF JX=0 THEN PRINT "closed.":GOTO 80 ELSE PRINT "open.":GOTO 80 ELSE IF I=38 THEN PRINT "It's the captain's microphone.":GOTO 80
850 IF I=43 THEN PRINT "It's a cook stove, ";:IF I=43 AND JT=0 THEN PRINT " AND it's empty.":GOTO 80 ELSE IF I=43 AND JT=1 THEN PRINT " AND there's a T.V. dinner in it.":GOTO 80
860 IF I=44 AND J0=0 THEN PRINT "It's frozen solid.":GOTO 80
870 IF I=44 AND J0=1 THEN PRINT "It looks delicious.":GOTO 80
880 IF I=45 AND JD=1 THEN PRINT "The decoder is plugged in to the radio.":GOTO 80
890 IF I=45 AND JD=0 THEN PRINT "The decoder has a plug in it.":GOTO 80
900 PRINT "There is nothing unusual about it.":GOTO 80
910 IF VE$<>"SIG" OR L<>12 THEN 920 ELSE PRINT "The sign says:":PRINT "<DANGER>":PRINT "NUCLEAR reactor AND HAZARDOUS MATERIAL BELOW. ANTI-RADIATION SUIT MUST BE WORN!":GOTO 80
920 IF VE$="MAN" AND IT(36)=-1 THEN PRINT "The manual says: `INSTRUCTIONS FOR REPAIR OF ELF (EXTREMELY LOW FREQUENCY) RADIO' AND contains all the needed instructions for effecting repair on the submarine's radio.":JR=1:GOTO 80
930 IF VE$="BOO" AND IT(29)=-1 THEN PRINT "The title of the book...`The Submariner'":ON JY GOTO 950,960
940 PRINT "You can't READ anything...Yet.":GOTO 80
950 PRINT "Chapter 1: `Getting Your Sea Legs'":PRINT "The directions on a ship, always given as though looking forward, are: <fore>...forward, <AFT>...Backward, <port>...Left, <STARBOARD>...Right, Up AND Down.":JY=2:GOTO 80
960 PRINT "CHAPTER 2: `LIFE Aboard a Submarine'":PRINT "Compartments are connected via hatches, water-tight doors, AND a central passageway in the fore AND aft sections of the ship."
970 PRINT "The Captain has absolute power aboard ship AND gives all the orders.":JY=1:GOTO 80
980 GOSUB 40:IF JH=2 THEN 80
990 IF I=31 AND JX=1 THEN PRINT "It's already open.":GOTO 80
1000 IF I=31 AND JX<>1 THEN 1250
1010 IF I>9 THEN 1290
1020 IF J(I)=1 THEN PRINT "It's already open.":GOTO 80
1030 IF I=1 AND JW=1 THEN PRINT "You open the water-tight door with little trouble.":LO(3,6)=8:J(1)=1:GOTO 80
1040 IF I=1 AND JW<>1 THEN PRINT "You aren't strong enough.":GOTO 80
1050 IF I=2 THEN PRINT "You open the water-tight door despite the warning.":LO(12,6)=14:J(2)=1:GOTO 80
1060 IF I=3 AND JC=1 THEN PRINT "You AND the crewmen open the water-tight door .":LO(39,6)=40:J(3)=1:GOTO 80
1070 IF I=3 AND JC<>1 THEN PRINT "You aren't nearly strong enough.":GOTO 80
1080 IF I=4 AND IT(32)=-1 AND IT(29)=0 THEN PRINT "You unlock AND open the locker... something falls out!":J(4)=1:IT(29)=2:I1(2)=I1(2)+1:GOTO 80
1090 IF I=4 AND IT(32)=-1 AND IT(29)<>0 THEN PRINT "You unlock AND open the locker.":J(4)=1:GOTO 80
1100 IF I=4 AND IT(32)<>-1 THEN PRINT "You don't have the right key.":GOTO 80
1110 IF I=5 AND IT(33)=-1 AND IT(37)=0 THEN PRINT "You unlock AND open the locker... something falls out!":J(5)=1:IT(37)=34:I1(34)=I1(34)+1:GOTO 80
1120 IF I=5 AND IT(33)=-1 AND IT(37)<>0 THEN PRINT "You unlock AND open the locker.":J(5)=1:GOTO 80
1130 IF I=5 AND IT(33)<>-1 THEN PRINT "You don't have the right key.":GOTO 80
1140 IF I=6 AND IT(34)=-1 AND IT(30)=0 THEN PRINT "You unlock AND open the locker... something falls out!":J(6)=1:IT(30)=36:I1(36)=I1(36)+1:GOTO 80
1150 IF I=6 AND IT(34)=-1 AND IT(30)<>0 THEN PRINT "You unlock AND open the locker.":J(6)=1:GOTO 80
1160 IF I=6 AND IT(34)<>-1 THEN PRINT "You don't have the right key.":GOTO 80
1170 IF I=7 AND IT(40)=-1 AND JW=1 THEN PRINT "You open the hatch with the wrench.":LO(7,5)=11:J(7)=1:GOTO 80
1180 IF I=7 AND IT(40)=-1 AND JW<>1 THEN PRINT "You're not strong enough.":GOTO 80
1190 IF I=7 AND JW=1 AND IT(40)<>-1 THEN PRINT "You need something to open the hatch with.":GOTO 80
1200 IF I=7 AND JW<>1 AND IT(40)<>-1 THEN PRINT "You can't even begin to open the hatch.":GOTO 80
1210 IF I=8 AND J1=0 THEN PRINT "You open the hatch.":LO(21,5)=22:J(8)=1:GOTO 80
1220 IF I=8 AND J1<>0 THEN PRINT "You can't open the hatch until the ship surfaces.":GOTO 80
1230 IF I=9 AND JC=1 THEN PRINT "You AND the crewmen open the hatch.":LO(39,5)=38:J(9)=1:GOTO 80
1240 IF I=9 AND JC<>1 THEN PRINT "You aren't nearly strong enough.":GOTO 80
1250 J8=0:PRINT "What is the combination...one part at a time":FOR J3=1 TO 3:PRINT "#";J3;:INPUT A$(J3):IF A$(J3)=SF$(J3) THEN PRINT "click.":J8=J8+1
1260 NEXT:IF J8=3 AND IT(42)=0 THEN PRINT "The safe pops open. Something falls out.":IT(42)=25:I1(25)=I1(25)+1:JX=1:GOTO 80
1270 IF J8=3 AND IT(42)<>0 THEN PRINT "The safe pops open.":JX=1:GOTO 80
1280 IF VE$="SAF" AND J8<>3 THEN PRINT "The safe does not open.":GOTO 80
1290 PRINT "You can't open that.":GOTO 80
1300 GOSUB 40:IF JH=2 THEN 80
1310 IF I=31 AND JX=0 THEN PRINT "It's already closed.":GOTO 80
1320 IF I=31 AND JX<>0 THEN 1420
1330 IF I>9 THEN 1420
1340 IF J(I)=0 THEN PRINT "It's already closed.":GOTO 80
1350 IF I=1 THEN PRINT "You close the water-tight door .":LO(3,6)=0:J(1)=0:GOTO 80
1360 IF I=2 THEN PRINT "You close the water-tight door .":LO(12,6)=0:J(2)=0:GOTO 80
1370 IF I=3 THEN PRINT "You close the water-tight door .":LO(39,6)=0:J(3)=0:GOTO 80
1380 IF I=4 OR I=5 OR I=6 THEN PRINT "You close AND lock the locker.":J(I)=0:GOTO 80
1390 IF I=7 THEN PRINT "You close the hatch.":LO(7,5)=0:J(7)=0:GOTO 80
1400 IF I=8 THEN PRINT "You close the hatch.":LO(21,5)=0:J(8)=0:GOTO 80
1410 IF I=9 THEN PRINT "You close the hatch.":LO(39,5)=0:J(9)=0:GOTO 80
1420 IF VE$="SAF" THEN PRINT "You close the safe.":JX=0:GOTO 80
1430 PRINT "You can`t close that.":GOTO 80
1440 IF VE$="DIN" AND IT(44)=-1 AND J0=1 AND L=28 THEN PRINT "You wolf down the T.V. dinner.":IT(44)=0:IN=IN-1:J0=2:GOTO 80
1450 PRINT "You can't eat anything...Yet.":GOTO 80
1460 IF VE$="WEI" AND L=29 AND JW=0 THEN PRINT "You lIF t the weights AND become incre- dibly strong!!!":JW=1:GOTO 80
1470 IF VE$="WEI" AND L=29 AND JW=1 THEN PRINT "You lIF t the weights much m OR e easily this time.":GOTO 80
1480 PRINT "You can't lIF t anything...Yet.":GOTO 80
1490 IF VE$="UNI" AND IT(30)=-1 AND JU=0 THEN PRINT "You put on the Captain's unIF OR m over your other clothes.":O1$(30)=O1$(30)+C1$:JU=1:GOTO 80
1500 IF VE$="OUT" AND IT(37)=-1 AND JZ=0 THEN PRINT "You put on the anti-radiation outfit over your other clothes.":O1$(37)=O1$(37)+C1$:JZ=1:GOTO 80
1510 PRINT "You can't wear anything...Yet.":GOTO 80
1520 IF VE$="CRE" AND IT(35)=-1 AND L=28 AND JC=0 THEN PRINT "You wake the crewmen with the smelling salts.":IT(35)=0:JC=1:IN=IN-1:I1(L)=I1(L)-1:O1$(26)="A group of crewmen":GOTO 80
1530 PRINT "You can't wake anybody...Yet.":GOTO 80
1540 PRINT RV$;"You are carrying:";NR$;" ";:IF IN=0 THEN PRINT "Nothing...":GOTO 80
1550 FOR I=1 TO 45:IF IT(I)=-1 THEN IF POS(0)+LEN(O1$(I))>35 THEN PRINT O1$(I);"..."; ELSE PRINT O1$(I);"...";
1560 NEXT:GOTO 80
1570 IF VE$="BUT" AND L=5 AND JF=0 THEN PRINT "This is a complicated device...You just don't give it a `FLICK' of a switch...":GOTO 80
1580 IF VE$="BUT" AND L=5 AND J2=0 AND JF=1 THEN PRINT "You change the ballast setting to ";RV$;"SURFACE";:J2=1:PRINT NR$;:GOTO 80
1590 IF VE$="BUT" AND L=5 AND J2=1 AND JF=1 THEN PRINT "You change the ballast setting to ";RV$;"DIVE";:J2=0:PRINT NR$;:GOTO 80
1600 IF VE$="BUT" AND L=19 AND J5=0 THEN PRINT "You change the reactor control to ";RV$;"COOL";:J5=1:PRINT NR$;:GOTO 80
1610 IF VE$="BUT" AND L=19 AND J5=1 THEN PRINT "You change the reactor control to ";RV$;"HOT";:J5=0:PRINT NR$;:GOTO 80
1620 PRINT "You can't push anything...Yet.":GOTO 80
1630 IF (VE$="FIR" OR VE$="SUR") AND JU<>1 THEN PRINT "Only a Captain can give such an order.":GOTO 80
1640 IF VE$="FIR" THEN INPUT "Fire what";VE$:VE$=LEFT$(VE$,3):IF VE$="TOR" OR VE$="MIS" THEN 1670 ELSE PRINT "You can't fire that.":GOTO 80
1650 IF VE$="SUR" THEN 1690
1660 PRINT VE$;".":GOTO 80
1670 IF VE$="tor" AND IT(38)=-1 AND L=17 AND IT(30)=-1 AND JU=1 THEN PRINT "torpedo fires...":GOSUB 2350
1675 PRINT"You feel an explosion...You sink one of the waiting rescue vessels...":PRINT "They'll never rescue you now...You blew it!!!":GOSUB 2350:GOTO 2100
1680 IF VE$="TOR" THEN PRINT "You can't fire a torpedo...Yet.":GOTO 80
1690 IF VE$="SUR" AND JU=1 AND IT(30)=-1 AND J2=1 AND IT(38)=-1 AND L=19 AND J1<>0 THEN BEEP:BEEP:BEEP:PRINT "The submarine slowly surfaces...":J1=0:GOTO 80
1700 IF VE$="SUR" THEN PRINT "You can't surface...Yet.":GOTO 80
1710 IF VE$="MIS" AND JU=1 AND IT(30)=-1 AND L=17 AND IT(38)=-1 THEN PRINT "Only the President can give such an order.":GOTO 80
1720 IF VE$="MIS" THEN PRINT "You can't fire a missile...Yet.":GOTO 80
1730 PRINT "You can't say anything...Yet.":GOTO 80
1740 IF VE$="RAD" AND L=18 AND J4=1 AND JD=1 THEN 2310
1750 IF VE$="RAD" AND L=18 AND J4=1 AND JD<>1 THEN PRINT "A message comes through, but it's in code. ":GOTO 2340
1760 IF VE$="RAD" AND L=18 AND J4<>1 THEN PRINT "The radio doesn't work.":GOTO 80
1770 PRINT "You can't use anything...Yet.":GOTO 80
1780 IF LEFT$(VE$,3)="RAD" AND L=18 AND IT(39)=-1 AND JR=1 AND J4=0 THEN PRINT "You fix the radio with the repair kit. ":J4=1:GOTO 80
1790 IF LEFT$(VE$,3)="TRA" AND L=9 AND IT(40)=-1 AND J7=0 THEN PRINT "You fix the drive train with the wrench.":J7=1:GOTO 80
1800 PRINT "You can't fix anything...Yet.":GOTO 80
1810 IF VE$="T.V" AND JF=0 AND L=28 AND JP=1 THEN PRINT "It's a `HEAVY' film about the up's AND down's of the submarine corps.":JF=1:GOTO 80
1820 PRINT "You can't watch anything...Yet.":GOTO 80
1830 IF VE$="DIN" AND L=33 AND JT=1 AND J0=0 THEN PRINT "You cook the dinner in the stove.":J0=1:O1$(44)="A T.V. dinner":GOTO 80
1840 PRINT "You can't cook anything...Yet.":GOTO 80
1850 INPUT "In to what";A$:A$=LEFT$(A$,3):IF A$="PLA" THEN 1890
1860 IF A$="S to " THEN 1900
1870 IF A$="RAD" THEN 1910
1880 PRINT "You can't put anything in to that.":GOTO 80
1890 IF VE$="CAS" AND IT(42)=-1 AND L=28 AND JP=0 THEN PRINT "You put the cassette in the player.":JP=1:IN=IN-1:IT(42)=L:I1(L)=I1(L)+1:GOTO 80
1900 IF VE$="DIN" AND IT(44)=-1 AND L=33 AND JT=0 THEN PRINT "You put the T.V. dinner in the stove.":JT=1:IN=IN-1:IT(44)=L:I1(L)=I1(L)+1:GOTO 80
1910 IF VE$="DEC" AND IT(45)=-1 AND L=18 AND JD=0 THEN PRINT "You attach the decoder to the radio.":JD=1:IN=IN-1:IT(45)=L:I1(L)=I1(L)+1:GOTO 80
1920 PRINT "You can't put that in to anything...Yet.":GOTO 80
1930 CLS:PRINT RV$;"SAVE FILE NAME";NR$;:INPUT " ";A$:IF LEN(A$)=0 OR LEN(A$)>14 THEN 1930
1940 OPEN A$ FOR OUTPUT AS 1:PRINT #1,J0;J1;J2;J4;J5;J7;J8;JC;JD;JF;JL;JP;JR;JT;JU;JW;JX;JY;JZ;L;L1;T;T1;IN;J(1);J(2);J(3);J(4);J(5);J(6);J(7);J(8);J(9);IT(29);IT(30);IT(32);IT(33);IT(34);IT(35);IT(36);IT(37);IT(38);IT(39)
1950 PRINT #1,IT(40);IT(42);IT(44);IT(45);LO(7,5);LO(21,5);LO(39,5);LO(3,6);LO(12,6);LO(39,6);I1(1);I1(2);I1(3);I1(4);I1(5);I1(6);I1(7);I1(8);I1(9);I1(10);I1(11);I1(12);I1(13);I1(14);I1(15);I1(16);I1(17);I1(18);I1(19);I1(20);
1960 PRINT#1,I1(25);I1(26);I1(27);I1(28);I1(29);I1(30);I1(31);I1(32);I1(33);I1(34);I1(35);I1(36);I1(37);I1(38);I1(39);I1(40);I1(41):PRINT #1,O1$(18);",";O1$(26);",";O1$(30);",";O1$(37);",";O1$(44);",";SF$(1);",";SF$(2);",";SF$(3)
1970 CLOSE:PRINT "Saved...":GOTO 80
1980 CLS:PRINT RV$;"LOAD FILE NAME";NR$;:INPUT " ";A$:IF LEN(A$)=0 OR LEN(A$)>12 THEN 1980
1990 OPEN A$ FOR INPUT AS 1:INPUT#1,J0,J1,J2,J4,J5,J7,J8,JC,JD,JF,JL,JP,JR,JT,JU,JW,JX,JY,JZ,L,L1,T,T1,IN,J(1),J(2),J(3),J(4),J(5),J(6),J(7),J(8),J(9),IT(29),IT(30),IT(32),IT(33),IT(34),IT(35),IT(36),IT(37),IT(38),IT(39)
2000 INPUT#1,IT(40),IT(42),IT(44),IT(45),LO(7,5),LO(21,5),LO(39,6),LO(12,6),LO(39,6),I1(1),I1(2),I1(3),I1(4),I1(5),I1(6),I1(7),I1(8),I1(9),I1(10),I1(11),I1(12),I1(13),I1(14),I1(15),I1(16),I1(17),I1(18),I1(19),I1(20)
2010 INPUT#1,I1(25),I1(26),I1(27),I1(28),I1(29),I1(30),I1(31),I1(32),I1(33),I1(34),I1(35),I1(36),I1(37),I1(38),I1(39),I1(40),I1(41),O1$(18),O1$(26),O1$(30),O1$(37),O1$(44),SF$(1),SF$(2),SF$(3):CLOSE:ZN=0:PRINT "Loaded...":GOTO 80
2020 IF A$="F" THEN A$="GO FOR":RETURN
2030 IF A$="A" THEN A$="GO AFT":RETURN
2040 IF A$="S" THEN A$="GO STA":RETURN
2050 IF A$="P" THEN A$="GO POR":RETURN
2060 IF A$="U" THEN A$="GO UP":RETURN
2070 IF A$="D" THEN A$="GO DOW":RETURN
2080 IF A$="I" THEN A$="INV":RETURN
2090 RETURN
2100 CLS:PRINT "The briny sea claims another victim...":PRINT "You have let the SUBMARINE CORPS AND your fellow crewmen down..."
2110 PRINT:INPUT "Do you want to try this adventure again";A$:IF LEFT$(A$,1)="Y" OR LEFT$(A$,1)="y" THEN RUN
2120 END
2130 PRINT "CONGRATULATIONS!!! You made it to the surface.":PRINT "Rescue ships will be here shortly to pick you up.":GOTO 2110
2140 DATA "GO ",GET,DRO,LOO,REA,OPE,CLO,EAT,LIF ,WEA,WAK,INV,PUS,SAY,FIX,USE,QUI,WAT,PUT,COO,SAV,LOA,TAK,REL
2150 DATA A water-tight door ,DOO,3,A water-tight door ,DOO,12,A water-tight door ,DOO,39,A red locker,LOC,2,A white locker,LOC,34,A blue locker,LOC,36,A hatch,HAT,7,A hatch,HAT,21,A hatch,HAT,39
2160 DATA A room full of bunks,BUN,2,A room full of bunks,BUN,36,A torpedo tube labeled <LOADED>,LOA,39,A torpedo tube labeled <EMPTY>,EMP,39,The depth gauge,GAU,5,The ballast control,CON,5,A videocassette player AND T.V.,PLA,28
2170 DATA A warning sign,SIG,12,A complex radio,RAD,18,The missile fire computer panels,PAN,16,A control device,DEV,19,The nuclear reactor,REA,14,The steam turbine engine,ENG,9,The electrical generator,GEN,10
2180 DATA The search periscope,SEA,20,The attack periscope,ATT,20,A group of unconscious crewmen,CRE,28,A drive train,TRA,9
2190 DATA Rescue ships in the distance,RES,23,A hardback book,BOO,0,The Captain's uniform,UNI,0,A wall safe,SAF,25,A key labeled <RKEY>,RKE,0,A key labeled <WKEY>,WKE,11,A key labeled <BKEY>,BKE,13,Some smelling salts,SAL,27,A Navy repair manual,MAN,8
2200 DATA An anti-radiation outfit,OUT,0,A remote microphone,MIC,17,A Navy electronic repair kit,KIT,40,A wrench,WRE,38,A weight training set,WEI,29,A videocassette,CAS,0,A stove,STO,33,A frozen T.V. dinner,DIN,32,A decoder,DEC,37
2210 DATA In a bunk,0,0,0,0,2,0,In the after crew's quarters,3,0,0,0,0,1,In the main passageway,6,2,5,4,0,0,In the laundry room,0,0,3,0,0,0,In the maneuvering room,7,0,0,3,0,9,In the main passageway,12,3,7,0,0,0
2220 DATA On the upper deck of the main engine room,0,5,0,6,0,10,In the ship's can,0,0,0,0,3,0,In the aft section on the lower deck of the engine room,10,0,0,0,5,0
2230 DATA In the fore section on the lower deck of the engine room,0,9,0,0,7,0,In the engine room access trunk,0,0,0,0,0,7,In the main passage way,15,6,0,0,0,0,In the aft section of the reactor room,14,0,0,0,0,0
2240 DATA In the fore section of the reactor room,0,13,0,0,12,0,In the main passageway,16,12,0,0,0,0,In the missile compartment
2250 DATA 17,15,0,0,0,0,In the attack center,20,16,0,0,0,19,In the radio shack,24,19,0,0,20,0,In the main control room,18,0,0,0,17,0,In the periscope room,0,17,0,0,21,18,In the access passageway in the sail,0,0,0,0,0,20:DATA On the bridge,23,0,0,0,0,21
2260 DATA On the main deck,0,0,0,0,0,0,In the main passageway,30,18,25,26,0,27,In the Captain's stateroom,0,0,0,24,0,0,In the officer's wardroom,0,0,24,0,0,0,In the infirmary,0,0,0,0,24,0,In the crew's mess,33,0,0,30,0,0
2270 DATA In the health room,0,0,30,0,0,0,In the main passageway,35,24,28,29,0,0,In the main stores room,0,32,0,0,33,0
2280 DATA In the frozen stores room,31,0,0,0,0,0,In the galley,0,28,0,35,0,31,In the chief's quarters,0,0,35,0,0,0,In the main passage way,36,30,33,34,0,0,In the main crew's quarters,39,35,0,0,0,37,In a bunk,0,0,0,0,36,0
2290 DATA In the forward access AND escape trunk,0,0,0,0,0,39,In the forward torpedo room,41,36,0,0,0,0,In the repair AND w ork compartment,0,0,0,0,39,0,In an empty torpedo tube,0,39,0,0,0,0
2300 DATA 0,2,1,0,2,0,1,1,2,1,1,2,1,1,0,1,1,1,1,2,1,0,1,0,1,0,1,2,1,0,0,1,1,1,0,2,1,1,4,1,0
2310 PRINT "The decoded message is: `NAUTILUS... You have been hit by a new SOVIET ANTI-SUB- MARINE WEAPON. You are resting at the bottom alone, since the weather is...":GOSUB 2350
2320 PRINT " too rough to send down a rescue bell. The structural integrity of the vessel is questionable after the attack, so time is a factor. These alpha-numeric combinations might be of some use."
2330 GOSUB 2350:PRINT SF$(1);"...";SF$(2);"...";SF$(3);"...":PRINT:PRINT "These are $#%$^#$%#%'.....":PRINT 
2340 INPUT "Hit <ENTER> to end decoding";A$:CLS:PRINT "The radio blows up!!!":GOSUB 2350:CLS:O1$(18)="The smoldering remains of a radio":J4=2:IF JD=1 THEN IT(45)=0:I1(18)=I1(18)-1:GOTO 80
2350 FOR I=1 TO 3000:NEXT:RETURN
2360 IF RN=0 THEN RN=RND(1):GOTO 2380
2370 IF RN=1 THEN RN=RND(1) ELSE RN=INT(RN*RND(1))+1
2380 RETURN
