![]() |
Routines |
| Prev: 58094 | Up: Map | Next: 58255 |
|
Used by the routine at RecordResultRoomDisplay.
Looks up the character being processed and compares its text pointer with the display pointer.
|
||||
| ReadCharacterTextPointers | 58191 | LD A,(41014) | Go to ReadCharacterTextPointers_HandBack if no object carries this id. | |
| 58194 | CALL ScanObjects | |||
| 58197 | JR Z,ReadCharacterTextPointers_HandBack | |||
| 58199 | CALL ReadTextPointerLowByte | Call ReadTextPointerLowByte to read the text pointer, then ReadSourceDisplayPointer to read the display pointer. | ||
| 58202 | CALL ReadSourceDisplayPointer | |||
| 58205 | AND A | Jump ahead to ReadCharacterTextPointers_HandBack if HL is below DE. | ||
| 58206 | SBC HL,DE | |||
| 58208 | JR C,ReadCharacterTextPointers_HandBack | |||
| 58210 | OR %00000001 | Reset the zero flag. | ||
| 58212 | RET | Return. | ||
|
Hands the following step back to the caller and reports that the test failed.
|
||||
| ReadCharacterTextPointers_HandBack | 58213 | LD HL,58218 | Hand back the address of the following step. | |
| 58216 | XOR A | Clear A. | ||
| 58217 | RET | Return. | ||
| 58218 | LD HL,26687 | Jump back to PrintTextAndHandleControlCharacters to print this message. | ||
| 58221 | JP PrintTextAndHandleControlCharacters | |||
| 58224 | DEFB 102,29,69,227 | Display record read by ProcessDisplayRecord: flags 102 value 29 handler 58181. | ||
| 58228 | CALL ReadCharacterTextPointers | Call ReadCharacterTextPointers to read the character being processed. | ||
| 58231 | CALL StoreShiftedTextPointer | Call StoreShiftedTextPointer to bring the next bit through. | ||
| 58234 | LD A,(41013) | Go to ReadCharacterTextPointers_Succeed if no object carries this id. | ||
| 58237 | CALL ScanObjects | |||
| 58240 | JR Z,ReadCharacterTextPointers_Succeed | |||
| 58242 | CALL ReadTextPointerLowByte | Call ReadTextPointerLowByte to read the text pointer, then ReadSourceDisplayPointer to read the display pointer. | ||
| 58245 | CALL ReadSourceDisplayPointer | |||
| 58248 | ADD HL,DE | Move the pointer on by the length, then call StoreShiftedTextPointer to store the shifted text pointer. | ||
| 58249 | CALL StoreShiftedTextPointer | |||
| ReadCharacterTextPointers_Succeed | 58252 | OR %00000001 | Reset the zero flag. | |
| 58254 | RET | Return. | ||
| Prev: 58094 | Up: Map | Next: 58255 |