Wednesday, 22 January 2014

Kung Fu Master - Repair Log

Kung Fu Master - Repair Log

I've had this one in my to-do pile for many months now, the pcb belongs to a fellow member of the Jamma+ site; Beaps.

I felt really bad for having this one in the shop for so long, but after many dead-ends I'd finally made some progress.

The middle board originally seemed to have several intermittent soldering failures - cracked joints, burnt pins (from previous repairs perhaps?) and a few scratched traces - and the on-screen faults would come and go if the boards were tapped or flexed.

First off, I bypassed the burned pads with jumper wires..

And likewise the cut traces..

(Taped the wires down once the job was complete)

Thought that would be the end of it.. but what was previously an intermittent glitch had became a rather permanent problem.  The more I worked on the board, the worse it seemed to get (..and hence returned to the pile many times, for months). :/

But last night I recognised the visual glitch as being similar to a problem I encountered while working on an unrelated FPGA project..

So the instinct led me to the bus multiplexers.. the: 74LS157 chips.

Swapped the first one out..

Like so..

But now the fault was more solid than before - not fixed, but stable - were on the right track I guess..

Looking around the board I found four more 74LS157's, and with the trusty ninja-finger technique..
if the pins of two of them were touched (without applying pressure), the pattern on the screen changed from, this:

To this:

To me this indicates floating-pins, or dead memory cells (depending on the chip at hand).
And sure enough, all the 157's were Fugitsu's - which are known to have their gold wires detach from the silicon over time.. (this is well documented in many repair logs)

This ether detaches a pin completely & makes it 'floating' (neither 0 or 1) - or (as with this board initially) would produce an intermittent fault - even though the pcb looks good - it will be affected by vibration / prodding.

So went round with a logic probe & mapped out the state of all the pins while it was running..
(z = tri-state)

It turned out 3 more 74LS157 chips were pretty Fek'ed..

Next, I piggy-backed some new chips on the back of the old & on powering up the pcb, the display was restored!! \o/ Yay!

Unfortunatly.. murphy's law struck!

While de-soldering the three ic's several pads & the connected tracks came away with the iron!

The heat wasn't even set that high!! Argh!! Ruined!! Noooooooooo..
(a proper Darth-Vader moment)

Gutted! a real deal breaker potentially, so to be thorough I mapped out where all the affected pads went to with a continuity tester & draw a diagram (you can't see the traces once you fit the chips back):

Decided to solder the three new chips straight into the PCB - because you can't solder the top side under a socket.

And patched her up with kynar wire:

Then by 2am.. *drum roll* ..... All in check!

Kung Fu Master was once again, restored to it's former glory.

And as they say...

Monday, 20 January 2014

Shinobi - Repair Log

Shinobi - Repair Log

Thanks to a supreme act of kindness of a very kind gentleman (who works next door) I am now in possession of an absolute classic..! (He also happens to run a rather good 8bit Sega preservation site)

The seminal 1986-'87 Sega p.c.b. Shinobi \o/ 


Much <3 for this game! Thanks again dude, insanely kind of you ..I'll get her working again.

In fact, I actually managed to on the same night I recieved the board. :D 
(eager would have been an understatement)

First port of call: several physically broken capacitors on the top ROM board:
Desoldered all four smoothing-caps from the top ROM board:


Found 220uf replacements in the parts box.. they are a little larger / high rated, but they will work nicely.

 Like so:
Still no luck though.. this wasn't enough to bring the board back to life..

So I next assumed the encryted CPU's battery had run dry, and lost it's memory..

So swapped out the CPU for a stock 68000 processor:

..burned a pair of replacement unencrypted program ROMs.

But still now picture! :'(

Probing the video output pins with the scope showed that the RGB was working, 
but the SYNC line was static.. nada! 

Following the trace from the SYNC pin, round the edge of the board lead to this tiny scratch.. 

Under the microscope.. It's a clean break, we have a winner.


I soldered over the break, but thought it a bit weak.. 

So fitted a thin green wire that bypasses the cracked trace.

Which ran from the Jamma connector:


Right across the pcb - to the other end of the cracked-trace:

And once the little power was applied....

\o/ Shinobi lives again :D


 An absolute classic game! Hard as nails of the highest difficulty setting!!

Hopefully this game will last another 26 years to come :)

Thursday, 8 August 2013

60Hz Snes Mod Overkill

