Commit Graph

5902 Commits

Author SHA1 Message Date
terminx 3f641d314f Fix EVENT_DISPLAYROOMS and EVENT_DISPLAYROOMSCAMERA RETURN values
git-svn-id: https://svn.eduke32.com/eduke32@5818 1a8010ca-5511-0410-912e-c29ae57300e0
2016-08-27 01:39:53 +00:00
terminx ae7fcd43a6 Windows MIDI cleanup. Removal of some remaining unused functionality lingering from the DOS days and some formatting changes that happened along the way. If anything breaks with music on Windows, this is probably the commit to look at.
git-svn-id: https://svn.eduke32.com/eduke32@5817 1a8010ca-5511-0410-912e-c29ae57300e0
2016-08-27 01:39:50 +00:00
terminx 9a0a62fdcb Windows MIDI support: remove a few unused structure members and the code that relied on them
git-svn-id: https://svn.eduke32.com/eduke32@5816 1a8010ca-5511-0410-912e-c29ae57300e0
2016-08-27 01:39:45 +00:00
terminx 51992210b8 basic cleanup and formatting
git-svn-id: https://svn.eduke32.com/eduke32@5815 1a8010ca-5511-0410-912e-c29ae57300e0
2016-08-27 01:39:41 +00:00
terminx a58e1ff580 audiolib:
consolidate all multivoc invalid file errors into MV_InvalidFile
renamed FX_PlayLooped to FX_Play and removed original FX_Play
removed device type parameter from FX_Init
moved several FX_ multivoc wrapper functions to the header and made them FORCE_INLINE

git-svn-id: https://svn.eduke32.com/eduke32@5814 1a8010ca-5511-0410-912e-c29ae57300e0
2016-08-27 01:39:38 +00:00
terminx 1305d32e84 audiolib: initialization is better than assignment
git-svn-id: https://svn.eduke32.com/eduke32@5813 1a8010ca-5511-0410-912e-c29ae57300e0
2016-08-27 01:39:30 +00:00
terminx 065db7d5e8 Sound cleanup: remove some unused functions
git-svn-id: https://svn.eduke32.com/eduke32@5812 1a8010ca-5511-0410-912e-c29ae57300e0
2016-08-27 01:39:24 +00:00
helixhorned 531814ecc4 Mapster32: 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.

git-svn-id: https://svn.eduke32.com/eduke32@5811 1a8010ca-5511-0410-912e-c29ae57300e0
2016-07-04 14:09:08 +00:00
helixhorned eda5300b33 Mapster32: pull out some code from M32_InsertPoint() into M32_MarkPointInsertion().
git-svn-id: https://svn.eduke32.com/eduke32@5810 1a8010ca-5511-0410-912e-c29ae57300e0
2016-07-04 14:09:08 +00:00
helixhorned edd7a82be8 Lunatic: 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.

git-svn-id: https://svn.eduke32.com/eduke32@5809 1a8010ca-5511-0410-912e-c29ae57300e0
2016-07-04 14:09:07 +00:00
helixhorned f0cb3ea994 SDL2 layer: in Mapster32, fix menu Ctrl-F in case NumLock is on.
git-svn-id: https://svn.eduke32.com/eduke32@5808 1a8010ca-5511-0410-912e-c29ae57300e0
2016-07-04 14:09:06 +00:00
helixhorned 46f39b725c engine.c: fix potential smostwall[-1] access. Found by ASan.
git-svn-id: https://svn.eduke32.com/eduke32@5807 1a8010ca-5511-0410-912e-c29ae57300e0
2016-07-04 14:09:05 +00:00
helixhorned bcce4cd531 Fix non-HAVE_CLIPSHAPE_FEATURE build.
Used for example with DEBUGGINGAIDS=2, i.e. sanitizers enabled.

