Final Fight / Crash (Bootleg)

Jacmar

Active member
Feedback
1 (100%)
Credits
587CR
Fresh from the recent resurrection of another Final Fight bootleg (Link Here) I grabbed this one from the fix pile while the events of other one were still fresh (ish) in my mind.
This one is different to that Soon Hwa one in that it has less PAL's and GAL's dotted around and has a daughter board with a 84 pin PLCC which I'm guessing handles graphics addressing, but other than that the layout isn't too dissimilar ... lot less ROMs too but they are all directly soldered as are all the RAM :rolleyes:... Sound section has many more components than the Single OKI Soon Hwa board does, which hopefully will mean the sound quality on this one is better, it surely can't be any worse ...

1.JPG

A few visible issues caught the eye on first look ... with most probably due to poor storage/handling at some point in it's life ... components half hanging off etc

fl4.jpg

Board won't boot without a crystal providing a cpu clock, or solid reset signal (pic above left) so first up was a bit of research ... This board should have 2 crystals - a 24Mhz crystal and a 10Mhz crystal. The missing one near the cpu is the 24 Mhz so that's an easy enough fix - in went one of those. The blown cap is 10uf, again easy swap. but the missing capacitor I have no idea what it's value is so I tried looking for images of this board online and I found a few that are similar layout but none the exact same. Some versions have the PLCC on the main board and no daughter board, and I can see there should be 2 capacitors in that area but none are high enough resolutions to read any cap values. On most the pictures I looked at the 'missing' cap was a bit larger in physical size than the other. The 10uF cap is connected to the nearby LS132 (and GND) and the missing cap connects to the nearby diode (and GND). Haven't come across this dual reset capacitor setup before so asked chatGPT about it and it thinks Cap 1 (missing bigger one) creates the main power-on reset delay, whereas Cap 2 (10µF) filters / stabilises shaped reset. So recommends a 22uF or 47uF for the missing cap. Went with a 47uF ...

The resonator and film capacitor that are both hanging on by one leg (above right pic) are in the sound section so are not on the priority list. Usually tackle sound last.

Next up ... crushed pins everywhere on the solder side of the main pcb, (see below) plenty touching where they shouldn't. Despite this, hardly any scratches to the pcb (a few superficial ones) and cant see any obvious trace damage at first glance. Spent a while straightening them all up and making sure nothing was shorting ...

fl3.jpg

Last thing before first switch on .... corrosion and/or excess dried flux on the daughter board connector pins, this is present on both the daughter board and the main pcb socket soldering. PLCC socket on the daughter board has seen better days too .. scratched and scuffed, some pins in it look to be tarnished or corroded ... see below ...

fl1.jpg

Did my best to clean this up and most of it did clean off in the end. Not 100% convinced this still wouldn't be an issue but it looked a lot better and worth a go to see what we'd get on screen when powered up.. Which was absolutely NOTHING :) not a sausage, screen didn't even blink ..

A quick probe of the CPU did show signs of life, replacement 24Mhz crystal must be all good as have a nice (50%) 12Mhz clock on pin 15 of the 68000 CPU (y) Halt and Reset both HIGH (y) Voltage on the pcb was also fine (y)

But with literally no acknowledgement by the monitor that the board was powered up I suspected a video timing issue, so checked the 10Mhz crystal and got some pretty crazy readings on the scope. Frequency jumping all over the place (see below) anywhere between around 50 - 70 MHz ... weird. OK but if the other crystal was knocked off completely and there are signs other components have been knocked loose or off all together, then it's not out of the realm of possibility this crystal has taken a few knocks and it's damaged inside.
With no new ones to hand, had to take a 10Mhz crystal off another board to put on this, and typically it's 40 year old legs just fell off during the transplant 😣 I've eventually managed to solder it back together but had to tape it down, it's connections are so fragile, it's broke off a few times. Just need it to last until some new ones arrive!

fl5.jpg

But this didn't change much, other than now the monitor was reacting to power on, a flicker, a slight change in the tone of black on the screen. Scope now measuring 30MHz on the crystal. Still weird. But it felt like there was now sync. Thinking now I'm not sure why I didn't just check the sync signal at the Jamma edge at that time (probably because my setup doesn't allow for easy board flip overs to access the underside of boards), but I didn't. Just went back to checking the CPU....
No activity on the address and data bus, but DTACK did show 3 little pulses of signal on power up, then would get stuck high. So seems like the CPU starts, attempts its first few bus cycles… then gets stuck waiting forever. Same was happening on A1 and ROM /enable pins. Bad ROM or data bus behaviour?

What I realised at this point was during this probing I didn't have the daughter board connected (I'd needed access under it, tracing signals /CE's, etc) ... and when I plugged it back in I was getting more activity, some data lines had signal, A1 and A2 had signal ... still nothing on screen. But then I did see a flicker, and it was when moving the daughterboard, it's not got the most secure connection. the pins are in the middle of the board so it can rock around on all corners if you press it. Yes small flickers on the screen when pressing the daughter board.

