Games

Doom

DOS · PS1 · 1993 · 14 projects

14 ports

Source port Playable

GZDoom

ZDoom/gzdoom

GZDoom: a “feature-centric” port for all Doom engine games, based on ZDoom, which adds an OpenGL and Vulkan renderer and scripting capabilities aimed at modders. The code is released under the GPL v3, with copyright held by the ZDoom and GZDoom teams since 1998 and their contributors; the original Doom code belongs to id Software, Raven Software, and contributors. The latest release, 4.14.2 (May 3, 2025), has builds for Windows and macOS and .deb packages for amd64 and arm64; the repository is still receiving changes (the latest commit reviewed is from August 2026). To build it, the README points to the ZDoom wiki.

You needThe WAD files from your own copy of whichever Doom engine game you want to play; the README doesn’t list them. Windows, macOS, or Linux.

★ 3.1k · 2026-08-10 View →
Source port Fully playable

Doom / Doom II (Chocolate Doom)

chocolate-doom/chocolate-doom

Chocolate Doom: a Doom port, built on the source code id Software released, that aims to accurately reproduce the original DOS version, bugs included, on current systems. It’s compatible with DOS demos, configuration files, and saves, and aims for the display and controls to feel the way they did back then. It started with Doom alone, but now also includes ports of Heretic and Hexen, built on the code Raven Software released, and of Strife: since Strife’s source code was lost, Chocolate Strife was rebuilt over more than four years of reverse engineering the DOS executable, with the blessing of its original programmers. It scales in hardware to any window size; music can play through an emulated OPL3 (Nuked OPL3), FluidSynth, native MIDI, or FLAC, Ogg, or MP3 music packs, and the -merge option lets you play total conversions without modifying the IWAD. Version 3.1.0 (August 1, 2024) added UDP hole punching so servers behind a router are reachable from the internet, WAD autoloading, and dragging files onto the executable on Windows. The latest is 3.1.1 (August 14, 2025), with initial support for Doom version 1.5. The published builds are for 64-bit Windows and macOS (Intel and Apple silicon); on Linux and other systems it’s built from source.

You needThe IWAD from your own copy: doom.wad, doom2.wad, tnt.wad, or plutonia.wad for Doom, Doom II, and Final Doom; heretic.wad, hexen.wad, or strife1.wad with voices.wad (Strife 1.2 or later, or Strife: Veteran Edition). The free shareware versions of Doom (doom1.wad) and Heretic (heretic1.wad), Chex Quest, and the free Freedoom IWADs work too. It finds Steam and GOG installs on its own. Plus 64-bit Windows or macOS; on Linux, by building it.

★ 2.5k · 2026-10-25 View →
Source port Playable

UZDoom

UZDoom/UZDoom

UZDoom: a “feature-centric” port for all Doom engine games, a continuation of ZDoom and GZDoom, which adds an advanced renderer, dynamic lighting, 3D floors, extensive mod support, and modern OpenGL and Vulkan renderers. The code is released under the GPL v3 or later, with copyright held by id Software since 1993, Marisa Heit, Christoph Oelckers, and the GZDoom and UZDoom teams. It publishes builds for Windows (x86-64), macOS (ARM64), and Linux (x86-64 AppImage): the latest stable release is 5.0.3 (September 23), and there is a preview build from October 28.

You needThe WAD files from your own copy of whichever Doom engine game you want to play; the README doesn’t list them. Windows, macOS (Apple Silicon), or Linux.

★ 2.3k · 2026-10-28 View →
Source port Fully playable

⑂ Fork of chocolate-doom/chocolate-doom

Doom / Doom II (Crispy Doom)

fabiangreffrath/crispy-doom

Crispy Doom: a “friendly fork” of Chocolate Doom, the faithful port built on the Doom source code id Software released in 1997. It doubles the internal resolution to 640×400 (320×200 is still available), removes the engine’s static limits, and adds optional visual, tactical, and physical enhancements while staying compatible with the original’s config files, savegames, netplay, and demos. It has widescreen rendering up to 24:9, uncapped frame rates with interpolation and optional VSync, and supports the “Doom Classic” WADs from Doom 3: BFG Edition, with the No Rest for the Living episode, and every version of SIGIL. The optional features, mostly off by default, are enabled in the “Crispness” menu: jumping, mouselook, a crosshair, a minimal HUD, translucency, randomly mirrored corpses, and secret notifications, among others. It also loads full DEHACKED and BEX and animation-smoothing mods, and plays limit-removing maps, but not Boom or ZDoom ones. Crispy Heretic, Crispy Hexen, and Crispy Strife are released from the same code. There’s a Windows build and packages for macOS (MacPorts and Homebrew) and Linux (Debian and Ubuntu). Version 7.2.0 (October 12) extended the extended BSP format to all games and fixed demo and savegame bugs.

