![]() |
Routines |
| Prev: 51593 | Up: Map | Next: 51647 |
|
Used by the routines at ProcessObjectDisplayLogic and ProcessObjectDisplayWithPointer.
Draws the record, and tells the script to continue when the draw works. A non-zero return means the script step succeeded.
|
||||
| ProcessObjectDisplayEntry | 51606 | PUSH IY | Call ProcessDisplayRecord to draw this record. | |
| 51608 | PUSH BC | |||
| 51609 | CALL ProcessDisplayRecord | |||
| 51612 | POP BC | |||
| 51613 | POP IY | Jump ahead to ProcessObjectDisplayEntry_Next if bit 7 of the display record is set. | ||
| 51615 | JR C,ProcessObjectDisplayEntry_Next | |||
| 51617 | JP Z,ProcessDisplayWithLocationCheck | Go to ProcessDisplayWithLocationCheck if drawing the object display matched. | ||
| 51620 | OR %00000001 | Reset the zero flag. | ||
| 51622 | RET | Return. | ||
|
Read the pointer at the currently processed character command position at CurrentCharacter_CommandPosition, then take a count of 1 then read the character record from the currently processed character timetable pointer at CurrentCharacter_TimetablePointer.
|
||||
| ProcessObjectDisplayEntry_Next | 51623 | PUSH HL | Read the currently processed character command position and count 1 for run object display entry, then call AllocateMemoryAndStoreCharacter to allocate memory and store character. | |
| 51624 | PUSH BC | |||
| 51625 | LD HL,(40921) | |||
| 51628 | LD B,1 | |||
| 51630 | CALL AllocateMemoryAndStoreCharacter | |||
| 51633 | POP BC | Read the current character timetable pointer. | ||
| 51634 | POP HL | |||
| 51635 | LD IX,(40923) | |||
| 51639 | LD (IX+1),L | Store the moved marker. | ||
| 51642 | LD (IX+2),H | Store H as the location, set the carry. | ||
| 51645 | SCF | |||
| 51646 | RET | Return. | ||
| Prev: 51593 | Up: Map | Next: 51647 |