A callable function to advance a frame would be nice. This would allow for easier comparison if you stalled the update() function until after the frame advance is complete.
This would be best integrated with two functions
AdvanceFrame( Integer Amount )
-Advances the game a set number of frame, pausing on the game after X frames, if Amount is blank, advances 1 frame. All scripts are stalled until the frame advance is finished. Calls OnFrameAdvance() after Amount frames pass.
OnFrameAdvance()
-Default Action would be to call the Script's OnUpdate.
This would allow for more scripts to do post action comparision, and restrict the testable frames.
Functions that could work well with this would be.
PauseGame()
-Pauses the Emulator. Could be called by AdvanceFrame() when it calls OnFrameAdvance()
UnpauseGame()
-Unpauses the Emulator
Just for ability for scripts to pause the emulator, start a testing script, get the results, and then unpause the emulator. But the first two function could be written to do this.