You needThe IWAD file from your own copy of Doom, Doom II, or Final Doom, or the Doom 3: BFG Edition WADs; the free shareware DOOM1.WAD works too, as does Freedoom. For Crispy Heretic, Crispy Hexen, and Crispy Strife, each game’s IWAD. Plus Windows, macOS, or Linux.

★ 965 · 2026-10-12 View →
Source port Fully playable

Doom / Doom II (DOOM Retro)

bradharding/doomretro

DOOM Retro: a Doom source port for Windows by Brad Harding, who released it on December 10, 2013, for the game’s 20th anniversary. It started from Chocolate Doom, which builds on the source code id Software released in 1997, and is now its own port of about 120,000 lines of C. It supports vanilla, limit-removing, Boom, MBF, and MBF21 maps and mods, with DeHackEd (including the DEHEXTRA extension, which began here), DSDHacked, and partial MAPINFO and UMAPINFO, but it doesn’t record or play back demos and has no multiplayer. It draws with a 256-color software renderer at 640×400, twice the original resolution, scaled up with Direct3D or OpenGL, with a widescreen mode and a choice of two HUDs, uncapped frame rates, and a 45–135° field of view. It fixes most of the original engine’s bugs and over 1,400 errors in the official Doom and Doom II maps, and adds translucency effects, blood that leaves permanent splats, monster shadows, bobbing liquids, a WAD launcher, a console, an automap that can go on a second display, stats, controller rumble, and mouselook, plus a “vanilla” mode to compare it with the original. It recognizes SIGIL and SIGIL II, the BFG Editions with No Rest for the Living, Freedoom, Chex Quest, HacX, and REKKR. It also includes E1M4B and E1M8B, two maps by John Romero played with the Doom IWAD. Version 6.3 (August 8) improved ID24 compatibility and added a cylindrical sky projection, radial lighting, and Discord Rich Presence.

You needThe IWAD file from your own copy of Doom, Doom II, or Final Doom (DOOM.WAD, DOOM2.WAD, PLUTONIA.WAD, or TNT.WAD), for example from Steam, GOG, or the Epic Games Store; it tries to find where it’s installed on its own. It also takes the shareware DOOM1.WAD, though PWADs can’t be loaded with it, and the free Freedoom IWADs. Plus 64-bit Windows; the source can also be built on Linux and macOS, without support.

★ 781 · 2026-10-31 View →
Port (decomp) Fully playable

Doom / Final Doom (PsyDoom)

BodbDearg/PsyDoom

PsyDoom: PlayStation Doom and Final Doom brought back to PC through reverse engineering. The code comes straight from the PlayStation machine code: it began as emulated MIPS instructions and was gradually turned into structured C++ that runs natively, with help from Erick194’s PSXDOOM-RE, which recreates the source for the PlayStation itself. The classic renderer emulates the console’s GPU and sound chip (SPU) internally so the game looks and sounds like the original; the Vulkan renderer, on by default where available, draws at high resolutions and in widescreen. It reproduces exactly four complete playthroughs recorded as demos (Doom and Final Doom, NTSC and PAL). It adds uncapped frame rates with interpolation, save files, a launcher, keyboard and mouse, the link cable multiplayer over TCP (co-op and deathmatch, on a very low-latency connection), Lua-scripted mods, and raised engine limits. The latest stable version is 1.1.1 (June 13, 2023); 1.2.0-preview1 (March 22, 2025) is a test build.

You needYour own Doom or Final Doom PlayStation disc (any region or edition) as an image with its .cue file; the one-level demo works too. Plus 64-bit Windows with the Visual C++ redistributable, macOS (Intel or Apple silicon), or Linux based on Debian Buster or later (x86-64, ARM64, or ARMhf, with PulseAudio for sound). The Vulkan renderer needs Vulkan 1.0 (on a Mac, a Metal-capable graphics card); without it, the classic renderer is used.

