Prev: 7CFE Up: Map Next: 7D15
7D00: Get the identifier for ERIC's location
Used by the routines at 7D15, 7D20 and F28E. Returns with the carry flag set if ERIC's on the stage or a forbidden staircase (though this flag is ignored by the callers), and the location identifier (0-8) in A. See the routine at 63D2 for a description of the location identifiers.
7D00 CALL $63BE D=ERIC's y-coordinate (or the y-coordinate of the floor he's closest to if his feet are not on the floor)
7D03 LD BC,$B93B B=0xB9; C=0x3B
7D06 CALL $63D5 Collect the identifier for ERIC's location (0-8) in A
7D09 RET NC Return if ERIC's on the top, middle or bottom floor
ERIC's not on the top, middle or bottom floor. He must be on a staircase or the assembly hall stage.
7D0A LD A,E A=ERIC's x-coordinate
7D0B SUB $30 Return with A=0 (forbidden zone) and the carry flag set if E>=0x30 (ERIC must be on the stage, or a staircase he's not allowed on)
7D0D CP $C0
7D0F SBC A,A
7D10 INC A
7D11 SCF
7D12 RET Z
7D13 ADD A,A Otherwise return with A=2 and the carry flag reset (ERIC's on one of the staircases at the far left of the boys' skool)
7D14 RET
Prev: 7CFE Up: Map Next: 7D15