NEO-CMC
The most "basic" information published can be found at [MAME:neocrypt.c]
The NEO-CMC Chip is a Asic (Application Specific Integrated Circuit). This device can be programmed only once. Usually it's time consuming to design a custom chip directly. Then, severals trials could be made using FPGA (Field Programmable Gate Array) that can be writen thousands times. The Asic could be considered a final step from this process after many trials been performed.
To get a intuition about costs related, please read this: [FPGA vs ASICs production and design]
SNK planned to put protections to avoid Neo-Geo piracy using the NEO-CMC chip on the PCB NEO-MVS CHAFIO.
Fix bankswitching
Able to address max 512KiB of fix ROM (4 banks) ?
From MAME's bankswitching code for MotW:
VRAM($7500) needs to be set to $0200, and VRAM($7580) must be $FF0b with b being the bank number (0~3).
The Chip
This chip is a Toshiba asic TC190G series developed between 1990 and 1994. The evolution of this series can be found at [Toshiba Technology RoadMap].
The series TC190G cannot be found in datasheets anymore, but in past years had these models:
- TC190G06CF7008
- TC190G06CF7042
- TC190G06CF7050
and others...
Inside this chip, SNK put the following designs together:
- NEO-ZMC
- NEO-273
- New Scrambling system that interlaces M1 + (CX + S1) to decrypt all the Graphic Cartridge ROM data in real time.
The first released NEO-MVS CHAFIO PCB came out with NEO-CMC42 on the following cartridges:
CART ID | TITLE NAME |
070 | Zupapa |
251 | King Of Fighters 99 |
252 | Ganryu |
253 | Garou Mark Of the Wolves |
254 | Strikers 1945 |
255 | Prehistoric Isle 2 |
256 | Metal Slug 3 |
259 | Bang Bead |
260 | Nightmare in the Dark |
261 | Sengoku 3 |
On this version only S1 and CRoms were encrypted and M1 remained unencrypted. Almost one year later, SNK decided release one more layer on the algorithm, this time also encrypting M1 on this mixer chip. Then came out the second model of NEO-MVS CHAFIO with NEO-CMC50 on the following cartridges:
CART ID | TITLE NAME |
008 | Jockey Grand Prix |
257 | King Of Figthers 2000 |
262 | King Of Figthers 2001 |
263 | Metal Slug 4 |
264 | Rage of the Dragons |
265 | King Of Fighters 2002 |
266 | Power Instinct - Matrimele |
267 | Pochi to Nyaa |
268 | Metal Slug 5 |
269 | SNK vs Capcom Chaos |
270 | Samurai Showdown Zero / Samurai Showdown 5 |
271 | King of Fighters 2003 |
272 | Samurai Showdown Zero Special / Samurai Showdown 5 Special |
Some peoples talk about Jockey Grand Prix not be a official game, but its a little complicated. At least it's production was official, because they used the real and original encryption chip. That encryption cannot be mocked so easily and only the Toshiba and SNK knew the encryption.
Until today, nobody has released one card using this Asic on the underground market. That explain soe past years from now the emulator had bad M1 dumps, until Andreas create a mathematical algorithm that can do the process in half way. Half way because the real encryption and decryption is beyond two tables 256 bytes.
Explanation Later!
Neo-CMC only came out on this to models as listed above.
Pinout
OpenOffice Draw file: File:Neocmc 7050 7042.odg Notes:
- C_e_D[0..15]: C1/C3/C5/C7 data bus
- C_o_D[0..15]: C2/C4/C6/C8 data bus
- CX A[0..21]: C1/C2/C3/C4/C5/C6/C7/C8 address bus
- Pins 87,88 contains a RC circuit clock driver like in a 8085 with X1 and X2 pinouts
- Pins 89 and 92 are short circuited in Cartridge board.