List of Doom ports

The present article is a list of known platforms to which Doom has been confirmed to be ported.

Doom is one of the most widely ported video games. Since the original MS-DOS version, it has been released officially for a number of operating systems, video game consoles, handheld game consoles, and other devices. Some of the ports are replications of the DOS version, while others differ considerably, including modifications to the level designs, monsters and game engine, with some ports offering content not included in the original DOS version. Since the Doom engine's source code was released to the public in 1997, hundreds of fan-made ports to various hardware have been developed.

NeXTSTEP
This was the version that the MS-DOS product emerged from, since, at the time, id Software was using a NeXTcube for its graphic-engine development. This version is sluggish on anything below an 040 NeXTstation/cube (though it runs smoother with a higher amount of memory), and is missing sound, which was added on the PC side. With NeXT-Step based on i486 architecture, it ran smoothly under all conditions up to screen sizes of 400% with newer hardware. The version running on NeXT is programmed by John Carmack, John Romero, and Dave Taylor.

OS/2
Doom was ported to OS/2 by an independent contractor, Jim Thomas, who was hired by IBM to port it and SimCity. A successful version was demoed in 1994 running in an OS/2 PM window.

IRIX
Doom was ported to IRIX during the summer of 1994 by Dave D. Taylor. IRIX Doom was originally based on the unreleased MS-DOS version 1.5, though later updates were based on versions 1.6 and 1.8. No effort was made to take advantage of SGI's advanced graphics hardware, and like many other ports the game was rendered entirely in software rendering mode.

Solaris
Doom was ported to Solaris in late 1994, and was designed to run with game files from Doom 1.8. In the readme, the port is credited to "Dave Taylor and the rest of the folks at id Software". It runs on Solaris 2.4 and later. The distribution contained two versions: one for regular X11, and another for Sun DGA.

Classic Mac OS/Mac OS X Classic
Doom for Mac was released on November 4, 1994. The Ultimate Doom, Doom II, and Final Doom were ported by Lion Entertainment and released by GT Interactive using a Mac OS launcher application to run original PC WADs. The Mac version runs on System 7 through Mac OS 9 and requires a 68040 or PowerPC processor. Although it can run in Classic under Mac OS X on Power Macs, Panther and Tiger cause graphic artifacts due to the later version of Classic having a double-buffered screen. It can also be played under emulation on Intel and Apple silicon Macs with SheepShaver and QEMU. In addition to an adjustable viewport, it supports rendering at low or high resolutions, and allows network play over AppleTalk as well as IPX.

Linux
Doom was ported to Linux by id Software programmer Dave Taylor in 1994. The last Linux Doom binaries were provided by id Software on October 13, 1996, through the company's FTP server.

The source code to the Linux version of Doom was released by id Software on December 23, 1997, under a non-profit End user license agreement; it was re-released on October 3, 1999, under the terms of the GPL-2.0-or-later license. However, the source code to the DOS and Windows versions of the game were not released, due to copyright issues concerning the sound library used by original DOS version and id Software having no access to the source code of the Windows port.

Microsoft Windows
The first version of Doom for Windows was released under the name Doom 95, on August 20, 1996. It was compatible with Windows 95 and up, and was able to use WADs from the DOS versions. It also allowed users to set up multiplayer games much easier than in DOS. It was included with Final Doom. The port was project-led by Gabe Newell and other later founders of Valve.

On September 26, 2001, Doom Collector's Edition was released, containing The Ultimate Doom, Doom II, and Final Doom. It was re-released on January 1, 2004 with added preview content for Doom 3. Some early versions of Doom 3 included the Collector's Edition and a small demon figurine as a bonus. The BFG Edition of Doom 3, released on October 15, 2012, includes The Ultimate Doom as well as Doom II.

On August 3, 2007, The Ultimate Doom, Doom II, and Final Doom were released on Steam. This release runs the original DOS versions of the game using DOSBox, a DOS emulator.

Acorn RISC OS
AcornDoom was released for Acorn RISC OS by R-Comp Interactive on February 7, 1998. It was made available in a bundle of three Doom games: The Ultimate Doom, Doom II, and Master Levels for Doom II, as well as the Maximum Doom add-on pack, which contains over 3,000 user levels.

Sega 32X
The 32X version of Doom was developed and published by Sega and was released on November 21, 1994. It features 17 of the 18 levels from the first two episodes, but none from episode three. This version lacks multiplayer support, does not play in a full screen, and only has the front sprites for the monsters. 10 levels are missing from the original version (twice as many missing levels as any other version of the game). A DOS prompt shows up after the credits roll if the player finishes the game either using cheats or starting from any level other than the first level, locking up the game. Similarly, the secret level cannot be accessed in these scenarios. Due to the lack of the third episode, the BFG 9000 can only be obtained through the use of cheats. Due to poor use of the YM2612 sound chip, this version's soundtrack is considered inferior to that of other versions, and many of the sound effects are missing. As with most mid-90s console ports, the levels come from the Atari Jaguar version. This version does not feature the Cyberdemon, the Spider Mastermind, or the Spectre. There is a level select option that allows the player to start on any of the first fifteen levels, although there is no way to save the game or settings.

