Difference between revisions of "Source port"

From DoomWiki.org

[checked revision][checked revision]
(Desktop: chocolate doom has been ported to Amiga OS 4.x and BeOS (Haiku))
m (swapped 3DGE -> EDGE)
(39 intermediate revisions by 18 users not shown)
Line 7: Line 7:
 
The original purpose of source ports was cross-platform compatibility, but shortly after the release of the source code, programmers were correcting old, unaddressed Doom [[Engine bug|bugs]] and deficiencies in their own source ports, and later began adding [[:Category:New features|new features]] to alter gameplay.
 
The original purpose of source ports was cross-platform compatibility, but shortly after the release of the source code, programmers were correcting old, unaddressed Doom [[Engine bug|bugs]] and deficiencies in their own source ports, and later began adding [[:Category:New features|new features]] to alter gameplay.
  
The source code was originally released under a proprietary [[license]] which prohibited commercial use and did not require programmers to provide the source code for the modifications they released in [[Wikipedia:executable|executable]] form. As a consequence of the source code for [[glDoom]], the first port to add [[Wikipedia:OpenGL|OpenGL]] graphics to Doom, being lost in a [[Wikipedia:Head crash|hard disk crash]], the code was re-released in 1999 under the [[Wikipedia:GPL|GNU General Public License]] after requests from the community (all of the original Doom source code on this [[wiki]] is covered by the GNU GPL).
+
The source code was originally released under a proprietary [[license]] which prohibited commercial use and did not require programmers to provide the source code for the modifications they released in [[executable file|executable]] form. As a consequence of the source code for [[glDoom]], the first port to add [[Wikipedia:OpenGL|OpenGL]] graphics to Doom, being lost in a [[Wikipedia:Head crash|hard disk crash]], the code was re-released in 1999 under the [[Wikipedia:GPL|GNU General Public License]] after requests from the community (all of the original Doom source code on this [[wiki]] is covered by the GNU GPL).
  
 
As of today, the majority of Doom source ports are open source. The GNU GPL requires that authors who use GPL code in their software must release the modified source code as well.
 
As of today, the majority of Doom source ports are open source. The GNU GPL requires that authors who use GPL code in their software must release the modified source code as well.
Line 15: Line 15:
 
=List of source ports=
 
=List of source ports=
 
==Desktop==
 
==Desktop==
{| class="sortable" border="1" style="text-align: center; font-size: 85%; width: auto; table-layout: fixed;"
+
{| {{PrettySortable}}
 
|+Operating system support across source ports
 
|+Operating system support across source ports
 
! style="width: 16em" |
 
! style="width: 16em" |
Line 27: Line 27:
 
!Atari MiNT
 
!Atari MiNT
 
!BeOS
 
!BeOS
 +
!First release
 +
!Last Updated
 
|-
 
|-
 
![[ADoom]]
 
![[ADoom]]
Line 38: Line 40:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|1997
 +
|2011
 
|-
 
|-
 
![[ADoomPPC]]
 
![[ADoomPPC]]
Line 49: Line 53:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|1998
 +
|2000
 
|-
 
|-
 
![[AmigaDoom]]
 
![[AmigaDoom]]
Line 60: Line 66:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[ATB Doom]]
 
![[ATB Doom]]
Line 71: Line 79:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|1998
 
|-
 
|-
![[BAD MOOD]]
+
![[Bad Mood]]
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
Line 82: Line 92:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|1995
 +
|2015-01-05
 
|-
 
|-
 
![[BeOS Heretic]]
 
![[BeOS Heretic]]
Line 93: Line 105:
 
|{{no}}
 
|{{no}}
 
|{{yes}}
 
|{{yes}}
 +
|
 +
|
 
|-
 
|-
 
![[BeOS Hexen]]
 
![[BeOS Hexen]]
Line 104: Line 118:
 
|{{no}}
 
|{{no}}
 
|{{yes}}
 
|{{yes}}
 +
|
 +
|
 
|-
 
|-
 
![[Boom]]
 
![[Boom]]
Line 115: Line 131:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|1998-04-17
 +
|{{:Boom/Date}}
 
|-
 
|-
 
![[BZDoom]]
 
![[BZDoom]]
Line 126: Line 144:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|> 2008-05-29
 
|-
 
|-
 
![[CDoom]]
 
![[CDoom]]
Line 137: Line 157:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[CGDoom]]
 
