May 032019
 

A while back I got my hands on a cheap CPS1 set for Street Fighter 2 CE. The reason it was cheap was that the A board was not working. As we know by now, these A boards are dying quite fast and in some cases the culprit is the Custom CPS-A-01 chip for which there are no know replacements as of yet.

Let’s have a look at what we get on screen first

So it seems we’re only getting half the lines in the sprites and , while it’s not visible on a screenshot, the other half is flickering slowly too.

Looking at the schematics we can see the two parallel banks of rams processing each odd/even lines of sprites. These are coming straight out of the CPS-A-01 GPU IC. Let’s check out the DT/OE enable lines or the rams first.

Looking at them in with the scope reveals a couple of issues:

The bottom one is pin 21, and it’s not really toggling apart from that one regular jump, while we can see that the other line is toggling all the time. This is why we’re only seeing half of the sprites: one bank is not being enabled.

The other issue is this jump on both lines which is most likely why the entire sprites flicker regularly.
These are coming from Pin 21 and 47 of the cpsA .
bank A pin 21
bank B pin 47

Tying the enable line of bank B to bank A will restore the sprites but we still have the issue of the flickering sprites… in a nutshell, the CPS-A chip is fried and this A board is toast.

Luckily a viewer of the youtube channel (thanks Kris Ankers!) sent me a spare A & B board.

The board is in unknown working state . Checking the few remaining proms it’s another SF2 CE , not that it makes much difference here as we’re only interested in the A board. Let’s replace the A board on my other stack and fire this up

…nothing. board is dead.
A quick visual inspection reveals a few corroded badly corroded sockets on the BUF1 and ROM1 pals. corroded is an understatement here too since the socket were missing legs that had completely disintegrated.

Let’s put new sockets in place and see what we get.

Still no boot. I took both pals from my other set and dropped them in.
After some more swapping I found that the Rom1 pal is working so it was just the BUF1 pal that needed to be replaced.

Success!! The board is now booting and playable. Sound is also working fine.

But it seems we’re missing the red color.

A look at the schematics tells me me which ICs are handling the rgb output. We’ve got two rams outputting to 2 LS273 flip flops. This is then sent through ls07 and ls367 buffers, through resistor arrays before being output to rgb.

The difficulty here is that apart from the legs of the rams and resistor arrays which can be probed from the underside, the other ICs are SMD and hidden by the b board so I am not able to probe the legs. Time for some logical guess work :

Since the pairs of ls07 and ls367 are shared across the colors it’s unlikely one of those has failed or it would affect more than one color (still possible but unlikely)
Two resistor arrays are needed per color. If one had failed, we’d get some red at least but here it’s all gone and while it’s possible, it’s unlikely two are gone
So I’m first going to look at the RAM at 1C and the 273 at 4C
Probing the RAM seemed ok so I decided to remove 4C and replace it.

Bingo!

Behold a working (for now) Street Fighter 2 CE CPS1 stack. It’s a bittersweet victory though as there’s no telling when that CPSA chip will fail (not if but when) . But for now I’m going to enjoy some Capcom fighting. Thanks Kris for the PCB donation !

And for those who prefer the video format…

Apr 282019
 

Some weeks ago I bought this game for my collection in really great conditions.

While playing, I messed up with the external potentiometer of my supergun and menaged to detach it for a brief moment . Result was that the power supply jumped to 7V on the 5V line and 18V on the 12V line.

With my surprise, the game was not totally fried, sprites were still good but all the background was totally black

Also the game had no sound ( but the amplifier was still good)

For the graphics problem, 2k sram @H15 and H16 had all the data lines in the grey area.

Changing them restored completely the graphics.

 

 

The sound had also another UMC 6116 sram and the data lines were completely in the grey area.

 

Changing it led to no improvement but after checking the connections I found out D6 line was not connected to the Z80 but only to the YM2151.

I probably broken it during the exhange. Restoring the line led to a fully working game.

