NES 2.0 Mapper 357: Difference between revisions
NewRisingSun (talk | contribs) |
NewRisingSun (talk | contribs) (fix in-page links) |
||
(4 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{DEFAULTSORT:357}}[[Category:Multicart mappers|357]][[Category: | {{DEFAULTSORT:357}}[[Category:Multicart mappers|357]][[Category:Mappers with CHR RAM|357]][[Category:FDS conversion mappers|357]][[Category:Mappers with cycle IRQs|357]]'''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 [[NES 2.0 Mapper 368|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, [[#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 $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, [[#PRG_Bank_Select_2_.28.244120.2C_write.29|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= | =See also= | ||
[https://forums.nesdev.org/viewtopic.php?f=9&t=17399 PCB image analysis] | [https://forums.nesdev.org/viewtopic.php?f=9&t=17399 PCB image analysis] |
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.