Mapper: Difference between revisions

From NESdev Wiki
Jump to navigationJump to search
(new lead; mapper names)
Line 1: Line 1:
NES cartridges can include extra hardware which allows the use of large program and graphics ROMs and extra features. This extra hardware is usually referred to as a mapper, as it is used primarily to map the relatively small CPU and PPU address spaces to a portion of the larger address space of the ROM(s) on the cartridge.
A '''mapper''' is a piece of hardware soldered to a cartridge's printed circuit board that performs address decoding, [[Wikipedia:bank switching|bank switching]], and possibly interrupt generation for timing.


Mappers vary in how they translate addresses. The various CPU memory mapping schemes expand the maximum program size above the standard 32KB, while PPU memory mapping schemes can add new graphic features.
NES cartridges can include extra hardware which allows the use of large program and graphics ROMs and extra features. This extra hardware is usually referred to as a "mapper", as it is used primarily to map the relatively small CPU and PPU address spaces to a portion of the larger address space of the ROM(s) on the cartridge.


Most mappers fall into one of two categories: discrete logic, and ASIC based. Some discrete logic mappers are susceptible to bus conflicts.
Mappers vary in how they translate addresses. The various CPU memory mapping schemes expand the maximum program size above the standard 32 KiB to larger powers of 2, while PPU memory mapping schemes can add new graphic features.


All mappers are assigned, either individually or by groups, to either an iNES Mapper Number or a UNIF Board Name.  
Most mappers fall into one of two categories: discrete logic, and ASIC based. Some discrete logic mappers are susceptible to bus conflicts.  Nintendo uses the term '''Memory Management Controller''' (or '''MMC''' for short) for its ASIC mappers ("Why Game Paks Never Forget" article in ''Nintendo Power'').


Discrete logic mappers are often referred to by the name of a board that they are commonly used in (e.g. "UNROM").
ASIC mappers are named after the ASIC (e.g. "MMC1" or "FME-7").
The emulation community generally refers to mappers by a numbering scheme that originated with the [[iNES]] emulator (e.g. "mapper 002").


=== Programmer's reference ===
=== Programmer's reference ===
Line 12: Line 15:
* Konami: [[VRC1|VRC1]], [[VRC2|VRC2]], [[VRC3|VRC3]], [[VRC4|VRC4]], [[VRC6|VRC6]]/[[VRC6_audio|audio]], [[VRC7|VRC7]]/[[VRC7_audio|audio]], [[VRC_irq|VRC irqs]]
* Konami: [[VRC1|VRC1]], [[VRC2|VRC2]], [[VRC3|VRC3]], [[VRC4|VRC4]], [[VRC6|VRC6]]/[[VRC6_audio|audio]], [[VRC7|VRC7]]/[[VRC7_audio|audio]], [[VRC_irq|VRC irqs]]
* Others: [[Color Dreams]], [[NINA-101]], [[NINA-003-006|NINA-003/006]], [[SUBOR|SUBOR]]
* Others: [[Color Dreams]], [[NINA-101]], [[NINA-003-006|NINA-003/006]], [[SUBOR|SUBOR]]
*[[:Category:Discrete logic mappers|List of discrete logic mappers]]
*[[:Category:INES Mappers|List of iNES mapper numbers]]


=== Note ===
=== Note ===
* The pinout of every mapper is available [[Hardware_pinout|here]]
* The pinout of every mapper is available [[Hardware_pinout|here]]
* Information regarding iNes mappers is located [[::Category:INES_Mappers|here]] (temporary section)
* For a more exhaustive resource of mappers, Disch compiled a very detailed list of mappers all in one, covering more than 50 [[http://www.romhacking.net/docs/362/ mappers]].
* For a more exhaustive resource of mappers, Disch compiled a very detailed list of mappers all in one, covering more than 50 [[http://www.romhacking.net/docs/362/ mappers]].
[[Category:Mappers|*]]

Revision as of 17:05, 28 November 2009

A mapper is a piece of hardware soldered to a cartridge's printed circuit board that performs address decoding, bank switching, and possibly interrupt generation for timing.

NES cartridges can include extra hardware which allows the use of large program and graphics ROMs and extra features. This extra hardware is usually referred to as a "mapper", as it is used primarily to map the relatively small CPU and PPU address spaces to a portion of the larger address space of the ROM(s) on the cartridge.

Mappers vary in how they translate addresses. The various CPU memory mapping schemes expand the maximum program size above the standard 32 KiB to larger powers of 2, while PPU memory mapping schemes can add new graphic features.

Most mappers fall into one of two categories: discrete logic, and ASIC based. Some discrete logic mappers are susceptible to bus conflicts. Nintendo uses the term Memory Management Controller (or MMC for short) for its ASIC mappers ("Why Game Paks Never Forget" article in Nintendo Power).

Discrete logic mappers are often referred to by the name of a board that they are commonly used in (e.g. "UNROM"). ASIC mappers are named after the ASIC (e.g. "MMC1" or "FME-7"). The emulation community generally refers to mappers by a numbering scheme that originated with the iNES emulator (e.g. "mapper 002").

Programmer's reference

Note

  • The pinout of every mapper is available here
  • For a more exhaustive resource of mappers, Disch compiled a very detailed list of mappers all in one, covering more than 50 [mappers].