![]() |
Routines |
| Prev: C61D | Up: Map | Next: C68D |
|
Used by the routine at MOVE_PLAYER.
First adds the nudge in +$0E and +$0F, which an arch leaves to steer the player onto its middle line (ARCH_NUDGE_TO_CENTRE), to the U and V steps, and clears it; then adds 3 in the direction of the facing, through WALK_STEP_TBL. So the nudge only acts while he walks.
The last three instructions are a jump through a table of four addresses by the facing of the object at IX; ARCH_NUDGE_TO_CENTRE uses it too.
|
||||||||
| CALC_PLYR_DUV | C66A | LD A,(IX+$09) | The U and V steps plus the nudge | |||||
| C66D | ADD A,(IX+$0E) | |||||||
| C670 | LD (IX+$09),A | |||||||
| C673 | LD A,(IX+$0A) | |||||||
| C676 | ADD A,(IX+$0F) | |||||||
| C679 | LD (IX+$0A),A | |||||||
| C67C | XOR A | The nudge is used up | ||||||
| C67D | LD (IX+$0E),A | |||||||
| C680 | LD (IX+$0F),A | |||||||
| C683 | LD BC,WALK_STEP_TBL | The table of steps | ||||||
|
This entry point is used by the routine at ARCH_NUDGE_TO_CENTRE.
|
||||||||
| DISPATCH_ON_FACING | C686 | CALL GET_SPRITE_DIR | Jump to the entry for the facing (the main loop's own dispatch at START does the rest) | |||||
| C689 | LD L,A | |||||||
| C68A | JP JUMP_TO_TBL_ENTRY | |||||||
| Prev: C61D | Up: Map | Next: C68D |