Prev: E28D Up: Map Next: E34F
E2EE: 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 E2EE PUSH DE Record the room display parameter.
E2EF LD D,A
E2F0 LD A,B
E2F1 LD ($A034),A
E2F4 LD A,C
E2F5 LD ($A035),A Record the room graphics parameter.
E2F8 LD A,($A036) Record the current character.
E2FB PUSH AF
E2FC LD A,D
E2FD LD ($A036),A
Find character.
E300 CALL FindCharacter Call FindCharacter to find the character.
E303 LD L,(IY+$01) Read the word at IY+01-02 into HL and take 02.
E306 LD H,(IY+$02)
E309 LD B,$02
E30B CALL AllocateMemoryAndStoreCharacter Call AllocateMemoryAndStoreCharacter to allocate memory and store character.
E30E POP AF
E30F LD ($A036),A Record the current character and store the low byte of DE at IY+01.
E312 POP DE
E313 LD (IY+$01),E
E316 LD (IY+$02),D Store the high byte of DE at IY+02.
E319 OR %00000001 Reset the zero flag.
E31B RET Return.
Reached through the display record at E328, dispatched by DispatchLookedUpHandlerThird.
E31C LD IX,($A013) Read the current object.
E320 BIT 5,(IX+$06) Go to ParseInputNumber_ReturnZero if bit 5 of the current object's byte at offset 06 is clear.
E324 JP Z,ParseInputNumber_ReturnZero
E327 RET Return.
E328 DEFB $6A,$10,$1C,$E3 Display record read by ProcessDisplayRecord: flags 6A value 10 handler E31C.
Run by CA64 after the display record at E328.
E32C LD HL,$6836 Take the message at 6830+06.
E32F CALL PrintTextAndHandleControlCharacters Call PrintTextAndHandleControlCharacters to print the message.
E332 LD IX,($A013) Read the current object.
E336 LD L,(IX+$09)
E339 LD H,(IX+$0A) Read the high byte of the text pointer.
E33C CALL ShiftTextPointer Call ShiftTextPointer to print the value in HL, then call PrintNewline to print a new line.
E33F CALL PrintNewline
E342 OR %00000001 Reset the zero flag.
E344 RET Return.
Reached through the display record at E370, dispatched by DispatchLookedUpHandlerThird.
E345 CALL ReadCharacterTextPointers Return if this character has no room graphic.
E348 RET Z
E349 LD A,$25 Write 25 to the saved character.
E34B LD ($A033),A
E34E RET Return.
Prev: E28D Up: Map Next: E34F