MVS Hardware Repair Logs
Repairer: channelmaniac
Here's a pinout for the custom NEO-ZMC2 chip
The NEO-ZMC2 IC is documented incorrectly on a few websites. It does NOT multiplex sound data. Instead it takes the foreground and background graphics (16 bits each for a total of 32 bits) and interfaces with a single 8 bit (8 traces) connection to the Neo graphics subsystem.
On the older 2 slot the ZMC2 pins GAD0 through GAD3 and GBD0 through GBD3 connect to the NEO-C0 IC to get this multiplexed graphics data into the video subsystem.
Standard conventions apply - Vcc = +5v, Gnd = ground, a "*" means active low (when there's a bar over top of the pin's function), etc...
NEO-ZMC2 1 - GAD2 2 - GND 3 - GAD3 4 - DOTA 5 - LOAD 6 - EVEN 7 - H 8 - DOTB 9- NC 10- GBD0 11- GBD1 12- Gnd 13- GBD2 14- GBD3 15- C1 16- C1 17- C2 18- C3 19 - C4 20 - C5 21 - C6 22 - C7 23 - Gnd 24 - C8 25 - C9 26 - C10 27 - C11 28 - C12 29 - C13 30 - C14 31 - C15 32 - C16 33 - Vcc 34 - C17 35 - C18 36 - C19 37 - C20 38 - C21 39 - C22 40 - C23 41 - C24 42 - Gnd 43 - C25 44 - C26 45 - C27 46 - C28 47 - C29 48 - C30 49 - C31 50 - 12M 51 - NC 52 - Gnd 53 - MA11 54 - MA12 55 - MA13 56 - MA14 57 - MA15 58 - MA16 59 - MA17 60 - MA18 61 - MA19 62 - MA20 63 - Gnd 64 - MA21 65 - A8 66 - A9 67 - A10 68 - A11 69 - A12 70 - A13 71 - A14 72 - A15 73 - Vcc 74 - A0 75 - A1 76 - SORD0 (Can't quite make out the writing) 77 - CS* 78 - CSDOT* 79 - GAD0 80 - GAD1
From Kyuusaku on the Neo-Geo.com forums:
Here's the ZMC2's early counterpart at least for home carts:
ALPHA-8921 / PRO-CT0
D1 odd.15 1 64 VCC D3 odd.19 2 63 VCC D5 odd.24 3 62 odd.26 D6 D7 odd.28 4 61 odd.22 D4 D8 odd.14 5 60 odd.17 D2 D10 odd.18 6 59 odd.13 D0 D12 odd.23 7 58 A8 D14 odd.27 8 57 A7 inputs? D9 odd.16 9 56 A5 D11 odd.20 10 55 A9 D13 odd.25 11 54 test? D15 odd.29 12 53 test? D0 even.13 13 52 test? D2 even.17 14 51 test? D4 even.22 15 50 gnd D6 even.26 16 49 gnd D1 even.15 17 48 B39 D3 even.19 18 47 B38 D5 even.24 19 46 B37 mux outputs? D7 even.28 20 45 B36 D8 even.14 21 44 gnd D10 even.18 22 43 gnd D12 even.23 23 42 B35 D14 even.27 24 41 B34 D9 even.16 25 40 B33 mux outputs? D11 even.20 26 39 B32 D13 even.25 27 38 test? D15 even.29 28 37 test? B30 29 36 test? select inputs? B31 30 35 test? GND 31 34 test? GND 32 33 test?
Notes: test? = NC pins or pins with tracks that ONLY lead off the board for testing. A## are not address lines but home cart pin numbers as are B##
Here's the NEO-257 @ location J2 on the 2 slot board. (MV-2)
Pin - function/chip connection/slot connection (cartridge pin function) 1 - Slot 2 B26 (CA15) 2 - Gnd 3 - Gnd 4 - Slot 1 A19 (CA0) 5 - Slot 2 A19 (CA0) 6 - Slot 1 B19 (CA1) 7 - Slot 2 B19 (CA1) 8 - ZMC2 - 15 C0 (CA0) 9 - ZMC2 - 19 C4 (CA1) 10 - Gnd 11 - ZMC2 - 16 C1 (CA2) 12 - ZMC2 - 20 C5 (CA3) 13 - Slot 1 A20 (CA2) 14 - Slot 2 A20 (CA2) 15 - Slot 1 B20 (CA3) 16 - Slot 2 B20 (CA3) 17 - Input (Slot) Select 1/2 18 - Gnd 19 - Slot 1 A21 (CA4) 20 - Slot 2 A21 (CA4) 21 - Slot 1 B21 (CA5) 22 - Slot 2 B21 (CA5) 23 - ZMC2 - 17 C2 (CA4) 24 - ZMC2 - 21 C6 (CA5) 25 - Gnd 26 - Vcc 27 - ZMC2 - 18 C3 (CA6) 28 - ZMC2 - 22 C7 (CA7) 29 - Slot 1 A22 (CA6) 30 - Slot 2 A22 (CA6) 31 - Slot 2 B22 (CA7) 32 - Slot 2 B22 (CA7) 33 - Gnd 34 - Gnd 35 - Vcc 36 - Slot 1 A23 (CA8) 37 - Slot 2 A23 (CA8) 38 - Slot 1 B23 (CA9) 39 - Slot 2 B23 (CA9) 40 - ZMC2 - 24 C8 (CA8) 41 - ZMC2 - 28 C12 (CA9) 42 - Gnd 43 - ZMC2 - 25 C9 (CA10) 44 - ZMC2 - 29 C13 (CA11) 45 - Slot 1 A24 (CA10) 46 - Slot 2 A24 (CA10) 47 - Slot 1 B24 (CA11) 48 - Slot 2 B24 (CA11) 49 - NC 50 - NC 51 - Slot 1 A25 (CA12) 52 - Slot 2 A25 (CA12) 53 - Slot 1 B25 (CA13) 54 - Slot 2 B25 (CA13) 55 - ZMC2 - 26 C10 (CA12) 56 - ZMC2 - 30 C14 (CA13) 57 - Gnd 58 - Vcc 59 - ZMC2 - 27 C11 (CA14) 60 - ZMC2 - 31 C15 (CA15) 61 - NC 62 - Slot 1 A26 (CA14) 63 - Slot 2 A26 (CA14) 64 - Slot 1 B26 (CA15)
If you look at a 74257 data sheet you will see that it is a 2 to 1 data multiplexer. The NEO-257 is simply 4 of these chips combined into one package to save some board space.
The hard part is that I cannot tell which pins are for "output enable" like on the 74257 since the only function that isn't set to ground or +5v is the one for input select. It appears these chips are set to always be enabled.
Enjoy!
NEO-257 pinouts 1 - Input 16B 2 - Gnd 3 - Gnd 4 - Input 1A 5 - Input 1B 6 - Input 2A 7 - Input 2B 8 - Output 1 9 - Output 2 10 - Gnd 11 - Output 3 12 - Output 4 13 - Input 3A 14 - Input 3B 15 - Input 4A 16 - Input 4B 17 - Input Select A/B 18 - Gnd 19 - Input 5A 20 - Input 5B 21 - Input 6A 22 - Input 6B 23 - Output 5 24 - Output 6 25 - Gnd 26 - Vcc 27 - Output 7 28 - Output 8 29 - Input 7A 30 - Input 7B 31 - Input 8A 32 - Input 8B 33 - Gnd 34 - Gnd 35 - Vcc 36 - Input 9A 37 - Input 9B 38 - Input 10A 39 - Input 10B 40 - Output 9 41 - Output 10 42 - Gnd 43 - Output 11 44 - Output 12 45 - Input 11A 46 - Input 11B 47 - Input 12A 48 - Input 12B 49 - NC 50 - NC 51 - Input 13A 52 - Input 13B 53 - Input 14A 54 - Input 14B 55 - Output 13 56 - Output 14 57 - Gnd 58 - Vcc 59 - Output 15 60 - Output 16 61 - NC 62 - Input 15A 63 - Input 15B 64 - Input 16A
Troubleshooting Color and Sync problems on MVS boards:
This post is from the perspective of repairing a MVS 2F board - the newer version of the 2 slot - but will work for most other MVS boards.
The output of the video subsection will go through the NEO-G0 chip then on to the Palette RAM (8k x 8bit SRAM) and the 74LS273 latches. From there it goes to a resistor ladder per color with a couple of the lines being buffered/amplified (higher current) by a 74LS05 IC before going out to the JAMMA connector.
When troubleshooting MVS color issues take a moment to divide the problem into sections.
1. Palette, or Color RAM error 2. No Sync (either horizontal or vertical) 3. Missing or incorrect colors
Part 1: Palette, or Color RAM error
If there are Palette RAM problems this can be caused by a problem in any of the ICs connected to that data bus: NEO-G0 chip, Palette SRAM, or the 74LS273 latches. The easiest thing to do is to power OFF the board and check the data lines on the SRAM ICs for shorts to +5v or ground connections. If there are none then replace the SRAM first.
If there is a short, remove the 74LS273 ICs first as they will be the most likely culprit. Check the data lines again. If the short is gone, replace the latches. If not, move on to the next chips, the SRAM. Repeat tests and replace the NEO-G0 last.
Part 2: No Sync (either Horizontal or Vertical)
The sync line goes from the NEO-I0 chip through a 100 ohm resistor to the JAMMA connector. It's also tied high to +5v through a 470 ohm resistor. Check both resistors. Replace if bad. If there is still no sync, replace the NEO-I0 chip.
Part 3: Missing or incorrect colors
Missing colors can be caused by any of the parts in the output section. Unless there's an esoteric problem with the Color RAM the digital part can be mostly taken out of the equation.
The output is made up of the 74LS273 latches, a series of resistors forming a ladder network, and 74LS05 Hex Buffer/Inverter IC.
With the power OFF, check the inputs and outputs of the 74LS05 IC for shorts to either +5v or ground connections. Replace the IC if any shorts are found. If there are shorts but the 74LS05 IC isn't it then replace the 74LS273 ICs. Next check the resistors for any that are burned.
If the RGB outputs are shorted the most likely culprits will the the 220 ohm and 150 ohm resistors as these are the lower value resistors. (The lower the value the higher the current that will flow through during a short.) check these resistors with an ohmmeter and replace any that are not reading correctly.
The next step is to check the outputs of the 74LS273 ICs with a logic probe. On the datasheet there are D and Q pins listed. The D is the input, the Q is the output. Check for signals on both sides. Replace the ICs that have inputs but no outputs between their D and Q pins.
Hook everything back up after replacing the parts and give it a test!
I had a board in the shop with missing red colors. There were no other symptoms on this board such as lines through images, etc... just screwy looking colors.
I replaced the NEO-G0 IC before stepping back and taking a better look at the circuit. After analyzing the circuit I replaced a shorted 74LS05 IC and two bad resistors to fix the board.
The 150 ohm and 220 ohm resistors were bad and the 74LS05 gate driving the 150 ohm resistor was shorted to ground.
Troubleshooting Backup RAM Errors
If you see this for a Backup RAM Error:
Code:
Backup RAM Error:
Address Write Read 00D00000 5555 0000
Then you have a different problem all together.
This is caused by the chip not being selected properly for read/write access. This is almost always (well, I'd say > 99.5%) a problem with the chip or with the trace that is controlling the SRAM and NOT with the SRAM.
Look for broken traces whether from battery leakage or someone scraping something across the board which physically damaged the traces. If that's not it then trace back the chip control traces to see what chip is feeding it.
On the 32k x 8 SRAM ICs (the 62256 or equivalent) that are used for the Backup, Work, and Video RAM that would be:
Code:
Pin 27: *write (also known as *WE) - Write Enable Pin 22: *G (also known as *OE) - Output Enable Pin 20: *E (also known as *CE) - Chip Enable
OK, OK... the * in front means it is an active low signal. If it's high, it's not being signaled. If you get NO signal from your logic probe on one of the pins then you have an open trace for sure.
Pin 20: should always be grounded on the Work RAM and Video RAM. That pin is directly connected to ground and if it isn't then you have a physically damaged trace. On the Backup RAM it is used to put the chips into low power standby mode.
Pin 22 & 27 connect to different chips. These are the ones you are most concerned with when troubleshooting this type of problem. Follow the traces and repair corroded or otherwise damaged ones. (99.5% of the times this is the fix)
Oh, when troubleshooting these you WILL have to strip off the red cardboard and the black foam under the circuit board in order to follow the traces. Have fun cleaning all that crap off. Yuck.
When troubleshooting cartridge issues it helps to know which ROM does what.
P ROM - 68K program (16-bit) V1 ROM - ADPCM-A port (8-bit) <-- Music & sound samples V2 ROM - ADPCM-B port (8-bit) <-- Music & sound samples
C ROM - VDP object tiles (32-bit) S ROM - VDP overlay tiles (8-bit) M ROM - Z80 program (8-bit) <-- Sound Program ROM
Tip: Neo-Geo Cartridge ROM Functions:
P: Program ROMs
P1 is typically the main program ROM, it can be up to 8M and contains the entire game logic.
Some old PROG boards use 2/4M ROMs so P2-4 can be the rest of the P1 address space.
Then there's another address range used for a few different things such as the link circuitry, Fatal Fury 2 protection and later on it became used for another 8M+ of program ROM. ROMs mapped here are SP2 (P2 on the chip) if P1 is 8M.
EP1 replaces P1 with updated program code.
EP2 can be either the second half of EP1 if they're both 4M or can be the same thing as SP2 (8M+).
V are YM2610 ADPCM data ROMs.
There are actually two types of V ROM, one for the low frequency channel, one for the high. Games quickly started containing a chip called NEO-PCM which allows both channels to use the same ROM.
C ROMs only contain sprite data (which also makes up the backgrounds on the Neo), not the fixed tile layer data.
M ROM contains the Z80 sound engine program as well as the actual "track" sequences. Remember all sample data however is contained in the V ROMs.
S aka the "FIX" layer ROM contains the fixed (non-scrollable) tilemap layer that overlays sprites. Life/POW bars are made of this.
Thanks to Calpis on the Assemblergames.com forum for this info!
Tip: Checking the NiCd Battery for leakage
One funny thing about NiCd batteries are that they leak after they go bad. This isn't a normal kind of leakage you would expect from a battery but is rather a crystalline growth that appears on the terminals and spreads across the board and follows traces. This will eventually turn a telltale blue but when first starting out looks like simple dust.
Do not let this dust fool you!
When the battery starts to leak it must be replaced ASAP as the leakage will only get worse. This will eat traces and component leads. It will ruin sockets, chips, resistors, capacitors, and more. It doesn't care if the board is a common cheapie or a rare expensive one. It will leak just the same.
Here are 2 pics of the same battery. One is the shot of the positive terminal and the other of the negative. In one picture the solder joint is nice and shiny - a good looking solder joint. In the other you can see the growth on the battery and how it has already affected the solder joint. That isn't a cold solder joint but rather one that has been chemically corroded by the leakage from the battery.
When replacing these old NiCd batteries it is OK to use NiMH types with the same form factor. It is also OK to replace them with a battery having a higher milliamp hour rating such as replacing a 50maH with a 70maH rated battery.
Good luck, and replace those batteries before they ruin the game!
Tip: BIOS Identification
Here's a tip from a former SNK employee:
Power up the MVS board without a cartridge installed. Look at the border color around the edge of the crosshatch screen. The color will reflect the region the BIOS is for.
Green: 6 slot, an older BIOS Light Blue: USA BIOS, labeled SPU2 Dark Blue: Spanish BIOS, labeled SPS2 Red: Japanese BIOS, labeled SPJ2