What's new

ekorz

Multi Boyz 4 Pi
Legendary
Multi Boyz
Joined
Aug 21, 2016
Messages
5,185
Reaction score
7,766
Location
Boston, MA
Lucky Moron PCB Repair
Episode 1: Double Dragon
(or: how you would fix this pcb since you aren't @caius either)

A local collector recently listed multiple boards for sale, and the combination of both a) geographically-nearby and b) reasonable-prices put me into a buying mood, even though several were listed with problems. Fresh off a few conversions, I thought it was time to bust out my logic probe and poke something metal. Maybe piggyback something.

First up, Double Dragon!

42M1QB7.png


The seller kindly warned me "it has some RAM error, you'll see" and replied "OK man, no sweat" though really my brain is firing "oh man I really hope he means **ROM** error". While 'broken' is 'broken', I do love a simple ROM swap 'repair' when it happens. RAM errors, to the uninformed like me, smell like way more work. Luckily, I was blessed with this informative and serendipidous boot-up screen:

AgY4nq3.gif


Niiiiice, ROM-swappin' time!
I'll just check out the pcb and find ROM3 and ROM4 and burn some new ones.

Me7m64x.jpg
mF64hAg.jpg



Goddamnit. What the hell is this shit.
WHO labels chips differently than what's on the diagnostic??
C'mon Tecmo get your shit together. Ok fine. MAME KNOWS ALL so let's just go to the driver and see what's up.

This looked my revision based on the labels: MAME IS THE BOMB

