5 ms·
Timing can only be as accurate and precise as the system that is running the emulation. Accuracy can be expressed in relation to limited bounds. For example, lo
by anikom15 4y ago
Timing can only be as accurate and precise as the system that is running the emulation. Accuracy can be expressed in relation to limited bounds. For example, loading software through a filesystem instead of a physical cartridge slot is inaccurate, but practically meaningless, so we don’t take that account in a metric for accuracy.
- squeaky-clean 4y agoUntil you find that one weird game that relied on some obscure or undefined behavior that only exists with the cartridge ;p Not a popular game, but the cartridge for Morita Shogi 64 had a built in RJ-11 jack and allowed online multiplayer. Plenty of SNES games included a SuperFX graphics coprocessor in the cartridge. Star Fox is probably the most popular example. SuperFX games were popular enough that it was quickly emulated successfully. But you can't treat the cartridge as just a file system abstraction on SNES.
- anikom15 4y agoWhether the cartridge contains ROM, a processor, or a connector, we can’t emulate the physical aspects of it (unless we use some kind of VR). Loading a file is a simulation of inserting a cartridge. There is fundamentally a difference. That’s what I was trying to get at. The question is if the difference matters. We usually can’t answer that. For example, we are finding that many video systems have to be displayed on the scanline level, rather than as a framebuffer, to be correct. Something like the Apple II will probably have to be done on the pixel clock level (at least). There always seem to be corner cases that require you to go ‘lower level’.
- alrlroipsp 4y agoYour observations is correct, but it also depends on other factors. The instruction timing and such fiddly low-level details is most visible in systems programmed in low level, such as older consoles. Modern systems tend to be programmed in higher level languages, which works much better to HLE (high-level emulate), since they tend to be programmed in a way that cares less/not at all about underlying hardware fiddly details. So when you are emulating the NES, these details matter way more than when you are emulating the Switch for example.
- deleted 4y ago[deleted]