How to play Doom on modern Windows

Playing Doom under Windows XP can be troublesome. All games based on the Doom engine originally ran under MS-DOS. Because Windows XP has only limited support for DOS, Doom engine games may run poorly or have other issues (sound support is especially affected). Some emulation patches for Sound Blaster support on newer sound cards have been released.

Recent commercial versions of Doom (such as the Collector's Edition) include Doom 95, id Software's native Windows port of Doom. However, because of compatibility issues in Windows XP and bugs in the port itself, even this does not play correctly (the most serious bug is that the mouse does not work at all).

Source ports
By far the most effective solution is to use a source port. Many source ports exist which are derived from the Doom source code, Heretic source code and Hexen source code. These are further developed and much better supported than the official id software and raven software port.

Recommended source ports are:
 * Chocolate Doom
 * Doom Legacy
 * Doomsday
 * Eternity
 * GZDoom
 * PrBoom
 * ZDoom

And if you want to play multiplayer games on the internet, you should also try:
 * Skulltag
 * ZDaemon

To use this solution, first install the game as normal. Then download a source port (usually in a .zip file), and extract the archive into the location where the game was installed. Running the source port executable (e.g. prboom.exe or zdoom.exe) should then start the game.

Emulation
Using console ports whose ROM images are dumped into a file for game system emulators is another way to play Doom on Windows XP, but is not legal unless the player owns the original cartridge or CD.

Other solutions

 * Use DOSBox to run the original DOS Doom, Heretic or Hexen executable. Poor performance can be improved by increasing the "cycles" parameter in the DOSBox configuration file.
 * SoundFX 2000 allows sound support for DOS games under Windows XP.
 * VDMSound does the same as the above.
 * Run the original DOS Doom, Heretic and Hexen executables without sound: either use the -nosound command line argument or set snd_sfxdevice and snd_musicdevice to zero in the game configuration file.
 * It is possible to run with music but no sound effects: In setup, select General MIDI (not Sound Blaster), with 0x300 as the address. Sound effects should be turned off.  This gives a configuration with music; however, even in this configuration the music may not play properly.