The Kaypro 1
I was getting rid
of some trash when something unusual
caught my
attention. The dump charges $25 to get rid of old TVs and computers,
and among all of the old CRT displays and beige box PC clones was an
old
Kaypro. Of course no mad scientist can pass up a free computer, so it
went home with me.
History Lesson
Before I go into the details of how I fixed up this
machine I'm going
to tell you what I already knew about the Kaypro and other computers
like it. In the late 70s and early 80s there were two broad categories
of microcomputers. Home computers of the time usually had sound and
graphics, loaded programs from ROM cartridges or cassettes, and usually
didn't have an operating system, just BASIC in ROM. Business machines
usually had monochrome screens, loaded programs from disks, had good
quality keyboards, and ran the CP/M operating system.
The very first portable microcomputer was created by
British computer
engineer Adam Osborne in 1981, the Osborne 1. It was relatively small,
lightweight, and folded up into an easy to carry package. It was such a
great idea that other manufacturers started copying it, among those was
Kaypro.
The first Kaypro computer, the Kaypro II, was released
in 1981. It was
produced by Non-Linear Systems, and named after their founder Andrew
Kay. Among all of the portable computers showing up at the time, the
Kaypro line was one of the best selling for a variety of reasons. It
had great support, a rugged design that resisted harsh environments, a
larger screen than the Osborne, and probably most importantly, it came
with a large collection of bundled software that, if purchased
separately would have cost more than the machine. The Kaypro 1 that I
found is one of the later models, beause apparently they named their
computers the same way Microsoft names their video games. According to
the internet, the Kaypro 1 is a minor hardware revision of the Kaypro
4'84.
Cleaning and Disassembly
The first thing I did when I got it home was to take it
apart and see
what kind of shape it was in. It was pretty easy to disassemble,
the whole top of the cabinet lifts off after removing ten screws, and
almost all of the chips inside are socketed, so you can tell this was
meant to be serviced rather than replaced.
I have to say that for a 30 year old machine, everything
looked great.
There were no cobwebs and only a small amount of dust inside. All of
the internal electronics looked good, with no hint of rust or
corrosion. The keyboard was in rough shape, but I'll get to that later.
I didn't have any system software for it, so I couldn't boot it up, but
turning it on gave me a power on self test screen, which meant that the
CPU, RAM, ROM, and display were all working properly.
Finding the System Software
I imagined that the hardest part of getting this thing
working would be
finding a copy of the system software. Unlike IBM PC clones, these
machines don't have a BIOS in ROM, instead it's part of the operating
system. What this means is that each machine has its own version of
CP/M, and disks from another manufacturer or even model may not work.
If you've been to eBay lately you'll know that prices have gotten
pretty ridiculous lately, I decided to stay away from it after I saw a
seller asking $199 for a floppy disk controller card for XT
compatibles. Them people is crazy, y'all.
Fortunately, the Classic
Computer
Museum has a disk image
for this exact computer. Now my only challenge would be figuring
out a way to write the file to a disk.
Drive Adventures
Surprisingly, I
didn't have any 5¼" disks or
drives around. I
ordered a 10 pack of new-old 5¼" disks from eBay (shut up) and
got to work figuring out how to connect the Kaypro's drives to a more
modern computer. I don't think the BIOS in my Windows
7 desktop supports 5¼" drives, but fortunately my old video game machine, with its PC87306 floppy
controller and 1994 BIOS does, and it already runs DOS, which is a
requirement for Dave
Dunfield's Image Disk program.
The hardest part was figuring out how to connect the
drives.
Physically, it's the same 34 pin header used on modern computers for
the mainboard connection and the same card-edge connector used with all
5¼" drives, but systems of this vintage don't use keyways to let
you know which way the cables go. The red stripe usually indicates pin
1, but I've seen exceptions. Another difference is that these drives
are jumpered as A and B, while newer drives are always jumpered as B,
and connected with a cable featuring a 7-conductor twist to swap the
drive select lines between the first and second connector. The only way
I could get anything working was to use the original cable, flip the
connectors on the back of the drive 180° from the way they were in
the Kaypro, and connect the cable to the mainboard with the red stripe
pointing at pin 34. For some reason, even though both drives were
connected and powered, only drive B: would work. If you get an error
message from DOS or Windows that says the drives are "Not ready" and/or
the motor never stops turning then the cables are probably backwards.
Normal behavior for a 5¼" drive is to spin up when a disk is
inserted, then stop once the drive's door is closed.
Cleaning and Disassembling the Drives
I ran into a
problem when I first hooked the drives up,
the motor of
the B
drive had seized. I tried turning it by hand, which got it turning, but
only very slowly. To get to the bearings I had to completely
disassemble the drives, a process I'll detail in case you have to
repair a similar drive.
Disassembling the drive is relatively straightforward.
First you take
out the screws holding down the circuit board and unplug all of the
connectors. Under the PCB is an aluminum shielding plate that just
lifts off. Underneath there are screws holding the top part of the
drive, with its latches and other mechanisms for holding and ejecting
the disk. Remove this part being careful not to lose any of the springs
or other small parts. Make notes, or even better, take pictures of
where everything goes. On the underside, you'll have to remove the
rotor, which is held on with three screws, and the spindle. The
spindle's single screw can be removed after removing the rotor. You'll
have to hold the top part of the spindle to keep it from turning, but
be careful not to bend or warp anything. Once you remove the screw, the
spindle should slide out from the top of the drive, while the other
half should do likewise from the bottom. Unless you were rough with it,
the bearings should stay in the main body of the drive.
There are two ball bearings, one on the top and one on
the bottom, all
that was needed to restore them to turning freely was a single drop of
thin machine oil. Don't go overboard, since excess oil can drip out and
ruin your disks. Since I already had the drive apart I went ahead and
cleaned the read/write heads. To do this you just saturate a q-tip with
denatured alcohol and scrub the heads until they're squeaky clean. I
suggest polishing them with a dry q-tip after cleaning, to take care of
any residue.
Adjusting the Drive Speed
These drives use a motor controller IC, whose speed is
controlled by a
potentiometer mounted nearby on the motor drive board. Over time
things can drift out of line, so it's a good idea to check it now. The
easiest way to do this is with a strobe disk, which is a paper disk
with alternating black and white bands. A strobe disk is calibrated so
that when you shine a light flickering at a certain frequency at it,
the pattern will appear to stand still when the disk is rotating at its
target frequency. You can find strobe disk patterns on the internet,
the target speed for these drives is 300 RPM.
These drives came from the factory with strobe disks
already attached,
they were set up for 300 RPM at 60 Hz. The advantage of using 60 Hz,
which is the same frequency as AC mains power, is that you have a lot
of options when it comes to strobe lights. I used LED Christmas lights,
but you could also use an old or cheap fluorescent light (new ones will
not work) or a CRT display. I measured the speed with a tachometer some
time after I made the adjustment and found it to be exactly 300
RPM.
Writing the Disks
Once I finally got everything working and
connected properly I
could write the disks. I used the ImageDisk program, which is fairly
complex and has a lot of options. For reading or writing the disks
using the original drives, here are the settings to use:
- Drive B
- 80 cylinders
- Double step off
- Data rate of 250 kbps
- 2 sides
And everything went well. No errors or other problems.
If you have a machine like this and you can't write a disk like this, let me know and I'll write one and send it
to you.
First Boot Up
So after I had it
for about a week I could finally try
and boot the
thing up. And it was a success. I flipped the power switch, it checks
drive B first, then drive A, then starts right up. The disk image I
downloaded was a master copy, so it made me make a copy before I could
use it. For some reason the boot disk for this machine doesn't start
right up into CP/M, but instead runs Perfect Writer. To get out of it
you have to press X, which is when I found out that the X key wasn't
working. I had to take the keyboard apart and manually short the leads
of the X key together so I could get into CP/M. I played around with it
a little before starting the word processor back up so I could test out
all of the keys. I found that the D, F, and J keys were also a little
messed up.
Repairing the Keyboard
I have to admit I
wasn't really looking forward to this
part. There are
a few tutorials online of how to fix a Kaypro keyboard, but they
didn't really look like the one I had. All of the ones people had
worked on used little conductive plungers that close a circuit across a
pair of contacts etched directly into the board. On mine, each key is a
self contained, individual NO pushbutton snapped into a thick metal
plate and soldered directly to the board.
It took some careful examination of how everything was
put together to
figure out how to get the switches out without damaging anything. It
turns out that the best way is to carefully and completely desolder the
leads, then you can use a flat-bladed screwdriver to pry the button out
of the metal backing plate. Just keep an eye on it, the first one I
removed popped out with
enough force to propel it halfway across the room.
Cleaning the actual switches was realtively easy. The
bottom of the
switch just snaps off, allowing you to remove everything. The switches
are actually pretty well designed, there's a pair of gold-plated spring
contacts held apart by the key's shaft, which is held in place by a
small spring. To clean them I used a q-tip with some polishing compound
to resurface the contacts until they were perfectly smooth and shiny,
then I washed them in dentaured alcohol. Be careful not to take too
much off the surface of the contacts, since the gold plating is
extremely thin. Never use sandpaper. The switches were a lot easier to
get back in than they were to take out, but I'd really hate to do more
than a few of these at a time.
The keys themselves were pretty dirty, and it was the
kind of oily dirt
that's hard to get rid of. The letters are molded in rather than
painted on so at least I didn't have to worry about washing them off. I
took care of them by soaking everything overnight in a solution of hot
TSP, which is pretty mild as far as degreasers go. They came out
looking brand new. Before I put the keys back on I sprayed down the
shafts of the key switches with some silicone lubricant, which should
make typing a little easier. When I got it back together it still
looked a little rough, some of the paint was worn away, the 7 key on
the number pad was missing, and the left and right arrow keys had been
replaced with I and S keys from another machine. I'll get around to
correcting that later, but for now it looks good and works great.
File Transfers to a 64 Bit Machine
Since I actually want to use this machine for stuff, I
need to find a convenient way to transfer files to my desktop from it.
Since you're currently reading a file that I typed on it, I must have
succeded.
The little Kaypro has a built-in modem, but it predates
the modern
popularity of IP based software. The answer was an old friend of mine:
Kermit. Kermit is a simple and reliable file transfer and terminal
program that comes in really handy for transferring files between
disparate systems. I used to use it to transfer files between a Windows
NT workstation and a FreeBSD notebook over a serial cable. It turns out
that the very first version of Kermit was written for CP/M.
Using it is simple enough, but getting it might not be.
There's a
different version of Kermit for each CP/M machine, so you have to
compile a native version. I've already done
the work for Kaypro owners.
In terms of hardware all you'll need is a null modem
cable, with a 25
pin male connector on one end and a 9 pin female connector on the
other.
To transfer a file you run Kermit and setup the connection using Kermit
commands. Here are the settings I use. First set the speed, the WD1948
serial controller in the Kaypro supports a maximum symbol rate of
19,200 baud, so we'll use that: SET SPEED 19200. For some reason,
transferring files larger than about 10kB fails with an error message
when using the default buffer size of 64, so we'll set it to something
smaller: SET BUFFER-SIZE 16. Like FTP, depending on whether you're
sending a binary or text file, you'll need to SET FILE-MODE ASCII or
SET FILE-MODE BINARY. To send a file, just type SEND then the name of
the file, to receive a file, just type RECEIVE and the name of the
file.
On the other side of the link, how you set it up depends
on what
operating system and software you're using. There's a version of Kermit
for just about every operating system ever, so it's probably best to
use that. I use the Unix version, C Kermit, running on my
file server. Another popular option is Hyper Terminal, which is
included
on Windows XP and earlier.
Final Thoughts
I have to say that I really like this machine. It's
built solid and
works fantastically well, especially for being thirty years old. Of
course it was made in the US, with American and Japanese parts,
so I guess it's not that surprising.
The keyboard works fantastically well, and it's great to
type on. In
fact this whole article was written on the Kaypro using WordStar.
Despite being monochrome, the screen is a nice size and there's no hint
of flicker. All of the characters are very clear and legible. I can
even hook it up to my printer.
I'm going to use it to teach myself Z80 assembly language, and I can
see myself using it a lot in the future.
Photo Gallery
The finished product.
|
First boot up.
|
Copying the software from images using ImageDisk.
|
One of the 5.25" floppy drives.
|
As found at the dump.
|
A key switch disassembled.
|
The keyboard. The hole is where I removed the broken X key switch.
|
The main system board.
|
The keyboard with all of the keys removed.
|
The underside of the keyboard PCB.
|
Left side of the chassis.
|
Right side of the chassis.
|
System Specifications
CPU |
Zilog
Z80A @ 4 MHz |
RAM |
64
KB |
Storage |
Two
double sided/double density 5¼" floppy drives (360kB
each) |
OS |
CP/M
v2.2 |
I/O |
Two
25 pin RS-232 serial ports (19,200 baud max)
One 36 pin Centronics parallel printer port
One 300 baud Bell 103 compatible modem |
Date |
1984 |
|