git-svn-id: https://svn.eduke32.com/eduke32@5806 1a8010ca-5511-0410-912e-c29ae57300e0
2016-07-04 14:09:03 +00:00
Plagman 1b947c7b07 nice nice good stuff
git-svn-id: https://svn.eduke32.com/eduke32@5805 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 05:31:54 +00:00
terminx 0d41360676 Build fix
git-svn-id: https://svn.eduke32.com/eduke32@5804 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 04:29:06 +00:00
terminx 95f7cf0982 "return" is not a function.
git-svn-id: https://svn.eduke32.com/eduke32@5803 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:34:41 +00:00
terminx 951ad678c4 Usual cleanup type stuff involving vectors and variable scopes.
git-svn-id: https://svn.eduke32.com/eduke32@5802 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:34:29 +00:00
terminx 0e713e698f Separate art tile related functions out from engine.c and into tiles.c
git-svn-id: https://svn.eduke32.com/eduke32@5801 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:34:25 +00:00
terminx 03daded192 Vectorize a few more things.
git-svn-id: https://svn.eduke32.com/eduke32@5800 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:34:18 +00:00
terminx 29a9b93517 FORCE_INLINE a couple of Polymost support functions.
git-svn-id: https://svn.eduke32.com/eduke32@5799 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:34:10 +00:00
terminx d5ceeebfcb Miscellaneous tomfoolery of little consequence.
git-svn-id: https://svn.eduke32.com/eduke32@5798 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:34:07 +00:00
terminx e1fc28776c Fix MSVC build
git-svn-id: https://svn.eduke32.com/eduke32@5797 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:34:03 +00:00
terminx 5800cd588c tsectortype -> usectortype
twalltype -> uwalltype
tspritetype -> uspritetype

No other changes.

git-svn-id: https://svn.eduke32.com/eduke32@5796 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:33:58 +00:00
terminx 0562de125f More changes similar to the previous commit
git-svn-id: https://svn.eduke32.com/eduke32@5795 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:33:45 +00:00
terminx dd1d02a0e7 Change a bunch of engine functions that access sprites, walls, and sectors in a read-only fashion to use the untracked versions of those structs.
git-svn-id: https://svn.eduke32.com/eduke32@5794 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:33:39 +00:00
terminx 3b7aa279b1 Clipping function tweaks. Fixes building without HAVE_CLIPSHAPE_FEATURE.
git-svn-id: https://svn.eduke32.com/eduke32@5793 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:33:35 +00:00
terminx 32450bdd68 Relocate maphack related code into mhk.c.
This commit also relocates clipping related code into clip.c and makes a few other minor changes, because I fucked up and merged the commits together. God damn it.

git-svn-id: https://svn.eduke32.com/eduke32@5792 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:33:30 +00:00
terminx cb2382285f Separate screen capture code from engine.c into screenshot.c
git-svn-id: https://svn.eduke32.com/eduke32@5791 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:33:19 +00:00
terminx 3eb979f8da Split 2d mode editor stuff that remained in engine.c into 2d.c.
git-svn-id: https://svn.eduke32.com/eduke32@5790 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:33:14 +00:00
terminx 205a757109 Move palette related functionality from engine.c to palette.c/h.
git-svn-id: https://svn.eduke32.com/eduke32@5789 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:33:06 +00:00
terminx cdcc983a22 Move hash table stuff out of engine.c and into hash.c/h.
git-svn-id: https://svn.eduke32.com/eduke32@5788 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:32:53 +00:00
terminx aca0807a81 Performance fix for Polymost wall sprite z-fighting avoidance
git-svn-id: https://svn.eduke32.com/eduke32@5787 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:32:47 +00:00
terminx 212e84ce21 Minor CON optimization bs.
git-svn-id: https://svn.eduke32.com/eduke32@5786 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:32:44 +00:00
terminx 85d0543763 This is stupid as fuck, but I swear I profiled it and it was faster this way. Looked like a cache miss on the first access of the pointers.
git-svn-id: https://svn.eduke32.com/eduke32@5785 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:32:40 +00:00
terminx 42ece182e4 Pragma tweaks
git-svn-id: https://svn.eduke32.com/eduke32@5784 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:32:37 +00:00
terminx 74b01416d0 Allow non-player hitscan projectiles to spawn sprites when impacting walls or sectors, and allow them to break sector textures (they could already break wall textures)
git-svn-id: https://svn.eduke32.com/eduke32@5783 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:32:33 +00:00
terminx 3c9f97a58e Allow SFLAG_NOCLIP to apply to projectile movement
git-svn-id: https://svn.eduke32.com/eduke32@5782 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:32:28 +00:00
hendricks266 e06cabb8aa Remove x86 asm pragmas for readpixel and drawpixel and replace them with their C versions.
This fixes a crash in the editor's 2D mode, reported by Paul B.

