How to play Doom on modern Windows systems

Playing Doom under Windows XP can be troublesome. The original version of Doom ran under MS-DOS. Because Windows XP has only limited support for DOS, Doom may run poorly or have other issues (sound support is especially affected).

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. These are further developed and much better supported than the official id port.

Recommended source ports are:
 * Doom Legacy
 * Doomsday
 * Eternity
 * PrBoom
 * ZDoom
 * Gzdoom (Highly recommended)

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.

Other solutions

 * Use DOSBox to run the original DOS Doom 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 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.