Troubleshooting Common Problems with the Commodore PET 2001

As a seller of replacement parts for the original Commodore PET 2001, I am frequently asked questions like “My PET won’t boot. Will your (fill in product here) fix it?”. I usually answer these questions are some troubleshooting steps / tips that the potential customer can use to try to narrow down the problem, but after having answered essentially the same question dozens of times, I decided to put together this article so that all my collected knowledge on problems with the PET can be found in one place. What follows stems mostly from my experience putting back together the pieces of an incomplete Commodore PET 2001-8 that I tore apart as a small child augmented with what I have learned from helping customers troubleshoot their Commodore PET computers and from designing my various Commodore PET replacement parts. It is NOT intended to be comprehensive, just to outline troubleshooting techniques for some of the more common problems with the PET.

Background / Scope

This article applies ONLY to the ORIGINAL 1977 Commodore PET 2001-8! In short, if your PET does not have a cassette drive built in and a chicklet keyboard, then this article does not apply to your hardware. I have never worked on one of these newer PETs, my parts do NOT work with them, and I know essentially nothing about them. If you have one that doesn’t work, all I can offer is that I will work on it ($50/hr) if you ship it to me. Contact me if you are interested in this service.

Even if you do have an original 1977 Commodore PET 2001-8, do note that there were multiple variants of the motherboard. The first version used MPS6540 ROM chips and MPS6550 RAM chips. Later versions substituted 2316B ROM chips in place of th3 6540’s and/or 2114 RAMs in place of the 6550s. In all four variants were made. This article applies directly to the original 6540 / 6550 version since that is the most common variant and the one that I have the most experience with. The others should work similarly and I have noted differences where I know them to exist. However, be aware that things may not work exactly the same if you have 2316B ROMs or 2114 RAMs.

Finally, this article assumes that you know at least basic electronics. If you don’t, please, stop now before you damage something or hurt yourself and let me repair your PET for you.

Other Resources

There are many other resources on the web that can help you. Google is your friend here, but some of my favorites are listed below.

Complete Schematics for all variants of the 2001:
http://www.zimmers.net/anonftp/pub/cbm/schematics/computers/pet/2001/

ROM images for all variants of the 2001:
http://www.zimmers.net/anonftp/pub/cbm/firmware/computers/pet/index.html

Users Manuals:
http://www.commodore.ca/commodore-manuals/

The PETvet – This is an expansion board that mounts between the CPU and the motherboard of the PET. It allows you to bypass the RAM and/or ROM on the PET motherboard. The creator advertises it as a permanent solution to failed RAM / ROM, but I think it is better to use it as a troubleshooting aid and then once the problem is found, replace only the failed components, leaving the rest of the pet original. In either case, it is a useful tool:
http://www.bitfixer.com/bf/petvet

And last but not least, here are my PET related products:
http://www.dasarodesigns.com/product-category/pet/

Before you Begin

Before troubleshooting a Commodore PET 2001, it is essential to note that the process will involve repeatedly turning the computer off and on. This is extremely hard on the internal monitor circuitry and can cause it to fail in short order. Furthermore, some of the tests require that you look at what is on the screen after power is turned on but before the CPU is reset. This is only easily possible with an external monitor as the internal monitor comes on too slowly. Thus, I strongly recommend that your purchase one of my Commodore PET Video mixers before beginning a PET troubleshooting project.

Also be aware that the chips used in the Commodore PET, especially the RAM chips, are highly sensitive to static electricity. Thus I recommend wearing a static dissipative bracelet when working on the machine, or at very least being careful to always touch the chassis before touching the board.

The sockets used in the PET 2001 motherboard are notorious for bad contacts. Thus, before spending a long time on troubleshooting, I recommend removing each IC, cleaning the pins with a pencil eraser and reinserting them. Using a bit of DeoxIT can also help.

The Commodore PET 2001 Motherboard

Ok. Now down the business. A photo of the Commodore PET 2001 motherboard (the kind with 6540 ROMs and 6550 RAMs) is shown below with all the important bits labelled.

PET2001BoardLabeled

Please refer back to this diagram as needed when reading through this document to figure out where the parts that I am referring to actually are on the motherboard in your PET. Also note that there are numbers going up the left side of the board and there are letters going along the bottom of the board. These letters and numbers form a grid on the board by which components can be identified. For example, the CPU is at F3. This system is used in place of numbering the individual chips (i.e. U1, U2, U3…) and is used by Commodore on all the official schematics. Also note that when I refer to upper / lower / right / left these I am assuming the same motherboard orientation as is shown in the photograph.

Troubleshooting the power supply

Testing the power supply in a PET is (luckily) very easy. Just measure the voltage between the middle pin (ground) and the lower pin (+5V) of each of the four voltage regulators with the PET turned on. Each voltage should be in the range of 4.8 to 5.2V with less then about 50mV of ripple. If they each meet this spec, then the power supply is working fine.

