![]() |
Routines |
| Prev: 53796 | Up: Map | Next: 53833 |
|
Used by the routines at CharacterAction_BasilPhipps, CheckObjectInCharacterLocation, CheckCharacterState, PointToObjectAttributeByte, CalculateObjectPointerOffset, ProcessEntryWithCounter, ProcessDisplayAction, CheckObjectLocationMatch, GetObjectLocation, CheckObjectMother, GetObjectAttribute, GetObjectMotherID, TestObjectHasSpecialDescription, ProcessObjectAttribute_C8C6, SetObjectPointers, ProcessObjectDisplayEntry, ProcessCharacterDisplay_CBC2, ProcessLocationTokenDisplay, CheckCharacterIDRange, IsCharacterTheChinaMan, PrintObjectDescription, PrintLocationExits, 56587, 56629, PrintObjectDescriptionText, 57292, 57402, 57723, 58905 and UpdateObjectLocation.
Looks up an object in the objects table and returns a pointer to it's data structure.
|
||||||||||||
| FetchObjectDataPointer | 53815 | LD IX,35695 | IX=Table_Objects. | |||||||||
| 53819 | CALL SearchThreeByteTable | Call SearchThreeByteTable. | ||||||||||
|
This will be restored back into HL by the end of the routine.
|
||||||||||||
| 53822 | PUSH HL | Stash HL on the stack temporarily. | ||||||||||
|
Pretty clever way of using the stack here.
|
||||||||||||
| 53823 | LD L,(IX+1) | Load the object pointer into HL. | ||||||||||
| 53826 | LD H,(IX+2) | |||||||||||
| 53829 | EX (SP),HL | Swap the *SP with the object pointer, restoring HL to the original value. | ||||||||||
| 53830 | POP IX | Restore the object pointer into IX (from the stack). | ||||||||||
| 53832 | RET | Return. | ||||||||||
| Prev: 53796 | Up: Map | Next: 53833 |