Subversion Repositories eduke32

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
8762 552d 14h terminx /source/build/include/compat.h GCC 9.3.0 Windows build fix  
8648 569d 10h hendricks266 /source/build/include/compat.h Add alloca definitions to compat.h  
8553 600d 6h terminx /source/build/include/compat.h Disable EDUKE32_PREDICT_TRUE and EDUKE32_PREDICT_FALSE for now  
8464 638d 7h hendricks266 /source/build/include/compat.h Defs: Minor ifcrc cleanup  
8374 652d 18h terminx /source/build/include/compat.h Move atoi_safe() from editor.h to compat.h and #define Batoi atoi_safe

They were the same thing so they might as well be in the same place.
 
8371 652d 18h terminx /source/build/include/compat.h Add Xaligned_calloc()  
8312 664d 9h hendricks266 /source/build/include/compat.h Templatize the branchless negation method used for GV_FLAG_NEGATIVE  
8274 691d 12h hendricks266 /source/build/include/compat.h Use exit, not Bexit, if not an error termination

Bexit is ONLY for errors. Otherwise, in debug builds OSD_Printf tries to print Bexit's debug info to a closed osdlog.
 
8273 691d 12h hendricks266 /source/build/include/compat.h 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.
 
8191 701d 18h terminx /source/build/include/compat.h Add fatal_exit(), a slightly different method of terminating the process upon error

On Windows, this writes an event to the system event log for later retrieval.
 
8188 701d 18h terminx /source/build/include/compat.h Make Bgetsysmemsize() return size_t  
8179 701d 18h terminx /source/build/include/compat.h Add portions of the ZPL library, a public domain collection of useful helper functions and structures

See https://github.com/zpl-c/zpl

I'm not including all of it, but I have plans for some of what is there.
 
8171 701d 18h terminx /source/build/include/compat.h Implement sys_timer cvar with several different choices of timers to control frame pacing  
8095 740d 18h hendricks266 /source/build/include/compat.h Avoid a truncation warning in compat.h  
8072 749d 11h terminx /source/build/include/compat.h Align cache1d memory blocks to system page size  
8050 755d 4h pogokeen /source/build/include/compat.h Change some clocks to support sub-tick precision using a new class, ClockTicks.
Using that higher precision, interpolate at a higher granularity.
Further, truncate the target interpolation time to vertical blank boundaries to avoid producing temporal artifacts.
Fix issues caused by interpolation calculations being handled differently in multiple places (and fix cases where smoothratios were being thrown away only to be redone without checking all proper conditions).
Ensure ClockTicks changes do not break other targets (EKenBuild, VoidSW), but note any interpolation there is not similarly updated.
 
7876 778d 15h terminx /source/build/include/compat.h Replace runtime pow2 calculations with pow2char LUT usage

I don't know that this is any faster, but there's something to be said for standardization and consistency. I will be making most of this stuff use bitmap_set/test/clear() soon.
 
7830 789d 16h terminx /source/build/include/compat.h Allow reading vec3_whatever_t as vec2 directly

It's a union in a struct in a union in a struct. Oh god, what have I done.
 
7799 797d 8h hendricks266 /source/build/include/compat.h Use std::numeric_limits instead of float.h  
7746 817d 21h terminx /source/build/include/compat.h Fix builds on platforms other than win32--oops  

Show All