Over on Stardot, Chris Evans aka scarybeasts has published a work-in-progress emulator that uses just-in-time compilation to deliver very high performance: 10GHz equivalent 6502 speed on a 3GHz x86, for example, or 3GHz 6502 on a 2GHz x86.
It's been tested on many programs including software protection and custom tape loaders, so certainly handles the usual hazards of self-modifying code. It includes a replay facility and a 6502-level debugger.
"The -fast flag is nice for BASIC testing. It runs the CPU as fast as possible while ticking the timers and video hardware at wall clock speed"
See the threads:
Announcement: New emulator: beebjit
Update and some timings: New beebjit release: v0.9.1
From the announcement:
Quote:
It's an open source project, hosted on GitHub.
The README goes into a broad overview
I did a technical blog post overview of how the JIT works, here.
The README goes into a broad overview
I did a technical blog post overview of how the JIT works, here.