Saturday 17 May 2014

Atari Jet Fighter. PCB Repair.

Back in March I fired up my new cab and was pretty happy with the results, The game powered up and seemed to work, with exception of what I took as a graphic fault seen below where the Jets were displayed multiple times vertically down the screen. 

Original testing in March. 
I decided I was going to spend some time to look at this board this week just gone. My initial diagnosis above was not quite correct... Looking closer at what was on the screen the 'Jet' graphic was not complete and had bits missing especially noticeable in the white Jet. Also it was not possible to score points, I thought it may be due to the fact so many Jets were on screen at the same time. So I was looking at multiple faults already, and as (bad) luck would have it, after having the board on soak for a few hours I looked at the screen to check the game was still running and all I could see was a black screen! A few expletive's came out of my mouth and then I re-powered the cab, the image below is what I now had to work with...

The black 'Jet' and 'Score' were missing and instead of having a solid light background colour there we now horizontal bands in alternating colour going down the screen. (difficult to see in the photo below, but move visible in the photos further down.)

The fault log begins with this screen.
I have a copy of the Operation & Maintenance manual and it has some great description of what signals control certain aspects of the game, this certainly aided my fault finding, I also printed some A3 schematics that I could mark up in pencil and highlighter pens.

Initially I did go round the houses trying to work out where in the circuit the faults were, but after reading the manual a few times and following the signals in the schematics I got hot on the trail of issues, cutting to the chase, the faults were as follows.

IC location F3 a 74LS10 (3 input NAND gate) now had no output from pin 12. This provided the Jet/Score and Shell for black Jet.

Black Jet & Score back, but Jet video is inverted.

So with video back, I played a few games and noted that the score wouldn't increase when the Jets were hit with shells and the fact that no explosion registered to say the Jet had been hit. As it turns out another 74LS10 this time at location E1 had no Output on pins 6 & 8, these are the two trigger signals for Jet 1 & 2 respectively that further down the circuit chain pulse a 'BLO UP 1/2' signal which is used for detection of a hit. With this IC changed the score now worked and Jet explosions happened when hit by a shell.
Scores now working
The White Jet graphic was slightly corrupt not correctly displaying properly, The data for plane comes from ROMS at J5 & K6 (2K each). This data is shared between the two planes, so as the black Jet looked fine (although inverted) I was pretty sure the ROMs were OK. The ROM data is fed into a pair of Parallel to serial converters. For the white Jet they are at locations J4 & K4. Pin 7 of K4 provides the serial data through a few more IC's before becoming the Jet 2 video signal. The IC clearly was outputting something as you could see the image on screen, but my Logic probe was saying that pin 7 had no signal (High/Low or pulsing) Pin 9 is the inverted state id pin 7 and although not used in the circuit appeared dead too. I compared this to the Logic to the Black Jet and those same pins were pulsing along nicely. Time to swap K4, once replaced the Jet graphic was spot on and working.

I needed to get to the bottom of the 'multiple Jets on screen' fault that this board has had since I first turned it on. I'll put finding this fault down to mild guess work and lots of general probing around. I had the opinion that the issue was in the Vertical motion counter section of the circuit. Seeing as the fault was on both Jets and that each Jet had its own counter I had a hunch that these weren't directly the fault. The output from the counter for both Jets was fed into a 74LS74 flip flop IC. Pins 5 & 9 are the output pins which are mixed with the Horizontal blanking and Horizontal Jet position. They were stuck low. I cut one of the pins in circuit to confirm nothing else was pulling the pin low and it stayed low. Time to replace it...
Wohoo! Fixed as shown below, just the inverted black 'Jet' video and the background bars remaining.

Only one black Jet (Video inverted) and one white Jet.
More general probing around the final stages of video signals before they are joined in a resistor network found me this fault, IC at E4 an 74LS08 pin 6 provides the final video data for the White Jet. (Jet video and H/V blank info) As with the earlier fault the output was working but using a logic probe gave odd results, I did 'piggyback' an IC on top of the one in circuit and the background issue was gone, so I replaced the IC and that left the inverted video fault...

