Damn, I was way wrong. I found the memory address. It is 7E0158, there are 255 (unless there is some pattern) variables, not 9. To test this,
load up this save state. Press (and hold) the up button when the memory address reaches a certain number (any number will do). Load up the same state again and wait for the memory address to cycle through 1 time. Then press the up button when it hits the same number that you press up for on the first time. You will notice that Chrono's sprite will reach the exact same subpixel as before. Pressing up at different frames will result in different sprite positions for Crono, but as long as you press up at the same time on the same number in this memory address the position of Crono's sprite will always be the same.
edit:
It makes perfect sense now. Every time you move Crono the memory address resets to 1. When you stop movement, it starts to cycle again.