A tiny, dependency-free Windows GUI for converting game disc images
(.iso, .cue+.bin, .gdi) into the compressed CHD format used by
RetroArch, MAME, and other emulators.
Just download the exe, click Browse to pick your ISO, Browse to pick an output folder, and hit Start. A progress bar shows how the conversion is going.
Built with Python's stdlib Tkinter and packaged as a single
.exewith PyInstaller. Under the hood it shells out to MAME'schdman.exeto do the actual work.
- ✅ Single-file Windows executable — no install, no Python required
- ✅ Browse for input ISO / CUE / GDI
- ✅ Browse for output folder
- ✅ Live progress bar parsed from
chdmanoutput - ✅ Cancel button
- ✅ Auto-detects
chdman.exeif it's onPATHor sitting next to the app - ✅ Falls back from
createcdtocreatedvdautomatically for DVD-sized ISOs
You need chdman.exe on your machine. It's part of MAME tools and is
not bundled with this app.
- Go to MAME Releases on GitHub.
- Download the latest
mame<version>b_64bit.exe(it's a self-extracting 7-Zip archive, not an installer). - Run it and extract somewhere convenient, for example:
C:\Tools\mame\(auto-detected), or- a
MAMEfolder next totochd-gui.exe(auto-detected), or - anywhere else — you can browse to it once and the path will stay filled in for that session.
Auto-detect search order:
chdman.exenext totochd-gui.exeMAME\chdman.exenext totochd-gui.exemame\chdman.exenext totochd-gui.exe- System
PATH C:\Program Files\MAME\chdman.exeC:\mame\chdman.exeC:\Tools\mame\chdman.exe
- Launch
tochd-gui.exe. - Input — browse to your
.iso,.cue, or.gdifile. - Output folder — pre-filled to the input's folder; change if you want.
- chdman.exe — auto-filled if found, otherwise browse to it once.
- Click Start.
The output .chd will be named after the input file
(e.g. MyGame.iso → MyGame.chd).
git clone https://github.com/AyeBathingApe/tochd-gui
cd tochd-gui
python tochd_gui.py # run from source
.\build_exe.bat # build dist\tochd-gui.exeRequires Python 3.10+ on Windows. PyInstaller is the only build dependency
and is installed automatically by build_exe.bat.
This project was inspired by tochd
by Tuncay D. — an excellent Linux command-line tool that performs the same
ISO→CHD conversion with optional 7z archive extraction and batch processing.
If you're on Linux, or if you want a powerful CLI with batch support, go use
the original — it's great. Give it a star.
tochd-gui is an independent Windows GUI. It does not include or invoke
tochd.py at runtime; it talks to chdman directly. The name acknowledges
the inspiration.
chdman.exe is part of MAME, developed by the
MAME team and contributors and licensed under the BSD-3-Clause license. It is
not bundled with this repo; users download it from the official MAME
releases.
See THIRD_PARTY_NOTICES.md for full license details of upstream projects.
MIT © 2026 AyeBathingApe