git-svn-id: https://svn.eduke32.com/eduke32@5781 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-15 07:08:48 +00:00
hendricks266 3dba49a1e3 Replace uses of the HAVE_DS and HAVE_SDL preprocessor macros with MIXERTYPEWIN and MIXERTYPESDL.
git-svn-id: https://svn.eduke32.com/eduke32@5780 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-15 07:08:45 +00:00
hendricks266 4afd27e16f Delete all SDL_mixer Windows libs from our repo since they're not part of our automated build process, and are not recommended.
git-svn-id: https://svn.eduke32.com/eduke32@5779 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-15 07:08:40 +00:00
hendricks266 8ef2032035 Makefile: Revamp setup of all things SDL.
Highlights:
*Building with msys2 can now take advantage of sdl-config and sdl2-config if present.
*Add a header check to error out if SDL_mixer's major version does not match SDL.
*Building with frameworks on OS X works again.

Notes:
*Those cross compiling, particularly targeting Windows, may need to invoke make with SDLCONFIG='' to avoid bringing in libs and headers from the host.

git-svn-id: https://svn.eduke32.com/eduke32@5778 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-15 07:08:35 +00:00
hendricks266 6e3e490b93 Makefile: Add NULLSTREAM to factor out the NUL part of DONT_PRINT.
git-svn-id: https://svn.eduke32.com/eduke32@5777 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-15 07:08:31 +00:00
hendricks266 619f3a7a8a Makefile: Add a special set of default optimization options when building for the Haswell-specific x86_64h architecture designation.
git-svn-id: https://svn.eduke32.com/eduke32@5776 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-15 07:08:26 +00:00
hendricks266 b1b7f13a41 Polymer: Correct an oversight in r3580.
git-svn-id: https://svn.eduke32.com/eduke32@5775 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-10 18:23:25 +00:00
hendricks266 3adda0cbd3 Polymer: Revert part of r5481. We can't rely on the sprite trackers to tell us when tsprites change.
git-svn-id: https://svn.eduke32.com/eduke32@5774 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-10 18:23:22 +00:00
hendricks266 d8c03ba267 Duke3D: Restore some accidentally-working cases of SEs 5, 6, 14, and 30 broken in r3161.
git-svn-id: https://svn.eduke32.com/eduke32@5773 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-10 18:23:15 +00:00
hendricks266 afe530942c BSD: Fix build on OpenBSD. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5772 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-06 22:13:05 +00:00
hendricks266 d33a443b2e Revert r5658. This fixes the disappearing chaingun problem.
git-svn-id: https://svn.eduke32.com/eduke32@5771 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-05 04:46:43 +00:00
hendricks266 31e0cdd87b GL: In uploadtexture, don't assume that a non-masking texture can safely be sent to the driver without the alpha channel.
git-svn-id: https://svn.eduke32.com/eduke32@5770 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-05 04:46:40 +00:00
hendricks266 f0f7b04652 Polymer: Fix the oversight in handling tspr->extra from r5400 by setting it to zero in polymer_scansprites.
git-svn-id: https://svn.eduke32.com/eduke32@5769 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-05 04:46:37 +00:00
hendricks266 0434a87e3a Remove trailing whitespace from anything we don't need to rebase from an upstream.
git-svn-id: https://svn.eduke32.com/eduke32@5768 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-05 04:46:28 +00:00
hendricks266 31606866f1 Add some preprocessor checks on the output format to the asm.
git-svn-id: https://svn.eduke32.com/eduke32@5767 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-05 04:46:06 +00:00
hendricks266 a53a821ec3 Makefile: Switch the detection order of OPTOPT flags so that i386 is checked after x86_64. This ensures full compatibility for fat OS X binaries built using ARCH="-arch i386 -arch x86_64".
git-svn-id: https://svn.eduke32.com/eduke32@5766 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-05 04:46:01 +00:00
hendricks266 400abee8b1 Makefile: Create GTK *_banner.c files in obj/ subfolders instead of rsrc/ so that they don't need separate cleanup rules.
git-svn-id: https://svn.eduke32.com/eduke32@5765 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-03 04:50:57 +00:00
hendricks266 005ebde8ce Makefile: Make Objective-C code build as Objective-C++ when we build C code as C++.
git-svn-id: https://svn.eduke32.com/eduke32@5764 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-03 04:50:55 +00:00
hendricks266 ca619df429 Makefile: Add extra optimization defaults for OS X builds since all Intel Macs are guaranteed certain features due to the time of their debut.
git-svn-id: https://svn.eduke32.com/eduke32@5763 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-03 04:50:52 +00:00
hendricks266 5a6aa914a4 Makefile: Clean up handling of architectures.
git-svn-id: https://svn.eduke32.com/eduke32@5762 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-03 04:50:47 +00:00
hendricks266 3ccf33bc21 Remove unnecessary asm unprotection of ylookup[].
git-svn-id: https://svn.eduke32.com/eduke32@5761 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-29 21:11:27 +00:00
hendricks266 9a50071b1d Clean up self-modifying assembly unprotection and add PROT_EXEC to mprotect() calls.
This fixes NOASM=0 under OS X.

