INES Mapper 043: Difference between revisions

From NESdev Wiki
Jump to navigationJump to search
(defaultsort)
(Rewrite)
Line 1: Line 1:
{{DEFAULTSORT:043}}[[Category:iNES Mappers]][[Category:FDS conversion mappers]]Nestopia's source claims that [[iNES Mapper 043]] represents the hardware for yet ''another'' pirate port of SMB2j (Lost Levels). FCEUX calls this port "LF36".
{{DEFAULTSORT:043}}[[Category:iNES Mappers]][[Category:FDS conversion mappers]][[Category:Mappers with cycle IRQs]]iNES Mapper 043 is used for Whirlwind Manu's second attempt (cartridge number LF36) at converting ''Super Mario Bros. 2'' from the Famicom Disk System to a ROM cartridge. Their first attempt (cartridge number LE10, [[NES 2.0 Mapper 304]]) hangs after completing level 4-4. Its UNIF board name is '''UNL-SMB2J''', along with several incompatible boards annoyingly all carrying the same UNIF MAPR.


Their implementations vary greatly, however. Furthermore, neither GoodNES (3.14) nor Nestopia's database has an instantiation of it.
=Banks=
* CPU $5000-$5FFF: 4 KiB PRG-ROM bank, fixed to #16 or #17 depending on DIP switch value (determines whether the title screen has the SMB2 logo or not)
* CPU $6000-$7FFF: 8 KiB PRG-ROM bank, fixed to #2
* 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, fixed to #9
* PPU $0000-$1FFF: unbanked 8 KiB CHR-ROM


It is attested this iNES Mapper corresponds to UNIF MAPR "UNL-SMB2J"; there are two images in GoodNES 3.14 ("Super Mario Bros. 2j (Unl) [U][!]" and "Volleyball (FDS Conversion) (Unl) [U][!]") with that UNIF MAPR.
=Registers=
==PRG Bank Select ($4022)==
Mask: $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      4
3     4
4      4
5      7
6      5
7      6
 
==IRQ Control ($8122)==
Mask: $71FF
Bit 7654 3210
    ---------
    .... ..II
            ++- 0: Acknowledge and disable IRQ
                1-3: Enable IRQ
 
When enabled, the 12-bit IRQ counter increases on every M2 cycle until it overflows, upon which an IRQ is fired.

Revision as of 05:23, 20 April 2018

iNES Mapper 043 is used for Whirlwind Manu's second attempt (cartridge number LF36) at converting Super Mario Bros. 2 from the Famicom Disk System to a ROM cartridge. Their first attempt (cartridge number LE10, NES 2.0 Mapper 304) hangs after completing level 4-4. Its UNIF board name is UNL-SMB2J, along with several incompatible boards annoyingly all carrying the same UNIF MAPR.

Banks

  • CPU $5000-$5FFF: 4 KiB PRG-ROM bank, fixed to #16 or #17 depending on DIP switch value (determines whether the title screen has the SMB2 logo or not)
  • CPU $6000-$7FFF: 8 KiB PRG-ROM bank, fixed to #2
  • 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, fixed to #9
  • PPU $0000-$1FFF: unbanked 8 KiB CHR-ROM

Registers

PRG Bank Select ($4022)

Mask: $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      4
3      4
4      4
5      7
6      5
7      6

IRQ Control ($8122)

Mask: $71FF

Bit 7654 3210
    ---------
    .... ..II
           ++- 0: Acknowledge and disable IRQ
               1-3: Enable IRQ

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