NES
Generated by scripts/gen-format-pages.py from docs/data/format-metadata/, FILE_FORMATS.csv and docs/formats-master.csv. Do not edit by hand: change the source, then run the script.
NES ROM Preview.
At a glance
| Purpose | An NES or Famicom cartridge ROM image in the iNES or NES 2.0 format. |
| Extensions | .nes |
| Poka parser | poka-nes-rom |
| Viewer | poka-metadata-card-viewer |
| Depth tier | Metadata card (see Depth tiers) |
| Breadth tier | B4 Summary (see Breadth tiers) |
How much Poka reads
B4 Summary. The container and metadata are read and summarised (counts, properties, structure), but the main content is not rendered.
Confidence: medium (the reviewer read the code). Basis: Reviewed 2026-10-26: read parsers/poka-nes-rom/src/main.rs (272 lines) and plugin.json. No unit tests or tests/samples.rs, and the corpus has no .nes, .unif and .nes2 sample. Covers .nes, .unif and .nes2. The card decodes the 16-byte header: iNES or NES 2.0, mapper (named for common mappers), mirroring, battery, trainer, VS System and PlayChoice-10, PRG and CHR sizes, and for NES 2.0 the submapper, PRG RAM and NVRAM sizes and the TV system. Judgement: B4 rather than B5, because the whole header is decoded and checked; nothing of the ROM content (code, graphics, sound) is.
What Poka does not read
- ROM content is not decoded: no code, CHR tiles or graphics
- UNIF files (.unif) are refused: they have their own magic, which this module does not read, although .unif is routed here
- NES 2.0: the high bits of the PRG and CHR sizes, CHR RAM sizes, console type, miscellaneous ROMs and the default expansion device are not read
- The trainer contents are not shown
- The file size stops counting at 16 MiB
Libraries
Libraries Poka uses or has assessed for this format, with the status, licence and language the registry records.
- ines (candidate; MIT; Rust; https://lib.rs/crates/ines) — Reads and writes iNES ROMs; version 0.3.0 (Feb 2023); repository on GitLab (gridbugs/mos6502).
- nes_rom (candidate; MIT; Rust; https://lib.rs/crates/nes_rom) — Parses iNES, UNIF and FDS files with basic validation; single unstable release 0.1.0 from April 2019.
Sources
- parsers/poka-nes-rom/src/main.rs
- parsers/poka-nes-rom/plugin.json