colinvella wrote:
Dwedit wrote:
Nestopia fixes NES headers and ignores the specified header.
Does that mean that Nestopia identifies specific game roms and switches to some other mapper? What should the proper mapper be for Datach DBZ in this case?
Some clarification: Nestopia doesn't actually *fix* NES headers, it simply has a gigantic database of ROM CRCs and SHA1s that act as "overrides" for some aspects of what the NES header may contain. These are either bad dumps, old dumps, or correct dumps that have incorrect headers (some may have been correct at the time of dumping, but as emulation became more precise, this showed a new mapper was needed, etc.).
This database is what Options -> Database -> Internal refers to. You can uncheck the box and it'll disable doing any kind of overrides. (Options -> Database -> External allows you to refer to a replacement NstDatabase.xml, i.e. possibly one with fixes or is newer than the version that came with Nestopia (keep reading)).
You can always check what Nestopia "decides" to use (for mapper, capabilities, etc.) by toggling that checkbox and looking at View -> Image Info.
The database itself
is an .xml file called NstDatabase.xml (warning: web page very large + lots of post-processing done via JS/CSS on GitHub, so page may take a long time to load). I suggest opening up the ROM, getting the CRC out of View -> Image Info, then grepping/searching for that CRC (case-insensitive) in the .xml file; you can double check to make sure it's the correct match by examining the SHA1 too. It should become apparent what the "overrides" are simply by looking at it (in most cases; in other, more obscure cases, it isn't immediately apparent without looking deeper at the code).
So whenever talking about a game/ROM, it's basically mandatory at this point that you give a CRC, SHA1, or MD5 along with the filename. Just saying "Herpy Derpy Adventure Butts 4" isn't accurate enough -- case in point.
Odds are the ROM you have may be old/have "outdated" headers that a newer GoodNES set has since fixed/addressed. I myself just went through the pain of using GoodNES on a romset, repairing something like over 1100 mistakes (between years 2006 and 2016).
This thread is a good example of what happens, particularly
this post of mine.