git-svn-id: https://svn.eduke32.com/eduke32@5760 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-29 21:11:24 +00:00
hendricks266 128719189f sdlayer: Clean up creation of SDL_Renderer and provide information about the process to the log.
git-svn-id: https://svn.eduke32.com/eduke32@5759 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-29 21:11:21 +00:00
hendricks266 3719146448 Clean up fallback video mode attempt code in order to fix at least three bugs.
git-svn-id: https://svn.eduke32.com/eduke32@5758 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-29 21:11:17 +00:00
hendricks266 225f37f7b0 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.

git-svn-id: https://svn.eduke32.com/eduke32@5757 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-29 21:11:12 +00:00
hendricks266 5ae7bd99f2 Lunatic: Fix build. BUILD_LUNATIC.
git-svn-id: https://svn.eduke32.com/eduke32@5755 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:47:22 +00:00
hendricks266 41e4ffd2bd Makefile: Convert object lists to an escaped multi-line format for better diffing.
git-svn-id: https://svn.eduke32.com/eduke32@5754 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:47:18 +00:00
hendricks266 24e217642e Makefile: Add some missing dependencies on the folders in which objects are created.
git-svn-id: https://svn.eduke32.com/eduke32@5753 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:47:15 +00:00
hendricks266 1208af001c Makefile: Add L_CXXONLYFLAGS, and use it to pass "-static-libstdc++" on Windows.
git-svn-id: https://svn.eduke32.com/eduke32@5752 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:47:12 +00:00
hendricks266 d8c23261a6 Makefile: Remove STATICSTDCPP variable.
git-svn-id: https://svn.eduke32.com/eduke32@5751 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:47:09 +00:00
hendricks266 26e15e7098 Makefile: Rename "CPPONLYFLAGS" variable to "CXXONLYFLAGS", since "CPPFLAGS" traditionaly refers to the C preprocessor, not C++.
git-svn-id: https://svn.eduke32.com/eduke32@5750 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:47:06 +00:00
hendricks266 d821e6123e Makefile: Output the postprocessed Lunatic symbol lists to $(DUKE3D_OBJ) so they don't need special cleanup and ignore rules. Also fix building the Lunatic-enabled editor on OS X.
git-svn-id: https://svn.eduke32.com/eduke32@5749 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:47:03 +00:00
hendricks266 b19c8cbe0a Makefile: Output objects to subfolders of one unified "obj" folder and simplify clean rules accordingly.
git-svn-id: https://svn.eduke32.com/eduke32@5748 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:47:00 +00:00
hendricks266 01d0aadc91 Makefile: Add mappings from a component's root prefix to its ideal folder name.
git-svn-id: https://svn.eduke32.com/eduke32@5747 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:57 +00:00
hendricks266 6a24f8eaf3 Makefile: Introduce *_PROPER name variables for output components and use them where currently implemented.
git-svn-id: https://svn.eduke32.com/eduke32@5746 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:54 +00:00
hendricks266 3cb59e1c8d Makefile: Rename a large number of variables in the component definitions in order to make things consistent (and factorable).
git-svn-id: https://svn.eduke32.com/eduke32@5745 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:52 +00:00
hendricks266 34896f6039 Makefile: Fix erroneous tab characters.
git-svn-id: https://svn.eduke32.com/eduke32@5744 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:49 +00:00
hendricks266 ad3ff7678f Makefile: Shorten host platform detection code and improve it on Windows to try using $(OS) before invoking uname, and to catch "MSYS" in addition to "MINGW" in uname's output.
git-svn-id: https://svn.eduke32.com/eduke32@5743 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:46 +00:00
hendricks266 3f9fb0dd73 Makefile: Remove *_TARGET variables for final outputs, which could have been used to disable compilation of specific ones.
This was only ever used to not compile the editor for Wii, but we now support that. Up to now these only served to clutter the Makefile.

