5 ms·
Because arcade consoles differ a lot from direct-to-consumer consoles, where the hardware configuration is much less uniform than, say, a Game Boy Advance which
by vore 4y ago
Because arcade consoles differ a lot from direct-to-consumer consoles, where the hardware configuration is much less uniform than, say, a Game Boy Advance which has the same parts in the console and the parts in the cartridge are mostly the same from game to game.
The article itself alludes to this:
It’s easy to think of game cartridges as just being a single thing, but arcade game boards typically have a large number of chips. Why’s that? It’s partly technical; specific chips can be connected directly to particular regions of the system’s hardware, like graphics or sound, which means that even though it’s less flexible than an all-in-one ROM, it has some performance advantages too. The two chips I dumped here are program code for two different CPUs: one for the 68000 CPU in the system itself, and one for the ARM7 CPU in the game cartridge.
- dale_glass 4y agoFair enough, but something like the Neo Geo took cartridges internally, no? Excluding cartridges with special bits on them (and I kinda doubt there's that much unique hardware on a system that mostly had fighting games) there shouldn't be anything that specific per game on that system. And yet MAME is just as picky with those as it is with anything else.
- Firehawke 4y agoAnother good reason is to prevent the accidental use of bad dumps. A number of the systems supported in MAME have been redumped multiple times as it was discovered that bitrot had set in on chips, or the dumper made mistakes, or any of a dozen other things happened. This is also why your older dumps of e.g. Pac-Man for MAME 0.02 won't work on a modern MAME build-- we didn't have the color data PALs dumped, some of the early ROMs were later proven to be bad dumps, and so forth. Locking it down to specific "best we know of as of this moment" prevents people from easily using materials we know to be incorrect, which in turn also prevents people from sending invalid bug reports.
- derefr 4y ago> Locking it down to specific "best we know of as of this moment" prevents people from easily using materials we know to be incorrect One big downside I would see is that it somewhat inhibits the creation/growth of an arcade-machine romhacking scene. (Unless there's some explicit provision in MAME for loading arbitrary patches on top of the known-good game versions.) > which in turn also prevents people from sending invalid bug reports Something to consider: some other emulators do this not by burning hashes into the code, but rather by downloading at runtime (tracking via RSS or the like) an independently-maintained known-good-dumps-hashes DB. (Compare/contrast, the way that the http://www.accuraterip.com/ http://www.accuraterip.com/ database is used in audio CD ripping.) This approach enables a separation of responsibilities between "building good emulator software" vs "archiving and conserving specific games" — with one of the touted advantages usually being that that the database of good dump hashes can then be used for things other than just powering one specific emulator. It can be shared by many emulators, and other ecosystem tools; and it can even be used by anthropologists to study the "family trees" of game releases. Also, when emulators besides MAME that use such techniques, detect that a game has a known-bad hash, they don't prevent you from playing it. They just tell you really loudly that you're about to play a bad dump (implicitly, disclaiming all liability for your doing so.) Like a modern web browser's "insecure" warning when retrieving a page over a non-HTTPS connection.
- vore 4y agohttps://retrocomputing.stackexchange.com/a/15753 https://retrocomputing.stackexchange.com/a/15753 Apparently you can make MAME do it if you really want it to by the command line.
- fuckstick 4y agoSuch a large wall of text - when if you actually spent a few minutes actually using MAME you’d know it warns about bad dumps and then allows you to proceed anyway. You’d also know that dumping the database in MAME is very straightforward. The compelling counter argument to the perceived “separation of responsibilities” - is there is one source of truth.
- MegaDeKay 4y agoMame's main goal is preservation and documentation. They are emulating what was, not what someone might come up with in a ROM hack made today.