In 1995, the 32X version of the game was given a score of 30 out of 40 by Famicom Tsūshin.

Atari Jaguar
The Jaguar version was published by Atari and was released on November 28, 1994. This version has more levels than the SNES and 32X versions, and as many levels as the 3DO and GBA versions. id Software had to strip down the port to allow the game to fit on a 2 Megabyte cartridge. It features 22 of the PC version's 27 levels, though many of them are simplified, plus two new levels (the levels titled "Tower of Babel" and "Hell Keep" are not the same as the PC levels of the same names). Unlike the 32X, SNES, and 3DO versions, this version of the game display occupies the full screen, albeit with an opaque status bar at the bottom. The game runs at a fairly constant and fluid frame-rate. The levels use more complex lighting effects, but have less variation in floor depth and ceiling height. It lacks the Cyberdemon, the Spider Mastermind, and the Spectre. It is compatible with the JagLink 2-console networking device for two players to play deathmatch. The Jaguar version does not have any music during gameplay, but plays the title theme and intermission music with new instruments. Game settings and progress through the levels are saved automatically, and the player can start a new game anywhere up to the last level reached. Instead of having to cycle through the selection of weapons, the player can select a weapon by pressing its corresponding button on the controller's number pad.

Next Generation gave it four out of five stars and called it "Definitely the best Jaguar title we've seen so far."

Super Nintendo
The SNES version of Doom was developed by Sculptured Software, published by Williams Entertainment, and released on September 1, 1995. The head programmer of the port, Randy Linden, created a new game engine called the Reality engine for the port. The game makes use of the Super FX powered GSU-2 chip (often referred to as the Super FX 2 chip), and was one of the few SNES games to feature a colored cartridge; the game was a red cartridge in the United States. The game was released as a standard gray cartridge in Europe, Australia, and Japan.

The SNES version of Doom features all five of the PC version levels that were missing from the Atari Jaguar version, but is missing a different set of five levels instead. Like the Sega 32X version, this version does not include exclusive levels. The levels included resemble the PC levels more so than other ports. This was also the only home console port of Doom released in the 1990s to feature all three of the original secret levels and boss levels from the PC version. Like the Sega 32X version, the player's heads-up display does not utilize the whole screen, and enemies are only animated from the front, which means that they always face the player. This renders monster infighting impossible, although it is possible for monsters of the same type to damage each other with projectiles. This version of the game lacks both battery back-up saves and a password system, meaning that each episode must be finished from the beginning. Multiplayer was only available if an XBAND modem was used, which included support for two player deathmatch. This version lacks the Spectre enemy (replaced with regular Demon monsters), though it does feature the Cyberdemon and Spider Mastermind boss monsters that the Atari Jaguar, Sega 32X, and 3DO versions lack. In the North American and PAL versions, episode two cannot be played on the "I'm Too Young to Die" and "Hey, Not Too Rough" difficulties, and episode three can only be played on "Ultra-Violence" and "Nightmare" difficulties if one is selected from the game's episode select menu, though it is possible to play episode three on the "Hurt Me Plenty" difficulty if the player beats episode two on that difficulty setting. In the Japanese version, however, all three episodes can be played on any difficulty level.

The automap display takes advantage of the rotating and scaling abilities of the Super FX 2 chip, with the entire map spinning around the player's position rather than the player being portrayed with an arrow. In the Japanese version, the player is able to see enemies on the automap, a feature not present in the PC and many other ports of Doom. Due to hardware limitations, particles such as blood impacts, smoke, or bullet sparks are not present, and floors and ceilings are not textured. The chaingun is capable of firing a single bullet (although firing once still plays two firing sounds). Moreover, the shotgun does not fire seven individual shots as it does in the PC version, but rather functions like a hunting rifle. This allows the player to shoot (and be shot) from a distance using the shotgun with no decrease in power. This version of Doom features support for the SNES Mouse peripheral.

Reviews for the SNES version were mostly negative. Electronic Gaming Monthly gave this version a score of 5.375 out of 10. Two of their reviewers said that it was "decent" but clearly inferior to other versions of Doom, while the other two felt it to be a poor game even without comparing it to other versions. They particularly criticized that enemies at a distance are too pixelated to be seen, making it "seem like you are getting hit for no reason at all". They cited the "outstanding" music as the one strong point. Next Generation similarly complained that enemies are so pixelated at mid-distance or farther that they blend in with the backgrounds. They also criticized the graphics in general as requiring "constant squinting" to discern what is going on and called the controls "poor and sluggish." While acknowledging that creating a port of Doom for a last generation console at all was an impressive technical accomplishment, they concluded the port to be not worthwhile and gave it two out of five stars. GamePro instead stated that distant objects appear sharp and clear, and that it is objects which are close up which appear extremely pixelated. They gave the SNES version a generally negative assessment, saying that the game is almost unplayable due to the unresponsive controls.

Linden would later develop a cancelled port of Quake for the Game Boy Advance as well as the PlayStation emulator Bleem!. On July 14, 2020, Linden released the source code for the port under the GPL-3.0-only license.

