Stocking up on software for a Kaypro II
It’s all very well to have cool looking retro-vintage computers but without software they might as well be empty shells. Through a number of machinations I’ve managed to deck my Kaypro II with some programs. Here is what I did. If you are interested in doing the same, this could also work for you. The process should be applicable to other CP/M machines too.
Note that this is not the ONLY way software transfer can be achieved. It’s what worked well for me. If you are going to have a crack at this, be sure to read my reflections section at the end before making the attempt.
Sourcing Kaypro Installation Disk images
Sourcing copies of original insallation disks was the first step. I desired more than just a System Disk. I wanted copies of all the original CP/M programs bundled with the machine at the time of sale. Luckily for me, disk images of exactly these artifacts were available at Dave Dunfield's website. Not only were the Kaypro II installation disk images there, but also Dave's program (Imagedisk 1.17) which would write them out as real CP/M disks. Thank you Dave!
So far so good…
Getting the images into an MS-DOS environment
Imagedisk is an MS-DOS program. Furthermore it needs to write out floppies to 360k 5.25 inch disks. Fortunately I had just the kind of machine needed; An MS-DOS 6.2 386-DX40 computer with both a 1.2 high density floppy and a 360k double density one. My main computer, a Windows XP box had a 1.2 MB floppy fitted so transfer to the MS-DOS computer was no problem.
Figure 1. Imagedisk 1.17 at work about to write a Kaypro II floppy
Writing the CP/M disks
Imagedisk did the job without hiccups. Although it was menu-driven, some parameters weren’t that obvious and manual did need to be referenced. I found keeping the manual file open on my XP box (out of frame on the right of the picture) while I used the program on the MS-DOS computer was the most convenient way to do this. I could simply flick the mouse to refer to any section I wanted. Much easier than paper, especially if your close-up vision is not what it used to be!
At the end of this process, I had a full set of Kaypro II disks containing all the bundled packages. Hooray!
Transferring individual files to Kaypro disks
I didn’t want to just stop there though. I wanted text/ascii-based CP/M games, MBasic and diagnostic programs for the hardware! This led me to another highly useful resource. 22DSK is a MS-DOS program which allows you to write individual files from an MS-DOS environment onto a CP/M disk. With this, I could collect these programs from the Internet, use 22DSK to format a Kaypro II CP/M disk and then write the programs to it. I tested in on my setup and it worked like a charm. In playing with it I found it had an aversion to Windows…even Windows 3.1! It needed a strict MS-DOS environment where it had complete control of the hardware. A link to 22DSK can be found halfway down the page at http://www.cpm80.com/ (Note: The Windows 95/98 version of MS-DOS is also ok providing the machine is JUST running MS-DOS. See Reflections at the end).
Getting individual programs. Not as straightforward as it might seem
CP/M programs can be found in abundance on the Net. They are easy to find. What is not easy though is getting the software in a form where it can be used. I found that CP/M files on the web are often compressed using a number of different compression techniques. They can be squeezed, packed, crushed and arc’ed. There are a number of formats. Often these compressed files are then gathered into single library files with the extension *.lbr. In order to be used, these files need to be unpacked and unarchived. There are MS-DOS programs what will do this, or CP/M utilities can be used to do it in a CP/M environment. Either way it’s a real hassle! Patience is required as you need to first figure out what unarchive program to use, and then painfully unpack them (often program by program) using a command line interface.
It is at about this time, I wondered why I started doing this. That old phrase “Are we having fun yet?” comes to mind. However, it then got even worse. In a number of cases I found the files I’d unpack would have the extension *.ASM or *.HEX. This means they are source or object files that needed assembling or linking in a CP/M environment using cryptic commands only a sadist could have thought of! All this before I could get a useable file. Such was computing in the good old days. Close to the metal.
Anyway…don’t let me put you off. It was (and it is) worth persisting.
Figure 2. Walnut Creek CP/M archive CD-ROM Kaypro directory listing in Virtual PC. Note the many LBR and ARK files
One good source of CP/M software is the Walnut Creek CP/M archive. It’s a CD-ROM’s worth of software. It also contains the MS-DOS and CP/M un-archiving programs discussed above. If you ever want to collect CP/M software from archives, you’ll need these utilities. It you have the CD-ROM itself (or an image of the CD-ROM) it's even better. There is a utility program called VIEW in the root directory which not only allows you to look through everything, but will also help unpack the files automatically!
Replacing the MS-DOS intermediary with serial transfer
I now had files and a way to transfer them but I still had an issue. To get CP/M software for the Kaypro, I still had to use my MS-DOS machine as an intermediate step. The only transfer technique I had was via floppy disk and the de-archiving, desqueezing etc, was done best in an MS-DOS environment rather than XP. However, the MS-DOS machine was now one of three machines dominating my desk! I wanted to cut out the middle man and reduce the clutter.
This was solved elegantly by two techniques. One was to use Virtual PC on my Windows XP box to do all the uncrunching, unpacking and de-archiving in a straight MS-DOS environment (see Fig 2 above). Once this was done, I could then transfer those CP/M-ready files out of Virtual PC to an XP folder.
The second technique involves using the CP/M communication program Kermit-80 and XP’s bundled comms program hyperterminal to transfer these files directly from the XP box into the Kaypro II. Kermit-80 was one of those programs I had to cobble together from the object code (as described here) after transferring it to the Kaypro using 22DSK . After some initial teething problems, mainly with the receive buffer-size (I had to halve it from the default value), I found this system worked a treat, zooming across text and binary files (having first been unarchived and sorted in MS-DOS in Virtual PC) at a snappy 19200 baud. Of course, for this technique you need at least one COM port on your PC (or one of those USB to COM legacy adaptors).
The MS-DOS computer I used for the initial setup was now redundant and could go back in its box!
Figure 3. Kermit-80 (left) and Hyperterminal (right) during a transfer
Getting to know this Kaypro II has been quite an adventure. I knew little about Kaypros before I started. Even though I had an Obsorne 1 (another CP/M machine) before the Kaypro, I also knew little about CP/M. I certainly know a lot more now! It’s been fun.
A couple of things worth mentioning to those who may be looking at stocking up their own Kaypros. First, if you don’t know CP/M (and even more importantly, if you don’t know MS-DOS) be prepared for a learning curve. Things are often not intuitive. You’ll need to read the documentation and above all, you’ll need patience. It will give you a real flavor of what microcomputing was like back in the early days though.
Second, you might not need an intermediary machine for the transfer if you have a Windows 95/98 unit which is Internet-capable and has the required 5.25 inch floppy disk drive. It doesn’t even need to be a 360k Drive. 1.2 MB high density will do. The process is more involved than mine but it’s certainly possible. You can read about it here.
I’m off to play some classic games I’ve just Kermit’ed across to the Kaypro. Anyone for a nice game of chess?
24th March, 2010