Doom source port
Encyclopedia
A Doom source port is a source port
Source port
A source port is a software project based on the source code of a computer game's engine that allows the game to be played on operating systems or computing platforms with which the game was not originally compatible. Source ports are created by fans after the original developer hands over the...

 of id Tech 1
Id Tech 1
- See also :*List of game engines*First person shooter engine*id Tech*Doom engine*Doom *Quake engine*Quake *List of first-person shooter engines...

, the game engine
Game engine
A game engine is a system designed for the creation and development of video games. There are many game engines that are designed to work on video game consoles and personal computers...

 used by the video game Doom. The term usually denotes a modification made by Doom fans, as opposed to any of the official Doom versions
Versions and ports of Doom
Doom is one of the most widely ported video games in the first-person shooter genre: starting with the original MS-DOS version , it has been released officially for 7 computer operating systems, 9 video game consoles, 2 handheld game consoles, and 1 cell phone...

 produced by id Software
Id Software
Id Software is an American video game development company with its headquarters in Richardson, Texas. The company was founded in 1991 by four members of the computer company Softdisk: programmers John Carmack and John Romero, game designer Tom Hall, and artist Adrian Carmack...

 or affiliated companies.

Doom source release

The source code
Source code
In computer science, source code is text written using the format and syntax of the programming language that it is being written in. Such a language is specially designed to facilitate the work of computer programmers, who specify the actions to be performed by a computer mostly by writing source...

 for the Doom engine was released to the public in 1997. Although Doom was originally created for MS-DOS
MS-DOS
MS-DOS is an operating system for x86-based personal computers. It was the most commonly used member of the DOS family of operating systems, and was the main operating system for IBM PC compatible personal computers during the 1980s to the mid 1990s, until it was gradually superseded by operating...

, the original source release was for the subsequent Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

 version. This was primarily due to use of a proprietary sound library in the DOS version. Since the source code had to be initially ported
Porting
In computer science, porting is the process of adapting software so that an executable program can be created for a computing environment that is different from the one for which it was originally designed...

 back to DOS, the term "source port" was used. Out of custom, this term has come to be used for all Doom source modifications, even those that are not technically ports to another platform.

The original purpose of source ports was cross-platform compatibility, but shortly after the release of the Doom source, programmers were correcting old, unaddressed Doom bugs and deficiencies in their own source ports, and later on added more source code 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
Executable
In computing, an executable file causes a computer "to perform indicated tasks according to encoded instructions," as opposed to a data file that must be parsed by a program to be meaningful. These instructions are traditionally machine code instructions for a physical CPU...

 form. As a consequence of the source code for GLDoom, the first port to add OpenGL
OpenGL
OpenGL is a standard specification defining a cross-language, cross-platform API for writing applications that produce 2D and 3D computer graphics. The interface consists of over 250 different function calls which can be used to draw complex three-dimensional scenes from simple primitives. OpenGL...

 graphics to Doom, being lost in a hard disk crash, the code was re-released in 1999 under the GNU General Public License
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

 after requests from the community.

Major source ports

These are source ports that have garnered a large following in terms of number of users or number of available modifications, or those that possess unique and interesting features, some of which have been considered technically impossible within the confines of the Doom engine at varying times.

Boom and derivations

Boom was a port
Source port
A source port is a software project based on the source code of a computer game's engine that allows the game to be played on operating systems or computing platforms with which the game was not originally compatible. Source ports are created by fans after the original developer hands over the...

 of the Doom source code by TeamTNT
TeamTNT
TeamTNT is a group of mappers who created the TNT: Evilution episode of Final Doom, as well as several free level packs and developer resources for Doom II...

. 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 day Doom engines (such as ZDoom and Doom Legacy).

Although Boom is simpler than the other ports and is no longer updated, it is often preferred, as it has stayed relatively close to the behavior of the original games, including demo
Speedrun
A speedrun is a play-through, or recording thereof, of a whole video game or a selected part of it performed with the intent of completing it as fast as possible, optionally under certain prerequisites, mainly for the purposes of entertainment and competition...

 support. However, some of the bug fixes and behavior changes of other ports may unbalance how maps made for the original games play, giving players certain advantages or disadvantages.

