Routines |
Prev: 63404 | Up: Map | Next: 63446 |
Used by the routine at 63210. Deals with ERIC when any of the bits at 32763 (ERIC's primary status flags) are set, indicating that ERIC is doing something other than standing or walking:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63405 | LD L,237 | HL=32749 (ERIC's secondary status flags) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63407 | BIT 5,(HL) | Has ERIC stepped out of the top-floor window? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63409 | JR Z,63418 | Jump if not | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63411 | LD A,(53760) | A=ERIC's animatory state | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63414 | CP 134 | 134: Is ERIC lying on his back, facing right? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63416 | JR NZ,63431 | Jump if not | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63418 | LD L,251 | HL=32763 (ERIC's status flags) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63420 | BIT 6,(HL) | Is MR WACKER expelling ERIC? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63422 | RET NZ | Return if so (ERIC is incapacitated) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63423 | BIT 1,(HL) | Bit 1 at 32763 is set if we need to look at 32749 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63425 | LD D,211 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63427 | JR Z,63433 | Jump unless we need to look at 32749 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63429 | LD L,237 | HL=32749 (ERIC's secondary status flags) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63431 | LD D,213 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63433 | LD A,(HL) | Copy the contents of 32763 or 32749 to A | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Now D=211 and A=(32763) if bit 1 at 32763 is reset; otherwise D=213 and A=(32749).
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63434 | LD E,68 | Point DE at the appropriate entry in the table of handler routine address LSBs (at 54076 or 54588), depending on which bit of A is set | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63436 | DEC E | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63437 | RRCA | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63438 | JR NC,63436 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63440 | EX DE,HL | Transfer the table entry address to HL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63441 | LD E,(HL) | Collect the handler routine address from the table entry into DE | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63442 | INC H | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63443 | LD D,(HL) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63444 | EX DE,HL | Transfer this handler routine address to HL | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
63445 | JP (HL) | Jump to the handler routine |
Prev: 63404 | Up: Map | Next: 63446 |