![]() |
Routines |
| Prev: 9924 | Up: Map | Next: 9970 |
|
Used by the routine at DOOR.
Neither this nor DRAW_SPRITE_COLOURS does any drawing. Each loads the address of its own table of eight routines and falls into the tail of DISPATCH_ACTOR, which indexes the table and jumps through the JP (HL) the tape left at $5CB0 -- the same machinery that picks an actor's handler, reused for picking how a sprite gets put on the screen.
The mode is the top three bits of the actor's +$05, so the low five bits are free for other flags -- PLAYER_AT_DOOR reads bit 6 of the same byte as a door's facing.
|
||||||||||||
| DRAW_SPRITE_PIXELS | 9962 | LD HL,PIXEL_DRAWERS | One table of eight... | |||||||||
|
This entry point is used by the routine at DRAW_SPRITE_COLOURS.
|
||||||||||||
| DRAW_WITH_MODE | 9965 | PUSH BC | ||||||||||
| 9966 | LD A,B | ...indexed by the top three bits of B. | ||||||||||
| 9967 | RLCA | |||||||||||
| 9968 | RLCA | |||||||||||
| 9969 | RLCA | |||||||||||
| 996A | AND $07 | |||||||||||
| 996C | LD C,A | |||||||||||
| 996D | JP DISPATCH_TYPE_C | Into the dispatcher's tail, which does the lookup and the jump. | ||||||||||
| Prev: 9924 | Up: Map | Next: 9970 |