NEO-PVC

From NeoGeo Development Wiki
Jump to: navigation, search
Brd pvc.jpg
Package QFP144
Manufacturer Logo fujitsu.jpg
First use 2003 ?
Used on Cartridges MV1FZS...

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.