So I take it off and look at the PLCC, remove it from the socket, there is some tarnishing on some pins and some look a bit pushed back into the rear of the socket. So give it a clean best I can and ease out all the pins to try and get better contact to the chip.

fl6.jpg

This is after I've cleaned it up best I can, you can't see it as well on these pictures but the tarnishing/light corrosion on the pins on the middle of the row is still present. Chip back in the socket and daughter board back plugged in and lo and behold the screen comes to life .....

IMG_6459.jpeg

Rocking the daughter board around gently, varied the garbage on the screen but here in this position I can see the word 'COLOR' and I now have a good idea what's going on... The boot is stalling on the startup RAM tests. I saw this on the other board I fixed. That's why bus activity is minimal and the CPU is hanging shortly after power on.

I just couldn't see it because this daughter board is dodgy as hell with it's connection to the main board and its PLCC socket.
I'm guessing the boot is hanging on WORK RAM test (which comes straight after COLOR RAM) but I don't know for sure, and there's no point chasing a WORK RAM fault if it's not that.

So I decide the best course of action is to sort out the connection issues on the daughter board in the hope that if that's all sorted I will be able to see exactly which RAM is failing the boot test. And when I looked properly at the connection pins and socket I realise I need to just remove it all and replace with new. Which means de-soldering 80 pins from the daughter board a 84 pin PLCC socket. A couple of the pins were loose already. You could tell someone else had identified the connection issues at some point before me and had tried to reflow the PLCC socket, as well as the connection pins, but a few of the via's had already gone so some traces weren't connected. They probably spent a load of time on it and when it didn't work got pissed off so didn't bother cleaning off the 20 gallons of flux they used which is why it looked so bad.

I took everything off, took ages 🙂 repaired broken via's and tiny traces. put in a new PLCC socket and a new connection socket on the main board (Another 80 pins!). Looked quite tidy in the end though ... And thankfully (or I may have not cleaned my flux off either!!) it worked, cleaned up the picture on screen 👊

fl7.jpg

fl8.jpg

So ... COLOR RAM - NO GOOD ... or is it ... tbc
 
Last edited:

Jacmar

Active member
Feedback
1 (100%)
Credits
587CR
Had a couple of sessions on this here and there since the last post but not made much overall progress ...
I had to wait a little while for some 10Mhz crystals to arrive and while I was waiting I couldn't really get anything done because the crystal that was hanging on for dear life (pictured previously) just wouldn't stay attached to it's legs without me pressing them together. Really tried to get a good solder connection to the body but the legs had snapped right at the body and I just couldn't. With one hand tied up holding the crystal together to get a picture on screen, otherwise no sync, I couldn't achieve much else with just the other hand. But once or twice at some point just before the crystal became a nuisance, the board did boot past the 'COLOR RAM' Test ! (Albeit failing on the OBJ RAM test). I think I had cranked the voltage a bit at the PSU to get this because I had a similar issue on the Soon Hwa Bootleg recently.

fl9.jpg

So while waiting for some new 10Mhz crystals to arrive all I did was add a couple of smoothing caps to help power distribution around the board.
New crystals arrived so threw one in and fired her up ... no sync ! just thin green lines rapidly flying up and across the screen. Odd ... A dodgy one in the pack? tried another one and got sync. must've been a dodgy one :rolleyes: (or maybe not, I decide much later) and I'm back to failing COLOR RAM test ... and no amount of tweaking voltage gets me past it. Hmmmm

Not convinced I have a palette ram problem but I have a look and do find some funny looking signals I go chasing ....

fl91.jpg