PlayStation
The PlayStation version of Doom was published and developed by Williams Entertainment and released on November 16, 1995. This version spent six months in development. It is one of the best selling versions of the game after the original PC version. It was re-released several times, first on the "Greatest Hits" range in the U.S., which requires that games have sold at least 150,000 copies there, and on the "Platinum Range" in PAL regions, which indicates that it sold over 600,000 copies in those territories.

Changes from the PC original include the removal of the "Nightmare" difficulty level, and the fact that progress is saved via passwords (given at the end of each level). The passwords also save ammo and health stats, but the numbers for them are rounded. This version features 59 levels in total; 23 levels from the PC version of Doom (edited much like the Jaguar and 32X versions), both of the levels designed for the Jaguar version, six new levels designed by the Midway team, five levels from The Ultimate Doom's fourth episode, and 23 levels from Doom II. Unlike the other 1990s Doom ports, all of the enemies from the PC version of Doom are included. However, the Arch-vile monster from Doom II is not present; according to one of the game's designers, Harry Teasley, this was because he had twice as many frames as any other monster, and the team felt that they "just couldn't do him justice" on the PlayStation. There is, however, one new monster, the Nightmare Spectre. According to Teasley, this was included to add variety, and to take advantage of the PlayStation's capabilities. Two player deathmatch and co-operative multiplayer modes are available on the PlayStation if two consoles are linked using the original Serial I/O port, and each console has its own controller and Doom disc inserted.

Many textures were reduced in size due to technical limitations. As a result, the mug shot appears to be different from the one in the PC version; in fact, it is the same animated sprite, but squashed in from the sides. A small selection of new graphics and visual effects were introduced. These include sector-based coloured lighting, an animated, flame-filled sky, and a new animation for the player's mug shot, which shows the Doomguy's head exploding if the player character is gibbed. For the first time, translucent Spectres are drawn without the cascade effect (including the darker-shaded Nightmare Spectres). The original music by Bobby Prince was replaced by a new score by Aubrey Hodges. The sound effects and voice-overs were also completely redone by Hodges, and, in parts of certain levels, echo effects were added. All of the story text is cut, save for the ending and second intermission from Doom II, the latter of which appears at the end of Ultimate Doom instead.

On October 1, 1996, a port containing levels from Master Levels for Doom II and Final Doom was released for the PlayStation under the name Final Doom. The PlayStation version of Final Doom has thirteen levels from Master Levels for Doom II, eleven levels from TNT: Evilution, and six levels from The Plutonia Experiment. Like the PlayStation version of Doom, Final Doom uses passwords. Unlike the PlayStation version of Doom, support for the PlayStation Mouse peripheral is available for Final Doom.

The PlayStation version was met with critical acclaim, with critics concurring it to be by far the best console version of the game to date. Major Mike of GamePro gave it a perfect score in all four categories (graphics, sound, control, and FunFactor), noting that it was not just a straight conversion but a drastically reworked and comprehensive edition with "enough new twists and turns to surprise even the most battle-weary Doom player". He applauded the inclusion of Doom II, the added levels, the much smoother graphics when compared to previous console ports, the clear sound effects, the "chilling" music, and the precise controls. A reviewer for Maximum found the port's most worthwhile aspects to be the huge number of levels, the use of the shoulder buttons for strafing, and the "vastly improved" audio. He scored it 5 out of 5 stars. A reviewer for Next Generation said the PlayStation version succeeded in "putting previous efforts for 32X, Jaguar, and especially Super Nintendo, to shame" with its high frame rate, impressive lighting effects, responsive control, deathmatch capability, and inclusion of Doom II and levels from Ultimate Doom. He complained that the walls are "sticky" and that he was feeling burnt out on reviewing ports of Doom, and gave it four out of five stars. Next Generation's 1996 overview of PlayStation games raised the score to a perfect five stars. IGN gave it a 7 out of 10, citing the high frame rate, impressive lighting effects, use of the PlayStation Link Cable, and inclusion of Doom II content. However, they criticized that the game was becoming old (the review was published a full year after the PlayStation version was released). GamePro awarded it Best PlayStation Game of 1995.

3DO Interactive Multiplayer
The 3DO version was published by 3DO and developed by Art Data Interactive, with assistance from Logicware, and was released in 1996. It features the same level set as the Atari Jaguar version, as well as the same auto-save feature, but lacks multiplayer modes. This version runs in a small screen at a low frame rate, though it includes the option to shrink the screen size further, which allows the game to run faster and smoother. It lacks some effects found in other versions but has an updated soundtrack that features remixed and original music. The Cyberdemon and Spider Mastermind are missing, though the Spectre (which is absent from the Jaguar, SNES, and 32X versions) is included.