★ 549 · 2025-10-05 View →
Source port Fully playable

Doom / Doom II (DSDA-Doom)

dsda-org/dsda-doom

DSDA-Doom: a Doom source port, the successor of PrBoom+ in the Boom line, which builds on the source code id Software released in 1997 and adds tools for recording and playing back demos, with a focus on speedrunning and quality of life. It was created by kraflab, who maintained it from 2020 to 2024; it’s now maintained by Fabian Greffrath, the author of Crispy Doom and Woof!, and four other developers. Besides Doom, it plays Heretic and Hexen, compatible with their original demos, and supports MBF21, UDMF, UMAPINFO, and DSDHacked. It has a console with scripting, full controller support, a palette-based OpenGL renderer, rewind, a strict mode for speedrunning, advanced TAS tools, and debugging features for testing maps; there’s also a dedicated launcher, dsda-launcher, in a separate repository. Version 0.30.0 (September 29) moved UMAPINFO to revision 3, with Heretic support, removed ZDoom MAPINFO support, added mouse navigation in the menus, and brought back the ENDOOM window; the latest, 0.30.1 (October 9), lets you choose the audio output device. There are builds for 64-bit Windows (Windows 7 and later), Linux (AppImage), and macOS (universal binary).

You needThe IWAD from your own copy: doom.wad, doom2.wad, tnt.wad, or plutonia.wad for Doom, Doom II, and Final Doom; heretic.wad for Heretic; or hexen.wad, plus hexdd.wad for its expansion, for Hexen. It also recognizes the free Freedoom IWADs and the Chex Quest ones. Plus 64-bit Windows, 64-bit Linux, or macOS.

★ 520 · 2026-10-22 View →
Source port Fully playable

Doom / Doom II (Woof!)

fabiangreffrath/woof

Woof!: a continuation of Lee Killough’s Doom source port MBF (Marine’s Best Friend) for modern systems, part of the Boom/MBF line, which builds on the Doom source code id Software released in 1997. It’s developed from WinMBF, Team Eternity’s 2004 Windows port of MBF, and many of its improvements, the network code among them, come from Chocolate Doom; it’s maintained by Fabian Greffrath, the author of Crispy Doom. It draws at any resolution up to your display’s native one, with dynamic resolution scaling to hold the frame rate you choose, in widescreen, uncapped with frame interpolation, and with an adjustable field of view. It adds voxels, 3D audio up to 7.1 with HRTF, several music backends (MIDI, FluidSynth, and an emulated OPL3), gamepads with rumble, gyro, and flick stick, and mouselook. It has Vanilla, Boom, MBF, and MBF21 compatibility levels, loads MBF.EXE saves, and supports recent modding formats such as UMAPINFO, DEHEXTRA, DSDHacked, UDMF, and ID24. Version 16.0.0 (September 8) moved to SDL3 and added rewinding, a minimap, a custom skill menu, and macOS builds.

You needThe IWAD file from your own copy of Doom, Doom II, or Final Doom (doom.wad, doom2.wad, tnt.wad, or plutonia.wad); the free shareware doom1.wad works too, as do the free Freedoom IWADs. It finds Steam and GOG installs on its own. Plus Windows 7 or later, Linux (as an AppImage), or macOS.

★ 335 · 2026-10-31 View →
Source port Fully playable

Doomsday Engine

skyjake/Doomsday-Engine

Doomsday Engine: a port of id Software’s Doom and Doom II and Raven Software’s Heretic and Hexen with enhanced graphics, meant to refresh these games’ technology while keeping their gameplay. It’s written in C++ on Qt 5 and OpenGL, and the three games’ extensions live together in the libgamekit library. It has game profiles with add-on selection, an in-game overlay with settings and the console, particle effects and dynamic lights, bloom and vignette, geometry-based ambient occlusion, 3D models for objects (FBX and MD5), skyboxes, an upscaling texture filter, and stereoscopic rendering modes. 3D sound with reverb comes through the FMOD plugin, and it supports MP3 music and MIDI with FluidSynth (Unix only). In multiplayer it discovers LAN servers, has a master server for public games, and a tool for running servers in the background. The latest stable release is 2.3.1, from February 2021; 2.3 improved support for the original Doom render hacks used by TNT: Evilution and The Plutonia Experiment and expanded Doomsday Script, its scripting language. Since then only 2.3.2 candidate builds have come out, and the latest commit is from January 2024. There are builds for Windows, macOS, and Linux.

