view 3rdparty/packages/raakatu/raakatu.asm @ 2558:5b465ca3ba67

assembles
author boisy
date Thu, 09 Sep 2010 12:04:43 +0000
parents 76b287c6111c
children df7a31c0f085
line wrap: on
line source

;##$CPU 6809
;##$OriginalBinary raakatu.bin

;##-
;##- Menu structure for CodeToWeb HTML generator
;##-
;##Menu     3                 "Engine"
;##MenuLink Start                    "Program Entry"
;##MenuLink GetKey                   "Get a Key"
;##MenuLink DecodeBuffer             "Decode Input Buffer"
;##MenuLink DecodeWord               "Decode Single Word"
;##MenuLink InputWordTables          "GAME VOCABULARY"
;##MenuLink RAM                      "RAM Usage"
;##MenuLink PrintPackedMessage       "Print Packed Message"
;##MenuLink PrintCharacterAutoWrap   "Print Character (with auto-wrap)"
;##MenuLink UnpackBytes              "Unpack 2 bytes into 3 characters"
;##MenuLink FeedbackPrompts          "Feedback Prompts"
;##MenuLink PhraseList               "List of phrase forms"
;##-
;##Menu     2                    "Virtual Machine"
;##MenuLink ProcessCommand             "Process a Direct or Common Command"
;##MenuLink CommandJumpTable           "VM Command Jump Table"
;##MenuLink RoomDescriptions           "Information for each room"
;##MenuLink ObjectData                 "Object data"
;##MenuLink GeneralCommands            "General command handling"
;##MenuLink HelperCommands             "List of helper commands each with an ID" 
;##-
;##Menu     1                   "Script Commands"
;##MenuLink Com00_MoveActiveObjectToRoomAndLook         "00: Move active object to room and print room description"
;##MenuLink Com01_IsObjectInPackOrRoom                  "01: Check if requested object is here (in pack or room)"
;##MenuLink Com02_CheckObjectIsOwnedByActive            "02: Check if object is owned by active object"
;##MenuLink Com03_IsObjectYAtX                          "03: Check if requested object at target location" 
;##MenuLink Com04_PrintSYSTEMOrPlayerMessage            "04: Print message if SYSTEM or Player"
;##MenuLink Com05_IsRandomLessOrEqual                   "05: If last random is less than or equal"
;##MenuLink Com06_Inventory                             "06: Print inventory"
;##MenuLink Com07_Look                                  "07: Print room description"
;##MenuLink Com08_CompareObjectToFirstNoun              "08: Compare object to first noun"
;##MenuLink Com09_CompareObjectToSecondNoun             "09: Command object to second noun"
;##MenuLink Com0A_CompareToPhraseForm                   "0A: Compare value to current phrase form"
;##MenuLink Com0B_Switch                                "0B: Switch-statement. Execute a script based on a compare function."
;##MenuLink Com0C_FAIL                                  "0C: FAIL"
;##MenuLink Com0D_ExecutePassingList                    "0D: Execute a list of commands as long as they succeed"
;##MenuLink Com0E_ExecuteFailingList                    "0E: Execute a list of commands as long as they fail"
;##MenuLink Com0F_PickUpObject                          "0F: Pick up object"
;##MenuLink Com10_DropObject                            "10: Drop object"
;##MenuLink Com11_Print1stNounShortName                 "11: Print 1st noun short name"
;##MenuLink Com12_Print2ndNounShortName                 "12: Print 2nd noun short name"
;##MenuLink Com13_PhraseWithRoom1st2nd                  "13: Process phrase with room, 2nd noun, then 1st noun"
;##MenuLink Com14_ExecuteCommandAndReverseReturn        "14: Execute a command and reverse the return"
;##MenuLink Com15_CheckObjBits                          "15: Check object bits"
;##MenuLink Com16_PrintVarShortName                     "16: Print var short name"
;##MenuLink Com17_MoveObjectXToLocationY                "17: Move object to new location"
;##MenuLink Com18_CheckVarOwnedByActiveObject           "18: Check var object owned by active object"
;##MenuLink Com19_MoveActiveObjectToRoom                "19: Move active object to room"
;##MenuLink Com1A_SetVarObjectTo1stNoun                 "1A: Set var object to first noun"
;##MenuLink Com1B_SetVarObjectTo2ndNoun                 "1B: Set var object to second noun"
;##MenuLink Com1C_SetVarObject                          "1C: Set var object"
;##MenuLink Com1D_AttackObject                          "1D: Attack object"
;##MenuLink Com1E_SwapObjects                           "1E: Swap objects"
;##MenuLink Com1F_PrintMessage                          "1F: Print message"
;##MenuLink Com20_CheckActiveObject                     "20: Check active object"
;##MenuLink Com21_RunGeneralWithTempPhrase              "21: Execute general script with temporary phrase and nouns"
;##MenuLink Com22_CompareHealthToValue                  "22: Compare health to value"
;##MenuLink Com23_HealVarObject                         "23: Heal var object"
;##MenuLink Com24_EndlessLoop                           "24: Endless loop"
;##MenuLink Com25_RestartGame                           "25: Restart game"
;##MenuLink Com26_PrintScore                            "26: Print score"
;##-

;##RAM

;##+0088..  printCursor           screen pointer used by BASIC
;
;##+01A7..  tmp1A7                used in decoding the input                   
;##+01A9    tmp1A9                used in comparing X to Y                     
;##+01AA    not1AA                never used
;##+01AB    tmp1AB                used in lots of places                       
;##+01AC    not1AC                never used
;##+01AD    tmp1AD                used in the phrase decoding                  
;##+01AE    not1AE                never used
;##+01AF    not1AF                never used
;##+01B0    not1B0                never used
;##+01B1    not1B1                never used
;##+01B2    tmp1B2                used in word decoding                        
;##+01B3    verbWord              input verb word number                       
;##+01B4    perpWord              preposition word number                      
;##+01B5    prepGiven             preposition given flag                       
;##+01B6    phrasePrep            used in phrase decoding                      
;##+01B7    adjWord               adjective word number                        
;##+01B8    commandTarg           target object of input command               
;##+01B9    not1B9                cleared before decode but never used        
;##+01BA    lsbAdj1               screen LSB of 1st adjective                  
;##+01BB    lsbVerb               screen LSB of verb                           
;##+01BC    lsbCursor             screen lsb used in decoding the input line   
;##+01BD    lsbError              screen lsb used for flashing error messages  
;##+01BE    lastChar              last character printed to screen             
;##+01BF      VAR_OBJ_NUMBER      variable object number                       
;##+01C0..    VAR_OBJ_DATA        variable object data                         
;##+01C2    not1C2                never used
;##+01C3      FIRST_NOUN_NUM      first input noun number                      
;##+01C4    firstNounAdj          first input noun adjective word number
;##+01C5    firstNounLSB          first input noun screen LSB                  
;##+01C6..    FIRST_NOUN_DATA     first input noun object data                
;##+01C8    firstNounParams       first input noun parameter bits             
;##+01C9      SECOND_NOUN_NUM     second input noun number                     
;##+01CA    secondNounAdj         second input noun adjective word number
;##+01CB    secondNounLSB         second input noun noun screen LSB           
;##+01CC..    SECOND_NOUN_DATA    second input noun object data                
;##+01CE    secondNounParams      second input noun parameter bits             
;##+01CF    tmp1CF                another screen pointer used in decode       
;##+01D0    tmp1DO                used in making index of data fields         
;##+01D1      PHRASE_FORM         decoded phrase form                          
;##+01D2      ACTIVE_OBJ_NUM      active object                                
;##+01D3..    ACTIVE_OBJ_DATA     active object data                          
;##+01D5      CUR_ROOM            current room number                         
;##+01D6..    CUR_ROOM_DATA       current room data                          
;##+01D8..  nextToken             used in decoding input                      
;##+01DA    tmp1DA                used in unpacking bytes                      
;##+01DB    tmp1DB                used in unpacking bytes                    
;##+01DC    tmp1DC                used in unpacking bytes                     
;##+01DD    tmp1DD                used in unpacking bytes                     
;##+01DE    tmp1DE                used in unpacking bytes                      
;##+01DF    tmp1DF                used in unpacking bytes                     
;##+01E0    tmp1EO                used in unpacking bytes                      
;##+01E1    tmp1E1                used in making index of data fields         
;##+01E2    tmp1E2                used in input processing                    
;##+01E3    tillMORE              rows left until MORE prompt (not used here)               
;
; $01E4     inputTokens           input token buffer
; $03FF     stack                 top of stack (just below screen memory)

;##Start
L0600          clra                          ; 256 word (512 bytes on screen)
L0601          ldx       #$0400              ; Start of screen
L0604          ldu       #$6060              ; Space-space
L0607          stu       ,X++                ; Clear ...
L0609          deca                          ; ... text ...

L060A          bne       L0607                ; ... screen

L060C          lds       #$03FF              ; Stack starts just below screen
L0610          lda       #$1D                ; Player object ...
L0612          sta       $01D2               ; ... is the active object number
L0615          ldx       #$05E0              ; Set cursor to ...
L0618          stx       >$88                ; ... bottom row of screen
L061A          ldb       #$96                ; Starting ...
L061C          stb       $01D5               ; ... room
L061F          ldx       #$1523              ; Room descriptions
L0622          jsr       $0A1F               ; Find room data
L0625          stx       $01D6               ; Store current room data
L0628          jsr       $0D4A               ; Print room description
L062B          lda       #$0D                ; Print ...
L062D          jsr       $1184               ; ... CR

;##MainLoop
L0630          lds       #$03FF              ; Initialize stack
L0634          jsr       $0ACC               ; Get user input

L0637          clr       $01B7               ; Adjective word number
L063A          clr       $01BA               ; LSB of 1st adjective in buffer (not used)
L063D          clr       $01BB               ; LSB of verb
L0640          clr       $01B2               ; Misc
L0643          clr       $01B3               ; Verb word number
L0646          clr       $01B9               ; Never used again
L0649          clr       $01B8               ; Target object of command (not used)
L064C          clr       $01B4               ; Preposition number
L064F          clr       $01B5               ; Preposition given flag (not 0 if given)
L0652          clr       $01BF               ; VAR object number
L0655          clr       $01C3               ; 1st noun word number
L0658          clr       $01C9               ; 2nd noun word number

L065B          ldb       #$1D                ; Player object ...
L065D          stb       $01D2               ; ... is active object
L0660          jsr       $1133               ; Get player object data
L0663          stx       $01D3               ; Active object's data
L0666          jsr       $0A42               ; Skip length
L0669          ldb       ,X                  ; Get player location
L066B          stb       $01D5               ; Current room
L066E          ldx       #$1523              ; Room scripts
L0671          jsr       $0A1F               ; Find sublist ... script for room
L0674          stx       $01D6               ; Script for current room
L0677          ldx       #$01E3              ; Input token list area
L067A          stx       $01D8               ; Where decoder fills in
L067D          clr       ,X                  ; Empty token ... clear the list
L067F          ldx       #$05E0              ; Bottom row is input buffer
L0682          jsr       $0B42               ; Decode input word

L0685          beq       L0692                ; All words done
L0687          lda       ,X+                 ; Next character
L0689          cmpa      #$60                ; A space?

L068B          beq       L0682                ; Yes ... decode next
L068D          cmpx      #$0600              ; End of input buffer?

L0690          bne       L0687                ; No ... look for next word
L0692          cmpx      #$0600              ; End of input buffer?

L0695          bne       L0682                ; No ... keep looking
L0697          clr       [$01D8]             ; Terminate token list
L069B          ldx       #$01E3              ; Input buffer
L069E          lda       ,X                  ; List number of first word
L06A0          lbeq      $0736               ; Nothing entered
L06A4          cmpa      #$02                ; First word a noun?

L06A6          bne       L06B7                ; No ... move on
L06A8          leax      1,X                 ; Point to word number
L06AA          lda       ,X                  ; Get word number
L06AC          leax      -1,X                ; Back to list number
L06AE          cmpa      #$06                ; Living things (people, dogs, etc) are <6

L06B0          bcc       L06B7                ; Not a living thing
L06B2          sta       $01B8               ; Remember living thing. We are giving them a command so process normally
L06B5          leax      3,X                 ; Next word

L06B7          lda       ,X+                 ; Word list

L06B9          beq       L0736                ; End of list ... go process
L06BB          ldb       ,X                  ; Word number to B
L06BD          ldu       ,X++                ; LSB to LSB of U
L06BF          pshs      X                   ; Hold token buffer
L06C1          deca                          ; List 1? Verbs?

L06C2          bne       L06E5                ; No ... continue

; I believe the goal here was to allow multiple verbs given on an input line
; to be translated to a single verb. The code finds a replacement list for the
; newly given verb and then runs the list two bytes at a time comparing one
; of the entries to the last given verb and storing the second byte if there
; is a match. I believe that is what is SUPPOSED to happen, but I believe the
; code has a bug or two. It actually does nothing at all. The replacement
; list for BEDLAM and RAAKATU is empty so the code is never used anyway.
;
L06C4          ldx       #$1332              ;  Multi verb translation list (empty list for BEDLAM and RAAKATU)
L06C7          jsr       $0A1F               ;  Look for an entry for the given verb

L06CA          bcc       L06DF                ;  No entry ... use the word as-is
L06CC          jsr       $0A42               ;  Skip length of entry
L06CF          jsr       $0A58               ;  End of list?
L06D2          tfr       B,A                 ;  ?? Held in A but ...

L06D4          bcc       L06DF                ;  Reached end of list. This input is the verb.
L06D6          ldb       ,X+                 ;  ??
L06D8          lda       ,X+                 ;  ?? ... A is mangled here?
L06DA          cmpb      $01B3               ;  ?? Compare to 01B3 ...

L06DD          bne       L06CF                ;  Continue running list
L06DF          stb       $01B3               ;  ?? ... then store if equal?
L06E2          jmp       $0731               ;  Continue with next word

L06E5          deca                          ;  List 2 Noun

L06E6          bne       L071E                ;  Not a noun
L06E8          tst       $01B5               ;  Has prepostion been given?

L06EB          beq       L070D                ;  No ... this is first noun
L06ED          ldx       #$01C9              ;  2nd noun area
L06F0          stb       ,X+                 ;  Store word number
L06F2          lda       $01B7               ;  Last adjective
L06F5          sta       ,X+                 ;  Keep with noun
L06F7          lda       $01BA               ;  LSB of adjective
L06FA          sta       ,X                  ;  Keep with noun

L06FC          bne       L0702                ;  There was one ... go on
L06FE          tfr       U,D                 ;  Use LSB of ...
L0700          stb       ,X                  ;  ... noun if no adjective
L0702          clr       $01B7               ;  Adjective moved
L0705          clr       $01B5               ;  Preposition moved
L0708          clr       $01BA               ;  LSB moved

L070B          bra       L0731                ;  Continue with next word

L070D          ldx       $01C3               ;  Copy ...
L0710          stx       $01C9               ;  ... any ...
L0713          ldx       $01C5               ;  ... first noun ...
L0716          stx       $01CB               ;  ... to second
L0719          ldx       #$01C3              ;  First word area

L071C          bra       L06F0                ;  Go fill out first word

L071E          deca                          ;  List 3 Adjective

L071F          bne       L072B                ;  Not a proposition
L0721          stb       $01B7               ;  Store adjective number
L0724          tfr       U,D                 ;  Store ...
L0726          stb       $01BA               ;  ... adjective LSB in buffer

L0729          bra       L0731                ;  Continue with next word

L072B          stb       $01B4               ;  Preposition
L072E          stb       $01B5               ;  Preoposition given (noun should follow)
L0731          puls      X                   ;  Restore token pointer
L0733          jmp       $06B7               ;  Next word


L0736          tst       $01B3               ;  Verb given?
L0739          lbeq      $0995               ;  No ... ?VERB? error
L073D          ldx       #$01C9              ;  Second noun
L0740          jsr       $0822               ;  Decode it (only returns if OK)
L0743          sta       $01C9               ;  Hold target object index
L0746          stx       $01CC               ;  Hold target object pointer
L0749          ldx       #$01C3              ;  First noun
L074C          jsr       $0822               ;  Decode it (only returns if OK)
L074F          sta       $01C3               ;  Hold target object index
L0752          stx       $01C6               ;  Hold target object pointer
L0755          clr       $01B5               ;  Clear preposition flag

L0758          ldx       $01C6               ;  Pointer to first noun object data
L075B          lda       $01C3               ;  First noun index

L075E          beq       L0767                ;  No first noun ... store a 0
L0760          jsr       $0A42               ;  Skip ID and load end
L0763          leax      2,X                 ;  Skip 2 bytes
L0765          lda       ,X                  ;  Object parameter bits
L0767          sta       $01C8               ;  Hold first noun's parameter bits

L076A          ldx       $01CC               ;  Pointer to second noun object data
L076D          lda       $01C9               ;  Second noun number

L0770          beq       L0779                ;  No second noun ... store 0
L0772          jsr       $0A42               ;  Skip ID and load end
L0775          leax      2,X                 ;  Skip 2 bytes
L0777          lda       ,X                  ;  Object parameter bits
L0779          sta       $01CE               ;  Hold second noun's parameter bits

L077C          ldx       #$135B              ;  Syntax list
L077F          lda       ,X                  ;  End of list?
L0781          lbeq      $0951               ;  Yes ... "?PHRASE?"
L0785          lda       $01B3               ;  Verb ...
L0788          cmpa      ,X+                 ;  ... matches?

L078A          bne       L07E7                ;  No ... move to next entry
L078C          lda       ,X                  ;  Phrase's proposition
L078E          sta       $01B6               ;  Hold it
L0791          lda       $01B4               ;  Preposition word number

L0794          beq       L079A                ;  None given ... skip prep check
L0796          cmpa      ,X                  ;  Given prep matches?

L0798          bne       L07E7                ;  No ... move to next phrase
L079A          leax      1,X                 ;  Skip to next phrase component
L079C          lda       ,X                  ;  First noun required by phrase

L079E          beq       L07B4                ;  Not given in phrase ... skip check
L07A0          lda       $01C3               ;  1st noun index

L07A3          bne       L07BB                ;  Requested by phrase but not given by user ... next phrase
L07A5          lda       $01BB               ;  LSB of verb ...
L07A8          sta       $01BD               ;  ... to location of error
L07AB          ldy       #$01C3              ;  Descriptor for 1st noun
L07AF          jsr       $08D2               ;  Decode 1st noun as per phrase

L07B2          bra       L07BB                ;  We just processed a first one. We know it is there.
L07B4          lda       $01C3               ;  Is there a 1st noun?

L07B7          lbne      $0951               ; No ... next entry
L07BB          leax      1,X                 ; Next in phrase
L07BD          lda       ,X                  ; Phrase wants a second noun?

L07BF          beq       L07DA                ; No ... skip
L07C1          lda       $01C9               ; User given 2nd noun

L07C4          bne       L07E1                ; Yes ... use this phrase
L07C6          lda       $01BC               ; Location of ...
L07C9          sta       $01BD               ; ... error on screen
L07CC          lda       #$01                ; Set preposition ...
L07CE          sta       $01B5               ; ... flag to YES
L07D1          ldy       #$01C9              ; 2nd noun index
L07D5          jsr       $08D2               ; Decode 2nd noun as per phrase

L07D8          bra       L07E1                ; Use this

L07DA          lda       $01C9               ; Is there a second noun?
L07DD          lbne      $0951               ; No ... phrase error
L07E1          leax      1,X                 ; Get matched ...
L07E3          lda       ,X                  ; ... phrase number

L07E5          bra       L07F0                ; Store and continue
L07E7          leax      1,X                 ; Skip ...
L07E9          leax      1,X                 ; ... to ...
L07EB          leax      2,X                 ; ... next entry
L07ED          jmp       $077F               ; Keep looking

; Unlike BEDLAM, there is no giving a command to something else. Just
; ignore any commanded object and give the phrase to the user.

L07F0          sta       $01D1               ; Store the phrase number
L07F3          ldx       #$05FF              ; Move cursor to ...
L07F6          stx       >$88                ; ... end of line
L07F8          lda       #$0D                ; Print ...
L07FA          jsr       $1184               ; ... CR
L07FD          lda       $01C3               ; First noun given?

L0800          bne       L080E                ; Yes ... keep what we have
L0802          ldx       $01CC               ; Move 2nd ...
L0805          stx       $01C6               ; ... noun to ...
L0808          lda       $01C9               ; ... first ...
L080B          sta       $01C3               ; ... descriptor
L080E          ldx       #$323C              ; General command scripts
L0811          jsr       $0A42               ; Skip over end delta
L0814          jsr       $0C03               ; Execute script
L0817          jsr       $0F66               ; Allow objects to move
L081A          lda       #$0D                ; Print ...
L081C          jsr       $1184               ; ... CR
L081F          jmp       $0630               ; Top of game loop


; This function decodes the NOUN descriptor pointed to by X. The AJECTIVE-NOUN
; pair is compared to all objects in the room (and pack). If no adjective
; is given and there are multiple matching objects (like multiple doors with
; different colors) then the "?WHICH?" prompt is given. If there is no 
; matching object then "?WHAT?" is given. If this function returns then
; the mapping was successful.
;
; @param X pointer to the noun descriptor to decode
; @return A index of target object
; @return X pointer to target object data
;
L0822          clr       $01BF               ; Input object number
L0825          ldb       ,X+                 ; Word number of noun
L0827          stb       $01B2               ; Hold it

L082A          bne       L082E                ; Real object ... go decode
L082C          clra                          ; Not found
L082D          rts                           ; Out
L082E          lda       ,X+                 ; Noun's adjective
L0830          sta       $01B7               ; Hold it
L0833          lda       ,X                  ; LSB of word in buffer
L0835          sta       $01CF               ; Hold it
L0838          ldx       #$20FF              ; Object data
L083B          jsr       $0A1F               ; Get pointer to next object that matches word

L083E          bcc       L089A                ; Not found
L0840          pshs      Y                   ; Hold end of object data
L0842          pshs      X                   ; Hold pointer to noun descriptor
L0844          lda       $01E1               ; Index of object in the object list
L0847          sta       $01E2               ; Remember this
L084A          jsr       $08AA               ; Is object in this room or on player?

L084D          bne       L08A6                ; No ... can't be target ... out
L084F          lda       $01B7               ; Noun's adjective

L0852          beq       L0873                ; No adjective ... skip this
L0854          puls      X                   ; Restore pointer to noun descriptor
L0856          pshs      X                   ; Hold it again
L0858          jsr       $0A42               ; Skip the id and end
L085B          leax      3,X                 ; Skip the object data
L085D          ldb       #$01                ; Look up adjective ...
L085F          jsr       $0A27               ; ... list for object

L0862          bcc       L0873                ; No adjective ... ignore
L0864          jsr       $0A42               ; Skip the id and length
L0867          jsr       $0A58               ; End of adjective list?

L086A          bcc       L08A6                ; Yes ... no match ... next object
L086C          lda       $01B7               ; Adjective
L086F          cmpa      ,X+                 ; In this list?

L0871          bne       L0867                ; No ... keep searching list
L0873          puls      X                   ; Restore object pointer
L0875          lda       $01BF               ; Last object index that matched
L0878          lbne      $098C               ; Multiple matches ... do "?WHICH?"
L087C          lda       $01E2               ; Object index
L087F          sta       $01BF               ; Current guess at matching object index
L0882          stx       $01C0               ; Input object data
L0885          jsr       $0A42               ; Skip id and end
L0888          tfr       Y,X                 ; Next object
L088A          puls      Y                   ; End of object data
L088C          ldb       $01B2               ; Restore word number of noun
L088F          lda       $01E2               ; Current object index
L0892          sta       $01E1               ; Start count for next pass
L0895          jsr       $0A27               ; Find next matching object

L0898          bcs       L0840                ; Got one ... go test it
L089A          ldx       $01C0               ; Object data to X
L089D          lda       $01BF               ; Object found?

L08A0          bne       L08A5                ; Yes ...  out
L08A2          jmp       $0948               ; No ... "?WHAT?"
L08A5          rts                           ; Done
L08A6          puls      X                   ; Restore object pointer

L08A8          bra       L0885                ; Do next object

; This function checks if the target object is in the current room or being
; held by the active object.
;
; @param X pointer to target object
; @return Z=1 for yes or Z=0 for no
;
L08AA          jsr       $0A42               ; Skip size
L08AD          lda       $01D5               ; Current room number
L08B0          cmpa      ,X                  ; Is object in room?

L08B2          beq       L08A5                ; Yes ... return OK
L08B4          lda       ,X                  ; Get object's room number

L08B6          beq       L08CF                ; 0 ... fail
L08B8          cmpa      #$FF                ; FF ...

L08BA          beq       L08A5                ; ... return OK
L08BC          bita      #$80                ; Upper bit of object location set ...

L08BE          bne       L08CF                ; ... then fail
L08C0          ldb       ,X                  ; Location again
L08C2          cmpb      $01D2               ; Being held by the active object?

L08C5          beq       L08A5                ; Yes ... return OK
L08C7          ldx       #$20FF              ; Strange. 117D does this too.
L08CA          jsr       $1133               ; Get object's container object (if any)

L08CD          bra       L08AA                ; Repeat check
L08CF          ora       #$01                ; Mark failure
L08D1          rts                           ; Out

; This function fills the noun descriptor pointed to by Y with the object
; in current room or on user that matches the parameter value from the
; phrase script. If there is not exactly one such object then flash an error
; like "WITH ?WHAT?" using the current preposition or just "?WHAT?" if there
; isn't one.
;
; @param Y pointer to noun descriptor to fill
; @param X pointer to phrase data
; @return descriptor filled out with object
;
L08D2          pshs      X                   ; Hold phrase data pointer
L08D4          clr       $01B2               ; Found word flag
L08D7          clr       $01E1               ; Object index starts at 0
L08DA          pshs      Y                   ; Hold noun descriptor
L08DC          lda       ,X                  ; Object parameter mask bits
L08DE          sta       $01AB               ; Hold
L08E1          ldx       #$20FF              ; Object data
L08E4          jsr       $0A42               ; Skip ID and load end
L08E7          jsr       $0A58               ; At end of object data?

L08EA          bcc       L092C                ; Yes ... done
L08EC          inc       $01E1               ; Bump object index
L08EF          pshs      Y                   ; Hold end of object
L08F1          pshs      X                   ; Hold pointer to object
L08F3          jsr       $08AA               ; Is object in room or on player?
L08F6          puls      X                   ; Restore pointer to object

L08F8          bne       L0927                ; No ... next object
L08FA          ldb       ,X                  ; Object word number
L08FC          stx       $01D8               ; Pointer to object data
L08FF          jsr       $0A42               ; Skip ID and load end
L0902          leax      2,X                 ; Point to object parameters
L0904          lda       ,X                  ; Get parameters
L0906          anda      $01AB               ; Compare to phrase data ...
L0909          cmpa      $01AB               ; ... this is a strange way to do it

L090C          bne       L0921                ; Not a match ... next word
L090E          lda       $01B2               ; Already got a word number?

L0911          bne       L095A                ; Yes ... error
L0913          stb       $01B2               ; Found word number
L0916          lda       ,X                  ; Remember ...
L0918          sta       $01B7               ; ... object parameters
L091B          ldx       $01D8               ; Remember ...
L091E          stx       $01AD               ; ... object pointer
L0921          exg       X,Y                 ; Start of next object to X
L0923          puls      Y                   ; Restore end of object pointer

L0925          bra       L08E7                ; Continue with next object
L0927          jsr       $0A42               ; Skip ID and load end

L092A          bra       L0921                ; Try next object
L092C          lda       $01B2               ; Did we find an object word?

L092F          beq       L095A                ; No .... error
L0931          puls      Y                   ; Noun descriptor
L0933          ldx       $01AD               ; Object data pointer
L0936          lda       $01E1               ; New ...
L0939          sta       ,Y                  ; ... object number
L093B          leay      3,Y                 ; New ...
L093D          stx       ,Y++                ; ... pointer to object data
L093F          lda       $01B7               ; New ...
L0942          sta       ,Y                  ; ... object parameters
L0944          puls      X                   ; Restore phrase data pointer
L0946          clra                          ; Set Z=1
L0947          rts                           ; Done

L0948          ldy       #$1343              ; "?WHAT?"
L094C          lda       $01CF               ; LSB of screen location

L094F          bra       L099B                ; Go flash error and try again

L0951          ldy       #$1352              ; "?PHRASE?"
L0955          lda       $01BC               ; LSB of screen location

L0958          bra       L099B                ; Go flash error and try again

L095A          lda       $01B5               ; Preposition given?

L095D          beq       L0983                ; No ... just plain "?WHAT?"
L095F          lda       $01B4               ; Preposition word number?

L0962          bne       L0983                ; No word ... just plain "?WHAT?"
L0964          ldx       #$3ECF              ; Prepositions list
L0967          ldb       ,X                  ; Length of word

L0969          beq       L0983                ; Reached the end ... do "?WHAT?"
L096B          pshs      X                   ; Hold start of word
L096D          ldb       ,X+                 ; Get length again
L096F          abx                           ; Point to end of word
L0970          lda       $01B6               ; Target preposition
L0973          cmpa      ,X+                 ; Matches?

L0975          beq       L097B                ; Yes ... error includes this word
L0977          puls      A,B                 ; Restore stack

L0979          bra       L0967                ; Next word
L097B          puls      Y                   ; Word text to Y
L097D          lda       $01BD               ; LSB of error message
L0980          jsr       $09E1               ; Push preposition word
L0983          ldy       #$1343              ; "?WHAT?"
L0987          lda       $01BD               ; LSB of screen location

L098A          bra       L099B                ; Go flash error and try again
L098C          ldy       #$134A              ; "?WHICH"?
L0990          lda       $01CF               ; LSB of screen location

L0993          bra       L099B                ; Go flash error and try again
L0995          ldy       #$133C              ; "?VERB?"

L0999          lda       #$E0                ; LSB of start of input line
L099B          lds       #$03FF              ; Reset the stack (we jump back into the main loop)
L099F          ldx       #$05E0              ; Error goes at start of line
L09A2          jsr       $09E1               ; Push error message on and pause
L09A5          lda       ,Y                  ; Get length
L09A7          sta       $01AB               ; Hold in counter
L09AA          pshs      X                   ; Hold X
L09AC          lda       #$60                ; SPACE
L09AE          sta       ,X+                 ; Flash off ...
L09B0          dec       $01AB               ; ... error ...

L09B3          bne       L09AC                ; ... word
L09B5          jsr       $09D6               ; Long delay
L09B8          puls      X                   ; Restore insertion point
L09BA          decb                          ; All flashes done?

L09BB          bne       L09D1                ; No ... keep flashing error word
L09BD          lda       ,Y                  ; Size of error word
L09BF          inca                          ; Plus the extra space
L09C0          sta       $01AB               ; Hold counter
L09C3          jsr       $0ADB               ; Close up the ...
L09C6          dec       $01AB               ; ... error ...

L09C9          bne       L09C3                ; ... word
L09CB          jsr       $0A63               ; Get input line
L09CE          jmp       $0637               ; Continue processing
L09D1          jsr       $0A00               ; Flash message and pause

L09D4          bra       L09A5                ; Continue flashing and read new line

;Long delay
L09D6          lda       #$32                ; Outer loop counts
L09D8          dec       $01AB               ; Decrease inner count (doesn't matter what's there)

L09DB          bne       L09D8                ; Kill inner time
L09DD          deca                          ; All 256 loops done?

L09DE          bne       L09D8                ; No ... keep pausing
L09E0          rts                           ; Done

L09E1          sta       $01AB               ; Hold LSB of cursor
L09E4          ldd       #$05E0              ; Start of input line
L09E7          ldb       $01AB               ; Replace LSB
L09EA          tfr       D,X                 ; Place for error word in X
L09EC          lda       ,Y                  ; Get length of message
L09EE          inca                          ; Plus a space after
L09EF          sta       $01AB               ; Store length
L09F2          pshs      Y                   ; Hold message
L09F4          jsr       $0B06               ; Slide right past insertion point
L09F7          dec       $01AB               ; Space opened up?

L09FA          bne       L09F4                ; No ... open all the spaces for the error word
L09FC          puls      Y                   ; Restore pointer
L09FE          ldb       #$08                ; 8 flashes
L0A00          lda       ,Y                  ; Count again
L0A02          sta       $01AB               ; Size of word
L0A05          pshs      Y,X,B               ; Hold all
L0A07          leay      1,Y                 ; Skip size
L0A09          lda       ,Y+                 ; Copy error word ...
L0A0B          sta       ,X+                 ; ... to screen
L0A0D          dec       $01AB               ; All done?

L0A10          bne       L0A09                ; No ... go back and do all
L0A12          leax      1,X                 ; Bump ...
L0A14          tfr       X,D                 ; ... LSB ...
L0A16          stb       $01BD               ; ... of screen pointer
L0A19          jsr       $09D6               ; Long pause
L0A1C          puls      B,X,Y               ; Restore
L0A1E          rts                           ; Done

; FindSublist
; Find a sublist by ID within a master list.
; X=pointer to master list
; B=sublist ID
; Return sublist pointer in X
; Return C=0 if not found, C=1 if found
L0A1F          leax      1,X                 ; Skip list ID
L0A21          jsr       $0A44               ; Read end of list to Y
L0A24          clr       $01E1               ; Clear index of sublist
L0A27          jsr       $0A58               ; Compare X to Y

L0A2A          bcs       L0A2D                ; X is smaller ... keep going
L0A2C          rts                           ; Done (C=0 not found)
L0A2D          inc       $01E1               ; Keep up with index of sublist
L0A30          cmpb      ,X                  ; Is this the sublist we want?

L0A32          beq       L0A3F                ; Found ... C=1 and out
L0A34          pshs      Y                   ; Hold the end
L0A36          jsr       $0A42               ; Skip ID and read end of list to Y
L0A39          tfr       Y,X                 ; Jump to the end of this list
L0A3B          puls      Y                   ; Restore the end of the master lsit

L0A3D          bra       L0A27                ; Keep looking for the sublist
;
L0A3F          orcc      #$01                ; C=1
L0A41          rts                           ; Done

;##-SkipIDLoadEnd
; Skip the ID byte and load the end of the list in Y.
L0A42          leax      1,X                 ; Bump script pointer
;
;##LoadEnd
; Load the end of the list in Y.
L0A44          clra                          ; Upper is 0
L0A45          pshs      B                   ; Hold lower
L0A47          ldb       ,X+                 ; Get lower
L0A49          bitb      #$80                ; One or two byte value?

L0A4B          beq       L0A53                ; Just a one byte ... use it
L0A4D          andb      #$7F                ; This is the ...
L0A4F          tfr       B,A                 ; ... MSB
L0A51          ldb       ,X+                 ; Now get 2nd byte (LSB)
L0A53          leay      D,X                 ; Offset script
L0A55          puls      B                   ; Restore B
L0A57          rts                           ; Done

;##CompareXY
; Compare X to Y (flags = X - Y)
L0A58          sty       $01A9               ; Do compare ...
L0A5C          cmpx      $01A9               ; X - Y
L0A5F          rts                           ; Done

;##GetInputLine
L0A60          ldx       #$05E0              ; Start of bottom row
L0A63          jsr       $0B23               ; Slide bottom row to right after cursor and draw cursor
L0A66          jsr       $0B2B               ; Get a key from the keyboard
L0A69          cmpa      #$15                ;

L0A6B          beq       L0A8D                ; Swap cursor and character to left
L0A6D          cmpa      #$5D                ; ']' ?

L0A6F          beq       L0AA0                ; Swap cursor and character to right
L0A71          cmpa      #$09                ; Backspace

L0A73          beq       L0AB3                ; Go handle backspace
L0A75          cmpa      #$0D                ; CR?

L0A77          beq       L0AC8                ; Handle it and out
L0A79          cmpa      #$0C                ; BREAK?

L0A7B          beq       L0ACC                ; Yes ... clear the row
L0A7D          cmpa      #$08                ; Backspace?

L0A7F          beq       L0ABC                ; Yes go handle
L0A81          cmpx      #$05FF              ; At the end of the screen?

L0A84          beq       L0A66                ; Yes ... ignore and get another
L0A86          jsr       $0B06               ; Slide bottom row beyond insertion
L0A89          sta       ,X+                 ; Store character

L0A8B          bra       L0A66                ; Go get another character

L0A8D          cmpx      #$05E0              ; Nothing typed?

L0A90          beq       L0A66                ; Yes ... ignore and get another
L0A92          leax      -1,X                ; Swap ...
L0A94          lda       ,X+                 ; ... cursor ...
L0A96          sta       ,X                  ; ... and ...
L0A98          leax      -1,X                ; ... character ...
L0A9A          lda       #$CF                ; ... to the ...
L0A9C          sta       ,X                  ; ... left

L0A9E          bra       L0A66                ; Go get another character

L0AA0          cmpx      #$05FF              ; End of screen?

L0AA3          beq       L0A66                ; Yes ... go get another key
L0AA5          leax      1,X                 ; Swap ...
L0AA7          lda       ,X                  ; ... cursor ...
L0AA9          leax      -1,X                ; ... and ...
L0AAB          sta       ,X+                 ; ... character ...
L0AAD          lda       #$CF                ; ... to the ...
L0AAF          sta       ,X                  ; ... right

L0AB1          bra       L0A66                ; Go get another key
;
L0AB3          jsr       $0ADB               ; Back off trailing cursor block
L0AB6          lda       #$CF                ; Store ...
L0AB8          sta       ,X                  ; ... cursor block

L0ABA          bra       L0A66                ; Go get another key
;
L0ABC          cmpx      #$05E0              ; At the start of the row?

L0ABF          beq       L0A66                ; Yes ... go get another key
L0AC1          leax      -1,X                ; Back up one character
L0AC3          jsr       $0ADB               ; Erase the end

L0AC6          bra       L0A66                ; Go get another key
;
L0AC8          jsr       $0ADB               ; Back off cursor character
L0ACB          rts                           ; Done
;
L0ACC          ldx       #$05E0              ; Start of bottom row
L0ACF          ldb       #$20                ; 32 characters on the row
L0AD1          lda       #$60                ; SPACE character
L0AD3          sta       ,X+                 ; Clear ...
L0AD5          decb                          ; ... the ...

L0AD6          bne       L0AD3                ; ... bottom row
L0AD8          jmp       $0A60               ; Go get another key
;
L0ADB          tfr       X,U                 ; Hold X
L0ADD          leay      1,X                 ; Clear trailing ...
L0ADF          lda       #$60                ; ... cursor ...
L0AE1          sta       ,X                  ; ... block
;
L0AE3          cmpy      #$0600              ; End of screen?

L0AE7          beq       L0ACB                ; Yes out
L0AE9          cmpy      #$0601              ; End of screen?

L0AED          beq       L0ACB                ; Yes out
L0AEF          cmpy      #$0602              ; End of screen?

L0AF3          beq       L0ACB                ; Yes out
L0AF5          lda       ,Y+                 ; Back ...
L0AF7          sta       ,X+                 ; ... up ...
L0AF9          cmpy      #$0600              ; ... row ...

L0AFD          bne       L0AF5                ; ... over cursor
L0AFF          lda       #$60                ; Clear last ...
L0B01          sta       ,X                  ; ... character
L0B03          tfr       U,X                 ; Restore X
L0B05          rts                           ; Done
;
L0B06          cmpx      #$0600              ; Past end of screen?

L0B09          beq       L0B22                ; Yes ... out
L0B0B          stx       $01A7               ; Hold insertion point
L0B0E          ldx       #$0600              ; End+1
L0B11          ldy       #$05FF              ; End
L0B15          ldb       ,-Y                 ; Slide bottom row ...
L0B17          stb       ,-X                 ; ... to the right
L0B19          cmpx      $01A7               ; At the insertion point?

L0B1C          bne       L0B15                ; No ... slide all
L0B1E          ldb       #$60                ; SPACE
L0B20          stb       ,X                  ; Clear first character
L0B22          rts                           ; Done
;
L0B23          jsr       $0B06               ; Slide row over from cursor
L0B26          lda       #$CF                ; Cursor character (white block)
L0B28          sta       ,X                  ; Cursor to screen
L0B2A          rts                           ; Done

;##-GetKey
L0B2B          jsr       $12A8               ; Get random number every key
L0B2E          jsr       [$A000]             ; Get key from user
L0B32          tsta                          ; Anything pressed?

L0B33          beq       L0B2B                ; No ... keep waiting
L0B35          cmpa      #$41                ; Letter 'A'

L0B37          bcc       L0B3F                ; Greater or equal ... use it
L0B39          cmpa      #$20                ; Space

L0B3B          bcs       L0B3F                ; Lower .... use it
L0B3D          adda      #$40                ; Not really sure why. '!' becomes 'a'.
L0B3F          rts                           ; Done


;##DecodeBuffer
; X=input buffer on screen (1 before)
; 1D8=pointer to result token list
; Return 1CF LSB of first word
; Return 1BB LSB of next word
; Return list of 3-byte tokens filled into buffer pointed to by 1D8:
;   NN WW PP
;     NN = list number
;     WW = word number
;     PP = LSB of word on screen
;
L0B40          leax      1,X                 ; Next in buffer
;
L0B42          tfr       X,D                 ; Hold ...
L0B44          stb       $01CF               ; ... LSB of first word (could be ignored)
L0B47          cmpx      #$0600              ; End of buffer?

L0B4A          beq       L0B3F                ; Yes ... out
L0B4C          lda       ,X                  ; Next in input
L0B4E          cmpa      #$60                ; Valid character?

L0B50          bcc       L0B40                ; No ... skip till we find one
L0B52          ldy       #$3C29              ; Word token table
L0B56          jsr       $0B8B               ; Try first list

L0B59          beq       L0B42                ; Found a match ... ignore it
L0B5B          ldb       #$01                ; Staring list number
L0B5D          leay      1,Y                 ; Next list of words
L0B5F          jsr       $0B8B               ; Try and match

L0B62          beq       L0B6C                ; Found a match ... record it
L0B64          incb                          ; Next list of words
L0B65          cmpb      #$05                ; All tried?

L0B67          bne       L0B5D                ; No ... go back and try all
L0B69          ora       #$01                ; Not-zero ... error
L0B6B          rts                           ; Done

L0B6C          exg       X,Y                 ; X to Y
L0B6E          ldx       $01D8               ; Current result token pointer
L0B71          stb       ,X+                 ; Store list number
L0B73          sta       ,X+                 ; Store word number
L0B75          lda       $01CF               ; Start of word
L0B78          sta       ,X+                 ; Store word start
L0B7A          stx       $01D8               ; Bump result token pointer
L0B7D          exg       X,Y                 ; Restore X
L0B7F          cmpb      #$01                ; Is this the first (VERB) list?

L0B81          bne       L0B89                ; No ... skip marking
L0B83          lda       $01BC               ; Mark the input buffer location ...
L0B86          sta       $01BB               ; ... of the verb
L0B89          clra                          ; OK
L0B8A          rts                           ; Return

;##DecodeWord
; Y=input match table
; X=pointer to input buffer word
; Return word data in A if found
; Return is-zero if found, not-zero if not found
; Return 1AB with word data (if found)
; Return 1BC with LSB of pointer-to-next-word
;
; 1A7,1A8 Temporary
; 1AB Temporary
; 1D0 Temporary 
;
L0B8B          lda       ,Y                  ; Length of word

L0B8D          bne       L0B92                ; It is a word ... go check it
L0B8F          ora       #$01                ; End of list ...
L0B91          rts                           ; ... return not-zero
L0B92          sta       $01AB               ; Temporary
L0B95          sta       $01D0               ; Temporary
L0B98          pshs      X                   ; Hold pointer to input word
L0B9A          leay      1,Y                 ; Skip over word length in table
L0B9C          lda       ,X                  ; Character from input (from screen)
L0B9E          cmpa      #$60                ; Space?

L0BA0          beq       L0BF5                ; Yes. Didn't match the target word. Next.
L0BA2          cmpx      #$0600              ; Past screen (end of buffer)?

L0BA5          beq       L0BF5                ; Yes. Didn't match the target word. next
L0BA7          cmpa      #$60                ; Valid character?

L0BA9          bcs       L0BAF                ; Yes ... do compare
L0BAB          leax      1,X                 ; No ... skip this

L0BAD          bra       L0B9C                ; Look for valid character
L0BAF          cmpa      ,Y                  ; Matches target word?

L0BB1          bne       L0BF5                ; No ... next word
L0BB3          leax      1,X                 ; Next in input
L0BB5          leay      1,Y                 ; Next in match
L0BB7          dec       $01AB               ; All done?

L0BBA          bne       L0B9C                ; No ... keep looking
L0BBC          lda       $01D0               ; Original length
L0BBF          cmpa      #$06                ; Six letter input?

L0BC1          beq       L0BC9                ; Yes ... could be truncated. That's enough of a match.
L0BC3          lda       ,X                  ; Next from screen
L0BC5          cmpa      #$60                ; Space? End of word?

L0BC7          bcs       L0BFC                ; No. Try next word
L0BC9          lda       ,Y                  ; Get the word data
L0BCB          puls      Y                   ; Drop the input buffer pointer
L0BCD          sta       $01AB               ; Hold the word data
L0BD0          lda       ,X                  ; Next in input buffer?
L0BD2          cmpa      #$60                ; Is it a space?

L0BD4          beq       L0BE2                ; Yes ... ready for next word
L0BD6          stx       $01A7               ; Start of next word (in case end of buffer)
L0BD9          cmpx      #$0600              ; Is this the end of the input buffer?

L0BDC          beq       L0BE8                ; Yes. Done
L0BDE          leax      1,X                 ; Skip to next input word

L0BE0          bra       L0BD0                ; Keep looking for input
L0BE2          stx       $01A7               ; Pointer to ending space
L0BE5          inc       $01A8               ; Point to next character past space (start of next word)
L0BE8          lda       $01A8               ; Keep ...
L0BEB          sta       $01BC               ; ... only LSB
L0BEE          lda       $01AB               ; Return word data in A
L0BF1          clr       $01A7               ; return is-zero for found
L0BF4          rts                           ; Done
;
L0BF5          leay      1,Y                 ; Skip next in word data
L0BF7          dec       $01AB               ; All skipped

L0BFA          bne       L0BF5                ; No ... skip all
L0BFC          puls      X                   ; Restore pointer to word
L0BFE          leay      1,Y                 ; Skip word data
L0C00          jmp       $0B8B               ; Keep trying

;##ProcessCommand
; Either a direct command or a common command
L0C03          lda       ,X+                 ; Next in script
L0C05          tfr       A,B                 ; Hold original command
L0C07          bita      #$80                ; Upper bit set?

L0C09          beq       L0C1E                ; No ... do commands
L0C0B          pshs      Y,X                 ; Hold
L0C0D          ldx       #$37FA              ; Common commands
L0C10          jsr       $0A1F               ; Find common command

L0C13          bcc       L0C1B                ; Not found ... skip
L0C15          jsr       $0A42               ; Skip length of command
L0C18          jsr       $0C03               ; Execute command
L0C1B          puls      X,Y                 ; Restore
L0C1D          rts                           ; Out

L0C1E          tfr       B,A                 ; Hold original command
L0C20          ldy       #$12E5              ; Function table
L0C24          asla                          ; Jump to ...
L0C25          jmp       [A,Y]               ; ... command

;##Com0D_ExecutePassingList
; Execute a list of commands as long as they pass. Either way end pointing one
; past end.
; Data: LENGTH + list of command
L0C27          jsr       $0A44               ; Read length of command
L0C2A          jsr       $0A58               ; Are we past the end?

L0C2D          bcc       L0C3B                ; Yes ... end successfully
L0C2F          pshs      Y                   ; Hold the end
L0C31          jsr       $0C03               ; Execute the command
L0C34          puls      Y                   ; Restore the end

L0C36          beq       L0C2A                ; Command successful? Yes ... keep processing
L0C38          exg       X,Y                 ; Fail ... put us at the end
L0C3A          rts                           ; Done
L0C3B          exg       X,Y                 ; Point to end of list
L0C3D          clra                          ; Z=1 ... success
L0C3E          rts                           ; Done

;##Com0E_ExecuteFailingList
L0C3F          jsr       $0A44               ; Load the end
L0C42          jsr       $0A58               ; Reached end of list?

L0C45          bcc       L0C53                ; Yes ... error
L0C47          pshs      Y                   ; Hold end of command
L0C49          jsr       $0C03               ; Execute command
L0C4C          puls      Y                   ; Restore end

L0C4E          bne       L0C42                ; Command failed ... try next
L0C50          exg       X,Y                 ; Set script pointer to end of list
L0C52          rts                           ; Out
; 
L0C53          exg       X,Y                 ; Set script pointer to end of list
L0C55          ora       #$01                ; Return fail
L0C57          rts                           ; Done

;##Com0B_Switch
L0C58          jsr       $0A44               ; Get size of switch list
L0C5B          ldb       ,X+                 ; Get function to call
L0C5D          jsr       $0A58               ; End of options?

L0C60          bcc       L0C53                ; Yes ... out with error
L0C62          pshs      Y                   ; Hold total switch size
L0C64          pshs      B                   ; Hold function to call
L0C66          tfr       B,A                 ; Call the ...
L0C68          jsr       $0C20               ; ... target function
L0C6B          puls      B                   ; Restore function to call

L0C6D          beq       L0C78                ; Got our script ... go do it
L0C6F          jsr       $0A44               ; Size of pass script
L0C72          exg       X,Y                 ; Skip over this option
L0C74          puls      Y                   ; End of script

L0C76          bra       L0C5D                ; Keep looking
L0C78          jsr       $0A44               ; Skip length
L0C7B          jsr       $0C03               ; Execute
L0C7E          puls      X                   ; Restore script
L0C80          rts                           ; Done

;##Com00_MoveActiveObjectToRoomAndLook
L0C81          jsr       $0C8D               ; Move active object to new room
L0C84          pshs      X                   ; Hold script
L0C86          jsr       $0D4A               ; Print room description and objects
L0C89          puls      X                   ; Restore script
L0C8B          clra                          ; OK
L0C8C          rts                           ; Done

;##Com19_MoveActiveObjectToRoom
L0C8D          lda       ,X+                 ; New room number
L0C8F          pshs      X                   ; Hold script
L0C91          sta       $01D5               ; Store new actvie room number
L0C94          tfr       A,B                 ; Store ...
L0C96          ldx       #$1523              ; ... pointer ...
L0C99          jsr       $0A1F               ; ... to ...
L0C9C          stx       $01D6               ; ... new room
L0C9F          ldx       $01D3               ; Active object
L0CA2          jsr       $0A42               ; Skip size
L0CA5          lda       $01D5               ; New location
L0CA8          sta       ,X                  ; Move object to active room
L0CAA          puls      X                   ; Restore script
L0CAC          clra                          ; OK
L0CAD          rts                           ; Done

;##Com1A_SetVarObjectTo1stNoun
L0CAE          ldu       $01C6               ; Copy 1st noun ...
L0CB1          stu       $01C0               ; ... data pointer
L0CB4          lda       $01C3               ; Copy 1st noun ...
L0CB7          sta       $01BF               ; ... object number
L0CBA          clra                          ; Z=1 for OK
L0CBB          rts                           ; Done

;##Com1B_SetVarObjectTo2ndNoun
L0CBC          ldu       $01CC               ; Copy 2nd noun ...
L0CBF          stu       $01C0               ; ... data pointer
L0CC2          lda       $01C9               ; Copy 2nd noun ...
L0CC5          sta       $01BF               ; ... object number
L0CC8          clra                          ; Z=1 for OK
L0CC9          rts                           ; Done

;##Com1C_SetVarObject
L0CCA          ldb       ,X+                 ; Get object number from script
L0CCC          pshs      X                   ; Hold script pointer
L0CCE          stb       $01BF               ; Store target object number

L0CD1          beq       L0CD9                ; 0 ... no-object
L0CD3          jsr       $1133               ; Find object data
L0CD6          stx       $01C0               ; Store target object data
L0CD9          puls      X                   ; Restore script
L0CDB          clra                          ; Return OK
L0CDC          rts                           ; Done

;##Com21_RunGeneralWithTempPhrase
L0CDD          ldu       $01C6               ; 1st noun data ...
L0CE0          pshs      U                   ; ... on stack
L0CE2          ldu       $01CC               ; 2nd noun data ...
L0CE5          pshs      U                   ; ... on stack
L0CE7          lda       $01C9               ; 2nd noun number
L0CEA          ldb       $01C3               ; 1st noun number
L0CED          pshs      B,A                 ; Hold these
L0CEF          lda       $01D1               ; Phrase number
L0CF2          pshs      A                   ; Hold it
L0CF4          lda       ,X+                 ; New temporary ...
L0CF6          sta       $01D1               ; ... phrase number
L0CF9          ldd       ,X++                ; Temporary 1st and 2nd noun numbers
L0CFB          stb       $01AB               ; Hold 2nd noun for now
L0CFE          pshs      X                   ; Hold script
L0D00          sta       $01C3               ; Temporary 1st noun
L0D03          tfr       A,B                 ; To B (for lookup)

L0D05          beq       L0D0D                ; Not one ... skip
L0D07          jsr       $1133               ; Lookup object in B
L0D0A          stx       $01C6               ; Temporary 1st noun data
L0D0D          ldb       $01AB               ; Temporary 2nd noun ...
L0D10          stb       $01C9               ; ... index

L0D13          beq       L0D1B                ; There isn't one ... skip
L0D15          jsr       $1133               ; Lookup object in B
L0D18          stx       $01CC               ; Temporary 2nd noun
L0D1B          ldx       #$323C              ; General commands
L0D1E          jsr       $0A42               ; Skip ID and length
L0D21          jsr       $0C03               ; Execute general script
L0D24          tfr       CC,A                ; Hold the result ...
L0D26          sta       $01AB               ; ... for a moment
L0D29          puls      Y                   ;
L0D2B          puls      A                   ;
L0D2D          sta       $01D1               ; Restore ...
L0D30          puls      A,B                 ; ... phrase ...
L0D32          stb       $01C3               ; ... and ...
L0D35          sta       $01C9               ; ... nouns
L0D38          puls      U                   ;
L0D3A          stu       $01CC               ;
L0D3D          puls      U                   ;
L0D3F          stu       $01C6               ;
L0D42          exg       X,Y                 ;
L0D44          lda       $01AB               ;
L0D47          tfr       A,CC                ; Restore result
L0D49          rts                           ; Done

; Print room description
L0D4A          lda       $01D2               ; Actiuve object number
L0D4D          cmpa      #$1D                ; Is this the SYSTEM object?

L0D4F          bne       L0D49                ; No ... return
L0D51          ldx       $01D6               ; Current room script
L0D54          jsr       $0A42               ; Skip length
L0D57          leax      1,X                 ;
L0D59          ldb       #$03                ; You are in DESCRIPTION script
L0D5B          jsr       $0A27               ; Get room description

L0D5E          bcc       L0D65                ; No room description ... print objects in room
L0D60          leax      1,X                 ; Assume length is one byte
L0D62          jsr       $114C               ; Print the packed message
;
; Print object descriptions
;
L0D65          ldx       #$20FF              ; Object data
L0D68          jsr       $0A42               ; Skip length
L0D6B          pshs      Y                   ; Hold end
L0D6D          jsr       $0A42               ; Skip this object's length
L0D70          lda       $01D5               ; Current room
L0D73          cmpa      ,X                  ; Object in room?

L0D75          bne       L0D89                ; No ... next object
L0D77          leax      3,X                 ; Skip data
L0D79          ldb       #$03                ; Get description ...
L0D7B          jsr       $0A27               ; ... field

L0D7E          bcc       L0D89                ; No description ... next object
L0D80          leax      1,X                 ; Skip length
L0D82          pshs      Y                   ; Hold end of object
L0D84          jsr       $114C               ; Print description
L0D87          puls      Y                   ; Restore length
L0D89          exg       X,Y                 ; Next object
L0D8B          puls      Y                   ; End of objects
L0D8D          jsr       $0A58               ; All done?

L0D90          bcs       L0D6B                ; No ... keep printing
L0D92          rts                           ; Done

;##Com01_IsObjectInPackOrRoom
L0D93          ldb       ,X+                 ; Get object number from script
L0D95          pshs      X                   ; Hold script pointer
L0D97          jsr       $1133               ; Get object data
L0D9A          jsr       $08AA               ; See if it is in pack or room
L0D9D          puls      X                   ; Restore script
L0D9F          rts                           ; Out

;##Com20_CheckActiveObject
L0DA0          lda       $01D2               ; Active object
L0DA3          cmpa      ,X+                 ; Matches target?
L0DA5          rts                           ; Done

;##Com02_CheckObjectIsOwnedByActive
L0DA6          ldb       ,X+
L0DA8          jmp       $0F5F

;##Com03_IsObjectYAtX
; Check to see if an object is at a target location.
L0DAB          ldd       ,X++                ; Room and object
L0DAD          pshs      X                   ; Hold script
L0DAF          sta       $01AB               ; Remember the room
L0DB2          jsr       $1133               ; Locate the object
L0DB5          jsr       $0A42               ; Skip the length
L0DB8          ldd       ,X++                ; Get the room to A
L0DBA          cmpa      $01AB               ; Is this object in the target place?
L0DBD          puls      X                   ; Restore script
L0DBF          rts                           ; Out

;##Com0C_FAIL
; Always fail
L0DC0          ora       #$01                ; Set the fail flag
L0DC2          rts                           ; Done

;##Com04_PrintSYSTEMOrPlayerMessage
L0DC3          lda       $01D2               ; Active object
L0DC6          cmpa      #$1D                ; Is this the player?


L0DC8          bne       L0DD8                ; No ... must be system

;##Com1F_PrintMessage
L0DCA          ldb       #$1D                ; Player number
L0DCC          pshs      X                   ; Hold script
L0DCE          jsr       $1133               ; Look up Player
L0DD1          jsr       $08AA               ; Is Player in current room?
L0DD4          puls      X                   ; Restore

L0DD6          beq       L0DDF                ; Yes ... do printing
L0DD8          jsr       $0A44               ; Skip to ...
L0DDB          exg       X,Y                 ; ... end of packed message.

L0DDD          bra       L0DE2                ; Return OK but no printing
L0DDF          jsr       $114C               ; Print packed message at X
L0DE2          clra                          ; OK
L0DE3          rts                           ; Done

;##Com07_Look
L0DE4          jsr       $0D4A               ; Print room description
L0DE7          clra                          ; OK
L0DE8          rts                           ; Done

;##Com06_Inventory
L0DE9          pshs      X                   ; Hold script pointer
L0DEB          lda       #$0D                ; Print ...
L0DED          jsr       $1184               ; ... CR
L0DF0          ldx       #$20FF              ; Objects
L0DF3          jsr       $0A42               ; Skip size of objects
;
L0DF6          jsr       $0A58               ; CompareXY

L0DF9          bcc       L0E1F                ; End of list ... out
L0DFB          pshs      Y                   ; Hold end of master list of objects
L0DFD          jsr       $0A42               ; Get pointer to next object
L0E00          ldb       ,X                  ; Object location
L0E02          cmpb      $01D2               ; Active object?

L0E05          bne       L0E19                ; No ... skip this object
L0E07          leax      3,X                 ; Skip data
L0E09          ldb       #$02                ; Find short name ...
L0E0B          jsr       $0A27               ; ... string

L0E0E          bcc       L0E19                ; No short name ... skip
L0E10          leax      1,X                 ; Skip the 02 data id
L0E12          pshs      Y                   ; Hold next-object
L0E14          jsr       $1143               ; Print packed message and CR
L0E17          puls      Y                   ; Restore next-object
L0E19          exg       X,Y                 ; Move to next object
L0E1B          puls      Y                   ; End of master list

L0E1D          bra       L0DF6                ; Do all objects
L0E1F          clra                          ; Success
L0E20          puls      X                   ; Restore script pointer
L0E22          rts                           ; Done

;##Com08_CompareObjectToFirstNoun
L0E23          ldu       $01C6               ; 1st noun data
L0E26          lda       $01C3               ; 1st noun number
;
L0E29          stu       $01D8               ; Hold
L0E2C          tsta                          ; Is there an object?

L0E2D          beq       L0E3F                ; No ... error
L0E2F          ldb       ,X+                 ; Object number from script
L0E31          pshs      X                   ; Hold script
L0E33          jsr       $1133               ; Find object
L0E36          exg       X,Y                 ; Pointer of found object to Y
L0E38          puls      X                   ; Restore script pointer
L0E3A          cmpy      $01D8               ; Object the same?
L0E3E          rts                           ; Done
L0E3F          tstb                          ; B can't be 0 ... Z=0 error
L0E40          rts                           ; Done

;##Com09_CompareObjectToSecondNoun
L0E41          ldu       $01CC               ; 2nd noun data
L0E44          lda       $01C9               ; 2nd noun number

L0E47          bra       L0E29                ; Do compare

;##Com0A_CompareToPhraseForm
L0E49          ldb       ,X+                 ; Compare from script ...
L0E4B          cmpb      $01D1               ; ... to phrase form
L0E4E          rts                           ; Done

;##Com0F_PickUpObject
; Move noun object to pack.
L0E4F          pshs      X                   ; Hold script
L0E51          ldx       $01C0               ; Pointer to noun object
L0E54          jsr       $0A42               ; Skip length
L0E57          lda       $01D2               ; Back pack "location" value
L0E5A          sta       ,X                  ; Move object to pack
L0E5C          clra                          ; OK
L0E5D          puls      X                   ; Restore script
L0E5F          rts                           ; Done

;##Com10_DropObject
; Move noun object to current room.
L0E60          pshs      X                   ; Hold script
L0E62          ldx       $01C0               ; Pointer to noun object
L0E65          jsr       $0A42               ; Skip length
L0E68          lda       $01D5               ; Current room
L0E6B          sta       ,X                  ; Move object to room
L0E6D          puls      X                   ; Restore script
L0E6F          clra                          ; Done
L0E70          rts                           ; Out

;##Com13_PhraseWithRoom1st2nd
L0E71          pshs      X                   ; Save script
L0E73          ldx       $01D6               ; Current room script
L0E76          jsr       $0A42               ; Skip id and length
L0E79          leax      1,X                 ; Skip
L0E7B          ldb       #$04                ; Get ...
L0E7D          jsr       $0A27               ; ... phrase script

L0E80          bcc       L0E8A                ; No phrase script ... skip
L0E82          jsr       $0A42               ; Skip id and length
L0E85          jsr       $0C03               ; Execute

L0E88          beq       L0EC5                ; Move passed ... OK and out
L0E8A          lda       $01C9               ; Is there a 2nd noun?

L0E8D          beq       L0EA6                ; No ... skip
L0E8F          ldx       $01CC               ; Second noun data
L0E92          jsr       $0A42               ; Skip ...
L0E95          leax      3,X                 ; ... object header
L0E97          ldb       #$06                ; Get "noun is second" ...
L0E99          jsr       $0A27               ; ... phrase script

L0E9C          bcc       L0EA6                ; None ... move on
L0E9E          jsr       $0A42               ; Skip header
L0EA1          jsr       $0C03               ; Execute script

L0EA4          beq       L0EC5                ; Script passed ... OK and out
L0EA6          lda       $01C3               ; Is there a 1st noun?

L0EA9          bne       L0EB0                ; Yes ... go do it
L0EAB          puls      X                   ; Restore script
L0EAD          ora       #$01                ; Nobody took the phrase ..
L0EAF          rts                           ; .. error and and out
L0EB0          ldx       $01C6               ; First noun data
L0EB3          jsr       $0A42               ; Skip ...
L0EB6          leax      3,X                 ; ... object header
L0EB8          ldb       #$07                ; Get "noun is first" ...
L0EBA          jsr       $0A27               ; ... phrase script

L0EBD          bcc       L0EAB                ; None ... error and out
L0EBF          jsr       $0A42               ; Skip the id and length
L0EC2          jsr       $0C03               ; Execute script (use return)
L0EC5          puls      X                   ; Restore script pointer
L0EC7          rts                           ; Done

;##Com16_PrintVarShortName
L0EC8          pshs      X                   ; Save script pointer
L0ECA          ldx       $01C0               ; Var noun data
L0ECD          lda       $01BF               ; Var noun index

L0ED0          bra       L0EDA                ; Print short name

;##Com11_Print1stNounShortName
L0ED2          pshs      X                   ; Save script pointer
L0ED4          ldx       $01C6               ; 1st noun data
L0ED7          lda       $01C3               ; 1st noun index
;

L0EDA          beq       L0EC5                ; Return Z=1 return
L0EDC          ldb       #$1D                ; User object
L0EDE          pshs      X                   ; Hold noun data
L0EE0          jsr       $1133               ; Lookup user object
L0EE3          jsr       $08AA               ; User in current room?
L0EE6          puls      X                   ; Restore noun data

L0EE8          bne       L0EFB                ; Not in current room ... skip print
L0EEA          jsr       $0A42               ; Skip object ...
L0EED          leax      3,X                 ; ... header
L0EEF          ldb       #$02                ; Get object ...
L0EF1          jsr       $0A27               ; ... short name

L0EF4          bcc       L0EFB                ; No short name ... out with OK
L0EF6          leax      1,X                 ; Skip the 2
L0EF8          jsr       $114C               ; Print packed message at X
L0EFB          puls      X                   ; Restore script
L0EFD          clra                          ; Return ...
L0EFE          rts                           ; ... OK

;##Com12_Print2ndNounShortName
L0EFF          pshs      X                   ; Save script pointer
L0F01          ldx       $01CC               ; 2nd noun data
L0F04          lda       $01C9               ; 2nd noun index

L0F07          bra       L0EDA                ; Print short name

;##Com15_CheckObjBits
; Check target bits in an object.
L0F09          pshs      X                   ; Hold script pointer
L0F0B          ldx       $01C0               ; Input object pointer
L0F0E          lda       $01BF               ; Var object number

L0F11          beq       L0F21                ; No object ... return error
L0F13          jsr       $0A42               ; Skip the pointer-to-next object
L0F16          leax      2,X                 ; Skip to data byte
L0F18          lda       ,X                  ; Get the object data
L0F1A          puls      X                   ; Restore the script
L0F1C          anda      ,X                  ; Mask off all but target bits
L0F1E          eora      ,X+                 ; Check target bits  (a 1 result in a pass)
L0F20          rts                           ; Done

L0F21          puls      X                   ; Restore script pointer
L0F23          leax      1,X                 ; Skip data
L0F25          ora       #$01                ; Set error
L0F27          rts                           ; Return

;##Com14_ExecuteCommandAndReverseReturn
L0F28          jsr       $0C03               ; Execute command

L0F2B          bne       L0F30                ; Command returned a non-zero ... return zero
L0F2D          ora       #$01                ; Command returned a zero ... return non-zerio
L0F2F          rts                           ; Done
L0F30          clra                          ; Zero
L0F31          rts                           ; Done

;##Com17_MoveObjectXToLocationY
L0F32          ldb       ,X+                 ; Get object number
L0F34          pshs      X                   ; Hold script
L0F36          jsr       $1133               ; Find object
L0F39          jsr       $0A42               ; Skip over length
L0F3C          puls      Y                   ; Script to Y
L0F3E          lda       ,Y+                 ; Get new location
L0F40          sta       ,X                  ; Set object's new location
L0F42          exg       X,Y                 ; X now past data
L0F44          clra                          ; OK
L0F45          rts                           ; Done

;##Com18_CheckVarOwnedByActiveObject
L0F46          pshs      X                   ; Save script pointer
L0F48          ldx       $01C0               ; Var object data
L0F4B          jsr       $0A42               ; Skip length
L0F4E          ldb       ,X                  ; Location
L0F50          puls      X                   ; Restore script
L0F52          lbeq      $08CF               ; Out-of-game ... error and out
L0F56          cmpb      $01D2               ; Is this the active object?

L0F59          beq       L0F45                ; Yes ... return OK
L0F5B          bitb      #$80                ; Test upper bit

L0F5D          bne       L0F45                ; It is in a room ... error and out
;
L0F5F          pshs      X                   ; Hold script
L0F61          jsr       $1133               ; Look up owner object

L0F64          bra       L0F4B                ; Check again

; Execute any turn-scripts on the objects
L0F66          ldx       #$20FF              ; Start of object data
L0F69          clr       $01D0               ; Object number
L0F6C          jsr       $0A42               ; Skip length
L0F6F          jsr       $0A58               ; End of objects?

L0F72          bcc       L0F45                ; Yes ... out
L0F74          inc       $01D0               ; Next object number
L0F77          pshs      Y                   ; Hold end-of-objects
L0F79          jsr       $0A42               ; Skip length
L0F7C          lda       ,X                  ; Location
L0F7E          sta       $01AB               ; Hold
L0F81          pshs      Y                   ; End of object
L0F83          lda       ,X                  ; Location

L0F85          beq       L0FC9                ; If it is out-of-game it doesn't get a turn
L0F87          leax      3,X                 ; Skip data
L0F89          ldb       #$08                ; Turn-script
L0F8B          jsr       $0A27               ; Find turn script

L0F8E          bcc       L0FC9                ; Nothing to do ... next object
L0F90          jsr       $0A42               ; Skip length
L0F93          pshs      X                   ; Hold pointer
L0F95          jsr       $12A8               ; Generate random number
L0F98          ldb       $01D0               ; Current object number ...
L0F9B          stb       $01D2               ; ... is now the active object
L0F9E          jsr       $1133               ; Get its data pointer
L0FA1          stx       $01D3               ; Hold pointer to active object data
L0FA4          ldb       $01AB               ; Object's location
L0FA7          tstb                          ; Check upper bit

L0FA8          bmi       L0FB8                ; If in a room ... go handle
L0FAA          jsr       $1133               ; Get object's owner
L0FAD          jsr       $0A42               ; Skip length
L0FB0          ldb       ,X                  ; Get owner location

L0FB2          bne       L0FA7                ; Still in game ... find room location of owner chain
L0FB4          puls      X                   ; Restore pointer

L0FB6          bra       L0FC9                ; Next object
L0FB8          stb       $01D5               ; Objects location
L0FBB          ldx       #$1523              ; Get room ...
L0FBE          jsr       $0A1F               ; ... scripts for object
L0FC1          stx       $01D6               ; Hold
L0FC4          puls      X                   ; Restore turn-script
L0FC6          jsr       $0C03               ; Execute turn-script
L0FC9          puls      X                   ; Restore
L0FCB          puls      Y                   ; Restore

L0FCD          bra       L0F6F                ; Next object

;##Com05_IsRandomLessOrEqual
L0FCF          lda       $1338               ; Random value
L0FD2          cmpa      ,X+                 ; Compare random value to script

L0FD4          bcs       L0FDB                ; If less than ... OK

L0FD6          beq       L0FDB                ; If the same ... OK
L0FD8          ora       #$01                ; Greater than ... FAIL
L0FDA          rts                           ; Done
L0FDB          clra                          ; Less than or equal ... OK
L0FDC          rts                           ; Done

;##Com1D_AttackObject
L0FDD          lda       ,X+                 ; Get attack value
L0FDF          sta       $01AB               ; Hold attack value
L0FE2          pshs      X                   ; Hold script
L0FE4          ldx       $01C0               ; Target object data
L0FE7          jsr       $0A42               ; Skip length
L0FEA          leax      3,X                 ; Skip object data
L0FEC          pshs      X                   ; Hold X ...
L0FEE          pshs      Y                   ; ... and Y
L0FF0          ldb       #$09                ; Get target's ...
L0FF2          jsr       $0A27               ; ... combat info

L0FF5          bcc       L1020               ; Not found. Do nothing (return OK)
L0FF7          jsr       $0A42               ; Skip length
L0FFA          leax      1,X                 ; Hit points
L0FFC          lda       ,X                  ; Hit points
L0FFE          suba      $01AB               ; Subtract attack from hit points

L1001          bcc       L1004               ; Not negative ... keep it
L1003          clra                          ; Floor the hit points
L1004          sta       ,X                  ; New hit points
L1006          puls      Y                   ; Restore ...
L1008          puls      X                   ; ... X and Y
L100A          tsta                          ; Hit points zero?

L100B          beq       L1011               ; Yes ... object dies
L100D          puls      X                   ; Restore list
L100F          clra                          ; Return OK
L1010          rts                           ; Done

;Handle object being killed
L1011          ldb       #$0A                ; Object being killed script
L1013          jsr       $0A27               ; Find a script for handling being killed

L1016          bcc       L100D               ; Not found ... nothing happens (return OK)
L1018          jsr       $0A42               ; Skip id and length
L101B          jsr       $0C03               ; Execute "being killed" script

L101E          bra       L100D               ; Done (return OK)

L1020          puls      Y                   ; Reset ...
L1022          puls      X                   ; ... stack

L1024          bra       L100D               ; Return OK

;##Com1E_SwapObjects
L1026          ldb       ,X+                 ; 1st object number
L1028          lda       ,X+                 ; 2nd object
L102A          sta       $01AB               ; Hold second object
L102D          pshs      X                   ; Hold script
L102F          jsr       $1133               ; Look up object
L1032          jsr       $0A42               ; Skip length
L1035          tfr       X,U                 ; 1st object pointer to U
L1037          ldb       $01AB               ; 2nd object
L103A          jsr       $1133               ; Look up object
L103D          jsr       $0A42               ; Skip length
L1040          lda       ,X                  ; Swap ...
L1042          ldb       ,U                  ; ... location ...
L1044          sta       ,U                  ; ... of ...
L1046          stb       ,X                  ; ... objects

L1048          puls      X                   ; Restore script pointer
L104A          clra                          ; Z=1 OK
L104B          rts                           ; Done

;##Com22_CompareHealthToValue
L104C          lda       ,X+                 ; Get value
L104E          pshs      X                   ; Hold script pointer
L1050          sta       $01AB               ; Hold value
L1053          ldx       $01C0               ; Var object data
L1056          jsr       $0A42               ; Skip length
L1059          leax      3,X                 ; Skip data
L105B          ldb       #$09                ; Get object ...
L105D          jsr       $0A27               ; ... hit points

L1060          bcc       L1070               ; Doesn't have any ... error and out
L1062          jsr       $0A42               ; Skip length
L1065          leax      1,X                 ; Get current ...
L1067          lda       ,X                  ; ... hit points
L1069          cmpa      $01AB               ; Compare hit points to value

L106C          bcs       L1075               ; Less than ..

L106E          beq       L1075               ; ... or equal ... OK and out
L1070          puls      X                   ; Restore script
L1072          ora       #$01                ; Error
L1074          rts                           ; Done
L1075          puls      X                   ; Restore script
L1077          clra                          ; OK
L1078          rts                           ; Done

;##Com23_HealVarObject
L1079          lda       ,X+                 ; Get healing value
L107B          sta       $01AB               ; Hold it
L107E          pshs      X                   ; Hold script
L1080          ldx       $01C0               ; Var object data
L1083          jsr       $0A42               ; Skip length
L1086          leax      3,X                 ; Skip data
L1088          ldb       #$09                ; Get object ...
L108A          jsr       $0A27               ; ... hit points

L108D          bcc       L1075               ; No entry ... do nothing (but OK)
L108F          jsr       $0A42               ; Skip length
L1092          ldd       ,X                  ; Get HP info
L1094          addb      $01AB               ; Add to health
L1097          sta       $01AB               ; Max value
L109A          cmpb      $01AB               ; Over the max?

L109D          bcs       L10A2               ; No ... keep it
L109F          ldb       $01AB               ; Use max value
L10A2          leax      1,X                 ; Store ...
L10A4          stb       ,X                  ; ... new health

L10A6          bra       L1075               ; OK out

;##Com25_RestartGame
; No return to script
L10A8          lda       #$0D                ; Print first ...
L10AA          jsr       $1184               ; ... CR
L10AD          lda       #$0D                ; Print second ...
L10AF          jsr       $1184               ; ... CR
L10B2          jmp       $060C               ; Restart game

;##Com24_EndlessLoop

L10B5          bra       L10B5               ; Spin forever

; This snippet of code is never called by anyone, but this is a print
; for null-terminate ASCII strings. Presumably the PrintScore function
; used this at one time.

L10B7          lda       ,Y+                 ; Get next character

L10B9          beq       L10C4               ; Null means done
L10BB          pshs      Y                   ; Hold Y
L10BD          jsr       $1184               ; Print character
L10C0          puls      Y                   ; Restore Y

L10C2          bra       L10B7               ; Keep going
L10C4          rts                           ; Done

;##Com26_PrintScore
; Second byte of object data is points. If the object is in the
; treasure room (dropped or carried) it counts double.
L10C5          pshs      X
L10C7          clr       $01AF               ; Score tally
L10CA          clr       $01B0
L10CD          lda       $01D5               ; Player location
L10D0          cmpa      #$96                ; Player in the treasure room?

L10D2          bne       L10D7               ; No ... regular score
L10D4          inc       $01B0               ; Yes ... carried objects count double
L10D7          ldx       #$20FF              ; Object data
L10DA          jsr       $0A42               ; Skip header
L10DD          jsr       $0A58               ; Reached end?

L10E0          bcc       L110F               ; Yes ... move on
L10E2          pshs      Y                   ; Hold end
L10E4          jsr       $0A42               ; Skip object length
L10E7          ldb       ,X+                 ; Get owner
L10E9          cmpb      #$96                ; Treasure room?

L10EB          beq       L10F1               ; Yes ... count it
L10ED          cmpb      #$1D                ; Carried by user?

L10EF          bne       L1109               ; No ... next object
L10F1          lda       $01AF               ; Score tally
L10F4          adda      ,X                  ; Add to score value
L10F6          daa                           ; Decimal adjust
L10F7          sta       $01AF               ; New score
L10FA          cmpb      #$96                ; Treasure room?

L10FC          beq       L1103               ; Yes ... counts double
L10FE          tst       $01B0               ; Player in treasure room?

L1101          beq       L1109               ; No ... just count once
L1103          adda      ,X                  ; Double ...
L1105          daa                           ; ... the ...
L1106          sta       $01AF               ; ... score value
L1109          tfr       Y,X                 ; Next object
L110B          puls      Y                   ; Restore end of list

L110D          bra       L10DD               ; Do all objects
;        
L110F          lda       $01AF               ; Score value
L1112          asra                          ; Left ...
L1113          asra                          ; ... most ...
L1114          asra                          ; ... digit ...
L1115          asra                          ; ... value
L1116          adda      #$30                ; Convert to ASCII
L1118          jsr       $1184               ; Print the left digit
L111B          lda       $01AF               ; Score value
L111E          anda      #$0F                ; Mask off the right digit
L1120          adda      #$30                ; Convert ot ASCII
L1122          jsr       $1184               ; Print the right digit
L1125          lda       #$2E                ; Print ...
L1127          jsr       $1184               ; ... "."
L112A          lda       #$20                ; Print ...
L112C          jsr       $1184               ; ... SPACE
L112F          puls      X                   ; Restore script
L1131          clra                          ; OK
L1132          rts                           ; Done

; Find object index in B
L1133          ldx       #$20FF              ; Start of objects
L1136          jsr       $0A42               ; Skip end
L1139          decb                          ; Found desired object?

L113A          beq       L10C4               ; Yes ... out OK
L113C          jsr       $0A42               ; Length of object
L113F          exg       X,Y                 ; Next object

L1141          bra       L1139               ; Keep looking

; Print packed message and CR
L1143          jsr       $114C               ; Print packed message at X
L1146          lda       #$0D                ; Print ...
L1148          jsr       $1184               ; ... CR
L114B          rts                           ; Done

;##PrintPackedMessage
; X points to compressed string. First byte (or two) is the length.
L114C          clra                          ; Assume MSB is 0
L114D          ldb       ,X                  ; Get length
L114F          bitb      #$80                ; Is it single byte length?

L1151          beq       L1157               ; Yes ... use D
L1153          lda       ,X+                 ; Get the ...
L1155          anda      #$7F                ; ... MSB and ...
L1157          ldb       ,X+                 ; ... LSB
L1159          std       $01AB               ; Store byte count
L115C          ldd       $01AB               ; Number of bytes left in message
L115F          cmpd      #$0002              ; Less than 2?

L1163          bcs       L1173               ; Yes ... these aren't compressed
L1165          jsr       $11EC               ; Decompress and print two bytes pointed to by X
L1168          ldd       $01AB               ; Get byte count
L116B          subd      #$0002              ; Handled 2
L116E          std       $01AB               ; Store count

L1171          bra       L115C               ; Keep decompressing
L1173          tstb                          ; Any characters on the end to print?

L1174          beq       L117E               ; No ... skip
L1176          lda       ,X+                 ; Get character
L1178          jsr       $1184               ; Print the character
L117B          decb                          ; Decrement count

L117C          bra       L1173               ; Keeop going
L117E          lda       #$20                ; Print ...
L1180          jsr       $1184               ; ... space on end
L1183          rts                           ; Done

;##PrintCharacterAutoWrap
; Print character in A to screen. This handles auto word-wrapping and
; auto MORE prompting.
;
L1184          pshs      B,A                 ; Hold B and A
L1186          lda       $01BE               ; Last printed character
L1189          cmpa      #$20                ; Last printed a space?

L118B          bne       L11A7               ; No ... print this
L118D          puls      A,B                 ; Hold
L118F          cmpa      #$20                ; Space now?

L1191          beq       L11EA               ; Yes ... just ignore
L1193          cmpa      #$2E                ; A '.' ?

L1195          beq       L119F               ; Yes. Ignore leading space.
L1197          cmpa      #$3F                ; A '?' ?

L1199          beq       L119F               ; Yes. Ignore leading space.
L119B          cmpa      #$21                ; A '!' ?

L119D          bne       L11A9               ; Yes. Ignore leading space.
L119F          ldu       >$88                ; Back screen ...
L11A1          leau      -1,U                ; ... pointer up ...
L11A3          stu       >$88                ; ... over ignored space

L11A5          bra       L11A9               ; Store and print
L11A7          puls      A,B                 ; Restore A and B
L11A9          sta       $01BE               ; Last printed character
L11AC          jsr       [$A002]             ; Output character
L11B0          lda       >$89                ; LSB of screen position
L11B2          cmpa      #$FE                ; Reached end of screen?

L11B4          bcs       L11EA               ; No ... done
L11B6          ldu       >$88                ; Cursor position
L11B8          leau      $-21,U              ; Back up to end of current row
L11BB          lda       #$0D                ; CR ...
L11BD          jsr       [$A002]             ; ... to screen
L11C1          lda       ,U                  ; Find the ...
L11C3          cmpa      #$60                ; ... space before ...

L11C5          beq       L11CB               ; ... the last ...
L11C7          leau      -1,U                ; ... word ...

L11C9          bra       L11C1               ; ... on the line
L11CB          leau      1,U                 ; Now pointing to last word on line
L11CD          lda       ,U                  ; Get next character in buffer
L11CF          cmpa      #$60                ; Is it a space?

L11D1          beq       L11EA               ; Yes ... all done
L11D3          pshs      B                   ; Hold B
L11D5          ldb       #$60                ; Put ...
L11D7          stb       ,U                  ; ... space
L11D9          puls      B                   ; Restore B
L11DB          cmpa      #$60                ; Make sure ...

L11DD          bcs       L11E1               ; ... upper ...
L11DF          suba      #$40                ; ... case
L11E1          sta       $01BE               ; Last printed character
L11E4          jsr       [$A002]             ; Output to screen

L11E8          bra       L11CB               ; Move overhang to next line
L11EA          rts                           ; Done
L11EB          rts                           ; OOPS

;##UnpackBytes
; Unpack three characters stored in 2 bytes pointed to by X and print to screen.
; Every 2 bytes holds 3 characters. Each character can be from 0 to 39.
; 40*40*40 = 64000 ... totally ingenious.
;
L11EC          ldy       #$12A4              ;
L11F0          ldb       #$03                ;
L11F2          stb       $12A1               ;
L11F5          lda       ,X+                 ;
L11F7          sta       $01DE               ;
L11FA          lda       ,X+                 ;
L11FC          sta       $01DD               ;
L11FF          leay      3,Y                 ;
L1201          ldu       #$0028              ;
L1204          stu       $12A2               ;
L1207          lda       #$11                ;
L1209          sta       $01DA               ;
L120C          clr       $01DB               ;
L120F          clr       $01DC               ;
L1212          rol       $01DE               ;
L1215          rol       $01DD               ;
L1218          dec       $01DA               ;

L121B          beq       L1256               ;
L121D          lda       #$00                ;
L121F          adca      #$00                ; This algorithm is identical to the decompression
L1221          asl       $01DC               ; used in Pyramid2000. Check the comments there for
L1224          rol       $01DB               ; more detail.
L1227          adda      $01DC               ;
L122A          suba      $12A3               ;
L122D          sta       $01E0               ;
L1230          lda       $01DB               ;
L1233          sbca      $12A2               ;
L1236          sta       $01DF               ;

L1239          bcc       L1246               ;
L123B          ldd       $01DF               ;
L123E          addd      $12A2               ;
L1241          std       $01DB               ;

L1244          bra       L124C               ;
L1246          ldd       $01DF               ;
L1249          std       $01DB               ;
; Compliment C flag and continue

L124C          bcs       L1252               ;
L124E          orcc      #$01                ;

L1250          bra       L1212               ;
L1252          andcc     #$FE                ;

L1254          bra       L1212               ;
; Process the result of the division
L1256          ldd       $01DB               ;
L1259          addd      #$1279              ;
L125C          tfr       D,U                 ;
L125E          lda       ,U                  ;
L1260          sta       ,-Y                 ;
L1262          dec       $12A1               ;

L1265          bne       L1201               ;
L1267          ldy       #$12A4              ;
L126B          ldb       #$03                ;
L126D          lda       ,Y+                 ;
L126F          jsr       $1184               ; Print character
L1272          decb                          ;

L1273          bne       L126D               ;
L1275          ldd       $01AB               ;
L1278          rts                           ;

; Character translation table
;     ?  !  2  .  "  '  <  >  /  0  3  A  B  C  D  E
L1279          fcb       $3C,$3E,$2F,$30,$33,$41,$42,$43,$44,$45
;     F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U
L1289          fcb       $4C,$4D,$4E,$4F,$50,$51,$52,$53,$54,$55
L1299          fcb       $2C,$2E
;     V  W  X  Y  Z  -  ,  .

L12A1          fcb       $00                 ; Temporaries for decompression algorithm above            

; Generate random number
L12A8          pshs      X,B                 ; Random number generator. Uses seed at 13B8.
L12AA          ldx       #$1338              ;
L12AD          ldb       #$17                ;
L12AF          lda       ,X                  ;
L12B1          leax      1,X                 ;
L12B3          orcc      #$01                ;
L12B5          anda      #$06                ;

L12B7          beq       L12C0               ;
L12B9          cmpa      #$06                ;
L12BB          orcc      #$01                ;

L12BD          beq       L12C0               ;
L12BF          clra                          ;
L12C0          lda       ,X                  ;

L12C2          bcs       L12C7               ;
L12C4          lsra                          ;

L12C5          bra       L12CA               ;
L12C7          lsra                          ;
L12C8          ora       #$80                ;
L12CA          sta       ,X                  ;
L12CC          leax      -1,X                ;
L12CE          lda       ,X                  ;

L12D0          bcs       L12D5               ;
L12D2          lsra                          ;

L12D3          bra       L12D8               ;
L12D5          lsra                          ;
L12D6          ora       #$80                ;
L12D8          anda      #$FE                ;
L12DA          sta       ,X                  ;
L12DC          decb                          ;

L12DD          bne       L12B1               ;
L12DF          lda       $1339               ;
L12E2          puls      B,X                 ;
L12E4          rts                           ;

; -----------------------------------------------------------------------------------------------------------------
; Data Here Down
; -----------------------------------------------------------------------------------------------------------------

; -----------------------------------------------------------------------------------------------------------------
; Data Here Down
; -----------------------------------------------------------------------------------------------------------------

;##CommandJumpTable 
L12E5          fcb       $0C,$81             ; 00            
L12E7          fcb       $0D,$93             ; 01            
L12E9          fcb       $0D,$A6             ; 02            
L12EB          fcb       $0D,$AB             ; 03            
L12ED          fcb       $0D,$C3             ; 04            
L12EF          fcb       $0F,$CF             ; 05            
L12F1          fcb       $0D,$E9             ; 06            
L12F3          fcb       $0D,$E4             ; 07            
L12F5          fcb       $0E,$23             ; 08            
L12F7          fcb       $0E,$41             ; 09           
L12F9          fcb       $0E,$49             ; 0A            
L12FB          fcb       $0C,$58             ; 0B            
L12FD          fcb       $0D,$C0             ; 0C           
L12FF          fcb       $0C,$27             ; 0D           
L1301          fcb       $0C,$3F             ; 0E            
L1303          fcb       $0E,$4F             ; 0F           
L1305          fcb       $0E,$60             ; 10            
L1307          fcb       $0E,$D2             ; 11           
L1309          fcb       $0E,$FF             ; 12            
L130B          fcb       $0E,$71             ; 13            
L130D          fcb       $0F,$28             ; 14           
L130F          fcb       $0F,$09             ; 15            
L1311          fcb       $0E,$C8             ; 16            
L1313          fcb       $0F,$32             ; 17            
L1315          fcb       $0F,$46             ; 18            
L1317          fcb       $0C,$8D             ; 19           
L1319          fcb       $0C,$AE             ; 1A           
L131B          fcb       $0C,$BC             ; 1B            
L131D          fcb       $0C,$CA             ; 1C           
L131F          fcb       $0F,$DD             ; 1D            
L1321          fcb       $10,$26             ; 1E
L1323          fcb       $0D,$CA             ; 1F          
L1325          fcb       $0D,$A0             ; 20            
L1327          fcb       $0C,$DD             ; 21            
L1329          fcb       $10,$4C             ; 22                
L132B          fcb       $10,$79             ; 23               
L132D          fcb       $10,$B5             ; 24                
L132F          fcb       $10,$A8             ; 25               
L1331          fcb       $10,$C5             ; 26

; Multi-verb replacement list (code doesn't work that uses this anyway)              
L1333          fcb       $00                 ; List is the length. List is pointed to by 1331 which is ignored

; Random number seed
L1334          fcb       $12,$23,$44,$1D,$27,$4D,$2D,$13,

;##FeedbackPrompts
; "?VERB?"  
L133C          fcb       $06,$3F,$56,$45,$52,$42,$3F,
;       
; "?WHAT?"
L1343          fcb       $06,$3F,$57,$48,$41,$54,$3F,
;          
; "?WHICH?"        
L134A          fcb       $07,$3F,$57,$48,$49,$43,$48,$3F,
;           
; "?PHRASE?"         
L1352          fcb       $08,$3F,$50,$48,$52,$41,$53,$45,$3F,

;##PhraseList 
L135B          fcb       $05,$00,$00,$00,$01 ; 01: NORTH *     *          *       
L1360          fcb       $06,$00,$00,$00,$02 ; 02: SOUTH *     *          *       
L1365          fcb       $07,$00,$00,$00,$03 ; 03: EAST *      *          *       
L136A          fcb       $08,$00,$00,$00,$04 ; 04: WEST *      *          *       
L136F          fcb       $09,$00,$20,$00,$05 ; 05: GET *       ..C.....   *       
L1374          fcb       $34,$07,$00,$80,$05 ; 05: PICK UP     *          u.......
L1379          fcb       $34,$07,$80,$00,$05 ; 05: PICK UP     u.......   *       
L137E          fcb       $0A,$00,$20,$00,$06 ; 06: DROP *      ..C.....   *       
L1383          fcb       $0A,$05,$80,$80,$0F ; 0F: DROP IN     u.......   u.......
L1388          fcb       $0A,$06,$00,$88,$16 ; 16: DROP OUT    *          u...A...
L138D          fcb       $0B,$00,$00,$00,$07 ; 07: INVENT *    *          *       
L1392          fcb       $01,$00,$04,$00,$08 ; 08: READ *      .....X..   *       
L1397          fcb       $04,$02,$10,$40,$09 ; 09: ATTACK WITH ...P....   .v......
L139C          fcb       $0C,$00,$00,$00,$0A ; 0A: LOOK *      *          *       
L13A1          fcb       $0C,$03,$00,$80,$0B ; 0B: LOOK AT     *          u.......
L13A6          fcb       $0C,$04,$00,$80,$0C ; 0C: LOOK UNDER  *          u.......
L13AB          fcb       $0C,$05,$00,$80,$10 ; 10: LOOK IN     *          u.......
L13B0          fcb       $03,$03,$40,$10,$0D ; 0D: THROW AT    .v......   ...P....
L13B5          fcb       $03,$05,$80,$80,$39 ; 39: THROW IN    u.......   u.......
L13BA          fcb       $03,$08,$00,$20,$06 ; 06: THROW DOWN  *          ..C.....
L13BF          fcb       $03,$01,$80,$10,$0E ; 0E: THROW TO    u.......   ...P....
L13C4          fcb       $0D,$01,$80,$10,$0E ; 0E: GIVE TO     u.......   ...P....
L13C9          fcb       $0E,$00,$80,$00,$0B ; 0B: EXAMIN *    u.......   *       
L13CE          fcb       $0E,$05,$00,$80,$0B ; 0B: EXAMIN IN   *          u.......
L13D3          fcb       $0F,$00,$80,$00,$11 ; 11: OPEN *      u.......   *       
L13D8          fcb       $0F,$02,$80,$80,$3A ; 3A: OPEN WITH   u.......   u.......
L13DD          fcb       $10,$00,$80,$00,$12 ; 12: PULL *      u.......   *       
L13E2          fcb       $10,$08,$00,$80,$12 ; 12: PULL DOWN   *          u.......
L13E7          fcb       $10,$06,$00,$80,$05 ; 05: PULL OUT    *          u.......
L13EC          fcb       $10,$06,$80,$00,$05 ; 05: PULL OUT    u.......   *       
L13F1          fcb       $10,$07,$00,$80,$2D ; 2D: PULL UP     *          u.......
L13F6          fcb       $10,$07,$80,$00,$2D ; 2D: PULL UP     u.......   *       
L13FB          fcb       $11,$02,$88,$88,$14 ; 14: LIGHT WITH  u...A...   u...A...
L1400          fcb       $12,$00,$80,$00,$15 ; 15: EAT *       u.......   *       
L1405          fcb       $13,$06,$00,$88,$16 ; 16: BLOW OUT    *          u...A...
L140A          fcb       $14,$00,$88,$00,$16 ; 16: EXTING *    u...A...   *       
L140F          fcb       $15,$00,$80,$00,$17 ; 17: CLIMB *     u.......   *       
L1414          fcb       $15,$07,$00,$80,$17 ; 17: CLIMB UP    *          u.......
L1419          fcb       $15,$08,$00,$80,$17 ; 17: CLIMB DOWN  *          u.......
L141E          fcb       $15,$09,$00,$80,$17 ; 17: CLIMB OVER  *          u.......
L1423          fcb       $15,$0C,$00,$80,$17 ; 17: CLIMB ON    *          u.......
L1428          fcb       $15,$05,$00,$00,$36 ; 36: CLIMB IN    *          *       
L142D          fcb       $15,$05,$00,$80,$36 ; 36: CLIMB IN    *          u.......
L1432          fcb       $15,$06,$00,$00,$37 ; 37: CLIMB OUT   *          *       
L1437          fcb       $15,$06,$00,$80,$37 ; 37: CLIMB OUT   *          u.......
L143C          fcb       $15,$04,$00,$80,$38 ; 38: CLIMB UNDER *          u.......
L1441          fcb       $16,$00,$80,$00,$18 ; 18: RUB *       u.......   *       
L1446          fcb       $18,$00,$00,$00,$1A ; 1A: ??? *       *          *       
L144B          fcb       $05,$01,$00,$00,$01 ; 01: NORTH TO    *          *       
L1450          fcb       $06,$01,$00,$00,$02 ; 02: SOUTH TO    *          *       
L1455          fcb       $07,$01,$00,$00,$03 ; 03: EAST TO     *          *       
L145A          fcb       $08,$01,$00,$00,$04 ; 04: WEST TO     *          *       
L145F          fcb       $0A,$08,$00,$20,$06 ; 06: DROP DOWN   *          ..C.....
L1464          fcb       $0A,$08,$20,$00,$06 ; 06: DROP DOWN   ..C.....   *       
L1469          fcb       $0A,$0A,$20,$80,$06 ; 06: DROP BEHIND ..C.....   u.......
L146E          fcb       $0A,$04,$20,$80,$06 ; 06: DROP UNDER  ..C.....   u.......
L1473          fcb       $0A,$0C,$20,$80,$06 ; 06: DROP ON     ..C.....   u.......
L1478          fcb       $0C,$07,$00,$00,$0A ; 0A: LOOK UP     *          *       
L147D          fcb       $0C,$08,$00,$00,$0A ; 0A: LOOK DOWN   *          *       
L1482          fcb       $0C,$09,$80,$00,$0B ; 0B: LOOK OVER   u.......   *       
L1487          fcb       $0C,$09,$00,$80,$0B ; 0B: LOOK OVER   *          u.......
L148C          fcb       $0C,$0B,$00,$00,$0A ; 0A: LOOK AROUND *          *       
L1491          fcb       $0C,$0A,$00,$00,$0A ; 0A: LOOK BEHIND *          *       
L1496          fcb       $0C,$0B,$00,$80,$1B ; 1B: LOOK AROUND *          u.......
L149B          fcb       $0C,$0A,$00,$80,$1C ; 1C: LOOK BEHIND *          u.......
L14A0          fcb       $32,$00,$00,$00,$21 ; 21: PLUGH *     *          *       
L14A5          fcb       $2B,$00,$00,$00,$22 ; 22: SCREAM *    *          *       
L14AA          fcb       $2D,$00,$00,$00,$23 ; 23: QUIT *      *          *       
L14AF          fcb       $2C,$00,$00,$00,$25 ; 25: LEAVE *     *          *       
L14B4          fcb       $2C,$00,$20,$00,$06 ; 06: LEAVE *     ..C.....   *       
L14B9          fcb       $21,$00,$00,$00,$25 ; 25: GO *        *          *       
L14BE          fcb       $21,$01,$00,$80,$3D ; 3D: GO TO       *          u.......
L14C3          fcb       $21,$05,$00,$80,$36 ; 36: GO IN       *          u.......
L14C8          fcb       $21,$06,$00,$80,$37 ; 37: GO OUT      *          u.......
L14CD          fcb       $21,$04,$00,$80,$38 ; 38: GO UNDER    *          u.......
L14D2          fcb       $21,$07,$00,$80,$17 ; 17: GO UP       *          u.......
L14D7          fcb       $21,$08,$00,$80,$17 ; 17: GO DOWN     *          u.......
L14DC          fcb       $21,$0B,$00,$80,$26 ; 26: GO AROUND   *          u.......
L14E1          fcb       $23,$00,$80,$00,$27 ; 27: KICK *      u.......   *       
L14E6          fcb       $23,$08,$00,$80,$27 ; 27: KICK DOWN   *          u.......
L14EB          fcb       $23,$05,$00,$80,$27 ; 27: KICK IN     *          u.......
L14F0          fcb       $24,$02,$10,$80,$28 ; 28: FEED WITH   ...P....   u.......
L14F5          fcb       $24,$01,$80,$10,$29 ; 29: FEED TO     u.......   ...P....
L14FA          fcb       $28,$00,$00,$00,$2C ; 2C: SCORE *     *          *       
L14FF          fcb       $1C,$00,$80,$00,$2D ; 2D: LIFT *      u.......   *       
L1504          fcb       $1F,$00,$00,$00,$2F ; 2F: WAIT *      *          *       
L1509          fcb       $1F,$0B,$00,$00,$2F ; 2F: WAIT AROUND *          *       
L150E          fcb       $09,$07,$00,$00,$2F ; 2F: GET UP      *          *       
L1513          fcb       $20,$09,$00,$80,$34 ; 34: JUMP OVER   *          u.......
L1518          fcb       $20,$05,$00,$80,$36 ; 36: JUMP IN     *          u.......
L151D          fcb       $20,$06,$00,$80,$37 ; 37: JUMP OUT    *          u.......
L1522          fcb       $00,


;##RoomDescriptions
L1523          fcb       $00,$8B,$D9         ; Script list size=0BD9
L1526          fcb       $81,$5E,$00         ;   Script number=81 size=005E data=00
L1529          fcb       $03,$52             ;     Data tag=03 size=0052
L152B          fcb       $C7,$DE,$94,$14,$4B,$5E,$83,$96,$5F,$17,$46,$48 ;       YOU ARE IN A SMALL ROOM WITH GRANITE WALLS
L1537          fcb       $39,$17,$DB,$9F,$56,$D1,$09,$71,$D0,$B0,$7F,$7B ;       AND FLOOR. THERE IS A SMALL OPENING TO THE
L1543          fcb       $F3,$17,$0D,$8D,$90,$14,$08,$58,$81,$8D,$1B,$B5 ;       EAST AND A LARGE HOLE IN THE CEILING.
L154F          fcb       $5F,$BE,$5B,$B1,$4B,$7B,$55,$45,$8E,$91,$11,$8A ;       .
L155B          fcb       $F0,$A4,$91,$7A,$89,$17,$82,$17,$47,$5E,$66,$49 ;       .
L1567          fcb       $90,$14,$03,$58,$3B,$16,$B7,$B1,$A9,$15,$DB,$8B ;       .
L1573          fcb       $83,$7A,$5F,$BE,$D7,$14,$43,$7A,$CF,$98 ;       .
L157D          fcb       $04,$07             ;     Data tag=04 size=0007
L157F          fcb       $0B,$05             ;         Command_0B_SWITCH size=05
L1581          fcb       $0A,$03             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1583          fcb       $02                 ;           IF_NOT_JUMP address=1586
L1584          fcb       $00,$82             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=82
L1586          fcb       $82,$80,$C4,$00     ;   Script number=82 size=00C4 data=00
L158A          fcb       $03,$80,$AB         ;     Data tag=03 size=00AB
L158D          fcb       $C7,$DE,$94,$14,$4B,$5E,$83,$96,$3B,$16,$B7,$B1 ;       YOU ARE IN A LARGE RECTANGULAR ROOM. ON THE
L1599          fcb       $2F,$17,$FB,$55,$C7,$98,$54,$8B,$39,$17,$FF,$9F ;       FLOOR OF THE EAST SIDE OF THE ROOM IS AN
L15A5          fcb       $C0,$16,$82,$17,$48,$5E,$81,$8D,$91,$AF,$96,$64 ;       INTRICATE ORIENTAL RUG STRETCHING BETWEEN
L15B1          fcb       $DB,$72,$95,$5F,$15,$BC,$FF,$78,$B8,$16,$82,$17 ;       THE NORTH AND SOUTH WALLS. IN THE EAST WALL
L15BD          fcb       $54,$5E,$3F,$A0,$D5,$15,$90,$14,$D0,$15,$F3,$BF ;       IS A HUGE CARVED WOODEN DOOR. TO THE SOUTH,
L15C9          fcb       $16,$53,$51,$5E,$07,$B2,$BB,$9A,$14,$8A,$6B,$C4 ;       A SMALL HOLE LEADS TO A DARK PASSAGE WAY.
L15D5          fcb       $0C,$BA,$7D,$62,$90,$73,$C4,$6A,$91,$62,$30,$60 ;       .
L15E1          fcb       $82,$17,$50,$5E,$BE,$A0,$03,$71,$33,$98,$47,$B9 ;       .
L15ED          fcb       $53,$BE,$0E,$D0,$2F,$8E,$D0,$15,$82,$17,$47,$5E ;       .
L15F9          fcb       $66,$49,$F3,$17,$F3,$8C,$4B,$7B,$4A,$45,$77,$C4 ;       .
L1605          fcb       $D3,$14,$0F,$B4,$19,$58,$36,$A0,$83,$61,$81,$5B ;       .
L1611          fcb       $1B,$B5,$6B,$BF,$5F,$BE,$61,$17,$82,$C6,$03,$EE ;       .
L161D          fcb       $5F,$17,$46,$48,$A9,$15,$DB,$8B,$E3,$8B,$0B,$5C ;       .
L1629          fcb       $6B,$BF,$46,$45,$35,$49,$DB,$16,$D3,$B9,$9B,$6C ;       .
L1635          fcb       $1B,$D0,$2E         ;       .
L1638          fcb       $04,$13             ;     Data tag=04 size=0013
L163A          fcb       $0B,$11             ;         Command_0B_SWITCH size=11
L163C          fcb       $0A,$04             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L163E          fcb       $02                 ;           IF_NOT_JUMP address=1641
L163F          fcb       $00,$81             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=81
L1641          fcb       $02                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L1642          fcb       $02                 ;           IF_NOT_JUMP address=1645
L1643          fcb       $00,$83             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=83
L1645          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1646          fcb       $06                 ;           IF_NOT_JUMP address=164D
L1647          fcb       $0D,$04             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=4
L1649          fcb       $20,$1D             ;               Command_20_CHECK_ACTIVE_OBJECT object=1D(USER)
L164B          fcb       $8B                 ;               CommonCommand_8B
L164C          fcb       $81                 ;               CommonCommand_81
L164D          fcb       $83,$3A,$00         ;   Script number=83 size=003A data=00
L1650          fcb       $03,$2A             ;     Data tag=03 size=002A
L1652          fcb       $C7,$DE,$94,$14,$4B,$5E,$83,$96,$FB,$14,$4B,$B2 ;       YOU ARE IN A DARK PASSAGE WAY WHICH SLOPES
L165E          fcb       $55,$A4,$09,$B7,$59,$5E,$3B,$4A,$23,$D1,$13,$54 ;       UP AND TO THE SOUTH.
L166A          fcb       $C9,$B8,$F5,$A4,$B2,$17,$90,$14,$16,$58,$D6,$9C ;       .
L1676          fcb       $DB,$72,$47,$B9,$77,$BE ;       .
L167C          fcb       $04,$0B             ;     Data tag=04 size=000B
L167E          fcb       $0B,$09             ;         Command_0B_SWITCH size=09
L1680          fcb       $0A,$01             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L1682          fcb       $02                 ;           IF_NOT_JUMP address=1685
L1683          fcb       $00,$82             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=82
L1685          fcb       $02                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L1686          fcb       $02                 ;           IF_NOT_JUMP address=1689
L1687          fcb       $00,$84             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=84
L1689          fcb       $84,$67,$00         ;   Script number=84 size=0067 data=00
L168C          fcb       $03,$53             ;     Data tag=03 size=0053
L168E          fcb       $C7,$DE,$94,$14,$43,$5E,$16,$BC,$DB,$72,$82,$BF ;       YOU ARE AT THE TOP OF A PASSAGE WHICH SLOPES
L169A          fcb       $B8,$16,$7B,$14,$55,$A4,$09,$B7,$59,$5E,$85,$73 ;       DOWN AND TO THE NORTH. THERE IS A CORRIDOR
L16A6          fcb       $15,$71,$82,$8D,$4B,$62,$89,$5B,$83,$96,$33,$98 ;       TO THE EAST AND ANOTHER TO THE WEST.
L16B2          fcb       $6B,$BF,$5F,$BE,$99,$16,$C2,$B3,$56,$F4,$F4,$72 ;       .
L16BE          fcb       $4B,$5E,$C3,$B5,$E1,$14,$73,$B3,$84,$5B,$89,$17 ;       .
L16CA          fcb       $82,$17,$47,$5E,$66,$49,$90,$14,$03,$58,$06,$9A ;       .
L16D6          fcb       $F4,$72,$89,$17,$82,$17,$59,$5E,$66,$62,$2E ;       .
L16E1          fcb       $04,$0F             ;     Data tag=04 size=000F
L16E3          fcb       $0B,$0D             ;         Command_0B_SWITCH size=0D
L16E5          fcb       $0A,$01             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L16E7          fcb       $02                 ;           IF_NOT_JUMP address=16EA
L16E8          fcb       $00,$83             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=83
L16EA          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L16EB          fcb       $02                 ;           IF_NOT_JUMP address=16EE
L16EC          fcb       $00,$A1             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A1
L16EE          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L16EF          fcb       $02                 ;           IF_NOT_JUMP address=16F2
L16F0          fcb       $00,$85             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=85
L16F2          fcb       $85,$44,$00         ;   Script number=85 size=0044 data=00
L16F5          fcb       $03,$26             ;     Data tag=03 size=0026
L16F7          fcb       $63,$BE,$CB,$B5,$C3,$B5,$73,$17,$1B,$B8,$E6,$A4 ;       THIS IS A T SHAPED ROOM WITH EXITS EAST,
L1703          fcb       $39,$17,$DB,$9F,$56,$D1,$07,$71,$96,$D7,$C7,$B5 ;       SOUTH, AND WEST.
L170F          fcb       $66,$49,$15,$EE,$36,$A1,$73,$76,$8E,$48,$F7,$17 ;       .
L171B          fcb       $17,$BA             ;       .
L171D          fcb       $04,$19             ;     Data tag=04 size=0019
L171F          fcb       $0B,$17             ;         Command_0B_SWITCH size=17
L1721          fcb       $0A,$04             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1723          fcb       $02                 ;           IF_NOT_JUMP address=1726
L1724          fcb       $00,$84             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=84
L1726          fcb       $02                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L1727          fcb       $02                 ;           IF_NOT_JUMP address=172A
L1728          fcb       $00,$86             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=86
L172A          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L172B          fcb       $0C                 ;           IF_NOT_JUMP address=1738
L172C          fcb       $0D,$0A             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=10
L172E          fcb       $00,$88             ;               Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=88
L1730          fcb       $14                 ;               Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L1731          fcb       $0D,$05             ;                 Command_0D_EXECUTE_LIST_WHILE_PASS size=5
L1733          fcb       $20,$1D             ;                   Command_20_CHECK_ACTIVE_OBJECT object=1D(USER)
L1735          fcb       $01,$07             ;                   Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=07(StatueWest)
L1737          fcb       $82                 ;                   CommonCommand_82
L1738          fcb       $86,$3F,$00         ;   Script number=86 size=003F data=00
L173B          fcb       $03,$2F             ;     Data tag=03 size=002F
L173D          fcb       $C7,$DE,$94,$14,$4B,$5E,$83,$96,$39,$17,$DB,$9F ;       YOU ARE IN A ROOM WITH GRAY STONE WALLS.
L1749          fcb       $56,$D1,$09,$71,$DB,$B0,$66,$17,$0F,$A0,$F3,$17 ;       PASSAGES LEAD NORTH AND EAST.
L1755          fcb       $0D,$8D,$52,$F4,$65,$49,$77,$47,$CE,$B5,$86,$5F ;       .
L1761          fcb       $99,$16,$C2,$B3,$90,$14,$07,$58,$66,$49,$2E ;       .
L176C          fcb       $04,$0B             ;     Data tag=04 size=000B
L176E          fcb       $0B,$09             ;         Command_0B_SWITCH size=09
L1770          fcb       $0A,$01             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L1772          fcb       $02                 ;           IF_NOT_JUMP address=1775
L1773          fcb       $00,$85             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=85
L1775          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1776          fcb       $02                 ;           IF_NOT_JUMP address=1779
L1777          fcb       $00,$87             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=87
L1779          fcb       $87,$44,$00         ;   Script number=87 size=0044 data=00
L177C          fcb       $03,$2F             ;     Data tag=03 size=002F
L177E          fcb       $63,$BE,$CB,$B5,$C3,$B5,$39,$17,$8E,$C5,$39,$17 ;       THIS IS A ROUND ROOM WITH HIGH WALLS. THE
L178A          fcb       $DB,$9F,$56,$D1,$0A,$71,$7A,$79,$F3,$17,$0D,$8D ;       ONLY OPENING IS TO THE WEST.
L1796          fcb       $56,$F4,$DB,$72,$16,$A0,$51,$DB,$F0,$A4,$91,$7A ;       .
L17A2          fcb       $D5,$15,$89,$17,$82,$17,$59,$5E,$66,$62,$2E ;       .
L17AD          fcb       $04,$10             ;     Data tag=04 size=0010
L17AF          fcb       $0B,$0E             ;         Command_0B_SWITCH size=0E
L17B1          fcb       $0A,$05             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=05 phrase="05: GET *       ..C.....   *       "
L17B3          fcb       $07                 ;           IF_NOT_JUMP address=17BB
L17B4          fcb       $0D,$05             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=5
L17B6          fcb       $08,$08             ;               Command_08_COMPARE_OBJECT_TO_FIRST_NOUN object=08(GoldRing
L17B8          fcb       $19,$8C             ;               Command_19_MOVE_ACTIVE_OBJECT_TO_ROOM room=8C
L17BA          fcb       $0C                 ;               Command_0C_FAIL
L17BB          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L17BC          fcb       $02                 ;           IF_NOT_JUMP address=17BF
L17BD          fcb       $00,$86             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=86
L17BF          fcb       $88,$79,$00         ;   Script number=88 size=0079 data=00
L17C2          fcb       $03,$57             ;     Data tag=03 size=0057
L17C4          fcb       $C7,$DE,$94,$14,$4B,$5E,$83,$96,$8C,$17,$90,$78 ;       YOU ARE IN A TRIANGULAR ROOM WITH OPENINGS
L17D0          fcb       $2E,$6F,$23,$49,$01,$B3,$59,$90,$82,$7B,$C2,$16 ;       IN THE EAST AND WEST CORNERS. THERE IS A
L17DC          fcb       $93,$61,$C5,$98,$D0,$15,$82,$17,$47,$5E,$66,$49 ;       STATUE IN THE SOUTH CORNER WITH BOW AND
L17E8          fcb       $90,$14,$19,$58,$66,$62,$E1,$14,$CF,$B2,$AF,$B3 ;       ARROW.
L17F4          fcb       $82,$17,$2F,$62,$D5,$15,$7B,$14,$FB,$B9,$67,$C0 ;       .
L1800          fcb       $D0,$15,$82,$17,$55,$5E,$36,$A1,$05,$71,$B8,$A0 ;       .
L180C          fcb       $23,$62,$56,$D1,$04,$71,$6B,$A1,$8E,$48,$94,$14 ;       .
L1818          fcb       $09,$B3,$2E         ;       .
L181B          fcb       $04,$1D             ;     Data tag=04 size=001D
L181D          fcb       $0B,$1B             ;         Command_0B_SWITCH size=1B
L181F          fcb       $0A,$04             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1821          fcb       $0B                 ;           IF_NOT_JUMP address=182D
L1822          fcb       $0E,$09             ;             Command_0E_EXECUTE_LIST_WHILE_FAIL size=9
L1824          fcb       $0D,$05             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=5
L1826          fcb       $20,$1D             ;                 Command_20_CHECK_ACTIVE_OBJECT object=1D(USER)
L1828          fcb       $01,$07             ;                 Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=07(StatueWest)
L182A          fcb       $82                 ;                 CommonCommand_82
L182B          fcb       $00,$85             ;               Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=85
L182D          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L182E          fcb       $0B                 ;           IF_NOT_JUMP address=183A
L182F          fcb       $0E,$09             ;             Command_0E_EXECUTE_LIST_WHILE_FAIL size=9
L1831          fcb       $0D,$05             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=5
L1833          fcb       $20,$1D             ;                 Command_20_CHECK_ACTIVE_OBJECT object=1D(USER)
L1835          fcb       $01,$06             ;                 Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=06(StatueEast)
L1837          fcb       $82                 ;                 CommonCommand_82
L1838          fcb       $00,$89             ;               Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=89
L183A          fcb       $89,$5D,$00         ;   Script number=89 size=005D data=00
L183D          fcb       $03,$3F             ;     Data tag=03 size=003F
L183F          fcb       $C7,$DE,$94,$14,$43,$5E,$16,$BC,$DB,$72,$47,$B9 ;       YOU ARE AT THE SOUTH END OF THE GREAT
L184B          fcb       $53,$BE,$8E,$61,$B8,$16,$82,$17,$49,$5E,$63,$B1 ;       CENTRAL HALLWAY. EXITS EXIST IN THE EAST AND
L1857          fcb       $05,$BC,$9E,$61,$CE,$B0,$9B,$15,$11,$8D,$5F,$4A ;       WEST WALLS.
L1863          fcb       $3A,$15,$8D,$7B,$3A,$15,$66,$7B,$D0,$15,$82,$17 ;       .
L186F          fcb       $47,$5E,$66,$49,$90,$14,$19,$58,$66,$62,$F3,$17 ;       .
L187B          fcb       $0D,$8D,$2E         ;       .
L187E          fcb       $04,$19             ;     Data tag=04 size=0019
L1880          fcb       $0B,$17             ;         Command_0B_SWITCH size=17
L1882          fcb       $0A,$04             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1884          fcb       $0C                 ;           IF_NOT_JUMP address=1891
L1885          fcb       $0D,$0A             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=10
L1887          fcb       $00,$88             ;               Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=88
L1889          fcb       $14                 ;               Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L188A          fcb       $0D,$05             ;                 Command_0D_EXECUTE_LIST_WHILE_PASS size=5
L188C          fcb       $20,$1D             ;                   Command_20_CHECK_ACTIVE_OBJECT object=1D(USER)
L188E          fcb       $01,$06             ;                   Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=06(StatueEast)
L1890          fcb       $82                 ;                   CommonCommand_82
L1891          fcb       $01                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L1892          fcb       $02                 ;           IF_NOT_JUMP address=1895
L1893          fcb       $00,$90             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=90
L1895          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1896          fcb       $02                 ;           IF_NOT_JUMP address=1899
L1897          fcb       $00,$8A             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=8A
L1899          fcb       $8A,$3A,$00         ;   Script number=8A size=003A data=00
L189C          fcb       $03,$26             ;     Data tag=03 size=0026
L189E          fcb       $63,$BE,$CB,$B5,$C3,$B5,$73,$17,$1B,$B8,$E6,$A4 ;       THIS IS A T SHAPED ROOM WITH EXITS EAST,
L18AA          fcb       $39,$17,$DB,$9F,$56,$D1,$07,$71,$96,$D7,$C7,$B5 ;       SOUTH, AND WEST.
L18B6          fcb       $66,$49,$15,$EE,$36,$A1,$73,$76,$8E,$48,$F7,$17 ;       .
L18C2          fcb       $17,$BA             ;       .
L18C4          fcb       $04,$0F             ;     Data tag=04 size=000F
L18C6          fcb       $0B,$0D             ;         Command_0B_SWITCH size=0D
L18C8          fcb       $0A,$04             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L18CA          fcb       $02                 ;           IF_NOT_JUMP address=18CD
L18CB          fcb       $00,$89             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=89
L18CD          fcb       $02                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L18CE          fcb       $02                 ;           IF_NOT_JUMP address=18D1
L18CF          fcb       $00,$8B             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=8B
L18D1          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L18D2          fcb       $02                 ;           IF_NOT_JUMP address=18D5
L18D3          fcb       $00,$8D             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=8D
L18D5          fcb       $8B,$3F,$00         ;   Script number=8B size=003F data=00
L18D8          fcb       $03,$2F             ;     Data tag=03 size=002F
L18DA          fcb       $C7,$DE,$94,$14,$4B,$5E,$83,$96,$39,$17,$DB,$9F ;       YOU ARE IN A ROOM WITH GREY STONE WALLS.
L18E6          fcb       $56,$D1,$09,$71,$7B,$B1,$66,$17,$0F,$A0,$F3,$17 ;       PASSAGES LEAD NORTH AND EAST.
L18F2          fcb       $0D,$8D,$52,$F4,$65,$49,$77,$47,$CE,$B5,$86,$5F ;       .
L18FE          fcb       $99,$16,$C2,$B3,$90,$14,$07,$58,$66,$49,$2E ;       .
L1909          fcb       $04,$0B             ;     Data tag=04 size=000B
L190B          fcb       $0B,$09             ;         Command_0B_SWITCH size=09
L190D          fcb       $0A,$01             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L190F          fcb       $02                 ;           IF_NOT_JUMP address=1912
L1910          fcb       $00,$8A             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=8A
L1912          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1913          fcb       $02                 ;           IF_NOT_JUMP address=1916
L1914          fcb       $00,$8C             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=8C
L1916          fcb       $8C,$44,$00         ;   Script number=8C size=0044 data=00
L1919          fcb       $03,$2F             ;     Data tag=03 size=002F
L191B          fcb       $63,$BE,$CB,$B5,$C3,$B5,$39,$17,$8E,$C5,$39,$17 ;       THIS IS A ROUND ROOM WITH HIGH WALLS. THE
L1927          fcb       $DB,$9F,$56,$D1,$0A,$71,$7A,$79,$F3,$17,$0D,$8D ;       ONLY OPENING IS TO THE WEST.
L1933          fcb       $56,$F4,$DB,$72,$16,$A0,$51,$DB,$F0,$A4,$91,$7A ;       .
L193F          fcb       $D5,$15,$89,$17,$82,$17,$59,$5E,$66,$62,$2E ;       .
L194A          fcb       $04,$10             ;     Data tag=04 size=0010
L194C          fcb       $0B,$0E             ;         Command_0B_SWITCH size=0E
L194E          fcb       $0A,$05             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=05 phrase="05: GET *       ..C.....   *       "
L1950          fcb       $07                 ;           IF_NOT_JUMP address=1958
L1951          fcb       $0D,$05             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=5
L1953          fcb       $08,$08             ;               Command_08_COMPARE_OBJECT_TO_FIRST_NOUN object=08(GoldRing
L1955          fcb       $19,$87             ;               Command_19_MOVE_ACTIVE_OBJECT_TO_ROOM room=87
L1957          fcb       $0C                 ;               Command_0C_FAIL
L1958          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1959          fcb       $02                 ;           IF_NOT_JUMP address=195C
L195A          fcb       $00,$8B             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=8B
L195C          fcb       $8D,$4D,$00         ;   Script number=8D size=004D data=00
L195F          fcb       $03,$3D             ;     Data tag=03 size=003D
L1961          fcb       $C7,$DE,$94,$14,$4B,$5E,$83,$96,$DF,$16,$96,$BE ;       YOU ARE IN A PETITE CHAMBER. THERE IS A
L196D          fcb       $45,$5E,$4F,$72,$74,$4D,$56,$F4,$F4,$72,$4B,$5E ;       LARGER ROOM TO THE NORTH AND A PASSAGE TO
L1979          fcb       $C3,$B5,$3B,$16,$B7,$B1,$94,$AF,$3F,$A0,$89,$17 ;       THE WEST.
L1985          fcb       $82,$17,$50,$5E,$BE,$A0,$03,$71,$33,$98,$52,$45 ;       .
L1991          fcb       $65,$49,$77,$47,$89,$17,$82,$17,$59,$5E,$66,$62 ;       .
L199D          fcb       $2E                 ;       .
L199E          fcb       $04,$0B             ;     Data tag=04 size=000B
L19A0          fcb       $0B,$09             ;         Command_0B_SWITCH size=09
L19A2          fcb       $0A,$04             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L19A4          fcb       $02                 ;           IF_NOT_JUMP address=19A7
L19A5          fcb       $00,$8A             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=8A
L19A7          fcb       $01                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L19A8          fcb       $02                 ;           IF_NOT_JUMP address=19AB
L19A9          fcb       $00,$8E             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=8E
L19AB          fcb       $8E,$80,$A2,$00     ;   Script number=8E size=00A2 data=00
L19AF          fcb       $03,$3B             ;     Data tag=03 size=003B
L19B1          fcb       $C7,$DE,$94,$14,$4B,$5E,$83,$96,$3B,$16,$B7,$B1 ;       YOU ARE IN A LARGE ROOM WHICH SMELLS OF
L19BD          fcb       $39,$17,$DB,$9F,$23,$D1,$13,$54,$E7,$B8,$0D,$8D ;       DECAYING FLESH. THERE ARE EXITS NORTH AND
L19C9          fcb       $B8,$16,$FF,$14,$1B,$53,$91,$7A,$56,$15,$5A,$62 ;       SOUTH.
L19D5          fcb       $56,$F4,$F4,$72,$43,$5E,$5B,$B1,$23,$63,$0B,$C0 ;       .
L19E1          fcb       $04,$9A,$53,$BE,$8E,$48,$61,$17,$82,$C6,$2E ;       .
L19EC          fcb       $04,$62             ;     Data tag=04 size=0062
L19EE          fcb       $0B,$60             ;         Command_0B_SWITCH size=60
L19F0          fcb       $0A,$02             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L19F2          fcb       $02                 ;           IF_NOT_JUMP address=19F5
L19F3          fcb       $00,$8D             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=8D
L19F5          fcb       $01                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L19F6          fcb       $59                 ;           IF_NOT_JUMP address=1A50
L19F7          fcb       $0E,$57             ;             Command_0E_EXECUTE_LIST_WHILE_FAIL size=87
L19F9          fcb       $0D,$1D             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=29
L19FB          fcb       $01,$1E             ;                 Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=1E(LiveGargoyle)
L19FD          fcb       $20,$1D             ;                 Command_20_CHECK_ACTIVE_OBJECT object=1D(USER)
L19FF          fcb       $04                 ;                 Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L1A00          fcb       $17,$5F,$BE,$73,$15,$C1,$B1,$3F,$DE,$B6,$14,$5D ;                   THE GARGOYLE BLOCKS THE WAY NORTH.
L1A0C          fcb       $9E,$D6,$B5,$DB,$72,$1B,$D0,$99,$16,$C2,$B3,$2E ;                   .
L1A18          fcb       $0D,$34             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=52
L1A1A          fcb       $20,$1D             ;                 Command_20_CHECK_ACTIVE_OBJECT object=1D(USER)
L1A1C          fcb       $01,$0A             ;                 Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=0A(StoneGargoyle)
L1A1E          fcb       $17,$0A,$00         ;                 Command_17_MOVE_OBJECT_TO_LOCATION object=0A(StoneGargoyle) location=00
L1A21          fcb       $17,$1E,$8E         ;                 Command_17_MOVE_OBJECT_TO_LOCATION object=1E(LiveGargoyle) location=8E
L1A24          fcb       $04                 ;                 Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L1A25          fcb       $28,$5F,$BE,$73,$15,$C1,$B1,$3F,$DE,$E1,$14,$35 ;                   THE GARGOYLE COMES TO LIFE AND JUMPS DOWN TO
L1A31          fcb       $92,$89,$17,$43,$16,$5B,$66,$8E,$48,$FF,$15,$ED ;                   BLOCK YOUR WAY!
L1A3D          fcb       $93,$09,$15,$03,$D2,$6B,$BF,$89,$4E,$8B,$54,$C7 ;                   .
L1A49          fcb       $DE,$99,$AF,$39,$4A ;                   .
L1A4E          fcb       $00,$8F             ;               Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=8F
L1A50          fcb       $8F,$3A,$00         ;   Script number=8F size=003A data=00
L1A53          fcb       $03,$2E             ;     Data tag=03 size=002E
L1A55          fcb       $63,$BE,$CB,$B5,$C3,$B5,$7B,$17,$F3,$8C,$01,$B3 ;       THIS IS A TALL ROOM CARVED OF STONE WITH A
L1A61          fcb       $45,$90,$40,$49,$F3,$5F,$C3,$9E,$09,$BA,$5B,$98 ;       SINGLE EXIT TO THE SOUTH. 
L1A6D          fcb       $56,$D1,$03,$71,$5B,$17,$BE,$98,$47,$5E,$96,$D7 ;       .
L1A79          fcb       $89,$17,$82,$17,$55,$5E,$36,$A1,$9B,$76 ;       .
L1A83          fcb       $04,$07             ;     Data tag=04 size=0007
L1A85          fcb       $0B,$05             ;         Command_0B_SWITCH size=05
L1A87          fcb       $0A,$02             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L1A89          fcb       $02                 ;           IF_NOT_JUMP address=1A8C
L1A8A          fcb       $00,$8E             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=8E
L1A8C          fcb       $90,$80,$A2,$00     ;   Script number=90 size=00A2 data=00
L1A90          fcb       $03,$56             ;     Data tag=03 size=0056
L1A92          fcb       $C7,$DE,$94,$14,$43,$5E,$16,$BC,$DB,$72,$04,$9A ;       YOU ARE AT THE NORTH END OF THE GREAT
L1A9E          fcb       $53,$BE,$8E,$61,$B8,$16,$82,$17,$49,$5E,$63,$B1 ;       CENTRAL HALLWAY. EXITS EXIST IN THE EAST AND
L1AAA          fcb       $05,$BC,$9E,$61,$CE,$B0,$9B,$15,$11,$8D,$5F,$4A ;       WEST WALLS. THERE IS A DOOR ON THE NORTH
L1AB6          fcb       $3A,$15,$8D,$7B,$3A,$15,$66,$7B,$D0,$15,$82,$17 ;       WALL.
L1AC2          fcb       $47,$5E,$66,$49,$90,$14,$19,$58,$66,$62,$F3,$17 ;       .
L1ACE          fcb       $0D,$8D,$56,$F4,$F4,$72,$4B,$5E,$C3,$B5,$09,$15 ;       .
L1ADA          fcb       $A3,$A0,$03,$A0,$5F,$BE,$99,$16,$C2,$B3,$F3,$17 ;       .
L1AE6          fcb       $17,$8D             ;       .
L1AE8          fcb       $04,$47             ;     Data tag=04 size=0047
L1AEA          fcb       $0B,$45             ;         Command_0B_SWITCH size=45
L1AEC          fcb       $0A,$02             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L1AEE          fcb       $02                 ;           IF_NOT_JUMP address=1AF1
L1AEF          fcb       $00,$89             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=89
L1AF1          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1AF2          fcb       $02                 ;           IF_NOT_JUMP address=1AF5
L1AF3          fcb       $00,$A0             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A0
L1AF5          fcb       $01                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L1AF6          fcb       $36                 ;           IF_NOT_JUMP address=1B2D
L1AF7          fcb       $0E,$34             ;             Command_0E_EXECUTE_LIST_WHILE_FAIL size=52
L1AF9          fcb       $0D,$14             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=20
L1AFB          fcb       $01,$1B             ;                 Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=1B(ClosedDoor)
L1AFD          fcb       $04                 ;                 Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L1AFE          fcb       $10,$5F,$BE,$09,$15,$A3,$A0,$89,$4E,$A5,$54,$DB ;                   THE DOOR BLOCKS PASSAGE.
L1B0A          fcb       $16,$D3,$B9,$BF,$6C ;                   .
L1B0F          fcb       $0D,$1C             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=28
L1B11          fcb       $00,$91             ;                 Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=91
L1B13          fcb       $17,$1B,$91         ;                 Command_17_MOVE_OBJECT_TO_LOCATION object=1B(ClosedDoor) location=91
L1B16          fcb       $04                 ;                 Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L1B17          fcb       $12,$5F,$BE,$09,$15,$A3,$A0,$C9,$54,$B5,$B7,$AF ;                   THE DOOR CLOSES BEHIND YOU.
L1B23          fcb       $14,$90,$73,$1B,$58,$3F,$A1 ;                   .
L1B2A          fcb       $17,$1C,$00         ;                 Command_17_MOVE_OBJECT_TO_LOCATION object=1C(OpenDoor) location=00
L1B2D          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1B2E          fcb       $02                 ;           IF_NOT_JUMP address=1B31
L1B2F          fcb       $00,$92             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=92
L1B31          fcb       $91,$80,$8F,$00     ;   Script number=91 size=008F data=00
L1B35          fcb       $03,$22             ;     Data tag=03 size=0022
L1B37          fcb       $C7,$DE,$94,$14,$4B,$5E,$83,$96,$CB,$17,$4E,$C5 ;       YOU ARE IN A VAULT WITH A LARGE DOOR TO THE
L1B43          fcb       $FB,$17,$53,$BE,$4E,$45,$31,$49,$46,$5E,$44,$A0 ;       SOUTH. 
L1B4F          fcb       $89,$17,$82,$17,$55,$5E,$36,$A1,$9B,$76 ;       .
L1B59          fcb       $04,$68             ;     Data tag=04 size=0068
L1B5B          fcb       $0B,$66             ;         Command_0B_SWITCH size=66
L1B5D          fcb       $0A,$02             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L1B5F          fcb       $2F                 ;           IF_NOT_JUMP address=1B8F
L1B60          fcb       $0E,$2D             ;             Command_0E_EXECUTE_LIST_WHILE_FAIL size=45
L1B62          fcb       $0D,$10             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=16
L1B64          fcb       $01,$1B             ;                 Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=1B(ClosedDoor)
L1B66          fcb       $04                 ;                 Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L1B67          fcb       $0C,$5F,$BE,$09,$15,$A3,$A0,$4B,$7B,$2F,$B8,$9B ;                   THE DOOR IS SHUT. 
L1B73          fcb       $C1                 ;                   .
L1B74          fcb       $0D,$19             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=25
L1B76          fcb       $00,$90             ;                 Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=90
L1B78          fcb       $17,$1B,$90         ;                 Command_17_MOVE_OBJECT_TO_LOCATION object=1B(ClosedDoor) location=90
L1B7B          fcb       $04                 ;                 Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L1B7C          fcb       $0F,$5F,$BE,$09,$15,$A3,$A0,$C9,$54,$B5,$B7,$89 ;                   THE DOOR CLOSES AGAIN.
L1B88          fcb       $14,$D0,$47,$2E     ;                   .
L1B8C          fcb       $17,$1C,$00         ;                 Command_17_MOVE_OBJECT_TO_LOCATION object=1C(OpenDoor) location=00
L1B8F          fcb       $11                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=11 phrase="11: OPEN *      u.......   *       "
L1B90          fcb       $32                 ;           IF_NOT_JUMP address=1BC3
L1B91          fcb       $0E,$30             ;             Command_0E_EXECUTE_LIST_WHILE_FAIL size=48
L1B93          fcb       $0D,$10             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=16
L1B95          fcb       $08,$1C             ;                 Command_08_COMPARE_OBJECT_TO_FIRST_NOUN object=1C(OpenDoor
L1B97          fcb       $04                 ;                 Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L1B98          fcb       $0C,$8D,$7B,$8E,$14,$63,$B1,$FB,$5C,$5F,$A0,$1B ;                   ITS ALREADY OPEN. 
L1BA4          fcb       $9C                 ;                   .
L1BA5          fcb       $0D,$1C             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=28
L1BA7          fcb       $08,$1B             ;                 Command_08_COMPARE_OBJECT_TO_FIRST_NOUN object=1B(ClosedDoor
L1BA9          fcb       $17,$1C,$91         ;                 Command_17_MOVE_OBJECT_TO_LOCATION object=1C(OpenDoor) location=91
L1BAC          fcb       $17,$1B,$00         ;                 Command_17_MOVE_OBJECT_TO_LOCATION object=1B(ClosedDoor) location=00
L1BAF          fcb       $04                 ;                 Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L1BB0          fcb       $12,$64,$B7,$B7,$C6,$B0,$C6,$D6,$6A,$DB,$72,$81 ;                   SCRUUUUUNG THE DOOR OPENS. 
L1BBC          fcb       $5B,$91,$AF,$F0,$A4,$5B,$BB ;                   .
L1BC3          fcb       $92,$4B,$00         ;   Script number=92 size=004B data=00
L1BC6          fcb       $03,$3B             ;     Data tag=03 size=003B
L1BC8          fcb       $C7,$DE,$94,$14,$43,$5E,$16,$BC,$DB,$72,$9E,$61 ;       YOU ARE AT THE ENTRANCE TO A LONG DARK
L1BD4          fcb       $D0,$B0,$9B,$53,$6B,$BF,$4E,$45,$11,$A0,$FB,$14 ;       TUNNEL WHICH LEADS WEST. THERE IS A PASSAGE
L1BE0          fcb       $4B,$B2,$70,$C0,$6E,$98,$FA,$17,$DA,$78,$3F,$16 ;       EAST.
L1BEC          fcb       $0D,$47,$F7,$17,$17,$BA,$82,$17,$2F,$62,$D5,$15 ;       .
L1BF8          fcb       $7B,$14,$55,$A4,$09,$B7,$47,$5E,$66,$49,$2E ;       .
L1C03          fcb       $04,$0B             ;     Data tag=04 size=000B
L1C05          fcb       $0B,$09             ;         Command_0B_SWITCH size=09
L1C07          fcb       $0A,$03             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1C09          fcb       $02                 ;           IF_NOT_JUMP address=1C0C
L1C0A          fcb       $00,$90             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=90
L1C0C          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1C0D          fcb       $02                 ;           IF_NOT_JUMP address=1C10
L1C0E          fcb       $00,$93             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=93
L1C10          fcb       $93,$22,$00         ;   Script number=93 size=0022 data=00
L1C13          fcb       $03,$12             ;     Data tag=03 size=0012
L1C15          fcb       $C7,$DE,$94,$14,$4B,$5E,$96,$96,$DB,$72,$54,$59 ;       YOU ARE IN THE DARK TUNNEL.
L1C21          fcb       $D6,$83,$98,$C5,$57,$61 ;       .
L1C27          fcb       $04,$0B             ;     Data tag=04 size=000B
L1C29          fcb       $0B,$09             ;         Command_0B_SWITCH size=09
L1C2B          fcb       $0A,$03             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1C2D          fcb       $02                 ;           IF_NOT_JUMP address=1C30
L1C2E          fcb       $00,$92             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=92
L1C30          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1C31          fcb       $02                 ;           IF_NOT_JUMP address=1C34
L1C32          fcb       $00,$94             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=94
L1C34          fcb       $94,$58,$00         ;   Script number=94 size=0058 data=00
L1C37          fcb       $03,$3B             ;     Data tag=03 size=003B
L1C39          fcb       $C7,$DE,$94,$14,$43,$5E,$16,$BC,$DB,$72,$9E,$61 ;       YOU ARE AT THE ENTRANCE TO A LONG DARK
L1C45          fcb       $D0,$B0,$9B,$53,$6B,$BF,$4E,$45,$11,$A0,$FB,$14 ;       TUNNEL WHICH LEADS EAST. THERE IS A PASSAGE
L1C51          fcb       $4B,$B2,$70,$C0,$6E,$98,$FA,$17,$DA,$78,$3F,$16 ;       WEST.
L1C5D          fcb       $0D,$47,$23,$15,$17,$BA,$82,$17,$2F,$62,$D5,$15 ;       .
L1C69          fcb       $7B,$14,$55,$A4,$09,$B7,$59,$5E,$66,$62,$2E ;       .
L1C74          fcb       $04,$18             ;     Data tag=04 size=0018
L1C76          fcb       $0B,$16             ;         Command_0B_SWITCH size=16
L1C78          fcb       $0A,$03             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1C7A          fcb       $02                 ;           IF_NOT_JUMP address=1C7D
L1C7B          fcb       $00,$93             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=93
L1C7D          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1C7E          fcb       $0F                 ;           IF_NOT_JUMP address=1C8E
L1C7F          fcb       $0E,$0D             ;             Command_0E_EXECUTE_LIST_WHILE_FAIL size=13
L1C81          fcb       $0D,$09             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=9
L1C83          fcb       $20,$1D             ;                 Command_20_CHECK_ACTIVE_OBJECT object=1D(USER)
L1C85          fcb       $03,$00,$16         ;                 Command_03_IS_OBJECT_AT_LOCATION object=16(DeadSerpent) location=00
L1C88          fcb       $17,$15,$95         ;                 Command_17_MOVE_OBJECT_TO_LOCATION object=15(LiveSerpent) location=95
L1C8B          fcb       $0C                 ;                 Command_0C_FAIL
L1C8C          fcb       $00,$95             ;               Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=95
L1C8E          fcb       $95,$32,$00         ;   Script number=95 size=0032 data=00
L1C91          fcb       $03,$20             ;     Data tag=03 size=0020
L1C93          fcb       $C7,$DE,$94,$14,$4B,$5E,$83,$96,$3B,$16,$B7,$B1 ;       YOU ARE IN A LARGE ROOM WITH A SINGLE EXIT
L1C9F          fcb       $39,$17,$DB,$9F,$56,$D1,$03,$71,$5B,$17,$BE,$98 ;       EAST.
L1CAB          fcb       $47,$5E,$96,$D7,$23,$15,$17,$BA ;       .
L1CB3          fcb       $04,$0D             ;     Data tag=04 size=000D
L1CB5          fcb       $0B,$0B             ;         Command_0B_SWITCH size=0B
L1CB7          fcb       $0A,$36             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=36 phrase="36: CLIMB IN    *          *       "
L1CB9          fcb       $01                 ;           IF_NOT_JUMP address=1CBB
L1CBA          fcb       $8F                 ;             CommonCommand_8F
L1CBB          fcb       $17                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=17 phrase="17: CLIMB *     u.......   *       "
L1CBC          fcb       $01                 ;           IF_NOT_JUMP address=1CBE
L1CBD          fcb       $8F                 ;             CommonCommand_8F
L1CBE          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1CBF          fcb       $02                 ;           IF_NOT_JUMP address=1CC2
L1CC0          fcb       $00,$94             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=94
L1CC2          fcb       $96,$30,$00         ;   Script number=96 size=0030 data=00
L1CC5          fcb       $03,$18             ;     Data tag=03 size=0018
L1CC7          fcb       $C7,$DE,$94,$14,$4B,$5E,$83,$96,$FF,$14,$97,$9A ;       YOU ARE IN A DENSE DARK DAMP JUNGLE.
L1CD3          fcb       $FB,$14,$4B,$B2,$4F,$59,$0C,$A3,$91,$C5,$FF,$8B ;       .
L1CDF          fcb       $04,$13             ;     Data tag=04 size=0013
L1CE1          fcb       $0B,$11             ;         Command_0B_SWITCH size=11
L1CE3          fcb       $0A,$01             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L1CE5          fcb       $02                 ;           IF_NOT_JUMP address=1CE8
L1CE6          fcb       $00,$A3             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A3
L1CE8          fcb       $02                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L1CE9          fcb       $02                 ;           IF_NOT_JUMP address=1CEC
L1CEA          fcb       $00,$A4             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A4
L1CEC          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1CED          fcb       $02                 ;           IF_NOT_JUMP address=1CF0
L1CEE          fcb       $00,$97             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=97
L1CF0          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1CF1          fcb       $02                 ;           IF_NOT_JUMP address=1CF4
L1CF2          fcb       $00,$A4             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A4
L1CF4          fcb       $97,$30,$00         ;   Script number=97 size=0030 data=00
L1CF7          fcb       $03,$18             ;     Data tag=03 size=0018
L1CF9          fcb       $C7,$DE,$94,$14,$4B,$5E,$83,$96,$FB,$14,$4B,$B2 ;       YOU ARE IN A DARK DENSE DAMP JUNGLE.
L1D05          fcb       $F0,$59,$9B,$B7,$4F,$59,$0C,$A3,$91,$C5,$FF,$8B ;       .
L1D11          fcb       $04,$13             ;     Data tag=04 size=0013
L1D13          fcb       $0B,$11             ;         Command_0B_SWITCH size=11
L1D15          fcb       $0A,$01             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L1D17          fcb       $02                 ;           IF_NOT_JUMP address=1D1A
L1D18          fcb       $00,$A2             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A2
L1D1A          fcb       $02                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L1D1B          fcb       $02                 ;           IF_NOT_JUMP address=1D1E
L1D1C          fcb       $00,$96             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=96
L1D1E          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1D1F          fcb       $02                 ;           IF_NOT_JUMP address=1D22
L1D20          fcb       $00,$A3             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A3
L1D22          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1D23          fcb       $02                 ;           IF_NOT_JUMP address=1D26
L1D24          fcb       $00,$98             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=98
L1D26          fcb       $98,$40,$00         ;   Script number=98 size=0040 data=00
L1D29          fcb       $03,$28             ;     Data tag=03 size=0028
L1D2B          fcb       $6C,$BE,$29,$A1,$16,$71,$DB,$72,$F0,$81,$BF,$6D ;       THROUGH THE JUNGLE YOU SEE THE EAST WALL OF
L1D37          fcb       $51,$18,$55,$C2,$1B,$60,$5F,$BE,$23,$15,$F3,$B9 ;       A GREAT TEMPLE. 
L1D43          fcb       $0E,$D0,$11,$8A,$83,$64,$84,$15,$96,$5F,$7F,$17 ;       .
L1D4F          fcb       $E6,$93,$DB,$63     ;       .
L1D53          fcb       $04,$13             ;     Data tag=04 size=0013
L1D55          fcb       $0B,$11             ;         Command_0B_SWITCH size=11
L1D57          fcb       $0A,$01             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L1D59          fcb       $02                 ;           IF_NOT_JUMP address=1D5C
L1D5A          fcb       $00,$9B             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9B
L1D5C          fcb       $02                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L1D5D          fcb       $02                 ;           IF_NOT_JUMP address=1D60
L1D5E          fcb       $00,$99             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=99
L1D60          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1D61          fcb       $02                 ;           IF_NOT_JUMP address=1D64
L1D62          fcb       $00,$97             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=97
L1D64          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1D65          fcb       $02                 ;           IF_NOT_JUMP address=1D68
L1D66          fcb       $00,$9E             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9E
L1D68          fcb       $99,$44,$00         ;   Script number=99 size=0044 data=00
L1D6B          fcb       $03,$2C             ;     Data tag=03 size=002C
L1D6D          fcb       $83,$7A,$45,$45,$E3,$8B,$10,$B2,$C4,$6A,$59,$60 ;       IN A CLEARING BEFORE YOU STANDS THE SOUTH
L1D79          fcb       $5B,$B1,$C7,$DE,$66,$17,$8E,$48,$D6,$B5,$DB,$72 ;       WALL OF A GREAT TEMPLE. 
L1D85          fcb       $47,$B9,$53,$BE,$0E,$D0,$11,$8A,$83,$64,$84,$15 ;       .
L1D91          fcb       $96,$5F,$7F,$17,$E6,$93,$DB,$63 ;       .
L1D99          fcb       $04,$13             ;     Data tag=04 size=0013
L1D9B          fcb       $0B,$11             ;         Command_0B_SWITCH size=11
L1D9D          fcb       $0A,$01             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L1D9F          fcb       $02                 ;           IF_NOT_JUMP address=1DA2
L1DA0          fcb       $00,$9F             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9F
L1DA2          fcb       $02                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L1DA3          fcb       $02                 ;           IF_NOT_JUMP address=1DA6
L1DA4          fcb       $00,$96             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=96
L1DA6          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1DA7          fcb       $02                 ;           IF_NOT_JUMP address=1DAA
L1DA8          fcb       $00,$98             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=98
L1DAA          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1DAB          fcb       $02                 ;           IF_NOT_JUMP address=1DAE
L1DAC          fcb       $00,$9A             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9A
L1DAE          fcb       $9A,$59,$00         ;   Script number=9A size=0059 data=00
L1DB1          fcb       $03,$41             ;     Data tag=03 size=0041
L1DB3          fcb       $6C,$BE,$29,$A1,$16,$71,$DB,$72,$F0,$59,$9B,$B7 ;       THROUGH THE DENSE UNDERGROWTH, YOU CAN SEE
L1DBF          fcb       $8E,$C5,$31,$62,$09,$B3,$76,$BE,$51,$18,$45,$C2 ;       THE GREAT BRONZE GATES ON THE WEST WALL OF
L1DCB          fcb       $83,$48,$A7,$B7,$82,$17,$49,$5E,$63,$B1,$04,$BC ;       THE TEMPLE.
L1DD7          fcb       $00,$B3,$5B,$E3,$16,$6C,$4B,$62,$03,$A0,$5F,$BE ;       .
L1DE3          fcb       $F7,$17,$F3,$B9,$0E,$D0,$11,$8A,$96,$64,$DB,$72 ;       .
L1DEF          fcb       $EF,$BD,$FF,$A5,$2E ;       .
L1DF4          fcb       $04,$13             ;     Data tag=04 size=0013
L1DF6          fcb       $0B,$11             ;         Command_0B_SWITCH size=11
L1DF8          fcb       $0A,$01             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L1DFA          fcb       $02                 ;           IF_NOT_JUMP address=1DFD
L1DFB          fcb       $00,$9B             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9B
L1DFD          fcb       $02                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L1DFE          fcb       $02                 ;           IF_NOT_JUMP address=1E01
L1DFF          fcb       $00,$99             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=99
L1E01          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1E02          fcb       $02                 ;           IF_NOT_JUMP address=1E05
L1E03          fcb       $00,$9C             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9C
L1E05          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1E06          fcb       $02                 ;           IF_NOT_JUMP address=1E09
L1E07          fcb       $00,$A4             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A4
L1E09          fcb       $9B,$4D,$00         ;   Script number=9B size=004D data=00
L1E0C          fcb       $03,$35             ;     Data tag=03 size=0035
L1E0E          fcb       $6C,$BE,$29,$A1,$03,$71,$73,$15,$0B,$A3,$96,$96 ;       THROUGH A GAP IN THE JUNGLE YOU CAN SEE THE
L1E1A          fcb       $DB,$72,$F0,$81,$BF,$6D,$51,$18,$45,$C2,$83,$48 ;       NORTH WALL OF A MAGNIFICENT TEMPLE.
L1E26          fcb       $A7,$B7,$82,$17,$50,$5E,$BE,$A0,$19,$71,$46,$48 ;       .
L1E32          fcb       $B8,$16,$7B,$14,$89,$91,$08,$99,$D7,$78,$B3,$9A ;       .
L1E3E          fcb       $EF,$BD,$FF,$A5,$2E ;       .
L1E43          fcb       $04,$13             ;     Data tag=04 size=0013
L1E45          fcb       $0B,$11             ;         Command_0B_SWITCH size=11
L1E47          fcb       $0A,$01             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L1E49          fcb       $02                 ;           IF_NOT_JUMP address=1E4C
L1E4A          fcb       $00,$A2             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A2
L1E4C          fcb       $02                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L1E4D          fcb       $02                 ;           IF_NOT_JUMP address=1E50
L1E4E          fcb       $00,$9D             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9D
L1E50          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1E51          fcb       $02                 ;           IF_NOT_JUMP address=1E54
L1E52          fcb       $00,$9A             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9A
L1E54          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1E55          fcb       $02                 ;           IF_NOT_JUMP address=1E58
L1E56          fcb       $00,$98             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=98
L1E58          fcb       $9C,$3A,$00         ;   Script number=9C size=003A data=00
L1E5B          fcb       $03,$26             ;     Data tag=03 size=0026
L1E5D          fcb       $C7,$DE,$94,$14,$55,$5E,$50,$BD,$90,$5A,$C4,$6A ;       YOU ARE STANDING BEFORE THE WEST ENTRANCE OF
L1E69          fcb       $59,$60,$5B,$B1,$5F,$BE,$F7,$17,$F3,$B9,$9E,$61 ;       THE TEMPLE. 
L1E75          fcb       $D0,$B0,$9B,$53,$C3,$9E,$5F,$BE,$7F,$17,$E6,$93 ;       .
L1E81          fcb       $DB,$63             ;       .
L1E83          fcb       $04,$0F             ;     Data tag=04 size=000F
L1E85          fcb       $0B,$0D             ;         Command_0B_SWITCH size=0D
L1E87          fcb       $0A,$01             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L1E89          fcb       $02                 ;           IF_NOT_JUMP address=1E8C
L1E8A          fcb       $00,$9D             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9D
L1E8C          fcb       $02                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L1E8D          fcb       $02                 ;           IF_NOT_JUMP address=1E90
L1E8E          fcb       $00,$9F             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9F
L1E90          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1E91          fcb       $02                 ;           IF_NOT_JUMP address=1E94
L1E92          fcb       $00,$9A             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9A
L1E94          fcb       $9D,$80,$B3,$00     ;   Script number=9D size=00B3 data=00
L1E98          fcb       $03,$12             ;     Data tag=03 size=0012
L1E9A          fcb       $C7,$DE,$94,$14,$43,$5E,$16,$BC,$DB,$72,$04,$9A ;       YOU ARE AT THE NORTH WALL. 
L1EA6          fcb       $53,$BE,$0E,$D0,$9B,$8F ;       .
L1EAC          fcb       $04,$80,$9B         ;     Data tag=04 size=009B
L1EAF          fcb       $0B,$80,$98         ;         Command_0B_SWITCH size=98
L1EB2          fcb       $0A,$01             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L1EB4          fcb       $02                 ;           IF_NOT_JUMP address=1EB7
L1EB5          fcb       $00,$9B             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9B
L1EB7          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1EB8          fcb       $02                 ;           IF_NOT_JUMP address=1EBB
L1EB9          fcb       $00,$9E             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9E
L1EBB          fcb       $17                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=17 phrase="17: CLIMB *     u.......   *       "
L1EBC          fcb       $80,$88             ;           IF_NOT_JUMP address=1F46
L1EBE          fcb       $0D,$80,$85         ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=133
L1EC1          fcb       $08,$21             ;               Command_08_COMPARE_OBJECT_TO_FIRST_NOUN object=21(Vines
L1EC3          fcb       $0E,$80,$80         ;               Command_0E_EXECUTE_LIST_WHILE_FAIL size=128
L1EC6          fcb       $0D,$54             ;                 Command_0D_EXECUTE_LIST_WHILE_PASS size=84
L1EC8          fcb       $05,$7F             ;                   Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=7F
L1ECA          fcb       $04                 ;                   Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L1ECB          fcb       $2A,$C7,$DE,$DE,$14,$64,$7A,$89,$17,$82,$17,$54 ;                     YOU CLIMB TO THE ROOF.  AS YOU STEP ON THE
L1ED7          fcb       $5E,$38,$A0,$3B,$F4,$4B,$49,$C7,$DE,$66,$17,$D3 ;                     ROOF, IT COLLAPSES. 
L1EE3          fcb       $61,$03,$A0,$5F,$BE,$39,$17,$E6,$9E,$D6,$15,$E1 ;                     .
L1EEF          fcb       $14,$FB,$8C,$17,$A7,$5B,$BB ;                     .
L1EF6          fcb       $17,$36,$00         ;                   Command_17_MOVE_OBJECT_TO_LOCATION object=36(Jungle) location=00
L1EF9          fcb       $17,$29,$FF         ;                   Command_17_MOVE_OBJECT_TO_LOCATION object=29(Floor) location=FF
L1EFC          fcb       $17,$2A,$FF         ;                   Command_17_MOVE_OBJECT_TO_LOCATION object=2A(Exit) location=FF
L1EFF          fcb       $17,$2B,$FF         ;                   Command_17_MOVE_OBJECT_TO_LOCATION object=2B(Passage) location=FF
L1F02          fcb       $17,$2C,$FF         ;                   Command_17_MOVE_OBJECT_TO_LOCATION object=2C(Hole) location=FF
L1F05          fcb       $17,$2D,$FF         ;                   Command_17_MOVE_OBJECT_TO_LOCATION object=2D(Corridor) location=FF
L1F08          fcb       $17,$2E,$FF         ;                   Command_17_MOVE_OBJECT_TO_LOCATION object=2E(Corner) location=FF
L1F0B          fcb       $17,$31,$FF         ;                   Command_17_MOVE_OBJECT_TO_LOCATION object=31(Hallway) location=FF
L1F0E          fcb       $17,$34,$FF         ;                   Command_17_MOVE_OBJECT_TO_LOCATION object=34(Entrance) location=FF
L1F11          fcb       $17,$35,$FF         ;                   Command_17_MOVE_OBJECT_TO_LOCATION object=35(Tunnel) location=FF
L1F14          fcb       $17,$3A,$FF         ;                   Command_17_MOVE_OBJECT_TO_LOCATION object=3A(Ceiling) location=FF
L1F17          fcb       $17,$3C,$00         ;                   Command_17_MOVE_OBJECT_TO_LOCATION object=3C(Object3C) location=00
L1F1A          fcb       $00,$81             ;                   Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=81
L1F1C          fcb       $04                 ;                 Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L1F1D          fcb       $28,$4B,$49,$C7,$DE,$DE,$14,$64,$7A,$16,$EE,$DB ;                   AS YOU CLIMB, THE VINE GIVES WAY AND YOU
L1F29          fcb       $72,$10,$CB,$49,$5E,$CF,$7B,$D9,$B5,$3B,$4A,$8E ;                   FALL TO THE GROUND.
L1F35          fcb       $48,$51,$18,$48,$C2,$46,$48,$89,$17,$82,$17,$49 ;                   .
L1F41          fcb       $5E,$07,$B3,$57,$98 ;                   .
L1F46          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1F47          fcb       $02                 ;           IF_NOT_JUMP address=1F4A
L1F48          fcb       $00,$9C             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9C
L1F4A          fcb       $9E,$25,$00         ;   Script number=9E size=0025 data=00
L1F4D          fcb       $03,$11             ;     Data tag=03 size=0011
L1F4F          fcb       $C7,$DE,$94,$14,$43,$5E,$16,$BC,$DB,$72,$95,$5F ;       YOU ARE AT THE EAST WALL.
L1F5B          fcb       $19,$BC,$46,$48,$2E ;       .
L1F60          fcb       $04,$0F             ;     Data tag=04 size=000F
L1F62          fcb       $0B,$0D             ;         Command_0B_SWITCH size=0D
L1F64          fcb       $0A,$01             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L1F66          fcb       $02                 ;           IF_NOT_JUMP address=1F69
L1F67          fcb       $00,$9D             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9D
L1F69          fcb       $02                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L1F6A          fcb       $02                 ;           IF_NOT_JUMP address=1F6D
L1F6B          fcb       $00,$9F             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9F
L1F6D          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1F6E          fcb       $02                 ;           IF_NOT_JUMP address=1F71
L1F6F          fcb       $00,$98             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=98
L1F71          fcb       $9F,$26,$00         ;   Script number=9F size=0026 data=00
L1F74          fcb       $03,$12             ;     Data tag=03 size=0012
L1F76          fcb       $C7,$DE,$94,$14,$43,$5E,$16,$BC,$DB,$72,$47,$B9 ;       YOU ARE AT THE SOUTH WALL. 
L1F82          fcb       $53,$BE,$0E,$D0,$9B,$8F ;       .
L1F88          fcb       $04,$0F             ;     Data tag=04 size=000F
L1F8A          fcb       $0B,$0D             ;         Command_0B_SWITCH size=0D
L1F8C          fcb       $0A,$04             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1F8E          fcb       $02                 ;           IF_NOT_JUMP address=1F91
L1F8F          fcb       $00,$9C             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9C
L1F91          fcb       $03                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1F92          fcb       $02                 ;           IF_NOT_JUMP address=1F95
L1F93          fcb       $00,$9E             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9E
L1F95          fcb       $02                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L1F96          fcb       $02                 ;           IF_NOT_JUMP address=1F99
L1F97          fcb       $00,$99             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=99
L1F99          fcb       $A0,$20,$00         ;   Script number=A0 size=0020 data=00
L1F9C          fcb       $03,$14             ;     Data tag=03 size=0014
L1F9E          fcb       $C7,$DE,$94,$14,$4B,$5E,$83,$96,$CF,$17,$7B,$B4 ;       YOU ARE IN A VERY SMALL ROOM. 
L1FAA          fcb       $E3,$B8,$F3,$8C,$01,$B3,$DB,$95 ;       .
L1FB2          fcb       $04,$07             ;     Data tag=04 size=0007
L1FB4          fcb       $0B,$05             ;         Command_0B_SWITCH size=05
L1FB6          fcb       $0A,$04             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L1FB8          fcb       $02                 ;           IF_NOT_JUMP address=1FBB
L1FB9          fcb       $00,$90             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=90
L1FBB          fcb       $A1,$2C,$00         ;   Script number=A1 size=002C data=00
L1FBE          fcb       $03,$20             ;     Data tag=03 size=0020
L1FC0          fcb       $C7,$DE,$94,$14,$4B,$5E,$83,$96,$5F,$17,$46,$48 ;       YOU ARE IN A SMALL ROOM WITH A SINGLE EXIT
L1FCC          fcb       $39,$17,$DB,$9F,$56,$D1,$03,$71,$5B,$17,$BE,$98 ;       EAST.
L1FD8          fcb       $47,$5E,$96,$D7,$23,$15,$17,$BA ;       .
L1FE0          fcb       $04,$07             ;     Data tag=04 size=0007
L1FE2          fcb       $0B,$05             ;         Command_0B_SWITCH size=05
L1FE4          fcb       $0A,$03             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L1FE6          fcb       $02                 ;           IF_NOT_JUMP address=1FE9
L1FE7          fcb       $00,$84             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=84
L1FE9          fcb       $A2,$30,$00         ;   Script number=A2 size=0030 data=00
L1FEC          fcb       $03,$18             ;     Data tag=03 size=0018
L1FEE          fcb       $C7,$DE,$94,$14,$4B,$5E,$83,$96,$FB,$14,$4B,$B2 ;       YOU ARE IN A DARK DAMP DENSE JUNGLE.
L1FFA          fcb       $4F,$59,$06,$A3,$9D,$61,$4C,$5E,$91,$C5,$FF,$8B ;       .
L2006          fcb       $04,$13             ;     Data tag=04 size=0013
L2008          fcb       $0B,$11             ;         Command_0B_SWITCH size=11
L200A          fcb       $0A,$03             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L200C          fcb       $02                 ;           IF_NOT_JUMP address=200F
L200D          fcb       $00,$A4             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A4
L200F          fcb       $01                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L2010          fcb       $02                 ;           IF_NOT_JUMP address=2013
L2011          fcb       $00,$96             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=96
L2013          fcb       $02                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L2014          fcb       $02                 ;           IF_NOT_JUMP address=2017
L2015          fcb       $00,$A3             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A3
L2017          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L2018          fcb       $02                 ;           IF_NOT_JUMP address=201B
L2019          fcb       $00,$97             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=97
L201B          fcb       $A3,$30,$00         ;   Script number=A3 size=0030 data=00
L201E          fcb       $03,$18             ;     Data tag=03 size=0018
L2020          fcb       $C7,$DE,$94,$14,$4B,$5E,$83,$96,$FF,$14,$97,$9A ;       YOU ARE IN A DENSE DAMP DARK JUNGLE.
L202C          fcb       $FB,$14,$D3,$93,$54,$59,$CC,$83,$91,$C5,$FF,$8B ;       .
L2038          fcb       $04,$13             ;     Data tag=04 size=0013
L203A          fcb       $0B,$11             ;         Command_0B_SWITCH size=11
L203C          fcb       $0A,$03             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L203E          fcb       $02                 ;           IF_NOT_JUMP address=2041
L203F          fcb       $00,$A4             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A4
L2041          fcb       $01                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L2042          fcb       $02                 ;           IF_NOT_JUMP address=2045
L2043          fcb       $00,$A2             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A2
L2045          fcb       $02                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L2046          fcb       $02                 ;           IF_NOT_JUMP address=2049
L2047          fcb       $00,$96             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=96
L2049          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L204A          fcb       $02                 ;           IF_NOT_JUMP address=204D
L204B          fcb       $00,$97             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=97
L204D          fcb       $A4,$30,$00         ;   Script number=A4 size=0030 data=00
L2050          fcb       $03,$18             ;     Data tag=03 size=0018
L2052          fcb       $C7,$DE,$94,$14,$4B,$5E,$83,$96,$FB,$14,$D3,$93 ;       YOU ARE IN A DAMP DARK DENSE JUNGLE.
L205E          fcb       $54,$59,$C6,$83,$9D,$61,$4C,$5E,$91,$C5,$FF,$8B ;       .
L206A          fcb       $04,$13             ;     Data tag=04 size=0013
L206C          fcb       $0B,$11             ;         Command_0B_SWITCH size=11
L206E          fcb       $0A,$03             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L2070          fcb       $02                 ;           IF_NOT_JUMP address=2073
L2071          fcb       $00,$A3             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A3
L2073          fcb       $01                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L2074          fcb       $02                 ;           IF_NOT_JUMP address=2077
L2075          fcb       $00,$A2             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A2
L2077          fcb       $02                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L2078          fcb       $02                 ;           IF_NOT_JUMP address=207B
L2079          fcb       $00,$96             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=96
L207B          fcb       $04                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L207C          fcb       $02                 ;           IF_NOT_JUMP address=207F
L207D          fcb       $00,$A3             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A3
L207F          fcb       $A5,$2C,$00         ;   Script number=A5 size=002C data=00
L2082          fcb       $03,$20             ;     Data tag=03 size=0020
L2084          fcb       $C7,$DE,$94,$14,$4B,$5E,$96,$96,$DB,$72,$A5,$B7 ;       YOU ARE IN THE SECRET PASSAGE WHICH LEADS
L2090          fcb       $76,$B1,$DB,$16,$D3,$B9,$9B,$6C,$23,$D1,$13,$54 ;       EAST. 
L209C          fcb       $E3,$8B,$0B,$5C,$95,$5F,$9B,$C1 ;       .
L20A4          fcb       $04,$07             ;     Data tag=04 size=0007
L20A6          fcb       $0B,$05             ;         Command_0B_SWITCH size=05
L20A8          fcb       $0A,$03             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L20AA          fcb       $02                 ;           IF_NOT_JUMP address=20AD
L20AB          fcb       $00,$A6             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A6
L20AD          fcb       $A6,$50,$00         ;   Script number=A6 size=0050 data=00
L20B0          fcb       $03,$2C             ;     Data tag=03 size=002C
L20B2          fcb       $C7,$DE,$94,$14,$43,$5E,$16,$BC,$DB,$72,$8E,$61 ;       YOU ARE AT THE END OF THE PASSAGE. THERE IS
L20BE          fcb       $B8,$16,$82,$17,$52,$5E,$65,$49,$77,$47,$56,$F4 ;       A HOLE IN THE CEILING.
L20CA          fcb       $F4,$72,$4B,$5E,$C3,$B5,$A9,$15,$DB,$8B,$83,$7A ;       .
L20D6          fcb       $5F,$BE,$D7,$14,$43,$7A,$CF,$98 ;       .
L20DE          fcb       $04,$1F             ;     Data tag=04 size=001F
L20E0          fcb       $0B,$1D             ;         Command_0B_SWITCH size=1D
L20E2          fcb       $0A,$04             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L20E4          fcb       $02                 ;           IF_NOT_JUMP address=20E7
L20E5          fcb       $00,$A5             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A5
L20E7          fcb       $17                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=17 phrase="17: CLIMB *     u.......   *       "
L20E8          fcb       $05                 ;           IF_NOT_JUMP address=20EE
L20E9          fcb       $0D,$03             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=3
L20EB          fcb       $08,$2C             ;               Command_08_COMPARE_OBJECT_TO_FIRST_NOUN object=2C(Hole
L20ED          fcb       $91                 ;               CommonCommand_91
L20EE          fcb       $36                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=36 phrase="36: CLIMB IN    *          *       "
L20EF          fcb       $05                 ;           IF_NOT_JUMP address=20F5
L20F0          fcb       $0D,$03             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=3
L20F2          fcb       $08,$2C             ;               Command_08_COMPARE_OBJECT_TO_FIRST_NOUN object=2C(Hole
L20F4          fcb       $91                 ;               CommonCommand_91
L20F5          fcb       $37                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=37 phrase="37: CLIMB OUT   *          *       "
L20F6          fcb       $05                 ;           IF_NOT_JUMP address=20FC
L20F7          fcb       $0D,$03             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=3
L20F9          fcb       $08,$2C             ;               Command_08_COMPARE_OBJECT_TO_FIRST_NOUN object=2C(Hole
L20FB          fcb       $91                 ;               CommonCommand_91
L20FC          fcb       $33                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=33 phrase="??"
L20FD          fcb       $01                 ;           IF_NOT_JUMP address=20FF
L20FE          fcb       $91                 ;             CommonCommand_91
; ENDOF 1523

;##ObjectData
; Objects are referenced by index in this list with the first object being "Object 1".
; The first three data bytes are as follows AA BB CC:
;   AA = location. If >80 then it is a room. If <80 then it is held by an object.
;   BB = score points
;   CC = --CPAXOL
;    C=1 if object can be carried
;    P=1 if object is a person;
;    A=1 if open/close-able
;    X=1 if lock/unlock-able 
;    O=1 if closed
;    L=1 if locked
;
; Objects can have various fields tagged as follows:
;   01 = list of adjectives (size+bytes) not used in RAAKATU
;   02 = short name (packed string)
;   03 = long description (packed string)
;   04 (never used)
;   05 (never used)
;   06 = command handling if object is second noun (script)
;   07 = command handling if object is first noun (script)
;   08 = turn-script executed for objects turn in game (script)
;   09 = hitpoint information (2 bytess) AA BB. AA=max hit points  BB=current hit points
;   0A = script executed with killed (script) 
;   0B = script executed if command is given to object (script) not used in RAAKATU
;
L20FF          fcb       $00,$91,$3A         ; Number=00 size=113A
; Object_01 Object1
L2102          fcb       $01,$03             ;   Number=01 size=0003
L2104          fcb       $00,$00,$00         ;     room=00 scorePoints=00 bits=00 *       
; Object_02 Object2
L2107          fcb       $03,$03             ;   Number=03 size=0003
L2109          fcb       $00,$00,$00         ;     room=00 scorePoints=00 bits=00 *       
; Object_03 Rug
L210C          fcb       $06,$48             ;   Number=06 size=0048
L210E          fcb       $82,$00,$80         ;     room=82 scorePoints=00 bits=80 u.......
L2111          fcb       $02                 ;     02 SHORT NAME
L2112          fcb       $02,$E9,$B3         ;       RUG
L2115          fcb       $07,$3F             ;     07 COMMAND HANDLING IF FIRST NOUN
L2117          fcb       $0B,$3D             ;       Command_0B_SWITCH size=3D
L2119          fcb       $0A,$0C             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=0C phrase="0C: LOOK UNDER  *          u......."
L211B          fcb       $01                 ;         IF_NOT_JUMP address=211D
L211C          fcb       $8C                 ;           CommonCommand_8C
L211D          fcb       $36                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=36 phrase="36: CLIMB IN    *          *       "
L211E          fcb       $01                 ;         IF_NOT_JUMP address=2120
L211F          fcb       $8A                 ;           CommonCommand_8A
L2120          fcb       $33                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=33 phrase="??"
L2121          fcb       $01                 ;         IF_NOT_JUMP address=2123
L2122          fcb       $8A                 ;           CommonCommand_8A
L2123          fcb       $34                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=34 phrase="34: JUMP OVER   *          u......."
L2124          fcb       $01                 ;         IF_NOT_JUMP address=2126
L2125          fcb       $8A                 ;           CommonCommand_8A
L2126          fcb       $35                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=35 phrase="??"
L2127          fcb       $01                 ;         IF_NOT_JUMP address=2129
L2128          fcb       $8B                 ;           CommonCommand_8B
L2129          fcb       $2D                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=2D phrase="2D: PULL UP     *          u......."
L212A          fcb       $01                 ;         IF_NOT_JUMP address=212C
L212B          fcb       $8C                 ;           CommonCommand_8C
L212C          fcb       $26                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=26 phrase="26: GO AROUND   *          u......."
L212D          fcb       $28                 ;         IF_NOT_JUMP address=2156
L212E          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L212F          fcb       $26,$C7,$DE,$D3,$14,$E6,$96,$16,$EE,$DB,$72,$E9 ;             YOU CAN'T, THE RUG STRETCHES ALL THE WAY
L213B          fcb       $B3,$66,$17,$76,$B1,$1F,$54,$C3,$B5,$F3,$8C,$5F ;             ACROSS THE ROOM.
L2147          fcb       $BE,$F3,$17,$43,$DB,$B9,$55,$CB,$B9,$5F,$BE,$39 ;             .
L2153          fcb       $17,$FF,$9F         ;             .
; Object_04 DoorCarvings
L2156          fcb       $09,$5E             ;   Number=09 size=005E
L2158          fcb       $82,$00,$84         ;     room=82 scorePoints=00 bits=84 u....X..
L215B          fcb       $02                 ;     02 SHORT NAME
L215C          fcb       $03,$81,$5B,$52     ;       DOOR
L2160          fcb       $07,$54             ;     07 COMMAND HANDLING IF FIRST NOUN
L2162          fcb       $0E,$52             ;       Command_0E_EXECUTE_LIST_WHILE_FAIL size=82
L2164          fcb       $0D,$22             ;         Command_0D_EXECUTE_LIST_WHILE_PASS size=34
L2166          fcb       $0A,$08             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=08 phrase="08: READ *      .....X..   *       "
L2168          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2169          fcb       $1E,$5F,$BE,$D3,$14,$13,$B4,$C5,$98,$C0,$16,$82 ;             THE CARVINGS ON THE DOOR SAY, "DO NOT
L2175          fcb       $17,$46,$5E,$44,$A0,$53,$17,$B3,$E0,$49,$1B,$99 ;             ENTER."
L2181          fcb       $16,$07,$BC,$BF,$9A,$1C,$B5 ;             .
L2188          fcb       $0D,$2C             ;         Command_0D_EXECUTE_LIST_WHILE_PASS size=44
L218A          fcb       $14                 ;           Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L218B          fcb       $0A,$0B             ;             Command_0A_COMPARE_TO_PHRASE_FORM val=0B phrase="0B: LOOK AT     *          u......."
L218D          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L218E          fcb       $27,$C7,$DE,$C6,$22,$9B,$15,$5B,$CA,$6B,$BF,$2B ;             YOU'LL HAVE TO GO TO THE EAST SIDE OF THE
L219A          fcb       $6E,$6B,$BF,$5F,$BE,$23,$15,$F3,$B9,$46,$B8,$51 ;             ROOM TO DO THAT.
L21A6          fcb       $5E,$96,$64,$DB,$72,$01,$B3,$56,$90,$C6,$9C,$D6 ;             .
L21B2          fcb       $9C,$56,$72,$2E     ;             .
; Object_05 Food
L21B6          fcb       $0C,$2A             ;   Number=0C size=002A
L21B8          fcb       $84,$00,$A0         ;     room=84 scorePoints=00 bits=A0 u.C.....
L21BB          fcb       $03                 ;     03 DESCRIPTION
L21BC          fcb       $0D,$5F,$BE,$5B,$B1,$4B,$7B,$01,$68,$0A,$58,$2F ;       THERE IS FOOD HERE.
L21C8          fcb       $62,$2E             ;       .
L21CA          fcb       $07,$11             ;     07 COMMAND HANDLING IF FIRST NOUN
L21CC          fcb       $0D,$0F             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=15
L21CE          fcb       $0A,$15             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=15 phrase="15: EAT *       u.......   *       "
L21D0          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L21D1          fcb       $04,$F4,$4F,$AB,$A2 ;           BURP! 
L21D6          fcb       $17,$05,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=05(Food) location=00
L21D9          fcb       $1C,$1D             ;         Command_1C_SET_VAR_OBJECT object=1D (USER)
L21DB          fcb       $23,$0F             ;         Command_23_HEAL_VAR_OBJECT value=0F
L21DD          fcb       $02                 ;     02 SHORT NAME
L21DE          fcb       $03,$01,$68,$44     ;       FOOD
; Object_06 StatueEast
L21E2          fcb       $0D,$2A             ;   Number=0D size=002A
L21E4          fcb       $88,$00,$80         ;     room=88 scorePoints=00 bits=80 u.......
L21E7          fcb       $02                 ;     02 SHORT NAME
L21E8          fcb       $04,$FB,$B9,$67,$C0 ;       STATUE
L21ED          fcb       $07,$05             ;     07 COMMAND HANDLING IF FIRST NOUN
L21EF          fcb       $0D,$03             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=3
L21F1          fcb       $0A,$12             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=12 phrase="12: PULL *      u.......   *       "
L21F3          fcb       $8D                 ;         CommonCommand_8D
L21F4          fcb       $03                 ;     03 DESCRIPTION
L21F5          fcb       $18,$5F,$BE,$66,$17,$8F,$49,$4B,$5E,$C8,$B5,$DB ;       THE STATUE IS FACING THE EAST DOOR. 
L2201          fcb       $46,$AB,$98,$5F,$BE,$23,$15,$F3,$B9,$81,$5B,$1B ;       .
L220D          fcb       $B5                 ;       .
; Object_07 StatueWest
L220E          fcb       $0D,$2A             ;   Number=0D size=002A
L2210          fcb       $00,$00,$80         ;     room=00 scorePoints=00 bits=80 u.......
L2213          fcb       $02                 ;     02 SHORT NAME
L2214          fcb       $04,$FB,$B9,$67,$C0 ;       STATUE
L2219          fcb       $07,$05             ;     07 COMMAND HANDLING IF FIRST NOUN
L221B          fcb       $0D,$03             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=3
L221D          fcb       $0A,$12             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=12 phrase="12: PULL *      u.......   *       "
L221F          fcb       $8D                 ;         CommonCommand_8D
L2220          fcb       $03                 ;     03 DESCRIPTION
L2221          fcb       $18,$5F,$BE,$66,$17,$8F,$49,$4B,$5E,$C8,$B5,$DB ;       THE STATUE IS FACING THE WEST DOOR. 
L222D          fcb       $46,$AB,$98,$5F,$BE,$F7,$17,$F3,$B9,$81,$5B,$1B ;       .
L2239          fcb       $B5                 ;       .
; Object_08 GoldRing
L223A          fcb       $12,$44             ;   Number=12 size=0044
L223C          fcb       $8C,$05,$A4         ;     room=8C scorePoints=05 bits=A4 u.C..X..
L223F          fcb       $03                 ;     03 DESCRIPTION
L2240          fcb       $14,$54,$45,$91,$7A,$B8,$16,$53,$15,$75,$98,$09 ;       A RING OF FINEST GOLD IS HERE.
L224C          fcb       $BC,$BE,$9F,$D5,$15,$9F,$15,$7F,$B1 ;       .
L2255          fcb       $02                 ;     02 SHORT NAME
L2256          fcb       $06,$3E,$6E,$14,$58,$91,$7A ;       GOLD RING
L225D          fcb       $07,$21             ;     07 COMMAND HANDLING IF FIRST NOUN
L225F          fcb       $0D,$1F             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=31
L2261          fcb       $0A,$08             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=08 phrase="08: READ *      .....X..   *       "
L2263          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2264          fcb       $1B,$5F,$BE,$D0,$15,$64,$B7,$EE,$7A,$C0,$7A,$2F ;           THE INSCRIPTION READS, "RING OF MOTION."
L2270          fcb       $17,$0D,$47,$FC,$ED,$10,$B2,$D1,$6A,$8F,$64,$03 ;           .
L227C          fcb       $A1,$27,$A0,$22     ;           .
; Object_09 Sword
L2280          fcb       $0E,$42             ;   Number=0E size=0042
L2282          fcb       $A1,$00,$E4         ;     room=A1 scorePoints=00 bits=E4 uvC..X..
L2285          fcb       $03                 ;     03 DESCRIPTION
L2286          fcb       $19,$5F,$BE,$5B,$B1,$4B,$7B,$4E,$45,$31,$49,$55 ;       THERE IS A LARGE SWORD LAYING NEARBY.
L2292          fcb       $5E,$44,$D2,$0E,$58,$4B,$4A,$AB,$98,$63,$98,$03 ;       .
L229E          fcb       $B1,$2E             ;       .
L22A0          fcb       $07,$18             ;     07 COMMAND HANDLING IF FIRST NOUN
L22A2          fcb       $0D,$16             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=22
L22A4          fcb       $0A,$08             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=08 phrase="08: READ *      .....X..   *       "
L22A6          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L22A7          fcb       $12,$2C,$1D,$5F,$A0,$D3,$B3,$B8,$16,$43,$16,$57 ;           "PROPERTY OF LIEYUCHNEBST" 
L22B3          fcb       $63,$28,$54,$BD,$5F,$23,$BC ;           .
L22BA          fcb       $02                 ;     02 SHORT NAME
L22BB          fcb       $08,$54,$8B,$9B,$6C,$81,$BA,$33,$B1 ;       LARGE SWORD 
; Object_0A StoneGargoyle
L22C4          fcb       $0F,$6B             ;   Number=0F size=006B
L22C6          fcb       $8E,$00,$80         ;     room=8E scorePoints=00 bits=80 u.......
L22C9          fcb       $03                 ;     03 DESCRIPTION
L22CA          fcb       $34,$5F,$BE,$5B,$B1,$4B,$7B,$4A,$45,$FF,$78,$35 ;       THERE IS A HIDEOUS STONE GARGOYLE PERCHED ON
L22D6          fcb       $A1,$66,$17,$0F,$A0,$73,$15,$C1,$B1,$3F,$DE,$DF ;       A LEDGE ABOVE THE NORTH PASSAGE. 
L22E2          fcb       $16,$1A,$B1,$F3,$5F,$03,$A0,$4E,$45,$01,$60,$43 ;       .
L22EE          fcb       $5E,$08,$4F,$56,$5E,$DB,$72,$04,$9A,$53,$BE,$55 ;       .
L22FA          fcb       $A4,$09,$B7,$DB,$63 ;       .
L22FF          fcb       $07,$24             ;     07 COMMAND HANDLING IF FIRST NOUN
L2301          fcb       $0D,$22             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=34
L2303          fcb       $0A,$0B             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=0B phrase="0B: LOOK AT     *          u......."
L2305          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2306          fcb       $1E,$5F,$BE,$5B,$B1,$EA,$48,$94,$5F,$D6,$B5,$C4 ;           THERE APPEARS TO BE DRIED BLOOD ON HIS
L2312          fcb       $9C,$46,$5E,$07,$B2,$04,$58,$81,$8D,$11,$58,$8A ;           CLAWS!
L231E          fcb       $96,$4B,$7B,$BB,$54,$C9,$D2 ;           .
L2325          fcb       $02                 ;     02 SHORT NAME
L2326          fcb       $0A,$09,$BA,$5B,$98,$14,$6C,$4B,$6E,$DB,$8B ;       STONE GARGOYLE 
; Object_0B AlterA
L2331          fcb       $22,$58             ;   Number=22 size=0058
L2333          fcb       $95,$00,$80         ;     room=95 scorePoints=00 bits=80 u.......
L2336          fcb       $03                 ;     03 DESCRIPTION
L2337          fcb       $32,$68,$4D,$AF,$A0,$51,$18,$55,$C2,$50,$BD,$0B ;       BEFORE YOU STANDS AN ALTAR, STAINED WITH THE
L2343          fcb       $5C,$83,$48,$4E,$48,$46,$49,$66,$17,$D0,$47,$F3 ;       BLOOD OF COUNTLESS SACRIFICES.
L234F          fcb       $5F,$56,$D1,$16,$71,$DB,$72,$89,$4E,$73,$9E,$C3 ;       .
L235B          fcb       $9E,$47,$55,$C6,$9A,$65,$62,$53,$17,$B3,$55,$05 ;       .
L2367          fcb       $67,$6F,$62         ;       .
L236A          fcb       $07,$10             ;     07 COMMAND HANDLING IF FIRST NOUN
L236C          fcb       $0B,$0E             ;       Command_0B_SWITCH size=0E
L236E          fcb       $0A,$12             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=12 phrase="12: PULL *      u.......   *       "
L2370          fcb       $01                 ;         IF_NOT_JUMP address=2372
L2371          fcb       $8E                 ;           CommonCommand_8E
L2372          fcb       $0C                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=0C phrase="0C: LOOK UNDER  *          u......."
L2373          fcb       $01                 ;         IF_NOT_JUMP address=2375
L2374          fcb       $8E                 ;           CommonCommand_8E
L2375          fcb       $38                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=38 phrase="38: CLIMB UNDER *          u......."
L2376          fcb       $05                 ;         IF_NOT_JUMP address=237C
L2377          fcb       $0D,$03             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=3
L2379          fcb       $00,$A5             ;             Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A5
L237B          fcb       $90                 ;             CommonCommand_90
L237C          fcb       $02                 ;     02 SHORT NAME
L237D          fcb       $0D,$89,$4E,$73,$9E,$FB,$B9,$8F,$7A,$03,$58,$3B ;       BLOOD STAINED ALTAR
L2389          fcb       $8E,$52             ;       .
; Object_0C Idol
L238B          fcb       $23,$2F             ;   Number=23 size=002F
L238D          fcb       $95,$05,$A0         ;     room=95 scorePoints=05 bits=A0 u.C.....
L2390          fcb       $03                 ;     03 DESCRIPTION
L2391          fcb       $20,$49,$45,$BE,$9F,$83,$61,$09,$79,$15,$8A,$50 ;       A GOLDEN IDOL STANDS IN THE CENTER OF THE
L239D          fcb       $BD,$0B,$5C,$83,$7A,$5F,$BE,$D7,$14,$BF,$9A,$91 ;       ROOM. 
L23A9          fcb       $AF,$96,$64,$DB,$72,$01,$B3,$DB,$95 ;       .
L23B2          fcb       $02                 ;     02 SHORT NAME
L23B3          fcb       $08,$3E,$6E,$F0,$59,$C6,$15,$B3,$9F ;       GOLDEN IDOL 
; Object_0D BronzeGates
L23BC          fcb       $27,$80,$9A         ;   Number=27 size=009A
L23BF          fcb       $9C,$00,$80         ;     room=9C scorePoints=00 bits=80 u.......
L23C2          fcb       $03                 ;     03 DESCRIPTION
L23C3          fcb       $34,$AF,$6E,$73,$49,$79,$4F,$AF,$9B,$73,$15,$F5 ;       GREAT BRONZE GATES ENGRAVED WITH IMAGES OF
L23CF          fcb       $BD,$30,$15,$AB,$6E,$66,$CA,$FB,$17,$53,$BE,$63 ;       SERPENTS STAND SILENTLY BEFORE YOU.
L23DB          fcb       $7A,$B5,$6C,$B8,$16,$57,$17,$1F,$B3,$CD,$9A,$66 ;       .
L23E7          fcb       $17,$8E,$48,$5B,$17,$F0,$8B,$13,$BF,$AF,$14,$04 ;       .
L23F3          fcb       $68,$5B,$5E,$3F,$A1 ;       .
L23F8          fcb       $07,$55             ;     07 COMMAND HANDLING IF FIRST NOUN
L23FA          fcb       $0B,$53             ;       Command_0B_SWITCH size=53
L23FC          fcb       $0A,$11             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=11 phrase="11: OPEN *      u.......   *       "
L23FE          fcb       $20                 ;         IF_NOT_JUMP address=241F
L23FF          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2400          fcb       $1E,$5F,$BE,$73,$15,$F5,$BD,$94,$14,$4E,$5E,$5D ;             THE GATES ARE LOCKED, YOU CAN NOT OPEN THEM.
L240C          fcb       $9E,$16,$60,$51,$18,$45,$C2,$83,$48,$06,$9A,$C2 ;             
L2418          fcb       $16,$83,$61,$5F,$BE,$DB,$95 ;             .
L241F          fcb       $36                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=36 phrase="36: CLIMB IN    *          *       "
L2420          fcb       $10                 ;         IF_NOT_JUMP address=2431
L2421          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2422          fcb       $0E,$5F,$BE,$73,$15,$F5,$BD,$94,$14,$45,$5E,$85 ;             THE GATES ARE CLOSED.
L242E          fcb       $8D,$17,$60         ;             .
L2431          fcb       $17                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=17 phrase="17: CLIMB *     u.......   *       "
L2432          fcb       $19                 ;         IF_NOT_JUMP address=244C
L2433          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2434          fcb       $17,$5F,$BE,$73,$15,$F5,$BD,$94,$14,$56,$5E,$2B ;             THE GATES ARE TOO SMOOTH TO CLIMB.
L2440          fcb       $A0,$F1,$B8,$02,$A1,$89,$17,$DE,$14,$64,$7A,$2E ;             .
L244C          fcb       $34                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=34 phrase="34: JUMP OVER   *          u......."
L244D          fcb       $01                 ;         IF_NOT_JUMP address=244F
L244E          fcb       $89                 ;           CommonCommand_89
L244F          fcb       $02                 ;     02 SHORT NAME
L2450          fcb       $08,$79,$4F,$AF,$9B,$73,$15,$F5,$BD ;       BRONZE GATES
; Object_0E UnpulledLever
L2459          fcb       $16,$59             ;   Number=16 size=0059
L245B          fcb       $91,$00,$A0         ;     room=91 scorePoints=00 bits=A0 u.C.....
L245E          fcb       $02                 ;     02 SHORT NAME
L245F          fcb       $04,$F8,$8B,$23,$62 ;       LEVER 
L2464          fcb       $03                 ;     03 DESCRIPTION
L2465          fcb       $16,$44,$45,$EF,$60,$AE,$D0,$F3,$5F,$F8,$8B,$23 ;       A BEJEWELED LEVER IS ON ONE WALL.
L2471          fcb       $62,$4B,$7B,$03,$A0,$0F,$A0,$F3,$17,$17,$8D ;       .
L247C          fcb       $07,$36             ;     07 COMMAND HANDLING IF FIRST NOUN
L247E          fcb       $0D,$34             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=52
L2480          fcb       $0A,$12             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=12 phrase="12: PULL *      u.......   *       "
L2482          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2483          fcb       $2F,$56,$45,$D2,$B0,$09,$15,$A3,$A0,$5F,$A0,$8B ;           A TRAP DOOR OPENS ABOVE YOU.  GOLD DUST
L248F          fcb       $9A,$B9,$46,$5B,$CA,$C7,$DE,$3B,$F4,$3E,$6E,$06 ;           FILLS THE ROOM AND DROWNS YOU.
L249B          fcb       $58,$66,$C6,$53,$15,$0D,$8D,$82,$17,$54,$5E,$3F ;           .
L24A7          fcb       $A0,$90,$14,$06,$58,$09,$B3,$8B,$9A,$C7,$DE,$2E ;           .
L24B3          fcb       $81                 ;         CommonCommand_81
; Object_0F PulledLever
L24B4          fcb       $16,$42             ;   Number=16 size=0042
L24B6          fcb       $00,$05,$A0         ;     room=00 scorePoints=05 bits=A0 u.C.....
L24B9          fcb       $03                 ;     03 DESCRIPTION
L24BA          fcb       $12,$44,$45,$EF,$60,$AE,$D0,$F3,$5F,$F8,$8B,$23 ;       A BEJEWELED LEVER IS HERE. 
L24C6          fcb       $62,$4B,$7B,$F4,$72,$DB,$63 ;       .
L24CD          fcb       $02                 ;     02 SHORT NAME
L24CE          fcb       $0A,$6C,$4D,$F7,$62,$E6,$8B,$3F,$16,$74,$CA ;       BEJEWELED LEVER
L24D9          fcb       $07,$1D             ;     07 COMMAND HANDLING IF FIRST NOUN
L24DB          fcb       $0D,$1B             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=27
L24DD          fcb       $0A,$12             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=12 phrase="12: PULL *      u.......   *       "
L24DF          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L24E0          fcb       $17,$5F,$BE,$3F,$16,$74,$CA,$D3,$14,$90,$96,$CE ;           THE LEVER CAN NO LONGER BE PULLED.
L24EC          fcb       $9C,$11,$A0,$23,$62,$5B,$4D,$6E,$A7,$E6,$8B,$2E ;           .
; Object_10 LeverPlaque
L24F8          fcb       $18,$80,$C5         ;   Number=18 size=00C5
L24FB          fcb       $91,$00,$84         ;     room=91 scorePoints=00 bits=84 u....X..
L24FE          fcb       $07,$80,$98         ;     07 COMMAND HANDLING IF FIRST NOUN
L2501          fcb       $0D,$80,$95         ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=149
L2504          fcb       $0A,$08             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=08 phrase="08: READ *      .....X..   *       "
L2506          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2507          fcb       $80,$90,$9E,$C5,$BE,$9F,$33,$17,$1F,$54,$CE,$B5 ;           UNTOLD RICHES LIE WITHIN REACH, HERE- TO ANY
L2513          fcb       $1B,$79,$56,$D1,$90,$73,$2F,$17,$DA,$46,$0A,$EE ;           KNOWING, LIVING CREATURE. BE WARY THOUGH, NO
L251F          fcb       $2F,$62,$D6,$E7,$C3,$9C,$7B,$9B,$19,$87,$50,$D1 ;           MATTER WHAT THY CREED, THAT THOU HARNESS AND
L252B          fcb       $33,$70,$98,$8C,$91,$7A,$E4,$14,$96,$5F,$2F,$C6 ;           LIMIT THY POWERFUL GREED.  PULL THE LEVER TO
L2537          fcb       $44,$F4,$59,$5E,$43,$49,$82,$17,$29,$A1,$73,$76 ;           GAIN THY WEALTH, BE PREPARED TO ... 
L2543          fcb       $EB,$99,$96,$91,$F4,$BD,$FA,$17,$73,$49,$73,$BE ;           .
L254F          fcb       $E4,$14,$26,$60,$16,$EE,$56,$72,$82,$17,$1B,$A1 ;           .
L255B          fcb       $54,$72,$75,$98,$C3,$B5,$33,$98,$8F,$8C,$73,$7B ;           .
L2567          fcb       $73,$BE,$E9,$16,$B4,$D0,$EE,$68,$84,$15,$26,$60 ;           .
L2573          fcb       $3B,$F4,$6E,$A7,$16,$8A,$DB,$72,$F8,$8B,$23,$62 ;           .
L257F          fcb       $6B,$BF,$0B,$6C,$96,$96,$FB,$75,$A3,$D0,$42,$8E ;           .
L258B          fcb       $04,$EE,$52,$5E,$72,$B1,$2F,$49,$16,$58,$DF,$9C ;           .
L2597          fcb       $DB,$F9             ;           .
L2599          fcb       $03                 ;     03 DESCRIPTION
L259A          fcb       $1F,$5F,$BE,$5B,$B1,$4B,$7B,$52,$45,$53,$8B,$1B ;       THERE IS A PLAQUE ON THE WALL ABOVE THE
L25A6          fcb       $C4,$03,$A0,$5F,$BE,$F3,$17,$F3,$8C,$B9,$46,$5B ;       LEVER.
L25B2          fcb       $CA,$5F,$BE,$3F,$16,$74,$CA,$2E ;       .
L25BA          fcb       $02                 ;     02 SHORT NAME
L25BB          fcb       $04,$FB,$A5,$A7,$AD ;       PLAQUE
; Object_11 UnlitCandle
L25C0          fcb       $19,$6F             ;   Number=19 size=006F
L25C2          fcb       $92,$00,$A8         ;     room=92 scorePoints=00 bits=A8 u.C.A...
L25C5          fcb       $03                 ;     03 DESCRIPTION
L25C6          fcb       $10,$45,$45,$8E,$48,$DB,$8B,$4B,$7B,$83,$7A,$5F ;       A CANDLE IS IN THE ROOM.
L25D2          fcb       $BE,$39,$17,$FF,$9F ;       .
L25D7          fcb       $02                 ;     02 SHORT NAME
L25D8          fcb       $04,$10,$53,$FF,$5A ;       CANDLE
L25DD          fcb       $07,$52             ;     07 COMMAND HANDLING IF FIRST NOUN
L25DF          fcb       $0B,$50             ;       Command_0B_SWITCH size=50
L25E1          fcb       $0A,$14             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=14 phrase="14: LIGHT WITH  u...A...   u...A..."
L25E3          fcb       $34                 ;         IF_NOT_JUMP address=2618
L25E4          fcb       $0E,$32             ;           Command_0E_EXECUTE_LIST_WHILE_FAIL size=50
L25E6          fcb       $0D,$2F             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=47
L25E8          fcb       $09,$14             ;               Command_09_COMPARE_OBJECT_TO_SECOND_NOUN object=14(LitLamp
L25EA          fcb       $1E,$11,$12         ;               Command_1E_SWAP_OBJECTS objectA=11(UnlitCandle) objectB=12(LitCandle)
L25ED          fcb       $04                 ;               Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L25EE          fcb       $28,$5F,$BE,$D3,$14,$46,$98,$4B,$5E,$D0,$B5,$6B ;                 THE CANDLE IS NOW BURNING, A SWEET SCENT
L25FA          fcb       $A1,$F4,$4F,$10,$99,$33,$70,$55,$45,$A7,$D0,$15 ;                 PERMEATES THE ROOM.
L2606          fcb       $BC,$B0,$53,$12,$BC,$37,$62,$96,$5F,$4B,$62,$5F ;                 .
L2612          fcb       $BE,$39,$17,$FF,$9F ;                 .
L2617          fcb       $88                 ;             CommonCommand_88
L2618          fcb       $15                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=15 phrase="15: EAT *       u.......   *       "
L2619          fcb       $17                 ;         IF_NOT_JUMP address=2631
L261A          fcb       $0D,$15             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=21
L261C          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L261D          fcb       $12,$55,$BD,$F5,$BD,$F3,$17,$1E,$DA,$D6,$15,$D2 ;               TASTES WAXY, ITS POISONOUS!
L2629          fcb       $B5,$55,$9F,$19,$A0,$49,$C6 ;               .
L2630          fcb       $81                 ;             CommonCommand_81
; Object_12 LitCandle
L2631          fcb       $19,$80,$C6         ;   Number=19 size=00C6
L2634          fcb       $00,$00,$A8         ;     room=00 scorePoints=00 bits=A8 u.C.A...
L2637          fcb       $03                 ;     03 DESCRIPTION
L2638          fcb       $12,$45,$45,$8E,$48,$DB,$8B,$4B,$7B,$F4,$4F,$10 ;       A CANDLE IS BURNING DIMLY. 
L2644          fcb       $99,$C6,$6A,$6E,$7A,$DB,$E0 ;       .
L264B          fcb       $02                 ;     02 SHORT NAME
L264C          fcb       $0A,$F4,$4F,$10,$99,$C5,$6A,$8E,$48,$DB,$8B ;       BURNING CANDLE 
L2657          fcb       $07,$59             ;     07 COMMAND HANDLING IF FIRST NOUN
L2659          fcb       $0E,$57             ;       Command_0E_EXECUTE_LIST_WHILE_FAIL size=87
L265B          fcb       $0D,$1C             ;         Command_0D_EXECUTE_LIST_WHILE_PASS size=28
L265D          fcb       $0E,$04             ;           Command_0E_EXECUTE_LIST_WHILE_FAIL size=4
L265F          fcb       $0A,$13             ;             Command_0A_COMPARE_TO_PHRASE_FORM val=13 phrase="??"
L2661          fcb       $0A,$14             ;             Command_0A_COMPARE_TO_PHRASE_FORM val=14 phrase="14: LIGHT WITH  u...A...   u...A..."
L2663          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2664          fcb       $14,$5F,$BE,$D3,$14,$46,$98,$4B,$5E,$C3,$B5,$EF ;             THE CANDLE IS ALREADY BURNING.
L2670          fcb       $8D,$13,$47,$BF,$14,$D3,$B2,$CF,$98 ;             .
L2679          fcb       $0D,$19             ;         Command_0D_EXECUTE_LIST_WHILE_PASS size=25
L267B          fcb       $0A,$16             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=16 phrase="16: DROP OUT    *          u...A..."
L267D          fcb       $1E,$11,$12         ;           Command_1E_SWAP_OBJECTS objectA=11(UnlitCandle) objectB=12(LitCandle)
L2680          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2681          fcb       $12,$5F,$BE,$D3,$14,$46,$98,$4B,$5E,$C7,$B5,$43 ;             THE CANDLE IS EXTINGUISHED.
L268D          fcb       $D9,$C7,$98,$5A,$7B,$17,$60 ;             .
L2694          fcb       $0D,$1C             ;         Command_0D_EXECUTE_LIST_WHILE_PASS size=28
L2696          fcb       $0A,$15             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=15 phrase="15: EAT *       u.......   *       "
L2698          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2699          fcb       $18,$C7,$DE,$2F,$17,$46,$48,$55,$DB,$87,$74,$B3 ;             YOU REALLY SHOULD PUT IT OUT FIRST. 
L26A5          fcb       $8B,$76,$A7,$D6,$15,$C7,$16,$08,$BC,$3D,$7B,$9B ;             .
L26B1          fcb       $C1                 ;             .
L26B2          fcb       $08,$46             ;     08 TURN SCRIPT
L26B4          fcb       $0D,$44             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=68
L26B6          fcb       $1F                 ;         Command_1F_PRINT_MESSAGE
L26B7          fcb       $24,$5F,$BE,$43,$16,$2E,$6D,$5C,$15,$DB,$9F,$5F ;           THE LIGHT FROM THE CANDLE SEEMS TO BE
L26C3          fcb       $BE,$D3,$14,$46,$98,$55,$5E,$2F,$60,$D6,$B5,$C4 ;           GROWING DIMMER. 
L26CF          fcb       $9C,$49,$5E,$09,$B3,$91,$7A,$03,$15,$67,$93,$1B ;           .
L26DB          fcb       $B5                 ;           .
L26DC          fcb       $0B,$1C             ;         Command_0B_SWITCH size=1C
L26DE          fcb       $01,$1D             ;           Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=1D(USER)
L26E0          fcb       $07                 ;           IF_NOT_JUMP address=26E8
L26E1          fcb       $0D,$05             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=5
L26E3          fcb       $1C,$1D             ;               Command_1C_SET_VAR_OBJECT object=1D (USER)
L26E5          fcb       $1D,$14             ;               Command_1D_ATTACK_OBJECT damage=14
L26E7          fcb       $0C                 ;               Command_0C_FAIL
L26E8          fcb       $1E                 ;           Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=1E(LiveGargoyle)
L26E9          fcb       $07                 ;           IF_NOT_JUMP address=26F1
L26EA          fcb       $0D,$05             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=5
L26EC          fcb       $1C,$1E             ;               Command_1C_SET_VAR_OBJECT object=1E (LiveGargoyle)
L26EE          fcb       $1D,$32             ;               Command_1D_ATTACK_OBJECT damage=32
L26F0          fcb       $0C                 ;               Command_0C_FAIL
L26F1          fcb       $15                 ;           Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=15(LiveSerpent)
L26F2          fcb       $07                 ;           IF_NOT_JUMP address=26FA
L26F3          fcb       $0D,$05             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=5
L26F5          fcb       $1C,$15             ;               Command_1C_SET_VAR_OBJECT object=15 (LiveSerpent)
L26F7          fcb       $1D,$0F             ;               Command_1D_ATTACK_OBJECT damage=0F
L26F9          fcb       $0C                 ;               Command_0C_FAIL
; Object_13 CrypticRunes
L26FA          fcb       $18,$80,$84         ;   Number=18 size=0084
L26FD          fcb       $92,$00,$84         ;     room=92 scorePoints=00 bits=84 u....X..
L2700          fcb       $07,$5B             ;     07 COMMAND HANDLING IF FIRST NOUN
L2702          fcb       $0D,$59             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=89
L2704          fcb       $0A,$08             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=08 phrase="08: READ *      .....X..   *       "
L2706          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2707          fcb       $55,$9E,$7A,$D6,$9C,$DB,$72,$70,$C0,$6E,$98,$30 ;           INTO THE TUNNEL ENTERS THE SEEKER, BRAVELY
L2713          fcb       $15,$F4,$BD,$D6,$B5,$DB,$72,$A7,$B7,$B4,$85,$04 ;           AND WISELY HE GOES. FOR HE WILL RECOGNIZE
L271F          fcb       $EE,$D8,$B0,$53,$61,$90,$14,$19,$58,$57,$7B,$FB ;           THE REAPER, AS THE LIGHT BEFORE HIM GLOWS.
L272B          fcb       $8E,$DB,$72,$37,$6E,$5B,$BB,$04,$68,$9F,$15,$FB ;           .
L2737          fcb       $17,$F3,$8C,$65,$B1,$00,$9F,$6F,$7C,$82,$17,$54 ;           .
L2743          fcb       $5E,$92,$5F,$46,$62,$95,$14,$82,$17,$4E,$5E,$7A ;           .
L274F          fcb       $79,$04,$BC,$59,$60,$5B,$B1,$8F,$73,$7E,$15,$85 ;           .
L275B          fcb       $A1,$2E             ;           .
L275D          fcb       $03                 ;     03 DESCRIPTION
L275E          fcb       $1C,$5F,$BE,$5B,$B1,$2F,$49,$E4,$14,$EE,$DE,$CB ;       THERE ARE CRYPTIC RUNES ABOVE THE TUNNEL. 
L276A          fcb       $78,$F0,$B3,$4B,$62,$B9,$46,$5B,$CA,$5F,$BE,$8F ;       .
L2776          fcb       $17,$CF,$99,$9B,$8F ;       .
L277B          fcb       $02                 ;     02 SHORT NAME
L277C          fcb       $04,$F0,$B3,$4B,$62 ;       RUNES 
; Object_14 LitLamp
L2781          fcb       $1B,$80,$B5         ;   Number=1B size=00B5
L2784          fcb       $A0,$00,$AC         ;     room=A0 scorePoints=00 bits=AC u.C.AX..
L2787          fcb       $03                 ;     03 DESCRIPTION
L2788          fcb       $14,$5F,$BE,$5B,$B1,$4B,$7B,$44,$45,$38,$C6,$91 ;       THERE IS A BURNING LAMP HERE. 
L2794          fcb       $7A,$3B,$16,$D3,$93,$F4,$72,$DB,$63 ;       .
L279D          fcb       $07,$80,$8F         ;     07 COMMAND HANDLING IF FIRST NOUN
L27A0          fcb       $0E,$80,$8C         ;       Command_0E_EXECUTE_LIST_WHILE_FAIL size=140
L27A3          fcb       $0D,$1B             ;         Command_0D_EXECUTE_LIST_WHILE_PASS size=27
L27A5          fcb       $0E,$04             ;           Command_0E_EXECUTE_LIST_WHILE_FAIL size=4
L27A7          fcb       $0A,$13             ;             Command_0A_COMPARE_TO_PHRASE_FORM val=13 phrase="??"
L27A9          fcb       $0A,$14             ;             Command_0A_COMPARE_TO_PHRASE_FORM val=14 phrase="14: LIGHT WITH  u...A...   u...A..."
L27AB          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L27AC          fcb       $13,$5F,$BE,$3B,$16,$D3,$93,$4B,$7B,$4C,$48,$86 ;             THE LAMP IS ALREADY BURNING.
L27B8          fcb       $5F,$44,$DB,$38,$C6,$91,$7A,$2E ;             .
L27C0          fcb       $0B,$6D             ;         Command_0B_SWITCH size=6D
L27C2          fcb       $0A,$16             ;           Command_0A_COMPARE_TO_PHRASE_FORM val=16 phrase="16: DROP OUT    *          u...A..."
L27C4          fcb       $12                 ;           IF_NOT_JUMP address=27D7
L27C5          fcb       $0D,$10             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=16
L27C7          fcb       $1E,$28,$14         ;               Command_1E_SWAP_OBJECTS objectA=28(UnlitLamp) objectB=14(LitLamp)
L27CA          fcb       $04                 ;               Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L27CB          fcb       $0B,$5F,$BE,$3B,$16,$D3,$93,$4B,$7B,$36,$A1,$2E ;                 THE LAMP IS OUT.
L27D7          fcb       $18                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=18 phrase="18: RUB *       u.......   *       "
L27D8          fcb       $2D                 ;           IF_NOT_JUMP address=2806
L27D9          fcb       $0D,$2B             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=43
L27DB          fcb       $04                 ;               Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L27DC          fcb       $26,$5F,$BE,$3B,$16,$D3,$93,$37,$6E,$D1,$B5,$97 ;                 THE LAMP GOES OUT. YOU MUST HAVE RUBBED IT
L27E8          fcb       $C6,$51,$18,$4F,$C2,$66,$C6,$9B,$15,$5B,$CA,$E4 ;                 THE WRONG WAY!
L27F4          fcb       $B3,$66,$4D,$D6,$15,$82,$17,$59,$5E,$00,$B3,$D9 ;                 .
L2800          fcb       $6A,$39,$4A         ;                 .
L2803          fcb       $1E,$28,$14         ;               Command_1E_SWAP_OBJECTS objectA=28(UnlitLamp) objectB=14(LitLamp)
L2806          fcb       $08                 ;           Command_0A_COMPARE_TO_PHRASE_FORM val=08 phrase="08: READ *      .....X..   *       "
L2807          fcb       $27                 ;           IF_NOT_JUMP address=282F
L2808          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2809          fcb       $25,$5F,$BE,$3B,$16,$D3,$93,$4B,$7B,$48,$55,$2F ;               THE LAMP IS COVERED WITH TARNISH AND YOU
L2815          fcb       $62,$19,$58,$82,$7B,$7B,$17,$D3,$B2,$13,$B8,$8E ;               CAN'T READ IT.
L2821          fcb       $48,$51,$18,$45,$C2,$85,$48,$14,$BC,$86,$5F,$D6 ;               .
L282D          fcb       $15,$2E             ;               .
L282F          fcb       $02                 ;     02 SHORT NAME
L2830          fcb       $08,$F4,$4F,$10,$99,$CE,$6A,$72,$48 ;       BURNING LAMP
; Object_15 LiveSerpent
L2839          fcb       $24,$81,$C0         ;   Number=24 size=01C0
L283C          fcb       $00,$00,$90         ;     room=00 scorePoints=00 bits=90 u..P....
L283F          fcb       $03                 ;     03 DESCRIPTION
L2840          fcb       $1C,$4E,$45,$31,$49,$55,$5E,$3A,$62,$9E,$61,$43 ;       A LARGE SERPENT LIES COILED ON THE FLOOR. 
L284C          fcb       $16,$4B,$62,$3B,$55,$E6,$8B,$C0,$16,$82,$17,$48 ;       .
L2858          fcb       $5E,$81,$8D,$1B,$B5 ;       .
L285D          fcb       $09,$02,$3C,$3C     ;     09 HIT POINTS maxHitPoints=3C currentHitPoints=3C
L2861          fcb       $07,$80,$B3         ;     07 COMMAND HANDLING IF FIRST NOUN
L2864          fcb       $0B,$80,$B0         ;       Command_0B_SWITCH size=B0
L2867          fcb       $0A,$09             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=09 phrase="09: ATTACK WITH ...P....   .v......"
L2869          fcb       $80,$9A             ;         IF_NOT_JUMP address=2905
L286B          fcb       $0D,$80,$97         ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=151
L286E          fcb       $1A                 ;             Command_1A_SET_VAR_OBJECT_TO_FIRST_NOUN
L286F          fcb       $09,$09             ;             Command_09_COMPARE_OBJECT_TO_SECOND_NOUN object=09(Sword
L2871          fcb       $0B,$80,$91         ;             Command_0B_SWITCH size=91
L2874          fcb       $05,$99             ;               Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=99
L2876          fcb       $2B                 ;               IF_NOT_JUMP address=28A2
L2877          fcb       $0D,$29             ;                 Command_0D_EXECUTE_LIST_WHILE_PASS size=41
L2879          fcb       $04                 ;                   Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L287A          fcb       $03,$C7,$DE,$52     ;                     YOUR
L287E          fcb       $12                 ;                   Command_12_PRINT_SECOND_NOUN_SHORT_NAME
L287F          fcb       $04                 ;                   Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2880          fcb       $1F,$50,$B8,$CB,$87,$6B,$BF,$5F,$BE,$A3,$15,$33 ;                     SINKS TO THE HILT IN THE SERPENT'S SCALY
L288C          fcb       $8E,$83,$7A,$5F,$BE,$57,$17,$1F,$B3,$B5,$9A,$D5 ;                     BODY!
L2898          fcb       $B5,$0E,$53,$44,$DB,$93,$9E,$21 ;                     .
L28A0          fcb       $1D,$11             ;                   Command_1D_ATTACK_OBJECT damage=11
L28A2          fcb       $CC                 ;               Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=CC
L28A3          fcb       $2E                 ;               IF_NOT_JUMP address=28D2
L28A4          fcb       $0D,$2C             ;                 Command_0D_EXECUTE_LIST_WHILE_PASS size=44
L28A6          fcb       $04                 ;                   Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L28A7          fcb       $03,$C7,$DE,$52     ;                     YOUR
L28AB          fcb       $12                 ;                   Command_12_PRINT_SECOND_NOUN_SHORT_NAME
L28AC          fcb       $04                 ;                   Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L28AD          fcb       $24,$6C,$BE,$85,$A1,$7B,$14,$29,$B8,$B4,$D0,$B8 ;                     THROWS A SHOWER OF SPARKS AS IT GLANCES OFF
L28B9          fcb       $16,$62,$17,$35,$49,$C3,$B5,$CB,$B5,$09,$BC,$50 ;                     THE WALL! 
L28C5          fcb       $8B,$B5,$53,$B8,$16,$96,$64,$DB,$72,$0E,$D0,$AB ;                     .
L28D1          fcb       $89                 ;                     .
L28D2          fcb       $FF                 ;               Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=FF
L28D3          fcb       $31                 ;               IF_NOT_JUMP address=2905
L28D4          fcb       $0D,$2F             ;                 Command_0D_EXECUTE_LIST_WHILE_PASS size=47
L28D6          fcb       $04                 ;                   Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L28D7          fcb       $2B,$5F,$BE,$57,$17,$1F,$B3,$B5,$9A,$CA,$B5,$86 ;                     THE SERPENT'S HEAD IS SEVERED FROM HIS BODY!
L28E3          fcb       $5F,$D5,$15,$57,$17,$74,$CA,$F3,$5F,$79,$68,$4A ;                     A MAGNIFICENT BLOW!
L28EF          fcb       $90,$4B,$7B,$F6,$4E,$EB,$DA,$4F,$45,$80,$47,$53 ;                     .
L28FB          fcb       $79,$B0,$53,$04,$BC,$89,$8D,$21 ;                     .
L2903          fcb       $1D,$FF             ;                   Command_1D_ATTACK_OBJECT damage=FF
L2905          fcb       $15                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=15 phrase="15: EAT *       u.......   *       "
L2906          fcb       $10                 ;         IF_NOT_JUMP address=2917
L2907          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2908          fcb       $0E,$76,$4D,$F4,$BD,$1B,$16,$F3,$8C,$73,$7B,$14 ;             BETTER KILL IT FIRST!
L2914          fcb       $67,$F1,$B9         ;             .
L2917          fcb       $08,$80,$C4         ;     08 TURN SCRIPT
L291A          fcb       $0D,$80,$C1         ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=193
L291D          fcb       $0E,$3E             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=62
L291F          fcb       $0D,$32             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=50
L2921          fcb       $14                 ;             Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L2922          fcb       $01,$1D             ;               Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=1D(USER)
L2924          fcb       $0B,$19             ;             Command_0B_SWITCH size=19
L2926          fcb       $0A,$04             ;               Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L2928          fcb       $04                 ;               IF_NOT_JUMP address=292D
L2929          fcb       $21,$04,$00,$00     ;                 Command_21_EXECUTE_PHRASE phrase="04: WEST *      *          *       " first=00(NONE)  second=00(NONE)
L292D          fcb       $03                 ;               Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L292E          fcb       $04                 ;               IF_NOT_JUMP address=2933
L292F          fcb       $21,$03,$00,$00     ;                 Command_21_EXECUTE_PHRASE phrase="03: EAST *      *          *       " first=00(NONE)  second=00(NONE)
L2933          fcb       $01                 ;               Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L2934          fcb       $04                 ;               IF_NOT_JUMP address=2939
L2935          fcb       $21,$01,$00,$00     ;                 Command_21_EXECUTE_PHRASE phrase="01: NORTH *     *          *       " first=00(NONE)  second=00(NONE)
L2939          fcb       $02                 ;               Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L293A          fcb       $04                 ;               IF_NOT_JUMP address=293F
L293B          fcb       $21,$02,$00,$00     ;                 Command_21_EXECUTE_PHRASE phrase="02: SOUTH *     *          *       " first=00(NONE)  second=00(NONE)
L293F          fcb       $1F                 ;             Command_1F_PRINT_MESSAGE
L2940          fcb       $12,$5F,$BE,$57,$17,$1F,$B3,$B3,$9A,$74,$A7,$27 ;               THE SERPENT PURSUES YOU AND
L294C          fcb       $BA,$DB,$B5,$1B,$A1,$8E,$48 ;               .
L2953          fcb       $1F                 ;           Command_1F_PRINT_MESSAGE
L2954          fcb       $08,$5F,$BE,$57,$17,$1F,$B3,$B3,$9A ;             THE SERPENT 
L295D          fcb       $0D,$7F             ;         Command_0D_EXECUTE_LIST_WHILE_PASS size=127
L295F          fcb       $01,$1D             ;           Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=1D(USER)
L2961          fcb       $1C,$1D             ;           Command_1C_SET_VAR_OBJECT object=1D (USER)
L2963          fcb       $0B,$79             ;           Command_0B_SWITCH size=79
L2965          fcb       $05,$33             ;             Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=33
L2967          fcb       $23                 ;             IF_NOT_JUMP address=298B
L2968          fcb       $0D,$21             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=33
L296A          fcb       $1F                 ;                 Command_1F_PRINT_MESSAGE
L296B          fcb       $1D,$0C,$BA,$17,$7A,$33,$BB,$7B,$A6,$40,$B9,$E1 ;                   STRIKES, POISON COURSES THROUGH YOUR VEINS!
L2977          fcb       $14,$3D,$C6,$4B,$62,$6C,$BE,$29,$A1,$1B,$71,$34 ;                   .
L2983          fcb       $A1,$CF,$17,$9D,$7A,$21 ;                   .
L2989          fcb       $1D,$14             ;                 Command_1D_ATTACK_OBJECT damage=14
L298B          fcb       $99                 ;             Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=99
L298C          fcb       $16                 ;             IF_NOT_JUMP address=29A3
L298D          fcb       $1F                 ;               Command_1F_PRINT_MESSAGE
L298E          fcb       $14,$0C,$BA,$17,$7A,$33,$BB,$C7,$DE,$09,$15,$37 ;                 STRIKES, YOU DODGE HIS LUNGE! 
L299A          fcb       $5A,$A3,$15,$CE,$B5,$91,$C5,$EB,$5D ;                 .
L29A3          fcb       $CC                 ;             Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=CC
L29A4          fcb       $21                 ;             IF_NOT_JUMP address=29C6
L29A5          fcb       $0D,$1F             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=31
L29A7          fcb       $1F                 ;                 Command_1F_PRINT_MESSAGE
L29A8          fcb       $1B,$3B,$55,$0B,$8E,$D2,$B0,$06,$79,$43,$DB,$07 ;                   COILS RAPIDLY AROUND YOU AND CONSTRICTS!
L29B4          fcb       $B3,$33,$98,$C7,$DE,$90,$14,$05,$58,$1D,$A0,$F3 ;                   .
L29C0          fcb       $BF,$0D,$56,$21     ;                   .
L29C4          fcb       $1D,$14             ;                 Command_1D_ATTACK_OBJECT damage=14
L29C6          fcb       $FF                 ;             Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=FF
L29C7          fcb       $16                 ;             IF_NOT_JUMP address=29DE
L29C8          fcb       $1F                 ;               Command_1F_PRINT_MESSAGE
L29C9          fcb       $14,$16,$6C,$F4,$72,$CB,$B5,$17,$C0,$03,$8C,$04 ;                 GATHERS ITSELF FOR AN ATTACK. 
L29D5          fcb       $68,$90,$14,$96,$14,$45,$BD,$5B,$89 ;                 .
L29DE          fcb       $0A,$15             ;     0A UPON DEATH SCRIPT
L29E0          fcb       $0D,$13             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=19
L29E2          fcb       $1F                 ;         Command_1F_PRINT_MESSAGE
L29E3          fcb       $0E,$5F,$BE,$57,$17,$1F,$B3,$B3,$9A,$4B,$7B,$E3 ;           THE SERPENT IS DEAD. 
L29EF          fcb       $59,$9B,$5D         ;           .
L29F2          fcb       $1E,$15,$16         ;         Command_1E_SWAP_OBJECTS objectA=15(LiveSerpent) objectB=16(DeadSerpent)
L29F5          fcb       $02                 ;     02 SHORT NAME
L29F6          fcb       $05,$B4,$B7,$F0,$A4,$54 ;       SERPENT
; Object_16 DeadSerpent
L29FC          fcb       $24,$40             ;   Number=24 size=0040
L29FE          fcb       $00,$00,$80         ;     room=00 scorePoints=00 bits=80 u.......
L2A01          fcb       $03                 ;     03 DESCRIPTION
L2A02          fcb       $1A,$4E,$45,$31,$49,$46,$5E,$86,$5F,$57,$17,$1F ;       A LARGE DEAD SERPENT LIES ON THE FLOOR.
L2A0E          fcb       $B3,$B3,$9A,$87,$8C,$D1,$B5,$96,$96,$DB,$72,$89 ;       .
L2A1A          fcb       $67,$C7,$A0         ;       .
L2A1D          fcb       $07,$15             ;     07 COMMAND HANDLING IF FIRST NOUN
L2A1F          fcb       $0D,$13             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=19
L2A21          fcb       $0A,$15             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=15 phrase="15: EAT *       u.......   *       "
L2A23          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2A24          fcb       $0F,$A8,$77,$4E,$5E,$E6,$A0,$7B,$16,$92,$14,$F6 ;           I'VE LOST MY APPETITE!
L2A30          fcb       $A4,$7F,$7B,$21     ;           .
L2A34          fcb       $02                 ;     02 SHORT NAME
L2A35          fcb       $08,$E3,$59,$15,$58,$3A,$62,$9E,$61 ;       DEAD SERPENT
; Object_17 Hands
L2A3E          fcb       $1F,$09             ;   Number=1F size=0009
L2A40          fcb       $FF,$00,$80         ;     room=FF scorePoints=00 bits=80 u.......
L2A43          fcb       $02                 ;     02 SHORT NAME
L2A44          fcb       $04,$50,$72,$0B,$5C ;       HANDS 
; Object_18 Coin
L2A49          fcb       $20,$34             ;   Number=20 size=0034
L2A4B          fcb       $9C,$05,$A4         ;     room=9C scorePoints=05 bits=A4 u.C..X..
L2A4E          fcb       $03                 ;     03 DESCRIPTION
L2A4F          fcb       $14,$5F,$BE,$5B,$B1,$4B,$7B,$45,$45,$50,$9F,$C0 ;       THERE IS A COIN ON THE GROUND.
L2A5B          fcb       $16,$82,$17,$49,$5E,$07,$B3,$57,$98 ;       .
L2A64          fcb       $07,$14             ;     07 COMMAND HANDLING IF FIRST NOUN
L2A66          fcb       $0D,$12             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=18
L2A68          fcb       $0A,$08             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=08 phrase="08: READ *      .....X..   *       "
L2A6A          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2A6B          fcb       $0E,$2C,$1D,$D5,$47,$F3,$5F,$5B,$4D,$C3,$B0,$1D ;           "PRAISED BE RAAKA-TU"
L2A77          fcb       $85,$5C,$C0         ;           .
L2A7A          fcb       $02                 ;     02 SHORT NAME
L2A7B          fcb       $03,$3B,$55,$4E     ;       COIN
; Object_19 TinySlot
L2A7F          fcb       $21,$7F             ;   Number=21 size=007F
L2A81          fcb       $88,$00,$80         ;     room=88 scorePoints=00 bits=80 u.......
L2A84          fcb       $03                 ;     03 DESCRIPTION
L2A85          fcb       $1D,$5F,$BE,$5B,$B1,$4B,$7B,$56,$45,$A3,$7A,$5E ;       THERE IS A TINY SLOT CUT IN THE NORTH WALL.
L2A91          fcb       $17,$F3,$A0,$36,$56,$D0,$15,$82,$17,$50,$5E,$BE ;       .
L2A9D          fcb       $A0,$19,$71,$46,$48,$2E ;       .
L2AA3          fcb       $02                 ;     02 SHORT NAME
L2AA4          fcb       $06,$90,$BE,$55,$DB,$86,$8D ;       TINY SLOT
L2AAB          fcb       $06,$53             ;     06 COMMAND HANDLING IF SECOND NOUN
L2AAD          fcb       $0D,$51             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=81
L2AAF          fcb       $0A,$0F             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=0F phrase="0F: DROP IN     u.......   u......."
L2AB1          fcb       $0E,$4D             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=77
L2AB3          fcb       $0D,$24             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=36
L2AB5          fcb       $14                 ;             Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L2AB6          fcb       $08,$18             ;               Command_08_COMPARE_OBJECT_TO_FIRST_NOUN object=18(Coin
L2AB8          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2AB9          fcb       $02,$5F,$BE         ;               THE
L2ABC          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L2ABD          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2ABE          fcb       $1A,$4B,$7B,$81,$BF,$B3,$14,$D6,$6A,$C8,$9C,$73 ;               IS TOO BIG TO FIT IN SUCH A TINY SLOT. 
L2ACA          fcb       $7B,$83,$7A,$25,$BA,$03,$71,$83,$17,$7B,$9B,$C9 ;               .
L2AD6          fcb       $B8,$9B,$C1         ;               .
L2AD9          fcb       $0D,$25             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=37
L2ADB          fcb       $17,$06,$00         ;             Command_17_MOVE_OBJECT_TO_LOCATION object=06(StatueEast) location=00
L2ADE          fcb       $17,$07,$88         ;             Command_17_MOVE_OBJECT_TO_LOCATION object=07(StatueWest) location=88
L2AE1          fcb       $17,$18,$00         ;             Command_17_MOVE_OBJECT_TO_LOCATION object=18(Coin) location=00
L2AE4          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2AE5          fcb       $1A,$5F,$BE,$66,$17,$8F,$49,$56,$5E,$38,$C6,$D6 ;               THE STATUE TURNS TO FACE THE WEST DOOR.
L2AF1          fcb       $B5,$C8,$9C,$D7,$46,$82,$17,$59,$5E,$66,$62,$09 ;               .
L2AFD          fcb       $15,$C7,$A0         ;               .
; Object_1A MessageUnderSlot
L2B00          fcb       $18,$53             ;   Number=18 size=0053
L2B02          fcb       $88,$00,$84         ;     room=88 scorePoints=00 bits=84 u....X..
L2B05          fcb       $03                 ;     03 DESCRIPTION
L2B06          fcb       $1C,$5F,$BE,$5B,$B1,$4B,$7B,$4F,$45,$65,$62,$77 ;       THERE IS A MESSAGE CARVED UNDER THE SLOT. 
L2B12          fcb       $47,$D3,$14,$0F,$B4,$17,$58,$3F,$98,$96,$AF,$DB ;       .
L2B1E          fcb       $72,$C9,$B8,$9B,$C1 ;       .
L2B23          fcb       $02                 ;     02 SHORT NAME
L2B24          fcb       $0A,$14,$53,$66,$CA,$67,$16,$D3,$B9,$9B,$6C ;       CARVED MESSAGE 
L2B2F          fcb       $07,$24             ;     07 COMMAND HANDLING IF FIRST NOUN
L2B31          fcb       $0D,$22             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=34
L2B33          fcb       $0A,$08             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=08 phrase="08: READ *      .....X..   *       "
L2B35          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2B36          fcb       $1E,$5F,$BE,$67,$16,$D3,$B9,$9B,$6C,$1B,$B7,$33 ;           THE MESSAGE SAYS, "SAFE PASSAGE FOR A
L2B42          fcb       $BB,$93,$1D,$5B,$66,$55,$A4,$09,$B7,$48,$5E,$A3 ;           PRICE."
L2B4E          fcb       $A0,$52,$45,$05,$B2,$DC,$63 ;           .
; Object_1B ClosedDoor
L2B55          fcb       $09,$3B             ;   Number=09 size=003B
L2B57          fcb       $90,$00,$80         ;     room=90 scorePoints=00 bits=80 u.......
L2B5A          fcb       $03                 ;     03 DESCRIPTION
L2B5B          fcb       $0D,$5F,$BE,$09,$15,$A3,$A0,$4B,$7B,$C9,$54,$A6 ;       THE DOOR IS CLOSED.
L2B67          fcb       $B7,$2E             ;       .
L2B69          fcb       $02                 ;     02 SHORT NAME
L2B6A          fcb       $03,$81,$5B,$52     ;       DOOR
L2B6E          fcb       $07,$22             ;     07 COMMAND HANDLING IF FIRST NOUN
L2B70          fcb       $0D,$20             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=32
L2B72          fcb       $0A,$11             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=11 phrase="11: OPEN *      u.......   *       "
L2B74          fcb       $17,$1B,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=1B(ClosedDoor) location=00
L2B77          fcb       $17,$1C,$90         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=1C(OpenDoor) location=90
L2B7A          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2B7B          fcb       $16,$7C,$B3,$6F,$B3,$27,$60,$2D,$60,$8B,$18,$5F ;           RRRRREEEEEEK - THE DOOR IS OPEN. 
L2B87          fcb       $BE,$09,$15,$A3,$A0,$4B,$7B,$5F,$A0,$1B,$9C ;           .
; Object_1C OpenDoor
L2B92          fcb       $09,$30             ;   Number=09 size=0030
L2B94          fcb       $00,$00,$80         ;     room=00 scorePoints=00 bits=80 u.......
L2B97          fcb       $03                 ;     03 DESCRIPTION
L2B98          fcb       $12,$5F,$BE,$09,$15,$A3,$A0,$4B,$7B,$FB,$B9,$43 ;       THE DOOR IS STANDING OPEN. 
L2BA4          fcb       $98,$AB,$98,$5F,$A0,$1B,$9C ;       .
L2BAB          fcb       $02                 ;     02 SHORT NAME
L2BAC          fcb       $03,$81,$5B,$52     ;       DOOR
L2BB0          fcb       $07,$12             ;     07 COMMAND HANDLING IF FIRST NOUN
L2BB2          fcb       $0D,$10             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=16
L2BB4          fcb       $0A,$11             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=11 phrase="11: OPEN *      u.......   *       "
L2BB6          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2BB7          fcb       $0C,$8D,$7B,$8E,$14,$63,$B1,$FB,$5C,$5F,$A0,$1B ;           ITS ALREADY OPEN. 
L2BC3          fcb       $9C                 ;           .
; Object_1D USER
L2BC4          fcb       $FF,$80,$87         ;   Number=FF size=0087
L2BC7          fcb       $96,$00,$80         ;     room=96 scorePoints=00 bits=80 u.......
L2BCA          fcb       $0A,$76             ;     0A UPON DEATH SCRIPT
L2BCC          fcb       $0E,$74             ;       Command_0E_EXECUTE_LIST_WHILE_FAIL size=116
L2BCE          fcb       $0B,$07             ;         Command_0B_SWITCH size=07
L2BD0          fcb       $20,$1D             ;           Command_20_CHECK_ACTIVE_OBJECT object=1D(USER)
L2BD2          fcb       $01                 ;           IF_NOT_JUMP address=2BD4
L2BD3          fcb       $81                 ;             CommonCommand_81
L2BD4          fcb       $23                 ;           Command_20_CHECK_ACTIVE_OBJECT object=23(Guards)
L2BD5          fcb       $01                 ;           IF_NOT_JUMP address=2BD7
L2BD6          fcb       $81                 ;             CommonCommand_81
L2BD7          fcb       $0D,$69             ;         Command_0D_EXECUTE_LIST_WHILE_PASS size=105
L2BD9          fcb       $1F                 ;           Command_1F_PRINT_MESSAGE
L2BDA          fcb       $66,$C7,$DE,$DB,$16,$CB,$B9,$36,$A1,$59,$F4,$F0 ;             YOU PASS OUT. WHEN YOU AWAKEN, YOU FIND
L2BE6          fcb       $72,$51,$18,$43,$C2,$0D,$D0,$A6,$61,$51,$18,$48 ;             YOURSELF CHAINED TO A BLOOD STAINED ALTAR. A
L2BF2          fcb       $C2,$8E,$7A,$51,$18,$3D,$C6,$40,$61,$DA,$14,$D0 ;             PRIEST IS KNEELING OVER YOU WITH A KNIFE. IT
L2BFE          fcb       $47,$F3,$5F,$6B,$BF,$44,$45,$81,$8D,$15,$58,$4B ;             LOOKS LIKE THIS IS IT. 
L2C0A          fcb       $BD,$66,$98,$8E,$14,$54,$BD,$43,$F4,$EC,$16,$35 ;             .
L2C16          fcb       $79,$0B,$BC,$CD,$B5,$67,$98,$90,$8C,$D1,$6A,$74 ;             .
L2C22          fcb       $CA,$51,$18,$59,$C2,$82,$7B,$7B,$14,$13,$87,$7F ;             .
L2C2E          fcb       $66,$D6,$15,$49,$16,$A5,$9F,$43,$16,$9B,$85,$63 ;             .
L2C3A          fcb       $BE,$CB,$B5,$CB,$B5,$9B,$C1 ;             .
L2C41          fcb       $81                 ;           CommonCommand_81
L2C42          fcb       $08,$06             ;     08 TURN SCRIPT
L2C44          fcb       $0D,$04             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=4
L2C46          fcb       $1C,$1D             ;         Command_1C_SET_VAR_OBJECT object=1D (USER)
L2C48          fcb       $23,$05             ;         Command_23_HEAL_VAR_OBJECT value=05
L2C4A          fcb       $09,$02,$46,$46     ;     09 HIT POINTS maxHitPoints=46 currentHitPoints=46
; Object_1E LiveGargoyle
L2C4E          fcb       $0F,$81,$B4         ;   Number=0F size=01B4
L2C51          fcb       $00,$00,$90         ;     room=00 scorePoints=00 bits=90 u..P....
L2C54          fcb       $03                 ;     03 DESCRIPTION
L2C55          fcb       $25,$5F,$BE,$5B,$B1,$4B,$7B,$4A,$45,$FF,$78,$35 ;       THERE IS A HIDEOUS GARGOYLE BLOCKING THE
L2C61          fcb       $A1,$73,$15,$C1,$B1,$3F,$DE,$B6,$14,$5D,$9E,$91 ;       NORTH PASSAGE.
L2C6D          fcb       $7A,$82,$17,$50,$5E,$BE,$A0,$12,$71,$65,$49,$77 ;       .
L2C79          fcb       $47,$2E             ;       .
L2C7B          fcb       $02                 ;     02 SHORT NAME
L2C7C          fcb       $06,$14,$6C,$4B,$6E,$DB,$8B ;       GARGOYLE 
L2C83          fcb       $09,$02,$FF,$FF     ;     09 HIT POINTS maxHitPoints=FF currentHitPoints=FF
L2C87          fcb       $07,$22             ;     07 COMMAND HANDLING IF FIRST NOUN
L2C89          fcb       $0D,$20             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=32
L2C8B          fcb       $0A,$15             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=15 phrase="15: EAT *       u.......   *       "
L2C8D          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2C8E          fcb       $1C,$DD,$72,$F3,$8C,$96,$5F,$51,$18,$4E,$C2,$11 ;           HE'LL EAT YOU LONG BEFORE YOU'LL EAT HIM! 
L2C9A          fcb       $A0,$AF,$14,$04,$68,$5B,$5E,$1D,$A1,$F3,$8C,$96 ;           .
L2CA6          fcb       $5F,$A3,$15,$EB,$8F ;           .
L2CAB          fcb       $08,$81,$29         ;     08 TURN SCRIPT
L2CAE          fcb       $0D,$81,$26         ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=294
L2CB1          fcb       $01,$1D             ;         Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=1D(USER)
L2CB3          fcb       $1C,$1D             ;         Command_1C_SET_VAR_OBJECT object=1D (USER)
L2CB5          fcb       $14                 ;         Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L2CB6          fcb       $01,$12             ;           Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=12(LitCandle)
L2CB8          fcb       $0B,$81,$1C         ;         Command_0B_SWITCH size=11C
L2CBB          fcb       $05,$19             ;           Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=19
L2CBD          fcb       $2E                 ;           IF_NOT_JUMP address=2CEC
L2CBE          fcb       $0D,$2C             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=44
L2CC0          fcb       $1F                 ;               Command_1F_PRINT_MESSAGE
L2CC1          fcb       $28,$5F,$BE,$73,$15,$C1,$B1,$3F,$DE,$81,$15,$75 ;                 THE GARGOYLE GORES YOU WITH HIS HORN AND
L2CCD          fcb       $B1,$51,$18,$59,$C2,$82,$7B,$A3,$15,$CA,$B5,$B8 ;                 RIPS YOUR GUTS OUT!
L2CD9          fcb       $A0,$90,$14,$14,$58,$ED,$7A,$51,$18,$23,$C6,$36 ;                 .
L2CE5          fcb       $6F,$D1,$B5,$71,$C6 ;                 .
L2CEA          fcb       $1D,$FF             ;               Command_1D_ATTACK_OBJECT damage=FF
L2CEC          fcb       $3F                 ;           Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=3F
L2CED          fcb       $21                 ;           IF_NOT_JUMP address=2D0F
L2CEE          fcb       $0D,$1F             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=31
L2CF0          fcb       $1F                 ;               Command_1F_PRINT_MESSAGE
L2CF1          fcb       $1B,$5F,$BE,$73,$15,$C1,$B1,$3F,$DE,$DE,$14,$05 ;                 THE GARGOYLE CLAWS YOU ACROSS THE CHEST!
L2CFD          fcb       $4A,$51,$18,$43,$C2,$B9,$55,$CB,$B9,$5F,$BE,$DA ;                 .
L2D09          fcb       $14,$66,$62,$21     ;                 .
L2D0D          fcb       $1D,$32             ;               Command_1D_ATTACK_OBJECT damage=32
L2D0F          fcb       $64                 ;           Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=64
L2D10          fcb       $2E                 ;           IF_NOT_JUMP address=2D3F
L2D11          fcb       $0D,$2C             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=44
L2D13          fcb       $1F                 ;               Command_1F_PRINT_MESSAGE
L2D14          fcb       $28,$C7,$DE,$4F,$15,$33,$61,$5F,$BE,$80,$15,$5A ;                 YOU FEEL THE GNASHING OF THE GARGOYLE'S
L2D20          fcb       $49,$91,$7A,$B8,$16,$82,$17,$49,$5E,$31,$49,$CE ;                 TEETH IN YOUR SIDE! 
L2D2C          fcb       $A1,$A5,$5E,$7F,$17,$82,$62,$D0,$15,$51,$18,$23 ;                 .
L2D38          fcb       $C6,$46,$B8,$EB,$5D ;                 .
L2D3D          fcb       $1D,$32             ;               Command_1D_ATTACK_OBJECT damage=32
L2D3F          fcb       $A3                 ;           Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=A3
L2D40          fcb       $3C                 ;           IF_NOT_JUMP address=2D7D
L2D41          fcb       $0D,$3A             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=58
L2D43          fcb       $1F                 ;               Command_1F_PRINT_MESSAGE
L2D44          fcb       $36,$5F,$BE,$DE,$14,$05,$4A,$B8,$16,$82,$17,$49 ;                 THE CLAWS OF THE GARGOYLE RIP THROUGH YOUR
L2D50          fcb       $5E,$31,$49,$CE,$A1,$54,$5E,$D3,$7A,$6C,$BE,$29 ;                 ARM IN AN ATTEMPT TO REACH YOUR BODY! 
L2D5C          fcb       $A1,$1B,$71,$34,$A1,$94,$14,$4B,$90,$83,$96,$83 ;                 .
L2D68          fcb       $96,$3F,$C0,$EE,$93,$89,$17,$2F,$17,$DA,$46,$51 ;                 .
L2D74          fcb       $18,$23,$C6,$F6,$4E,$EB,$DA ;                 .
L2D7B          fcb       $1D,$19             ;               Command_1D_ATTACK_OBJECT damage=19
L2D7D          fcb       $E1                 ;           Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=E1
L2D7E          fcb       $3E                 ;           IF_NOT_JUMP address=2DBD
L2D7F          fcb       $0D,$3C             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=60
L2D81          fcb       $1F                 ;               Command_1F_PRINT_MESSAGE
L2D82          fcb       $38,$5F,$BE,$73,$15,$C1,$B1,$3F,$DE,$4F,$16,$B7 ;                 THE GARGOYLE LUNGES AT YOUR FACE BUT YOU
L2D8E          fcb       $98,$C3,$B5,$1B,$BC,$34,$A1,$4B,$15,$9B,$53,$F6 ;                 PULL BACK.  HE BITES YOUR SHOULDER INSTEAD!
L2D9A          fcb       $4F,$51,$18,$52,$C2,$46,$C5,$AB,$14,$AF,$54,$4A ;                 .
L2DA6          fcb       $13,$44,$5E,$7F,$7B,$DB,$B5,$34,$A1,$5A,$17,$2E ;                 .
L2DB2          fcb       $A1,$F4,$59,$D0,$15,$FF,$B9,$F1,$46 ;                 .
L2DBB          fcb       $1D,$19             ;               Command_1D_ATTACK_OBJECT damage=19
L2DBD          fcb       $FF                 ;           Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=FF
L2DBE          fcb       $18                 ;           IF_NOT_JUMP address=2DD7
L2DBF          fcb       $0D,$16             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=22
L2DC1          fcb       $1F                 ;               Command_1F_PRINT_MESSAGE
L2DC2          fcb       $14,$C7,$DE,$09,$15,$37,$5A,$82,$17,$49,$5E,$31 ;                 YOU DODGE THE GARGOYLE'S HORN.
L2DCE          fcb       $49,$CE,$A1,$A5,$5E,$A9,$15,$E7,$B2 ;                 .
L2DD7          fcb       $0A,$2C             ;     0A UPON DEATH SCRIPT
L2DD9          fcb       $0D,$2A             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=42
L2DDB          fcb       $1F                 ;         Command_1F_PRINT_MESSAGE
L2DDC          fcb       $22,$5F,$BE,$73,$15,$C1,$B1,$3F,$DE,$7B,$17,$B5 ;           THE GARGOYLE TAKES A FINAL BREATH AND THEN
L2DE8          fcb       $85,$7B,$14,$10,$67,$33,$48,$6F,$4F,$82,$49,$90 ;           EXPIRES.
L2DF4          fcb       $14,$16,$58,$F0,$72,$3A,$15,$94,$A5,$6F,$62 ;           .
L2DFF          fcb       $17,$1E,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=1E(LiveGargoyle) location=00
L2E02          fcb       $17,$1F,$8E         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=1F(DeadGargoyle) location=8E
; Object_1F DeadGargoyle
L2E05          fcb       $0F,$53             ;   Number=0F size=0053
L2E07          fcb       $00,$00,$80         ;     room=00 scorePoints=00 bits=80 u.......
L2E0A          fcb       $03                 ;     03 DESCRIPTION
L2E0B          fcb       $24,$5F,$BE,$5B,$B1,$4B,$7B,$5F,$BE,$FF,$14,$F3 ;       THERE IS THE DEAD CARCASS OF AN UGLY
L2E17          fcb       $46,$14,$53,$15,$53,$D1,$B5,$83,$64,$97,$96,$D3 ;       GARGOYLE NEARBY. 
L2E23          fcb       $6D,$73,$15,$C1,$B1,$3F,$DE,$8F,$16,$2C,$49,$DB ;       .
L2E2F          fcb       $E0                 ;       .
L2E30          fcb       $07,$1D             ;     07 COMMAND HANDLING IF FIRST NOUN
L2E32          fcb       $0D,$1B             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=27
L2E34          fcb       $0A,$15             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=15 phrase="15: EAT *       u.......   *       "
L2E36          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2E37          fcb       $17,$7A,$C4,$CB,$06,$82,$17,$95,$7A,$BD,$15,$49 ;           UGH! I THINK I'M GOING TO BE SICK!
L2E43          fcb       $90,$50,$9F,$D6,$6A,$C4,$9C,$55,$5E,$DD,$78,$21 ;           .
L2E4F          fcb       $02                 ;     02 SHORT NAME
L2E50          fcb       $09,$E3,$59,$09,$58,$31,$49,$CE,$A1,$45 ;       DEAD GARGOYLE
; Object_20 Wall
L2E5A          fcb       $25,$32             ;   Number=25 size=0032
L2E5C          fcb       $FF,$00,$80         ;     room=FF scorePoints=00 bits=80 u.......
L2E5F          fcb       $07,$28             ;     07 COMMAND HANDLING IF FIRST NOUN
L2E61          fcb       $0B,$26             ;       Command_0B_SWITCH size=26
L2E63          fcb       $0A,$17             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=17 phrase="17: CLIMB *     u.......   *       "
L2E65          fcb       $20                 ;         IF_NOT_JUMP address=2E86
L2E66          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L2E67          fcb       $1E,$C7,$DE,$D3,$14,$90,$96,$F3,$A0,$C3,$54,$A3 ;             YOU CAN NOT CLIMB THE WALL, IT IS TOO
L2E73          fcb       $91,$5F,$BE,$F3,$17,$16,$8D,$D6,$15,$D5,$15,$89 ;             SMOOTH.
L2E7F          fcb       $17,$D5,$9C,$C1,$93,$77,$BE ;             .
L2E86          fcb       $34                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=34 phrase="34: JUMP OVER   *          u......."
L2E87          fcb       $01                 ;         IF_NOT_JUMP address=2E89
L2E88          fcb       $89                 ;           CommonCommand_89
L2E89          fcb       $02                 ;     02 SHORT NAME
L2E8A          fcb       $03,$0E,$D0,$4C     ;       WALL
; Object_21 Vines
L2E8E          fcb       $26,$29             ;   Number=26 size=0029
L2E90          fcb       $9D,$00,$80         ;     room=9D scorePoints=00 bits=80 u.......
L2E93          fcb       $03                 ;     03 DESCRIPTION
L2E94          fcb       $1E,$4E,$45,$31,$49,$50,$5E,$91,$62,$B5,$A0,$B8 ;       A LARGE NETWORK OF VINES CLINGS TO THE WALL.
L2EA0          fcb       $16,$D3,$17,$75,$98,$DE,$14,$91,$7A,$D6,$B5,$D6 ;       
L2EAC          fcb       $9C,$DB,$72,$0E,$D0,$9B,$8F ;       .
L2EB3          fcb       $02                 ;     02 SHORT NAME
L2EB4          fcb       $04,$10,$CB,$4B,$62 ;       VINES 
; Object_22 GoldenChopstick
L2EB9          fcb       $1E,$28             ;   Number=1E size=0028
L2EBB          fcb       $8F,$05,$A0         ;     room=8F scorePoints=05 bits=A0 u.C.....
L2EBE          fcb       $03                 ;     03 DESCRIPTION
L2EBF          fcb       $16,$5F,$BE,$5B,$B1,$4B,$7B,$49,$45,$BE,$9F,$83 ;       THERE IS A GOLDEN CHOPSTICK HERE.
L2ECB          fcb       $61,$29,$54,$26,$A7,$DD,$78,$9F,$15,$7F,$B1 ;       .
L2ED6          fcb       $02                 ;     02 SHORT NAME
L2ED7          fcb       $0B,$3E,$6E,$F0,$59,$DA,$14,$6D,$A0,$85,$BE,$4B ;       GOLDEN CHOPSTICK
; Object_23 Guards
L2EE3          fcb       $28,$80,$CA         ;   Number=28 size=00CA
L2EE6          fcb       $9C,$00,$90         ;     room=9C scorePoints=00 bits=90 u..P....
L2EE9          fcb       $03                 ;     03 DESCRIPTION
L2EEA          fcb       $27,$B8,$B7,$2B,$62,$09,$8A,$94,$C3,$0B,$5C,$14 ;       SEVERAL GUARDS CARRYING LETHAL CROSSBOWS
L2EF6          fcb       $53,$8B,$B4,$AB,$98,$F6,$8B,$4E,$72,$E4,$14,$E5 ;       TURN TO FACE YOU.
L2F02          fcb       $A0,$09,$4F,$D6,$B5,$38,$C6,$89,$17,$4B,$15,$9B ;       .
L2F0E          fcb       $53,$C7,$DE,$2E     ;       .
L2F12          fcb       $08,$80,$95         ;     08 TURN SCRIPT
L2F15          fcb       $0E,$80,$92         ;       Command_0E_EXECUTE_LIST_WHILE_FAIL size=146
L2F18          fcb       $0D,$2F             ;         Command_0D_EXECUTE_LIST_WHILE_PASS size=47
L2F1A          fcb       $14                 ;           Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L2F1B          fcb       $01,$1D             ;             Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=1D(USER)
L2F1D          fcb       $0B,$29             ;           Command_0B_SWITCH size=29
L2F1F          fcb       $03,$9C,$23         ;             Command_03_IS_OBJECT_AT_LOCATION object=23(Guards) location=9C
L2F22          fcb       $07                 ;             IF_NOT_JUMP address=2F2A
L2F23          fcb       $0D,$05             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=5
L2F25          fcb       $00,$9D             ;                 Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9D
L2F27          fcb       $01,$1D             ;                 Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=1D(USER)
L2F29          fcb       $86                 ;                 CommonCommand_86
L2F2A          fcb       $9F,$23             ;             Command_03_IS_OBJECT_AT_LOCATION object=23(Guards) location=9F
L2F2C          fcb       $07                 ;             IF_NOT_JUMP address=2F34
L2F2D          fcb       $0D,$05             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=5
L2F2F          fcb       $00,$9C             ;                 Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9C
L2F31          fcb       $01,$1D             ;                 Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=1D(USER)
L2F33          fcb       $86                 ;                 CommonCommand_86
L2F34          fcb       $9E,$23             ;             Command_03_IS_OBJECT_AT_LOCATION object=23(Guards) location=9E
L2F36          fcb       $07                 ;             IF_NOT_JUMP address=2F3E
L2F37          fcb       $0D,$05             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=5
L2F39          fcb       $00,$9F             ;                 Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9F
L2F3B          fcb       $01,$1D             ;                 Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=1D(USER)
L2F3D          fcb       $86                 ;                 CommonCommand_86
L2F3E          fcb       $9D,$23             ;             Command_03_IS_OBJECT_AT_LOCATION object=23(Guards) location=9D
L2F40          fcb       $07                 ;             IF_NOT_JUMP address=2F48
L2F41          fcb       $0D,$05             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=5
L2F43          fcb       $00,$9E             ;                 Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9E
L2F45          fcb       $01,$1D             ;                 Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=1D(USER)
L2F47          fcb       $86                 ;                 CommonCommand_86
L2F48          fcb       $0C                 ;           Command_0C_FAIL
L2F49          fcb       $0D,$5F             ;         Command_0D_EXECUTE_LIST_WHILE_PASS size=95
L2F4B          fcb       $01,$1D             ;           Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=1D(USER)
L2F4D          fcb       $1C,$1D             ;           Command_1C_SET_VAR_OBJECT object=1D (USER)
L2F4F          fcb       $1F                 ;           Command_1F_PRINT_MESSAGE
L2F50          fcb       $58,$A6,$1D,$51,$A0,$D0,$15,$06,$67,$33,$61,$79 ;             "STOP! INFIDEL DOG!", THE GUARDS LEVEL THEIR
L2F5C          fcb       $5B,$06,$07,$82,$17,$49,$5E,$94,$C3,$0B,$5C,$F8 ;             CROSSBOWS AND LOOSE THEIR BOLTS! YOUR BODY
L2F68          fcb       $8B,$33,$61,$5F,$BE,$23,$7B,$B9,$55,$D4,$B9,$85 ;             FALLS TO THE GROUND RIDDLED WITH THE SHAFTS!
L2F74          fcb       $A1,$90,$14,$0E,$58,$45,$A0,$56,$5E,$EB,$72,$84 ;             .
L2F80          fcb       $AF,$CE,$9F,$6B,$B5,$C7,$DE,$84,$AF,$93,$9E,$4B ;             .
L2F8C          fcb       $15,$0D,$8D,$89,$17,$82,$17,$49,$5E,$07,$B3,$33 ;             .
L2F98          fcb       $98,$06,$B2,$FF,$5A,$19,$58,$82,$7B,$82,$17,$55 ;             .
L2FA4          fcb       $5E,$48,$72,$09,$C0 ;             .
L2FA9          fcb       $81                 ;           CommonCommand_81
L2FAA          fcb       $02                 ;     02 SHORT NAME
L2FAB          fcb       $04,$23,$6F,$4D,$B1 ;       GUARDS
; Object_24 Object24
L2FB0          fcb       $29,$4C             ;   Number=29 size=004C
L2FB2          fcb       $1D,$00,$00         ;     room=1D scorePoints=00 bits=00 *       
L2FB5          fcb       $08,$47             ;     08 TURN SCRIPT
L2FB7          fcb       $0B,$45             ;       Command_0B_SWITCH size=45
L2FB9          fcb       $03,$9C,$23         ;         Command_03_IS_OBJECT_AT_LOCATION object=23(Guards) location=9C
L2FBC          fcb       $0E                 ;         IF_NOT_JUMP address=2FCB
L2FBD          fcb       $0E,$0C             ;           Command_0E_EXECUTE_LIST_WHILE_FAIL size=12
L2FBF          fcb       $0D,$04             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=4
L2FC1          fcb       $03,$9A,$1D         ;               Command_03_IS_OBJECT_AT_LOCATION object=1D(USER) location=9A
L2FC4          fcb       $85                 ;               CommonCommand_85
L2FC5          fcb       $0D,$04             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=4
L2FC7          fcb       $03,$99,$1D         ;               Command_03_IS_OBJECT_AT_LOCATION object=1D(USER) location=99
L2FCA          fcb       $87                 ;               CommonCommand_87
L2FCB          fcb       $9F,$23             ;         Command_03_IS_OBJECT_AT_LOCATION object=23(Guards) location=9F
L2FCD          fcb       $0E                 ;         IF_NOT_JUMP address=2FDC
L2FCE          fcb       $0E,$0C             ;           Command_0E_EXECUTE_LIST_WHILE_FAIL size=12
L2FD0          fcb       $0D,$04             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=4
L2FD2          fcb       $03,$99,$1D         ;               Command_03_IS_OBJECT_AT_LOCATION object=1D(USER) location=99
L2FD5          fcb       $85                 ;               CommonCommand_85
L2FD6          fcb       $0D,$04             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=4
L2FD8          fcb       $03,$98,$1D         ;               Command_03_IS_OBJECT_AT_LOCATION object=1D(USER) location=98
L2FDB          fcb       $87                 ;               CommonCommand_87
L2FDC          fcb       $9E,$23             ;         Command_03_IS_OBJECT_AT_LOCATION object=23(Guards) location=9E
L2FDE          fcb       $0E                 ;         IF_NOT_JUMP address=2FED
L2FDF          fcb       $0E,$0C             ;           Command_0E_EXECUTE_LIST_WHILE_FAIL size=12
L2FE1          fcb       $0D,$04             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=4
L2FE3          fcb       $03,$98,$1D         ;               Command_03_IS_OBJECT_AT_LOCATION object=1D(USER) location=98
L2FE6          fcb       $85                 ;               CommonCommand_85
L2FE7          fcb       $0D,$04             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=4
L2FE9          fcb       $03,$9B,$1D         ;               Command_03_IS_OBJECT_AT_LOCATION object=1D(USER) location=9B
L2FEC          fcb       $87                 ;               CommonCommand_87
L2FED          fcb       $9D,$23             ;         Command_03_IS_OBJECT_AT_LOCATION object=23(Guards) location=9D
L2FEF          fcb       $0E                 ;         IF_NOT_JUMP address=2FFE
L2FF0          fcb       $0E,$0C             ;           Command_0E_EXECUTE_LIST_WHILE_FAIL size=12
L2FF2          fcb       $0D,$04             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=4
L2FF4          fcb       $03,$9B,$1D         ;               Command_03_IS_OBJECT_AT_LOCATION object=1D(USER) location=9B
L2FF7          fcb       $85                 ;               CommonCommand_85
L2FF8          fcb       $0D,$04             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=4
L2FFA          fcb       $03,$9A,$1D         ;               Command_03_IS_OBJECT_AT_LOCATION object=1D(USER) location=9A
L2FFD          fcb       $87                 ;               CommonCommand_87
; Object_25 GemA
L2FFE          fcb       $13,$30             ;   Number=13 size=0030
L3000          fcb       $9C,$00,$A0         ;     room=9C scorePoints=00 bits=A0 u.C.....
L3003          fcb       $02                 ;     02 SHORT NAME
L3004          fcb       $08,$EF,$A6,$51,$54,$4B,$C6,$AF,$6C ;       PRECIOUS GEM
L300D          fcb       $08,$21             ;     08 TURN SCRIPT
L300F          fcb       $0D,$1F             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=31
L3011          fcb       $03,$9C,$25         ;         Command_03_IS_OBJECT_AT_LOCATION object=25(GemA) location=9C
L3014          fcb       $0B,$1A             ;         Command_0B_SWITCH size=1A
L3016          fcb       $05,$33             ;           Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=33
L3018          fcb       $03                 ;           IF_NOT_JUMP address=301C
L3019          fcb       $17,$25,$89         ;             Command_17_MOVE_OBJECT_TO_LOCATION object=25(GemA) location=89
L301C          fcb       $66                 ;           Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=66
L301D          fcb       $03                 ;           IF_NOT_JUMP address=3021
L301E          fcb       $17,$25,$94         ;             Command_17_MOVE_OBJECT_TO_LOCATION object=25(GemA) location=94
L3021          fcb       $99                 ;           Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=99
L3022          fcb       $03                 ;           IF_NOT_JUMP address=3026
L3023          fcb       $17,$25,$86         ;             Command_17_MOVE_OBJECT_TO_LOCATION object=25(GemA) location=86
L3026          fcb       $CC                 ;           Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=CC
L3027          fcb       $03                 ;           IF_NOT_JUMP address=302B
L3028          fcb       $17,$25,$8E         ;             Command_17_MOVE_OBJECT_TO_LOCATION object=25(GemA) location=8E
L302B          fcb       $FF                 ;           Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=FF
L302C          fcb       $03                 ;           IF_NOT_JUMP address=3030
L302D          fcb       $17,$25,$83         ;             Command_17_MOVE_OBJECT_TO_LOCATION object=25(GemA) location=83
; Object_26 GemB
L3030          fcb       $13,$23             ;   Number=13 size=0023
L3032          fcb       $00,$05,$A0         ;     room=00 scorePoints=05 bits=A0 u.C.....
L3035          fcb       $02                 ;     02 SHORT NAME
L3036          fcb       $08,$EF,$A6,$51,$54,$4B,$C6,$AF,$6C ;       PRECIOUS GEM
L303F          fcb       $03                 ;     03 DESCRIPTION
L3040          fcb       $14,$5F,$BE,$5B,$B1,$4B,$7B,$52,$45,$65,$B1,$C7 ;       THERE IS A PRECIOUS GEM HERE. 
L304C          fcb       $7A,$C9,$B5,$5B,$61,$F4,$72,$DB,$63 ;       .
; Object_27 HiddenGem
L3055          fcb       $2A,$32             ;   Number=2A size=0032
L3057          fcb       $FF,$00,$00         ;     room=FF scorePoints=00 bits=00 *       
L305A          fcb       $02                 ;     02 SHORT NAME
L305B          fcb       $03,$01,$B3,$4D     ;       ROOM
L305F          fcb       $07,$28             ;     07 COMMAND HANDLING IF FIRST NOUN
L3061          fcb       $0D,$26             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=38
L3063          fcb       $0A,$0B             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=0B phrase="0B: LOOK AT     *          u......."
L3065          fcb       $01,$25             ;         Command_01_IS_OBJECT_IN_PACK_OR_ROOM object=25(GemA)
L3067          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3068          fcb       $20,$C7,$DE,$03,$15,$61,$B7,$74,$CA,$7B,$14,$EF ;           YOU DISCOVER A PRECIOUS GEM HIDDEN IN A
L3074          fcb       $A6,$51,$54,$4B,$C6,$AF,$6C,$A3,$15,$BF,$59,$8B ;           CREVICE.
L3080          fcb       $96,$83,$96,$E4,$14,$D3,$62,$BF,$53 ;           .
; Object_28 UnlitLamp
L3089          fcb       $1B,$62             ;   Number=1B size=0062
L308B          fcb       $00,$00,$AC         ;     room=00 scorePoints=00 bits=AC u.C.AX..
L308E          fcb       $02                 ;     02 SHORT NAME
L308F          fcb       $03,$4F,$8B,$50     ;       LAMP
L3093          fcb       $03                 ;     03 DESCRIPTION
L3094          fcb       $0E,$5F,$BE,$5B,$B1,$4B,$7B,$4E,$45,$72,$48,$9F ;       THERE IS A LAMP HERE.
L30A0          fcb       $15,$7F,$B1         ;       .
L30A3          fcb       $07,$48             ;     07 COMMAND HANDLING IF FIRST NOUN
L30A5          fcb       $0B,$46             ;       Command_0B_SWITCH size=46
L30A7          fcb       $0A,$14             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=14 phrase="14: LIGHT WITH  u...A...   u...A..."
L30A9          fcb       $1C                 ;         IF_NOT_JUMP address=30C6
L30AA          fcb       $0E,$1A             ;           Command_0E_EXECUTE_LIST_WHILE_FAIL size=26
L30AC          fcb       $0D,$17             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=23
L30AE          fcb       $09,$12             ;               Command_09_COMPARE_OBJECT_TO_SECOND_NOUN object=12(LitCandle
L30B0          fcb       $1E,$28,$14         ;               Command_1E_SWAP_OBJECTS objectA=28(UnlitLamp) objectB=14(LitLamp)
L30B3          fcb       $04                 ;               Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L30B4          fcb       $10,$5F,$BE,$3B,$16,$D3,$93,$4B,$7B,$09,$9A,$BF ;                 THE LAMP IS NOW BURNING.
L30C0          fcb       $14,$D3,$B2,$CF,$98 ;                 .
L30C5          fcb       $88                 ;             CommonCommand_88
L30C6          fcb       $18                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=18 phrase="18: RUB *       u.......   *       "
L30C7          fcb       $19                 ;         IF_NOT_JUMP address=30E1
L30C8          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L30C9          fcb       $17,$29,$D1,$09,$15,$51,$18,$56,$C2,$90,$73,$DB ;             WHO DO YOU THINK YOU ARE, ALADDIN?
L30D5          fcb       $83,$1B,$A1,$2F,$49,$03,$EE,$46,$8B,$90,$5A,$3F ;             .
L30E1          fcb       $08                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=08 phrase="08: READ *      .....X..   *       "
L30E2          fcb       $0A                 ;         IF_NOT_JUMP address=30ED
L30E3          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L30E4          fcb       $08,$49,$1B,$99,$16,$14,$BC,$A4,$C3 ;             "DO NOT RUB"
; Object_29 Floor
L30ED          fcb       $2B,$09             ;   Number=2B size=0009
L30EF          fcb       $00,$00,$80         ;     room=00 scorePoints=00 bits=80 u.......
L30F2          fcb       $02                 ;     02 SHORT NAME
L30F3          fcb       $04,$89,$67,$A3,$A0 ;       FLOOR 
; Object_2A Exit
L30F8          fcb       $2C,$0B             ;   Number=2C size=000B
L30FA          fcb       $00,$00,$80         ;     room=00 scorePoints=00 bits=80 u.......
L30FD          fcb       $07,$01             ;     07 COMMAND HANDLING IF FIRST NOUN
L30FF          fcb       $93                 ;       CommonCommand_93
L3100          fcb       $02                 ;     02 SHORT NAME
L3101          fcb       $03,$23,$63,$54     ;       EXIT
; Object_2B Passage
L3105          fcb       $2D,$0D             ;   Number=2D size=000D
L3107          fcb       $00,$00,$80         ;     room=00 scorePoints=00 bits=80 u.......
L310A          fcb       $07,$01             ;     07 COMMAND HANDLING IF FIRST NOUN
L310C          fcb       $93                 ;       CommonCommand_93
L310D          fcb       $02                 ;     02 SHORT NAME
L310E          fcb       $05,$55,$A4,$09,$B7,$45 ;       PASSAGE
; Object_2C Hole
L3114          fcb       $2E,$0B             ;   Number=2E size=000B
L3116          fcb       $00,$00,$80         ;     room=00 scorePoints=00 bits=80 u.......
L3119          fcb       $07,$01             ;     07 COMMAND HANDLING IF FIRST NOUN
L311B          fcb       $93                 ;       CommonCommand_93
L311C          fcb       $02                 ;     02 SHORT NAME
L311D          fcb       $03,$7E,$74,$45     ;       HOLE
; Object_2D Corridor
L3121          fcb       $2F,$0E             ;   Number=2F size=000E
L3123          fcb       $00,$00,$80         ;     room=00 scorePoints=00 bits=80 u.......
L3126          fcb       $07,$01             ;     07 COMMAND HANDLING IF FIRST NOUN
L3128          fcb       $93                 ;       CommonCommand_93
L3129          fcb       $02                 ;     02 SHORT NAME
L312A          fcb       $06,$44,$55,$06,$B2,$A3,$A0 ;       CORRIDOR 
; Object_2E Corner
L3131          fcb       $30,$09             ;   Number=30 size=0009
L3133          fcb       $00,$00,$80         ;     room=00 scorePoints=00 bits=80 u.......
L3136          fcb       $02                 ;     02 SHORT NAME
L3137          fcb       $04,$44,$55,$74,$98 ;       CORNER
; Object_2F Bow
L313C          fcb       $31,$07             ;   Number=31 size=0007
L313E          fcb       $88,$00,$80         ;     room=88 scorePoints=00 bits=80 u.......
L3141          fcb       $02                 ;     02 SHORT NAME
L3142          fcb       $02,$09,$4F         ;       BOW
; Object_30 Arrow
L3145          fcb       $32,$09             ;   Number=32 size=0009
L3147          fcb       $88,$00,$80         ;     room=88 scorePoints=00 bits=80 u.......
L314A          fcb       $02                 ;     02 SHORT NAME
L314B          fcb       $04,$3C,$49,$6B,$A1 ;       ARROW 
; Object_31 Hallway
L3150          fcb       $33,$0D             ;   Number=33 size=000D
L3152          fcb       $00,$00,$80         ;     room=00 scorePoints=00 bits=80 u.......
L3155          fcb       $07,$01             ;     07 COMMAND HANDLING IF FIRST NOUN
L3157          fcb       $93                 ;       CommonCommand_93
L3158          fcb       $02                 ;     02 SHORT NAME
L3159          fcb       $05,$4E,$72,$B3,$8E,$59 ;       HALLWAY
; Object_32 Chamber
L315F          fcb       $34,$0A             ;   Number=34 size=000A
L3161          fcb       $8D,$00,$80         ;     room=8D scorePoints=00 bits=80 u.......
L3164          fcb       $02                 ;     02 SHORT NAME
L3165          fcb       $05,$1B,$54,$AF,$91,$52 ;       CHAMBER
; Object_33 Vault
L316B          fcb       $35,$09             ;   Number=35 size=0009
L316D          fcb       $91,$00,$80         ;     room=91 scorePoints=00 bits=80 u.......
L3170          fcb       $02                 ;     02 SHORT NAME
L3171          fcb       $04,$D7,$C9,$33,$8E ;       VAULT 
; Object_34 Entrance
L3176          fcb       $36,$0E             ;   Number=36 size=000E
L3178          fcb       $00,$00,$80         ;     room=00 scorePoints=00 bits=80 u.......
L317B          fcb       $07,$01             ;     07 COMMAND HANDLING IF FIRST NOUN
L317D          fcb       $93                 ;       CommonCommand_93
L317E          fcb       $02                 ;     02 SHORT NAME
L317F          fcb       $06,$9E,$61,$D0,$B0,$9B,$53 ;       ENTRANCE 
; Object_35 Tunnel
L3186          fcb       $37,$0C             ;   Number=37 size=000C
L3188          fcb       $00,$00,$80         ;     room=00 scorePoints=00 bits=80 u.......
L318B          fcb       $07,$01             ;     07 COMMAND HANDLING IF FIRST NOUN
L318D          fcb       $93                 ;       CommonCommand_93
L318E          fcb       $02                 ;     02 SHORT NAME
L318F          fcb       $04,$70,$C0,$6E,$98 ;       TUNNEL
; Object_36 Jungle
L3194          fcb       $38,$0C             ;   Number=38 size=000C
L3196          fcb       $FF,$00,$80         ;     room=FF scorePoints=00 bits=80 u.......
L3199          fcb       $07,$01             ;     07 COMMAND HANDLING IF FIRST NOUN
L319B          fcb       $93                 ;       CommonCommand_93
L319C          fcb       $02                 ;     02 SHORT NAME
L319D          fcb       $04,$F0,$81,$BF,$6D ;       JUNGLE
; Object_37 Temple
L31A2          fcb       $39,$0C             ;   Number=39 size=000C
L31A4          fcb       $FF,$00,$80         ;     room=FF scorePoints=00 bits=80 u.......
L31A7          fcb       $07,$01             ;     07 COMMAND HANDLING IF FIRST NOUN
L31A9          fcb       $93                 ;       CommonCommand_93
L31AA          fcb       $02                 ;     02 SHORT NAME
L31AB          fcb       $04,$EF,$BD,$FF,$A5 ;       TEMPLE
; Object_38 Serpents
L31B0          fcb       $24,$0B             ;   Number=24 size=000B
L31B2          fcb       $9C,$00,$80         ;     room=9C scorePoints=00 bits=80 u.......
L31B5          fcb       $02                 ;     02 SHORT NAME
L31B6          fcb       $06,$B4,$B7,$F0,$A4,$0B,$C0 ;       SERPENTS 
; Object_39 Pit
L31BD          fcb       $3A,$31             ;   Number=3A size=0031
L31BF          fcb       $82,$00,$80         ;     room=82 scorePoints=00 bits=80 u.......
L31C2          fcb       $07,$28             ;     07 COMMAND HANDLING IF FIRST NOUN
L31C4          fcb       $0B,$26             ;       Command_0B_SWITCH size=26
L31C6          fcb       $0A,$36             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=36 phrase="36: CLIMB IN    *          *       "
L31C8          fcb       $01                 ;         IF_NOT_JUMP address=31CA
L31C9          fcb       $8A                 ;           CommonCommand_8A
L31CA          fcb       $33                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=33 phrase="??"
L31CB          fcb       $01                 ;         IF_NOT_JUMP address=31CD
L31CC          fcb       $8A                 ;           CommonCommand_8A
L31CD          fcb       $34                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=34 phrase="34: JUMP OVER   *          u......."
L31CE          fcb       $01                 ;         IF_NOT_JUMP address=31D0
L31CF          fcb       $8A                 ;           CommonCommand_8A
L31D0          fcb       $26                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=26 phrase="26: GO AROUND   *          u......."
L31D1          fcb       $17                 ;         IF_NOT_JUMP address=31E9
L31D2          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L31D3          fcb       $15,$5F,$BE,$5B,$B1,$4B,$7B,$EB,$99,$1B,$D0,$94 ;             THERE IS NO WAY AROUND THE PIT.
L31DF          fcb       $14,$30,$A1,$16,$58,$DB,$72,$96,$A5,$2E ;             .
L31E9          fcb       $17                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=17 phrase="17: CLIMB *     u.......   *       "
L31EA          fcb       $01                 ;         IF_NOT_JUMP address=31EC
L31EB          fcb       $8A                 ;           CommonCommand_8A
L31EC          fcb       $02                 ;     02 SHORT NAME
L31ED          fcb       $02,$96,$A5         ;       PIT
; Object_3A Ceiling
L31F0          fcb       $3B,$0A             ;   Number=3B size=000A
L31F2          fcb       $00,$00,$80         ;     room=00 scorePoints=00 bits=80 u.......
L31F5          fcb       $02                 ;     02 SHORT NAME
L31F6          fcb       $05,$AB,$53,$90,$8C,$47 ;       CEILING
; Object_3B AlterB
L31FC          fcb       $22,$39             ;   Number=22 size=0039
L31FE          fcb       $A5,$00,$80         ;     room=A5 scorePoints=00 bits=80 u.......
L3201          fcb       $02                 ;     02 SHORT NAME
L3202          fcb       $04,$4E,$48,$23,$62 ;       ALTER 
L3207          fcb       $07,$2E             ;     07 COMMAND HANDLING IF FIRST NOUN
L3209          fcb       $0D,$2C             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=44
L320B          fcb       $0A,$12             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=12 phrase="12: PULL *      u.......   *       "
L320D          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L320E          fcb       $28,$C7,$DE,$D3,$14,$90,$96,$F3,$A0,$C8,$93,$56 ;           YOU CAN NOT MOVE THE ALTER FROM BENEATH IT,
L321A          fcb       $5E,$DB,$72,$4E,$48,$23,$62,$79,$68,$44,$90,$8F ;           IT IS TOO HEAVY.
L3226          fcb       $61,$82,$49,$D6,$15,$0B,$EE,$0B,$BC,$D6,$B5,$2B ;           .
L3232          fcb       $A0,$E3,$72,$9F,$CD ;           .
; Object_3C Object3C
L3237          fcb       $3C,$03             ;   Number=3C size=0003
L3239          fcb       $1D,$00,$80         ;     room=1D scorePoints=00 bits=80 u.......
; ENDOF 20FF


;##GeneralCommands
L323C          fcb       $00,$85,$BB,$0E,$85,$B8 ;   Command_0E_EXECUTE_LIST_WHILE_FAIL size=1464
L3242          fcb       $0D,$2C             ;     Command_0D_EXECUTE_LIST_WHILE_PASS size=44
L3244          fcb       $0E,$08             ;       Command_0E_EXECUTE_LIST_WHILE_FAIL size=8
L3246          fcb       $0A,$01             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=01 phrase="01: NORTH *     *          *       "
L3248          fcb       $0A,$02             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=02 phrase="02: SOUTH *     *          *       "
L324A          fcb       $0A,$03             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=03 phrase="03: EAST *      *          *       "
L324C          fcb       $0A,$04             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=04 phrase="04: WEST *      *          *       "
L324E          fcb       $0E,$20             ;       Command_0E_EXECUTE_LIST_WHILE_FAIL size=32
L3250          fcb       $13                 ;         Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L3251          fcb       $0D,$1D             ;         Command_0D_EXECUTE_LIST_WHILE_PASS size=29
L3253          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3254          fcb       $19,$5F,$BE,$5B,$B1,$4B,$7B,$EB,$99,$1B,$D0,$89 ;             THERE IS NO WAY TO GO THAT DIRECTION.
L3260          fcb       $17,$81,$15,$82,$17,$73,$49,$94,$5A,$E6,$5F,$C0 ;             .
L326C          fcb       $7A,$2E             ;             .
L326E          fcb       $20,$1D             ;           Command_20_CHECK_ACTIVE_OBJECT object=1D(USER)
L3270          fcb       $0B,$85,$83         ;     Command_0B_SWITCH size=583
L3273          fcb       $0A,$05             ;       Command_0A_COMPARE_TO_PHRASE_FORM val=05 phrase="05: GET *       ..C.....   *       "
L3275          fcb       $21                 ;       IF_NOT_JUMP address=3297
L3276          fcb       $0E,$1F             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=31
L3278          fcb       $0D,$19             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=25
L327A          fcb       $1A                 ;             Command_1A_SET_VAR_OBJECT_TO_FIRST_NOUN
L327B          fcb       $18                 ;             Command_18_CHECK_VAR_OBJECT_OWNED_BY_ACTIVE_OBJECT
L327C          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L327D          fcb       $13,$C7,$DE,$94,$14,$43,$5E,$EF,$8D,$13,$47,$D3 ;               YOU ARE ALREADY CARRYING THE
L3289          fcb       $14,$83,$B3,$91,$7A,$82,$17,$45 ;               .
L3291          fcb       $16                 ;             Command_16_PRINT_VAR_NOUN_SHORT_NAME
L3292          fcb       $84                 ;             CommonCommand_84
L3293          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L3294          fcb       $83                 ;           CommonCommand_83
L3295          fcb       $14                 ;           Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L3296          fcb       $0C                 ;             Command_0C_FAIL
L3297          fcb       $06                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=06 phrase="06: DROP *      ..C.....   *       "
L3298          fcb       $0C                 ;       IF_NOT_JUMP address=32A5
L3299          fcb       $0D,$0A             ;         Command_0D_EXECUTE_LIST_WHILE_PASS size=10
L329B          fcb       $1A                 ;           Command_1A_SET_VAR_OBJECT_TO_FIRST_NOUN
L329C          fcb       $10                 ;           Command_10_DROP_OBJECT
L329D          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L329E          fcb       $06,$F9,$5B,$9F,$A6,$9B,$5D ;             DROPPED. 
L32A5          fcb       $08                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=08 phrase="08: READ *      .....X..   *       "
L32A6          fcb       $17                 ;       IF_NOT_JUMP address=32BE
L32A7          fcb       $0E,$15             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=21
L32A9          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L32AA          fcb       $0D,$12             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=18
L32AC          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L32AD          fcb       $0E,$89,$74,$D3,$14,$9B,$96,$1B,$A1,$63,$B1,$16 ;               HOW CAN YOU READ THE 
L32B9          fcb       $58,$DB,$72         ;               .
L32BC          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L32BD          fcb       $84                 ;             CommonCommand_84
L32BE          fcb       $11                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=11 phrase="11: OPEN *      u.......   *       "
L32BF          fcb       $16                 ;       IF_NOT_JUMP address=32D6
L32C0          fcb       $0E,$14             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=20
L32C2          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L32C3          fcb       $0D,$11             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=17
L32C5          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L32C6          fcb       $0D,$EB,$99,$0F,$A0,$D3,$14,$91,$96,$F0,$A4,$82 ;               NO ONE CAN OPEN THE
L32D2          fcb       $17,$45             ;               .
L32D4          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L32D5          fcb       $84                 ;             CommonCommand_84
L32D6          fcb       $12                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=12 phrase="12: PULL *      u.......   *       "
L32D7          fcb       $21                 ;       IF_NOT_JUMP address=32F9
L32D8          fcb       $0E,$1F             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=31
L32DA          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L32DB          fcb       $0D,$1C             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=28
L32DD          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L32DE          fcb       $13,$33,$D1,$09,$15,$E6,$96,$51,$18,$4E,$C2,$98 ;               WHY DON'T YOU LEAVE THE POOR
L32EA          fcb       $5F,$56,$5E,$DB,$72,$81,$A6,$52 ;               .
L32F2          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L32F3          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L32F4          fcb       $04,$49,$48,$7F,$98 ;               ALONE.
L32F9          fcb       $09                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=09 phrase="09: ATTACK WITH ...P....   .v......"
L32FA          fcb       $81,$37             ;       IF_NOT_JUMP address=3433
L32FC          fcb       $0E,$81,$34         ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=308
L32FF          fcb       $14                 ;           Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L3300          fcb       $1B                 ;             Command_1B_SET_VAR_OBJECT_TO_SECOND_NOUN
L3301          fcb       $14                 ;           Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L3302          fcb       $0E,$03             ;             Command_0E_EXECUTE_LIST_WHILE_FAIL size=3
L3304          fcb       $09,$17             ;               Command_09_COMPARE_OBJECT_TO_SECOND_NOUN object=17(Hands
L3306          fcb       $83                 ;               CommonCommand_83
L3307          fcb       $0E,$81,$29         ;           Command_0E_EXECUTE_LIST_WHILE_FAIL size=297
L330A          fcb       $0D,$1F             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=31
L330C          fcb       $14                 ;               Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L330D          fcb       $15,$40             ;                 Command_15_CHECK_OBJECT_BITS bits=40 .v......
L330F          fcb       $14                 ;               Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L3310          fcb       $09,$17             ;                 Command_09_COMPARE_OBJECT_TO_SECOND_NOUN object=17(Hands
L3312          fcb       $04                 ;               Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3313          fcb       $0C,$C7,$DE,$D3,$14,$E6,$96,$AF,$15,$B3,$B3,$5F ;                 YOU CAN'T HURT THE
L331F          fcb       $BE                 ;                 .
L3320          fcb       $11                 ;               Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L3321          fcb       $04                 ;               Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3322          fcb       $06,$56,$D1,$16,$71,$DB,$72 ;                 WITH THE 
L3329          fcb       $12                 ;               Command_12_PRINT_SECOND_NOUN_SHORT_NAME
L332A          fcb       $84                 ;               CommonCommand_84
L332B          fcb       $13                 ;             Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L332C          fcb       $0D,$1A             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=26
L332E          fcb       $1A                 ;               Command_1A_SET_VAR_OBJECT_TO_FIRST_NOUN
L332F          fcb       $14                 ;               Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L3330          fcb       $15,$10             ;                 Command_15_CHECK_OBJECT_BITS bits=10 ...P....
L3332          fcb       $04                 ;               Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3333          fcb       $12,$73,$7B,$77,$5B,$D0,$B5,$C9,$9C,$36,$A0,$89 ;                 IT DOES NO GOOD TO ATTACK A
L333F          fcb       $17,$96,$14,$45,$BD,$C3,$83 ;                 .
L3346          fcb       $11                 ;               Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L3347          fcb       $84                 ;               CommonCommand_84
L3348          fcb       $0D,$80,$D7         ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=215
L334B          fcb       $1A                 ;               Command_1A_SET_VAR_OBJECT_TO_FIRST_NOUN
L334C          fcb       $0B,$80,$D3         ;               Command_0B_SWITCH size=D3
L334F          fcb       $09,$09             ;                 Command_09_COMPARE_OBJECT_TO_SECOND_NOUN object=09(Sword
L3351          fcb       $80,$99             ;                 IF_NOT_JUMP address=33EC
L3353          fcb       $0B,$80,$96         ;                   Command_0B_SWITCH size=96
L3356          fcb       $05,$52             ;                     Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=52
L3358          fcb       $28                 ;                     IF_NOT_JUMP address=3381
L3359          fcb       $0D,$26             ;                       Command_0D_EXECUTE_LIST_WHILE_PASS size=38
L335B          fcb       $04                 ;                         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L335C          fcb       $17,$4F,$45,$7A,$79,$FB,$C0,$6C,$BE,$66,$C6,$04 ;                           A MIGHTY THRUST, BUT IT MISSES THE
L3368          fcb       $EE,$73,$C6,$73,$7B,$D5,$92,$B5,$B7,$82,$17,$45 ;                           .
L3374          fcb       $16                 ;                         Command_16_PRINT_VAR_NOUN_SHORT_NAME
L3375          fcb       $04                 ;                         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3376          fcb       $0A,$7B,$50,$4D,$45,$49,$7A,$36,$92,$21,$62 ;                           BY A KILOMETER!
L3381          fcb       $A4                 ;                     Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=A4
L3382          fcb       $2D                 ;                     IF_NOT_JUMP address=33B0
L3383          fcb       $0D,$2B             ;                       Command_0D_EXECUTE_LIST_WHILE_PASS size=43
L3385          fcb       $04                 ;                         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3386          fcb       $1C,$89,$4E,$73,$9E,$F5,$B3,$F5,$72,$59,$15,$C2 ;                           BLOOD RUSHES FORTH AS YOU HAVE SLASHED THE
L3392          fcb       $B3,$95,$14,$51,$18,$4A,$C2,$CF,$49,$5E,$17,$5A ;                           .
L339E          fcb       $49,$F3,$5F,$5F,$BE ;                           .
L33A3          fcb       $16                 ;                         Command_16_PRINT_VAR_NOUN_SHORT_NAME
L33A4          fcb       $04                 ;                         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L33A5          fcb       $08,$83,$7A,$5F,$BE,$94,$14,$EB,$8F ;                           IN THE ARM! 
L33AE          fcb       $1D,$0A             ;                         Command_1D_ATTACK_OBJECT damage=0A
L33B0          fcb       $FD                 ;                     Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=FD
L33B1          fcb       $20                 ;                     IF_NOT_JUMP address=33D2
L33B2          fcb       $0D,$1E             ;                       Command_0D_EXECUTE_LIST_WHILE_PASS size=30
L33B4          fcb       $04                 ;                         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L33B5          fcb       $1A,$C7,$DE,$63,$16,$C9,$97,$43,$5E,$84,$15,$73 ;                           YOU MANAGE A GRAZING BLOW TO THE CHEST!
L33C1          fcb       $4A,$AB,$98,$89,$4E,$D6,$CE,$D6,$9C,$DB,$72,$1F ;                           .
L33CD          fcb       $54,$F1,$B9         ;                           .
L33D0          fcb       $1D,$14             ;                         Command_1D_ATTACK_OBJECT damage=14
L33D2          fcb       $FF                 ;                     Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=FF
L33D3          fcb       $18                 ;                     IF_NOT_JUMP address=33EC
L33D4          fcb       $0D,$16             ;                       Command_0D_EXECUTE_LIST_WHILE_PASS size=22
L33D6          fcb       $04                 ;                         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L33D7          fcb       $12,$4E,$45,$DD,$C3,$44,$DB,$89,$8D,$89,$17,$82 ;                           A LUCKY BLOW TO THE HEART! 
L33E3          fcb       $17,$4A,$5E,$94,$5F,$AB,$BB ;                           .
L33EA          fcb       $1D,$FF             ;                         Command_1D_ATTACK_OBJECT damage=FF
L33EC          fcb       $17                 ;                 Command_09_COMPARE_OBJECT_TO_SECOND_NOUN object=17(Hands
L33ED          fcb       $34                 ;                 IF_NOT_JUMP address=3422
L33EE          fcb       $0B,$32             ;                   Command_0B_SWITCH size=32
L33F0          fcb       $05,$AF             ;                     Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=AF
L33F2          fcb       $14                 ;                     IF_NOT_JUMP address=3407
L33F3          fcb       $04                 ;                       Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L33F4          fcb       $12,$59,$45,$3E,$7A,$EF,$16,$1A,$98,$90,$14,$1B ;                         A WILD PUNCH AND YOU MISS. 
L3400          fcb       $58,$1B,$A1,$D5,$92,$5B,$BB ;                         .
L3407          fcb       $FF                 ;                     Command_05_IS_LAST_RANDOM_LESS_THAN_OR_EQUAL value=FF
L3408          fcb       $19                 ;                     IF_NOT_JUMP address=3422
L3409          fcb       $0D,$17             ;                       Command_0D_EXECUTE_LIST_WHILE_PASS size=23
L340B          fcb       $04                 ;                         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L340C          fcb       $13,$C7,$DE,$EF,$16,$1A,$98,$F3,$5F,$8F,$73,$D0 ;                           YOU PUNCHED HIM IN THE HEAD!
L3418          fcb       $15,$82,$17,$4A,$5E,$86,$5F,$21 ;                           .
L3420          fcb       $1D,$03             ;                         Command_1D_ATTACK_OBJECT damage=03
L3422          fcb       $0D,$0F             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=15
L3424          fcb       $04                 ;               Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3425          fcb       $02,$5F,$BE         ;                 THE
L3428          fcb       $11                 ;               Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L3429          fcb       $04                 ;               Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L342A          fcb       $08,$4B,$7B,$92,$C5,$37,$49,$17,$60 ;                 IS UNHARMED.
L3433          fcb       $0A                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=0A phrase="0A: LOOK *      *          *       "
L3434          fcb       $01                 ;       IF_NOT_JUMP address=3436
L3435          fcb       $07                 ;         Command_07_PRINT_ROOM_DESCRIPTION
L3436          fcb       $15                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=15 phrase="15: EAT *       u.......   *       "
L3437          fcb       $29                 ;       IF_NOT_JUMP address=3461
L3438          fcb       $0E,$27             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=39
L343A          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L343B          fcb       $0D,$24             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=36
L343D          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L343E          fcb       $0D,$80,$5B,$F3,$23,$5B,$4D,$4E,$B8,$F9,$8E,$82 ;               DON'T BE SILLY! THE
L344A          fcb       $17,$45             ;               .
L344C          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L344D          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L344E          fcb       $12,$47,$D2,$C8,$8B,$F3,$23,$55,$BD,$DB,$BD,$41 ;               WOULDN'T TASTE GOOD ANYWAY.
L345A          fcb       $6E,$03,$58,$99,$9B,$5F,$4A ;               .
L3461          fcb       $17                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=17 phrase="17: CLIMB *     u.......   *       "
L3462          fcb       $51                 ;       IF_NOT_JUMP address=34B4
L3463          fcb       $0E,$4F             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=79
L3465          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L3466          fcb       $0D,$25             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=37
L3468          fcb       $1A                 ;             Command_1A_SET_VAR_OBJECT_TO_FIRST_NOUN
L3469          fcb       $15,$10             ;             Command_15_CHECK_OBJECT_BITS bits=10 ...P....
L346B          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L346C          fcb       $0C,$46,$77,$05,$A0,$16,$BC,$90,$73,$D6,$83,$DB ;               I DON'T THINK THE 
L3478          fcb       $72                 ;               .
L3479          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L347A          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L347B          fcb       $11,$4E,$D1,$15,$8A,$50,$BD,$15,$58,$8E,$BE,$08 ;               WILL STAND STILL FORTHAT.
L3487          fcb       $8A,$BE,$A0,$56,$72,$2E ;               .
L348D          fcb       $0D,$25             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=37
L348F          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3490          fcb       $12,$CF,$62,$8B,$96,$9B,$64,$1B,$A1,$47,$55,$B3 ;               EVEN IF YOU COULD CLIMB THE
L349C          fcb       $8B,$C3,$54,$A3,$91,$5F,$BE ;               .
L34A3          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L34A4          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L34A5          fcb       $0E,$73,$7B,$47,$D2,$C8,$8B,$F3,$23,$EE,$72,$1B ;               IT WOULDN'T HELP YOU.
L34B1          fcb       $A3,$3F,$A1         ;               .
L34B4          fcb       $16                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=16 phrase="16: DROP OUT    *          u...A..."
L34B5          fcb       $16                 ;       IF_NOT_JUMP address=34CC
L34B6          fcb       $0E,$14             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=20
L34B8          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L34B9          fcb       $0D,$11             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=17
L34BB          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L34BC          fcb       $02,$5F,$BE         ;               THE
L34BF          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L34C0          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L34C1          fcb       $0A,$4B,$7B,$06,$9A,$BF,$14,$D3,$B2,$CF,$98 ;               IS NOT BURNING.
L34CC          fcb       $18                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=18 phrase="18: RUB *       u.......   *       "
L34CD          fcb       $35                 ;       IF_NOT_JUMP address=3503
L34CE          fcb       $0E,$33             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=51
L34D0          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L34D1          fcb       $0D,$18             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=24
L34D3          fcb       $1A                 ;             Command_1A_SET_VAR_OBJECT_TO_FIRST_NOUN
L34D4          fcb       $15,$10             ;             Command_15_CHECK_OBJECT_BITS bits=10 ...P....
L34D6          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L34D7          fcb       $11,$5B,$BE,$65,$BC,$99,$16,$F3,$17,$56,$DB,$CA ;               THAT'S NO WAY TO HURT THE
L34E3          fcb       $9C,$3E,$C6,$82,$17,$45 ;               .
L34E9          fcb       $16                 ;             Command_16_PRINT_VAR_NOUN_SHORT_NAME
L34EA          fcb       $84                 ;             CommonCommand_84
L34EB          fcb       $0D,$16             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=22
L34ED          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L34EE          fcb       $02,$5F,$BE         ;               THE
L34F1          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L34F2          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L34F3          fcb       $0F,$81,$8D,$CB,$87,$A5,$94,$04,$71,$8E,$62,$23 ;               LOOKS MUCH BETTER NOW.
L34FF          fcb       $62,$09,$9A,$2E     ;               .
L3503          fcb       $0B                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=0B phrase="0B: LOOK AT     *          u......."
L3504          fcb       $3A                 ;       IF_NOT_JUMP address=353F
L3505          fcb       $0E,$38             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=56
L3507          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L3508          fcb       $0D,$19             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=25
L350A          fcb       $1A                 ;             Command_1A_SET_VAR_OBJECT_TO_FIRST_NOUN
L350B          fcb       $15,$04             ;             Command_15_CHECK_OBJECT_BITS bits=04 .....X..
L350D          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L350E          fcb       $12,$3F,$B9,$82,$62,$91,$7A,$D5,$15,$04,$18,$8E ;               SOMETHING IS WRITTEN ON THE
L351A          fcb       $7B,$83,$61,$03,$A0,$5F,$BE ;               .
L3521          fcb       $16                 ;             Command_16_PRINT_VAR_NOUN_SHORT_NAME
L3522          fcb       $84                 ;             CommonCommand_84
L3523          fcb       $0D,$1A             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=26
L3525          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3526          fcb       $16,$5F,$BE,$5D,$B1,$D0,$B5,$02,$A1,$91,$7A,$62 ;               THERE'S NOTHING SPECIAL ABOUT THE
L3532          fcb       $17,$DB,$5F,$33,$48,$B9,$46,$73,$C6,$5F,$BE ;               .
L353D          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L353E          fcb       $84                 ;             CommonCommand_84
L353F          fcb       $0C                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=0C phrase="0C: LOOK UNDER  *          u......."
L3540          fcb       $1A                 ;       IF_NOT_JUMP address=355B
L3541          fcb       $0E,$18             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=24
L3543          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L3544          fcb       $0D,$15             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=21
L3546          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3547          fcb       $11,$5F,$BE,$5D,$B1,$D0,$B5,$02,$A1,$91,$7A,$B0 ;               THERE'S NOTHING UNDER THE
L3553          fcb       $17,$F4,$59,$82,$17,$45 ;               .
L3559          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L355A          fcb       $84                 ;             CommonCommand_84
L355B          fcb       $10                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=10 phrase="10: LOOK IN     *          u......."
L355C          fcb       $18                 ;       IF_NOT_JUMP address=3575
L355D          fcb       $0E,$16             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=22
L355F          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L3560          fcb       $0D,$13             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=19
L3562          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3563          fcb       $0F,$5F,$BE,$5D,$B1,$D0,$B5,$02,$A1,$91,$7A,$D0 ;               THERE'S NOTHING IN THE
L356F          fcb       $15,$82,$17,$45     ;               .
L3573          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L3574          fcb       $84                 ;             CommonCommand_84
L3575          fcb       $1B                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=1B phrase="1B: LOOK AROUND *          u......."
L3576          fcb       $20                 ;       IF_NOT_JUMP address=3597
L3577          fcb       $0E,$1E             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=30
L3579          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L357A          fcb       $0D,$03             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=3
L357C          fcb       $08,$00             ;             Command_08_COMPARE_OBJECT_TO_FIRST_NOUN object=00(NONE
L357E          fcb       $07                 ;             Command_07_PRINT_ROOM_DESCRIPTION
L357F          fcb       $0D,$16             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=22
L3581          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3582          fcb       $12,$5F,$BE,$5B,$B1,$4B,$7B,$06,$9A,$90,$73,$C3 ;               THERE IS NOTHING AROUND THE
L358E          fcb       $6A,$07,$B3,$33,$98,$5F,$BE ;               .
L3595          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L3596          fcb       $84                 ;             CommonCommand_84
L3597          fcb       $1C                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=1C phrase="1C: LOOK BEHIND *          u......."
L3598          fcb       $34                 ;       IF_NOT_JUMP address=35CD
L3599          fcb       $0E,$32             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=50
L359B          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L359C          fcb       $0D,$17             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=23
L359E          fcb       $08,$00             ;             Command_08_COMPARE_OBJECT_TO_FIRST_NOUN object=00(NONE
L35A0          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L35A1          fcb       $13,$5F,$BE,$5B,$B1,$4B,$7B,$06,$9A,$90,$73,$C4 ;               THERE IS NOTHING BEHIND YOU.
L35AD          fcb       $6A,$A3,$60,$33,$98,$C7,$DE,$2E ;               .
L35B5          fcb       $0D,$16             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=22
L35B7          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L35B8          fcb       $12,$5F,$BE,$5B,$B1,$4B,$7B,$06,$9A,$90,$73,$C4 ;               THERE IS NOTHING BEHIND THE
L35C4          fcb       $6A,$A3,$60,$33,$98,$5F,$BE ;               .
L35CB          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L35CC          fcb       $84                 ;             CommonCommand_84
L35CD          fcb       $21                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=21 phrase="21: PLUGH *     *          *       "
L35CE          fcb       $0A                 ;       IF_NOT_JUMP address=35D9
L35CF          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L35D0          fcb       $08,$B5,$6C,$8E,$C5,$EB,$72,$AB,$BB ;           GESUNDHEIT! 
L35D9          fcb       $22                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=22 phrase="22: SCREAM *    *          *       "
L35DA          fcb       $12                 ;       IF_NOT_JUMP address=35ED
L35DB          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L35DC          fcb       $10,$5B,$E0,$27,$60,$31,$60,$41,$A0,$49,$A0,$89 ;           YYYEEEEEOOOOOOWWWWWWWW!!
L35E8          fcb       $D3,$89,$D3,$69,$CE ;           .
L35ED          fcb       $23                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=23 phrase="23: QUIT *      *          *       "
L35EE          fcb       $05                 ;       IF_NOT_JUMP address=35F4
L35EF          fcb       $0D,$03             ;         Command_0D_EXECUTE_LIST_WHILE_PASS size=3
L35F1          fcb       $92                 ;           CommonCommand_92
L35F2          fcb       $26                 ;           Command_26_PRINT_SCORE
L35F3          fcb       $24                 ;           Command_24_ENDLESS_LOOP
L35F4          fcb       $2C                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=2C phrase="2C: SCORE *     *          *       "
L35F5          fcb       $04                 ;       IF_NOT_JUMP address=35FA
L35F6          fcb       $0D,$02             ;         Command_0D_EXECUTE_LIST_WHILE_PASS size=2
L35F8          fcb       $92                 ;           CommonCommand_92
L35F9          fcb       $26                 ;           Command_26_PRINT_SCORE
L35FA          fcb       $3E                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=3E phrase="??"
L35FB          fcb       $01                 ;       IF_NOT_JUMP address=35FD
L35FC          fcb       $27                 ;         Command_27_??_UNKNOWN_COMMAND_??
L35FD          fcb       $3F                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=3F phrase="??"
L35FE          fcb       $01                 ;       IF_NOT_JUMP address=3600
L35FF          fcb       $28                 ;         Command_28_??_UNKNOWN_COMMAND_??
L3600          fcb       $25                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=25 phrase="25: LEAVE *     *          *       "
L3601          fcb       $0D                 ;       IF_NOT_JUMP address=360F
L3602          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3603          fcb       $0B,$03,$C0,$7B,$14,$94,$5A,$E6,$5F,$C0,$7A,$2E ;           TRY A DIRECTION.
L360F          fcb       $26                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=26 phrase="26: GO AROUND   *          u......."
L3610          fcb       $24                 ;       IF_NOT_JUMP address=3635
L3611          fcb       $0E,$22             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=34
L3613          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L3614          fcb       $0D,$17             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=23
L3616          fcb       $1A                 ;             Command_1A_SET_VAR_OBJECT_TO_FIRST_NOUN
L3617          fcb       $15,$10             ;             Command_15_CHECK_OBJECT_BITS bits=10 ...P....
L3619          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L361A          fcb       $02,$5F,$BE         ;               THE
L361D          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L361E          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L361F          fcb       $0D,$40,$D2,$F3,$23,$F6,$8B,$51,$18,$52,$C2,$65 ;               WON'T LET YOU PASS!
L362B          fcb       $49,$21             ;               .
L362D          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L362E          fcb       $06,$09,$9A,$FA,$17,$70,$49 ;             NOW WHAT?
L3635          fcb       $3D                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=3D phrase="3D: GO TO       *          u......."
L3636          fcb       $01                 ;       IF_NOT_JUMP address=3638
L3637          fcb       $94                 ;         CommonCommand_94
L3638          fcb       $27                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=27 phrase="27: KICK *      u.......   *       "
L3639          fcb       $0E                 ;       IF_NOT_JUMP address=3648
L363A          fcb       $0E,$0C             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=12
L363C          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L363D          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L363E          fcb       $09,$25,$A1,$AB,$70,$3B,$95,$77,$BF,$21 ;             OUCH! MY TOE!
L3648          fcb       $28                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=28 phrase="28: FEED WITH   ...P....   u......."
L3649          fcb       $0A                 ;       IF_NOT_JUMP address=3654
L364A          fcb       $0E,$08             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=8
L364C          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L364D          fcb       $0D,$04             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=4
L364F          fcb       $1A                 ;             Command_1A_SET_VAR_OBJECT_TO_FIRST_NOUN
L3650          fcb       $15,$10             ;             Command_15_CHECK_OBJECT_BITS bits=10 ...P....
L3652          fcb       $96                 ;             CommonCommand_96
L3653          fcb       $97                 ;           CommonCommand_97
L3654          fcb       $29                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=29 phrase="29: FEED TO     u.......   ...P...."
L3655          fcb       $0A                 ;       IF_NOT_JUMP address=3660
L3656          fcb       $0E,$08             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=8
L3658          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L3659          fcb       $0D,$04             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=4
L365B          fcb       $1B                 ;             Command_1B_SET_VAR_OBJECT_TO_SECOND_NOUN
L365C          fcb       $15,$10             ;             Command_15_CHECK_OBJECT_BITS bits=10 ...P....
L365E          fcb       $96                 ;             CommonCommand_96
L365F          fcb       $97                 ;           CommonCommand_97
L3660          fcb       $2F                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=2F phrase="2F: WAIT *      *          *       "
L3661          fcb       $07                 ;       IF_NOT_JUMP address=3669
L3662          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3663          fcb       $05,$9B,$29,$57,$C6,$3E ;           <PAUSE>
L3669          fcb       $2D                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=2D phrase="2D: PULL UP     *          u......."
L366A          fcb       $09                 ;       IF_NOT_JUMP address=3674
L366B          fcb       $0E,$07             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=7
L366D          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L366E          fcb       $0D,$02             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=2
L3670          fcb       $1A                 ;             Command_1A_SET_VAR_OBJECT_TO_FIRST_NOUN
L3671          fcb       $83                 ;             CommonCommand_83
L3672          fcb       $14                 ;           Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L3673          fcb       $0C                 ;             Command_0C_FAIL
L3674          fcb       $33                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=33 phrase="??"
L3675          fcb       $04                 ;       IF_NOT_JUMP address=367A
L3676          fcb       $0E,$02             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=2
L3678          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L3679          fcb       $98                 ;           CommonCommand_98
L367A          fcb       $34                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=34 phrase="34: JUMP OVER   *          u......."
L367B          fcb       $04                 ;       IF_NOT_JUMP address=3680
L367C          fcb       $0E,$02             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=2
L367E          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L367F          fcb       $98                 ;           CommonCommand_98
L3680          fcb       $36                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=36 phrase="36: CLIMB IN    *          *       "
L3681          fcb       $17                 ;       IF_NOT_JUMP address=3699
L3682          fcb       $0E,$15             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=21
L3684          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L3685          fcb       $0D,$12             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=18
L3687          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3688          fcb       $0E,$C7,$DE,$D3,$14,$E6,$96,$77,$15,$0B,$BC,$96 ;               YOU CAN'T GET IN THE 
L3694          fcb       $96,$DB,$72         ;               .
L3697          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L3698          fcb       $84                 ;             CommonCommand_84
L3699          fcb       $37                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=37 phrase="37: CLIMB OUT   *          *       "
L369A          fcb       $15                 ;       IF_NOT_JUMP address=36B0
L369B          fcb       $0E,$13             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=19
L369D          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L369E          fcb       $0D,$10             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=16
L36A0          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L36A1          fcb       $0C,$C7,$DE,$94,$14,$85,$61,$0B,$BC,$96,$96,$DB ;               YOU AREN'T IN THE 
L36AD          fcb       $72                 ;               .
L36AE          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L36AF          fcb       $84                 ;             CommonCommand_84
L36B0          fcb       $38                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=38 phrase="38: CLIMB UNDER *          u......."
L36B1          fcb       $20                 ;       IF_NOT_JUMP address=36D2
L36B2          fcb       $0E,$1E             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=30
L36B4          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L36B5          fcb       $0D,$1B             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=27
L36B7          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L36B8          fcb       $17,$5F,$BE,$5B,$B1,$4B,$7B,$06,$9A,$30,$15,$29 ;               THERE IS NOT ENOUGH ROOM UNDER THE
L36C4          fcb       $A1,$14,$71,$3F,$A0,$B0,$17,$F4,$59,$82,$17,$45 ;               .
L36D0          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L36D1          fcb       $84                 ;             CommonCommand_84
L36D2          fcb       $39                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=39 phrase="39: THROW IN    u.......   u......."
L36D3          fcb       $1D                 ;       IF_NOT_JUMP address=36F1
L36D4          fcb       $0E,$1B             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=27
L36D6          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L36D7          fcb       $0D,$18             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=24
L36D9          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L36DA          fcb       $16,$C7,$DE,$FB,$17,$F3,$8C,$58,$72,$56,$5E,$D2 ;               YOU WILL HAVE TO PUT IT IN THERE.
L36E6          fcb       $9C,$73,$C6,$73,$7B,$83,$7A,$5F,$BE,$7F,$B1 ;               .
L36F1          fcb       $3A                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=3A phrase="3A: OPEN WITH   u.......   u......."
L36F2          fcb       $1E                 ;       IF_NOT_JUMP address=3711
L36F3          fcb       $0E,$1C             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=28
L36F5          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L36F6          fcb       $0D,$19             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=25
L36F8          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L36F9          fcb       $0C,$C7,$DE,$D3,$14,$E6,$96,$C2,$16,$83,$61,$5F ;               YOU CAN'T OPEN THE
L3705          fcb       $BE                 ;               .
L3706          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L3707          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3708          fcb       $06,$56,$D1,$16,$71,$DB,$72 ;               WITH THE 
L370F          fcb       $12                 ;             Command_12_PRINT_SECOND_NOUN_SHORT_NAME
L3710          fcb       $84                 ;             CommonCommand_84
L3711          fcb       $0D                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=0D phrase="0D: THROW AT    .v......   ...P...."
L3712          fcb       $34                 ;       IF_NOT_JUMP address=3747
L3713          fcb       $0E,$32             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=50
L3715          fcb       $0D,$2E             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=46
L3717          fcb       $1A                 ;             Command_1A_SET_VAR_OBJECT_TO_FIRST_NOUN
L3718          fcb       $83                 ;             CommonCommand_83
L3719          fcb       $0E,$2A             ;             Command_0E_EXECUTE_LIST_WHILE_FAIL size=42
L371B          fcb       $0D,$27             ;               Command_0D_EXECUTE_LIST_WHILE_PASS size=39
L371D          fcb       $0E,$07             ;                 Command_0E_EXECUTE_LIST_WHILE_FAIL size=7
L371F          fcb       $14                 ;                   Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L3720          fcb       $15,$10             ;                     Command_15_CHECK_OBJECT_BITS bits=10 ...P....
L3722          fcb       $1B                 ;                   Command_1B_SET_VAR_OBJECT_TO_SECOND_NOUN
L3723          fcb       $14                 ;                   Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L3724          fcb       $15,$40             ;                     Command_15_CHECK_OBJECT_BITS bits=40 .v......
L3726          fcb       $04                 ;                 Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3727          fcb       $02,$5F,$BE         ;                   THE
L372A          fcb       $11                 ;                 Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L372B          fcb       $04                 ;                 Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L372C          fcb       $14,$07,$4F,$17,$98,$CA,$B5,$37,$49,$F5,$8B,$D3 ;                   BOUNCES HARMLESSLY OFF OF THE 
L3738          fcb       $B8,$B8,$16,$91,$64,$96,$64,$DB,$72 ;                   .
L3741          fcb       $12                 ;                 Command_12_PRINT_SECOND_NOUN_SHORT_NAME
L3742          fcb       $84                 ;                 CommonCommand_84
L3743          fcb       $10                 ;                 Command_10_DROP_OBJECT
L3744          fcb       $13                 ;               Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L3745          fcb       $14                 ;           Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L3746          fcb       $0C                 ;             Command_0C_FAIL
L3747          fcb       $0E                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=0E phrase="0E: THROW TO    u.......   ...P...."
L3748          fcb       $39                 ;       IF_NOT_JUMP address=3782
L3749          fcb       $0E,$37             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=55
L374B          fcb       $0D,$1B             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=27
L374D          fcb       $1B                 ;             Command_1B_SET_VAR_OBJECT_TO_SECOND_NOUN
L374E          fcb       $14                 ;             Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L374F          fcb       $15,$10             ;               Command_15_CHECK_OBJECT_BITS bits=10 ...P....
L3751          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3752          fcb       $02,$5F,$BE         ;               THE
L3755          fcb       $12                 ;             Command_12_PRINT_SECOND_NOUN_SHORT_NAME
L3756          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3757          fcb       $10,$4B,$7B,$06,$9A,$85,$14,$B2,$53,$90,$BE,$C9 ;               IS NOT ACCEPTING GIFTS. 
L3763          fcb       $6A,$5E,$79,$5B,$BB ;               .
L3768          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L3769          fcb       $0D,$17             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=23
L376B          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L376C          fcb       $02,$5F,$BE         ;               THE
L376F          fcb       $12                 ;             Command_12_PRINT_SECOND_NOUN_SHORT_NAME
L3770          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3771          fcb       $10,$60,$7B,$F3,$23,$D5,$46,$EE,$61,$91,$7A,$BC ;               ISN'T ACCEPTING BRIBES. 
L377D          fcb       $14,$AF,$78,$5B,$BB ;               .
L3782          fcb       $0F                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=0F phrase="0F: DROP IN     u.......   u......."
L3783          fcb       $19                 ;       IF_NOT_JUMP address=379D
L3784          fcb       $0E,$17             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=23
L3786          fcb       $13                 ;           Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L3787          fcb       $0D,$14             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=20
L3789          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L378A          fcb       $02,$5F,$BE         ;               THE
L378D          fcb       $11                 ;             Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L378E          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L378F          fcb       $0B,$40,$D2,$F3,$23,$16,$67,$D0,$15,$82,$17,$45 ;               WON'T FIT IN THE
L379B          fcb       $12                 ;             Command_12_PRINT_SECOND_NOUN_SHORT_NAME
L379C          fcb       $84                 ;             CommonCommand_84
L379D          fcb       $14                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=14 phrase="14: LIGHT WITH  u...A...   u...A..."
L379E          fcb       $3B                 ;       IF_NOT_JUMP address=37DA
L379F          fcb       $0D,$39             ;         Command_0D_EXECUTE_LIST_WHILE_PASS size=57
L37A1          fcb       $1B                 ;           Command_1B_SET_VAR_OBJECT_TO_SECOND_NOUN
L37A2          fcb       $83                 ;           CommonCommand_83
L37A3          fcb       $0E,$35             ;           Command_0E_EXECUTE_LIST_WHILE_FAIL size=53
L37A5          fcb       $0D,$18             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=24
L37A7          fcb       $1A                 ;               Command_1A_SET_VAR_OBJECT_TO_FIRST_NOUN
L37A8          fcb       $15,$08             ;               Command_15_CHECK_OBJECT_BITS bits=08 ....A...
L37AA          fcb       $0E,$04             ;               Command_0E_EXECUTE_LIST_WHILE_FAIL size=4
L37AC          fcb       $09,$12             ;                 Command_09_COMPARE_OBJECT_TO_SECOND_NOUN object=12(LitCandle
L37AE          fcb       $09,$14             ;                 Command_09_COMPARE_OBJECT_TO_SECOND_NOUN object=14(LitLamp
L37B0          fcb       $0E,$0D             ;               Command_0E_EXECUTE_LIST_WHILE_FAIL size=13
L37B2          fcb       $13                 ;                 Command_13_PROCESS_PHRASE_BY_ROOM_OR_FIRST_OR_SECOND
L37B3          fcb       $04                 ;                 Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L37B4          fcb       $0A,$73,$7B,$40,$D2,$F3,$23,$F4,$4F,$1B,$9C ;                   IT WON'T BURN. 
L37BF          fcb       $0D,$19             ;             Command_0D_EXECUTE_LIST_WHILE_PASS size=25
L37C1          fcb       $04                 ;               Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L37C2          fcb       $0C,$C7,$DE,$D3,$14,$E6,$96,$BF,$14,$C3,$B2,$5F ;                 YOU CAN'T BURN THE
L37CE          fcb       $BE                 ;                 .
L37CF          fcb       $11                 ;               Command_11_PRINT_FIRST_NOUN_SHORT_NAME
L37D0          fcb       $04                 ;               Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L37D1          fcb       $06,$56,$D1,$16,$71,$DB,$72 ;                 WITH THE 
L37D8          fcb       $12                 ;               Command_12_PRINT_SECOND_NOUN_SHORT_NAME
L37D9          fcb       $84                 ;               CommonCommand_84
L37DA          fcb       $07                 ;       Command_0A_COMPARE_TO_PHRASE_FORM val=07 phrase="07: INVENT *    *          *       "
L37DB          fcb       $1A                 ;       IF_NOT_JUMP address=37F6
L37DC          fcb       $0D,$18             ;         Command_0D_EXECUTE_LIST_WHILE_PASS size=24
L37DE          fcb       $04                 ;           Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L37DF          fcb       $15,$C7,$DE,$94,$14,$45,$5E,$3C,$49,$D0,$DD,$D6 ;             YOU ARE CARRYING THE FOLLOWING:
L37EB          fcb       $6A,$DB,$72,$FE,$67,$89,$8D,$91,$7A,$3A ;             .
L37F5          fcb       $06                 ;           Command_06_PRINT_INVENTORY
L37F6          fcb       $04                 ;     Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L37F7          fcb       $02,$00,$00         ;       ???
; ENDOF 323C

;##HelperCommands
L37FA          fcb       $00,$84,$2C         ; Script list size=042C
L37FD          fcb       $81,$63             ;   Script number=81 size=042C
L37FF          fcb       $0D,$61             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=97
L3801          fcb       $1F                 ;         Command_1F_PRINT_MESSAGE
L3802          fcb       $10,$C7,$DE,$AF,$23,$FF,$14,$17,$47,$8C,$17,$43 ;           YOU'RE DEAD. TRY AGAIN. 
L380E          fcb       $DB,$0B,$6C,$1B,$9C ;           .
L3813          fcb       $95                 ;         CommonCommand_95
L3814          fcb       $17,$01,$81         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=01(Object1) location=81
L3817          fcb       $17,$05,$84         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=05(Food) location=84
L381A          fcb       $17,$06,$88         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=06(StatueEast) location=88
L381D          fcb       $17,$07,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=07(StatueWest) location=00
L3820          fcb       $17,$08,$8C         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=08(GoldRing) location=8C
L3823          fcb       $17,$09,$A1         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=09(Sword) location=A1
L3826          fcb       $17,$0A,$8E         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=0A(StoneGargoyle) location=8E
L3829          fcb       $17,$0C,$95         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=0C(Idol) location=95
L382C          fcb       $17,$0E,$91         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=0E(UnpulledLever) location=91
L382F          fcb       $17,$0F,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=0F(PulledLever) location=00
L3832          fcb       $17,$11,$92         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=11(UnlitCandle) location=92
L3835          fcb       $17,$12,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=12(LitCandle) location=00
L3838          fcb       $17,$14,$A0         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=14(LitLamp) location=A0
L383B          fcb       $17,$15,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=15(LiveSerpent) location=00
L383E          fcb       $17,$16,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=16(DeadSerpent) location=00
L3841          fcb       $17,$18,$9C         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=18(Coin) location=9C
L3844          fcb       $17,$1E,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=1E(LiveGargoyle) location=00
L3847          fcb       $17,$1F,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=1F(DeadGargoyle) location=00
L384A          fcb       $17,$22,$8F         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=22(GoldenChopstick) location=8F
L384D          fcb       $17,$25,$9C         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=25(GemA) location=9C
L3850          fcb       $17,$26,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=26(GemB) location=00
L3853          fcb       $17,$28,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=28(UnlitLamp) location=00
L3856          fcb       $1C,$15             ;         Command_1C_SET_VAR_OBJECT object=15 (LiveSerpent)
L3858          fcb       $23,$3C             ;         Command_23_HEAL_VAR_OBJECT value=3C
L385A          fcb       $1C,$1D             ;         Command_1C_SET_VAR_OBJECT object=1D (USER)
L385C          fcb       $23,$46             ;         Command_23_HEAL_VAR_OBJECT value=46
L385E          fcb       $17,$1D,$96         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=1D(USER) location=96
L3861          fcb       $25                 ;         Command_25_RESTART_GAME
L3862          fcb       $82,$2C             ;   Script number=82 size=042C
L3864          fcb       $0D,$2A             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=42
L3866          fcb       $1F                 ;         Command_1F_PRINT_MESSAGE
L3867          fcb       $27,$5F,$BE,$66,$17,$8F,$49,$54,$5E,$3F,$61,$57 ;           THE STATUE RELEASES THE ARROW WHICH
L3873          fcb       $49,$D6,$B5,$DB,$72,$3C,$49,$6B,$A1,$23,$D1,$13 ;           PENETRATES YOUR HEART.
L387F          fcb       $54,$F0,$A4,$8C,$62,$7F,$49,$DB,$B5,$34,$A1,$9F ;           .
L388B          fcb       $15,$3E,$49,$2E     ;           .
L388F          fcb       $81                 ;         CommonCommand_81
L3890          fcb       $83,$66             ;   Script number=83 size=042C
L3892          fcb       $0D,$64             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=100
L3894          fcb       $0E,$61             ;         Command_0E_EXECUTE_LIST_WHILE_FAIL size=97
L3896          fcb       $0D,$08             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=8
L3898          fcb       $08,$0E             ;             Command_08_COMPARE_OBJECT_TO_FIRST_NOUN object=0E(UnpulledLever
L389A          fcb       $17,$0E,$00         ;             Command_17_MOVE_OBJECT_TO_LOCATION object=0E(UnpulledLever) location=00
L389D          fcb       $1C,$0F             ;             Command_1C_SET_VAR_OBJECT object=0F (PulledLever)
L389F          fcb       $0C                 ;             Command_0C_FAIL
L38A0          fcb       $0D,$08             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=8
L38A2          fcb       $08,$25             ;             Command_08_COMPARE_OBJECT_TO_FIRST_NOUN object=25(GemA
L38A4          fcb       $17,$25,$00         ;             Command_17_MOVE_OBJECT_TO_LOCATION object=25(GemA) location=00
L38A7          fcb       $1C,$26             ;             Command_1C_SET_VAR_OBJECT object=26 (GemB)
L38A9          fcb       $0C                 ;             Command_0C_FAIL
L38AA          fcb       $0D,$1D             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=29
L38AC          fcb       $15,$10             ;             Command_15_CHECK_OBJECT_BITS bits=10 ...P....
L38AE          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L38AF          fcb       $0C,$46,$77,$05,$A0,$16,$BC,$90,$73,$D6,$83,$DB ;               I DON'T THINK THE 
L38BB          fcb       $72                 ;               .
L38BC          fcb       $16                 ;             Command_16_PRINT_VAR_NOUN_SHORT_NAME
L38BD          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L38BE          fcb       $0A,$4E,$D1,$05,$8A,$42,$A0,$2B,$62,$FF,$BD ;               WILL COOPERATE.
L38C9          fcb       $0D,$21             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=33
L38CB          fcb       $14                 ;             Command_14_EXECUTE_COMMAND_REVERSE_STATUS
L38CC          fcb       $15,$20             ;               Command_15_CHECK_OBJECT_BITS bits=20 ..C.....
L38CE          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L38CF          fcb       $1A,$C7,$DE,$94,$14,$53,$5E,$D6,$C4,$4B,$5E,$13 ;               YOU ARE QUITE INCAPABLE OF REMOVING THE
L38DB          fcb       $98,$44,$A4,$DB,$8B,$C3,$9E,$6F,$B1,$53,$A1,$AB ;               .
L38E7          fcb       $98,$5F,$BE         ;               .
L38EA          fcb       $16                 ;             Command_16_PRINT_VAR_NOUN_SHORT_NAME
L38EB          fcb       $84                 ;             CommonCommand_84
L38EC          fcb       $18                 ;           Command_18_CHECK_VAR_OBJECT_OWNED_BY_ACTIVE_OBJECT
L38ED          fcb       $0D,$08             ;           Command_0D_EXECUTE_LIST_WHILE_PASS size=8
L38EF          fcb       $0F                 ;             Command_0F_PICK_UP_OBJECT
L38F0          fcb       $16                 ;             Command_16_PRINT_VAR_NOUN_SHORT_NAME
L38F1          fcb       $04                 ;             Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L38F2          fcb       $04,$4D,$BD,$A7,$61 ;               TAKEN.
L38F7          fcb       $18                 ;         Command_18_CHECK_VAR_OBJECT_OWNED_BY_ACTIVE_OBJECT
L38F8          fcb       $84,$04             ;   Script number=84 size=042C
L38FA          fcb       $04                 ;       Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L38FB          fcb       $02,$3B,$F4         ;         .  
L38FE          fcb       $85,$29             ;   Script number=85 size=042C
L3900          fcb       $1F                 ;       Command_1F_PRINT_MESSAGE
L3901          fcb       $27,$49,$45,$07,$B3,$11,$A3,$89,$64,$94,$C3,$0B ;         A GROUP OF GUARDS MARCHES AROUND THE CORNER
L390D          fcb       $5C,$94,$91,$1F,$54,$C3,$B5,$07,$B3,$33,$98,$5F ;         TO YOUR RIGHT.
L3919          fcb       $BE,$E1,$14,$CF,$B2,$96,$AF,$DB,$9C,$34,$A1,$33 ;         .
L3925          fcb       $17,$2E,$6D,$2E     ;         .
L3929          fcb       $87,$2A             ;   Script number=87 size=042C
L392B          fcb       $1F                 ;       Command_1F_PRINT_MESSAGE
L392C          fcb       $28,$49,$45,$07,$B3,$11,$A3,$89,$64,$94,$C3,$0B ;         A GROUP OF GUARDS DISAPPEARS AROUND THE
L3938          fcb       $5C,$95,$5A,$EA,$48,$94,$5F,$C3,$B5,$07,$B3,$33 ;         CORNER TO YOUR LEFT.
L3944          fcb       $98,$5F,$BE,$E1,$14,$CF,$B2,$96,$AF,$DB,$9C,$34 ;         .
L3950          fcb       $A1,$3F,$16,$D7,$68 ;         .
L3955          fcb       $86,$1E             ;   Script number=86 size=042C
L3957          fcb       $1F                 ;       Command_1F_PRINT_MESSAGE
L3958          fcb       $1C,$49,$45,$07,$B3,$11,$A3,$89,$64,$94,$C3,$0B ;         A GROUP OF GUARDS COMES AROUND THE CORNER.
L3964          fcb       $5C,$3F,$55,$4B,$62,$39,$49,$8E,$C5,$82,$17,$45 ;         .
L3970          fcb       $5E,$B8,$A0,$47,$62 ;         .
L3975          fcb       $88,$13             ;   Script number=88 size=042C
L3977          fcb       $0D,$11             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=17
L3979          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L397A          fcb       $02,$5F,$BE         ;           THE
L397D          fcb       $12                 ;         Command_12_PRINT_SECOND_NOUN_SHORT_NAME
L397E          fcb       $04                 ;         Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L397F          fcb       $0A,$4B,$7B,$06,$9A,$BF,$14,$10,$B2,$5B,$70 ;           IS NOT BURING. 
L398A          fcb       $92,$1C             ;   Script number=92 size=042C
L398C          fcb       $1F                 ;       Command_1F_PRINT_MESSAGE
L398D          fcb       $1A,$36,$A1,$B8,$16,$7B,$14,$85,$A6,$44,$B8,$DB ;         OUT OF A POSSIBLE FIFTY, YOUR SCORE IS 
L3999          fcb       $8B,$08,$67,$1E,$C1,$51,$18,$23,$C6,$61,$B7,$5B ;         .
L39A5          fcb       $B1,$4B,$7B         ;         .
L39A8          fcb       $89,$12             ;   Script number=89 size=042C
L39AA          fcb       $1F                 ;       Command_1F_PRINT_MESSAGE
L39AB          fcb       $10,$C7,$DE,$D3,$14,$E6,$96,$FF,$15,$D3,$93,$5B ;         YOU CAN'T JUMP THAT FAR!
L39B7          fcb       $BE,$08,$BC,$21,$49 ;         .
L39BC          fcb       $8A,$32             ;   Script number=8A size=042C
L39BE          fcb       $0D,$30             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=48
L39C0          fcb       $1F                 ;         Command_1F_PRINT_MESSAGE
L39C1          fcb       $2D,$C7,$DE,$3B,$16,$33,$98,$03,$A0,$55,$45,$8D ;           YOU LAND ON A SPIKE AT THE BOTTOM OF THE PIT
L39CD          fcb       $A5,$43,$5E,$16,$BC,$DB,$72,$06,$4F,$7F,$BF,$B8 ;           WHICH THE RUG COVERED.
L39D9          fcb       $16,$82,$17,$52,$5E,$73,$7B,$23,$D1,$13,$54,$5F ;           .
L39E5          fcb       $BE,$3F,$17,$C5,$6A,$4F,$A1,$66,$B1,$2E ;           .
L39EF          fcb       $81                 ;         CommonCommand_81
L39F0          fcb       $8B,$79             ;   Script number=8B size=042C
L39F2          fcb       $0D,$77             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=119
L39F4          fcb       $1F                 ;         Command_1F_PRINT_MESSAGE
L39F5          fcb       $74,$C7,$DE,$2F,$17,$43,$48,$5B,$E3,$23,$D1,$DB ;           YOU REALIZE WHILE YOU'RE FALLING THAT THE
L3A01          fcb       $8B,$C7,$DE,$AF,$23,$4B,$15,$03,$8D,$AB,$98,$5B ;           RUG COVERED A PIT. THE BOTTOM OF THE PIT IS
L3A0D          fcb       $BE,$16,$BC,$DB,$72,$E9,$B3,$E1,$14,$74,$CA,$F3 ;           COVERED WITH SPIKES ABOUT FOUR FEET TALL -
L3A19          fcb       $5F,$52,$45,$97,$7B,$82,$17,$44,$5E,$0E,$A1,$DB ;           YOU DON'T HAVE TIME TO MEASURE THEM EXACTLY.
L3A25          fcb       $9F,$C3,$9E,$5F,$BE,$E3,$16,$0B,$BC,$C5,$B5,$4F ;           
L3A31          fcb       $A1,$66,$B1,$FB,$17,$53,$BE,$63,$B9,$B5,$85,$84 ;           .
L3A3D          fcb       $14,$36,$A1,$59,$15,$23,$C6,$67,$66,$16,$BC,$46 ;           .
L3A49          fcb       $48,$8B,$18,$C7,$DE,$09,$15,$E6,$96,$9B,$15,$5B ;           .
L3A55          fcb       $CA,$8F,$BE,$56,$5E,$CF,$9C,$95,$5F,$2F,$C6,$82 ;           .
L3A61          fcb       $17,$5B,$61,$1B,$63,$06,$56,$DB,$E0 ;           .
L3A6A          fcb       $81                 ;         CommonCommand_81
L3A6B          fcb       $8C,$49             ;   Script number=8C size=042C
L3A6D          fcb       $1F                 ;       Command_1F_PRINT_MESSAGE
L3A6E          fcb       $47,$C7,$DE,$03,$15,$61,$B7,$74,$CA,$7B,$14,$E7 ;         YOU DISCOVER A DEEP DARK PIT WHICH EXTENDS
L3A7A          fcb       $59,$06,$A3,$35,$49,$E3,$16,$19,$BC,$85,$73,$07 ;         FROM THE NORTH TO THE SOUTH WALL. THE PIT IS
L3A86          fcb       $71,$3F,$D9,$4D,$98,$5C,$15,$DB,$9F,$5F,$BE,$99 ;         TOO BROAD TO JUMP.
L3A92          fcb       $16,$C2,$B3,$89,$17,$82,$17,$55,$5E,$36,$A1,$19 ;         .
L3A9E          fcb       $71,$46,$48,$56,$F4,$DB,$72,$96,$A5,$D5,$15,$89 ;         .
L3AAA          fcb       $17,$C4,$9C,$F3,$B2,$16,$58,$CC,$9C,$72,$C5,$2E ;         .
L3AB6          fcb       $8D,$20             ;   Script number=8D size=042C
L3AB8          fcb       $04                 ;       Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3AB9          fcb       $1E,$5F,$BE,$66,$17,$8F,$49,$4B,$5E,$CF,$B5,$DA ;         THE STATUE IS MUCH TOO HEAVY FOR YOU TO
L3AC5          fcb       $C3,$89,$17,$CA,$9C,$98,$5F,$48,$DB,$A3,$A0,$C7 ;         MOVE.
L3AD1          fcb       $DE,$89,$17,$71,$16,$7F,$CA ;         .
L3AD8          fcb       $8E,$3E             ;   Script number=8E size=042C
L3ADA          fcb       $04                 ;       Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3ADB          fcb       $3C,$7A,$C4,$D9,$06,$82,$7B,$84,$15,$96,$5F,$03 ;         UGH! WITH GREAT DIFFICULTY YOU MANAGE TO
L3AE7          fcb       $15,$93,$66,$2E,$56,$FB,$C0,$C7,$DE,$63,$16,$C9 ;         MOVE THE ALTAR AND YOU DISCOVER A SECRET
L3AF3          fcb       $97,$56,$5E,$CF,$9C,$4F,$A1,$82,$17,$43,$5E,$3B ;         PASSAGE.
L3AFF          fcb       $8E,$83,$AF,$33,$98,$C7,$DE,$03,$15,$61,$B7,$74 ;         .
L3B0B          fcb       $CA,$7B,$14,$A5,$B7,$76,$B1,$DB,$16,$D3,$B9,$BF ;         .
L3B17          fcb       $6C                 ;         .
L3B18          fcb       $8F,$07             ;   Script number=8F size=042C
L3B1A          fcb       $0D,$05             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=5
L3B1C          fcb       $08,$2B             ;         Command_08_COMPARE_OBJECT_TO_FIRST_NOUN object=2B(Passage
L3B1E          fcb       $00,$A5             ;         Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=A5
L3B20          fcb       $90                 ;         CommonCommand_90
L3B21          fcb       $90,$22             ;   Script number=90 size=042C
L3B23          fcb       $1F                 ;       Command_1F_PRINT_MESSAGE
L3B24          fcb       $20,$5F,$BE,$8E,$14,$54,$BD,$71,$16,$75,$CA,$AB ;         THE ALTAR MOVES BACK TO SEAL THE HOLE ABOVE
L3B30          fcb       $14,$8B,$54,$6B,$BF,$A3,$B7,$16,$8A,$DB,$72,$7E ;         YOU.
L3B3C          fcb       $74,$43,$5E,$08,$4F,$5B,$5E,$3F,$A1 ;         .
L3B45          fcb       $91,$37             ;   Script number=91 size=042C
L3B47          fcb       $0D,$35             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=53
L3B49          fcb       $1F                 ;         Command_1F_PRINT_MESSAGE
L3B4A          fcb       $30,$4B,$49,$C7,$DE,$DE,$14,$64,$7A,$C7,$16,$11 ;           AS YOU CLIMB OUT OF THE HOLE, IT SEEMS TO
L3B56          fcb       $BC,$96,$64,$DB,$72,$7E,$74,$B3,$63,$73,$7B,$A7 ;           MAGICALLY SEAL UP BEHIND YOU. 
L3B62          fcb       $B7,$4B,$94,$6B,$BF,$89,$91,$D3,$78,$13,$8D,$57 ;           .
L3B6E          fcb       $17,$33,$48,$D3,$C5,$6A,$4D,$8E,$7A,$51,$18,$DB ;           .
L3B7A          fcb       $C7                 ;           .
L3B7B          fcb       $00,$9F             ;         Command_00_MOVE_ACTIVE_OBJECT_TO_ROOM_AND_LOOK room=9F
L3B7D          fcb       $95                 ;         CommonCommand_95
L3B7E          fcb       $93,$09             ;   Script number=93 size=042C
L3B80          fcb       $0B,$07             ;       Command_0B_SWITCH size=07
L3B82          fcb       $0A,$36             ;         Command_0A_COMPARE_TO_PHRASE_FORM val=36 phrase="36: CLIMB IN    *          *       "
L3B84          fcb       $01                 ;         IF_NOT_JUMP address=3B86
L3B85          fcb       $94                 ;           CommonCommand_94
L3B86          fcb       $37                 ;         Command_0A_COMPARE_TO_PHRASE_FORM val=37 phrase="37: CLIMB OUT   *          *       "
L3B87          fcb       $01                 ;         IF_NOT_JUMP address=3B89
L3B88          fcb       $94                 ;           CommonCommand_94
L3B89          fcb       $94,$19             ;   Script number=94 size=042C
L3B8B          fcb       $1F                 ;       Command_1F_PRINT_MESSAGE
L3B8C          fcb       $17,$FF,$A5,$57,$49,$B5,$17,$46,$5E,$2F,$7B,$03 ;         PLEASE USE DIRECTIONS N,S,E, OR W.
L3B98          fcb       $56,$1D,$A0,$A6,$16,$3F,$BB,$11,$EE,$99,$AF,$2E ;         .
L3BA4          fcb       $95,$26             ;   Script number=95 size=042C
L3BA6          fcb       $0D,$24             ;       Command_0D_EXECUTE_LIST_WHILE_PASS size=36
L3BA8          fcb       $17,$36,$FF         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=36(Jungle) location=FF
L3BAB          fcb       $17,$29,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=29(Floor) location=00
L3BAE          fcb       $17,$2A,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=2A(Exit) location=00
L3BB1          fcb       $17,$2B,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=2B(Passage) location=00
L3BB4          fcb       $17,$2C,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=2C(Hole) location=00
L3BB7          fcb       $17,$2D,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=2D(Corridor) location=00
L3BBA          fcb       $17,$2E,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=2E(Corner) location=00
L3BBD          fcb       $17,$31,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=31(Hallway) location=00
L3BC0          fcb       $17,$34,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=34(Entrance) location=00
L3BC3          fcb       $17,$35,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=35(Tunnel) location=00
L3BC6          fcb       $17,$3A,$00         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=3A(Ceiling) location=00
L3BC9          fcb       $17,$3C,$1D         ;         Command_17_MOVE_OBJECT_TO_LOCATION object=3C(Object3C) location=1D
L3BCC          fcb       $96,$1A             ;   Script number=96 size=042C
L3BCE          fcb       $04                 ;       Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3BCF          fcb       $18,$5B,$BE,$65,$BC,$7B,$14,$41,$6E,$19,$58,$3B ;         THAT'S A GOOD WAY TO LOSE YOUR HAND!
L3BDB          fcb       $4A,$6B,$BF,$85,$8D,$5B,$5E,$34,$A1,$9B,$15,$31 ;         .
L3BE7          fcb       $98                 ;         .
L3BE8          fcb       $97,$19             ;   Script number=97 size=042C
L3BEA          fcb       $04                 ;       Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3BEB          fcb       $17,$43,$79,$C7,$DE,$D3,$14,$88,$96,$8E,$7A,$7B ;         IF YOU CAN FIND A MOUTH, I'M GAME!
L3BF7          fcb       $14,$C7,$93,$76,$BE,$BD,$15,$49,$90,$67,$48,$21 ;         .
L3C03          fcb       $98,$24             ;   Script number=98 size=042C
L3C05          fcb       $04                 ;       Command_04_PRINT_SYSTEM_OR_PLAYER_MESSAGE
L3C06          fcb       $22,$0F,$A0,$5F,$17,$46,$48,$66,$17,$D3,$61,$04 ;         ONE SMALL STEP FOR MANKIND, ONE GIANT LEAP
L3C12          fcb       $68,$63,$16,$5B,$99,$56,$98,$C0,$16,$49,$5E,$90 ;         FOR YOU!
L3C1E          fcb       $78,$0E,$BC,$92,$5F,$59,$15,$9B,$AF,$19,$A1 ;         .
; ENDOF 37FA

;##InputWordTables

; --- IGNORES --- Maybe for curse words. No words in this list and thus never used.
L3C29          fcb       $00,
;  
; --- VERBS ---   
L3C2A          fcb       $04,$52,$45,$41,$44,$01 ; READ     1
L3C30          fcb       $03,$47,$45,$54,$09 ; GET      9
L3C35          fcb       $05,$54,$48,$52,$4F,$57,$03 ; THROW    3
L3C3C          fcb       $06,$41,$54,$54,$41,$43,$4B,$04 ; ATTACK   4
L3C44          fcb       $04,$4B,$49,$4C,$4C,$04 ; KILL     4
L3C4A          fcb       $03,$48,$49,$54,$04 ; HIT      4
L3C4F          fcb       $05,$4E,$4F,$52,$54,$48,$05 ; NORTH    5
L3C56          fcb       $01,$4E,$05         ; N        5
L3C59          fcb       $05,$53,$4F,$55,$54,$48,$06 ; SOUTH    6
L3C60          fcb       $01,$53,$06         ; S        6
L3C63          fcb       $04,$45,$41,$53,$54,$07 ; EAST     7
L3C69          fcb       $01,$45,$07         ; E        7
L3C6C          fcb       $04,$57,$45,$53,$54,$08 ; WEST     8
L3C72          fcb       $01,$57,$08         ; W        8
L3C75          fcb       $04,$54,$41,$4B,$45,$09 ; TAKE     9
L3C7B          fcb       $04,$44,$52,$4F,$50,$0A ; DROP     10
L3C81          fcb       $03,$50,$55,$54,$0A ; PUT      10
L3C86          fcb       $06,$49,$4E,$56,$45,$4E,$54,$0B ; INVENT   11
L3C8E          fcb       $04,$4C,$4F,$4F,$4B,$0C ; LOOK     12
L3C94          fcb       $04,$47,$49,$56,$45,$0D ; GIVE     13
L3C9A          fcb       $05,$4F,$46,$46,$45,$52,$0D ; OFFER    13
L3CA1          fcb       $06,$45,$58,$41,$4D,$49,$4E,$0E ; EXAMIN   14
L3CA9          fcb       $06,$53,$45,$41,$52,$43,$48,$0E ; SEARCH   14
L3CB1          fcb       $04,$4F,$50,$45,$4E,$0F ; OPEN     15
L3CB7          fcb       $04,$50,$55,$4C,$4C,$10 ; PULL     16
L3CBD          fcb       $05,$4C,$49,$47,$48,$54,$11 ; LIGHT    17
L3CC4          fcb       $04,$42,$55,$52,$4E,$11 ; BURN     17
L3CCA          fcb       $03,$45,$41,$54,$12 ; EAT      18
L3CCF          fcb       $05,$54,$41,$53,$54,$45,$12 ; TASTE    18
L3CD6          fcb       $04,$42,$4C,$4F,$57,$13 ; BLOW     19
L3CDC          fcb       $06,$45,$58,$54,$49,$4E,$47,$14 ; EXTING   20
L3CE4          fcb       $05,$43,$4C,$49,$4D,$42,$15 ; CLIMB    21
L3CEB          fcb       $03,$52,$55,$42,$16 ; RUB      22
L3CF0          fcb       $04,$57,$49,$50,$45,$16 ; WIPE     22
L3CF6          fcb       $06,$50,$4F,$4C,$49,$53,$48,$16 ; POLISH   22
L3CFE          fcb       $04,$4C,$49,$46,$54,$1C ; LIFT     28
L3D04          fcb       $04,$57,$41,$49,$54,$1F ; WAIT     31
L3D0A          fcb       $04,$53,$54,$41,$59,$1F ; STAY     31
L3D10          fcb       $04,$4A,$55,$4D,$50,$20 ; JUMP     32
L3D16          fcb       $02,$47,$4F,$21     ; GO       33
L3D1A          fcb       $03,$52,$55,$4E,$21 ; RUN      33
L3D1F          fcb       $05,$45,$4E,$54,$45,$52,$21 ; ENTER    33
L3D26          fcb       $04,$50,$55,$53,$48,$10 ; PUSH     16
L3D2C          fcb       $04,$4D,$4F,$56,$45,$10 ; MOVE     16
L3D32          fcb       $04,$4B,$49,$43,$4B,$23 ; KICK     35
L3D38          fcb       $04,$46,$45,$45,$44,$24 ; FEED     36
L3D3E          fcb       $05,$53,$43,$4F,$52,$45,$28 ; SCORE    40
L3D45          fcb       $06,$53,$43,$52,$45,$41,$4D,$2B ; SCREAM   43
L3D4D          fcb       $04,$59,$45,$4C,$4C,$2B ; YELL     43
L3D53          fcb       $04,$51,$55,$49,$54,$2D ; QUIT     45
L3D59          fcb       $04,$53,$54,$4F,$50,$2D ; STOP     45
L3D5F          fcb       $05,$50,$4C,$55,$47,$48,$32 ; PLUGH    50
L3D66          fcb       $05,$4C,$45,$41,$56,$45,$2C ; LEAVE    44
L3D6D          fcb       $04,$50,$49,$43,$4B,$34 ; PICK     52
L3D73          fcb       $00,
;
; --- NOUNS ---
L3D74          fcb       $06,$50,$4F,$54,$49,$4F,$4E,$03 ; POTION   3
L3D7C          fcb       $03,$52,$55,$47,$06 ; RUG      6
L3D81          fcb       $04,$44,$4F,$4F,$52,$09 ; DOOR     9
L3D87          fcb       $04,$46,$4F,$4F,$44,$0C ; FOOD     12
L3D8D          fcb       $06,$53,$54,$41,$54,$55,$45,$0D ; STATUE   13
L3D95          fcb       $05,$53,$57,$4F,$52,$44,$0E ; SWORD    14
L3D9C          fcb       $06,$47,$41,$52,$47,$4F,$59,$0F ; GARGOY   15
L3DA4          fcb       $04,$52,$49,$4E,$47,$12 ; RING     18
L3DAA          fcb       $03,$47,$45,$4D,$13 ; GEM      19
L3DAF          fcb       $05,$4C,$45,$56,$45,$52,$16 ; LEVER    22
L3DB6          fcb       $06,$50,$4C,$41,$51,$55,$45,$18 ; PLAQUE   24
L3DBE          fcb       $05,$52,$55,$4E,$45,$53,$18 ; RUNES    24
L3DC5          fcb       $04,$53,$49,$47,$4E,$18 ; SIGN     24
L3DCB          fcb       $06,$4D,$45,$53,$53,$41,$47,$18 ; MESSAG   24
L3DD3          fcb       $06,$43,$41,$4E,$44,$4C,$45,$19 ; CANDLE   25
L3DDB          fcb       $04,$4C,$41,$4D,$50,$1B ; LAMP     27
L3DE1          fcb       $06,$43,$48,$4F,$50,$53,$54,$1E ; CHOPST   30
L3DE9          fcb       $04,$48,$41,$4E,$44,$1F ; HAND     31
L3DEF          fcb       $05,$48,$41,$4E,$44,$53,$1F ; HANDS    31
L3DF6          fcb       $04,$43,$4F,$49,$4E,$20 ; COIN     32
L3DFC          fcb       $04,$53,$4C,$4F,$54,$21 ; SLOT     33
L3E02          fcb       $05,$41,$4C,$54,$41,$52,$22 ; ALTAR    34
L3E09          fcb       $04,$49,$44,$4F,$4C,$23 ; IDOL     35
L3E0F          fcb       $06,$53,$45,$52,$50,$45,$4E,$24 ; SERPEN   36
L3E17          fcb       $05,$53,$4E,$41,$4B,$45,$24 ; SNAKE    36
L3E1E          fcb       $04,$57,$41,$4C,$4C,$25 ; WALL     37
L3E24          fcb       $05,$57,$41,$4C,$4C,$53,$25 ; WALLS    37
L3E2B          fcb       $04,$56,$49,$4E,$45,$26 ; VINE     38
L3E31          fcb       $05,$56,$49,$4E,$45,$53,$26 ; VINES    38
L3E38          fcb       $04,$47,$41,$54,$45,$27 ; GATE     39
L3E3E          fcb       $05,$47,$41,$54,$45,$53,$27 ; GATES    39
L3E45          fcb       $05,$47,$55,$41,$52,$44,$28 ; GUARD    40
L3E4C          fcb       $06,$47,$55,$41,$52,$44,$53,$28 ; GUARDS   40
L3E54          fcb       $04,$52,$4F,$4F,$4D,$2A ; ROOM     42
L3E5A          fcb       $05,$46,$4C,$4F,$4F,$52,$2B ; FLOOR    43
L3E61          fcb       $04,$45,$58,$49,$54,$2C ; EXIT     44
L3E67          fcb       $06,$50,$41,$53,$53,$41,$47,$2D ; PASSAG   45
L3E6F          fcb       $04,$48,$4F,$4C,$45,$2E ; HOLE     46
L3E75          fcb       $06,$43,$4F,$52,$52,$49,$44,$2F ; CORRID   47
L3E7D          fcb       $03,$42,$4F,$57,$31 ; BOW      49
L3E82          fcb       $05,$41,$52,$52,$4F,$57,$32 ; ARROW    50
L3E89          fcb       $06,$48,$41,$4C,$4C,$57,$41,$33 ; HALLWA   51
L3E91          fcb       $06,$43,$48,$41,$4D,$42,$45,$34 ; CHAMBE   52
L3E99          fcb       $05,$56,$41,$55,$4C,$54,$35 ; VAULT    53
L3EA0          fcb       $06,$45,$4E,$54,$52,$41,$4E,$36 ; ENTRAN   54
L3EA8          fcb       $06,$54,$55,$4E,$4E,$45,$4C,$37 ; TUNNEL   55
L3EB0          fcb       $06,$4A,$55,$4E,$47,$4C,$45,$38 ; JUNGLE   56
L3EB8          fcb       $06,$54,$45,$4D,$50,$4C,$45,$39 ; TEMPLE   57
L3EC0          fcb       $03,$50,$49,$54,$3A ; PIT      58
L3EC5          fcb       $06,$43,$45,$49,$4C,$49,$4E,$3B ; CEILIN   59
L3ECD          fcb       $00,
;
; --- ADJECTIVES ---
L3ECE          fcb       $00,
;
; --- PREPOSITIONS ---
L3ECF          fcb       $02,$54,$4F,$01     ; TO       1
L3ED3          fcb       $04,$57,$49,$54,$48,$02 ; WITH     2
L3ED9          fcb       $02,$41,$54,$03     ; AT       3
L3EDD          fcb       $05,$55,$4E,$44,$45,$52,$04 ; UNDER    4
L3EE4          fcb       $02,$49,$4E,$05     ; IN       5
L3EE8          fcb       $04,$49,$4E,$54,$4F,$05 ; INTO     5
L3EEE          fcb       $03,$4F,$55,$54,$06 ; OUT      6
L3EF3          fcb       $02,$55,$50,$07     ; UP       7
L3EF7          fcb       $04,$44,$4F,$57,$4E,$08 ; DOWN     8
L3EFD          fcb       $04,$4F,$56,$45,$52,$09 ; OVER     9
L3F03          fcb       $06,$42,$45,$48,$49,$4E,$44,$0A ; BEHIND   10
L3F0B          fcb       $06,$41,$52,$4F,$55,$4E,$44,$0B ; AROUND   11
L3F13          fcb       $02,$4F,$4E,$0C     ; ON       12
L3F17          fcb       $00,$,$F            ,$4E,$0C ; ON       12