March 2012
-
General
Core texture mapping functions cleanup.
Show details
- forgot a glogy --> logy in a-c.c - comment out stretchhline and slopevlin2 in a.nasm, the former also in a-c.c - make transmaskvline2 use a uintptr_t where appropriate
-
General
Remove a couple of redundant declarations in actors.c and gameexec.c.
-
fix twisted pstat/nstat and psect/nsect references.
-
General
OS X: another set of new universal x86/x86_64/PPC libraries provided by LSDNinja, this time compiled under Leopard 10.5
-
General
- Makefiles: fix handling of "-Wstrict-overflow=1" to fix Leopard 10.5/Xcode 3.1.4 compatibility
Show details
- osxbuild.sh: explicitly specify "ARCH='-arch x86_64'" for 64-bit builds
-
fix animations that loop to frame 0
Show details
With VBOs enabled, the virtual pointer to the geometry of frame 0 of a model is always NULL. This was confusing the polymer code responsible for deciding whether to enable smooth animations or not, which meant that any animation that would loop to frame 0 would do it as if animation interpolation was disabled, which looks very choppy.
-
General
Rename SOUNDOWNER's (used in sound_t) member .i to .ow for easier grepping.
-
General
With dndebug, show the currently playing sounds.
Show details
The format is snd #<sound number> inst <instance of that sound>: voice <internal voice handle>, ow <owner's sprite ID/-1> (this is the interesting part)
-
General
Rename P_ActivateSwitch()'s 3rd argument from 'switchtype' to 'switchissprite'.
-
General
Some sound source cleanup, no functional changes.
Show details
- make a couple variables static in sounds_mapster32.c - KHz --> Hz in initialization text
-
General
Clean up cache1d.c.
Show details
- make some variables static - conditionally compile out some code with DEBUG_ALLOCACHE_AS_MALLOC - exit(1) on failure (instead of exit(0)) - some formatting
-
General
Thoroughly revised osxbuild.sh, featuring:
Show details
- Conditional disabling of the build for each architecture - Conditional enabling of debug building - Detection of the OS X version, disabling incompatible builds and establishing a minimum version - Fail-safe assembly of fat binaries and the archive (each item is checked first) - Lovely factored 'for' loops and parameter expansion
-
General
Add file existence check for model skins.
-
General
Add "echo" def parameter which prints a string to the console and log file.
Show details
Syntax: echo "Your text here."
-
General
OS X: Since the posix_memalign function causes problems when running on 10.5, not just building, I am making this more "risky/daring" change because OS X guarantees 16 byte alignment so it should be safe.
-
General
OS X: new universal x86/x86_64/PPC libraries provided by LSDNinja
-
General
OS X: fix build under Leopard/Xcode 3.1.4
-
General
OS X: whitespace-cleanup Objective-C files. Also does TAB-->space.
-
General
OS X: fix and enable startup windows; enable PPC build in osxbuild.sh.
-
General
OS X Objective-C files: NSApp -> nsapp as before for a PPC linkage fix
Show details
Note: I'm not really sure whether I'm initializing it in the right places.
-
remove now unused B_ATTRIBUTE_USED macro.
-
fix mirror-related oob access analogous to r1872's fix for classic.
Show details
When drawing from inside the mirror, there may be no 'bunches' (BUILD lingo, not TROR ones) collected, but following code used the first one unconditionally.
-
General
Add "OSX_STARTUPWINDOW" Makefile variable to toggle the OS X startup window. Off by default.
-
General
Fix OSX-related typos in Makefile and osxbuild.sh.
-
General
Optimizations and tweaks for C replacements of mhline and thline.
Show details
Hlines for masked and translucent masked ceiling/floor (sprites). - apply the --> 'do { ... } while (--cnt)' transformation, making these functions iterate cnt+1 times like the asm version. This also fixes an off-by-one issue where sprites or masked ceilings/floors had a one-pixel non-drawn line to the right. - This time, only declare-as-local two 'extern' globals (asm1 and asm2). It seems that I was too eager with "localing" all file-scoped vars earlier. GCC is able to remove the loads from memory inside the loop by itself, whereas clang is not. This is not trivial, since it has to prove that the 'screen' pointer passed to the functions will never alias these globals.
-
General
Optimize 'rainbow' background drawing in the editor with 8-bit renderer.
-
General
Fix building ebacktrace1.dll with versions of binutils/libbfd after 2.20.51-1. This removes the need to link and depend on libintl (for now).
-
General
Fix -Wformat-security and -Wformat-extra-args warnings under clang.
-
General
Rewrite code for the "-rts" command line parameter to remove an unnecessary int32_t, prevent needless string copying, factor out duplicate math, centralize the default RTS name, and prevent clobbering of the RTSName CFG setting.
-
General
Add "echo" CON command which allows the user to print a quote only to the console and log file, for debugging or informational purposes. EVENT_INIT can finally be put to use!
-
General
Remove ATTRIBUTE((used)) from gotpic[] because it only served to generate warnings when using LTO.
-
General
osxbuild.sh: zip -y -x "*.svn*" "*.git*"
-
General
Formatting; remove 'loop has empty body' warnings with clang.
Show details
I have to admit, I like its grumbling.
-
with r_parallaxskypanning=1, clamp the sky at a constant horizon.
Show details
See E4L1 for what this means.
-
General
Fix apparent horizon not being independent of viewingrange (classic/Polymost).
Show details
The apparent horizon (in units proportional to pixels by a constant factor) was being calculated without normalizing to viewingrange, resulting a discrepancy between the drawn and actual up/down angle with non-default viewingranges (e.g. with r_usenewaspect=1, or when setting it from setaspect). This also means that the center-of-aim will now be the same regardless of the aspect. This fixes many derived bugs: * inconsistency w/ crosshair when shooting a gun and aiming up/down (obviously) * bugs resulting from being able to look up/down too far (garbage non-slope texture-mapping and viewing BIGORBIT skies above the borders in classic). Note: mods that had workaround logic for this bug will have to remove it...
-
General
Tweak 'dncoords' display.
Show details
added: sector extra; viewingrange and yxaspect before the main drawrooms call removed: randomseed
-
General
ATTRIBUTE((pure)) for Ptile2tile(), add a forgotten comment.
-
General
sector.c: fix a possible oob access of a local array.
-
General
Clamp ud.camerahoriz after EVENT_DISPLAYROOMS (instead of before).
-
General
Make 'double ghoriz' static in polymost.c.
-
General
Apply transformations to nonpow2_mhline and nonpow2_thline.
Show details
This has no measureable difference. Oh well, maybe it benefits weaker machines, since the generated loop code should definitely be prettier.
-
General
Optimize fade_screen_black(). 49 --> 54 fps for test scene.
-
General
Apply the transformations of the previous commit to tslopevlin().
Show details
This doesn't give much, maybe 0.5 fps more, probably because the loop body is pretty long.
-
General
Optimization of C replacements of basic texture mapping functions, part 1
Show details
Affected functions: hlineasm4, vlineasm1, mvlineasm1, tvlineasm1. Optimizations: - declare all used variables as possibly const-qualified locals in each function. This removes unnecessary loads from memory in the loops. - rewrite "for (; cnt>=0; cnt--) {...}" to "cnt++; do {...} while (--cnt);" in the three last ones (yes, these function iterate cnt+1 times). This makes them functionally equivalent to the asm versions (madness ensues for cnt < 0) and allows the compiler to remove one 'test' instruction at the end of each loop. - in the translucence function, replace addition by ORing Observations (system: Core2 Duo Linux x86_64): With a 1680x1050 window fully covered by the respective type of wall (simple, masked, trans. masked), fps increases by 3-4 from the baseline of approx. 60.
-
General
More utils tweaks.
Show details
- remove the objects too on 'clean' - fix warning with 'transpal' on x64 (generates translucency and shade tables)
-
General
Makefile tweaks for the utilities.
Show details
- print compilation status for building the final executable - add 'cleanutils' target in build/Makefile - don't link against pthread, seems unnecessary - don't build nedmalloc.o when not requested in Makefile.common
-
General
synthesis.sh:
Show details
- Exclude "Apple/lib" rather than "Apple" so that required files are not left out of the tarball. - Add one to $lastrevision before generating the ChangeLog so that it only includes what is new to an update. osxbuild.sh: - Add stronger detection of the SVN revision by adding support for 1.7 (no longer relying on an ".svn" directory) and having a specific fallback in case the build location is neither svn nor git. - Echo the SVN revision to source/rev.h before the build processes and revert it afterwards.
-
General
Under Mac OS X, look for libvpx in /usr/local to add support for Homebrew in addition to MacPorts.
-
General
Under Mac OS X, override libsupc++ with libstdc++.
-
General
Add an explicit declaration so that Mac OS X binaries look for the Frameworks inside the app bundle before anywhere else.