You needThe data files (IWADs) from your own copy of one of the games, such as Doom II; it can find the Steam and GOG releases of The Ultimate Doom, Doom II, Final Doom, Heretic, and Hexen on its own. Plus a graphics card with OpenGL 3.3 and Windows, macOS, or Linux.

★ 306 · 2026-06-03 View →
Source port Fully playable

Doom / Doom II (Odamex)

odamex/odamex

Odamex: a Doom source port focused on online multiplayer, with a client/server architecture, that aims to keep the original gameplay while adding many enhancements. It builds on the source code id Software released in December 1997, by way of Sergey Makovkin’s CSDoom 0.62, which itself came from Marisa Heit’s ZDoom 1.22. It supports up to 255 players, with lag compensation (unlagged, plus client-side interpolation and prediction), and besides classic deathmatch and co-op it has team deathmatch, capture the flag (three-way too), Horde, Survival, Last Man Standing, and Attack & Defend, with warmup, rounds, and a player queue for competitive play. It has compatibility settings to emulate vanilla Doom, Boom, or ZDoom physics, plays back vanilla demos, records netdemos with playback controls, removes most of the original engine’s static limits, and supports most Boom and MBF features, the Hexen map format, DeHackEd, BEX, DEHEXTRA, MBF21, and ACS. It renders in true color, widescreen, up to 8K, and at uncapped frame rates, loads WADs on the fly and downloads them from within the game, and comes with its own server, odasrv, and Odalaunch, a launcher that lists servers. Version 12.0.0 (December 26, 2025) added DSDHacked, which opens up mods such as Eviternity II and Legacy of Rust; the latest, 12.3.0 (August 6), added a 90 fps option, mouse navigation in the menus, a free camera for netdemos and for players out of lives in Survival, and ZDoom’s stacked sector portals. There are builds for Windows (an installer plus 32- and 64-bit portable builds), Linux (Flatpak for x86-64 and ARM64), and macOS.

You needThe IWAD from your own copy of Doom, Doom II, or Final Doom; the free Freedoom IWADs and the Chex Quest IWAD work too. Plus Windows, Linux, or macOS.

★ 305 · 2026-10-31 View →
Source port Fully playable

Doom / Doom II (Eternity Engine)

team-eternity/eternity

Eternity Engine: an advanced Doom source port maintained by James “Quasar” Haley, descended from Simon “fraggle” Howard’s SMMU, part of the Boom/MBF line; most of the recent work is by Ioan Chera. It’s built for players and mappers alike: it has ACS with many of ZDoom’s enhancements; EDF (Eternity Definition File), a language to define and modify monsters, decorations, sounds, text strings, menus, and terrain types; and portals for skyboxes and fake 3D architecture that objects can pass through. It supports practically unlimited resolutions, PNG, ENDOOM and animated startup screens, UMAPINFO, MBF21, and DSDHacked, and plays Master Levels and No Rest for the Living without command-line options. It also runs Heretic, with its rules updated to match the 2025 release, and Hexen and Strife support is in progress. Version 4.06.00 “Nidhogg” (June 13) is a big bug-fix and improvement release, with wall texture scaling, non-power-of-two flats, and new ACS inventory functions.

You needThe IWAD from your own copy of Doom, Doom II, Final Doom, or Heretic. Plus Windows (32- or 64-bit) or macOS (Intel or Apple silicon); on Linux and the BSDs you build it from source.

★ 273 · 2026-10-30 View →
Source port Fully playable

EDGE-Classic

edge-classic/EDGE-classic

