iNES Mapper 178 is used by some games from Waixing (on a PCB named FS305), Nanjing (on a PCB named NJ0430), Jncota and Henge Dianzi as well as some educational computers from GameStar, a.k.a. Belsonic. The chipset is designed for using 8 KiB of chip-internal unbanked CHR-RAM, but can address external RAM/ROM as well, banked in 8 KiB amounts. Circuit boards described by iNES Mapper 178 connect external RAM as bankable PRG-RAM mapped to CPU $6000-$7FFF.
A company named Gameinis uses this chipset along with an infrared sensor built right into the cartridge shell. This sensor will generate IRQs upon detecting movement. As some non-sensor mapper 178 games are bothered by IRQs that they are not expecting, Submapper 0 denotes the absence, Submapper 1 the presence of the infrared sensor, used by at least the following cartridges:
7654 3210
---------
.... .SSM
||+- Nametable mirroring
|| 0: Vertical
|| 1: Horizontal
++-- PRG banking mode
0: NROM-256/BNROM (PRG A14=CPU A14)
1: UNROM (PRG A14..16=111b if CPU A14=1)
2: NROM-128
3: UNROM but with bit 0 of "fixed" bank selectable
(PRG A15..16=11b if CPU A14=1)
7654 3210
---------
.... .LLL
+++- PRG A16..A14
This can be considered an inner bank register for UNROM mode.
7654 3210 --------- HHHH HHHH ++++-++++- PRG A24?..A17
This can be considered an outer bank register for UNROM mode.
7654 3210 --------- BBBB BBBB ++++-++++- PRG-RAM A20?..A13
PRG-RAM is mapped to CPU $6000-$7FFF and is banked in 8 KiB amounts.
Some cartridges have an additional infrared sensor. Infrared receiving is working by having two registers:
$5000-$5FFF: [.... ...V] (read only)
V = read current bit from IR sensor
$6000-$7FFF: [I... ....] (write only)
I = set to activate interrupts by infrared signal
The I bit is set at power-on, i.e. without writing to the $6000-$7FFF register, interrupts will be enabled.
Categories: Mappers using $4020-$5FFF, Mappers with large PRG RAM, INES Mappers