Friday, 7 August 2015

Commodore Pet 2001-8 Repair - Part 1

Look what's just arrived, my latest acquisition, a Commodore PET 2001-8.
Looks in very good condition so far, and quite a low serial number 8411?
It still has the screws holding the lid closed, they often tend to be missing.
I've been after one of these for a while, quite an iconic piece of kit. The design dates back to 1977, although this one is from late 1978.
One of the earliest home computers, fighting for it's place with the TRS80 - both of which seem to have been forgotten by Apple fans. But neither of those have bonet props, so the PET wins for me.
These first PETs have chiclet style keyboards, the same layout as the later graphic keyboards, and the built in datasette drive.
Inside it was very dusty, doesn't look to have been touched for a while. The gap in the dust is where the keyboard cable was resting.
The large number of chips at the bottom show this is an early one. The 2001-8 comes with 8K of RAM and 7K of ROM. There were a few different versions of the 2001-8, some had 6550 RAM, some had 2114 RAM. Some had 6540 ROMs, and some 2716 compatible ROMs. This is the earlier combination, 6550s and 6540s.
That's going to be fun as replacements for these are very difficult to find, as I think they were only used in the PET.
The rest of the board has the CPU, I/O and video circuits, along with another 6540 character ROM and two more 6550s as the screen RAM. This looks rather random compared to the later more regimented board designs. All looks reasonable inside, time to turn it on.
It does a few different things on power on. Most of the time it boot up, then locks up, often with a few characters appearing on the screen first. And no, there isn't a key stuck down, it does the same with the keyboard unplugged, but thanks for the suggestion.
Other times you get the traditional garbage on the screen. This is sometimes misunderstood. When the system powers on, the contents of the screen RAM is random, and before the software in ROM is running, the video circuits do their job and show this on the CRT. It is always there, but usually disappears before the monitor warms up. Once the editor ROM starts up, it clears the screen and puts up the traditional '*** COMMODORE BASIC ***' prompt. So in this case, it hasn't run long enough to clear the screen.
Time for one of my ROM/RAM boards, but the 2001 boards have unusual chip sockets. They have extended sides so the make contact with the pins all the way up side. This means the usual turned pin headers I use on the ROM/RAM board do not fit very well.
I've built up a special ROM/RAM board with different pins, using the bottom half of some stackable headers.
This make good contact with the socket. I've loaded this up with various versions of BASIC suitable for non CRTC PETs like this 2001.
With the ROM/RAM board taking over, everything seems to be fine.
This ran various memory and system tests for several hours and all was well, so all the rest of the board is OK, the problem is the ROM or the RAM.
Leaving the replacement ROM enabled, but boing back to the original RAM, also ran for an hour or so with no problems. That's a relief, all the 6550s are OK.
So the RAM is OK, but to help isolate the issue, I've switched back to the replacement RAM and then enabled the original ROMs. That failed straight away with the original problem.
So the issue is the ROM, one or more of 7 6540s. Oh dear, however, the ROM contains the original buggy BASIC. You can tell the version from the header line. I count the points at the top of the first symbols. BASIC 1 has asterisks, *** COMMODORE BASIC ***, and BASIC 2 has hash signs ### COMMODORE BASIC ### is basic 2. (BASIC 4 says it is BASIC 4 *** COMMODORE BASIC 4.0 ***).
So for the moment, I'd be happy to leave the ROM/RAM board in place. I'll probably remove the precious working 6550s and the suspect 6540s. This will also significantly reduce the power consumption, so it should run cooler. The ROM/RAM board can be set to the upgraded 32K and BASIC 4, or can match the original 8K and BASIC 1.
Either way, it can play Space Invaders.
Although if I want to use the pet microSD disk drive to load it, I need BASIC 2 or BASIC 4. But first I will need to fix the IEEE-488 port, as that doesn't appear to be working.
I see a sticker above the datasette port, looks like someone was trying to tap power off it. 5V is still OK, but the transistor is probably gone on the switched 9V as the external datasettee port isn't working. So, lots still to do on the 2001. It needs a full strip down and clean up.
The internal datasette drive is basically a normal datasette bolted to the underside of the line. That is not working, it also needs a clean up and a new belt.
The monitor seems fine, and seeing the PET tester cycle through on the black and white display on this PET reminds me of a project I'm currently working on, here is a sneak peak.
This will be a plug in board which will replace the onboard video circuits to test PETs with display problems. This scans screen RAM to show an exact duplicate of the PETs screen on a 2.2" 240x320 TFT display, even if there is a problem with the onboard video circuits.
That's still a prototype, but I hope to make that available soon as a companion to the ROM/RAM boards.