Build 5845
SVN-
General
Fix Polymer breakage
SVN handles and Git names are merged into one person.
Fix Polymer breakage
Fix builds on broken compilers that don't properly support using "z" in the length field of a printf format placeholder.
Satisfy warning: this 'if' clause does not guard... [-Wmisleading-indentation]
DONT_BUILD.
Fix warning: logical 'and' of equal expressions [-Wlogical-op]
DONT_BUILD.
Fix warning: left shift of negative value [-Wshift-negative-value]
DONT_BUILD.
Fix simple_array operator[] parameter type.
DONT_BUILD.
Fix a memory leak in CON_RESIZEARRAY. This commit also includes an inconsequential dozen or so lines of formatting changes I had done when I stumbled across the bug.
Add "string" alias for "definequote" and "print" alias for "quote".
Fix a couple of gcc 6.x warnings.
Fix a software mode crash bug involving bad animation flags set on tiles
More readability cleanup. DONT_BUILD.
on TROR point insertion, mark more points.
This fixes a bug reported by Micky C on 2016-01-11 where too few points were marked to be inserted. See AMC TC SVN r2308.
pull out some code from M32_InsertPoint() into M32_MarkPointInsertion().
fix map-text loading.
The file descriptor was closed from Lua code, causing the subsequent kfilelength() to fail and attempt an allocation of (size_t)-1 bytes.
SDL2 layer: in Mapster32, fix menu Ctrl-F in case NumLock is on.
engine.c: fix potential smostwall[-1] access. Found by ASan.
nice nice good stuff
Build fix
Revert r5658. This fixes the disappearing chaingun problem.
In uploadtexture, don't assume that a non-masking texture can safely be sent to the driver without the alpha channel.
Fix the oversight in handling tspr->extra from r5400 by setting it to zero in polymer_scansprites.
Remove trailing whitespace from anything we don't need to rebase from an upstream.
Add some preprocessor checks on the output format to the asm.
Create GTK *_banner.c files in obj/ subfolders instead of rsrc/ so that they don't need separate cleanup rules.
Make Objective-C code build as Objective-C++ when we build C code as C++.
Add extra optimization defaults for OS X builds since all Intel Macs are guaranteed certain features due to the time of their debut.
Clean up handling of architectures.
Remove unnecessary asm unprotection of ylookup[].
Clean up self-modifying assembly unprotection and add PROT_EXEC to mprotect() calls.
This fixes NOASM=0 under OS X.
Clean up creation of SDL_Renderer and provide information about the process to the log.
Clean up fallback video mode attempt code in order to fix at least three bugs.
A small patch from rhoenie to make our source compatible with the Intel C Compiler.
Our makefile would need more setup and I currently don't have any means of testing.
Update ignore rules.
Fix build. BUILD_LUNATIC.
Convert object lists to an escaped multi-line format for better diffing.
Add some missing dependencies on the folders in which objects are created.
Add L_CXXONLYFLAGS, and use it to pass "-static-libstdc++" on Windows.
Add CON_CLAMP
VS solution update. DONT_BUILD.
Fix issue where sometimes hitscan projectile trails weren't spawning
Misc Polymost crap. Improves detection of sprite/wall collisions for z-fighting avoidance
Replace uses of "swap64bit" where "swapdouble" is what is really meant. There is nothing in this to handle potential platforms where sizeof(double) != sizeof(int64_t)
A quick hack so that Mapster can load more pre-v7 PALETTE.DAT files.
Some stuff for using clang to build on Android. DONT_BUILD.
Enable LIBDIVIDE_USE_SSE2 under x86_64 builds or if the binary is built with SSE2 optimizations.
GL ES: Interpreting glGetError as always meaning "this internal texture format doesn't work" is too dangerous to keep in the live code (not to mention wasteful). Move it to a new and improved Polymost_InitDummyTexture, now called Polymost_DetermineTextureFormatSupport.
Factor out the ETC block preparation by moving the ETC function decision from Polymost_SendTexToDriver into Polymost_PickETCFunction.
Allow compressed ART tiles (r_texcompr 2) to be cached.
You'll Cowards Don't Even Indent
Small tweaks to Android.mk.
Add a hack so that when exit() is called on Android, we instead longjmp to main() and return from there.
Add "artquality" subtoken to textures, model skins, and skyboxes, which grants the texture HICR_ARTIMMUNITY. In effect, this implies "nodownsize" and signals that texture compression would be undesirable, but okay using r_texcompr mode 2 (aggressive).
In polymost_glinit, pass a dummy 4x4 texture to uploadtexture in order to detect what compressed texture formats are acceptable without wasting time compressing the first texture it encounters, such as the 3D Realms screen, in case the graphics chip won't take it.
This seems like a bugfix.
Revert r5496
Tweak nofog, DONT_BUILD.
Disable prompt to upgrade from the shareware version after 50 runs
Allow turning off the jetpack or HoloDuke while looking through a security monitor
Lookup tables for mapping inventory item indexes to icons (and vice versa). DONT_BUILD.
Fix shading on ART tiles with fullbrights displayed without masking, such as on a whitewall.
Adjust the way bottom edges are clipped in rotatesprite to better handle tall text, or text with long Q tails.
A potential fix for the "loading sounds and music from zip files" bug.
OS X: Only build the SDLMain object with SDL 1.2.
GL ES: Introduce ETC1 and (alpha-less) ETC2 texture compression, which improves performance by using less VRAM and requiring shorter data bus transfers.
Modify ProcessRGB to take input in RGBA format instead of BGRA.
Enforce C linkage on the ProcessRGB functions.
Replace use of std::array (which seems not to exist under all compilers) with simple custom class.
Fix drawing voxels with ids >= 256