What is a ROM file?

A ROM file is a digital copy of the read-only memory chip from a physical game cartridge or disc. When you dump the data from a cartridge, the resulting binary file carries a header — a small block of bytes at the very beginning — that describes the game and the hardware it was built for. Each console family uses its own unique header structure, so a NES ROM looks fundamentally different from a Game Boy or Sega Genesis ROM at the byte level.

The header typically stores information such as the target region, memory mapper type, ROM and RAM sizes, and a game identifier code. This makes it possible to detect the originating console from the file alone, without relying solely on the file extension.

Tool description

Upload any ROM file and the tool will instantly identify which game console it belongs to. It reads the binary header, matches it against known console signatures, and returns the console name alongside system-specific metadata such as region, game code, mapper type, ROM/RAM sizes, and cryptographic hashes (CRC32 and SHA-1). ZIP archives containing a ROM are supported too — the tool will extract and analyze the first ROM found inside.

Supported consoles

Console System key Notes
NES / Famicom nes iNES 1.0 and NES 2.0 headers; detects mapper and sub-mapper
Super Nintendo sfc Detects LoROM / HiROM, ROM speed, co-processors (SuperFX, SA-1, DSP)
Nintendo 64 n64 Header parsing, region detection, byte-swap variants (.z64, .v64)
Game Boy / Color gb Detects MBC type, RAM size, GBC / SGB compatibility
Game Boy Advance gba Extracts game ID and save type (SRAM / Flash / EEPROM)
Nintendo DS nds Game code, region, unit code (DSi compatible), device capacity
Sega Genesis / Mega Drive genesis Domestic and overseas title, serial number, region
Sega Master System sms TMR SEGA header, product code, region
Sega Game Gear gg Based on Master System header format
PC Engine / TurboGrafx-16 pce Basic identification
WonderSwan ws End-of-ROM header, game ID, model
WonderSwan Color wsc End-of-ROM header, game ID, model

Examples

NES ROM upload result

Detected Console  NES / Famicom
System Key        nes
CRC32             7d2d8d2c
SHA-1             a793e28a...
NES Version       iNES 1.0
Mapper            4
PRG ROM           256 KB
CHR ROM           128 KB
Region            NTSC

SNES ROM upload result

Detected Console  Super Nintendo (SNES)
System Key        sfc
CRC32             b19ed489
ROM Type          LoROM
ROM Speed         SlowROM
RAM               8 KB

Features

  • Console detection from header bytes: Identifies the console by reading binary magic words and header structures, not just the file extension
  • ZIP archive support: Upload a .zip file containing a ROM and the tool analyzes the ROM inside automatically
  • System-specific metadata: Displays mapper type, region, game code, title, serial, ROM and RAM sizes depending on the detected console
  • Dual hash output: Calculates CRC32 and SHA-1 simultaneously, the two most commonly used checksums in ROM verification databases
  • Server-side analysis: Processing happens on the server using the roomie library, so no client-side JavaScript limitations apply to file parsing

Use cases

  • Organizing a ROM library: Quickly identify unlabeled or misnamed ROM files and sort them by console without needing to open an emulator
  • Verifying ROM dumps: Cross-reference the CRC32 or SHA-1 hash against No-Intro, Redump, or TOSEC databases to confirm a ROM is a known good dump
  • Emulator setup: Confirm the exact mapper and region of a NES or SNES ROM before configuring an emulator that requires this information manually

Limitations

  • Detection relies on the presence of a valid header in the file. Headerless or corrupted ROMs may not be recognized.
  • Only one ROM is analyzed per upload. For ZIP archives with multiple ROMs, only the first matching file is processed.
  • Console Detection covers the systems listed above; ROM formats for other platforms are not supported.