If all the regulator outputs have roughly equal problems (low voltage or excessive ripple) then suspect the large filter capacitor on the chassis, one or more of the rectifier diodes on the board, a shorted regulator or bypass capacitor on the board or the power transformer. Troubleshoot / correct accordingly.

If only one (or two) of the regulator outputs shows excessive ripple or low voltage, then the problem is either a bad regulator or a one of the ICs fed by that regulator has shorted and is loading it down. If such a short has occurred, then the affected IC will quickly become quite hot. Feel each IC in the machine to identify the problem. Remove it and retest the rail. Else, try replacing the regulator. (You can carefully unsolder the output lead (lowest one) and solder a new one in ‘parallel’ to test before replacing it outright.) Replacements are easy to come by as the part is a standard 7805.

Troubleshooting Video Problems

I will define video problems here a problems that result in a corrupted display on a machine that otherwise seems to boot normally, although severe problems with the video circuit can also make it appear as if the machine is not booting or even prevent it from booting. See the next section for booting problems.

First, be sure that your problem is not with the PETs internal monitor. The simplest way to do this is to use one of my Commodore PET Video Mixers to (temporarily) replace it with a standard external composite video monitor. Apple II or Commodore 64 monitors work well for this. If the problem is with the internal monitor, it is most likely due to bad electrolytic capacitors on the monitor board. Test with an ESR meter and replace as necessary. I haven’t ever fixed one of the internal PET monitors, so unfortunately I can’t give more specific hints then that.

Assuming that it is known that the problem lies with the video circuitry in the PET itself, a quick overview of how the system works is in order. The video system consists of two main components: the video ROM and the video RAM. The video ROM contains the sequence of bits required to form the characters seen on the screen while the video RAM keeps track of what character is displayed at each position on the screen. Thus, generally, video problems that affect certain characters or groups of characters independent of their position on the screen are likely to be due to bad video ROM while problems that affect specific screen locations are likely to be due to bad video RAM. Of course, the most common problems are a completely failed ROM or RAM in which case this distinction is not so useful.

When the PET is first turned on, before the CPU reset a second or so later, the screen should be full of a perfectly random arrangement of characters as shown in the picture below. If you see this, it likely means that the video system is fine. Thus, your goal in troubleshooting the video system should be to achieve that result. Below is a set of photos of common video system failures and their causes.

Normal turn-on screen

This is what you are aiming for.

PETVideoGood

The same character (usually ‘@’) in each position on the screen

PETVideoBadCPU

This screen is usually the result of a failed CPU. Because the CPU contains the clock divider circuitry that produces the clock-phases used by the video circuitry, if it is not present the characters stored in the video RAM (random noise) will not be displayed and instead the character represented by the code 0x00 is displayed. Check the CPU carefully for bent or corroded pins, re-seat it a couple time, and if that doesn’t work try a replacement.

Invalid characters displayed

PETVideoBadROM

PETVideoBadROM2

Both of these cases represent bad video ROM. Note that in each case invalid characters are displayed. These pictures are shown for a PET that has booted, but the same effect can be observed on the turn-on screen. Any time you see invalid characters, replace the video ROM. My 6540 ROM adopters are the correct solution for this if you pet uses MPS-6540 type ROM chips. If the turn-on screen looks like random noise, it is possible that the wrong ROM is inserted into the video ROM socket. Be sure the number on the video ROM is 6540-010 for a type 6550 ROM. I don’t what number appears on the 2316B video ROMs.

Finally, the photo below shows the the turn-on screen for the case when the video ROM has been completely removed (or has failed utterly).

PETVideoBadROM3

Non-random characters are displayed

The photo below shows a classic case of bad video RAM in the left video RAM socket. The stripes of identical characters represent stuck bits in the RAM

PETVideoBadRAM1

Here is the same bad RAM chip inserted into the right socket. The pattern still shows non-random patterns, but it is more subtle. Note that a much smaller range of characters are represented then should be.

PETVideoBadRAM2

One of the best tests of video RAM is to observe the startup screen and note how random the collection of characters appears. Good video RAM will show a very random distribution of characters. Failed or failing RAM will usually show patterns as seen in the photos above. If you observe non-random patterns, turn off the computer, replace one of the video chips with one of the main memory chips and turn it back on. Repeat until you have found a pair of RAM chips that produce a uniformly random screen of characters. As explained later, this test also serves to identify bad system RAM chips.

It is worth noting that some 2114 RAM chips, even when good, do not appear to produce perfectly random patterns the first time they are turned on. For those chips, it works better to turn the system on, wait a second or so, turn it off, then turn it back on and observe the turn-on screen for randomness.

Finally, here is a photo showing the turn-on screen for a PET with both video RAM chips removed or completely failed.

PETVideoBadRAM3

Troubleshooting Booting Problems

OK. Now onto what is most arguably the most common problem. Your PET won’t boot. It stays on the random-character screen, or it starts to boot but hangs on a blank screen, or maybe it boots to the point of showing some of the startup text but then hangs. What to do?

