← Previous → Next Contents

Last modified: Mon Feb 19 15:48:55 EST 2018


Vanilla DOOM


(Screenshot scaled from 320×200 to 320×240 to preserve original appearance.)

Description:  Original DOOM 1.9.  There are four variants.

Source:  Retail package DOOM 2 on 3.5 inch floppies, patched up to Version 1.9.

Hardware to run Vanilla DOOM

ISA go Bragh™

Motherboard/CPU:  Short answer, 440BX with a Pentium III.  They are relatively common among the late ISA motherboards and more than adequate.  For alternatives to make your life more complicated, see ISA chipsets for ATX motherboards and i845 ISA PC.

Memory:  Having too little RAM will be a nonissue for anything newer than a 486.  DOOM allocates a maximum of 8 MiB for its "zone," or working memory.  DOS and the DOOM executable program combined will use less than 1 MiB.  OTOH, having more than 64 MiB of RAM provided by an XMM working alone in plain DOS triggers serious bugs in the DOS/4GW v1.95 extender that is attached to all DOOM executables.  This is easily fixed by replacing the extender (DOS/32A works for me) or worked around by using an EMM or no memory manager at all.

PSU:  In theory, an ISA PC should have a power supply that provides the −5 V rail, which new PSUs don't (and old PSUs die like crazy).  The Sound Blaster 2.0, Media Vision Pro Audio Spectrum 16, and Roland LAPC-I sound cards reportedly need −5 V to work, but most ISA sound cards apparently do not.

Sound card:  This can be very simple or very complicated depending on how picky you are.  If unsure, listen to the samples here and here.

Video card:  The video card will be limited by the motherboard.  With 440BX you get AGP 2×.  Since DOOM uses only a standard VGA mode and is playable even with ISA VGA cards, any old AGP, PCI, or VESA Local Bus VGA card will be more than adequate.

Mouse:  I recommend the Kensington Expert Mouse Optical USB Trackball.  As of 2012, they no longer include a USB-to-PS/2 adaptor in the box, but the device still works with one.

Monitor:  If you think that every monitor is capable of correctly displaying standard VGA modes, I have bad news for you.  Most widescreen LCDs refuse to display VGA modes in the correct aspect, and the average non-widescreen monitor is not actually 4:3 but rather 5:4 (1280×1024).  Either salvage a dying old CRT on its way to the recycler or get an LCD monitor that is actually 4:3 (native resolution of 1024×768 or 1600×1200).  The Dell 2007FP is pricey, but it works*, is nicely sized at 16 inches by 12 inches, and is still available in quantity as of 2013-02.  (* If the analog VGA input is used, some adjustment of the horizontal and vertical is necessary.)

Useful distinctions from Wikipedia:

Term Definition 320×200
640×400
640×480
800×600
1024×768
1600×1200
1280×1024 1920×1080 1920×1200
Storage Aspect Ratio (SAR)The ratio of the original image's width to its height, in pixels. 8/5 4/3 5/4 16/9 8/5
Pixel Aspect Ratio (PAR)The ratio of the width of a pixel to its height. 5/6 1 1 1 1
Display Aspect Ratio (DAR)The ratio of the width of the displayed image to its height. 4/3 4/3 5/4 16/9 8/5

DAR = SAR × PAR.

What about that other game...?

Although Duke Nukem 3D is a similar DOS game that requires the same kind of sound card as DOOM, its performance demands are much greater.  It runs slower than DOOM in an apples-to-apples comparison at the 320×200 resolution, but more significantly, it supports higher resolutions.  Setup goes up to 800×600, but by editing the config file manually I've gotten it to run at 1600×1200.  That's a factor of 30 increase in the number of pixels to render entirely in software and push over the bus to the video card.  The more reasonable choice of 800×600 is still 7 times as many pixels as DOOM.

DN3D on a 486DX2/66, supposedly its "recommended" configuration, is actually a horrible thing:  less than 10 fps at the standard 320×200 resolution, very choppy and difficult to play.  A 440BX motherboard with a 500 MHz Pentium III makes DN3D pleasantly playable at 800×600 but is not overkill.  The only ISA motherboard I have tested that unequivocally crushes it has a KT133A chipset (complete with faulty DMA), 1.4 GHz Athlon CPU, 4× AGP, and 133 MHz FSB.

There are specific places in the game where the frame rate suddenly nosedives.  I have reproduced the behavior with even faster Intel chipsets and CPUs and concluded that it is a bottleneck or glitch in the game itself that only sticks out when your frame rate is over 30 to begin with.

To get high resolution modes without quirky drivers you'll need a video card that has built-in support for the VESA BIOS Extensions (VBE), such as compatible GeForce and Quadro cards.

PCI sound cards that work

