(I really didn't understand some of your sentences for their grammar)
For my routine, they're just reading other sets of "direction data" in ROM, and the routine is very long because otherwise there will be so many hooks for so many movements.
I don't know why the bike doesn't work. If you want to get the player direction, you can go and see the function at 0x805C6C4 (special 0x11F).