The first step is to make sure the power supply and video system is working correctly per the previous sections. Next, try removing and cleaning the pins on all the chips if you haven’t done so already. If neither of those work, read on.

Minimum components needed to boot a PET

When troubleshooting booting problems it is useful to remove all the socketed components that are not necessary. This eliminates the possibility that one of them is prevening the system from booting. The following complement of chips will allow the PET to boot, albeit without a cursor or working keyboard:

Remove:
-All system RAM except for four chips. For systems with 6550 RAM chips, those chips need to be in locations  I1, I2, J1, and J2 (bottom most four chips in the board layout picture). For systems with 2114 RAM chips they needs to be in locations I7, I8, J7, and J8 (top most four chips in the board layout picture).
-PIA #1
-PIA #2

In this configuration the system should boot and say that it has 1023 bytes of RAM free. If it does, insert the components one by one until it stops booting, thereby identifying the problem part. If not, your problem could be a bad ROM chip, a bad RAM chip, a bad CPU, a bad VIA, or a problem with some supporting logic chip. The only way I know of to find a bad CPU or VIA is by substitution, and finding a bad supporting logic chip is even harder, requiring troubleshooting with a logic analyzer/oscilloscope and a bit of luck. Luckily, though by far the most common problems are with bad ROM and RAM.

Finding a bad system RAM Chip

If your system boots, then identifying a bad RAM chip is easy. Just use the tables below to find the bad pair of chips, then substitute them one at a time with another system RAM chip until the fault moves, thus determining which of the two is actually bad. Note that the location depends of whether your PET uses MPS-6550 RAM or 2114 RAM.

Bytes free Bad 6550 location Bad 2114 location
1023-2046 J3 or L3 J6 or L6
2047-3070 J4 or L4 J5 or L5
3071-4094 J5 or L5 J4 or L4
4095-5118 J6 or L6 J3 or L3
5119-6142 J7 or L7 J2 or L2
6143-7166 J8 or L8 J1 or L1

However, if the system will not boot, the best way to find bad RAM chips is to substitute, one at a time, each of the system RAM chips into one of the video RAM sockets (the left one seems to work best), while looking for non-randomness in the turn-on screen as described in the ‘Troubleshooting Video Problems’ section. Of course, be sure to shut off the computer before unplugging or plugging RAM chips. By going through this process, you should be able to sort out the good system RAM from the bad system RAM. Once you have four chips that you are pretty sure are good, put them into the board (see the ‘Minimum components needed to boot a PET’ section above) and see if the system will boot.

Once you have it booting, verify that the ‘bad’ ROM chips are actually bad by substituting them back in and seeing if it still boots. 2114 RAM chips are standard and easy to get, but if you need replacement MPS-6550 RAM chips the only solution I am aware of is my 6550 RAM adapter.

Finding a bad system ROM chip

Finding bad ROM chips is harder then with RAM chips because each ROM chip is programmed differently and thus they cannot be substituted for each other. For this reason, if you suspect bad ROM the first step should be to make sure that all the ROM chips are in their correct sockets. Use the table below for computers with 6540 ROM chips. Sorry, but I don’t have similar information for the 2316 variant but you might be able to figure it out from what is given here.

Location Part number on ROM chip
H1 6540-011 or 6540-019
H2 6540-013
H3 6540-015
H4 6540-016
H5 6540-012
H6 6540-014
H7 6540-018

Assuming that all the ROM chips are present and installed in their correct positions, the only way to know for sure if they are good, aside from subsituting them into a working PET, is to use my EPROM Programmer Universal Adapter in conjunction with a Willem EPROM Programmer to read the contents of each ROM and compare them against the ROM images available here. There is another test, which I will describe, but it will only catch a ROM if it fails completely. The test involves substituting the ROMs one at a time in place of the video ROM. When the PET is first turned on, the screen should be full of what looks like random noise (see the picture below.) When performing this test, remove the system RAM to prevent the system from booting. If it is not, the ROM is probably bad. Another test is to use a PETvet to replace all the ROM in the system at once and see if that solves the problem. Of course, even if it does, that still doesn’t tell you which of your original ROM chips is bad. Also be aware that a failed (shorted) ROM (or RAM) chip can prevent the system from booting even with the PETvet installed. Once you have identified a bad ROM, use one of my 6540 ROM adapters to replace it (if you pet uses MPS-6540 type ROM chips.)

ROMTest

Conclusion

I hope this has helped you bring your PET back to life. If not, I am happy to take specific questions and also do repair work on PET 2001 computers. All you need to send me is the motherboard so shipping will not be expensive. Contact me if you are interested. Finally, do be aware that this document is by no means complete or necessarily 100% accurate It simply outlines some useful techniques which I have read about or discovered in the course of my various Commodore PET 2001 projects. I take no responsibility for the results of your attempting to use these techniques.