Routines |
Prev: 5E44 | Up: Map | Next: 5E6F |
5E45 | LD H,$D2 | 0xD2=ERIC | ||
5E47 | CALL $6755 | Collect info about the board ERIC's standing at (if any) | ||
5E4A | RET C | Return if ERIC's not standing at a blackboard | ||
5E4B | LD HL,$7FD8 | Copy the blackboard identifier (0x54, 0x5A, 0x60, 0x66 or 0x6C) from B to 7FD8 | ||
5E4E | LD (HL),B | |||
5E4F | DEC L | While ERIC is writing on the board, 7FD7 will be used to store the ASCII code of the last character written; initialise this with something other than 0x0D (ENTER) | ||
5E50 | LD (HL),L | |||
5E51 | LD L,B | Point HL at the first byte of the blackboard's buffer, which usually holds the number of the next clean pixel column | ||
5E52 | LD (HL),$01 | ERIC will start writing at pixel column 1 (regardless of what's already been written on the board) | ||
5E54 | INC L | A=number of the character who last wrote on this board, or 0 if it's clean | ||
5E55 | LD A,(HL) | |||
5E56 | LD (HL),$D2 | Signal: ERIC wrote on this board | ||
5E58 | LD B,$04 | There are 4 digits or letters in the bike and storeroom combinations | ||
5E5A | CPL | A=0x80 if the board is clean, 0x00 otherwise | ||
5E5B | AND $80 | |||
5E5D | INC L | Prepare 4 spaces in bytes 2-5 of the blackboard buffer for combination letters/numbers, with bit 7 set if the board is clean | ||
5E5E | LD (HL),A | |||
5E5F | DJNZ $5E5D | |||
5E61 | LD L,$FB | HL=7FFB (ERIC's status flags) | ||
5E63 | LD (HL),$10 | Set bit 4: ERIC is writing on a blackboard | ||
This entry point is used by the routine at 5E6F.
|
||||
5E65 | LD H,$D2 | 0xD2=ERIC | ||
5E67 | CALL $61B4 | Update the SRB for ERIC's current animatory state | ||
5E6A | OR $07 | A=0x07/0x87: ERIC with his arm up (as if writing on a board) | ||
5E6C | JP $F317 | Update ERIC's animatory state and location and update the SRB |
Prev: 5E44 | Up: Map | Next: 5E6F |