| Routines

5EC7: 'H' pressed - hit

The address of this routine is found in the table of keypress handling routines at E550. It is called from the main loop at F6EA when 'H' is pressed.
5EC7 | CALL $6E50 | Is ERIC on a staircase?
5ECA | RET C | Return if so
5ECB | LD A,$08 | 0x08: ERIC raising his fist
5ECD | CALL $5EB7 | Adjust ERIC's animatory state, update the SRB, and return to 5ED0 (below) when it's time to deal with ERIC again
5ED0 | LD HL,$D200 | Point HL at byte 0x00 of ERIC's buffer
5ED3 | LD A,(HL) | A=ERIC's animatory state
5ED4 | RRCA | Is ERIC raising his fist (A=0x08/0x88)?
5ED5 | JP NC,$7820 | If so, raise ERIC's fist fully now and check for victims
5ED8 | LD A,$61 | Message 0x61: DON'T HIT YOUR MATES
5EDA | CALL $F898 | Make any nearby teachers give ERIC lines
5EDD | LD A,$08 | 0x08: ERIC lowering his fist
This is where the routine at 5EE8 ought to enter:
5EDF | CALL $5EB7 | Adjust ERIC's animatory state, update the SRB, and return to 5EE2 (below) when it's time to deal with ERIC again
This entry point is used by the routine at 5F1C.
5EE2 | XOR A | A=0 (prepare to clear all status flags)
5EE3 | JP $5D75 | Clear all of ERIC's status flags now that he's finished firing, hitting or kissing, update his animatory state and update the SRB