The 3DO version was originally a more ambitious project, intended to surpass the PC version, but after it was mired in development hell for two years, programmer Rebecca Heineman was contracted to create a basic port in ten weeks. According to Heineman, the CEO of Art Data Interactive had no idea of how game development worked and assured her that the project was already well underway and just needed some fine tuning. Heineman then found that the CEO of Art Data had grossly underestimated how much work it would actually take to develop the game, boasting about brand new levels, enemies and weapons in the press when all he had was mock-up art assets. Heineman acquired the PC and Jaguar source code for Doom straight from id Software and created a quick-and-dirty conversion. Due to this tight time constraint, porting over the soundtrack was not practical, so the score was re-recorded for the port by the CEO of Art Data Interactive and his band. Full-motion video cutscenes were also planned to take advantage of the 3DO's media streaming capabilities and increased CD-ROM storage medium, but these never came to pass. Heineman released some screenshots of the planned FMV cutscenes, but claims they were only stills made to lure investors. In December 2014, the source code for the 3DO version was released to the public under the MIT license.

Maximum thoroughly panned this version for its lack of PAL optimization, large borders, choppy frame rate even on the smallest possible screen size, bland color palette, music which is lacking in atmosphere, and load times. They added that the frame rate and slowdown make the game too easy: "When large amounts of monsters arrive to beat the crap out of you, the game slows down to such an extent that you have ages to line up your shots and fire." With their only praise being for the intuitive and effective control configuration, they gave it one out of five stars. GamePro called it "the worst console version of Doom so far", chiefly due to the choppy frame rate.

Sega Saturn
Based on the PlayStation version, Doom was ported to the Sega Saturn by Rage Software and published by GT Interactive in 1997. Though containing the same levels, enemies, structures, and most of the sounds effects and music from the PlayStation version, this port suffers a number of differences and setbacks; the frame rate is significantly lower, the animation is slower, the echoed sound effects and sector-based lighting are missing, the Spectre and Nightmare Spectre monsters do not have the translucent textures and instead are drawn in see-through sprites of regular Demon enemies, and the animated fiery skyline in certain levels is gone, usually replaced with Doom II's city skyline. The lead programmer on this port, Jim Bagley, later said that he originally programmed a hardware-accelerated engine that would have performed on par with high-end PCs of the time, but id Software disallowed usage of the engine due to texture distortion caused by the rendering process, resulting in the final version using an entirely software-based renderer. John Carmack of id Software explained that they disallowed the engine because "I hated affine texture swim and integral quad verts."

This version is compatible with the Saturn analog controller and the Saturn mouse. However, the mouse cannot be used to strafe, access the automap, or manually change weapons (though as in all versions of Doom, the player character automatically equips a weapon when it is first acquired and switches to a different weapon if the current one is depleted of ammunition).

The packaging for the U.S. release contains a few errors, such as the game screen shots on the back actually being from the PC version of Final Doom, and it claims to be "deathmatch ready", when it is in fact only one player (the deathmatch and cooperative multiplayer modes are only in the Japanese and PAL releases, despite the fact that the Saturn link cable needed to play these modes had not been released in PAL regions ).

The Saturn port was met with a generally negative reception, with most reviewers considering it far below the quality of the PlayStation version. The most common criticisms were the low frame rate  and lack of certain graphical elements seen in the PlayStation version. Reviewer fatigue with Doom ports also continued to play a role; Jeff Gerstmann, rating it a 3.1 out of 10 in GameSpot, commented that "If I see one more Doom game released on any platform, I'm going to hunt down the people responsible and kill them slowly." Sega Saturn Magazine awarded the port a score of 56%, with the reviewer describing it as a "breath-takingly bad conversion of a classic game", judging the game's poor performance to be inexcusable considering the Saturn's 2D rendering capabilities, and feeling that even the earlier 32X and Jaguar versions played much better, despite being released on less powerful systems. GamePro was less outraged, judging that while the Saturn port is clearly inferior to the PC and PlayStation versions, it is enjoyable in absolute terms and "successfully mimics the PlayStation version in most categories - with the crucial exception of speed."

Game Boy Advance
The Game Boy Advance version of Doom was developed by David A. Palmer Productions and was released on November 5, 2001, and featured a level set identical to the Jaguar version, as the engine is actually a port of it.

Both GBA ports feature the same multiplayer functionality as the PC version. These were the first ports of Doom on a handheld device. Both Doom and Doom II received a much larger amount of censoring than other ports (monsters bleed green instead of red, and many more disturbing sprites such as corpses impaled on spikes are removed), resulting in a Teen rating from the ESRB.

Xbox
Co-developed by id Software and Vicarious Visions and launched on April 4, 2005, the Doom 3 Limited Collector's Edition features ports of The Ultimate Doom and Doom II, including a two- to four-player split-screen multiplayer mode. The expansion pack Resurrection of Evil also contains The Ultimate Doom and Doom II, as well as Master Levels for Doom II.

Xbox 360
On September 27, 2006, Doom was released for download on the Xbox Live Arcade for the Xbox 360. The game has all 4 episodes from The Ultimate Doom plus online cooperative and deathmatch modes through Xbox Live. Like the Xbox version, it does not include any of the console-only levels which appeared in earlier ports. Supports 11 screen sizes, and has higher graphics resolution than any earlier console port. Due to a bug, the music plays at a slower speed. This port, programmed by Nerve Software, also credits Vicarious Visions and likely shares code with the Xbox version. There are no cheats in this version of the game.

