CAPCOM CPS1 A+B+C Three Wonders Repair:
The second broken PCB I picked up was a complete CAPCOM CPS1 A+B+C Stack “Three Wonders” that was listed as:
The price was £45 and my thinking was that in the worst case scenario I could at least probably do something with the B game ROM board, but it would be nice if I could get another working A or C board.
This is what I received:
It had a note attached to it stating:
I attempted to power up the A+B+C stack up but got a blank screen which was not unexpected.
So I separated all the boards so I could test them out individually.
CPS1 A motherboard PCB:
I got out my Knights of the Round B board, hooked it up to a known good de-suicided B21 C board and attached it to this 10mhz (non Dash) CPS1 A board:
It boots up with no sound and repeated background elements, but the game appears to play fine and sprites display correctly.
Since I had no sound I decided to use my logic probe on the Z80 CPU which is a common cause of loss of sound on CPS1 games and the Yamaha 2151 to check if pin activity matched what would be expected from their schematics and everything checked out okay.
Next just in case I was mistaken I decided to piggy back a known good Z80 and 2151 I had at hand:
Then I thought I hadn’t even checked the volume pot “VR1” yet. That should have been the first thing!
Straight away I noticed it was a little loose and I could spot a small crack on one of its solder joints underneath so I redid that and now I have audio:
So now I need to look into the Background repeating issues.
Looking at the A board and with a bit of help from the rather confusing schematics that have found their way online, I could isolate the possible issues to a bunch of RAM in the bottom right hand side and to the custom CAPCOM A01 PPU along with a bunch of surface mounted 74LS245.
I’ve highlighted the isolated areas below:
Since the B board covers the top of the A board it is hard to easily probe the components, so I have to resort to turning it over and probed the RAM from the bottom of the board and just reverse the pin outs.
The RAM all appears to be functioning correctly but it is impossible for me to probe the surface mounted A01 PPU and LS245’s. I attempted to power up just the A board without the ROM and security board attached to probe these but since you are missing part of the complete circuit the results won’t be reliable.
I have correct activity on all but 2 of the LS245 which have stuck high outputs, but these are also connected to ram that before had correct pin pulsing that is now also stuck high. So likely there is no issues with them but just for peace of mind I swapped them out with known working ones:
Still no joy.
This sadly leaves me with just the custom CAPCOM A01 PPU being the point of failure and I can’t get a replacement for that outside of taking one from another CPS1 A board.
For good measure I tried using the CPS1 Diagnostics ROM from Jamma Arcade:
But this really just tells me (even though some of the info is missing due to the fault) what I already knew, that the RAM was good as expected.
As a last ditch resort I re-flowed the QFP A01 PPU:
Sadly, nothing improved.
Oh well, this can become a parts board for me.
CPS1 B ROM PCB:
First thing to do here was to confirm if the Program ROM are good and what revision of the game this board is running. I am also little bit concerned if the data is okay on the one EPROM that has an exposed window. The ROM I need to check are 11f (RTE 30A), 12f (not marked) 11h (RTE 35A) & 12h (RTE 36A):
I dump them with my Top3000 programmer and get the following results:
RTE30A CRC: ef5b8b33
RTE31A CRC: 32835e5e
RTE35A CRC: 7d705529
RTE36A CRC: 7637975f
These match the MAME 3wonders.zip which means the data is all good on them and that I have the ETC (World) revision of the game.
Since Three Wonders is one of the CPS1 titles that has a suicide battery, I decide to write four new 27C010 EPROM with the decrypted PROG data from The Dead Battery Society and couple it with my de-suicided B21 C board:
I now try to boot it up using my CPS1 Dash A Board that came with my Street Fighter II Dash Turbo:
We have a fully working game!
CPS1 C Security PCB:
Now I could have stopped here as I had no idea if the B21 on this games C board was working or not.
I could have modified it so it would run “de-suicided” as a generic no Key B21, but I did not want to cut the traces required as instead I wanted to try and keep it original if at all possible.
I removed the battery that was dead (measuring zero volts) from the C board:
Then soldered in a brand new one:
I then decided to order an Arduino Zero and LCD shield so I could attempt to use Arcade Hacker’s CPS1 C board key injector ino script:
I removed my decrypted PROG ROM I had programmed and re-inserted the originals, but covered the exposed window on 12f’s EPROM:
I wired up the C board with Dupont cables originally as per the instructions:
However it just wasn’t working…
After testing everything with my multi-meter in connectivity mode it seems that the dupont cables were making very flaky connections so instead I decided to directly solder wires to my C board and Arduino.
Still no success… I checked online and found that a few people had issues with the C board getting insufficient power during writing so I increased my 5v up to 5.15v and finally it worked:
So I have a working Original C board and B board of “Three Wonders” now!