git-svn-id: https://svn.eduke32.com/eduke32@5742 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:43 +00:00
hendricks266 39f00bcb35 KenBuild: Address "warning: shifting a negative signed value is undefined [-Wshift-negative-value]".
git-svn-id: https://svn.eduke32.com/eduke32@5741 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:41 +00:00
hendricks266 ac1c5d63dd KenBuild: Fix OS X build.
git-svn-id: https://svn.eduke32.com/eduke32@5740 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:37 +00:00
hendricks266 942690dac6 KenBuild: Fix symbol issues.
git-svn-id: https://svn.eduke32.com/eduke32@5739 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:34 +00:00
hendricks266 c0b9c3a189 KenBuild, SW: rotatepoint
git-svn-id: https://svn.eduke32.com/eduke32@5738 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:30 +00:00
hendricks266 8be6da168f KenBuild, SW: Fix "psky" typo.
git-svn-id: https://svn.eduke32.com/eduke32@5737 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:25 +00:00
hendricks266 6e62295872 KenBuild: tspritetype
git-svn-id: https://svn.eduke32.com/eduke32@5736 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:21 +00:00
hendricks266 a8287f676f KenBuild: Fix mul3 and sqr pragmas.
git-svn-id: https://svn.eduke32.com/eduke32@5735 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:18 +00:00
hendricks266 c9897c55e0 KenBuild, SW: Fix Win32 startup window warnings.
git-svn-id: https://svn.eduke32.com/eduke32@5734 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:14 +00:00
hendricks266 d87833f02a Use "Backslash" instead of "\" for keybinds because its nature as an escape character causes issues. Fixes ticket #16.
git-svn-id: https://svn.eduke32.com/eduke32@5733 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:11 +00:00
hendricks266 42d0f08d18 libdivide.h: Silence "warning: non-constant-expression cannot be narrowed from type 'uint64_t' (aka 'unsigned long long') to 'long long' in initializer list in C++11 [-Wc++11-narrowing]".
The problem that the block of code in question works around was fixed in LLVM r82228 and landed in clang 2.7.

