• Please review our updated Terms and Rules here

Commodore PET 4032 Problem

Oh, I see from the photos, all the big chip are on sockets. That good. Then it will be fairly easy to try the 40 pin chips.

But after that, a methodical and tedious examination with an oscilloscope may be the best hope of finding the dead chip.
-Dave

I am in the process of ordering one today. My next plan is to check continuity between board and pins in all socketed ICs. I could use my multimeter to test the Power is correct to all the chips as-well. I have ordered a few MK4116-3 RAMs so I can try the "piggyback" method to test the RAM chips. (These ones should be compatible i presume?) None of the 4116s on my board get overly warm so I assume there are no shorts.

Steep learning curve but hopefully I'll come out at the other end with a working PET and knowing a lot more about electronics !
 
Harry,
Good work. The news is good and bad. Good that the ROMs are OK, but bad that the ROMs are OK... :)

Since Empty has gone through all the trouble of removing his ROMs, he should consider installing 24 pin IC sockets before replacing the ROMs for easier troubleshooting the next time. It would also allow for the placement of a diagnostic EPROM in the F000 slot in the future.

I would envision the diagnostic chip could contain 6502 code to try to communicate with the user by initializing the CRT controller and sending a simple menu to the screen. If that is not working, it could attempt to communicate via lights on the user port, etc. Simple CPU, RAM tests and I/O tests as well as ROM sum checks could be performed.

Dwight has mentioned that he uses this technique on some of his machines. Does anyone have such a EPROM for the PET? It might make for a good project for our software gurus.
-Dave

Hi
Dave
Of course if someone was to give me a pet to work on I'd be tempted to create
such a EPROM.
There is a lot that can be done with a 'scope first. Things to look for
are dead data lines and address lines. Compare what you see at the
cpu with what you see at all the ROMs and RAM. Open feedthru's are
not that uncommon. They work for years then go open for no reason.
Don't get too excited on a dead address line because it may be that
the code just never gets there.
One fellow mentioned that you could make a header for the CPU that
would float the data pins of the CPU. You could use a couple machine
pin sockets. This would allow you to force any particular instruction
into the cpu, such as a NOOP. This would cause it to sequence through
the addresses. Handy for checking address decoders on anything that
is connected to the bus as a read. You'd need to get tricky for the writes.
Maybe add a couple of switches to swap reads for writes.
It'd be a great 6502 tool to go with a 'scope or a logic probe.
Dwight
 
Hi
I did some searching. Such a test socket looks easy to do.
Start with two 40 pin machine pin sockets. Remove pins
26 to 33 on one socket and connect a 1K resistor to pint 34.
Wire this to a double throw switch to +5 and ground.
Ths will be the r/w select.
On the next socket remove pin 34. Add 4.7K resistors to
pins 26 to 33. Connect these as follows:
26 +5
27 +5
28 +5
29 gnd
30 +5
31 gnd
32 +5
33 gnd
This will give basic test. You could add another layer
with some 4.7K resistors to pins 26 to 34. These you could
connect to some switches to select values to write to
things like RAMs or such.
Dwight
 
Dwight,
What a great test! This would be good to check that all the address lines are able to switch (need a scope). By forcing a hex 'EA' on the data bus, a constant "No Operation" instruction will be executed with the program counter incrementing forever. At first I thought that the non-maskable interrupt (pin 6) should also be isolated and held high, but I don't think that is necessary as the PET hardware doesn't seem to use it.
-Dave
 
Hi
I did some searching. Such a test socket looks easy to do.
Start with two 40 pin machine pin sockets. Remove pins
26 to 33 on one socket and connect a 1K resistor to pint 34.
Wire this to a double throw switch to +5 and ground.
Ths will be the r/w select.
On the next socket remove pin 34. Add 4.7K resistors to
pins 26 to 33. Connect these as follows:
26 +5
27 +5
28 +5
29 gnd
30 +5
31 gnd
32 +5
33 gnd
This will give basic test. You could add another layer
with some 4.7K resistors to pins 26 to 34. These you could
connect to some switches to select values to write to
things like RAMs or such.
Dwight
A NOP generator is standard equipment in the toolbox of anyone working on 6502 systems, but it can even be a little simpler to build; of course you need an oscilloscope to really use it.

You'll also find some versions on the web that use a ROM socket; a little simpler but not quite as useful.

