Installing PC-DOS 7.1

Discussions about using non Windows and Linux guests such as FreeBSD, DOS, OS/2, OpenBSD, etc.
Post Reply
CJ
Posts: 24
Joined: 15. Aug 2008, 20:30

Installing PC-DOS 7.1

Post by CJ »

{UPDATE: This procedure has been superceded by a simplified procedure that does not require DOS 7.0 as an intermediary step. See below.}

PC-DOS 7.1, not to be confused with PC-DOS 7.0 revision 1 (aka PC-DOS 2000), was a series of updates to PC-DOS 2K, most prominently featuring support for logical block addressing (LBA) and FAT32. It was not made available commercially, and is not a complete OS. Installing it under VirtualBox proved tricky for me (I'll detail my experience in a subsequent post). In the end, I had to install PC-DOS 7.0, then replace it with the 7.1 files.

I. Build the installation disk

As a result of a number of issues I encountered I was unable to install PC-DOS 7.1 directly onto a hard drive under VirtualBox 5.18. Instead, we're going to do it in a round-about way via PC-DOS 2000.
  1. Get yourself a bootable PC-DOS 2000 floppy disk image (you're on your own here, but it shouldn't be too difficult -- nudge nudge wink wink). Pare it down to only the following six files:
    ATTRIB.EXE
    COMMAND.COM
    IBMBIO.COM 
    IBMDOS.COM 
    FDISK.COM 
    FORMAT.COM
  2. Download a copy of the IBM ServerGuide Scripting Toolkit, DOS Edition (SGTK): https://www-947.ibm.com/support/entry/p ... MIGR-53564. Unpack the SGTK package and locate the PC-DOS 7.1 files in sgdeploy/sgtk/DOS/.
  3. Make a subdirectory on your installation floppy (I called mine PCDOS71) and copy all the PC-DOS 7.1 files from the SGTK into it. Don't forget the AUTOEXEC.BAT and CONFIG.SYS file in sgdeploy/sgtk/DOS/cfgfiles/.
II. Create a DOS VM

Create a basic DOS VM in VirtualBox. Just take all the default settings.

III. Install PC-DOS 2000
  1. Boot your DOS VM from the installation image you created in Step I.
  2. When you get to the A:\> prompt, run FDISK and create a primary DOS partition on your hard drive -- just press ENTER four times to take all the defaults and reboot the VM.
  3. Now format the C: drive, give it a label and transfer the system files:
    A:\>format c: /v:pcdos71 /s
    
    WARNING: ALL DATA ON NON-REMOVABLE DISK
    DRIVE C: WILL BE LOST!
    Proceed with Format (Y/N)?Y
    
    
    Formatting 499.53M
    System transferred
    
    
      523,526,144 bytes total disk space
          139,264 bytes used by system
      523,386,880 bytes available on disk
    
           8,192 bytes in each allocation unit.
          63,890 allocation units available on disk.
    
    Volume Serial Number is 1E48-1107
    In addition to formatting the partition, the above FORMAT command also writes a DOS boot record to the C: partition and transfers the three system files, IBMBIO.COM, IBMDOS.COM and COMMAND.COM You can check:
    A:\>DIR C:\ /aa
    
     Volume in drive C is PCDOS71
     Volume Serial Number is 1E48-1107
     Directory of C:\
    
    IBMBIO   COM      40,726 04-30-98   1:00p
    IBMDOS   COM      37,066 04-30-98   1:00p
    COMMAND  COM      52,965 04-30-98   1:00p
             3 files(s)      130,757 bytes
                       523,386,880 bytes free
IV. Install PC-DOS 7.1

We really only wanted the boot record from PC-DOS 2000, so now we'll replace the system files with 7.1's.
  1. Delete the 7.0 system files:
    A:\>ATTRIB -S -H -R C:
    
    A:\>DEL C:\*.*
    All files in directory will be deleted!
    Are you sure (Y/N)?Y
  2. Copy the 7.1 system files to the C: drive. Make sure you do it in this order!
    A:\>CD PCDOS71
    
    A:\PCDOS71>COPY IBMBIO.COM C:
            1 file(s) copied
    
    A:\PCDOS71>COPY IBMDOS.COM C:
            1 file(s) copied
    
    A:\PCDOS71>COPY COMMAND.COM C:
            1 file(s) copied
    
    A:\PCDOS71>COPY CONFIG.SYS C:
            1 file(s) copied
    
    A:\PCDOS71>COPY AUTOEXEC.BAT C:
            1 file(s) copied
  3. Create a DOS directory on C: and copy the 7.1 files into it:
    A:\PCDOS71>MKDIR C:\DOS
    A:\PCDOS71>COPY *.* C:\DOS
       ...
    XCOPY.EXE
           43 file(s) copied
    We're done! Your C:\ drive should now look like this:
    A:\PCDOS71>DIR C:\
    
     Volume in drive C is PCDOS71
     Volume Serial Number is 1E48-1107
     Directory of C:\
    
    IBMBIO   COM      44,656 06-29-05   6:03a
    IBMDOS   COM      42,566 06-29-05   6:03a
    COMMAND  COM      53,802 06-29-05   6:02a
    CONFIG   SYS         135 06-16-06  12:45p
    AUTOEXEC BAT         753 03-31-05   4:09a
    DOS          <DIR>       11-07-16  12:13p
            6 file(s)      141,912 bytes
                       522,354,688 bytes free
    V. Boot

    Unmount the floppy image, and reboot the VM. You should wind up at a C:\ prompt. Type VER to check.
    Starting PC DOS...
    
    
    HIMEM:DOS XMS Driver, Version 3.15 - 05/30/94
    Extended Memory Specification (XMS) Version 3.0
    Copyright (C) IBM Corp. 1988, 1994
    
    128 extended memory handles available.
    Installed A20 handler number 2.
    64K High Memory Area is available.
    
    C:\>ver
    
    PC DOS Version 7.1 
    Revision 0
    Wrap-Up
    • This issues I encountered prevented me from creating a FAT32 partition.
    • The PC-DOS 7.1 files in the IBM ServerGuide Scripting Toolkit do not represent a full OS. Many of the standard utilities are missing. If you have a copy of PC-DOS 2000, you can simply copy files from there. Just be sure not to overwrite any files with the same name.
    • And if anyone has figured out how to install 7.1 directly, let me know how you did it.
--nathanael
Last edited by CJ on 5. Jan 2017, 09:33, edited 5 times in total.
CJ
Posts: 24
Joined: 15. Aug 2008, 20:30

Re: Installing PC-DOS 7.1

Post by CJ »

My initial attempts to install PC-DOS 7.1 went as follows:

I downloaded the IBM ServerGuide Scripting Toolkit, DOS Edition, extracted the PC-DOS 7.1 files from sgdeploy/sgtk/DOS/ and the bootable floppy image sgdeploy/sgtk/ads/images/tk_raid.vfd.

I opened the tk_raid.vfd image in WinImage, deleted everything in the root except COMMAND.COM, IBMBIO.COM and IBMDOS.COM.

I then injected all the PC-DOS 7.1 files from sgdeploy/sgtk/DOS/ into the \DOS subdirectory on the floppy image and saved it.

I created a DOS VM in VB, just taking all default settings, and booted the VM from the floppy image.

There is no FDISK command, so I fdisked C: using FDISK32.
A:\>fdisk32 1 /pri:500

*********** LBA reported Head,Sector,Track
* WARNING * values don't match the reported
*********** total number of sectors. Error
in hardware or BIOS is a probable cause.
It seemed, however, to create the partition:
A:\>fdisk32 /status
*********** LBA reported Head,Sector,Track
* WARNING * values don't match the reported
*********** total number of sectors. Error
in hardware or BIOS is a probable cause.
                         Fixed Disk Drive Status
  Disk   Drv   Mbytes   Free   Usage
    1           500     500
          C:    500

So I rebooted and tried formatting it:
A:\>format32 c:
The /Q switch is required at this time.
PC DOS FAT32 Format Utility

Warning: The drive you specified is not partitioned as a FAT32 drive.
I couldn't understand why FORMAT32 would require a quick format on a new partition, nor could I figure out how to specifically create a FAT32 partition. Perhaps this has something to do with the FDISK warning.

So I just formatted it as FAT16 and tried to SYS.
A:\>format c:
...
Format complete.

A:\>SYS C:
Incorrect DOS version
Now that's very odd. The SYS.COM that ships with the PC-DOS 7.1 files complains it's the wrong DOS. I tried copying SYS.COM from PC-DOS 2K, same result. Well, no problem really. I'll just load SETVER and configure SYS.COM for, say, DOS 6.30. Except I couldn't find any version of SETVER.EXE that would successfully load in CONFIG.SYS on 7.1.

Finally, FDISK32 has a /MBR option, so I tried that:
A:\>FDISK32 1 /mbr
A:\>copy ibmbio.com c:\
A:\>copy ibmdos.com c:\
A:\>copy command.com c:\
then booted the VM:
Boot failure
My guess is that FDISK32 attempts to create a FAT32 partition by default, but is stymied by some incompatability with VB's BIOS LBA support. That might also explain FDISK32's failure to correctly write a boot sector. [UPDATE: Well, um, no. I'd forgotten that FDISK /MBR writes the master boot record at 1,0,1, not a dos boot record to the dos partition.]

The only solution I've found so far is the workaround I detailed in my OP.

--nathanael
draco09
Posts: 1
Joined: 3. Jan 2017, 09:18

Re: Installing PC-DOS 7.1

Post by draco09 »

Hi Nathanael,

Happy New Year!
This is not exactly a virtualbox response, but I think you would be interested in my results.

Using your process I managed to bring up PC DOS 7.1 on a 2GB partition of a 120GB drive with FAT16.
Then I managed to bring up an 80GB disk with FAT32 which booted successfully. I tried multiple times to write what I did to make it work, but there are too many restrictions on slashes and colons for me to post. So I have PC DOS 7.1 running successfully with a FAT32 on an 80GB disk.

I can see why PC DOS 7.1 was never released; it's incomplete.

Many thanks for your effort including the posts describing your work and results. I hope that my results will assist you it making your VM versions work.

--Richard
CJ
Posts: 24
Joined: 15. Aug 2008, 20:30

Re: Installing PC-DOS 7.1

Post by CJ »

The following, simplified procedure supercedes my OP. It no longer requires a PC-DOS 2000 boot disk as an intermediate step.

I. Build the installation disk
  1. Download a copy of the IBM ServerGuide Scripting Toolkit, DOS Edition (SGTK): https://www-947.ibm.com/support/entry/p ... MIGR-53564 and unpack it.
  2. Locate the PC-DOS 7.1 files in sgdeploy/sgtk/DOS/ and the bootable disk image at sgdeploy/sgtk/ads/images/tk_raid.vfd.
  3. Using a disk image editor (Winimage (http://www.winimage.com/download.htm is excellent)), open tk_raid.vfd.
  4. Delete everything except IBMBIO.COM and IBMDOS.COM.
  5. Copy all the 7.1 files from sgdeploy/sgtk/DOS/ to the root of the image, except for IBMBIO.COM and IBMDOS.COM.
II. Create a DOS VM

Create a basic DOS VM in VirtualBox. If you give it a name with DOS in the title, VB will automatically select DOS. Otherwise select Type: Other and Version: DOS. Just take all the default settings.

III. Install PC-DOS 7.1
  1. Boot your DOS VM from the installation image you created in Step I.
  2. When you get to the A:\> prompt, run FDISK32 1 /pri:500. Ignore the error message.
  3. With the boot image still mounted in A:, reboot the VM.
  4. Back at the A:\> prompt, run the following commands in order:
    A:\>FORMAT C: /V:PCDOS71 /S /U
    A:\>MKDIR C:\DOS
    A:\>XCOPY *.* C:\DOS /S
    A:\>COPY CFGFILES\*.* C:\
IV. Done!

Unmount the floppy image from the A: drive and reboot the VM. You should get a C:\> prompt. Type VER to check:
Starting PC DOS...

HIMEM:DOS XMS Driver, Version 3.15 - 05/30/94
Extended Memory Specification (XMS) Version 3.0
Copyright (C) IBM Corp. 1988, 1994

128 extended memory handles available.
Installed A20 handler number 2.
64K High Memory Area is available.

C:\>ver

PC DOS Version 7.1 
Revision 0
NOTE:

The files from the SGTK package do not represent a complete OS installation; a number of DOS commands and utilities are missing. You can complete your installation by supplementing it with files from PC-DOS 2000.
Elmis
Posts: 1
Joined: 14. Jan 2017, 13:40

Re: Installing PC-DOS 7.1

Post by Elmis »

First, sorry for my bad english!

IBM PC DOS v.7.10 FAT32 version can be easily installed to Oracle VM VirtualBox v5.1.12 too.
PC-DOS_FAT32.zip
(43.17 KiB) Downloaded 733 times
A few notes to the description for the installation process of PC DOS v.7.10:
1) Both described methods for making boot floppy are incorrect, because floppy have invalid boot sector – boot sector must be from PC DOS V.7.10 but not from PC DOS V.7.00, as it is.
2) Sys is from version 7.00 (just unpack (Pklite) and open with Hex editor) – not needed on V.7.10 diskette.
3) If you have folder with at least four files (from correct DOS version) IBMBIO (or IO), IBMDOS (or MSDOS), COMMAND and FORMAT or SYS, you always can build perfect bootable floppy on real or virtual PC much better than it can be done using Winimage or other tools.
4) Oracle VM VirtualBox default settings are incompatible with this DOS version, also 500MB are insufficient for HDD formatting with FAT32.

P.S. I can make screenshots (step by step) – how to build IBM PC DOS v.7.10 bootfloppy on VirtualBox (my favorite PC is real PC). For PC DOS floppy drive must be fd1 B: !!! - just read PC DOS user guide. The same principle (using only one floppy drive, without installing system) works for all downloadable invalid (non bootable, incorrect size) boot floppies.
Post Reply