The Original Brent's Jungle Adventure

Applesoft BASIC with Apple IIgs machine language calls

10 HOME : TEXT :CH = 0:CV = 0: GOSUB 1120: GOSUB 1100:DD = 17024
11 R = 16384:CC = 0: HGR2 :S = 16496: POKE 254,0: POKE 255,0
12 PRINT : PRINT CHR$ (4);"bload text.bin,a$4000"
35 HGR : POKE 49234,0
40 F$ = "pi.me": GOSUB 2000:P = 4: GOSUB 2010:CH = 0:CV = 23:A$ = "Brent Thorington and friends _<_<PRESENT_>_>... ": GOSUB 1000: GOSUB 2010
45 A$ = "_R_RVersion 2 of Brents_<_<_R_RJUNGLE`ADVENTURE_>_>''''!_R_R": GOSUB 1000
50 FOR X = 1 TO 16: CALL S: NEXT X:CV = 7:A$ = "(1) Play it!_R(2) Credits_R(3) About us_R(4) Quit_R_R?:_I _N": GOSUB 1000
55 GET A$:CH = 2: GOSUB 1000: IF A$ = "2" THEN F$ = "pi.cred": GOSUB 2000: GET Z$:CV = 23: GOTO 45
60 IF A$ = "3" THEN GOTO 3050
70 IF A$ = "4" THEN TEXT : HOME : PRINT "Bye!": END
72 F$ = "pi.winner": GOSUB 2000:CV = 23:CH = 0:A$ = "Press a key: ": GOSUB 1000: GOSUB 3100:KN = 0
75 F$ = "pi.wood": GOSUB 2000:CV = 20:CH = 0:A$ = "You are in a dense tropical jungle._R(1) North_R(2) South_R?: ": GOSUB 1000 76 GOSUB 3100: ON VAL (A$) GOTO 80,90
79 GOTO 76
80 F$ = "pi.river": GOSUB 2000:CV = 18:CH = 0:A$ = "Peering through the thick foliage, you_Rcan make out a river flowing alongside_Ra wall with a door in it._R1) North_R2) South_R?: ": GOSUB 1000
85 GOSUB 3100: ON VAL (A$) GOTO 100,75
86 GOTO 85
90 F$ = "pi.cave": GOSUB 2000:CV = 18:CH = 0:A$ = "Water drips from the ceiling of this_Rjungle cave. Light from a brazier_Rilluminates the area."
91 GOSUB 1000: IF KN = 0 THEN A$ = " A knife is here.": GOSUB 1000
92 A$ = "_R1) Exit north": IF KN = 0 THEN A$ = A$ + "_R2) Get the knife"
93 A$ = A$ + "_R?: "
94 GOSUB 1000
95 GOSUB 3100: IF A$ = "1" THEN GOTO 75
96 IF A$ = "2" AND KN = 0 THEN KN = 1: GOTO 90
97 GOTO 95
100 F$ = "pi.door": GOSUB 2000:CV = 0:CH = 0:A$ = "This is the entry to the castle of the_R_<_<THANG_>_>, an evil creature who has a magic_Rstaff that it summons Mold Men with._R1) Go right in!_R2) Walk away_R?: ": GOSUB 1000
103 GOSUB 3100: ON VAL (A$) GOTO 110,80
104 GOTO 103
110 F$ = "pi.hall": GOSUB 2000:CV = 0:CH = 0:A$ = "Oh no! A Mold Man guarding the hallway'_R1) Fight it!_R2) Leave, quick!_R?: ": GOSUB 1000
111 GOSUB 3100: IF A$ = "2" THEN GOTO 100
112 GOSUB 3150
113 A$ = "_R_RYou can now go_R1) North_R2) East_R3) Or exit_R?: ": GOSUB 1000
114 GOSUB 3100: ON VAL (A$) GOTO 120,130,100
115 GOTO 114
120 F$ = "pi.lounge": GOSUB 2000:CV = 0:CH = 0:A$ = "You are in a well-lit lounge. From here_Ryou can go_R1) East_R2) South_R?: ": GOSUB 1000
121 GOSUB 3100: ON VAL (A$) GOTO 140,110
122 GOTO 121
130 F$ = "pi.room": GOSUB 2000:CV = 18:CH = 0:A$ = "You are in an empty room._RYou can go:_R1) North_R2) West_R?: ": GOSUB 1000
131 GOSUB 3100: ON VAL (A$) GOTO 140,110
132 GOTO 131
140 F$ = "PI.DINING": GOSUB 2000:CV = 0:CH = 0:A$ = "The only peice of furniture in this roomis a huge oaken table. You can go:_R1) North_R2) South_R3) East_R4) West_R?: ": GOSUB 1000
141 GOSUB 3100: ON VAL (A$) GOTO 150,130,160,120
142 GOTO 141
150 F$ = "pi.STUDY": GOSUB 2000
151 CV = 0:CH = 0:A$ = "From this well-furnished study_Ryou can go:_R1) South_R2) East_R?: ": GOSUB 1000
152 GOSUB 3100: ON VAL (A$) GOTO 140,170
153 GOTO 152
160 F$ = "pi.kitchen": GOSUB 2000
161 CV = 0:CH = 0:A$ = "Uh oh, theres a Mold Man making dinner!_R1) Attack!_R2) Run to the west!_R?: ": GOSUB 1000
162 GOSUB 3100: IF A$ = "2" THEN GOTO 140
163 IF A$ = "1" THEN GOSUB 3150: GOTO 165
164 GOTO 162
165 A$ = "Now you can depart to the_R1) West_R2) North_R?: ": GOSUB 1000
166 GOSUB 3100: ON VAL (A$) GOTO 140,170
167 GOTO 166
170 F$ = "pi.DOOR2": GOSUB 2000
171 A$ = "Agh! Another Mold Man!_R1) Retreat to the south_R2) Attack him'_R?: ": GOSUB 1000
172 GOSUB 3100: IF A$ = "1" THEN GOTO 160
173 IF A$ = "2" THEN GOSUB 3150: GOTO 175
174 GOTO 172
175 A$ = "_RNow you can go:_R1) West_R2) South_Ror_R3) North, through the door_R?: ": GOSUB 1000
176 GOSUB 3100: ON VAL (A$) GOTO 150,160,180
177 GOTO 176
180 F$ = "pi.last": GOSUB 2000:CV = 20:A$ = "Its the _<_<THANG_>_>'''''!_R1) Retreat_R2) Attack_R?: ": GOSUB 1000
181 GOSUB 3100: ON VAL (A$) GOTO 170,190
182 GOTO 181
190 CV = 0:CH = 0: IF KN = 0 THEN A$ = "You have no weapon'_RBefore you can remedy this problem,_Rthe _<_<THANG_>_> zaps you out of_Rexistence! _<_<GAME`OVER_>_>'!": GOSUB 1000: CALL DD:CV = 20: FOR X = 1 TO 24: CALL S: NEXT X: GOTO 45
195 A$ = "You stab the _<_<THANG_>_> with your_Rknife ... and it disappears in a flash_Rof lightning'! The knife was magic!_RGood work!": GOSUB 1000: CALL DD: GOTO 3000
999 END
1000 POKE 0,CV: FOR X = 1 TO LEN (A$): IF MID$ (A$,X,1) = "_" THEN X = X + 1: GOSUB 1050: NEXT X: RETURN
1010 POKE 1,CH: POKE 2, ASC ( MID$ (A$,X,1)) + CC: CALL R:CH = CH + 1: IF CH = RH THEN CH = LH:CV = CV + 1: POKE 0,CV: IF CV = BV THEN CV = BV - 1: GOSUB 1100: CALL S
1020 NEXT X: RETURN
1050 T$ = MID$ (A$,X,1):T = ASC (T$): IF T$ = ">" THEN CC = CC + 32: RETURN
1060 IF T$ = "<" THEN CC = CC - 32: RETURN
1065 IF T$ = "N" THEN POKE 255,0: RETURN
1067 IF T$ = "n" THEN POKE 255,128: RETURN
1070 IF T$ = "I" THEN POKE 255,127: RETURN
1075 IF T$ = "i" THEN POKE 255,255: RETURN
1090 IF T$ = "R" THEN CH = LH:CV = CV + 1: POKE 0,CV: IF CV = BV THEN CV = BV - 1: GOSUB 1100: CALL S
1095 RETURN
1100 POKE 3,LH: POKE 4,RH: POKE 5,TV: POKE 6,BV: RETURN
1110 LH = 0:RH = 40:TV = 20:BV = 24: RETURN
1120 LH = 0:RH = 40:TV = 0:BV = 24: RETURN
2000 PRINT : PRINT CHR$ (4);"bload ";F$;",a$2000": RETURN
2010 FOR Q = 1 TO P * 1000: NEXT Q: RETURN
3000 F$ = "pi.win": GOSUB 2000: CALL DD
3005 F$ = "pi.seya": GOSUB 2000:CV = 23:CH = 0:A$ = "Whats this about a Kings Curse II?":P = 4: GOSUB 2010: GOSUB 1000:A$ = "_R_R...Never mind...'"
3010 GOSUB 2010: GOSUB 1000: TEXT : HOME : PRINT "Bye!": PRINT : PRINT CHR$ (4);"BYE"
3050 A$ = "_R_RGlad you asked...": GOSUB 1000: FOR X = 0 TO 14: CALL S: NEXT X
3060 CV = 0:CH = 0:A$ = "_<_<ANDY_>_>, _<_<BRENT_>_>, and _<_<GARRETT_>_> are three_R": GOSUB 1000
3065 A$ = "15 year old _<_<APPLE`IIGS_>_> programmers_Rliving in the Santa Cruz area, who_Rlove to make STRANGE programs,_Rlike this one'_R_R": GOSUB 1000
3070 A$ = "Andy and Garrett BBS alot, and can be_Rfound on the Omni BBS, and XBBS. Brent_Ralso owns a modem, and lives up in the_Rhills, in a different area code._RHe hangs around on GS Express and bugs_Rthe Sysop alot.": GOSUB 1000
3075 A$ = "_R_RThe pictures in this game were drawn_Rby Brent, who also thought of the plot,_Rand the main program was put together byGarrett. (Brent doesnt like his own_R": GOSUB 1000
3080 A$ = "drawings, but Garrett thought these weregreat abstract art, and decided to use_Rthem anyway.) Andy was playtester for_Rthis game.": GOSUB 1000
3082 A$ = "_RNote: no, contrary to the title page, Brent does NOT wear earrings''!": GOSUB 1000
3085 A$ = "_RPress a key": GOSUB 1000
3090 CALL DD: CALL S: CALL S: GOTO 45
3100 CH = CH - 1:A$ = "_I _N": GOSUB 1000: GET A$:CH = CH - 1: GOSUB 1000: RETURN
3150 MM = INT ( RND (1) * 10) + 1: IF MM > 8 THEN POP :A$ = "_R_R_ROH NO' _<_<AAAAAAAAAAAAAAARRRGHH_>_>''''!": GOSUB 1000: GOTO
3156
3155 A$ = "_RHooray! You killed him!": GOSUB 1000: RETURN
3156 FOR X = 1 TO 30: CALL 18432:DAM = PEEK (2 * 24600):DAM = PEEK (49202 - 2): NEXT X: FOR X = 1 TO 24: CALL S: NEXT X
3157 CV = 12:A$ = "_RHe killed you! GAME OVER'": GOSUB 1000: CALL DD:CV = 23: GOTO 45