DAT File Formats

Reference for the DAT file formats supported by the DAT Verifier and DAT Filter.


Logiqx XML Format

The primary supported format is the Logiqx XML format used by CLRMamePro, RomVault, and other ROM management tools. Files typically have a .dat or .xml extension.

Structure

<?xml version="1.0"?>
<!DOCTYPE datafile PUBLIC "-//Logiqx//DTD ROM Management Datafile//EN"
  "http://www.logiqx.com/Dats/datafile.dtd">
<datafile>
  <header>
    <name>Example DAT</name>
    <description>Example DAT description</description>
    <version>20240101</version>
    <author>Author Name</author>
    <homepage>https://example.com</homepage>
  </header>
  <game name="Game Title (Region)">
    <description>Game Title (Region)</description>
    <rom name="game.rom" size="262144" crc="AABBCCDD" md5="..." sha1="..." />
  </game>
</datafile>

Key Elements

Element Description
<header> Metadata about the DAT file itself
<game> One entry per game/ROM set
<rom> Individual ROM file with checksum attributes
<disk> CHD disk image entry (used in MAME DATs)

ROM Attributes

Attribute Description
name ROM file name
size File size in bytes
crc CRC32 checksum (8 hex digits)
md5 MD5 checksum (32 hex digits, optional)
sha1 SHA-1 checksum (40 hex digits, optional)
status ROM status: good, baddump, or nodump

MAME XML Format

MAME’s native XML output (from mame -listxml) is also supported by the MAME tools.

Structure

<?xml version="1.0"?>
<mame build="0.264">
  <machine name="pacman" sourcefile="pacman/pacman.cpp" sampleof="pacman">
    <description>Pac-Man (Midway)</description>
    <rom name="pacman.6e" size="4096" crc="c1e6ab10" sha1="..." />
    <rom name="pacman.6f" size="4096" crc="1a6fb2d4" sha1="..." />
    <sample name="credit" />
    <disk name="disc1" sha1="..." />
  </machine>
</mame>

Machine Attributes

Attribute Description
name Machine short name (used as ZIP filename)
cloneof Parent machine name (for clone sets)
romof ROM parent name
sampleof Parent machine for shared audio samples

ROM Element Attributes

Attribute Description
name ROM file name inside the ZIP
size File size in bytes
crc CRC32 checksum
sha1 SHA-1 checksum
merge Merge target (ROM is provided by parent)
status good, baddump, or nodump
optional Whether this ROM is optional (yes/no)

No-Intro DAT Files

No-Intro provides DAT files for cartridge-based systems using the Logiqx XML format. These DATs use standardized naming conventions:

Game Title (Region) (Revision)

Examples:

  • Super Mario Bros. (World)
  • Legend of Zelda, The (USA) (Rev 1)
  • Sonic the Hedgehog (Europe)

TOSEC DAT Files

TOSEC DAT files also use the Logiqx XML format with a different naming convention:

Game Title (Year)(Publisher)(Region)(Language)

Both No-Intro and TOSEC DATs are supported for verification.


DAT Sources

Source Focus URL
No-Intro Cartridge-based systems https://no-intro.org/
Redump Disc-based systems http://redump.org/
TOSEC Multi-platform preservation https://www.tosecdev.org/
MAME Arcade machines https://www.mamedev.org/
Progretto-SNAPS MAME extras and DATs https://www.progettosnaps.net/