In the end it appears that UMC parts were the weakest devices of the pcb , I replaced all the ones which were present on the pcb

 

Teenage Mutant Ninja Turtles repair log

 PCB Repair Logs  Comments Off on Teenage Mutant Ninja Turtles repair log
Apr 222019
 

Got for repair from the States this Teenage Mutant Ninja Turtles PCB (actually the US 4 Player ROM set)

Board booted up with noticeable graphical issues, both sprites and backgrounds were affected as they were missing parts.Also colors were wrong, screen was blue tinted (hard to distinguish in the video and pictures though)

The palette circuit is made of two 2k x 8-bit static RAMs, a couple of latches (74LS273), some open collector buffers (74LS07) and finally three ‘052535’ RGB DACs that outputs each color to respective JAMMA edge connector pins :

A blue dominant means the RED color has some troubles so I went to probe around this part of circuit and found the 74LS07 @D23 (from Fujitsu, obviously…) with an output (pin 4) shorted to GROUND :

Chip failed in that pin when tested out-of-circuit:

Replacing the TTL IC restored the correct colors so I moved on the grahical issues.I launched a MASK ROM check which reported two bad devices @K4 and K6:

They are two of the four 4Mbit MASK ROMs that store sprites data:

I removed the first device @K6 :

I dumped it, the resulting buffer of my EPROM programmer was empty so device was really bad :

I launched again a MASK ROM check, the device @K4 was reported as good this time so the bad one @K6 was affecting it (data/address busses are shared)

I replaced the bad MASK ROM with a programmed 4Mbit EPROM (I used a Macronix MX27C4100)

Sprites were restored and  check no more complained :

But backgrounds were still missing parts :

This part of graphics is entirely handled by the ‘052109’ and ‘051962’ custom ASICs:

On a visual inspection I found a lifted pin on the latter:

I reflowed the pin and this fixed board completely.Repair accomplished.

 Posted by at 8:43 pm

Megablast repair log #2

 PCB Repair Logs, Repair Logs  Comments Off on Megablast repair log #2
Apr 192019
 

I got a Megablast board that was not booting at all.

1) As reported on Caius Liquid Kids repair log (http://www.jammarcade.net/liquid-kids-double-repair-log/), it is common on these Taito F2 system boards that TC0220IOC custom chip is faulty in this case (I suspect plugging the board to the JAMMA connector upside down may fire that chip, sending it +12V via the I/O ports. That’s probably what happened here).

Indeed, after swapping the TC0220IOC chip from a donor board, the game booted and offered me a nice glitched screen:

2) Another common issue on these Taito F2 boards are the mask roms getting internal disconnections within time. So I started replacing the background ROM (C11-05 @ IC58) by an equivalent 27c400 programmed EPROM and got backgrounds fixed:

3) Anyway, all the sprites were missing. After a long search and many tries I found a weak signal on one of the RAMs data line that carry sprites information between the main CPU and the sprites generator custom chip TC0200. Replacing the RAM (a TMM2063AP @ IC50) made sprites appearing, but glitched:

4) I found out that one of the sprites ROM was dead as well (C11-04 @ IC31). Replacing it with a programmed 27C400 EPROM fully restored the graphics:

5) & 6) One last thing I didn’t mentioned yet was the sound that was scratchy. More precisely, sample sounds were clearly corrupted, not the FM sounds. With no surprise, I found out that both IC where audio samples are stored (C11-01 @ IC29 and C11-02 @ IC30) were dead. Replacing them with equivalent 27c040 programmed EPROMs totally restored the sound.