In 2010, the game was pulled from the Xbox Live Marketplace because Activision, the game's publisher, no longer had the rights to maintain the game on the Marketplace, but as of January 20, 2012, it has been republished by Bethesda Softworks, the same company that published the Xbox Live Arcade version of Doom II: Hell on Earth.

Both games are backwards-compatible with the Xbox One and can be purchased from the Xbox Store. They are also downloaded if the disc for Doom 3: BFG Edition is inserted into the console in lieu of the pack-in versions of the games included with that title, though the disc is required to play. They were also offered as a preorder incentive for the 2016 reboot.

PlayStation 3
Doom 3 BFG Edition contains The Ultimate Doom and Doom II: Hell on Earth. Later, Doom Classic Complete was released on the PlayStation Network which includes The Ultimate Doom, Doom II: Hell on Earth, Master Levels for Doom II, and Final Doom, the last two appearing for the first time in their entirety on a console.

25th anniversary release
Doom and Doom II were released for PlayStation 4, Nintendo Switch, Xbox One, Android and iOS on July 26, 2019, during QuakeCon, in honor of the franchise's 25th anniversary.

Bethesda received criticism for allegations that it included additional digital rights management in this version, as the initial releases required that users sign into a Bethesda.net account in order to play. Bethesda later stated that this was not intended to be mandatory, but an optional link to receive rewards on the service's "Slayers' Club" program for Doom, and that the mandatory login would be removed in a patch. This initial release for Doom 1 and 2 in the 25th anniversary release was also plagued with uneven pixels, incorrect aspect ratios (no option for 4:3), incorrect lighting position, and the music not matching the original DOS release version. On January 9, 2020, Bethesda released an announcement that Doom 1 and 2 will have a patch and update fixing the problems that plagued Doom 1 and 2's initial release. Updates including quick saves, support for 60 frames per seconds, 4:3 aspect ratio support, and support for add-ons (such as Final Doom and "No rest for the Living"). On March 6, additional updates and patches came out for Doom and 1 and 2 featuring audio improvements, quality of life features and minor performance optimization.

iOS
An official port of Doom, under the title Doom Classic was released in 2009 for iOS devices. Doom Classic iOS is one of the few official ports handled by former Id Software developer John Carmack himself, and is based on the PrBoom source port.

This version of Doom has since been replaced by the 25th Anniversary version on the iOS App Store, due to Doom Classic not being updated with support for versions of iOS past iOS 11, due to Apple dropping support for 32 bit apps in iOS 10

Raspberry Pi Pico (RP2040)
Doom has been ported to the Raspberry Pi Pico by Graham Sanderson. The gameplay has every single detail found in the original game, and the video output is the authentic 320x200 pixels. The PIO (Programmable Input/Output) of the Pico was used to emulate VGA. The sound effects are in stereo. Multiplayer mode is also supported. (Up to 4 players over an i2c network)

WebTV/MSN TV
Official plans to port Doom to the WebTV Plus and EchoStar DishPlayer internet appliances, both utilizing a custom-made enhancement chip called the SOLO that would allow for more advanced graphics capabilities, were made known as early as late 1998 and 1999 respectively. While it only got an official release for DishPlayer units in 1999 alongside a port of the Netshow version of You Don't Know Jack and Solitaire, all made to demo the technological capabilities of the WebTV hardware, a port made for original WebTV Plus units that wasn't publicly released was discovered by its dedicated hacking scene around August 1998, which could only be downloaded from connecting to an internal WebTV service. The WebTV and DishPlayer ports were likely developed by Prolific Publishing, Inc. Ports for both devices were stripped-down versions of the full game, only containing 4 episodes, most likely due to the fact they were made solely as demos. The ports also made use of the WebTV keyboard for control input.

Because there was no concern to know how the boxes stored information on the hard disks when either port was made known, and in the case of the WebTV Plus port, copies were supposedly subject to being wiped from the hard disks on command from the WebTV service, both the WebTV Plus and DishPlayer ports remained unpreserved for some time. Since then though, there have been a couple attempts to preserve the game and allow it to be playable after the service's discontinuation. Recently, unmodified versions of WebTV Plus and DishPlayer Doom, alongside other WebTV games, have since been publicly archived online. From 2014 to 2021, though, both the DishPlayer and WebTV Plus versions of the game were only available to play through a custom WebTV firmware image named "HackTV", which was done by WebTV hackers MattMan69 and eMac. These efforts did not intend to preserve the ports in their original forms, however, as the WebTV Plus version in particular is known to have modifications to carry the "HackTV" branding on the splash screen.

Husqvarna Robotic Lawnmower
Doom was officially ported to the Husqvarna Automower NERA in April 2024, playable with the control wheel thanks to the LCD screen. This port was originally developed during the 2023 Winter Dreamhack.

In Doom Eternal
In Doom Eternal, the original Doom and Doom II games are available to play in the Doom Slayer's PC in the Fortress of Doom. Both need to be unlocked, the first by collecting all of the in-game cheat codes, and the second one via the password FLYNNTAGGART.

Third-party source ports
This is a list of unofficial ports of the engine used to run Doom, referred to as source ports, that expand upon the engine's capabilities, alter how the game being run is played, or make it compatible with other operating systems. They have received substantial notable coverage.

