5 ms·
> I know that getting sound emulation perfectly right for the Genesis/MegaDrive has been a tricky issue over the years, even for Sega themselves I would defini
by CSMastermind 3y ago
> I know that getting sound emulation perfectly right for the Genesis/MegaDrive has been a tricky issue over the years, even for Sega themselves
I would definitely be curious to know why - the emulation of Genesis is notably behind most other video game consoles but I always assumed this was because of less interest and not because of any unique technical challenges.
- photonerd 3y agoMostly it’s due to the secondary chips being a quirky pain. It’s emulation was ahead of many others for a number of years in the late 90s & 2000s but hit a wall
- JohnBooty 3y agohit a wall Is there somewhere you'd recommend where I can read about the unsolved challenges of Genesis/Megadrive emulation?
- mikepavone 3y agoI disagree that things hit a wall, but there are a lot of smaller unknowns: - Work RAM refresh timing seems to be a bit variable and the exact logic for the timing has been unclear - The exact point when scroll values are latched from the internal scroll RAM when in full screen scroll mode is unknown - Precise cause of a CPU lockup when configuring a 68K->VDP DMA and then performing a normal access instead is also unknown - Certain details of sprite rendering that can show up in certain edge cases are also a bit unclear - The function of some of the VDP debug registers is unknown There's a lot more like that, but that hopefully gives you the gist. Nuked-MD-FPGA (and its C-based predecessor) will hopefully make a lot of those questions easier to answer since Verilog/C with a lot of unclear signal names is still a lot more easier to interpret than a die photo.
- JohnBooty 3y agoThanks so much for this. This is precisely the sort of nitty-gritty I was wondering about. I appreciate your time and your efforts in the emulation scene a lot. I looked but couldn't find much information on remaining games that still have emulation issues. This was about all I found: https://ares-emu.net/compatibility/21?status=3000 https://ares-emu.net/compatibility/21?status=3000 Last I looked into it, even Overdrive 2 was emulated pretty well...
- mikepavone 3y agoTo be clear, the stuff I posted about isn't generally important for running games. Getting the whole commercial game library running is a goal that was more or less passed a long time ago (excluding stuff that depends on obscure peripherals anyway). The things in that list are obstacles to approaching the platonic ideal of perfect emulation and are sometimes problems for things like verifying tool assisted speedruns or catching bugs in homebrew development. > This was about all I found: https://ares-emu.net/compatibility/21?status=3000 https://ares-emu.net/compatibility/21?status=3000 IIRC this game shipped with broken EEPROM code so it's a bit unclear if this is actually emulated incorrectly. Ares is really in great shape these days I do have a couple minor open compat bugs in BlastEm (my public issue tracker is sadly not up to date...), but I believe these are just normal bugs and not "we don't understand how this actually works" kind of things. EDIT: > Last I looked into it, even Overdrive 2 was emulated pretty well... Yes. In BlastEm there's a one-line glitch in one of the scenes I haven't managed to figure out. In Ares, there's a single effect that doesn't work (border dissolve after the "arcade" scene) and a 1-line glitch in the arcade scene. Both are only visible if you have overscan enabled.
- JohnBooty 3y agoThat is outstanding work. I can practically smell a physical MegaDrive burning somewhere every time I watch video of Overdrive 2 running on real hardware. My deepest respect and thanks for the work you've done on BlastEm!
- photonerd 3y ago
- andrewf 3y agochipsynth MD is a musician-targeted emulator of the MegaDrive's sound chips; one of the authors goes into the difficulty of recreating things at https://www.youtube.com/watch?v=VLxTHYGLKY0 https://www.youtube.com/watch?v=VLxTHYGLKY0 (From memory: they sourced a variant of the sound chip with digital output, characterized the DAC that way, then built a test suite to compare emulator behavior with a real chip)
- mikepavone 3y ago> I would definitely be curious to know why - the emulation of Genesis is notably behind most other video game consoles but I always assumed this was because of less interest and not because of any unique technical challenges. I guess it sort of depends on what you mean, but I don't think there are dramatic differences in emulation quality between the Genesis and other consoles of its generation. Admittedly, I am rather biased since I'm the author of one of those, but I think outside the add-ons Genesis emulation is in pretty good shape overall. Both Ares and BlastEm acquit themselves well on the most demanding demoscene prod[0] for the system and even Genesis Plus GX is fairly accurate for a more performance-focused emulator. Now none of those are perfect and I think it would probably be fair to say that they are less-perfect than Higan is/was for the SNES (though it wasn't perfect either), but I don't think the delta is huge. Now once you add the Sega CD and 32X things are definitely worse, but those combined systems are considerably more complicated to emulate than any of the base consoles of that era while also being much less popular. [0] https://www.pouet.net/prod.php?which=69648 https://www.pouet.net/prod.php?which=69648
- thristian 3y agoOne of the reasons is that there's like half a dozen different hardware revisions of the original Genesis/Mega Drive, and Sega simplified the sound hardware quite a bit over the years, changing its tone and the relative volume of the different sound sources. You can record a genuine Mega Drive, show it to somebody who grew up owning a different model, and they'll complain about how inaccurate the emulation is.
- Fonzyk 3y ago>I would definitely be curious to know why - the emulation of Genesis is notably behind most other video game consoles Not sure where you are getting this from but I think that's far from true. For years we had Kega Fusion which was able to run most (if not all) commercial games without any issues and was the pioneer of accurate Genesis sound emulation. Then we have had emulators like Genesis Plus GX with better accuracy and close to 100% compatibility with all licensed and unlicensed games for quite a few years now. A little more recently, we have Blastem then Ares emulators with devs more focused on improving accuracy for those interested in getting all test ROMs passing in their emus. Sure it isn't the NES emulator scene where you have have like hundreds of emulators to choose from but how many of them are accurate/compatible enough? Comparing to other systems from same time area (SNES, Neo Geo, PC Engine, etc), I would say Sega 8-bit and 16-bit fans have pretty much similar choices than others. What is sure is that I don't know much system with cycle-accurate C and Verilog emulators based on chips die analysis. That alone shows how much Sega hardware has a dedicated base of talented people still reverse-engineering and documenting it after all these years, even when existing emulators are already good enough to play the majority of games without noticeable issues.