Booting DOS on a Commodore PC-1

shortgiraffe

New Member
Jul 28, 2019
4
1
3
Denmark
I have a Commodore PC-1 system which boots up fine and seems to be in working condition.

But I have problems booting it into DOS. Basically, I'm trying to get one of two options to work: Via the diskette drive, or via an SD card.

Diskette:
The computer came with the original MS DOS 3.21 floppy disk and a couple of copies of it made by the previous owner. However, I am not able to boot any of them. The drive makes no unexpected sounds, the head seems to move freely, and it generally acts as if it is correctly trying to read any disk I insert into it. However, all disks (that I know are bootable) give a "boot disk failure". I suspect that this is caused by time eating away on the old diskettes, but of course I can't rule out the drive being the problem. However, I have a spare PC-1 diskette drive that I tried instead, but the exact same thing happens with that one plugged in.

There's also the possibility that I ruined the diskettes. I don't remember anymore, but I might have tried them in the drive before cleaning the drive heads with alcohol. The diskettes typically have barely visible "rings" on the discs. Nothing like scratches or the like, only a couple of slightly lighter coloured rings. But I don't know if that is a sign of damage or not.

I have been looking for a replacement DOS diskette, but these seem to be quite expensive. I am not prepared to pay collector's prices for an original DOS diskette, especially if the drive is indeed still faulty and I will ruin that expensive diskette the first time I try it. Therefore I am wondering if anyone (preferably in the EU) will be willing to send me a copy of any DOS diskette (5.25 inch, 360 kB) that is known to work on a Commodore PC-1. I will of course pay for postage and the diskette.

SD card:
I have managed to make the GlitchWorks XT-IDE card to work on the Commodore PC-1 via an adapter in the extension port. However, because I'm not able to boot into DOS via a diskette, I'm not able to format the SD card and install DOS on that. Is there a way to format the SD card, make it bootable and install DOS on it so that it will work in the PC-1? Does it make any difference that this is an 8-bit system, not 16-bit?

Any tips and suggestions very much appreciated.
 
May 22, 2019
221
102
43
I would look at trying to format the SD card using a DOS boot disk on VirtualBox. You can mount a physical drive as a drive in Virtual Box, then use a floppy image to run DOS 3.3 (Compaq DOS 3.3 is the best version of DOS for 8088 based machines.)

