Get DOS games working in XP!

Table of Contents
Preface
Solution 1:
Use DOSBox!!


Solution 2:
Fix errors in XP

Manage memory
Custom configuration settings
More customized tweaking
Sound Blaster madness
Slow DOWN your computer
The famous "RUNTIME ERROR 200"
Keyboard tweaking
Smashy smashy! (Closing thoughts)


Preface

First things first. There is no DOS in Windows XP! What is called the "command prompt" is not really DOS ... it can be thought of as more of a simulation of DOS. Windows XP (and Windows 2000), unlike Windows 95, 98, and ME, are NOT built on an MSDOS foundation. So, while this makes for better speed and stability, it also makes for sometimes lousy backwards compatibility.

However, have no fear! This page will hopefully help you to get the majority of DOS games running under XP. Of course, it's important to remember that some games just won't work on your modern computer, no matter how hard you try, so don't be too disappointed. ;) Also please keep in mind that these tips are for Windows XP only Thanks!


Best Solution: Run Your Games in DOSBox!



The DOS emulator, DOSBox, can enable you to play your old DOS-based games (nearly all text-mode games are DOS-based). For most games on this web site, DOSBox is not necessary. Windows XP emulates DOS pretty well to a point. If the game you want to play goes beyond that point, that's where DOSBox comes in. The best way to find out if you need DOSBox is to double click on the executable file (game.exe). If the game runs properly, you don't need DOSBox. If the game runs hyper-fast or gives you some sort of error message, that's where DOSBox can help. Alright, enough with the introduction. Let's get straight to the meat. I'm going to make this as simple as possible.

First, download the DOSBox installer here.
Second, open the DOSBox program by double-clicking on the DOSBox.exe icon (the default installation is c:\program files\dosbox-0.63 for version 0.63). Feel free to create a shortcut and put it on your desktop. Two windows will appear:



For a game that is assumed to be somewhere on the c: drive:
Type the following: mount c c:\ and press (enter)
You will get a response that states the following:
Drive c is mounted as local directory c:\
We want to switch to this newly-mounted drive. Do so by typing c: at the prompt, followed by (enter). The prompt will change from z:\ to c:\. At this point, simply navigate (cd, dos-style) to your game file and type its name. To make it really easy, place the game file in the c:\ directory.



Then all you have to do is type the name (example: lr or lodrun for loderunner, just whatever the name of the file is) and the game will begin. DOSBox has some cool features, like varying the speed of the game, getting screen captures, and custom key mapping. You'll want to read the README.txt file packaged with DOSBox. For your convenience, here are the keys I use most often:
CTRL-F9: Kill DOSBox
CTRL-F10: Capture/Release mouse
CTRL-F11: Slow down emulation
CTRL-F12: Speed up emulation
and ALT-ENTER toggles between full-screen and window modes.

That should be enough to get you started. Happy emulating!


Solution 2: Work in XP and fix errors/problems

