News: 11 March 2016 - Forum Rules

Author Topic: SNES Rom-format patch issues  (Read 3652 times)

drunkenjesus

  • Jr. Member
  • **
  • Posts: 21
    • View Profile
SNES Rom-format patch issues
« on: June 10, 2015, 12:42:16 pm »
Recently upon looking some things up on google I found some really old patches that greatly improve the translation of a game I'm a real big fan of (Super Fire Pro Wrestling X Premium) by fixing some issues and adding back in additional content to the game that's not available otherwise.  Through a great bit of trial and error I managed to get them working so I wanna share them with other fans of them game.

The problem lies in the formatting though, the way I had to apply them was a rather convoluted mess, first I had to convert the original rom to ".FIG" format which I've never heard of via command-line with ucon then patch the files.  I can make those available because they play fine in Snes9x(and other emus I'm sure) but they involve an extra step and knowledge of command-line/dos which could be an issue for a lot of users, I was really surprised it even worked on windows 7 plus I dunno how well the .FIG format is supported by emulators.  Making ips patches for the most common formats of the rom, SMC and SFC yielded filesizes roughly 50kb less than the original rom which I know is frowned upon since so much copyrighted code is included.  I obviously converted the patched roms back to SMC/SFC format before attempting to create patches for the original roms so that's not the issue, I tried numerous other things but no matter what creating patches for the original roms yields a large filesize.

Does anybody know of a simplified way to provide these patches without requiring users to do command-line conversions, theirs clearly not ~4mb of new data in the patches it's just some sort of formatting issue.  The original conversion patch hosted on this site also requires you to patch a .FIG format rom (although it's not mentioned anywhere) so I'm guessing most people download a pre-patched rom against the authors wishes.  Although strangely attempting to create a patch from the pre-patched rom hosted on romsites from the patched rom's I created yields large results & doesn't patch correctly.  But creating a patch from the original rom converted to FIG then patched with Sydras translation and converted back to SMC does in fact work perfectly fine when using converted SMC's of the patched files I created yielding ~50kb ips files.

DackR

  • Full Member
  • ***
  • Posts: 130
  • Mo~
    • View Profile
    • Hackaday.io Page
Re: SNES Rom-format patch issues
« Reply #1 on: June 10, 2015, 01:08:26 pm »
The diverse file extensions usually only indicate how the ROM file was dumped. Any recently dumped game will hopefully use the .sfc file extension and be header-less (FOR SNES GAMES). This is just what I like to see, and not necessarily the reality... ;)

.fig and .swc are extensions attributed to the Super Wild Card device.
.smc indicates that the file was dumped with the Super Magic Card device.

The actual contents of the files should be similar. The fact that the patch requires a .fig extension just means that the person who made the patch may have thought the .fig dump of the ROM to be more common at the time. Normally, the only thing that effects the correct application of a patch is the existence or non-existence of a header (depending on the patch requirements). The ROM files with file extensions used by the devices I've cited above often contain extra data at the beginning of the ROM, properly referred to as a "copier header", or more commonly just called a "header".

I don't have an explanation for the file size differences since you don't give a name for the tools you've used. I'm sure the fact that the patch requires a file name extension of .fig will help someone in the future though. :)
« Last Edit: June 10, 2015, 01:15:42 pm by DackR »

Gideon Zhi

  • Discord Staff
  • Hero Member
  • *****
  • Posts: 3535
    • View Profile
    • Aeon Genesis
Re: SNES Rom-format patch issues
« Reply #2 on: June 10, 2015, 01:30:08 pm »
There were a few copiers that required interleaved lorom games back in the day. Most roms in circulation these days aren't interleaved, but it's possible that some of the really really old translations require their patching target interleaved.

drunkenjesus

  • Jr. Member
  • **
  • Posts: 21
    • View Profile
Re: SNES Rom-format patch issues
« Reply #3 on: June 10, 2015, 01:44:52 pm »
Thanks for the tips, in my experience SMC seems to be the most common file type for Super Nintendo games while SFC seems to be the standard for Super Famicom games.  These patches were all made 15+ years ago so I'm guessing that explains the .fig format which I haven't seen nor could even find any roms of the game in .fig format.

The tools I used were ucon http://www.romhacking.net/utilities/19/ to convert the roms and the latest version of Lunar IPS to apply/create the patches.  My OP was a little long winded but what I'm basically looking for is a way to make a patch file that will work on the more common sfc/smc dumps of the game without requiring the patch user to do two conversions via command-line to get a patched sfc/smc file.  I can create a working patch for the sfc/smc files but it ends up being ~4MB.  Getting this working would be good from a preservation standpoint as in the future using dos-based tools for obsolete/obscure file types will be even more difficult.

EDIT: This game is a HiRom so I don't think that's an issue.  I got a message saying NOTE: This game might not work with a Super Magicom because it's a FastROM game.  When converting back to SMC if that helps narrow things down any.