![[CGDoom]]
Line 148: Line 170:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[Chocolate Doom]]
 
![[Chocolate Doom]]
Line 159: Line 183:
 
|{{no}}
 
|{{no}}
 
|{{yes}}
 
|{{yes}}
 +
|2005
 +
|{{:Chocolate Doom/Date}}
 +
|-
 +
![[Crispy Doom]]
 +
|{{no}}
 +
|{{yes}}
 +
|{{yes}}
 +
|{{yes}}
 +
|{{no}}
 +
|{{yes}}
 +
|{{no}}
 +
|{{no}}
 +
|{{yes}}
 +
|2014-03-10
 +
|{{:Crispy Doom/Date}}
 
|-
 
|-
 
![[csDoom]]
 
![[csDoom]]
Line 170: Line 209:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|2000
 +
|2006
 
|-
 
|-
 
![[CTFDoom]]
 
![[CTFDoom]]
Line 181: Line 222:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|1998
 +
|1998
 
|-
 
|-
 
![[Doom!]]
 
![[Doom!]]
Line 192: Line 235:
 
|{{no}}
 
|{{no}}
 
|{{yes}}
 
|{{yes}}
 +
|
 +
|
 
|-
 
|-
 
![[Doom3D]]
 
![[Doom3D]]
Line 203: Line 248:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[Doom64 EX]]
 
![[Doom64 EX]]
Line 214: Line 261:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|2008
 +
|{{:Doom64 EX/Date}}
 
|-
 
|-
 
![[DoomAttack]]
 
![[DoomAttack]]
Line 225: Line 274:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[DoomDIVE]]
 
![[DoomDIVE]]
Line 236: Line 287:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[DoomGL]]
 
![[DoomGL]]
Line 247: Line 300:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|1999
 +
|1999
 
|-
 
|-
 
![[Doom Legacy]]
 
![[Doom Legacy]]
 +
|{{no}}
 +
|{{partial}}
 +
|{{partial}}
 
|{{yes}}
 
|{{yes}}
|{{yes}}
 
|{{yes}}
 
|{{yes}}
 
|{{yes}}
 
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|{{no}}
 +
|1998
 +
|{{:Doom Legacy/Date}}
 
|-
 
|-
 
![[Doom Plus]]
 
![[Doom Plus]]
Line 269: Line 326:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 +
|-
 +
![[Doom Retro]]
 +
|{{no}}
 +
|{{yes}}
 +
|{{partial}}
 +
|{{partial}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|2013
 +
|{{:Doom Retro/Date}}
 
|-
 
|-
 
![[Doomsday]]
 
![[Doomsday]]
Line 280: Line 352:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|1999
 +
|{{:Doomsday/Date}}
 
|-
 
|-
 
![[Doom SysAdmin Tool]]
 
![[Doom SysAdmin Tool]]
Line 291: Line 365:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[DOSDoom]]
 
![[DOSDoom]]
Line 302: Line 378:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|1997
 +
|1999
 
|-
 
|-
 
![[DxHexen]]
 
![[DxHexen]]
Line 313: Line 391:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[EDGE]]
 
![[EDGE]]
 
|{{yes}}
 
|{{yes}}
 
|{{yes}}
 
|{{yes}}
|{{no}}
+
|{{yes}}
 
|{{yes}}
 
|{{yes}}
 
|{{no}}
 
|{{no}}
Line 324: Line 404:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|2000
 +
|{{:EDGE/Date}}
 
|-
 
|-
 
![[Eternity Engine]]
 
![[Eternity Engine]]
Line 335: Line 417:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|2001
 +
|{{:Eternity Engine/Date}}
 
|-
 
|-
 
![[Fusion]]
 
