![]() |
Routines |
| Prev: 31178 | Up: Map | Next: 31229 |
| 31188 | CALL 31229 | Get ERIC's coordinates in DE | ||
| 31191 | LD A,D | A=ERIC's y-coordinate | ||
| 31192 | PUSH HL | |||
| 31193 | LD HL,30608 | Point HL at the skool region table for the top floor (see 30636) | ||
| 31196 | CP 155 | Is ERIC on the top floor? | ||
| 31198 | JR Z,31214 | Jump if so | ||
| 31200 | CP 162 | Set the zero flag if ERIC's on the middle floor | ||
| 31202 | LD L,156 | HL=30620 (skool region data table for the middle floor; see 30636) | ||
| 31204 | JR Z,31214 | Jump if ERIC's on the middle floor | ||
| 31206 | LD L,166 | HL=30630 (skool region data table for the bottom floor; see 30636) | ||
| 31208 | CP 169 | Is ERIC on the bottom floor? | ||
| 31210 | JR Z,31214 | Jump if so | ||
| 31212 | POP HL | |||
| 31213 | RET | Return with the zero flag reset | ||
|
ERIC is on the top, middle or bottom floor (i.e. not on a staircase).
|
||||
| 31214 | LD A,E | A=ERIC's x-coordinate | ||
| 31215 | CP (HL) | Find the region identifier (0-7) for ERIC's current location | ||
| 31216 | INC HL | |||
| 31217 | INC HL | |||
| 31218 | JR NC,31215 | |||
| 31220 | DEC HL | HL now points at the region identifier | ||
| 31221 | LD A,(32756) | Pick up the current lesson descriptor from 32756 | ||
| 31224 | AND 7 | Keep only the room bits (bits 0-2) | ||
| 31226 | CP (HL) | Is ERIC where he should be? | ||
| 31227 | POP HL | |||
| 31228 | RET | Return with the zero flag set if so | ||
| Prev: 31178 | Up: Map | Next: 31229 |