Eternity Engine

The Eternity Engine is a Windows source port licensed under the GNU General Public License
GNU General Public License
The GNU General Public License is the most widely used free software license, originally written by Richard Stallman for the GNU Project....

. It was originally meant to power a Doom total conversion, but after that project went on hiatus (eventually being canceled) 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
Heretic (computer game)
Heretic is a fantasy first-person shooter video game created by Raven Software, published by id Software, and distributed by GT Interactive in 1994. It was made available on Steam on August 3, 2007....

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
Artificial intelligence
Artificial intelligence is the intelligence of machines and the branch of computer science that aims to create it. AI textbooks define the field as "the study and design of intelligent agents" where an intelligent agent is a system that perceives its environment and takes actions that maximize its...

, emulation
Emulator
In computing, an emulator is hardware or software or both that duplicates the functions of a first computer system in a different second computer system, so that the behavior of the second system closely resembles the behavior of the first system...

 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
Lee Killough (programmer)
Lee Killough is an American programmer who has contributed to the development of source ports for the computer game Doom. He was part of the Boom team and is the author of Marine's Best Friend....

 in 1998 and is now discontinued. 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. In 2004 James Haley and Steven McGranahan ported Marine's Best Friend to Windows as WinMBF.

PrBoom

PrBoom is a Doom source port derived from Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

 and Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

 ports of Boom and MBF that includes an optional OpenGL
OpenGL
OpenGL is a standard specification defining a cross-language, cross-platform API for writing applications that produce 2D and 3D computer graphics. The interface consists of over 250 different function calls which can be used to draw complex three-dimensional scenes from simple primitives. OpenGL...

 renderer as well as options allowing it to restore the behavior of earlier executables (such as Doom 1.9
Versions and ports of Doom
Doom is one of the most widely ported video games in the first-person shooter genre: starting with the original MS-DOS version , it has been released officially for 7 computer operating systems, 9 video game consoles, 2 handheld game consoles, and 1 cell phone...

, Boom, and MBF) in essential ways. Initially designed for use in Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

 and Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

, it has also been ported to Dreamcast, GP2X
GP2X
The GP2X is an open-source, Linux-based handheld video game console and portable media player developed by South Korean company GamePark Holdings. It was released on November 10, 2005, in South Korea only....

, Nintendo DS
Nintendo DS
The is a portable game console produced by Nintendo, first released on November 21, 2004. A distinctive feature of the system is the presence of two separate LCD screens, the lower of which is a touchscreen, encompassed within a clamshell design, similar to the Game Boy Advance SP...

, Wii
Wii
The Wii is a home video game console released by Nintendo on November 19, 2006. As a seventh-generation console, the Wii primarily competes with Microsoft's Xbox 360 and Sony's PlayStation 3. Nintendo states that its console targets a broader demographic than that of the two others...

, and Rockbox
Rockbox
Rockbox is a replacement for the standard firmware in various forms of digital audio players . It offers an alternative to the player's operating system, in many cases without removing the original firmware, which provides a plug-in architecture for adding various enhancements and functions...

. A variation named PrBoom+ provides enhanced demo recording and viewing capabilities. id Software's official Doom iPhone port is based on PrBoom. The source port is packaged in the Ubuntu Software Center
Ubuntu Software Center
Ubuntu Software Center is a computer program for browsing, installing and removing software on the Ubuntu operating system. Based upon the GNOME application, gnome-app-install, which is similar in function and appearance, it serves as a GTK+ graphical user interface front-end to the Advanced...

 as well as Fedora's
Fedora (operating system)
Fedora is a RPM-based, general purpose collection of software, including an operating system based on the Linux kernel, developed by the community-supported Fedora Project and sponsored by Red Hat...

 RPM
