NES 2.0 Mapper 412: Difference between revisions

From NESdev Wiki
Jump to navigationJump to search
No edit summary
(Correct two mixed-up bits.)
 
Line 9: Line 9:
  D~[CARQ DBPL]  Mask: $E003, reset value: 0
  D~[CARQ DBPL]  Mask: $E003, reset value: 0
     |||| |||+-- Lock register $6001
     |||| |||+-- Lock register $6001
     |||| ||+--- 0: PRG A17 from MMC3, 1: from A Bit
     |||| ||+--- 0: PRG A18 from MMC3, 1: from B Bit
     |||| |+---- PRG A18 if Q=2
     |||| |+---- PRG A18 if Q=2
     |||| +----- CHR A18
     |||| +----- CHR A18
     |||+------- 0: PRG A18 from MMC3, 1: from B Bit
     |||+------- 0: PRG A17 from MMC3, 1: from A Bit
     ||+-------- 0: CHR A17 from MMC3, 1: from C Bit
     ||+-------- 0: CHR A17 from MMC3, 1: from C Bit
     |+--------- PRG A17 if P=1
     |+--------- PRG A17 if P=1

Latest revision as of 14:33, 22 June 2023

NES 2.0 Mapper 412 denotes an "MMC3 plus NROM" multicart mapper, used for the Intellivision 10-in-1 Plug 'n Play 2nd Edition as well as assorted multicarts from Henggedianzi. It uses an MMC3 clone with additional outer bank registers at $6000-$7FFF that are accessible via the MMC3's WRAM interface, meaning that WRAM must be enabled via $A001 for them to be written to.

8 KiB CHR Bank Register ($6000, write)

D~[BBBB BB..]  Mask: $E003, reset value: 0
   ++++-++---- CHR A18..A13

Only applicable in NROM banking mode ($6002.1=1).

Mode Register ($6001, write)

D~[CARQ DBPL]  Mask: $E003, reset value: 0
   |||| |||+-- Lock register $6001
   |||| ||+--- 0: PRG A18 from MMC3, 1: from B Bit
   |||| |+---- PRG A18 if Q=2
   |||| +----- CHR A18
   |||+------- 0: PRG A17 from MMC3, 1: from A Bit
   ||+-------- 0: CHR A17 from MMC3, 1: from C Bit
   |+--------- PRG A17 if P=1
   +---------- CHR A17 if R=1

PRG Bank Register ($6002, write)

D~[BBBB bQP.]  Mask: $E003, reset value: 0
   |||| ||+--- 0: MMC3 banking, 1: NROM PRG/CHR banking
   |||| |+---- 0: NROM-128, 1: NROM-256 banking, only if P=1
   |||| +----- PRG A14 if P=1 and Q=0
   ++++------- PRG A18..A15 if P=1