TNES: Difference between revisions

From NESdev Wiki
Jump to navigationJump to search
(Category:File formats)
(Based on the images available (in particular, Adventure of Link and Metroid), byte 9 is a "battery" byte and not a "CHR-RAM" byte.)
Line 16: Line 16:
| 8 || Mirroring (0 mapper-controlled; 1 horizontal; 2 vertical)
| 8 || Mirroring (0 mapper-controlled; 1 horizontal; 2 vertical)
|-
|-
| 9 || CHR RAM (0 for none, 1 for 8192 bytes)
| 9 || Battery (0 none; 1 battery present)
|-
|-
| 10-11 || Used only for FDS images; purpose unknown, possibly side count
| 10-11 || Used only for FDS images; purpose unknown, possibly side count

Revision as of 20:21, 9 June 2018

The TNES file format was discovered in Nintendo 3DS Virtual Console games. It fulfills much the same role as iNES format, but it avoids allegations of having misappropriated a format from the emulation scene.

Offset Contents
0-3 "TNES" (54 4E 45 53)
4 Mapper (TNES codes, not iNES codes)
5 PRG ROM size in 8192 byte units
6 CHR ROM size in 8192 byte units
7 WRAM (0 for none, 1 for 8192 bytes)
8 Mirroring (0 mapper-controlled; 1 horizontal; 2 vertical)
9 Battery (0 none; 1 battery present)
10-11 Used only for FDS images; purpose unknown, possibly side count
12-15 Zero

Mapper numbers differ, and Nintendo's own ASIC mappers have a contiguous block:

TNES mapper iNES mapper Meaning Notes
0 0 NROM
1 1 SxROM (MMC1)
2 9 PNROM (MMC2)
3 4 TxROM (MMC3) And presumably HKROM (MMC6)
4 10 FxROM (MMC4)
5 5 ExROM (MMC5)
6 2 UxROM
7 3 CNROM
9 7 AxROM
100 FDS ROM image consists of 8192 byte BIOS followed by .qd sides, which are 65536-byte FDS sides with CRCs included but no 16-byte header. Size bytes 5-9 are zero, but 10-11 are used.

References