There are hundreds of source ports known to have existed. The Doom engine's source code was released to the public on December 23, 1997. Although Doom was originally created for DOS, the original source release was for the subsequent Linux version, due to the use of a proprietary sound library in the DOS version. The original purpose of source ports was cross-platform compatibility, but shortly after the release of the Doom source code, programmers were correcting old, unaddressed Doom bugs and deficiencies in their own source ports, and later on introducing their own modifications to enhance game features and alter gameplay.

The source code was originally released under a proprietary license that prohibited commercial use and did not require programmers to provide the source code for the modifications they released in executable form, but it was later re-released on October 3, 1999, under the GPL-2.0-or-later license after requests from the community.

The following diagram depicts a simplified family tree of Doom source ports (Information may be outdated).

DOSDoom and derivatives
DOSDoom is the first Doom source port for DOS, launched within a day after the release of the Linux game's source code in 1997. It was created by Chi Hoang, who took the original Linux release of the Doom source code and ported it back to DOS. It evolved to include several new features, which were previously unseen at the time shortly after the release of the original Doom source code, including translucency, high resolution and color rendering, and vertical aiming.

Doom Legacy
Doom Legacy is a source port originally written as a fork of DOSDoom, introducing mouse-look, jumping, a console, 32-player deathmatch, skins, and, later, native Windows, Linux, and Mac OS X ports. It has also evolved to support many Boom features and 3D acceleration. Later releases include additional features, notably the ability for levels to contain floors directly over floors in December 2000, meaning levels are not required to be strictly 2D from a top-down perspective as they were in the original Doom engine games. It has its own scripting language, called Fragglescript.

GLDoom
One of the first source ports, glDoom was an attempt to bring OpenGL accelerated graphics support to the Doom engine, developed by Bruce Lewis. The project was canceled in 1999 after an accident in Lewis's home, in which the hard drives storing the project's source code crashed, destroying it. Concurrently, backup tapes storing the code were also destroyed. This has been cited by id Software as one of the reasons why it republished the source code under a free license, as it believed that incidents like that could be prevented by requiring developers to share their changes. In April 2010, however, Lewis rediscovered the glDoom sources in one of his deceased friend's hard drives.

Boom and derivatives
Boom was a port for DOS of the Doom source code by TeamTNT. Boom fixed numerous software glitches and added numerous other software enhancements into the engine to such a degree that its additions have been incorporated into most modern versions of Doom source ports (such as PrBoom+, ZDoom and Doom Legacy). The last update of Boom was released on October 22, 1998. In October 1999, Boom's source code was released. Further development of Boom as a source port was continued for DOS as MBF, for Windows as PrBoom, and for Linux as LxDoom. The latter two later merged as PrBoom and also took on many of the MBF features, so PrBoom's own successor, PrBoom+, is effectively the modern equivalent of Boom. Modifications of Doom that use Boom are referred to as "Boom-compatible", however that usually means "PrBoom+" due to further limits being removed in PrBoom+.

Eternity Engine
The Eternity Engine is a Windows source port licensed under the GNU General Public License. It was first released on January 8, 2001, as version 3.29 beta 1. It was originally meant to power a Doom total conversion, but after that project went on hiatus (eventually being cancelled in 2006), the engine became the prime focus. The engine is based on Smack My Marine Up (SMMU). It includes such features as scripting, portals, polyobjects, and Heretic support.

Marine's Best Friend
Marine's Best Friend (MBF) is a DOS-based source port. It is based on Boom, and adds several new features including high resolution graphics, enhanced monster AI, emulation of the pre-release beta versions of Doom, and "helpers" that follow and help the player (specifically dogs, to which the name of the engine refers). It was developed by Lee Killough and is no longer updated. Its code was later used as the base of the source port Smack My Marine Up, which in turn was used to construct the Eternity Engine. Some of its code was also adopted in PrBoom. In August 2004, James Haley and Steven McGranahan ported Marine's Best Friend to Windows as WinMBF. WinMBF was last updated in January 2005.

MBF21
Modder's Best Friend (MBF21) is a specification based on Boom and MBF made in 2021, created to address bugs introduced in MBF and expand the engines capabilities while retaining the conservative vanilla feel of Boom/MBF. The name is not only a reference to the year in which it was developed, but also its compatibility level (complevel) for certain source ports that support it.

PrBoom
PrBoom is a Doom source port derived from Linux and Windows ports of Boom and MBF that includes an optional OpenGL renderer, as well as options allowing it to restore the behavior of earlier executables (such as Doom version 1.9, Boom, and MBF) in essential ways. A variation named PrBoom+ provides enhanced demo recording and viewing capabilities. PrBoom was used as the engine for id Software's official port for the iPhone, Doom Classic. The source port was packaged in the Ubuntu Software Center as well as Fedora's RPM software repository alongside Freedoom. PrBoom was last updated on November 9, 2008.

Although PrBoom and PrBoom+ are simpler than some other Doom source ports, they are often preferred as staying relatively close to the behavior of the original games, and have good demo support. However, some of the bug fixes and behavior changes of other ports may unbalance how levels made for the original games play, giving players certain advantages or disadvantages.

Doom Ray Traced
On April 1, 2022, Doom Ray Traced was released; a PrBoom+ mod with ray-tracing and DLSS functionality.

Doomsday Engine and derivatives
The Doomsday Engine is a GPLv2-licensed source port (incorporating the former jDoom, jHexen, and jHeretic) that runs on Linux, Mac OS X, and Windows. The source port also supports Heretic, Hexen: Beyond Heretic and Doom II. Its hardware-accelerated engine supports 3D models, dynamic lighting, object and movement smoothing, shadows, and other features. It also includes XG line and sector types for editing extensions, as well as a built-in master server games browser (launcher).

Vavoom
Vavoom is a source port created by merging the Doom, Heretic, and Hexen: Beyond Heretic source trees to create a unified executable. It also features portions of the Quake source code (used predominantly for networking and rendering), and was the first source port to support Strife: Quest for the Sigil. It has been in development since September 1999, and was first released on June 14, 2000. Among its features are a true 3D polygonal engine with colored lighting and software, Direct3D and OpenGL renderers, freelook support, 3D floors, and support for Boom's extended attributes. The source port is packaged in the Fedora RPM software repository alongside free installers that grab the shareware levels for all the games used by the engine by default.

ZDoom and derivatives
ZDoom is a source port launched for Windows on March 6, 1998, and later Linux and macOS. It supports Boom editing extensions plus all of the extensions made in the version of the Doom engine used in Hexen: Beyond Heretic, as well as several other new features. It also supports other games that share the Doom engine. Unlike many other source ports, ZDoom cannot play demos recorded with Vanilla Doom, including the intro demos found in the IWAD. The last version of ZDoom, was released in February 2016, and was officially discontinued on January 7, 2017. In the announcement, ZDoom's creator, Randi Heit, recommended using QZDoom or GZDoom instead.

GZDoom
GZDoom is a source port based on ZDoom that extends its feature set to include an OpenGL 3 renderer. It was released on August 30, 2005. GZDoom also boasts 3D floor support compatible with Doom Legacy and Vavoom, 3D model support, 360 degree skyboxes, and other features. Version 2.4.0 was the first version to be officially released on ZDoom.org alongside the release of QZDoom 1.3.0 on March 19, 2017.

Skulltag and Zandronum
Skulltag was one of the multiplayer-centric Doom ports based on (G)ZDoom. It added 32-player multiplayer and different game modes: standard types such as deathmatch and capture the flag, and other modes such as co-operative waves and invasion maps. Skulltag had support for 3D models and high-resolution textures. Skulltag received a final update on November 7, 2010, and was shut down on June 7, 2012.

Skulltag 98e was succeeded by Zandronum, which is made by the same developers after the original creator moved to another project. Zandronum was first released as version 1.0 on August 24, 2012. Zandronum improved support up to 64 players online per server and introduced Last Man Standing and other, more original game modes.

ZDaemon
ZDaemon is an online multiplayer source port for Doom. It is a fork of another source port, Client/Server Doom or csDoom, the first stable source port to allow playing on the Internet by using client/server network code (from QuakeWorld). With ZDaemon, players create an account and can then easily connect to multiplayer servers with the included server browser (ZDaemon Launcher). The ZDaemon Launcher also features access to the ZDaemon IRC channel through their own client called "ZRC" (ZDaemon Relay Chat). To cut down on impersonation and spoofing, version 1.09 introduced in-game nick authentication, which allows players to use aliases (such as for clan tags), but only when they actually own the nick. ZDaemon also collects statistics from servers that have it enabled, as well as experience points, allowing players to level up as they play, though leveling up does not provide any in-game benefits.

Chocolate Doom
Chocolate Doom is a source port for Windows, Linux, macOS, AmigaOS 4, MorphOS, and other modern operating systems that is designed to behave as closely as possible to the original DOS executables ("Vanilla Doom"), going so far as to duplicate bugs found in the DOS executables, including bugs that cause the game to crash. This involves more than just leaving existing bugs in the source code. Several bugs present in the DOS version (for example, the sky bug in Doom II) were fixed by the time the Doom source code was released in 1997, so these bugs were recreated for Chocolate Doom. Other bugs present in Vanilla Doom were dependant on, for example, details of how DOS handles memory, or hardware drivers, which modern operating systems handle much more gracefully; bugs of this sort were carefully replicated where it was safe and useful to do so. In general, saved game files, configuration files, and demo files created by Chocolate should work identically with Vanilla, and vice versa. The first version of Chocolate Doom was released on September 7, 2005.

As Chocolate Doom is designed to behave as closely as possible to the DOS executables, it has no new core features, is not limit removing, does not support any higher screen resolutions, and caps its frame rate to match the 35fps of Vanilla Doom. However, some peripheral features are introduced to help recreate aspects of the original gameplay experience which are not directly part of the Vanilla Doom executables themselves, or simply to make antiquated original features more usable today. For instance, it supports music playback using the standard MIDI interface of the host operating system, but also offers OPL2 and OPL3 emulation, which recreates how the MIDI tracks sounded on the most popular Sound Blaster audio cards available when Doom was released. It also supports sound effect playback via the PC speaker, if one is present, and can emulate the sound of one if not. It provides an emulation mode for, a DOS mouse TSR that was commonly used with shooters such as Doom and Wolfenstein 3D, but was not part of the games themselves. Where Vanilla Doom allows users to take screenshots using the long-obsolete PCX image file format, Chocolate Doom optionally allows screenshots to be saved in the modern PNG format instead.

