INES Mapper 043: Difference between revisions
From NESdev Wiki
Jump to navigationJump to search
NewRisingSun (talk | contribs) m (LE10 hanging on real hardware demonstration video) |
(→IRQ Control ($8122): mask here has to include A15 so that it doesn't overlap with NES-internal RAM) |
||
Line 32: | Line 32: | ||
==IRQ Control ($8122)== | ==IRQ Control ($8122)== | ||
Mask: $ | Mask: $F1FF | ||
Bit 7654 3210 | Bit 7654 3210 |
Revision as of 23:03, 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 on real hardware 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: $F1FF Bit 7654 3210 --------- .... ..II ++- 0: Acknowledge and disable IRQ, reset counter 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.