Prev: 57997 Up: Map Next: 58191
58094: Record The Result In The Room Display
Used by the routine at TestCharacterAgainstRoom.
Records the room display, the graphics parameter and the current character, then stores the script position.
RecordResultRoomDisplay 58094 PUSH DE Record the room display parameter.
58095 LD D,A
58096 LD A,B
58097 LD (41012),A
58100 LD A,C
58101 LD (41013),A Record the room graphics parameter.
58104 LD A,(41014) Record the current character.
58107 PUSH AF
58108 LD A,D
58109 LD (41014),A
Find character.
58112 CALL FindCharacter Call FindCharacter to find the character.
58115 LD L,(IY+1) Read the word at IY+1-2 into HL and take 2.
58118 LD H,(IY+2)
58121 LD B,2
58123 CALL AllocateMemoryAndStoreCharacter Call AllocateMemoryAndStoreCharacter to allocate memory and store character.
58126 POP AF
58127 LD (41014),A Record the current character and store the low byte of DE at IY+1.
58130 POP DE
58131 LD (IY+1),E
58134 LD (IY+2),D Store the high byte of DE at IY+2.
58137 OR %00000001 Reset the zero flag.
58139 RET Return.
Reached through the display record at 58152, dispatched by DispatchLookedUpHandlerThird.
58140 LD IX,(40979) Read the current object.
58144 BIT 5,(IX+6) Go to ParseInputNumber_ReturnZero if bit 5 of the current object's byte at offset 6 is clear.
58148 JP Z,ParseInputNumber_ReturnZero
58151 RET Return.
58152 DEFB 106,16,28,227 Display record read by ProcessDisplayRecord: flags 106 value 16 handler 58140.
Run by 51812 after the display record at 58152.
58156 LD HL,26678 Take the message at 26672+6.
58159 CALL PrintTextAndHandleControlCharacters Call PrintTextAndHandleControlCharacters to print the message.
58162 LD IX,(40979) Read the current object.
58166 LD L,(IX+9)
58169 LD H,(IX+10) Read the high byte of the text pointer.
58172 CALL ShiftTextPointer Call ShiftTextPointer to print the value in HL, then call PrintNewline to print a new line.
58175 CALL PrintNewline
58178 OR %00000001 Reset the zero flag.
58180 RET Return.
Reached through the display record at 58224, dispatched by DispatchLookedUpHandlerThird.
58181 CALL ReadCharacterTextPointers Return if this character has no room graphic.
58184 RET Z
58185 LD A,37 Write 37 to the saved character.
58187 LD (41011),A
58190 RET Return.
Prev: 57997 Up: Map Next: 58191