Double Dragon (Technos)

Jacmar

User
Credits
367CR
Bought this tired, old, battered and unloved DD from fleabay about 6 months ago for around £65 in total. Probably overpaid for it considering it's condition but couldn't help myself, I've got a massive soft spot for the game - both from playing it to death back in the day and from watching doctorzett's repair videos on youtube which inspired me to get into fixing pcb's.
I've worked on this on and off since probably June .. will do my best to remember the early work !!
This was the top pcb on arrival after a little bit of a clean ...

1 my top board.jpg

Visual inspection revealed:
Corrosion on some chip legs here and there but mostly on the resistors and resistor packs near the jamma connector and the small one next to the sound cpu.
Missing PROM in the socket in the top corner near jamma connector
Sound section has had a re-cap (wrong type but right values and and at least there's some there!)
Damaged dip-switches and a leg missing from the reset transistor thing under the main cpu (see below)

fl reset-dips.jpg

Bottom pcb on the other hand was in better condition ... no missing IC's (PROM even present !) and no dirt or corrosion worth mentioning ... I'll put up a picture of that later ..
For now it was all about the top pcb ....
Unsurprisingly the game booted to nothing but garbage on the screen ...

IMG_E4410.JPG

Replaced the reset transistor with one with 3 legs ! from a donor board. I've no idea if this was needed or necessary, for all I know those things work with 2 legs !? (but then why have 3 right?) but it didn't look right so it got changed!
All the top pcb ROMs are socketed so checked them against MAME and all checked good (y)
4 of the ROMS on the bottom pcb didn't check out good so new ones for those were burned and put in the board, these only handle graphics though so I knew this wasn't what was causing the game not to run.
On the top pcb there were also a couple of TTL chips someone had previously replaced now in sockets, an LS273 @ IC70, an LS74 @ IC73 and a 6116 (skinny) RAM @ IC22.
Checked these in my tester and 2 of them showed up bad !! the LS74 and the skinny 6116 RAM ...

fl bad ics.jpg

OK so replaced these and along with the other rom and reset stuff done was hopeful of some progress ....

IMG_E4413.JPG

But no. Ah the missing PROM @ IC102 - handles which layer (sprite, background, text) gets priority on the screen. Didn't think this would cause the garbage screen / no boot but set about sorting this out anyway. Was pointed in the direction of the pld archive for the prom data which you can burn to a GAL chip. just then got to tie pins 8 and 10 together. Was straight forward enough and now have a temporary solution for the missing prom. (see below) I tidy this up later !

IMG_5069.jpg

Still no change though, every switch on just garbage on the screen, usually like what's on the left below, but sometimes would get something different, once got what's shown on the right below ...

fl garbage.jpg

... and I remember this sent me on a bit of a wild goose chase thinking the roms were bad. But 100% ruled that out and moved on. I remember spending ages checking out signals on all the IC's and looking at the schematics and at one point I think I kept coming back to the MC63701 who's reset line was held low. But I couldn't work out why. This is where I stepped away from this for a while, while I was working on a few other other boards, so my memory of that point in the repair is very sketchy. Anyway fast forward a bit and I'm looking at this again and I can't remember from what or where, but somewhere I read about a Double Dragon Diagnostic Rom .... found the github page and read up on it downloaded it and gave it a whirl ...
And what a cracking tool it is !! - https://github.com/jwestfall69/ddragon-diag/tree/main
Sometimes what was coming back was unreadable but now and again you could read it, even though it was always upside down .. (dipswitch issue I'll come to later)


IMG_5062b.jpg

OK so tests are stopping on the work ram .. this is the 2nd test performed after the LS245 dead output test. WORK and FG Ram are on the same physical chip - IC21.
Thinking now I don't know why I didn't suspect the main cpu ram ... but here I was and it seemed obvious, and it was, because when I changed it out the game booted fine .... ish ...

fl 1stfix.jpg

progress 👊 ...
 

Jacmar

User
Credits
367CR
So still got issues:

NO Sound at all - will come to that later...

Picture was stuck upside down and not surprising this was due to the damaged dipswitches. Even the individual switch bits that weren't broken off were not acting correctly. One being the picture orientation, another I think was one which determines credits. No point fighting with these so replaced them and got all dipswitches working properly.

Sprite corruption - this one took me ages to work out (but it shouldn't have). It's best shown below ....

fl sprites.jpg

So the sprites are there, kind of, but sometimes some sprite tiles are missing or sometimes they are corrupted. If you let the attract mode run through, at some point you will get to see all the correct tiles, but as they move on the screen different parts of them appear, disappear, appear corrupted.
All this is handled by the bottom pcb ... (as I said earlier in much better condition than the top pcb)

1 my bottom board.jpg

Here I made another (kind of subconscious) assumption early on that ended up costing me several hours and a lot of unnecessary work.

I think because the top board had been completely missing it's PROM @ IC102, the fact that the bottom board had a PROM chip in the socket @ IC16 made me subconsciously assume it to be ok, also at this point I didn't have another one of this IC (21J-L-0) from another board to check it, and so off I went checking everything else, for hours upon hours. I checked the whole sprite circuitry with scope and slice, couldn't find anything obvious. I spent ages looking for broken traces and even changed a couple of RAM chips (IC107 & IC120) and a LS273 @ IC106 but all to no avail. All the while, blissfully unaware that if I just swapped in a confirmed known working PROM the graphics would be fixed.
So it went on the backburner again until around 2 months ago ish when I picked up another double dragon that had a socketed PROM at IC16 on the bottom board and I thought oh I'll pop it in this one and and see if it works. Which obviously it did and I was both happy (for the game) and annoyed (with myself) at the same time. The fact that this PROM deals with 'sprite timing' should've set off alarm bells with me looking at the issue on screen !!!!!

Ok so I need a replacement PROM for here, can't replace this one with a GAL unfortunately due to the type of PROM I think but you can use an 82S131 adapter and a Winbond 512 EEPROM and burn the original file to the ROM. Which I did and that's worked just fine.

fl prom16.jpg

Graphics are now 100% fixed (y)

fl gfx fixed.jpg

Only issue left now is the complete lack of sound .... tbc ...
 
Last edited:

Jacmar

User
Credits
367CR
Ah yeah it's not clear in the picture is it, I have tidied this up so that pins aren't just hanging outside the socket, will stick a picture on soon
 

Jacmar

User
Credits
367CR
(Edited previous post with pic of graphics 100% fixed)
Pics of the tidied up GAL (added some extra socket with pins cut off the bottom) and replacement dip switches ...

fl gal dip.jpg
 

Jacmar

User
Credits
367CR
With the graphics now working I switched to the lack of sound and was half expecting a straight forward fix here (oh how wrong I was)

Double Dragon sound circuitry splits pretty early on with a YM2151 FM chip - YM3012 handling the game music and two OKI5205's providing 2 channels of special effects samples. The fact I had no sound at all sent me to the start of the circuitry before the split (CPU, RAM, ROM) or the very end (Amplifier). The buzzing from the speaker while running my finger along the legs of the amp told me it was probably fine. And to confirm I used my audio probe to check the analogue outputs of the OKI's and the YM3012 and there was nothing. So headed to the start of the circuitry and to the 6809 sound cpu. clock was good, reset high, but all the address and data pins were floating, R/W pin also dead, E pin stuck low along with /IRQ. RAM and ROM address lines were also floating. Tested the sound ROM - all good.
Bad CPU or bad RAM ?? Opted to switch out the 6116 ram at IC31 as that I felt had a bigger chance of being faulty than the cpu, and easier to remove ... but the ram came out and tested fine and I swapped in a few new ones to make sure one but no change so not a bad ram.
Spent some time tracing the /IRQ signal convinced this was the problem with the cpu because that being held low was not normal, but I think when /IRQ is held low the 6809 will enter an interrupt acknowledge sequence, but it still drives the address bus and E during those cycles (it fetches the vector, etc.). So a permanently asserted IRQ usually causes repeated activity on the address bus — not a completely floating bus. So decided the cpu must be bad. Ordered some - took ages (about a month) to come ...
So while I'm waiting for cpu's in the mail I decided to re-do the re-cap someone had clearly done before me. I'm sure there's nothing wrong with them, they appear really new, but they look wrong (using radials instead of axials bugs my ocd) and are more prone to being damaged from knocks, and I can use them on other boards where they are the correct option, so out with the wrong and in with the right :)

fl re-cap audio.jpg

When the cpu's finally did arrive I replaced the suspect one in the board. Hopeful this was the reason for complete sound loss. But it made no difference to the audio ... but I now had an active cpu ! :( so I've replaced the ram and the cpu but so far still no sound ... but a little progress as the address and data lines are now full of activity ..

fl sound ram cpu.jpg

So now I'm tracing signals ... IC17 the LS374 which brings the data bus from the main cpu to the sound section had some floating pins. While I'm in that area I feel the LS682 at IC13 is burning hot. Hmmm, check the schematics, it's part of the digital sounds circuitry, and there are 2 channels of digital sounds with dual architecture so there is another LS682 at IC29 for the other channel. It is also very hot .. maybe not quite as hot as IC13 but still too hot. Not convinced this is the reason for complete sound loss I think still these have to come out, they can't be quite right.. SO they got replaced and despite not gaining any sound they replacements run much cooler at normal temp.

fl ls682's.jpg

So still no sound and I'm checking signals again, confused because I'm still thinking something at the start of the circuitry is killing all the branches of audio.
There are some TTL's missing some signals, or so I think, but it's tricky with audio because you don't get the same type of signals as you do with video, some signals can be very sporadic and that can look suspicious or sometimes you miss it altogether, but that's normal because it's not meant to be frequent. So if anything looked suspicious I checked with the slice and nothing was showing as bad.. Kept going back to the start of the circuit. Spent quite a while looking at the LS138 at IC79 as this decodes the highest address lines to produce a bunch of enable signals for other IC's. Learnt a bit about this process but made no progress.

Think it took me a while before I started to consider that maybe there were problems in each section of the audio circuitry and not just one bad chip killing it all.
I have other working Double Dragon's and one with a socketed YM2151 which when you remove from the socket only kills the music, sfx still work.
But I switch attention to the YM2151 and all looks well, signals all seem to be as they should be, data in, clock etc all looking healthy. Except nothing from the output.
So I swap it out with a known working one and it makes no difference at all, maybe a slight change to the static I was getting but certainly no audio.
So put the old one back in the board (MISTAKE) !!!! and at this point I was ready to throw this out the window.
What I hadn't realised is, at some point around the time of removing the YM2151, the capacitor in the 3.57Mhz crystal circuit had broken one of its legs, I'd lost clock on the YM2151 and that's what made me check around the crystal ... (I pulled it up like that for photo purposes)

IMG_5623.jpg

Not thinking anything of it I replaced the capacitor and got the clock signal back. Still no sound but didn't expect there to be. That YM2151 definitely had clock before, I'd noted it down and I remember it clearly. But what took me a while to think was that what if I lost the clock at the same time as replacing the YM2151 ... Hang on, if I'd put a good YM2151 in but the clock had broke at the same time there would be no change and no sound. So I swapped out the 2151 again with the good known working one .... and it played music ! :oops: Couldn't believe it, the original YM2151 was bad and the replacement was good but the clock broke at the same time and I put the original back in thinking there was nothing wrong with it :mad: (should obviously have checked it in the working board but didn't, just made a bad assumption)

So now I've got Music (y) but still no sound effects (n)

This was a more straight forward fix. Now I knew there was issues with each branch of the audio I went straight to the OKI M5205 chips which handle the digital sounds. Neither had any output, but inputs were there and looked healthy. the S1 and S2 signals correct and the reset signals looked right but the VCK (pin14) signal on IC81 (on the right) looked all over the place (flickering like mad between the two voltage levels) .. compared to IC80 who's VCK looked ok, or so I thought! (on the left)

fl bad oki.jpg

I do think these have history of failing and this was enough persuasion to remove IC81 and put in a replacement ... which restored ONE channel of digital effects. (y)
I had footsteps, the moans and groans of characters being hit, and half the garage opening sound, but not the start of the garage opening or the punches or kicks samples. I know the M5205 I put in is working so I scope the signals and realise the VCK signal should really look like a proper clock square wave like this and be constant ... The signal on IC80 (above) that I thought was good, was only kicking in when a reset signal was sent to it (see below) which is not normal ...

fl bad oki2.jpg

If one can go bad then so can the other I guess, enough again to get it out, only issue is I don't have another M5205 but I figure I can test the channel with the one working M5205 that I have. This did prove to be the problem and the other channel of audio working, punches and kicks sounds in all their glory !!
And that's the last issue of this board fixed. I just need to pop in a new M5205 when some arrive as at the moment I only have the one so will stick with punches and kicks for now !! ...

IMG_5648.jpg

All in all this was a long repair with a number of video and audio issues: I also replaced a few things that didn't ultimately need replacing so they went back in the board in sockets, but the list of confirmed bad components is:
Video - List of fixes/Bad IC's replaced:
Replaced Reset Transistor / Replaced LS74 @ IC73, 6116 Ram @ IC22, 6264 Ram @ IC21 / New GAL for IC101 PROM (top pcb) / New EEPROM for IC16 PROM (Bottom pcb) / Replaced broken dip switches
Audio - List of fixes/Bad IC's replaced:
Re-capped audio section / Replaced 6809 CPU / Replaced YM2151 / Replaced 2x LS682's (IC13 & IC29) / Replaced 2x OKI M5205

But a Double Dragon back in full service so I'm happy with that and another bunch of valuable lessons learnt !!
 

Jacmar

User
Credits
367CR
Replacement OKI M5205 chips have arrived and can confirm both channels of SFX are now 100% working. Cleaned off the marker pen and this original is looking a million times better than when it arrived (y)

fl done.jpg
 
Top