8L2C)pJJJJ IH(ȱH:=IH[H`@HcH  $ +   I/H`JLNGȄBȄF aK  haaFF  mJm# KKJ UJ )J ۈ) ;J3ȱJFȱJGJKaȄM  aaNNJFLGJL LD  EAMON DESC. EDIT ORIGINAL PROG. BY JOHN NELSON THIS VERSION BY FRANK KUNZE Y REV. 11 NOV 94 D$(4):(103)(104)2562545Ĺ768,(103):769,(104):103,241:104,9:2544,0:D$"-DESC.EDIT" 1013,76:1014,0:1015,8:D$"BLOADINPUT.RTN" +T.INPUT.RTN! tt+DUNGEON.MAP !;kr||*MAIN.PGM.6#BC#)MAKE.FS.72o*MAIN.PGM.76%Go*MAIN.PGM.8(LCS)DESC.EDIT \ INPUT.RTNBB-T.EAMON.UTILShBBT.MOD1lBB&T.MOD2n?BB&T.MOD3q BB)MAKE.FS.6dC" |FS.ROOMS.60||*MP.ROOMS.6-!BBEAMON.UTILSWBB,EDIT.E.UTILSYBkMOD1\ BBMOD2]BBMOD3^-BB,T.SEARCH.RTN`) BBEAMON.DD.8j' 'STARTUP?~jB&INIT.8N.INIT.8} mn$EDITty.gl$LISTEON.LISTB B,LEADIN.PRG.8QT kkSEARCH.RTNV? &PRODOS `DaElH$?EGvѶK+`L HHLy XP LM ŠϠĠӠS)*+,+`F)) (*=GJFjJJA QE'+ '== `@ STSP8QSS8 m P o R(8R (26)"1":(21):::X14:TY$(X)::CP40 5:" EDITING EAMON DESCRIPTION FILE"::" INSERT DISKETTE WITH ADVENTURE"::" PRESS ANY KEY TO CONTINUE...";:49168,0:A$: 2P$D$"PREFIX":A$"1"A$"2"ĺP$",D"A$ 7P$"/":P$:A$:P$;A  ߅ע l݅ ߙL )?  ,Ƀ I߅LIɄ) ʩߝL ?ʆL Ɉ  LIɕ LIɛ LG LIɉC ɠL ::"IN "(218)(219)256:&lu V. 6 OR EARLIER _vu216,0:MP6:B%(2)100:B%(3)200:B%(4)300:LD256:60@ROOM,ARTIFACT,EFFECT,MONSTERDESC,R"RE:DE$:D$:0u VERSION? #:u30050yDuD$"OPENEAMON.NAME":D$"READEAMON.NAME":NA$:A:MP:D$"CLOSE":216,0:MP730070Nu V. 7 OR LATER XuMP7:B%(2)200:B%(3)400:B%(4)600:LD242:60buD$"CLOSE":(222)5ĺ"FOUND ERROR #"(222)A$Ă:10020.'A$:STX:X4:8'** GET NUMBER U+:"INPUT NUMBER (1-"N%(ST);:"): ";A$u +(A$)N%(ST)(A$)111010+NO(A$):PF WRITE DESC ZFD$"WRITE EAMON.DESC,R"RE:(34);DE$;(34):D$: N READ DESC *ND$"READ EAMON.2128,127:1002CP40:D$"PR#0":(26)"1":(21):2128,63:100?p QUIT UzUPĺD$"CLOSE":D$"WRITE EAMON.DESC,R0":NR:NA:NE:NM:D$"CLOSE":' GET TYPE '8:958:"INPUT TYPE: R/A/E/M [_]";(8);(8);$'A$:X14:("RAEM",X,1)ON1N2:(12)::RENOB%(ST):20000:4500::100]:TY$(ST);" ";NO:::LW1(DE$)CP:(DE$,LW,CP):24::7);"PRESS ANY KEY TO CONTINUE";7);:49168,0:A$::A$(27)ġ:NO11::100 COLUMNS CP40CP80:D$"PR#3"::G WITH?":11000:N2NO:N2N1100O NON1N2:(12)::"EDITING "TY$(ST)" #"NO:RENOB%(ST)| 20000:I2$DE$:600:DE$I$:18000::100 VIEW DESC 10000:(12)::"STARTING WITH?":11000:N1NO::"ENDING WITH?":11000:N2NO:N2N1100#NNENE1:RENEB%(3):#$NMNM1:RENMB%(4):5 EDIT DESC u10000:11000:RENOB%(ST):(12)::"EDITING "TY$(ST)"#"NO20000:I2$DE$:600:DE$I$:18000:100 EDIT SEVERAL  10000:(12)::"STARTING WITH?":11000:N1NO::"ENDIN)61,6)": NEXT WORD"'bI$I2$:238,I$:(I$)2630Nl(I$,1)"_"I$(I$,(I$)1):620[vI2$I$:l ADD DESC UP1:10000:ST1030,1040,1050,1060(12)::I2$"_":600:DE$I$:18000:100NRNR1:RENR:NANA1:RENAB%(2): "160$A$:(A$)1000,2000,3000,4000,5000,60005X INPUT I$ ]15:"CTRL-C: TOGGLE EDIT/INSERT MODE":"CTRL-B: BEGINNING; CTRL-E: END":"ESCAPE: ACCEPT ENTIRE STRING"_ID(1101):("CTRL-DDELETE",(ID6)61,6)": DELETE; ";("CTRL-ITAB",(ID6 1. ADD A DESCRIPTION"::" 2. EDIT A DESCRIPTION" :" 3. EDIT A SERIES OF DESC"::" 4. VIEW DESCRIPTION(S)"::" 5. SWITCH TO "("4080",(CP40)21,2)" COLUMNS" :" 6. QUIT" :"INPUT NUMBER (1-6) [_]";(8);(8); A$:A$"1"A$"6$:30000g <D$"OPEN EAMON.DESC,L"LD:D$"READ EAMON.DESC,R0":X14:N%(X)::NRN%(1):NAN%(2):NEN%(3):NMN%(4):D$t d MENU n:9)"EAMON DESCRIPTION EDIT":12)"BY FRANK KUNZE"::20(NA$)2);::NA$;:: x:4:"SELECT OPTION ...":& "L| ʆHȽʈh L ɂL ɅLI LIɍ 3 ڦ LɠLLL L " L${% "`hhLu L LI   `0 EAMON MAPPING PROGRAM BY FRANK KUNZE EREV. 27 SEP 94  A110:D$(A)::A110:SD$(A)::A120:SP$SP$" "::A140:S2$S2$".":D$(4)::6:" INSERT EAMON ADVENTURE DISKETTE AND"::" PRESS ANY KEY TO CONTINUE ...";:A$:" 0:D$"OPENEAMON.DESC,L"LD:"ADVENTURE # (RETURN=NEVERMIND) :";A$:D$"PR#"SL:"A MAP OF: ";NA$;:A$""ĺ" (#"A$")"; :8210 READ ROOM DATA  MP6ĺD$"READEAMON.ROOM.NAME,R"A:N$:D$:D$"READEAMON.ROOMS,R"A:M1ND:RD%(M)::D$:0 D$"R:"CHOSE OUTPUT DEVICE:"::" 1. SCREEN"::" 2. 80-COLUMN SCREEN"::" >";A$:M(A$):M1M28130:M:M1CP40:SL0:CP80:SL3: FORM FEED  :LL1 LL1& L55PTı0 L0:(12):8500l SET UP wv 8000::L4050:LNM:E"LENGTH OF 'EAMON.ROOMS' :";A$:M(A$):A$""MLR\M4070:LRM:100o@ OPEN FILES JMP58020,8030TD$"OPENEAMON.ROOMS,L"LR:D$"OPENEAMON.ROOM.NAME,L"LN:^D$"OPENEAMON.ROOMS,L"LR: DISPLAY? PTCP80:SNE ALLOWS YOU TO SPECIFY WHAT THESE NON-STANDARD LENGTHS ARE. YOU MUST ENTER THE CORRECT LENGTHS OR THE PROGRAM WILL CRASH.":900"PRESSING KEEPS CURRENT LENGTH":"LENGTH OF 'EAMON.ROOM.NAME' :";A$:A$""A$(LN) M(A$):M"M1# M1M73020:SLM:100: CHANGE LENGTHS :"SOME EAMONS USING THE V6 OR EARLIER DATABASE SYSTEMS HAD THE LENGTHS OF 'EAMON.ROOM NAMES' AND 'EAMON.ROOMS'""SHORTEND TO SAVE DISK SPACE."::"** WARNING **":"THIS ROUTI1ND:R$R$(RD%(M)):XX((RD%(M)))3:R$R$" "::| A$N$R$:PTāM1(A$)CP:(A$,M,CP)::900::D$"CLOSE":100A$:8220::D$"CLOSE":D$"PR#0":100 TOGGLE PRINTER  PTPT:PT100 :"SLOT # (DEFAULT = 1) :";A$:M(A$):A$"::D$"CLOSE":D$"PR#0":1000 SHORT MAP gPTĺ:"PRINTER OPTION ONLY"(7):A11500::100X1:8300:8500:A1NR:8400:(N$)35N$(N$,35)A$(A)": ":(A$)4A$(A$,4)(A$)4A$" "A$7N$A$N$(S2$,36(N$)):R$"":M1NR:8400:D$"READEAMON.DESC,R"A:A$:D$:"ROOM "A": "N$:8210:M1(A$)CP:(A$,M,CP): :A$D$(1)(RD%(1)):M2ND:A$A$(SP$,20(D$(M1))((RD%(M1))))D$(M)(RD%(M)): M1(A$)CP:(A$,M,CP1):8220: SL0SL3İ900:8220(A$):M1M5150:M:M4MP6ĺ:(7)"THAT IS FOR V6 OR EARLIER":A11500::100t M1000,2000,3000,4000: ::6)"PRESS ANY KEY TO CONTINUE"6);:::A$:::A$(27)ı :D$"CLOSE":D$"PR#0":100  FULL MAP ] X0:8100:8300:A " x" 1. FULL MAP (NAME/DESC/EXIT NAMES)"::" 2. SHORT MAP (ROOM NAME & EXIT #S)"::" 3. TURN PRINTER ";("OFFON",(PT)31,3) :" 4. CHANGE FILE LENGTHS (LR="LR",LN="LN")": " 5. QUIT"::10)"ENTER 1-5 [_]";(8);(8);W A$:MLR:D$"CLOSE":90/ FD$"CLOSE":(222)580f K"FOUND ERROR #"(222)::"IN "(218)(219)256: P216,0:MP6:LD256:ND6ND6 UD$"OPENEAMON.DESC":D$"READEAMON.DESC":NR:D$"CLOSE" Z9000 d MENU n:"MAPPING: ";::NA$;:::4:S$"A$"1"A$"2"ĺD$"PREFIX,D"A$Q D$"PREFIX/":D$"PREFIX":A$:D$"PREFIX"A$b  VERSION? k (70 2D$"OPENEAMON.NAME":D$"READEAMON.NAME":NA$:ND:MP:D$"CLOSE":216,0:MP780 <MP7:LD242:D$"OPENEAMON.DESC":D$"READEAMON.DESC":NR,A,A,A,EADEAMON.ROOMS,R"A:N$:M1ND:RD%(M)::D$:A4! DIR. BAR K>!XıH!"ROOM NAME:"30);:XX110:SD$(XX);2);:::8220:XX180:"-";:::8220(# VERIFY FILES 2#9050<#MP59030,9040+F#F$"EAMON.ROOMS":D$"VERIFY"F$:F$"EAMON.ROOM.NAME":D$"VERIFY"F$:216,0:LR64:LN64:WP#F$"EAMON.ROOMS":D$"VERIFY"F$:216,0:Z#(222)675:"ERROR -- FILE '"F$"' IS MISSIING": #"NORTH: ","SOUTH: ","EAST: ","WEST: ","UP: ","DOWN: ","NORTHEAST: ","NORTHWEST: ","SOUTHEAST: ","SOUTHWEST: "ONERR GOTO 60H"50 NORMAL : POKE 103,1 : POKE 104,8 : POKE 2048,0"j"60 PRINT D$";Q$"-STARTUP"Q$w"RUN 10E$"NAME":W$"EAMON.NAME":AN$:6:"8.0":C$E$"ROOMS,L"LR:E$"ARTIFACTS,L"LA:E$"MONSTERS,L"LM:C$:E$"DESC,L242":W$"EAMON.DESC"EXEC":"1 AN$="Q$;AN$;Q$":NU="NU":A2$="Q$;A2$;Q$i"DEL 100,1000":"DELETE STARTUP":"SAVE STARTUP""D$=CHR$(4)":":20 ? D$"Q$;"RENAME EXEC,LEADIN.PROG"Q$"30 PRINT "Q$;"PUT DESIGN DISK IN DRIVE NOW"Q$"40 POKE -16368,0: GET PT$: PRINT: A$""3600^AL(((A$))):AL10AL80340h17:LAAL42:"NAME LENGTHS:":" ROOMS......";RL:" MONSTERS...";ML:" ARTIFACTS..";ALr23:"OK? (Y/N)";|A$:A$"N"A$"n"ĺ:290A$"Y"A$"y"3803:O$"STARTUP":C$::O$"EXEC":W$)"5," ROOM NAMES (DEFAULT 38): ";A$:A$""320Y6RL(((A$))):RL10RL80290@12:LRRL34:ML30:" MONSTER NAMES (DEFAULT 30): ";A$:A$""340JML(((A$))):ML10ML80320 T13:LMML62:AL30:" ARTIFACT NAMES (DEFAULT 30): ";A$:AN$"A"AN$"ZZZZ"(AN$)25250G::((40(AN$))2)1::AN$:5:"AUTHOR NAME (MAX 25 CHARACTERS)":A2$:(A2$)252707:"ADVENTURE NUMBER: ";A3$:NU(A3$):NU(NU)NU0NU999(NU)A3$280"10:RL38:"LENGTH OF: (MIN 10 : MAX 80190:A$:A$"N"100' GET INFO 2 216,0 :12:"EAMON DUNGEON INIT":8:"BY DON BROWN & JOHN NELSON":8:"V7 MODS BY TOM ZUCHOWSKI":8:"V8 MODS BY FRANK KUNZE" 8:"NAME OF ADVENTURE (MAX. 25 CHARACTERS)"::" ";::25);#5:":";AN$:A$ 210u O$D$"OPEN":W$D$"WRITE":C$D$"CLOSE":E$O$"EAMON.":D$"PREFIX/":D$"PREFIX":P$:D$"PREFIX"P$ D$"CAT"::"IS IT OKAY TO INITIALIZE THIS DISKETTE?"::" ENTER Y/N "; 16368,0:A$:(A$)96A$((A$)32) A$"Y"A$"N":"*** WARNING ***"::6:"YOU MUST HAVE A BLANK DISK ALREADY"::"FORMATED FOR PRODOS" 14:"PRESS '1' FOR DRIVE 1, '2' FOR DRIVE 2 OR 'C' FOR THE CURRENT DRIVE." 16368,0:A$:A$"C"A$"c"A$"1"A$"2"150:A$:A$"1"A$"2"ĺD$"PREFIX,D"T FROM THE EAMON MASTER DISKETTE.":1 <G d INIT NEW ADV. n(103)(104)2562338Ĺ768,(103):769,(104):103,34:104,9:2337,0:"RELOCATING...":D$"-INIT.8" xP1(768):P2(769):D$"BLOAD SEARCH.RTN":D$"BLOAD EAMON.UTILS"Y :12: #";NU::S$_ ("THE EAMON GAMING SYSTEM WAS DEVELOPED BY DON BROWN & JOHN NELSON": -"VERSION 7 WAS WRITTEN BY TOM ZUCHOWSKI. VERSION 8 MODS BY FRANK KUNZE." 2:AN$;" WAS":" WRITTEN BY ";A2$+ 7:"TO RUN THIS ADVENTURE, YOU MUST BOO.D$(4):Q$(34):(26)"1":(21)::100710oD$(4):D$"VERIFYFRESH.MEAT":216,0:D$"-MAIN.PGM" 216,0:(26)"1":(21):::S$"****************************************":S$;60(AN$)2);AN$;60):1:S$: 11);"EAMON ADVENTURE,N ,S ,E ,W ,U ,D ,NE,NW,SE,SW,R0":0:0:0:0:LR:LM:LA|C$:D$"BSAVE SEARCH.RTN,A$800,L289":D$"BSAVE EAMON.UTILS,A$2F0,L151":D$"EXEC EXEC":10* EAMON INPUT ROUTINE * BY FRANK KUNZE * 29 SEP 94 * CONINT EQU $E6F8 MAKSTR EQU $E3E9 SAVDSC EQU $DA9A CHKSTR EQU $DD6C CHKCOM EQU $DEBE PTRGET EQU $DFE3 A1 EQU $85 A2 EQU $86 B1 EQU $E2 TEMP1 EQU $FA TEMP2 EQU $FB INLEN EQU $FD ;INPUT LENGTH MAXLENST1 CMP #$A0 BEQ STORE BCS STORE JMP ERROR * * TEST LENGTH BEFORE ADDING * STORE LDY INLEN CPY MAXLEN ;HAVE WE REACHED MAX LENGTH? BNE STORE1 JMP ERROR ;YES, MAKE SOME NOISE * * ADD OR INSERT CHAR? * STORE1 LDY CSR ;ARE WE USING THE EDIT CSR? BEQ S CPX INLEN BNE END JMP OPTIONS * O10 CMP #$8D ;RETURN? BNE TEST1 * * EXIT RTN * DONE1 STA BUFFER,X STX TEMP1 JSR $D533 INY JSR MAKSTR JSR SAVDSC LDX TEMP1 LDA #$A0 DONE2 JSR COUT INX BNE DONE2 JMP CROUT * * MAKE SURE INPUT IS VALID CHAR. * TEFER,X JSR RIGHTAR JMP DISPLAY * O8 CMP #$82 ;CTRL-B? BNE O9 * * JUMP TO BEGINNING OF STRING * LDX #0 JMP DISPLAY * O9 CMP #$85 ;CTRL-E? BNE O10 * * JUMP TO END OF STRING * CPX INLEN BNE END JMP OPTIONS ;IGNORE IF ALREADY AT THE END END JSR RIGHTARMP DISPLAY * * INSERT RTN * INSERT LDY INLEN CPY MAXLEN BEQ ERROR CPX INLEN BNE INSERTA JMP STORE2 INSERTA DEX STX TEMP2 PHA LDY INLEN TYA TAX INY INSERT1 LDA BUFFER,X STA BUFFER,Y DEX DEY CPX TEMP2 BNE INSERT1 INC INLEN PLA INX STA BUF INLEN JSR DIS0 LDA #$8D JMP DONE1 * * ERROR HANDLER * ERROR STX TEMP1 JSR BELL1 LDX TEMP1 JMP OPTIONS * O7 CMP #$89 ;TAB? BNE O8 * * TAB KEY (CTRL-I) * TAB1 CPX INLEN BEQ TAB2 INX LDA BUFFER,X CMP #$A0 BNE TAB1 CPX INLEN BEQ TAB2 INX TAB2 JMP #$88 ;BACKSPACE? BNE O5 * * BACKSPACE * TXA BEQ ERROR ;NO PLACE TO GO DEX JSR WAIT2 JMP OPTIONS * O5 CMP #$95 ;RIGHT ARROW? BNE O6 * * RIGHT ARROW * JSR RIGHTAR JMP OPTIONS * O6 CMP #$9B ;ESCAPE? BNE O7 * * ESCAPE (EXCEPT ENTIRE STRING) * LDXRL-D) * DEL CPX INLEN ;DELETE LAST CHARACTER? BNE DEL2 * DEX LDA #$DF STA BUFFER,X JMP DISPLAY DEL2 TXA BEQ ERROR DEX STX TEMP1 INX LDY TEMP1 DEL3 LDA BUFFER,X STA BUFFER,Y INX INY CPY INLEN BNE DEL3 LDX TEMP1 DEC INLEN JMP DISPLAY * O4 CAR KEYBOARD STROBE * * SORT COMMANDS * CMP #$83 ;CTRL-C? (CHANGE CURSOR) BNE O2 * * CTRL-C (CHANGE CURSOR) * LDA CSR EOR #$DF ;CURSOR BECOMES CSR OR ZERO STA CSR JMP OPTIONS * O2 CMP #$84 ;CTRL-D? BEQ DEL CMP #$FF ;DELETE? BNE O4 * * DELETE (OR CTE O1 LDA BUFFER,X ;YES, USE TEXT AS CURSOR AND #$3F ;BUT INVERT IT O1 CMP BUFFER,X BNE OA LDA #$A0 OA JSR COUT JSR WAIT1 LDA BUFFER,X JSR COUT JSR WAIT1 * * CHECK KEYBOARD STROBE * LDA $C000 ;WAS A KEY PRESSED BPL OPTIONS ;NO BIT $C010 ;YES, CLEFER * LDA (A1),Y ;GET STRING LENGTH STA INLEN MOVE LDA (B1),Y ORA #$80 ;ADD 128 TO CHARACTERS STA BUFFER,Y ;THEN STORE IN INPUT BUFFER INY CPY INLEN BNE MOVE LDA #$DF STA BUFFER,Y LDX #0 JMP DISPLAY * * MAIN LOOP * OPTIONS LDA CSR ;EDIT BOX? BNLDA #$DF SETUP JSR COUT INX CPX MAXLEN BNE SETUP * * LOCATE STRING * JSR PTRGET ;GET STRING POINTERS JSR CHKSTR STA A1 ;SAVE STRING POINTERS STY A2 LDY #2 GETADR LDA (A1),Y ;GET STRING ADDRESS DEY STA B1,Y BNE GETADR * * MOVE STRING TO INPUT BUF "#$%&'() EQU $FE ;MAXIMUM LENGTH ALLOWED BUFFER EQU $200 COUT EQU $FDED CROUT EQU $FD8E VTAB EQU $FC22 WAIT EQU $FCA8 BELL1 EQU $FBDD CSR EQU $D7 ;CURSOR CHARACTER LOC. * * ORG $800 * * JSR CONINT STX MAXLEN JSR CHKCOM JSR SETTABS LDA #"_" STA CSR LDX #0 TORE2 ;YES, ADD NEW CHAR OVER OLD JMP INSERT ;NO, INSERT NEW CHAR BEFORE OLD * * STORE CHAR, INC X * STORE2 STA BUFFER,X CPX INLEN BNE STORE3 LDA #$DF INC INLEN INX STA BUFFER,X DEX STORE3 INX JMP DISPLAY * * DELAY SUBRTN FOR CURSOR * WAIT1 LDA #$22 JSR WAIT * * PRINT BACKSPACE SUBRTN * WAIT2 LDA #$88 JMP COUT * * SET TABS AT BEGINNING AND * CLEAR X REGISTER * SETTABS LDA #0 ;SET CURSOR POS. TO... STA $24 ;HTAB 1 STA 1403 ;80-COL HTAB LDA #7 STA $25 ;VTAB 8 JSR VTAB LDX #0 RTS * * RIGHT AR,shoot,shoot,shoot,swing,swing,swing,stab,lunge,jab,swing,chop,stab F#axe,bow,club,spear,swordOR A = 0 TO 4: & A,W$(A): NEXT : FOR A = 1 TO NR: & A,R$(A): NEXT 31150 PRINT D$"OPENEAMON.DESC,L256": RETURN $ = "" GOTO 8500: & S,S,S$,C$,C%:D = C%: ON NOT D OR D > ND GOTO 8500:R2 = R%(RO,D): GOTO 3040 8510 R2 = R%(RO, RND (1) * ND + 1): ON R2 < 1 OR R2 > NR GOTO 8510: RETURN 31130 IF ID THEN FOR A = 0 TO 5: FOR A2 = 0 TO 2: & A,BV$(A,A2): NEXT : NEXT : F,.%(RO,A) > 0 AND R%(RO,A) < = NR): NEXT :NL = R%(RO,ND + 1):LT = NL OR LS 3590 GOTO 100 6540 FOR A = 1 TO ND: IF R%(RO,A) < 0 THEN IF R%(RO,A) > = - NR THEN R%(RO,A) = ABS (R%(RO,A)): PRINT "You find a secret passage "C$(A)"!": GOSUB 56 8040 ON S 130 PRINT "You are": PRINT " "R$(RO): GOSUB 56: IF NOT R%(RO,0) THEN R%(RO,0) = 1:R = RO: GOSUB 45 3010 R2 = R%(RO,C): IF T(1) THEN IF NL OR LT THEN A$ = "You can't do that with unfriendlies about!": GOTO 65 3580 NX = 0: FOR A = 1 TO ND:NX = NX + (R"Z$"N"34010:Z$"Y"ĺD$"PR#3"::80:0:J䄙40:0:"DO YOU NEED A CAPS-ONLY DISPLAY?":"(Y/N) :";:A$:A$"Y"A$"N"34020:A$:A$"N"15:1:JEWELRYMP OPTIONS DIS0 STX TEMP2 JSR SETTABS DIS1 LDA BUFFER,X JSR COUT INX CPX INLEN BNE DIS1 CPX MAXLEN BEQ DISB LDA #$DF JSR COUT DISB JSR SETTABS LDX TEMP2 BEQ DIS3 LDX #0 DIS2 JSR RTAR1 CPX TEMP2 BNE DIS2 DIS3 RTS ROR SUBROUTINE * RIGHTAR CPX INLEN ;ARE WE AT THE END? BNE RTAR1 PLA ;YES, 'POP' RETURN ADDRESS PLA LDA #$A0 ;AND ADD AS A SPACE JMP STORE1 RTAR1 LDA BUFFER,X ;USE PRESENT CHAR TO INC CURSOR POS INX JMP COUT * * DISPLAY STRING * DISPLAY JSR DIS0 J 50 CZ$ = D$ + "CLOSE": PRINT A$"DESC": PRINT S$"DESC": INPUT NR,NZ,A,NM: PRINT CZ$:K = 128:NA = NZ + 4: DIM A$(NA),A%(NA,8),M$(NM),M%(NM,14),SA%(3),S2%(3),SM$(2),BV$(5,2),WA%(5),W$(4),T(3),R%(NR,7),R$(NR) 75 PRINT A$"ROOMS,L64": PRINT A$"ROOM.NAME,L64" @56:300 A8:100' B8:3002 C8:51S EWTWTA%(A,3)(A%(A,4)1):v ["You aren't carrying it.":99 \"You must first open it.":99 ^A$"You can't "C$(C)" "S$".":65 `:"Nobody here by that name!":99 c56 d YOU SEE 5789:;<=K):52:9$ :"WORD TOO LONG":* Y -D$"FRE":D$"READEAMON.DESC,R"R:A$:D$:8_ 3m 4LL1:58w 6LL1 8LL2: :L23ı ;49168,0:"[MORE] ";:Z$::(37):6)::(37):L0:Z$(3)15:: <(12)::L0: >45:LL1:(37): VERSION 8&REV. 14 NOV 94 t31000: EAMON ADVENTURER'S GUILD 7625 HAWKHAVEN DR. CLEMMONS, NC 27012 D$"FRE":A,A$:10 (A$,1)" "A$(A$,2):9 (A$)CPĺA$:KKK::52 KCP11:(A$,K,1)" "ĺ(A$,K1):A$(A$,(A$)request,wear,remove,use,resume9 Leather,Chain,Plate lunge,tear,claw,swing,chop,swing,shoot,shoot,shoot,swing,swing,swing,stab,lunge,jab,swing,chop,stab Miss,Miss,Parri,Miss,Miss,Miss,Parri,Miss,Parri,Miss,Parri,Miss,6):LL4:V%((LNR)L(NRL)NR)< dM%NM:A%NZ:Q$(34)_ nD$"FRE":D$"STORE FAST.START" x33,north,south,east,west,up,down,get,drop,look,examine,attack,flee,give,inventory,blast,heal,power,speed,smile,say,read,ready,save,light,open,put,drink,free,)ROLL1 F:A$"MONSTERS,L"W:M1NM:S$"MONSTERS,R"M:M$(M):A111:M%(M,A)::M%(M,12)M%(M,3)::CZ$:NC:C$(NC):A1NC:C$(A): PRO1:R21:W20:ND6:A02:SM$(A)::A05:A202:BV$(A,A2):::A05:A201:RB$(A,A2)::# ZW2A%(M%(0,8)134AMON.UTILS":768,NA:769,NM 2A$"DESC":S$"DESC":NR,NZ,A,NM,LR,W,K:CZ$:NANZ6:A$(NA),A%(NA,8),M$(NM),M%(NM,13),SA%(3),S2%(3),SM$(2),BV$(5,2),RB$(5,1),WA%(5) <A$"ARTIFACTS,L"K:A1NZ:S$"ARTIFACTS,R"A:A$(A):A218:A%(A,A2)::A%(A,2)MA%(A,2 //BOOKWORM 3-D # INIT 216,0:D$(4):(103)(104)2562338Ĺ768,(103):769,(104):103,34:104,9:2337,0:D$"-MAKE.FS" (A$D$"OPENEAMON.":S$D$"READEAMON.":CZ$D$"CLOSE":A0:M2:RO3:NA(768):NM(769):D$"BLOADSEARCH.RTN":D$"-E: FOR A = 1 TO NR: PRINT S$"ROOMS,R"A: FOR M = 1 TO 6: INPUT R%(A,M): NEXT : PRINT S$"ROOM.NAME,R"A: INPUT R$(A): NEXT : PRINT CZ$ 90 L = L + 4: DIM V%(L):L = 0 c n51:LS120:A%(LS,5)A%(LS,5)1:MA%(LS,5):Mĺ"Your "A$(LS)" has gone out!":LS0:LTNL:99 sM10ĺ"Your "A$(LS)" is almost out!":56:120 uM20ĺ"Your "A$(LS)" grows dim!":56 xSPSPSP1:SPM%(0,2)M%(0,2)2:"Your speed spell has just expired!":56Z zA03:S2%(A)SA%(A)S2%(A)S2%(A)1.1:S2%(A)SA%(A)S2%(A)SA%(A) }:LTĺ"It's too dark to see.":56:210 "You are ":" "RN$:54:V%(RO)V%(RO)1:RRO:45 D%RO:M1NM:C%M:S,A,D%,M%(C%,5),C%,M%:MC%:MM999::160>@ENTURE SYSTEM":11)"ADVENTURE DESIGNER":13)"SELECTION MENU":14)"VERSION 8.0" 27:"SELECT PROGRAM FUNCTION DESIRED..." <:" 1. INITIALIZE NEW DUNGEON DISKETTE"::" 2. EDIT DATA FILES":b F" 3. LIST DATA IN A DUNGEON'S FILES"::" 4.EAMON DUNGEON DESIGNER4 VERSION 8.0 RBY DON BROWN/JOHN NELSONq7.0 MODS BY TOM ZUCHOWSKI8.0 MODS BY FRANK KUNZEI/O MODS BY DOUG TRUEMAN 10/17/88LAST UPDATE 2/10/94 D$(4)::(26)"1":(21):T (9)"EAMON ADVI0:320000> "You can't go that way!"G$:99BH GATE/DOOR {R AR2500:A%(A,8)03390:A%(A,6)R2A%(A,5):3040f "The "A$(A)" blocks the way!":99 GO  R3RO:ROR2:36002D$"READEAMON.ROOMS,R"RO:NX0:RN$:A1ND:R%(A):NXNX(R:520/OFM:M%(M,8)1M%(M,6)07400:E SPECIAL STUFF N100[ MOVE  R2R%(C):T(1)ĭNLLTĺ"You can't turn your back here!":99 R25003400:R20R2NR3500 SPECIAL MOVES  R299ĺ"You return to the Main Hall.":D1)1C%C%1:410)DFC%:DFNM480gM2DF1NM:C%M2:S,A,D%,M%(C%,5),C%,M%:C%M2999:430M2C%:M%(M2,11)1(1).25DFM2:M29997500T(1)M999:MC999:D%RO:M1NM:C%M:S,A,D%,M%(C%,5),C%,M%:MC%:MM999:3)8MCM%(M,3)8@^OFM:DF0:MCMCM%(M,3):M%(M,11)3400VhT(3)M%(0,1)480rD%RO:M21NM:C%M2:S,A,D%,M%(C%,5),C%,M%:C%M2999:380wM2C%:M%(M2,11)3(1).25DFM2:M2999|:480C%1:D%ROS,A,D%,M%(C%,5),C%,M%:M%(C%,1::500kOM%(M,3)1340:(M%(M,12)M%(M,3))M%(M,12)(1)100M%(M,4)MR%(1)M%(M,3)1:MR%" "M$(M);PMR%ĺ(" flees!s flee!",1(MR%1)7,7):54:M%(M,3)M%(M,3)MR%:M%(M,5)M%(M,5)(M%(M,3)0):M2M:3600:MM2:MR%0:M%(M,5)Ă:500TMC1:M%(M,""295:L1::4920%, PICK FOE 6T(1)T(1)(T(1)0):T(1)500:51:D%RO:M1NM:C%M:S,A,D%,M%(C%,5),C%,M%:MC%:MM999::500JM%(M,11)2Ă:500 MM%(M,3)1ĭM%(M,13)M%(M,1)(1)100M%(M,4)ĺM$(M)" flees!":54:M%(M,5)0:M2M:3600:MM229C31S$S3$"C3000,3000,3000,3000,3000,3000,4000,5000,6500,6000,7000,8000,9000,10000,11000,12000,13000,14000,15000,16000,23000,17000,18000,19000,20000,21000,22000,24000,25000,26000,27000,28000,18500&"Attack non-enemy?"'" (Y/N)?";S$:S$$"TO "Z$"ON "Z$"IN "S2$(S2$,4):250fZ$(S2$,5):Z$"FROM "Z$"WITH "S2$(S2$,6):250 K(V$):A1ND:(C$(A),K)V$CA:A999::290:S,S,V$,C$,C%:CC%:C280"Valid Commands:"::C1NC:C$(C),;:::210C13C26CA$:9A$""275:CZ$A$:A2(A$):(A$,A,1)" "ĂWV$(A$,A1):S$(A$,A1)x(S$,1)" "S$(S$,2):235S2$"":S3$S$:A1(S$):(S$,A,1)" "Ă:265S2$(S$,A1):S$(S$,A1)(S2$,1)" "S2$(S2$,2):250-Z$(S2$,3):Z.";:175SM20:A%(A,0)A%(A,0)1:RA200:62:M21:"(You see "A$(A)")";:175l"You see "A$(A)".";}51:M251:51:"Your command? ";A$:L0:51:A$""Ę1:A,A$:ID(A$,1)" "A$(A$,2):215A$""A$CZ$:(37)1:15:1403,15:6 M20:M%(M,0)M%(M,0)1:RM600:62:"(";:M21] M%(M,3)1ĺM$(M)" is here.";:156 M%(M,3)" "M$(M)"s are here."; (" )",M21,1);:51:M251: A1NA:C%A:S,A,D%,A%(C%,4),C%,A%:AC%:C%A999::210 ANZĺ"Your "A$(A)" is here PRINT MANUALS"::" 5. RESIZE DATA FILES"::" 6. EDIT EAMON UTILS FILE"::" 7. STOP": K"PRESS KEY FOR YOUR CHOICE (1-7) : "; P16368,0:C$:C(C$):C1C780 ZC$:C100,200,300,400,500,600,700 dD$"RUN DUNGEON INIT" D$"RUN $"PR#0":100" LIST ARTIF. r"BEGINNING WITH ARTIFACT (1): ";BE$:BE$""BE$"1":(37):30:HT,30:BE$:"ENDING WITH ARTIFACT ("NA;:"): ";EN$:EN$""EN$(NA):(37):28:HT,28:EN$BE(BE$):EN(EN$):BENABE1BE1 ENNAENB": ";(X0)((X)10));X;5);.X99ĺ"[EXIT]";:1110k8MP7ĭMP6ĭX0(X)NRĺ"["R$((X))"]";BMP6ĭXDRĭNAXDRĺ"["A$(XDR)"]";LX0XNRĺ"["R$(X)"]";V89::MP6ĺ"LIGHT: "R%(R,ND1):88`89:PTL99:90j:FF$:DE$T:"ENDING WITH # ("NR;:"): ";EN$:EN$""EN$(NR):(37):21:HT,21:EN$}BE(BE$):EN(EN$):BENRBE1BE1ENNRENBEENNR80:75:RBEEN:"ROOM #"R": "R$(R):88:DSĺR$"DESC,R"R:A$:D$:9000$D1ND:XR%(R,D):" "D$(D):A%(A,2)1MP6āA258:A%(A,A2):D|:CL$"EAMON.ARTIFACTS"O$"MONSTERS,L"LM:A1NM:R$"MONSTERS,R"A:M$(A):A21MF:M%(A,A2):::CL$"EAMON.MONSTERS": LIST ROOMS "BEGINNING WITH # (1): ";BE$:BE$""BE$"1":(37):23:HT,23:BA,A2)::D$::340K@A1NR:R$"ROOMS,R"A:A21ND(MP6):R%(A,A2):J:D$:O$"ROOM.NAME,L"LN:A1NR:R$"ROOM.NAME,R"A:R$(A)::CL$"EAMON.ROOM.NAME"TCL$"EAMON.ROOMS"(rO$"ARTIFACTS,L"LA:A1NA:R$"ARTIFACTS,R"A:A$(A):A214:A%(A,A2): 7. SWITCH TO "("4080",(CP40)21,2)" COLUMNS":" 8. QUIT" :"INPUT YOUR CHOICE (1-7):";CH:FF$::CH1000,2000,3000,4000,5000,6000,7000,8000:100 , LOAD DATA 6RM97:RM1:O$"ROOMS,L"LR:MP7āA1NR:R$"ROOMS,R"A:R$(A):A21ND1:R%((40(AN$))2);::AN$:} x:"SELECT ACTION DESIRED:"::" 1. LIST ROOMS":" 2. LIST ARTIFACTS":" 3. LIST EFFECTS" " 4. LIST MONSTERS":" 5. TOGGLE PRINTER (NOW "("OFFON",PT31,3)")":" 6. TOGGLE DESC. (NOW "("OFFON",DS31,3)")"@ "))2)AN$::LL2:< PPT97:PTĺD$"PR#"PS:(9)"80N":J XLL1:90V Y:LL1~ ZL20(35(PT0))97:L0:PTĺFF$: \49168,0:"HIT ANY KEY...";:A$:::(12)::A$(27)ġ:100 a d MAIN ROUTINE  nL0::11)"EAMON DUNGEON LIST"::50 (MP7:LD242:55U -CL$:(222)5ĺ"ERROR "(222)" IN "(218)(219)256:e /216,0:MP5 2LD256:LA128:LM128:LR64:LN64:ND6ND6:MP5 7O$"DESC,L"LD:R$"DESC,R0":NR,NA,NE,NM:MP7ĺ:LR,LM,LA <D$:35000:300:100 K(CP(AN$ACDEFGHIJKLMNO*GEON LIST":15:"UNIVERSAL":10 B$D$"PREFIX":" INSERT DISKETTE WITH ADVENTURE"::" PRESS ANY KEY TO CONTINUE...";:49168,0:A$::A$"1"A$"2"ĺB$",D"A$ B$"/":B$:P$:B$;P$:45 #O$"NAME":R$"NAME":AN$:ND:MP:CL$:216,0:MP7: EAMON UNIVERSAL DUNGEON LIST BY FRANK KUNZE 1994 OREV. 25 NOV 94  EAMON ADVENTURER'S GUILD 7625 HAWKHAVEN DR. CLEMMONS, NC 27012 ! D$(4):CL$D$"CLOSE":O$D$"OPENEAMON.":W$D$"WRITEEAMON.":R$D$"READEAMON.":::5:11:"EAMON DUNDUNGEON EDIT") ,D$"RUN DUNGEON LIST"C D$"RUN TEXT PRINTER"] D$"RUN RESIZE FILES"w XD$"RUN EDIT.E.UTILS"} EENNA`80:75:RBEEN:"ARTIFACT #"R": "A$(R):88:DSĺR$"DESC,R"RRL%(2):A$:D$:9000" VALUE"(PR$,15)A%(R,1):88:" TYPE"(PR$,16)A%(R,2);5(A%(R,2)9))"[";:A%(R,2)AFĺ"UNKNOWN]":88:2090 TY$(A%(R,2))"]":88v*" WEIGHT"(PR$,14)A%(R,3):88:" ROOM"(PR$,16)A%(R,4);:X((A%(R,4))):5(X1)(X2)(X3));:AA%(R,4):A0ANRĺ"["R$(A)"]";4A0ANM1ĺ"[CARRIED BY "M$((A1))"]";>A200A200NRĺ"[EMBEDDED IN ROOM "A200"]";HX100(400(MP7)):AXANAXĺ"["܌CONTAINER,KEY#,STRENGTH,OPEN/CLOSED,USER #8\"挃LIGHT,COUNTER,USER #6,USER #7,USER #8"DRINKABLE,HEAL AMOUNT,# OF USES,OPEN/CLOSED,USER #8"READABLE,1ST EFFECT,# OF EFFECTS,OPEN/CLOSED,USER #8"DOOR/GATE,ROOM BEYOND,KEY,STRENGTH,HIDDEN?(#A262:AR$(A):AR$(A1)AR$(A)" & SHIELD"::A05:CT$(A):F!X! ART. DATA `!12!GOLD,USER #5,USER #6,USER #7,USER #8!TREASURE,USER #5,USER #6,USER #7,USER #8!ȌWEAPON,ODDS,TYPE,DICE,SIDES"ҌMAGIC WEAPON,ODDS,TYPE,DICE,SIDES1MF$(MF):A112:MF$(A)::MP7āA15:A$:d MP7āA711:MF$(A)::MF11:MF$(3)"# MEMBERS" D$(10):A110:D$(A): RL%(4):A14:RL%(A)A100100::MP7āA24:RL%(A)RL%(A)2:@!W$(5):A15:W$(A)::AR$(7),CT$(5):AR$(0),AR$(1):258:F$(A,A2):::M$(0)"THE ADVENTURER"yшA1AF:F$(A,1)"VALUE":F$(A,2)"TYPE":F$(A,3)"WEIGHT":F$(A,4)"ROOM":ֈMP7AF10:A57:F$(6,A)::F$(4,7)"USER #7":F$(7,7)"READ FLAG":F$(8,8)"USER #8":MP6AF3MP7āA13:A$:. MF12::89 SETUP DATA ˆFF$(12):DS1:PR$"....................":FR$(1)"ENEMY":FR$(2)"NEUTRAL":FR$(3)"FRIEND":CP40:CCCP:HT1403:DR500:MP7DR100,̈A$(NA),A%(NA,8),M$(NM),M%(NM,12),R$(NR),R%(NR,ND1):AF:TY$(AF),F$(AF,8):A0AF:TY$(A):A:CP80:100"p TOGGLE DESC. 2zDSDS:100EX 40/80 COL. kbCP40CP80:D$"PR#3":CCCP:100lCP40:CCCP:(26)"1":(21):100@ QUIT JCL$:(# PRINT DESC 2#PTĺA$:LL((A$)CP)1:<#AZ1(A$)CP:(A$,AZ,CP):88:APONS]";'"XNAX0ĺ"["A$(X)"]";=, ADD MORE HERE E$89]):89:PTL99:90w.:FF$:D$"PR#0":100 TOGGLE PRINTER PTPT:PTCPCC:100"PRINTER SLOT? (DEFAULT=1):";:A$:A$(13)A$"1" A$:PS(A$):PS1PS75000MP7ĭM3M4M7M10BB1:"%";b6(B1)(B2)(B3));:M11MP7ĭX99ĺ"["X100"%]";M11ĭMP7ĭX0X4ĺ"["FR$(X)"]";M5ĭX0XNRĺ"["R$(X)"]";(MP7M9)(MP7M8)4140:X0ĺ"[WEAPONLESS]";:4900 Xĺ"[NATURAL WEMENBEENNMV80:75:RBEEN:"MONSTER #"R": ";:MP7ĭM%(R,3)1ĺM%(R,3)" ";M$(R)(" S",(MP7M%(R,3)1)11,1):88:DSĺR$"DESC,R"RRL%(4):A$:D$:9000M1MF:XM%(R,M):M3ĭMP74905%" "MF$(M)(PR$,1,20(MF$(M)))X;:B((X)):99:90# :FF$:D$"PR#0":1009 LIST MONSTERS "BEGINNING WITH # (1): ";BE$:BE$""BE$"1":(37):23:HT,23:1:"ENDING WITH # ("NM;:"): ";EN$:EN$""EN$(NM):(37):21:HT,21:NMBE(BE$):EN(EN$):BENMBE1BE1ENN1":(37):23:HT,23:1h :"ENDING WITH # ("NE;:"): ";EN$:EN$""EN$(NE):(37):21:HT,21:NE BE(BE$):EN(EN$):BENEBE1BE1 ENNEENBEENNE 80:75:RBEEN:"EFFECT #"R":":88:R$"DESC,R"RRL%(3):A$:D$:9000:89  PTLM0M8ĺ"["AR$(M)"]";:A5ĭM7ĺ"[MAGIC/EXOTIC]";fA6ĭA%(R,5)ĭM0M6ĺ"["CT$(M)"]";ADD MORE SPECIAL STUFF HERET 89::89:PTL99:90^ :FF$:D$"PR#0":100 LIST EFFECTS  "BEGINNING WITH # (1): ";BE$:BE$""BE$"ĭA5BB1:"%";Ku5(B1)(B2)(B3));:X2X3ĭA6ĺ"["W$(M)"]";wzX10ĭA5A7ĭM0MNMĺ"["M$(M)"]";(X4A5)(X8A6)(X10A6)(X12A5)ĭMNAM0ĺ"["A$(M)"]";X8ĭA5ĭM0MNRĺ"["R$(M)"]";MP7X112250:A5ĭINSIDE "A$(AX)"]";>RMP7ĭA999ĺ"[WORN BY "M$(0)"]";v\MP6ĭA300A300NRĺ"[HIDDEN IN ROOM "A300"]";f89:XA%(R,2):A58:XAFĺ" FIELD #";A;(PR$,12)A%(R,A);:2900pMA%(R,A):" "F$(X,A);(PR$,20(F$(X,A)));M;:B((M)):X2X3KEY,USER #5,USER #6,USER #7,USER #8X#BOUND MONSTER,MONSTER#,KEY#,GUARD#,USER #8#"WEARABLE,ARMOR CLASS,TYPE,USER #7,USER #8#,RE-USEABLE CONTAINER,KEY#,OPEN/CLOSED,#ITEMS INSIDE,#ITEMS CAN HOLD#6 6.0 DRINKABLE $@CHANCES,HEAL AMOUNT,# LEADIN PROGRAM )REV. 2 OCT 94p EAMON ADVENTUER'S GUILD 7625 HAWKHAVEN DR. CLEMMONS, NC 27012  FF$(12):D$(4):18 D$"VERIFYSAVED.GAME":216,0:"THERE IS A SAVED ON THIS DISK. WHEN THEADVENTURE BEGINS YOU MAY LOAD IT WITH THEL` { ޥSLA P "F$(X)::" ? = ABOUT THIS PROGRAM"(:" ENTER #1-"NF;:" OR '?' -";A$:A(A$):A$"?"A$"/"900:A1ANF20& 2F*EAMON ARRAY SEARCH ROUTINES *BY TOM ZUCHOWSKI *8/30/88 * *SYNTAX FOR STRINGS: &S,A$,B$,C$ (TO BEGIN SEARCH) * &R (TO CONTINUE SEARCH) *SYNTAX FOR NUM. ARRAYS: &A,D%,A%(X,Y),C%,B% * * CHRGET EQU $B1 CHRGOT EQU $B7 VARPNT EQU $83 l݅ , J a)ߝ ? L { R ֐ }~`ZL 0`HICH ACCEPTS COMMAS AND COLINS. IT ALSO SHIFTS ALL TEXT ENTEREDINTO UPPERCASE. SYNTAX IS &U,A$ (WHERE A$=ANY STRING VAR.)": "HIT ANY KEY...";:A$:20 3,MOD1,32,MOD2,29,MOD3,45ION). THE NUMBERS MUST BE 0-255."C :"HIT ANY KEY...";:A$: "MOD2: DATA POINTER. THIS ROUTINE ALLOWSYOU TO SET THE DATA POINTER TO THE BEG- INNING OF ANY LINE. USE &U,X (X=LINE).": "MOD3: BETTER INPUT ROUTINE. THIS IS AN INPUT ROUTINE WER THAT IT IS THE FILE NAME FOLLOWED BY THE FILE LENGTH (CAN'T EXCEED 72)." :"THREE ROUTINES HAVE BEEN INCLUDED ON THIS DISK, THEY DO THE FOLLOWING...":$ "MOD1: YOUR BASIC SOUND ROUTINE. TO MAKEA SOUND USE &U,X,Y (WHERE X=PITCH AND Y=DURAT:"THIS PROGRAM ALLOWS YOU TO ADD AN EXTRA ROUTINE TO THE 'EAMON.UTILS' FILE. THE EXTRA ROUTINE CAN BE ACCESSED WITH '&U,'"M "TO ADD YOUR OWN ROUTINES TO THE MENU, CHANGE THE DATA STATEMENT IN LINE 1000. THE FIRST NUMBER IS THE NUMBER OF FILES AFTXZ[L(A)72ĺ"TOO LONG!":A11500::20 <:"LOADING "F$(A)"...":D$"BLOAD"F$(A)",A$386":"DONE.":"INSERT DISK TO SAVE 'EAMON":"UTILS' ON...";:A$: AD$"PREFIX/":D$"PREFIX":P$:D$"PREFIX"P$ FD$"BSAVE EAMON.UTILS,A$2F0,L"150FL(A):"DONE.": CHKCOM EQU $DEBE PTRGET EQU $DFE3 GETARYPT EQU $F7D9 * * ORG $4000 * * JSR CHRGOT CMP #'A' BNE STRSRCH JSR CHRGET JSR CHKCOM * *EAMON ARRAY SEARCH *BY TOM ZUCHOWSKI * * &A,D%,A%(X,Y),C%,B% * * WHERE: * A = ARRAY SEARCH COMMAND * D% = SEARC_abcdef* BASIC ENHANCERS * BY FRANK KUNZE * V6 30 SEP 1994 * * &S, - JMP TO $800 (EAMON SEARCH RTN.) * &A,A$ - IF LOC $F9 = 1 THEN ALL PROGRAM TEXT * IS SHIFTED TO CAPS. ALL AT (@) SIGNS * ARE CHANGED TO QUOTE (") MARKS. * * &P, - SHIFT PROGRAM T SNUM LDY #1 STA (NUMPTR),Y OVER RTS RLEN CLC ADC ARYADR STA ARYADR BCC S1 INC ARYADR+1 S1 LDY #0 BEQ Y4 * AGAIN INC SNUM LDA SNUM CMP ARYSIZ BEQ OVER ;FINISHED * LDA ARYPTR ;GET NEW DESCRIPTOR CLC ;FOR NEXT ARRAY ADC #3 STA ARYPTR BCC Z5 INC ARYPTR+1 Z5 BNE SLOOP * SMATCH LDATR),Y STA ARYADR+1 LDA ARYLEN ;SRCH STR > ARRAY STR? CMP STRLEN BMI AGAIN ;YES, GET NEXT STR LDX #1 LDY #0 BEQ Y4 Y2 INY CPY STRLEN ;FINISHED? BEQ SMATCH ;YES Y4 LDA (ARYADR),Y ;NO CMP (STRADR),Y BEQ Y2 DEX BMI AGAIN * LDA ARYLEN SEC SBC ST+1 * S2 JSR CHKCOM JSR PTRGET ;GET NUM VAR LOC STA NUMPTR STY NUMPTR+1 * CLC HOP BCS AGAIN ;INTERMEDIATE JUMPER FROM BEGINNING SLOOP LDY #0 LDA (ARYPTR),Y STA ARYLEN ;LEN OF ARRAY STR INY LDA (ARYPTR),Y ;LOC OF ARRAY STR STA ARYADR INY LDA (ARYPT),Y ;GET PTRS & STORE STA STRADR INY LDA (VARPNT),Y STA STRADR+1 * JSR CHKCOM JSR GETARYPT ;GET ARRAY STR LOC. LDA LOWTR CLC ADC #6 STA ARYPTR LDA LOWTR+1 ADC #0 STA ARYPTR+1 LDY #0 LDA (ARYPTR),Y STA ARYSIZ INC ARYPTR BNE S2 INC ARYPTRSIZ EQU $E4 ARYLEN EQU $E6 ARYPTR EQU $E7 ARYADR EQU $E9 NUMPTR EQU $EB * STRSRCH CMP #'R' BNE SSTART JSR CHRGET SEC BCS HOP * SSTART JSR CHRGET JSR CHKCOM JSR PTRGET ;GET SEARCH STR LOC. LDY #0 STY SNUM LDA (VARPNT),Y STA STRLEN INY LDA (VARPN8/23/88 * * &S,A$,B$,C% * * WHERE: * S = STRING SEARCH COMMAND * A$ = SEARCH STRING * B$ = ARRAY NAME * C% = STARTING LOCATION IN ARRAY * RETURNS WITH ARRAY LOC. OF MATCH * LOWTR EQU $9B SNUM EQU $E0 STRLEN EQU $E1 STRADR EQU $E2 ARY (ARYVAL),Y CMP VAL+1 BEQ AMATCH A1 INC ARYVAL BNE A2 INC ARYVAL+1 A2 INC ARYVAL BNE Z3 INC ARYVAL+1 Z3 INC CTR SEC LDA LNUM SBC CTR BCS ALOOP LDA #0 STA CTR * AMATCH LDY #1 LDA CTR STA (ANUM),Y RTS * *EAMON STRING SEARCH *BY TOM ZUCHOWSKI *AL STY ARYVAL+1 JSR CHKCOM JSR PTRGET ;GET ARRAY LOC. (C%) STA ANUM STY ANUM+1 LDY #1 LDA (VARPNT),Y STA CTR JSR CHKCOM JSR PTRGET ;GET HIGHEST ARRAY LOC. LDY #1 LDA (VARPNT),Y STA LNUM * ALOOP LDY #0 LDA (ARYVAL),Y CMP VAL BNE A1 INY LDAATION OF 'X' ANUM EQU $E4 ;LOC. OF C% VAL EQU $E6 ;SEARCH VALUE CTR EQU $E8 ;COUNTER = ARRAY LOC UNDER TEST * JSR PTRGET ;GET SEARCH VALUE LDY #0 LDA (VARPNT),Y STA VAL,Y INY LDA (VARPNT),Y STA VAL,Y JSR CHKCOM JSR PTRGET ;GET ARRAY LOC. STA ARYVH VALUE * A%(X,X) = STARTING LOCATION IN ARRAY * C% = STARTING LOCATION IN ARRAY (SAME AS 'X') * RETURNS WITH ARRAY LOC. OF MATCH * B% = THE LAST LOCATION IN THE ARRAY * * ARYVAL EQU $E0 ;LOC. OF ARRAY VALUE LNUM EQU $E2 ;HIGHEST ARRAY LOCEXT (WILL KILL THE CTRL-D$ VAR) * * &U, - JUMP TO AN ADDED USER RTN AT END OF UTILS * * FRMEVL EQU $DD7B CHKCOM EQU $DEBE PTRGET EQU $DFE3 A0 EQU $E0 ;$E0-$E2 ARE USED FOR TEMPORARY STORAGE A1 EQU $E1 A2 EQU $E2 AD EQU $83 ;$83-$84 HOLD THE LAST-USED VAR NgijkROR LDX #90 ;SEND BACK A JMP $D412 ;UNDEF'D STATEMENT ERROR 2mo * * SETUP LINE # * JSR FRMEVL JSR CONV ;CONVERT TO INTEGER * AND STORE IT IN $50,51 JSR $D61A ;CHECK FOR THAT LINE BCC ERROR * * * RESTORE RTN * LDA $9B SBC #1 STA DATADR ;PUT ADDRESS-1 OF LINE LDA $9C ; INTO $7D,7E SBC #0 STA DATADR+1 RTS ER* DATA POINTER * BY FRANK KUNZE * 30 SEP 94 * BASED UPON A PROGRAM * BY VERN L. MASTEL * FROM MARCH 89 NIBBLE * * EAMON UTILS MOD #2 * * &U,X - CHANGE DATA POINTER TO LINE #X * FRMEVL EQU $DD7B CONV EQU $E752 DATADR EQU $7D ;NEXT DATA ADDRESS * * ORG $386 STX STORE1 JSR CHKCOM JSR CONINT STX STORE2 * * SOUND RTN * SOUND LDA $C030 ;CLICK SPEAKER S1 DEY BNE S2 DEC STORE2 BEQ EXIT S2 DEX BNE S1 LDX STORE1 CLC BCC SOUND EXIT RTS &*SOUND ROUTINE *BY FRANK KUNZE *2/25/93 *ASSEMBLER: BIG MAC * * * EAMON UTILS USER MOD #1 * *SYNTAX FOR SOUND: &U,X,Y (X=TONE, Y=DURATION) * * ORG $386 * CHKCOM EQU $DEBE CONINT EQU $E6F8 STORE1 EQU $E0 STORE2 EQU $E1 * * CONVERT #'S & STORE * JSR CONINTCMP #$60 BCC NEXTBYTE AND #$5F STA (T),Y NEXTBYTE INY BNE GRAB NEXTLINE LDY #0 LDA (T),Y TAX INY LDA (T),Y ;THIS CONDITIONS Z FLAG FOR STA T+1 ;FOR THE BNE TEST BELOW STX T BNE CHECK BEQ EXIT USER RTS I61 BCC ST1 AND #$DF STORE STA (A1),Y ST1 INY CPY A0 BNE GET EXIT RTS * * PROGRAM TEXT SHIFTER * TXTSHIFT LDA $67 ;GET PROGRAM START POINTERS STA T LDA $68 STA T+1 LDY #1 LDA (T),Y BEQ EXIT CHECK LDY #4 GRAB LDA (T),Y BEQ NEXTLINE BMI NEXTBYTE MARKS * IF ID = 1 THEN LOWER-CASE TEXT WILL BE SHIFTED * ADJUST JSR PTRGET LDX ID LDY #0 LDA (AD),Y STA A0 INY LDA (AD),Y STA A1 INY LDA (AD),Y STA A2 LDY #0 GET LDA (A1),Y CMP #'@' BNE SHIFT LDA #'"' BNE STORE SHIFT CPX #1 BNE ST1 CMP #$MEVL JSR CHKCOM LDA $81 ;GET LAST-USED VARIABLE CMP #'S' BNE SORT JMP $800 SORT CMP #'A' BEQ ADJUST CMP #'P' BEQ TXTSHIFT CMP #'U' BEQ USER LDX #16 ;SEND A 'SYNTAX ERROR' JMP $D412 * * LC/QUOTE ADJUSTER * * TURNS ALL @'S IN A STRING INTO QUOTE AME ID EQU $F9 ;ALSO APPLESOFT'S ROTATE LOC. T EQU 0 * * ORG $2F0 * * RESET AMPERSAND TO JUMP TO * LOCATION $302 * * LDA #$4C LDX #2 LDY #3 STA $3F5 STX $3F6 STY $3F7 RTS * * * NOP ;RESERVE 2 BYTES TO STORE NOP ;OLD START OF PROGRAM LOC. JSR FR* BETTER INPUT * BY FRANK KUNZE * 4/12/94 * * EAMON UTILS MOD #3 * * &U,A$ - INPUT A STRING AND SHIFT IT TO CAPS * ORG $386 * IOSAVE EQU $FF4A IOREST EQU $FF3F FORPNT EQU $85 INLIN EQU $D52C SAVDSC EQU $DA9A CHKSTR EQU $DD6C MAKSTR EQU $E3E9 PTRGET EQU HOICE (1-6) ";.A$:A$(12)LKLK:100kC(A$):C1C6150:C:C1000,2000,3000,4000,5000,6000 SELECT WHAT TO WORK ON 2:958:"DO YOU WANT TO "C$" A ROOM, ARTIFACT,":" EFFECT, OR MONSTER (HIT KEY, RAEM) ";A$:A18:A$(CT,EFFECT OR":6)"MONSTER"::" 2. EDIT OLD ROOM,ARTIFACT, EFFECT":6)"MONSTER" :" 3. LIST NAMES OF ROOMS, ARTIFACT,ETC"::" 4. DUPLICATE A ROOM, ARTIFACT":6)"OR MONSTER":" 5. SPECIAL FUNCTIONS"::" 6. QUIT"::"ENTER KEY FOR YOUR CCL$"EAMON.ROOM.NAME"K PRM0:AM1:O$"ARTIFACTS,L"LA:O$"MONSTERS,L"LM:c ZONERR GOTO 40000 p d MENU nNW0::T14:T$(T)"-"N%(T)" ";:::3:4)"EDITING ";::AN$::("LOCK",1,LK4);:T x"YOUR CHOICES ARE--"::" 1. ADD NEW ROOM,ARTIFAMP7ĺ:LR,LM,LA@ <D$:35000:MP790:A$"ROOM.NAME":90X A OPEN ROOM FILES FRMRM1:AM0:CL$"EAMON.ARTIFACTS":CL$"EAMON.MONSTERS":O$"ROOMS,L"LR:MP7ĺO$"ROOM.NAME,L"LN H K OPEN ART. & MON.  MAM72:CL$"EAMON.ROOMS":MP7ĺ"ARTIFACTS":A$"MONSTERS"Z #DR1:O$"NAME":R$"NAME":AN$:ND:MP:CL$:216,0:MP750n (MP7:LD242:55 -CL$:(222)540000 2216,0:MP6:LD256:LA128:LM128:LR64:LN64:ND6ND6:MP5 7O$"DESC,L"LD:R$"DESC,R0":N%(1),N%(2),N%(3),N%(4):suvwxyz{|}~ON DUNGEON EDIT":15:"UNIVERSAL":10 B$D$"PREFIX":" INSERT DISKETTE WITH ADVENTURE"::" PRESS ANY KEY TO CONTINUE...";:49168,0:A$::A$"1"A$"2"ĺB$",D"A$ B$"/":B$:P$:B$;P$:45 A$D$"UNLOCKEAMON.":A$"DESC":A$"ROOMS":A$: EAMON UNIVERSAL DUNGEON EDIT BY FRANK KUNZE 1994 NREV 10 NOV 94  EAMON ADVENTURER'S GUILD 7625 HAWKHAVEN DR. CLEMMONS, NC 27012 ' D$(4):CL$D$"CLOSE":O$D$"OPENEAMON.":W$D$"WRITEEAMON.":R$D$"READEAMON.":(21):::5:11:"EAMJMP SAVDSC ;pr$DFE3 INBUFF EQU $200 * * INPUT RTN * JSR PTRGET JSR CHKSTR STA FORPNT STY FORPNT+1 JSR INLIN INY JSR IOSAVE LDX #0 INLOOP LDA INBUFF,X BEQ INDONE CMP #$61 BCC INPUT1 AND #$DF STA INBUFF,X INPUT1 INX BNE INLOOP INDONE JSR IOREST JSR MAKSTR "RAEMraem",A,1)Ă:520'A4AA4?A$:TYA:AAA::PX INPUT I$ `]TLTL238b958:TL5Ė1:V(37)1:X1TL:U$;:::VgI$""lI2$;:TL5ĺU$;:(8);q(I2$)āX1(I2$):(8);:vA$:A$(4)I2$(I2$,2):620L{X(I$)(I2$)TL:SL(I2$):A$(31)ĴX685:A$;:I$I$A$:I2$(I2$,2):630qA$(9)ĴX685:I2$" "I2$:620A$(5)ĺI2$;:I$I$I2$:I2$"":630A$(2)(I$)āA1(I$):(8);::I2$I$I2$:I$"":630A$(21)ĴSL685:A$(I2$,1):635?"NBR ART. TO GEN:";NA:A1NA:N%(2)N%(2)1:W$"DESC,R"N%(2)RL%(2):"YOU SEE ARTIFACT #"N%(2)"."W$"ARTIFACTS,R"N%(2):"ARTIFACT "N%(2):X18:0:::D$:100 TOGGLE PRINTER PTPT:5000D GEN. BODIES -NUP1:"# OF MONSTER TO STAR"MONSTERS:";LM:"DESC:";LD:5000<P DELETE LAST ITEM lZC$"DELETE":500:N%(TY)N%(TY)1:UP1:5000 ADD TO # OF ITEM C$"INCRMNT":500:N%(TY)N%(TY)1:UP1:5000 TOGGLE LOCK "LKLK:5000| GEN. DUMMY ART. cUP1:75:09:C5100,5200,5300,5400,5500,5600,5700,5000,5000N FILE LENGTHS MP7ĺ"INVALID OPTION!"(7):A12000::5000"ROOMS="LR:"ROOM.NAME="LN:"ARTIFACTS="LA:"MONSTERS="LM:"DESC="LD:# "ROOMS:";LR:"ROOM.NAME:";LN:"ARTIFACTS:";LA:K31,3)")"::" 5. GENERATE DUMMY ARTIFACTS"::" 6. TOGGLE PRINTER (NOW "("OFFON",PT31,3)")":" 7. GENERATE BODIES"::" 8. (NOT USED)"::" 9. (NOT USED)":"INPUT YOUR CHOICE (1-9):";S$:S$(13)ĺ:100C(S$):C1C9506:24000:RENCRL%(4):NONC:1430= SPECIAL FUNCTIONS t::" SELECT FUNCTION OR PRESS "::" 1. CHANGE FILE LENGTHS"::" 2. DELETE LAST R,A,E,M"::" 3. ADD TO NBR OF R,A,E,M":e" 4. TOGGLE LOCK MODE (NOW "("OFFON",LER.":N%(TY)N%(TY)1:UP1TNOFR:RENORL%(TY):20000:TYPE4100,4200,4300,4400f DUP. ROOM 21000:RENC:NONC:1130h DUP. ART. r22000:RENCRL%(2):NONC:1230 DUP. EFFECT RENCRL%(3):18000:1000 DUP. MONSTER # PAGE BREAK (L0:PTĺ(12):y$:" (PRESS ANY KEY TO CONTINUE) ";:49168,0:B$::(37)1:958: DUPLICATE C$"DUPLIC.":500:C$"DUP. FROM":700:FRNO:C$"CREATE":700:NCNONON%(TY)ĺ"CREATING A "T$(TY)" FROM ANOTH:"# OF SPACES TO INDENT?":"(USUALLY 0) : ";IDC PTĺD$"PR#1" ::L0:ID)"LISTING "A$::34,2:A1N%(TY):R$;F$",R"A:NA$:D$:ID)" "A": "NA$ LL1:L1930PTİ3600 :D$"PR#0" :"PRESS ANY KEY TO RETURN TO MENU";:A$:::10034,2:A1N%(TY):REARL%(TY):20000:"EFFECT #"A:LL1e PTāX1(DE$)80:(DE$,X,40):LL1: PTĺDE$:LL(DE$)39:(L)LL(L)1 :LL1:L1930PTİ3600* :D$"PR#0":3570H A$"MONSTERS":F$A$:75:3500 LIST STUFF 1 NGS R C$"LIST":500:N%(TY)ĺ"NONE OF THAT TYPE TO PRINT!":A12000::100p TYPE3100,3200,3300,3400 A$"ROOMS":F$A$:65:MP73500:F$"ROOM.NAME":3500 A$"ARTIFACTS":F$A$:75:3500 PTĺD$"PR#1"9 ::L0:"LISTING EFFECTS"::MD(A):'14000:18000:31400:100= EDIT OLD ITEM C$"EDIT":500:700:RENORL%(TY):NW0:20000:TYPE2100,2200,1330,24004 EDIT ROOM >21000:1130 EDIT ART. 22000:1230` EDIT MON. j 24000:1430 LIST THIOOM 0`NA$"":DE$"":A1ND:RD%(A)0::LT1Nj11000:31100:18000:100c ADD ARTIFACT zNA$"":DE$"":NW112000:31200:18000:100 ADD EFFECT (DE$""213000:18000:100x ADD MONSTER NA$"":DE$"":A1MF:M%(A)16:958:"INPUT NUMBER OF "T$(TY)" TO "C$" (1-"N%(TY);:") ";A$:NO(A$):NO(NO):NO1NON%(TY)(C$"CREATE")ġ:100 ADD ITEM C$"ADD":500:N%(TY)N%(TY)1:NON%(TY):RENORL%(TY):UP1:TY1100,1200,1300,1400L ADD RA$(8)(I$)1I2$(I$,1)I2$:I$(I$,(I$)1):A$;:630gA$(8)(I$)I2$I$I2$:A$;:615xA$(8)615A$(27)I$I$I2$::TL1072:V:958:V:I$::A$(13)ĴI$""685:958::TL1072::(7);:630 GET NUMBER T WITH"::"(DEFAULT=1) :";A$:A$""A$"1"JXSW(A$):SWN%(4)ī5000b75:ASWN%(4):R$"MONSTERS,R"A:M$:A216:WT::D$l:"MONSTER #"A::" 1. THE DEAD BODY OF "M$::" 2. THE DEAD BODY OF THE "M$::"CHOOSE THE CORRECT PHRASE (1-2):"; vA$:A$"1"A$"2"5750s :A$("THE ",1,(A$"2")4):NA$"DEAD "M$:DE$"YOU SEE THE DEAD BODY OF "A$M$"." X18:A%(X)0::A%(2)1:A%(3)WT:XN%(2)1:REXRL%(2):NOX:N%(2)X:18000:31200::100 p QUIT !zCL$:UPĺO$"DESC":W$"DESC":A(34);NA$:D1ND:RD%(D)::LT:D$:i.yA1ND:RD%(A)::LT:D$:W$"ROOM.NAME,R"NO:(34);NA$:D$:|.y WRITE ART. .y75:W$"ARTIFACTS,R"NO:(34);NA$;(34):D18:A%(D)::D$:.z WRITE MONSTER /z75:W$"MONSTERS,R"NO:(34);NA$;(34):M READ ART. l-U75:R$"ARTIFACTS,R"NO:NA$:A14:A%(A)::MP6A%(2)2A%(2)3āA58:A%(A)::D$:-VA58:A%(A)0::D$:-] READ MON. -]75:R$"MONSTERS,R"NO:NA$:D1MF:M%(D)::D$:-|y WRITE ROOM '.y65:W$"ROOMS,R"NO:MP7ĺSC,R"RE:(34);DE$;(34):D$:2, N READ DESC O,*NR$"DESC,R"RE:DE$:D$:a,R READ ROOM ,R65:R$"ROOMS,R"NO:MP7ĄNA$:A1ND:RD%(A)::LT:D$:,RA1ND(MP6):RD%(A)::LT1:MP6LTRD%(ND1),&RD$:R$"ROOM.NAME,R"NO:NA$:D$:-UFRIENDLY + 100":~+27(M8MP7)(M9MP7)ĺ:" ART.#...WEAPON #":" 0.......NATURAL WEAPONS":" - 1.....WEAPONLESS":+F7"ENTER "MF$(M)": ";:I2$(M%(M)):TL5:600:M%(M)(I$):(M%(M))I$ĺ(7):(37):14150+P7:+PF WRITE DESC ,ZFW$"DETER ENTER VALUE FOR JUST ONE MEMBER OF GROUP":*7M3ĭMP7ĺ:" SINGLE MONSTERS - ENTER 1":" GROUP MONSTERS - ENTER # OF MEMBERS":+(7M11ĭMP7ĺ:" 1=ENEMY 2=NEUTRAL 3=FRIEND":" FOR RANDOM FRIENDLINESS,":" ENTER PERCENT LIKELY P7ĺ"** BE SURE TO ENTER *ALL* MONSTER NAMES IN A SINGULAR FORM **":~)6:I2$NA$:TLML:"ENTER NAME:":600:I$""14010)6NA$I$:"ENTER DESC--":I2$DE$:TL238:600:DE$I$::"MONSER #"NO" "NA$:)6M1MF3*7M1M6ĭMP7ĺ:" IF GROUP MONS;:12120!(U/F$(TP,AR5)" : ";I(X/I2$(A%(AR)):600:A%(AR)(I$)::|(0A$" : ";:I2$(A%(A)):TL5:600:A%(A)(I$):(2 EDIT EFFECT (2:"ENTER EFFECT #"NO:I2$DE$:TL238:600:DE$I$::(6 EDIT MONSTER I)6:"ENTERING MONSTER # "NO::MA%(2):AR58:AR8ĭTP8ĭMP7ĺ:" 1 = HIDDEN DOOR":V':/NWA%(AR)DF(TP,AR5)'D/MP7ĭ(AR7(TP4TP6TP7))AR6TP12ĺ:"OPEN = 1; CLOSED = 0":'N/AR6ĭTP2TP3ĺ:"1=AXE, 2=BOW, 3=MACE, 4=SPEAR, 5=SWORD": (S/TPNFĺ"FIELD #"AR" : "RTIFACT# + 100....INSIDE ARTIFACT#":"ROOM# + 200........EMBEDDED IN ROOM#":"ROOM# + 300........HIDDEN IN ROOM#"&&/MP7ĺ"ARTIFACT# + 500....INSIDE ARTIFACT#":"ROOM# + 200........EMBEDDED IN ROOM#":"-999...............WORN BY PLAYER";'0/:12500:TPALUE":A1:12500:A$"TYPE":A2::X0NF2:" "X" = "TY$(X);:XNFĺ23);X1" = "TY$(X1);%/:::12500:A$"WEIGHT":A3:12500:A$"ROOM":A4::"-1.................CARRIED BY PLAYER":MP6ĺ"(- MONSTER# - 1)...MONSTER# CARRYING IT"s&/MP7MP6ĺ"A;:I2$(LT):600:LT(I$):3$. EDIT ARTIFACT $.:"ENTERING ARTIFACT "NO:I2$NA$:TLAL::"ENTER ARTIFACT NAME:":600:I$""12010$.NA$I$:I2$DE$:TL238:"ARTIFACT DESCRIPTION:":600:DE$I$$.TL5:NWA%(1)50:A%(2)1:A%(3)3:A%(4)0\%/A$"V NEGATIVE NUMBER FOR UNUSUAL THINGS":11055X#-+" NEGATIVE #-1 TO -98 FOR PASSAGES"f#/+:D1ND#4+"MOVE "D$(D)"...";:I2$(RD%(D)):TL5:600:RD%(D)(I$):RD%(D)(RD%(D))(RD%(D))I$Ģ(37):11060$H+:MP672:"LIGHT (0 = NONE; 1 = NORMAL) "$DE$2" +"ENTER ROOM DESCRIPTION:":600:DE$I$"*+958:"FOR EACH DIRECTION ENTER THE ROOM # THATTHIS ROOM CONNECTS TO:"::" NO CONNECTION: 0":" EXIT TO MAIN HALL: -99":MP611055.#,+" DOORS: ARTIFACT # OF DOOR + "100(400(MP7)):MP7ĺ"14:N%(A)::LR:LM:LA:CL$!LKA$D$"LOCKEAMON.":A$"DESC":A$"ROOMS":A$"ARTIFACTS":A$"MONSTERS":MP7ĺA$"ROOM.NAME"!216,0:!* EDIT ROOM "+:"ENTERING ROOM "NO::I2$NA$:TLRL:"ENTER ROOM NAME:":600:I$""11010:NA$I$:TL238:I21MF:M%(M)::D$:)/ SETUP DATA i/ˆRLLR34:MLLM62:ALLA42:U$(95):MP7RL38:ML30:ALML/̈A%(8),RD%(ND1),T$(4):A14:T$(A)::NF:TY$(NF),F$(NF,3),DF(NF,3):A0NF:TY$(A):A203:F$(A,A2),DF(A,A2)::O0ֈMP7NF10:A02:F$(6,A),DF(6,A)::F$(4,2)"USER #7":F$(7,2)"READ FLAG":F$(8,3)"USER #8":MP6NF3g0MP7āA16:A$:0MF12:M%(MF),MF$(MF),MD(MF):A112:MF$(A),MD(A)::MP7āA110:A$:0MP7āA711:MF$(A),MD(A)::MF11:MF$(3)"# MEMBERS":MD(3)11D$(1"MP6 SUB V6 - REV. 3 SEP 95 p31000: EAMON ADVENTURER'S GUILD 7625 HAWKHAVEN DR. CLEMMONS, NC 27012 D$"FRE":A,A$:10 (A$,1)" "A$(A$,2):9 (A$)CPĺA$:KKK::52 KCP11:(A$,K,1)" "ĺ(A$,K1):A$(A$,(A$)K):T.START" (#30,North,South,East,West,Up,Down,Get,Drop,Look,Examine,Read,Light,Ready,Open,Put,Drink,Attack,Flee,Give,Request,Inventory,Blast,Heal,Power,Speed,Smile,Say,Free,Save,Resume 2#growls at,ignores,smiles atf <#lunge,tear,claw,swing,chop,swing:M%(M,A):::CZ$:NC:C$(NC):A1NC:C$(A): PRO1:R21:ND6:A02:SM$(A)::A05:A202:BV$(A,A2):::A04:W$(A): ZLL4:V%((LNR)L(NRL)NR):L0+ dQ$(34):M%(0,9)1:M%(0,14)3:DBNZNM:A$"":S$A$:CZ$A$:M%NM:A%NA:D$"STORE FAS/:NANZ4:A$(NA),A%(NA,8),M$(NM),M%(NM,14),SA%(3),S2%(3),SM$(2),BV$(5,2),WA%(5),W$(4),T(3) <A$"ARTIFACTS,L"K:A1NZ:S$"ARTIFACTS,R"A:A$(A):A218:A%(A,A2)::A%(A,2)MA%(A,2)ROLL1R F:A$"MONSTERS,L"K:M1NM:S$"MONSTERS,R"M:M$(M):A112< SET UP VAR. TABLE A0:MA:K72:W92:C%M:RO1:R%A:CP40:D$(4):DFM:OFM:NZM:NAM:NMM:A$D$"OPENEAMON.":S$D$"READEAMON.":R21:RM:SM:D%M:LM:ACM:WTM:A%M:M%M  INIT } 2CZ$D$"CLOSE":A$"DESC":S$"DESC":NR,NZ,A,NM:CZ$:K128R TRAP n6ECL$:"ERROR CODE "(222)" IN LINE # "(218)(219)256:(222)10ĺ"CAN'T SAVE, FILE LOCKED.":x6J6020RAGE,100,ROOM,0,WEIGHT,150,DEF. ODDS,0f5ARMOR,0,WEAPON #,0,ODDS TO HIT,60,WEP DICE,1,WEP SIDES,45 MONSTER DATA 7 & > 5ARMOR,0,WEAPON #,0,WEP. DICE,1,WEP. SIDES,4,FRIEND,35Đ DIRECTION NAMES 5ΐN ,S ,E ,W ,U ,D ,NE,NW,SE,SW 6@ ERRORMOR CLASS,0,TYPE,0,USER #7,0,USER #8,0v4,RE-USEABLE CONT.,KEY#,0,OPEN/CLOSED,0,#ITEMS INSIDE,0,#ITEMS CAN HOLD,546 6.0 DRINKABLE 4@CHANCES,50,HEAL AMOUNT,5,# OF USES,104 MONSTER DATA 4HARDINESS,16,AGILITY,16,FRIENDLINESS,65(5COUSER #8,0L3READABLE,1ST EFFECT,1,# OF EFFECTS,1,OPEN/CLOSED,1,USER #8,03DOOR/GATE,ROOM BEYOND,1,KEY #,99,STRENGTH,999,HIDDEN?,03KEY,USER #5,0,USER #6,0,USER #7,0,USER #8,03BOUND MONSTER,MONSTER#,0,KEY#,0,GUARD#,0,USER #8,0)4"WEARABLE,AWEAPON,ODDS,10,TYPE,5,DICE,1,SIDES,4W2ҌMAGIC WEAPON,ODDS,10,TYPE,5,DICE,1,SIDES,42܌CONTAINER,KEY#,99,STRENGTH,100,OPEN/CLOSED,0,USER #8,02挃LIGHT,COUNTER,999,USER #6,0,USER #7,0,USER #8,0 3DRINKABLE,HEAL AMOUNT,10,# OF USES,5,OPEN/CLOSED,0,U0):A110:D$(A):[1RL%(4):A14:RL%(A)A100100::MP7āA24:RL%(A)RL%(A)2:a1{1ROOM,ART.,EFF.,MONS.1 ART. DATA 1121GOLD,USER #5,0,USER #6,0,USER #7,0,USER #8,01TREASURE,USER #5,0,USER #6,0,USER #7,0,USER #8,0'2Ȍ52:9 :"WORD TOO LONG":& U -D$"FRE":D$"READEAMON.DESC,R"R:A$:D$:8[ 3i 4LL1:58s 6LL1 8LL2: :L23ı ;49168,0:"[MORE] ";:Z$::(37):6)::(37):L0:Z$(3)15:: <(12)::L0: >45:LL1:(37): @+ks the way!":99 GO 9 R3RO:ROR2:R%RO:3600 D$"READEAMON.ROOMS,R"RO:NX0:A1ND:R%(A):R%(A)0R%(A)NRĭV%(RO)2R%(A)(R%(A))NXNX(R%(A)0R%(A)NR)::NL:D$:LTNLLS:D$"READEAMON.ROOM.NAME,R"RO:RN$:D$:A,RN$:100 65. R2100R22003400:R20R2NR3500D SPECIAL MOVES  R299ĺ"You successfully ride off":" into the sunset.":DI0:32000> "You can't go that way!":99H GATE/DOOR R AR2100:A%(A,6)R2A%(A,5):3040f "The "A$(A)" bloc7500 T(1)MNM&oT(1)0520:M1NM:C%M:S,A,R%,M%(C%,5),C%,M%:MC%:MMNM::520OFM:M%(M,9)07400: SPECIAL STUFF 100 MOVE  R2R%(C):T(1)ĭNLLTA$"You can't do that with unfriendlies about!":%,M%:C%KNM:380>wKC%:M%(K,14)3ĭ(1).25DFK:KNMI|:480RC%1S,A,R%,M%(C%,5),C%,M%:M%(C%,14)1C%C%1:410DFC%:DFNM480KDF1NM:C%K:S,A,R%,M%(C%,5),C%,M%:C%KNM:430KC%:M%(K,14)1ĭ(1).25DFK:KNMMMNM::500'JM%(M,14)2Ă:500MM%(M,13)M%(M,1)(1)100M%(M,4)350:M$(M)" flees!":56:NXĺ"But can't find an exit!":56::500T8510:M%(M,5)R2:3650:490^OFM:DF0:M%(M,14)3400:T(3)M%(0,1)480:K1NM:C%K:S,A,R%,M%(C%,5),C00,25000,10000,11000,12000,13000,14000,15000,16000,24000,18000,18500_&"Attack non-enemy?"'" (Y/N)?";S$:S$""295:4920:S$"Y"S$"N"295:L1::, PICK FOE 6T(1)T(1)(T(1)0):T(1)500:51:M1NM:C%M:S,A,R%,M%(C%,5),C%,M%:MC%:(S2$,5):Z$"FROM "Z$"WITH "F1:S2$(S2$,6)F FS$A$:S2$""sAAA::S,S,V$,C$,C%:CC%:CCNC290"Valid Commands:"::C1NC:C$(C),;:::210F"CND13000:CND4000,5000,6500,6000,23000,19000,17000,20000,21000,22000,7000,8000,9015:1403,15:A$:GA$""275:CZ$A$:A2(A$):(A$,A,1)" "ĂeV$(A$,A1):S$(A$,A1)A$S$:F0:S2$"":A1(S$):(S$,A,1)" "Ă:270S2$(S$,A1):S$(S$,A1):Z$(S2$,3):Z$"TO "Z$"ON "Z$"IN "F1:S2$(S2$,4):2651Z$NZĺ"Your "A$(A)" is here.":52::210mA%(A,0)A%(A,0)1:RA100:62:"(You see "A$(A)".)":56::210"You see "A$(A)".":52:51:"Your command? ";A$:L0:51:A$""Ę1:A,A$:ID(A$,1)" "A$(A$,2):215A$""A$CZ$:(37)1:6:V%(RO)V%(RO)1:RRO:45[ M1NM:C%M:S,A,R%,M%(C%,5),C%,M%:MC%:MMNM::160 M%(M,0)M%(M,0)1:RM300:62:"("M$(M)" is here.)":56::160 M$(M)" is here.":52: A1NA:C%A:S,A,R%,A%(C%,4),C%,A%:AC%:C%ANA::210(Aows dim!":56r xSPSPSP1:SPM%(0,2)M%(0,2)2:"Your speed spell has just expired!":AM%(0,9):A070:56 zA03:S2%(A)SA%(A)S2%(A)S2%(A)1.1:S2%(A)SA%(A)S2%(A)SA%(A) }:LTĺ"It's too dark to see.":56:210 "You are":" "RN$:5C$(C)" "S$".":658 `"Nobody here by that name!"@ c56P d YOU SEE n51:LS120:A%(LS,5)A%(LS,5)1:MA%(LS,5):Mĺ"Your "A$(LS)" has gone out!":LS0:LTNL:99 sM10ĺ"Your "A$(LS)" is almost out!":56:120 uM20ĺ"Your "A$(LS)" gr56:300 A8:100# B8:300. C8:51O EWTWTA%(A,3)(A%(A,4)1): FM%(0,9)A:M%(0,10)(EAAE)(EAAE)WA%(A%(A,6))A%(A,5)2M%(0,2): ZA$"The "A$(A)" is locked.":65 ["You don't have it and it's not here.":99 ^A$"You can't "MONS FOLLOW? SD%R3:K1NM:C%K:S,A,D%,M%(C%,5),C%,M%:KC%:KKNM::3650v$M%(K,14)3M%(K,5)RO::3650.M%(K,14)1ĭ(1)100M%(K,4)M%(K,5)RO8B SET UP T(X) LT(1)0:T(3)M%(0,1):K1NM:C%K:S,A,R%,M%(C%,5),C%,M%:KC%:KKNM::eVM%(K,14)RL%M%(K,3)(CH102)(M%(K,3)0):M%(K,14)1(RL%(1)100)(RL%(1)100)`XM%(K,14):T(X)T(X)M%(K,1):: GET 4900:S$"ALL"4100:HARO:4805:F94:ADBANZĺ"Dead bodies are best if left alone.":99420&`HI7600:RL%97ĺ"Missed!":56n&e"Fumbled!":52:RL%(1)1001:RL%36Wĺ"...Fumble Recovered.":56&jRL%61A$M$(OF)" drops "A$(W)"!":A%(W,4)RO:M%(OF,9)W1:WTWTA%(W,3)(DF):67&lA%(W,2)3A$"Sparks fly from "A$(W)"!":67['tA%(X,4)OF1:M%(OF,9)X:51$%.6%L DO BATTLE x%QHI0:WM%(OF,9):W07400:A%(0,7)M%(OF,11):A%(0,8)M%(OF,12)&SA$M$(OF)" "BV$(A%(W,6),(1)3)"s at "M$(DF)"...":8:" --- ";:RL%(1)1001:HI0:(RL%5RL%M%(OF,10)M%(DF,7))RL%96HI1$P 4$X(M%(OF,9))1:X0XNZĭA%(X,4)RO7460v$X0:W1NA:C%W:S,A,R%,A%(C%,4),C%,A%:WC%:WWNA::7460$A%(W,2)2A%(W,2)3Ă:7460$XĭA%(W,7)A%(W,8)A%(X,7)A%(X,8)Ă:7460$XW:%$D%K:XA$M$(OF)" picks up "A$(X)".":8:%(0,9):70:67#EAAE7360:((1)1001)M%(0,10)7360:A(EAAE1)1:AEAEA:M%(0,10)M%(0,10)A:A$M$(0)"'s Armour Expertise increased by "(A)"!":67#M%(DF,14)1300:M%(DF,3)1(M%(DF,14)3)25:M%(DF,14)0:3650:300$ MONS P/U WEAshatters!":56:M8300:20040h"A$"Wham!! You "("hitblast",TA31,3TA2)" the "A$(A)"!":66"M%(M,14)1İ294:S$"Y"100"OF0:DFM:7500:HI7360#UPWA%(M%(0,9),6):WA%(W)WA%(W)2:A$M$(0)"'s "W$(W1)" ability increased!":AM1ĺ"You must first drop it.":99[!MA%(A,2):M8M4ĺ"Why would you do that?":99!WM%(0,9):DA%(W,7):SA%(W,8):TA1D2:S5 "X5(M8):K6(M8):D20:A21D:D2D2(1)S1::A%(A,K)A%(A,K)D2:A%(A,K)1A%(A,K)0:A%(A,X)0:"The "A$(A)" (RO)2:"You find a secret passage "C$(A)"!":568 J RRO:45:300Y X ATTACK bM%(0,9)1ĺ"You have no weapon ready!":100 lTA0:4900:4700:F7300 v4804:F96:ADBANZİ69:"You hack the body to bits!":A%(A,4)0:300$!A%(A,4)ng special.":64"RM300:456DFM:7650:300Cd LOOK nF0:LT100:D%RO300:A1NZ:C%A:S,A,D%,A%(C%,4),C%,A%:AC%:C%ANZ:6530xA%(A,4)RO:F1:Fĺ"You found something!":562 A1ND:R%(A)0ĭR%(A)NRR%(A)(R%(A)):V%NL::"The "A$(A)" goes out.":543p EXAMINE cz4900:4804:F6050:A%(A,4)EMA%(A,4)ROANZĺ"This is your "A$(A)".":64A%(A,2)6ĺ"(There are "A%(A,7)" swallows left.)":56RA100:45:A%(A,0)1:3004700:Fĺ"You see nothi DROP ?4900:S$"ALL"5100:4801:F91:5200:300D%1:A1NA:C%A:S,A,D%,A%(C%,4),C%,A%:AC%:C%ANA:51205200:WT0:M%(0,9)1:64PAM%(0,9)M%(0,9)1#ZWTWTA%(A,3):A%(A,4)RO:A$(A)" dropped.":ALS52:LS0:LT%C%:A2A%(C%,4):A2WHA2HAA2EMFF1:AC%:(A$(A))SLXNA::[S,R:C%D%Ă:XNA::F1A$"Which "Q$S$Q$" do you mean?"::65$ GET S$ )LTġ:100.S$""ĺ:C$(C)" who or what";:S$::L0:491081:A,S$:ID:C%ı*zD%C%:XC%:M%(X,5)RO4760=FF1:F1MXT(M$(X))SLMX:jS,R:C%D%4730p ARTIF SEARCH HA1:WHHA:EMHA:4810HA1WHRO:EMRO200SL(S$):F0:C%0:D%0:S,S,S$,A$,C%:C%ıX1NAFDA%(A,2)10ĺ"is tied down!":52"taken.":A%(A,4)1:WTWTA%(A,3):M%(0,9)1ĭA%(A,2)2A%(A,2)3İ70::A$(A)" readied.":LL1:5452\ MONS SEARCH fSL(S$):F0:C%0:D%0:S,S,S$,M$,C%:C%ĭSL1ĭ(S$,1)"S"S$(S$,SL1):4710 p0:64EA1NA:C%A:S,A,R%,A%(C%,4),C%,A%:AC%:C%ANA::300jADBANZĂ:64:IGNORE BODIESz"4200::64h RESULTS OF GET |A$(A)" ";:A%(A,3)900A%(A,2)8ĺ"cannot be moved.":52WTA%(A,3)10M%(0,1)ĺ"is too heavy.":52$RL%957550:"...Weapon Broken!":52:A%(W,4)0:M%(OF,9)1:WTWTA%(W,3)(DF):RL%1051'y"Broken weapon hits user!":52'~RL%100DA%(W,7):SA%(W,8):DFOF:A1:7635'DA%(W,7)2:SA%(W,8):DFOF:A0:7635(UP(((1)1001)M%(OF,10)):M%(OF,10)M%(OF,10)2UPO(DA%(W,7):SA%(W,8):A1:RL%5ĺ"A hit! ---":52:7635("A critical hit!":52:RL%(1)1001:RL%51A0:7635(RL%86S1.5S:7635(RL%96D2D:7635(D3D:7635()D20:K1D:D2D2(S(1)1)::D2D2AM%(DF,8)216,0:"Load error "(222)::(222)6ĺ"There is no saved game.":L99:DI100:32000j6HD$"CLOSE":x68J LIGHT 6BJ4910:4801:F91:A%(A,2)5A%(A,5)1ĺ"It won't light!":646jJLT1:LSA:"You've lit the "A$(A)".":646 N OPEN B7*N4900:B70:A$(A)" readied.":64)5PF SAVE l5ZF"Save this game?":295:S$"Y"100:D$"STORESAVED.GAME":1005DH RESUME GAME 5NH"Resume saved game?":295:S$"N"1005XH185505bHCP:D$"RESTORESAVED.GAME":CZ$"":CP(231):ID(249):216,0:100Y6vHLE B4:M1NM:C%M:S,A,R%,M%(C%,5),C%,M%:MC%:MMNM::300q4:M$(M)" "SM$(M%(M,14)1)" you.":52::300}4> SAY 4>49004BA$"Okay, "Q$S$Q$".":664hB READY 4rB4900:4801:F91:A%(A,2)2A%(A,2)3ĺ"That isn't a weapon!":995r a loud sonic boom which echoes all around you.":66E36 SPEED f36SPĺ"Nothing happened.":6436S2:11500:M%(0,2)M%(0,2)2:SP((1)2510):AM%(0,9):A070:A$"You can feel the new agility flowing through you!":AM%(0,9):A070:664: SMI" ability increases!":6722-S2%(S)S2%(S).8:?2. HEAL 2.M0:S$""4700:FS$""96:M%(M,13)10150:S1:11500:M$(M)"'s health improves!":562.M%(M,13)M%(M,13)310(1):M%(M,13)M%(M,13)(M%(M,13)0):1015022 POWER 732A$"You heaSA%(S)D%(1)1001:W(((D%S2%(S))(D%5))(D%95))1,D%100A$"Spell backlash! You temporarily forget how to cast "C$(C)"!"::661-Wĺ"Nothing happened."::642 -D%(1)1001:D%S2%(S)S2%(S)S2%(S)2:SA%(S)SA%(S)2:A$M$(0)"'s "C$(C)LSĺ" (Providing Light)";<0'51::Wĺ" (Nothing)":56[0'MĺGO" gold pieces.":56o0'DFM:7650:300}0* BLAST 0+4900:4700:TA1:F7030:M%(M,14)1İ294:S$"N"1000 +S0:11500:"Direct hit!":56:S5:D2:DFM:A0:7635:736071,W0:M:7650:9140/' INVEN e/'M0:S$""10100:4900:4700:F96:M%(M,14)110100:MMM:15030/t'M$(M)" is carrying:":56:W0:D%M1:A1NA:C%A:S,A,D%,A%(C%,4),C%,A%:AC%:C%ANA:10130/'W1:" "A$(A);:AM%(M,9)ĺ" [Ready Weapon]";0'A14)3M%(M,3)100M%(M,14)(30A%(A,1)100)<.#3650:300.T$A$M$(M)" takes a drink and hands it back to you.":67:A%(A,7)A%(A,7)1:M%(M,14)3M%(M,3)(4060M%(M,13)M%(M,1))A%(A,6)0/^$M%(M,13)M%(M,13)A%(A,5):M%(M,13)M%(M,13)(M%(M,13)0):DF the money...":8:M%(M,14)3M%(M,3)300:M%(M,3)M%(M,14)X100:9140p-#"Okay.":56:AM%(0,9)M%(0,9)1-#A%(A,2)6ĭM%(M,13)A%(A,6)A%(A,7)9300-#69:A%(A,4)M1:M%(M,9)0ĭA%(A,2)2A%(A,2)3M%(M,9)A:M%(M,10)M%(M,10)A%(A,5)-.#M%(M,1):R21R2NR8510:$,(# GIVE ^,2#4900:K(S$):Kİ4801:Fĺ"You don't have it.":99,<#S2$""Ą"To whom?";S$::L0:S$""4920:S2$S$:9020,F#S$S2$:4700:F96:K9100:GOKĺ"You don't have that much!":99I-P#GOGOK:XK:A$M$(M)" takes(K,4)XA%(K,4)ROL+n:A%(DFDB,4)RO:KM%(DF,14):T(K)T(K)M%(DF,1):56Y+@ FLEE v+JT(1)ĺ"Calm down.":99+TNXĺ"There's no place to run!":99+hS$""8500:S,S,S$,C$,C%:DC%:DDND8500:R2R%(D):3040+4!8510:3500,>!R2R%((1)ND*"in pain.":560*"badly injured.":56b*"at death's door,":" knocking loudly.":54w* MONSTER DIES *M$(DF)" is dead!":DFġ:DI1:32000*2M%(DF,5)0:M%(DF,13)0:M%(DF,9)NAM%(DF,9)0M%(DF,9)M%(DF,9)1+7XDF1:K1NA:A%:D21ĺ"**Armour absorbs damage!":56])M%(DF,13)M%(DF,13)D2:M%(DF,13)M%(DF,1)7700)M$(DF)" is ";:(M%(DF,13)5M%(DF,1))2(M%(DF,13))7652,7655,7660,7665,7670,7675)"in perfect health.":56)"in good shape.":56*"hurting.":564804:F91:MA%(A,2):M820300:M494:A%(A,4)EMA%(A,4)ROe74NWA%(A,5):W0ĭA%(W,4)1907>NW0A$"[With the "A$(W)"]":677HN"Opened.":56:A$(A)" contained:":56:X07N CONT. 8NA$" ":D%100A:M1NA:C%M:S,A,D%,A%(C%,4),C%,A%:MC%:MM999:20130=8NA$A$A$(M)", ":X1:A%(M,4)ROZ8N:Xĺ" (Nothing.)":64w8NA$(A$,(A$)2)".":668LO DOOR 8VOA%(A,4)RO:A%(A,6)0A%(A,6)NZĭA%(A%(A,6),4)1909`OA%(A,6)NZ90:A%(A,6)0A$"[With the "A$(A%(A,6))"]":67AA:32320rF6~M(A%(A,1)((A%(A,2)0)CH10(A%(A,2)0))):M0ĺM" gold pieces for the "A$(A)".":54:TPTPMF@~:TP(TP):GO(GOTP)(GO0):51:"He pays you ";:TP1ĺ"nothing.":32340FJ~TP" gold pieces total."TGT~D$"CLOSE":A$D$"DELETE":D$"O$):M1MWM(M)Ģ(37):32100fEn}A%(V%(M),4)1:WW1:MW1W432090:V%(M)V%(W1):W432090 F,~60:L4:A$"You deliver your goods to Sam Slicker, the local buyer of treasure. He looks them over and pays you...":67:TP0:A1NA:A%(A,4)1Ă:Ain Hall, Lord William Missilefire approaches and says, "Q$"You have too many weapons -- 4 is the legal limit."Q$:8:59DZ}60:"Your weapons are:":56:A1W:4)A" - "A$(V%(A)):52::51:"Enter # of weapon to sell (1-"W")":52#Ed}" >";A$:M(A0::VC(}1:A1NA:A,A$(A)::ID:A14:V%(A)0::A$(0)"NONE":A58:A%(0,A)0:C2}W0:D%1:A1NA:C%A:S,A,D%,A%(C%,4),C%,A%:AC%:C%ANA::32080C<}A%(A,2)2A%(A,2)3WW1:V%(W)A:A%(A,4)0CF}}DP}W532300:60:A$"As you enter the Ma,L64":D$"OPENEAMON.ROOM.NAME,L64":3B} DONE SB }:59:SPM%(0,2)M%(0,2)2B}DI32040:60:"Now what?"::"1. Resume the saved game":"2. Start over":"3. Give up and accept death."C}:"Enter 1-3: ";A$:K(A$):K118520:D$"CLOSE":K33250)2:EAEA30$AyNANZANZ1:70xAyIDāA1NZ:A,A$(A)::M1NM:A,M$(M)::A1NC:A,C$(A)::A02:A,SM$(A):AyIDāA05:A202:A,BV$(A,A2):::A04:A,W$(A):AyA%NA:60:24:31150:3500&ByD$"OPENEAMON.DESC,L256":D$"OPENEAMON.ROOMS231):ID(249):ID:IDįP,:D$(4)v@^yWNZ1NA:KW:A$A$(W):C%0:S,S,A$,A$,C%:AC%:C%ANZAK::WWW:31090@hy(A$(A))(A$)A$(A)A$(A)"#":31070@ry:M(AC2):M2ACM%(0,8)1:EA5A|yMM%(0,8)M%(0,8)M:EAEAM10:M3M%(0,8)M%(0,8%(0,2),CH:A03:SA%(A):S2%(A)SA%(A)::A15:WA%(A)::AE,SE$,GO,BA,AC?@yNANZ:ANZ1NZ4:A$(A),A%(A,6),A%(A,5),A%(A,7),A%(A,8)?JyA$(A)""A$(A)"NONE"NANA1:A%(A,2)2(A%(A,7)A%(A,8)20):A%(A,3)2:A%(A,4)1:WTWT2$@Ty:D$"CLOSE":CP(562338Ĺ768,(103):769,(104):103,34:104,9:2337,0:"RELOCATING...":D$"-MAIN.PGM">,y34000:D$"RESTOREFAST.START":X(768):K(769):D$"BLOADSEARCH.RTN":D$"-EAMON.UTILS":768,X:769,KL?6yD$"OPENFRESH.MEAT":D$"READFRESH.MEAT":RE,M$(0),M%(0,1),MS$A$:WHM1:HAWH:EMWH:4810:FA$M$(M)" doesn't have it.":65=aMMM:M%(M,14)315030::MM1:"Okay.":56:4220:AM%(M,9)M%(M,9)1=aRA100:A%(A,0)45:A%(A,0)1:300=y INIT Y>"y216,0:D$(4):(26)"1":(21):::(103)(104)2%(K,4)ROĺ"You don't have the key!":99f<]A$"You have freed "M$(M):KA$A$" with the "A$(K)<]A$A$".":M%(M,5)RO:A%(A,4)0:3650:6645:LL1:(37): VERSION 8&REV. 14 NOV 94 t31000: EAMON ADVENTURER'S GUILD 7625 HAWKHAVEN DR. CLEMMONS, NC 27012 D$"FRE":A,A$:10 (A$,1)" "A$(A$,2):9 (A$)CPĺA$:KKK::52 KCP11:(A$,K,1)" "ĺ(A$,K1):A$(A$,(A$)NM:C%K:S,A,D%,M%(C%,5),C%,M%:KC%:KK999::D%X:BM%(K,11)100RLM%(K,11)100(CH10)2:X21(RL100(1))(X22RL200(1)):M%(K,11)X2VWM%(K,11):T(W)T(W)M%(K,1)M%(K,3)::D%X: GET 4900:S$"ALL"4200:HARO:4805:F94:%(A)0R%(A)NR)::NL:D$:LTNLLS:A,RN$:100A ENEMY? T(1)0:T(3)M%(0,1):XD%:D%R3:K1NM:C%K:S,A,D%,M%(C%,5),C%,M%:KC%:KK999:3640$M%(K,11)3M%(K,5)RO::3640.M%(K,11)1ĭ200(1)M%(K,4)M%(K,5)RO398D%RO:K1BA:AC:A14:WV%(A):A$(W):A%(W,6):A%(W,5):A%(W,7):A%(W,8):xI0D$"OPEN"A$:D$"WRITE"A$:M$(0):RE:D$"CLOSE"I103,(768):104,(769):(103)(104)2561,0:D$"-MAIN.HALL"IЄ 80 COL? .Jڄ:49168,0:"80 COLUMN DISPLAY? ";:Z$:Z$:Z$"Y000,3000,3000,4000,5000,6500,6000,7000,8000,9000,10000,11000,12000,13000,14000,15000,16000,23000,17000,18000,19000,20000,21000,22000,24000,25000,26000,27000,28000,18500,20500&"Attack non-enemy?"'" (Y/N)?";S$:S$""295:L1::4920, PICK FOE j6T(1)T(1)(T(1)0):T(1)500:51:D%RO:M1NM:C%M:S,A,D%,M%(C%,5),C%,M%:MC%:MM999::500JM%(M,11)2Ă:500MM%(M,3)1ĭM%(M,13)M%(M,1)(1)100M%(M,4)ĺM$(M)" flees!":54:M%(M,5)0:M2M:3600:MM2::500JOM%(M,3)1340:(M%(MRM600:45:DFM:M%(M,3)1M%(M,13)0ĺ"They are ";:7652:300Z DFM:D20:7637:300g d LOOK nLT100:RRO:45:300 X ATTACK bM%(0,8)1ĺ"You have no weapon ready!":100 lTA0:4900:4700:F7300)!vHARO:4805:F96:MA%(A,2):1z4900:4804:F6050:A%(A,4)EMA%(A,4)ROXANZĺ"This is your "A$(A)".":64A%(A,8)A%(A,8)(A%(A,2)8):A%(A,2)6ĺ"(There are "A%(A,6)" swallows left.)":56RA200:45:A%(A,0)1:3004700:Fĺ"You see nothing special.":64A 200:300ND%1:A1NA:C%A:S,A,D%,A%(C%,4),C%,A%:AC%:C%A999:5120X5200r:WT0:M%(0,8)1:64PAM%(0,8)M%(0,8)1ZWTWTA%(A,3):A%(A,4)RO:A$(A)" dropped.":ALS52:LS0:LTNL:56:"The "A$(A)" goes out.":56p EXAMINE X999::!S,R:C%D%Ă:]X999::F1A$"Which "Q$S$Q$" do you mean?"::65cr$ GET S$ )LTġ:100.S$""ĺ:C$(C)" who or what";:S$::L0:491081:A,S$:ID: DROP 51:4900:S$"ALL"5100:4801:F91:51MXS$M$(X)MX:2S,R:C%D%47208N ARTIF SEARCH jHA1:WHHA:EMHA:4810tHA1WHRO:EMRO2004600:F0:C%0:D%0:S,S,S$,A$,C%:C%ıX1NA D%C%:A2A%(C%,4):A2WHA2HAA2EMFF1:AC%:(A$(A))SL SL(S$)CAH(SY$,SL)S$(SY$,SL)S$S$A$(SY):GR[\ MONS SEARCH kaWHRO:HA1fF0:C%0:D%0:S,S,S$,M$,C%:C%ĭ(S$)1ĭ(S$,1)"S"S$(S$,(S$)1):4710kC%ıpD%C%:XC%:M%(X,5)HAM%(X,5)WH4770FF1:FA%(A,3)900ĺ"Don't be absurd.":52bA$(A)" ";:WTA%(A,3)10M%(0,1)ĺ"is too heavy.":52A%(A,2)10ĺ"is tied down!":52"taken.":A%(A,4)1:WTWTA%(A,3):M%(0,8)1ĭA%(A,2)2A%(A,2)3M%(0,8)A:A$(A)" readied."52 SYNONYMSC%:KK999::D%X:JVWM%(K,11):T(W)T(W)M%(K,1)M%(K,3)::D%X:V GET 4900:S$"ALL"4200:HARO:4805:F94:4300:64hD%RO:A1NA:C%A:S,A,D%,A%(C%,4),C%,A%:AC%:C%A999::300rA%(A,3)900ĺA$(A)": ";|4300::64'LS:A,RN$:100  ENEMY? |T(1)0:T(3)M%(0,1):XD%:D%R3:K1NM:C%K:S,A,D%,M%(C%,5),C%,M%:KC%:KK999:3640$M%(K,11)3M%(K,5)RO::3640.M%(K,11)1ĭ200(1)M%(K,4)M%(K,5)RO38D%RO:K1NM:C%K:S,A,D%,M%(C%,5),C%,M%:Kt way!"G$:99!H GATE/DOOR ZR AR2500:A%(A,8)03390:A%(A,6)R2A%(A,5):3040f "The "A$(A)" blocks the way!":99 GO  R3RO:ROR2:3600D$"READEAMON.ROOMS,R"RO:NX0:RN$:A1ND:R%(A):NXNX(R%(A)0R%(A)NR)::NL:D$:LTNL6)07400:$ SPECIAL STUFF -100: MOVE z R2R%(C):T(1)ĭNLLTĺ"You can't turn your back here!":99 R25003400:R20R2NR3500 SPECIAL MOVES  R299ĺ"You return to the Main Hall.":DI0:32000> "You can't go thaNM480FM2DF1NM:C%M2:S,A,D%,M%(C%,5),C%,M%:C%M2999:430sM2C%:M%(M2,11)1(1).25DFM2:M2999y7500T(1)M999:MC999:D%RO:M1NM:C%M:S,A,D%,M%(C%,5),C%,M%:MC%:MM999::520OFM:M%(M,8)1M%(M,MCMCM%(M,3):M%(M,11)34005hT(3)M%(0,1)480vrD%RO:M21NM:C%M2:S,A,D%,M%(C%,5),C%,M%:C%M2999:380wM2C%:M%(M2,11)3(1).25DFM2:M2999|:480C%1:D%ROS,A,D%,M%(C%,5),C%,M%:M%(C%,11)1C%C%1:410DFC%:DF,12)M%(M,3))M%(M,12)(1)100M%(M,4)MR%(1)M%(M,3)1:MR%" "M$(M);PMR%ĺ(" flees!s flee!",1(MR%1)7,7):54:M%(M,3)M%(M,3)MR%:M%(M,5)M%(M,5)(M%(M,3)0):M2M:3600:MM2:MR%0:M%(M,5)Ă:500TMC1:M%(M,3)8MCM%(M,3)8^OFM:DF0:M8M4ĺ"Why would you do that?":99Y!WM%(0,8):DA%(W,7):SA%(W,8):TA1D2:S5v!X7:K6:M4XX1:KK1!D20:A21D:D2D2(1)S1::A%(A,X)A%(A,X)D2:A%(A,X)1A%(A,X)0:A%(A,K)0:A%(A,7)1:"The "A$(A)" shatters!":64P"A%(A,8)A%(A,8)(M8):A$"Wham!! You "("hitblast",TA31,3TA2)" the "A$(A)"!":66s"M%(M,11)1İ294:S$"Y"100"OF0:DFM:7500:HI7360"HIĭUPWA%(W2)WA%(W2)2#M%(DF,11)1DF300:M%(DF,11)1M%(DF,11)1(M%(DF,11)3)150:R3RO:3600:3:M$(M)" is carrying:":54:W0:D%M1:A1NA:C%A:S,A,D%,A%(C%,4),C%,A%:AC%:C%A999:101300'W1:" "A$(A);:AM%(M,8)ĺ" [Ready Weapon]";0'ALSĺ" (Providing Light)";0'A%(A,2)12İ105000'51::Wĺ" (Nothing)":56 1'MĺGO" gold p13)0):DFM:D20:7637:9120,/' INVEN p/'S$""10060:4900:4700:F96:M%(M,11)310100:MMM:15030/L'M0:M2M:D%999:A1NA:C%A:S,A,D%,A%(C%,4),C%,A%:AC%:C%A999::10100/V'M2M21:M$(M)" is wearing:":56/`'" "A$(A):52:d0t')A<.#M%(M,11)3M%(M,11)100M%(M,11)(30A%(A,1)100)Q.#R3RO:3600:300.T$A$M$(M)" takes a drink and hands it back to you.":8:A%(A,6)A%(A,6)1:M%(M,11)3M%(M,11)14060M%(M,13)M%(M,1)/h$M%(M,13)M%(M,13)A%(A,5):M%(M,13)M%(M,13)(M%(M,ave that much!":99q-d#GOGOK:M%(M,11)3M%(M,11)101M%(M,11)K100:A$M$(M)" takes the money...":8:9120-x#"Okay.":56:AM%(0,8)M%(0,8)1-#A%(A,2)6ĭM%(M,13)A%(A,6)A%(A,7)9300.#69:A%(A,4)M1:M%(M,8)0ĭA%(A,2)2A%(A,2)3M%(M,8""8500:S,S,S$,C$,C%:DC%:DDND8500:R2R%(D):3040_,4!R2R%(ND(1)1):R21R2NR8500i,>!3500v,(# GIVE ,2#4900:K(S$):Kİ4804:F91,P#S2$""Ą"To whom?";S$:L1::4920:S2$S$:9040-Z#S$S2$:4700:F96:K9080:GOKĺ"You don't h12):M%(DF,13)0:A21NA:A%(A2,4)DF1Ă:7750E+<A%(A2,4)RO:+FA%(DF+X-1,4)=RO:REM DEAD BODY, X = ART # OF 1ST BODY+WM%(DF,11):T(W)T(W)M%(DF,1):56+@ FLEE +JT(1)ĺ"Calm down.":99+TNXĺ"There's no place to run!":999,hS$":56*"ok.":56'*"hurt.":56>*"badly hurt.":56Z*"gravely injured.":56l*"dying.":56* MONSTER DIES *"dead!":M%(DF,3)1M%(DF,3)M%(DF,3)1:M%(DF,13)0:7900*(DFġ:DI1:320003+2M%(DF,8)1:M%(DF,5)0:M%(DF,3)M%(DF,d!":564)D21ĺ" Blow glances off armor!":56<)51Y)52:M%(DF,3)1ĺ"One ";l)M$(DF)" is ";)M%(DF,13)M%(DF,13)D2:M%(DF,13)M%(DF,1)7700)M%(DF,13)5M%(DF,1)2(M%(DF,13)0)7652,7655,7660,7665,7670,7675*"in perfect health.51,5);:RL5ĺ"A hit!":7633U("Well struck!":52:R2100(1):R251A0:7633r(RL1.5:R285RL2:7633(R295RL3:7633(R2100RLM%(DF,1)(SRLS )52:D20:K1D:D2D2S(1)::D2(D2AM%(DF,7)):D21ĭM%(DF,7)ĺ" Blow turneOF,8)1:(1).554O'y" Weapon hits user!":56:DFOF:(R100)17605,7610'OFUP(100(1)WMWA%(W2)):(1)100WA%(W2)ĭ(EA)10(1)AEACACAEAE2:EAAEACAC'DM%(OF,9):SM%(OF,10):W0DA%(W,7):SA%(W,8) (A1:(" *** +++ ",(DF0) drops "A$(W)"!":8:WTWT((OF0)A%(W,3)):A%(W,4)RO:M%(OF,8)W1:51z&lA%(W,2)3ĺ"Sparks fly from "A$(W)"!":56&oR957545&qR91A%(W,8)A%(W,8)1:A%(W,8)ĺ" Weapon damaged!":56't" Weapon broken!":WTWT((OF0)A%(W,3)):A%(W,4)0:M%((1)3)"s at "M$(DF)"...":8T%W52:RL100(1):(RL5RLWM)RL97HI1:7600{%[A20:M%(DF,8)0A2A%(M%(DF,8),6)%`RL97Wĺ" --- "RB$(A2,(1)2)"ed!":56%e" ...A fumble!":52:R100(1):R41ĺ" Recovered.":56K&jR81A$" "M$(OF)"XA$M$(OF)" picks up "A$(X)".":8:A%(X,4)OF1:M%(OF,8)XI$.51[$L DO BATTLE y$QHI0:WM%(OF,8):W07400$SWM502(M%(OF,2)M%(DF,2)M%(OF,7)M%(DF,7)):W0WMWMA%(W,5)2:OF0WMWMWA%(W2)4EA!%VAA%(W,6)(W0):A$M$(OF)" "BV$(A,00# MONS P/U WEAP J#KD%:XM%(OF,6):X0XNZĭA%(X,4)RO7460#D%RO:X0:M21NA:C%M2:S,A,D%,A%(C%,4),C%,A%:M2C%:M2M2999::7460#A%(M2,2)2A%(M2,2)3Ă:7460#XĭA%(M2,7)A%(M2,8)A%(X,7)A%(X,8)Ă:7460#XM2:A$$D%K:ieces.":56&1'DFM:D20:7637:300=1) WHAT'S INSIDE? [1)A%(A,6)ĺ" (Closed)";:1)51:"(This contains:)":52:XD%:OF0:D%500A:A21NA:C%A2:S,A,D%,A%(C%,4),C%,A%:A2C%:C%A2999:105401")" --- "A$(A2):52:OFOF12,):OFİ51:"(Nothing.)":56!26)D%X:(37):/2* BLAST w2+S0:TA1:11500:4900:4700:F7030:M%(M,11)1İ294:S$"Y"1002 +"Direct hit!":56:S5:D2:DFM:A0:7635:642,W0:SA%(S)RL100(1):W(((RLS2%(S))(RL5))(RL95))[3,RL100A$"Spell backlMM1:"Okay.":56:4310:AM%(M,8)M%(M,8)18@a64E@e WEAR @e4900:HA1:WHRO:EM999:4810:F94:A%(A,4)EM26100:A%(A,2)1194:A%(A,5)26080:A%(A,5)1SH26100@eA%(A,5)1SHA:M%(0,7)M%(0,7)1:26080AeAR026100:ARA:M%(0,7)A$A$".":M%(M,5)RO:A%(A,4)0:8:R3RO:3600:64C?a REQUEST Z?a4900:A$S$:S$S2$?aS$""Ą"From whom?";S$:4920:L0::25020?a4700:F96:S$A$:WHM1:HAWH:EMWH:4810:FA$M$(M)" doesn't have it.":8:990@aMMM:M%(M,11)215030::] FREE >]4900:4804:F94:A%(A,2)1094:MA%(A,5):KA%(A,6):WA%(A,7):WĭM%(W,5)ROĺM$(W)" won't let you do that!":64>B^KĭA%(K,4)1A%(K,4)ROĺ"You don't have the key!":99>V^A$"You have freed "M$(M):KA$A$" with the "A$(K)3?`^A,6)1:M%(0,13)M%(0,13)A%(A,5):"You feel "("betterworse",(A%(A,5)0)61,6)"!":M%(0,13)0M%(0,13)0=|V56:M0:56:10150=Y READ =Y4900:4804:F94:A%(A,2)794:A%(A,7)92:"It says:":56=YX1A%(A,6):RA%(A,5)399X:45::300 >%(A,2)1294:A%(A,6)92:A%(A,7)A%(A,8)ĺ"It's full.":64<0RWTWT(A%(M,4)1)A%(M,3):A%(M,4)500A:A%(A,7)A%(A,7)1:"Done.":64 SAY 5>4900"6BA$M,13)ĺM$(M)"'s health improves!":56n4/M%(M,13)M%(M,13)310(1):M%(M,13)M%(M,13)(M%(M,13)1):10150|42 POWER 42S3:11500:A$"You hear a very loud sonic boom that echoes through the tunnels.":6646 SPEED 56S2:11500:SPĺ"Nothing hash!! Your ability to cast this spell temporarily diminishes!":S2%(S)S2%(S)10::8:64~3-Wĺ"Nothing happened."::643 -RL100(1):RLS2%(S)S2%(S)S2%(S)2:SA%(S)SA%(S)23-S2%(S)S2%(S).8:3. HEAL '4.S1:M0:11500:S$""4700:M%(M%(0,7)AC22AeA%(A,4)999:A$(A)" worn.":64YAe"You're already wearing one!":64hAxi REMOVE Ai4900:HA999:EMHA:WHHA:4810:F27500AiASHM%(0,7)M%(0,7)1:SH0AiAARM%(0,7)M%(0,7)A%(A,5)2:AR0BiA%(A,4)1:A$(A)" removed.":64Blk CONT #BvkA$S$:S$S2$RBkS$""Ą"From what?";S$:4920:L0::27520Bk4804:F91:MA:S$A$:WHA500:HAWH:EMWH:4810:Fĺ"I don't understand.":99BkA%(M,6)A$"The "A$(M)" is closed.":8:99 CkA%(A,4)RO:A%(M,7)A%(M,7)1:"RemoA1NA:A%(A,4)1Ă:32155rP}MA%(A,1)((A%(A,2)0)CH10(A%(A,2)0)):A$(A)" is worth "M".":52:TPTPM:P}TP(TP):51:"He pays you "TP" gold pieces.":56:GO(GOTP):GO0GO05Q}D$"CLOSE":A$D$"DELETE":D$"OPENFRESH.MEAT":D$"CLOSE":A$"F")":52@On}" >";A$:M(A$):M1MWM(M)Ģ(37):32110Ox}A%(V%(M),4)1:WW1:MW1W432100:V%(M)V%(W1):W432100P}60:L4:" You sell your goods to the local buyer of treasure (under the sign of 3 balls)."::A%(SH,4)0:A%(AR,4)0:TP0:0:60:A$"As you enter the Main Hall, Lord William Crankhandle approaches and says, "Q$"You have too many weapons -- 4 is the legal limit."Q$:8:59 Od}60:"Your weapons are:":56:A1W:4)A" - "A$(V%(A)):52::51:"Enter # of weapon to sell (1-"W}A1NA:A%(A,4)999A%(A,4)1GM}:A1NA:A%(A,4)500Ă:32060lM(}A%(A%(A,4)500,4)1A%(A,4)1rM2}M<}W0:D%1:A1NA:C%A:S,A,D%,A%(C%,4),C%,A%:AC%:C%A999::32090MF}A%(A,2)2A%(A,2)3WW1:V%(W)A:A%(A,4)0MP}NZ}W53214ge,jab,swing,chop,stab]L|Miss,Miss,Parri,Miss,Miss,Miss,Parri,Miss,Parri,Miss,Parri,MissL|D$"OPENEAMON.DESC,L242":D$"OPENEAMON.ROOMS,L"LR:L} DONE L }:59:SPM%(0,2)M%(0,2)2L}DI032500:1:A1NA:A,A$(A)::ID:A14:V%(A)0:#Mflee,give,inventory,blast,heal,power,speed,smile,say,read,ready,save,light,open,put,drink,free,request,wear,remove,use,resume,closeK|Leather,Chain,Plate,growl,look,smileL|lunge,tear,claw,swing,chop,swing,shoot,shoot,shoot,swing,swing,swing,stab,lun1NM:A,M$(M)::A1NC:A,C$(A):J8|M1NM:M%(M,11)100RLM%(M,11)100(CH10)2:X1(RL100(1))(X2RL200(1)):M%(M,11)XJ|:A$"":S$"":CZ$"":L0:M%NM:A%NA:31960:3500K|34,north,south,east,west,up,down,get,drop,look,examine,attack,1?IyM%(0,7)D%(SH0):M%(0,11)3:EA0:AEACACEAAEACACIyRO1:R21:W20:ND6:A02:SM$(A)::A05:A202:BV$(A,A2):::A05:A201:RB$(A,A2)::Iy(12)::24:W2A%(M%(0,8),6):LL4:V%((LNR)L(NRL)NR)%JyIDāA1NA:A,A$(A)::MA)A$(A)"#"Hy:ID:D%(AC2):D%NANA1:ARNA:A$(NA)SM$(D%1)" armor":A%(NA,2)11:A%(NA,3)D%7:A%(NA,4)999:WTWTD%7:A%(NA,5)D%2IySH((AC2)AC2):SHNANA1:SHNA:A$(NA)"shield":A%(NA,2)11:A%(NA,3)10:A%(NA,4)999:WTWT10:A%(NA,5)(A)""A$(A)"NONE"NANA1:A%(A,2)2(A%(A,7)A%(A,8)25):A%(A,3)2:A%(A,4)1:WTWT2Gry:CZ$:M%(0,8)NZ1:A02:SM$(A)::CP(231):ID(249):1:W2NZ1NAG|yA$A$(W2):SL(A$):C%0:S,S,A$,A$,C%:AC%:C%ANZA999:31110Hy(A$(A))SLA$(,12)M%(M,3)::CZ$:NC:C$(NC):A1NC:C$(A):FTyD$"OPENFRESH.MEAT":D$"READFRESH.MEAT":RE,M$(0),M%(0,1),M%(0,2),CH:A03:SA%(A):S2%(A)SA%(A)::A15:WA%(A)::AE,SE$,GO,BA,ACF^yNANZ:ANZ1NZ4:A$(A),A%(A,6),A%(A,5),A%(A,7),A%(A,8)[GhyA$$(5,2),RB$(5,1),WA%(5)LE6y34000:"INITIALIZING...":(249)1įP,:D$(4)E@yA$"ARTIFACTS,L"K:A1NZ:S$"ARTIFACTS,R"A:A$(A):A218:A%(A,A2)::A%(A,2)MA%(A,2)ROLL12FJy:A$"MONSTERS,L"W:M1NM:S$"MONSTERS,R"M:M$(M):A111:M%(M,A)::M%(M'yA$D$"OPENEAMON.":S$D$"READEAMON.":CZ$D$"CLOSE":A0:M2:RO3:NA(768):NM(769):D$"BLOADSEARCH.RTN":D$"-EAMON.UTILS":768,NA:769,NME,yA$"DESC":S$"DESC":NR,NZ,A,NM,LR,W,K:CZ$:NANZ6:A$(NA),A%(NA,8),M$(NM),M%(NM,13),SA%(3),S2%(3),SM$(2),BVved.":64C`m USE BCjm///INSERT YOUR OWN SPECIAL STUFF HEREbCp"Try another command.":64oCy INIT C"y216,0:D$(4):(26)"1":(21):::(103)(104)2562338Ĺ768,(103):769,(104):103,34:104,9:2337,0:"RELOCATING...":D$"-MAIN.PGM"DRESH.MEAT":D$"STORESAVED.GAME":A$"SAVED.GAME":59AQ~32510Q~D$"CLOSE":(26)"1":(21)::5:"(INSERT EAMON MASTER DISKETTE, THEN"14)"HIT THE 'C' KEY) ";:49168,0:A$:A$:A$"C"32510RD$"PREFIX/":D$"PREFIX":S$:D$"PREFIX"S$:D$"VERIFYCHARACTERS":216,0jRA$"THE.ADVENTURER":S$"CHARACTERS,":DIĺD$"OPEN"A$:D$"CLOSE":D$"DELETE"A$:32900RD$"OPEN"S$"L150":D$"WRITE"S$"R"RE:M$(0):M%(0,1):M%(0,2):CH:A03:SA%(A)::A15:WA%(A)::AERACM%(0,7)2:SHACAC1OSSE$:GO:B:KK1"D20:A21D:D2D2(1)S1::A%(A,X)A%(A,X)D2:A%(A,X)1A%(A,X)0:A%(A,K)0:A%(A,7)1:"The "A$(A)" shatters!":64"A%(A,8)A%(A,8)(M8):A$"Wham!! You "("hitblast",TA31,3TA2)" the "A$(A)"!":66#M%(M,11)1İ294:S$"Y" ,SOUTH ,EAST ,WEST ,UP ,DOWN ,NORTHEAST,NORTHWEST,SOUTHEAST,SOUTHWESTr%ؐ WEAPON TYPES %␃AXE,BOW,CLUB,SPEAR,SWORD%쐲 ARMOR & CLOTHING %CLOTHES,SHIELD,LEATHER,CHAIN,PLATE &CLOTHING,OVERCLOTHES,SHOES,GLOVES,HEADWEAR,OF USES$ MONSTER DATA $HARDINESS,AGILITY,FRIENDLINESS,COURAGE,ROOM,WEIGHT,DEF. ODDS,ARMOR,WEAPON #,ODDS TO HIT,WEP. DICE,WEP. SIDES$ MONSTER DATA 7 & > $ARMOR,WEAPON #,WEP. DICE,WEP. SIDES,FRIEND?$Đ DIRECTION NAMES ]%ΐNORTH 100:RRO:45:300#!X ATTACK T!bM%(0,8)1ĺ"You have no weapon ready!":100q!lTA0:4900:4700:F7300!vHARO:4805:F96:MA%(A,2):M8M4ĺ"Why would you do that?":99!WM%(0,8):DA%(W,7):SA%(W,8):TA1D2:S5"X7:K6:M4XX1(A,2)8):A%(A,2)6ĺ"(There are "A%(A,6)" swallows left.)":56a RA200:45:A%(A,0)1:300 4700:Fĺ"You see nothing special.":64 RM600:45:DFM:M%(M,3)1M%(M,13)0ĺ"They are ";:7652:300 DFM:D20:7637:300 d LOOK !nLTAM%(0,8)M%(0,8)1}ZWTWTA%(A,3):A%(A,4)RO:A$(A)" dropped.":ALS52:LS0:LTNL:56:"The "A$(A)" goes out.":56p EXAMINE z4900:4600:4804:F6050:A%(A,4)EMA%(A,4)ROANZĺ"This is your "A$(A)".":64B A%(A,8)A%(A,8)(A%LTġ:100A.S$""ĺ:C$(C)" who or what";:S$::L0:4910T81:A,S$:ID:a DROP 51:4900:S$"ALL"5100:4801:F91:5200:300D%1:A1NA:C%A:S,A,D%,A%(C%,4),C%,A%:AC%:C%A999:51205200:WT0:M%(0,8)1:64PWHRO:EMRO200A4600:F0:C%0:D%0:S,S,S$,A$,C%:C%ıMX1NAD%C%:A2A%(C%,4):A2WHA2HAA2EMFF1:AC%:(A$(A))SLX999::S,R:C%D%Ă:X999::F1A$"Which "Q$S$Q$" do you mean?"::65$ GET S$ )0:D%0:S,S,S$,M$,C%:C%ĭ(S$)1ĭ(S$,1)"S"S$(S$,(S$)1):4710TkC%ıpD%C%:XC%:M%(X,5)HAM%(X,5)WH4770FF1:F1MXS$M$(X)MX:S,R:C%D%4720 ARTIF SEARCH HA1:WHHA:EMHA:4810HA1:52i"taken.":A%(A,4)1:WTWTA%(A,3):M%(0,8)1ĭA%(A,2)2A%(A,2)3M%(0,8)A:A$(A)" readied."q52 SYNONYMS SL(S$)CH(SY$,SL)S$(SY$,SL)S$S$A$(SY)::1:A,S$:IDR\ MONS SEARCH aWHRO:HA1IfF0:C%4300:64PhD%RO:A1NA:C%A:S,A,D%,A%(C%,4),C%,A%:AC%:C%A999::300mrA%(A,3)900ĺA$(A)": ";}|4300::64A%(A,3)900ĺ"Don't be absurd.":52A$(A)" ";:WTA%(A,3)10M%(0,1)ĺ"is too heavy.":52A%(A,2)10ĺ"is tied down!"$:Z$"Y"Z$"N"34010:Z$"Y"ĺD$"PR#3"::80:0:T䄙40:0:"DO YOU NEED A CAPS-ONLY DISPLAY?":"(Y/N) :";:A$:A$"Y"A$"N"34020:A$:A$"N"15:1:A:AC:A14:A$(V%(A)):A%(V%(A),6):A%(V%(A),5):A%(V%(A),7):A%(V%(A),8):S&D$"OPEN"A$:D$"WRITE"A$:M$(0):RE:D$"CLOSE"S103,(768):104,(769):(103)(104)2561,0:D$"-MAIN.HALL"SЄ 80 COL? 7Tڄ:49168,0:"80 COLUMN DISPLAY?";:Z$:Z100##OF0:DFM:7500:HI7360A#HIĭUPWA%(W2)WA%(W2)2#M%(DF,11)1DF300:M%(DF,11)1M%(DF,11)1(M%(DF,11)3)150:R3RO:3600:300# MONS P/U WEAP #KD%:XM%(OF,6):X0XNZĭA%(X,4)RO7460*$D%RO:X0:M21NA:C%M2:S,A,D%,A%(C%,4),C%,A%:M2C%:M2M2999::7460M$A%(M2,2)2A%(M2,2)3Ă:7460$XĭA%(M2,7)A%(M2,8)A%(X,7)A%(X,8)Ă:7460$XM2:$$D%K:XA$M$(OF)" picks up "A$(X)".":8:A%(X,4)OF1:M%(OF,8)X$.51$L DO BATTLE %QHI0:WM%(OF,8):ct hit!":56:S5:D2:DFM:A0:7635:64f2,W0:SA%(S)RL100(1):W(((RLS2%(S))(RL5))(RL95))2,RL100A$"Spell backlash!! Your ability to cast this spell temporarily diminishes!":S2%(S)S2%(S)10::8:642-Wĺ"Nothing happened."::6493 "A$(A);:AM%(M,8)ĺ" [Ready Weapon]";I1'ALSĺ" (Providing Light)";i1'51::Wĺ" (Nothing)":561'MĺGO" gold pieces.":561'DFM:D20:7637:3001* BLAST 1+S0:TA1:11500:4900:4700:F7030:M%(M,11)1İ294:S$"Y"100)2 +"DireT0L'M0:M2M:D%999:A1NA:C%A:S,A,D%,A%(C%,4),C%,A%:AC%:C%A999::10100{0V'M2M21:M$(M)" is wearing:":560`'" "A$(A):52:0t':M$(M)" is carrying:":54:W0:D%M1:A1NA:C%A:S,A,D%,A%(C%,4),C%,A%:AC%:C%A999:10130(1'W1:" nd hands it back to you.":8:A%(A,6)A%(A,6)1:M%(M,11)3M%(M,11)14060M%(M,13)M%(M,1)/h$M%(M,13)M%(M,13)A%(A,5):M%(M,13)M%(M,13)(M%(M,13)0):DFM:D20:7637:9120/' INVEN 0'S$""10060:4900:4700:F96:M%(M,11)310100:MMM:150300*.x#"Okay.":56:AM%(0,8)M%(0,8)1X.#A%(A,2)6ĭM%(M,13)A%(A,6)A%(A,7)9300.#69:A%(A,4)M1:M%(M,8)0ĭA%(A,2)2A%(A,2)3M%(M,8)A.#M%(M,11)3M%(M,11)100M%(M,11)(30A%(A,1)100).#R3RO:3600:300]/T$A$M$(M)" takes a drink a GIVE +-2#4900:K(S$):Kİ4804:F91_-P#S2$""Ą"To whom?";S$:L1::4920:S2$S$:9040-Z#S$S2$:4700:F96:K9080:GOKĺ"You don't have that much!":99.d#GOGOK:M%(M,11)3M%(M,11)101M%(M,11)K100:A$M$(M)" takes the money...":8:912T # OF 1ST BODY8,WM%(DF,11):T(W)T(W)M%(DF,1):56E,@ FLEE b,JT(1)ĺ"Calm down.":99,TNXĺ"There's no place to run!":99,hS$""8500:S,S,S$,C$,C%:DC%:DDND8500:R2R%(D):3040,4!R2R%(ND(1)1):R21R2NR8500,>!3500-(#  MONSTER DIES R+"dead!":M%(DF,3)1M%(DF,3)M%(DF,3)1:M%(DF,13)0:7900i+(DFġ:DI1:32000+2M%(DF,8)1:M%(DF,5)0:M%(DF,3)M%(DF,12):M%(DF,13)0:A21NA:A%(A2,4)DF1Ă:7750+<A%(A2,4)RO:,FA%(DF+X-1,4)=RO:REM DEAD BODY, X = ARM%(DF,13)M%(DF,13)D2:M%(DF,13)M%(DF,1)7700{*M%(DF,13)5M%(DF,1)2(M%(DF,13)0)7652,7655,7660,7665,7670,7675*"in perfect health.":56*"ok.":56*"hurt.":56*"badly hurt.":56*"gravely injured.":56*"dying.":56+33)R295RL3:76332)R2100RLM%(DF,1)=)SRLS)52:D20:K1D:D2D2S(1)::D2(D2AM%(DF,7)):D21ĭM%(DF,7)ĺ" Blow turned!":56)D21ĺ" Blow glances off armor!":56)51)52:M%(DF,3)1ĺ"One ";)M$(DF)" is ";3*):(1)100WA%(W2)ĭ(EA)10(1)AEACACAEAE2:EAAEACACu(DM%(OF,9):SM%(OF,10):W0DA%(W,7):SA%(W,8)(A1:(" *** +++ ",(DF0)51,5);:RL5ĺ"A hit!":7633("Well struck!":52:R2100(1):R251A0:7633)RL1.5:R285RL2:76(W)"!":56'oR957545X'qR91A%(W,8)A%(W,8)1:A%(W,8)ĺ" Weapon damaged!":56't" Weapon broken!":WTWT((OF0)A%(W,3)):A%(W,4)0:M%(OF,8)1:(1).554'y" Weapon hits user!":56:DFOF:(R100)17605,7610A(OFUP(100(1)WMWA%(W2)M%(DF,8),6);&`RL97Wĺ" --- "RB$(A2,(1)2)"ed!":56z&e" ...A fumble!":52:R100(1):R41ĺ" Recovered.":56&jR81A$" "M$(OF)" drops "A$(W)"!":8:WTWT((OF0)A%(W,3)):A%(W,4)RO:M%(OF,8)W1:51 'lA%(W,2)3ĺ"Sparks fly from "A$W07400k%SWM502(M%(OF,2)M%(DF,2)M%(OF,7)M%(DF,7)):W0WMWMA%(W,5)2:OF0WMWMWA%(W2)4EA%VAA%(W,6)(W0):A$M$(OF)" "BV$(A,(1)3)"s at "M$(DF)"...":8%W52:RL100(1):(RL5RLWM)RL97HI1:7600 &[A20:M%(DF,8)0A2A%(-RL100(1):RLS2%(S)S2%(S)S2%(S)2:SA%(S)SA%(S)2P3-S2%(S)S2%(S).8:]3. HEAL 3.S1:M0:11500:S$""4700:M%(M,13)ĺM$(M)"'s health improves!":563/M%(M,13)M%(M,13)310(1):M%(M,13)M%(M,13)(M%(M,13)1):1015032 POWER U42S3:11500:A$"You hear a very loud sonic boom that echoes through the tunnels.":66c46 SPEED 46S2:11500:SPĺ"Nothing happened.":6446M%(0,2)M%(0,2)2:SP((1)1026):"Your movements quicken!":644: SMILE 5:M1NM:M%(M,5)ROĂ:30BTyD$"OPENFRESH.MEAT":D$"READFRESH.MEAT":RE,M$(0),M%(0,1),M%(0,2),CH:A03:SA%(A):S2%(A)SA%(A)::A15:WA%(A)::AE,SE$,GO,BA,ACB^yNANZ:ANZ1NZ4:A$(A),A%(A,6),A%(A,5),A%(A,7),A%(A,8)*ChyA$(A)""A$(A)"NONE"NANA1:A%(A,2)2(A%(A,7)":(21):::(103)(104)2562338Ĺ768,(103):769,(104):103,34:104,9:2337,0:"RELOCATING...":D$"-MAIN.PGM"A'yNA(768):NM(769):D$"BLOADSEARCH.RTN":D$"-EAMON.UTILS":768,NA:769,NMA,yD$"RESTOREFAST.START"B6y34000:(249)1įP,:D$(4) wearing it.":994@iASHM%(0,7)M%(0,7)1:SH0]@iAARM%(0,7)M%(0,7)A%(A,5)2:AR0@iA%(A,4)1:A$(A)" removed.":64@`m USE @jm///INSERT YOUR OWN SPECIAL STUFF HERE@p"Try another command.":64@y INIT vA"y216,0:D$(4):(26)"126080:A%(A,5)1SH26100H?eA%(A,5)1SHA:M%(0,7)M%(0,7)1:26080s?eAR026100:ARA:M%(0,7)M%(0,7)AC2?eA%(A,4)999:A$(A)" worn.":64?e"You're already wearing one!":64?xi REMOVE @i4900:HA999:EMHA:WHHA:4810:Fĺ"You're notA$:WHM1:HAWH:EMWH:4810:FA$M$(M)" doesn't have it.":8:99>aMMM:M%(M,11)215030::MM1:"Okay.":56:4310:AM%(M,8)M%(M,8)1>a64>e WEAR ?e4900:HA1:WHRO:EM999:4810:F94:A%(A,4)EM26100:A%(A,2)1194:A%(A,5)4)ROĺ"You don't have the key!":99b=V^A$"You have freed "M$(M):KA$A$" with the "A$(K)=`^A$A$".":M%(M,5)RO:A%(A,4)0:8:R3RO:3600:64=a REQUEST =a4900:A$S$:S$S2$=aS$""Ą"From whom?";S$:4920:L0::25020G>a4700:F96:S$04:F94:A%(A,2)794:A%(A,7)92:"It says:":56c SAY {5>49005BA$"Okay, "Q$S$Q$".":8::3005hB READY 5rB4900:4801:F91:A%(A,2)2A%(A,2)3ĺ"That isn't a weapon!":99'6BM%(0,A%(A,8)25):A%(A,3)2:A%(A,4)1:WTWT2eCry:CZ$:M%(0,8)NZ1:CP(231):ID(249):1:W2NZ1NAC|yA$A$(W2):SL(A$):C%0:S,S,A$,A$,C%:AC%:C%ANZA999:31110Cy(A$(A))SLA$(A)A$(A)"#"NDy:ID:D%(AC2):D%NANA1:ARNA:A$(NA)SM$(D%1)" armor":A%(NA,2)11:A%(NA,3)D%7:A%(NA,4)999:WTWTD%7:A%(NA,5)D%2DySH((AC2)AC2):SHNANA1:SHNA:A$(NA)"shield":A%(NA,2)11:A%(NA,3)10:A%(NA,4)999:WTWT10:A%(NA,5)1DyM%(0,7)D%(SH0):M%(0,11)3:EA0:AEACACEAAEACAC0EyA$:A$"N"15:1:768):104,(769):(103)(104)2561,0:D$"-MAIN.HALL"INЄ 80 COL? Nڄ:49168,0:"80 COLUMN DISPLAY?";:Z$:Z$:Z$"Y"Z$"N"34010:Z$"Y"ĺD$"PR#3"::80:0:O䄙40:0:"DO YOU NEED A CAPS-ONLY DISPLAY?":"(Y/N) :";:A$:A$"Y"A$"N"34020:R"RE:M$(0):M%(0,1):M%(0,2):CH:A03:SA%(A)::A15:WA%(A)::AEfMACM%(0,7)2:SHACAC1MSE$:GO:BA:AC:A14:A$(V%(A)):A%(V%(A),6):A%(V%(A),5):A%(V%(A),7):A%(V%(A),8):M&D$"OPEN"A$:D$"WRITE"A$:M$(0):RE:D$"CLOSE"9N103,(14)"HIT THE 'C' KEY) ";:49168,0:A$:A$:A$"C"32510LD$"PREFIX/":D$"PREFIX":S$:D$"PREFIX"S$:D$"VERIFYCHARACTERS":216,0LA$"THE.ADVENTURER":S$"CHARACTERS,":DIĺD$"OPEN"A$:D$"CLOSE":D$"DELETE"A$:32900IMD$"OPEN"S$"L150":D$"WRITE"S$"you "TP" gold pieces.":56:GO(GOTP):GO0GO0K}D$"CLOSE":A$D$"DELETE":D$"OPENFRESH.MEAT":D$"CLOSE":A$"FRESH.MEAT":D$"STORESAVED.GAME":A$"SAVED.GAME":59K~325109L~D$"CLOSE":(26)"1":(21)::5:"(INSERT EAMON MASTER DISKETTE, THEN"" You sell your goods to the local buyer of treasure (under the sign of 3 balls)."::A%(SH,4)0:A%(AR,4)0:TP0:A1NA:A%(A,4)1Ă:32155J}M(A%(A,1)((A%(A,2)0)CH10(A%(A,2)0))):A$(A)" is worth "M".":52:TPTPM:3K}TP(TP):51:"He pays Q$:8:59zId}60:"Your weapons are:":56:A1W:4)A" - "A$(V%(A)):52::51:"Enter # of weapon to sell (1-"W")":52In}" >";A$:M(A$):M1MWM(M)Ģ(37):32110Ix}A%(V%(M),4)1:WW1:MW1W432100:V%(M)V%(W1):W432100J}60:L4:A,D%,A%(C%,4),C%,A%:AC%:C%A999::32090_HF}A%(A,2)2A%(A,2)3WW1:V%(W)A:A%(A,4)0eHP} IZ}W532140:60:A$"As you enter the Main Hall, Lord William Crankhandle approaches and says, "Q$"You have too many weapons -- 4 is the legal limit."";A$:K(A$):K118500:D$"CLOSE":K332500::oG}DI032500:1:A1NA:A,A$(A)::ID:A14:V%(A)0:G}A1NA:A%(A,4)999A%(A,4)1G}:A1NA:A%(A,4)500Ă:32060G(}A%(A%(A,4)500,4)1A%(A,4)1G2}.H<}W0:D%1:A1NA:C%A:S,00F|growl,look,smileRF|D$"OPENEAMON.DESC,L242":D$"OPENEAMON.ROOMS,L"LR:_F} DONE F }:59:SPM%(0,2)M%(0,2)2F}DI32020:60:"Now what?"::"1. Resume the saved game":"2. Start over":"3. Give up and accept death."3G}:"Enter 1-3: A02:SM$(A)::(12)::24:W2A%(M%(0,8),6)qEyIDāA1NA:A,A$(A)::M1NM:A,M$(M)::A1NC:A,C$(A):E8|M1NM:M%(M,11)100RLM%(M,11)100(CH10)2:X1(RL100(1))(X2RL200(1)):M%(M,11)XF|:A$"":S$"":CZ$"":L0:A%NA:31960:35