User:Lidnariq/MMC3 Variants: Difference between revisions
(→Discrete logic mappers: add all the various things we've incorporated into the wiki over the past several months) |
(weave MMC3 and non-MMC3 ASIC tables together. add legend. A few other recommendations from koitsu) |
||
Line 1: | Line 1: | ||
== MMC3- | == Legend for bank style == | ||
=== PRG === | |||
* 32 - Banks 32 KiB at a time | |||
* 16+16F - Bottom 16 KiB are bankable, top 16 KiB are fixed | |||
* 16F+16 - Bottom 16 KiB are fixed, top 16 KiB are bankable | |||
* 8+24F - Bottom 8 KiB are fixed, top 24 KiB are fixed | |||
* 3×8+8F - Three independent 8 KiB banks at bottom, topmost 8 KiB are fixed | |||
* N108 - The Namco 108 set the theme that many other bank styles derive from ( a.k.a. 8+8+16F = two independent 8 KiB banks at bottom, topmost 16 KiB are fixed) | |||
* MMC3 - The MMC3 extended the banking style of the Namco 108 ( user switches between N108 and 8F+8+8+8F = bottommost and topmost 8 KiB are fixed, middle two 8 KiB banks are independently bankable) | |||
=== CHR === | |||
* 8 - Banks 8 KiB at a time | |||
* 2×4 - Two independent 4 KiB banks | |||
* 4×2 - Four independent 2 KiB banks | |||
* 8×1 - Eight independent 1 KiB banks | |||
* N108 - repeated many times; equivalent to 2×2+4×1 = two independent 2 KiB banks followed by four independent 1 KiB banks | |||
* MMC3 - allows the user to swap which pattern table gets the "large" and "small" banks | |||
== ASIC mappers with simple banking == | |||
Also see [[Comparison of Nintendo mappers]] | |||
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
|- | |- | ||
! colspan=2| !! colspan=2|PRG !! colspan=2|CHR !! | ! colspan=2| !! colspan=2|PRG !! colspan=2|CHR !! | ||
|- | |- | ||
!iNES Mapper !! Short name !! bank style !! max !! bank style !! max !! Comments | !iNES Mapper !! Short name !! bank style !! max (KiB) !! bank style !! max (KiB) !! Comments | ||
|- | |- | ||
|[[iNES Mapper 206|206]] || N108 || 8+8+16F || 128 || 2×2+4×1 || 64 || none | |[[iNES Mapper 206|206]] || N108 || 8+8+16F || 128 || 2×2+4×1 || 64 || none | ||
|- | |- | ||
|[[iNES Mapper 004|4]] || [[MMC3]], [[MMC6]] || N108; 8F+8+8+8F || 512 || N108; 4×1+2×2 || 256 || H/V, ext WRAM, Scanline IRQ, MMC6 has 1024b int WRAM | |[[iNES Mapper 004|4]] || [[MMC3]], [[MMC6]] || N108; 8F+8+8+8F || 512 || N108; 4×1+2×2 || 256 || H/V, ext WRAM, Scanline IRQ, MMC6 has 1024b int WRAM | ||
|- | |||
|(none) || [[Family Computer Disk System|Famicom Disk System]] || 32+8F || arbitrary || 8KiB RAM only || 0 || [[FDS audio|Expansion audio]], H/V, Cycle IRQ | |||
|- | |||
|[[iNES Mapper 001|1]]/[[iNES Mapper 155|155]] || [[MMC1]] || 16+16F; 16F+16; 32 || 256 (512) || 1×8; 2×4 || 128 || 1/H/V, [[SxROM|sometimes bankable]] ext WRAM | |||
|- | |||
|[[iNES Mapper 005|5]] || [[MMC5]] || 32; 2×16; 16+8+8; 4×8 || 1024 || 1×8; 2×4; 4×2; 8×1 || 1024 || [[MMC5 audio|Expansion audio]], bankable ext WRAM, 1024b int WRAM, arbitrary mirroring, vertical split, Scanline IRQ, hardware multiplier | |||
|- | |||
|[[iNES Mapper 009|9]] || [[MMC2]] || 8+24F || 128 || 2×4 || 128 || H/V, tile triggered CHR banking | |||
|- | |||
|[[iNES Mapper 010|10]] || [[MMC4]] || 16+16F || 256 || 2×4 || 128 || H/V, ext WRAM, tile triggered CHR banking | |||
|- | |||
|[[iNES Mapper 016|16]]/[[iNES Mapper 159|159]] || [[Bandai FCG board|LZ93D50]] (I²C) || 16+16F || 256 || 8×1 || 256 || 1/H/V, serial EEPROM, Cycle IRQ | |||
|- | |||
|[[iNES Mapper 018|18]] || Jaleco SS88006 || 3×8+8F || 256? || 8×1 || 256 || 1/H/V, Cycle IRQ, ADPCM playback | |||
|- | |||
|[[iNES Mapper 019|19]] || [[Namco 163]] || 3×8+8F || 512 || 12×1 || 256 || [[Namco 163 audio|Expansion audio]], ROM nametables, arbitrary mirroring, Cycle IRQ, ext WRAM | |||
|- | |||
|[[iNES Mapper 021|21]]/[[iNES Mapper 023|23]]/[[iNES Mapper 025|25]] || [[VRC4]] || MMC3 || 256 || 8×1 || 512 || 1/H/V, ext WRAM, Scanline IRQ | |||
|- | |||
|[[iNES Mapper 022|22]]/[[iNES Mapper 023|23]]/[[iNES Mapper 025|25]] || [[VRC2]] || N108 || 256 || 8×1 || 256 || 1/H/V, serial EEPROM | |||
|- | |||
|[[iNES Mapper 024|24]]/[[iNES Mapper 026|26]] || [[VRC6]] || 16+8+8F || 256 || 6×1+2×3; 4×2+4×1; 4×1+4×2 || 256 (512) || [[VRC6 audio|Expansion audio]], ROM nametables, arbitrary mirroring, Scanline IRQ, ext WRAM | |||
|- | |||
|[[iNES Mapper 027|27]] || "Pirate" VRC4 || 3×8+8F || ?256? || 8×1 || 512 || 1/H/V, ?? IRQ, ? | |||
|- | |||
|[[iNES Mapper 028|28]] || [[User:Tepples/Multi-discrete mapper|Tepples's]] || 16+16F; 16F+16; 32 || 32…256 inner / 8192 outer || 1×8 || 32RAM || 1/H/V | |||
|- | |||
|[[iNES Mapper 032|32]] || Irem G101 || MMC3 || 256 || 8×1 || 256 || H/V | |||
|- | |- | ||
|[[iNES Mapper 033|33]]/[[iNES Mapper 048|48]] || TC0190 || N108 || 512 || N108 || 512 || H/V, ext WRAM, 48 has Scanline IRQ | |[[iNES Mapper 033|33]]/[[iNES Mapper 048|48]] || TC0190 || N108 || 512 || N108 || 512 || H/V, ext WRAM, 48 has Scanline IRQ | ||
|- | |- | ||
|[[iNES Mapper 064|64]] || [[RAMBO-1]] || 3×8+8F || 256 || MMC3; 8×1 || 256 || H/V, Scanline/Cycle IRQ | |[[iNES Mapper 064|64]] || [[RAMBO-1]] || 3×8+8F || 256 || MMC3; 8×1 || 256 || H/V, Scanline/Cycle IRQ | ||
|- | |||
|[[iNES Mapper 065|65]] || Irem H3001 || 3×8+8F || 256 (512?) || 8×1 || 256 || H/V, Cycle IRQ, ? | |||
|- | |||
|[[iNES Mapper 067|67]] || Sunsoft 3 || 16+16F || 128? || 4×2 || 128? || 1/H/V, Cycle IRQ, ?WRAM? | |||
|- | |||
|[[iNES Mapper 068|68]] || Sunsoft 4 || 16+16F || 256 || 4×2 || 256 || ROM nametables, 1/H/V, WRAM | |||
|- | |||
|[[iNES Mapper 069|69]] || [[Sunsoft FME-7]] || 4×8+8F || 256 || 8×1 || 256 || [[Sunsoft 5B audio|Expansion audio]], 1/H/V, Cycle IRQ, ext WRAM | |||
|- | |||
|[[iNES Mapper 073|73]] || [[VRC3]] || 16+16F || 128 || 8KiB RAM only || 0 || Cycle IRQ, ext WRAM | |||
|- | |- | ||
|[[iNES Mapper 074|74]]/[[iNES Mapper 194|194]] || TQROM-like (2kiB) || MMC3 || 1024 || MMC3 || 254 || ?like TQROM? | |[[iNES Mapper 074|74]]/[[iNES Mapper 194|194]] || TQROM-like (2kiB) || MMC3 || 1024 || MMC3 || 254 || ?like TQROM? | ||
|- | |||
|[[iNES Mapper 075|75]] || [[VRC1]] || 3×8+8F || 128 || 2×4 || 128 || H/V | |||
|- | |- | ||
|[[iNES Mapper 076|76]] || N108 (inflated CHR) || N108 || 128 || 4×2 || 128 || none | |[[iNES Mapper 076|76]] || N108 (inflated CHR) || N108 || 128 || 4×2 || 128 || none | ||
Line 21: | Line 81: | ||
|- | |- | ||
|[[iNES Mapper 082|82]] || X1-017 || 3×8+8F || 512? || MMC3 || 256 || H/V, 5120b int WRAM, ?IRQ? | |[[iNES Mapper 082|82]] || X1-017 || 3×8+8F || 512? || MMC3 || 256 || H/V, 5120b int WRAM, ?IRQ? | ||
|- | |||
|[[iNES Mapper 085|85]] || [[VRC7]] || 3×8+8F || 512 || 8×1 || 256 || [[VRC7 audio|Expansion audio]], 1/H/V, Scanline IRQ | |||
|- | |||
|[[iNES Mapper 090|90]]/[[iNES Mapper 209|209]]/[[iNES Mapper 211|211]] || for: Tekken 2 HKO || 8+32F; 8+16+16F; 4×8+8F; 8+32; 8+2×16; 4×8 || 1024 || 1×8; 2×4; 4×2; 8×1 || 256 || ROM nametables(209,211), 1/H/V(90) or arbitrary Mirroring(209,211), Scanline/Cycle/Pixel IRQ, hardware multiplier | |||
|- | |- | ||
|[[iNES Mapper 091|91]] || for: Street Fighter 3 HKO || N108 || 128 || 4×2 || 512 || IRQ, ? | |[[iNES Mapper 091|91]] || for: Street Fighter 3 HKO || N108 || 128 || 4×2 || 512 || IRQ, ? | ||
|- | |- | ||
|[[iNES Mapper 095|95]] || N108 (nametable) || N108 || 128 || N108 || 32 || 1/H | |[[iNES Mapper 095|95]] || N108 (nametable) || N108 || 128 || N108 || 32 || 1/H | ||
|- | |||
|[[iNES Mapper 097|97]] || Irem TAM-S1 || 16F+16 || 256 || 8KiB RAM only || 0 || 1/H/V | |||
|- | |||
|[[iNES Mapper 105|105]] || [[NES-EVENT]] || 16+16F; 16F+16; 32 || 256 || 8KiB RAM only || 0 || 1/H/V, ext WRAM, IRQ | |||
|- | |- | ||
|[[iNES Mapper 112|112]] || "chinese" N108 || N108 || 256 || N108 || 256 || H/V | |[[iNES Mapper 112|112]] || "chinese" N108 || N108 || 256 || N108 || 256 || H/V | ||
|- | |- | ||
|[[iNES Mapper 118|118]] || [[TLSROM]],[[TKSROM]] || MMC3 || 512 || MMC3 || 128 || Arbitrary mirroring, ext WRAM, Scanline IRQ | |[[iNES Mapper 118|118]] || [[TLSROM]], [[TKSROM]] || MMC3 || 512 || MMC3 || 128 || Arbitrary mirroring, ext WRAM, Scanline IRQ | ||
|- | |- | ||
|[[iNES Mapper 119|119]] || TQROM (8kiB) || MMC3 || 512 || MMC3 || 64 || H/V, ext WRAM, Scanline IRQ, CHR RAM and ROM | |[[iNES Mapper 119|119]] || TQROM (8kiB) || MMC3 || 512 || MMC3 || 64 || H/V, ext WRAM, Scanline IRQ, CHR RAM and ROM | ||
|- | |||
|[[iNES Mapper 153|153]] || [[Bandai FCG board|LZ93D50]] (RAM) || 16+16F || 512 || 8KiB RAM only || 0 || 1/H/V, Cycle IRQ, ext WRAM | |||
|- | |||
|[[iNES Mapper 157|157]] || [[Bandai FCG board|Bandai Datach]] || 16+16F || 256 || 8KiB RAM only || 0 || 1/H/V, Cycle IRQ, serial EEPROMs, barcode reader | |||
|- | |- | ||
|[[iNES Mapper 158|158]] || RAMBO-1 (nametable) || 3×8+8F || 256 || MMC3; 8×1 || 128 || Arbitrary mirroring, Scanline/Cycle IRQ | |[[iNES Mapper 158|158]] || RAMBO-1 (nametable) || 3×8+8F || 256 || MMC3; 8×1 || 128 || Arbitrary mirroring, Scanline/Cycle IRQ | ||
Line 43: | Line 115: | ||
|- | |- | ||
|[[iNES Mapper 192|192]]/[[iNES Mapper 195|195]] || TQROM-like (4kiB) || MMC3 || 512? || MMC3 || 252 || ?like TQROM? | |[[iNES Mapper 192|192]]/[[iNES Mapper 195|195]] || TQROM-like (4kiB) || MMC3 || 512? || MMC3 || 252 || ?like TQROM? | ||
|- | |||
|[[iNES Mapper 193|193]] || NTDEC TC-112 || 8+24F || 256 || 4+2+2 || 256 || none | |||
|- | |- | ||
|[[iNES Mapper 207|207]] || X1-005 (nametable) || 3×8+8F || 256 || N108 || 128 || 1/H, 128b int WRAM | |[[iNES Mapper 207|207]] || X1-005 (nametable) || 3×8+8F || 256 || N108 || 128 || 1/H, 128b int WRAM | ||
|- | |||
|[[iNES Mapper 210|210]] || [[Namco 163|Namco 175 and 340]] || 3×8+8F || 512 || 8×1 || 256 || 1/H/V(N340), ext WRAM(N175) | |||
|- | |||
|[[iNES Mapper 246|246]] || for: Fong Shen Bang - Zhu Lu Zhi Zhan || 4×8 || 512? || 4×2 || 512? || none? | |||
|- | |||
|[[iNES Mapper 252|252]] || for: San Guo Zhi || N108 || 256? || 8×1 || 128? || Scanline IRQ, ? | |||
|} | |} | ||
== | == Mappers with outer banks == | ||
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
|- | |- | ||
! colspan=2| !! colspan=3|PRG !! colspan=3|CHR !! | ! colspan=2| !! colspan=3|PRG !! colspan=3|CHR !! | ||
|- | |- | ||
!iNES Mapper !! Short name !! inner !! outer !! max !! inner !! outer !! max !! Comments | !iNES Mapper !! Short name !! inner !! outer !! max (KiB) !! inner !! outer !! max (KiB) !! Comments | ||
|- | |- | ||
|[[iNES Mapper 012|12]] || for: dbz5 || MMC3 || — || 512 || MMC3 || 2×256 || 512 || ?like MMC3? | |[[iNES Mapper 012|12]] || for: dbz5 || MMC3 || — || 512 || MMC3 || 2×256 || 512 || ?like MMC3? | ||
Line 79: | Line 159: | ||
|- | |- | ||
|[[iNES Mapper 245|245]] || MMC3 × [[SxROM#Higher_CHR_lines|SUROM]] || MMC3 || 512 || 1024 || 8kiB RAM only || — || 0 || ?like MMC3? | |[[iNES Mapper 245|245]] || MMC3 × [[SxROM#Higher_CHR_lines|SUROM]] || MMC3 || 512 || 1024 || 8kiB RAM only || — || 0 || ?like MMC3? | ||
|} | |} | ||
Line 158: | Line 170: | ||
You probably don't actually want to use these. | You probably don't actually want to use these. | ||
{| class="tabular sortable" | {| class="tabular sortable" | ||
! iNES || Chips || Max PRG || PRG bank | ! iNES || Chips || Max PRG (KiB) || PRG bank style || Max CHR (KiB) || CHR bank style || Mirroring || PRG RAM? || Bus conflicts? | ||
|- | |- | ||
| [[Color Dreams]] (11, [[iNES Mapper 144|144]]) || 1 || 128 || 32 || 128 || 8 || V/H hardwired || No || Yes | | [[Color Dreams]] (11, [[iNES Mapper 144|144]]) || 1 || 128 || 32 || 128 || 8 || V/H hardwired || No || Yes | ||
Line 166: | Line 178: | ||
| RET-[[UNROM 512]] (30) || 3 or 4 || 512 || 16+16F || 32RAM || 8 || 1 or V/H hardwired || No || Optional (extra IC) | | RET-[[UNROM 512]] (30) || 3 or 4 || 512 || 16+16F || 32RAM || 8 || 1 or V/H hardwired || No || Optional (extra IC) | ||
|- | |- | ||
| [[NINA-001]] ([[iNES Mapper 034|34]]) || 6 || 64 || 32 || 64 || 4 + 4 || V hardwired || Yes || No | | [[NINA-001]] ([[iNES Mapper 034|34]]) || 6 || 64 || 32 || 64 || 4+4 || V hardwired || Yes || No | ||
|- | |- | ||
| [[iNES Mapper 036|36]] || ? || 128 || 32 || 128 || 8 || V hardwired || Unlikely || Likely | | [[iNES Mapper 036|36]] || ? || 128 || 32 || 128 || 8 || V hardwired || Unlikely || Likely | ||
Line 174: | Line 186: | ||
| [[iNES Mapper 041|41]] || 7 || 256 || 32 || 128 || 8 / 32 || V/H switchable || Impossible || Partly | | [[iNES Mapper 041|41]] || 7 || 256 || 32 || 128 || 8 / 32 || V/H switchable || Impossible || Partly | ||
|- | |- | ||
| [[iNES Mapper 070|70]] || 3 || 256 || 16 + 16F || 128 || 8 || V/H hardwired || No || Likely | | [[iNES Mapper 070|70]] || 3 || 256 || 16+16F || 128 || 8 || V/H hardwired || No || Likely | ||
|- | |- | ||
| [[iNES Mapper 072|72]] || 4+speech || 256 || 16 + 16F || 128 || 8 || V/H hardwired || No || Yes | | [[iNES Mapper 072|72]] || 4+speech || 256 || 16+16F || 128 || 8 || V/H hardwired || No || Yes | ||
|- | |- | ||
| [[iNES Mapper 077|77]] || 4 || 512 || 32 || 32 + 6RAM || 2 || 4 || No || Likely | | [[iNES Mapper 077|77]] || 4 || 512 || 32 || 32+6RAM || 2 || 4 || No || Likely | ||
|- | |- | ||
| [[iNES Mapper 078|78.1]] || 3 || 128 || 16 + 16F || 128 || 8 || 1 || No || Likely | | [[iNES Mapper 078|78.1]] || 3 || 128 || 16+16F || 128 || 8 || 1 || No || Likely | ||
|- | |- | ||
| [[iNES Mapper 078|78.3]] || 5 || 128 || 16 + 16F || 128 || 8 || V/H switchable || No || Yes | | [[iNES Mapper 078|78.3]] || 5 || 128 || 16+16F || 128 || 8 || V/H switchable || No || Yes | ||
|- | |- | ||
| [[iNES Mapper 079|79]] ([[iNES Mapper 146|146]]) || 2 || 64 || 32 || 64 || 8 || V/H hardwired || No || No | | [[iNES Mapper 079|79]] ([[iNES Mapper 146|146]]) || 2 || 64 || 32 || 64 || 8 || V/H hardwired || No || No | ||
Line 190: | Line 202: | ||
| [[iNES Mapper 087|87]] ([[iNES Mapper 101|101]]) || 2 || 32 || || 32 || 8 || V/H hardwired || Impossible || No | | [[iNES Mapper 087|87]] ([[iNES Mapper 101|101]]) || 2 || 32 || || 32 || 8 || V/H hardwired || Impossible || No | ||
|- | |- | ||
| [[iNES Mapper 089|89]] || (2)† || 128 || 16 + 16F || 128 || 8 || 1 || No || Yes | | [[iNES Mapper 089|89]] || (2)† || 128 || 16+16F || 128 || 8 || 1 || No || Yes | ||
|- | |- | ||
| [[iNES Mapper 092|92]] || 5+speech || 256 || 16F + 16 || 128 || 8 || V/H hardwired || No || Yes | | [[iNES Mapper 092|92]] || 5+speech || 256 || 16F+16 || 128 || 8 || V/H hardwired || No || Yes | ||
|- | |- | ||
| [[iNES Mapper 093|93]] || (2)† || 128 || 16 + 16F || 8‡ || || V/H hardwired || No || Yes | | [[iNES Mapper 093|93]] || (2)† || 128 || 16+16F || 8‡ || || V/H hardwired || No || Yes | ||
|- | |- | ||
| [[iNES Mapper 094|94]] || 2 || 128 || 16 + 16F || 8 || || V/H hardwired || No || Yes | | [[iNES Mapper 094|94]] || 2 || 128 || 16+16F || 8 || || V/H hardwired || No || Yes | ||
|- | |- | ||
| [[iNES Mapper 096|96]] || 3 || 128 || 32 || 32RAM || 4 + 4F / 16 || V/H hardwired || No || Likely | | [[iNES Mapper 096|96]] || 3 || 128 || 32 || 32RAM || 4+4F / 16 || V/H hardwired || No || Likely | ||
|- | |- | ||
| [[iNES Mapper 099|99]] || 0* || 40 || 8 + 24F || 16 || 8 || 4 || No || No | | [[iNES Mapper 099|99]] || 0* || 40 || 8+24F || 16 || 8 || 4 || No || No | ||
|- | |- | ||
| [[iNES Mapper 107|107]] || 1? || 128 || 32 || 64 || 8 || V hardwired || No || Likely | | [[iNES Mapper 107|107]] || 1? || 128 || 32 || 64 || 8 || V hardwired || No || Likely | ||
Line 218: | Line 230: | ||
| [[iNES Mapper 149|149]] || 1? || 32 || || 16 || 8 || V/H hardwired || No || Yes | | [[iNES Mapper 149|149]] || 1? || 32 || || 16 || 8 || V/H hardwired || No || Yes | ||
|- | |- | ||
| [[iNES Mapper 152|152]] || 3 || 128 || 16 + 16F || 128 || 8 || 1 || No || Likely | | [[iNES Mapper 152|152]] || 3 || 128 || 16+16F || 128 || 8 || 1 || No || Likely | ||
|- | |- | ||
| [[iNES Mapper 168|168]] || 7 || 64 || 16 + 16F || 64RAM || 4F + 4 || V hardwired || No || No | | [[iNES Mapper 168|168]] || 7 || 64 || 16+16F || 64RAM || 4F+4 || V hardwired || No || No | ||
|- | |- | ||
| [[iNES Mapper 174|174]] || 3 || 128 || 16 or 32 || 64 || 8 || V/H switchable || No || No | | [[iNES Mapper 174|174]] || 3 || 128 || 16 or 32 || 64 || 8 || V/H switchable || No || No | ||
|- | |- | ||
| [[iNES Mapper 184|184]] || (3)† || 32 || || 32 || 4 + 4 || V/H hardwired || Impossible || No | | [[iNES Mapper 184|184]] || (3)† || 32 || || 32 || 4+4 || V/H hardwired || Impossible || No | ||
|- | |- | ||
| [[iNES Mapper 185|185]] || 1 || 32 || || 8 || || V/H hardwired || No || Yes | | [[iNES Mapper 185|185]] || 1 || 32 || || 8 || || V/H hardwired || No || Yes |
Revision as of 23:04, 2 July 2014
Legend for bank style
PRG
- 32 - Banks 32 KiB at a time
- 16+16F - Bottom 16 KiB are bankable, top 16 KiB are fixed
- 16F+16 - Bottom 16 KiB are fixed, top 16 KiB are bankable
- 8+24F - Bottom 8 KiB are fixed, top 24 KiB are fixed
- 3×8+8F - Three independent 8 KiB banks at bottom, topmost 8 KiB are fixed
- N108 - The Namco 108 set the theme that many other bank styles derive from ( a.k.a. 8+8+16F = two independent 8 KiB banks at bottom, topmost 16 KiB are fixed)
- MMC3 - The MMC3 extended the banking style of the Namco 108 ( user switches between N108 and 8F+8+8+8F = bottommost and topmost 8 KiB are fixed, middle two 8 KiB banks are independently bankable)
CHR
- 8 - Banks 8 KiB at a time
- 2×4 - Two independent 4 KiB banks
- 4×2 - Four independent 2 KiB banks
- 8×1 - Eight independent 1 KiB banks
- N108 - repeated many times; equivalent to 2×2+4×1 = two independent 2 KiB banks followed by four independent 1 KiB banks
- MMC3 - allows the user to swap which pattern table gets the "large" and "small" banks
ASIC mappers with simple banking
Also see Comparison of Nintendo mappers
PRG | CHR | |||||
---|---|---|---|---|---|---|
iNES Mapper | Short name | bank style | max (KiB) | bank style | max (KiB) | Comments |
206 | N108 | 8+8+16F | 128 | 2×2+4×1 | 64 | none |
4 | MMC3, MMC6 | N108; 8F+8+8+8F | 512 | N108; 4×1+2×2 | 256 | H/V, ext WRAM, Scanline IRQ, MMC6 has 1024b int WRAM |
(none) | Famicom Disk System | 32+8F | arbitrary | 8KiB RAM only | 0 | Expansion audio, H/V, Cycle IRQ |
1/155 | MMC1 | 16+16F; 16F+16; 32 | 256 (512) | 1×8; 2×4 | 128 | 1/H/V, sometimes bankable ext WRAM |
5 | MMC5 | 32; 2×16; 16+8+8; 4×8 | 1024 | 1×8; 2×4; 4×2; 8×1 | 1024 | Expansion audio, bankable ext WRAM, 1024b int WRAM, arbitrary mirroring, vertical split, Scanline IRQ, hardware multiplier |
9 | MMC2 | 8+24F | 128 | 2×4 | 128 | H/V, tile triggered CHR banking |
10 | MMC4 | 16+16F | 256 | 2×4 | 128 | H/V, ext WRAM, tile triggered CHR banking |
16/159 | LZ93D50 (I²C) | 16+16F | 256 | 8×1 | 256 | 1/H/V, serial EEPROM, Cycle IRQ |
18 | Jaleco SS88006 | 3×8+8F | 256? | 8×1 | 256 | 1/H/V, Cycle IRQ, ADPCM playback |
19 | Namco 163 | 3×8+8F | 512 | 12×1 | 256 | Expansion audio, ROM nametables, arbitrary mirroring, Cycle IRQ, ext WRAM |
21/23/25 | VRC4 | MMC3 | 256 | 8×1 | 512 | 1/H/V, ext WRAM, Scanline IRQ |
22/23/25 | VRC2 | N108 | 256 | 8×1 | 256 | 1/H/V, serial EEPROM |
24/26 | VRC6 | 16+8+8F | 256 | 6×1+2×3; 4×2+4×1; 4×1+4×2 | 256 (512) | Expansion audio, ROM nametables, arbitrary mirroring, Scanline IRQ, ext WRAM |
27 | "Pirate" VRC4 | 3×8+8F | ?256? | 8×1 | 512 | 1/H/V, ?? IRQ, ? |
28 | Tepples's | 16+16F; 16F+16; 32 | 32…256 inner / 8192 outer | 1×8 | 32RAM | 1/H/V |
32 | Irem G101 | MMC3 | 256 | 8×1 | 256 | H/V |
33/48 | TC0190 | N108 | 512 | N108 | 512 | H/V, ext WRAM, 48 has Scanline IRQ |
64 | RAMBO-1 | 3×8+8F | 256 | MMC3; 8×1 | 256 | H/V, Scanline/Cycle IRQ |
65 | Irem H3001 | 3×8+8F | 256 (512?) | 8×1 | 256 | H/V, Cycle IRQ, ? |
67 | Sunsoft 3 | 16+16F | 128? | 4×2 | 128? | 1/H/V, Cycle IRQ, ?WRAM? |
68 | Sunsoft 4 | 16+16F | 256 | 4×2 | 256 | ROM nametables, 1/H/V, WRAM |
69 | Sunsoft FME-7 | 4×8+8F | 256 | 8×1 | 256 | Expansion audio, 1/H/V, Cycle IRQ, ext WRAM |
73 | VRC3 | 16+16F | 128 | 8KiB RAM only | 0 | Cycle IRQ, ext WRAM |
74/194 | TQROM-like (2kiB) | MMC3 | 1024 | MMC3 | 254 | ?like TQROM? |
75 | VRC1 | 3×8+8F | 128 | 2×4 | 128 | H/V |
76 | N108 (inflated CHR) | N108 | 128 | 4×2 | 128 | none |
80 | X1-005 | 3×8+8F | 256 | N108 | 256 | H/V, 128b int WRAM |
82 | X1-017 | 3×8+8F | 512? | MMC3 | 256 | H/V, 5120b int WRAM, ?IRQ? |
85 | VRC7 | 3×8+8F | 512 | 8×1 | 256 | Expansion audio, 1/H/V, Scanline IRQ |
90/209/211 | for: Tekken 2 HKO | 8+32F; 8+16+16F; 4×8+8F; 8+32; 8+2×16; 4×8 | 1024 | 1×8; 2×4; 4×2; 8×1 | 256 | ROM nametables(209,211), 1/H/V(90) or arbitrary Mirroring(209,211), Scanline/Cycle/Pixel IRQ, hardware multiplier |
91 | for: Street Fighter 3 HKO | N108 | 128 | 4×2 | 512 | IRQ, ? |
95 | N108 (nametable) | N108 | 128 | N108 | 32 | 1/H |
97 | Irem TAM-S1 | 16F+16 | 256 | 8KiB RAM only | 0 | 1/H/V |
105 | NES-EVENT | 16+16F; 16F+16; 32 | 256 | 8KiB RAM only | 0 | 1/H/V, ext WRAM, IRQ |
112 | "chinese" N108 | N108 | 256 | N108 | 256 | H/V |
118 | TLSROM, TKSROM | MMC3 | 512 | MMC3 | 128 | Arbitrary mirroring, ext WRAM, Scanline IRQ |
119 | TQROM (8kiB) | MMC3 | 512 | MMC3 | 64 | H/V, ext WRAM, Scanline IRQ, CHR RAM and ROM |
153 | LZ93D50 (RAM) | 16+16F | 512 | 8KiB RAM only | 0 | 1/H/V, Cycle IRQ, ext WRAM |
157 | Bandai Datach | 16+16F | 256 | 8KiB RAM only | 0 | 1/H/V, Cycle IRQ, serial EEPROMs, barcode reader |
158 | RAMBO-1 (nametable) | 3×8+8F | 256 | MMC3; 8×1 | 128 | Arbitrary mirroring, Scanline/Cycle IRQ |
165 | MMC2 × MMC3 | MMC3 | 512 | 2×4 | 128 | tile triggered CHR banking, CHR RAM and ROM, ? |
182 | for: Pocahontas | MMC3 | 256 (512?) | MMC3 | 256 | H/V, Scanline IRQ, ? |
189 | MMC3 × BNROM | 32 | 512 | MMC3 | 256 | ? |
191 | TQROM-like (2kiB) | MMC3 | 256 (512?) | MMC3 | 128 | ?like TQROM? |
192/195 | TQROM-like (4kiB) | MMC3 | 512? | MMC3 | 252 | ?like TQROM? |
193 | NTDEC TC-112 | 8+24F | 256 | 4+2+2 | 256 | none |
207 | X1-005 (nametable) | 3×8+8F | 256 | N108 | 128 | 1/H, 128b int WRAM |
210 | Namco 175 and 340 | 3×8+8F | 512 | 8×1 | 256 | 1/H/V(N340), ext WRAM(N175) |
246 | for: Fong Shen Bang - Zhu Lu Zhi Zhan | 4×8 | 512? | 4×2 | 512? | none? |
252 | for: San Guo Zhi | N108 | 256? | 8×1 | 128? | Scanline IRQ, ? |
Mappers with outer banks
PRG | CHR | |||||||
---|---|---|---|---|---|---|---|---|
iNES Mapper | Short name | inner | outer | max (KiB) | inner | outer | max (KiB) | Comments |
12 | for: dbz5 | MMC3 | — | 512 | MMC3 | 2×256 | 512 | ?like MMC3? |
14 | for: Samurai Spirits | MMC3 | — | 512 | MMC3; 8×1 | 3×256 | 512 | H/V, ext WRAM, Scanline IRQ, ?like MMC3? |
37 | MMC3+'00+'161 | MMC3 | 64; 128 | 256 | MMC3 | 128 | 256 | H/V, Scanline IRQ |
44 | for: Super Big 7-in-1 | MMC3 | 128; 256 | 1024 | MMC3 | 128; 256 | 1024 | ?like MMC3? |
45 | for: Super 4-in-1 | MMC3 | 8…512 | 1024 (2048?) | MMC3 | 1…256 | 1024 (4096?) | ?like MMC3? |
47 | MMC3+'161 | MMC3 | 128 | 256 | MMC3 | 128 | 256 | H/V, Scanline IRQ |
49 | for: Super HIK 4-in-1 | MMC3; 32 | 128 | 512 | MMC3 | 128 | 512 | ?like MMC3? |
52 | for: Mario 7-in-1 | MMC3 | 128; 256 | 1024 | MMC3 | 128; 256 | 1024 | ?like MMC3? |
88/154 | N108 (pattern split) | N108 | — | 128 | 2×2/64 + 4×1/64 | 2×64 | 128 | none |
115 | for: Thunderbolt 2 (ch) | MMC3; 16+16F; 16+8+8F | — | 128 (256?) | MMC3 | 256 | 512 | ?like MMC3? |
116 | MMC1 × MMC3 × VRC2 | MMC3; 16+16F; 16F+16; 32 | — | 256 | MMC3; 2×4; 8×1 | 256 | 512 | 1/H/V, ?like MMC3? |
205 | for: 3-in-1 | MMC3 | 128; 256 | 512 | MMC3 | 128; 256 | 512 | ?like MMC3? |
245 | MMC3 × SUROM | MMC3 | 512 | 1024 | 8kiB RAM only | — | 0 | ?like MMC3? |
Discrete logic mappers
Only the ones not made by Nintendo.
This table describes the mappers as they existed, as opposed to any obvious oversize extensions.
See also Comparison of Nintendo mappers and User:Lidnariq/Discrete Logic Table.
You probably don't actually want to use these.
iNES | Chips | Max PRG (KiB) | PRG bank style | Max CHR (KiB) | CHR bank style | Mirroring | PRG RAM? | Bus conflicts? |
---|---|---|---|---|---|---|---|---|
Color Dreams (11, 144) | 1 | 128 | 32 | 128 | 8 | V/H hardwired | No | Yes |
29 (RET-CUFROM) | 3 | 128 | 16+16F | 32 | 8 | V hardwired | Yes | No |
RET-UNROM 512 (30) | 3 or 4 | 512 | 16+16F | 32RAM | 8 | 1 or V/H hardwired | No | Optional (extra IC) |
NINA-001 (34) | 6 | 64 | 32 | 64 | 4+4 | V hardwired | Yes | No |
36 | ? | 128 | 32 | 128 | 8 | V hardwired | Unlikely | Likely |
38 | 2 | 128 | 32 | 32 | 8 | V/H hardwired | Impossible | No |
41 | 7 | 256 | 32 | 128 | 8 / 32 | V/H switchable | Impossible | Partly |
70 | 3 | 256 | 16+16F | 128 | 8 | V/H hardwired | No | Likely |
72 | 4+speech | 256 | 16+16F | 128 | 8 | V/H hardwired | No | Yes |
77 | 4 | 512 | 32 | 32+6RAM | 2 | 4 | No | Likely |
78.1 | 3 | 128 | 16+16F | 128 | 8 | 1 | No | Likely |
78.3 | 5 | 128 | 16+16F | 128 | 8 | V/H switchable | No | Yes |
79 (146) | 2 | 64 | 32 | 64 | 8 | V/H hardwired | No | No |
86 | 3+speech | 128 | 32 | 64 | 8 | V/H hardwired | Impossible | No |
87 (101) | 2 | 32 | 32 | 8 | V/H hardwired | Impossible | No | |
89 | (2)† | 128 | 16+16F | 128 | 8 | 1 | No | Yes |
92 | 5+speech | 256 | 16F+16 | 128 | 8 | V/H hardwired | No | Yes |
93 | (2)† | 128 | 16+16F | 8‡ | V/H hardwired | No | Yes | |
94 | 2 | 128 | 16+16F | 8 | V/H hardwired | No | Yes | |
96 | 3 | 128 | 32 | 32RAM | 4+4F / 16 | V/H hardwired | No | Likely |
99 | 0* | 40 | 8+24F | 16 | 8 | 4 | No | No |
107 | 1? | 128 | 32 | 64 | 8 | V hardwired | No | Likely |
133 | 2? | 64 | 32 | 32 | 8 | V/H hardwired | No | No |
140 | 3 | 128 | 32 | 128 | 8 | V/H hardwired | Impossible | No |
143 | 2? | 32 | 8 | V/H hardwired | No | No | ||
145 | 2? | 32 | 16 | 8 | V/H hardwired | No | No | |
147 | 2? | 128 | 32 | 128 | 8 | V/H hardwired | No | No |
148 | 1? | 64 | 32 | 64 | 8 | V/H hardwired | No | Yes |
149 | 1? | 32 | 16 | 8 | V/H hardwired | No | Yes | |
152 | 3 | 128 | 16+16F | 128 | 8 | 1 | No | Likely |
168 | 7 | 64 | 16+16F | 64RAM | 4F+4 | V hardwired | No | No |
174 | 3 | 128 | 16 or 32 | 64 | 8 | V/H switchable | No | No |
184 | (3)† | 32 | 32 | 4+4 | V/H hardwired | Impossible | No | |
185 | 1 | 32 | 8 | V/H hardwired | No | Yes | ||
218 | -1§ | 32 | 1RAM | 1 hardwired | No | No |
† Mappers 89, 93, and 184 exist as a single IC, however their functions are trivially described using a small number of 7400-series ICs, and likely contain multiple silicon dice that were wire bonded together in the same package.
‡ Mapper 93 is technically the same 89 other than mirroring, but it only commercially existed using 8kB of CHR-RAM
* the Vs System distributed its original games as five or six 8 KiB ROMs, and decoding on its mainboard allowed banking of CHR like CNROM. It is a little disingenuous to claim that 0 ICs were necessary for banking since the same functionality is not possible on a Famicom, however, banking was incrementally free.
§ Doesn't have CHRROM, hence "-1" ICs