Make ROM patches stick to your game images.
Suppose you’ve gone to a web site
such as DeJap’s SNES Bahamut
Lagoon (http://www.dejap.com/bl.php) and downloaded
an English-language patch to apply to the related Japanese-language
ROM (
[Hack #70]
). If you examine
the patch, you’ll find that it comes in the form of
a mysterious .IPS file, probably zipped up. What
the heck do you do to actually make this patch work? You have two
options, which are shown in the following sections.
The traditional approach involves creating a new file from the ROM and the IPS patch. Use a utility such as IPSWin or JIPS (both available from http://zerosoft.zophar.net/), select the patch file and the ROM to patch, and let it do its job. You can also use the DOS version of IPS (http://www.zophar.net/utilities/patchutil.html) with the simple command:
C:\Roms\> IPS.EXE EXAMPLE.SMC EXAMPLE.IPSEither way, you’ll end up with a combined file that includes the patched data. Make sure to keep a backup of your old master ROM in case something goes horribly wrong.
You also have to make sure that the checksum is correct on the ROM you’re patching and that it hasn’t changed from the original in any way. Do this using simple DOS utilities kindly hosted by The Whirlpool, such as SMC (http://donut.parodius.com/utilities/smc.com):
C:\Roms\> SMC.COM /S EXAMPLE.SMCIf the ROM is pristine, everything should be fine.
Many popular
SNES emulators for the PC, such as
ZSNES or SNES9X, can apply patches to a ROM loaded in memory without
overwriting the file. Put the .IPS file in the
same directory as the ROM with the same basic filename
(EXAMPLE.IPS and
EXAMPLE.SMC, for example) and load the game. The
emulator will automatically detect and integrate the patch.
This is an excellent solution, because you can keep the original, untouched foreign version of the ROM and the patch in the same place. It’s easy to get things running again without having multiple versions of the ROM hanging around.
This is the basic behavior for the SNES version of the IPS patch, but things change very little regardless of the console being emulated. You can still use the IPS patch. Some other console emulators also support this method of including IPS patches without anyone actually doing the file joining.
If you’re looking for the best IPS level hack patches, there’s a massive variety of available resources. Unfortunately, few ROM hackers seem to have stable web sites, often settling on Geocities or AOL web space that goes away swiftly after they lose interest. Fortunately, there are a few established central repositories and some dedicated collectives that can host their own hacks in a more stable manner:
(http://www.zophar.net/hacks/)
This comprehensive compilation page collects level-creation hacks for NES, SNES, Game Boy, Genesis, and a variety of other consoles. While it’s not the home of a particular hack creator, it lists just about every decent hack ever released in IPS form. Explore this site if you want to appreciate the diversity of ROM hacking out there.
(http://acmlm.overclocked.org/)
A particularly active community aspect makes this site very useful, but it also has links, information, and downloads for several miscellaneous hacks, including some useful user-contributed ratings. This is a longstanding, well-respected member of the ROM hacking community.