Occasionally the CPU/timing loop gets confused and results in significant slowdown of emulation and it gets wedged indefinitely in this state. In the wedged slow state it appears to be executing only one 65c02 cycle before nanosleep()ing.
I have experienced this issue few times around save/restore functionality in the latest Android build. It is recoverable by restarting the app and the subsequent state restoration does not seem to be affected.
Possible testing/discovery scenarios:
Rapid and repeatedly apply save/restore codepaths
Apply save/restore codepaths at edge cases of the CPU loop
What happens if Android/Linux clock "goes back" while running emulator?
Occasionally the CPU/timing loop gets confused and results in significant slowdown of emulation and it gets wedged indefinitely in this state. In the wedged slow state it appears to be executing only one 65c02 cycle before nanosleep()ing.
I have experienced this issue few times around save/restore functionality in the latest Android build. It is recoverable by restarting the app and the subsequent state restoration does not seem to be affected.
Possible testing/discovery scenarios: