ROM_REGION( 0x040000, “layer2”, 0 ) /* Text / Character Layer */
ROM_LOAD( “text.u58”, 0x000000, 0x040000, CRC(5dba06e7) SHA1(f9dab7f6c732a683fddb4cae090a875b3962332b) )
I translated this info on hardware and figured out the relevant circuit of each layer:
Each circuit consists in a QFP custom ASIC (maked ’38’) which addresses an 8Mbit MASK ROM (or a 2Mbit EPROM for the text layer) reading back data that then are written to two 8K x 8-bit static RAMs.After succesfully checked connection between ASIC, ROM and RAMs my suspicions fell on the 8k x 8-bit SRAMs, they were all manufactured by Sanyo so in my experience not a great guarantee of reliability.Probing the ones @U50 and U51 (which lie in the ‘layer 0’ circuit) revealed weak or stuck signals on many data lines:
I removed both:
Actually only the one @U51 failed the out-of-circuit testing:
Now all graphics were visibile.Backgrounds and sprites were fine but text was corrupted throwing garbage over the screen :
The ‘layer 2’ identified in MAME source as ‘ Text / Character Layer’ was obvioulsy the involved one.Checking the two Sanyo 8K x 8-bit SRAMs @U55 and U56 revealed again weak signals on data lines:
I removed them and installed machine sockets:
Actually both RAM chips successfully passed the out-of-circuit testing of my different programmers.Anyway, replacing them fixed completely the graphics:
But sound was horribly scratchy and corrupted as you can hear in the above video.Here it comes again to help my audio probe for checking the relevant circutit:
“Listening” to various points revealed the sound was clear on the analog output of the two OKI MSM6295 and still good on outputs of the LM324 OP-AMP and input of the LA4460 amplifer.It was fine too on one output (pin 7) of the LA4460 amplifier:
But corrupted on the other output (pin 9)
I ruled out all electrolytic capacitors checking them in-circuit with my ESR meter (bad ones can affect sound in this way) so I decided to remove the LA4460 amplifer:
Put back a good one and some thermal compound for a better heat dissipation:
This restored a crystal-clear sound.Mission DonPachi accomplished!
I recently borrowed this Arkanoid PCB from NES4Life. I wanted it as part of a project to recreate the 28 pin custom chip that found on this, Darius and probably a couple of other Taito games of the same era.
He kindly loaned me this but knew it had issues so I agreed to look at this one rather than poke around on one of his workers.
First up the game would not boot, just watchdogged.
Using the schematics available in the download section I could easily track down a stuck bit on the data bus.
IC42 was to blame for this. Replacing it let the game boot but with all new issues.
You can see the game has booted straight into test mode and the colours are messed up.
One of the DIP switches is for test mode and the DIP’s are handled by the YM2149 chip. Looking at the databus when this chip is supposed to be active showed all data bits stuck.
Replacing this chip let the game boot.
Colours are still messed up so lets look into that. I chose to start at the 3 colour PROM’s
Probing the address pins revealed most were floating. Going backwards we come to a 74LS298 at location IC38. Replacing this then gave me this:
You can see now the screen is doubled up.
The graphics are contained within 3 EPROM’s. These EPROM’s are all addressed by 74LS298 chips before outputting their data to the custom bit shifters.
Checking these 298’s showed some stuck output pins on IC50.
Replacing this gave me a more normal screen but the bat sprite is being drawn half way up the screen and is doubled up.
Horizontal position has its own bus on the schematics
I confirmed the operation of the 74LS157’s first so moved onto the 74LS669’s. I’ve not dealt with these before and had none to hand either but I was fairly certain id narrowed it down to IC65 so I ordered some new ones up, desoldered the old one and tested it. Thankfully it failed.
Got the new chips a couple of days later and fitted.
Just the double bat issue to go.
The schematics also have a bus identified as OBJ which Im taking stands for Object. It made sense to me that the issue was somewhere along the same path as the previous positioning fault so armed with my best guess going from schematics I carried on following the path first of all checking the other 74LS669. This appeared to be OK and the RAM didn’t have any unusual looking signals on so I carried on. After these there is a 74LS374 on the OBJ bus. Probing the outputs of this found a single stuck bit. Replacing this gave me a seemingly fully operation game.
I cannot check the spinner inputs but all the sounds, DIP’s and regular inputs are working.
On my PCB a replacement board had been used in place of the original part:
Some inputs of a 74LS240 on this replacement board were shorted to ground.Instead of repairing it, I opted for a reproduction of mine (the blue jumper wire was already there to patch a trace previoulsy broken during the removal of the original ‘HK-1000’)
Finally the board booted into game with no further issues.Toplan double repair log accomplished.
And it was so, all I got was a steady black screen but this was not a suprise to me since the boardset (a three stack one) was fully populated by Fujitsu TTLs.First thing I checked was the presence of clock on CPUs, it was missing on both main and sub Z80 (but present on sound one)
I traced the signal from CPU board back to a 74LS367 @10A on bottom board:
Input pin 6 was properly receiving the 16MHz clock from the nearby oscillator but output pin 7 was floating:
As expected the TTL obviously failed the out-of-circuit testing:
Board sprang to life but colors were mostly incorrect and also sprites wrong and garbled during moviments :
I focused my troubleshooting on the bottom board as it contains sprites and background data and circuitry :
For first I checked the EPROMs, some of them were oxidized and corroded:
Afer some cleaning I dumped them, they were all good.So I fired up my logic comparator to test TTLs in circuit and found a couple of them with floating outputs (that’s the way Fujitsu TTLs are used to fail)
This restored the correct sprites :
But colors were still wrong.This was confirmed also in SERVICE mode, none of the them were correctly displayed:
The RGB lookup tables are stored in three 1k x 4-bit bipolar PROMs (Fujitsu MB7122 used here)
Probing the devices revealed that two address line were stuck high, I traced them back to a nearby 74LS174 @1M whose inputs were missing.These came from the outputs of a 75LS153 @1P-The TTL didn’t look very good with rust and corrosion on its pins:
The scope confirmed that both outputs had no valid voltage logic levels:
I pulled it:
Obviously it failed the out-of-circuit testing:
Colors were finally good and game played fine but I noticed there were some horizontal lines on left of the screen during scolling (see from seconds 25 of the below video)
At first glance I thought it was a fault but then I’ve been told by the owner and my friend Corrado that it’s actually a bug of the PCB.MAME Testers site confirmed it too: