The XT-CF-Lite card: Future-proofing the hard drive capability of my PC-XT-class machines
In 1983, the IBM PC-XT and similar clones introduced hard disks to the masses. Such massive storage had been included with business machines before but (1) they were hugely expensive and (2) they tended to be external, hanging off the computer with their own power supply. The XT class of computer had them snuggled neatly inside the case as part and parcel of the main unit (Fig 1).
Figure 1. MFM Hard Drive
Like anything with moving parts these venerable MFM disk drives age and eventually fail as time goes by. On 16-bit BUS AT-class machines and later this is no problem as there are a number of cheap hard disk controllers built which can drive ATA (IDE) hard drives. A failing MFM drive can simply be replaced with an IDE unit. Not so with the PC and XT class machines though. These have an 8-bit bus, and 8-bit controller cards which support IDE hard drives are rare and expensive. By the time IDE drives were popular people had moved way beyond the PC-XT.
Thank goodness for hobbyists. Seeing a need as the MFM monsters started to die, a card was designed and made by a bunch of enthusiasts a few years ago. This is called the XT-IDE card. Further evolution came up with a variation on this which used a CF card instead of expecting to find a IDE hard drive attached. Even better!
I have an IBM-XT. At the moment its hard drive is fine, but I thought it would be a good idea to get one of these CF-capable cards anyway, while they were still around. A couple of months ago I read on the Vintage Computer Forums that a member (Bumzyman) had assembled some XT-CF units. These cards were designed by Sergey Kiselev but based on an earlier effort by Jame's Pierce. James called his effort the XT-CF-Lite board while Sergey's boards are called the XT-CF-Lite V4. I ordered one of the latter from Bumzyman (Ray) and it soon appeared in my mailbox.
Ray had assembled the card, programmed the EEPROM and set the DIP switches to where they should be. Providing I stuck to I/O address 300H and ROM address CC00H it should work "out of the box". With a CF card in place and the XT-CF-Lite V4 in a slot, the computer should think it's nursing an unformatted hard drive and act accordingly.
The first task was to choose which machine was I going to install this card in? As mentioned above, the XT's hard drive was working fine. That left either the IBM PC (5051) or my Commodore PC 5, which I'd kept as an example of a two-floppy 8088 clone. I decided on the PC 5. It would appreciate the hard drive enhancement.
I slipped the XT-CF Lite card into a slot (Fig 2) then inserted a generic 4GB CF card I'd picked up at the local store (Fig 3). That was the easy part!
Figure 2. The XT-CF-Lite V4 card in place
Figure 3. Another view of the XT-CF-Lite V4 with CF card inserted. Neat and tidy!
Partition and Format
The next job was to partition the drive, and format it with MS-DOS. To do this I needed to boot the machine from a floppy. It look me a little while to figure out how to do this. I found (thanks to these instructions) that if I held down the "A" key during boot (near the end of the memory test), the computer booted off a floppy on the a: drive rather than attempting a boot off the blank hard disk (and so hanging the machine). Once this hot-key was discovered I soon had the machine happily booting MS-DOS 3.3 off a 360k floppy disk
Figure 4. Card detected! Booting the Commodore PC-5 off a floppy prior to hard disk setup
Why version 3.3 and not 6.22? I wanted to keep the DOS roughly the same as the year of the machine. MS-DOS 6.22 would have been way too recent.
Here's where I ran into some trouble. ....
Examining the blank hard drive (i.e. CF card) with MS-DOS 3.3 FDISK showed a non-dos partition of 4GB, the size of the card. Problem is under MS-DOS 3.3 I couldn't delete this partition to make room for an MS-DOS one. There was no command in MS-DOS 3.3 FDISK to do so. However, MS-DOS 6.2 FDISK DOES HAVE such an option. The solution then was to boot initially with MS-DOS 6.22 on floppy, then use FDISK to delete the non-dos partition. I then made a 32MB primary partition (the maximum under MS-DOS 3.3) and made it active. I then formatted the disk with MS-DOS 6.22 but didn't copy across any system files (no /s switch). The final step was to reboot from the A: drive with an MS-DOS 3.3 disk and carry out another FORMAT but this time copying the 3.3 system files over.
Why didn't I just reboot with 3.3 after the partition was made instead of formatting with 6.22 first? Strangely, if I then rebooted under MS-DOS 3.3 without having formatted the new partition, the non-dos partition came back?
Anyway the above procedure worked fine. I also added another extended partition so I had an extra drive D:, also 32MB. I copied MS-DOS onto the disk along with some other utilities and a few games (Fig 5).
Figure 5. Copying MS-DOS 3.3 onto the new "hard drive"
My Commodore PC 5 now has a CF-based hard disk with MS-DOS 3.3, some utilities and diagnostic software. I haven't added many games. This computer has an MDA card which means no graphics. However there are graphic type characters in the extended character set and game authors used these to good effects for early games, such as Castle Adventure (Fig 6). I added this one, a chess game and a few Infocom text-based adventure titles to the mix.
Figure 6. Castle Adventure loaded from the CF "hard disk"
I'm pleased with my XT-CF-Lite card. If my XT's drive falls over, this will do for a replacement. In the meantime the Commodore PC-5 can have fun with it!