git-svn-id: https://svn.eduke32.com/eduke32@5732 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:07 +00:00
hendricks266 1f761df37f libdivide.h: Silence "warning: variable 'result' is uninitialized when used here [-Wuninitialized]".
git-svn-id: https://svn.eduke32.com/eduke32@5731 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:02 +00:00
hendricks266 4282640c6c Amend previous commit. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5730 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-22 21:01:12 +00:00
hendricks266 764336bdea Fix NO_ALIGNED_MALLOC to actually work and not transpose the parameters. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5729 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-21 02:39:58 +00:00
terminx 584b748897 Add CON_CLAMP
git-svn-id: https://svn.eduke32.com/eduke32@5728 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-13 22:15:37 +00:00
terminx ce86532949 VS solution update. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5727 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-13 22:15:34 +00:00
terminx a3b3a992c0 Fix issue where sometimes hitscan projectile trails weren't spawning
git-svn-id: https://svn.eduke32.com/eduke32@5726 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-13 22:15:31 +00:00
terminx 0de66c3411 Misc Polymost crap. Improves detection of sprite/wall collisions for z-fighting avoidance
git-svn-id: https://svn.eduke32.com/eduke32@5725 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-13 22:15:28 +00:00
terminx e33d010e1a 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)
git-svn-id: https://svn.eduke32.com/eduke32@5724 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-13 22:15:25 +00:00
terminx 2d9f205c69 Revert bad attempt at fixing cstat 1024
git-svn-id: https://svn.eduke32.com/eduke32@5723 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-13 22:15:20 +00:00
terminx f23eb60036 Apply patch from http://bugs.eduke32.com/index.php?do=details&task_id=21
git-svn-id: https://svn.eduke32.com/eduke32@5722 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-13 22:15:17 +00:00
terminx 31326f2910 Change default pointhighlightdist in the editor to 128
git-svn-id: https://svn.eduke32.com/eduke32@5721 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-13 22:15:12 +00:00
hendricks266 b12c8dc268 Reorder preprocessor lines in libdivide.h so that LIBDIVIDE_USE_SSE2 is defined before emmintrin.h is included. Fixes ticket #23. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5720 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-11 02:59:15 +00:00
hendricks266 e0ab25a24c More Android build changes. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5719 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-11 01:03:56 +00:00
hendricks266 0331870c1b A quick hack so that Mapster can load more pre-v7 PALETTE.DAT files.
git-svn-id: https://svn.eduke32.com/eduke32@5718 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-05 19:50:22 +00:00
hendricks266 3cba791f5b Some stuff for using clang to build on Android. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5717 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 08:26:08 +00:00
hendricks266 93a86e2840 Enable LIBDIVIDE_USE_SSE2 under x86_64 builds or if the binary is built with SSE2 optimizations.
git-svn-id: https://svn.eduke32.com/eduke32@5716 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:25:27 +00:00
hendricks266 61fe1c554a 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.
git-svn-id: https://svn.eduke32.com/eduke32@5715 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:25:24 +00:00
hendricks266 b8f22a6d9c Polymost: Factor out the ETC block preparation by moving the ETC function decision from Polymost_SendTexToDriver into Polymost_PickETCFunction.
git-svn-id: https://svn.eduke32.com/eduke32@5714 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:25:20 +00:00
hendricks266 868306abef Polymost: Allow compressed ART tiles (r_texcompr 2) to be cached.
git-svn-id: https://svn.eduke32.com/eduke32@5713 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:25:17 +00:00
hendricks266 b40f9b5b80 You'll Cowards Don't Even Indent
git-svn-id: https://svn.eduke32.com/eduke32@5712 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:25:13 +00:00
hendricks266 73459ede47 Polymost: Tweak the "don't upload textures with dimension > xdim" GL ES rule to limit to the power of two greater than xdim instead of less than it.
git-svn-id: https://svn.eduke32.com/eduke32@5711 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:25:10 +00:00
hendricks266 84a2695cdc Polymost: Clean up and rearrange some texcache code. No functional changes.
git-svn-id: https://svn.eduke32.com/eduke32@5710 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:25:06 +00:00
hendricks266 d1266434f1 Polymost: Call texcache_calcid once per texture instead of twice. Clean it up a little while we're at it.
git-svn-id: https://svn.eduke32.com/eduke32@5709 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:25:02 +00:00
hendricks266 9db5f7e44f Ensure that game backgrounds that sometimes get drawn with orientation&64 always get drawn with orientation&64 to avoid wasting RAM.
git-svn-id: https://svn.eduke32.com/eduke32@5708 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:24:55 +00:00
hendricks266 5c95eb842a Small tweaks to Android.mk.
git-svn-id: https://svn.eduke32.com/eduke32@5707 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-02 18:29:41 +00:00
hendricks266 93349bd8e0 Add a hack so that when exit() is called on Android, we instead longjmp to main() and return from there.
git-svn-id: https://svn.eduke32.com/eduke32@5706 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-02 18:29:38 +00:00
hendricks266 1fcf91d933 Defs: 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).
git-svn-id: https://svn.eduke32.com/eduke32@5705 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-02 18:29:35 +00:00
hendricks266 b529af4b55 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.
git-svn-id: https://svn.eduke32.com/eduke32@5704 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-02 18:29:32 +00:00
hendricks266 9b4957aa17 Models: This seems like a bugfix.
git-svn-id: https://svn.eduke32.com/eduke32@5703 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-02 18:29:28 +00:00
hendricks266 5c9933439e Fix an unused variable warning introduced in r5696.
git-svn-id: https://svn.eduke32.com/eduke32@5702 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-02 18:29:25 +00:00
hendricks266 5f824d02f6 Revert post-r5496 warning cleanup.
git-svn-id: https://svn.eduke32.com/eduke32@5701 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-02 18:29:21 +00:00
terminx 6173a8c339 Revert r5496
git-svn-id: https://svn.eduke32.com/eduke32@5700 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-13 04:04:13 +00:00
terminx 958cdfbcbd Tweak nofog, DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5699 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-13 04:04:07 +00:00
terminx 21212558d5 Disable prompt to upgrade from the shareware version after 50 runs
git-svn-id: https://svn.eduke32.com/eduke32@5698 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-13 04:04:03 +00:00
terminx 5927047a3b Allow turning off the jetpack or HoloDuke while looking through a security monitor
git-svn-id: https://svn.eduke32.com/eduke32@5697 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-13 04:03:59 +00:00
terminx 552c88b879 Lookup tables for mapping inventory item indexes to icons (and vice versa). DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5696 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-13 04:03:55 +00:00
terminx f93e06ffd4 This file lives elsewhere now. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5695 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-13 04:03:49 +00:00
hendricks266 1254ce06d9 Polymost: Fix shading on ART tiles with fullbrights displayed without masking, such as on a whitewall.
git-svn-id: https://svn.eduke32.com/eduke32@5694 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-06 03:07:52 +00:00
hendricks266 38553fc0e3 Menus: Adjust the way bottom edges are clipped in rotatesprite to better handle tall text, or text with long Q tails.
git-svn-id: https://svn.eduke32.com/eduke32@5693 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-06 03:07:47 +00:00
hendricks266 2c9b4d7336 A potential fix for the "loading sounds and music from zip files" bug.
git-svn-id: https://svn.eduke32.com/eduke32@5692 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-01 23:02:23 +00:00
hendricks266 b879597dd4 OS X: Only build the SDLMain object with SDL 1.2.
git-svn-id: https://svn.eduke32.com/eduke32@5691 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:16:18 +00:00
hendricks266 b3f2532bb5 GL ES: Introduce ETC1 and (alpha-less) ETC2 texture compression, which improves performance by using less VRAM and requiring shorter data bus transfers.
git-svn-id: https://svn.eduke32.com/eduke32@5690 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:16:14 +00:00
hendricks266 c942d9c4b9 etcpak: Modify ProcessRGB to take input in RGBA format instead of BGRA.
git-svn-id: https://svn.eduke32.com/eduke32@5689 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:16:09 +00:00
hendricks266 6c13494fca etcpak: Enforce C linkage on the ProcessRGB functions.
git-svn-id: https://svn.eduke32.com/eduke32@5688 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:16:05 +00:00
hendricks266 7b639accc1 etcpak: Replace use of std::array (which seems not to exist under all compilers) with simple custom class.
git-svn-id: https://svn.eduke32.com/eduke32@5687 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:16:02 +00:00
hendricks266 b4d59a287d etcpak: Replace x86-specific _bswap intrinsic with custom byteswap function (which a good compiler should treat identically anyway).
git-svn-id: https://svn.eduke32.com/eduke32@5686 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:59 +00:00
hendricks266 f07aebfc28 etcpak: Remove C++11 dependency on cstdint when compiling with an earlier standard revision.
git-svn-id: https://svn.eduke32.com/eduke32@5685 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:56 +00:00
hendricks266 6fb3ac4fab etcpak: Modify include guard tokens to conform to the C and C++ standards by not using underscore prefixes.
git-svn-id: https://svn.eduke32.com/eduke32@5684 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:52 +00:00
hendricks266 a98e36e095 etcpak: Remove SSE4.1 and AVX2 support.
They are of no use to us on ARM.