Most PCI sound cards suuuuuuuck.  The only thing this buys you is maybe getting DOOM to run on a slightly newer PC that has no ISA slots yet can still run Windows 98, and maybe a different soundfont.  Better results are nearly always obtainable with less effort by sticking with ISA and plain DOS.

A few early PCI sound cards, including the AWE64 PCI which might not suck, used a hardware workaround called SB-Link to allow continued DOS compatibility on supporting motherboards.  More of them supported DOS via special drivers that did clever/onerous/unreliable things to reroute ISA requests to the PCI bus.  This VOGONS thread provides background on both approaches.

Lots of PCI sound cards and integrated PCI sound chips on motherboards did not support plain DOS at all but came with Windows drivers that "should work" (claims the manufacturer) if DOOM is run from a command prompt window.  In reality, the drivers are fragile and the success rate is low.

My experiences with the DOS and W98 drivers for many common PCI cards are documented here.  So far the only PCI sound card that was worth the trouble is the one with a Yamaha DS-XG synth, and only because I don't have one of the related Yamaha daughterboards to attach to an ISA sound card.

Operating systems

DOS

DOOM runs equally well under FreeDOS, DR DOS, PC DOS, MS-DOS, or a hard drive formatted with FORMAT /S from a Windows 98 SE boot floppy.  The tricky part is that you need a compatible sound card and a mouse port that is recognized by the BIOS.  It's your problem to make sure that the Sound Blaster is configured properly (SET BLASTER=...) and that you have a working combination of mouse and mouse driver.  A motherboard with built-in USB ports and a newer BIOS may have a "legacy" feature in BIOS that allows USB mice to work under DOS; otherwise you may have to use a USB-to-PS/2 adaptor or be stuck using a serial mouse.

See previous note about avoiding bugs in the DOS/4GW v1.95 extender and general configuration notes for DOS.

Windows 98 SE

For Vanilla DOOM, a full installation of Windows 98 SE instead of plain DOS usually does more harm than good.  Pros:

Cons:

Windows drivers for sound can be either VxD or WDM.  The Microsoft softsynth works only with WDM drivers; OTOH, WDM drivers always cause sound effects glitches.

One time I had to install a DOS mouse driver in AUTOEXEC.BAT (anachronistic for W98) to get the mouse working in DOOM.  Usually this is not necessary.

See general configuration notes for W98SE.

DOSBox

If you can't run DOS or Windows 98 and still want to use Vanilla DOOM, the next least worst alternative is DOSBox.  It's a VM, but it is specifically for games.

A fork of DOSBox, DOSBox-X, sought to make DOSBox emulation more accurate.  Deciding between the two is less a question of features and more a matter of which one is less broken at the moment.  Both must be built from source (SVN or git) to avoid serious bugs that were fixed long ago.  As of early 2018, both have plausible GUS emulation, and both can be mysteriously laggy at times even on a fast PC.

With regular DOSBox I have to apply a patch to fix a joystick problem that the maintainers created deliberately.  DOSBox-X has this fixed already, but I have to patch random FTBFS instead; evidently their compiler is something different.

I changed the following settings in dosbox-*.conf to get the video scaled correctly on a 1920×1080 monitor:

[sdl]
fullscreen=true
fulldouble=false
fullresolution=1440x1080
windowresolution=1440x1080
output=opengl
# With original DOSBox use openglnb if scaling is blurry.
# Double-buffering doesn't seem to do anything.

[render]
aspect=true
scaler=none

And to get the correct sensitivity on the track ball:

[sdl]
sensitivity=200

The emulated sound devices must also be configured to match the desired port/IRQ/DMA, specify the GUS patch file path or allow MIDI passthrough, etc.

The Windows XP DOS box

OK, so, in theory, by the grace of NTVDM, DOOM ought to run in a regular Windows DOS box in Windows XP.  Set music to General MIDI, set sound effects to Sound Blaster, and it should just work.  But it just doesn't.  Every time I have tried it, the sound breaks up, gameplay is jerky, and it's totally unplayable.

There are many compatibility tweaks buried in the shortcut menus.  I have tried all of them, and they don't help.

The command prompt box in 64-bit versions of Windows won't run DOS programs at all.  I have no 32-bit installations of Windows 7 or later to test on.  According to the old Doom Wiki, DOOM faceplants in 32-bit Windows 7 or 8.  OTOH, they imply that it should work fine on XP.

