And this is necessary if you need to emulate something like a Commodore 64 because there were so many "unsupported hardware features" used in commercial games that if you don't emulate the VIC-II (graphics) chip exactly how it worked at cycle, scanline and register level, a bunch of software will spectacularly break.
If you look back at how 8-bit computers and consoles were initially emulated, it was often using brute force approach to emulate the entire system at a per cycle level - based on the fastest clock in that system.This is basically as good as it gets as long as you have detailed documentation about how the CPU, all of the chips, the RAM and buses operate. Click to expand.I'm not an expert but I have done some crude emulation work and I think it depends very much on the target system and the approach taken.