ROM Hasher


  1. General
  2. Platform Detection
  3. ROM Hashes
  4. Supported Databases/Formats


The primary function of this program is to verify and hash ROMs for


Platform Detection

The platform associated with a ROM is identified by the contents rather than file extension when possible. If zero or more than one candidate platforms are found, the file extension is used to disambiguate. If this method fails to identify one single platform, the user will be prompted to select the platform. The criteria below are used to identify candidate platforms. ROM Hasher does not distinguish between Game Boy and Game Boy Color, Genesis and 32X, or Neo Geo Pocket and Neo Geo Pocket Color.


ROM Hashes

"ROM Hashes", as opposed to file hashes, are based on raw ROM images, excluding any kind of container, external header, or interleaving. This helps identify certain scenarios such as having the right ROM in the wrong format, having a bad external header, et cetera. Some ROM databases, including No-Intro, use ROM hashes rather than file hashes for this reason.

The list below details how ROM hashes are calculated by ROM hasher. The systems listed below have been tested to some extent with all included No-Intro databases. Note that in most cases, ROM hasher will not detect or exclude overdump.


Supported Databases/Formats

Currently, only ClrMamePro DATS are supported. Any ClrMamePro DAT can be used provided that is provides the minimum needed data for ROM Hasher, including file or compatible ROM hashes. For platforms not listed under ROM Hashes, only file hashes are supported.

No-Intro databases for common platforms are included with the program. Additional No-Intro databases for systems that don't have special ROM Hash requirements. TOSEC databases, which use file hashes, should also work.