Doom128

Doom128 is a series of source modifications created by Adam Bilbrough (Gibbon). It is derived from the recreated and reverse-engineered works of the gamesrc-ver-recreation project and Doom32, providing further increased static limits to reduce the risk of crashes, premature program exits and certain visual problems, while maintaining full compatibility with the original executable, including the usage of the original DMX sound engine.

It allows several WADs to be playable in the vanilla engine that previously required a limit-removing source port to be run.

Its exact file names are:
 * for the Ultimate Doom version of Doom 1.9
 * for Doom2 1.9 Registered
 * for the Anthology version of Final Doom

History
Inspired and derived by the gamesrc-ver-recreation project, which aims to recreate and reverse-engineer various versions of DOOM.EXE, DOOM2.EXE, HERETIC.EXE and HEXEN.EXE for educational purposes, Gibbon set out to create the ultimate executable hack for. Doom32 was used as a basis to increase the limits. A first release followed om February 10, 2022. It increased the limits imposed by Doom32 by a factor 16 and provided for Doom and Doom 2 1.9 and  for the Final Doom Anthology executable.

A second release followed a day later, increasing the stack size to 4096 and fixing the ouch face bug. A Doomworld thread discussing Doom128 was made on February 17, 2022. A third release fixed the tutti-frutti bug and reverted the ouch face bug and increased the from 64kb to 4MB.

Legacy
After the Doom128 release, Gibbon used the applied increased limits featured in that version as a base template to port over to other games that ran on the Doom engine, resulting in Heretic128, Hexen128 and Strife128 respectively.

Raised limits
The following static limits are raised in Doom128. limit                        : old    * k   = new --- visplanes[MAXVISPLANES]      : 1024   * 16  = 16384 drawsegs[MAXDRAWSEGS]        : 2048   * 16  = 32768 SAVEGAMESIZE                 : 2883584 * 16 = 46137344 activeplats[MAXPLATS]        : 7680   * 16  = 122880 vissprites[MAXVISSPRITE]     : 1024   * 16  = 16384 linespeciallist[MAXLINEANIMS] : 16384 * 16  = 262144 openings[MAXOPENINGS]        : 200 * 256 * 16  = 819200
 * relies on the constant, which is 200 (from a 320x200 screen, which is what is used in Vanilla Doom)
 * The limit is increased  from 64kb to 4MB utilizing the following constant:
 * SCREENHEIGHT MINFRAGMENT 4096 * SCREENHEIGHT

Additional features
Outside of the raised limits, Doom128 includes additional features:
 * The lump stack is increased from 64 KB to 4096 KB, allowing more lumps to be loaded in
 * error is now non fatal, taken from Crispy Doom
 * The tutti-frutti effect bug is fixed, taken from Crispy Doom and Russian Doom
 * The function is converted from assembly to C language and modified based off Russian Doom and Heretic

Trivia

 * DeHackEd isn't supported because the executable cannot be understood by DeHacked.