That's interesting. Perhaps it's an issue of having most things on the same thread? I usually plan for my final design versions to have essentially have the emulation, display, and input handling in their own respective little worlds.
I've seen most emulators on Github and other sources do...