Page 1 of 6
MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 5:14 am
by Rahzadan
Sorg's release notes state:
"This is a replica of real hardware (unlike functionally similar Genesis core)"
I thought the very definition of replicating a console in FPGA was that the actual logic and chips on the motherboard of the console are replicated accurately? Is the original Genesis core not a functional replica of a Genesis?
Are the other cores not replicas of real hardware? I guess one example comes to mind: On the SNES core, Rendering Ranger R2 requires a ROM patch to work, but on original hardware, it doesn't. If the SNES core were a "replica of real hardware", I assume it WOULD work unpatched since it does on real hardware?
Just trying to understand the difference. Played a few games on this new core and it feels identical to the existing Genesis core!
EDIT: Also to note, if you go to the Nuked-MD GitHub project page, it says "Cycle accurate Mega Drive core". I thought the other cores (well, most of them) were also cycle accurate? (Isn't that kinda the point of an FPGA implementation?)
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 5:38 am
by rhester72
Outside of NeoGeo, none of the other cores are replicas of original hardware at a transistor level. They replicate functionality. Cycle accuracy, just like any other form of emulation, is dependent on the relative accuracy of the implementation. FPGA isn't magic pixie dust, it's another way of solving the same problem (with primary advantages in massive scale parallelism like the Amiga chipset, not necessarily accuracy).
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 5:59 am
by Bas
There are many ways to write up something that works sufficiently equivalent to a Genesis console to pass as the real thing. It's only by following the actual real hardware for the full 100% that you get an exact replica that's bug-for-bug identical.
The SNES core is a pretty good SNES replacement but not 100% identical to Nintendo's design. Nuked-MD is much closer to Sega's design than the previous Genesis core.
FPGA's aren't magic. As a developer you still have to do a lot of work to replicate existing hardware faithfully. Even then there are compromised to be made. The parallellism that an FPGA enables in contrast to the serial way software emulation works enables closer replicas with less effort but they're not a given.
It's a bit like translating ancient Greek to English. You can get very close but you'll never get it 100% identical.
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 8:03 am
by mineral55
I'd love to see a side-by-side comparison of the sound with this new core compared to the original one and other implementations of megadrive/genesis. Judging from my untrained ear I think I can notice clearer sounding FM synthesis in the few games I've tested and the output is much higher as well. I guess it'll get run by MDfourier and we'll have some interesting conversation on all this happening soon. I'm excited!
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 10:10 am
by Armakuni
The older Genesis core is based on observed behaviour rather than the actual hardware, similar to software emulators
- I5MeDoD.jpeg (31.85 KiB) Viewed 26896 times
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 10:12 am
by LamerDeluxe
Original schematics of chips are often not available. One option is to open up a chip (which is a tricky and specialized job), then photograph it using a microscope and painstakingly translate it to the FPGA by hand. I imagine the last part could theoretically be sped up by using AI at some point in the future.
One problem with this method is that an FPGA is not the same as the original chip, this will lead to timing problems. This is what Sorgelig has put a lot of effort into fixing with the Neo Geo core recently and IIRC with this core as well.
The advantage is that your FPGA version will be really close to the original hardware.
Or, as mentioned, you could measure hardware signals with a scope, study or create a software emulation and then adjust the behavior of your FPGA version in response to problems happening with the software being run on it. This can get really close to the original hardware, but will probably have a different electronic structure. I imagine adding enhancements, that the original hardware doesn't have, is easier with this method.
Also as already noted, the main advantage of the MiSTer is its very low latency, as the simulation will run parallel, like the original hardware. Another big advantage is the low power usage that the MiSTer needs, to achieve very high quality emulation of a system.
Personally, I find it fascinating that whole systems (sometimes rare and expensive) are running in hardware on my tiny MiSTer setup.
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 11:09 am
by Stinky
Could someone link the old RBF? The update nuked it and it's gone from the repos, I just want to do some A/B.
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 11:15 am
by LamerDeluxe
Stinky wrote: ↑Sat Sep 02, 2023 11:09 am
Could someone link the old RBF? The update nuked it and it's gone from the repos, I just want to do some A/B.
Huh, this core replaced the old one already? That is odd. I wonder if it has all of the original options already.
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 11:19 am
by zakk4223
The Genesis RBF is still in the distribution repo. You sure you don't have a names.txt that is causing 'Genesis' to show up as "Mega Drive"?
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 11:29 am
by Stinky
zakk4223 wrote: ↑Sat Sep 02, 2023 11:19 am
The Genesis RBF is still in the distribution repo. You sure you don't have a names.txt that is causing 'Genesis' to show up as "Mega Drive"?
Hah yes, of course it was a layer8! Thanks!
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 11:56 am
by pbsk8
now we just have to wait for paprium rom
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 1:31 pm
by bazza_12
I was just about to ask if the Nuked-MD core will now replace the Genesis core, is there any point in the Genesis core being available?
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 2:48 pm
by ryanghappy
Hey, I'm fascinated by this discussion of observed behavior vs circuit-level sameness.
Does Nuked-MD take up less FPGA space or is it roughly taking up the same amount. I ask this because I know that the other genesis core needed to be split because there's no way to fit Sega CD and 32x all together on that core. Any chance of the nuked MD fitting everything eventually in? Do people actually want that, or is splitting it up still preferred?
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 5:48 pm
by softtest9
Why should it not be available? You don't have to use it.
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 6:25 pm
by MrSniffles
pbsk8 wrote: ↑Sat Sep 02, 2023 11:56 am
now we just have to wait for paprium rom
The comments for that on Kickstarter are... not good
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 7:50 pm
by bazza_12
softtest9 wrote: ↑Sat Sep 02, 2023 5:48 pm
Why should it not be available? You don't have to use it.
i wasn't starting an argument, i was just wondering if this is the best, most cycle accurate then is there a point to having the genesis core?
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 8:42 pm
by rhester72
bazza_12 wrote: ↑Sat Sep 02, 2023 7:50 pm
i wasn't starting an argument, i was just wondering if this is the best, most cycle accurate then is there a point to having the genesis core?
The 'best' argument gets me every time. What's better, red or green? Answer: It depends.
In this case, maybe someone doesn't want CRAM interference, for example - they should choose the older core. Not everyone considers strict adherence to accuracy 'best'.
You'll see this argument a lot more if there's ever a transistor-accurate SNES core. Enhancements like MSU-1 will be extraordinarily unlikely on such a core, and debates will rage. The great news is that you don't have to choose - both cores are available.
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 10:39 pm
by mineral55
rhester72 wrote: ↑Sat Sep 02, 2023 8:42 pm
Not everyone considers strict adherence to accuracy 'best'.
Isn't it the better baseline if the point of MiSTer is to recreate these old platforms? I'm always worried that a less accurate core may run games incorrectly that relied on hardware bugs (although then there is the problem of what one might consider the canonical chipset/revision of what's being recreated) but I do think there's an argument to be made for MiSTer to eventually make Nuked-MD-FPGA its primary Genesis/MegaDrive core and anyone who cares more about the featureset of the original core can select an option in update-all to include it if they want.
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sat Sep 02, 2023 11:56 pm
by bootsector
MiSTer SNES core is also cycle accurate
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sun Sep 03, 2023 1:01 am
by rhester72
bootsector wrote: ↑Sat Sep 02, 2023 11:56 pm
MiSTer SNES core is also cycle accurate
There's a HUGE difference between cycle counts and implementation/integration accuracy.
The Amiga core is cycle accurate in 68000 mode, yet still has flaws in the custom chipset implementation.
I'm not even sure why people continue calling out cycle accuracy in the Nuked core...pretty sure the older core was also "cycle-accurate". That means something VERY specific, and is actually wholly unrelated to emulation accuracy.
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sun Sep 03, 2023 1:45 am
by bootsector
rhester72 wrote: ↑Sun Sep 03, 2023 1:01 am
bootsector wrote: ↑Sat Sep 02, 2023 11:56 pm
MiSTer SNES core is also cycle accurate
There's a HUGE difference between cycle counts and implementation/integration accuracy.
The Amiga core is cycle accurate in 68000 mode, yet still has flaws in the custom chipset implementation.
I'm not even sure why people continue calling out cycle accuracy in the Nuked core...pretty sure the older core was also "cycle-accurate". That means something VERY specific, and is actually wholly unrelated to emulation accuracy.
Please open a github issue and ask srg320 to correct the README.md of the SNES core then!
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sun Sep 03, 2023 2:15 am
by rhester72
I don't need to. There's already an issue open for Rendering Ranger: R2, which very nicely makes my point.
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sun Sep 03, 2023 2:16 am
by mario64
bazza_12 wrote: ↑Sat Sep 02, 2023 1:31 pm
I was just about to ask if the Nuked-MD core will now replace the Genesis core, is there any point in the Genesis core being available?
Hopefully not. Nuked-MD is missing some features that the Genesis core has such as Adaptive Composite Blend.
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sun Sep 03, 2023 2:17 am
by bootsector
rhester72 wrote: ↑Sun Sep 03, 2023 2:15 am
I don't need to. There's already an issue open for Rendering Ranger: R2, which very nicely makes my point.
The game that have issues on real hardware as well? That doesn’t prove any point.
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sun Sep 03, 2023 2:18 am
by rhester72
Sorry, I just read the README after the fact...and I'm confused what's confusing you. It uses a cycle-accurate CPU model, and it's a replica. Just like a lot of cores. Hell, I'm pretty sure the legacy Genesis core also uses a cycle-accurate 68000 model. Perhaps you're confused about what 'replica' means? It's NOT based on a transistor-level decap (and neither is any other SNES implementation ever, up to this point...not even bsnes/Higan).
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sun Sep 03, 2023 9:19 am
by pcfreak324
What is even more confusing is that we now have three Master System cores with different features and compatibility, that all use different rom folders.
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sun Sep 03, 2023 10:15 am
by softtest9
The SNES core is based on hardware documentation and observed behavior. Observed behavior often means using test roms as well as games and comparing results with real hardware.
Nuked-MD, like the NeoGeo core, is based on decapping the actual chips, taking die photos and then translating that to FPGA code. Both methods can certainly lead to a very high degree of accuracy (even cycle accuracy), but the latter is closer to a complete replica. The topic is nuanced further by the fact that you can make mistakes when translating die photos into FPGA code, hence there are still bugs in the NeoGeo core.
rhester72 wrote: ↑Sat Sep 02, 2023 8:42 pm
You'll see this argument a lot more if there's ever a transistor-accurate SNES core. Enhancements like MSU-1 will be extraordinarily unlikely on such a core, and debates will rage. The great news is that you don't have to choose - both cores are available.
It is entirely possible to mix and match components. If we look at real hardware, there is the SD2SNES/FXPak Pro cartridge with MSU-1 support. There's another cartridge for the MegaDrive that has MegaCD support.
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sun Sep 03, 2023 10:29 am
by capitaineflam25
pcfreak324 wrote: ↑Sun Sep 03, 2023 9:19 am
What is even more confusing is that we now have three Master System cores with different features and compatibility, that all use different rom folders.
Thanks a lot for this summary.
I appreciate having the choice between different, but it's difficult to choose when you don't know those specifities.
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sun Sep 03, 2023 11:41 am
by cursedverses
Once the core is complete (if not already) is the core going to stay true to the original or are these extra features (eg Adaptive Composite Blend) going to be added on top? I personally love the idea of a true-to-the-original core, warts and all.
Maybe if the old core was made available on a separate repository, there could be a way to choose which core to download via a preference in the downloader script?
Re: MiSTer Nuked-MD Mega Drive Core
Posted: Sun Sep 03, 2023 12:14 pm
by LamerDeluxe
rhester72 wrote: ↑Sun Sep 03, 2023 1:01 am
bootsector wrote: ↑Sat Sep 02, 2023 11:56 pm
MiSTer SNES core is also cycle accurate
There's a HUGE difference between cycle counts and implementation/integration accuracy.
The Amiga core is cycle accurate in 68000 mode, yet still has flaws in the custom chipset implementation.
I'm not even sure why people continue calling out cycle accuracy in the Nuked core...pretty sure the older core was also "cycle-accurate". That means something VERY specific, and is actually wholly unrelated to emulation accuracy.
Yeah, sadly the timing of the Amiga core is not accurate yet, even in 68000 mode. I made a ticket for rendering bugs in Hybris a long time ago. That game uses a lot of racing-the-beam tricks, with a lot of sprite multiplexing. So it makes a good timing test.