0 REM Version IV 29.1.91 1 REM Inca Treasure By C.J.Richardson 1985 2 *FX200,3 3 E%=0 4 ONERROR:IF ERR=254:E%=1:GOTO10 ELSE IF ERR=9 GOTO 20 ELSE CLS:REPORT:PRINTERL:R%=1:GOTO20 5 MODE7:*$.SPEECH 10 PROCTI 20 REPEAT:PROCGO:PROCAT:PROCVO:UNTILF%=1:PROCKI:PROCEN 30 DEFPROCTI:PRINT:FORL%=1TO2:PRINTTAB(9);:VDU132,157,131,141:PRINT"INCA TREASURE ";:VDU156:NEXT:PRINT':FORL%=1TO2:PRINTTAB(6);:VDU132,157,131,141:PRINT"By C.J.Richardson. ";:VDU156:NEXT 40 PRINT''" You are dropped in the Jungle."''" You have to Find the Inca Treasure."''" You must then fly the aircraft home."''" The Computer will understand single"''" or double word inputs"'' 50 PRINT" PLEASE WAIT FOR DATA TO LOAD"'':PROCSET:PRINT"GOOD LUCK!!! PRESS SPACE TO CONTINUE":REPEATUNTILGET$=" ":CLS:ENDPROC 60 DEFPROCSET:RESTORE:DIMA%(155,4),A$(155),B%(40),B$(40),C$(40):S%=0:R%=1:F%=0:DIM SPK% 200:U%=OPENIN("INCASTA") 70 FORL%=0TO155:INPUT#U%,A$(L%),A%(L%,0),A%(L%,1),A%(L%,2),A%(L%,3),A%(L%,4):NEXT:FORL%=0TO40:INPUT#U%,B$(L%),B%(L%),C$(L%):NEXT:CLOSE#U%:V%=1:ENDPROC 80 DEFPROCWI:PRINT"CONGRATULATIONS. YOU WON."'"SCORE "+STR$(S%)+" out of 41":ENDPROC 90 DEFPROCGO:PRINT"You are ";A$(R%)'"There are exits ";:TEMP%=0:IFA%(R%,1)<>0PRINT"North ";:TEMP%=1 100 IFA%(R%,2)<>0PRINT"South ";:TEMP%=1 110 IFA%(R%,3)<>0PRINT"East ";:TEMP%=1 120 IFA%(R%,4)<>0PRINT"West ";:TEMP%=1 130 IFR%=20ORR%=21ORR%=104PRINT"U ";:TEMP%=1 140 IFR%=17ORR%=20PRINT"D ":TEMP%=1 150 IF TEMP%=0 PRINT"NOWHERE (YET!)" 160 PROCSAYIT("YOU ARE "+A$(R%)) 170 I%=0:PRINT:SA$="You can see,":PRINT""+SA$;:L%=0:REPEAT:L%=L%+1:IFB%(L%)=R% PRINTB$(L%);" ":I%=1:SA$=SA$+" "+B$(L%) 180 UNTILL%=40:IF I%=0 PRINT" nothing here" 190 IF I%=1:IF INSTR(A$(R%),"lake",4)ORINSTR(A$(R%),"iver",4)ORINSTR(A$(R%),"ream",4)HOP$="Floating on the surface":SA$=SA$+HOP$:PRINT""+HOP$ 200 IFI%<>0 THEN PROCSAYIT(SA$) 210 I%=0:PRINT':IFR%=26ORR%=29ORR%=78ORR%=79F%=1:R$="You shouldn't have come here!":ENDPROC 220 ENDPROC 230 DEFPROCAT:REPEAT INPUT"I am waiting:"Q$:IFQ$="N"Q$="NOR"ELSEIFQ$="S"Q$="SOU"ELSEIFQ$="E"Q$="EAS"ELSEIFQ$="W"Q$="WES" 232 IFQ$="U"Q$="UPP"ELSEIFQ$="UP"Q$="UPP"ELSEIFQ$="D"Q$="DOW" 235 UNTILLENQ$>2:ENDPROC 240 DEFPROCKI:PRINT"YOU'RE DEAD!"'"";R$'"SCORE:";S%;" out of 41":PROCSAYIT("OUTCH. YOU ARE DED. "):ENDPROC 245 DEFPROCVO:Z%=-1:L%=0:REPEAT:IFINSTR(C$(L%)," ")IFQ$=C$(L%):Z%=1 250 IFINSTR(C$(L%)," ")=0:IFLEFT$(C$(L%),3)=LEFT$(Q$,3)Z%=1 255 L%=L%+1:UNTILL%=41ORZ%=1:IFL%=41PRINT"I don't understand "Q$:ENDPROC ELSE L%=L%-1:PROCCO(L%):ENDPROC 270 DEFPROCEN:PRINT"ANOTHER GO Y/N":IF GET$="N"CALL!-4 ELSE RUN 280 DEFPROCCO(C%):L%=41:GOTO (290+(C%*10)) 290 ENDPROC:REM DEBUG 300 PRINT"That way isn't clear yet":ENDPROC 310 PRINT"QUIT. SURE Y/N?":IF GET$="Y"R$=Q$:F%=1:ENDPROC ELSE ENDPROC 320 R$="YOU DROWNED (NO DINGY)":F%=1:ENDPROC 330 PRINT"The animal leaps into your way!":ENDPROC 340 FORL%=0TO40:IFB%(L%)=R%R$=B$(L%) ELSE NEXT:ENDPROC 345 F%=1:NEXT:ENDPROC 350 PRINT"SCORE=";S%;" out of 41":ENDPROC 360 Q%=0:IFB%(1)<>0 PRINT"You cannot do that yet!":ENDPROC 361 IF INSTR(A$(R%),"jungle",6)=0 PRINT"You are wasting energy!":ENDPROC 362 Q$=MID$(Q$,6,1):IFQ$="N"Q%=1ELSEIFQ$="S"Q%=2ELSEIFQ$="E"Q%=3ELSEIFQ$="W"Q%=4 363 IFQ%=0 OR A%(R%,Q%)=0 PRINT"You hack away madly":ENDPROC 367 A%(R%,Q%)=ABS A%(R%,Q%):RI%=R%:R%=A%(R%,Q%):FOR LO%=1 TO 4:IF ABS(A%(R%,LO%))=RI% THEN A%(R%,LO%)=ABS(A%(R%,LO%)):NEXT:ELSE NEXT 368 ENDPROC 370 Q$=MID$(Q$,5,(LENQ$)):IF Q$=""INPUT"Get what? "Q$ 372 MA%=0:FORL%=0TO34:IFL%=6ORL%=9ORL%=12ORL%=14ORL%=18 THEN NEXTELSE IF B$(L%)=Q$ ANDB%(L%)<>R% PRINT"That is'nt here." 373 IFB$(L%)=Q$ ANDB%(L%)=R% B%(L%)=0:S%=S%+1:MA%=1 374 NEXT:IF MA%=0 PRINT"That is not really possible you know.":ENDPROC 375 IFQ$="INFLATABLE DINGY"PROCBO 376 IFQ$="MAGIC BAT"FORI%=140TO150:FOR L%=1TO4:A%(I%,L%)=ABSA%(I%,L%):NEXT, 379 ENDPROC 380 Q$=MID$(Q$,6,(LENQ$)):IFQ$="" INPUT"DROP WHAT?"Q$ 382 MA%=0:FOR L%=0 TO 40:IFL%=2ORL%=6ORL%=9ORL%=12ORL%=14ORL%=18ORL%=19 THEN NEXT ELSE IF B$(L%)=Q$ AND B%(L%)=0 B%(L%)=R%:S=S-1:MA%=1 388 NEXT:IF MA%=0 PRINT"That is'nt possible.":ENDPROC 389 S%=S%-1:ENDPROC 390 IFB%(4)<>0PRINT"You cannot do that as you have no gun.":ENDPROC 392 L%=0:Q$=MID$(Q$,6,(LENQ$)):IFQ$=""INPUT"Kill what?"Q$ 393 IFQ$="ANIMAL" AND R%=23 L%=6ELSE IF Q$="SERPENT" AND R%=35 L%=9 394 IFQ$="BABOONS" AND R%=64 L%=35ELSE IF Q$="VIPERS" AND R%=20 L%=36 398 IFL%=0ORB$(L%)="A PILE OF BONES"PRINT"That is not possible":ENDPROC 399 A%(R%,0)=0:B$(L%)="A PILE OF BONES":S%=S%+1:FORIL%=1 TO 4:A%(R%,IL%)=ABS A%(R%,IL%):NEXT:ENDPROC 400 IFR%<>36 PRINT"NOT YET. You're stabbing in the dark!":ENDPROC ELSE R%=35:ENDPROC 410 IFR%<>38 AND R%<>39 ENDPROC 412 IFQ$<>"WADE" THEN PRINT "NO. How do you move through deep mud?":ENDPROC 416 INPUT"WHICH WAY?"Q$:IF R%=39 IF Q$="N"ORQ$="W"ORQ$="E"R%=R%-1 ELSE IF R%=38 IF Q$="S"ORQ$="W"ORQ$="E"R%=R%+1 418 ENDPROC 420 IF R%<>55 AND R%<>54 AND R%<>48 THEN ENDPROC ELSE A$(R%)="ON A THIRD OF A RUNWAY":ENDPROC 430 IFB%(11)<>0 PRINT"Maybe having some keys would help!":ENDPROC:ELSE IF B%(12)<>55 AND B%(12)<>54 AND B%(12)<>48 PRINT"AIRCRAFT IN WRONG PLACE":ENDPROC 432 IF R%<>54 AND R%<>55 AND R%<>48 OR B%(12)<>R% PRINT"YOU ARE IN THE WRONG PLACE":ENDPROC 434 IF A$(55)="on undergrowth" OR A$(54)="on undergrowth" OR A$(48)="on undergrowth" THEN PRINT"RUNWAY NOT YET CLEAR":ENDPROC 436 IFR%=54 R$="CRASH ON TAKEOFF (NOT ENOUGH RUNWAY)":F%=1:ENDPROC 438 S%=S%+6:PROCWI:PROCEN 440 IFR%<>49 AND R%<>57 AND R%<>41 PRINT"What are you trying to do?" ELSE IFR%=49 R$="BRIDGE SNAPS":F%=1:ENDPROC 441 IFR%=57R%=41 ELSE IFR%=41 R%=57 442 ENDPROC 450 IFR%<>56 OR B%(11)<>0 PRINT "That is not possible.":ENDPROC 452 INPUT"WHICH WAY? N. E. W."Q$:IFQ$="N"R%=54:B%(12)=54 453 IFQ$="E"R%=48:B%(12)=48 454 IFQ$="W"R%=55:B%(12)=55 455 ENDPROC 460 IFR%<>60 PRINT"No!":ENDPROC ELSE IFB%(13)<>0 PRINT"You could if you had some food." ELSE PRINT"The bird flys off happy":B%(14)=-1:A%(60,3)=67:A%(60,4)=61:S%=S%+1:ENDPROC 461 R$="As you had no birdseed the bird ate you!":F%=1:ENDPROC 470 IFR%<>89 AND R%<>67 PRINT"Silly try there!":ENDPROC 471 IFB%(15)=0 OR B%(10)=0 THEN472 ELSE F%=1:R$="YOU FALL TO YOUR DEATH(NO ROPE)":ENDPROC 472 IFR%=89R%=67 ELSE R%=89 473 ENDPROC 480 IFB%(5)<>0 PRINT"Well if you had a spade that would help!" ELSE IFR%<>103 PRINT"Its no use doing that." ELSEB%(18)=103 481 ENDPROC 490 IFB%(17)<>0 PRINT"No!" ELSE B$(17)="LIT TORCH":FORL%=104 TO 119:A%(L%,0)=0:FOR IL%=1 TO 4:A%(L%,IL%)=ABS(A%(L%,IL%)):NEXT, 491 ENDPROC 500 IFR%<>20 AND R%<>21 AND R%<>104 PRINT"Where are you trying to go?" ELSE IFR%=20 R%=19 501 IFR%=21R%=20 502 IFR%=104R%=103 503 ENDPROC 510 IFR%=17R%=21:ENDPROC 511 IFR%=20R%=21:ENDPROC 512 IFR%=103 ANDB%(18)=103R%=104:ENDPROC 513 PRINT"NO WAY":ENDPROC 520 PRINT"You cannot move as it has gone dark.":ENDPROC 530 IFR%<>120 PRINT"WHY?":ENDPROC 531 IFA%(120,0)<>0:INPUT"YOU ARE TRAPPED BY A ROPE WHAT ARE YOU GOING TO DO NOW? "Q$:IFQ$="CUT ROPE":IF B%(21)=0:A%(120,0)=0:A%(120,1)=121:ENDPROC 532 IFA%(120,0)=0 ENDPROC ELSE IF B%(21)<>0 PRINT"HARD LUCK: YOU HAVE NO KNIFE":ENDPROC 533 ENDPROC 540 PRINT"YOU HAVE'NT GOT THE MAGIC BAT!":ENDPROC 550 PRINT"YOU HAVE:";:FORL%=0TO40:IFB%(L%)=0 PRINTB$(L%);","; 551 NEXT:PRINT:ENDPROC 560 PRINT"You can see nothing special.":ENDPROC 570 REM 580 REM 590 REM 600 D%=C%-27:IFA%(R%,D%)=0PRINT"NO WAY" ELSE IFA%(R%,D%)<0 GOTO(290+A%(R%,0)*10) ELSE R%=A%(R%,D%) 605 ENDPROC 610 PRINT"Either make a map or grovel a bit!":ENDPROC 620 INPUT"NAME TO SAVE, RETURN=INCADAT "FF$:IF FF$="" FF$="INCADAT" 621 U%=OPENOUTFF$:FORL%=0TO155:PRINT#U%,A$(L%),A%(L%,0),A%(L%,1),A%(L%,2),A%(L%,3),A%(L%,4):NEXT:FORL%=0TO40:PRINT#U%,B$(L%),B%(L%),C$(L%):NEXT:PRINT#U%,S%,R%,F%:CLOSE#U%:ENDPROC 630 INPUT"NAME TO LOAD, RETURN=INCADAT "FF$:IF FF$="" FF$="INCADAT" 631 U%=OPENINFF$:FORL%=0TO155:INPUT#U%,A$(L%),A%(L%,0),A%(L%,1),A%(L%,2),A%(L%,3),A%(L%,4):NEXT:FORL%=0TO40:INPUT#U%,B$(L%),B%(L%),C$(L%):NEXT:INPUT#U%,S%,R%,F%:CLOSE#U%:ENDPROC 640 V%=1:PRINT"O.K.":ENDPROC 650 V%=0:PRINT"Be like that then":ENDPROC 660 PRINT"O.K. S.A.E. to"'"C.J.R.":ENDPROC 700 DEFPROCBO:FORL%=0TO94:IFA%(L%,0)=3 FOR I%=1TO4:A%(L%,I%)=ABS A%(L%,I%):NEXT 710 NEXT:ENDPROC 730 DEFPROCSAYIT(SAY$):IF E%=1 OR V%=0 ENDPROC ELSE X%=SPK% MOD 256:Y%=SPK% DIV 256:$SPK%="*SAY "+SAY$:CALL&FFF7:ENDPROC