INES Mapper 068

From NESdev Wiki
Revision as of 16:53, 27 February 2011 by Quietust (talk | contribs) (clarify nametable registers - $C000 overrides the lower nametable and $D000 overrides the upper nametable, then mirroring gets done accordingly)
Jump to navigationJump to search

iNES Mapper 068 is a mapper used by After Burner 2 for Famicom. It has the unusual ability to map CHR ROM into the part of the PPU's address space used for nametables.

Registers

$8000-$8FFF: CHR bank at $0000

Map a 2 KiB CHR ROM bank into PPU $0000.

$9000-$9FFF: CHR bank at $0800

Map a 2 KiB CHR ROM bank into PPU $0800.

$A000-$AFFF: CHR bank at $1000

Map a 2 KiB CHR ROM bank into PPU $1000.

$B000-$BFFF: CHR bank at $1800

Map a 2 KiB CHR ROM bank into PPU $1800.

$C000-$CFFF: Nametable register 0

Map a 1 KiB CHR ROM bank in place of the lower nametable (CIRAM $000-$3FF). Only D6-D0 are used; D7 is ignored and treated as 1, so nametables must be in the last 128 KiB of CHR ROM.

$D000-$DFFF: Nametable register 1

Map a 1 KiB CHR ROM bank in place of the upper nametable (CIRAM $400-$7FF). Only D6-D0 are used; D7 is ignored and treated as 1.

$E000-$EFFF: Mirroring

7654 3210
   |    |
   |    +- Mirroring: 0 for vertical or 1 for horizontal
   +------ Chip select for PPU $2000-$2FFF (nametables):
           0 for CIRAM or 1 for CHR ROM

Mirroring works the same way in both CIRAM and CHR ROM modes.

$F000-$FFFF: PRG bank at $8000

PRG bank switching works much like iNES Mapper 002. Writes map a 16 KiB PRG bank into $8000-$BFFF, leaving $C000-$FFFF fixed to the last 16 KiB in the PRG ROM.

References

  • [362]mapper_docs.zip by Disch