I won't be covering the installation of DOS or Windows here since that's already on numerous websites elsewhere. I can tell you that I do have the floppy disks to MS-DOS 6.22 and Windows 3.1. However, I couldn't boot from DOS disk 1 and I'm missing disk 6 (of 7) from the Windows set, so if you don't have the disks, just download the appropriate disk images off the Internet, which you can "insert" into your virtual machine.
I chose Virtual PC mainly because I had heard of it several years ago and finally chose to try it out now. Sure there's VMware and VirtualBox, but Virtual PC is a Microsoft product, so I thought it should run Windows best (I haven't tried the others out yet, so I'm not sure about that statement). One advantage of using Virtual PC is that it emulates real life hardware such as the video card, which is the S3 Trio 64 PCI, unlike VirtualBox's custom VESA system. However, Virtual PC also lacks some flexibility and features, such as USB redirection (into the virtual machine) and network cards; Virtual PC is limited to the DEC/Intel 21140 card, while VirtualBox allows the user to select from such cards as the popular AMD PCNet and Intel PRO series. Anyway, here are links to the drivers for the hardware that Virtual PC emulates:
- S3 Trio 64 PCI video card (also comes with Windows 95, NT 3.51, NT 4.0, and OS/2 driver) (The option of not using DriverGuide's installer is only available to members. Just uncheck and decline all the offers for additional software; all the installer does is dump the driver files in a ZIP file within the same folder the program was run from.)
- Sound Blaster 16 sound card (this can also be used in any other virtualization software, since the Sound Blaster was the PC standard for audio back in the day)
- DEC/Intel 21140 network card NDIS2 drivers (for Windows for Workgroups only; also includes drivers for Microsoft LAN Manager (DOS and OS/2), Windows 95, and NT 4.0)
- TCP/IP-32 v. 3.11b for Windows for Workgroups (to connect to Internet)
- DEC/Intel 21140 network card DOS packet driver, WINPKT (so the driver can be used in Windows), and Trumpet Winsock 3.0d (all to connect to Internet in Windows 3.1)
- Virtual PC also emulates the popular Intel 440BX chipset, but Windows 3.1x doesn't care about that.
Setting up the network in Windows 3.1 is harder. Luckily, Trumpet Winsock's help file provides the instructions you'll need. Keep in mind that the packet driver is named DC.COM. All you need to type for the packet driver is the path to DC.COM and vector 0x60, i.e.
c:\trumpet\dc21x4\dc.com 0x60
WINPKT 0x60
Also, Trumpet Winsock is shareware, so it'll taunt you with a nag screen and a software time bomb. You can defuse it by using any of a handful of registration keys that some kind folks have posted on the Internet.
You may run across some programs that require you to install an additional program called Win32s in order to run. This software package adds some 32-bit functionality to the 16-bit Windows 3.1x series. The latest version is 1.30c, which you can download for free from Microsoft's FTP site. However, version 1.30 doesn't behave with Windows for Workgroups, so for those versions, you'll have to use version 1.25 instead. This means that some later versions of programs will not be able to run.
Also, you may encounter some programs (such as Netscape) that will cause Windows to crash and burn when try to start them (in Windows for Workgroups, that may be a sign that Win32s version 1.30 is installed). This may be because they are trying to access floating point unit (FPU) functions. The WINFLOAT package provides a program called HIDE87 that solves that problem by hiding the presence of the FPU. To reverse it, you run its opposite, SHOW87. You can download WINFLOAT here.
One more useful bundle of software is the Windows 3.1 Resource Kit. It includes a System Resource Monitor so you can see how much RAM and system resources you have remaining, which is great if you run programs that consume a lot of those, resulting in frequent "Insufficient memory" errors. You also get a network utility and a virtual desktop manager called TopDesk, years before that feature became popular. The Resource Kit can be obtained from Microsoft's FTP site.
There are many sites out there that host Windows 3.1 software, so you can continue to experience what computing was like back in the early to mid-'90s.