Trace this back from palette ram A4 back from a LS157 and before that a bunch on LS373's under the daughter board.. And it starts to get a bit of a pain in the arse here because the game won't boot at all without this daughter board plugged in but I can't access the IC's under it when it is plugged in !! But I do notice there are a few TTL's in this area with various hack like fixes like small ceramic caps across CLK/+5v pins of 2x LS373's, and a real oddity (to me and my limited knowledge anyway) the +5v pin of a LS245 has been cut from the PCB, and its +5 V is now supplied only through a diode. And another LS373 done the same except with a resistor rather than a diode! Checked the voltage across the diode hacked LS245 and was 4.1v , and the the voltage across the resistor hacked LS373 measured 3.5v !!!
Now surely that's not right, those IC's won't work at those voltages will they ? I know it's a bootleg but these can't be original surely, I've looked online at pictures of other boards similar to this (can't find any pics of this particular board) and none of them have these 'alterations'
Someone trying to fix this issue before? noticed bus contention and undervolted some IC's to weaken them ?? Will never know I guess. I've removed them for now anyway and reinstated their 5v legs direct to the rail ....

fl92.jpg

So the 3x LS373 (1 with the resistor hack and 2 with the cap hack) that feed the LS157 before the palette ram get replaced cause I just don't trust them and I've snipped a pin or two on them chasing the dodgy signals ...

fl93.jpg

While I'm at it I remove the ROM chip that's in place of a PAL or GAL just above the 68000 CPU ... Because it's soldered direct to the board and I can't get to one side of the LS74 under it. And also I want to replace it with a GAL (if possible) .... I did burn a IC55 GAL form the PLD archive for a Final Fight Bootleg 2 board, which looks very similar to this board except this one has the PLCC on the daughter board, whereas that one has a different type of daughter board and no PLCC. On the picture this GAL is in the exact same location but doesn't work on this board - just gives garbage on the screen on boot. So I've plugged the ROM adaptor board back in to the socket I've installed.

fl94.jpg

I've tried reading this 'ROM' as a GAL on my programmer and re burn the read onto a GAL but that's not worked either, probably not doing it right ... Anyway I could maybe revisit that later ....
Also managed to get under the daughter board while it being 'plugged in' .... crude but it works .....

fl95.jpg

And I did find a LS368 under the daughter board which failed slice badly so changed that out ...
But non of this has improved the overall situation. Still game fails on COLOR RAM .... And I now think it may be due to the 10Mhz crystal ....

I found it weird that this is the 2nd 10Mhz crystal I've put in this board that is oscillating at 30MHz ... And one of the new 10MHz crystals didn't work at all.
MAME driver says Final Fight / Crash bootlegs have a 10 MHz and 24 MHz crystal. When I got this board the 10Mhz was in place but the 24 MHz was missing. Right at the start of this fix I put in a 24Mhz and new reset caps and all was good there. But I'm starting to think this Bootleg is like the Soon Hwa bootleg I have , which has a 24Mhz crystal and a 32Mhz crystal !!! (There is no mention of this in MAME) And maybe someone else put in a 10Mhz crystal here because that's what MAME says and then had these boot issues and chased bus contention issues so threw caps and diodes and resistors on IC's ... but maybe it's fault was in fact down to incorrect video timings from the wrong crystal .....

The crystal oscillator around inverters relies on: feedback gain, load capacitance & resistor values. If those values favour a higher-frequency mode, the crystal can lock onto one of it's other natural resonance modes and oscillate at that instead - for example a 10MHz at it's 3rd overtone = 30Mhz !!!
On this board the circuit has 2 x 330 Ohm resistors and a 22 pF capacitor. Those values are maybe more common for ~30 MHz oscillators, not 10 MHz ones.
If the board was actually designed for a 32Mhz crystal, then when this 10Mhz crystal is oscillating at 30Mhz it was close enough to provide a sync the monitor can lock on to ... but maybe not provide those accurate enough clocks for video timing signals that the 32MHz crystal would. And therefore maybe the boot is hanging on the first RAM test because the video timing signals are out ......

I backed up this 'wrong crystal' theory by trying to force the 10MHz crystal to oscillate at it's fundamental frequency. By swapping out the 22 pF for a 47 pF ... this still gave me sync, and the COLOR RAM fail but it was so unstable the scope was measuring 10MHz or 20MHz and flicking between each ... as soon as you touch the crystal or the cap or the resistors it would lose sync and not come back. Not enough capacitance .... So wedged over another 47 pF capacitor (94 total) and this forced the crystal to resonate at its fundamental frequency - 10Mhz - and it was stable, poking around it caused no changes but the sync was none existent, screen going mental ... So basically this board has been at it's happiest when running at 30Mhz ! NOT 10MHz. So surely this board can't be designed for a 10Mhz crystal ...

fl96.jpg

The frustrating part now is I don't have a 32MHz crystal here at home, my other boards here don't have anything higher that 25MHz (which I did try) on them and my Soon Hwa Bootleg (which does have a 32) is at my storage place which I can't get to at the minute !! So I've ordered some 32Mhz (and some 34) and hopefully they will arrive in a few days so we will see if the theory is right .... whether it means it boots past the COLOR RAM test is another matter, I'm hopeful but ..... tbc
 

sukhbir

Active member
Feedback
44 (100%)
Credits
1,591CR
Amazing work so far,crystals with a specific frequency can sometimes be very difficult to get the correct value.
desoldering that 80 pin plcc socket must of been a pain,great skills,keep it up.
 

Jacmar

Active member
Feedback
1 (100%)
Credits
587CR
What an amazing write-up! I'm in awe of your perseverance!
I know most fixers wouldn't bother spending any amount of useful time on a bootleg like this, but Like @qjuk said on another thread recently, if you keep on persevering and don’t give up, you’ll get there in the end and it will be worth it. I think he's absolutely right. And even if they don't get fully fixed, I'm learning absolutely tons on these kind of boards and they don't cost much so literally hardly anything to lose !

Amazing work so far,crystals with a specific frequency can sometimes be very difficult to get the correct value.
desoldering that 80 pin plcc socket must of been a pain,great skills,keep it up.
I had no idea crystals could oscillate at different (overtone) frequencies depending on the type of inverter, capacitor and resistors it's connected to, thought it was just whatever was stamped on its case was what you'd get :)
 
Top