4-in-1 multicart

From NESdev Wiki
Revision as of 03:46, 6 October 2022 by Rainwarrior (talk | contribs) (Category:Mappers)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

4-in-1 multicart

4-in-1 menu
4-in-1 top
4-in-1 bottom
4-in-1 schematic

This cartridge contains 4 CNROM games:

  • Puzzle
  • F-15 City War
  • Volley Ball
  • PokeBlock

Banks

  • CPU $8000-$ffff: 32 KiB switchable PRG ROM bank
  • PPU $0000-$1fff: 8 KiB switchable CHR ROM bank

Mirroring

H/V (selected by software)

Subject to bus conflicts

Yes

Registers

Mask: $8000

$8000: [..pP CCCC]
          || ||||
          || ++++- select 8kB CHR-ROM bank at $0000-$1fff
          ++------ select 32 kB PRG-ROM bank at $8000-$ffff
          +------- select mirroring (0=H, 1=V)

Quirks

  • Multicart register overlaps CNROM register and multicart register is not protected from writes after game is selected, so all games' bankswitching routines had to be patched
  • The register is not initialized on powerup or reset, so all games' reset vector had to be patched
  • DIP28 1 Mibit mask roms are used both for PRG and CHR (pin 22, which is normally used as !OE in DIP28 EEPROMS is utilized as A16)
  • This is basically identical to GxROM but one bit also determines nametable mirroring as well as PRG bank