128mb FreeDOS Virtual PC Experiment

Virtualization is the latest trendy technology buzzword. It offers the ability to save on expensive servers by hosting multiple, independent operating systems on a single piece of hardware. That's a tad boring though. The real fun is being able to try new operating systems, and revive obsolete ones, without keeping extra hardware around. My first reaction to Microsoft Virtual PC was "hey, I bet I can run Windows 95 with that". Not content to stop there I opted for an even wackier, and less productive, endeavor...

I had a tower of 11 100mb Zip discs sitting in my closet for a number of years. They were great back when CDR drives and blank CDs were pricey. During my last spring cleaning I decided to finally part with them. I tried selling them on eBay, cheap, but no takers. We had a garage sale over the summer and I tried to sell them again, even cheaper, still no takers. Finally I broke down and just left them in front of my driveway in a box labeled "free computer junk" along with a dozen parallel cables. I was legitimately surprised when someone took them.

What the heck can you do with 100mb these days anyway?

Another item in my stack of useless hardware is my old 128mb USB flash drive. I paid $20 for it a few years ago but now it's basically garbage. Unlike the Zip disks it doesn't take up much space so I can't bring myself to toss it. So I thought "maybe I could put some Virtual PC image on it?"

I'm fortunate to have a job that doesn't require much travel, once a year on average. Business travel has a lot of downtime. There's the flight itself of course, 2-3 hours of extreme boredom. Then there's the evenings back in the hotel room. I'm past the age of looking for local hot spots, I just want to drink red wine and play some video games. I have a number of portable systems, they're good for filler but after 3-4 consecutive evenings the eye strain is too much (getting old pretty much sucks). I also have a tiny PSOne I could bring along but that doesn't help in the airport or on the flight.

Being business travel I of course have my company issued laptop along for the ride. Installing games on it is a no-no. I guess no one would ever find out but I'll play by the rules anyway (at least for the sake of this article). I do have Virtual PC 2007 on it though. I use it all the time for stuff like trying new versions of software or researching bugs that only occur on goofy configurations. I suppose I could bend the rules and use it to run a virtual gaming system too.


What to do with 128mb?

OK, this isn't really just about playing games in the hotel room. It's about the challenge of trying something new. 128mb is basically nothing today but it used to be pretty darn decent. With 128mb I could either install:

