PCB Repair: Mortal Kombat (T-Unit)

Problem

Dead; displays garbage.

Diagnosis

I removed and verified program ROMs UJ12 and UG12. Both checksums matched those of the “Mortal Kombat (rev 4.0 T-Unit 02/11/93)” MAME ROMset.

The TMS34010 CPU appeared to be alive, however there was no activity on the /CS lines of UJ12/UG12. The input signal, /PMEMCS, is produced by the TPC-1020A FPGA at UF5.

The FPGA handles address decoding, arbitration between the CPU and DMA2 ASIC and game-specific copy-protection (a unique FPGA is required for each game).

MK_FPGA.JPG
510-13508-00

I swapped in an FPGA from MKII, which brought the game somewhat back to life; as far the service mode at least. Bugger. Looks like I’d have to find a working FPGA to progress.

Help was on hand from KLOV forum member esqueleto, who very generously sent me a couple of spare FPGAs. Out of curiosity I tried reading both FPGAs in my Unisite programmer but (shock!) they both appear to be read-protected.

With a new FPGA, the game sprang back into life:

MKRed.jpg
So much blood

I tried setting the blood DIP switch to off but it made no difference. Perhaps something was missing, like blue and green?

The self-test didn’t report any errors with the palette RAM (UA8/UC8), so I immediately suspected the color output latch and/or buffer which handle the blue and green video outputs:

MKPalette.png
Not everything needs a caption, Phil

Indeed, a quick probing of UB4 showed some incredibly weak outputs:

MK_UB4_Bad.png
Pathetic

UB4 was summarily desoldered, replaced and stamped on. All fixed now, right?

MKDark.JPG
Nope…

What on earth could be wrong now? Referring back to the video output portion of the schematics, there is a 7407 at UA4 which is used to disable each color output during video blanking. Its input, /BLANK_X, originates from the FPGA (aargh) but thankfully it was quite obvious that UA4 was utterly failing at acting as a buffer:

MK_UA4_Bad.png
I know that’s a fairly weak input but come on, you’re not even trying…

Fix

Replace FPGA at UF5.

Replace 74ALS541 at UB4.

Replace 7407 at UA4.

 

2 thoughts on “PCB Repair: Mortal Kombat (T-Unit)”

Leave a Reply

%d bloggers like this: