Tutorial: apply an IPS or BPS patch to a ROM in your browser (Rom Patcher JS)
ROM hacks and fan translations are almost never distributed as full games: you get a small patch file (.ips, .bps, .ups, .ppf, .xdelta...) that you apply to your own ROM. This guide, checked on 11/11/2026, uses Rom Patcher JS (version 3.5 by Marc Robledo), which runs in your browser: nothing to install.
Before you start
You need: (1) a ROM of the original game that you legally own, in the exact version the patch author asks for (region, revision); (2) the patch file, downloaded from the author's page (often ROMhacking.net or GitHub). ROMs are never bundled with patches and we do not link to any. Always keep your original ROM: the patch creates a new file. If your ROM is inside a .zip, the tool can unzip it for you.
- Open Rom Patcher JS in your browser.
- In the "ROM" area, load your game file. The tool shows its CRC32, MD5 and SHA-1 checksums: compare them with those listed by the patch author. If they differ, your ROM is not the right version and the result may not work.
- In the "Patch" area, load the .ips, .bps, .ups, .ppf or other file.
- Leave "Fix ROM checksum" ticked unless the author says otherwise, then click "Apply patch".
- Your browser downloads the modified ROM. The "Use patch name for output" option names it after the patch, handy to avoid overwriting the original.
- Launch the new file in your emulator (RetroArch, for example), or copy it to your flashcart or handheld.
If it does not work
First reflex: recheck the ROM checksums, then the region and revision requested. Some patches require a headerless ROM: the project's GitHub repository says the tool can strip headers before patching. It also handles IPS, BPS, UPS, APS, RUP, PPF, EBP, BSDiff and xdelta. A desktop alternative is Floating IPS (Flips), whose original repository has been archived since May 2025; its last release, v198, is still available on the Sir-Walrus fork. To play with achievements afterwards, see our RetroAchievements tutorial for RetroArch.
Source: Rom Patcher JS