Android MAME romset-discovery diagnostic / 2026-08-05

Fix MAME verifyroms reporting no romsets found on Android

Prove the target build, short name, effective rompath, archive identity, and audit scope before replacing any lawful ROM data.

9 minute romset discovery guideOfficial MAME 0.289 command behavior as exposed by an Android port; command-line access and audit wording vary by port

Fix MAME verifyroms reporting no romsets found on Android

Treat “no romsets found” as a discovery failure, not proof that every ROM is bad. Confirm the Android port's upstream MAME revision, ask that exact build for the machine short name, and run the narrowest available `-verifyroms <shortname>` audit against the effective rompath. A default all-set audit only considers recognizable ZIP files or directories in that path. If the port exposes no audit command, use its documented per-game audit and do not infer desktop command support.

Do this in order

  1. 01

    Record the Android port, its stated upstream MAME revision, the intended game, the file source and rights receipt, and the configured rompath shown by the port.

  2. 02

    Use the target build's system list or `-listfull` equivalent to confirm the exact machine short name; a title, marketing label, or archive name from another MAME generation is not enough.

  3. 03

    Place only the authorized test set in one known readable rompath and preserve its archive filename and internal files; do not unpack or rename an arcade set as a repair guess.

  4. 04

    Run the narrowest supported audit for that short name. When upstream commands are available, use `-verifyroms <shortname>` rather than an unfiltered scan.

  5. 05

    If the result still finds zero sets, prove the effective rompath and Android directory grant, then compare the archive name with the short name before inspecting parent, BIOS, device, or CHD dependencies.

  6. 06

    Change data only when the target build names a missing or invalid item and you have a lawful source; preserve the command, version, path boundary, and result as the diagnostic receipt.

Decision and diagnostic table

ObservationWhat it establishesNext action
Short name is absentThe target build has no matching driver identityChoose the correct build or supported machine
Short name exists; zero sets foundDiscovery path or archive identity failedCheck effective rompath, grant, and filename
Set is found; files are named missingThe audit reached dependency validationFollow only the named parent, BIOS, device, or disk branch
Set audits good but launch failsROM discovery and integrity passedMove to renderer, configuration, input, or machine-status diagnosis

Zero found is earlier than a bad-ROM result

MAME documents that an unfiltered `-verifyroms` audit considers drivers with valid ZIP files or directories in rompath. If the build does not recognize a candidate as a set, it cannot yet report the set's component-level failures.

Use the named audit to remove ambiguity. The machine short name comes from the installed build, while the effective path comes from the port's actual configuration and Android grant.

Filename and component hashes have different jobs

Arcade emulation uses a set name to select a machine definition, then uses the build's component definitions to validate the contents. Renaming an unrelated archive can satisfy neither the expected hashes nor missing dependencies.

Stop when the audit crosses into another layer

Once MAME finds the set, its output may identify parent, BIOS, device-ROM, disk, or component problems. Once the set is good, a launch failure belongs to a different diagnostic branch. Keeping those transitions visible prevents collection-wide replacement guesses.

First-party sources

Related guides