| Routines

7C47: Restart the command list

Used by command lists 0xB6, 0xBE, 0xC0, 0xC2, 0xC4, 0xCC and 0xCE.
Input
H | Character number (0x98-0xA9)
7C47 | LD A,($7FF9) | Pick up the current lesson number (0x00-0x3F) from 7FF9
7C4A | LD E,A | Copy this to E
7C4B | LD B,$01 | We want to restart the command list for this character only
7C4D | LD D,$FE | Set E to the lesson identifier (0xE0-0xFF) from the main timetable; note that this will not be the identifier of the current lesson if the current lesson is a 'special' playtime - 0xF3, 0xF4 or 0xF5 - which is a bug
7C4F | LD A,(DE)
7C50 | LD E,A
7C51 | CALL $671B | Set this character's command list up for a restart
7C54 | JP $62A4 | Move to the first command in the command list