Forward to the Past: DOSBox Pt. 1
While I am as staunch an old-school fanboy as you’ll likely find of Final Fantasy, Dragon Quest, and various other vintage console games, I am a computer gamer at heart. I love playing games with a keyboard and mouse, and the PC platform allows for more complex and versatile games and controls. I even prefer playing console games on emulator! I really like the style of games that can be done on computer though, and have been playing them for over 20 years, nearly as long as I’ve played console games. There also seems to be a clear line between console games being dominated by Japanese influence, and PC games being dominated by American influence.
One cannot talk about vintage PC games however without talking about the original PC platform: DOS. There was an entire generation of games stretching all the way into the mid 90′s that ran from a command prompt. These include many classics I enjoy like the SSI Dungeons & Dragons games, X-Wing, King’s Quest, and Doom, among many, MANY others. There were also PC games into the mid 90′s that were released for both Windows and DOS like Mechwarrior 2: Mercenaries and Quake. Windows operating systems supported DOS applications and games natively throughout the 90′s, but we all entered into the new millennium accompanied by Windows XP, and alas, problems began to arise.
Many of the more elaborate DOS programs rely on access to old style systems and libraries that had just become so old and deprecated, that Microsoft stopped providing full backward compatibility to them with XP. There was also a certain amount of compatibility breaking between XP and earlier versions of Windows as well. Problems with software needing earlier versions of Windows could (usually) be resolved by running the program in a “Compatibility Mode”, but these fixes were largely useless when it came to DOS programs. With the introduction of Windows Vista and Windows 7, things became even worse, and with the transition to 64-bit operating systems, things have fallen off the cliff.
The primary reason that 64-bit OS’s provide an extra challenge is because many DOS applications, and quite a few early Windows applications, use 16-bit libraries that a 64-bit operating system just doesn’t know how to handle. 64-bit operating systems can work out 32-bit operations, and 32-bit operating systems can work out 16-bit operations, however, going from 64-bit to 16-bit is just a bridge too far. This requires an intermediate step.
Now, when most of us think of emulators, we think of programs to run console games on a computer, but that is just one form of emulation. A program called “DOSBox” (which you can find at: www.dosbox.com) is a program that emulates DOS on a variety of operating systems and allows you to run DOS games and applications. It is a hybrid between an emulator and a “Virtual Machine” (VM). VMs are totally awesome and I’ll go into more detail about them in a later article. It gets more technical than we need to get into at the moment. For now, we’ll just think of it as a DOS emulator, just like a SNES or Genesis emulator.
When you run DOSBox, you select a folder on your computer to act as it’s “C:” drive. You are presented with… (Dun dun DUH!) a Command Prompt! From there you can run any programs in your virtual hard drive just as if it was DOS. There are a variety of options and commands that allow you to use your CD/DVD drive to install/run a game, mount a CD image, speed up and slow down the emulated system speed, etc. There are also ways to create Windows shortcuts that will automatically run DOSBox and run your DOS game within it automatically, all from a normal double-click! It really takes a modern computer that would never run a DOS game again, and lets it run the game better than it originally ran on a real system.
I have (finally) just begun the transition from WinXP to Win7 (64-bit nonetheless!), so I’m going to have to figure out how to run my old games on this new system. DOSBox is going to be one of the first steps. I had already installed it on my current XP system, but that was a long time ago and I’m going to have to get it set up all over again. This will inadvertently require a bit of re-learning and beating my head against the wall, so I plan to document this endeavor for the benefit of my fellow vintage PC gamers in an upcoming article or two. After that, I will get into more advanced projects like virtual machines, so stay tuned!
PS – Everything I’ve talked about so far has all centered around running Microsoft on Microsoft, but another awesome feature of DOSBox and Virtual Machines in general is that you can emulate the desired operating system on a variety of different computers! You can run DOSBox on Linux, Mac, and several other operating systems! When we get into Virtual Machines, you can do much more elaborate things like run Windows XP inside of a Mac, or run Linux inside of your Window 7!