![]() |
Routines |
Prev: 28484 | Up: Map |
|
|||||||
28576 | CALL 28240 | Check whether ERIC is on a staircase | |||||
28579 | LD L,0 | Point HL at byte 0 of ERIC's buffer | |||||
28581 | JR C,28650 | Jump if ERIC's on a staircase | |||||
28583 | BIT 7,(HL) | Check the 'direction' bit of ERIC's animatory state | |||||
28585 | LD A,D | A=ERIC's y-coordinate | |||||
28586 | JR Z,28625 | Jump if ERIC is facing left | |||||
28588 | CP 3 | Is ERIC on the top floor? | |||||
28590 | JR Z,28616 | Jump if so | |||||
28592 | CP 10 | Is ERIC on the middle floor? | |||||
28594 | JR Z,28611 | Jump if so | |||||
28596 | CP 14 | Is ERIC on the assembly hall stage? | |||||
28598 | JP NZ,28449 | Move ERIC one space to the right if not | |||||
28601 | LD A,E | A=ERIC's x-coordinate | |||||
28602 | CP 80 | 80=top of the stairs leading from the stage to the bottom floor | |||||
28604 | JR NZ,28598 | Jump if ERIC is not here | |||||
This entry point is used by the routines at 28315, 28436 and 28460.
|
|||||||
28606 | LD B,D | B=ERIC's post-midstride y-coordinate (down a stair) | |||||
28607 | INC B | ||||||
28608 | JP 28516 | Move ERIC one space right or left too | |||||
ERIC is on the middle floor, facing right.
|
|||||||
28611 | LD A,E | A=ERIC's x-coordinate | |||||
28612 | CP 15 | 15=top of the stairs leading down to the bottom floor at the far left of the boy's skool | |||||
28614 | JR 28604 | Move ERIC down a stair if he's here | |||||
ERIC is on the top floor, facing right.
|
|||||||
28616 | LD A,E | A=ERIC's x-coordinate | |||||
28617 | CP 84 | 84=top of the stairs just outside the head's study | |||||
28619 | JR Z,28606 | Move ERIC down a stair if he's here | |||||
28621 | CP 179 | 179=top of the stairs leading down to the middle floor in the girls' skool | |||||
28623 | JR 28604 | Move ERIC down a stair if he's here | |||||
ERIC is facing left.
|
|||||||
28625 | CP 10 | Is ERIC on the middle floor? | |||||
28627 | JR Z,28641 | Jump if so | |||||
28629 | CP 3 | Is ERIC on the top floor? | |||||
28631 | JP NZ,28473 | Move ERIC one space left if not | |||||
28634 | LD A,E | A=ERIC's x-coordinate | |||||
28635 | CP 26 | 26=top of the stairs leading down from the Revision Library | |||||
28637 | JR NZ,28631 | Move ERIC one space left if he's not here | |||||
28639 | JR 28606 | Otherwise move him down a stair | |||||
ERIC is on the middle floor, facing left.
|
|||||||
28641 | LD A,E | A=ERIC's x-coordinate | |||||
28642 | CP 85 | 85=top of the stairs leading down to the stage | |||||
28644 | JR Z,28606 | Move ERIC down a stair if he's here | |||||
28646 | CP 183 | 183=top of the stairs leading down to the bottom floor in the girls' skool | |||||
28648 | JR 28637 | Move ERIC down a stair if he's here | |||||
ERIC is on a staircase.
|
|||||||
28650 | XOR (HL) | Reset the carry flag if ERIC is facing the wrong way to descend the stairs | |||||
28651 | RLA | ||||||
28652 | JP NC,28216 | Turn ERIC round if he's facing the wrong way | |||||
28655 | JR 28606 | Otherwise move him down a stair |
Prev: 28484 | Up: Map |