![[Fusion]]
Line 346: Line 430:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|2002
 +
|2002
 
|-
 
|-
 
![[ggiDoom]]
 
![[ggiDoom]]
Line 357: Line 443:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
![[glBoom]]
+
![[GLBoom]]
 
|{{no}}
 
|{{no}}
 
|{{yes}}
 
|{{yes}}
Line 368: Line 456:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
![[glDoom]]
+
![[GLDoom]]
 
|{{no}}
 
|{{no}}
 
|{{yes}}
 
|{{yes}}
Line 379: Line 469:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|1998-12-23
 
|-
 
|-
![[glHeretic]]
+
![[GLHeretic]]
 
|{{no}}
 
|{{no}}
 
|{{yes}}
 
|{{yes}}
Line 390: Line 482:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
![[glHexen]]
+
![[GLHexen]]
 
|{{no}}
 
|{{no}}
 
|{{yes}}
 
|{{yes}}
Line 401: Line 495:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 +
|-
 +
![[GLOOME]]
 +
|{{no}}
 +
|{{yes}}
 +
|{{no}}
 +
|{{yes}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|2015
 +
|
 
|-
 
|-
 
![[GZDoom]]
 
![[GZDoom]]
 
|{{no}}
 
|{{no}}
 
|{{yes}}
 
|{{yes}}
 +
|{{yes}}
 +
|{{yes}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|2005
 +
|{{:GZDoom/Date}}
 +
|-
 +
![[GZDoom-GPL]]
 
|{{no}}
 
|{{no}}
 +
|{{yes}}
 
|{{no}}
 
|{{no}}
 +
|{{yes}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
Line 412: Line 534:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|2015
 +
|
 
|-
 
|-
 
![[Hexen32]]
 
![[Hexen32]]
Line 423: Line 547:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|1999-10-23
 
|-
 
|-
 
![[HexenDos]]
 
![[HexenDos]]
Line 434: Line 560:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[Hexen (OS/2)]]
 
![[Hexen (OS/2)]]
Line 445: Line 573:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[Hexetic]]
 
![[Hexetic]]
Line 456: Line 586:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|1999-02-02
 
|-
 
|-
 
![[HHeretic]]
 
![[HHeretic]]
Line 467: Line 599:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[HHexen]]
 
![[HHexen]]
Line 478: Line 612:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[IAS Doom]]
 
![[IAS Doom]]
Line 489: Line 625:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[JDP]]
 
![[JDP]]
Line 500: Line 638:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|> 2001-09-29
 +
|-
 +
![[LinBoom]]
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|{{yes}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|{{:LinBoom/Date}}
 +
|{{:LinBoom/Date}}
 
|-
 
|-
 
![[Linux Heretic]]
 
![[Linux Heretic]]
Line 511: Line 664:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[Linux Hexen]]
 
![[Linux Hexen]]
Line 522: Line 677:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|1999-09-29
 +
|
 
|-
 
|-
 
![[LsdlDoom]]
 
![[LsdlDoom]]
Line 533: Line 690:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[LsDoom]]
 
![[LsDoom]]
Line 544: Line 703:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[LxDoom]]
 
![[LxDoom]]
Line 555: Line 716:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|2000-04-02
 
|-
 
|-
 
