![]() |
Routines |
| Prev: 41201 | Up: Map | Next: 41220 |
|
Used by the routines at FollowLinkPointer, CheckCharacterBeingProcessed, RecordResultCharacterScript, ProcessObjectPointer, DispatchCharacterScript, FindCharacterScriptEntry_StartSearch, FindCharacterSavedPointer and ProcessCharacterAttribute.
Takes the record linked just before this one, or reports that the link is empty.
|
||||||||||||||
|
This will be restored back into HL by the end of the routine.
|
||||||||||||||
| FetchObjectPointerFromStack | 41207 | PUSH HL | Read the pointer saved ahead of this record. | |||||||||||
| 41208 | LD L,(IX-2) | |||||||||||||
| 41211 | LD H,(IX-1) | |||||||||||||
| 41214 | LD A,L | Is HL zero?. | ||||||||||||
| 41215 | OR H | |||||||||||||
|
Pretty clever way of using the stack here.
|
||||||||||||||
| 41216 | EX (SP),HL | Swap the *SP with the object pointer, restoring HL to the original value. | ||||||||||||
| 41217 | POP IX | Restore the saved character record from the stack. | ||||||||||||
| 41219 | RET | Return. | ||||||||||||
| Prev: 41201 | Up: Map | Next: 41220 |