Disclaimer: This application was entirely vibe coded using Claude AI. The author has no formal software development experience or background. While good-faith efforts have been made to ensure this tool only does what it is designed to do, bugs and unintended behavior are possible. Always back up your data before converting anything.
A GUI frontend for chdman, the CHD file utility from MAME. Built with Tauri v2, React 19, and TypeScript.
Convert disc and disk images into CHD format. Auto-detects media type from file extension and size:
- CD-ROM —
.cue,.gdi, or.isounder 1 GB - DVD-ROM —
.isoover 1 GB - Hard Disk —
.img,.bin - Raw —
.raw - LaserDisc —
.avi
Supports batch processing, archive extraction (.zip, .7z, .rar), compression options, hunk size, CPU thread control, and overwrite (--force).
Extract CHD files back to their original formats. Auto-detects CHD type via chdman info metadata tags. Supports split .bin per track for CD-ROM (--splitbin).
Re-encode CHD files using the current chdman version to ensure hash compatibility. Useful for updating CHDs created with older versions of MAME.
Inspect any CHD file and view its full chdman info output.
Run chdman verify to validate CHD file integrity.
Verify CHD or disc image files against No-Intro, Redump, or TOSEC DAT databases.
- Use + Add File or + Add Folder in the DAT panel to load
.dat/.xmlfiles from anywhere on your system - Alternatively, drop
.dator.xmlfiles into thedat/folder next to the executable — they are indexed automatically on startup - Extra DAT sources are saved in
settings.jsonand restored between sessions - Add individual files or entire folders to audit
- CHD files are matched against both the Data SHA1 and the top-level CHD SHA1 reported by
chdman info, covering No-Intro, Redump, and MAME DAT formats - Non-CHD files (ISO, BIN, etc.) are verified by direct SHA1/CRC32 hash
- Results show per-file match status and game name from the DAT
After every batch Create/Extract/Convert run, a summary table shows each file's result (success/fail) and DAT match status.
- Download or build
romcruncher.exe - Place it in a folder — the app creates
input/,output/,temp/, anddat/subfolders automatically - Open Settings and set the path to
chdman.exe(available as part of a MAME installation) - Optionally load DAT files — either drop them into the
dat/subfolder or use + Add File / + Add Folder in the DAT Audit panel to point to DAT files anywhere on your system
Requirements:
npm install
npm run tauri buildThe compiled executable will be at src-tauri/target/release/romcruncher.exe.
ROMCruncher draws heavy inspiration from:
- namDHC by umageddon
- Compressatorium by pacnpal
ROMCruncher would not be possible without:
- MAME — the source of
chdman, the engine that powers all CHD operations - Redump - the DAT resource that makes disc image auditing possible
- MAMERedump — the DAT resource that makes .chd file auditing possible
- Tauri v2 — Rust backend
- React 19 + TypeScript — frontend
- Vite — build tool