NEO-PVC

Chip used for bankswitching and security. Connected to the P ROMs in ROM-only boards and late cartridges: SNK vs. Capcom - SVC Chaos, Metal Slug 5 and The King of Fighters 2003.

Has 8KiB of embedded RAM organized as 4096 16bit words (maybe just 4080 words ?).

From [MAME's source]:

Accesses are done in the $2FE000~$2FFFFF range.

=Bankswitching=

The data mapped to $200000~$2FDFFF comes from ROM address {$2FFFF2, $2FFFF0 MSB} + $100000.

Example: if $0131 is written to $2FFFF2, and $2A00 is written to $2FFFF0, the data mapped starts at $11312A.

=Protection: color=

The chip provides two functions to pack and unpack colors. This is merely to make the games depend on the hardware to work correctly.


 * Pack: Write ---GGGGg---BBBBb to $2FFFE8, and ---D---RRRRr to $2FFFEA, get the regular palette word from $2FFFEC (DrgbRRRRGGGGBBBB).
 * Unpack: Write a palette word to $2FFFE0, get R/G/B values from $2FFFE2 (000GGGGg000BBBBb) and $2FFFE4 (0000000D000RRRRr).

=Protection: scrambling=

The P ROMs data is scrambled. Unscrambling is done on the fly by this chip. Each game has a different algorithm/table.