![[Marine's Best Friend]]
 
![[Marine's Best Friend]]
Line 566: Line 729:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|2014-09-23
 
|-
 
|-
 
![[MidDoom]]
 
![[MidDoom]]
Line 577: Line 742:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[NetDoom]]
 
![[NetDoom]]
Line 588: Line 755:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
![[NTDoom]]
+
![[NTDOOM]]
 
|{{no}}
 
|{{no}}
 
|{{yes}}
 
|{{yes}}
Line 599: Line 768:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|1998-01-29
 
|-
 
|-
 
![[Odamex]]
 
![[Odamex]]
Line 610: Line 781:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|2007
 +
|{{:Odamex/Date}}
 
|-
 
|-
 
![[PDoom]]
 
![[PDoom]]
Line 621: Line 794:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[PmDoom]]
 
![[PmDoom]]
Line 632: Line 807:
 
|{{yes}}
 
|{{yes}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|2006-07-11
 
|-
 
|-
 
![[PmHeretic]]
 
![[PmHeretic]]
Line 643: Line 820:
 
|{{yes}}
 
|{{yes}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[PmHexen]]
 
![[PmHexen]]
Line 654: Line 833:
 
|{{yes}}
 
|{{yes}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[PowerDoom]]
 
![[PowerDoom]]
Line 665: Line 846:
 
|{{no}}
 
|{{no}}
 
|{{yes}}
 
|{{yes}}
 +
|
 +
|
 
|-
 
|-
 
![[psDoom]]
 
![[psDoom]]
Line 676: Line 859:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[PsiDoom]]
 
![[PsiDoom]]
Line 687: Line 872:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[PrBoom]]
 
![[PrBoom]]
Line 698: Line 885:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|1998
 +
|{{:PrBoom/Date}}
 
|-
 
|-
 
![[PrBoom+]]
 
![[PrBoom+]]
Line 709: Line 898:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|2004
 +
|{{:PrBoom+/Date}}
 +
|-
 +
![[QZDoom]]
 +
|{{no}}
 +
|{{yes}}
 +
|{{yes}}
 +
|{{yes}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|2016
 +
|{{:QZDoom/Date}}
 
|-
 
|-
 
![[ReMooD]]
 
![[ReMooD]]
Line 720: Line 924:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|2008
 +
|{{:ReMooD/Date}}
 
|-
 
|-
 
![[Risen3D]]
 
![[Risen3D]]
Line 731: Line 937:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|2003
 +
|{{:Risen3D/Date}}
 
|-
 
|-
 
![[RORDoom]]
 
![[RORDoom]]
Line 742: Line 950:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|2000
 +
|
 
|-
 
|-
 
![[SDL Doom]]
 
![[SDL Doom]]
Line 753: Line 963:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|1998
 +
|1998
 
|-
 
|-
 
![[SDL Hexen]]
 
![[SDL Hexen]]
Line 764: Line 976:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[SGI Doom]]
 
![[SGI Doom]]
Line 775: Line 989:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[Skulltag]]
 
![[Skulltag]]
Line 786: Line 1,002:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|1999
 +
|{{:Skulltag/Date}}
 
|-
 
|-
 
![[SvStrife]]
 
![[SvStrife]]
Line 797: Line 1,015:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[Smack My Marine Up]]
 
![[Smack My Marine Up]]
 +
|{{yes}}
 
|{{yes}}
 
|{{yes}}
 
|{{no}}
 
|{{no}}
 +
|{{yes}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
Line 806: Line 1,028:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
|{{no}}
+
|1998
|{{no}}
+
|2000-08-17
 
|-
 
|-
 
![[TASDOOM]]
 
![[TASDOOM]]
Line 819: Line 1,041:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[TASMBF]]
 
![[TASMBF]]
Line 830: Line 1,054:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[Vavoom]]
 
![[Vavoom]]
Line 841: Line 1,067:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|1999
 +
|{{:Vavoom/Date}}
 
|-
 
|-
 
![[VDoomPPC]]
 
![[VDoomPPC]]
Line 852: Line 1,080:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[WDMP]]
 
![[WDMP]]
Line 863: Line 1,093:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[wHeretic]]
 
![[wHeretic]]
Line 874: Line 1,106:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[Win32 Doom]]
 
![[Win32 Doom]]
Line 885: Line 1,119:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[WinDoom]]
 
![[WinDoom]]
Line 896: Line 1,132:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[WinHeretic]]
 
![[WinHeretic]]
Line 907: Line 1,145:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[WinHeretic Universal Save]]
 
![[WinHeretic Universal Save]]
Line 918: Line 1,158:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[WinHexen]]
 
![[WinHexen]]
Line 929: Line 1,171:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[WinMBF]]
 
![[WinMBF]]
Line 940: Line 1,184:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[X-Doom]]
 
