TUCoPS :: Dialup BBSes :: allprove.txt

Proving Grounds: BASIC Sources for the legendary Proving Grounds BBS

     
]CATALOG

C1982 DSR C#254

 T 005 ADV.SOLVE                     
 T 017 ARMOR                         
 T 002 BDATA                         
 T 002 BOARDS                        
 T 004 BRD.MENU                      
 T 004 BUY.INFO                      
 T 009 CASTLE.DES                    
 T 002 CASTLES                       
 B 003 CHAIN                         
 T 003 CNTRL.CHAR                    
 T 004 CONFIG                        
 T 002 DATA                          
 T 001 DOWNS                         
 B 014 DRIVER                        
 B 002 DRIVER DATA                   
 T 010 FACTS                         
 T 006 FEES                          
 A 002 HELLO                         
 T 018 HELP                          
 T 024 HELP.Split Infinity           
 T 008 INFO                          
 T 012 LEVELS                        
 T 006 MENU                          
 T 003 MENU.ADV                      
 T 002 MODULES                       
 T 008 NEW                           
 T 001 NEWS                          
 T 004 OFF1                          
 T 034 OWNERS HELP                   
 T 007 PGL                           
 T 006 PRELUDE.Split Infinity        
 T 002 QSCAN                         
 T 002 RANK                          
 A 030 RESET1                        
 T 003 SETVALUES                     
 T 006 SPELLS                        
 A 041 START                         
 T 003 STATS                         
 T 004 TIMESLOTS                     
 T 002 VOTING                        
 T 002 VOTING.TOP                    
 T 017 WEAPONS                       

]         PR#0
]CATALOG

C1982 DSR C#254

 A 048 BRD                           
 A 019 CASTLE EDITOR                 
 A 024 CHAT                          
 A 043 COMPLETE EDITOR               
 A 070 FIGHT                         
 A 031 GA                            
 A 021 JOUST                         
 A 024 MA                            
 A 074 MAIN                          
 A 013 OFF                           
 A 002 START                         
 A 022 STORES                        
 T 001 VC                            

]PR#0
]CATALOG

C1982 DSR C#254

 A 083 ADVENT                        
 A 006 ASTART                        
 T 031 CHAR                          
 T 141 DES                           
 T 004 ITEMS                         
 T 049 MONSTERS                      
 T 122 SHD                           
 T 049 USE                           

]PR#0
]LIST

 5  IF TC$ = "Y" THEN  POKE 1014,0: POKE 952,240: POKE 953,253
 10  GOSUB 50
 20  CALL 54915
 30  ONERR  GOTO 8700
 40  GOTO 8710
 50 B$(3) = "strike":B$(4) = "hit":B$(5) = "slam":B$(6) = "rag":B$(7) = "smite":
B$(8) = "slash"
 60  RETURN 
 70  GOSUB 8300:O$ = DL$ + "[T/" +  STR$ (TL) + "][?=Menu]->": GOSUB 6000:C$ = "
P"
 80  CALL 54915
 90  IF EN > 0 THEN EN = EN + 1
 100  IF EN = 4 THEN O$ = EL$ + "Kaboom!  Well, you killed the Black     Adept a
nd destroyed his army but you    died in the process.  So you haven't    really 
won.  Sorry!" + EL$:R = 30: GOSUB 7000: GOTO 8390
 110 PR = R
 120  IF I$ <  > "B" THEN 200
 130  IF I$ = "B" AND MO$ <  > "C" THEN O$ = EL$ + "There is Nobody here to Brib
e!": GOSUB 7000: GOTO 70
 140 O$ = EL$ + "Enter Amount of Bribe $": GOSUB 6000
 150 X =  VAL (I$)
 160  IF X < 0 OR X > GD THEN O$ = EL$ + YO$ + EL$: GOSUB 7000: GOTO 140
 170 GD = GD - X:BR = BR - X
 180  IF BR > 0 THEN O$ = EL$ + "Gee thanx.  Maybe now I can buy a piece of gum.
  I want more!": GOSUB 7000: GOTO 70
 190  GOTO 9370
 200  IF I$ = "Z" THEN 3500
 210  IF I$ = "P" THEN  POKE 1,128:O$ = DL$ + "What is it concerning(40 Char. Ma
x)?" + DL$: GOSUB 6000: VTAB (4): PRINT I$:O$ = EL$ + "If I am around I'll answe
r.": GOSUB 7000: HOME : POKE 1,0: GOTO 70
 220  IF I$ <  > "T" THEN 260
 230  IF MO$ <  > "C" THEN O$ = EL$ + "There Is Nobody Here!": GOSUB 7000: GOTO 
70
 240  IF BR > 0 THEN O$ = EL$ + "Give me " +  STR$ (BR) + " Gold and I'll talk."
: GOSUB 8540: GOSUB 7000: GOTO 70
 250  GOTO 9370
 260  IF I$ <  > "J" THEN 290
 270  IF SH = 0 THEN O$ = EL$ + "There isn't any shop here!": GOSUB 7000: GOTO 7
0
 280 J$ =  STR$ (SH):A$ = ST$: GOSUB 9570: CALL 35848"STORES"
 290  IF I$ = "U" THEN 3130
 300  IF I$ = "V" THEN 3680
 310  IF I$ = "G" THEN 2960
 320  IF I$ = "?" THEN F$ = "MENU.ADV": GOSUB 2880: GOTO 70
 330  IF I$ = "D" THEN 3070
 340  IF I$ <  > "O" THEN 370
 350 O$ = EL$ + "Leave the Adventure?->": GOSUB 6000: IF I$ <  > "Y" THEN 70
 360  GOTO 8390
 370  IF I$ = "L" THEN 8710
 380  IF CH$ = "" AND I$ = "K" THEN O$ = EL$ + "There isn't a Chest Here!": GOSU
B 7000: GOTO 70
 390  IF I$ = "K" THEN 2780
 400  IF I$ = "N" OR I$ = "S" OR I$ = "E" OR I$ = "W" THEN 9180
 410  IF I$ <  > "I" THEN 470
 420 O$ = "":Y = 0
 430  FOR X = 1 TO 10
 440  IF I$(X) <  > "Blank" THEN O$ = O$ + EL$ + I$(X):Y = Y + 1
 450  NEXT 
 460 O$ = O$ + DL$ + "You have " +  STR$ (10 - Y) + " Spaces Free.": GOSUB 7000:
 GOTO 70
 470  IF I$ = "Y" THEN  GOSUB 2200
 480  IF I$ = "C" THEN 1620
 490  IF I$ = "H" THEN  GOSUB 8650: GOTO 70
 500  IF I$ <  > "F" THEN EN = EN - 1: GOTO 70
 510  IF BR$ = "On" THEN BR$ = "Off": GOTO 530
 520 BR$ = "On"
 530 O$ = EL$ + "Brief is now " + BR$: GOSUB 7000
 540  GOTO 70
 550 Y = 0
 560  GOSUB 50
 570 O$ = EL$ + "You hear footsteps from a nearby room.  They are coming in your
 direction....." + EL$: GOSUB 7000
 580 X =  INT (US *  RND (1)) + 1
 590  PRINT D$"OPENSTATS,L200"C$(15)
 600  PRINT D$"READSTATS,R"X
 610  INPUT B$(1),B$(2),A1,A2,A3,A4,A5,A6,A7,A8,A9
 620  IF A2 < 0 THEN A2 = A2 - (A2 * 2)
 630  IF A7 < 0 THEN A7 = A7 - (A7 * 2)
 640 S1 =  - 1:S2 =  - 1
 650  PRINT D$"CLOSE"
 660  IF Y = 15 THEN O$ = EL$ + "Jeez...Must have been your imagination.": GOSUB
 7000: GOTO 70
 670  IF B$(2) <  > "On" OR B$(1) = "EMPTY" OR B$(1) = "Empty" OR A = X THEN Y =
 Y + 1: GOTO 580
 680  GOSUB 9610
 690 O$ = EL$ + B$(1) + " walks into the room and draws his weapon!"
 700  GOSUB 8540: GOSUB 7000
 710 O$ = DL$: GOSUB 7000
 720  IF AG > A2 THEN O$ = "You get first attack!": GOSUB 7000: GOTO 1090
 730 O$ = "He gets first Attack!": GOSUB 7000
 740 O$ = DL$: GOSUB 7000:X =  INT (3 *  RND (1)) + 1: IF X = 2 THEN 1870
 750  IF A2 > 50 THEN 890
 760 G(1) = A3 + A2
 770 G(2) =  INT ((WE + AG) *  RND (1)) + 1
 780 AM =  INT ((A7 + A2 + (2 * MP)) *  RND (1)) + 1: IF AR > AM THEN O$ = "Your
 " + AM$ + " Absorbes the Damage!": GOSUB 8540: GOSUB 7000: GOTO 1090
 790  IF G(2) < G(1) THEN 890
 800 X =  INT (5 *  RND (1)) + 1
 810  IF X = 1 THEN O$ = B$(1) + " swings at you with his " + MW$ + " and misses
!"
 820  IF X = 2 THEN O$ = "You duck skillfully under his blow!"
 830  IF X = 3 THEN O$ = "He swings at you but you jump nimbly aside!"
 840  IF X = 4 THEN O$ = B$(1) + "s " + MW$ + " flies over your head just missin
g you!"
 850  IF X = 5 THEN O$ = "His weapon misses you by a mile!"
 860  GOSUB 8540
 870  GOSUB 7000
 880  GOTO 1090
 890 G(3) = (A7 / 25) + 1:G(3) = (G(3) * MP)
 900 G(8) = 0
 910 G(5) = G(3) * (AP * (1 / 100))
 920 G(3) = G(3) - G(5)
 930 G(4) = G(3) / 4:G(3) = G(3) - (G(4) *  RND (1)) + G(4)
 940 G(3) =  INT (G(3))
 950 X =  INT (5 *  RND (1)) + 3
 960  IF G(6) > 0 THEN G(6) = G(6) - 1:G(3) =  INT (G(3) - (G(3) / 3))
 970  IF G(8) = 0 THEN 990
 980  IF MO$ = "Y" THEN O$ = B$(1) + " casts a " + S$(G(8)) + " spell which " + 
B$(X) + "s you doing " +  STR$ (G(3)) + " damage.": GOSUB 8540: GOSUB 7000: GOTO
 1020
 990 O$ = B$(1) + " " + B$(X) + "s you with his " + MW$ + " doing " +  STR$ (G(3
)) + " damage."
 1000  GOSUB 8540
 1010  GOSUB 7000
 1020 HP = HP - G(3): IF HP > 0 THEN 1090
 1030 O$ = DL$ + B$(1) + " has killed you!" + DL$ + "He gets all your gold!" + E
L$
 1040  GOSUB 7000
 1050  IF S1 < 0 THEN O$ = EL$ + "Your Lucky!  You don't get logged off   if you
 are killed by another user.": GOSUB 7000:HP = TH:PO = TP: GOTO 70
 1060 GD = 0: IF B$ = "Y" AND B$(1) = "A Black Adept" THEN O$ = EL$ + "You have 
been Resurrected!" + EL$ + EL$ + "You feel your body shit positions..." + EL$ + 
EL$ + "[Press Return]":CR = 1: GOSUB 7000: GOSUB 8000:B$ = "N":HP = TH:PO = TP:R
 = 30:B$(1) = "": GOTO 10
 1070  IF B$ = "Y" THEN O$ = EL$ + "You have been Resurrected!": GOSUB 7000:FI$ 
= "On":B$ = "N":HP = TH:PO = TP: GOTO 70
 1080 R = 30: GOTO 8390
 1090 O$ = DL$ + "F)ight C)ast R)un H)ealth S)tats->": GOSUB 6000:C$ = "W"
 1100  IF I$ = "R" THEN O$ = EL$ + "You throw down all your gold to divert  the 
creature and take off!" + DL$:GD = 0: GOSUB 7000:R = PN: GOTO 8710
 1110  IF I$ = "S" THEN  GOSUB 2200
 1120  IF I$ = "H" THEN  GOSUB 8650: GOTO 1090
 1130  IF I$ = "F" THEN O$ = EL$: GOSUB 7000: GOTO 1160
 1140  IF I$ = "C" THEN 1620
 1150  GOTO 1090
 1160  IF AG > 50 THEN 1300
 1170 G(1) = WE + AG
 1180 G(2) =  INT ((A3 + A2) *  RND (1)) + 1
 1190 AM =  INT ((ST + AG + (2 * HT)) *  RND (1)) + 1: IF A4 > AM THEN O$ = "His
 " + MH$ + " Absorbes the Damage!": GOSUB 8540: GOSUB 7000: GOTO 740
 1200  IF G(1) > G(2) THEN 1300
 1210 X =  INT (5 *  RND (1)) + 1
 1220  IF X = 1 THEN O$ = "You swing at him with your " + WP$ + " but he jumps n
imbly aside."
 1230  IF X = 2 THEN O$ = "He ducks skillfully under your blow!"
 1240  IF X = 3 THEN O$ = "You lunge at him but he ducks under your blow!"
 1250  IF X = 4 THEN O$ = "Your " + WP$ + " misses him by a mile!"
 1260  IF X = 5 THEN O$ = "Your " + WP$ + " flies over his head!"
 1270  GOSUB 8540
 1280  GOSUB 7000
 1290  GOTO 740
 1300 G(3) = (ST / 25) + 1:G(3) = (G(3) * HT)
 1310 G(5) = G(3) * (MH * (1 / 100))
 1320 G(3) = G(3) - G(5)
 1330 G(4) = G(3) / 4:G(3) = G(3) - (G(4) *  RND (1)) + G(4)
 1340 G(3) =  INT (G(3))
 1350 X =  INT (6 *  RND (1)) + 3
 1360  IF I$ = "C" THEN O$ = "Your " + S$(Y) + " spell " + B$(X) + "s the monste
r doing " +  STR$ (G(3)) + " damage!": GOSUB 8540: GOSUB 7000: GOTO 1400
 1370 O$ = "You " + B$(X) + " him with your " + WP$ + " doing " +  STR$ (G(3)) +
 " damage!"
 1380  GOSUB 8540
 1390  GOSUB 7000
 1400 A9 = A9 - G(3): IF A9 > 0 THEN 740
 1410 O$ = DL$ + "You've killed " + B$(1) + "!" + EL$
 1420 O$ = O$ + EL$ + "You gain " +  STR$ (A6) + " gold and " +  STR$ (A5) + " e
xp!" + EL$: GOSUB 7000
 1430 GD = GD + A6:EX = EX + A5:A9 = A8:A6 = 0:B$(2) = "Dead"
 1440 O$ = EL$: GOSUB 7000
 1450  IF D5 < 1 THEN 1470
 1460 MF$ = MF$ +  STR$ (1000 - R)
 1470  GOTO 70
 1480 X = (X * 20) + 1
 1490 X =  INT (20 *  RND (1)) + X
 1500  GOSUB 50
 1510  IF D5 =  - 11 AND I$ = "GUARD" THEN  RETURN 
 1520  PRINT D$"OPENMONSTERS,L60"C$(9)
 1530  PRINT D$"READMONSTERS,R"X
 1540  INPUT B$(1),A7,A2,A8,A3,A4,A6,S1,S2,A9
 1550  PRINT D$"CLOSE"
 1560 A5 = (((A9 / TH) * 8) / 100) * EX:A5 =  INT (A5) + 100
 1570 NE$ = "N"
 1580  GOSUB 9610
 1590  IF I$ = "Black Adept" THEN B$(1) = I$:A9 = A9 * 3
 1600  IF I$ = "GUARD" THEN B$(1) = "Guard"
 1610 O$ = EL$ + "A vicious " + B$(1) + " attacks you!": GOSUB 8540: GOSUB 7000:
B$(1) = "A " + B$(1): GOTO 710
 1620  IF NE$ = "Y" THEN O$ = EL$ + "Sorry, Negate has been activated.  All  spe
lls are impotent.": GOSUB 7000: GOTO 1090
 1630 O$ = EL$ + "Cast(?): ": GOSUB 6000
 1640  IF I$ <  > "?" THEN O$ = I$: GOSUB 9620: GOTO 1690
 1650 O$ = EL$ + "Name / Quantity / Power Required" + EL$ + "-------------------
-------------" + DL$: GOSUB 7000
 1660  FOR X = 1 TO SN: IF S(X) > 0 THEN O$ = S$(X) + "-" +  STR$ (S(X)) + " (" 
+  STR$ (X * 2) + ")" + EL$: GOSUB 7000
 1670  NEXT 
 1680  GOTO 1620
 1690  FOR X = 1 TO SN: IF S$(X) = B$(0) THEN 1720
 1700  NEXT 
 1710 O$ = EL$ + "There is no such spell!": GOSUB 7000: GOTO 8680
 1720  IF S(X) = 0 THEN O$ = EL$ + "You don't have that spell!": GOSUB 7000: GOT
O 8680
 1730  IF B$(1) = "A Black Adept" THEN O$ = EL$ + "Your spells don't seem to wor
k on the   Black Adept!" + EL$: GOSUB 7000: GOTO 1090
 1740  IF C$ = "P" AND U(X) <  > 0 THEN O$ = EL$ + "Not a Peace Time spell!": GO
SUB 7000: GOTO 70
 1750  IF C$ = "P" THEN 1970
 1760  IF S$(X) = "Death" OR S$(X) = "Teleport" OR S$(X) = "Negate" THEN 1780
 1770  IF U(X) < 1 THEN O$ = EL$ + "Not a Battle spell!": GOSUB 7000: GOTO 1090
 1780  IF PO < (X * 2) THEN O$ = EL$ + "You don't have enough power!": GOSUB 700
0: GOTO 1090
 1790 PO = PO - (X * 2)
 1800 S(X) = S(X) - 1
 1810 O$ = EL$ + "Alakazam!" + DL$: GOSUB 7000:I$ = "C"
 1820  IF S$(X) = "Teleport" THEN R = PN: GOTO 8710
 1830 Y = X
 1840  IF S$(X) = "Death" THEN G(3) = A9 / 2: GOTO 1340
 1850  IF S$(X) = "Negate" THEN NE$ = "Y":O$ = "Negate has been activated.  All 
magical spells are impotent for the duration of this battle.": GOSUB 7000: GOTO 
760
 1860 G(3) = (WI / 25) + 1:G(3) = (G(3) * U(X)): GOTO 1310
 1870  IF S1 < 2 OR S2 < 2 OR NE$ = "Y" THEN 760
 1880 G(8) = 0
 1890  IF S1 < 2 THEN G(8) = S2
 1900  IF S2 < 2 THEN G(8) = S1
 1910  IF G(8) <  > 0 THEN 1950
 1920 X =  INT (2 *  RND (1)) + 1
 1930  IF X = 1 THEN G(8) = S1
 1940  IF X = 2 THEN G(8) = S2
 1950  IF S$(G(8)) = "Death" THEN G(3) = HP / 2: GOTO 940
 1960 G(3) = (A8 / 25) + 1:G(3) = (G(3) * U(G(8))): GOTO 910
 1970  IF PO < (X * 2) THEN O$ = EL$ + "You don't have enough power!": GOSUB 700
0: GOTO 70
 1980  IF B$ = "Y" AND S$(X) = "Resurrect" THEN O$ = EL$ + "Resurrect has alread
y been Activated." + EL$: GOSUB 7000: GOTO 70
 1990 PO = PO - (X * 2):S(X) = S(X) - 1
 2000 O$ = EL$ + "Alakazam!!!" + EL$: GOSUB 7000
 2010  IF S$(X) = "Inviso" THEN G(0) = G(0) + 15:O$ = EL$ + "Inviso has been Act
ivated" + DL$ + "Estimated lasting time [" +  STR$ (G(0)) + "] Moves": GOSUB 700
0: GOTO 70
 2020  IF S$(X) <  > "Protect" AND S$(X) <  > "Super Protect" THEN 2060
 2030  IF S$(X) = "Protect" THEN G(6) = G(6) + 10:O$ = "Protect "
 2040  IF S$(X) = "Super Protect" THEN G(6) = G(6) + 20:O$ = "Super Protect "
 2050 O$ = EL$ + O$ + "has been Activated" + DL$ + "Estimated Lasting Time [" + 
 STR$ (G(6)) + "] Hits": GOSUB 7000: GOTO 70
 2060  IF S$(X) = "Resurrect" THEN B$ = "Y":O$ = EL$ + "Resurrect has been Activ
ated." + EL$: GOSUB 7000: GOTO 70
 2070  IF S$(X) = "Super Increase" THEN HP = TH * 2:PO = TP * 2:O$ = EL$ + "Hit 
Points = " +  STR$ (HP) + "!" + DL$ + "Power = " +  STR$ (PO) + "!" + EL$: GOSUB
 7000: GOTO 70
 2080  IF S$(X) <  > "Increase" THEN 2130
 2090 O$ = EL$ + "[H/it points-P/ower]->": GOSUB 6000: IF I$ <  > "H" AND I$ <  
> "P" THEN 2090
 2100  IF I$ = "H" THEN HP = TH * 2:O$ = EL$ + "Hit points = " +  STR$ (HP)
 2110  IF I$ = "P" THEN PO = TP * 2:O$ = EL$ + "Power = " +  STR$ (PO)
 2120 O$ = O$ + "!": GOSUB 7000: GOTO 70
 2130  IF S$(X) = "Cure Light Wounds" THEN G(3) =  INT (10 *  RND (1)) + 1:G(4) 
=  INT (10 *  RND (1)) + 1
 2140  IF S$(X) = "Cure Severe Wounds" THEN G(3) =  INT (20 *  RND (1)) + 10:G(4
) =  INT (20 *  RND (1)) + 10
 2150  IF S$(X) = "Cure All Wounds" THEN HP = TH:PO = TP:O$ = EL$ + "All hit poi
nts and power restored!": GOSUB 7000: GOTO 70
 2160 O$ = EL$ + "Hit points +" +  STR$ (G(3)) + DL$ + "Power +" +  STR$ (G(4)):
HP = HP + G(3):PO = PO + G(4): IF HP > TH THEN HP = TH
 2170  IF PO > TP THEN PO = TP
 2180  GOSUB 7000
 2190  GOTO 70
 2200 O$ = EL$ + "Strength: " +  STR$ (ST) + EL$ + "Wisdom: " +  STR$ (WI) + EL$
 + "Agility: " +  STR$ (AG) + EL$ + "Intelligence: " +  STR$ (CH) + EL$ + EL$ + 
"Gold: " +  STR$ (GD) + EL$ + "Exp: " +  STR$ (EX) + EL$ + EL$ + "Weapon: " + WP
$ + EL$ + "Armor: " + AM$ + EL$
 2210 O$ = O$ + EL$ + "Protection Left: " +  STR$ (G(6)) + " Hits"
 2220 O$ = O$ + EL$ + "Inviso Left: " +  STR$ (G(0)) + " Moves"
 2230 O$ = O$ + EL$ + "Ressurect: ": IF B$ = "Y" THEN O$ = O$ + "On": GOTO 2250
 2240 O$ = O$ + "Off"
 2250 O$ = O$ + EL$: GOSUB 7000
 2260  RETURN 
 2270 B$(0) = "There is a Force Field to the "
 2280  IF D1 < 0 THEN O$ = EL$ + B$(0) + "North." + EL$: GOSUB 7000
 2290  IF D2 < 0 THEN O$ = EL$ + B$(0) + "South." + EL$: GOSUB 7000
 2300  IF D3 < 0 THEN O$ = EL$ + B$(0) + "West." + EL$: GOSUB 7000
 2310  IF D4 < 0 THEN O$ = EL$ + B$(0) + "East." + EL$: GOSUB 7000
 2320  IF  LEN (OB$) = 0 THEN 2370
 2330  FOR X = 1 TO 10
 2340  IF I$(X) = OB$ OR OB$ = WP$ OR OB$ = AM$ THEN O$ = "": GOTO 2370
 2350  NEXT 
 2360 O$ = EL$ + "There is a " + OB$ + " lying on the ground." + EL$: GOSUB 8540
: GOSUB 7000
 2370  IF I$ = "L" AND CH$ = "Y" THEN O$ = EL$ + "There is a Chest in the Room."
 + EL$: GOSUB 7000
 2380  IF MO$ = "C" AND I$ = "L" THEN O$ = EL$ + "There is a " + TR$ + " in the 
Room." + EL$: GOSUB 8540: GOSUB 7000
 2390  IF I$ = "L" THEN 70
 2400  IF D5 =  - 8 AND B$ = "Y" THEN B$(1) = "A Black Adept": GOTO 1060
 2410  IF D5 =  - 8 THEN O$ = EL$ + "You Are Dead!" + EL$: GOSUB 7000: GOTO 1080

 2420  IF D5 < 1 OR D5 > 199 THEN 2480
 2430  IF  LEN (MF$) < 3 THEN 2470
 2440  FOR X = 1 TO  LEN (MF$) STEP 3
 2450  IF  VAL ( MID$ (MF$,X,3)) = 1000 - R THEN X = 11:I$ = "": GOTO 2630
 2460  NEXT 
 2470  IF D5 > 0 THEN MO$ = "Y":X = D5: GOTO 1500
 2480 CH$ = "":X =  INT (35 *  RND (1)) + 1
 2490  IF D5 =  - 1 THEN X = 11
 2500  IF D5 <  >  - 2 THEN 2560
 2510  IF  LEN (TF$) < 3 THEN 2550
 2520  FOR X = 1 TO  LEN (TF$) STEP 3
 2530  IF  VAL ( MID$ (TF$,X,3)) = 1000 - R THEN X = 11:I$ = "": GOTO 2560
 2540  NEXT 
 2550 X = 22
 2560  IF D5 =  - 3 OR D5 =  - 7 THEN X = 29
 2570  IF D5 =  - 4 THEN X = 35
 2580  IF D5 =  - 5 THEN X = 1
 2590  IF D5 =  - 14 THEN X = L - 1:I$ = "Black Adept": GOSUB 1480:D5 = X: GOTO 
2430
 2600  IF D5 =  - 11 THEN X = L - 1:I$ = "GUARD": GOSUB 1480:D5 = X: GOTO 2430
 2610  IF D5 > 199 THEN MO$ = "Y": GOTO 9370
 2620  IF ((X > 0 AND X < 11) OR (X > 30 AND X < 36)) AND D5 <  >  - 5 AND D5 < 
 >  - 4 AND G(0) > 0 THEN X = 11
 2630  IF X > 0 AND X < 11 THEN X = L - 1:MO$ = "Y": GOTO 1480
 2640  IF X > 10 AND X < 21 THEN 70
 2650 B(0) = X
 2660 X = L * L * 10
 2670 Y = X / 2
 2680 K =  INT (Y *  RND (1)) + (X - (X / 2))
 2690 T =  INT (LE * L + 1)
 2700  IF B(1) =  - 99 THEN B(1) = 0: RETURN 
 2710  IF B(0) > 20 AND B(0) < 26 THEN CH$ = "Y":O$ = EL$ + "There is a Chest In
 the Room.": GOSUB 7000: GOTO 70
 2720  IF B(0) > 30 AND B(0) < 36 THEN MO$ = "": GOTO 550
 2730 O$ = EL$ + "You walk into a Trap!": GOSUB 7000
 2740  IF D5 =  - 7 THEN 2770
 2750 B(0) =  INT (100 *  RND (1)) + 1
 2760  IF AG > B(0) THEN O$ = DL$ + "You quickly jump aside!": GOSUB 7000: GOTO 
70
 2770 B(0) = 2: GOTO 2840
 2780 B(0) =  INT (3 *  RND (1)) + 1
 2790 O$ = EL$ + "You open the Chest!":CH$ = "": GOSUB 7000
 2800 B(1) =  - 99: GOSUB 2660
 2810 O$ = DL$ + "You find "
 2820  IF D5 =  - 2 THEN B(0) = 1:TF$ = TF$ +  STR$ (1000 - R)
 2830  IF B(0) = 1 THEN K = K * L * L * 5:O$ = O$ + "Treasure!" + DL$ + "Gold + 
" +  STR$ (K):GD = GD + K: GOSUB 7000: GOTO 70
 2840  IF B(0) = 2 THEN O$ = DL$ + "There is an Explosion!" + DL$ + "Hit Points 
-" +  STR$ (T):HP = HP - T: GOSUB 7000: IF HP < 1 THEN HP = 0:MO$ = "Y": IF HP =
 0 THEN O$ = DL$ + "You are Dead!": GOSUB 7000: GOTO 1070
 2850  IF B(0) = 2 THEN X =  INT (5 *  RND (1)) + 1: IF X = 3 OR D5 =  - 7 THEN 
O$ = DL$ + "You Are Poisoned!":PO$ = "Y": GOSUB 7000
 2860  IF B(0) = 2 THEN 70
 2870 O$ = O$ + "Ash!" + DL$ + "Hit Points + " +  STR$ (T):HP = HP + T: GOSUB 70
00: GOTO 70
 2880  PRINT D$"OPEN"F$C$(17)
 2890  PRINT D$"READ"F$
 2900  & C: IF  PEEK (960) =  PEEK (971) AND RT <  > 3 THEN  POKE 960,0: GOTO 29
00
 2910  IF  PEEK (960) =  PEEK (970) AND RT = 5 THEN  POKE 960,0: GOTO 2900
 2920  PRINT  CHR$ (4)"CLOSE": IF  PEEK (960) = 255 THEN 60
 2930  IF  PEEK (960) =  PEEK (970) THEN  POKE 960,3:O$ = EL$: GOTO 7000
 2940  IF  PEEK (960) =  PEEK (971) THEN  POKE 960,2
 2950  RETURN 
 2960  IF  LEN (OB$) = 0 THEN O$ = EL$ + "There is Nothing to Get!": GOSUB 7000:
 GOTO 70
 2970  IF  LEN (OB$) < 7 THEN 3010
 2980  FOR X = 1 TO SN
 2990  IF S$(X) =  LEFT$ (OB$, LEN (OB$) - 6) THEN 3050
 3000  NEXT 
 3010  FOR X = 1 TO 10: IF I$(X) = "Blank" THEN 3040
 3020  NEXT 
 3030 O$ = EL$ + "You can't Carry any more!": GOSUB 7000: GOTO 70
 3040 O$ = EL$ + "You Get the " + OB$ + ".": GOSUB 8540: GOSUB 7000:I$(X) = OB$:
OB$ = "":AB$ = "": GOTO 70
 3050  IF S(X) > 8 THEN O$ = EL$ + "You can't have more than 9 of any       Spel
l!": GOSUB 7000: GOTO 70
 3060 S(X) = S(X) + 1:O$ = EL$ + "You pick up the " + OB$ + " and quickly learn 
it.":OB$ = "": GOSUB 8540: GOSUB 7000:FS$ = FS$ +  STR$ (1000 - R): GOTO 70
 3070 O$ = EL$ + "What?:": GOSUB 6000:O$ = I$: GOSUB 9620:I$ = B$(0)
 3080  FOR X = 1 TO 10
 3090  IF I$(X) = I$ THEN 3120
 3100  NEXT 
 3110 O$ = EL$ + "You don't have that item!": GOSUB 7000: GOTO 70
 3120 O$ = EL$ + "As you drop the " + I$(X) + " it dissapears!":I$(X) = "Blank":
 GOSUB 8540: GOSUB 7000: GOTO 70
 3130 O$ = EL$ + "Use What?->": GOSUB 6000:O$ = I$: GOSUB 9620:I$ = B$(0)
 3140  FOR X = 1 TO 10
 3150  IF I$(X) = I$ THEN 3180
 3160  NEXT 
 3170 O$ = EL$ + "You Don't have that Item!": GOSUB 7000: GOTO 70
 3180  IF I$ = "Bottle Of Holy Water" THEN O$ = EL$ + "You open the bottle and d
rink deeply.   You feel faint, and briefly pass out.   When you awake, the bottl
e is gone.":HP = TH * 3:PO = TP * 3: GOSUB 7000:I$(X) = "Blank": GOTO 70
 3190  IF R = 85 AND I$ = "Thermonuclear Bomb" THEN EN = 1
 3200  IF I$ = "Magic Potion" THEN O$ = EL$ + "You open the bottle and drink dep
ly. A  Brief warmth comes over your body.  The bottle then dissapears.":PO$ = "N
":I$(X) = "Blank": GOSUB 7000: GOTO 70
 3210  IF I$ <  > "Box Of Teleportation" THEN 3280
 3220 O$ = EL$ + "A) Set Coordinates" + EL$ + "B) Teleport" + DL$ + "Which(Q=Qui
t)->": GOSUB 6000: IF I$ = "Q" THEN 70
 3230  IF I$ <  > "A" AND I$ <  > "B" THEN 3220
 3240  IF I$ = "B" AND TC = 0 THEN O$ = EL$ + "You have not set the coordinates 
for    a location yet!": GOSUB 7000: GOTO 70
 3250  IF EN > 0 AND I$ = "B" THEN O$ = EL$ + "Bleep....Oh NO!  Something is aff
ecting the Box!  It won't work!": GOSUB 7000: GOTO 70
 3260  IF I$ = "B" THEN R = TC:O$ = EL$ + "Poof!" + EL$: GOSUB 7000: GOTO 8710
 3270  IF I$ = "A" THEN TC = R:O$ = EL$ + "You set the Coordinates for this room
.": GOSUB 7000: GOTO 70
 3280  IF I$ <  > BO$ THEN O$ = EL$ + "Nothing Happens.": GOSUB 7000: GOTO 70
 3290  PRINT D$"OPENUSE,L110"C$(29)
 3300  PRINT D$"READUSE,R"R
 3310  INPUT D6,D7,D8,D9,RR,AB$,B$(0),O$,A$(0)
 3320  PRINT D$"CLOSE"
 3330 O$ = EL$ + O$ + EL$ + A$(0) + EL$: GOSUB 7000
 3340  IF B$(0) <  > "N" THEN 3370
 3350  FOR X = 1 TO 10: IF I$(X) = I$ THEN I$(X) = "Blank"
 3360  NEXT 
 3370  IF  LEN (AB$) = 0 THEN 3430
 3380  IF  RIGHT$ (AB$,5) = "Spell" AND  LEN (FS$) > 0 THEN MO$ = "SC": GOSUB 89
90:MO$ = "C": IF  LEN (AB$) = 0 THEN 3430
 3390  FOR X = 1 TO 10
 3400  IF I$(X) = AB$ THEN 3440
 3410  NEXT 
 3420 O$ = EL$ + "A " + AB$ + " Appears at your feet.": GOSUB 8540: GOSUB 7000:O
B$ = AB$
 3430 B$(1) = "A Exit Opens up to the "
 3440  IF D6 <  > 0 THEN D1 = D6:O$ = EL$ + B$(1) + "North." + EL$: GOSUB 7000
 3450  IF D7 <  > 0 THEN D2 = D7:O$ = EL$ + B$(1) + "South." + EL$: GOSUB 7000
 3460  IF D8 <  > 0 THEN D3 = D8:O$ = EL$ + B$(1) + "West." + EL$: GOSUB 7000
 3470  IF D9 <  > 0 THEN D4 = D9:O$ = EL$ + B$(1) + "East." + EL$: GOSUB 7000
 3480  IF RR = R THEN 70
 3490 R = RR:O$ = EL$: GOSUB 7000: GOTO 8710
 3500 O$ = EL$ + "Equip with what Item?->": GOSUB 6000:O$ = I$: GOSUB 9620:I$ = 
B$(0)
 3510  FOR X = 1 TO 10
 3520  IF I$ = I$(X) THEN 3550
 3530  NEXT 
 3540 O$ = EL$ + "You don't have that Item!": GOSUB 7000: GOTO 70
 3550 Y = X
 3560  PRINT D$"OPENWEAPONS,L40"C$(19)
 3570  FOR X = 1 TO WN
 3580  PRINT D$"READWEAPONS,R"X: INPUT B$(0),T,T: IF B$(0) = I$(Y) THEN I$(Y) = 
WP$:WE = X:HT = T: PRINT D$"CLOSE": GOTO 3670
 3590  NEXT X
 3600  PRINT D$"CLOSE"
 3610  PRINT D$"OPENARMOR,L40"C$(1)
 3620  FOR X = 1 TO AN
 3630  PRINT D$"READARMOR,R"X: INPUT B$(0),T,T: IF B$(0) = I$(Y) THEN I$(Y) = AM
$:AR = X:AP = T: PRINT D$"CLOSE": GOTO 3670
 3640  NEXT 
 3650  PRINT D$"CLOSE"
 3660 O$ = EL$ + "That's not a Weapon or an Armor!": GOSUB 7000: GOTO 70
 3670 O$ = EL$ + "Equipment transfer complete.": GOSUB 7000: GOTO 70
 3680 O$ = EL$ + "Say What?->": GOSUB 6000:O$ = I$: GOSUB 9620:I$ = B$(0)
 3690  IF  RIGHT$ (N$,3) <  > "Inn" THEN 3810
 3700 X =  VAL (I$): IF X < 1 OR X > 5 THEN O$ = EL$ + "Sorry, you can't stay lo
nger than 5     hours.": GOSUB 7000: GOTO 70
 3710  IF X > TL THEN O$ = EL$ + "You don't have that much time left!": GOSUB 70
00: GOTO 70
 3720 O$ = EL$ + "The Manager nods and takes you to your  room.  You quickly fal
l asleep." + DL$: GOSUB 7000
 3730  FOR Y = 1 TO X:O$ = "zzzzz....": GOSUB 7000: FOR T = 1 TO 500: NEXT T: NE
XT Y
 3740  FOR Y = 1 TO X
 3750 HP = HP + (TH / 5):PO = PO + (TP / 5)
 3760  NEXT 
 3770 TI = TI - X: IF HP > TH THEN HP = TH
 3780  IF PO > TP THEN PO = TP
 3790 HP =  INT (HP):PO =  INT (PO)
 3800 O$ = DL$ + "You wake up refreshed and ready to take on the world!": GOSUB 
7000: GOTO 70
 3810  IF  LEN (BO$) = 0 OR  LEFT$ (BO$,1) <  > "#" THEN O$ = EL$ + "Nothing Hap
pens.": GOSUB 7000: GOTO 70
 3820 I$ = "#" + I$
 3830  GOTO 3280
 6000  GOSUB 7000: GOSUB 8000: RETURN 
 7000  & B / O$: RETURN 
 8000 CC = 0: IF  PEEK (1) = 128 AND CF = 1 AND CA$ = "Y" THEN CA$ = "N": CALL 3
8539:CF = 9
 8010  IF CF = 9 AND  PEEK (1) <  > 128 THEN CF = 1:CA$ = "Y"
 8020  IF CA$ <  > "Y" OR  LEN (CN$) > 1 THEN 8040
 8030  IF CF = 1 THEN  CALL 38539
 8040  IF  PEEK (1) = 128 THEN 8140
 8050  IF  LEN (CN$) = 0 THEN 8140
 8060  FOR T = 1 TO  LEN (CN$)
 8070  IF  MID$ (CN$,T,1) = "," THEN I$ =  MID$ (CN$,1,T - 1):CN$ =  RIGHT$ (CN$
, LEN (CN$) - T): GOTO 8110
 8080  IF  MID$ (CN$,T,1) = "#" THEN I$ =  MID$ (CN$,1,T - 1):CN$ = "": GOTO 811
0
 8090  NEXT 
 8100  POKE 960,0
 8110  IF O$ = "STOP" THEN O$ = "": GOTO 8210
 8120  IF  LEN (I$) = 0 THEN 8050
 8130 O$ = I$ + EL$: GOSUB 7000: GOTO 8290
 8140  POKE 960,0: & A / SP$:I$ =  MID$ (SP$,1): IF  PEEK (961) THEN 1560
 8150 CN$ = I$ + "#":O$ = "STOP"
 8160  IF  LEFT$ (I$,1) = "#" THEN I$ = "#":CN$ = ""
 8170  POKE 961,0: IF  PEEK (960) = 255 THEN CC = CC + 1: IF CC > 1 OR I$ = "OFF
" THEN 8390
 8180  IF  PEEK (960) = 255 THEN 8140
 8190  IF  PEEK (1) = 128 THEN CN$ = "": GOTO 8230
 8200  IF  LEN (CN$) > 0 THEN 8060
 8210  IF  LEN (I$) <  > 1 AND  RIGHT$ (I$,1) = " " THEN I$ =  LEFT$ (I$, LEN (I
$) - 1): GOTO 8210
 8220  IF  LEN (I$) <  > 1 AND  LEFT$ (I$,1) = " " THEN I$ =  RIGHT$ (I$, LEN (I
$) - 1): GOTO 8220
 8230  IF  LEN (I$) = 0 AND CR = 1 THEN O$ = EL$: GOSUB 7000: GOTO 8250
 8240  IF  LEN (I$) = 0 THEN 8000
 8250  IF CA$ <  > "Y" THEN 8290
 8260  IF CF = 1 THEN  CALL 36798
 8270  IF I$ = "202 ON" THEN O$ = EL$ + "202 is now On.": GOSUB 7000: CALL 36798
:CF = 1
 8280  IF I$ = "202 OFF" THEN O$ = EL$ + "202 is now Off.": GOSUB 7000: CALL 385
39:CF = 0
 8290 CR = 0: RETURN 
 8300  IF CL$ = "N" THEN T$ = DA$: RETURN 
 8310  PR# 4: IN# 4: INPUT "#";T,T,T,T,T,B: INPUT "%";T$
 8320  IF TI = 0 THEN TI = T
 8330  PR# 0: POKE 56,102: POKE 57,213: CALL 1002
 8340  IF TI > T THEN T = TI + (60 - TI) + T
 8350 TL = CO - (T - TI)
 8360  IF EN > 0 THEN 8380
 8370  IF TL <  = 0 THEN O$ = EL$ + "You are out of Time!": GOSUB 7000: GOTO 839
0
 8380  RETURN 
 8390 O$ = DL$ + "Later Dude!": GOSUB 7000: PRINT D$"OPENITEMS"C$(25): PRINT D$"
READITEMS"
 8400  FOR X = 1 TO IN
 8410  INPUT I$
 8420  FOR Y = 1 TO 10
 8430  IF I$(Y) = I$ THEN B(Y) = X
 8440  NEXT 
 8450  NEXT : PRINT D$"CLOSE"
 8460  FOR X = 1 TO 10: IF I$(X) = "Blank" THEN B(X) = 0
 8470  NEXT 
 8480  IF CP$ = "N" THEN ST = ST - (ST * 2)
 8490  PRINT D$"OPENSAVE,L48"C$(27): PRINT D$"WRITESAVE,R"A: PRINT R: FOR X = 1 
TO 10: PRINT B(X): NEXT : PRINT TC: PRINT D$"CLOSE":HP = TH:PO = TP: GOSUB 8500:
 PRINT D$"RUNSTART"C$(14)
 8500  PRINT D$"OPENSTATS,L200"C$(15): PRINT D$"WRITESTATS,R"A: PRINT NA$: PRINT
 FI$: PRINT LE: PRINT AG: PRINT WE: PRINT AR: PRINT EX: PRINT GD: PRINT ST: PRIN
T TH: PRINT HP: PRINT PA$: PRINT WI: PRINT CH: PRINT LS: PRINT CA: PRINT CL: PRI
NT AD$: PRINT CP
 8510  PRINT FD: PRINT PO: PRINT TP: PRINT BA: PRINT PA: PRINT DE: PRINT DA$
 8520  FOR X = 1 TO SN: PRINT S(X): NEXT 
 8530  PRINT D$"CLOSE": RETURN 
 8540  IF  LEN (O$) < 40 THEN 8640
 8550 Y = 40
 8560 X = 0
 8570  IF  MID$ (O$,Y - X,1) = " " THEN B$(0) =  LEFT$ (O$,(Y - 1) - X):B$(0) = 
B$(0) + EL$ +  RIGHT$ (O$, LEN (O$) - (Y - X)): GOTO 8590
 8580 X = X + 1: GOTO 8570
 8590 O$ = B$(0)
 8600  IF (Y + 40) >  LEN (O$) THEN 8640
 8610 Y = Y + 39
 8620 Y = (Y - X) + 1
 8630  GOTO 8560
 8640  RETURN 
 8650 O$ = EL$ + "Hit Points " +  STR$ (HP) + " out of " +  STR$ (TH) + "." + EL
$ + "Power " +  STR$ (PO) + " out of " +  STR$ (TP) + "." + EL$ + "Food: " +  ST
R$ (FD) + EL$ + "Poisoned: ": IF PO$ = "Y" THEN O$ = O$ + "Yes": GOTO 8670
 8660 O$ = O$ + "No"
 8670  GOSUB 7000: RETURN 
 8680  IF C$ = "P" THEN 70
 8690  GOTO 1090
 8700  CALL  - 3288: PRINT "ERROR ON LINE ";: PRINT  PEEK (219) * 256 +  PEEK (2
18): GOTO 70
 8710 PN = PR: IF I$ = "L" THEN 8730
 8720 D6 = 0:D7 = 0:D8 = 0:D9 = 0:SH = 0:CH$ = "":MO$ = "":AB$ = "":OB$ = "":BR 
= 0:F1 = 0:DR$ = "":GI$ = "":TR$ = ""
 8730  IF R > 299 THEN 9510
 8740  IF R <  > 299 THEN 8770
 8750  IF CF = 1 THEN  CALL 38539
 8760 F$ = "ADV.SOLVE": GOSUB 2880: GOTO 9720
 8770  PRINT D$"OPENDES,L410"C$(24)
 8780  PRINT D$"READDES,R"R
 8790  INPUT N$,D1,D2,D3,D4,D5,OB$,BO$,O$
 8800 SH = 0
 8810  IF N$ = "Adventurers Shop" THEN SH = 1
 8820  IF N$ = "Hospital" THEN SH = 2
 8830  IF N$ = "McDonalds" THEN SH = 3
 8840  IF I$ = "L" AND D6 = 0 AND D7 = 0 AND D8 = 0 AND D9 = 0 THEN 8900
 8850  IF I$ <  > "L" THEN 8910
 8860  IF D6 <  > D1 AND D6 <  > 0 THEN D1 = D6
 8870  IF D7 <  > D2 AND D7 <  > 0 THEN D2 = D7
 8880  IF D8 <  > D3 AND D8 <  > 0 THEN D3 = D8
 8890  IF D9 <  > D4 AND D9 <  > 0 THEN D4 = D9
 8900  IF  LEN (AB$) > 0 AND OB$ <  > AB$ THEN OB$ = AB$
 8910 O$ = EL$ + "[" + N$ + "]" + "   " + "Exits: "
 8920  IF D1 <  > 0 THEN O$ = O$ + "N "
 8930  IF D2 <  > 0 THEN O$ = O$ + "S "
 8940  IF D3 <  > 0 THEN O$ = O$ + "W "
 8950  IF D4 <  > 0 THEN O$ = O$ + "E "
 8960 O$ = O$ + EL$: GOSUB 7000
 8970  IF  LEN (OB$) > 5 AND  RIGHT$ (OB$,5) = "Spell" AND  LEN (FS$) > 0 THEN 8
990
 8980  GOTO 9030
 8990  FOR X = 1 TO  LEN (FS$) STEP 3
 9000  IF  VAL ( MID$ (FS$,X,3)) = 1000 - R THEN OB$ = "":GI$ = "":AB$ = ""
 9010  NEXT 
 9020  IF MO$ = "SC" THEN  RETURN 
 9030  IF R < 310 OR R > 390 THEN 9060
 9040  IF D5 =  - 1 THEN O$ = EL$ + "You step into the square and it turns   Whi
te.  You are safe.": GOSUB 7000
 9050  IF D5 =  - 6 THEN O$ = EL$ + "You step into the square and it turns   Red
.  You are instantly incinerated.": GOSUB 7000: GOTO 1070
 9060  IF D5 =  - 6 OR D5 =  - 12 OR D5 =  - 13 OR D5 =  - 9 THEN 9090
 9070  IF  RIGHT$ (N$,3) = "Inn" THEN O$ = EL$ + "This is a small, quaint little
 inn      furnished and payed for by the local    government.  There is no charg
e to      stay." + EL$: GOSUB 7000
 9080  GOTO 9150
 9090 O$ = EL$: GOSUB 7000
 9100  IF D5 =  - 6 THEN O$ = "You are inside the Red Adepts Castle.":D5 =  - 1
 9110  IF D5 =  - 9 THEN O$ = "You are inside the White Adepts Castle.":D5 =  - 
1
 9120  IF D5 =  - 12 THEN O$ = "You are inside the Forest of the Elves.":D5 = 0
 9130  IF D5 =  - 13 THEN O$ = "You are inside the Black Adepts Castle.":D5 =  -
 1
 9140 O$ = O$ + EL$: GOSUB 7000
 9150  IF BR$ = "On" AND I$ <  > "L" THEN  PRINT D$"CLOSE": GOTO 2270
 9160  IF R > 299 THEN 2270
 9170  GOSUB 2900: GOTO 2270
 9180  IF (I$ = "N" AND D1 = 0) OR (I$ = "S" AND D2 = 0) OR (I$ = "W" AND D3 = 0
) OR (I$ = "E" AND D4 = 0) THEN O$ = EL$ + "You Can't Go That Way.": GOSUB 7000:
 GOTO 70
 9190  IF I$ = "N" THEN R = D1
 9200  IF I$ = "S" THEN R = D2
 9210  IF I$ = "W" THEN R = D3
 9220  IF I$ = "E" THEN R = D4
 9230  IF R > 0 THEN 9310
 9240  FOR X = 1 TO 10: IF I$(X) = "Force Field Pass" THEN 9300
 9250  NEXT 
 9260 O$ = EL$ + "Bzzzzzzzz.  Your body Riddles with      electricity as you pas
s through the     field.  You need a Force Field Pass to  go through unscathed."
: GOSUB 7000
 9270 X =  INT (TH / 3):X =  INT (X *  RND (1)) + X
 9280 O$ = DL$ + "You lose " +  STR$ (X) + " Hit Points.":HP = HP - X: GOSUB 700
0
 9290 O$ = EL$: GOSUB 7000
 9300 R = R - (2 * R)
 9310  IF PO$ = "Y" THEN O$ = EL$ + "You're Poisoned!" + DL$ + "Hit Points -":T 
=  INT (((LE * L) / 2) + 1):O$ = O$ +  STR$ (T) + EL$: GOSUB 7000:HP = HP - T
 9320  IF G(0) > 0 THEN G(0) = G(0) - 1
 9330 FD = FD - 3: IF FD < 1 THEN FD = 0:O$ = EL$ + "You're starving!" + DL$ + "
Hit Points -":T =  INT (((LE * L) / 2) + 1):O$ = O$ +  STR$ (T) + EL$: GOSUB 700
0:HP = HP - T
 9340  IF FD > 0 AND FD < 10 THEN O$ = EL$ + "Warning!  You are low on food!" + 
EL$: GOSUB 7000
 9350  IF HP < 1 THEN O$ = DL$ + "You are Dead!" + EL$: GOSUB 7000:R = 1: GOTO 1
070
 9360  GOTO 8710
 9370  PRINT D$"OPENCHAR,L200"C$(23)
 9380  PRINT D$"READCHAR,R"D5
 9390  INPUT TR$,BR,GI$,I$
 9400  IF MO$ <  > "C" THEN MO$ = "C": PRINT D$"CLOSE": GOTO 9420
 9410  IF MO$ = "C" THEN O$ = EL$ + "The " + TR$ + " Speaks:" + EL$: GOSUB 7000:
 GOSUB 2900: GOTO 9440
 9420 O$ = EL$ + "You see a " + TR$ + ".": GOSUB 8540: GOSUB 7000
 9430  GOTO 70
 9440  IF  LEN (GI$) = 0 THEN 70
 9450  FOR X = 1 TO 10
 9460  IF I$(X) = GI$ THEN 70
 9470  NEXT 
 9480  IF  RIGHT$ (GI$,5) = "Spell" AND  LEN (FS$) > 0 THEN MO$ = "SC": GOSUB 89
90:MO$ = "C": IF  LEN (GI$) = 0 THEN 70
 9490 O$ = EL$ + "The " + TR$ + " drops a " + GI$ + " at your Feet.": GOSUB 8540
: GOSUB 7000:OB$ = GI$:AB$ = GI$
 9500  GOTO 70
 9510  PRINT D$"OPENSHD,L55"C$(28)
 9520  PRINT D$"READSHD,R"R
 9530  INPUT N$,D1,D2,D3,D4,D5,OB$
 9540  PRINT D$"CLOSE"
 9550  IF  LEFT$ (OB$,1) = "*" THEN BO$ =  RIGHT$ (OB$, LEN (OB$) - 1):OB$ = ""
 9560  GOTO 8800
 9570 Y =  VAL ( MID$ (A$,4,1)): POKE 43626,Y:Y =  VAL ( RIGHT$ (A$,1)): POKE 43
624,Y:Y =  VAL ( LEFT$ (A$,3)): IF YR$ = "Y" THEN  PRINT D$"OPEN VC,V"Y
 9575  IF TC$ = "Y" THEN  POKE 1014,10: POKE 952,215: POKE 953,251
 9580  RETURN 
 9590  PRINT D$"OPENWEAPONS,L40"C$(19): PRINT D$"READWEAPONS,R"T: INPUT B$(0),B(
3),B(4):T = B(3) / 4: PRINT D$"CLOSE": RETURN 
 9600  PRINT D$"OPENARMOR,L40"C$(1): PRINT D$"READARMOR,R"T: INPUT B$(0),B(3),B(
4): PRINT D$"CLOSE": RETURN 
 9610 T = A3: GOSUB 9590:B(2) = T:MP = B(4):MW$ = B$(0):T = A4: GOSUB 9600:MH = 
B(4):MH$ = B$(0): RETURN 
 9620 B$(0) = "":J = 0
 9630  FOR X = 1 TO  LEN (O$)
 9640 A$ =  MID$ (O$,X,1)
 9650  IF X = 1 THEN T =  ASC (A$): IF T > 64 AND T < 91 THEN 9690
 9660 T =  ASC (A$): IF T < 65 OR T > 90 THEN J = 1: GOTO 9690
 9670  IF J = 1 THEN J = 0: GOTO 9690
 9680 T = T + 32:A$ =  CHR$ (T)
 9690 B$(0) = B$(0) + A$
 9700  NEXT 
 9710  RETURN 
 9720 X = WE + 1: IF X > WN THEN X = WN
 9730 Y = AR + 1: IF Y > AN THEN Y = WN
 9740 WE = X:AR = X
 9760 T = WE: GOSUB 9590:O$ = EL$ + "You get a " + B$(0) + "!":T = AR: GOSUB 960
0:O$ = O$ + DL$ + "You get a " + B$(0) + "!" + EL$: GOSUB 7000:CA = 0: FOR X = 1
 TO 10:I$(X) = "Blank": NEXT :R = 0: GOTO 8390

]LOAD ASTART
]LIST

 5  IF TC$ = "Y" THEN  POKE 1014,0: POKE 952,240: POKE 953,253
 10  ONERR  GOTO 140
 20  IF BD$ <  > "Y" THEN 40
 30  FOR X = 1 TO MM:T$(X) = "":N%(X) = 0: NEXT 
 40  FOR X = 1 TO ML:D$(X) = "": NEXT 
 50 ME$ = ""
 60 O$ = SC$: HOME : GOSUB 500
 70 O$ = EL$ + "             ->Split Infinity<-" + DL$ + " Written, Conceived, a
nd Programmed by" + DL$ + "               The Time Lord" + EL$: GOSUB 500
 80  PRINT D$"OPENITEMS"C$(25)
 90  PRINT D$"READITEMS"
 100 X = 0
 110 X = X + 1
 120  INPUT A$
 130  GOTO 110
 140  CALL  - 3288
 150 IN = X - 1
 160 CO = CO + 5
 200  ONERR  GOTO 250
 210 R = 0
 220  FOR X = 1 TO 10:B(X) = 0: NEXT 
 230  PRINT D$"OPENSAVE,L48"C$(27): PRINT D$"READSAVE,R"A: INPUT R: FOR X = 1 TO
 10: INPUT B(X): NEXT : INPUT TC: PRINT D$"CLOSE"
 240  GOTO 260
 250  CALL  - 3288
 260  PRINT D$"OPENITEMS"C$(25): PRINT D$"READITEMS"
 270  FOR X = 1 TO IN
 280  INPUT I$
 290  FOR Y = 1 TO 10
 300  IF B(Y) = X THEN I$(Y) = I$
 310  NEXT 
 320  NEXT 
 330  PRINT D$"CLOSE"
 340  FOR X = 1 TO 10
 350  IF  LEN (I$(X)) = 0 THEN I$(X) = "Blank"
 360  NEXT 
 370 L = 1
 390  IF LE > 3 THEN L = 2
 400  IF LE > 7 THEN L = 3
 410  IF LE > 12 THEN L = 4
 420  IF LE > 19 THEN L = 5
 430  IF LE > 29 THEN L = 6
 440  IF LE > 55 THEN L = 7
 441  IF LE > 75 THEN L = 8
 442  IF LE > 95 THEN L = 9
 443  IF LE > 115 THEN L = 10
 460  IF R = 0 THEN R = 30
 470 PR = R
 480 G(0) = 0:G(6) = 0
 490 A$ = AV$: GOSUB 510: CALL 35848"ADVENT"
 500  & B / O$: RETURN 
 510 Y =  VAL ( MID$ (A$,4,1)): POKE 43626,Y:Y =  VAL ( RIGHT$ (A$,1)): POKE 436
24,Y:Y =  VAL ( LEFT$ (A$,3)): IF YR$ = "Y" THEN  PRINT D$"OPEN VC,V"Y
 515  IF TC$ = "Y" THEN  POKE 1014,10: POKE 952,215: POKE 953,251
 520  RETURN 

]PR#0
]LOAD FIGHT
]LIST

 5  IF TC$ = "Y" THEN  POKE 1014,0: POKE 952,240: POKE 953,253
 10 AC$ = "": CALL 54915:QA = 0:AM = 0:G(6) = 0:K = 0:B$ = "N": IF A > 0 THEN 30

 20  PRINT  CHR$ (4)"SAVEFIGHT,S3": PRINT  CHR$ (4)"RUNCASTLE EDITOR,S6"
 30 T = WE: GOSUB 40:B(1) = T:HT = B(4): GOTO 220
 40  PRINT D$"OPENWEAPONS,L40"C$(19): PRINT D$"READWEAPONS,R"T: INPUT B$(0),B(3)
,B(4):T =  INT (B(3) / 4): IF T > 1000000 THEN T = 1000000
 50  PRINT D$"CLOSE": RETURN 
 60  PRINT D$"OPENARMOR,L40"C$(1): PRINT D$"READARMOR,R"T: INPUT B$(0),B(3),B(4)
: PRINT D$"CLOSE": RETURN 
 90  CALL  - 3288: GOTO 230
 100  IF FO >  = 4 THEN 130
 110 O$ = EL$ + "Return To Main Dungeon? Y/N ": GOSUB 6000
 120  IF I$ <  > "Y" THEN 230
 130 O$ = DL$ + "-=> HOLD...Transport Heading to Main." + EL$: GOSUB 7000
 140 A$ = MA$: GOSUB 8850: CALL 35848"MAIN"
 150  PRINT D$"OPENSTATS,L200"C$(15)
 160  PRINT D$"READSTATS,R"A
 170  INPUT NA$,FI$,LE,AG,WE,AR,EX,GD,ST,TH,HP,PA$,WI,CH,LS,CA,CL,AD$,CP,FD,PO,T
P,BA,PA,DE,I$
 180  FOR X = 1 TO SN: INPUT S(X): NEXT 
 190  PRINT D$"CLOSE"
 200  IF I$ = "Q" THEN  POP : GOTO 230
 210  RETURN 
 220  HOME :O$ = SC$ + DL$ + DL$ + EL$: GOSUB 7000
 230  GOSUB 8300:O$ = DL$ + "Your choices are..." + DL$ + "A) ttack a Users Cast
le" + EL$ + "C) orridor Of Death" + EL$ + "D) ungeon" + EL$ + "P) roving Grounds
" + DL$
 240 O$ = O$ + "Which(FL=" +  STR$ (4 - FO) + "): ": GOSUB 6000
 245  ONERR  GOTO 90
 250  IF I$ = "A" THEN 9170
 260 AC$ = "N":FI = 0:B$(2) = "": IF I$ = "C" THEN 2490
 300  IF I$ = "Q" THEN 100
 310  IF I$ <  > "D" AND I$ <  > "P" THEN 230
 320 MO$ = "N": IF I$ = "D" THEN MO$ = "Y": GOTO 680
 340 O$ = EL$ + "Enter user number of person you wish    to fight(1-" +  STR$ (U
S) + "/Q): #": GOSUB 6000
 350 X =  VAL (I$)
 360  GOSUB 8300
 370  IF A = X THEN 340
 380  GOSUB 200
 390  ONERR  GOTO 500
 400  PRINT D$"OPENSTATS,L200"C$(15)
 410  PRINT D$"READSTATS,R"X
 420  INPUT B$(1),B$(2),A1,A2,A3,A4,A5,A6,A7,A0,A9,A$,A8
 430 S1 = 0:S2 = 0
 440  PRINT D$"CLOSE"
 450  IF A2 < 0 THEN A2 = A2 - (A2 * 2):Y =  - 99
 460  IF A7 < 0 THEN  GOSUB 9380:A7 = A7 - (A7 * 2)
 470  IF AC$ = "Y" THEN  GOSUB 8870: RETURN 
 480 Y = 0
 490  GOTO 510
 500  CALL  - 3288: PRINT D$"CLOSE":O$ = EL$ + "There is no such user!" + EL$: G
OSUB 7000: GOTO 340
 510  IF LE > A1 + FL THEN O$ = EL$ + "You can only fight a User higher or " +  
STR$ (FL) + " levels below you." + EL$: GOSUB 8420: GOSUB 7000: GOTO 340
 520  ONERR  GOTO 550
 530  IF B$(2) = "Dead" THEN  PRINT D$"OPEN DEATH,L50"C$(6): PRINT D$"READ DEATH
,R"X: INPUT I$: PRINT D$"CLOSE":O$ = EL$ + "Sorry, " + B$(1) + " has already bee
n" + " killed by " + I$ + "." + EL$: GOSUB 8420: GOSUB 7000: GOTO 340
 540  GOTO 560
 550  CALL  - 3288:O$ = EL$ + "Sorry, " + B$(1) + " is Dead." + EL$: GOSUB 8420:
 GOSUB 7000: GOTO 340
 560  IF B$(1) = "Empty" THEN O$ = EL$ + "Sorry, that Character has been deleted
." + EL$: GOSUB 7000: GOTO 340
 570  GOSUB 8870
 580 B$(3) =  STR$ (A3 - WE): IF A3 > WE THEN B$(3) = "+" + B$(3)
 590 B$(4) =  STR$ (A4 - AR): IF A4 > AR THEN B$(4) = "+" + B$(4)
 600 B$(3) = "  (" + B$(3) + ")":B$(4) = "  (" + B$(4) + ")"
 610 O$ = EL$ + "Character: " + B$(1) + DL$ + "Weapon: " + MW$ + B$(3) + EL$ + "
 Armor: " + MH$ + B$(4) + DL$ + "Hit Points: " +  STR$ (A9)
 620  GOSUB 7000
 630 O$ = DL$ + "Do you wish to fight " + B$(1) + "?" + EL$ + "Y/N: ": GOSUB 600
0
 640  GOSUB 200
 650  IF I$ <  > "Y" THEN 340
 660 FO = FO + 1
 670 FI = X
 680 B$(3) = "strike":B$(4) = "hit":B$(5) = "slam":B$(6) = "rag":B$(7) = "smite"
:B$(8) = "pound"
 690  IF MO$ = "R" THEN  RETURN 
 700  IF MO$ = "Y" THEN  GOTO 1940
 710 O$ = DL$: GOSUB 7000
 720  IF AG > A2 THEN O$ = "You get first attack!" + DL$: GOSUB 7000: GOTO 1210
 730 O$ = "He gets first attack!": GOSUB 7000
 740 O$ = DL$: GOSUB 7000
 750  IF MO$ = "Y" THEN X =  INT (3 *  RND (1)) + 1: IF X = 2 THEN 2390
 760  IF A2 > 50 THEN 900
 770 G(1) = A3 + A2
 780 G(2) =  INT ((WE + AG) *  RND (1)) + 1
 790 AM =  INT ((A7 + A2 + (2 * MP)) *  RND (1)) + 1: IF AR > AM THEN O$ = "Your
 " + AM$ + " Absorbes the Damage!": GOSUB 8420: GOSUB 7000: GOTO 1210
 800  IF G(2) < G(1) THEN 900
 810 X =  INT (5 *  RND (1)) + 1
 820  IF X = 1 THEN O$ = B$(1) + " swings at you with his " + MW$ + " and misses
!"
 830  IF X = 2 THEN O$ = "You duck skillfully under his blow!"
 840  IF X = 3 THEN O$ = "He swings at you but you jump nimbly aside!"
 850  IF X = 4 THEN O$ = B$(1) + "s " + MW$ + " flies over your head just missin
g you!"
 860  IF X = 5 THEN O$ = "His weapon misses you by a mile!"
 870  GOSUB 8420
 880  GOSUB 7000
 890  GOTO 1210
 900 G(3) = (A7 / 25) + 1
 910 G(3) = G(3) * MP:G(8) = 0
 920 G(5) = G(3) * (AP * (1 / 100))
 930 G(3) = G(3) - G(5)
 940 G(4) = G(3) / 4:G(3) = G(3) - (G(4) *  RND (1)) + G(4)
 950 G(3) =  INT (G(3))
 960 X =  INT (5 *  RND (1)) + 3
 970  IF G(6) > 0 THEN G(6) = G(6) - 1:G(3) =  INT (G(3) - (G(3) / 3))
 980  IF Y =  - 99 THEN Y = 0: RETURN 
 990  IF G(8) = 0 THEN 1010
 1000  IF MO$ = "Y" THEN O$ = B$(1) + " casts a " + S$(G(8)) + " spell which " +
 B$(X) + "s you doing " +  STR$ (G(3)) + " damage.": GOSUB 8420: GOSUB 7000: GOT
O 1040
 1010 O$ = B$(1) + " " + B$(X) + "s you with his " + MW$ + " doing " +  STR$ (G(
3)) + " damage."
 1020  GOSUB 8420
 1030  GOSUB 7000
 1040 HP = HP - G(3): IF HP > 0 THEN 1210
 1050 O$ = DL$ + B$(1) + " has killed you!" + DL$ + "He gets all your gold!" + E
L$
 1060  IF MO$ = "Y" THEN 1110
 1070 AM = 0:QA = 0
 1080  IF WE > A3 THEN G(0) = A3:A3 = WE:WE = G(0):O$ = O$ + DL$ + "You Swap Wea
pons With Him!":AM = 1
 1090  IF AR > A4 THEN G(0) = A4:A4 = AR:AR = G(0):O$ = O$ + DL$ + "You Swap Arm
or With Him!":QA = 1
 1100  GOSUB 7000:O$ = "": GOSUB 8530
 1110 A6 = A6 + GD:GD = 0:A5 = A5 + EX:HP = TH:PO = TP: GOSUB 7000
 1120  IF B$ <  > "Y" THEN 1190
 1140 O$ = EL$ + "You have been Resurected!" + DL$ + "Continue on Quest? Y/N ": 
GOSUB 6000: IF I$ <  > "Y" AND I$ <  > "N" THEN 1140
 1160 B$ = "N"
 1170  IF I$ = "Y" THEN 2870
 1180  GOTO 130
 1190  IF MO$ = "Y" OR MO$ = "NV" THEN 8370
 1200 X =  - 99: GOTO 1770
 1210  IF MO$ <  > "Y" THEN 1300
 1220  IF FI > 0 THEN O$ = DL$ + "F)ight, C)ast, H)ealth, S)tats: ": GOSUB 6000:
 IF I$ = "C" THEN 2130
 1230  IF I$ = "S" THEN  GOSUB 3210: GOTO 1220
 1240  IF FI > 0 AND I$ = "H" THEN  GOSUB 8660: GOTO 1210
 1250  IF FI > 0 AND I$ <  > "F" THEN 1210
 1260  IF FI > 0 THEN 1350
 1270 O$ = DL$ + "F)ight, H)ealth, R)un, C)ast: ": GOSUB 6000: IF I$ = "C" THEN 
2130
 1280  IF I$ = "H" THEN  GOSUB 8660: GOTO 1270
 1290  GOTO 1330
 1300 O$ = DL$ + "<F>ight <H>ealth <R>un: ": GOSUB 6000
 1310  IF I$ = "H" THEN  GOSUB 8660: GOTO 1300
 1320  IF I$ <  > "F" AND I$ <  > "R" AND I$ <  > "Q" THEN 1300
 1330  IF I$ = "R" OR I$ = "Q" THEN 100
 1340  IF I$ <  > "F" THEN 1270
 1350 O$ = EL$: GOSUB 7000
 1360  IF AG > 50 THEN 1500
 1370 G(1) = WE + AG
 1380 G(2) =  INT ((A3 + A2) *  RND (1)) + 1
 1390 AM =  INT ((ST + AG + (2 * HT)) *  RND (1)) + 1: IF A4 > AM THEN O$ = "His
 " + MH$ + " Absorbes the Damage!": GOSUB 8420: GOSUB 7000: GOTO 740
 1400  IF G(1) > G(2) THEN 1500
 1410 X =  INT (5 *  RND (1)) + 1
 1420  IF X = 1 THEN O$ = "You swing at him with your " + WP$ + " but he jumps n
imbly aside."
 1430  IF X = 2 THEN O$ = "He ducks skillfully under your blow!"
 1440  IF X = 3 THEN O$ = "You lunge at him but he ducks under your blow!"
 1450  IF X = 4 THEN O$ = "Your " + WP$ + " misses him by a mile!"
 1460  IF X = 5 THEN O$ = "Your " + WP$ + " flies over his head!"
 1470  GOSUB 8420
 1480  GOSUB 7000
 1490  GOTO 740
 1500 G(3) = (ST / 25) + 1:G(3) = (G(3) * HT)
 1510 G(5) = G(3) * (MH * (1 / 100))
 1520 G(3) = G(3) - G(5)
 1530 G(4) = G(3) / 4:G(3) = G(3) - (G(4) *  RND (1)) + G(4)
 1540 G(3) =  INT (G(3))
 1550 X =  INT (6 *  RND (1)) + 3
 1560  IF I$ = "C" THEN O$ = "Your " + S$(Y) + " spell " + B$(X) + "s the monste
r doing " +  STR$ (G(3)) + " damage!": GOSUB 8420: GOSUB 7000: GOTO 1600
 1570 O$ = "You " + B$(X) + " him with your " + WP$ + " doing " +  STR$ (G(3)) +
 " damage!"
 1580  GOSUB 8420
 1590  GOSUB 7000
 1600 A9 = A9 - G(3): IF A9 > 0 THEN 740
 1610 O$ = DL$ + "You've killed " + B$(1) + "!" + EL$
 1620 O$ = O$ + EL$ + "You gain " +  STR$ (A6) + " gold and " +  STR$ (A5) + " e
xp!" + EL$: GOSUB 7000
 1630 QA = 0:AM = 0
 1640  IF MO$ = "Y" THEN 1680
 1650  IF WE < A3 THEN O$ = EL$ + "You also get his " + MW$ + "!":G(0) = WE:WE =
 A3:A3 = G(0):AM = 1: GOSUB 7000:WP$ = MW$:HT = MP: GOTO 1670
 1660 O$ = EL$ + "You also get " +  STR$ (B(2)) + " gold for his " + MW$ + "!":G
D = GD + B(2): GOSUB 8420: GOSUB 7000
 1670  IF A4 > AR THEN G(0) = AR:AR = A4:A4 = G(0):O$ = DL$ + "You get his " + M
H$ + "!":QA = 1: GOSUB 7000:AM$ = MH$:AP = MH
 1680 GD = GD + A6:EX = EX + A5:A9 = A0:A6 = 0:B$(2) = "Dead"
 1690 O$ = EL$: GOSUB 7000
 1700  IF MO$ = "Y" THEN 1750
 1710  IF AC$ = "Y" THEN 1750
 1720  POKE 2,255
 1730 O$ = EL$ + "Leave Message to " + B$(1) + "?" + EL$ + "Y/N: ": GOSUB 6000: 
POKE 1,128:B$(4) = "No Comment.": IF I$ = "Y" THEN O$ = EL$ + "40 Char. Max" + D
L$: GOSUB 6000:B$(4) = I$
 1740  POKE 2,0: POKE 1,0
 1750  IF FI > 0 AND MO$ = "Y" THEN 2870
 1760  IF MO$ = "Y" THEN 100
 1770  GOSUB 8380:B$(8) = NA$:G(1) = A:A = FI: GOSUB 150:AR = A4:WE = A3:EX = A5
:GD = A6:HP = A0:FI$ = B$(2):B$(0) = DA$:DA$ = I$: IF AC$ <  > "Y" THEN 1790
 1780  IF X <  >  - 99 THEN NC =  INT (BA / 2):BA = NC - BA:AG = AG - (AG * 2):F
I$ = NC$
 1790  GOSUB 8380:DA$ = B$(0)
 1800  IF AC$ = "Y" THEN 1820
 1810 O$ = DL$: GOSUB 7000: IF B$(2) = "Dead" THEN  GOSUB 1870
 1820 A = G(1): GOSUB 150
 1830  GOSUB 8670
 1840  IF B$(2) <  > "Dead" THEN  GOTO 8370
 1850  IF AC$ = "Y" THEN 9370
 1860  GOTO 100
 1870  PRINT D$"OPENDEATH,L50"C$(6)
 1880  PRINT D$"WRITEDEATH,R"A
 1890  PRINT G(1): PRINT QA""AM: PRINT B$(4)
 1900  PRINT D$"CLOSE"
 1910  PRINT D$"OPENRANK,L4"C$(11): PRINT D$"READRANK,R"A: INPUT X: PRINT D$"CLO
SE": PRINT D$"OPENTOP,L35"C$(16): PRINT D$"READTOP,R"X: INPUT D$(1),D$(2),D$(3):
 PRINT D$"CLOSE"
 1920  PRINT D$"OPENTOP,L35": PRINT D$"WRITETOP,R"X: PRINT "D": PRINT D$(2): PRI
NT D$(3): PRINT D$"CLOSE"
 1930  RETURN 
 1940  HOME :O$ = SC$: GOSUB 7000:O$ = DL$ + DL$ + "What level do you wish to en
ter:" + DL$ + "1) Easy" + EL$ + "2) Medium" + EL$ + "3) Hard" + EL$ + "4) Extrem
ely hard" + EL$ + "5) Crazy" + EL$ + "6) Suicidal" + EL$
 1950 O$ = O$ + "7) Instaneaneous Death" + EL$ + "8) Half-Way to Hell" + EL$ + "
9) The Dead Zone" + EL$ + "10) The Land of the Immortals" + DL$
 1960 O$ = O$ + "Which(Q quits): ": GOSUB 6000
 1970  GOSUB 200
 1980 X =  VAL (I$)
 1990  IF X < 1 OR X > (CN / 20) THEN 1940
 2000 FO = FO + 1
 2010 X = X - 1
 2020 X = (X * 20) + 1
 2030 X =  INT (20 *  RND (1)) + X
 2040  PRINT D$"OPENMONSTERS,L60"C$(9)
 2050  PRINT D$"READMONSTERS,R"X
 2060  INPUT B$(1),A7,A2,A8,A3,A4,A6,S1,S2,A9
 2070  PRINT D$"CLOSE"
 2080 A5 = (((A9 / TH) * 8) / 100) * EX:A5 =  INT (A5) + 100: IF NE$ = "T" THEN 
NE$ = "Y": GOTO 2100
 2090 NE$ = "N"
 2100  GOSUB 8870
 2110  IF MO$ = "R" THEN A6 = A6 * 2:A5 = A5 * 2:MO$ = "Y"
 2120 O$ = DL$ + "A vicious " + B$(1) + " attacks you!": GOSUB 8420: GOSUB 7000:
B$(1) = "A " + B$(1): GOTO 710
 2130  IF NE$ = "Y" THEN O$ = EL$ + "Sorry, Negate has been activated.  All  spe
lls are impotent.": GOSUB 7000: GOTO 1210
 2140 O$ = EL$ + "Cast(?): ": GOSUB 6000
 2150  IF I$ <  > "?" THEN O$ = I$: GOSUB 8880: GOTO 2200
 2160 O$ = EL$ + "Name / Quantity / Power Required" + EL$ + "-------------------
-------------" + DL$: GOSUB 7000
 2170  FOR X = 1 TO SN: IF S(X) > 0 THEN O$ = S$(X) + "-" +  STR$ (S(X)) + " (" 
+  STR$ (X * 2) + ")" + EL$: GOSUB 7000
 2180  NEXT 
 2190  GOTO 2130
 2200  FOR X = 1 TO SN: IF S$(X) = B$(0) THEN 2240
 2210  NEXT 
 2220  IF B$(2) = "CO" THEN O$ = EL$ + "There is no such spell!": GOSUB 7000: GO
TO 2880
 2230 O$ = EL$ + "There is no such spell!": GOSUB 7000: GOTO 1210
 2240  IF S(X) = 0 AND B$(2) = "CO" THEN O$ = EL$ + "You don't have that spell!"
: GOSUB 7000: GOTO 2880
 2250  IF S(X) = 0 THEN O$ = EL$ + "You don't have that spell!": GOSUB 7000: GOT
O 1210
 2260  IF B$(2) = "CO" AND (U(X) > 0 OR S$(X) = "Negate") THEN O$ + EL$ + "Sorry
, that is a battle spell.": GOSUB 7000: GOTO 2860
 2270  IF S$(X) = "Inviso" AND B$(2) = "CO" THEN O$ = EL$ + "Sorry, that is an A
dventure spell.": GOSUB 7000: GOTO 2860
 2280  IF B$(2) = "CO" THEN 2980
 2290  IF S$(X) = "Death" OR S$(X) = "Negate" THEN 2310
 2300  IF U(X) < 1 THEN O$ = EL$ + "Not a Battle spell!": GOSUB 7000: GOTO 1210
 2310  IF PO < (X * 2) THEN O$ = EL$ + "You don't have enough power!": GOSUB 700
0: GOTO 1210
 2320 PO = PO - (X * 2)
 2330 S(X) = S(X) - 1
 2340 O$ = EL$ + "Zap!" + DL$: GOSUB 7000:I$ = "C"
 2350 Y = X
 2360  IF S$(X) = "Death" THEN G(3) = A9 / 2: GOTO 1540
 2370  IF S$(X) = "Negate" THEN NE$ = "Y":O$ = "Negate has been activated.  All 
magical spells are impotent for the duration of this battle.": GOSUB 7000: GOTO 
740
 2380 G(3) = (WI / 25) + 1:G(3) = (G(3) * U(X)): GOTO 1510
 2390  IF (S1 < 2 AND S2 < 2) OR NE$ = "Y" THEN 770
 2400 G(8) = 0
 2410  IF S1 < 2 THEN G(8) = S2
 2420  IF S2 < 2 THEN G(8) = S1
 2430  IF G(8) <  > 0 THEN 2470
 2440 X =  INT (2 *  RND (1)) + 1
 2450  IF X = 1 THEN G(8) = S1
 2460  IF X = 2 THEN G(8) = S2
 2470  IF S$(G(8)) = "Death" THEN G(3) = HP / 2: GOTO 950
 2480 G(3) = (A8 / 25) + 1:G(3) = (G(3) * U(G(8))): GOTO 920
 2490 O$ = EL$ + "Once you enter the corridor there will  be few chances to leav
e.  Play? Y/N->": GOSUB 6000: IF I$ <  > "Y" THEN 230
 2500 G(3) = LE * LE * 60:O$ = EL$ + "Gold +" +  STR$ (G(3)) + EL$: GOSUB 7000:G
D = GD + G(3)
 2510  FOR X = WN - MS + 1 TO WN: IF X > WE THEN 2530
 2520  NEXT 
 2530 X = (102 - X):X = X * 20:X = X - 1:G(3) = CN + 20 - X:G(2) = 1
 2540 O$ = EL$ + "You can start anywhere from room " +  STR$ (G(2)) + " to room 
" +  STR$ (G(3)) + ".": GOSUB 8420: GOSUB 7000
 2550  ONERR  GOTO 2570
 2560  GOTO 2580
 2570  CALL  - 3288
 2580 O$ = DL$ + "Enter Starting Room #": GOSUB 6000
 2590 X =  VAL (I$): IF X < G(2) OR X > G(3) THEN 2580
 2600  IF G(3) + 20 > CN THEN 2620
 2610 O$ = EL$ + "The closest magical weapon and armor    lie in room #" +  STR$
 (G(3) + 20) + "." + EL$: GOSUB 7000
 2620 FI = X - 1:FO = FI
 2630 MO$ = "R": GOSUB 680:MO$ = "Y"
 2640 FI = FI + 1
 2650  ONERR  GOTO 2670
 2660 I$ = "": GOTO 2680
 2670  CALL  - 3288: GOTO 2880
 2680  FOR X = 21 TO CN + 1 STEP 20: IF FI = X THEN 2710
 2690  NEXT 
 2700  GOTO 2820
 2710 O$ = EL$ + "As you continue on your perilous quest  you notice a door to t
he west.  This    may be your only chance to leave." + EL$ + "Quit? Y/N: ": GOSU
B 6000
 2720  IF I$ <  > "Y" AND I$ <  > "N" THEN 2710
 2730  IF I$ = "Y" THEN 130
 2740 T = MS:Y = T - 1
 2750  FOR X = CN - (Y * 20) TO CN STEP 20
 2760 T = T - 1: IF X = FI - 1 THEN X = T: GOTO 2790
 2770  NEXT 
 2780  GOTO 2820
 2790  IF WE < WN - X THEN WE = WN - X:T = WE: GOSUB 40:O$ = EL$ + "You Get a " 
+ B$(0) + EL$:WP$ = B$(0):HT = B(4): GOSUB 7000
 2800  IF AR < AN - X THEN AR = AN - X:T = AR: GOSUB 60:O$ = EL$ + "You Get a " 
+ B$(0) + EL$:AM$ = B$(0):AP = B(4): GOSUB 7000
 2810  IF FI = CN + 1 THEN 130
 2820  IF AC$ = "Y" THEN O$ = DL$ + "[" + B$(1) + "'s Castle]" + DL$ + "Room " +
  STR$ (FI) + DL$: GOSUB 7000:B$(2) = "C": IF T > 0 THEN X = T: GOTO 2040
 2830  IF AC$ = "Y" THEN 2880
 2840 O$ = DL$ + "[Corridor of Death]" + DL$ + "Room " +  STR$ (FI) + DL$: GOSUB
 7000
 2850 B$(2) = "C"
 2860  IF FI <  > FO THEN X = FI:FO = FI: GOTO 2040
 2870 B$(2) = "CO"
 2880  GOSUB 8300:O$ = DL$ + "[Tm:" +  STR$ (TL) + "/C)ast H)ealth M)ove S)tats]
->": GOSUB 6000: CALL 54915
 2890  IF I$ = "S" THEN  GOSUB 3210
 2900  IF I$ = "M" THEN FD = FD - 3: IF FD < 1 THEN FD = 0:O$ = EL$ + "You're st
arving!" + DL$ + "Hit points -" +  STR$ (LE) + EL$: GOSUB 7000:HP = HP - LE
 2910  IF FD > 0 AND FD < 10 THEN O$ = EL$ + "Warning!  You are low on food!" + 
EL$: GOSUB 7000
 2920  IF HP < 1 THEN O$ = EL$ + "You died of starvation!" + DL$ + "Monsters com
e by and rob you of all     your gold!" + EL$: GOSUB 7000:GD = 0: GOTO 8370
 2930  IF I$ = "H" THEN  GOSUB 8660
 2940  IF I$ = "C" THEN 2130
 2950  IF I$ = "M" AND AC$ = "Y" THEN FI = FI + 1: GOTO 8980
 2960  IF I$ = "M" THEN 2640
 2970  GOTO 2880
 2980  IF PO < (X * 2) THEN O$ = EL$ + "You don't have enough power!": GOSUB 700
0: GOTO 2880
 2985  IF AC$ = "Y" AND S$(X) = "Resurrect" THEN O$ = EL$ + "Sorry, you cannot c
ast that spell insidea castle.": GOSUB 7000: GOTO 2880
 2990  IF S$(X) = "Resurrect" AND B$ = "Y" THEN O$ = EL$ + "Resurrect has alread
y been Activated!" + EL$: GOSUB 7000: GOTO 2880
 3000 PO = PO - (X * 2):S(X) = S(X) - 1
 3010 O$ = EL$ + "Alakazam!!!" + EL$: GOSUB 7000
 3020  IF S$(X) = "Teleport" THEN O$ = EL$ + "Zap!  You are teleported to safety
!" + EL$: GOSUB 7000:FO = 4: GOTO 130
 3030  IF S$(X) <  > "Protect" AND S$(X) <  > "Super Protect" THEN 3070
 3040  IF S$(X) = "Protect" THEN G(6) = G(6) + 10:O$ = "Protect "
 3050  IF S$(X) = "Super Protect" THEN G(6) = G(6) + 20:O$ = "Super Protect "
 3060 O$ = EL$ + O$ + "has been Activated" + DL$ + "Estimated Lasting Time [" + 
 STR$ (G(6)) + "] Hits": GOSUB 7000: GOTO 2880
 3070  IF S$(X) = "Resurrect" THEN B$ = "Y":O$ = EL$ + "Resurrect has been Activ
ated." + EL$: GOSUB 7000: GOTO 2880
 3080  IF S$(X) = "Super Increase" THEN HP = TH * 2:PO = TP * 2:O$ = EL$ + "Hit 
Points = " +  STR$ (HP) + "!" + DL$ + "Power = " +  STR$ (PO) + "!" + EL$: GOSUB
 7000: GOTO 2880
 3090  IF S$(X) <  > "Increase" THEN 3140
 3100 O$ = EL$ + "[H/it points-P/ower]->": GOSUB 6000: IF I$ <  > "H" AND I$ <  
> "P" THEN 3100
 3110  IF I$ = "H" THEN HP = TH * 2:O$ = EL$ + "Hit points = " +  STR$ (HP)
 3120  IF I$ = "P" THEN PO = TP * 2:O$ = EL$ + "Power = " +  STR$ (PO)
 3130 O$ = O$ + "!": GOSUB 7000: GOTO 2880
 3140  IF S$(X) = "Cure Light Wounds" THEN G(3) =  INT (10 *  RND (1)) + 1:G(4) 
=  INT (10 *  RND (1)) + 1
 3150  IF S$(X) = "Cure Severe Wounds" THEN G(3) =  INT (20 *  RND (1)) + 10:G(4
) =  INT (20 *  RND (1)) + 10
 3160  IF S$(X) = "Cure All Wounds" THEN HP = TH:PO = TP:O$ = EL$ + "All Hit Poi
nts and Power restored!": GOSUB 7000: GOTO 2880
 3170 O$ = EL$ + "Hit points +" +  STR$ (G(3)) + DL$ + "Power +" +  STR$ (G(4)):
HP = HP + G(3):PO = PO + G(4): IF HP > TH THEN HP = TH
 3180  IF PO > TP THEN PO = TP
 3190  GOSUB 7000
 3200  GOTO 2880
 3210 O$ = EL$ + "Strength: " +  STR$ (ST) + EL$ + "Wisdom: " +  STR$ (WI) + EL$
 + "Agility: " +  STR$ (AG) + EL$ + "Intelligence: " +  STR$ (CH) + EL$ + EL$ + 
"Gold: " +  STR$ (GD) + EL$ + "Exp: " +  STR$ (EX) + EL$ + EL$ + "Weapons: " + W
P$ + EL$ + "Armor: " + AM$ + EL$
 3220 O$ = O$ + EL$ + "Protection Left: " +  STR$ (G(6)) + " Hits"
 3230 O$ = O$ + EL$ + "Resurrect: "
 3240 I$ = "Off"
 3250  IF B$ = "Y" THEN I$ = "On"
 3260 O$ = O$ + I$
 3270  GOSUB 7000
 3280  RETURN 
 3290 A$ = CH$: GOSUB 8850: CALL 35848"CHAT"
 6000  GOSUB 7000: GOSUB 8000: RETURN 
 7000  & B / O$: POKE 960,0: RETURN 
 8000 CC = 0: IF  PEEK (1) = 128 AND CF = 1 AND CA$ = "Y" THEN CA$ = "N": CALL 3
8539:CF = 9
 8010  IF CF = 9 AND  PEEK (1) <  > 128 THEN CF = 1:CA$ = "Y"
 8020  IF CA$ <  > "Y" OR  LEN (CN$) > 1 THEN 8040
 8030  IF CF = 1 THEN  CALL 38539
 8040  IF  PEEK (1) = 128 THEN 8140
 8050  IF  LEN (CN$) = 0 THEN 8140
 8060  FOR T = 1 TO  LEN (CN$)
 8070  IF  MID$ (CN$,T,1) = "," THEN I$ =  MID$ (CN$,1,T - 1):CN$ =  RIGHT$ (CN$
, LEN (CN$) - T): GOTO 8110
 8080  IF  MID$ (CN$,T,1) = "#" THEN I$ =  MID$ (CN$,1,T - 1):CN$ = "": GOTO 811
0
 8090  NEXT 
 8100  POKE 960,0
 8110  IF O$ = "STOP" THEN O$ = "": GOTO 8210
 8120  IF  LEN (I$) = 0 THEN 8050
 8130 O$ = I$ + EL$: GOSUB 7000: GOTO 8290
 8140  POKE 960,0: & A / SP$:I$ =  MID$ (SP$,1): IF  PEEK (961) THEN 3290
 8150 CN$ = I$ + "#":O$ = "STOP"
 8160  IF  LEFT$ (I$,1) = "#" THEN I$ = "#":CN$ = ""
 8170  POKE 961,0: IF  PEEK (960) = 255 THEN CC = CC + 1: FOR T = 1 TO 500: NEXT
 : IF CC > 1 OR I$ = "OFF" THEN 8370
 8180  IF  PEEK (960) = 255 THEN 8140
 8190  IF  PEEK (1) = 128 THEN CN$ = "": GOTO 8230
 8200  IF  LEN (CN$) > 0 THEN 8060
 8210  IF  LEN (I$) <  > 1 AND  RIGHT$ (I$,1) = " " THEN I$ =  LEFT$ (I$, LEN (I
$) - 1): GOTO 8210
 8220  IF  LEN (I$) <  > 1 AND  LEFT$ (I$,1) = " " THEN I$ =  RIGHT$ (I$, LEN (I
$) - 1): GOTO 8220
 8230  IF  LEN (I$) = 0 AND CR = 1 THEN O$ = EL$: GOSUB 7000: GOTO 8250
 8240  IF  LEN (I$) = 0 THEN 8000
 8250  IF CA$ <  > "Y" THEN 8290
 8260  IF CF = 1 THEN  CALL 36798
 8270  IF I$ = "202 ON" THEN O$ = EL$ + "202 is now On.": GOSUB 7000: CALL 36798
:CF = 1
 8280  IF I$ = "202 OFF" THEN O$ = EL$ + "202 is now Off.": GOSUB 7000: CALL 385
39:CF = 0
 8290 CR = 0: RETURN 
 8300  IF CL$ = "N" THEN T$ = DA$: RETURN 
 8310  PR# 4: IN# 4: INPUT "#";T,T,T,T,T,B: INPUT "%";T$
 8320  PR# 0: POKE 56,102: POKE 57,213: CALL 1002
 8330  IF TI > T THEN T = TI + (60 - TI) + T
 8340 TL = CO - (T - TI)
 8350  IF TL <  = 0 THEN O$ = EL$ + "You are out of Time!  Later.": GOSUB 7000: 
GOTO 8370
 8360  RETURN 
 8370 A$ = OF$: GOSUB 8850: CALL 35848"OFF"
 8380  PRINT D$"OPENSTATS,L200"C$(15): PRINT D$"WRITESTATS,R"A: PRINT NA$: PRINT
 FI$: PRINT LE: PRINT AG: PRINT WE: PRINT AR: PRINT EX: PRINT GD: PRINT ST: PRIN
T TH: PRINT HP: PRINT PA$: PRINT WI: PRINT CH: PRINT LS: PRINT CA: PRINT CL: PRI
NT AD$: PRINT CP
 8390  PRINT FD: PRINT PO: PRINT TP: PRINT BA: PRINT PA: PRINT DE: PRINT DA$
 8400  FOR X = 1 TO SN: PRINT S(X): NEXT 
 8410  PRINT D$"CLOSE": RETURN 
 8420  IF  LEN (O$) < 40 THEN 8520
 8430 Y = 40
 8440 X = 0
 8450  IF  MID$ (O$,Y - X,1) = " " THEN B$(0) =  LEFT$ (O$,(Y - 1) - X):B$(0) = 
B$(0) + EL$ +  RIGHT$ (O$, LEN (O$) - (Y - X)): GOTO 8470
 8460 X = X + 1: GOTO 8450
 8470 O$ = B$(0)
 8480  IF (Y + 40) >  LEN (O$) THEN 8520
 8490 Y = Y + 39
 8500 Y = (Y - X) + 1
 8510  GOTO 8440
 8520  RETURN 
 8530  PRINT : PRINT D$"OPEND-"B$(1)C$(20)
 8540  PRINT D$"APPENDD-"B$(1)
 8550  PRINT D$"WRITED-"B$(1)
 8560  PRINT "You Killed " + NA$ + " On " + DA$
 8570  PRINT 
 8580  PRINT "You got " +  STR$ (GD) + " Gold."
 8590  PRINT "You got " +  STR$ (EX) + " Experience."
 8600  IF AM = 1 THEN  PRINT "You also got his " + WP$
 8610  IF AM <  > 1 THEN  PRINT "You also got " +  STR$ (B(1)) + " gold for his 
weapon.":GD = GD + B(1)
 8620  IF QA = 1 THEN  PRINT "You also got his " + AM$:QA = 0
 8630  PRINT 
 8640  PRINT 
 8650  PRINT D$"CLOSE": RETURN 
 8660 O$ = EL$ + "Hit Points: " +  STR$ (HP) + " out of " +  STR$ (TH) + EL$ + "
     Power: " +  STR$ (PO) + " out of " +  STR$ (TP) + EL$ + "      Food: " +  S
TR$ (FD): GOSUB 7000: RETURN 
 8670  PRINT D$"OPENCSTAT"C$(17)
 8680  PRINT D$"APPENDCSTAT"
 8690  PRINT D$"WRITECSTAT"
 8700 B$(3) = "[" + NA$ + "]  VS  [" + B$(1) + "]"
 8710 X = (40 -  LEN (B$(3))) / 2
 8720 O$ = ""
 8730  FOR Y = 1 TO X:O$ = O$ + " ": NEXT :O$ = O$ + B$(3)
 8740  PRINT O$
 8750  PRINT 
 8760  IF B$(2) <  > "Dead" THEN B$(3) = "[" + B$(1) + "]": GOTO 8780
 8770 B$(3) = "*<-" + NA$ + "->*"
 8780 X = (40 -  LEN (B$(3))) / 2
 8790 O$ = ""
 8800  FOR Y = 1 TO X:O$ = O$ + " ": NEXT :O$ = O$ + B$(3)
 8810  PRINT O$
 8820  PRINT : PRINT 
 8830  PRINT D$"CLOSE"
 8840  RETURN 
 8850 Y =  VAL ( MID$ (A$,4,1)): POKE 43626,Y:Y =  VAL ( RIGHT$ (A$,1)): POKE 43
624,Y:Y =  VAL ( LEFT$ (A$,3)): IF YR$ = "Y" THEN  PRINT D$"OPEN VC,V"Y
 8855  IF TC$ = "Y" THEN  POKE 1014,10: POKE 952,215: POKE 953,251
 8860  RETURN 
 8870 T = A3: GOSUB 40:B(2) = T:MP = B(4):MW$ = B$(0):T = A4: GOSUB 60:MH = B(4)
:MH$ = B$(0): RETURN 
 8880 B$(0) = "":J = 0
 8890  FOR X = 1 TO  LEN (O$)
 8900 A$ =  MID$ (O$,X,1)
 8910  IF X = 1 THEN 8950
 8920 T =  ASC (A$): IF T < 65 OR T > 90 THEN J = 1: GOTO 8950
 8930  IF J = 1 THEN J = 0: GOTO 8950
 8940 T = T + 32:A$ =  CHR$ (T)
 8950 B$(0) = B$(0) + A$
 8960  NEXT 
 8970  RETURN 
 8980  IF FI <  > 20 THEN 9030
 8990 O$ = EL$ + "You enter the treasure room of this     treacherous castle, es
tatic that your   quest is nearly complete.  But wait...  It appears you are not
 alone in the     room!  It seems that the owner of this"
 9000 O$ = O$ + EL$ + "Castle is present.  He speaks:  ": GOSUB 7000:O$ = DL$ + 
"'How dare you disturb my castle!  You   Shall Die a Cruel death Scum!!!" + EL$:
 GOSUB 7000
 9010 G(6) = 0: IF HP > TH THEN HP = TH
 9020 B$(2) = "":MO$ = "N":X = NC: GOSUB 390:X = NC:B$(2) = "On": GOTO 660
 9030 A$ =  LEFT$ (D$(FI),1)
 9040 B$ =  RIGHT$ (D$(FI),1)
 9050 T = 0
 9060 O$ = DL$ + "[" + C$ + "'s Castle]" + DL$ + "Room " +  STR$ (FI) + DL$: GOS
UB 7000:B$(2) = "C"
 9070  IF A$ = "0" THEN 9100
 9080 X =  ASC (A$) - 65:X = X * 20:T =  INT (20 *  RND (1)) + X
 9090 Y = 0
 9100  IF B$ = "0" THEN 9150
 9110 G(8) =  ASC (B$) - 64:Y =  - 99: GOSUB 2470
 9120 O$ = EL$ + "You walk into a trap!" + DL$: GOSUB 7000:O$ = "A " + S$(G(8)) 
+ " Spell hit's you doing " +  STR$ (G(3)) + " damage." + EL$: GOSUB 8420: GOSUB
 7000:HP = HP - G(3)
 9130  IF HP < 1 THEN O$ = EL$ + "You are Dead!" + EL$: GOTO 1110
 9140  IF G(3) = 0 AND T > 0 THEN NE$ = "T"
 9150  IF T > 0 THEN X = T:O$ = DL$ + "There is a monster in the room.....": GOS
UB 7000: GOTO 2040
 9160 O$ = EL$ + "Phew!  The room appears to be empty...": GOSUB 7000: GOTO 2870

 9170 O$ = EL$ + "Enter Castle # to Attack(1-" +  STR$ (US) + ")->": GOSUB 6000
 9180  IF I$ = "Q" THEN 220
 9190 X =  VAL (I$): IF X < 1 OR X > US THEN 9170
 9200  IF A = X THEN 9170
 9210 AC$ = "Y":NC = X
 9220  ONERR  GOTO 9250
 9230  PRINT D$"OPENCASTLES,L39"C$(12): PRINT D$"READCASTLES,R"X: INPUT CS$: PRI
NT D$"CLOSE"
 9240  GOTO 9260
 9250  CALL  - 3288: GOSUB 9380
 9260  GOSUB 400
 9270  IF Y =  - 99 THEN Y = 0:O$ = DL$ + "Sorry, that persons Castle has alread
y  been robbed." + EL$: GOSUB 7000: GOTO 9170
 9280  IF LE > A1 + FL THEN O$ = EL$ + "You can only attack a User that is " +  
STR$ (FL) + " levels below you or higher." + EL$: GOSUB 8420: GOSUB 7000: GOTO 9
170
 9290  IF B$(1) = "Empty" THEN O$ = EL$ + "Sorry, that user has been deleted." +
 EL$: GOTO 9170
 9300 O$ = EL$ + "Attack " + B$(1) + "'s Castle Y/N->": GOSUB 8420: GOSUB 6000: 
IF I$ <  > "Y" THEN 9170
 9310 Y = 0
 9320  FOR X = 1 TO 38 STEP 2
 9330 Y = Y + 1:D$(Y) =  MID$ (CS$,X,2)
 9340  NEXT 
 9350 MO$ = "R": GOSUB 680:MO$ = "Y":C$ = B$(1):NC$ = B$(2)
 9360 FI = 1:B$(2) = "C": GOTO 8980
 9370 O$ = EL$ + "You get half of " + C$ + "'s Treasure which amounts to $" +  S
TR$ (NC) + " Gold Pieces!" + EL$: GOSUB 8420: GOSUB 7000:GD = GD + NC:FO = 4: GO
TO 130
 9380 CS$ = "00000000000000000000000000000000000000": RETURN 

]LOAD BRD
]LIST

 10  IF TC$ = "Y" THEN  POKE 1014,0: POKE 952,240: POKE 953,253
 20  CALL 54915
 30  IF A > 0 THEN 50
 40  PRINT  CHR$ (4)"SAVEBRD,S3": PRINT  CHR$ (4)"RUNMA,S6"
 50 B$(1) = "": ONERR  GOTO 140
 60 J = 1:BB = 1: GOTO 1120
 70  IF PB = 1 THEN  GOSUB 8530
 80 A$ = OF$: GOSUB 9210: CALL 35848"OFF"
 90 B$ = "B" +  STR$ (BB) + "/": GOSUB 8470: RETURN 
 100  GOSUB 90:J = 0:MN = N%(AM) + 1
 110  IF I$ = "N" THEN 8790
 120  IF B$(1) = "POST" THEN B$(1) = "POST1": GOTO 8790
 130  GOTO 150
 140  CALL  - 3288: CALL 54915: GOTO 120
 150  GOSUB 8380:O$ = DL$ + "[" +  STR$ (TL) + "][Last:" +  STR$ (J) + "/" +  ST
R$ (AM) + "][?=Menu]->": GOSUB 7000:CR = 1: GOSUB 8300: CALL 54915
 160  ONERR  GOTO 140
 170 B$(1) = ""
 180  IF J < 1 OR J > AM THEN 210
 190  IF Z(BB) < N%(J) THEN Z(BB) = N%(J)
 200  IF Z(BB) > N%(AM) THEN Z(BB) = N%(AM)
 210  IF I$ = "" THEN J = J + 1
 220  IF J > AM THEN O$ = EL$ + "No More Messages": GOSUB 7000:J = J - 1: GOTO 1
20
 230  IF I$ = "" THEN  GOSUB 1030: GOTO 120
 240  IF I$ = "N" AND PB = 1 THEN  GOSUB 8530
 250  IF I$ = "N" THEN 8730
 260  IF I$ = "E" AND (A = BM OR NA$ = SY$) THEN 1190
 270  IF I$ = "?" THEN F$ = "BRD.MENU": PRINT D$"OPEN"F$C$(17): PRINT D$"READ"F$
: HOME :O$ = SC$: GOSUB 7000: GOSUB 8570: GOTO 120
 280  IF I$ = "Q" AND PB = 1 THEN  GOSUB 8530
 290  IF I$ = "Q" THEN 8720
 300  IF I$ = "P" AND LL > 2 THEN O$ = EL$ + "You can only post 3 messages per c
all.": GOSUB 7000: GOTO 120
 310  IF I$ <  > "P" THEN 350
 320  IF NA$ = SY$ THEN 540
 330  IF PU = 1 OR (PU = 2 AND AD$ = "NO") THEN O$ = EL$ + "Sorry, you are not a
llowed to post on   this board.": GOSUB 7000: GOTO 120
 340  GOTO 540
 350  IF I$ = "K" AND (NA$ = SY$ OR A = BM) THEN 690
 360  IF I$ = "F" THEN 770
 370  IF J > 0 AND J <  = AM THEN O$ = DL$: GOSUB 7000: GOSUB 1030: GOTO 120
 380  IF I$ = "S" THEN 830
 390  IF I$ <  > "*" THEN 520
 400  PRINT D$"OPENBOARDS,L55"C$(3): FOR X = 1 TO B1: PRINT D$"READBOARDS,R"X: I
NPUT I$
 410  FOR Y = 1 TO 8: INPUT B(Y): NEXT 
 420 O$ = EL$ + "Name        : " + I$ + " #" +  STR$ (X) + EL$ + "Access      : 
":A$ = "Valid Users Only": IF B(6) = 2 THEN A$ = "All Users"
 430  IF B(5) = 4 THEN A$ = "Password needed"
 440 O$ = O$ + A$ + EL$ + "Post Access : ": RESTORE : FOR T = 1 TO 6: READ B$(T)
: NEXT :A$ = B$(B(5))
 450 O$ = O$ + A$ + EL$ + "Post Under  : ": FOR T = 1 TO 3: READ B$(T): NEXT :A$
 = B$(B(8))
 460 O$ = O$ + A$ + EL$ + "Board Master: ":A$ = "": IF B(7) < 10 THEN A$ = "00"
 470  IF B(7) > 9 AND B(7) < 100 THEN A$ = "0"
 480 A$ = "[" + A$ +  STR$ (BM) + "]"
 490 O$ = O$ + "User Number " + A$ + EL$: GOSUB 7000
 500  NEXT 
 510  PRINT D$"CLOSE": GOTO 150
 520  IF I$ = "B" THEN 1070
 530  GOTO 120
 540 O$ = EL$ + "[> Post/Leave Message <]" + DL$ + "[Subject]->": GOSUB 7000: PO
KE 1,128:CR = 1: GOSUB 8330: POKE 1,0:L1$ = I$: IF I$ = "" THEN 120
 550 D3$ = NA$
 560  IF PC = 2 THEN O$ = EL$ + "Leave message under fake name? Y/N:": GOSUB 600
0: IF I$ = "Y" THEN O$ = EL$ + "Post under what name?->": GOSUB 6000:D3$ = I$
 570  IF PC = 1 THEN O$ = EL$ + "Leave message Anonymously? Y/N:": GOSUB 6000: I
F I$ = "Y" THEN D3$ = "Anonymous"
 575  IF D3$ <  > NA$ THEN D3$ = D3$ + " #?": GOTO 580
 576 D3$ = D3$ + " #" +  STR$ (A)
 580  GOSUB 7010: IF  NOT X THEN 120
 590 TM = TM + 1
 600 B(0) =  - 99
 610 O$ = DL$ + "|Subject | [" + L1$ + "]" + EL$ + "|Left By | [" + D3$ + "]" + 
EL$ + "|Board #" +  STR$ (BB) + "|" + EL$: GOSUB 7000:O$ = EL$ + "[Hold..] Writi
ng Message": GOSUB 7000: GOSUB 8380
 620 B(0) = 0:LL = LL + 1
 630  PRINT D$"OPEN"B$MN",V"V",S"S",D"D: PRINT D$"DELETE"B$MN: PRINT D$"OPEN"B$M
N: PRINT D$"WRITE"B$MN: PRINT "Posted By: "D3$
 650  PRINT "Date     : "T$
 660  PRINT : FOR Z = 1 TO X: PRINT D$(Z): NEXT Z: PRINT D$"CLOSE":AM = AM + 1:T
$(AM) = L1$:N%(AM) = MN:MN = MN + 1:O$ = " Done!": GOSUB 7000:D3$ = ""
 665  IF GP$ = "Y" THEN X = LE * 200:GD = GD + X:EX = EX + X:FD = FD + 25:O$ = D
L$ + "Gold, Experience, and Food added!": GOSUB 7000
 670  IF AM < AB + 1 THEN PB = 1: GOTO 120
 680 O$ = DL$ + "[Hold..] Deleteing Msg. 1" + EL$: GOSUB 7000:J = 1: GOTO 720
 690 O$ = EL$ + "Delete Messages" + DL$ + "Message [CR=Quit] #":CR = 1: GOSUB 70
00: GOSUB 930
 700 O$ = EL$ + "Msg # [" +  STR$ (J) + "]" + EL$ + "Title [" + T$(J) + "]" + DL
$ + "Delete this ?": GOSUB 7000: GOSUB 8350: IF I$ <  > "Y" THEN 120
 710 TM = TM - 1
 720  GOSUB 730: GOTO 120
 730  PRINT D$"OPEN"B$N%(J)",V"V",S"S",D"D: PRINT D$"CLOSE": PRINT D$"DELETE"B$N
%(J): IF J > AM THEN 760
 740 AM = AM - 1
 750  FOR X = J TO AM:T$(X) = T$(X + 1):N%(X) = N%(X + 1): NEXT X
 760 PB = 1:O$ = EL$ + "Message Deleted!": GOTO 7000
 770 O$ = DL$ + "Forward Sequential Read" + DL$ + "Start at [#,CR]:": GOSUB 7000
:CR = 1: GOSUB 8000
 780  IF I$ = "Q" THEN 150
 790 J =  VAL (I$): IF J < 1 OR J > AM THEN 770
 800 O$ = DL$ + EL$: GOSUB 7000
 810  GOSUB 1030: GOSUB 960: IF J < AM THEN J = J + 1: GOTO 810
 820  GOTO 120
 830 O$ = EL$ + "Scan Messages" + DL$ + "Start [CR=Quit] #": GOSUB 7000: GOSUB 9
30
 840 O$ = EL$: GOSUB 7000
 850 F = 0:Z = J
 860 O$ = "    ": IF Z(BB) < N%(J) THEN O$ = "  % "
 865 O$ = EL$ + O$ + "[" +  RIGHT$ ("(0" +  STR$ (J),2) + "] " + T$(J): GOSUB 70
00
 870  IF J = AM AND B$(2) = "SCAN" THEN 910
 880  IF J = AM THEN 120
 890  IF J < Z + 9 THEN J = J + 1: GOTO 860
 900 O$ = DL$ + "More? ": GOSUB 7000: GOSUB 8350: IF I$ = "Y" THEN Z = J + 1:J =
 J + 1: GOTO 860
 910  IF B$(2) = "SCAN" THEN B$(2) = "":J = G(1):O$ = DL$: GOSUB 7000: GOTO 8810

 920  GOTO 120
 930 CR = 1: GOSUB 8300: IF I$ = "" THEN  POP : GOTO 120
 940  IF  NOT J OR J > AM THEN O$ = EL$ + "Message Doesn't Exist!": GOSUB 7000: 
POP : GOTO 120
 950  RETURN 
 960  IF  PEEK (960) = 3 THEN  POP : GOTO 120
 970  IF  PEEK (960) = 2 THEN  RETURN 
 980  GOSUB 8380:O$ = EL$ + "[R/e-read CR/next Q/uit->": GOSUB 7000:CR = 1: GOSU
B 8000
 990  IF I$ = "N" OR I$ = "" THEN  RETURN 
 1000  IF I$ = "Q" THEN  POP : GOTO 120
 1010  IF I$ = "R" THEN  GOSUB 1030: GOTO 960
 1020 O$ = EL$: GOSUB 7000: GOTO 980
 1030  IF LR < N%(J) THEN LR = N%(J)
 1040  IF NN < N%(J) THEN NN = N%(J)
 1050  IF J > 1 AND N%(J) < N%(J - 1) THEN LR = N%(J)
 1060 O$ = DL$ + "Message: " +  STR$ (J) + "/" +  STR$ (AM) + EL$ + "Subject: " 
+ T$(J) + EL$: GOSUB 7000:F$ = B$ +  STR$ (N%(J)): GOTO 8550
 1070  IF PB = 1 THEN O$ = DL$ + "[Hold..] Saving Data" + EL$: GOSUB 7000: GOSUB
 8530
 1080  IF I$ = "N" THEN BB = BB + 1:J = BB: GOTO 1120
 1090 O$ = EL$ + "[Board to Enter (1-" +  STR$ (B1) + ")]->": GOSUB 7000: GOSUB 
8300
 1100  IF J < 1 OR J > B1 THEN 1090
 1110  IF Z(BB) > N%(AM) THEN Z(BB) = N%(AM)
 1120  PRINT D$"OPENBOARDS,L55"C$(3): PRINT D$"READBOARDS,R"J: INPUT L1$,V,AB,S,
D,PU,RU,BM,PC,BP$: PRINT D$"CLOSE":O$ = EL$ + "Entering the " + L1$ + " Board": 
GOSUB 7000:BB = J
 1130  IF PU = 4 THEN O$ = DL$ + "A Guard walks up to and says: " + DL$ + "Ok Bu
d, what's the password?: ": GOSUB 6000: IF I$ <  > BP$ THEN O$ = EL$ + "Trying t
o sneak by eh?...Get Lost!" + EL$: GOSUB 7000: GOTO 1170
 1140  IF RU = 1 AND AD$ = "NO" THEN 1160
 1150  GOTO 100
 1160 O$ = EL$ + "Sorry, this board is for Validated      users only" + EL$: GOS
UB 7000
 1170 O$ = EL$ + "Loading another board..." + EL$:J = J + 1: GOSUB 7000: IF J > 
B1 THEN 8720
 1180  GOTO 1120
 1190  HOME :O$ = SC$: GOSUB 7000
 1200 O$ = DL$ + "Welcome Board Master!" + DL$ + "What do you want to change?" +
 DL$ + "1. Title: " + L1$ + EL$ + "2. Who can post: ": GOTO 1220
 1210  DATA  Sysop Only, Val. users only,All Users,Password needed
 1220  RESTORE : FOR X = 1 TO 4: READ B$(X): NEXT 
 1230 O$ = O$ + B$(PU) + EL$ + "3. Who can read: "
 1240  FOR X = 1 TO 2: READ B$(X): NEXT :O$ = O$ + B$(RU) + EL$ + "4. Mesg. Post
ed under: ": GOTO 1260
 1250  DATA  Val. users only,All Users
 1260  FOR X = 1 TO 3: READ B$(X): NEXT :O$ = O$ + B$(PC) + EL$: IF PU = 4 THEN 
O$ = O$ + "5. Password: " + BP$
 1270  GOSUB 7000: GOTO 1290
 1280  DATA  Anonymous,Any Handle,Actual User Name
 1290 O$ = DL$ + "Edit Which(S=Save)->": GOSUB 6000
 1300  IF I$ = "S" THEN  PRINT D$"OPENBOARDS,L55"C$(3): PRINT D$"WRITEBOARDS,R"B
B: PRINT L1$: PRINT V: PRINT AB: PRINT S: PRINT D: PRINT PU: PRINT RU: PRINT BM:
 PRINT PC: PRINT BP$: PRINT D$"CLOSE":O$ = DL$ + "Done!": GOSUB 7000: GOTO 150
 1310 Y =  VAL (I$): IF Y = 0 OR I$ = "Q" THEN 150
 1311  IF Y <  > 1 THEN 1320
 1312  POKE 1,128:O$ = EL$ + "Enter new Title->": GOSUB 6000:L1$ = I$: IF  LEN (
I$) > 25 THEN O$ = EL$ + "Too Long...25 char max." + EL$: GOSUB 7000: GOTO 1311
 1315  POKE 1,0: GOTO 1190
 1320  RESTORE : FOR X = 1 TO 4: READ B$(X): NEXT 
 1330  IF Y = 2 THEN O$ = DL$ + "Who can post:" + DL$:Z = 4: GOSUB 1400:PU = X: 
GOTO 1190
 1340  FOR X = 1 TO 2: READ B$(X): NEXT 
 1350  IF Y = 3 THEN O$ = "Who can read:" + DL$:Z = 2: GOSUB 1400:RU = X: GOTO 1
190
 1360  FOR X = 1 TO 3: READ B$(X): NEXT 
 1370  IF Y = 4 THEN O$ = "Message posted under:" + DL$:Z = 3: GOSUB 1400:PC = X
: GOTO 1190
 1380  IF Y = 5 THEN O$ = EL$ + "Enter new Password: ": GOSUB 6000:BP$ = I$: IF 
 LEN (I$) > 7 THEN O$ = EL$ + "Too long.  7 Char Max." + EL$: GOSUB 7000: GOTO 1
380
 1390  GOTO 1190
 1400  FOR X = 1 TO Z:O$ = O$ +  STR$ (X) + ". " + B$(X) + EL$: NEXT :O$ = O$ + 
EL$ + "Which->": GOSUB 6000:X =  VAL (I$): IF X < 1 OR X > Z THEN 1400
 1410  RETURN 
 6000  GOSUB 7000: GOSUB 8000: RETURN 
 7000  & B / O$: POKE 960,0: RETURN 
 7010  HOME :O$ = SC$ + EL$ + "  [" +  STR$ (ML) + "] Lines - [/EX] Ends  [/S] S
aves": GOSUB 7000:O$ = EL$ + "[/UP] Redo last line  [/LN] Line Number" + DL$: GO
SUB 7000:X = 1
 7015  IF CA$ <  > "Y" THEN 7030
 7020  POKE 36996,76: POKE 36998,142
 7030 CR = 1: POKE 1,128: GOSUB 8000:D$(X) = I$: POKE 1,0: IF  PEEK (872) = 1 TH
EN  POKE 0,VW
 7040  IF I$ = "/EX" OR I$ = "/ex" THEN D$(X) = "": GOTO 7120
 7050  IF I$ = "/UP" OR I$ = "/up" AND X > 1 THEN O$ = "[Retype the line]" + EL$
: GOSUB 7000:X = X - 1: GOTO 7030
 7060  IF I$ = "/S" OR I$ = "/s" THEN D$(X) = "":I$ = "S": GOTO 7160
 7070  IF I$ = "/LN" OR I$ = "/ln" THEN O$ = "[Line # " +  STR$ (X) + "]" + EL$:
 GOSUB 7000:X = X - 1
 7080  IF X = ML - 5 THEN O$ = "[5] More lines" + EL$: GOSUB 7000
 7090  POKE 38689,0: IF  PEEK (36712) = 1 THEN  POKE 0,VW
 7100 X = X + 1: IF X <  = ML THEN 7030
 7110 O$ = EL$ + "That's [" +  STR$ (ML) + "] lines" + EL$: GOSUB 7000
 7120 O$ = EL$ + "[Edit/S/?]->": GOSUB 7000: GOSUB 8370
 7130  IF I$ = "?" THEN O$ = DL$ + "S)ave, L)ist, C)ontinue, F)ix, Q)uit" + EL$:
 GOSUB 7000: GOTO 7120
 7140  IF I$ = "Q" THEN  GOSUB 7350:X = 0: POKE 36996,169: POKE 36998,32:O$ = EL
$ + "[Message Aborted!]": GOTO 7000
 7150  IF I$ = "L" THEN A$ = "": GOSUB 7290: GOTO 7120
 7160  IF I$ = "S" OR I$ = "O" THEN X = X - 1: POKE 36996,169: POKE 36998,32: RE
TURN 
 7170  IF I$ = "N" THEN  GOSUB 7350:O$ = EL$: GOSUB 7000: GOTO 7010
 7180  IF I$ = "F" THEN 7210
 7190  IF I$ = "C" THEN A$ = "":Z = X - 1:F = Z - 3:F = F * (F >  - 1) + 1: GOSU
B 7320:X = X - 1: GOTO 7100
 7200  GOTO 7120
 7210 O$ = EL$ + "List Lines [Y/N]:": GOSUB 7000: GOSUB 8370
 7220  IF I$ = "N" THEN 7250
 7230  IF I$ = "Y" THEN A$ = "X": GOSUB 7290: GOTO 7250
 7240  GOTO 7210
 7250 O$ = DL$ + "Edit Line [CR=Quit] #": GOSUB 7000:CR = 1: GOSUB 8300
 7260  IF I$ = "" THEN 7120
 7270  IF J < 1 OR J >  = X THEN O$ = EL$ + "[Line Doesn't Exist!]" + EL$: GOSUB
 7000: GOTO 7120
 7280 A$ = "[" +  RIGHT$ ("0" +  STR$ (J) + "] ",4):O$ = EL$ + A$ + D$(J) + EL$ 
+ A$: GOSUB 7000:CR = 1: POKE 1,128: GOSUB 8000:D$(J) = I$: POKE 1,0: GOTO 7210
 7290 O$ = DL$ + "List from [CR=Lists all] #": GOSUB 7000:CR = 1: GOSUB 8300:F =
 1:Z = X - 1: IF I$ = "" THEN 7310
 7300 F = J:O$ = "       To [CR=To The End] #": GOSUB 7000:CR = 1: GOSUB 8300:Z 
= J: IF I$ = "" THEN Z = X - 1
 7310  IF F < 1 OR Z >  = X THEN O$ = EL$ + "[Line # Doesn't Exist!]" + EL$: GOT
O 7000
 7320 O$ = EL$: GOSUB 7000: IF X < 2 THEN  RETURN 
 7330  FOR J = F TO Z: IF A$ > "" THEN A$ = "[" +  RIGHT$ ("0" +  STR$ (J),2) + 
"] "
 7340 O$ = A$ + D$(J) + EL$: GOSUB 7000: NEXT J: RETURN 
 7350  IF X > 1 THEN O$ = EL$ + "Verify? [Y/N]:": GOSUB 7000: GOSUB 8370: IF I$ 
<  > "Y" THEN  POP : GOTO 7120
 7360  RETURN 
 8000 CC = 0: IF  PEEK (1) = 128 AND CF = 1 AND CA$ = "Y" THEN CA$ = "N": CALL 3
8539:CF = 9
 8010  IF CF = 9 AND  PEEK (1) <  > 128 THEN CF = 1:CA$ = "Y"
 8020  IF CA$ <  > "Y" OR  LEN (CN$) > 1 THEN 8040
 8030  IF CF = 1 THEN  CALL 38539
 8040  IF  PEEK (1) = 128 THEN 8140
 8050  IF  LEN (CN$) = 0 THEN 8140
 8060  FOR T = 1 TO  LEN (CN$)
 8070  IF  MID$ (CN$,T,1) = "," THEN I$ =  MID$ (CN$,1,T - 1):CN$ =  RIGHT$ (CN$
, LEN (CN$) - T): GOTO 8110
 8080  IF  MID$ (CN$,T,1) = "#" THEN I$ =  MID$ (CN$,1,T - 1):CN$ = "": GOTO 811
0
 8090  NEXT 
 8100  POKE 960,0
 8110  IF O$ = "STOP" THEN O$ = "": GOTO 8210
 8120  IF  LEN (I$) = 0 THEN 8050
 8130 O$ = I$ + EL$: GOSUB 7000: GOTO 8290
 8140  POKE 960,0: & A / SP$:I$ =  MID$ (SP$,1): IF  PEEK (961) THEN 8690
 8150 CN$ = I$ + "#":O$ = "STOP"
 8160  IF  LEFT$ (I$,1) = "#" THEN I$ = "#":CN$ = ""
 8170  POKE 961,0: IF  PEEK (960) = 255 THEN CC = CC + 1: IF CC > 1 THEN 8460
 8180  IF  PEEK (960) = 255 OR I$ = "OFF" THEN 70
 8190  IF  PEEK (1) = 128 THEN CN$ = "": GOTO 8230
 8200  IF  LEN (CN$) > 0 THEN 8060
 8210  IF  LEN (I$) <  > 1 AND  RIGHT$ (I$,1) = " " THEN I$ =  LEFT$ (I$, LEN (I
$) - 1): GOTO 8210
 8220  IF  LEN (I$) <  > 1 AND  LEFT$ (I$,1) = " " THEN I$ =  RIGHT$ (I$, LEN (I
$) - 1): GOTO 8220
 8230  IF  LEN (I$) = 0 AND CR = 1 THEN O$ = EL$: GOSUB 7000: GOTO 8250
 8240  IF  LEN (I$) = 0 THEN 8000
 8250  IF CA$ <  > "Y" THEN 8290
 8260  IF CF = 1 THEN  CALL 36798
 8270  IF I$ = "202 ON" THEN O$ = EL$ + "202 is now On.": GOSUB 7000: CALL 36798
:CF = 1
 8280  IF I$ = "202 OFF" THEN O$ = EL$ + "202 is now Off.": GOSUB 7000: CALL 385
39:CF = 0
 8290 CR = 0: RETURN 
 8300  GOSUB 8000: IF I$ = "" THEN  RETURN 
 8310 J =  INT ( VAL (I$)): IF J < 0 THEN J = 0
 8320  RETURN 
 8330  POKE 2,255: GOSUB 8000: POKE 2,0: IF I$ = "" THEN  RETURN 
 8340  RETURN 
 8350  GOSUB 8000: IF I$ = "" THEN  RETURN 
 8360  RETURN 
 8370  GOTO 8000
 8380  IF CL$ <  > "Y" THEN T$ = DA$: RETURN 
 8390  PR# 4: IN# 4: INPUT "#";T,T,T,T,T,B: INPUT "%";T$
 8400  IF TI = 0 THEN TI = T
 8410  PR# 0: POKE 56,102: POKE 57,213: CALL 1002
 8420  IF TI > T THEN T = TI + (60 - TI) + T
 8430 TL = CO - (T - TI)
 8440  IF B(0) =  - 99 THEN 8460
 8450  IF TL <  = 0 THEN O$ = EL$ + "You are out of Time!  Later.": GOSUB 7000: 
POP : GOTO 70
 8460  RETURN 
 8470 O$ = EL$: GOSUB 7000
 8480  PRINT D$"OPENS"BB",V"V",S"S",D"D: PRINT D$"READS"BB
 8490  & E / ZZ$:AM =  VAL (ZZ$):O$ = DL$ + "Active Messages: " +  STR$ (AM): GO
SUB 7000
 8500 O$ = DL$ + "Loading Titles....": GOSUB 7000: IF ZZ$ =  CHR$ (0) THEN 8520
 8510  FOR X = 1 TO AM: INPUT N%(X),T$(X): NEXT X
 8520  PRINT D$"CLOSE":BL = BB:NN = NB:O$ = "Done!": GOSUB 7000: RETURN 
 8530  PRINT D$"OPENS"BB",V"V",S"S",D"D: PRINT D$"WRITES"BB: PRINT AM: FOR X = 1
 TO AM: PRINT N%(X)","T$(X): NEXT X: PRINT D$"CLOSE"
 8540 PB = 0: RETURN 
 8550 O$ = EL$: GOSUB 7000: IF RT = 2 THEN O$ = SC$ + EL$: GOSUB 7000
 8560  POKE 960,0: PRINT D$"OPEN"F$",V"V",S"S",D"D: PRINT D$"READ"F$
 8570  IF CF <  > 1 THEN 8640
 8580 C = 1
 8590  & E / ZZ$: IF  LEN (ZZ$) > 0 THEN A$ = ZZ$: IF  ASC ( LEFT$ (A$,1)) = 0 T
HEN C =  - 1: GOTO 8620
 8600 C = C + 1:O$ = EL$ + ZZ$: GOSUB 7000
 8610  IF C <  > 16 THEN 8590
 8620 O$ = DL$ + "CR) Continue or Q)uit:":CR = 1: GOSUB 6000: IF I$ = "Q" OR C =
  - 1 THEN 8650
 8630  GOTO 8580
 8640  & C
 8650  PRINT D$"CLOSE": IF  PEEK (960) = 255 THEN 70
 8660  IF  PEEK (960) =  PEEK (970) THEN  POKE 960,3:O$ = EL$: GOTO 7000
 8670  IF  PEEK (960) =  PEEK (971) THEN  POKE 960,2
 8680  RETURN 
 8690 A$ = CH$: GOSUB 9210: CALL 35848"CHAT"
 8700  RETURN 
 8710 O$ = DL$ + "Return to Main Dungeon? [Y/N]:": GOSUB 7000: GOSUB 8370: IF I$
 <  > "Y" THEN 120
 8720 O$ = DL$ + "[%] Hold:  Heading back to Main.....[%]" + EL$: GOSUB 7000:A$ 
= MA$: GOSUB 9210: CALL 35848"MAIN"
 8730 O$ = DL$ + "Do you want a Command Line? Y/N: ": GOSUB 6000: IF I$ <  > "Y"
 AND I$ <  > "N" THEN 8730
 8740 B$(8) = I$
 8750 O$ = EL$ + "Enter Starting Board(1-" +  STR$ (B1) + ")->": GOSUB 6000:X = 
 VAL (I$): IF X < 1 OR X > B1 THEN 8750
 8760 I$ = "N"
 8770  IF BB = X THEN 8790
 8780 BB = X - 1: GOTO 1070
 8790  FOR X = 1 TO AM: IF Z(BB) = N%(X) THEN J = X: GOTO 8810
 8800  NEXT 
 8810 O$ = DL$: GOSUB 7000: IF J = AM AND BB = B1 THEN O$ = DL$ + "No New Messag
es." + DL$ + "[Quickscan Complete!]": GOSUB 7000: GOTO 120
 8820  IF J = AM THEN O$ = "No New Messages On Board " +  STR$ (BB) + "." + DL$:
 GOSUB 7000:I$ = "N": GOTO 1070
 8830  IF B$(1) = "POST1" THEN B$(1) = "": GOTO 9110
 8840 O$ = "New Messages on Board " +  STR$ (BB) + "-> [" +  STR$ (AM - J) + "]"
: GOSUB 7000
 8850 CR = 1:O$ = DL$ + "[?/ Menu  [CR] Continue]->": GOSUB 6000
 8860  IF I$ = "" THEN I$ = "N": GOTO 9000
 8870  IF I$ <  > "?" THEN 8890
 8880 O$ = EL$ + "E)nter Starting Number" + EL$ + "R)eset Command Line" + EL$ + 
"S)kip Board" + EL$ + "Q)uit" + EL$ + "V)iew New Titles" + DL$: GOSUB 7000: GOTO
 8840
 8890  IF I$ = "Q" THEN 120
 8900  IF I$ = "S" AND BB = B1 THEN O$ = EL$ + "[Quickscan Complete!]": GOSUB 70
00: GOTO 120
 8910  IF I$ = "S" THEN I$ = "N": GOTO 1070
 8920  IF I$ = "V" THEN G(1) = J:B$(2) = "SCAN":J = J + 1
 8930  IF I$ = "V" THEN 840
 8940  IF I$ = "E" THEN 8980
 8950  IF I$ <  > "R" THEN 8810
 8960  IF B$(8) = "Y" THEN B$(8) = "N":O$ = EL$ + "Command Line Off": GOSUB 7000
: GOTO 8810
 8970 B$(8) = "Y":O$ = EL$ + "Command Line On": GOSUB 7000: GOTO 8810
 8980  IF I$ = "E" THEN O$ = EL$ + "Enter Starting #": GOSUB 6000:X =  VAL (I$):
 IF X < J + 1 OR X > AM THEN O$ = EL$ + "Invalid Number!":I$ = "E": GOTO 8980
 8990 J = X - 1
 9000 J = J + 1
 9010  IF J > AM AND BB = B1 THEN O$ = DL$ + "[Quickscan Complete!]": GOSUB 7000
: GOTO 120
 9020  IF J > AM AND BB <  > B1 + 1 THEN I$ = "N": GOTO 1070
 9030  GOSUB 8380: GOSUB 1030:Z(BB) = N%(J)
 9040  IF B$(8) = "Y" THEN 9110
 9050  GOTO 9000
 9060  IF I$ = "Q" THEN 120
 9070  IF I$ = "" THEN 9000
 9080  IF I$ = "R" THEN 9030
 9090  IF I$ = "S" AND J = AM THEN J = J + 1: GOTO 9010
 9100 J = J + 1:Z(BB) = N%(J)
 9110 O$ = DL$ + "Next Title ["
 9120  IF J = AM THEN O$ = O$ + "End of Board " +  STR$ (BB) + ".]": GOTO 9140
 9130 O$ = O$ + T$(J + 1) + "]"
 9140 O$ = O$ + DL$
 9150 O$ = O$ + "[P/ost Q/uit R/e-Read S/kip [CR]/next]" + DL$ + "Which->"
 9160 CR = 1
 9170  GOSUB 6000
 9171  IF I$ <  > "P" THEN 9190
 9175  IF (PU = 1 OR (PU = 2 AND AD$ = "NO")) AND SY$ <  > NA$ THEN O$ = EL$ + "
Sorry, you are not allowed to post on   this board.": GOSUB 7000: GOTO 9110
 9180 B$(1) = "POST": GOTO 540
 9190  IF I$ <  > "R" AND I$ <  > "Q" AND I$ <  > "S" AND I$ <  > "" THEN 9110
 9200  GOTO 9060
 9210 Y =  VAL ( MID$ (A$,4,1)): POKE 43626,Y:Y =  VAL ( RIGHT$ (A$,1)): POKE 43
624,Y:Y =  VAL ( LEFT$ (A$,3)): IF YR$ = "Y" THEN  PRINT D$"OPEN VC,V"Y
 9215  IF TC$ = "Y" THEN  POKE 1014,10: POKE 952,215: POKE 953,251
 9220  RETURN 

]O
]
]
]
]LOAD CASTLE EDITOR
]LIST

 5  IF TC$ = "Y" THEN  POKE 1014,0: POKE 952,240: POKE 953,253
 10  CALL 54915:Y = 0
 20  IF A > 0 THEN 40
 30  PRINT  CHR$ (4)"SAVECASTLE EDITOR,S3": PRINT  CHR$ (4)"RUNGA,S6"
 40 L = 1
 50  IF LE > 1 THEN L = 2
 60  IF LE > 5 THEN L = 3
 70  IF LE > 10 THEN L = 4
 80  IF LE > 17 THEN L = 5
 90  IF LE > 25 THEN L = 6
 100  IF LE > 45 THEN L = 7
 110  IF LE > 65 THEN L = 8
 120  IF LE > 85 THEN L = 9
 130  IF LE > 95 THEN L = 10
 140  ONERR  GOTO 170
 150  PRINT D$"OPENCASTLES,L39"C$(12): PRINT D$"READCASTLES,R"A: INPUT CS$: PRIN
T D$"CLOSE"
 160  GOTO 180
 170  CALL  - 3288:CS$ = "00000000000000000000000000000000000000"
 180  FOR X = 1 TO 38 STEP 2
 190 Y = Y + 1
 200 D$(Y) =  MID$ (CS$,X,2)
 210  NEXT 
 220  GOSUB 8460
 230  HOME 
 240  ONERR  GOTO 260
 250  GOTO 270
 260  CALL  - 3288: GOTO 230
 270 O$ = SC$ + DL$ + "           -=>Castle Editor<=-" + DL$ + "1. Edit Castle" 
+ EL$ + "2. Pay Rent/Fees" + EL$ + "3. Castle Description/Help File" + DL$ + "[Y
ou owe $" +  STR$ (R) + "][Cmd]->"
 280  GOSUB 6000
 290  IF I$ = "Q" THEN 8320
 300  IF I$ = "3" THEN F$ = "CASTLE.DES":O$ = SC$: GOSUB 7000: HOME : GOSUB 8590
:O$ = EL$ + "[Press Return]":CR = 1: GOSUB 6000
 310  IF I$ = "1" THEN 370
 320  IF I$ <  > "2" THEN 230
 330  GOSUB 8460
 340  IF GD < R THEN O$ = EL$ + "You don't have enought gold!" + DL$ + "[Press R
eturn]":CR = 1: GOSUB 6000: GOTO 230
 350 UU = UU + R
 360 GD = GD - R:O$ = EL$ + "Your payment has been registerd.": GOSUB 7000: GOSU
B 8460: GOTO 230
 370  HOME :T = 0
 380 O$ = SC$ + "Room # / Monster / Trap" + DL$: GOSUB 7000
 390  FOR X = 1 TO 19
 400 T = T + 1
 410 O$ =  STR$ (X) + "] "
 420 A$ =  LEFT$ (D$(T),1)
 430 B$ =  RIGHT$ (D$(T),1)
 440  IF A$ = "0" THEN O$ = O$ + " - ": GOTO 470
 450 Y =  ASC (A$) - 64
 460 O$ = O$ + "Lev. " +  STR$ (Y) + " Mon. -"
 470  IF B$ = "0" THEN 500
 480 Y =  ASC (B$) - 64
 490 O$ = O$ + " " + S$(Y)
 500 O$ = O$ + EL$: GOSUB 7000
 510  NEXT 
 520 O$ = EL$ + "Edit Which(1-19)->": GOSUB 6000
 530  IF I$ = "Q" THEN CP$ = "N": GOSUB 8410: GOSUB 8460: GOTO 230
 540 B(1) =  VAL (I$): IF B(1) < 1 OR B(1) > 19 THEN 520
 550 O$ = EL$ + "Monster in the Room? Y/N->": GOSUB 6000: IF I$ = "N" THEN A$ = 
"0": GOTO 660
 560  HOME :O$ = SC$ + "Edit room #" +  STR$ (B(1)) + DL$ + "Which Monster: " + 
DL$ + "0] No monster in Room" + EL$: GOSUB 7000
 570 O$ = "1-" +  STR$ (L) + "] Level Monsters" + EL$: GOSUB 7000
 580 O$ = EL$ + "Which(?=Menu)->": GOSUB 6000:X =  VAL (I$): IF I$ = "?" THEN 56
0
 590  IF I$ = "Q" THEN 370
 600  IF X < 0 OR X > L THEN 580
 610  IF X = 0 THEN A$ = "0": GOTO 660
 620 B(2) = X * X * X * 100:O$ = EL$ + "A Level " +  STR$ (X) + " Monster's" + E
L$ + "Rent per call is $" +  STR$ (B(2)) + EL$ + "Rent monster? Y/N->": GOSUB 60
00: IF I$ <  > "Y" THEN 580
 630 A$ =  LEFT$ (D$(B(1)),1):B$ =  RIGHT$ (D$(B(1)),1)
 640 Y = 64 + X
 650 A$ =  CHR$ (Y)
 660 O$ = EL$ + "Spell Trap in the Room? Y/N->": GOSUB 6000: IF I$ = "N" THEN B$
 = "0": GOTO 820
 670  HOME :O$ = SC$ + "Edit Room #" +  STR$ (B(1)) + DL$ + "Which Spell Trap:" 
+ DL$ + "0) No Spell" + EL$: GOSUB 7000
 680  FOR X = 1 TO 26
 690  IF S$(X) = "Death" OR S$(X) = "Negate" THEN 710
 700  IF U(X) = 0 THEN 720
 710 O$ =  STR$ (X) + ") " + S$(X) + EL$: GOSUB 7000
 720  NEXT 
 730 O$ = EL$ + "Which(?=Menu)->": GOSUB 6000
 740  IF I$ = "Q" THEN 370
 750  IF I$ = "?" THEN 660
 760  IF I$ = "0" THEN B$ = "0": GOTO 820
 770 X =  VAL (I$): IF X < 1 OR X > 26 THEN 730
 780  IF U(X) = 0 AND S$(X) <  > "Death" AND S$(X) <  > "Negate" THEN 730
 790 Y = 100 * X * X
 800 O$ = EL$ + "A " + S$(X) + " Spell Trap" + EL$ + "Rent per call is $" +  STR
$ (Y) + EL$ + "Rent Trap? Y/N->": GOSUB 6000: IF I$ <  > "Y" THEN 730
 810 Y = 64 + X:B$ =  CHR$ (Y)
 820 D$(B(1)) = A$ + B$: GOTO 370
 6000  GOSUB 7000: GOSUB 8000: RETURN 
 7000  & B / O$: POKE 960,0: RETURN 
 8000 CC = 0: IF  PEEK (1) = 128 AND CF = 1 AND CA$ = "Y" THEN CA$ = "N": CALL 3
8539:CF = 9
 8010  IF CF = 9 AND  PEEK (1) <  > 128 THEN CF = 1:CA$ = "Y"
 8020  IF CA$ <  > "Y" OR  LEN (CN$) > 1 THEN 8040
 8030  IF CF = 1 THEN  CALL 38539
 8040  IF  PEEK (1) = 128 THEN 8140
 8050  IF  LEN (CN$) = 0 THEN 8140
 8060  FOR T = 1 TO  LEN (CN$)
 8070  IF  MID$ (CN$,T,1) = "," THEN I$ =  MID$ (CN$,1,T - 1):CN$ =  RIGHT$ (CN$
, LEN (CN$) - T): GOTO 8110
 8080  IF  MID$ (CN$,T,1) = "#" THEN I$ =  MID$ (CN$,1,T - 1):CN$ = "": GOTO 811
0
 8090  NEXT 
 8100  POKE 960,0
 8110  IF O$ = "STOP" THEN O$ = "": GOTO 8210
 8120  IF  LEN (I$) = 0 THEN 8050
 8130 O$ = I$ + EL$: GOSUB 7000: GOTO 8290
 8140  POKE 960,0: & A / SP$:I$ =  MID$ (SP$,1): IF  PEEK (961) THEN 8310
 8150 CN$ = I$ + "#":O$ = "STOP"
 8160  IF  LEFT$ (I$,1) = "#" THEN I$ = "#":CN$ = ""
 8170  POKE 961,0: IF  PEEK (960) = 255 THEN CC = CC + 1: FOR T = 1 TO 500: NEXT
 : IF CC > 1 OR I$ = "OFF" THEN 8300
 8180  IF  PEEK (960) = 255 THEN 8140
 8190  IF  PEEK (1) = 128 THEN CN$ = "": GOTO 8230
 8200  IF  LEN (CN$) > 0 THEN 8060
 8210  IF  LEN (I$) <  > 1 AND  RIGHT$ (I$,1) = " " THEN I$ =  LEFT$ (I$, LEN (I
$) - 1): GOTO 8210
 8220  IF  LEN (I$) <  > 1 AND  LEFT$ (I$,1) = " " THEN I$ =  RIGHT$ (I$, LEN (I
$) - 1): GOTO 8220
 8230  IF  LEN (I$) = 0 AND CR = 1 THEN O$ = EL$: GOSUB 7000: GOTO 8250
 8240  IF  LEN (I$) = 0 THEN 8000
 8250  IF CA$ <  > "Y" THEN 8290
 8260  IF CF = 1 THEN  CALL 36798
 8270  IF I$ = "202 ON" THEN O$ = EL$ + "202 is now On.": GOSUB 7000: CALL 36798
:CF = 1
 8280  IF I$ = "202 OFF" THEN O$ = EL$ + "202 is now Off.": GOSUB 7000: CALL 385
39:CF = 0
 8290 CR = 0: RETURN 
 8300 A$ = OF$: GOSUB 8390: CALL 35848"OFF"
 8310 A$ = CH$: GOSUB 8390: CALL 35848"CHAT"
 8320 A$ = MA$: GOSUB 8390:O$ = EL$ + "[Hold...] Transporting to Main" + EL$: GO
SUB 7000: CALL 35848"MAIN"
 8330  IF  LEN (O$) < 40 OR  LEN (O$) > 79 THEN  RETURN 
 8340 X = 0
 8350  IF  MID$ (O$,40 - X,1) = " " THEN B$(0) =  LEFT$ (O$,39 - X):B$(0) = B$(0
) + EL$ +  RIGHT$ (O$, LEN (O$) - (40 - X)): GOTO 8370
 8360 X = X + 1: GOTO 8350
 8370 O$ = B$(0)
 8380  RETURN 
 8390 Y =  VAL ( MID$ (A$,4,1)): POKE 43626,Y:Y =  VAL ( RIGHT$ (A$,1)): POKE 43
624,Y:Y =  VAL ( LEFT$ (A$,3)): IF YR$ = "Y" THEN  PRINT D$"OPEN VC,V"Y
 8395  IF TC$ = "Y" THEN  POKE 1014,10: POKE 952,215: POKE 953,251
 8400  RETURN 
 8410 CS$ = ""
 8420  FOR X = 1 TO 19
 8430 CS$ = CS$ + D$(X)
 8440  NEXT 
 8450  PRINT D$"OPENCASTLES,L39"C$(12): PRINT D$"WRITECASTLES,R"A: PRINT CS$: PR
INT D$"CLOSE": RETURN 
 8460 R = 0
 8470  FOR X = 1 TO 19
 8480 A$ =  LEFT$ (D$(X),1)
 8490 B$ =  RIGHT$ (D$(X),1)
 8500  IF A$ = "0" THEN 8530
 8510 Y =  ASC (A$) - 64
 8520 R = R + (Y * Y * Y * 100)
 8530  IF B$ = "0" THEN 8560
 8540 Y =  ASC (B$) - 64
 8550 R = R + (Y * Y * 100)
 8560  NEXT 
 8570 R = R - UU: IF R < 1 THEN R = 0:CP$ = "Y"
 8580  RETURN 
 8590  POKE 960,0: PRINT D$"OPEN"F$""C$(17): PRINT  CHR$ (4)"READ"F$
 8600  IF CF <  > 1 THEN 8670
 8610 C = 1
 8620  & E / ZZ$: IF  LEN (ZZ$) > 0 THEN A$ = ZZ$: IF  ASC ( LEFT$ (A$,1)) = 0 T
HEN C =  - 1: GOTO 8650
 8630 C = C + 1:O$ = EL$ + ZZ$: GOSUB 7000
 8640  IF C <  > 16 THEN 8620
 8650 O$ = DL$ + "CR) Continue or Q)uit:":CR = 1: GOSUB 6000: IF I$ = "Q" OR C =
  - 1 THEN 8680
 8660  GOTO 8610
 8670  & C
 8680  PRINT D$"CLOSE": IF  PEEK (960) = 255 THEN 8430
 8690  IF  PEEK (960) =  PEEK (970) THEN  POKE 960,3:O$ = EL$: GOTO 7000
 8700  IF  PEEK (960) =  PEEK (971) THEN  POKE 960,2
 8710  RETURN 

]LOAD CASTLE EDITOR
]LIST

 5  IF TC$ = "Y" THEN  POKE 1014,0: POKE 952,240: POKE 953,253
 10  CALL 54915:Y = 0
 20  IF A > 0 THEN 40
 30  PRINT  CHR$ (4)"SAVECASTLE EDITOR,S3": PRINT  CHR$ (4)"RUNGA,S6"
 40 L = 1
 50  IF LE > 1 THEN L = 2
 60  IF LE > 5 THEN L = 3
 70  IF LE > 10 THEN L = 4
 80  IF LE > 17 THEN L = 5
 90  IF LE > 25 THEN L = 6
 100  IF LE > 45 THEN L = 7
 110  IF LE > 65 THEN L = 8
 120  IF LE > 85 THEN L = 9
 130  IF LE > 95 THEN L = 10
 140  ONERR  GOTO 170
 150  PRINT D$"OPENCASTLES,L39"C$(12): PRINT D$"READCASTLES,R"A: INPUT CS$: PRIN
T D$"CLOSE"
 160  GOTO 180
 170  CALL  - 3288:CS$ = "00000000000000000000000000000000000000"
 180  FOR X = 1 TO 38 STEP 2
 190 Y = Y + 1
 200 D$(Y) =  MID$ (CS$,X,2)
 210  NEXT 
 220  GOSUB 8460
 230  HOME 
 240  ONERR  GOTO 260
 250  GOTO 270
 260  CALL  - 3288: GOTO 230
 270 O$ = SC$ + DL$ + "           -=>Castle Editor<=-" + DL$ + "1. Edit Castle" 
+ EL$ + "2. Pay Rent/Fees" + EL$ + "3. Castle Description/Help File" + DL$ + "[Y
ou owe $" +  STR$ (R) + "][Cmd]->"
 280  GOSUB 6000
 290  IF I$ = "Q" THEN 8320
 300  IF I$ = "3" THEN F$ = "CASTLE.DES":O$ = SC$: GOSUB 7000: HOME : GOSUB 8590
:O$ = EL$ + "[Press Return]":CR = 1: GOSUB 6000
 310  IF I$ = "1" THEN 370
 320  IF I$ <  > "2" THEN 230
 330  GOSUB 8460
 340  IF GD < R THEN O$ = EL$ + "You don't have enought gold!" + DL$ + "[Press R
eturn]":CR = 1: GOSUB 6000: GOTO 230
 350 UU = UU + R
 360 GD = GD - R:O$ = EL$ + "Your payment has been registerd.": GOSUB 7000: GOSU
B 8460: GOTO 230
 370  HOME :T = 0
 380 O$ = SC$ + "Room # / Monster / Trap" + DL$: GOSUB 7000
 390  FOR X = 1 TO 19
 400 T = T + 1
 410 O$ =  STR$ (X) + "] "
 420 A$ =  LEFT$ (D$(T),1)
 430 B$ =  RIGHT$ (D$(T),1)
 440  IF A$ = "0" THEN O$ = O$ + " - ": GOTO 470
 450 Y =  ASC (A$) - 64
 460 O$ = O$ + "Lev. " +  STR$ (Y) + " Mon. -"
 470  IF B$ = "0" THEN 500
 480 Y =  ASC (B$) - 64
 490 O$ = O$ + " " + S$(Y)
 500 O$ = O$ + EL$: GOSUB 7000
 510  NEXT 
 520 O$ = EL$ + "Edit Which(1-19)->": GOSUB 6000
 530  IF I$ = "Q" THEN CP$ = "N": GOSUB 8410: GOSUB 8460: GOTO 230
 540 B(1) =  VAL (I$): IF B(1) < 1 OR B(1) > 19 THEN 520
 550 O$ = EL$ + "Monster in the Room? Y/N->": GOSUB 6000: IF I$ = "N" THEN A$ = 
"0": GOTO 660
 560  HOME :O$ = SC$ + "Edit room #" +  STR$ (B(1)) + DL$ + "Which Monster: " + 
DL$ + "0] No monster in Room" + EL$: GOSUB 7000
 570 O$ = "1-" +  STR$ (L) + "] Level Monsters" + EL$: GOSUB 7000
 580 O$ = EL$ + "Which(?=Menu)->": GOSUB 6000:X =  VAL (I$): IF I$ = "?" THEN 56
0
 590  IF I$ = "Q" THEN 370
 600  IF X < 0 OR X > L THEN 580
 610  IF X = 0 THEN A$ = "0": GOTO 660
 620 B(2) = X * X * X * 100:O$ = EL$ + "A Level " +  STR$ (X) + " Monster's" + E
L$ + "Rent per call is $" +  STR$ (B(2)) + EL$ + "Rent monster? Y/N->": GOSUB 60
00: IF I$ <  > "Y" THEN 580
 630 A$ =  LEFT$ (D$(B(1)),1):B$ =  RIGHT$ (D$(B(1)),1)
 640 Y = 64 + X
 650 A$ =  CHR$ (Y)
 660 O$ = EL$ + "Spell Trap in the Room? Y/N->": GOSUB 6000: IF I$ = "N" THEN B$
 = "0": GOTO 820
 670  HOME :O$ = SC$ + "Edit Room #" +  STR$ (B(1)) + DL$ + "Which Spell Trap:" 
+ DL$ + "0) No Spell" + EL$: GOSUB 7000
 680  FOR X = 1 TO 26
 690  IF S$(X) = "Death" OR S$(X) = "Negate" THEN 710
 700  IF U(X) = 0 THEN 720
 710 O$ =  STR$ (X) + ") " + S$(X) + EL$: GOSUB 7000
 720  NEXT 
 730 O$ = EL$ + "Which(?=Menu)->": GOSUB 6000
 740  IF I$ = "Q" THEN 370
 750  IF I$ = "?" THEN 660
 760  IF I$ = "0" THEN B$ = "0": GOTO 820
 770 X =  VAL (I$): IF X < 1 OR X > 26 THEN 730
 780  IF U(X) = 0 AND S$(X) <  > "Death" AND S$(X) <  > "Negate" THEN 730
 790 Y = 100 * X * X
 800 O$ = EL$ + "A " + S$(X) + " Spell Trap" + EL$ + "Rent per call is $" +  STR
$ (Y) + EL$ + "Rent Trap? Y/N->": GOSUB 6000: IF I$ <  > "Y" THEN 730
 810 Y = 64 + X:B$ =  CHR$ (Y)
 820 D$(B(1)) = A$ + B$: GOTO 370
 6000  GOSUB 7000: GOSUB 8000: RETURN 
 7000  & B / O$: POKE 960,0: RETURN 
 8000 CC = 0: IF  PEEK (1) = 128 AND CF = 1 AND CA$ = "Y" THEN CA$ = "N": CALL 3
8539:CF = 9
 8010  IF CF = 9 AND  PEEK (1) <  > 128 THEN CF = 1:CA$ = "Y"
 8020  IF CA$ <  > "Y" OR  LEN (CN$) > 1 THEN 8040
 8030  IF CF = 1 THEN  CALL 38539
 8040  IF  PEEK (1) = 128 THEN 8140
 8050  IF  LEN (CN$) = 0 THEN 8140
 8060  FOR T = 1 TO  LEN (CN$)
 8070  IF  MID$ (CN$,T,1) = "," THEN I$ =  MID$ (CN$,1,T - 1):CN$ =  RIGHT$ (CN$
, LEN (CN$) - T): GOTO 8110
 8080  IF  MID$ (CN$,T,1) = "#" THEN I$ =  MID$ (CN$,1,T - 1):CN$ = "": GOTO 811
0
 8090  NEXT 
 8100  POKE 960,0
 8110  IF O$ = "STOP" THEN O$ = "": GOTO 8210
 8120  IF  LEN (I$) = 0 THEN 8050
 8130 O$ = I$ + EL$: GOSUB 7000: GOTO 8290
 8140  POKE 960,0: & A / SP$:I$ =  MID$ (SP$,1): IF  PEEK (961) THEN 8310
 8150 CN$ = I$ + "#":O$ = "STOP"
 8160  IF  LEFT$ (I$,1) = "#" THEN I$ = "#":CN$ = ""
 8170  POKE 961,0: IF  PEEK (960) = 255 THEN CC = CC + 1: FOR T = 1 TO 500: NEXT
 : IF CC > 1 OR I$ = "OFF" THEN 8300
 8180  IF  PEEK (960) = 255 THEN 8140
 8190  IF  PEEK (1) = 128 THEN CN$ = "": GOTO 8230
 8200  IF  LEN (CN$) > 0 THEN 8060
 8210  IF  LEN (I$) <  > 1 AND  RIGHT$ (I$,1) = " " THEN I$ =  LEFT$ (I$, LEN (I
$) - 1): GOTO 8210
 8220  IF  LEN (I$) <  > 1 AND  LEFT$ (I$,1) = " " THEN I$ =  RIGHT$ (I$, LEN (I
$) - 1): GOTO 8220
 8230  IF  LEN (I$) = 0 AND CR = 1 THEN O$ = EL$: GOSUB 7000: GOTO 8250
 8240  IF  LEN (I$) = 0 THEN 8000
 8250  IF CA$ <  > "Y" THEN 8290
 8260  IF CF = 1 THEN  CALL 36798
 8270  IF I$ = "202 ON" THEN O$ = EL$ + "202 is now On.": GOSUB 7000: CALL 36798
:CF = 1
 8280  IF I$ = "202 OFF" THEN O$ = EL$ + "202 is now Off.": GOSUB 7000: CALL 385
39:CF = 0
 8290 CR = 0: RETURN 
 8300 A$ = OF$: GOSUB 8390: CALL 35848"OFF"
 8310 A$ = CH$: GOSUB 8390: CALL 35848"CHAT"
 8320 A$ = MA$: GOSUB 8390:O$ = EL$ + "[Hold...] Transporting to Main" + EL$: GO
SUB 7000: CALL 35848"MAIN"
 8330  IF  LEN (O$) < 40 OR  LEN (O$) > 79 THEN  RETURN 
 8340 X = 0
 8350  IF  MID$ (O$,40 - X,1) = " " THEN B$(0) =  LEFT$ (O$,39 - X):B$(0) = B$(0
) + EL$ +  RIGHT$ (O$, LEN (O$) - (40 - X)): GOTO 8370
 8360 X = X + 1: GOTO 8350
 8370 O$ = B$(0)
 8380  RETURN 
 8390 Y =  VAL ( MID$ (A$,4,1)): POKE 43626,Y:Y =  VAL ( RIGHT$ (A$,1)): POKE 43
624,Y:Y =  VAL ( LEFT$ (A$,3)): IF YR$ = "Y" THEN  PRINT D$"OPEN VC,V"Y
 8395  IF TC$ = "Y" THEN  POKE 1014,10: POKE 952,215: POKE 953,251
 8400  RETURN 
 8410 CS$ = ""
 8420  FOR X = 1 TO 19
 8430 CS$ = CS$ + D$(X)
 8440  NEXT 
 8450  PRINT D$"OPENCASTLES,L39"C$(12): PRINT D$"WRITECASTLES,R"A: PRINT CS$: PR
INT D$"CLOSE": RETURN 
 8460 R = 0
 8470  FOR X = 1 TO 19
 8480 A$ =  LEFT$ (D$(X),1)
 8490 B$ =  RIGHT$ (D$(X),1)
 8500  IF A$ = "0" THEN 8530
 8510 Y =  ASC (A$) - 64
 8520 R = R + (Y * Y * Y * 100)
 8530  IF B$ = "0" THEN 8560
 8540 Y =  ASC (B$) - 64
 8550 R = R + (Y * Y * 100)
 8560  NEXT 
 8570 R = R - UU: IF R < 1 THEN R = 0:CP$ = "Y"
 8580  RETURN 
 8590  POKE 960,0: PRINT D$"OPEN"F$""C$(17): PRINT  CHR$ (4)"READ"F$
 8600  IF CF <  > 1 THEN 8670
 8610 C = 1
 8620  & E / ZZ$: IF  LEN (ZZ$) > 0 THEN A$ = ZZ$: IF  ASC ( LEFT$ (A$,1)) = 0 T
HEN C =  - 1: GOTO 8650
 8630 C = C + 1:O$ = EL$ + ZZ$: GOSUB 7000
 8640  IF C <  > 16 THEN 8620
 8650 O$ = DL$ + "CR) Continue or Q)uit:":CR = 1: GOSUB 6000: IF I$ = "Q" OR C =
  - 1 THEN 8680
 8660  GOTO 8610
 8670  & C
 8680  PRINT D$"CLOSE": IF  PEEK (960) = 255 THEN 8430
 8690  IF  PEEK (960) =  PEEK (970) THEN  POKE 960,3:O$ = EL$: GOTO 7000
 8700  IF  PEEK (960) =  PEEK (971) THEN  POKE 960,2
 8710  RETURN 

]LOAD CHAT
]LIST

 5  IF TC$ = "Y" THEN  POKE 1014,0: POKE 952,240: POKE 953,253
 10  CALL 54915
 20  IF A > 0 THEN 40
 30  PRINT  CHR$ (4)"SAVECHAT,S3": PRINT  CHR$ (4)"RUNSTORES,S6"
 40  HOME : POKE 1,128
 50  ONERR  GOTO 760
 60 O$ = DL$ + "Audience Granted to " + NA$ + ".": GOSUB 160
 70  GOTO 8490
 80 A$ = OF$: GOSUB 8830: CALL 35848"OFF"
 90  IF CA$ <  > "Y" THEN 100
 95  POKE 36996,76: POKE 36998,142
 100 A$ = DL$ + "-=> " + SY$ + " Has arrived <=-" + DL$: & B / A$: POKE 2,0
 110  & A / SP$: IF  PEEK (961) THEN  POKE 961,0:O$ = EL$ + "Sysop has Left" + E
L$: GOSUB 160: POKE 36996,169: POKE 36998,32: RETURN 
 120  IF  PEEK (960) = 255 THEN 80
 130  IF SP$ = "" THEN O$ = EL$: GOSUB 160
 140  POKE 38689,0
 150  GOTO 110
 160  & B / O$: RETURN 
 170  PRINT : PRINT "F) ile to Read(Text Only)": PRINT "User Stats Editor": PRIN
T "Q) Quit"
 180  PRINT : PRINT "System (?=Help):";: GOSUB 8000
 190  ONERR  GOTO 760
 200  IF I$ = "U" THEN 260
 210  IF I$ = "F" THEN 710
 230  IF I$ = "?" THEN 170
 240  IF I$ = "Q" THEN 8510
 250  PRINT : PRINT "Invalid Command...": GOTO 180
 260  HOME 
 270  PRINT "[1] Calls Per Day: " +  STR$ (CP)
 280  PRINT "[2] Calls Today: " +  STR$ (CA)
 290  PRINT "[3] Total Calls: " +  STR$ (CL)
 300  PRINT "[4] Adventure Access: " + AD$
 310  PRINT "[5] Strength: " +  STR$ (ST)
 330  PRINT "[7] Agility: " +  STR$ (AG)
 340  PRINT "[8] Intelligence: " +  STR$ (CH)
 350  PRINT "[9] Wisdom: " +  STR$ (WI)
 360  PRINT "[10] Gold: " +  STR$ (GD)
 370  PRINT "[11] Food: " +  STR$ (FD)
 380  PRINT "[12] Experience: " +  STR$ (EX)
 390  PRINT "[13] Maximum Hit Points: " +  STR$ (TH)
 400  PRINT "[14] Hit Points: " +  STR$ (HP)
 410  PRINT "[15] Maximum Power: " +  STR$ (TP)
 420  PRINT "[16] Power: " +  STR$ (PO)
 430  PRINT "[17] Weapon: " + WP$
 440  PRINT "[18] Armor: " + AM$
 450  PRINT "Which(?): ";: GOSUB 8000: PRINT 
 460  IF I$ = "?" THEN 260
 470  IF I$ = "Q" THEN 170
 480 X =  VAL (I$): IF X < 1 OR X > 18 THEN 260
 490  IF X = 1 THEN  PRINT "Calls Per Day-> ";: GOSUB 8000:CP =  VAL (I$): GOTO 
260
 500  IF X = 2 THEN  PRINT "Calls Today->";: GOSUB 8000:CA =  VAL (I$): GOTO 260

 510  IF X = 3 THEN  PRINT "Total Calls->";: GOSUB 8000:CL =  VAL (I$): GOTO 260

 520  IF X = 4 THEN  PRINT "Adventure Access->";: GOSUB 8000:AD$ = I$: GOTO 260
 530  IF X = 5 THEN  PRINT "Strength->";: GOSUB 8000:ST =  VAL (I$): GOTO 260
 540  IF X = 6 THEN  PRINT "Dexterity->";: GOSUB 8000:DE =  VAL (I$): GOTO 260
 550  IF X = 7 THEN  PRINT "Agility->";: GOSUB 8000:AG =  VAL (I$): GOTO 260
 560  IF X = 8 THEN  PRINT "Intelligence->";: GOSUB 8000:CH =  VAL (I$): GOTO 26
0
 570  IF X = 9 THEN  PRINT "Wisdom->";: GOSUB 8000:WI =  VAL (I$): GOTO 260
 580  IF X = 10 THEN  PRINT "Gold->";: GOSUB 8000:GD =  VAL (I$): GOTO 260
 590  IF X = 11 THEN  PRINT "Food->";: GOSUB 8000:FD =  VAL (I$): GOTO 260
 600  IF X = 12 THEN  PRINT "Experience->";: GOSUB 8000:EX =  VAL (I$): GOTO 260

 610  IF X = 13 THEN  PRINT "Maximum Hit Points->";: GOSUB 8000:TH =  VAL (I$): 
GOTO 260
 620  IF X = 14 THEN  PRINT "Hit Points->";: GOSUB 8000:HP =  VAL (I$): GOTO 260

 630  IF X = 15 THEN  PRINT "Maximum Power->";: GOSUB 8000:TP =  VAL (I$): GOTO 
260
 640  IF X = 16 THEN  PRINT "Power->";: GOSUB 8000:PO =  VAL (I$): GOTO 260
 650  IF X = 17 THEN  PRINT "Weapon->";: GOTO 670
 660  IF X = 18 THEN  PRINT "Armor->";: GOTO 690
 670  GOSUB 8000:X =  VAL (I$): IF X < 1 OR X > WN THEN X = 17: GOTO 650
 675  PRINT 
 680  PRINT D$"OPENWEAPONS,L40"C$(19): PRINT D$"READWEAPONS,R"X: INPUT WP$,HT,HT
: PRINT D$"CLOSE":WE = X: GOTO 260
 690  GOSUB 8000:X =  VAL (I$): IF X < 1 OR X > AN THEN X = 18: GOTO 660
 695  PRINT 
 700  PRINT D$"OPENARMOR,L40"C$(1): PRINT D$"READARMOR,R"X: INPUT AM$,AP,AP: PRI
NT D$"CLOSE":AR = X: GOTO 260
 710  PRINT : PRINT "File To Read->";: GOSUB 8000:F$ = I$
 720  PRINT : PRINT "Volume->";: GOSUB 8000:V =  VAL (I$)
 730  PRINT "Slot->";: GOSUB 8000:S =  VAL (I$)
 740  PRINT "Drive->";: GOSUB 8000:D =  VAL (I$)
 750  PRINT : GOSUB 8410: GOTO 170
 760  CALL  - 3288: GOTO 180
 770  PRINT : PRINT "Level->";: GOSUB 8000:X =  VAL (I$): IF X < 1 OR X > 49 THE
N 8510
 780 LE = X: PRINT 
 790  POKE 43624,1: POKE 43626,6
 800  PRINT D$"OPENLEVELS"C$(7): PRINT D$"READLEVELS": IF LE = 1 THEN 820
 810  FOR X = 1 TO LE - 1: INPUT L$(1),A(1): NEXT 
 820  INPUT L$(1),A(1),L$(2),A(2)
 830  PRINT D$"CLOSE"
 840 EX = A(1): GOTO 8510
 8000 CC = 0: IF  PEEK (1) = 128 AND CF = 1 AND CA$ = "Y" THEN CA$ = "N": CALL 3
8539:CF = 9
 8010  IF CF = 9 AND  PEEK (1) <  > 128 THEN CF = 1:CA$ = "Y"
 8020  IF CA$ <  > "Y" OR  LEN (CN$) > 1 THEN 8040
 8030  IF CF = 1 THEN  CALL 38539
 8040  IF  PEEK (1) = 128 THEN 8140
 8050  IF  LEN (CN$) = 0 THEN 8140
 8060  FOR T = 1 TO  LEN (CN$)
 8070  IF  MID$ (CN$,T,1) = "," THEN I$ =  MID$ (CN$,1,T - 1):CN$ =  RIGHT$ (CN$
, LEN (CN$) - T): GOTO 8110
 8080  IF  MID$ (CN$,T,1) = "#" THEN I$ =  MID$ (CN$,1,T - 1):CN$ = "": GOTO 811
0
 8090  NEXT 
 8100  POKE 960,0
 8110  IF O$ = "STOP" THEN O$ = "": GOTO 8210
 8120  IF  LEN (I$) = 0 THEN 8050
 8130 O$ = I$ + EL$: GOSUB 160: GOTO 8290
 8140  POKE 960,0: & A / SP$:I$ =  MID$ (SP$,1): IF  PEEK (961) THEN  POKE 961,0
: POP : GOTO 8490
 8150 CN$ = I$ + "#":O$ = "STOP"
 8160  IF  LEFT$ (I$,1) = "#" THEN I$ = "#":CN$ = ""
 8170  POKE 961,0: IF  PEEK (960) = 255 THEN CC = CC + 1: FOR T = 1 TO 500: NEXT
 : IF CC > 1 OR I$ = "OFF" THEN 80
 8180  IF  PEEK (960) = 255 THEN 8140
 8190  IF  PEEK (1) = 128 THEN CN$ = "": GOTO 8230
 8200  IF  LEN (CN$) > 0 THEN 8060
 8210  IF  LEN (I$) <  > 1 AND  RIGHT$ (I$,1) = " " THEN I$ =  LEFT$ (I$, LEN (I
$) - 1): GOTO 8210
 8220  IF  LEN (I$) <  > 1 AND  LEFT$ (I$,1) = " " THEN I$ =  RIGHT$ (I$, LEN (I
$) - 1): GOTO 8220
 8230  IF  LEN (I$) = 0 AND CR = 1 THEN O$ = EL$: GOSUB 160: GOTO 8250
 8240  IF  LEN (I$) = 0 THEN 8000
 8250  IF CA$ <  > "Y" THEN 8290
 8260  IF CF = 1 THEN  CALL 36798
 8270  IF I$ = "202 ON" THEN O$ = EL$ + "202 is now On.": GOSUB 160: CALL 36798:
CF = 1
 8280  IF I$ = "202 OFF" THEN O$ = EL$ + "202 is now Off.": GOSUB 160: CALL 3853
9:CF = 0
 8290 CR = 0: RETURN 
 8300  GOSUB 8000: IF I$ = "" THEN  RETURN 
 8310  IF  LEN (I$) > 5 THEN I$ =  LEFT$ (I$,5)
 8320 J =  INT ( VAL (I$))
 8330  RETURN 
 8340  IF CL$ = "N" THEN T$ = DA$: RETURN 
 8350  PR# 4: IN# 4: INPUT "#";T,T,T,T,T,B: INPUT "%";T$
 8360  IF TI = 0 THEN TI = T
 8370  PR# 0: POKE 56,102: POKE 57,213: CALL 1002
 8380  IF TI > T THEN T = TI + (60 - TI) + T
 8390 TL = CO - (T - TI)
 8400  RETURN 
 8410 O$ = EL$: GOSUB 160: IF RT = 2 THEN O$ = DL$: GOSUB 160
 8420  POKE 960,0: PRINT D$"OPEN"F$",V"V",S"S",D"D: PRINT  CHR$ (4)"READ"F$
 8430  & C: IF  PEEK (960) =  PEEK (971) AND RT <  > 3 THEN  POKE 960,0: GOTO 84
30
 8440  IF  PEEK (960) =  PEEK (970) AND RT = 5 THEN  POKE 960,0: GOTO 8430
 8450  PRINT  CHR$ (4)"CLOSE": IF  PEEK (960) = 255 THEN 80
 8460  IF  PEEK (960) =  PEEK (970) THEN  POKE 960,3:O$ = EL$: GOTO 160
 8470  IF  PEEK (960) =  PEEK (971) THEN  POKE 960,2
 8480  RETURN 
 8490 QE =  PEEK (0):QF =  PEEK (1):QG =  PEEK (2): POKE 2,0:O$ = DL$ + "% Pleas
e Wait - Sysop Is Busy %" + EL$: GOSUB 160:QC =  PEEK (966): POKE 966,0
 8500  POKE 1190,171
 8510  PRINT : PRINT "Sysop Options"
 8520  PRINT 
 8530  PRINT "1) Change time left [" +  STR$ (TL) + "]"
 8540  PRINT "2) Change Level #"LE" "L$(1)
 8550  PRINT "3) Validate user"
 8560  PRINT "4) Chat with user"
 8570  PRINT "5) Log off user"
 8580  PRINT "6) Enter system level"
 8590  PRINT "7) Change Name/Fights"
 8600  PRINT "8) Exit sysop options": PRINT 
 8610  PRINT "Option (?=Menu): ";
 8620  POKE  - 16368,0: POKE 2,255: POKE 961,0: & A / I$
 8630  IF I$ = "?" THEN 8510
 8640 I =  VAL (I$): IF I < 1 OR I > 8 THEN 8610
 8650  ON I GOTO 8670,770,8660,8700,8710,170,8720,8760
 8660 CP = 2:AD$ = "Yes": PRINT : PRINT "Done": GOTO 8510
 8670  PRINT "Enter time left(max:"CO"): ";: GOSUB 8000:X =  VAL (I$): IF X < 1 
OR X > CO THEN 8670
 8680  IF CL$ = "N" THEN TL = X: GOTO 8510
 8690  GOSUB 8340:X = CO - X:TI = T - X: GOSUB 8340: GOTO 8510
 8700  POKE 966,QC: POKE 2,0: GOSUB 90: POKE 966,0: GOTO 8510
 8710  POKE 966,QC: POKE 2,QG: POKE 1,0:O$ = EL$ + "Like soooo long dude.." + DL
$ + "You just go fried sucker..." + EL$: GOSUB 160: GOTO 80
 8720  POKE 2,0: PRINT : PRINT "[1] Name: " + NA$: PRINT "[2] Fights Left: "4 - 
FO: PRINT : PRINT "Which-> ";: GOSUB 8300: PRINT 
 8730  IF J < 0 OR J > 2 THEN 8520
 8740  IF J = 1 THEN  PRINT "Name->";: GOSUB 8000:NA$ = I$: GOTO 8510
 8750  PRINT "Fights Left Today->";: GOSUB 8000:X =  VAL (I$):FO = 4 - X: GOTO 8
520
 8760 O$ = DL$ + "Which board: " + DL$ + "1) Start" + EL$ + "2) Main" + EL$ + "3
) Boards" + EL$ + "4) Gambling" + EL$ + "5) Dungeon" + DL$ + "Which: ": GOSUB 16
0: GOSUB 8000:K =  VAL (I$): IF K < 1 OR K > 5 THEN 8760
 8770 O$ = EL$ + "[ User Has Been Granted Control Again ]" + EL$: POKE 966,QC: G
OSUB 160: POKE 2,QG: POKE 1,0
 8780  IF K = 1 THEN  PRINT : PRINT D$"RUNSTART"C$(14)
 8790  IF K = 2 THEN A$ = MA$: GOSUB 8830: CALL 35848"MAIN"
 8800  IF K = 3 THEN A$ = BO$: GOSUB 8830: CALL 35848"BRD"
 8810  IF K = 4 THEN A$ = GA$: GOSUB 8830: CALL 35848"GA"
 8820  IF K = 5 THEN A$ = FT$: GOSUB 8830: CALL 35848"FIGHT"
 8830 Y =  VAL ( MID$ (A$,4,1)): POKE 43626,Y:Y =  VAL ( RIGHT$ (A$,1)): POKE 43
624,Y:Y =  VAL ( LEFT$ (A$,3)): IF YR$ = "Y" THEN  PRINT : PRINT D$"OPEN VC,V"Y
 8835  IF TC$ = "Y" THEN  POKE 1014,10: POKE 952,215: POKE 953,251
 8840  RETURN 

]LOAD COMPLETE EDITOR
]LIST

 10 F$ = ",S6,D1"
 20  HOME : PRINT "If you are on a hard drive press Return.If you are not, then 
put the disk with  the file 'Config' in "F$" and": PRINT "press Return.": GET A$

 30 SN = 26: HOME 
 40 WN = 100:AN = 100
 50  ONERR  GOTO 120
 60 D$ =  CHR$ (13) +  CHR$ (4): DIM S(50),W$(WN),A$(AN),T$(50),V(50),M(50),D(50
),P(50),R(50),B(50),T(50),PA$(50)
 70  DIM C$(20),B$(20)
 80  PRINT D$"OPENCONFIG"F$: PRINT D$"READCONFIG": FOR X = 1 TO 20: INPUT I$,V,S
,D:C$(X) = ",V" +  STR$ (V) + ",S" +  STR$ (S) + ",D" +  STR$ (D): NEXT : PRINT 
D$"CLOSE"
 90  PRINT D$"OPENWEAPONS,L40"C$(19): FOR X = 1 TO WN: PRINT D$"READWEAPONS,R"X:
 INPUT W$(X),Y,Y: NEXT : PRINT D$"CLOSE"
 100  PRINT D$"OPENARMOR,L40"C$(1): FOR X = 1 TO AN: PRINT D$"READARMOR,R"X: INP
UT A$(X),Y,Y: NEXT : PRINT D$"CLOSE"
 110  GOTO 760
 120  CALL  - 3288: GOTO 760
 130  PRINT "[A] "NA$"  Pass: "PA$
 140  PRINT "[1] Calls Per Day: " +  STR$ (CP)
 150  PRINT "[2] Calls Today: " +  STR$ (CA)
 160  PRINT "[3] Total Calls: " +  STR$ (CL)
 170  PRINT "[4] Adventure Access: " + AD$
 180  PRINT 
 190  PRINT "[5] Strength: " +  STR$ (ST)
 200  PRINT "[7] Agility: " +  STR$ (AG)
 210  PRINT "[8] Intelligence: " +  STR$ (CH)
 220  PRINT "[9] Wisdom: " +  STR$ (WI)
 230  PRINT "[10] Gold: " +  STR$ (GD)
 240  PRINT "[11] Gold in The Bank: "BA
 250  PRINT "[12] Food: " +  STR$ (FD)
 260  PRINT 
 270  PRINT "[13] Level #"LE" "L$(1)
 280  PRINT "[14] Maximum Hit Points: " +  STR$ (TH)
 290  PRINT "[15] Maximum Power: " +  STR$ (TP)
 300  PRINT "[16] Power: " +  STR$ (PO)
 310  PRINT "[17] Weapon: " + W$(WE)
 320  PRINT "[18] Armor: " + A$(AR)
 330  PRINT "[19] Fight: " + FI$
 340  PRINT : PRINT "Which(20=Save)-> ";: GOSUB 640: PRINT 
 350  IF I$ = "Q" THEN 760
 360  IF I$ = "A" THEN  PRINT "Name->";: GOSUB 640:NA$ = I$: GOTO 130
 370  IF I$ = "B" THEN  PRINT "Password->";: GOSUB 640:PA$ = I$: GOTO 130
 380 X =  VAL (I$): IF X < 1 OR X > 20 THEN 130
 390  IF X = 1 THEN  PRINT "Calls Per Day-> ";: GOSUB 640:CP =  VAL (I$): GOTO 1
30
 400  IF X = 2 THEN  PRINT "Calls Today->";: GOSUB 640:CA =  VAL (I$): GOTO 130
 410  IF X = 3 THEN  PRINT "Total Calls->";: GOSUB 640:CL =  VAL (I$): GOTO 130
 420  IF X = 4 THEN  PRINT "Adventure Access->";: GOSUB 640:AD$ = I$: GOTO 130
 430  IF X = 5 THEN  PRINT "Strength->";: GOSUB 640:ST =  VAL (I$): GOTO 130
 440  IF X = 6 THEN  PRINT "Dexterity->";: GOSUB 640:DE =  VAL (I$): GOTO 130
 450  IF X = 7 THEN  PRINT "Agility->";: GOSUB 640:AG =  VAL (I$): GOTO 130
 460  IF X = 8 THEN  PRINT "Intelligence->";: GOSUB 640:CH =  VAL (I$): GOTO 130

 470  IF X = 9 THEN  PRINT "Wisdom->";: GOSUB 640:WI =  VAL (I$): GOTO 130
 480  IF X = 10 THEN  PRINT "Gold->";: GOSUB 640:GD =  VAL (I$): GOTO 130
 490  IF X = 12 THEN  PRINT "Food->";: GOSUB 640:FD =  VAL (I$): GOTO 130
 500  IF X = 13 THEN  PRINT "Level->";: GOSUB 640:LE =  VAL (I$): GOSUB 1150: GO
TO 130
 510  IF X = 14 THEN  PRINT "Maximum Hit Points->";: GOSUB 640:TH =  VAL (I$): G
OTO 130
 520  IF X = 11 THEN  PRINT "Gold in the Bank->";: GOSUB 640:BA =  VAL (I$): GOT
O 130
 530  IF X = 15 THEN  PRINT "Maximum Power->";: GOSUB 640:TP =  VAL (I$): GOTO 1
30
 540  IF X = 16 THEN  PRINT "Power->";: GOSUB 640:PO =  VAL (I$): GOTO 130
 550  IF X = 17 THEN  PRINT "Weapon->";: GOTO 600
 560  IF X = 18 THEN  PRINT "Armor->";: GOTO 620
 570  IF X = 20 THEN  HOME : GOSUB 720: GOTO 130
 580  IF X = 19 THEN  PRINT "Fight->";: GOSUB 640:FI$ = I$: GOTO 130
 590  GOTO 130
 600  GOSUB 640:X =  VAL (I$): IF X < 1 OR X > WN THEN X = 17: GOTO 550
 610 WE = X: GOTO 130
 620  GOSUB 640:X =  VAL (I$): IF X < 1 OR X > AN THEN X = 18: GOTO 560
 630 AR = X: GOTO 130
 640  INPUT "";I$: RETURN 
 650  PRINT D$"OPENSTATS,L200"C$(15)
 660  PRINT D$"READSTATS,R"A
 670  INPUT NA$,FI$,LE,AG,WE,AR,EX,GD,ST,TH,HP,PA$,WI,CH,LS,CA,CL,AD$,CP,FD,PO,T
P,BA,PA,DE,DA$
 680  FOR X = 1 TO SN: INPUT S(X): NEXT 
 690  PRINT D$"CLOSE"
 700  GOSUB 1150
 710  RETURN 
 720  PRINT D$"OPENSTATS,L200"C$(15): PRINT D$"WRITESTATS,R"A: PRINT NA$: PRINT 
FI$: PRINT LE: PRINT AG: PRINT WE: PRINT AR: PRINT EX: PRINT GD: PRINT ST: PRINT
 TH: PRINT HP: PRINT PA$: PRINT WI: PRINT CH: PRINT LS: PRINT CAL: PRINT CL: PRI
NT AD$: PRINT CP
 730  PRINT FD: PRINT PO: PRINT TP: PRINT BA: PRINT PA: PRINT DE: PRINT DA$
 740  FOR X = 1 TO SN: PRINT S(X): NEXT 
 750  PRINT D$"CLOSE": RETURN 
 760  HOME : PRINT "Proving Grounds Editor by The Time Lord": PRINT : PRINT "(C)
 Mike Heinstein 1985": PRINT : PRINT "[1] Edit User"
 770  PRINT "[2] Delete User"
 780  PRINT "[3] Validate User"
 790  PRINT "[4] Rob all Treasuries"
 800  PRINT "[5] Turn All the Fights On"
 810  PRINT "[6] Re-Roll the Entire Board"
 820  PRINT "[7] Run Board"
 830  PRINT "[8] Board Module Editor"
 840  PRINT "[9] Change/Edit Voting Topic"
 850  PRINT "[10] Search for a User"
 860  PRINT "[11] Count/List Validated Users"
 870  PRINT "[12] List Users"
 880  PRINT "[13] Dos Command"
 890  PRINT "[14] Change Date(Only If No Clock)"
 900  PRINT "[15] Re-Do Ladder and Rank"
 910  PRINT : PRINT "Which-> ";: GOSUB 640
 920  PRINT 
 930  ONERR  GOTO 760
 940 CF$ = "":CB$ = "":CH$ = "":CO$ = ""
 950  IF I$ <  > "15" THEN 980
 960  HOME : PRINT : PRINT : PRINT "Re-Do Ladder and Rank?  If so, it will  put 
up the board after....Y/N? ->: ";: INPUT "";A$: IF A$ = "Y" THEN  PRINT : PRINT 
D$"RUNRESET1"C$(4)
 970  IF I$ = "N" THEN 760
 980  IF I$ = "14" THEN 2860
 990  IF I$ = "9" THEN 2320
 1000  IF I$ = "13" THEN 2810
 1010  IF I$ = "12" THEN CO$ = "Y": GOTO 1220
 1020  IF I$ = "11" THEN NU = 0:CH$ = "Y": GOTO 1220
 1030  IF I$ = "10" THEN 2690
 1040  IF I$ = "1" THEN  PRINT "Enter User #->";: GOSUB 1140: HOME :A =  VAL (I$
): GOSUB 650: GOTO 130
 1050  IF I$ = "2" THEN  PRINT "Enter User #->";: GOSUB 1140:A =  VAL (I$): GOSU
B 650: PRINT : PRINT "Delete "NA$"? ";: GOSUB 1140: IF I$ = "Y" THEN NA$ = "Empt
y": GOSUB 720: GOTO 760
 1060  IF I$ = "3" THEN  PRINT "Enter User #->";: GOSUB 1140:A =  VAL (I$): GOSU
B 650: PRINT : PRINT "Validate "NA$"? ";: GOSUB 1140: IF I$ = "Y" THEN CP = 2:AD
$ = "Yes": GOSUB 720: GOTO 760
 1070 CF$ = "":CB$ = "":RE$ = ""
 1080  IF I$ = "4" THEN  PRINT "Rob all Treasuries? ";: GOSUB 1140: IF I$ = "Y" 
THEN CB$ = "Y": GOTO 1220
 1090  IF I$ = "5" THEN  PRINT "Turn all the Fights On? ";: GOSUB 1140: IF I$ = 
"Y" THEN CF$ = "Y": GOTO 1220
 1100  IF I$ = "6" THEN  PRINT "Re-Roll the Board? ";: GOSUB 1140: IF I$ = "Y" T
HEN RE$ = "Y": GOTO 1220
 1110  IF I$ = "7" THEN  PRINT D$"RUNSTART"C$(14)
 1120  IF I$ = "8" THEN 1600
 1130  GOTO 760
 1140  GOTO 640
 1150  PRINT D$"OPENLEVELS"C$(7): PRINT D$"READLEVELS": IF LE = 1 THEN  INPUT L$
(1),A(1),L$(2),A(2):L$(0) = "":A(0) = 0: GOTO 1190
 1160  IF LE = 2 THEN 1180
 1170  FOR X = 1 TO (LE - 2): INPUT L$(1),A(1): NEXT 
 1180  INPUT L$(0),A(0),L$(1),A(1),L$(2),A(2)
 1190  PRINT D$"CLOSE"
 1200 EX = A(1): GOTO 1210
 1210  RETURN 
 1220  PRINT D$"OPENDATA,D1"C$(5)
 1230  PRINT D$"READDATA"
 1240  INPUT A,A,DA$,DA$
 1250  PRINT D$"CLOSE"
 1260  PRINT D$"OPENSTATS,L200"C$(15)
 1270  FOR X = 1 TO A
 1280  POKE 216,0
 1290  PRINT D$"READSTATS,R"X
 1300  IF CH$ = "Y" OR CO$ = "Y" THEN 1330
 1310  HOME : PRINT X" out of "A
 1320  ONERR  GOTO 1360
 1330  INPUT NA$,FI$,LE,AG,WE,AR,EX,GD,ST,TH,HP,PA$,WI,CH,LS,CA,CL,AD$,CP,FD,PO,
TP,BA,PA,DE,I$
 1340  FOR Y = 1 TO SN: INPUT S(Y): NEXT 
 1350  GOTO 1370
 1360  CALL  - 3288
 1370  IF CH$ = "Y" AND NA$ <  > "EMPTY" AND AD$ = "Yes" THEN NU = NU + 1: PRINT
 NU"] "NA$" #"X: GOTO 1550
 1380  IF CH$ = "Y" THEN 1550
 1390  IF CO$ = "Y" THEN  PRINT X"] "NA$: GOTO 1550
 1400  IF RE$ <  > "Y" THEN 1470
 1410 ST = 10:AG = 10:WI = 10:CH = 10:DE = 0:WE = 2:AR = 2:EX = 0:GD = 500:LE = 
1:FI$ = "On":FD = 100
 1420 HP = 20:TH = 20
 1430 CA = 0
 1440 PO = 20:TP = 20:BA = 100:PA =  - 1
 1450  FOR Y = 1 TO 26:S(Y) = 0: NEXT 
 1460 S(3) = 1:S(6) = 1:S(25) = 2:S(20) = 1:S(2) = 2:S(10) = 1
 1470  IF NA$ = "EMPTY" THEN 1550
 1480  IF CF$ = "Y" AND FI$ = "On" THEN 1550
 1490  IF CF$ = "Y" THEN FI$ = "On"
 1500  IF CB$ = "Y" AND BA < 1 THEN 1550
 1510  IF CB$ = "Y" THEN BA = .999
 1520  PRINT D$"WRITESTATS,R"X: PRINT NA$: PRINT FI$: PRINT LE: PRINT AG: PRINT 
WE: PRINT AR: PRINT EX: PRINT GD: PRINT ST: PRINT TH: PRINT HP: PRINT PA$: PRINT
 WI: PRINT CH: PRINT LS: PRINT CA: PRINT CL: PRINT AD$: PRINT CP
 1530  PRINT FD: PRINT PO: PRINT TP: PRINT BA: PRINT PA: PRINT DE: PRINT I$
 1540  FOR Y = 1 TO SN: PRINT S(Y): NEXT 
 1550  NEXT 
 1560  PRINT D$"CLOSE"
 1570  IF CH$ = "Y" THEN  PRINT : PRINT NU" Validated Users.": INPUT "";A$
 1580  IF CO$ = "Y" THEN  PRINT : INPUT "";A$
 1590  GOTO 760
 1600  PRINT D$"OPENBOARDS,L55"C$(3)
 1610 X = 0
 1620  ONERR  GOTO 1670
 1630 X = X + 1
 1640  PRINT D$"READBOARDS,R"X
 1650  INPUT T$(X),V(X),M(X),S(X),D(X),P(X),R(X),B(X),T(X),PA$(X)
 1660  GOTO 1630
 1670  CALL  - 3288:X = X - 1: PRINT D$"CLOSE":BN = X
 1680 AZ = BN
 1690  HOME : PRINT "Board Editor"
 1700  PRINT : PRINT BN" boards active"
 1710  PRINT 
 1720  FOR X = 1 TO BN: PRINT "["X"] " + T$(X)
 1730  NEXT 
 1740  PRINT 
 1750  PRINT "[A] Create New Board"
 1760  PRINT "[B] Delete Board"
 1770  PRINT "[ ] Type number of board to edit"
 1780  PRINT 
 1790  INPUT "Edit Which->";I$
 1800 X =  VAL (I$)
 1810  IF I$ = "A" THEN 2160
 1820  IF I$ = "B" THEN 2230
 1830  IF I$ = "Q" THEN 760
 1840  IF X < 1 OR X > BN THEN 1690
 1850 EN = X
 1860  HOME 
 1870  PRINT "Edit Board": PRINT 
 1880  PRINT "[1] Name: "T$(EN)
 1890  PRINT "[2] Maximum Messages: "M(EN)
 1900  PRINT "[3] Slot: "S(EN)
 1910  PRINT "[4] Drive: "D(EN)
 1920  PRINT "[5] Volume: "V(EN)
 1930 X = T(EN): GOSUB 3240: PRINT "[6] Message posted under: "O$
 1940 X = P(EN): GOSUB 3050: PRINT "[7] Who can post: "O$
 1950 X = R(EN): GOSUB 3090: PRINT "[8] Who can read: "O$
 1960  PRINT "[9] Board Master is user #"B(EN)
 1965  IF P(EN) = 4 THEN  PRINT "[10] Password: "PA$(EN)
 1970  PRINT "[S] Save"
 1980  PRINT : INPUT "Which->";I$:X =  VAL (I$)
 1990  IF I$ = "Q" THEN 1690
 2000  IF I$ = "S" THEN 2040
 2010  IF X < 1 OR X > 10 THEN 1860
 2020  ON X GOSUB 3190,3200,3210,3230,3220,3280,3140,3160,3180,3300
 2030  GOTO 1860
 2040  PRINT D$"OPENBOARDS,L55"C$(3): PRINT D$"DELETEBOARDS": PRINT D$"OPENBOARD
S,L55"
 2050  FOR X = 1 TO BN
 2060  PRINT D$"WRITEBOARDS,R"X
 2070  PRINT T$(X): PRINT V(X): PRINT M(X): PRINT S(X): PRINT D(X): PRINT P(X): 
PRINT R(X): PRINT B(X): PRINT T(X): PRINT PA$(X)
 2080  NEXT 
 2090  PRINT D$"CLOSE"
 2100 Y = 0
 2110  FOR X = 1 TO BN: IF M(X) > Y THEN Y = M(X): NEXT 
 2120  PRINT D$"OPENBDATA"C$(2): PRINT D$"WRITEBDATA": PRINT BN: PRINT Y: PRINT 
D$"CLOSE"
 2130  PRINT 
 2140  IF AZ <  > BN THEN  PRINT D$"OPENQSCAN"C$(10): PRINT D$"DELETEQSCAN"
 2150  GOTO 1690
 2160  HOME 
 2170 EN = BN + 1
 2180  GOSUB 3190: GOSUB 3220: GOSUB 3210: GOSUB 3230: GOSUB 3200: GOSUB 3280: G
OSUB 3140: GOSUB 3160: GOSUB 3180: IF P(EN) = 4 THEN  GOSUB 3300
 2190  PRINT : INPUT "Ok? Y/N";A$: IF A$ <  > "Y" THEN 1690
 2200 BN = BN + 1
 2210  GOTO 2040
 2220  INPUT "";I$: RETURN 
 2230  PRINT : PRINT : INPUT "Delete What Board->";I$:X =  VAL (I$)
 2240  IF X < 1 OR X > BN THEN 1690
 2250  PRINT : PRINT "Delete The "T$(X) + " Board";: INPUT I$: IF I$ <  > "Y" TH
EN 1690
 2260 Y = X
 2270  FOR X = (Y + 1) TO BN
 2280 T$(X - 1) = T$(X):V(X - 1) = V(X):M(X - 1) = M(X):S(X - 1) = M(X):S(X - 1)
 = S(X):D(X - 1) = D(X):P(X - 1) = P(X):R(X - 1) = R(X):B(X - 1) = B(X):T(X - 1)
 = T(X)
 2290  NEXT 
 2300 BN = BN - 1
 2310  GOTO 2040
 2320  HOME : PRINT "Write Voting Topic"
 2330  PRINT : PRINT "[A] Write New Topic"
 2340  PRINT "[B] Save Topic"
 2350  PRINT "[C] List Topic"
 2360  PRINT "[D] Edit Topic"
 2370  PRINT : INPUT "Which(Q=Quit)->";I$
 2380  IF I$ = "Q" THEN 760
 2390  IF I$ = "C" THEN 2590
 2400  IF I$ = "D" THEN 2640
 2410  IF I$ = "A" THEN 2500
 2420  IF I$ = "B" THEN  PRINT : INPUT "Save Voting Topic?";I$: IF I$ <  > "Y" T
HEN 2320
 2430  PRINT D$"OPENVOTING"C$(18): PRINT D$"DELETEVOTING": PRINT D$"OPENVOTING"
 2440  PRINT D$"WRITEVOTING"
 2450  FOR X = 1 TO VN
 2460  PRINT V$(X);",0"
 2470  NEXT 
 2480  PRINT D$"CLOSE"
 2490  GOTO 2320
 2500  PRINT 
 2510  PRINT "What is the Topic?  Do not press Return until you are complete don
e.": PRINT : INPUT "";T$: PRINT D$"OPENVOTING.TOP"C$(17): PRINT D$"DELETEVOTING.
TOP": PRINT D$"OPENVOTING.TOP": PRINT D$"WRITEVOTING.TOP": PRINT T$: PRINT : PRI
NT D$"CLOSE
 2520  PRINT : PRINT "Input choices 1-9.  type 'Q' on it's own line  to stop add
ing choices.  I.E. if you only want 4 choices type 'Q' on     line 5.": PRINT 
 2530  FOR X = 1 TO 9
 2540  PRINT X"] ";: INPUT "";V$(X)
 2550  IF V$(X) = "Q" THEN X = X - 1:VN = X: GOTO 2320
 2560  NEXT X
 2570 VN = X - 1
 2580  GOTO 2320
 2590  PRINT 
 2600  FOR X = 1 TO VN
 2610  PRINT X"] "V$(X)
 2620  NEXT 
 2630  PRINT : INPUT "";A$: GOTO 2320
 2640  PRINT : INPUT "Input Line To Edit->";I$: IF I$ = "Q" THEN 2320
 2650 X =  VAL (I$): IF X < 1 OR X > VN THEN 2640
 2660  PRINT : PRINT X"] "V$(X): PRINT 
 2670  PRINT X"] ";: INPUT "";V$(X)
 2680  GOTO 2320
 2690  PRINT : INPUT "What is the Users Name->";I$
 2700 X = 0
 2710  ONERR  GOTO 2790
 2720  PRINT D$"OPENSTATS,L200"C$(15)
 2730 X = X + 1
 2740  PRINT D$"READSTATS,R"X
 2750  HOME : PRINT X
 2760  INPUT A$
 2770  IF A$ = I$ THEN 2800
 2780  GOTO 2730
 2790  CALL  - 3288: PRINT D$"CLOSE": PRINT "There Is No Such User.": INPUT "";A
$: GOTO 760
 2800  PRINT D$"CLOSE": PRINT I$" is user "X: INPUT "";A$: GOTO 760
 2810  PRINT : INPUT "Dos(Q=Quit)->";A$
 2820  IF A$ = "Q" THEN 760
 2830  ONERR  GOTO 2850
 2840  PRINT D$""A$: PRINT : INPUT "";A$: GOTO 760
 2850  CALL  - 3288: PRINT : PRINT "Dos Error!": PRINT : INPUT "";A$: GOTO 760
 2860  PRINT D$"OPENDATA"C$(5): PRINT D$"READDATA": FOR X = 1 TO 10: INPUT Z$(X)
: NEXT : PRINT D$"CLOSE"
 2870  HOME : PRINT : PRINT "Current Date-> "Z$(4): PRINT : PRINT "Change it? Y/
N: ";: INPUT "";A$: IF A$ <  > "Y" AND A$ <  > "N" THEN 2870
 2880  IF A$ = "N" THEN 760
 2890 B$(1) = "SUN":B$(2) = "MON":B$(3) = "TUE":B$(4) = "WED":B$(5) = "THU":B$(6
) = "FRI":B$(7) = "SAT"
 2900  HOME 
 2910  PRINT "Input Day:": PRINT : PRINT : FOR X = 1 TO 7: PRINT X"] "B$(X): NEX
T 
 2920  PRINT : PRINT "-> ";: INPUT "";A$:X =  VAL (A$): IF X < 1 OR X > 7 THEN 2
900
 2930 C$ = B$(X) + " "
 2940 B$(1) = "JAN":B$(2) = "FEB":B$(3) = "MAR":B$(4) = "APR":B$(5) = "MAY":B$(6
) = "JUN":B$(7) = "JUL":B$(8) = "AUG":B$(9) = "SEP":B$(10) = "NOV":B$(11) = "OCT
":B$(12) = "DEC"
 2950  HOME : PRINT "Input Month": PRINT : PRINT : FOR X = 1 TO 12: PRINT X"] "B
$(X): NEXT 
 2960  PRINT : PRINT "-> ";: INPUT "";A$:X =  VAL (A$): IF X < 1 OR X > 12 THEN 
2950
 2970 C$ = C$ + B$(X) + " "
 2980  HOME : PRINT "Input Day(1-31)-> ";: INPUT "";A$:X =  VAL (A$): IF X < 1 O
R X > 31 THEN 2980
 2990  IF X > 9 THEN C$ = C$ + A$: GOTO 3010
 3000 C$ = C$ + " " + A$
 3010  PRINT : PRINT "Date-> "C$: PRINT : PRINT "Correct? Y/N-> ";: GET A$: IF A
$ <  > "Y" AND A$ <  > "N" THEN 3010
 3020  IF A$ = "N" THEN 2880
 3030 Z$(4) = C$: PRINT D$"OPENDATA": PRINT D$"WRITEDATA": FOR X = 1 TO 10: PRIN
T Z$(X): NEXT : PRINT D$"CLOSE"
 3040  GOTO 760
 3050  IF X = 1 THEN O$ = "Sysop Only"
 3060  IF X = 2 THEN O$ = "Validated Users Only"
 3070  IF X = 3 THEN O$ = "All Users"
 3075  IF X = 4 THEN O$ = "Password Needed"
 3080  RETURN 
 3090  IF X = 1 THEN O$ = "Validated users Only"
 3100  IF X = 2 THEN O$ = "All Users"
 3110  RETURN 
 3120  PRINT 
 3130  PRINT 
 3140  PRINT "Who can post?": PRINT : PRINT "1) Sysop Only": PRINT "2) Validated
 users only": PRINT "3) All Users": PRINT "4) Password needed": PRINT : INPUT "W
hich->";A$:X =  VAL (A$): IF X < 1 OR X > 4 THEN 31400
 3150 P(EN) = X: RETURN 
 3160  PRINT "Who can Read Messages?": PRINT : PRINT "1) Validated users Only": 
PRINT "2) All Users": PRINT : INPUT "Which->";A$:X =  VAL (A$): IF X < 1 OR X > 
2 THEN 3160
 3170 R(EN) = X: RETURN 
 3180  PRINT : INPUT "Enter board masters #";I$:B(EN) =  VAL (I$): RETURN 
 3190  PRINT "Name->";: GOSUB 2220:T$(EN) = I$: RETURN 
 3200  PRINT "Maximum Messages->";: GOSUB 2220:M(EN) =  VAL (I$): RETURN 
 3210  PRINT "Slot->";: GOSUB 2220:S(EN) =  VAL (I$): RETURN 
 3220  PRINT "Volume->";: GOSUB 2220:V(EN) =  VAL (I$): RETURN 
 3230  PRINT "Drive->";: GOSUB 2220:D(EN) =  VAL (I$): RETURN 
 3240  IF X = 1 THEN O$ = "Anonymous"
 3250  IF X = 2 THEN O$ = "Any Handle"
 3260  IF X = 3 THEN O$ = "User Name"
 3270  RETURN 
 3280  PRINT "Messages posted under what name:": PRINT : PRINT "1) Anonymous": P
RINT "2) Any Handle": PRINT "3) User Name": PRINT : INPUT "Which->";I$:X =  VAL 
(I$): IF X < 1 OR X > 3 THEN 3280
 3290 T(EN) = X: RETURN 
 3300  PRINT : INPUT "Password->";PA$(EN): IF  LEN (PA$(EN)) > 7 THEN  PRINT : P
RINT "7 Characters Max": GOTO 3300
 3310  RETURN 

]LOAD GA
]LIST

 5  IF TC$ = "Y" THEN  POKE 1014,0: POKE 952,240: POKE 953,253
 10  CALL 54915
 20  IF A > 0 THEN 40
 30  PRINT  CHR$ (4)"SAVEGA,S3": PRINT  CHR$ (4)"RUNSTORES,S6"
 40 AM = 0
 50 D = 1
 60 J = A
 70  ONERR  GOTO 90
 80  GOTO 120
 90  CALL  - 3288: GOTO 130
 100 O$ = DL$ + "-=>HOLD...Transport Heading to Main." + EL$: GOSUB 7000
 110 A$ = MA$:A = J: GOSUB 8390: CALL 35848"MAIN"
 120  HOME :O$ = SC$ + DL$ + DL$ + EL$: GOSUB 7000
 130  GOSUB 8300:O$ = DL$ + "Welcome to Rebel's Hideout" + DL$ + "What do you wa
nt to play...." + DL$ + "B) lackjack" + EL$ + "R) Roulette" + EL$ + "S) Slots" +
 EL$ + "Z) Russian Roulette" + DL$ + "[B/R/S/Z/Q]->": GOSUB 6000
 140  IF I$ = "Q" THEN 100
 150  FOR X = 1 TO 9:G(X) = 0: NEXT X
 160  IF I$ = "Z" THEN 1720
 170  IF I$ = "R" THEN 750
 180  IF I$ = "S" THEN 210
 190  IF I$ = "B" THEN 1180
 200  GOTO 130
 210 O$ = DL$ + "You saunder over to a group of slot     machines and notice, to
 your surprise,  that you have three choices:"
 220  GOSUB 7000
 230 O$ = DL$ + "A) 3-wheeled slot" + EL$ + "B) 4-wheeled slot" + EL$ + "C) 5-wh
eeled slot" + DL$ + "[A/B/C/<Q>uit]->": GOSUB 6000
 240 X =  INT (3 *  RND (1)) + 1
 250  GOSUB 1670
 260  IF I$ = "A" THEN G(0) = 3
 270  IF I$ = "B" THEN G(0) = 4
 280  IF I$ = "C" THEN G(0) = 5
 290  IF G(0) < 3 OR G(0) > 5 THEN 230
 300 O$ = EL$ + "You have [" +  STR$ (GD) + "] gold pieces." + DL$ + "[Enter Bet
/<Q>uit]->": GOSUB 6000
 310  GOSUB 1670
 320 I$ =  STR$ ( INT ( VAL (I$)))
 330  GOSUB 1690: IF BE = 1 THEN BE = 0: GOTO 300
 340 GD = GD -  VAL (I$)
 350  GOSUB 8380
 360 O$ = EL$: GOSUB 7000
 370  FOR SP = G(0) TO 1 STEP  - 1
 380  FOR Y = 1 TO 7
 390 O$ = ""
 400  FOR X = 1 TO SP
 410 C =  INT (9 *  RND (1)) + 1
 420 O$ = O$ +  STR$ (C)
 430  IF X = SP THEN O(SP) = C
 440  NEXT X
 450  FOR X = 1 TO SP
 460 O$ = O$ +  CHR$ (8)
 470  NEXT X
 480  GOSUB 7000
 490  NEXT Y
 500 O$ =  STR$ (O(SP)): GOSUB 7000
 510  NEXT SP
 520 SP = 0
 530  FOR X = 1 TO G(0)
 540  FOR Y = 1 TO 9
 550  IF O(X) = Y THEN G(Y) = G(Y) + 1
 560  NEXT Y
 570  NEXT X
 580  FOR Y = 1 TO 9: IF G(Y) >  = ( INT (G(0) / 2) + 1) THEN O$ = DL$ + "[" +  
STR$ (G(Y)) + "] of a kind!" + EL$: GOSUB 7000:SP = Y:Y = 9
 590  NEXT 
 600  IF SP > 0 THEN 630
 610 O$ = DL$ + "You lose sucker!" + EL$: GOSUB 7000
 620  FOR X = 1 TO 9:G(X) = 0: NEXT : GOTO 300
 630  IF G(0) <  > 3 THEN 660
 640  IF G(SP) = 2 THEN Y = 2.75
 650  IF G(SP) = 3 THEN Y = 81
 660  IF G(0) <  > 4 THEN 690
 670  IF G(SP) = 3 THEN Y = 36
 680  IF G(SP) = 4 THEN Y = 400
 690  IF G(0) <  > 5 THEN 730
 700  IF G(SP) = 3 THEN Y = 10
 710  IF G(SP) = 4 THEN Y = 250
 720  IF G(SP) = 5 THEN Y = 4000
 730 G(1) =  INT ( VAL (I$) * Y)
 740 O$ = EL$ + "You win " +  STR$ (G(1) -  VAL (I$)) + " gold pieces!" + EL$:GD
 = GD + G(1): GOSUB 7000: GOTO 620
 750 O$ = DL$ + "[<N>umber/<E>ven/<O>dd/<S>equence]" + DL$ + "You have [" +  STR
$ (GD) + "] Gold" + DL$ + "[Which/<Q>uit]->": GOSUB 6000
 760  IF I$ <  > "N" AND I$ <  > "E" AND I$ <  > "O" AND I$ <  > "S" AND I$ <  >
 "Q" THEN 750
 770  GOSUB 1670
 780  FOR X = 1 TO 7:G(X) = 0: NEXT 
 790 Y = 0
 800  IF I$ = "E" THEN G(4) = 1
 810  IF I$ = "O" THEN G(5) = 1
 820  IF I$ <  > "N" THEN 870
 830 O$ = DL$ + "[Select Number <1-36>:": GOSUB 6000
 840  GOSUB 1670
 850  IF  VAL (I$) < 1 OR  VAL (I$) > 36 THEN 830
 860 Y =  VAL (I$)
 870  IF I$ <  > "S" THEN 960
 880 O$ = DL$ + "[Select Starting #]:": GOSUB 6000
 890  GOSUB 1670
 900  IF  VAL (I$) > 36 OR  VAL (I$) < 1 THEN 880
 910 G(0) =  VAL (I$)
 920 O$ = DL$ + "[Select  Ending  #]:": GOSUB 6000
 930  GOSUB 1670
 940  IF  VAL (I$) > 36 OR  VAL (I$) < 1 THEN 920
 950 G(1) =  VAL (I$)
 960 O$ = DL$ + "How much do you want to bet: ": GOSUB 6000
 970  GOSUB 1670
 980 I$ =  STR$ ( INT ( VAL (I$)))
 990  GOSUB 1690: IF BE = 1 THEN BE = 0: GOTO 960
 1000 G(2) =  VAL (I$):GD = GD -  VAL (I$)
 1010  GOSUB 8380
 1020 O$ = DL$ + EL$: GOSUB 7000
 1030 O$ = "The ball is rolling...."
 1040 O$ = O$ + TU$
 1050  GOSUB 7000
 1060 G(3) =  INT (36 *  RND (1)) + 1
 1070 O$ = DL$ + EL$: GOSUB 7000
 1080 O$ = "The number is................" +  STR$ (G(3)) + DL$: GOSUB 7000
 1090  IF Y = G(3) THEN G(7) = 36 * G(2)
 1100  FOR X = 2 TO 36 STEP 2: IF G(3) = X THEN G(6) = 1
 1110  NEXT 
 1120  IF G(4) = 1 AND G(6) = 1 THEN G(7) = 2 * G(2)
 1130  IF G(5) = 1 AND G(6) = 0 THEN G(7) = 2 * G(2)
 1140  IF G(0) <  = G(3) AND G(1) =  > G(3) THEN G(7) = (36 / ((G(1) + 1) - G(0)
)) * G(2)
 1150  IF G(7) < 1 THEN O$ = "Ha Ha Ha!  You lose sucker!": GOSUB 7000
 1160  IF G(7) > 0 THEN O$ = "You win " +  STR$ ( INT (G(7) - G(2))) + " pieces 
of gold!":GD = GD +  INT (G(7)): GOSUB 7000
 1170 GD =  INT (GD): GOTO 750
 1180 MO$ = "":O$ = SC$ + EL$ + "[Blackjack]   By: The Chief Surgeon" + DL$ + "I
nitializing...": GOSUB 7000: POKE 36728,32:B$(0) = "    ":B$(2) = "A234567890JQK
": FOR F = 1 TO 4
 1190  FOR Z = 1 TO 13:MO$ = MO$ +  MID$ (B$(2),Z,1) +  MID$ (B$(0),F,1): NEXT :
 NEXT : GOSUB 1620: GOTO 1210
 1200  GOSUB 7000
 1210 O$ = EL$: GOSUB 7000: IF GD < 1 THEN O$ = EL$ + "You lost all of your mone
y!": GOSUB 7000: GOTO 130
 1220 GD =  INT (GD):O$ = EL$ + "You have: " +  STR$ (GD) + EL$ + "Your bet: ": 
GOSUB 6000:A =  VAL (I$): IF A < 0 OR A > GD THEN 1210
 1230  GOSUB 8300
 1240 A$ = ""
 1250  IF I$ = "0" OR I$ = "Q" THEN 130
 1260  IF A = 0 THEN 1210
 1270 F$ = "":O$ = EL$ + "Dealer- " + "?? ": GOSUB 7000: GOSUB 1580:F$ = ZZ$:A3 
= X: GOSUB 1580:O$ = ZZ$ + " Total = ??": GOSUB 7000
 1280 F$ = F$ + ZZ$:A3 = A3 + X:A6 =  - 1: GOSUB 1580:A4 = X:L1$ = ZZ$:A5 =  - 1
: GOSUB 1580:A4 = A4 + X:L1$ = L1$ + ZZ$
 1290 O$ = EL$ + "Player- " + L1$ + " Total = " +  STR$ (A4): GOSUB 7000:A5 = A5
 + 1: IF A4 < 22 THEN 1330
 1300  FOR F = 1 TO  LEN (L1$) STEP 3: IF  MID$ (L1$,F,1) <  > "A" THEN  NEXT :O
$ = EL$ + "Player- Busted!":GD = GD - A: GOTO 1200
 1310 O$ = EL$ + "Player- Ace counts as one.": GOSUB 7000:A4 = A4 - 10: IF F > 1
 THEN L1$ =  LEFT$ (L1$,F - 1) + "1" +  MID$ (L1$,F + 1): GOTO 1290
 1320 L1$ = "1" +  MID$ (L1$,F + 1): GOTO 1290
 1330  IF A$ = "Y" THEN A$ = "N": GOTO 1440
 1340  IF A4 = 21 AND  NOT A5 THEN O$ = EL$ + "Player- Blackjack!":GD = GD + 1.5
 * A + .5: GOTO 1200
 1350 O$ = DL$ + "Player- H)it S)tand": GOSUB 7000: IF  NOT A5 THEN O$ = " D)oub
le": GOSUB 7000
 1360 O$ = EL$ + "?: ": GOSUB 6000
 1370  IF I$ <  > "H" THEN 1390
 1380 O$ = EL$ + "Player- Hits": GOSUB 7000: GOSUB 1580:L1$ = L1$ + ZZ$:A4 = A4 
+ X: GOTO 1290
 1390  IF I$ <  > "D" OR A5 THEN 1420
 1400 O$ = EL$ + "Player- Doubles": GOSUB 7000: IF 2 * A > GD THEN O$ = EL$ + " 
but then decides that" + EL$ + "        he hasn't got enough gold!": GOSUB 7000:
 GOTO 1290
 1410  PRINT :A = 2 * A:A$ = "Y":I$ = "H": GOTO 1370
 1420  IF I$ <  > "S" THEN O$ = EL$ + "Dealer- Can't understand that gibberish!"
: GOSUB 7000: GOTO 1350
 1430 O$ = EL$ + "Player- Stands": GOSUB 7000
 1440 O$ = DL$ + "Dealer- " + F$ + " Total = " +  STR$ (A3): GOSUB 7000:A6 = A6 
+ 1: IF A3 < 22 THEN 1490
 1450  FOR F = 1 TO  LEN (F$) STEP 3: IF  MID$ (F$,F,1) <  > "A" THEN  NEXT :O$ 
= EL$ + "Dealer- Busted!":GD = GD + A: GOTO 1200
 1460  IF F = 1 THEN F$ = "1" +  MID$ (F$,2)
 1470  IF F <  > 1 THEN F$ =  LEFT$ (F$,F - 1) + "1" +  MID$ (F$,F + 1)
 1480 O$ = EL$ + "Dealer- Ace counts as one.":A3 = A3 - 10: GOSUB 7000: GOTO 144
0
 1490  IF A3 < 17 THEN O$ = EL$ + "Dealer- Hits": GOSUB 7000: GOSUB 1580:F$ = F$
 + ZZ$:A3 = A3 + X: GOTO 1440
 1500  IF A3 <  > 17 OR A6 THEN 1530
 1510  FOR F = 1 TO  LEN (F$) STEP 3: IF  MID$ (F$,F,1) = "A" THEN O$ = EL$ + "D
ealer- Hits on soft seventeen (17)": GOSUB 7000: GOSUB 1580:F$ = F$ + ZZ$:A3 = A
3 + X: GOTO 1440
 1520  NEXT 
 1530  IF A3 = 21 AND  NOT A6 THEN O$ = EL$ + "Dealer- has Blackjack!": GOSUB 70
00
 1540 O$ = DL$ + "Dealer- Total = " +  STR$ (A3) + EL$ + "Plater- Total = " +  S
TR$ (A4) + EL$: GOSUB 7000: IF A3 = 21 THEN O$ = EL$ + "Sorry, house always wins
 with 21!":GD = GD - A: GOTO 1200
 1550  IF A4 = A3 THEN O$ = EL$ + "It's a push- oh well...": GOTO 1200
 1560  IF A4 > A3 THEN O$ = EL$ + "Player- Wins!":GD = GD + A: GOTO 1200
 1570 O$ = EL$ + "Player- Loses...":GD = GD - A: GOTO 1200
 1580  IF  NOT A7 THEN  GOSUB 1620
 1590 ZZ$ =  LEFT$ (B$,2) + " ": IF  LEN (B$) > 2 THEN B$ =  RIGHT$ (B$, LEN (B$
) - 2)
 1600 A7 = A7 - 1: FOR F = 1 TO 9: IF  LEFT$ (ZZ$,1) <  >  MID$ (B$(2),F,1) THEN
  NEXT 
 1610 X = F + 10 * (F = 1): RETURN 
 1620 F =  FRE (0):O$ = DL$ + "New Deck: Shuffling..." + EL$: GOSUB 7000:B$ = MO
$:MO$ = "": FOR F = 52 TO 2 STEP  - 1:Y =  INT (F *  RND (1)) * 2:MO$ = MO$ +  M
ID$ (B$,Y + 1,2)
 1630  IF Y AND Y < F * 2 - 2 THEN B$ =  LEFT$ (B$,Y) +  RIGHT$ (B$,F * 2 - Y - 
2): GOTO 1660
 1640  IF  NOT Y THEN B$ =  RIGHT$ (B$,F * 2 - 2): GOTO 1660
 1650  IF Y =  LEN (B$) - 2 THEN B$ =  LEFT$ (B$, LEN (B$) - 2)
 1660  NEXT :MO$ = MO$ + B$:B$ = MO$:A7 = 52: RETURN 
 1670  IF I$ = "Q" OR I$ = "0" THEN  POP : GOTO 130
 1680  RETURN 
 1690  IF  VAL (I$) < 1 THEN O$ = EL$ + "[Positive Numbers Only!]":BE = 1: GOSUB
 7000: RETURN 
 1700  IF  VAL (I$) > GD THEN O$ = EL$ + YO$:BE = 1: GOSUB 7000: RETURN 
 1710  RETURN 
 1720 O$ = EL$ + "You walk over to The Russian Roulette   Table and pick up the 
Gun...": GOSUB 7000
 1730 G(0) = 1
 1740 G(1) = G(0) * (LE * LE * 35):O$ = DL$ + "1) Pull The Trigger" + DL$ + "[Go
ld in Pot:" +  STR$ (G(1)) + "][Q]->": GOSUB 6000
 1750  GOSUB 1670: GOSUB 8300: IF I$ <  > "1" THEN 1740
 1760 O$ = EL$ + "You Pull The Trigger....": GOSUB 7000: FOR X = 1 TO 750: NEXT 

 1770 G(0) = G(0) + 1
 1780 X =  INT (2 *  RND (1)) + 1
 1790  IF X = 2 THEN O$ = "Bang!" + DL$ + "You Are Dead.  You lose all your Gold
!": GOSUB 7000:GD = 0: GOTO 8370
 1800 GD = GD + G(1)
 1810 O$ = "Click!" + DL$ + "Phew!....You win " +  STR$ (G(1)) + " Gold!": GOSUB
 7000: GOTO 1740
 1820 A$ = CH$:A = J: GOSUB 8390: CALL 35848"CHAT"
 6000  GOSUB 7000: GOSUB 8000: RETURN 
 7000  & B / O$: POKE 960,0: RETURN 
 8000 CC = 0: IF  PEEK (1) = 128 AND CF = 1 AND CA$ = "Y" THEN CA$ = "N": CALL 3
8539:CF = 9
 8010  IF CF = 9 AND  PEEK (1) <  > 128 THEN CF = 1:CA$ = "Y"
 8020  IF CA$ <  > "Y" OR  LEN (CN$) > 1 THEN 8040
 8030  IF CF = 1 THEN  CALL 38539
 8040  IF  PEEK (1) = 128 THEN 8140
 8050  IF  LEN (CN$) = 0 THEN 8140
 8060  FOR T = 1 TO  LEN (CN$)
 8070  IF  MID$ (CN$,T,1) = "," THEN I$ =  MID$ (CN$,1,T - 1):CN$ =  RIGHT$ (CN$
, LEN (CN$) - T): GOTO 8110
 8080  IF  MID$ (CN$,T,1) = "#" THEN I$ =  MID$ (CN$,1,T - 1):CN$ = "": GOTO 811
0
 8090  NEXT 
 8100  POKE 960,0
 8110  IF O$ = "STOP" THEN O$ = "": GOTO 8210
 8120  IF  LEN (I$) = 0 THEN 8050
 8130 O$ = I$ + EL$: GOSUB 7000: GOTO 8290
 8140  POKE 960,0: & A / SP$:I$ =  MID$ (SP$,1): IF  PEEK (961) THEN 1820
 8150 CN$ = I$ + "#":O$ = "STOP"
 8160  IF  LEFT$ (I$,1) = "#" THEN I$ = "#":CN$ = ""
 8170  POKE 961,0: IF  PEEK (960) = 255 THEN CC = CC + 1: IF CC > 1 THEN 8440
 8180  IF  PEEK (960) = 255 OR I$ = "OFF" THEN 8370
 8190  IF  PEEK (1) = 128 THEN CN$ = "": GOTO 8230
 8200  IF  LEN (CN$) > 0 THEN 8060
 8210  IF  LEN (I$) <  > 1 AND  RIGHT$ (I$,1) = " " THEN I$ =  LEFT$ (I$, LEN (I
$) - 1): GOTO 8210
 8220  IF  LEN (I$) <  > 1 AND  LEFT$ (I$,1) = " " THEN I$ =  RIGHT$ (I$, LEN (I
$) - 1): GOTO 8220
 8230  IF  LEN (I$) = 0 AND CR = 1 THEN O$ = EL$: GOSUB 7000: GOTO 8250
 8240  IF  LEN (I$) = 0 THEN 8000
 8250  IF CA$ <  > "Y" THEN 8290
 8260  IF CF = 1 THEN  CALL 36798
 8270  IF I$ = "202 ON" THEN O$ = EL$ + "202 is now On.": GOSUB 7000: CALL 36798
:CF = 1
 8280  IF I$ = "202 OFF" THEN O$ = EL$ + "202 is now Off.": GOSUB 7000: CALL 385
39:CF = 0
 8290 CR = 0: RETURN 
 8300  IF CL$ = "N" THEN T$ = DA$: RETURN 
 8310  PR# 4: IN# 4: INPUT "#";T,T,T,T,T,B: INPUT "%";T$
 8320  PR# 0: POKE 56,102: POKE 57,213: CALL 1002
 8330  IF TI > T THEN T = TI + (60 - TI) + T
 8340 TL = CO - (T - TI)
 8350  IF TL <  = 0 THEN O$ = EL$ + "You are out of Time!  Later.": GOSUB 7000: 
GOTO 8370
 8360  RETURN 
 8370 A$ = OF$:A = J: GOSUB 8390: CALL 35848"OFF"
 8380  GOSUB 8300: RETURN 
 8390 Y =  VAL ( MID$ (A$,4,1)): POKE 43626,Y:Y =  VAL ( RIGHT$ (A$,1)): POKE 43
624,Y:Y =  VAL ( LEFT$ (A$,3)): IF YR$ = "Y" THEN  PRINT D$"OPEN VC,V"Y
 8395  IF TC$ = "Y" THEN  POKE 1014,10: POKE 952,215: POKE 953,251
 8400  RETURN 

]LOAD JOUST
]LIST

 5  IF TC$ = "Y" THEN  POKE 1014,0: POKE 952,240: POKE 953,253
 10  CALL 54915
 20  ONERR  GOTO 8520
 30  IF A > 0 THEN 50
 40  PRINT  CHR$ (4)"SAVEJOUST,S3": PRINT  CHR$ (4)"RUNSTART,S6"
 50  HOME :O$ = SC$ + "-----------The Proving Downs!-----------" + EL$ + "      
 A Real Jousting Experience" + DL$: GOSUB 7000
 60 O$ = "You lead your steed up to the Gate-     keeper of the field and he say
s:": GOSUB 7000
 70  IF LJ = 2 THEN 560
 80  GOSUB 8300:O$ = DL$ + "'Greetings Knight!" + DL$ + "Enter thy opponent's #(
JL=" +  STR$ (2 - LJ) + ")'->": GOSUB 6000
 90  GOTO 8470
 100  IF I$ = "Q" THEN 560
 110 X =  VAL (I$): IF X > US OR X < 1 OR (A = X) THEN O$ = EL$ + "Invalid Numbe
r!": GOSUB 7000: GOTO 70
 120 A1 = X
 130  PRINT D$"OPENSTATS,L200"C$(15): PRINT D$"READSTATS,R"X: INPUT B$(1),B$(2),
T,S1,X,X,B(5),X,S2: PRINT D$"CLOSE": IF B$(1) = "Empty" THEN O$ = EL$ + "Sorry, 
that Knight has been deleted.": GOSUB 7000: GOTO 70
 140  IF S1 < 0 THEN S1 = S1 - (S1 * 2)
 150  IF S < 0 THEN S2 = S2 - (S2 * 2)
 160  IF LE > T + FL THEN O$ = EL$ + "You can only Joust a user higher or " +  S
TR$ (FL) + " lEvels below you." + EL$: GOSUB 8390: GOSUB 7000: GOTO 70
 170 J = A1: ONERR  GOTO 190
 180  PRINT D$"OPENDOWNS,L17"C$(15): PRINT D$"READDOWNS,R"J: INPUT S3,S4,B(7),B(
8),B(9): PRINT D$"CLOSE": GOTO 200
 190  CALL  - 3288:S3 = 0:S4 = 0:B(7) = 0:B(8) = 0:B(9) = 0
 200 O$ = EL$ + "Character: " + B$(1) + EL$ + "     Wins: " +  STR$ (S3) + EL$ +
 "   Losses: " +  STR$ (S4): GOSUB 7000
 210 B(0) = S1 + S2 + S3 - S4
 220 O$ = EL$ + "    Skill: " +  STR$ (B(0)) + DL$ + "Do you wish to joust this 
Knight?": GOSUB 6000
 230  IF I$ = "Q" OR I$ = "N" THEN 70
 240  IF I$ <  > "Y" THEN 200
 250  IF B(0) > (ST + AG + JW - JL) * 2 THEN O$ = EL$ + "Sorry, but to Joust a K
night of such    stature would surely be suicide!": GOSUB 7000: GOTO 70
 260 LJ = LJ + 1:O$ = EL$ + "The first user to strike 3 times wins!" + DL$ + "Th
e trumpets blare..." + DL$ + "You enter the jousting field." + DL$ + B$(1) + " s
pits at you!": GOSUB 7000
 270 P = 1:W = 0:L = 0:S7 = AG + ST + JW - JL:S8 = S1 + S2 + S3 - S4
 280  IF P > 5 OR W > 2 OR L > 2 THEN 450
 290 O$ = DL$ + "[Pass " +  STR$ (P) + "][(J)oust (G)iveup][W=" +  STR$ (W) + " 
L=" +  STR$ (L) + "]:": GOSUB 6000
 300  IF I$ = "G" THEN O$ = EL$ + "The Crowd throws rocks at you as you    leave
 the arena!" + EL$: GOSUB 7000: GOTO 70
 310  IF I$ <  > "J" THEN 290
 320 P = P + 1
 330 O$ = EL$ + "You spur your horse, the tension mounts!": GOSUB 7000
 340 B(3) = S7 / 2:B(3) =  INT (B(3) *  RND (1)) + S7
 350 B(4) = S8 / 2:B(4) =  INT (B(4) *  RND (1)) + S8
 360  IF B(3) = B(4) THEN 340
 370  IF B(3) > B(4) THEN X =  INT (3 *  RND (1)) + 4: GOTO 390
 380 X =  INT (3 *  RND (1)) + 1
 390  ON X GOSUB 410,420,430,440,440,440
 400  GOTO 280
 410 L = L + 1:O$ = EL$ + ")Ooof!(- A blow! You lose this pass!": GOSUB 7000: GO
SUB 570: RETURN 
 420 L = L + 1:O$ = EL$ + ">Snap!<- Your lance breaks!  Pass lost!": GOSUB 7000:
 GOSUB 570: RETURN 
 430 L = L + 1:O$ = EL$ + "]Aargh![- Your horse stumbles! Loss!": GOSUB 7000: GO
SUB 570: RETURN 
 440 W = W + 1:O$ = EL$ + "*Thud!*- A hit! You win this pass!" + EL$: GOSUB 7000
: GOSUB 620: RETURN 
 450  IF W < 3 THEN 500
 460 O$ = DL$ + "You have won the joust!" + EL$: GOSUB 7000
 470 S4 = S4 + 1:O$ = EL$ + "The Queen tosses you her handkercheif!" + EL$: GOSU
B 7000:JW = JW + 1
 480 X = LE * LE * 60:O$ = EL$ + "You gain " +  STR$ (X) + " Gold Pieces!" + EL$
: GOSUB 7000:GD = GD + X
 490  GOTO 520
 500 O$ = DL$ + "You have lost the joust!" + EL$: GOSUB 7000
 510 S3 = S3 + 1:O$ = EL$ + "The Queen frowns as you leave..." + EL$: GOSUB 7000
:JL = JL + 1
 520  IF L = 3 THEN B(7) = B(7) + 1: GOTO 540
 530 B(8) = B(8) + 1
 540  PRINT D$"OPENDOWNS,L17"C$(15): PRINT D$"WRITEDOWNS,R"J: PRINT S3: PRINT S4
: PRINT B(7): PRINT B(8): PRINT B(9): PRINT D$"CLOSE"
 550  GOTO 70
 560 A$ = MA$: GOSUB 8450:O$ = EL$ + "[Hold...] Transporting to Main" + EL$: GOS
UB 7000: CALL 35848"MAIN"
 570 X =  INT ( RND (1) * 10 / 3):O$ = DL$: GOSUB 7000: IF X = 0 THEN X = 1
 580  ON X GOTO 590,600,610
 590 O$ = "The King relieves himself on you...": GOTO 7000
 600 O$ = "The crowd dispells garbage on you...": GOTO 7000
 610 O$ = "The crowd boos vigorously...": GOTO 7000
 620 X =  INT ( RND (1) * 10 / 3)
 630 O$ = EL$: GOSUB 7000
 640  IF X = 0 THEN X = 1
 650  ON X GOTO 660,670,680
 660 O$ = "The Queen waves at you!": GOTO 7000
 670 O$ = "The crowd roars with approval!": GOTO 7000
 680 O$ = "The crowd is doing the WAVE!": GOTO 7000
 6000  GOSUB 7000: GOSUB 8000: RETURN 
 7000  & B / O$: POKE 960,0: RETURN 
 8000 CC = 0: IF  PEEK (1) = 128 AND CF = 1 AND CA$ = "Y" THEN CA$ = "N": CALL 3
8539:CF = 9
 8010  IF CF = 9 AND  PEEK (1) <  > 128 THEN CF = 1:CA$ = "Y"
 8020  IF CA$ <  > "Y" OR  LEN (CN$) > 1 THEN 8040
 8030  IF CF = 1 THEN  CALL 38539
 8040  IF  PEEK (1) = 128 THEN 8140
 8050  IF  LEN (CN$) = 0 THEN 8140
 8060  FOR T = 1 TO  LEN (CN$)
 8070  IF  MID$ (CN$,T,1) = "," THEN I$ =  MID$ (CN$,1,T - 1):CN$ =  RIGHT$ (CN$
, LEN (CN$) - T): GOTO 8110
 8080  IF  MID$ (CN$,T,1) = "#" THEN I$ =  MID$ (CN$,1,T - 1):CN$ = "": GOTO 811
0
 8090  NEXT 
 8100  POKE 960,0
 8110  IF O$ = "STOP" THEN O$ = "": GOTO 8210
 8120  IF  LEN (I$) = 0 THEN 8050
 8130 O$ = I$ + EL$: GOSUB 7000: GOTO 8290
 8140  POKE 960,0: & A / SP$:I$ =  MID$ (SP$,1): IF  PEEK (961) THEN 8380
 8150 CN$ = I$ + "#":O$ = "STOP"
 8160  IF  LEFT$ (I$,1) = "#" THEN I$ = "#":CN$ = ""
 8170  POKE 961,0: IF  PEEK (960) = 255 THEN CC = CC + 1: IF CC > 1 OR I$ = "OFF
" THEN 8370
 8180  IF  PEEK (960) = 255 OR I$ = "OFF" THEN 8140
 8190  IF  PEEK (1) = 128 THEN CN$ = "": GOTO 8230
 8200  IF  LEN (CN$) > 0 THEN 8060
 8210  IF  LEN (I$) <  > 1 AND  RIGHT$ (I$,1) = " " THEN I$ =  LEFT$ (I$, LEN (I
$) - 1): GOTO 8210
 8220  IF  LEN (I$) <  > 1 AND  LEFT$ (I$,1) = " " THEN I$ =  RIGHT$ (I$, LEN (I
$) - 1): GOTO 8220
 8230  IF  LEN (I$) = 0 AND CR = 1 THEN O$ = EL$: GOSUB 7000: GOTO 8250
 8240  IF  LEN (I$) = 0 THEN 8000
 8250  IF CA$ <  > "Y" THEN 8290
 8260  IF CF = 1 THEN  CALL 36798
 8270  IF I$ = "202 ON" THEN O$ = EL$ + "202 is now On.": GOSUB 7000: CALL 36798
:CF = 1
 8280  IF I$ = "202 OFF" THEN O$ = EL$ + "202 is now Off.": GOSUB 7000: CALL 385
39:CF = 0
 8290 CR = 0: RETURN 
 8300  IF CL$ = "N" THEN T$ = DA$: RETURN 
 8310  PR# 4: IN# 4: INPUT "#";T,T,T,T,T,B: INPUT "%";T$
 8320  PR# 0: POKE 56,102: POKE 57,213: CALL 1002
 8330  IF TI > T THEN T = TI + (60 - TI) + T
 8340 TL = CO - (T - TI)
 8350  IF TL <  = 0 THEN O$ = EL$ + "You are out of Time!  Later.": GOSUB 7000: 
POP : GOTO 8370
 8360  RETURN 
 8370 A$ = OF$: GOSUB 8450: CALL 35848"OFF"
 8380 A$ = CH$: GOSUB 8450: CALL 35848"CHAT"
 8390  IF  LEN (O$) < 40 OR  LEN (O$) > 79 THEN  RETURN 
 8400 X = 0
 8410  IF  MID$ (O$,40 - X,1) = " " THEN B$(0) =  LEFT$ (O$,39 - X):B$(0) = B$(0
) + EL$ +  RIGHT$ (O$, LEN (O$) - (40 - X)): GOTO 8430
 8420 X = X + 1: GOTO 8410
 8430 O$ = B$(0)
 8440  RETURN 
 8450 Y =  VAL ( MID$ (A$,4,1)): POKE 43626,Y:Y =  VAL ( RIGHT$ (A$,1)): POKE 43
624,Y:Y =  VAL ( LEFT$ (A$,3)): IF YR$ = "Y" THEN  PRINT D$"OPEN VC,V"Y
 8455  IF TC$ = "Y" THEN  POKE 1014,10: POKE 952,215: POKE 953,251
 8460  RETURN 
 8470  FOR X = 20 TO JW STEP 20
 8480  IF LR <  = X AND JW > 19 THEN 8510
 8490  NEXT 
 8500  GOTO 100
 8510  CALL 54915:LR = X + 1:O$ = EL$ + "You have " +  STR$ (X) + " Wins!" + DL$
 + "All Stats + 5!": GOSUB 7000:ST = ST + 5:AG = AG + 5:WI = WI + 5:CH = CH + 5:
 GOTO 80
 8520  CALL  - 3288: GOTO 70

]LOAD MA
]LIST

 5  IF TC$ = "Y" THEN  POKE 1014,0: POKE 952,240: POKE 953,253
 10  CALL 54915
 20  IF A > 0 THEN 40
 30  PRINT  CHR$ (4)"SAVEMA,S3": PRINT  CHR$ (4)"RUNCHAT,S6"
 40  ONERR  GOTO 70
 50 K = 5: IF FE = 1 THEN D1$ = SY$:FE = 0: GOTO 160
 60  GOTO 510
 70  CALL  - 3288: GOTO 510
 80 A$ = OF$: GOSUB 8420: CALL 35848"OFF"
 90 A$ = CH$: GOSUB 8420: CALL 35848"CHAT"
 100  RETURN 
 110 O$ = EL$ + "Send a Scroll.  Press 'M' for Match     or enter User #": GOSUB
 6000
 120  IF I$ = "Q" THEN 520
 130  IF I$ = "M" THEN 610
 140 X =  VAL (I$): IF X < 1 OR X > US THEN 110
 150  PRINT D$"OPENSTATS,L200"C$(15): PRINT D$"READSTATS,R"X: INPUT D1$: PRINT D
$"CLOSE":O$ = EL$ + "Send Mail to " + D1$ + "? ": GOSUB 6000: IF I$ <  > "Y" OR 
D1$ = "Empty" THEN 110
 160  GOSUB 7010: IF  NOT X THEN 570
 170 CR = 0:D3$ = "Letter Has Been Mailed": GOSUB 450: GOTO 510
 180 O$ = EL$ + "Read Your Scrolls" + DL$: GOSUB 7000
 190  IF MA <  > 1 THEN O$ = DL$ + "You Have No Scrolls!": GOSUB 7000: GOTO 510
 200 F$ = "M-" + NA$
 210  PRINT  CHR$ (4)"OPEN"F$C$(20)
 220  PRINT  CHR$ (4)"READ"F$: & E / ZZ$: IF ZZ$ =  CHR$ (0) THEN 440
 230 O$ = DL$: GOSUB 7000:C = 1:BB = 1
 240 D$(1) =  MID$ (ZZ$,1): IF  LEFT$ (ZZ$,1) =  CHR$ (1) THEN O$ = D$(1) + DL$:
 GOSUB 7000: & E / ZZ$:D$(3) =  MID$ (ZZ$,2):C = 3:D$(2) = ""
 250 D1$ = D$(C):D$(C) = "[Written By]=>" + D$(C):O$ = D$(C) + EL$: GOSUB 7000:C
 = C + 1
 260  & E / ZZ$:D$(C) =  MID$ (ZZ$,1): IF  PEEK (960) =  PEEK (970) THEN BB = 0
 270  IF ZZ$ <  >  CHR$ (31) THEN C = C + 1: IF BB THEN O$ = EL$ + D$(C - 1): GO
SUB 7000
 280  IF C = 16 AND CF = 1 THEN O$ = EL$ + "[Press Return]":CR = 1: GOSUB 6000
 290  IF ZZ$ <  >  CHR$ (31) THEN 260
 300  POKE 960,0:O$ = DL$: GOSUB 7000
 310 O$ = EL$ + "[A/uto-Reply-D/elete-R/e-read]->": GOSUB 7000: GOSUB 8330:O$ = 
EL$: GOSUB 7000
 320  IF I$ <  > "A" THEN 380
 330 O$ = EL$ + "[Hold...]  Checking for mailbox" + EL$: GOSUB 7000: PRINT D$"OP
ENSTATS,L200"C$(15)
 340  FOR Z = 1 TO US: PRINT D$"READSTATS,R"Z: INPUT O$
 350  IF O$ = D1$ THEN  PRINT D$"CLOSESTATS": GOTO 420
 360  NEXT 
 370  PRINT D$"CLOSESTATS":O$ = EL$ + "Sorry, that character is no longer on   t
his system." + EL$: GOSUB 7000: GOTO 310
 380  IF I$ = "Q" AND J = 1 THEN 440
 390  IF I$ <  > "R" THEN 220
 400 O$ = DL$: GOSUB 7000: FOR Z = 1 TO C - 1:O$ = D$(Z) + EL$: GOSUB 7000: IF  
PEEK (960) =  PEEK (970) THEN Z = C
 410  NEXT Z: POKE 960,0:O$ = DL$: GOSUB 7000: GOTO 310
 420  GOSUB 7010: IF  NOT X THEN 220
 430 CR = 0:D3$ = "Mailed to [" + D1$ + "]" + EL$: GOSUB 450: GOTO 220
 440  PRINT  CHR$ (4)"CLOSE":MA = 2:O$ = EL$: GOTO 7000
 450 O$ = EL$ + "Mailing To: " + D1$ + DL$: GOSUB 7000: PRINT  CHR$ (4)"OPENM-"D
1$""C$(20): PRINT  CHR$ (4)"APPENDM-"D1$: PRINT  CHR$ (4)"WRITEM-"D1$
 460  IF CR = 1 THEN  PRINT  CHR$ (1)
 470 B(0) =  - 99
 480  PRINT NA$: GOSUB 8340: PRINT "[Day Mailed]=>"T$" #"J: PRINT : FOR Z = 1 TO
 X: PRINT D$(Z): NEXT Z: PRINT  CHR$ (31)
 490 B(0) = 0
 500  PRINT  CHR$ (4)"CLOSEM-"D1$:O$ = D3$: GOTO 7000
 510  GOTO 520
 520  GOSUB 8340:O$ = DL$ + "Dungeon Script Office" + DL$ + "[S/end-R/ead-Q/uit]
->": GOSUB 6000
 530  IF I$ = "S" THEN 110
 540  IF I$ = "Q" THEN 580
 550  IF I$ = "R" THEN 180
 560  GOTO 510
 570  IF FE = 1 THEN FE = 0: GOTO 510
 580 O$ = DL$ + "Return to Main Dungeon? [Y/N]:": GOSUB 6000: IF I$ <  > "Y" THE
N 510
 590 A$ = MA$: GOSUB 8420: CALL 35848"MAIN"
 600  RETURN 
 610 O$ = EL$ + "Enter Users Full Name->": GOSUB 6000
 620 O$ = I$: GOSUB 8440:I$ = B$(0)
 630  PRINT D$"OPENSTATS,L200"C$(15)
 640  FOR X = 1 TO US
 650  PRINT D$"READSTATS,R"X
 660  INPUT B$(0): IF B$(0) = I$ THEN O$ = EL$ + B$(0) + " is User #" +  STR$ (X
) + EL$:D1$ = B$(0): GOSUB 7000: PRINT D$"CLOSE": GOTO 150
 670  NEXT 
 680  PRINT D$"CLOSE"
 690 O$ = EL$ + "There is no such user!" + EL$: GOSUB 7000: GOTO 110
 6000  GOSUB 7000: GOSUB 8000: RETURN 
 7000  & B / O$: POKE 960,0: RETURN 
 7010  HOME :O$ = SC$ + EL$ + "  [" +  STR$ (ML) + "] Lines - [/EX] Ends  [/S] S
aves": GOSUB 7000:O$ = EL$ + "[/UP] Redo last line  [/LN] Line Number" + DL$: GO
SUB 7000:X = 1
 7015  IF CA$ <  > "Y" THEN 7030
 7020  POKE 36996,76: POKE 36998,142
 7030 CR = 1: POKE 1,128: GOSUB 8000:D$(X) = I$: POKE 1,0: IF  PEEK (872) = 1 TH
EN  POKE 0,VW
 7040  IF I$ = "/EX" OR I$ = "/ex" THEN D$(X) = "": GOTO 7120
 7050  IF I$ = "/UP" OR I$ = "/up" AND X > 1 THEN O$ = "[Retype the line]" + EL$
: GOSUB 7000:X = X - 1: GOTO 7030
 7060  IF I$ = "/S" OR I$ = "/s" THEN D$(X) = "":I$ = "S": GOTO 7160
 7070  IF I$ = "/LN" OR I$ = "/ln" THEN O$ = "[Line # " +  STR$ (X) + "]" + EL$:
 GOSUB 7000:X = X - 1
 7080  IF X = ML - 5 THEN O$ = "[5] More lines" + EL$: GOSUB 7000
 7090  POKE 38689,0: IF  PEEK (36712) = 1 THEN  POKE 0,VW
 7100 X = X + 1: IF X <  = ML THEN 7030
 7110 O$ = EL$ + "That's [" +  STR$ (ML) + "] lines" + EL$: GOSUB 7000
 7120 O$ = EL$ + "[Edit/S/?]->": GOSUB 7000: GOSUB 8330
 7125 O$ = EL$: GOSUB 7000
 7130  IF I$ = "?" THEN O$ = DL$ + "S)ave" + EL$ + "L)ist" + EL$ + "N)ew" + EL$ 
+ "C)ontinue" + EL$ + "F)ix" + EL$ + "Q)uit" + EL$: GOSUB 7000: GOTO 7120
 7140  IF I$ = "Q" THEN  GOSUB 7360:X = 0: POKE 36996,169: POKE 36998,32:O$ = DL
$ + "[Message Aborted!]": GOTO 7000
 7150  IF I$ = "L" THEN A$ = "": GOSUB 7300: GOTO 7120
 7160  IF I$ = "S" OR I$ = "O" THEN X = X - 1: POKE 36996,169: POKE 36998,32: RE
TURN 
 7170  IF I$ = "N" THEN  GOSUB 7360:O$ = EL$: GOSUB 7000: GOTO 7010
 7180  IF I$ = "F" THEN 7210
 7190  IF I$ = "C" THEN A$ = "":Z = X - 1:F = Z - 3:F = F * (F >  - 1) + 1: GOSU
B 7330:X = X - 1: GOTO 7100
 7200  GOTO 7120
 7210 O$ = EL$ + "List Lines [Y/N]:": GOSUB 7000: GOSUB 8330
 7220  IF I$ = "N" THEN 7250
 7230  IF I$ = "Y" THEN A$ = "X": GOSUB 7300: GOTO 7250
 7240  GOTO 7210
 7250 O$ = DL$ + "Edit Line [CR=Quit] #": GOSUB 7000:CR = 1: GOSUB 8300
 7260  IF I$ = "" THEN 7120
 7270  REM 
 7280  IF J < 1 OR J >  = X THEN O$ = EL$ + "[Line Doesn't Exist!]" + EL$: GOSUB
 7000: GOTO 7120
 7290 A$ = "[" +  RIGHT$ ("0" +  STR$ (J) + "] ",4):O$ = EL$ + A$ + D$(J) + EL$ 
+ A$: GOSUB 7000:CR = 1: POKE 1,128: GOSUB 8000:D$(J) = I$: POKE 1,0: GOTO 7210
 7300 O$ = DL$ + "List from [CR=Lists all] #": GOSUB 7000:CR = 1: GOSUB 8300:F =
 1:Z = X - 1: IF I$ = "" THEN 7320
 7310 F = J:O$ = "       To [CR=To The End] #": GOSUB 7000:CR = 1: GOSUB 8300:Z 
= J: IF I$ = "" THEN Z = X - 1
 7320  IF F < 1 OR Z >  = X THEN O$ = EL$ + "[Line # Doesn't Exist!]" + EL$: GOT
O 7000
 7330 O$ = EL$: GOSUB 7000: IF X < 2 THEN  RETURN 
 7340  FOR J = F TO Z: IF A$ > "" THEN A$ = "[" +  RIGHT$ ("0" +  STR$ (J),2) + 
"] "
 7350 O$ = A$ + D$(J) + EL$: GOSUB 7000: NEXT J: RETURN 
 7360  IF X > 1 THEN O$ = EL$ + "Verify? [Y/N]:": GOSUB 7000: GOSUB 8330: IF I$ 
<  > "Y" THEN  POP : GOTO 7120
 7370  RETURN 
 8000 CC = 0: IF  PEEK (1) = 128 AND CF = 1 AND CA$ = "Y" THEN CA$ = "N": CALL 3
8539:CF = 9
 8010  IF CF = 9 AND  PEEK (1) <  > 128 THEN CF = 1:CA$ = "Y"
 8020  IF CA$ <  > "Y" OR  LEN (CN$) > 1 THEN 8040
 8030  IF CF = 1 THEN  CALL 38539
 8040  IF  PEEK (1) = 128 THEN 8140
 8050  IF  LEN (CN$) = 0 THEN 8140
 8060  FOR T = 1 TO  LEN (CN$)
 8070  IF  MID$ (CN$,T,1) = "," THEN I$ =  MID$ (CN$,1,T - 1):CN$ =  RIGHT$ (CN$
, LEN (CN$) - T): GOTO 8110
 8080  IF  MID$ (CN$,T,1) = "#" THEN I$ =  MID$ (CN$,1,T - 1):CN$ = "": GOTO 811
0
 8090  NEXT 
 8100  POKE 960,0
 8110  IF O$ = "STOP" THEN O$ = "": GOTO 8210
 8120  IF  LEN (I$) = 0 THEN 8050
 8130 O$ = I$ + EL$: GOSUB 7000: GOTO 8290
 8140  POKE 960,0: & A / SP$:I$ =  MID$ (SP$,1): IF  PEEK (961) THEN 90
 8150 CN$ = I$ + "#":O$ = "STOP"
 8160  IF  LEFT$ (I$,1) = "#" THEN I$ = "#":CN$ = ""
 8170  POKE 961,0: IF  PEEK (960) = 255 THEN CC = CC + 1: IF CC > 1 OR I$ = "OFF
" THEN 80
 8180  IF  PEEK (960) = 255 THEN 8140
 8190  IF  PEEK (1) = 128 THEN CN$ = "": GOTO 8230
 8200  IF  LEN (CN$) > 0 THEN 8060
 8210  IF  LEN (I$) <  > 1 AND  RIGHT$ (I$,1) = " " THEN I$ =  LEFT$ (I$, LEN (I
$) - 1): GOTO 8210
 8220  IF  LEN (I$) <  > 1 AND  LEFT$ (I$,1) = " " THEN I$ =  RIGHT$ (I$, LEN (I
$) - 1): GOTO 8220
 8230  IF  LEN (I$) = 0 AND CR = 1 THEN O$ = EL$: GOSUB 7000: GOTO 8250
 8240  IF  LEN (I$) = 0 THEN 8000
 8250  IF CA$ <  > "Y" THEN 8290
 8260  IF CF = 1 THEN  CALL 36798
 8270  IF I$ = "202 ON" THEN O$ = EL$ + "202 is now On.": GOSUB 7000: CALL 36798
:CF = 1
 8280  IF I$ = "202 OFF" THEN O$ = EL$ + "202 is now Off.": GOSUB 7000: CALL 385
39:CF = 0
 8290 CR = 0: RETURN 
 8300  GOSUB 8000: IF I$ = "" THEN  RETURN 
 8310 J =  INT ( VAL (I$)): IF J < 0 THEN J = 0
 8320  RETURN 
 8330  GOTO 8000
 8340  IF CL$ = "N" THEN T$ = DA$: RETURN 
 8350  PR# 4: IN# 4: INPUT "#";T,T,T,T,T,B: INPUT "%";T$
 8360  PR# 0: POKE 56,102: POKE 57,213: CALL 1002
 8370  IF TI > T THEN T = TI + (60 - TI) + T
 8380 TL = CO - (T - TI)
 8390  IF B(0) =  - 99 THEN 8410
 8400  IF TL <  = 0 THEN O$ = EL$ + "You are out of Time!  Later.": GOSUB 7000: 
GOTO 80
 8410  RETURN 
 8420 Y =  VAL ( MID$ (A$,4,1)): POKE 43626,Y:Y =  VAL ( RIGHT$ (A$,1)): POKE 43
624,Y:Y =  VAL ( LEFT$ (A$,3)): IF YR$ = "Y" THEN  PRINT D$"OPEN VC,V"Y
 8425  IF TC$ = "Y" THEN  POKE 1014,10: POKE 952,215: POKE 953,251
 8430  RETURN 
 8440 B$(0) = ""
 8450  FOR X = 1 TO  LEN (O$)
 8460 A$ =  MID$ (O$,X,1)
 8470  IF X = 1 THEN 8510
 8480 T =  ASC (A$): IF T < 65 OR T > 90 THEN J = 1: GOTO 8510
 8490  IF J = 1 THEN J = 0: GOTO 8510
 8500 T = T + 32:A$ =  CHR$ (T)
 8510 B$(0) = B$(0) + A$
 8520  NEXT 
 8530  RETURN 

]LOAD MAIN
]LIST

 10  IF TC$ = "Y" THEN  POKE 1014,0: POKE 952,240: POKE 953,253
 20  IF FO > 4 THEN FO = 4
 30  CALL 54915: POKE 1,0: ONERR  GOTO 8720
 40  IF A > 0 THEN 140
 50  PRINT  CHR$ (4)"SAVEMAIN,S3": PRINT  CHR$ (4)"RUNFIGHT,S6"
 60 ST = 10:AG = 10:WI = 10:CH = 10:WE = 2:AR = 2:EX = 0:GD = 500:LE = 1:FI$ = "
On":FD = 100
 70 WP$ = "Dagger":AM$ = "Cloth":WP = 3:AP = 1
 80 HP = 20:TH = 20:PO = 20:TP = 20:BA = 100:L$(1) = "Low-Life Scum":A(1) = 0:L$
(2) = "Maggot":A(2) = 750
 90  FOR T = 1 TO SN:S(T) = 0: NEXT 
 100 S(3) = 2:S(5) = 2:S(26) = 2:S(19) = 1:S(2) = 2:S(8) = 1:JW = 0:JL = 0:LR = 
0
 110  PRINT D$"OPENCASTLES,L39"C$(12): PRINT D$"WRITECASTLES,R"A: PRINT "0000000
0000000000000000000000000000000": PRINT D$"CLOSE"
 120  IF AD$ = "Yes" AND SF$ = "Y" THEN  PRINT D$"OPENSAVE,L48"C$(27): PRINT D$"
WRITESAVE,R"A: PRINT "0": FOR X = 1 TO 11: PRINT "0": NEXT : PRINT D$"CLOSE"
 130  RETURN 
 140  GOSUB 8300:O$ = DL$ + ME$ + DL$ + "[Time:" +  STR$ (TL) + "]:[Cmd/?]->": G
OSUB 6000: GOSUB 1010: ONERR  GOTO 8720
 160  IF I$ = "." THEN 2940
 170  IF I$ = "+" THEN O$ = "Castle Editor": GOSUB 8780:A$ = CE$: GOSUB 8750: CA
LL 35848"CASTLE EDITOR"
 180  IF I$ = "!" THEN 2910
 190  IF CL$ = "N" THEN TL = TL - 1: IF TL < 0 THEN O$ = EL$ + "The Sands of Tim
e have run dry...." + EL$: GOSUB 7000: GOTO 8510
 200  IF I$ = "/" THEN 2870
 210  IF (I$ = "%" AND LJ = 2) OR (I$ = "D" AND FO > 3) THEN O$ = EL$ + "Ye will
 have to wait till next call to  use that command!" + EL$: GOSUB 7000:I$ = " "
 220  IF (I$ = "J" AND SF$ <  > "Y") OR (BD$ <  > "Y" AND I$ = "B") THEN O$ = EL
$ + "Sorry sire, but that option is not      functioning at this time.": GOSUB 7
000:I$ = " "
 230  IF I$ = "%" THEN O$ = "Courtyard": GOSUB 8780:A$ = JO$: GOSUB 8750: CALL 3
5848"JOUST"
 240  IF I$ = "A" THEN O$ = "Bazaar": GOSUB 8780:A$ = ST$: GOSUB 8750: CALL 3584
8"STORES"
 250  IF AD$ = "NO" AND I$ = "J" THEN O$ = EL$ + "Sorry my lord, but you will ha
ve to be- come a full time member before you can  use that function.": GOSUB 700
0:I$ = " "
 260  IF I$ <  > ":" THEN 290
 270 O$ = EL$ + "Reset Joust Wins/Losses? Y/N: ": GOSUB 6000: IF I$ = "Y" THEN J
W = 0:JL = 0:O$ = EL$ + "Done!": GOSUB 7000:LR = 0: GOTO 140
 280  GOTO 140
 290  IF I$ = "P" THEN 2680
 300  IF I$ = "T" THEN 2120
 310  IF I$ = "S" THEN O$ = EL$ + T$: GOSUB 7000: GOTO 140
 320  IF I$ = "*" THEN F$ = "CNTRL.CHAR": GOSUB 8370: GOTO 140
 330  IF I$ = "&" THEN F$ = "FACTS": GOSUB 8370: GOTO 140
 340  IF I$ <  > "I" THEN 380
 350 F$ = "INFO": GOSUB 8370:O$ = EL$ + "Are you interested in buying a copy of 
 this system? Y/N:": GOSUB 6000: IF I$ <  > "Y" THEN 140
 360 O$ = EL$ + "Do you have an Apple computer? Y/N:": GOSUB 6000: IF I$ <  > "Y
" THEN 140
 370 F$ = "BUY.INFO": GOSUB 8370: GOTO 140
 380  IF I$ = "^" THEN F$ = "HELP": GOSUB 8370: GOTO 140
 390  IF I$ = "C" THEN  POKE 1,128:O$ = DL$ + "What is it concerning(40 Char. Ma
x)?" + DL$: GOSUB 6000: VTAB (4): PRINT I$:O$ = EL$ + "If I am around I'll answe
r.": GOSUB 7000: HOME : POKE 1,0: GOTO 140
 400  IF I$ = "M" THEN 1560
 410  IF I$ = "Z" THEN 1760
 420  IF I$ = "$" THEN F$ = "PGL":O$ = SC$: GOSUB 7000: HOME :F$ = "PGL": GOSUB 
8380: GOTO 140
 430  IF I$ = "#" THEN F$ = "CSTAT":O$ = DL$ + "---------------" + EL$ + "Fight 
Outcomes-" + EL$ + "---------------" + DL$: GOSUB 7000: GOSUB 8380: GOTO 140
 440  IF I$ = "B" THEN 1700
 450  IF I$ = "J" THEN 2700
 460  IF I$ = "F" THEN 1710
 470  IF I$ <  > "@" THEN 530
 480 O$ = EL$ + "Current Password->" + PA$ + DL$ + "Change Password? Y/N:": GOSU
B 6000: IF I$ <  > "Y" THEN 140
 490  POKE 2,255
 500 O$ = EL$ + "Enter New Password->": GOSUB 6000: IF  LEN (I$) < 1 OR  LEN (I$
) > 7 THEN 500
 510  POKE 2,0
 520 PA$ = I$:O$ = EL$ + "Finis!": GOSUB 7000: GOTO 140
 530  IF I$ = "V" THEN 1780
 540  IF I$ = "E" THEN 1730
 550  IF I$ = "D" THEN O$ = "Battle Field": GOSUB 8780:A$ = FT$: GOSUB 8750: CAL
L 35848"FIGHT"
 560  IF I$ = "G" THEN O$ = "Casino": GOSUB 8780:A$ = GA$: GOSUB 8750: CALL 3584
8"GA"
 570  IF I$ = "K" THEN 1180
 580  IF I$ = "U" THEN  POKE 1,128: POKE 2,255: GOTO 950
 590  IF I$ = "?" THEN F$ = "MENU": GOSUB 8370: GOTO 140
 600  IF I$ = "H" THEN 720
 610  IF I$ = "X" THEN F$ = "FEES": GOSUB 8370: GOTO 140
 620  IF I$ = "N" THEN F$ = "NEWS": GOSUB 8370: GOTO 140
 630  IF I$ = "L" THEN 1390
 640  IF I$ = "Y" THEN  GOSUB 8520: GOTO 140
 650  IF I$ <  > "O" THEN 680
 660 O$ = EL$ + "My Lord!  Leaving so soon?:": GOSUB 6000: IF I$ = "Y" THEN 8510

 670  GOTO 140
 680  IF I$ <  > "R" THEN 710
 690 O$ = EL$ + "Re-Roll your character? Y/N:": GOSUB 6000: IF I$ = "Y" THEN  GO
SUB 60: GOSUB 8520
 700  GOTO 140
 710 TL = TL + 1: GOTO 140
 720  GOSUB 8740:O$ = "Battle Quickscan" + EL$ + "----------------" + DL$ + "1. 
User Fightscan" + EL$ + "2. Castle Fightscan" + EL$ + "3. Joust Fightscan" + DL$
 + "Which? (1-3/Q)->": GOSUB 6000
 730  GOSUB 980:B(0) =  VAL (I$): IF B(0) < 1 OR B(0) > 3 THEN 720
 735 O$ = EL$ + "Scan how many levels above you?" + EL$ + "(1-" +  STR$ (LN - LE
) + "/CR=All)->":CR = 1: GOSUB 6000:B(9) =  VAL (I$) + LE: IF LE = B(9) THEN B(9
) = LN
 740 O$ = EL$ + "Quickscan entire file? Y/N:": GOSUB 6000: GOSUB 980: IF I$ = "Y
" THEN X = 1:I$ = "Z": GOTO 770
 750 O$ = EL$ + "Start at User #": GOSUB 6000:X =  VAL (I$)
 760  GOSUB 980
 770  GOSUB 8790: ONERR  GOTO 790
 780  GOTO 800
 790  CALL  - 3288: PRINT D$"CLOSE":O$ = DL$ + "-/-> End of List!": GOSUB 7000: 
GOTO 140
 800  IF X < 1 OR X > US THEN O$ = "Invalid number!": GOSUB 7000: GOTO 720
 810  PRINT D$"OPENSTATS,L200"C$(15)
 820  FOR FI = X TO (X + 19)
 830  PRINT D$"READSTATS,R"FI
 840  INPUT B$(1),B$(3),J,B(1)
 850  IF B$(1) = "Empty" OR LE > J + FL OR J > B(9) OR A = FI THEN 920
 860  IF (B(0) = 1 AND B$(3) = "Dead") OR (B(0) = 2 AND B(1) < 0) THEN 920
 870 Y = J - LE
 880  IF LE < J THEN O$ = "+" +  STR$ (Y): GOTO 900
 890 O$ =  STR$ (Y)
 900 O$ = EL$ + "User #" +  STR$ (FI) + " " + B$(1) + " " + O$: GOSUB 7000
 910  IF  PEEK (960) =  PEEK (970) THEN 790
 920  NEXT FI
 930  PRINT D$"CLOSE": IF I$ <  > "Z" THEN O$ = DL$ + "Cont? (Y/N):": GOSUB 6000
: IF I$ <  > "Y" THEN 140
 940 X = X + 20: GOTO 810
 950 O$ = EL$ + "Enter Message.  40 Chars Max." + DL$: GOSUB 6000: IF  LEN (I$) 
> 40 THEN O$ = "Too long!" + EL$: GOSUB 7000: GOTO 950
 960  POKE 1,0: POKE 2,0
 970 O$ = EL$ + "The Deed Is Done!":ME$ = I$: GOSUB 7000: GOTO 140
 980  IF I$ <  > "Q" AND I$ <  > "0" THEN  RETURN 
 990  POP : IF B$(2) = "S" THEN  POP 
 1000  GOTO 140
 1010  IF EX < A(2) THEN  RETURN 
 1020  IF LE = LN - 1 THEN O$ = EL$ + "You have reached the top level.  You    w
ill either have to Re-Roll or stay at  this level.  Your stats will continue   t
o rise apropriately." + EL$ + EL$ + "[Press Return]":CR = 1: GOSUB 7000: GOSUB 8
000:LE = LE - 1:EX = A(1)
 1030 LE = LE + 1:G(3) =  INT (8 *  RND (1)) + 3:TP = TP + G(3):PO = TP
 1040 O$ = DL$ + "L" + EL$ + "e" + EL$ + "v" + EL$ + "e" + EL$ + "l" + DL$ +  ST
R$ (LE) + DL$ + "You are now a " + L$(2) + "!" + DL$ + "Power +" +  STR$ (G(3)) 
+ DL$
 1050 G(1) =  INT (CH / 5):G(2) =  INT ((G(1) * 2) *  RND (1)) + (G(1) * 3):O$ =
 O$ + "Hit points +" +  STR$ (G(2)) + EL$:TH = TH + G(2):HP = TH
 1060 X =  INT (5 *  RND (1)) + 3
 1070 O$ = O$ + EL$
 1080 Y =  INT (5 *  RND (1)) + 1
 1090  IF Y = 5 THEN ST = ST + X:O$ = O$ + "Strength +"
 1100  IF Y = 2 THEN 1080
 1110  IF Y = 4 THEN CH = CH + X:O$ = O$ + "Intellegence +"
 1120  IF Y = 3 THEN AG = AG + X:O$ = O$ + "Agility +"
 1130  IF Y = 1 THEN WI = WI + X:O$ = O$ + "Wisdom +"
 1140 O$ = O$ +  STR$ (X) + DL$ + "All Stats +1" + EL$: GOSUB 7000
 1150 G(0) = (LE * LE * 100) + 500:G(0) =  INT (G(0)):O$ = EL$ + "Gold +" +  STR
$ (G(0)) + EL$:GD = GD + G(0): GOSUB 7000
 1160 WI = WI + 1:ST = ST + 1:AG = AG + 1:CH = CH + 1
 1170  PRINT D$"OPENLEVELS"C$(7): PRINT D$"READLEVELS": FOR X = 1 TO (LE - 1): I
NPUT L$(1),A(1): NEXT : FOR X = 1 TO 2: INPUT L$(X),A(X): NEXT : PRINT D$"CLOSE"
: POP : GOTO 140
 1180  GOSUB 8740
 1190 O$ = DL$ + "         -=>Castle Treasury<=-" + DL$ + "Would you be making a
..." + DL$ + "A.  Deposit" + EL$ + "B.  Withdrawl" + DL$ + "Which->": GOSUB 6000
:BA =  INT (BA)
 1200  GOSUB 980
 1210  IF I$ = "A" THEN 1320
 1220  IF I$ <  > "B" THEN 1190
 1230  IF BA < 0 THEN O$ = EL$ + "You don't have any gold in the treasury!": GOS
UB 7000: GOTO 140
 1240 O$ = EL$ + "You have " +  STR$ (BA) + " Gold in your Treasury!" + DL$ + "W
ithdrawl entire amount? Y/N:": GOSUB 6000: IF I$ = "Y" THEN GD = GD + BA:BA = 0:
 GOTO 1310
 1250 O$ = EL$ + "Enter amount of Withdrawl $": GOSUB 6000
 1260  GOSUB 980
 1270 X =  INT ( VAL (I$))
 1280  IF X < 0 THEN 1240
 1290  IF X > (BA) THEN O$ = EL$ + YO$ + EL$: GOSUB 7000: GOTO 1240
 1300 GD = GD + X:BA = BA - X:NU = NU - X
 1310 O$ = EL$ + "Your transaction has been processed." + EL$ + "Thank you for y
our cooperation." + EL$: GOSUB 7000: GOTO 140
 1320 O$ = EL$ + "You have " +  STR$ (GD) + " Gold" + DL$ + "Deposit entire amou
nt? Y/N:": GOSUB 6000: IF I$ = "Y" THEN BA = BA + GD:GD = 0: GOTO 1380
 1330 O$ = EL$ + "Enter amount of deposit $": GOSUB 6000: GOSUB 980
 1340 X =  INT ( VAL (I$))
 1350  IF X < 0 THEN 1320
 1360  IF X > GD THEN O$ = EL$ + YO$ + EL$: GOSUB 7000: GOTO 1320
 1370 GD = GD - X:BA = BA + X
 1380 O$ = EL$ + "You now have " +  STR$ (BA) + " in your treasury!" + EL$: GOSU
B 7000: GOTO 1310
 1390 O$ = EL$ + SC$ + EL$ + "The Ladder" + EL$ + "----------" + DL$: GOSUB 7000

 1400  ONERR  GOTO 8730
 1410  PRINT D$"OPENTOP,L35"C$(16)
 1420 O$ = EL$ + "Enter starting rank #": GOSUB 6000:G(3) =  VAL (I$): GOSUB 980

 1430  IF G(3) < 1 OR G(3) > US THEN O$ = EL$ + "Invalid Number!" + EL$: GOSUB 7
000: GOTO 1420
 1440  GOSUB 8790
 1450 O$ = EL$ + "Num.  User/User num.       Level" + DL$ + "A=Alive" + EL$ + "D
=Dead" + DL$: GOSUB 7000
 1460  IF G(0) = 1 THEN G(4) = G(4) + 1
 1470  FOR X = G(3) TO (G(3) + 15)
 1480  PRINT D$"READTOP,R"X
 1490  INPUT A$,B$(1),G(2)
 1500 O$ =  STR$ (X) + ".  " + B$(1) + " " + A$: FOR Y = (32 -  LEN (O$)) TO 1 S
TEP  - 1:O$ = O$ + ".": NEXT :O$ = O$ +  STR$ (G(2)) + EL$: GOSUB 7000
 1510  IF  PEEK (960) =  PEEK (970THEN 140
 1520  NEXT X
 1530 O$ = EL$ + "Cont? (Y/N):": GOSUB 6000: IF I$ <  > "Y" THEN  PRINT D$"CLOSE
": GOTO 140
 1540 G(3) = G(3) + 16
 1550 O$ = EL$: GOSUB 7000: GOTO 1470
 1560 O$ = SC$ + EL$ + "Member Listing" + EL$ + "--------------": GOSUB 7000
 1570 O$ = DL$ + "Enter starting user #": GOSUB 6000
 1580 G(1) =  VAL (I$)
 1590  GOSUB 980
 1600  IF G(1) > US OR 1 > G(1) THEN O$ = "Invalid Number!": GOSUB 7000: GOTO 15
70
 1610  ONERR  GOTO 8730
 1620  PRINT D$"OPENSTATS,L200"C$(15)
 1630  FOR X = G(1) TO (G(1) + 15)
 1640  PRINT D$"READSTATS,R"X
 1650  INPUT B$(1)
 1660 O$ = EL$ + "[" +  STR$ (X) + "]  " + B$(1): GOSUB 7000
 1670  NEXT 
 1680 O$ = DL$ + "Cont? (Y/N):": GOSUB 6000: IF I$ <  > "Y" THEN  PRINT D$"CLOSE
": GOTO 140
 1690 G(1) = G(1) + 16: GOTO 1630
 1700 O$ = "Scroll City": GOSUB 8780:A$ = BO$: GOSUB 8750: CALL 35848"BRD"
 1710 O$ = DL$ + "Leave Feedback to Sysop? (Y/N):": GOSUB 6000: IF I$ <  > "Y" T
HEN 140
 1720 FE = 1: GOTO 1730
 1730 O$ = "Post Office": GOSUB 8780:A$ = ML$: GOSUB 8750: CALL 35848"MA"
 1740 A$ = CH$: GOSUB 8750: CALL 35848"CHAT"
 1750  RETURN 
 1760 O$ = DL$ + EL$ + "Log for " + DA$ + DL$ + " Hv=Half Validated   Va=Validat
ed" + EL$ + " Ex=Used Two Calls  New=New User" + EL$ + "Adv=Used Adventure  202=
Used 202" + DL$
 1770 O$ = O$ + "Call Number / User / User Info" + EL$ + "----------------------
--------" + DL$: GOSUB 7000:F$ = "LOG": GOSUB 8380: GOTO 140
 1780  GOSUB 8740:O$ = "Voting Booth" + EL$ + "------------" + DL$ + "This Weeks
 Topic is: " + DL$
 1790  GOSUB 7000
 1800 F$ = "VOTING.TOP": GOSUB 8380
 1810  IF VO = 1 THEN O$ = "View Results? Y/N: ": GOSUB 6000: IF I$ <  > "Y" THE
N 140
 1820  IF VO = 1 THEN O$ = EL$: GOSUB 7000
 1830 X = 0
 1840  PRINT D$"OPENVOTING"C$(18)
 1850  PRINT D$"READVOTING"
 1860  ONERR  GOTO 1900
 1870 X = X + 1
 1880  INPUT T$(X),B(X)
 1890  GOTO 1870
 1900  CALL  - 3288: PRINT D$"CLOSE":X = X - 1
 1910  FOR A1 = 1 TO X:N%(A1) = 0: NEXT :T = 0
 1920  FOR A1 = 1 TO X
 1930 T = T + B(A1)
 1940  NEXT 
 1950  IF T = 0 THEN 1990
 1960  FOR A1 = 1 TO X
 1970 N%(A1) = (B(A1) * 100) / T
 1980  NEXT 
 1990  ONERR  GOTO 8720
 2000  FOR Y = 1 TO X
 2010 O$ =  STR$ (Y) + ". " + T$(Y)
 2020  FOR AM = 20 TO  LEN (T$(Y)) STEP  - 1:O$ = O$ + ".": NEXT :O$ = O$ +  STR
$ (B(Y)) + "  " +  STR$ (N%(Y)) + "%" + EL$: GOSUB 7000
 2030  NEXT 
 2040  IF VO = 1 THEN 140
 2050 O$ = DL$ + "Which(1-" +  STR$ (X) + "/Q)->": GOSUB 6000: GOSUB 980
 2060 Y =  VAL (I$): IF Y < 1 OR Y > X THEN 2050
 2070 VO = 1
 2080 B(Y) = B(Y) + 1:O$ = EL$ + "HOLD...Your Vote Is Being Registered." + EL$: 
GOSUB 7000: PRINT D$"OPENVOTING"C$(18): PRINT D$"WRITEVOTING": FOR Y = 1 TO X: P
RINT T$(Y)","B(Y): NEXT 
 2090  PRINT D$"CLOSE"
 2100 G(3) = LE * 100
 2110 O$ = EL$ + "Gold +" +  STR$ (G(3)) + DL$ + "Experience +" +  STR$ (G(3)) +
 EL$:GD = GD + G(3):EX = EX + G(3):O$ = O$ + EL$ + "It Is Done Sire!": GOSUB 700
0: GOTO 140
 2120 O$ = DL$ + "Trade Stats" + EL$ + "-----------" + EL$
 2130 O$ = O$ + EL$ + "1) Hp/Po" + EL$ + "2) Stats" + DL$ + "Which: ": GOSUB 600
0: GOSUB 980
 2140  IF  VAL (I$) = 1 THEN 2470
 2150 G(5) = AG:G(6) = WI:G(7) = ST:G(8) = CH
 2160 AG = G(5):WI = G(6):ST = G(7):CH = G(8)
 2170 O$ = EL$ + "What Stat Do You Want To Raise: " + DL$
 2180 O$ = O$ + "1) Agility" + EL$ + "2) Wisdom" + EL$ + "3) Strength" + EL$ + "
4) Intellingence " + DL$ + "Which: ": GOSUB 6000: GOSUB 980
 2190 G(1) =  VAL (I$): IF G(1) < 1 OR G(1) > 4 THEN 2170
 2200 O$ = EL$ + "Trade With:" + DL$ + "1) Agility [" +  STR$ (AG) + "]" + EL$ +
 "2) Wisdom [" +  STR$ (WI) + "]" + EL$ + "3) Strength [" +  STR$ (ST) + "]" + E
L$ + "4) Intelligence [" +  STR$ (CH) + "]" + DL$ + "Which: "
 2210  GOSUB 6000: GOSUB 980
 2220 G(0) =  VAL (I$): IF G(0) < 1 OR G(0) > 4 THEN 2200
 2230 G(3) = AG
 2240  IF G(0) = 2 THEN G(3) = WI
 2250  IF G(0) = 3 THEN G(3) = ST
 2260  IF G(0) = 4 THEN G(3) = CH
 2270 T =  INT ((G(3) - (LE * 1.5)) / 1.5): IF T < 1 THEN T = 0
 2280 O$ = EL$ + "1 Point per 1.5 Trade" + DL$ + "Amount to be Raised(Max=" +  S
TR$ (T) + ")->": GOSUB 6000: GOSUB 980
 2290 I$ =  STR$ ( INT ( VAL (I$)))
 2300 G(4) =  VAL (I$):G(2) =  INT (( VAL (I$) * 1.5) + .5)
 2310  IF G(4) < 1 THEN 2270
 2320  IF G(3) - (LE * 1.5) < G(2) THEN 2270
 2330 O$ = EL$ + "Results" + EL$ + "-------" + DL$: GOSUB 7000
 2340  IF G(1) = 1 THEN AG = AG + G(4):O$ = "Agility [" +  STR$ (AG) + "]"
 2350  IF G(1) = 2 THEN WI = WI + G(4):O$ = "Wisdom [" +  STR$ (WI) + "]"
 2360  IF G(1) = 3 THEN ST = ST + G(4):O$ = "Strength [" +  STR$ (ST) + "]"
 2370  IF G(1) = 4 THEN CH = CH + G(4):O$ = "Intelligence [" +  STR$ (CH) + "]"
 2380 O$ = O$ + DL$: GOSUB 7000
 2390  IF G(0) = 1 THEN AG = AG - G(2):O$ = "Agility [" +  STR$ (AG) + "]"
 2400  IF G(0) = 2 THEN WI = WI - G(2):O$ = "Wisdom [" +  STR$ (WI) + "]"
 2410  IF G(0) = 3 THEN ST = ST - G(2):O$ = "Strength [" +  STR$ (ST) + "]"
 2420  IF G(0) = 4 THEN CH = CH - G(2):O$ = "Intelligence [" +  STR$ (CH) + "]"
 2430 O$ = O$ + EL$: GOSUB 7000
 2440 O$ = EL$ + "OK? Y/N ": GOSUB 6000
 2450  IF I$ <  > "Y" THEN O$ = EL$ + "No Changes Made" + EL$: GOSUB 7000: GOTO 
2160
 2460 O$ = EL$ + "Done!": GOSUB 7000: GOTO 140
 2470 G(6) = TH:G(7) = TP
 2480 TH = G(6):TP = G(7)
 2490 O$ = DL$ + "Raise:" + DL$ + "1) Hit Points" + EL$ + "2) Power" + DL$ + "Wh
ich: ": GOSUB 6000: GOSUB 980
 2500 G(0) =  INT ( VAL (I$)): IF G(0) < 1 OR G(0) > 2 THEN 2490
 2510 O$ = EL$ + "1 Point for 3":G(2) = 1 / 3
 2520  IF G(0) = 1 THEN O$ = EL$ + "2 Points for 1":G(2) = 2
 2530 G(1) = 2:Y = TP: IF G(0) = 2 THEN G(1) = 1:Y = TH
 2540  IF G(1) = 1 THEN Y =  INT ((Y - LE * 15) / 3)
 2550  IF G(1) = 2 THEN Y =  INT (Y - (7 + LE * 3)) * 2
 2560 O$ = O$ + " Max = " +  STR$ (Y) + EL$: GOSUB 7000
 2570 O$ = EL$ + "Enter Amount To Raise: ": GOSUB 6000: GOSUB 980
 2580 X =  INT ( VAL (I$))
 2590  IF X < 1 OR X > Y THEN 2570
 2600 G(4) = X / G(2):G(5) = X
 2610  IF G(0) = 1 THEN G(4) = G(4) + .99:G(4) =  INT (G(4))
 2620  IF G(0) = 1 THEN TH = TH + G(5):TP = TP - G(4)
 2630  IF G(0) = 2 THEN TP = TP + G(5):TH = TH - G(4)
 2640 O$ = EL$ + "Results" + EL$ + "-------" + DL$ + "Maximum Hit Points [" +  S
TR$ (TH) + "]" + DL$ + "Maximum Power [" +  STR$ (TP) + "]" + DL$ + "Ok? Y/N:": 
GOSUB 6000
 2650  IF I$ = "N" THEN 2480
 2660 HP = TH:PO = TP
 2670 O$ = EL$ + "Finis!": GOSUB 7000: GOTO 140
 2680 O$ = DL$ + "Equipment & Gold" + EL$ + "----------------" + DL$ + "Weapon: 
" + WP$ + EL$ + " Armor: " + AM$ + DL$ + "Gold: " +  STR$ (GD) + EL$
 2690 O$ = O$ + "Gold in the Treasury: " +  STR$ (BA): GOSUB 7000: GOTO 140
 2700 B$(1) = "Split Infinity":B$(2) = "Mazes of Death":B$(3) = "Empty":B$(4) = 
"Empty":B$(5) = "Empty"
 2710  GOSUB 8740:O$ = EL$ + "      -=*>Adventurer's Corner<*=-" + DL$: FOR X = 
1 TO 5:O$ = O$ +  STR$ (X) + ". " + B$(X) + EL$: NEXT :O$ = O$ + EL$ + "Which-> 
": GOSUB 6000
 2720  GOSUB 980
 2730 X =  VAL (I$): IF X < 1 OR X > 4 OR B$(X) = "Empty" THEN 2710
 2735  IF X = 2 AND NA$ <  > SY$ THEN O$ = EL$ + "Sorry, that adventure is tempo
rarily outof order.": GOSUB 7000: GOTO 2710
 2740 O$ = EL$ + B$(X) + EL$: FOR Y = 1 TO  LEN (B$(X)):O$ = O$ + "-": NEXT :O$ 
= O$ + DL$ + "1. Saved Game" + EL$ + "2. Restart " + B$(X) + EL$ + "3. Prelude" 
+ EL$ + "4. Help File"
 2750 L = X:O$ = O$ + DL$ + "Which?(1-4/Q)->": GOSUB 6000
 2760  GOSUB 980: IF I$ <  > "4" AND I$ <  > "3" THEN 2790
 2770 F$ = "HELP." + B$(L): IF I$ = "3" THEN F$ = "PRELUDE." + B$(L)
 2780  GOSUB 8370:O$ = EL$ + "[Press Return]":CR = 1: GOSUB 6000: GOTO 2740
 2790  IF I$ <  > "2" THEN 2830
 2800  IF I$ = "2" THEN O$ = EL$ + "Restart " + B$(Z) + "-> ": GOSUB 6000: IF I$
 <  > "Y" THEN 2700
 2810  IF Z = 2 THEN  PRINT D$"OPENMAZE.SAVE,L30"C$(22): PRINT D$"WRITEMAZE.SAVE
,R"A: FOR X = 1 TO 13: PRINT "0": NEXT : PRINT D$"CLOSE": GOTO 2840
 2820  GOSUB 120: GOTO 2840
 2830  IF I$ <  > "1" THEN 2700
 2840 O$ = EL$ + "Before you get to the adventure you     will be logged off.  D
o not hang up,    the adventure will start in about 2     minutes." + EL$: GOSUB
 7000
 2850  IF CA < CP THEN O$ = EL$ + "Do You wish To Add your other call to   your 
adventure time?  If So, you will   be given an extra 25 minutes->": GOSUB 6000: 
IF I$ = "Y" THEN CO = CO + 25:CA = CA + 1
 2860 AU$ = "Y":Z = L: GOTO 8510
 2870  IF CA >  = CP THEN O$ = EL$ + "You must have at least one call left    to
day to use this option.": GOSUB 7000: GOTO 140
 2880 O$ = EL$ + "This option will use up another call    of yours for today in 
exchange for 20   minutes and an extra fight.  Add of     call? Y/N:": GOSUB 600
0: IF I$ <  > "Y" THEN 140
 2890 FO = FO - 1:CO = CO + 20:CA = CA + 1:CL = CL + 1:LA = LA - (LA * 2):HP = T
H:PO = TP:TL = TL + 20:LJ = LJ - 1
 2900 O$ = EL$ + "Poof!" + DL$ + "Calls left today-> " +  STR$ (CP - CA): GOSUB 
7000: GOTO 140
 2910  IF CL$ = "N" THEN O$ = EL$ + "You get " +  STR$ (CO) + " minutes per call
   at all times.": GOSUB 7000: GOTO 140
 2920  GOSUB 8740:O$ = "Time Slot / Persons / Time Per Call     ----------------
-------------------" + DL$: GOSUB 7000: PRINT D$"OPENTIMESLOTS"C$(21): PRINT D$"
READTIMESLOTS"
 2930  FOR X = 1 TO 24: INPUT A$,I$,O$:O$ = A$ + "   " + I$ + "   " + O$ + " Min
utes" + EL$: GOSUB 7000: NEXT : PRINT D$"CLOSE":O$ = EL$ + "If you are a Half Va
lidated user then   subtract 5 minutes.": GOSUB 7000: GOTO 130
 2940  GOSUB 8740:O$ = "You wander into the Temple of Training, tired a wary, ho
ping to make yourself   stronger and wiser.  Soon you are spot- ted by a femal p
riestess, who comes     over and begins to speak:" + DL$: GOSUB 7000
 2950 B(0) = LE * LE * 150:O$ = "Each training session will raise one of your vi
rtue by 4 points.  Each session costs " +  STR$ (B(0)) + " gold pieces and will 
take five minutes off of your remaining time on the system.": GOSUB 8800
 2960  GOSUB 7000
 2970 O$ = DL$ + "Which of the four virtues do you wish tostudy?" + DL$ + "1. St
rength" + EL$ + "2. Agility" + EL$ + "3. Intelligence" + EL$ + "4. Wisdom" + DL$
: GOSUB 8300:O$ = O$ + "Which?(TL=" +  STR$ (TL) + ")->": GOSUB 6000
 2980  IF I$ = "Q" OR I$ = "0" THEN O$ = EL$ + "Maybe next time sire...": GOSUB 
7000: GOTO 140
 2990 X =  VAL (I$):Z = X: IF X < 1 OR X > 4 THEN 2970
 3000  IF TL < 5 THEN O$ = EL$ + "Sorry sire, but you do not have enought time l
eft.": GOSUB 7000: GOTO 140
 3010  IF GD < B(0) THEN O$ = EL$ + "Sorry sire, you funds seem to be on the sho
rt side in funds.": GOSUB 7000: GOTO 140
 3020 T = 4
 3030  IF X = 1 THEN A$ = "Legendary warrior Garret Jax":ST = ST + T
 3040  IF X = 2 THEN A$ = "Elf Dayel, cousin to Eventine":AG = AG + T
 3050  IF X = 3 THEN A$ = "Wizard Allanon, the last of the Druids, son of Bremen
":CH = CH + T
 3060  IF X = 4 THEN A$ = "Valegirl Brin Oshmond, daughter of Wil Oshmond, posse
sor of the Wishsong of Shannara":WI = WI + T
 3070 O$ = "The " + A$ + ", will be your instructor.  Learn well my young friend
...."
 3080  GOSUB 8800:O$ = EL$ + "A very fine choice sire..." + DL$ + O$ + DL$: GOSU
B 7000:O$ = "Your instructor walks into the room     smiling at you and informs 
you to begin you trailing." + DL$: GOSUB 7000
 3090 GD = GD - B(0): RESTORE : FOR Y = 1 TO Z: FOR T = 1 TO 10: READ B$(T): NEX
T : NEXT :CO = CO - 5: GOTO 3140
 3100  DATA  Parry,Strike,Jump,Attack,Flee,Kill,Wound,Behead,Dismember,Swing
 3110  DATA   Jump,Dive,Run,Duck,Jump Back,Sidestep,Spin,Draw Weapon,Backflip,Fl
ip
 3120  DATA  Read,Study,Memorize,Conjure,Write,Create,Plan,Decieve,Compromise,Fl
ee
 3130  DATA  Cast,Attack,Buy,Rest,Heal,Incinerate,Protect,Learn,Resurrect,Demode
nia
 3140  FOR Y = 1 TO 5:X =  INT (10 *  RND (1)) + 1:O$ = B$(X) + "....." + DL$: G
OSUB 7000: FOR X = 1 TO 1000: NEXT : NEXT :O$ = EL$ + "You train well young man!
  You have     earned your raise....Go in Peace.": GOSUB 7000: GOTO 140
 3150  FOR X = 1 TO 1000: NEXT 
 6000  GOSUB 7000: GOSUB 8000: RETURN 
 7000  POKE 960,0: & B / O$: RETURN 
 8000 CC = 0: IF  PEEK (1) = 128 AND CF = 1 AND CA$ = "Y" THEN CA$ = "N": CALL 3
8539:CF = 9
 8010  IF CF = 9 AND  PEEK (1) <  > 128 THEN CF = 1:CA$ = "Y"
 8020  IF CA$ <  > "Y" OR  LEN (CN$) > 1 THEN 8040
 8030  IF CF = 1 THEN  CALL 38539
 8040  IF  PEEK (1) = 128 THEN 8140
 8050  IF  LEN (CN$) = 0 THEN 8140
 8060  FOR T = 1 TO  LEN (CN$)
 8070  IF  MID$ (CN$,T,1) = "," THEN I$ =  MID$ (CN$,1,T - 1):CN$ =  RIGHT$ (CN$
, LEN (CN$) - T): GOTO 8110
 8080  IF  MID$ (CN$,T,1) = "#" THEN I$ =  MID$ (CN$,1,T - 1):CN$ = "": GOTO 811
0
 8090  NEXT 
 8100  POKE 960,0
 8110  IF O$ = "STOP" THEN O$ = "": GOTO 8210
 8120  IF  LEN (I$) = 0 THEN 8050
 8130 O$ = I$ + EL$: GOSUB 7000: GOTO 8290
 8140  POKE 960,0: & A / SP$:I$ =  MID$ (SP$,1): IF  PEEK (961) THEN 1740
 8150 CN$ = I$ + "#":O$ = "STOP"
 8160  IF  LEFT$ (I$,1) = "#" THEN I$ = "#":CN$ = ""
 8170  POKE 961,0: IF  PEEK (960) = 255 THEN CC = CC + 1: FOR T = 1 TO 500: NEXT
 : IF CC > 1 OR I$ = "OFF" THEN 8510
 8180  IF  PEEK (960) = 255 THEN 8140
 8190  IF  PEEK (1) = 128 THEN CN$ = "": GOTO 8230
 8200  IF  LEN (CN$) > 0 THEN 8060
 8210  IF  LEN (I$) <  > 1 AND  RIGHT$ (I$,1) = " " THEN I$ =  LEFT$ (I$, LEN (I
$) - 1): GOTO 8210
 8220  IF  LEN (I$) <  > 1 AND  LEFT$ (I$,1) = " " THEN I$ =  RIGHT$ (I$, LEN (I
$) - 1): GOTO 8220
 8230  IF  LEN (I$) = 0 AND CR = 1 THEN O$ = EL$: GOSUB 7000: GOTO 8250
 8240  IF  LEN (I$) = 0 THEN 8000
 8250  IF CA$ <  > "Y" THEN 8290
 8260  IF CF = 1 THEN  CALL 36798
 8270  IF I$ = "202 ON" THEN O$ = EL$ + "202 is now On.": GOSUB 7000: CALL 36798
:CF = 1
 8280  IF I$ = "202 OFF" THEN O$ = EL$ + "202 is now Off.": GOSUB 7000: CALL 385
39:CF = 0
 8290 CR = 0: RETURN 
 8300  IF CL$ = "N" THEN T$ = DA$: RETURN 
 8310  PR# 4: IN# 4: INPUT "#";T,T,T,T,T,B: INPUT "%";T$
 8320  PR# 0: POKE 56,102: POKE 57,213: CALL 1002
 8330  IF TI > T THEN T = TI + (60 - TI) + T
 8340 TL = CO - (T - TI)
 8350  IF TL <  = 0 THEN O$ = EL$ + "You are out of Time!": GOSUB 7000: POP : GO
TO 8510
 8360  RETURN 
 8370  HOME :O$ = SC$ + DL$ + DL$ + DL$: GOSUB 7000
 8380  POKE 960,0: PRINT D$"OPEN"F$""C$(17): PRINT  CHR$ (4)"READ"F$
 8390  IF CF <  > 1 THEN 8460
 8400 C = 1
 8410  & E / ZZ$: IF  LEN (ZZ$) > 0 THEN A$ = ZZ$: IF  ASC ( LEFT$ (A$,1)) = 0 T
HEN C =  - 1: GOTO 8440
 8420 C = C + 1:O$ = EL$ + ZZ$: GOSUB 7000
 8430  IF C <  > 16 THEN 8410
 8440 O$ = DL$ + "CR) Continue or Q)uit:":CR = 1: GOSUB 6000: IF I$ = "Q" OR C =
  - 1 THEN 8470
 8450  GOTO 8400
 8460  & C
 8470  PRINT D$"CLOSE": IF  PEEK (960) = 255 THEN 8350
 8480  IF  PEEK (960) =  PEEK (970) THEN  POKE 960,3:O$ = EL$: GOTO 7000
 8490  IF  PEEK (960) =  PEEK (971) THEN  POKE 960,2
 8500  RETURN 
 8510 A$ = OF$: GOSUB 8750: CALL 35848"OFF"
 8520 B$(1) =  STR$ (ST):B$(3) =  STR$ (AG):B$(4) =  STR$ (WI):B$(5) =  STR$ (CH
):B$(6) =  STR$ (EX):B$(7) =  STR$ (GD):B$(8) =  STR$ (A(2) - EX): FOR X = 1 TO 
8:B$(X) = B$(X) + EL$: NEXT 
 8530 O$ = SC$ + EL$ + "Character Status" + EL$ + "----------------" + DL$ + "Ch
aracter Name: " + NA$ + DL$: GOSUB 7000
 8540 O$ = "     Calls Today [" +  STR$ (CA) + "]" + EL$ + "     Calls A Day [" 
+  STR$ (CP) + "]" + EL$ + "     Total Calls [" +  STR$ (CL) + "]" + EL$ + "    
 Adventure Access? " + AD$ + DL$
 8550 O$ = O$ + DL$: GOSUB 7000
 8560 O$ = "Strength: " + B$(1) + "Agility: " + B$(3) + "Wisdom: " + B$(4) + "In
teligence: " + B$(5) + EL$: GOSUB 7000
 8570 O$ = "     Fights Left: " +  STR$ (4 - FO) + EL$ + "     Jousts Left: " + 
 STR$ (2 - LJ) + DL$: GOSUB 7000
 8580 O$ = "Maximum hit points: " +  STR$ (TH) + EL$ + "Hit points: " +  STR$ (H
P) + EL$ + "Maximum power: " +  STR$ (TP) + EL$ + "Power: " +  STR$ (PO) + DL$: 
GOSUB 7000
 8590 O$ = "Battle class: " +  STR$ (WE + AR) + EL$: GOSUB 7000
 8600 O$ = "Weapon: " + WP$ + EL$ + "Armor: " + AM$ + EL$ + "Experience: " + B$(
6) + "Level: " + L$(1) + " #" +  STR$ (LE) + EL$ + "Food: " +  STR$ (FD) + EL$ +
 "Gold: " + B$(7) + EL$: GOSUB 7000
 8610 O$ = "       Joust Wins: " +  STR$ (JW) + EL$ + "     Joust Losses: " +  S
TR$ (JL) + EL$ + "            Skill: " +  STR$ ( INT (ST + AG + JW - JL)) + DL$:
 GOSUB 7000
 8620 O$ = "Castle Protection: ": IF CP$ = "Y" THEN O$ = O$ + "Activated"
 8630  IF CP$ = "N" THEN O$ = O$ + "Off(Fee not payed)"
 8640 O$ = O$ + EL$ + " Gold in Treasury: " +  STR$ (BA) + DL$: GOSUB 7000
 8650 O$ = "Experience needed to achieve the level" + EL$ + "of " + L$(2) + " is
 " + B$(8): GOSUB 7000
 8660 O$ = DL$ + "Spells" + EL$ + "------" + DL$
 8670  GOSUB 7000
 8680  FOR X = 1 TO SN
 8690  IF S(X) > 0 THEN O$ = S$(X) + "-" +  STR$ (S(X)) + EL$: GOSUB 7000
 8700  NEXT X
 8710  RETURN 
 8720  CALL  - 3288: GOTO 140
 8730  CALL  - 3288: PRINT D$"CLOSE": GOTO 140
 8740  HOME :O$ = SC$ + DL$ + DL$ + EL$: GOSUB 7000: RETURN 
 8750 Y =  VAL ( MID$ (A$,4,1)): POKE 43626,Y:Y =  VAL ( RIGHT$ (A$,1)): POKE 43
624,Y:Y =  VAL ( LEFT$ (A$,3)): IF YR$ = "Y" THEN  PRINT D$"OPEN VC,V"Y
 8760  IF TC$ = "Y" THEN  POKE 1014,10: POKE 952,215: POKE 953,251
 8770  RETURN 
 8780  HOME :O$ = SC$ + "[%] Hold...Destination: " + O$ + " [%]" + EL$: GOSUB 70
00: RETURN 
 8790 O$ = EL$ + "    Press Space Bar to abort listing" + EL$: GOSUB 7000: RETUR
N 
 8800  IF  LEN (O$) < 40 THEN 8900
 8810 Y = 40
 8820 X = 0
 8830  IF  MID$ (O$,Y - X,1) = " " THEN B$(0) =  LEFT$ (O$,(Y - 1) - X):B$(0) = 
B$(0) + EL$ +  RIGHT$ (O$, LEN (O$) - (Y - X)): GOTO 8850
 8840 X = X + 1: GOTO 8830
 8850 O$ = B$(0)
 8860  IF (Y + 40) >  LEN (O$) THEN 8900
 8870 Y = Y + 39
 8880 Y = (Y - X) + 1
 8890  GOTO 8820
 8900  RETURN 

]LOAD OFF
]LIST

 5  IF TC$ = "Y" THEN  POKE 1014,0: POKE 952,240: POKE 953,253
 10  FOR X = 1 TO  LEN (ME$): IF  MID$ (ME$,X,1) =  CHR$ (34) THEN ME$ = "": GOT
O 30
 20  NEXT 
 30  IF  PEEK (960) = 255 THEN CC =  - 10
 40  IF MA = 2 THEN  PRINT D$"DELETEM-"NA$C$(20)
 50  IF AU$ = "Y" THEN 70
 60  IF CP$ = "N" THEN ST = ST - (ST * 2)
 70 B$ = "Y": CALL 54915: GOSUB 680
 80  IF  LEN (ME$) < 2 THEN ME$ = "Get Your Full Validation...."
 90  IF CL >  = IN AND AD$ = "NO" THEN NA$ = "Empty":O$ = EL$ + "Your Half-Valid
ated calls are up.  Your character has been deleted." + EL$: GOSUB 500
 100  PRINT 
 110 GD =  INT (GD):BA =  INT (BA): FOR X = 1 TO 25:S(X) =  INT (S(X)): NEXT :FD
 =  INT (FD): IF S(1) > 0 THEN S(1) = 0
 120  ONERR  GOTO 670
 130 BA =  INT (BA):HP = TH:PO = TP:A$(1) = "F"
 140  IF BD$ <  > "Y" THEN 180
 150 MT = 0
 160  FOR X = 1 TO B1:MT = MT + Z(X): NEXT 
 170  PRINT D$"OPENQSCAN,L"(B1 + 1) * 4""C$(10): PRINT D$"WRITEQSCAN,R"A: PRINT 
MT: FOR X = 1 TO B1: PRINT Z(X): NEXT : PRINT D$"CLOSE"
 180  PRINT D$"OPENDOWNS,L17"C$(15): PRINT D$"WRITEDOWNS,R"A: PRINT JW: PRINT JL
: PRINT "0": PRINT "0": PRINT LR: PRINT D$"CLOSE"
 190  PRINT D$"OPENRANK,L4"C$(11): PRINT D$"READRANK,R"A: INPUT G(1): PRINT D$"C
LOSE": PRINT D$"OPENTOP,L35"C$(16): PRINT D$"READTOP,R"G(1): INPUT B$(1),B$(2),B
$(3): PRINT D$"CLOSE"
 200  PRINT D$"OPENTOP,L35": PRINT D$"WRITETOP,R"G(1): PRINT "A": PRINT B$(2): P
RINT B$(3): PRINT D$"CLOSE"
 210  GOSUB 560
 220  PRINT : PRINT D$"OPENDATA"C$(5): PRINT D$"READDATA": INPUT MN,X,I$,I$: PRI
NT D$"CLOSE": IF I$ <  > DA$ THEN A$(1) = "CHANGE"
 230  IF A$(1) = "CHANGE" AND AU$ = "Y" THEN CA = 0
 240  GOSUB 510
 250  IF NA$ = SY$ THEN LA = LA - 1: GOTO 370
 260 X = LA: IF LA < 0 THEN X = LA - (LA * 2)
 270 O$ = "[" +  STR$ (X) + "]  " + NA$
 280  IF CC =  - 10 THEN O$ = "*" + O$
 290 O$ = O$ + " (#" +  STR$ (A) + ",": IF AD$ = "Yes" THEN O$ = O$ + "Va": GOTO
 310
 300 O$ = O$ + "Hv"
 310  IF CL = 1 THEN O$ = O$ + ",New"
 320  IF CF = 1 THEN O$ = O$ + ",202"
 330  IF AU$ = "Y" THEN O$ = O$ + ",Adv"
 340  IF (AU$ = "Y" AND A$(10) = "Y") OR LA < 0 THEN O$ = O$ + ",Ex"
 350 O$ = O$ + ")"
 360  PRINT : PRINT D$"OPENLOG"C$(17): PRINT D$"APPENDLOG": PRINT D$"WRITELOG": 
PRINT O$: PRINT D$"CLOSE"
 370  PRINT D$"DELETEDATA"C$(5)
 380  IF LA < 0 THEN LA = LA - (LA * 2)
 390  IF A$(1) = "CHANGE" THEN MN = LA
 400  PRINT D$"OPENDATA"C$(5): PRINT D$"WRITEDATA": PRINT MN: PRINT US: PRINT YR
$: PRINT DA$: PRINT LA: PRINT LA$: PRINT NU: PRINT TM: PRINT ME$: PRINT IN: PRIN
T D$"CLOSE"
 410  IF A$(1) = "CHANGE" AND AU$ = "Y" THEN O$ = EL$ + "Sorry, the Ladder has t
o be Re-Done Now.Your call has been given back to you." + EL$: GOSUB 500
 420  IF A$(1) = "CHANGE" THEN 440
 425  IF Z = 1 AND AU$ = "Y" THEN A$ = AS$: GOSUB 760: CALL 35848"ASTART"
 430  IF A$(1) <  > "CHANGE" THEN 490
 440  ONERR  GOTO 460
 450  PRINT D$"DELETELOG"C$(17)
 460  ONERR  GOTO 480
 470  PRINT D$"DELETECSTAT"C$(17)
 480  PRINT D$"RUNRESET1"C$(4)
 490  PRINT D$"RUNSTART"C$(14)
 500  & B / O$: RETURN 
 510  PRINT D$"OPENSTATS,L200"C$(15): PRINT D$"WRITESTATS,R"A: PRINT NA$: PRINT 
FI$: PRINT LE: PRINT AG: PRINT WE: PRINT AR: PRINT EX: PRINT GD: PRINT ST: PRINT
 TH: PRINT HP: PRINT PA$: PRINT WI: PRINT CH: PRINT LS: PRINT CA: PRINT CL: PRIN
T AD$: PRINT CP
 520  PRINT FD: PRINT PO: PRINT TP: PRINT BA: PRINT PA: PRINT DE: PRINT DA$
 530  FOR X = 1 TO SN: PRINT S(X): NEXT 
 540  PRINT D$"CLOSE"
 550  RETURN 
 560 F$ = "OFF1"
 570 O$ = EL$: GOSUB 500: IF RT = 2 THEN O$ = DL$ + EL$: GOSUB 500
 580  POKE 960,0: PRINT D$"OPEN"F$""C$(17): PRINT D$"READ"F$
 590  & C: IF  PEEK (960) =  PEEK (971) AND RT <  > 3 THEN  POKE 960,0: GOTO 590

 600  PRINT  CHR$ (4)"CLOSE": IF  PEEK (960) = 255 THEN 650
 610  IF  PEEK (960) =  PEEK (970) THEN  POKE 960,3:O$ = EL$: GOTO 500
 620  IF  PEEK (960) =  PEEK (971) THEN  POKE 960,2
 630  GOSUB 500
 640 O$ = DL$ + "There have been " +  STR$ (LA) + " adventures!" + DL$ + "Loggin
g off on " + T$ + DL$ + "....Click....." + EL$: GOSUB 500
 650  IF AU$ = "Y" OR A$(1) = "CHANGE" THEN  RETURN 
 660  POKE 216,0: & I: RETURN 
 670  PRINT D$"RUNSTART"C$(14)
 680  IF CL$ = "N" THEN T$ = DA$: RETURN 
 690  PR# 4: IN# 4
 700  INPUT "#";B(0),T,B(1),T,T,B(2)
 710  INPUT "%";T$
 720  PR# 0: POKE 56,102: POKE 57,213: CALL 1002
 730 DA$ =  LEFT$ (T$,10)
 740  IF  RIGHT$ (DA$,1) = " " THEN DA$ =  LEFT$ (DA$, LEN (DA$) - 1): GOTO 740
 750  RETURN 
 760 Y =  VAL ( MID$ (A$,4,1)): POKE 43626,Y:Y =  VAL ( RIGHT$ (A$,1)): POKE 436
24,Y:Y =  VAL ( LEFT$ (A$,3)): IF YR$ = "Y" THEN  PRINT D$"OPEN VC,V"Y
 765  IF TC$ = "Y" THEN  POKE 1014,10: POKE 952,215: POKE 953,251
 770  RETURN 

]LOAD START
]LIST

 10  HOME : PRINT "Turn Disk Over and Press Return"
 20  GET A$
 25  PRINT 
 30  PRINT  CHR$ (4)"RUN START,D1"

]LOAD STORES
]LIS

?SYNTAX ERROR
]LIST

 5  IF TC$ = "Y" THEN  POKE 1014,0: POKE 952,240: POKE 953,253
 10  CALL 54915: ONERR  GOTO 8380
 20  IF A > 0 THEN 80
 30  PRINT  CHR$ (4)"SAVESTORES,S3": PRINT  CHR$ (4)"RUNJOUST,S6"
 40  IF J$ = "1" OR J$ = "2" OR J$ = "3" THEN 70
 50 A$ = OF$: GOSUB 8390: CALL 35848"OFF"
 60 A$ = MA$: GOSUB 8390:O$ = EL$ + "[Hold..] Transporting to Main.." + EL$: GOS
UB 7000: CALL 35848"MAIN"
 70  IF J$ = "1" OR J$ = "2" OR J$ = "3" THEN A$ = AV$: GOSUB 8390: CALL 35848"A
DVENT"
 80  IF J$ = "1" THEN 160
 90  IF J$ = "2" THEN 830
 100  IF J$ = "3" THEN 730
 110  GOSUB 8300:O$ = DL$ + "Your choices are..." + DL$ + "A) Ye Old Battle Shop
" + EL$ + "B) Magical Healings" + EL$ + "C) Ronald's Roach Burgers" + DL$ + "Whi
ch? (Q/uit):": GOSUB 6000: CALL 54915
 120  IF I$ = "Q" THEN 60
 130  IF I$ = "C" THEN 730
 140  IF I$ = "B" THEN 830
 150  IF I$ <  > "A" THEN 80
 160 O$ = DL$ + "B)uy or S)ell or Q)uit?:": GOSUB 6000
 170  IF I$ = "Q" THEN 70
 180  IF I$ <  > "B" AND I$ <  > "S" THEN 160
 190  IF I$ <  > "S" THEN 350
 200 O$ = EL$ + "W)eapons or A)rmor or Q)uit?:": GOSUB 6000
 210  IF I$ = "A" OR I$ = "W" THEN 230
 220  GOSUB 1090: GOTO 200
 230 B$(1) = WP$:B$(2) = "WEAPONS":X = WE:A$ = C$(19): IF I$ = "A" THEN B$(1) = 
AM$:B$(2) = "ARMOR":A$ = C$(1):X = AR
 240  PRINT D$"OPEN"B$(2)A$",L40": PRINT D$"READ"B$(2)",R"X: INPUT B$(0),G(2): P
RINT D$"CLOSE"
 250 B$(2) = I$
 260 G(1) = G(2) / 2
 270 G(1) =  INT (G(1))
 280 O$ = EL$ + "You Have A " + B$(1) + DL$ + "I'll Give Ya " +  STR$ (G(1)) + "
 For it." + EL$ + "Fair Enough? ": GOSUB 6000
 290  IF I$ = "Q" OR I$ = "N" THEN 80
 300  IF I$ <  > "Y" THEN 280
 310  IF I$ = "Y" THEN O$ = EL$ + "Deal!" + EL$: GOSUB 7000
 320 GD = GD + G(1)
 330  IF B$(2) = "W" THEN WE = 1:WP$ = "Hands":HT = 3: GOTO 80
 340 AR = 1:AM$ = "Skin":AP = 1: GOTO 80
 350 O$ = EL$ + "W)eapons or A)rmor or S)pells?:": GOSUB 6000
 360  IF I$ = "W" OR I$ = "A" OR I$ = "S" THEN 380
 370  GOSUB 1090: GOTO 350
 380 G(3) = 2:G(4) = SN:B$(2) = "S":A$ = "Spells" + EL$ + "------":B$(1) = "SPEL
LS":F$ = C$(13)
 390  IF I$ = "A" THEN G(3) = 2:G(4) = AN - MS:B$(2) = "A":A$ = "Armor" + EL$ + 
"-----":B$(1) = "ARMOR":F$ = C$(1)
 400  IF I$ = "W" THEN G(3) = 2:G(4) = WN - MS:B$(2) = "W":A$ = "Weapons" + EL$ 
+ "-------":B$(1) = "WEAPONS":F$ = C$(19)
 410 A$ = SC$ + A$ + DL$
 420 O$ = EL$ + "View Entire List? Y/N: ": GOSUB 6000:B$ = I$: IF I$ = "Y" THEN 
 HOME : GOTO 470
 430 O$ = EL$ + "Start List at what #": GOSUB 6000
 440  GOSUB 1090
 450 X =  VAL (I$) + 1: IF X > G(4) OR X < G(3) THEN O$ = EL$ + "Invalid Startin
g Number!" + EL$: GOSUB 7000: GOTO 420
 460 G(3) = X: HOME 
 470 O$ = A$: GOSUB 7000:T = 0
 480  PRINT D$"OPEN"B$(1)F$",L40"
 490  FOR X = G(3) TO G(4)
 500 T = T + 1: IF T = 15 THEN O$ = EL$ + "Cont? Y/N:": GOSUB 6000:T = 0:O$ = EL
$: GOSUB 7000: IF I$ = "N" THEN 580
 510  PRINT D$"READ"B$(1)",R"X: INPUT A$,PR
 520 G(2) = 25: IF X > 10 THEN G(2) = 24
 530 O$ = "  " +  STR$ (X - 1) + ". " + A$
 540  FOR Y = G(2) TO  LEN (A$) STEP  - 1:O$ = O$ + ".": NEXT Y:O$ = O$ +  STR$ 
(PR) + EL$: GOSUB 7000
 550  IF B$ = "Y" THEN 570
 560  IF GD < PR THEN 580
 570  NEXT 
 580  PRINT D$"CLOSE"
 590 O$ = EL$ + "You have " +  STR$ (GD) + " gold!" + EL$: GOSUB 7000
 600 O$ = EL$ + "Which? (Q/uit):": GOSUB 6000
 610  GOSUB 1090
 620 X =  VAL (I$) + 1:I$ =  STR$ (X)
 630 G(3) = 2
 640  IF G(3) > X OR G(4) < X THEN 600
 650  PRINT D$"OPEN"B$(1)F$",L40": PRINT D$"READ"B$(1)",R"X: INPUT A$,PR,G(5): P
RINT D$"CLOSE"
 660  IF B$(2) = "S" THEN 1000
 670 X = PR
 680  IF X > (GD) THEN O$ = EL$ + YO$ + EL$: GOSUB 7000: GOTO 600
 690 GD = GD - X
 700 X =  VAL (I$): IF B$(2) = "W" THEN WE = X:WP$ = A$:HT = G(5): GOTO 720
 710 AR = X:AM$ = A$:AP = G(5)
 720 O$ = EL$ + "Sold!" + EL$: GOSUB 7000: GOTO 80
 730 O$ = EL$ + "Ronald McDonald says:" + DL$ +  STR$ (LE * 2) + " Gold for 1 fo
od." + DL$: GOSUB 7000
 740 O$ = "You Have " +  STR$ (GD) + " Gold" + EL$: GOSUB 7000
 750 O$ = EL$ + "How many ya Want(Max=" +  STR$ ( INT (GD / (LE * 2))) + "): ": 
GOSUB 6000
 760  IF I$ = "Q" THEN 70
 770  IF  VAL (I$) < 0 THEN 750
 780 X = (LE * 2) *  VAL (I$)
 790  IF X > GD THEN O$ = EL$ + YO$ + DL$: GOSUB 7000: GOTO 740
 800 FD = FD +  VAL (I$)
 810 GD = GD - X
 820 O$ = EL$ + "Sold!" + EL$: GOSUB 7000: GOTO 80
 830 O$ = EL$ + "Witch Hilda says:" + DL$ + "50 Gold per point...": GOSUB 7000
 840 O$ = DL$ + "H)it Points or P)ower?:": GOSUB 6000
 850  IF I$ = "Q" THEN 70
 860  IF I$ <  > "H" AND I$ <  > "P" THEN 840
 870 B$(1) = I$
 880 O$ = DL$ + "You have " +  STR$ (GD) + " Gold": GOSUB 7000
 890  IF B$(1) = "P" THEN O$ = DL$ + "You have " +  STR$ (PO) + " Power out of "
 +  STR$ (TP):Y = TP - PO: GOTO 910
 900 O$ = DL$ + "You have " +  STR$ (HP) + " Hit Points out of " +  STR$ (TH):Y 
= TH - HP
 910  GOSUB 7000:O$ = DL$ + "How many you Want? (Max=" +  STR$ (Y) + "):": GOSUB
 6000:X =  VAL (I$): IF X > Y THEN 890
 920  IF X < 1 THEN 80
 930  IF (50 * X) > GD THEN O$ = EL$ + YO$: GOSUB 7000: GOTO 890
 940 GD = GD - (50 * X)
 950  IF B$(1) = "P" THEN PO = PO + X: IF PO > TP THEN PO = TP: GOTO 980
 960 HP = HP + X
 970  IF HP > TH THEN HP = TH
 980 O$ = EL$ + "Poof!" + EL$: GOSUB 7000
 990  GOTO 80
 1000 O$ = EL$ + "How many " + A$ + " spells" + EL$ + "do you want(Max=" +  STR$
 (9 - S(X)) + "): ": GOSUB 6000
 1010  IF I$ = "Q" THEN 80
 1020 Y =  INT ( VAL (I$))
 1030  IF Y < 0 THEN 1000
 1040 G(1) = PR * Y
 1050  IF G(1) > GD THEN O$ = EL$ + YO$ + EL$: GOSUB 7000: GOTO 1000
 1060  IF S(X) + Y > 9 THEN O$ = EL$ + "You can only have 9 of each spell!": GOS
UB 7000: GOTO 1000
 1070 GD = GD - G(1):S(X) = S(X) + Y
 1080 O$ = EL$ + "The Spells Appear in Your Hands!" + EL$: GOSUB 7000: GOTO 590
 1090  IF I$ <  > "Q" AND I$ <  > "0" THEN  RETURN 
 1100  POP 
 1110  GOTO 80
 1120 A$ = CH$: GOSUB 8390: CALL 35848"CHAT"
 6000  GOSUB 7000: GOSUB 8000: RETURN 
 7000  & B / O$: POKE 960,0: RETURN 
 8000 CC = 0: IF  PEEK (1) = 128 AND CF = 1 AND CA$ = "Y" THEN CA$ = "N": CALL 3
8539:CF = 9
 8010  IF CF = 9 AND  PEEK (1) <  > 128 THEN CF = 1:CA$ = "Y"
 8020  IF CA$ <  > "Y" OR  LEN (CN$) > 1 THEN 8040
 8030  IF CF = 1 THEN  CALL 38539
 8040  IF  PEEK (1) = 128 THEN 8140
 8050  IF  LEN (CN$) = 0 THEN 8140
 8060  FOR T = 1 TO  LEN (CN$)
 8070  IF  MID$ (CN$,T,1) = "," THEN I$ =  MID$ (CN$,1,T - 1):CN$ =  RIGHT$ (CN$
, LEN (CN$) - T): GOTO 8110
 8080  IF  MID$ (CN$,T,1) = "#" THEN I$ =  MID$ (CN$,1,T - 1):CN$ = "": GOTO 811
0
 8090  NEXT 
 8100  POKE 960,0
 8110  IF O$ = "STOP" THEN O$ = "": GOTO 8210
 8120  IF  LEN (I$) = 0 THEN 8050
 8130 O$ = I$ + EL$: GOSUB 7000: GOTO 8290
 8140  POKE 960,0: & A / SP$:I$ =  MID$ (SP$,1): IF  PEEK (961) THEN 1120
 8150 CN$ = I$ + "#":O$ = "STOP"
 8160  IF  LEFT$ (I$,1) = "#" THEN I$ = "#":CN$ = ""
 8170  POKE 961,0: IF  PEEK (960) = 255 THEN CC = CC + 1: IF CC > 1 OR I$ = "OFF
" THEN 40
 8180  IF  PEEK (960) = 255 THEN 8140
 8190  IF  PEEK (1) = 128 THEN CN$ = "": GOTO 8230
 8200  IF  LEN (CN$) > 0 THEN 8060
 8210  IF  LEN (I$) <  > 1 AND  RIGHT$ (I$,1) = " " THEN I$ =  LEFT$ (I$, LEN (I
$) - 1): GOTO 8210
 8220  IF  LEN (I$) <  > 1 AND  LEFT$ (I$,1) = " " THEN I$ =  RIGHT$ (I$, LEN (I
$) - 1): GOTO 8220
 8230  IF  LEN (I$) = 0 AND CR = 1 THEN O$ = EL$: GOSUB 7000: GOTO 8250
 8240  IF  LEN (I$) = 0 THEN 8000
 8250  IF CA$ <  > "Y" THEN 8290
 8260  IF CF = 1 THEN  CALL 36798
 8270  IF I$ = "202 ON" THEN O$ = EL$ + "202 is now On.": GOSUB 7000: CALL 36798
:CF = 1
 8280  IF I$ = "202 OFF" THEN O$ = EL$ + "202 is now Off.": GOSUB 7000: CALL 385
39:CF = 0
 8290 CR = 0: RETURN 
 8300  IF CL$ = "N" THEN T$ = DA$: RETURN 
 8310  PR# 4: IN# 4: INPUT "#";T,T,T,T,T,B: INPUT "%";T$
 8320  IF TI = 0 THEN TI = T
 8330  PR# 0: POKE 56,102: POKE 57,213: CALL 1002
 8340  IF TI > T THEN T = TI + (60 - TI) + T
 8350 TL = CO - (T - TI)
 8360  IF TL <  = 0 THEN O$ = EL$ + "You are out of Time!  Later.": GOSUB 7000: 
GOTO 40
 8370  RETURN 
 8380  CALL  - 3288: GOTO 80
 8390 Y =  VAL ( MID$ (A$,4,1)): POKE 43626,Y:Y =  VAL ( RIGHT$ (A$,1)): POKE 43
624,Y:Y =  VAL ( LEFT$ (A$,3)): IF YR$ = "Y" THEN  PRINT D$"OPEN VC,V"Y
 8395  IF TC$ = "Y" THEN  POKE 1014,10: POKE 952,215: POKE 953,251
 8400  RETURN 

]PR#0
]RUN
?

TUCoPS is optimized to look best in Firefox® on a widescreen monitor (1440x900 or better).
Site design & layout copyright © 1986-2024 AOH