![]() |
Routines |
| Prev: 33527 | Up: Map | Next: 33741 |
|
Prints the hint for the player's current location. Reached through the special-key table at 33393, dispatched from Command_MatchASpecialKey.
|
||||
|
Test whose turn it is.
|
||||
| DisplayLocateHelpMessage | 33696 | LD A,(46826) | Jump to InglishPrepareTheClause_3 if *CurrentCharacter is not zero. | |
| 33699 | AND A | |||
| 33700 | JP NZ,InglishPrepareTheClause_3 | |||
| 33703 | PUSH HL | Save HL and IX, and point HL at 46183. | ||
| 33704 | PUSH IX | |||
|
Default message response should there be no match for the current location.
|
||||
| 33706 | LD HL,46183 | |||
|
Use the current location ID to look-up if there is a specific help message.
|
||||
| 33709 | LD A,(49451) | Using the current location number, see if there is a help message available for display. This is achieved by passing LocateHelpMessage to the Index ID Table routine. | ||
| 33712 | LD IX,33741 | |||
| 33716 | CALL IndexIdTable | |||
| 33719 | JR Z,DisplayLocateHelpMessage_Print | If there is no message, jump directly to DisplayLocateHelpMessage_Print to display the default message. | ||
|
Point to the specific help for the current location.
|
||||
| 33721 | LD L,(IX+1) | Read the low byte of this location's hint message address. | ||
| 33724 | LD H,(IX+2) | Read the high byte of this location's hint message address. | ||
|
Print the message.
|
||||
| DisplayLocateHelpMessage_Print | 33727 | LD A,1 | Write 1 to WaitCountdown. | |
| 33729 | LD (46849),A | |||
| 33732 | CALL PrintMessage | Call PrintMessage to print message. | ||
| 33735 | POP IX | Jump back to CommandDispatchAControl to dispatch a control. | ||
| 33737 | POP HL | |||
| 33738 | JP CommandDispatchAControl | |||
| Prev: 33527 | Up: Map | Next: 33741 |