I remembered reading in the manual that when a Jet was hit by a shell the Jet's video was briefly inverted, to me it seemed this was happening constantly. The 'BLO UP' signal comes out or a 2 input gate at position K8, the logic probe was telling me this signal was constantly low, I monitored this in a game and made a white shell hit the black Jet, the output on the gate stayed low. Next up I cut this pin and re-powered the game. The Black Jets video image was now the correct was round, using the White Jet I fired a shell at the Black Jet, the game functioned as expected but without the brief inversion of video (that pin now wasn't connected!) So I replaced the IC and for now the game is fixed and fully working.

I've really enjoyed getting these faults fixed and think I've learnt a fair bit these last few evenings. Now its time to sort the cabinet out.

Cheers, Mart.
Background banding issue fixed, inverted Black Jet video fixed. Game...Fixed!

Wednesday 7 May 2014

Atari Fire Truck. Board repair's...

If you were lucky enough to make it down to the South Coast Slam a few weekends back you might had seem and had a play on my FT cab. Unfortunately when I fired the cab up on the Saturday morning of the show, a graphic fault had developed on the Truck part of the vehicle. A quick re-seat of all socketed IC's didn't help the situation and the show went on and Fire Truck had a graphic fault as shown below. (Horizontal black lines running through what should have been the truck.)

Lines running through the truck graphics.

So it's time to get the schematics out and fix the issue, but first let me step back to the original fault when I turned the cab on after firing it up for the first time... See the image below, the game was not playable, the background was scrolling madly and a constant audio tone was coming out of the speakers.

Original board fault from September 2013

I sent the board to Andrew Welburn (P-Man) who fixed the game and sent through the following diagnosis along with the fully working board.

"
 > Your pcb is now fixed... brief fix summary : Address buffer at 1A had a couple of stuck 
 > bits and was replaced.. the cpu was dead as a doornail and was replaced, the zero page 
 > ram @ N2 was bad so it was replaced along with a socket install too. There was also a 
 > loose patch wire on H5 the graphics ram buffer that was rectified.
"
So where did I start with the current issue; Reading the Operation & Service manual confirmed that the tail cab data is stored in two ROMS at positions J5 & L5. These can be read as 2716 ROMS and in my programmer the checksums they gave matched the checksum I generated looking at the MAME rom file in a Hex Editior so these weren't the issue, and I must say I had a good look for dry solder joints before looking into component failure, my initial assumption was that the road journey to the show had caused some of the 35yr old solder to fail...

Fire Trucks Tail circuitry
So testing with my logic probe I confirmed the Address and Data lines were happily pulsing away, the data lines from the two ROMs pass through an LS273 at position M5, again the data was coming out of this pulsing away looking like what I think is OK. I did note that If I shorted and Input pin to Output pin (i.e. 2&3 or 4&5) It would create a similar fault to what I was already there but in a different position on the graphic. Next in line to check was an LS151 at M6 this is where all the ROM data is turned into a single output called TAILVIDEO. The select lines on this chip were pulsing away and none of the data inputs seemed bad so I was a bit stuck... 

Hoping for the day that I find a leg on a chip that is dead, stuck low or high, I decided to order an LS273 and an LS151 and try piggybacking them to see if the problem is fixed, first up I piggybacked the LS273 at M5 and it made no change to the fault. BUT I had more luck with the LS151 at M6. Boom upon piggybacking this chip the video fault had gone. YES! I removed the faulty chip, put in a new socket, inserted the chip and the fault was gone. I suspect that one of the Data bits of the LS151 was internally shorted.

It would have been nice to find the exact fault, but I'm happy it only took a few hours in total to get the cab running 100% again. Until the next time...

Fixed! :o)