3 ms·
> I think it would "only" have to be cycle-accurate between specific events, e.g. access to specific registers. That’s correct — but one of those events is ext
by NobodyNada 5y ago
> I think it would "only" have to be cycle-accurate between specific events, e.g. access to specific registers.
That’s correct — but one of those events is external interrupts (from the graphics, audio, or cartridge hardware), which complicates things a bit since your “checkpoints” can be anywhere in the code rather than just at a specific set of register accesses.
You could work around this by tracking cycles per-basic-block while running transpiled code, and falling back to cycle-accurate software emulation when you get close to a hardware interrupt.