Prev: 31998 Up: Map Next: 32021
32000: Get the identifier for ERIC's location
Used by the routines at 32021, 32032 and 62094. 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 25554 for a description of the location identifiers.
32000 CALL 25534 D=ERIC's y-coordinate (or the y-coordinate of the floor he's closest to if his feet are not on the floor)
32003 LD BC,47419 B=185; C=59
32006 CALL 25557 Collect the identifier for ERIC's location (0-8) in A
32009 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.
32010 LD A,E A=ERIC's x-coordinate
32011 SUB 48 Return with A=0 (forbidden zone) and the carry flag set if E>=48 (ERIC must be on the stage, or a staircase he's not allowed on)
32013 CP 192
32015 SBC A,A
32016 INC A
32017 SCF
32018 RET Z
32019 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)
32020 RET
Prev: 31998 Up: Map Next: 32021