Chocolate Doom is popular among players who prefer a strictly traditional Doom experience, but also as a test engine for level designers, as Chocolate Doom crashes where Vanilla would crash and presents bugs in the same way as would Vanilla, allowing mapmakers and modders to test their designs for strict backward compatibility; for both gameplay and testing purposes Chocolate Doom obviates the need to run Vanilla Doom under DOS, or a DOS emulator. By default, it simulates the behavior of DOOM.EXE and DOOM2.EXE version 1.9 running under Windows 98 (DOS version 7.1), although it will simulate the executables from The Ultimate Doom or Final Doom, as well as versions as early as version 1.666 (the engine version number at which Doom II was released) if it detects their respective IWADs, and can also be made to simulate the behaviour of the executables under both DOS 6.22 and DOSBox, for cases where execution on those platforms yields different bug behaviour.

Crispy Doom
Crispy Doom is a fork of Chocolate Doom, which features limit removal and numerous quality-of-life enhancements, such as increased display resolution and an unlocked framerate. It uses the same game engine as Chocolate Doom, but allows enhancements to be easily toggled on or off in a separate options sub-menu in a manner that preserves core Vanilla gameplay as much as possible. It is popular among players who want a fundamentally traditional "Vanilla-like" Doom experience but who may want a few modern niceties like a higher screen resolution and/or some major bug fixes, while also appealing to players who, for example, engage in speedrunning or otherwise want to compete fairly against those playing Vanilla by making it trivial to disable any salient differences.

Other ports
Various versions of Doom exist for the Amiga computers, one well-known example of which is ADoom.

Nintendo DS
A port of PrBoom was written for the Nintendo DS. PWADs and DEH patches are supported, but only by creating a separate file with arguments to load them on startup. Wi-Fi network play is supported when using a PrBoom server set up on a PC.

Digita OS
DOOMD was a port released for FlashPoint Technology's DigitaOS for digital cameras. The port is based directly on the 1997 source code release. Both Doom and Doom II IWADs are supported. Custom WADs are supported, but no selection interface has been implemented.

iPod
A hack allowed 5th generation iPods to run a port of Doom. It is also possible to run Doom on iPods running Rockbox's Rockdoom plugin.

Zune and Zune HD
Two ports have been released to run on Zune devices using OpenZDK. One for the Zune HD, and the other for third generation Zunes and lower.

TI-Nspire Series
A source port to the TI-Nspire graphing calculators (specifically the NDless jailbreak software) was created, titled nDoom. It is a direct port of the original Doom engine, and as a result supports all IWADs and PWADs that were designed for the original executable. Support for Heretic: Shadow of the Serpent Riders and Hexen was added.

Gmini 400/402/402cc/AV400
aoDOOM was a source port made for some of Archos Gmini devices that runs an embedded version of ArchOpen. It supports all WADs and PWADs, including Doom 1 and Doom 2.

Symbian
Another port from original CDoom made for DOS machines and c2Doom exclusively ported for Nokia Series 60 version 2 and 3 editions smartphones. Possibly this mod originated from Korea based upon the trailer that had been released on YouTube.

Other ports
These Doom source ports have the characteristic of running on virtual machines such as the Java Virtual Machine or Adobe Flash while still being based on the Doom engine's source code. Due to the nature of the latter, some of these ports have opted for using automatic parsing of C code (such as Adobe Alchemy), while others have adopted a major rewrite.

HTML5
Freedoom has been ported to the World Wide Web via Emscripten and asm.js under the name "boon".

WebAssembly
The original Doom sources have been ported to WebAssembly.

Java
In the past, there have been several unsuccessful attempts to produce a Doom source port in Java such as DoomCott or the Stark Engine, which were either abandoned or never gained enough functionality to be properly called source ports. The only active Java Doom project as of 2010 is Mocha Doom, a pure Java implementation of Doom with features similar to modern Doom source ports and direct compatibility with the original game data.

Doom 3 mod
A mod was made for Doom 3 that allows the player to run the original Doom using an in-game terminal. The mod, called "Terminal Doom", is based on the 1997 source code release, and constitutes an experiment on Doom 3's interactive surfaces. All retail and shareware releases of Doom are supported by this port.

Hewlett-Packard 16700 series Logic Analyzers
Doom was ported to HP-UX 10.20 on the PA-RISC platform, and included as an easter egg on HP (later Agilent and now Keysight)'s' 16700 family of PA-RISC based logic analyzers.

Nintendo Wii
WiiDoom is a Wii port of Doom using the open source PrBoom engine.

Honeywell thermostat
Doom was ported to the Honeywell Prestige thermostat. It is controlled with a controller connected to the USB port on the bottom, which was originally intended for software updates.