Skip to content

Header Removal

Claus Valca edited this page Sep 15, 2026 · 1 revision

🧹 Header Removal

Some old ROMs have copier headers — extra bytes added by hardware copiers in the 90s. These headers can cause emulators to reject the ROM or behave incorrectly.


Supported Systems

System Header Type Size
NES iNES header 16 bytes
SNES SMC/SWC/FIG copier header 512 bytes
Game Boy (GB) Copier header 512 bytes
Game Boy Color (GBC) Copier header 512 bytes

How to Remove Headers (GUI)

  1. Go to the Utilities tab
  2. Select Header Removal
  3. Drop your ROM file
  4. OpenROM detects the header type automatically
  5. Click Remove Header

OpenROM shows a confidence rating before removal:

  • Certain — header detected with high confidence
  • ⚠️ Likely — header pattern matches but verify first

How to Remove Headers (CLI)

# Auto-detects header type
openrom-core --remove-header "game.smc"

Specify output file

openrom-core --remove-header "game.smc" --output "game_clean.sfc"


Backup

OpenROM always creates a backup before removing a header:

game.smc        ← original (unchanged)
game.smc.bak    ← backup
game_clean.sfc  ← output without header

The original file is never modified.


Do I Need to Remove Headers?

Most modern emulators handle headered ROMs fine. You need header removal when:

  • A ROM patch requires a headerless ROM (most patches do)
  • Your emulator rejects the ROM
  • You want to verify the ROM against No-Intro database (which uses headerless ROMs)

Rule of thumb: if you're about to apply a patch, remove the header first.


Patching GuideTroubleshooting

Clone this wiki locally