How to patch a ROM

Three things have to meet. You need the base dump the author hashed, the patch file they published, and a tool that reads that patch. The patch is not the game. It is the list of changes. I start on the home page patcher because it stays in the browser and prints CRC32, MD5, and SHA-1 before it writes anything. If the image is a disc or a large DS card, I switch to Delta Patcher and say why on that page.

The usual failure is an honest mismatch. BPS and UPS compare the source CRC before they write. A European dump, a 1.1 revision, a 512-byte SNES copier header, or an N64 file in .v64 order will fail even when the title screen would have looked familiar. IPS does the opposite. It writes the records and stays quiet, so a finished IPS apply is not evidence you had the right base. I trust a checksum failure more than a silent success.

Order of operations: extract the zip if the tool did not, confirm the extension, confirm the region in the readme, apply, then open the output in an emulator. Do not patch a file that is already patched unless the readme says the second patch stacks. Do not rename a .bps to .ips. The magic bytes are the real type. The home page accepts the formats its modules implement, from IPS through xdelta.

A short video by PokeCoders, uploaded 28 Nov 2020, shows the same browser engine on Android and PC. I link it because the title and channel match the task. It is not a substitute for the checksum rules above. Related pages: the formats index, the error index, and the console page for the system you actually have. PokeCoders is a third-party channel. Press play only if you want that embed to load.

Browser ROM patcher with two file slots and a patch button
Pixel-art CRT showing a blank cartridge, used as a visual marker

Questions

The tool says source ROM checksum mismatch. What do I change?

The base file, not the patch. Match region, revision, and header state to the readme. The error index spells out the three checksum messages.

Can I patch on a phone?

Yes, in the browser, if the files fit in memory. The devices page covers Android unpacking and iOS file limits.

Sources

Video

PokeCoders, uploaded 2020-11-28. The player loads only after you press play.