Or you might be able to use that system with a USB drive emulator. That's what I did with my DOS computer; I took the floppy drive out entirely and installed a GoTek drive. My only question is whether the PC-1 can handle a 3.5" drive or a 1.2MB drive, since the GoTek doesn't emulate a 360K floppy (as far as I'm aware.)
 

shortgiraffe

New Member
Jul 28, 2019
4
1
3
Denmark
Thank you, two great suggestings! I will have to return to the GoTek option at a later time (also I wasn't able to find info on whether the PC-1 supports the larger capacity floppy drives). This would also allow me to hook up a 3.5 inch diskette drive I have laying around.

So I went for the VirtualBox option, and I *almost* got it to work. Here's what I did:

I created a vmdk virtual harddrive that is supposed to be a 1-to-1 link with raw access to the SD card. This should ensure any partition table changes by DOS, being the guest system, is correctly registered on the SD card. That's how I understood it, at least.

sudo VBoxManage internalcommands createrawvmdk -filename ~/SDcard.vmdk -rawdisk /dev/sdc

Then I filled the SD card with zeros to make sure even the existing partition table was deleted (in fact, at my first try I omitted this step, and DOS fdisk picked up on a partition table which it didn't recognize and wasn't able to remove -- which sort of confirms my reasoning above):

sudo dd if=/dev/zero of=/dev/sdc

Then I ran VirtualBox as root/administrator and added the SDcard.vmdk file as the only harddrive on the virtual computer I set up, and booted from a DOS disk. This allowed me to run the DOS fdisk, add a new partition, and then:

format c:
sys c:
md c:\dos
copy a:\ c:\dos
copy a:\command.com c:\


The VirtualBox machine boots into DOS on the SD drive, but alas, the PC-1 reports:

Booting from Hard Drive 80h»80h ... Boot Sector found!
Missing operating system-
Should not be a problem of the XT-IDE card or the IDE-to-SD card adapter, since both the XT-IDE card and the SD card are detected by the PC-1, and the PC-1 actually tries to boot from the SD card. If not connected, the PC-1 will just keep on trying to boot from floppy. Also, if I move the XT-IDE/adapter/SD card combo to a 486 I have, it actually boots.

I have tried with Compaq MS-DOS 3.31 (using the Fastart installer), MS-DOS 3.21 (same version that came with the PC-1), MS-DOS 3.31 (first version to handle larger partitions), and MS-DOS 6.22 (letting the installer handle partitioning, etc.)

Any suggestions?
 
May 22, 2019
221
102
43
My first thought was this is a sign of a CHS mismatch. (Cylinder, Head, Sector). Drives can often handle multiple logical geometries and map those to logical addresses in real time.

For example, you might have a drive with 1024 cylinders, 4 heads, and 80 sectors per cylinder. This maps out to 327,680 sectors, or 160 megabytes. On another system, you might not have that particular CHS setting available, so you might use 512 cylinders and 8 heads. The number of sectors is the same, but they're accessed using different addresses from the operating system.

So when you formatted the drive using the configuration that VirtualBox picked up, it may not be the same configuration that the XTIDE controller is expecting. I'm not sure how to get around that issue without a boot disk.


HOWEVER... the fact that you can boot your 486 from that card suggests the CHS problem might not be the issue...

Does that 486 have an on-board IDE controller? Do you have that controller disabled when you use the XT-IDE card?
 

shortgiraffe

New Member
Jul 28, 2019
4
1
3
Denmark
Based on your comments about not having the same CSH settings available on all systems I figured it was important to install the system via the XT-IDE card since that's what I will be using on the PC-1 in the end. Here are the different combinations of installing DOS and where/how it works that I tried:

MS DOS 3.31 installed to the SD card via modern computer and VirtualBox:
- Boots on VM: Yes
- Boots on PC-1 with XT-IDE: No ("Missing operating system")
- Boots on 486 with XT-IDE: No ("Missing operating system")
- Boots on 486 with SD in integrated IDE cotroller: No ("Missing operating system")

MS-DOS 6.22 installed to the SD card via the 486 through the XT-IDE card, booting from 3.5" DOS floppy:
- Boots on 486 with XT-IDE card: Yes
- Boots on PC-1 with XT-IDE card: No (displays "Loading MS-DOS" and then gets no further)

MS-DOS 3.31 installed to the SD card via the 486 through the XT-IDE card, booting from 3.5" DOS floppy:
- Boots on 486 with XT-IDE card: Yes
- Boots on 486 with SD in integrated IDE controller: Yes
- Boots on PC-1 with XT-IDE card: No (displays nothing after XT-IDE boot message, then gets no further -- I believe this DOS version does not display a loading message like 6.22, however, so may be same behaviour as with 6.22)

For every new install, I zeroed out the enture SD card, thereby erasing everything including the partition table, by doing sudo dd if=/dev/zero of=/dev/sdc. Or does this not catch everything? Should I use another method of clearing the SD card?

Assuming dd is indeed sufficient, this leads me to think that:
- installing via VirtualBox is not an option (or, I am doing it wrong), and
- the problem is probably not with the XT-IDE card, but rather with the PC-1 or the PC-1 to XT adapter.

Or am I missing something?

So when you formatted the drive using the configuration that VirtualBox picked up, it may not be the same configuration that the XTIDE controller is expecting. I'm not sure how to get around that issue without a boot disk.
I think I accounted for this by moving the XT-IDE card with SD card and everything to the 486 (removing any other drives, except a 3.5" floppy drive) as described above, installing from that, and then moving the whole XT-IDE + SD card assembly to the PC-1. Please correct me if I'm mistaken.

HOWEVER... the fact that you can boot your 486 from that card suggests the CHS problem might not be the issue...

Does that 486 have an on-board IDE controller? Do you have that controller disabled when you use the XT-IDE card?

It does, but I did not disable it when using the XT-IDE controller. Might that make a difference given the above results? If so, I will try it.