![]() |
Routines |
| Prev: E087 | Up: Map | Next: E0C4 |
|
Used by the routines at CUT_STEP_PLUS_V and CUT_STEP_MINUS_V.
As HIT_BOXES_U, but testing U first and V second, so that the overlap it returns is in V: for the steps in V (CUT_STEP_PLUS_V, CUT_STEP_MINUS_V).
|
||||||||||||||||||
| HIT_BOXES_V | E0A0 | CALL PLACE_IN_CELL | Find the cell's type and the object's place in it | |||||||||||||||
| E0A3 | LD BC,BOX_TABLE | IY = the type's list of boxes | ||||||||||||||||
| E0A6 | CALL TABLE_WORD | |||||||||||||||||
| E0A9 | PUSH HL | |||||||||||||||||
| E0AA | POP IY | |||||||||||||||||
| HIT_BOXES_V_0 | E0AC | LD A,(IY+$00) | A 0 ends the list: nothing hit, carry clear | |||||||||||||||
| E0AF | AND A | |||||||||||||||||
| E0B0 | RET Z | |||||||||||||||||
| E0B1 | CALL OVERLAP_U | Overlapping this box in U? | ||||||||||||||||
| E0B4 | JR NC,HIT_BOXES_V_1 | |||||||||||||||||
| E0B6 | CALL OVERLAP_V | ...and in V: then return carry, with the overlap in V | ||||||||||||||||
| E0B9 | RET C | |||||||||||||||||
| HIT_BOXES_V_1 | E0BA | INC IY | The next box | |||||||||||||||
| E0BC | INC IY | |||||||||||||||||
| E0BE | INC IY | |||||||||||||||||
| E0C0 | INC IY | |||||||||||||||||
| E0C2 | JR HIT_BOXES_V_0 | |||||||||||||||||
| Prev: E087 | Up: Map | Next: E0C4 |