IPS

From Sega Retro

IPS files are patches which modify the contents of another file. They are not self-applying, so a patching program such as StealthPatch is required. IPSes are used in the distribution of ROM hacks.

File Format

Header

  • 5 byte ASCII string: "PATCH"

Record Data

  • 3 byte offset where the data is to be placed in the target file
  • 2 byte length of the data
  • the data itself

N.B. Numbers of record data may vary.

End of File

  • 3 byte ASCII string: "EOF"

Restrictions

  • IPSes can't patch files larger than 16Mb
  • Some patching programs can't add extra data to the end of the target file (although StealthPatch can)
  • IPSes can't apply data to offset 0x454F46, because it reads in ASCII as "EOF"!