I've spent a lot of time playing with Windows 95 in Virtual PC [link], it's fun but not too challenging. It also takes up too much space, even the minimum install is going to eat the majority of the drive. I want to squeeze as much as I can out of 128mb. When you consider that this flash drive will also hold the virtual machine settings and saved state the actual hard drive will be capped around 80mb (assuming I'd ever save the state when memory is completely full). That's getting a little tight for Windows 95.

Ultimately I decided to go with FreeDOS. I've never tried it before and wanted to give it a whirl anyway. Plus, anyone reading this who wants to try something similar won't have to dig up MS-DOS install discs. Completely free, and legal, gaming is the intent here.

A couple other alternatives could be considered:


The Setup (Total Time ~30-45 Minutes)

You're probably tired of reading my ramblings, you just want to know how to set this up and whether it worked. Well wait no longer:

Step 1 - Download the Software

If you don't already have Virtual PC 2007 and FreeDOS then get them.

Virtual PC 2007

FreeDOS - Version 1.0 was used for this article.


Step 2 - Create the Virtual Machine Image
All the images are thumbnails, click on them for the full-size image. These screenshots were taken with Virtual PC 2007, the steps are slightly different on Virtual PC 2004 but not drastically. FreeDOS compatibility is the same on Virtual PC 2004 and 2007.

New virtual machine wizard

Fire-up the "New Virtual Machine" wizard and select "Create a new virtual machine".


Specify location for the new virtual machine

Specify a name and location for the new virtual machine.


Select operating system

When prompted for an operating system select "Other".


Adjust the RAM

Choose to adjust the RAM and set it to 32mb unless you're planning to try some more complicated games. Even 32mb is overkill for the stuff in here.


Create a new virtual hard drive

Select "Create a new virtual hard disk". (If you're using Virtual PC 2004 the steps to create a new hard drive are a little different)


Set the size of virtual drive

Create a fixed drive with 80mb unless you're trying this on a larger flash drive.


Virtual PC console

When you're done you should end-up back on the Virtual PC console. Hit the "Settings" button.


Disable networking

Disable networking, this will cause some odd problems later on. If you're feeling brave you can try to get it working with FreeDOS I suppose.


Step 3 - Install FreeDOS

I expected the FreeDOS installer to be like the MS-DOS 6.22 installer. You know, run setup, make coffee, insert next disk, repeat. Wow was I way off. This installer has a plethora of options and lets you install things at a very granular level. There are pros and cons to this. After the 15th screen I was begging for a "just f------g install already" button.

All the images are thumbnails, click on them for the full-size image.
Virtual PC boot screen

Start the virtual PC image. When you get the "Insert Boot Media" message mount the FreeDOS ISO image.


FreeDOS title screen

You'll get this whale menu, you'll want to "boot FreeDOS from CD-ROM".


FreeDOS install menu

On the next screen, select "Install to harddisk". There's also a Live CD option (which is very popular with Linux these days) if you just want to poke around with it a little.


Select language

Select whichever language you prefer.


FreeDOS install menu

Choose "Prepare the harddisk for FreeDOS by running XFdisk". Basically you're selecting to partition and format the virtual hard drive here.


XFDisk application

You should now enter the XFDisk application.


Select the drive to format

Select the drive to format, you should see the virtual hard drive with a "FREE" status and no system or label. If you're seeing something else go back and double-check you have the right drive attached to your virtual machine image. Press enter to open the "Options" menu.


Create a new primary partition

From the options menu you want to create a new "Primary Partition". In the "Partition Size" dialog enter the size of the drive unless you want to split it into multiple partitions for some reason.


Are you sure

The obligatory "are you sure" dialog, choose "YES". You'll get two slightly different ones in a row.


Install bootmanager

After the partition has been created go back into the "Options" menu and select "Install Bootmanager".


Hit F3 to quit

Click "YES" on the next confirmation dialog then hit F3 to quit the XFDisk application.


Reboot confirmation

One more confirmation dialog, click "YES" again.


Invalid OS

If you unmounted the ISO image, or selected "Boot from the first harddisk" from the FreeDOS menu, then you'll get a screen like this. In the last step the drive partition was created but the disk hasn't been formatted and is still unusable. Boot FreeDOS from the CD again.


Need to format the drive

Now you'll be prompted to format the drive, select "Yes".


All data will be lost warning

You must actually type "YES" on the confirmation screen, a simple "Y" won't cut it. Sorry Homer.


Back to the FreeDOS menu

When the format is done you'll be back on the FreeDOS menu. fSelect "Continue with FreeDOS installation".


Start the FreeDOS installation

I guess they really want to make sure you're serious about it. After this screen there's a general info page with a "Press any key to continue" message, go ahead and do that.


Select FreeDOS destination

Select a location for where FreeDOS should be installed.


Select stuff

Now the menu madness begins. On this first one it asks which general components you want to install. For each of these that you check there's another screen you'll go to with even more boxes to check. After a couple of tries I went with what appeared to be the bare minimal options.


Select drivers

Based on what you selected there will be more screens like this. I basically left the defaults selected after some trial and error. I unchecked things that I knew wouldn't work in Virtual PC (like USB support). If I went back and did this again I'd install the CD-ROM drivers and nothing else.


Done installing

Once you're past the menu screens you'll get a "Done installing" screen. Press any key to continue.


Checklist screen

Now you should be at this checklist screen, press any key to reboot.


Boot menu

You should be able to boot off the hard drive. From the boot menu go with the "max RAM free" option, usually the best choice for running old games.


Space available

Alright, quick audit of free memory and all looks well. Let's try some games...


Autoexec set blaster

Quick note about sound, edit the AUTOEXEC.BAT file if you're not getting sound from games that support the sound blaster. Before running any games turn your volume down as low as possible. Many, more like most, games will be deafeningly loud.



What Worked?

Free Games

Sticking with the "free" theme let's try some free DOS games. Over the years a number of publishers have released their old commercial games to the public domain. That's incredibly cool of them considering they could probably bundle them with a DOS emulator and keep on charging. There's also a wealth of freeware & shareware games floating around, some of them are even good quality. Let's see which of these run in this FreeDOS configuration.

Here are links to a variety of free DOS games including the ones tested below:

Note: There aren't detailed installation instructions here. This is a straight-up what works and what doesn't list.

All the images are thumbnails, click on them for the full-size image.

It Came from the Desert

It Came from the Desert worked sporadically. The first time I tried it locked at the title screen. A second attempt and it started up alright.


Defender of the Crown

Defender of the Crown worked perfectly on the first try and ran pretty well.


Hugo's House of Horrors

Hugo's House of Horrors also ran without a hitch. It was pretty darn fun too, I might actually play through this one.


Troll's Tale

Troll's Tale is rather low-tech so it ran just fine too. It's a game you can play with just two keys which I consider a good thing.


3.5" Archive

OK, so I achieved the goal of running a couple free games. I also have a couple boxes of 3.5" disks and a 3.5" floppy USB drive. Some of these are bound to work on FreeDOS too.

Like the previous session this is just documenting the compatibility of these games. Same note about images being thumbnails and stuff.

Golden Axe

Once I figured out the keys, Golden Axe ran fairly well. A little choppy but it was that way on an actual PC too.


Mortal Kombat

Mortal Kombat played just as well in FreeDOS as it did on a virtual machine running DOS 6.2, no noticeable difference.


Mindshadow

Mindshadow is an old Interplay game that's basically Zork with graphics. It also ran nicely.


Rise of the Dragon

Rise of the Dragon looked fine but I couldn't get the sound working.


Wolfenstein 3D error

Wolfenstein 3D (full version) crashed hard.


Ys

Ys, like It Came from the Desert, worked sporadically. The first time I tried it fired-up no problem. Second time it locked up, third time it was fine again.


Parting Thoughts

FreeDOS is a good alternative for those looking to play old games. From what I saw in the installer, it's probably a decent OS for actual productive work. I should give that a try one day... Anyway, my only complaint is with the installer. Yeah it's great that you can pick and choose what to install, but it also lets you install applications without their dependencies. I left out the part about how I completely hosed the first install because of this.

Overall I was impressed with what I saw.

The bad news... when a game locked sending a CTRL+ALT+DEL did nothing. Not sure if this is a Virtual PC problem or a FreeDOS one. The boot menu gives you a few options but not one to boot without CD support, I guess that would be easy enough to add myself though as it's just a matter of changing some configuration files.

So that was fun. You know, I have a 64mb SD card lying around somewhere...


Related