RPM Package Manager
RPM Package Manager is a package management system. The name RPM variously refers to the .rpm file format, files in this format, software packaged in such files, and the package manager itself...

 software repository alongside Freedoom
Freedoom
Freedoom is a free Doom engine based first-person shooter game currently under development. The game is currently in an alpha stage and many features are missing, for example some monsters and other sprites are replaced by placeholder images, some levels are missing, and some levels have no music....

.

Doomsday Engine and derivations

The Doomsday Engine is a GPLv2-licensed source port that runs on Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

, Mac OS X
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...

 and Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

. The port also supports Heretic
Heretic (computer game)
Heretic is a fantasy first-person shooter video game created by Raven Software, published by id Software, and distributed by GT Interactive in 1994. It was made available on Steam on August 3, 2007....

and Hexen
Hexen
Hexen is a first-person shooter video game developed by Raven Software, published by id Software, and distributed by GT Interactive beginning on September 30, 1995. It is the sequel to 1994's Heretic, and the second game in the Serpent Riders series...

. Its hardware-accelerated engine supports 3D models, object and movement smoothing, shadows, dynamic lighting, 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).

Risen3D

Risen3D is a Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

 only fork
Fork (software development)
In software engineering, a project fork happens when developers take a legal copy of source code from one software package and start independent development on it, creating a distinct piece of software...

 of the Doomsday Engine (based on v1.7.8 released on March 15, 2003). It was originally known as Boomsday as it only added support Boom map editing features.

DOSDoom and derivations

DOSDoom was one of the first Doom source ports, created by taking the original Linux release of the Doom source code and porting 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, such as translucency, high resolution, and 16-bit color rendering.

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
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...

 ports. It has also evolved to support many Boom features and 3D acceleration. It also adds a few new features, notably the ability for levels to contain floors directly over floors, which means levels are not required to be strictly 2D as in the original Doom.

EDGE

Enhanced Doom Gaming Engine, or EDGE, is a port derived from DOSDoom. The most attractive feature of EDGE is its DDF system, which describes all game behavior inside text files external to the executable file. As a result, it is popular among Modifiers. who use the extensibility to add many new weapons and features with many fewer of the limits present in other source ports. EDGE includes ports to many operating systems, including MS-DOS, Windows, Linux, BeOS, Mac OS X.

Vavoom

Vavoom is a source port created by merging the Doom, Heretic, and Hexen source trees to create a unified executable. It also features bits of the Quake source (used predominantly for networking and rendering), and was the first port to support Strife. It has been in development since September 1999, and was first released in June 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
Fedora (operating system)
Fedora is a RPM-based, general purpose collection of software, including an operating system based on the Linux kernel, developed by the community-supported Fedora Project and sponsored by Red Hat...

 RPM
RPM Package Manager
RPM Package Manager is a package management system. The name RPM variously refers to the .rpm file format, files in this format, software packaged in such files, and the package manager itself...

 software repository alongside free
Free software
Free software, software libre or libre software is software that can be used, studied, and modified without restriction, and which can be copied and redistributed in modified or unmodified form either without restriction, or with restrictions that only ensure that further recipients can also do...

 installers that grab the shareware
Shareware
The term shareware is a proprietary software that is provided to users without payment on a trial basis and is often limited by any combination of functionality, availability, or convenience. Shareware is often offered as a download from an Internet website or as a compact disc included with a...

 levels for all the games used by the engine by default.

ZDoom and derivations

ZDoom is a source port targeted at Microsoft Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

 and Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

. It is one of the most advanced and featureful Doom ports from an editing perspective, supporting Boom editing extensions, plus all the extensions made by the Hexen engine, as well as many other new features. In addition to Doom, it supports Chex Quest
Chex Quest
Chex Quest is a non-violent first-person shooter video game created in 1996 by Digital Café as a Chex cereal promotion aimed at children aged 9 and up...