As Dave says, all ROMs being good is actually bad news...
 
I would certainly try the RAM piggyback method when the chips arrive. Not conclusive, but this did reveal dead RAM in a couple of the vintage computers I've worked on.

Tez
 
Hi
If one really wanted to get a little more fancy, some
override switches on the higher order address would
be nice to restrict the address range for specific
address blocks instead of waiting for complete address
loops.
If one made ROMs to test it often requires much
more to be working.
Dwight
 
Hi
I might be building the NOP circuit I talked about.
No, no one gave me a Pet. I just bought an Apple
IIe in unknown condition. I plan on reconstructing
an Informations Appliances Swift Card. I have
what I think is the design of the PAL. The ROM
imge is available and I may even have a demo
disk for it.
I may first have to get the machine healthy then
I can experiment some.
Dwight
 
Post Arrivals

Post Arrivals

Harry, ROMs arrived safely this morning - thanks again !

I have also received my 4116s and a logic probe. I will try and do some testing later and post the results...
 
Last edited:
Harry's Magic Touch

Harry's Magic Touch

So, I re-inserted the ROMS.

And then I fired her up.

And then ...

... For no discernable reason in particular ...

It initialised the CPU.

TODAY IS A GOOD DAY. :D

IMG_3771.jpg

Whilst it would have been nice to definitively identify a failed part I'm more than happy that it's working now.

All keys seem to be working and 31743 bytes free (same as Harry found). I have powered off for a few seconds and powered on a few times - still no problems !

I can't tell you how grateful I am to all of you for your input and enthusiasm. I have been humbled by the kindness of those who have given up their time to help without asking anything in return. This really has been an interesting thread and some fantastic ideas have come out of it. I have learnt more from you all in the last couple of weeks than I could ever have hoped.

DaveM, MikeS: Thanks for your suggestions about reading the ROMS and putting me in touch with Harry. I am going to start building an EPROM Reader / Writer for fun - when its done I'll post some schematics and links to source code if anyone's interested.

Tezza: The blog from your PET project was extremely helpful in understanding how to go about starting the troubleshooting process. Its amazing that after all these years this little computer still has the power to rekindle my interest in electronics and programming - I hope I can pass this fascination on to my kids ! Long live the PET !

Dwight: I'd like to build a diagnostic ROM at some point - this seems like a very interesting project ! I must learn to use a scope and get my head around how these old machines actually shuttle data around. Since the USB interface I have has a couple of analogue inputs I may even be able to build a USB oscilloscope project at some stage - it's amazing how we can make do with what we can find in a pinch !

Carlsson: Again thanks for the input and the kind suggestion of looking through your boards as an alternative option.

Harry: You are a gentleman and a scholar ! If there is ever anything I can do to return the favour please let me know.

And of course I am now going to treat my PET to a clean and post more pics. I'd like to connect a reset switch at some stage so I don't kill the screen while I'm playing !

I hope I can remain an active member of the Forum and contribute where I can - I'll be keeping a close eye on the posts and if there is ANYTHING I can do to help please let me know !
 
Fantastic!

It's great that the old girl is now working again. Good to know those blog articles are useful to people.

Pity there wasn't a definitive diagnosis though. What suddenly comes right, can just as suddenly go wrong again. Never mind, it may have just been a dry solder joint that's suddenly connected. Hopefully, it will stay that way.

Another great team effort guys (I say that as one who was cheering from the sidelines).

Tez
 
Excellent! Delighted to welcome another PET back to active service.

@Harry: You've obviously got the magic touch; I'll be sure to send you all my questionable IC for you to lay your hands upon...

When I get back home I'll see if I can find the schematics for that reader/burner I mentioned.
 
It initialised the CPU.

TODAY IS A GOOD DAY. :D
Empty,
Fantastic! The problem may have been a little oxidation on one of the ROM pins or like Tez says, a cold solder joint that has decided to make contact again when the board was flexed.

I learned a good tip from the guys that I should build a "NOP generator" for the next time my PET fails.
-Dave
 
Great news! I hope your luck continues, this may have been just a poor connection at the rom pins, all I did was to straighten and realign the pins prior to testing, But it would have been nice to find a fault, and be able to rectify things! ...have fun
with your Pet..........Harry
 
Last edited:
Back
Top