Jump to content
Due to a large amount of spamers, accounts will now have to be approved by the Admins so please be patient. ×
IGNORED

Super Pacman PCB Repair Log


Recommended Posts

I've got a couple of Super Pacman boards that need repairing and decided to do something a bit different with a PCB repair log. Rather than just battle away at the board and just show the success I thought it would be interesting to post the board repair as I do it. Kind of a learning experience for all....well mainly me because I suck at board repair. So this will be part repair log, part Q/A, part call for help. And if I cant repair it my failure will be documented for all to see.

 

I am by no means an arcade repair expert. My qualifications are that I have done a free electrical theory 101 course on the internet and a crap load of reading over the years. I repair most of my games by being able to isolate problems and ask the right questions in forums. Despite my arcade repair successes due to my stellar electrical engineering experience and qualifications *cough* bullshit *cough* *cough*, I've never had a successful board repair. But hey, theres a first time for everything.

 

Anyway here goes.

 

First things first as its an original non-jamma board I needed to make up a harness so I could plug it into my homemade jamma test bench.

 

harness_2.jpg

harness_1.jpg

 

Took me forever as Ive got a pretty shitty crimper. It might actually be me but I'll blame the tools anyway. I had to make a 20 pin connector out of two twelve pin plugs. Its a bit of a hack but does the job.

 

After powering the board up I got this. A blank screen. Interestingly though it looks like I get the usual pacman boot garbage for about half a second before the screen goes black. Not sure what that means yet.

 

black_screen.jpg

 

Armed with the @Womble PCB repair sticky I started going through the checks. First is it getting power??

No. Voltage when measured at board inputwas only 4.8V with the power supply jacked all the way up. So I connected a parrot clip directly to Ferrite Bead 1 (FB1) to give it more juice from the power supply.

 

parrot_clip.jpg

 

This gave me 5.1V which should be ok. I measured the voltages up the far side of the board and they check out too.

 

Next will be the CPU clock tests. The CPU board has a pair of 68A09's so I dusted off the old logic probe to test.

 

This is where I'm up to so far. I cant get diddly squat out out of my logic probe so I think I may need a new one.

 

So a couple of questions......

Where can I get a decent logic probe?

Should I bother with a logic probe or go the whole hog and get an oscilloscope?

Finally, just want to double check a few things with the CPU datasheets. Do XTAL and EXTAL normally refer to clock signals on this CPU? Just want to make sure I'm probing the right pins (pin 38 and pin 39)

Link to comment
Share on other sites

Good work!

 

The voltage drop (the difference between what you measure at the PSU terminals, and what you measure at the board after the harness) is because there is not enough diameter of wiring in the power and ground runs. You either need to beef up the gauge of the wire for the 5V and ground, or add additional runs of the thin stuff. There is no set rule, but when there isnt enough to support the current draw, at the right voltage, you end up with voltage drop and heat at the terminals (actually heat all the way along the wiring, but it only tends to build up at the edge connector).

 

For a logic probe, just get a cheapy $12 affair, there isn't much to them. Some people swear you need one with audio tones, I've only ever used one without. Jaycar don't sell the one I have anymore, just a bare bones kit one which seems a bad idea. Mine now seems to be badged as EISTAR on ebay, the biggest problem with all of them is the power connection, they all seem to use crocodile clips which have a habit of slipping off.

 

A scope is better once you know how to drive it, but I still my logic probe for quick jobs, and plenty of board fixers don't have a scope.

 

It's worth checking that the board has the right CPUs, the 6809 came in two types, the 6809 and the 6809e. The 6809 has a built in oscillator (the circuit that kicks the crystal into oscillating) and the 4x divider, but it needs and external crystal, this connects across the EXTAL and XTAL pins.

 

On a 6809 the XTAL and EXTAL pins should connect to a simple crystal (on at 4x the frequency the CPU gets driven at, as the oscillator circuits have a couple of dividers to clean up the signal to something tidy enough to be the CPU clock trigger).

 

The 6809e needs an external oscillator (not just a crystal) across the two pins. Boards often end up with the wrong type of CPU in them if they are socketed and have spent time in a scrap bin.

 

The 6809s often have an A or a B in the middle of the part name, this just denotes the speed rating of the CPU.

 

Based on the age and type of board I would put money on the fact that most of the problems are down to old single wipe sockets, and ceramic resistor packs that look ok but are actually physically damaged. Any early boards made by Midway or Bally are riddled with them.

 

If you want to bring it over one day I can give you some pointers, and let you drive.

Link to comment
Share on other sites

  • 4 weeks later...

Got a new logic prob so now I'm in business.

 

logicprobe.jpg

 

Given the board was working (saw it with my own eyes) its safe to assume I have the right CPU variants in the board.

I opened up the data sheet for the 68A09EP CPU. Pin 40 is halt which is active when low, Pin 39 is XTAL, pin 38 is EXTAL, which I assume are both CPU clock signals and Pin 37 is the reset which is active when low.

 

There are 2 68A09 CPU's on the logic board. When probing the the CPU at position 1A I got:

HALT = high

XTAL = low

EXTAL = pulsing

RESET = high

 

Probing the second CPU at position 1L I got:

HALT = high

XTAL = low

EXTAL = low

RESET = low

 

So to me it looks like either the clock signal is not happening or the CPU is in reset mode for some reason.

I swapped the two CPUS to see if that made a difference and to rule out the CPU. After swapping the 1A and 1L CPU's the results on the pins was the same.

 

For shits and giggles I probed the two 2148 ram chips at 3K and 3L. All address and data lines were full of activity. Chip Select (CS) and Write Enable (WE) were also low meaning no issues with the RAM.

 

After these bunch of tests I have decided to see where the clock (EXTAL) and RESET pins for CPU 1L go to try and find why they are stuck low.

 

.....next update when I figure out where they go in the schematics.

Link to comment
Share on other sites

ARRRRGG. So turns out I was referring to the 68A09 datasheet NOT the 68A09E datasheet like I was supposed to. The pin assignments are different on these variants probably due to the clock difference @Womble mentioned above. So I thought I would be thorough with the CPU's and got the results of all pins across both CPU's.

 

Probing CPU 1A I got:

Pin 1 (Vss) = low

Pin 2 (NMI) = high

Pin 3 (IRQ) = high

Pin 4 (FIRQ) = high

Pin 5 (BS) = low

Pin 6 (BA) = low

Pin 7 (Vss) = high

Pin 8-20 (address lines) = pulsing

Pin 21 (address) = pulsing

Pin 22 (address) = pulsing

Pin 23 (address) = high

Pin 24-31 (data lines) = pulsing

Pin 32 (R/W) = pulsing

Pin 33 (BUSY) = pulsing

Pin 34 (E) = pulsing

Pin 35 (Q) = pulsing

Pin 36 (AVMA) = pulsing

Pin 37 (RESET) = high

Pin 38 (LIC) = pulsing

Pin 39 (TSC) = low

Pin 40 (HALT) = high

 

Probing the second CPU 1L I got:

Pin 1 (Vss) = low

Pin 2 (NMI) = high

Pin 3 (IRQ) = high

Pin 4 (FIRQ) = high

Pin 5 (BS) = low

Pin 6 (BA) = low

Pin 7 (Vss) = high

Pin 8-20 (address lines) = pin 8 low, the rest stuck high

Pin 21 (address) = high

Pin 22 (address) = high

Pin 23 (address) = high

Pin 24-31 (data lines) = 24-27 stuck high, 28-31 low

Pin 32 (R/W) = high

Pin 33 (BUSY) = low

Pin 34 (E) = pulsing

Pin 35 (Q) = pulsing

Pin 36 (AVMA) = high

Pin 37 (RESET) = low

Pin 38 (LIC) = low

Pin 39 (TSC) = low

Pin 40 (HALT) = high

 

So a couple of questions for the board repair gurus....

A terminology question, is a floating address and data line when the pins are stuck high or when they are stuck low or both????

Is the REST pin on the CPU stuck low (in reset mode) due to the floating address and data lines or are the data and address lines floating due to the CPU being in REST mode????

Just curious to know where I should be looking next. My initial hunch is that I need to follow whats connected to the data and address lines to see why they are not driving those pins.

Link to comment
Share on other sites

 

So a couple of questions for the board repair gurus....

A terminology question, is a floating address and data line when the pins are stuck high or when they are stuck low or both????

 

No, a floating pin is one that is not connected to anything, and won't register as either Hi or Lo on the logic probe, its like when the probe is floating in thin air. For an input pin this normally means it is either not used by the board, or an output pin on another chip is bad, or the connection between the two is broken due to track damage/rot. Inactive pins can either be held in their state, or stuck. It's only a stuck pin if there is a fault somewhere, it could be the chip has lot the ability to drive the output pin correctly (based on the inputs - you need to look at the truth tables in the datasheet here), or the line is stuck high or low due to something else on the line jamming it. But if it is held high or low that could also be normal, or a fault, not all pins will be pulsing on a board. eg on a working board the /RESET pin will always be high as the board is not trying to reset itself.

 

Is the REST pin on the CPU stuck low (in reset mode) due to the floating address and data lines or are the data and address lines floating due to the CPU being in REST mode????

 

Unlikely, on 8 bit CPUs the /RESET line is usually an input line, unlike the /HALT line that can be both an input (ie it lets the board HALT the CPU - common in multi CPU systems), or an output (to signal to anything/anyone that it has Halted due to a fault).

 

Just curious to know where I should be looking next. My initial hunch is that I need to follow whats connected to the data and address lines to see why they are not driving those pins.

 

Address and data lines are often left in weird states when a CPU crashes, so it could be part of the fault, or a symptom of it and technically unrelated.

 

On that board you will have a load of physical faults, bad sockets, and bad resistor packs that act as pull up resistors on the bus lines. If you take the CPUs out of their sockets you should be able to see all the address lines and data lines go logic high. Any that are low could well indicate a pull up fault.

 

I'd focus on the /RESET issue first tho.

Link to comment
Share on other sites

Just some additional info, probing a xtal will nearly always cause it to stop oscillating. You'll sometimes get a clk on the CPU clk output pin but almost never on the input. Also a stalled xtal may not restart without a power cycle. If the oscillator circuit is external to the xtal, like with a 8080 you'll be able to probe both clock signals as they are already buffered before they arrive at the CPU. What you are seeing on your board regarding the clk is absolutely normal.

 

The /RST line. This is an input and something is holding it low. That's the first place to look. A CPU will float/high-z/tri-state all outputs when reset. This is so other gates on the bus don't latch up due to data collisions at startup or reset. I wouldn't look into the address bus or data bus on that CPU until you know it's running (not halted, reset etc)

 

And with your 5v dropping, this is also a symptom of a high load somewhere on the board. A latched up gate or bad cap, chip etc can do it. Or it could just be a higher current than the wire you are using can supply. Look at the fuse rating for the supply rail, of your power supply is supplying anywhere near that, you have a problem and continuing running it like that can cook traces and make things worse. It's never a good idea to just beef up the wiring, put a bigger fuse in etc if you don't know what the board should be pulling.

 

Ben

Link to comment
Share on other sites

Taken from the manual - Address lines A20 - A23 are decoded by a 74LS259 at position 2M to provide the reset and interrupt signals for the two microprocessor circuits. The schematics confirm this.

 

Pin 9 & 10 are low which means 74LS259 (2M) is definitely giving the reset signal as these pins go to the CPU reset pins. Pin 15 is an input pin used as a part of the reset circuit too. The datasheet indicates this input is active when low so I'm guessing this is used to kick the CPU out of reset mode. Given this is stuck high its not happening.

According to the schematic there are only 5 possible inputs into 74LS259 (2M) that can trigger the reset. Four of those go to LS367 at position 2N, the other comes from the PAL chip located at 1M.

 

All of four relevant outputs at 2N are pulsing. Does this indicate its not triggering the reset??? I'm assuming so. Because I dont really know what I'm doing yet I decided to piggyback a new IC at 2N.

 

piggyback.jpg

This made no difference so I'm now ruling that out.

The reset output from the PAL at 1M however is stuck high. I'm not sure exactly what this chip does but my next step will be to get the datasheet to see whats up with it.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...