MAME CHD integrity and Android import / 2026-07-27

Verify a MAME CHD with chdman before copying it to Android

Use the matching MAME toolchain to read CHD metadata, verify internal integrity, handle parent CHDs, and preserve an auditable result before Android import.

10 minute verification guideDesktop chdman plus an Android MAME 0.288 target; Android ports rarely expose the full tool

Verify a MAME CHD with chdman before copying it to Android

Run `chdman info -i file.chd` and then `chdman verify -i file.chd` with chdman from the same MAME release family as the target emulator. If the file is a delta CHD, supply its lawful parent with `-ip`. Keep the reported SHA-1 and verification log with the source record, and do not use `--fix` on your only copy.

Do this in order

  1. 01

    Record the authorized source, filename, acquisition or dump date, target MAME version, game short name, and whether the CHD is standalone or a delta.

  2. 02

    Copy the source CHD to a working location and keep the original read-only; use chdman from the matching MAME release family.

  3. 03

    Run `chdman info -i file.chd` and save its format version, compression, logical size, hunk size, and SHA-1 output.

  4. 04

    Run `chdman verify -i file.chd`; for a delta CHD, add `-ip parent.chd` and preserve the parent identity in the record.

  5. 05

    Run the target MAME machine audit separately so file integrity, expected disk identity, short-name folder layout, and rompath are all proven.

  6. 06

    Copy the verified CHD into the documented short-name folder on Android, relaunch once, and retain the log, hash, source record, and untouched original.

Decision and diagnostic table

EvidenceWhat it provesNext action
`chdman info` returns metadataThe tool can parse the CHD headerRecord SHA-1 and format details; still run verify
`chdman verify` passesReadable hunks match the CHD's integrity dataCompare against the target machine definition
Parent required or unavailableThe file is a delta or its parent link cannot be resolvedSupply the exact lawful parent with `-ip`
MAME still reports disk missingIdentity, folder, short name, or search path differsInspect the target audit and Android layout

Integrity and compatibility are separate proofs

chdman can prove that a CHD is internally readable and report its data and metadata digests. The target MAME build still decides which disk SHA-1 and parent relationship a machine definition expects.

A passing `verify` result therefore does not replace the machine audit. Keep both results so a storage-path failure is not mistaken for corruption and a version mismatch is not mistaken for a bad copy.

Delta CHDs need their exact parent

MAME supports delta CHDs that contain only data differing from a parent disk. chdman's verify command accepts an input parent, and MAME cannot reconstruct the shared data when that parent is absent or wrong.

Record the parent filename and digest rather than treating it as an interchangeable support file. A parent link is a technical dependency, not permission to obtain the disk elsewhere.

Repair only a disposable working copy

The `--fix` option can modify the input CHD, and writable CHDs cannot be verified by the normal read-only integrity operation. Start with a preserved source copy and diagnose the exact failure before considering any mutation.

Do not recompress a CHD into ZIP or 7z for Android. Keep the verified CHD in the target build's expected folder and test the copied file rather than assuming a successful transfer.

First-party sources

Related guides