Routines
 Prev: 6CAE Up: Map Next: 6CEE
6CAF: 'S' pressed - sit/stand
 The address of this routine is found in the table of keypress handling routines at 6800. It is called from the main loop at 6767 when 'S' is pressed. 6CAF LD HL,\$7FFB Flip bit 7 of ERIC's status flags at 7FFB 6CB2 LD A,(HL) 6CB3 XOR \$80 6CB5 LD (HL),A 6CB6 LD H,\$AC 0xAC=ERIC 6CB8 RLCA Is ERIC sitting now? 6CB9 JR C,\$6CC3 Jump if so 6CBB CALL \$6214 Update the SRB for ERIC's current animatory state 6CBE AND \$80 A=animatory state of ERIC standing up 6CC0 JP \$61B0 Update ERIC's animatory state and update the SRB ERIC is sitting now - on the floor, the stairs, or a chair? 6CC3 CALL \$6214 Update the SRB for ERIC's current animatory state 6CC6 LD B,A B=ERIC's animatory state 6CC7 CALL \$6648 Is ERIC on a staircase? 6CCA JR Z,\$6CD8 Jump if not ERIC is on a staircase. 6CCC LD A,E A=ERIC's x-coordinate 6CCD CP \$30 Set the carry flag if ERIC's on the left side of the skool 6CCF LD A,\$85 0x85=ERIC sitting down facing right 6CD1 JR C,\$6CD5 Jump if ERIC is on a staircase on the left side of the skool 6CD3 LD A,\$05 0x05=ERIC sitting down facing left 6CD5 JP \$61B0 Update ERIC's animatory state and update the SRB ERIC is not on a staircase. 6CD8 CP \$A9 Is ERIC on the bottom floor? 6CDA JR Z,\$6CE6 Jump if so 6CDC BIT 7,B Is ERIC facing right? 6CDE JR NZ,\$6CE6 Jump if so 6CE0 CALL \$6BF1 This should be CALL 6BF2 - is ERIC beside a chair? 6CE3 JP Z,\$6B7D Seat him if so 6CE6 LD A,B A=0x06 or 0x86 (ERIC sitting on the floor) 6CE7 AND \$80 6CE9 ADD A,\$06 6CEB JP \$61B0 Update ERIC's animatory state and update the SRB
 Prev: 6CAE Up: Map Next: 6CEE