OS/2

e

Development
IBM initially approached id Software about having the company develop the port directly, but according to programmer Jim Thomas, id declined, stating that they had neither the time nor the resources, but that they would give IBM access to the source code to do the porting work themselves. IBM hired Jim Thomas as an independent contractor to do this work.

This OS/2 port of Doom was displayed on the floor at several IBM trade shows, including Spring COMDEX in 1994 and the OS/2 Warp release party in New York City. However, by the following Fall, IBM had stopped showing the game, and the port was never officially released. The last beta build, at v1.9b, was eventually leaked onto the Internet.

Technology
According to Jim Thomas, the OS/2 port of Doom uses non-planar drawing logic to render into a 320x200 area of system memory. This buffer is then sent to DIVE for blitting to the screen - if the target window is not 320x200 in size, DIVE's stretch blitting will resize it to fit the window. The game typically ran at 24 frames per second on period hardware. Self-modifying assembly code is utilized in this low-level code to achieve maximum performance.

The port was uniquely (for its time) multithreaded, particularly with respect to its network multiplayer capability. Named pipes and NetBios were supported as protocols.

As DART support is required, it may be necessary to install FixPak 26 or the Netscape Plug-In Pack if running Warp 3.

The port uses true MIDI for music, and a separate WAD file,, is provided which contains MIDI versions of music for Doom and Doom II.

A video driver with VGA 256-color or better support is required. If the proper support is not installed, an error such as "DiveOpen: 1006" will appear, and the program may crash afterward. The generic Scitech SNAP SVGA driver is a widely supported solution under which the the game can run successfully.