Sunday, November 26, 2006
« Detecting a Virtual Machine Session | Main | QueryUnload in .NET WinForms »

I had an interesting set of experiences today while setting up some Virtual PC images.  I had an older, unused desktop machine sitting around and decided to set it up on Windows XP with the sole purpose of playing games.  I had a lot of fun setting it up and getting it ready.  Several games, however, won't run from within Windows (even in Windows 95-compatibility mode) as they are DOS-based games.  I therefore set out to create a VPC to run MS-DOS 6.22 and Windows 3.1.  This turned out to be a bit more challenging than I had originally expected.

The crux of the issue was that I didn't have 1) a working 3.5" floppy drive (depite having tried to install 2 different drives) or 2) my original MS-DOS installation disks.  To acquire the installation disk images I went to the Microsoft MSDN downloads site and found the 6.22 installation disks.  The images are in an .IMG format and cannot be mounted as disk images within Virtual PC.  VPC expects the disk images to be a valid/complete 720KB, 1.2MB, or 1.44MB image - none of these were.  In order to mount them in the VPC they need to be valid .VFD (Virtual Floppy Disk) files.  This is quite easy to do with a Virtual Floppy Driver.  The one I used can be downloaded here.

The MSDN download of the disks includes a batch file which (using dskimage.exe to copy the .IMG files to a disk) expects a floppy disk as the destination.  I had, therefore, to create virtual disks seeing that I didn't have any functioning hardware.  This was easily accomplished as follows:

  1. VFD.exe INSTALL
  2. VFD.exe START
  3. VFD.exe LINK a /L
  4. VFD.exe OPEN c:\Dest01.img (creating the new image when prompted)
  5. FORMAT A:
  6. Copy the disk image to the virtual A: via DSKIMAGE.exe
  7. VFD.exe SAVE c:\Disk01.vfd
  8. VFD.exe CLOSE
  9. Repeat steps 4-8 for each of the three MS-DOS disks.

Once created, I also created a blank 3.5" floppy disk image to have for archival purposes (which you can download here).

Now that I had booted up my VPC using the new .VFD files and installed MS-DOS 6.22, I saw that it was consuming 100% of my processor (well, 50% of the Core 2 Duo).  I had to install the Virtual PC Additions for DOS.  I simply had to set the machine up to recognize my CD player (via MSCDEX.exe) and I was off to the races.  The VPC is only 6.1MB - compared to > 5 GB for a base Vista VPC.

I'll look into the licensing and post my VPC of MSDOS 6.22 if possible, though I'm not optimistic.

I had a lot of fun setting this up and reliving my DOS days from years ago.  Dealing with all the little nuances like autoexec.bat, config.sys, et al was quite nostalgic and enjoyable...but I'm glad I don't have to go through it on a daily basis any more. :)

Now that it's all set up and running, though, I've had a lot of fun installing and playing my old DOS games.  Oh, and it was a blast to reinstall Windows 3.1 (which only took a minute or two) and play with it.

Sunday, November 26, 2006 1:19:00 PM (Mountain Standard Time, UTC-07:00)  #    Disclaimer  |  Comments [4]  |  Trackback