INES Mapper 132
From NESdev Wiki
Jump to navigationJump to search
INES Mapper 132 is used by games from TXC Corporation:
- 棋王 (Qíwáng, Chinese Chess) (MGC-001)
- Creatom (MGC-003)
Its UNIF board name is UNL-22211.
Banks
- CPU $8000-$FFFF: 32 KiB switchable PRG ROM bank
- PPU $0000-$1FFF: 8 KiB switchable CHR ROM bank
Registers
Mapper 132 uses a custom IC serving as a latch, adder and inverter. There are five registers: Input (4 bits), Output (4 bits), Register (4 bits), Mode (1 bit) and Invert (1 bit).
Mask: $E103 Read $4100-$4103: [.... RRRR]: Read Register. Bit 3 is inverted if Invert==1. Bits 4-7 are open bus. Write $4100: When Mode==0: Bits 0-3 of Register := Input, bits 0-2 being inverted if Invert==1. When Mode==1: Bits 0-2 of Register incremented by one, bit 3 unaffected. Write $4101: Invert := Written value bit 0. Write $4102: Input := Written value bits 0-3. Write $4103: Mode := Written value bit 0. Write $8000-$FFFF: Output := Register; written value is ignored.
In Mapper 132, Output is connected as follows:
3210 ---- .|++- Select 8 KiB CHR-ROM bank at PPU $0000-$1FFF (CHR A13/A14) +-- Select 32 KiB PRG-ROM bank at CPU $8000-$FFFF (PRG A15)
Games will also check the lower three bits of $4100 for the correct value after several increment and inversion operations as a copy-protection measure.
Errata
- 戰國四川省 (Zhànguó Sìchuān Shěng, original version of AVE's Tiles of Fate) is set to Mapper 132 in GoodNES 3.23b. That ROM image is actually a mapper hack with the PRG-ROM code unmodified but the CHR-ROM banks rearranged to work as Mapper 132; the correct mapper is INES Mapper 173. That mapper hack only works on certain emulators' implementation of Mapper 132, not on the above implementation based on studying the circuit board.
Similar Mappers
The custom IC was first analyzed for INES Mapper 036. INES Mapper 173 is similar to Mapper 132 except that CHR A14 is taken from the inverse of the Invert bit rather than Output bit 1.