![[X-Doom]]
Line 951: Line 1,197:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[XDoom]]
 
![[XDoom]]
Line 962: Line 1,210:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[XFree86/OS2 Doom]]
 
![[XFree86/OS2 Doom]]
Line 973: Line 1,223:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 +
|-
 +
![[Zandronum]]
 +
|{{no}}
 +
|{{yes}}
 +
|{{yes}}
 +
|{{yes}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|{{no}}
 +
|2012
 +
|{{:Zandronum/Date}}
 
|-
 
|-
 
![[ZDaemon]]
 
![[ZDaemon]]
Line 984: Line 1,249:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|2001
 +
|{{:ZDaemon/Date}}
 
|-
 
|-
 
![[ZDoom]]
 
![[ZDoom]]
Line 995: Line 1,262:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|1998-03-06
 +
|{{:ZDoom/Date}}
 
|-
 
|-
 
![[ZDoomGL]]
 
![[ZDoomGL]]
Line 1,006: Line 1,275:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|2005
 
|-
 
|-
 
![[ZhaDoom]]
 
![[ZhaDoom]]
Line 1,017: Line 1,288:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|-
 
|-
 
![[ZhaDoomPPC]]
 
![[ZhaDoomPPC]]
Line 1,028: Line 1,301:
 
|{{no}}
 
|{{no}}
 
|{{no}}
 
|{{no}}
 +
|
 +
|
 
|}
 
|}
  
 
==Console==
 
==Console==
Note that official ports of Doom to various gaming consoles exist.
+
Note that official ports of Doom to various gaming consoles also exist.
 +
*[[EDGE]] (Sega Dreamcast)
 +
*[[64Doom]] (Nintendo 64)
 
*[[Boom]] (GP2X, etc.)
 
*[[Boom]] (GP2X, etc.)
 
*[[DoomDC]] (Sega Dreamcast)
 
*[[DoomDC]] (Sega Dreamcast)
 
*[[Doom PSP]] (Sony PlayStation Portable)
 
*[[Doom PSP]] (Sony PlayStation Portable)
 
*[[DoomX]] (Xbox)
 
*[[DoomX]] (Xbox)
*[[dsDoom]] (Nintendo DS)
+
*[[DS Doom]] (Nintendo DS)
 
*[[dsHeretic]] (Nintendo DS)
 
*[[dsHeretic]] (Nintendo DS)
 
*[[nxDoom]] (Sega Dreamcast)
 
*[[nxDoom]] (Sega Dreamcast)
Line 1,043: Line 1,320:
 
==Handheld==
 
==Handheld==
  
