Doom was originally designed in 1993 for 32-bit DOS computers with 4 MB of RAM. It's mostly written in C code with very little assembly code. It has been ported to all kinds of systems. Usually these systems are 32-bit or more and have a flat memory model.
Doom8088 is a port for PCs with a 16-bit processor like an 8088 or a 286, and with VGA or MCGA graphics. It uses 64 kB of EMS memory, if available. And 2024 kB of XMS memory, if available. It's based on GBADoom. Download Doom8088 here.
Watch what it looks like on a real PC here.
What's special?:
- Supports only Doom 1 Episode 1
- Rotating overlaid automap
- Only demo3 is supported
- PC speaker sound effects
- No music
- No texture mapped floors and ceilings
- No light diminishing
- No saving and loading
- No multiplayer
- No PWADs
- No screen resizing
- No mouse and joystick support
Known bugs:
- When there's not enough memory for a texture, one color is drawn
- When there's not enough memory for the intermission screen, the last few frames of gameplay are shown instead
- When there's not enough memory for a new palette, only the border changes color
Action | |
---|---|
Fire | Ctrl |
Use | Enter & Space |
Sprint | Shift |
Walk | Arrow keys |
Strafe | Alt |
Strafe left and right | < & > |
Automap | Tab |
Automap zoom in and out | + & - |
Automap follow mode | F |
Weapon up and down | [ & ] |
Menu | Esc |
Quit to DOS | F10 |
Code | Effects |
---|---|
IDCHOPPERS | Chainsaw |
IDDQD | God mode |
IDKFA | Ammo & Keys |
IDKA | Ammo |
IDSPISPOPD | No Clipping |
IDBEHOLDV | Invincibility |
IDBEHOLDS | Berserk |
IDBEHOLDI | Invisibility |
IDBEHOLDR | Radiation shielding suit |
IDBEHOLDA | Auto-map |
IDBEHOLDL | Lite-Amp Goggles |
IDCLEV | Exit Level |
IDROCKET | Enemy Rockets (GoldenEye) |
IDRATE | Toggle FPS counter |
Command line argument | Effect |
---|---|
-noems | Disable EMS |
-noxms | Disable XMS |
-timedemo demo3 | Run benchmark |
-
Run
compiamy.sh
to compile the Mode Y version andcompia13.sh
for the Mode 13h version. -
(Optional) Compress
DOOM8088.EXE
with LZEXE, just like all the other 16-bit id Software games. -
Doom8088 needs an IWAD file that has been preprocessed by jWadUtil.
It's possible to build a 32-bit version of Doom8088 with DJGPP and Watcom.
First run setenvdj.bat
once and then compdj.bat
for DJGPP, and setenvwc.bat
followed by compwc32.bat
for Watcom.
For debugging purposes, the Zone memory can be increased significantly this way.
It's also possible to build a 16-bit version with Watcom: Run setenvwc.bat
followed by compwc16.bat
.