Board is now fully fixed. Here is an overview of the chips I had to replace on my board (interesting fact is that Caius had to replace the exact 4 same mask ROMs on another Megablast board: http://www.jammarcade.net/megablast-repair-log/):

1942 repair log #2

 PCB Repair Logs, Repair Logs  Comments Off on 1942 repair log #2
Apr 192019
 

I recently got a few boxes non working pcbs from a friend of mine and decided to start looking at them.
This is the first one, an original Capcom 1942 pcb.

It came with a jamma adapter so I was happy I didn’t have to spend time making one.
Upon starting the board, it came up as evident why it had been marked as non working
No Background layer instead showing some corrupted background
Some sprites were showing up incorrectly and only half the sprites was visible on screen
Luckily the sound was all working… for now.


Since the board was very dusty, I went ahead and cleaned it and checked all the eproms in mame.

When putting the boards back together I quickly discovered the board ribbon connectors were corroded.
I changed those and gave the sockets and clean and now the board was booting to a much more acceptable state
The background layer was restored but the sprites were still “halved” and showing halved white lines across the screen.

I first thought I’d address the halved sprite data.
The schematics show that they are processed by two parallel identical circuits (page 16 / OBJ LINE BUFFER)

I started probing around the RAM at J4 and found Pin 15 and 14 of J6 (74ls163) were set high.
Comparing the readings from the other half of the sprite processing at F4 gave a different reading.

I tried to piggy back a known working ls163 and it completely restored the sprites and removed the vertical lines .

Time to remove it and socket a nice new IC. ( btw, this was a Fujitsu IC, what a surprise)

Nice ! Now to address the other sprite issue with incorrect sprites being displayed in specific segment.

The eproms had checked fine so I reasoned this was an issue at the addressing level.I assumed that a problem on the data bus would give us random or consistently corrupted data, but here we have very valid data being used in the wrong spot.

So I thought I’d start looking at the LS153 at M3 and N3. Indeed pins 7 and 9 of N3 were floating.


Replacing it completely restored all our sprites… BUT
I’ve just lost all sounds!! The entire board when silent.

While I’m full aware this can happen with boards it doesn’t mean it’s not 100% heartbreaking, especially when you thought you’d completely fixed the board.
sooo looking at the schematics for the sound system at page 3 I can see this is generated by two AY-3-8910 square wave generators.

The output of both chips on pins 3,4 and 38 were completely silent. So I went ahead and re-checked the eprom first and it check fine. Looking at the data lines I could see a sort of “compressed signal” so I was wondering if sth on the data bus was causing the data levels to be that way and was preventing the sound chips from toggling high and low and thus generating the signal … maybe ?

I went ahead and removed the z80 and ram at E11 and C10 respectively but nope, they checked fine. I did the same thing with the ls374 flip-flops at C8 and D8 since these drive the sound generating events. No luck. I went on many wild goose chases with this issue and still couldn’t find anything wrong. A quick chat with Porchy and his advice was to get some sleep and leave it alone for a few days…

So I did that.

Picking this back after a week or so, I used a wire connected to ground, and driving the OE line on the ram with it, I was able to hear some sounds and music at random intervals, this meant the data lines were ok and could trigger the sound ICs. So I moved away from the Z80 section of the circuit and that the issue was most likely with the chip enabling section of the circuit so I started looking at the ICs driving the enable lines.
I checked D9, C9 and B9 but all the signals seemed healthy on the scope. Comparing this with a known working board I couldn’t seen anything jumping out at me. This is where I wish I had a proper logic analyser but at least I felt I was on the right path. But still I had a feeling I was looking at the right area, I started removing and testing D9, C9 (mental note: invest in a logic comparator) and then finally B9 which tested faulty

The last IC on that entire sound circuit !!

Looking back at the circuit it makes sense, this IC enables the output control of the LS374 driving the event data into the sound circuit. Without this, the sound circuit doesn’t “know” it’s supposed to generate a sound.

Replacing it restored all the sound circuit .

Board all fixed, and lessons learned:

  • Sometimes getting some sleep and leaving a board alone for a while is best
  • Always check the enable lines first
  • … and start looking into getting a logic analyser.

 

 

And for those who enjoy a repair in video form :