INES Mapper 159: Difference between revisions

From NESdev Wiki
Jump to navigationJump to search
(duplicate from iNES Mapper 016)
(→‎Registers: what's the distinction between the X24C01 and 24C01? elucidate.)
 
(8 intermediate revisions by 4 users not shown)
Line 1: Line 1:
[[Category:iNES Mappers|159]]
[[Category:iNES Mappers|159]][[Category:Mappers with cycle IRQs|159]]
iNES Mapper 159 is used for [[Bandai FCG]] boards with an [[Bandai LZ93D50 pinout|LZ93D50 ASIC]] and a 128-byte serial EEPROM (X24C01). The 128 bytes must be denoted as PRG-NVRAM in the [[NES 2.0]] header using byte value $10.
=Game List=
* ''Dragon Ball Z: Kyoushuu! Saiya-jin''
* ''Magical Taruruuto-kun: Fantastic World!!''
* ''Magical Taruruuto-kun 2: Mahou Daibouken''
* ''SD Gundam Gaiden - Knight Gundam Monogatari''


'''iNES Mapper 159''' represents the board containing the [[Bandai FCG board|Bandai LZ93D50]] and a 128 byte serial EEPROM.
=Banks=
* CPU $8000-$BFFF: 16 KiB switchable PRG ROM bank
* CPU $C000-$FFFF: 16 KiB PRG ROM bank, fixed to the last bank
* PPU $0000-$03FF: 1 KiB switchable CHR ROM bank
* PPU $0400-$07FF: 1 KiB switchable CHR ROM bank
* PPU $0800-$0BFF: 1 KiB switchable CHR ROM bank
* PPU $0C00-$0FFF: 1 KiB switchable CHR ROM bank
* PPU $1000-$13FF: 1 KiB switchable CHR ROM bank
* PPU $1400-$17FF: 1 KiB switchable CHR ROM bank
* PPU $1800-$1BFF: 1 KiB switchable CHR ROM bank
* PPU $1C00-$1FFF: 1 KiB switchable CHR ROM bank


It is tentatively suggested that in [[NES 2.0]], [[iNES Mapper 159]] be used to describe all boards using the LZ93D50 (differentiating using the RAM size byte), while [[iNES Mapper 016]] remains for only the FCG-1 and FCG-2.
=Registers=
All registers function the same way as [[INES Mapper 016]], submapper 5, except that the serial EEPROM is not a 24C02 but Xicor's X24C01. This EEPROM has operational differences compared to both the larger 24C02 and other vendors' 24C01.  Bandai's developers consistently thought the X24C01 was a little-endian device, and their code clocks in address and data bytes assuming this. However, it's actually a big-endian device, and a multi-byte read or write from EEPROM will increment the address accordingly.

Latest revision as of 00:11, 10 May 2020

iNES Mapper 159 is used for Bandai FCG boards with an LZ93D50 ASIC and a 128-byte serial EEPROM (X24C01). The 128 bytes must be denoted as PRG-NVRAM in the NES 2.0 header using byte value $10.

Game List

  • Dragon Ball Z: Kyoushuu! Saiya-jin
  • Magical Taruruuto-kun: Fantastic World!!
  • Magical Taruruuto-kun 2: Mahou Daibouken
  • SD Gundam Gaiden - Knight Gundam Monogatari

Banks

  • CPU $8000-$BFFF: 16 KiB switchable PRG ROM bank
  • CPU $C000-$FFFF: 16 KiB PRG ROM bank, fixed to the last bank
  • PPU $0000-$03FF: 1 KiB switchable CHR ROM bank
  • PPU $0400-$07FF: 1 KiB switchable CHR ROM bank
  • PPU $0800-$0BFF: 1 KiB switchable CHR ROM bank
  • PPU $0C00-$0FFF: 1 KiB switchable CHR ROM bank
  • PPU $1000-$13FF: 1 KiB switchable CHR ROM bank
  • PPU $1400-$17FF: 1 KiB switchable CHR ROM bank
  • PPU $1800-$1BFF: 1 KiB switchable CHR ROM bank
  • PPU $1C00-$1FFF: 1 KiB switchable CHR ROM bank

Registers

All registers function the same way as INES Mapper 016, submapper 5, except that the serial EEPROM is not a 24C02 but Xicor's X24C01. This EEPROM has operational differences compared to both the larger 24C02 and other vendors' 24C01. Bandai's developers consistently thought the X24C01 was a little-endian device, and their code clocks in address and data bytes assuming this. However, it's actually a big-endian device, and a multi-byte read or write from EEPROM will increment the address accordingly.