NES 2.0 Mapper 357: Difference between revisions

From NESdev Wiki
Jump to navigationJump to search
(Move Mr. Mary 2 mapper description from 043 to here.)
(fix in-page links)
 
Line 5: Line 5:
=Banks in SMB2J mode=
=Banks in SMB2J mode=
* CPU $5000-$5FFF: 4 KiB PRG-ROM bank, fixed to #16
* CPU $5000-$5FFF: 4 KiB PRG-ROM bank, fixed to #16
* CPU $6000-$7FFF: 8 KiB PRG-ROM bank, [[#PRG_Bank_Select_2_.28.244120.2C_write.29]]
* CPU $6000-$7FFF: 8 KiB PRG-ROM bank, [[#PRG_Bank_Select_2_.28.244120.2C_write.29|switchable to #2 or #0]]
* CPU $8000-$9FFF: 8 KiB PRG-ROM bank, fixed to #1
* CPU $8000-$9FFF: 8 KiB PRG-ROM bank, fixed to #1
* CPU $A000-$BFFF: 8 KiB PRG-ROM bank, fixed to #0
* CPU $A000-$BFFF: 8 KiB PRG-ROM bank, fixed to #0
* CPU $C000-$DFFF: 8 KiB PRG-ROM bank, switchable
* CPU $C000-$DFFF: 8 KiB PRG-ROM bank, switchable
* CPU $E000-$FFFF: 8 KiB PRG-ROM bank, [[#PRG_Bank_Select_2_.28.244120.2C_write.29]]
* CPU $E000-$FFFF: 8 KiB PRG-ROM bank, [[#PRG_Bank_Select_2_.28.244120.2C_write.29|switchable to #10 or #8]]
* PPU $0000-$1FFF: unbanked 8 KiB CHR-RAM
* PPU $0000-$1FFF: unbanked 8 KiB CHR-RAM



Latest revision as of 22:22, 26 August 2019

NES 2.0 Mapper 357 is used for a 4-in-1 multicart (cartridge ID 4602) from Bit Corp. The first game is Bit Corp's hack of the YUNG-08 conversion of Super Mario Brothers 2 (J) named Mr. Mary 2, the other three games are UNROM games.

Unlike most multicarts, there is no menu; instead, the desired game is selected via two DIP Switches that protrude through the cartridge shell. The DIP switches directly select the outer 128 KiB PRG-ROM bank, game-specific nametable mirroring and mapper mode --- outer bank 0 selects SMB2J mode, all others select UNROM mode. All four games use 8 KiB of unbanked CHR-RAM. Mirroring is Vertical for banks 0-2 and Horizontal for bank 3.

Banks in SMB2J mode

  • CPU $5000-$5FFF: 4 KiB PRG-ROM bank, fixed to #16
  • CPU $6000-$7FFF: 8 KiB PRG-ROM bank, switchable to #2 or #0
  • CPU $8000-$9FFF: 8 KiB PRG-ROM bank, fixed to #1
  • CPU $A000-$BFFF: 8 KiB PRG-ROM bank, fixed to #0
  • CPU $C000-$DFFF: 8 KiB PRG-ROM bank, switchable
  • CPU $E000-$FFFF: 8 KiB PRG-ROM bank, switchable to #10 or #8
  • PPU $0000-$1FFF: unbanked 8 KiB CHR-RAM

Registers in SMB2J mode

PRG Bank Select 1 ($4022, write)

Mask: probably $71FF

Bit 7654 3210
    ---------
    .... .CCC
          +++- Select 8 KiB PRG-ROM bank at CPU $C000-$DFFF.

The actual bank number is:

Value  Bank#
------------
0      4
1      3
2      5
3      3
4      6
5      3
6      7
7      3

PRG Bank Select 2 ($4120, write)

Mask: probably $71FF

Bit 7654 3210
    ---------
    .... ...I
            +- 0: CPU $6000-$7FFF to bank 2,
                  CPU $E000-$FFFF to bank 10
               1: CPU $6000-$7FFF to bank 0,
                  CPU $E000-$FFFF to bank 8

IRQ Control ($4122)

Mask: probably $F1FF

Bit 7654 3210
    ---------
    .... ...I
            +- 0: Acknowledge and disable IRQ, reset counter
               1: Enable IRQ

When enabled, the 12-bit IRQ counter increases on every M2 cycle until it overflows, upon which an IRQ is fired.

See also

PCB image analysis