Soo.. feeling much <3 for my recently purchased Snes & Everdrive cart - fitted the DSP1 - all good.

But... the 50Hz borders sucked ass & game the region compatibility seemed hit 'n' miss with the revision of Everdrive cart I have (1.3/6?) So decided to venture into mod-ing the sucker.

Ordered a couple of switches to be collected in-store @ Maplin (and picked up a couple of spares, just in case).. rushed home all excited, and..

Argh!!! :'(

The switches had their third pin missing!! What the hell man!?! There's a hole where the pin should be, but no pin! Why? Just don't solder a wire on it FFS!!!

Hah! Lucky I picked up those red ones off the shelf huh ¦) - But WTF? They're spring loaded!!

Bugger - It would have cost me more in tube fare to go back than the switches cost & felling impatient, I had to find a way - so went rummaging through the parts box.. And found this little lot:

This is how a computer programmer make a toggle switch :-{)} using a 20 MIP computer (The Atmel AtTiny85).

I began by performing the physical end of the 60Hz / Region mods, by lifting some surface mount pins & attaching kynar wire to the relevant points:

I then used a larger (Mega0256) Arduino to write a small program that read two push buttons and if held down for about a 10th of a second would toggle one of two output pins that I attached to an RGB Led to test its behavior.

I made the toggle so that it would toggle as soon as the button was held, but wouldn't toggle again until you released the button (and added de-bouncing code to remove glitches).

Once the code worked I plugged the AtTiny85 into a breadboard - wired the SPI pins to the bigger Arduino & uploaded the ArduinoISP sketch to it.

Re-jiggled the pin numbers to match the smaller chips layout & then sent the code via the Arduino - through & into the AtTiny85.

I made the RGB Led light up blue when the power is on.. and the Red & Green lights would toggle with the Red & Green switches.. So Blue by default (PAL @ 60Hz) - Magenta for PAL @ 50Hz (B+R), Cyan (B+G) for 60Hz NTSC & White (R+G+B) for 50Hz NTSC.

Ran the wires attached to the Red & Green Led pins directly to the mod-pins (The red 60Hz wire ran through a 2.2K resistor iirc) - And mounted the Led in place of the power light with some hot-glue:

Soldered the Led resistors directly to the bottom of an 8pin chip socket, and the blue resistor is the 2.2K one feeding the 60Hz mod - all sealed with hot-glue.

(I left the top of the socket un-glued so I could re-program the chip if I need to in future.)

More glue & insulation tape & job done :D

Super pimped ¦) No borders by default - 95% of games run by default!!

Technological overkill? - Naaaaah...

And....... Atmel AtTiny85's are cheaper than a single Maplin's switch! :o)

Saturday, 27 July 2013

Snes Everdrive DSP1 Installation

Giving the Snes some love today. :)

I managed to get hold of one of those Everdrive cart's :D ..but sadly the one without the DSP1 chip :'(
(which is needed to play MarioKart or Pilotwings)

So to source the needed components I picked up a crappy lesser known US cart called Ballz 3D - a console-mod forum tutorial pointed me at this title - as it has all three of the required components
(And is quite frankly, a load of Ballz!).

So step-one was to get the Everdrive & Ballz-cart open :/

Meh... security screws! :(

Luckly there's a tutorial on youTube on how to melt the end of a biro and push it into a screw (while molten), to make a poor-mans security-screwdriver.. \o/

My first attempt didn't go too well & biro plastic got stuck around one the screw heads, but since I was practicing on the donor cart - there was nothing a hack saw couldn't handle.

Had to desolder three components: a 74HCU04, Ceramic Oscilator & the DSP1 chip:

Care had to be taken when mounting the chips to te Everdrive pcb.. there are several surface mount resistors right next to the IC pin holes!

And - The DSP1 chip has to mounted on the back side of the board & the Logic & Clock on the front!

And the other (front) side:

Reassembled the cart WITHOUT security screws! ;)

Happy days! <3

We have: Pilotwings..

And more importantly..

Retro-tastic :D I haven't had a Snes for over 21 years! I'm old.. :/

Oh.. also worth a mention.. I received an RGB SCART lead with the Snes I bought, but upon plugging into my later-day LCD TV, the screen would fade to black as soon as the picture became busy / too bright.

The solution was to desolder three capacitors that were in-line with the R,G&B wires in the SCART plug.
(I left the Cap on the Sync wire & that seemed cool.)