Sunday 27 September 2020

Rainbow Islands (original and Extra version) double repair log

Some days ago I received for repair a couple of Rainbow Islands PCBs, they were the original and Extra version.The game needs no introduction, it's the Taito masterpiece (released in 1987) that built a generation for video games.

The Extra version PCB was the first one I troubleshooted :

The board played absolutely fine but the sound was faint and corrupted :


Inspecting the board I noticed an electrolytic capacitor was installed in series between one output of the 'TL074' OP-AMP and the input of the potentiometer :

This was clearly a poor attempt to workaround the fault, the board indeed became totally mute if I removed this kludge.Using my audio probe I figured out the sound was correctly generated by the analog output of the 'YM3012' DAC:



But then it got worse before reaching the main amplfier.In the middle there are two OP-AMPs (a quad 'TL074' and a dual 'uPC4556') responsible of pre-amplifying and mixing the signals :

The 'TL074' is a well known to be an unreliable part, I have encountered tons of bad ones in all these years of repairs so I went straight to remove and replace it :

This improved things a little, now I could hear clear sound but it was still faint also at highest volume sting.So the other OP-AMP was most likely faulty too :


Removed and replaced with an equivalent part:

 
This brought back a lound and clear sound and fixed board completely :


 


The Rainbow Islands original version PCB was in good shape :

But it booted to an 'OBJECT RAM ERROR" message :


The object/sprite RAMs are four 2K x 8-bit devices (addressed by the near PGA sprite generator 'PC090' which process their data)

Probing the RAMs with a scope revealed unhealthy data signals on the one @IC50, here is below a comparison with a good signal where you can see the correct data transaction on the left snaphot :


I pulled the chip, it failed the out of circuit testing :


Fitted a socket and a good RAM chip :

Board booted into game and it was fully playable with no other issue.

End of (double) repair job.



Saturday 5 September 2020

Super Space Invaders '91 repair log

Recently I found in a lot of untested/faulty PCBs I bought an interesting and unusual  Super Space Invaders '91 (also known as Majestic Twelve: The Space Invaders Part IV).Game has been released by Taito in 1990, it's basically an enhanced version of the classic Space Invaders game and runs on F2 hardware :

When I powered the board up it surprisingly booted into game but graphics was glitched  :



I was under impression the garbage floating over the screen was actually sprites leftovers and I was right because it changed its pattern when I shorted pins of the Toshiba TC51832 pseudo-static RAMs (pin to pin compatible with 62256) which are part of the sprites circuit along with a couple of QFP custom ASICs that generates address to the RAMs and process their data :

The first suspects were these TC51832 pseudo-static RAMs because I often encountered bad ones during my repairs.So I went to probe them with my scope and I found a couple of them @IC29 and IC33 with unhealthy data signals.You can see in below picture a comparison with an good signal on the left, the data transaction appears to be complete and valid compared to the bad one on the right :

 So I removed the two RAM chips, they both failed the out-of-circuit testing :

 I installed sockets and spares: :


Board 100% fixed!

Another successful repair and a good game added to my collection.



Wednesday 2 September 2020

Big Bang - Power Shooting repair log

Received for repair a Big Bang PCB (also known as Thunder Dragon ), a vertically scrolling shoot'em up released from NMK in 1993.The board was actually a factory conversion from Macross II :


It played absolutely fine but sound was missing at all:


A background buzzing noise suggested that analog circuit was doing its job hence the fault was located in the digital section.Most of its components (Z80/EPROM, YM2203 and samples MASK ROMs) were already socketed :

They were all good except the Z80 CPU which I tested as bad in another board.I swapped a good one but this didn't restore sound.So I fired up my Fluke 9010A troubleshooter and hooked up the Z80 POD to the board :


According to MAME sound memory map the RAM lies from 0xc000 to 0xdfff of Z80 address space :


map(0x8000, 0xbfff).bankr("audiobank"); /* banked ROM */
map(0xa000, 0xa000).nopr(); /* IRQ ack? watchdog? */
map(0xc000, 0xdfff).ram();
map(0xe001, 0xe001).w(FUNC(nmk16_state::macross2_sound_bank_w));
map(0xf000, 0xf000).r(m_soundlatch, FUNC(generic_latch_8_device::read)).w("soundlatch2", FUNC(generic_latch_8_device::write)); /* from 68000 */
map(0x0000, 0x7fff).rom();

I launched a RAM test at this specific offset, it failed meaning the chip was likely bad :

 

 

 I removed the RAM chip and one pin remained attached to the board :


I  installed a socket and new RAM :


Sound was restored but playing some games I noticed an entire music track was not correct because samples were played wrongly or randomly :


The audio samples (stored in two 16Mbit MASK ROMs) are played by two OKI MSM6295 ADPCM IC :

"Listening" with an audio probe to the analog output of them I was able to figure out which one was playing wrong samples.I promtly removed it with hot air : 


Then soldered in a spare :

 


It did the trick,  music was fully restored and board 100% working again.Another repair successfully accomplished.