![]() |
Routines |
Prev: 63404 | Up: Map | Next: 63446 |
Bit | Set by | Meaning if set |
---|---|---|
0 | 23887 | ERIC is jumping |
1 | 23907, 28305, 29574 | Examine the status flags at 32749 |
2 | 62094, 62423, 64460 | ERIC is sitting or lying down |
3 | 57637 | ERIC is bending over, dropping a stinkbomb etc. |
4 | 24133 | ERIC is writing on a blackboard |
5 | 24247 | ERIC is firing, hitting or kissing |
6 | 62815, 64460 | MR WACKER is expelling ERIC |
7 | 26175, 29896 | ERIC has been knocked over |
Bit | Set by | Meaning if set |
---|---|---|
0 | 29462 | ERIC is riding the bike |
1 | 23907 | ERIC is standing on a plant or plant pot |
2 | 64316 | ERIC is stepping off a plant, a plant pot, or the stage |
3 | 64259, 64316 | ERIC is falling and will land on his feet |
4 | 29194, 29278, 64077 | ERIC is falling and will not land on his feet |
5 | 64259 | ERIC has stepped out of the top-floor window |
6 | 29194 | ERIC is falling from the saddle of the bike |
7 | 29278 | ERIC is standing on the saddle of the bike |
H | 127 |
63405 | LD L,237 | HL=32749 (ERIC's other 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 other 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 below (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 routine address from the table entry into DE |
63442 | INC H | |
63443 | LD D,(HL) | |
63444 | EX DE,HL | Transfer this routine address to HL |
63445 | JP (HL) | Jump to this address |
32763 | 32749 | ||||||
---|---|---|---|---|---|---|---|
Bit | E | D=211 | D=212 | Address | D=213 | D=214 | Address |
0 | 67 | 99 | 93 | 23907 | 94 | 114 | 29278 |
1 | 66 | 0 | 0 | 0 | 60 | 251 | 64316 |
2 | 65 | 226 | 242 | 62178 | 3 | 251 | 64259 |
3 | 64 | 69 | 225 | 57669 | 160 | 251 | 64416 |
4 | 63 | 111 | 94 | 24175 | 204 | 251 | 64460 |
5 | 62 | 173 | 94 | 24237 | 51 | 93 | 23859 |
6 | 61 | 0 | 0 | 0 | 35 | 93 | 23843 |
7 | 60 | 142 | 242 | 62094 | 22 | 115 | 29462 |
Prev: 63404 | Up: Map | Next: 63446 |