git-svn-id: https://svn.eduke32.com/eduke32@5683 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:48 +00:00
hendricks266 7a940a255f etcpak: The fma function is not a member of the std namespace.
git-svn-id: https://svn.eduke32.com/eduke32@5682 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:44 +00:00
hendricks266 b2339862ce etcpak: Fix type problem in ProcessRGB_ETC2.
git-svn-id: https://svn.eduke32.com/eduke32@5681 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:41 +00:00
hendricks266 33634859c6 Add the ETC compression algorithm portions of etcpak to the repository, with no modifications.
git-svn-id: https://svn.eduke32.com/eduke32@5680 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:37 +00:00
hendricks266 bd6c92926e Fix Android warnings missed due to Android.mk misconfiguration.
git-svn-id: https://svn.eduke32.com/eduke32@5679 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:32 +00:00
hendricks266 fdf4f2d74b Fix warnings pointed out by Xcode.
git-svn-id: https://svn.eduke32.com/eduke32@5678 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:27 +00:00
hendricks266 e1ee089da5 Android: Minor build system cleanup.
git-svn-id: https://svn.eduke32.com/eduke32@5677 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:23 +00:00
hendricks266 7e12cf2a83 jwzgles: Add glCompressedTexImage2D and glCompressedTexSubImage2D as cheap copies of their non-compressed variants.
git-svn-id: https://svn.eduke32.com/eduke32@5676 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:20 +00:00
hendricks266 1c3ed04bcd jwzgles: Allow using RGBA as the input texture format for an alpha-less internal texture format.
git-svn-id: https://svn.eduke32.com/eduke32@5675 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:17 +00:00
hendricks266 82e9e4e304 jwzgles: Revert part of r5655 that wiped out my cast-qual fixes from r5551.
git-svn-id: https://svn.eduke32.com/eduke32@5674 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:14 +00:00
hendricks266 84c949c419 Engine: Clean up texcache_enabled.
git-svn-id: https://svn.eduke32.com/eduke32@5673 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:10 +00:00
hendricks266 3bbe30a6f8 Un-break the iOS build.
git-svn-id: https://svn.eduke32.com/eduke32@5672 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:05 +00:00
terminx 6363de0a4c Fix drawing voxels with ids >= 256
git-svn-id: https://svn.eduke32.com/eduke32@5671 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-16 00:22:44 +00:00
terminx 34f208afa2 Make sprite tails and label borders purple if the sprite is blocking.
git-svn-id: https://svn.eduke32.com/eduke32@5670 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-15 22:17:04 +00:00
terminx 99cb974d0c Fix Mapster32 sprite selection colors when using a tiles.cfg that defines tile groups using colors from the bright half of the original 16-color palette.
In layman's terms, this fixes the effect sprites flashing black in 2d mode.

git-svn-id: https://svn.eduke32.com/eduke32@5669 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:08:02 +00:00
terminx 76d318ab1b Minor change of scope of a couple variables. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5668 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:07:58 +00:00