EDGE-Classic: a Doom source port that revives the EDGE 1.35 codebase for modern systems, with advanced features, easy modding, and attractive visuals while keeping hardware requirements modest. Besides Doom and Doom II it runs Heretic, Chex Quest and Chex Quest 3, HacX 1.2, Harmony, and REKKR, plus the free Freedoom and Blasphemer IWADs. Compared with EDGE 1.35 it adds an uncapped frame rate, a new renderer with OpenGL 3.3 and GLES3 alongside the legacy OpenGL 1.3 one, multithreaded BSP traversal, Dehacked support up to MBF21, DSDehacked, Boom, UDMF, and UMAPINFO, Lua as its main scripting language (with a COAL compatibility layer), expanded DDF and RTS, an inventory system, widescreen status bar, intermission, and title screens, optional dynamic reverb, soundfont MIDI, OPL emulation, many more music and sound formats, and MPEG video. Its README showcases mods made for it, such as Operation: Arctic Wolf Revisited and Aliens: Stranded. The latest release is 1.53 (July 11), with downloads for 32- and 64-bit Windows and for Linux; on macOS and the BSDs you build it from source. Its website also has a browser version, which comes with Freedoom Phase 2 and Blasphemer.

You needThe data files (IWADs) from your own copy of Doom, Doom II, Heretic, or another supported game; with the free Freedoom or Blasphemer IWADs no copy is needed. Plus Windows 7 or later, Linux (x86 or ARM), macOS (Intel or Apple silicon), or BSD.

★ 103 · 2026-10-19 View →
Source port Playable

Doom / Heretic / Hexen (Russian Doom)

Russian-Doom/russian-doom

Russian Doom: a limit-removing source port of Doom, Heretic, and Hexen. It continues the Russian Doom and International Doom codebase maintained by Leonid Murin (Dasperal), builds on Chocolate Doom and Crispy Doom with significant additions from Doom Retro, and is distributed with their authors’ approval. It fixes numerous bugs of the original games, renders at enhanced 640×400 and 1280×800 resolutions, has improved palettes and many optional aesthetic enhancements, and offers the most complete translation into Russian possible. The latest numbered version is 6.3 (October 29, 2023), which gathers the changes made before International Doom 7.0 abandoned this code; its builds are for 32-bit and 64-bit Windows, and on Linux there is an AUR package or you compile it. The repository is still active (last change on May 11, 2026). A separate version exists for DOS. Besides the code, the repository includes about twenty WAD files in src/base with resources for the three games; among them, doom-beta.wad, doom-jaguar.wad, and hexen-psx.wad (4 to 6 MB each) carry maps and graphics from the Doom beta, Doom for the Jaguar, and Hexen for the PlayStation. test_data also holds three test WADs (DOOM1.WAD, HERETIC1.WAD, and hexen.wad, about 19 MB).

You needThe files (IWAD) from your own copy of Doom, Doom II, Heretic, or Hexen, depending on which game you want to play; the README points to the project’s wiki for details. Plus 32-bit or 64-bit Windows, or Linux.

★ 89 · 2026-05-11 View →
Source port Playable Stalled · 2 years

Doom (Calico)

team-eternity/calico-doom

Calico: a PC port of the Atari Jaguar Doom codebase (the console is listed as “other” in the catalog), meant to play that version as it was with as few changes as possible. It’s by James Haley of Team Eternity, built from id Software’s Jaguar Doom source code. Haley reverse-engineered the renderer’s GAS assembly files, written in a custom assembly language for the Tom and Jerry chips on the console’s board, and checked the gameplay code against the 3DO version and Doom 64 EX, which share about 99% of it. It accepts the game’s ROM or the jagdoom.wad extracted from it, and emulates the console’s EEPROM. Version 2.0 (January 31, 2021) added gamepad and mouse support, more flexible controls (separate use and strafe-on, directional strafing, previous and next weapon), an optional OpenGL 4.0 renderer with shader support, enabled by default, the -fast, -nomonsters, -warp, and -skill parameters, and the calico-config setup utility. It still has no music or multiplayer, and demos desync. The original code is MIT-licensed, but code taken from Jaguar Doom remains under the license of that source release, which isn’t compatible with free software.

You needYour own uncompressed Atari Jaguar Doom ROM (autodetected if it’s named doom.jag) or the jagdoom.wad extracted from it; the README notes that you need a Jaguar cartridge backup device to get it legally. Plus Windows (version 2.0 ships the executable in a 1.2 MB zip) or build it yourself.

★ 57 · 2024-01-10 View →

Installs with

Questions

Can you play Doom natively on PC?

Yes. The catalog has 14 ports, and 10 of them are fully playable.

What do I need to play it?

Your own copy of Doom (DOS). Recompendium only links projects that don’t distribute the game, and each entry says which version or region you need.

Which one is the most popular?

GZDoom, with 3,123 stars on GitHub.