NEO-PVC: Difference between revisions
mNo edit summary |
(Functions (from MAME's source)) |
||
(6 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{ChipInfo | |||
|picture=brd_pvc.jpg | |||
|pkg=QFP144 | |||
|manu=fujitsu | |||
|date=2003 ? | |||
|used_on={{PCB|Cartridges}} {{PCB|MV1FZS}}... | |||
}} | |||
Chip used for bankswitching and security. Connected to the [[P ROM]]s in [[ROM-Only boards|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 [[https://github.com/mamedev/mame/blob/master/src/devices/bus/neogeo/prot_pvc.cpp#L83 MAME's source]]: | |||
Accesses are done in the [[68k memory map|$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 [[palettes|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. | |||
[[Category:Chips]] | [[Category:Chips]] |
Latest revision as of 21:20, 23 June 2018
Package | QFP144 |
Manufacturer | |
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.