How to Use ROM Patches

This guide should help you in your goal of patching your ROM. This guide is applicable to most ROMs and patches but makes some assumptions about the patches and ROMs used:

  • The patches are from superfamicom.org as these are tested and prepared to work with unheadered ROMs.
  • The ROMs have no header.
  • ROMs have the extension of .sfc, not .smc, .swc or .fig.

How to Remove a ROM Header ##{#how-to-remove-header}

To remove a ROM header, it's probably easiest for you to remove the header using NSRT, as well as verifying it is the correct region, version or any other specifics about the ROM. First make sure the sure in the NSRT Preferences → Headers section Remove Headers is selected, click Apply and OK. Rescan the ROM you wish to patch and it should now be header free.

  • [[NSRT_3.4_Windows.exe:file]]
  • [[NSRT_3.4_Mac_OS_X.7z:file]]
  • [[NSRT_3.4_Linux.7z:file]]

How to Apply the ROM Patch ##{how-to-apply-patch}

The patches come in various formats, UPS, IPS, BPS and BDF which is short for BSDIFF. There are numerous ways to apply patches, and I will touch on just a few of them.

OS X: UPS, IPS, BDF, BSDIFF ##{#osx-multipatch}

For OS X I highly recommend MultiPatch.

Linux: UPS ###{#linux-tsukuyomi}

For Linux I recommend using [[tsukuyomi_v01.7z:file]] by [[byuu]].

Linux: IPS ###{#linux-ips}

Use this PERL script [[ips.pl:file]].

ips.pl rom.sfc patch.ips

Or you can use Lunar IPS by FuSoYa via WINE.

Linux, OS X: BDF, BSDIFF ###{#bsdiff-source}

For BDF / BSDIFF patches you can install bsdiff form source through Homebrew on OS X and should be avaliale already on Linux, then you can run the command:

bspatch old_file.sfc new_file.sfc patch.bdf

Windows: UPS ###{#windows-tsukuyomi}

For Windows I recommend using [[tsukuyomi_v01.7z:file]] by [[byuu]].

Windows: IPS ###{#windows-ips}

For Windows I recommend using Lunar IPS by FuSoYa.