{| class="sortable" border="1" style="text-align: center; font-size: 85%; width: auto; table-layout: fixed;"
+
{| {{PrettySortable}}
 
|+Operating system support across source ports
 
|+Operating system support across source ports
 
! style="width: 16em" |
 
! style="width: 16em" |
Line 1,064: Line 1,341:
 
|-
 
|-
 
![[CellDoom]]
 
![[CellDoom]]
!{{no}}
 
!{{yes}}
 
!{{no}}
 
!{{no}}
 
|-
 
![[Chocolate Doom]]
 
 
!{{no}}
 
!{{no}}
 
!{{yes}}
 
!{{yes}}
Line 1,152: Line 1,423:
 
===Web-based===
 
===Web-based===
 
*A [http://www.newgrounds.com/portal/view/470460 Doom port] using Flash 10
 
*A [http://www.newgrounds.com/portal/view/470460 Doom port] using Flash 10
*[[Doomed Online]][http://code.google.com/p/doomedonline/]
+
*[[Doomed Online]]
  
 
===Game script===
 
===Game script===
Line 1,163: Line 1,434:
  
 
* {{Wikipedia|title=Doom source port}}
 
* {{Wikipedia|title=Doom source port}}
* [http://www.doomworld.com/vb/doom-general/42463-doom-on-your-cellphone-not-doom-rpg/ Doomworld forum thread] about unofficial cell phone versions
+
* {{dwforums|42463|Doomworld forum thread}} about unofficial cell phone versions
  
 
==See also==
 
==See also==
Line 1,171: Line 1,442:
  
 
==External links==
 
==External links==
* [http://www.doomworld.com/classicdoom/ports/ Doomworld: Source port downloads]
+
* [https://www.doomworld.com/classicdoom/ports/ Doomworld: Source port downloads]
 
* [http://files.drdteam.org/index.php/files/get/keiMSmNvY8/doom-engine-genealogy.png Genealogy of Doom source ports after 15 years chart]
 
* [http://files.drdteam.org/index.php/files/get/keiMSmNvY8/doom-engine-genealogy.png Genealogy of Doom source ports after 15 years chart]
* [http://www.doomworld.com/10years/ports/ Doomworld: Genealogy of Doom source ports after 10 years article]
+
* [https://www.doomworld.com/10years/ports/ Doomworld: Genealogy of Doom source ports after 10 years article]
* [http://code.google.com/p/doomedonline/ Doomed Online at Google Code]
+
* [https://code.google.com/archive/p/doomedonline/ Doomed Online at Google Code]
 +
** {{Archived link|http://code.google.com/p/doomedonline/|Wayback Machine copy, with source code download still working as of July 2017|http://web.archive.org/web/20150927233157/http://code.google.com/p/doomedonline/|archive.org}}
 
* [http://files.frashii.com/~sp00nz/Doom/download.php#Ports Doom for the Dreamcast]
 
* [http://files.frashii.com/~sp00nz/Doom/download.php#Ports Doom for the Dreamcast]
 
* Cell phone ports at ItPlaysDoom.com, via the [[Wikipedia:Internet Archive#Wayback Machine|Wayback Machine]]: [http://web.archive.org/web/20061026041214/http://www.itplaysdoom.com/ipd/archives/2005/08/nokia_9500_cell.html Nokia 9500], [http://web.archive.org/web/20070217012321/http://www.itplaysdoom.com/ipd/archives/2005/08/nokia_s60_and_s.html other Nokia models], [http://web.archive.org/web/20061025130859/http://www.itplaysdoom.com/ipd/archives/2005/08/microsoft_smart.html Microsoft Smartphone], [http://web.archive.org/web/20061025130804/http://www.itplaysdoom.com/ipd/archives/2005/08/audiovox_smt_56.html Audiovox SMT 5600], [http://web.archive.org/web/20061025130928/http://www.itplaysdoom.com/ipd/archives/2005/08/orange_spv_c550.html Orange SPV C550], [http://web.archive.org/web/20070217012331/http://www.itplaysdoom.com/ipd/archives/2005/08/edoom_for_the_s.html Sony Ericsson]
 
* Cell phone ports at ItPlaysDoom.com, via the [[Wikipedia:Internet Archive#Wayback Machine|Wayback Machine]]: [http://web.archive.org/web/20061026041214/http://www.itplaysdoom.com/ipd/archives/2005/08/nokia_9500_cell.html Nokia 9500], [http://web.archive.org/web/20070217012321/http://www.itplaysdoom.com/ipd/archives/2005/08/nokia_s60_and_s.html other Nokia models], [http://web.archive.org/web/20061025130859/http://www.itplaysdoom.com/ipd/archives/2005/08/microsoft_smart.html Microsoft Smartphone], [http://web.archive.org/web/20061025130804/http://www.itplaysdoom.com/ipd/archives/2005/08/audiovox_smt_56.html Audiovox SMT 5600], [http://web.archive.org/web/20061025130928/http://www.itplaysdoom.com/ipd/archives/2005/08/orange_spv_c550.html Orange SPV C550], [http://web.archive.org/web/20070217012331/http://www.itplaysdoom.com/ipd/archives/2005/08/edoom_for_the_s.html Sony Ericsson]

Revision as of 12:55, 1 October 2018

A source port is a port of the source code for the Doom engine. The term usually denotes a modification made by fans, as opposed to any of the officially licensed versions produced by id Software or affiliated companies.

The Doom source code was released to the public in 1997. Although Doom was originally created for DOS, the release was of the Linux version, and the source code had to be ported back to DOS and to other operating systems. Hence the term "source port", which out of custom also is used for those modifications which are not technically ports to another platform. The term itself originates from the first source port, DOSDoom and its 0.2 version.

Source ports have been created for a variety of PC operating systems, such as the 32-bit Windows family, Linux and the BSDs. By abstracting away the x86-specific code, ports have also been created for a large variety of other hardware platforms: PowerPC/Macintosh; the Game Park 32, a Korean hand-held; the Nokia 7650 and 9210 cell phones; the Sega Dreamcast; and any POSIX environment with the X windowing system.

The original purpose of source ports was cross-platform compatibility, but shortly after the release of the source code, programmers were correcting old, unaddressed Doom bugs and deficiencies in their own source ports, and later began adding new features to alter gameplay.

The source code was originally released under a proprietary license which prohibited commercial use and did not require programmers to provide the source code for the modifications they released in executable form. As a consequence of the source code for glDoom, the first port to add OpenGL graphics to Doom, being lost in a hard disk crash, the code was re-released in 1999 under the GNU General Public License after requests from the community (all of the original Doom source code on this wiki is covered by the GNU GPL).

As of today, the majority of Doom source ports are open source. The GNU GPL requires that authors who use GPL code in their software must release the modified source code as well.

Although the obligation does not apply to authors who used the previous non-GPL license, many authors voluntarily switched their projects to the GNU GPL.

List of source ports

Desktop

Operating system support across source ports
DOS Windows Macintosh *nix OS/2 Amiga Atari TOS Atari MiNT BeOS First release Last Updated
ADoom No No No No No Yes No No No 1997 2011
ADoomPPC No No No No No Yes No No No 1998 2000
AmigaDoom No No No No No Yes No No No
ATB Doom No Yes No No No No No No No 1998
Bad Mood No No No No No No Yes No No 1995 2015-01-05
BeOS Heretic No No No No No No No No Yes
BeOS Hexen No No No No No No No No Yes
Boom Yes No No No No No No No No 1998-04-17 1999-10-09
BZDoom No Yes No No No No No No No > 2008-05-29
CDoom Yes No No No No No No No No
CGDoom No Yes No Yes No No No No No
Chocolate Doom No Yes Yes Yes No Yes No No Yes 2005 2020-06-25
Crispy Doom No Yes Yes Yes No Yes No No Yes 2014-03-10 2023-03-31
csDoom No No No Yes No No No No No 2000 2006
CTFDoom Yes No No No No No No No No 1998 1998
Doom! No No No No No No No No Yes
Doom3D No Yes No No No No No No No
Doom64 EX No Yes No No No No No No No 2008 2014-02-17
DoomAttack No No No No No Yes No No No
DoomDIVE No No No No Yes No No No No
DoomGL No Yes No No No No No No No 1999 1999
Doom Legacy No Partial Partial Yes No No No No No 1998 2023-12-29
Doom Plus No Yes No No No No No No No
Doom Retro No Yes Partial Partial No No No No No 2013 2024-03-03
Doomsday No Yes Yes Yes No No No No No 1999 2021-02-04
Doom SysAdmin Tool No No No Yes No No No No No
DOSDoom Yes No No Yes No No No No No 1997 1999
DxHexen No Yes No No No No No No No
EDGE Yes Yes Yes Yes No No No No No 2000 2018-10-17
Eternity Engine No Yes Yes Yes No No No No No 2001 2021-01-27
Fusion Yes No No No No No No No No 2002 2002
ggiDoom No No No Yes No No No No No
GLBoom No Yes No No No No No No No
GLDoom No Yes No No No No No No No 1998-12-23
GLHeretic No Yes No Yes No No No No No
GLHexen No Yes No No No No No No No
GLOOME No Yes No Yes No No No No No 2015
GZDoom No Yes Yes Yes No No No No No 2005 2023-10-26
GZDoom-GPL No Yes No Yes No No No No No 2015
Hexen32 No Yes No No No No No No No 1999-10-23
HexenDos Yes No No No No No No No No
Hexen (OS/2) No No No No Yes No No No No
Hexetic Yes No No No No No No No No 1999-02-02
HHeretic No No No Yes No No No No No
HHexen No No No Yes No No No No No
IAS Doom No Yes No No No No No No No
JDP Yes No No No No No No No No > 2001-09-29
LinBoom No No No Yes No No No No No 1998-05-30 1998-05-30
Linux Heretic No No No Yes No No No No No
Linux Hexen No No No Yes No No No No No 1999-09-29
LsdlDoom No Yes No Yes No No No No No
LsDoom No No No Yes No No No No No
LxDoom No No No Yes No No No No No 2000-04-02
Marine's Best Friend Yes No No No No No No No No 2014-09-23
MidDoom Yes No No No No No No No No
NetDoom No Yes No No No No No No No
NTDOOM No Yes No No No No No No No 1998-01-29
Odamex No Yes Yes Yes No No No No No 2007 2023-08-10
PDoom Yes No No No No No No No No
PmDoom No No No No No No No Yes No 2006-07-11
PmHeretic No No No No No No No Yes No
PmHexen No No No No No No No Yes No
PowerDoom No Yes No Yes No No No No Yes
psDoom No No No Yes No No No No No
PsiDoom No No No No No Yes No No No
PrBoom No Yes Yes Yes No No No No No 1998 2008-11-09
PrBoom+ No Yes Yes Yes No No No No No 2004 2023-06-20
QZDoom No Yes Yes Yes No No No No No 2016 2018-06-08
ReMooD Yes Yes Yes Yes No No No No No 2008 2016-08-23
Risen3D No Yes No No No No No No No 2003 2021-12-17
RORDoom Yes No No No No No No No No 2000
SDL Doom No No No Yes No No No No No 1998 1998
SDL Hexen No No No Yes No No No No No
SGI Doom No No No Yes No No No No No
Skulltag No Yes Yes Yes No No No No No 1999 2010-11-08
SvStrife No Yes No Yes No No No No No
Smack My Marine Up Yes Yes No Yes No No No No No 1998 2000-08-17
TASDOOM Yes No No No No No No No No
TASMBF Yes No No No No No No No No
Vavoom Yes Yes No Yes No No No No No 1999 2010-12-31
VDoomPPC No No No No No Yes No No No
WDMP No Yes No No No No No No No
wHeretic No Yes No No No No No No No
Win32 Doom No Yes No No No No No No No
WinDoom No Yes No No No No No No No
WinHeretic No Yes No No No No No No No
WinHeretic Universal Save No Yes No No No No No No No
WinHexen No Yes No No No No No No No
WinMBF No Yes No No No No No No No
X-Doom No No No Yes No No No No No
XDoom No No No Yes No No No No No
XFree86/OS2 Doom No No No No Yes No No No No
Zandronum No Yes Yes Yes No No No No No 2012 2021-12-13
ZDaemon No Yes Yes Partial No No No No No 2001 2023-11-21
ZDoom No Yes Yes Yes No No No No No 1998-03-06 2016-02-22
ZDoomGL No Yes No No No No No No No 2005
ZhaDoom No No No No No Yes No No No
ZhaDoomPPC No No No No No Yes No No No

Console

Note that official ports of Doom to various gaming consoles also exist.

Handheld

Operating system support across source ports
Palm OS Windows CE Apple Other
C2Doom No No No Yes
CDoom (mobile) No No No Yes
CellDoom No Yes No No
Doom 9210 No No No Yes
Doom4CE No Yes No No
DoomCE No Yes No No
EDoom No No No Yes
gfDoom No Yes No No
iDoom No No No Yes
ReMooD[1] No Yes No Yes
Rockdoom[2] No No No Yes
Samsung SGH-B100 No No No Yes
ZDoomZ Yes No No No
ZHereticZ Yes No No No
ZHexen Yes No No No

Other and Esoteric

Web-based

Game script

Digital cameras

Sources

See also

External links