3 ms·
This has a couple advantages over an emulator though. Debugging a game in an emulator has the disadvantage that the emulator may not be 100% accurate to origina
by NobodyNada 4y ago
This has a couple advantages over an emulator though. Debugging a game in an emulator has the disadvantage that the emulator may not be 100% accurate to original hardware, so if the behavior you're trying to debug is the result of an unknown or undocumented hardware quirk, it may not be reproducible in an emulator. This was extremely common during the early days of NES emulation -- many homebrew games created during this time period are not playable on original hardware or modern emulators, because they relied on behaviors that were implemented inaccurately in early emulators.
You're much less likely to be in this situation today, because (as you said) modern emulators are very accurate. But this is only because people spend enormous amounts of time reverse-engineering the original hardware and running test cases to find the weird quirks and obscure corner cases. For these investigations, some kind of debug cartridge could be invaluable.
Another reason for debugging on original hardware is simple convenience. Speedrunners usually prefer original hardware (or FPGA recreations) because emulators introduce input latency (which is very noticeable and makes a huge difference for high-level players). I speedrun Super Metroid for the SNES, and I often load the game into a debugging emulator to investigate strange behaviors or glitches. It's kind of annoying to have to switch from my nice FPGA setup that I use most of the time, to my laggy computer emulator that I use when I want to investigate something. But the community has already developed hardware and software that supports reading and writing the console's memory in realtime over USB, and this functionality is available on the most widely-used flashcarts. Adding support for simple breakpoints and a hex memory editor/disassembler would be a fun and relatively straightforward software project, and a nice quality-of-life improvement, so it's something I'm hoping to work on when I have the time.
- jf 4y agoCan you send me an email? (See my profile on HN) I’ll be working on an SNES related project soon that touches on speed running and would like to ask you more about your setup.
- rsync 4y agoI will contribute $$$ funds to anyone working on something like this ... I've meant to post a bounty for this kind of hardware project in the past ...