Sometimes when you run old games, the error message that results when you run the game will pop up and disappear so quickly that it's impossible to read it! Here's how to fix that problem:

  • Find the game's executable file (the file you run, usually {somename}.exe) using Windows Explorer. Right click on the file, and choose "Properties".
  • Click the "Program" tab, and uncheck the box marked "Close on exit".
  • Click "Apply" and then click "OK" to close the box.


  • This will stop the DOS window from closing automatically when the game ends, or when it refuses to start. The resulting error message(s) can help you solve problems with the game.


    Manage memory

    Waaaaaay back in the MSDOS days, we had to play with our computer's memory to get games running. Stuff like conventional memory, EMS, XMS, upper memory, loadhigh ... lots of yucky stuff like that. Windows tries to manage memory for you automatically, but sometimes it doesn't do a very good job. Try giving the game the maximum amount of memory it could possibly want by:

  • Find the game's executable file (the file you run, usually {somename}.exe) using Windows Explorer. Right click on the file, and choose "Properties".
  • Click the "Memory" tab.
  • Set all of the values in the drop boxes to the highest value available.
  • Make sure that the "Protected" and "Uses HMA" boxes are checked.
  • Click "Apply" and then click "OK" to close the box.



  • Custom configuration settings

    Sometimes using the maximum memory settings isn't enough! Sometimes you need to create custom AUTOEXEC and CONFIG files for the game to use. Luckily in XP this isn't too hard at all. Here's how:

  • Open up Windows Explorer, and go to the C:\WINDOWS\System32 folder.
  • Find the files "AUTOEXEC.NT" and "CONFIG.NT". Copy those files to the same folder where the game's files are stored. (ex. if you were trying to get DOOM working, and DOOM was installed in C:\DOOM, you'd copy the files to C:\DOOM!)
  • Find the game's executable file (the file you run, usually {somename}.exe) using Windows Explorer. Right click on the file, and choose "Properties".
  • Click the "Program" tab. Click the "Advanced" button. Enter the full paths to the AUTOEXEC.NT and CONFIG.NT files you just copied. (ex. C:\DOOM\AUTOEXEC.BAT ...)
  • Also check the "Comaptible Timer Emulation" box, although it rarely helps anything. ;)
  • Now you can edit the AUTOEXEC.NT and CONFIG.NT files to add whatever specific settings the game needs to run. (Consult the game's manual if you have it.) If you don't know what settings to add, try adding the line "emm=ram" (without the quotes) somewhere after the line "dos=high,umb".
  • Click "Apply" and then click "OK" to close the dialog box(es) when you're done editing.

  • This should take care of any memory problems you're having, and by checking the "Compatible Timer Emulation" box, it may also fix speed problems. (ie the game runs too fast ... or too slow!)


    More customized tweaking

    There are a couple of other tweaks you can do to make games run and/or make them run more smoothly:

  • Find the game's executable file (the file you run, usually {somename}.exe) using Windows Explorer. Right click on the file, and choose "Properties".
  • Click the "Program" tab, and check the "Maximized" checkbox in the Run box.
  • Click the "Screen" tab, and click on the "Full-screen" radio button.
  • Click the "Misc" tab, and turn the "Allow screensaver" option off. Put the mouse in "Exclusive mode".
  • Click the "Compatibility" tab, and check the box beside "Run in compatibility mode", and choose "Windows 95" in the dropbox. (Although this doesn't seem to do anything, it's worth a shot.) Check the three other boxes: "Run in 256 colors" (most DOS games don't use more than that), "Run in 640x480 screen resolution" (unless you know that the game uses a higher resolution), and "Disable visual themes".
  • Click "Apply" and then click "OK" to close the box.



  • Part 7: Sound Blaster madness

    Getting sound to work properly in games can be one of the most annoying problems in XP. Windows XP tries to emulate DOS sound automatically, using the following settings: A220 I5 D1 T3 P330. If a game (or its setup program) is asking for sound card info, that is what you should enter.

    However, I've found that this rarely works. A better solution is to download VDMSound, a Sound Blaster emulator specifically made for Windows XP/2000. (VDMSound will NOT work in Windows 9x or ME!) Download and install the software found on that site. Then when you want to play the game, either create a shortcut using VDMSound as described in the game docs, or, just right click on a game, and choose the option to run it with VDMS. Hopefully, you'll hear sound! :)

    Note that sometimes the only way to get a game working is to turn off sound. It can kinda suck to play a game without sound, but its better than nothing. Often there is a "SETUP.EXE" or "CONFIG.EXE" (or something similar) file that comes with a game that allows you to select your sound options. Use this program to turn sound off and see if that allows you to run the game.


    Slow DOWN your computer

    If the game runs too fast, here's what to do:

  • Find the game's executable file (the file you run, usually {somename}.exe) using Windows Explorer. Right click on the file, and choose "Properties".
  • Click the "Program" tab. Click the "Advanced" button.
  • Check the "Comaptible Timer Emulation" box. Click "OK", then "Apply", then "OK" again. See if that fixes the games speed.
  • If that doesn't fix the problem:
  • A utility called "Moslo" can help solve this problem. Read the FAQ on Moslo here: DOSGAMES.com FAQ #3: Moslo.



  • Part 9: The famous "RUNTIME ERROR 200"

    If you're getting an error which looks something like "RUNTIME ERROR 200" (possibly followed by "AT ADDRESS {blah blah blah}") or sometimes just something like "DIVIDE BY ZERO", there are two things you can try to do:

  • Try using Moslo to slow down the game. The error is occuring because your computer is running too fast! Read the FAQ on Moslo here: DOSGAMES.com FAQ #3: Moslo.
  • Try using the TPPatch program to "fix" the game. Read the FAQ on Moslo here: DOSGAMES.com FAQ #9: Runtime Errors.

  • Keyboard tweaking

    If you find that you need to use some specific keyboard sequences (like Alt-Enter, or Ctrl-Esc for example), there is a way to turn them off for specific games:

  • Find the game's executable file (the file you run, usually {somename}.exe) using Windows Explorer. Right click on the file, and choose "Properties".
  • Click the "Misc" tab, and uncheck the box(es) that correspond to the key(s) that you need to use for the game.



  • Smashy smashy! (Closing thoughts)

    Okay, smashing your computer probably won't do any good. Unless you're rich. In which case, SHOW ME THE MONEY!!! Ahem. What I mean to say is that, as I mentioned above, some games just will not work in XP. The only solutions available to you then are:

  • Dual-boot your PC to an older version of Windows (ex. Windows 98SE) where you KNOW the game works. This can be a time-consuming and possibly dangerous (to your data) task unless you know what you're doing, so proceed with caution.
  • If you still have an old 386/486/Pentium lying around, convert it into a DOS-only box, and use it for all your DOS gaming goodness! If you don't have an old box lying around, ask friends and one of them will probably have an old computer they're willing to just give you, or sell you for really cheap.


  • THUS ENDS THE GUIDE TO RUNNING DOS GAMES IN WINDOWS XP. I hope that you have found this guide helpful! If you need more assistance, or some aspects of the guide are not clear to you, please post on the DOSGAMES.com Discussion Forum in the "Getting old games to work" group. Thanks, good luck, and good gaming! :)