, Heretic
Heretic (computer game)
Heretic is a fantasy first-person shooter video game created by Raven Software, published by id Software, and distributed by GT Interactive in 1994. It was made available on Steam on August 3, 2007....

, Hexen
Hexen
Hexen is a first-person shooter video game developed by Raven Software, published by id Software, and distributed by GT Interactive beginning on September 30, 1995. It is the sequel to 1994's Heretic, and the second game in the Serpent Riders series...

, and Strife.

csDoom

csDoom, or Client/Server Doom, was a source port based on ZDoom built expressly for playing multiplayer games of Doom over the Internet. It was the first port to use client/server network code (from Quakeworld
QuakeWorld
QuakeWorld is an update to id Software's seminal multiplayer deathmatch game, Quake, that enhances the game's multiplayer features to allow people with dial-up modems to achieve greatly improved responsiveness when playing on Internet game servers...

), allowing players to join Doom servers on-the-fly. The project was closed and its source was published under GPL by the creator in early 2001. Source code was closed until that. (It was violating GPL license of Quakeworld, so its creator was forced to release it by John Carmack.)

GZDoom

GZDoom is a source port based on ZDoom that extends its feature set to include an OpenGL
OpenGL
OpenGL is a standard specification defining a cross-language, cross-platform API for writing applications that produce 2D and 3D computer graphics. The interface consists of over 250 different function calls which can be used to draw complex three-dimensional scenes from simple primitives. OpenGL...

 renderer. It also boasts 3D floor support compatible with Doom Legacy and Vavoom, 360 degree skyboxes, 3D model support, and other features.

Skulltag

Skulltag is one of the multiplayer-centric Doom ports that is based on (G)ZDoom. It adds 32-player multiplayer and different game modes: standard types such as deathmatch
Deathmatch
Deathmatch may refer to:*The Death Match, a wartime association football match in 1942 between Soviet POWs and Nazi soldiers*Hardcore wrestling, a form of professional wrestling that eschews traditional concepts of match rules...

 and capture the flag
Capture the flag
Capture the Flag is a traditional outdoor sport generally played by children, where two teams each have a flag and the objective is to capture the other team's flag, located at the team's "base," and bring it safely back to their own base...

, and other modes such as co-operative waves and invasion maps.

Chocolate Doom

Chocolate Doom is a source port for Windows, Linux, and other modern operating systems that is designed to behave as closely as possible to the original DOS executable ("Vanilla
Vanilla software
Vanilla software is computer software that is not customized from its delivered form - i.e. it is used without any customizations applied to it...

 Doom"), going as far as to duplicate bugs found in the DOS executable, even bugs that make the game crash
Crash (computing)
A crash in computing is a condition where a computer or a program, either an application or part of the operating system, ceases to function properly, often exiting after encountering errors. Often the offending program may appear to freeze or hang until a crash reporting service documents...

. This involves more than just leaving the bugs in the source code. Several bugs present in the DOS version (for example, the sky bug in Doom II) were fixed in the released Doom source code, so these bugs were re-created for Chocolate Doom. As it is designed to be as close as possible to the DOS executable, it has no new features and lacks high resolution support. It supports OPL3
Yamaha YMF262
The Yamaha YMF262, also known as the OPL3 , is an FM synthesis sound chip. It is an improved version of the Yamaha YM3812 , adding the following features:*twice as many channels...

 music emulation, as well as the standard MIDI output on its host operating system. It is a popular test engine for level
Doom WAD
Doom WAD format is default format of package files for the video game Doom or its sequel Doom II, that are containing sprites, levels, and game data. WAD stands for Where's All the Data?...

 designers, and among players who prefer unmodified Doom. By default it simulates the behavior of doom.exe version 1.9 running under Windows 98
Windows 98
Windows 98 is a graphical operating system by Microsoft. It is the second major release in the Windows 9x line of operating systems. It was released to manufacturing on 15 May 1998 and to retail on 25 June 1998. Windows 98 is the successor to Windows 95. Like its predecessor, it is a hybrid...

.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK