| Routines

F7DF: Make ANGELFACE stalk HAYLEY

The address of this continual subcommand routine is placed into bytes 0x17 and 0x18 of ANGELFACE's buffer by command list 0x2C. Sets ANGELFACE's destination to match HAYLEY's, presumably so he has a better chance of knocking her out with a random punch.
Input
H | 0xCF (ANGELFACE)
F7DF | LD DE,$D11D | Point DE at byte 0x1D of HAYLEY's buffer
F7E2 | LD A,(DE) | Pick this up in A
F7E3 | RRCA | Is HAYLEY's command list due to be restarted?
F7E4 | JR C,$F800 | Jump if so
F7E6 | LD E,$04 | Pick up the MSB of the routine address of the current command in HAYLEY's command list
F7E8 | LD A,(DE)
F7E9 | CP $64 | Is it the routine at 6464 (go to a location)?
F7EB | JR NZ,$F800 | Jump if not
F7ED | LD DE,($D105) | Copy the coordinates of HAYLEY's destination from bytes 0x05 and 0x06 of HAYLEY's buffer to DE
F7F1 | LD ($E5E2),DE | Place these coordinates directly into command list 0x2C
F7F5 | LD L,$04 | Pick up the MSB of the routine address of the current command in ANGELFACE's command list
F7F7 | LD A,(HL)
F7F8 | CP $64 | Is it the routine at 6464 (go to a location)?
F7FA | JR NZ,$F800 | Jump if not
F7FC | LD ($CF05),DE | Copy HAYLEY's destination into bytes 0x05 and 0x06 of ANGELFACE's buffer (i.e. make it his destination too)
F800 | JP $77F2 | Continue into 77F2 (make ANGELFACE hit now and then)