| Routines

EBA0: Make a character move down

Used by the routines at ECD7, F5AC and F600 to attempt to move a character in the following ways, in the given order, depending on the directions that are available at the character's current location:
Move | Condition
--- | ---
Down | There is a step going down in the direction the character is facing
Turn round | There is a step going down in the other direction
Forwards | There is no step going down
Up | The character can only step up from his current location
Input
H | Character number (0xD7-0xE6)
EBA0 | LD DE,$A418 | Point DE at the direction indicator table at A418
This entry point is used by the routine at EB9B with DE=A218.
EBA3 | CALL $EB85 | Make the character stand up if he's lying down
EBA6 | RET C | Return if the character was lying down
EBA7 | BIT 7,(HL) | Is the character facing left?
EBA9 | JR Z,$EBD0 | Jump if so
EBAB | INC D | DE=A318 or A518
EBAC | JR $EBD0 | Move the character and update the SRB accordingly