macOS

Patching ROMs on Mac: Delta Patcher, MultiPatch and the Terminal

Mac users have three solid ways to apply ROM patches: Delta Patcher’s native macOS app, the multi-format MultiPatch, or the xdelta3 command line via Homebrew. This guide covers all three, on both Apple silicon and Intel Macs.

  • Updated
  • Checked against Delta Patcher 3.1.6
  • 4 min read
  • Verified against primary sources · how we check

In short

  • Delta Patcher ships a universal macOS app (Apple silicon + Intel) — the simplest option for XDelta patches.
  • MultiPatch is the best native Mac alternative, handling IPS, UPS, BPS, PPF, XDelta and more in one app.
  • Prefer the terminal? brew install xdelta gives you the xdelta3 command line.
  • No install allowed? Use a browser patcher — it works fine in Safari and Chrome.

Option 1: Delta Patcher (recommended for XDelta)

Delta Patcher’s macOS build is a universal .app bundle covering Apple silicon and Intel Macs, distributed as a ZIP from the official releases. macOS may warn that the app is from an unidentified developer on first launch — right-click it and choose Open to approve it once.

  1. Download and open the app

    Grab the macOS build from the releases page, unzip it, and drag Delta Patcher to Applications (or run it from Downloads).

  2. Select your files

    Original file → your ROM or ISO. XDelta patch → the .xdelta file. Read the Patch info tooltip for the required source version.

  3. Tick Backup original file

    In the gear menu next to Apply patch. Your original survives; the result is saved alongside it.

  4. Apply and test

    Click Apply patch, wait for the success message, then load the output in your emulator.

The full walkthrough with screenshots is in how to use Delta Patcher — the Mac app works identically to the Windows one.

Option 2: MultiPatch (best for mixed formats)

If your patches aren’t all XDelta — IPS translations, UPS hacks, BPS files — MultiPatch is the Mac-native answer. It applies and creates IPS, UPS, BPS, PPF, XDelta and several other formats in one clean app, which makes it the closest thing macOS has to a universal patcher.

Use it exactly like any patcher: choose the patch, choose the source file, choose where to save. The same rules apply — verify the source version first (how to verify), because MultiPatch will fail on a wrong source just like everything else.

Option 3: xdelta3 via Homebrew (terminal)

For scripting or remote work, the command line is fastest. Install the tools first:

Terminal (Homebrew)
brew install xdelta

Then decode with:

Apply a patch
xdelta3 -d -s "original.iso" patch.xdelta "patched.iso"

The -d means decode (apply), -s names the source file. To create a patch instead:

Create a patch
xdelta3 -e -s "original.iso" "modified.iso" patch.xdelta

Which should you pick?

Choosing a Mac patching method
SituationPick
XDelta patches, want a GUIDelta Patcher
Mix of IPS / UPS / BPS / XDeltaMultiPatch
Scripting or SSHxdelta3 via Homebrew
One quick patch, no installsBrowser patcher
Patching on iPhone/iPadBrowser patcher (no Mac app runs on iOS)

Verifying your download on macOS

Before patching anything, confirm your source file is the exact version the hack requires. macOS ships the tools you need:

Terminal — SHA-256
shasum -a 256 "Game (USA).iso"
Terminal — MD5
md5 "Game (USA).iso"

Compare the output with the checksum the patch author publishes. If they match, your file is correct — the full verification guide explains what to do when they don’t.

Apple silicon vs Intel: what actually changes

Almost nothing for patching. Delta Patcher’s macOS build is a universal binary, so the same download runs natively on both. The differences that do matter:

  • Old 32-bit tools won’t run on any recent macOS (Catalina and later dropped 32-bit support entirely). If a readme points you at an ancient patcher, use a modern alternative instead.
  • Rosetta 2 transparently runs Intel-only command-line tools on Apple silicon — Homebrew’s xdelta works either way.
  • FileVault encryption has no effect on patching; it’s transparent to applications.

Where to put patched ROMs for Mac emulators

Patching is only half the job — the patched file has to land where your emulator looks:

  • OpenEmu: drag the patched ROM into the library window; it organises and catalogues it automatically. Keep the clean original outside the library to avoid confusion.
  • Dolphin (GameCube/Wii): point Dolphin’s ISO directory at your output/ folder. Patched ISOs appear alongside clean ones — clear file names matter here.
  • RetroArch: load the patched ROM directly; for systems whose cores auto-patch, make sure you’re not double-patching (a hard-patched ROM plus a soft-patch in the same folder).

The rule behind all three: emulators don’t know or care how a file was patched. They just open what you give them — so give them the clearly-named output file, not the working copy.

Mac-specific troubleshooting

  • “App can’t be opened” warning: right-click → Open, once. This is Gatekeeper, not a broken download.
  • Checksum errors: same as everywhere — wrong source file. See fixing checksum mismatch.
  • Homebrew xdelta not found after install: open a new terminal window so your PATH updates.
  • Case-sensitive APFS volumes: file names differ only by case can confuse scripts — keep names simple.

Continue learning

Sources and references