In short
- Check the easy things first: files extracted from archives, correct file selected in each field, enough disk space.
- Then check the byte-level things: exact source version, trimmed vs untrimmed, headered vs unheadered.
- If you get a specific message, jump straight to its guide: checksum mismatch or XD3_INVALID_INPUT.
- Nine times out of ten, the patch is fine — the source file isn’t the one the patch expects.
First: the 60-second checks
Half of all “patch won’t apply” reports are solved here, before touching anything technical.
If everything above is correct and it still fails, the problem is at the byte level. Continue below.
Second: the byte-level checks
An xdelta patch is a set of instructions built against one exact file. Anything that changes the bytes — even invisibly — breaks it. Check each of these against the patch author’s requirements:
| Check | How to verify | Typical symptom |
|---|---|---|
| Exact version / revision | Compare file size and checksum with the author’s published values | Checksum mismatch / XD3_INVALID_INPUT |
| Region (USA / EUR / JPN) | File name, readme, or checksum; regions differ throughout the file | Checksum mismatch |
| Trimmed vs untrimmed | Trimmed dumps are smaller; compare size with the expected value | “Source file too short” or mismatch |
| Headered vs unheadered (cartridge ROMs) | SNES/Genesis dumps may carry a copier header that shifts every byte | Mismatch on an otherwise correct ROM |
| Already patched | If you patched this copy before, it’s no longer the original | Mismatch or garbage output |
| Corrupt / incomplete download | Re-check the checksum; re-download if it doesn’t match anything published | Various errors, or silent failure |
Two of these deserve their own guides: wrong ROM version walks through region and revision detective work, and verifying a source file covers checksums on every platform.
Find your symptom
Dialog: “The file you are trying to patch is not the right one”
xdelta3: target window checksum mismatch: XD3_INVALID_INPUT
- Problem
- Delta Patcher refuses to apply the patch and shows the friendly dialog.
- Likely cause
- Your source file isn’t byte-identical to the file the patch was created from.
- How to check
- Compare your file’s size and checksum against the patch author’s published values.
- How to fix
- Get the exact source version (region, revision, trim/header state) and patch a fresh copy. Full guide: fixing XD3_INVALID_INPUT.
- Prevention
- Always read the patch readme first and verify before patching.
Nothing happens when you click Apply patch
- Problem
- No dialog, no error, no output file — or the program seems to hang.
- Likely cause
- Usually a locked source file, no disk space, or files still inside an archive that the file picker resolved oddly.
- How to check
- Confirm both files are extracted, the source isn’t open elsewhere, and disk space is ample.
- How to fix
- Close other programs, extract everything to a working folder, and try again on a copy.
- Prevention
- Work from a dedicated folder with extracted files only.
Patch “succeeds” but the output is the wrong size
- Problem
- No error, but the patched file is suspiciously small, or identical in size to the source.
- Likely cause
- The wrong file was selected as source or patch, or checksum validation was disabled on a mismatched source.
- How to check
- Re-open Delta Patcher and confirm which file is in each field; check whether validation was on.
- How to fix
- Re-apply to a fresh copy with validation on. If it then errors, treat it as a wrong-source problem.
- Prevention
- Never disable checksum validation to “make it work”.
xdelta3 command-line errors
- Problem
- Errors like “not a valid VCDIFF file” or “source file too short”.
- Likely cause
- “Not a valid VCDIFF” means the patch file itself is damaged or isn’t an xdelta patch at all; “source file too short” means your file is smaller than expected.
- How to check
- Verify the patch file’s integrity (re-download it); compare your source size with the expected size.
- How to fix
- Re-download the patch; get an untrimmed/complete source file.
- Prevention
- Download patches from the author’s official page and check any published checksum.
If nothing above fits
- Update Delta Patcher from the official releases — old builds had bugs with non-ASCII paths and large files that are long fixed.
- Try the patch on a different machine to rule out drive or memory faults, which can corrupt reads silently.
- Ask the patch author, including: the exact error text, your source file’s size and checksum, and where you got it. That’s everything they need to diagnose it.
- Check the Delta Patcher issue tracker — if it’s a genuine program bug, someone has usually reported it already.
Frequently asked questions
The patch worked for everyone else. Is it my fault?
It’s your file, not you. Everyone else used the exact source version the author specified. Compare checksums — yours will differ, and that difference names the problem.
Should I try an older version of Delta Patcher?
No. The patch format hasn’t changed, and older versions have known bugs. If a patch fails on the current release with a checksum error, it will fail identically on older ones.
Can antivirus block patching?
Rarely, but overzealous antivirus can quarantine the patched output or block file writes. If the patch starts and then vanishes, check your antivirus quarantine before assuming anything else.
Do I need to unmount the ISO / close the emulator first?
Yes if anything has the source file open. Mounted disc images and running emulators can lock the file, causing silent failures or partial writes. Copy the file to a working folder and patch the copy.