Code:
ROM_START( ddragonub )
	ROM_REGION( 0x30000, "maincpu", 0 ) /* 64k for code + bankswitched memory */
	ROM_LOAD( "21a-1_6.bin",0x08000,0x08000, CRC(f354b0e1) ...
	ROM_LOAD( "21a-2_4",   0x10000, 0x08000, CRC(5cd67657) ...
	ROM_LOAD( "21a-3",     0x18000, 0x08000, CRC(dbf24897) ...
	ROM_LOAD( "21a-4_2",   0x20000, 0x08000, CRC(9b019598) ...
Program ROMs look like this bank here, so just guessing 1,2,3,4 are probably those. Though unlikely it's in that order. So I'll just toss each one in the good old programmer and check them. Two are gonna be bad and I'm gonna be done.

react-native-image-progress.gif


Verified? VERIFIED!?
WTF, honestly.
At this point I park my ego and google furiously for aid.

This guy knows his shit and fixes like 5 double dragons on video, but doesn't ever hit a program ROM error.
Jammarcade has a metric ton of double dragon repairs, nice. No program ROM errors though, damnit.
KLOV, oh lawwwd there's so many posts and I have such a small attention span!

OK well how hard could this be? Jammarcade has a schematic (!!) so I can just read that right?

v09DsrS.png



Yeah I have no idea how to read this schematic.

Let's at least figure out which ROMs are the bad ones. I open up the MAME ROM data and forge myself some bad ROM checksums by changing one byte on each file, one at a time. Then I force it to run in MAME by running it from the command line.

One by one I see which chip fails the test, and make the map:

ddragonub
21a-2_4 = ROM1
21a-3 = ROM2*** first naughty chip right here
21a-4_2 = ROM3*** also a mr poopy head
21a-1_6 = ROM4

So now I know which 2 physical ROMs are having issues. My guess is that the sockets are bad, or they share some common chip that's bad (show me a fujitsu so I can bust out my shotgun). Looking at the schematic again I notice that I have no idea why all four chips are in one block together, but also that a lot of the data lines just go right into the CPU. I'm just gonna steal an image from @ShootTheCore, so that someone skimming this article thinks I'm a boss with probes:

z8Ut2rT.jpg


Actually all I do at this point is start looking for broken traces. I'm not entirely sure how this works but it looks like all four program ROMs share all the same data lines.

UHeGfos.png


I flip over the board and test my theory. All the pins look like they have continuity, well at least all the ones that are numbered on the schematic. EXCEPT for the one-single-pin on 21a-4_2, which has continuity to 21a-1_6 but neither connect to the other bank. The other bank's pins share continuity though. So I assume that's a broken trace or something, and drop in a jumper wire so they're all joined again. I mean, even if I'm wrong, this won't make it worse right?

cdqjB8Y.jpg


VOILA!
The program ROM test passes!
I do a little dance. No animated gif for that, sorry.

MwRkts1.gif


Sadly though my work is not done. While the boot screen looks good, as soon as I boot the game up some asshole punches my GF in the gut and steals her away. Then, and even worse, my ride looks like ass.

y3womaP.png


Sprites (or what I assume are sprites, they're the objects that move) look good, and the tiles (background?) seem like the awfulness I aim to fix. MAME comes to the rescue again and I start verifying tile ROMs in my programmer. First one fails verification, and I replace it with a freshy fresh 27c512.

DqTtArS.png


Nice, jailbars are gone on my sweet ride. Game playable.
But there's still some trash left. And I don't mean the bad guys.

Mc9o07P.png


Second tile chip fails too, I replace that. FINALLY THE GAME WORKS!

Phew, turned out pretty easy. Close call, I might have had to actually touch a logic chip or something. I'll just save those skills for next log. Only thing left to do is replace the ceramic ROMs with some plastic ones to give it that mask-ROM feel, maybe swap over the labels. But that's another day.

Now it's ELBOW TIME!!!

CpM15dO.gif
 
Last edited:
Can you post pics of the top and bottom of the board assembled? May be possible my board is not assembled correctly.
 
Can you post pics of the top and bottom of the board assembled? May be possible my board is not assembled correctly.
The solder sides face inwards and the ribbon cable doesn’t twist : https://imgur.com/a/EjdRTOE

But I’m gonna just say that it’s not even worth it really. The slowdown on this game is INSANE unless you elbow knockdown everyone. Just play the nes version.

Future log may involve overclocking this thing...
 
Thank you so much. I'm totally new here, but having similar sprite issues with Double Dragon. First visible when the lady with the whip shows up, and later Bobo. Best way to start diagnosing is checking the ROMS associated with sprites?
 
Love this!

My very first arcade machine was a Double Dragon and the PCB never worked right... it'd boot and play but the in-game timer would change to random numbers and then level 2 would never finish...like you'd get part way through and the game would stop scrolling and stop sending enemies you could walk around and punch the air but you'd essentially be stuck there until the end of time, or until you rebooted the PCB.

over the years I somehow ended up with 2 more Double Dragon PCBs and a bootleg pcb and none of those ever booted... not for lack of trying.

Every few years I dust them off and try again. I think after last time I ended up selling a couple of the bad ones... maybe it's due for another attempt at the ones I still have :P
 
@NerdyBros yep I’d put the sprite roms in my programmer and verify them

https://github.com/mamedev/mame/blo...5e61e8c81f/src/mame/drivers/ddragon.cpp#L1375 these!
Nearly a year later, I’m back. More powerful, more understanding, still breaking shit. I had no idea what I was doing when I asked you the question, and I had just started collecting (but I was trying to sound smart). Finally got me a programmer and a UV easy bake oven and your words now made sense. Turns out my sprite issues were an incredibly easy fix (and my dumb ass started with the complex solutions first). One of the gfx ROMs, 21J-H had a bent leg which was actually hard to spot in my noobness as it was hiding behind the capacitor (?). The crappy part, which is my own fault, was I started with the A ROMs instead of going straight to the sprite ones as I checked them, and in my troglodyte mannerisms broke a leg on 21-A 2. I was able to tape the leg long enough to dump the ROM and transfer it to a new one. The faulty 21J was the penultimate ROM I checked. Why oh why didn’t I start at the bottom?

After that it finally clicked how to read the MAME page as to the function of which ROM. You made it pretty clear that I should have started with the sprite ROMs, but I’m a dummy. In any case, this is just a long way to say thank you. I got my board for peanuts because of the sprite error and now it works beautifully.

PS. I got curious about the 21-A 2 ROM as it was clearly on top of another label. Since I busted it anyway I peeled the label, and was wondering what was this little guy’s previous life as a N2-0 ROM. I couldn’t really find info, closest I got was that maybe it came from a Renegade board? Any clues? My life won’t be complete without that knowledge.
 

Attachments

  • CF382354-1933-4051-8E8D-DC4FBBE065A6.jpeg
    CF382354-1933-4051-8E8D-DC4FBBE065A6.jpeg
    118 KB · Views: 80
  • 57B28D03-C541-47B8-B5B8-CC3F91B1B293.jpeg
    57B28D03-C541-47B8-B5B8-CC3F91B1B293.jpeg
    64.9 KB · Views: 87
PS. I got curious about the 21-A 2 ROM as it was clearly on top of another label. Since I busted it anyway I peeled the label, and was wondering what was this little guy’s previous life as a N2-0 ROM. I couldn’t really find info, closest I got was that maybe it came from a Renegade board? Any clues? My life won’t be complete without that knowledge.
Couldn't see anything in MAME, so we'll probably never know! Life is about the journey not the destination. Glad you got your board working too!
 
Last edited:
Dont forget to use a hairdryer and scalpel to transfer rom labels. Hate missing rom labels on pcbs.
 
Pardon my dumb ass, but what is that process like? As simple as it sounds? Hair dryer heat on the label/sticker, and pick/pull/remove with an exacto?
 
Yes heat it so the glue softens then come in gently as horizontal as possible with a scalpel or whatever its called in america 😉. I usually use my weller hot air station but hairdryer on hot should suffice. Done it so many times. Doesnt work too well with paper rom labels like namco but silver foil is easy. Try to do it all in one go to avoid creasing. Rom labels are like 20 - 50% of the pcb value for some reason!
 
Yes heat it so the glue softens then come in gently as horizontal as possible with a scalpel or whatever its called in america 😉. I usually use my weller hot air station but hairdryer on hot should suffice. Done it so many times. Doesnt work too well with paper rom labels like namco but silver foil is easy. Try to do it all in one go to avoid creasing. Rom labels are like 20 - 50% of the pcb value for some reason!
Thanks Monster! I'm still somewhat new to PCB buying. I've been curious as to what determines value. For instance, if the arcade operator had to service a machine, pulled out a Hitachi 27256 ROM and replaced it with an Intel ROM, but then put the cool shiny sticker on it, is that bad? Is that still original? Is the value the PCB board, original ROMs, condition? What determines an authentic board, know what I mean? At what point is it no longer original. I can tell on my Double Dragon board that all my EPROM stickers were placed on top of old ones. Converter board? Recycled EPROMs? Is my Shinobi board less valuable because the 30 year old suicide battery killed the Z80 processor and I had to replace that? Probably. Part of me gets it, it's like buying a classic car with all original parts. But the other part of me is like, well, sorry, I had to change the oil of the car, or the tire was completely worn and it needed to be replaced, do you intend to drive this car with its original tires? For some reason I get it on the console world, but less so on the PCB land. As long as it's not a bootleg board, I'm generally happy.
 
@NerdyBros it’s just like classic cars. Sure the ones that were never driven are worth more to some rich asshole somewhere, but who gives a duck! so just ask yourself, are you the rich asshole? If the answer is no, don’t worry about that guy and his 10 mile odometer and all his rules.

Play the games. When you wanna sell or trade them there are plenty of players/buyers who don’t care about rom labels, prefer something serviced (caps replaced, issues fixed), or any other variety of “not collector condition”
 
For those that just want to play the game and move it on it doesn't really matter for them. They are happy with bootlegs as long as it plays the same. For those that collect and cherish them condition vs price will ultimately determine how fast it sells if at all. Eproms will eventually fail. Burning new ones and reapplying stickers will not affect value or originality as long as its done neatly in my books. An original pcb with original game data will always still be original no matter how much its been repaired, bashed about. Its just the value that it effects. If a pcb has cobweb of trace wires, rust, missing eproms labels, scratches, missing seals etc then dont expect to get the going rate for them thats all. Conversely, a super mint one with art and even kit boxes will sometimes fetch many times thier value. People tend to stay clear of sellers who often sell junk stuff. Ive seen great games just sitting there in for sales threads and dont understand why until i ask for a pic of it.

Finally even region will affect the value. Games like euro version of xexex is pretty much broken compared to jp version. Same with metamorphic force with broken health bars in the non JP version. Conversely games like tenkomori shooting jp version is worth considerably less than the world version called shoot8ng variety.

Suicide battery is a bit of a grey area. I find that games that are still on battery will often sell quicker than ones that are not. I.e cps2 phoenix roms. Often desuiciding involves replacing eprom labels and therefore have missing rom labels. Being a collector myself i often burn original codes back on and restore them back to original battery condition even though there are risk involved. I always maintain battery games periodically so am not bothered.

Hope this helps.
 
Back
Top