INES Mapper 188

From NESdev Wiki
Jump to navigationJump to search

iNES Mapper 188 describes the board used for Bandai's Karaoke Studio. This game, like Nantettatte!! Baseball additionally supports an external ROM that allows augmenting the original game.

Overview

  • PRG ROM: Up to 256 KiB + Up to 256 KiB expansion cartridge
  • PRG ROM bank size: 16 KiB
  • PRG RAM: None
  • CHR capacity: 8 KiB RAM
  • CHR bank size: Not bankswitched
  • Nametable mirroring: Controlled by mapper
  • Subject to bus conflicts: Yes

The mapper IC used here has Mitsubishi's part number for custom orders: M60001.

Registers

$6000-$7FFF: Microphone input

The microphone for this game is permanently tethered to the cartridge, and contains two buttons labeled "A" (closer to the microphone itself) and "B" (closer to the cord).

Reads from this address provide the status of the microphone and its buttons:

7  bit  0
.... .MBA
---- ----
|||| ||||
|||| |||+- 0: A button is pressed
|||| ||+-- 0: B button is pressed
|||| |+--- 1-bit ADC microphone input
++++-+---- open bus

$8000-$FFFF: Banking control

7  bit  0
.LXR BBBB
---- ----
 ||| ||||
 ||| ++++- Select ROM bank mapped from $8000-$BFFF.
 ||+------ 0: Select external ROM, 1: Select internal ROM
 |+------- CIRAM A10 is connected to  0: PPU A10 ("vertical mirroring"), 1: PPU A11 ("horizontal mirroring")
 +-------- 1 bit latch, present but unused

The bank from $C000-$FFFF is fixed to the last bank of the internal ROM.

Warning

The 256 KiB iNES dumps under this mapper are actually the 128KiB internal ROM followed by a 128KiB expansion ROM.

For the 128 KiB iNES dump (solely the internal ROM), several emulators implement logic that selects the last bank of the internal ROM when the game tries to select the first of the external ROM. There may be a fingerprint the game requires on being absent. Properly implementing open bus is more accurate.

References