![]() |
Routines |
| Prev: FB3C | Up: Map | Next: FBCC |
| FBA0 | LD HL,$7FF3 | 7FF3 holds ERIC's main action timer | ||
| FBA3 | DEC (HL) | Is it time to deal with ERIC yet? | ||
| FBA4 | RET NZ | Return if not | ||
| FBA5 | EX DE,HL | |||
| FBA6 | LD HL,$D202 | Point HL at byte 0x02 of ERIC's buffer | ||
| FBA9 | INC (HL) | Increment ERIC's y-coordinate temporarily (for testing purposes) | ||
| FBAA | CALL $774F | Has ERIC reached the floor yet? | ||
| FBAD | JR NZ,$FBC4 | Jump if not | ||
| FBAF | CP $11 | This is the y-coordinate of the bottom floor | ||
| FBB1 | DEC HL | Point HL at byte 0x01 of ERIC's buffer | ||
| FBB2 | JR Z,$FBB9 | Jump if ERIC has landed on the bottom floor | ||
| FBB4 | LD A,(HL) | A=ERIC's x-coordinate | ||
| FBB5 | CP $5F | This is the x-coordinate of the rightmost end of the boys' skool | ||
| FBB7 | JR NC,$FBC3 | Jump if ERIC is outside the boys' skool (and therefore cannot land on the top or middle floors) | ||
| FBB9 | EX DE,HL | Reset all of ERIC's status flags at 7FED and 7FFB, indicating that ERIC has landed safely | ||
| FBBA | LD L,$ED | |||
| FBBC | LD (HL),$00 | |||
| FBBE | LD L,$FB | |||
| FBC0 | LD (HL),$00 | |||
| FBC2 | EX DE,HL | |||
| FBC3 | INC L | L=0x02 | ||
| FBC4 | DEC (HL) | Restore ERIC's y-coordinate (we've finished testing) | ||
| FBC5 | CALL $61B4 | Update the SRB for ERIC's current animatory state and location | ||
| FBC8 | INC D | Increment ERIC's y-coordinate (i.e. make him drop one level) | ||
| FBC9 | JP $F317 | Update ERIC's location, update the SRB, and reset ERIC's main action timer at 7FF3 to 6 | ||
| Prev: FB3C | Up: Map | Next: FBCC |