The four variants of DOOM 1.9

  1. The original DOOM 1.9 executable was used for DOOM shareware, registered DOOM and DOOM II.  It was named doom.exe in shareware and registered, doom2.exe in DOOM II.
  2. The Ultimate DOOM executable interprets Tag 666 (triggered by killing some boss) differently, fixes a bug in the behavior of lost souls when they collide with the floor or ceiling, introduces a bug that hides par times, and expects the WAD to supply four demos.  Ultimate DOOM.WAD is the only one that does; others crash with an error about demo4 not found.
  3. The common Final DOOM executable has the changes made in Ultimate DOOM, plus the altitude of teleported objects is no longer set to the floor.  Team TNT wrote, "...we have some reports of teleport exits making you appear up in mid-air and dropping you.  Cool effect, but it's a bug..."  While autorun can be enabled in the other two versions by setting joyb_speed to 29, for Final DOOM you must use 31 instead.
  4. In 2009, it was discovered that some copies of id Anthology contained a revised Final DOOM executable and WAD files.  The changes to the executable include reverting the teleporter behavior change, fixing a bug that caused the sky background image not to change between levels, and fixing the demo4 problem.  Though its appearance in some copies of Anthology has been adequately corroborated, no information on who created this "rare" version or why it was released so obscurely has come out.  A binary patch from the common version is available.

References:

Sizes and dates

  715493 1995-05-25 02:09 ULTIMATE/DOOM.EXE
  709905 1995-02-01 01:09 DOOM2/DOOM2.EXE
  722629 1996-06-10 02:00 FINAL/TNT/DOOM2.EXE
  722629 1996-06-10 02:00 FINAL/PLUTONIA/DOOM2.EXE
  722629 1996-10-09 18:17 FINAL-A/TNT/DOOM2.EXE
  722629 1996-10-09 18:17 FINAL-A/PLUTONIA/DOOM2.EXE
12408292 1995-05-25 02:09 ULTIMATE/DOOM.WAD
14604584 1995-02-01 01:09 DOOM2/DOOM2.WAD
18195736 1996-06-10 02:00 FINAL/TNT/TNT.WAD
17420824 1996-06-10 02:00 FINAL/PLUTONIA/PLUTONIA.WAD
18654796 1996-11-14 12:10 FINAL-A/TNT/TNT.WAD
18240172 1996-11-21 15:58 FINAL-A/PLUTONIA/PLUTONIA.WAD

MD5

742a5f9953871687341e3794468894d8  ULTIMATE/DOOM.EXE
e2382b7dc47ae2433d26b6e6bc312999  DOOM2/DOOM2.EXE
f006de4fd282ba61d7d0af41a993f9ba  FINAL/TNT/DOOM2.EXE
f006de4fd282ba61d7d0af41a993f9ba  FINAL/PLUTONIA/DOOM2.EXE
ccd2769f32b38d74d361085e905d8f9c  FINAL-A/TNT/DOOM2.EXE
ccd2769f32b38d74d361085e905d8f9c  FINAL-A/PLUTONIA/DOOM2.EXE
c4fe9fd920207691a9f493668e0a2083  ULTIMATE/DOOM.WAD
25e1459ca71d321525f84628f45ca8cd  DOOM2/DOOM2.WAD
4e158d9953c79ccf97bd0663244cc6b6  FINAL/TNT/TNT.WAD
75c8cf89566741fa9d22447604053bd7  FINAL/PLUTONIA/PLUTONIA.WAD
1d39e405bf6ee3df69a8d2646c8d5c49  FINAL-A/TNT/TNT.WAD
3493be7e1e2588bc9c8b31eab2587a04  FINAL-A/PLUTONIA/PLUTONIA.WAD

SHA1

64e6df0ee478868b42d5eb7d443430283b0ddc0c  ULTIMATE/DOOM.EXE
aa0668fae2f743ee5e3e5634ee42d3c8ace7d907  DOOM2/DOOM2.EXE
9269fa5c095715d926015cad3381a4218e4f2d7e  FINAL/TNT/DOOM2.EXE
9269fa5c095715d926015cad3381a4218e4f2d7e  FINAL/PLUTONIA/DOOM2.EXE
91ee0d260785fdc778a1e7c10812275e5c758776  FINAL-A/TNT/DOOM2.EXE
91ee0d260785fdc778a1e7c10812275e5c758776  FINAL-A/PLUTONIA/DOOM2.EXE
9b07b02ab3c275a6a7570c3f73cc20d63a0e3833  ULTIMATE/DOOM.WAD
7ec7652fcfce8ddc6e801839291f0e28ef1d5ae7  DOOM2/DOOM2.WAD
9fbc66aedef7fe3bae0986cdb9323d2b8db4c9d3  FINAL/TNT/TNT.WAD
90361e2a538d2388506657252ae41aceeb1ba360  FINAL/PLUTONIA/PLUTONIA.WAD
4a65c8b960225505187c36040b41a40b152f8f3e  FINAL-A/TNT/TNT.WAD
f131cbe1946d7fddb3caec4aa258c83399c21e60  FINAL-A/PLUTONIA/PLUTONIA.WAD

← Previous → Next Contents
KB
Home