FABIEN SANGLARD'S WEBSITE

ABOUT  CONTACT  RSS  GIVE


May 13, 2025

This article is part of the IBM PS/1 Restoration project series
IBM PS/1 2168 Restoration: DooM

With a fully restored IBM PS/1 2168, it was time to run my favorite games. That meant DOOM, DOOM II, and Ultimate Doom in Ultra-Violence mode.

Even before I received the machine, I had taken a look at the most excellent DOOM benchmark to estimate what framerate I was gonna get. The major factors in the DOOM fps equation are CPU, Bus, L2 cache, and video card. Given my generous configuration I was hoping for a solid 25 fps.

Lo and behold, I was actually way below, proof that I had a pretty good machine for 1993.

Screen size 9 / sound disabled:
===============================

doom -timedemo demo1  1710/2103= 28 fps
doom -timedemo demo2  2347/2562= 32 fps
doom -timedemo demo3  3863/4051= 33 fps

These benchmarks however were run with DOOM using the default screen size (9) and no sound (to not waste the bus bandwidth?). That was completely not what I was going go use to actually slay Imps because I wanted to play with at least screen size 10 and the amazing audio system I had just built.

If you are fuzzy on screen sizes[1], here is a reminder.

Installing DOOM

A few years back I spent an outrageous amount ofm oney on an original Manaccom DOOM box. I may have justified then with being the author of a book about DOOM. Now I had an ever better reason which was to install DOOM from original floppies!

I was 90% sure they would work. But I was nonetheless satisfied to see all four floppies read without a single glitch. id's masterpiece installed without a problem.

Benchmarking DOOM

The two major software settings with an impact on fps are the window size and whether sound is enabled or not[2]. I ran a few tests and found that each setting roughly accounted for a 10% fps hit.

Screen size 10 / sound disabled:
================================

doom -timedemo demo1  1710/2369 = 25
doom -timedemo demo2  2347/2992 = 27
doom -timedemo demo3  3863/4561 = 29
Screen size 9 / sound enabled:
===============================

doom -timedemo demo1 1710/2369 = 25
doom -timedemo demo2 2347/2992 = 27
doom -timedemo demo3 3863/4561 = 29

These numbers were not particularly meaningful to assess my future gaming experience. I benchmarked the configuration I intended to play, namely screensize=10 and sound enabled. The resulting framerate was much more modest and borderline unplayable.

Screen size 10 / sound enabled:
===============================

doom -timedemo demo1 : 1710/2663 = 22 fps
doom -timedemo demo2 : 2347/3402 = 24 fps
doom -timedemo demo3 : 3863/5221 = 25 fps
Benchmarking DOOM II

DOOM II uses the exact same engine as DOOM 1 but the level design and number of enemies push id's software harder. Logically the framerate is lower than DOOM 1.

Screen size 10 / sound enabled:
===============================

doom -timedemo demo1 : 1205/2495 = 16 fps
doom -timedemo demo2 : 2001/3448 = 20 fps
doom -timedemo demo3 : 4471/8539 = 18 fps
Benchmarking FastDooM

At this point, I thought 16/25 fps on DOOM was the best I was going to get out of this cherished 486 DX2-66Mhz. Then I came across a DOS port of DOOM named FastDoom.

I am usually not a fan of ports because they tend to depart from the spirit of the original game but this one is different. FastDOOM is focused on speed and gameplay improvements[3][4]. And it delivers.

DOOM I : Screen size 10 / sound enabled:
========================================

doom -timedemo demo1  1710/1892 = 31 fps
doom -timedemo demo2  2347/2432 = 33 fps
doom -timedemo demo3  3863/3700 = 36 fps
DOOM II: Screen size 10 / sound enabled:
========================================

doom -timedemo demo1 1205/1625 = 25 fps
doom -timedemo demo2 2001/2235 = 31 fps
doom -timedemo demo3 4471/5565 = 28 fps

10 fps faster with FastDOOM? I will never look back!

FastDoom life improvement

There are two life improvements that I particularly appreciated in FastDOOM. The first one is the "Always Run" mode activated via F12. That is something DOOM dearly needed (there was a way to enable "Always Run" in DOOM.EXE via a tricky joystick buffer overflow[5] but I would not call this a feature). This option enabled gameplay with keyboard + mouse without giving up on circle strafing.

The second life improvement is a tasteful full screen mode where life, armor, and ammos are displayed.
Guides

For the occasion, I purchased a bunch of Doom Guide Books. They were all terrible. I would have been better off sticking to BigMacDavis's excellent series.

Next

With the newfound ability to install games from floppy, I went on playing more games.

References

^ [1]DOOM Configuration file
^ [2]Nope, I refuse to play in low-detail mode.
^ [3]FastDoom: DOS Vanilla Doom optimized for 386/486 processors
^ [4]FastDoom. A new Doom port for DOS, optimized to be as fast as possible for 386/486 personal computers!
^ [5]joyb_speed 31


*