Fixes/features since 3.87c Add pistol start option for Doom. Controlled by the pistolstart CVAR but it only works when not in a hub. Fix vid_showcurrentscaling, vid_scaletowidth and vid_scaletoheight. Increase default resolution. Use the gamma shader in fullscreen mode as well, controlled by d3d_nogammaramp. Make the double spawn check more generic. Fixed: ActorMover was not changing its tracer's flags. Fixed: a render radius of 0 did not restrict rendering to the source sector in software. Fixed crash calling ChangeSky() with an invalid texture in software. Fix abort with dir command and empty string on Windows. Implemented 'block land monsters' line flag. (from GZDoom) Added 'NoPerPixelLighting' flag to models to force it to not use per-pixel lighting. (from GZDoom) PreTravelled virtual for player and inventory. (from GZDoom) More fixes for ancient bugs from GZDoom. Extend the changemap command to allow warping to next and nextsecret with + and +$ Don't show the IWAD selection box when it's selected by a PWAD. Menu adjustments for compatibility. Added missing null pointer check in S_GetSoundClass. Skip CSV LANGUAGE lumps. Add missing model option to the software renderer menu. Add double spawn skill property and DM flag. Restore Unholy Massacre and 1K Deaths but now they can be hidden in menu. UM graphic by JNechaevsky Add fallback for console sheet fonts. Fixed crash calling ChangeSky() with an invalid texture. Adjustments for defcvars. Add the d3d_nogammaramp CVAR to play fullscreen with blue light filters, restore the old gamma table method. Don't reset the old random index upon loading savegames. Add COMPATF2_OLD_RANDOM_GENERATOR to Doom compatibility mode. Prevent potential crash with fog and software light modes. Fixed crash with voodoo dolls in MP after players quit the game. Fix crash with wind effect on special water sectors. More fixes and features from GZDoom. Download Windows 64 bit Windows 32 bit Source code   Fixes/features since 3.87b Fixed graphic glitches with the partial invisibility effect. Revert "Multi-intermission waits for all players" and "Added wi_autoadvance". Include game_widescreen_gfx.pk3 by Nash. Fixed: Monster reaction time was always zero with fast monsters and not just on nightmare. Prevent damagecount overflow. Add autodetection for GOG's releases of Heretic and Hexen. Fixed: dynamic lights ticked even when disabled. Fix missing null pointer check (Nashgore crash). Fix for the "GC can't keep up while the game is paused" issue. Fixed wrong ChangeLevel export to ZScript. Fixed config file being overriden when it's blocked by another application. More fixes and a few features from GZDoom. Fixes/features since 3.86a Fixed sound limiting not working for full volume monster sounds. Better widescreen support, now Nash's wide graphics are autoloaded. Fixed an infinite loop which caused a hang after the libADLMIDI and libOPNMIDI update. Add some missing functions to menus. converted level global variable into real pointer. Hacked a level member into thinkers. Added the compat_oldrandom compatibility option for enhanced vanilla play and included it in the Doom (Strict) mode. Fixed: NetServerInfo was not being saved after the exit cleanup. fixed sounds not being serialized for hub travel. Update SIGIL support. Fixed -glversion 3 was not being promoted to 3.3. add support for the (as of now) newest version of the Unity re-releases Add the DF2_NO_COOP_THING_SPAWNDM flag to prevent spawning MP things in coop. Add game load message. Disable chat for single player, controlled by the chat_self CVAR. Fixed division by zero when damageinterval was not specified from ZScript. A lot of stuff from GZDoom. Fixes/features since 3.85 Add missing DrawTextureTags. DTA_FlipY, DTA_SrcX, DTA_SrcY, DTA_SrcWidth and DTA_SrcHeight. Add fake missing DTA_Desaturate DrawTexture tag. Fixed number of DrawTextureTags didn't match in ZScript. Present the iwad selection box also with only one iwad. Don't show the iwad selection box with -iwad. Fixed crash printing weapon name tags. Fixed crash on maps with out of range sidedef and sector numbers, adapted from PRBoom. Fixed: check for bad sidedefs was not taking into account unused sides. Reload fake fonts, people keep doing it and that made some mods incompatible. Replace the "IJKL" keyboard preset with "OKL;". Fixed jump key in Hexen for the modern keyboard presets. Change default key bindings: add arrow keys to the left-handed preset and set mouse3 to activate items for the modern presets. Restored original colors for player setup icon backdrop. fixed erroneous removal of property flag members. Fixes unknown flag errors. Fixed compatibility flags not working in scripting. Add updated Brazilian Portuguese translation by Daniel Lemos. Bump LASTRUNVERSION for defcvars. Missed this. Missed a bit for stat screens (fixes Guncaster Vindicated). Add fake vid_rendermode CVAR. Prevent crash on exit trying to load the unsupported sheet fonts. Blind attempt at fixing wrong mouse position in OpenGLFrameBuffer and OpenGLSWFrameBuffer. A lot of stuff from GZDoom. Fixes/features since 3.84 Added native support for 4 XInput controllers for fake splitscreen. Added support for several default control layouts. Minor things here and there too esoteric to mention. A lot of stuff from GZDoom: sound refactor, ZMusic, exit cleanup... Fixes/features since 3.83a Fixed taking screenshots in menus with Space when Sys_Rq is set as screenshot key (randi). Bumped ZScript version to be the same as in GZDoom. Fixed stretching for 256 and 240 pixels tall skies in software. Removed and replaced the following LevelCompatibility functions: FlipLine, GetNumMapThings, GetMapThingPos, GetMapThingAngle, SetMapThingAngle. Fixed lighting problems with weapon models. Replaced the useless 160x200 scale preset with widescreen 356x200. Remove UM skill from the menu now that i've added the real thing with 2xmonsters in RUDE, still works with skill 5. Add option to reset controls to defaults. A lot of stuff from GZDoom. Fixes/features since 3.82 Added missing null pointer checks to fix a crash with PB. Added the 'quickunsetslot' command to unset the quicksave slot. Fixed capped tall skies not working (Heretic and Hexen). Fixed sky stretching for the new freelook limit. Implement the following functions under LevelCompatibility: FlipLine, GetNumMapThings, GetMapThingPos, GetMapThingAngle, SetMapThingAngle. Wall and sprite render cull options for the GL renderer. Added support for up to 4 DirectInput joysticks with 32 button each at the same time for fake splitscreen. Added low detail mode (160x200) to the preset scale modes. UI looks horizontally stretched tough. Implement taking screen shots in menus (m8f). Added support for PrtSc. Use signal handler to invoke call_terms() before exit when possible (Conn O'Griofa) Fixed crash drawing fog boundaries in the software renderer. Fixed another crash in the software renderer now with transparent sprites (Stronghold STR12). Fixed ancient ZDoom savegame slot selection bug. Changed how the old quicksave works. Now you select the slot using quicksave like in original Doom. Models are for now disabled by default for the classic software renderer with the new r_models_carmack CVAR for better performance on some maps and to avoid an issue with dissapearing sprites. Allow disabling mirrors for the GL renderer with gl_mirrors as some maps abuse them and portals are much slower in the old renderer. Also reduce the number of default recursions. Fixed vanilla light mode being available for GL2 when it's not supported without shaders. Block scaling for the classic software renderer (D3D), it didn't work and caused some serious glitches. Fall back to D3D for software on systems without GL2 support. Tweaked the 1K Deaths skill setting for Heretic. Fixed fuzz style fallback not working in GL legacy mode. Changed default since software style was too expensive on old cards. A lot of stuff from GZDoom. Bumped ZScript to 3.9.0.   Fixes/features since 3.61b4 Fake splitscreen support: you need to enable the 'vid_activeinbackground', 'i_soundinbackground' and the new 'joy_background' cvars. Start two copies of LZDoom from different folders (e.g. with ZDL), one with -host 2 and another one with '-join'. You need a dual core CPU, you'll probably get the best results using software D3D and setting 'r_multithreaded' to 0. Set player two to use the gamepad (left stick to move, right one to look around) and give the focus to player one, works for DInput and SDL. Gives a warning instead of error out on unsupported ZScript version (3.8.3), hacked to run most mods with the original fonts. Support for SIGIL and NERVE as iwads. More DOOM2 compatibility fixes. Auto level compatibility is now optional by Enjay's request: 'sv_njnoautolevelcompat' cvar. Gives a warning on level load. Fixed crash with Eviternity on level end. Huge update with tons of stuff from GZDoom such as the JIT compiler for 64 bit. Reminder: savegames in LZDoom are sorted by filename (slot), to restore the old order use the 'oldsaveorder' cvar. Original post From the creators of GZDoom Vintage, ZDoom LE, ZDoom32, ZDoom CL, RUDE and probably even more i can't remember right now comes LZDoom.
This is the old ill-fated legacy build. Yes, D3D and DDRAW are back with a vengeance. Just kidding.
This will help some people experiencing crashes with the vintage build on some old intel and ati "cards". Of course it will run on older hardware.
I could release a non SSE2 build if there's enough demand but for XP minimum. Same for Linux.
It's based on GZDoom 3.3.2 so it's the new old GL renderer with most of the later stuff added. AFAIR a couple of important things are missing: 2D shape and thick line drawers, i added fake drawers so it won't crash. Also you can expect a few extra silly features.
Of course this is unofficial . It's here:

Copyright © 1993-1996 id Software, 1998-2016 Randi Heit, 2002-2020 Christoph Oelckers, et al.
Copyright © 2016-2021 Magnus Norddahl, Rachael Alexanderson and Alexey Lysiuk. Icon and logo Copyright © 2019 Daniel Gimmer