SUBOR

From NESdev Wiki
(Redirected from INES Mapper 166)
Jump to navigationJump to search

Subor is a company in Zhongshan, China, making NES clones with keyboards. Subor famiclones are reportedly the second most popular famiclone brand in Russia next to Dendy, and one may be the base for the playpower.org project.

A mapper used in Subor releases uses a glob that provides 16KB PRG banks swappable at $8000 and $C000. The iNES format assigns mappers 166 and 167 to these boards.

Overview

Banks

Registers

Nestopia and FCEUX implement mappers 166 and 167 as follows:

Outer bank ($8000-$9FFF)

7  bit  0
...B ....
   |
   +------ XORed with B from Mode below, selects 512KiB outer bank

Mode ($A000-$BFFF)

7  bit  0
...B MM..
   | ||
   | ++--- Banking mode:
   |        0- 512 KiB UNROM
   |        4- 512 KiB inverted UNROM (mapper 180)
   |        8,C- 32 KiB NROM
   +------ XORed with B from Outer bank above, selects 512 KiB outer bank

The source of the fixed bank ignores the outer bank, and varies depending on mapper number:

Mode
0 4
Mapper # 166 upper bank fixed to 7 lower bank fixed to 0x1F
167 upper bank fixed to 0x20

The 32 KiB NROM mode ignores the LSB of the 6 bit sum of inner and outer banks, selecting one of 32 different possible slices. However, for mapper 167, the upper and lower halves are reversed.

Inner bank 1 ($C000-$DFFF)

 7  bit  0
 ...b bbbb
    | ||||
    +-++++- XORed with Inner bank 2 below, selects 16KiB inner bank

Inner bank 2 ($E000-$FFFF)

 7  bit  0
 ...b bbbb
    | ||||
    +-++++- XORed with Inner bank 1 above, selects 16KiB inner bank

References