INES Mapper 034

From NESdev Wiki
Revision as of 18:12, 18 March 2014 by Tepples (talk | contribs) (Rephrase so as not to imply that implementing both sets of regs is the current best practice)
Jump to navigationJump to search


iNES Mapper 034 is used to designate both the BNROM and NINA-001 boards. These two boards are unrelated, but have unfortunately been grouped into the same mapper. Older emulators implemented both sets of registers simultaneously, which is safe for the existing commercial games.

If the emulator wishes to separate the two implementations, they may check the number of CHR banks present: BNROM should be used when there is 0 to 8 KiB of CHR, and NINA-001 should be used otherwise. The NES 2.0 header with a submapper can be used to force use of NINA-001 behavior even with 8 KiB of CHR ROM or CHR RAM.

BNROM

See: BNROM

  • PRG ROM size: 128 KB (mapper implementations may support up to 512 KB or 8 MB)
  • PRG ROM bank size: 32 KB
  • PRG RAM: None
  • CHR capacity: 8 KB RAM
  • CHR bank size: Not bankswitched
  • Nametable mirroring: Solder pads select vertical or horizontal mirroring
  • Subject to bus conflicts: Yes

Games:

  • Deadly Towers (Mashou)
  • Darkseed

Registers:

             7  bit  0
             ---------
 $8000-FFFF: .... ..PP - Select 32 KB PRG ROM bank

Emulators commonly support either a 4-bit or 8-bit register, enabling up to 512 KB or 8 MB PRG ROM. This variant may be referred to as BxROM.

NINA-001

See: NINA-001

  • PRG ROM size: 64 KB
  • PRG ROM bank size: 32 KB
  • PRG RAM: 8 KB, not battery backed
  • CHR ROM capacity: 32 KB ROM
  • CHR bank size: 4 KB
  • Nametable mirroring: hardwired to horizontal mirroring
  • Subject to bus conflicts: No

Games:

  • Impossible Mission 2

Registers::

        7  bit  0
        ---------
 $7FFD: .... ...P - Select 32 KB PRG ROM bank
 $7FFE: .... CCCC - Select 4 KB CHR bank at $0000
 $7FFF: .... CCCC - Select 4 KB CHR bank at $1000