![]()  | 
Routines | 
| Prev: 9D37 | Up: Map | Next: 9D97 | 
| 
 
Used by the routines at Action_Look, Action_Putdown, Action_Pickup, Action_Dir, Action_Talkto, Action_Shoot, Action_Inventory, 910E, Action_Attack, Action_Give, Action_Examine, ActionTie, ActionUntie, ActionBurn, ActionCapture, ActionClimbOut and A55F.
 
 | 
||||
| 9D44 | LD A,($B6FA) | If B6FA is 01 then return. | ||
| 9D47 | CP $01 | |||
| 9D49 | RET Z | |||
| 9D4A | INC A | Increase TODO by one and write it to B6FB. | ||
| 9D4B | LD ($B6FB),A | |||
| 9D4E | POP BC | |||
| 9D4F | RET | Return. | ||
| 
 
This entry point is used by the routines at Action_Attack and Action_Examine.
 
 | 
||||
| 9D50 | LD A,($B6E8) | A=CurrentObject. | ||
| 9D53 | PUSH IY | Stash IY, IX and HL on the stack. | ||
| 9D55 | PUSH IX | |||
| 9D57 | PUSH HL | |||
| 9D58 | CALL LocateObject | Call LocateObject. | ||
| 9D5B | LD B,(IX+$01) | B=Mother object. | ||
| 9D5E | LD IX,$C060 | Set IX to C060 which is 3 bytes less than the start of the object table due to the following line adding 0003 and moving us on to the first record. | ||
| 9D62 | CALL Step3ByteTable_Next | Call Step3ByteTable_Next. | ||
| 9D65 | JR Z,$9D91 | Jump to 9D91 if TODO. | ||
| 9D67 | CP (IY+$01) | Compare TODO, jump back to 9D62 if so. | ||
| 9D6A | JR NZ,$9D62 | |||
| 9D6C | BIT 1,(IY+$07) | |||
| 9D70 | JR Z,$9D8B | |||
| 9D72 | PUSH AF | |||
| 9D73 | LD (IY+$10),$00 | |||
| 9D77 | LD (IY+$01),$FF | |||
| 9D7B | RES 7,(IY+$07) | |||
| 9D7F | CALL $9EC7 | Call 9EC7. | ||
| 9D82 | LD HL,$B143 | HL="evaporate(s|d|ing|es)[0x15]". | ||
| 9D85 | CALL PrintMsg | Call PrintMsg. | ||
| 9D88 | POP AF | |||
| 9D89 | JR $9D62 | Jump to 9D62. | ||
| 9D8B | LD (IY+$01),B | |||
| 9D8E | JP $9D62 | Jump to 9D62. | ||
| 9D91 | POP HL | Restore HL, IX and IY from the stack. | ||
| 9D92 | POP IX | |||
| 9D94 | POP IY | |||
| 9D96 | RET | Return. | ||
| Prev: 9D37 | Up: Map | Next: 9D97 |