Build 8351
SVN-
General
Fix STARTUP_WINDOW=0 on modern macOS
SVN handles and Git names are merged into one person.
Fix STARTUP_WINDOW=0 on modern macOS
Fix assertions and OOB so that the player can noclip OOB
Bgetsysmemsize() 64-bit fix
Fix cheats only granting one Uzi instead of two
Fix CONTROL_ClearUserInput so menu input is reliable
Fix NUMGAMEFUNCTIONS and mouse button select menu
Fix saves
Dynamically-allocated structs strike again.
Fix an error in the the inline header version of initmultiplayers
Fix a bug with mouse cursor position in the keyboard keys menu
Fix scrollbar tile clipping
Patch from Nuke.YKT.
Fix slidebar touch control accuracy
Patch from Nuke.YKT.
Fix buffer overflow in getclosestcol_lim
Patch from Nuke.YKT.
Fix tautological comparison in savegame.cpp
Fix "MV_GetVoice(): bad handle" log spam
Fix widescreen flickering in end of level screen
Fix non-debug builds on Windows
Fix keyboard input
Fix an assertion failure in palette changing code
Fix OOB access when viewing a mirror
Fix mouse aiming
cpuid.cpp: Apply another fix for Mingw-w64 builds
Fix HAVE_FLAC=0 HAVE_VORBIS=0 builds
Fix unused global variables
Remove -Wno-deprecated-declarations
Passing this in for the entire build process is dangerous. If a deprecated declaration can't be fixed, use pragmas to silence it specifically.
Clean up the huge portability regressions caused by the introduction of ZPL and dependent features.
This massively guts zpl.h: everything we don't use. It also improves the portability of the things we do use. See zpl.h for why keeping the entire library is unacceptable. Some notes: Intel, or more specifically x86, is an architecture, not a platform. The uses of zpl_vm_alloc functions contained a regression in that unlike the X-prefixed allocation functions, no checking of the return value was performed. Moreover, the new Bgetpagesize incorrectly used the zpl_virtual_memory_page_size API, causing the value returned to be dwAllocationGranularity instead of dwPageSize on Windows! timerInit contained a compilation error on "MIPS". The introduction of sysReadCPUID() broke linking on everything but x86. Any symbol containing two successive underscores is reserved, so don't use that for include guards.
Fix SDL 1.2 build of sdlayer.cpp and apply minor changes to sdlayer12.cpp
Fix SDL 1.2 build of timer.cpp
Fix calls to FX_ErrorString and MUSIC_ErrorString
Fix mutex implementation with SDL 1.2, broken in r7907
Revert r8159 but disable the code from being compiled because documentation is good.
Revert r8150 and reinstate the SDL_Joystick API with SDL2
It is necessary for devices with more axes or buttons than those found on the Xbox 360 controller.
Fix keyboard layout change console message and make sure windowsPlatformCleanup() gets called from uninitsystem()
This fixes most issues with the player clipping through the walls of rotating sectors
Band-aid fix for Duke3d E4L4 map "corruption"
The map isn't necessarily "corrupt", but it has a large water sector with half a dozen different SE7 teleporter sprites in it, of which all but one have destination SE7 sprites that are constantly moving while the matching SE7 in the large sector stays in place. When you teleport, the game code picks one. It doesn't always pick the one that matches. Yeah, OK, it never picks the one that matches. The area is a total clusterfuck.
Fix issue with tempo when changing back and forth between OPL3 and WinMM MIDI output
Fix incorrect cvar help string
Fix mus_adlibstereo
Revert a copy/paste error fix in the AdLib code because the fixed version doesn't work right with the timbres Blood ships with
Fix AdLib timbre loading
Fix min/max values for audiolib cvars
Fix issue causing maps to sometimes fail to load
Band-aid fix an issue with the tile packer preventing MSVC builds from working
With MinGW GCC, you get a different __cpuid() depending on whether or not you include cpuid.h. That is strange.
This fixes sysReadCPUID() to work on more than just Windows.
Fix tiny header issue
Patch from Nuke.YKT to fix polygon leakage issue with NPOT skies in Polymost
startgtk.game.cpp edits:
1. Fix USE_OPENGL=0 builds. 2. Don't ignore the user's choice of BPP. 3. If eduke32.cfg has Polymer set to 1 and ScreenBPP set to 8 (e.g., the user changed from Polymer to Classic), don't tick Polymer and don't select an OpenGL mode.
Fix issue where the borderless windowed mode menu option wasn't starting out reflecting the current value
Steam wrapper fixes
Linux voidwrap build fixes
This should help with some of the player movement fuckery
This fixes the bug that let you jump through the ticket booth window in E1L1 and the problems jumping into vents when run mode is disabled.
Fix bugged height check in cliptestsector()
This fixes the shrinker in E1L4
I wonder what it breaks! :D
Fix polymost_dorotatesprite() clipping
Fix bug dating back to the DOS version where actors on sector lines would sometimes fail to shoot hitscan projectiles