Subversion Repositories eduke32

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
5018 2309d 13h helixhorned /polymer/eduke32/source/m32exec.c Mapster32: style-cleanup check_spritelist_consistency() and VM_Execute(): 'for'.

DONT_BUILD.
 
4911 2347d 22h terminx /polymer/eduke32/source/m32exec.c Fix tdupsprite in m32script.  
4903 2349d 2h terminx /polymer/eduke32/source/m32exec.c Introduce "twalltype" for temporary uses of walltype where using wall_tracker_hook() would be invalid. This is similar to "tspritetype" and fixes a bunch of problems in the editor that cropped up when changing the tracker sanity checks to an assert that only exists in debug builds (branching upon any write to a sprite, sector or wall had an unacceptable impact on performance).  
4898 2349d 2h terminx /polymer/eduke32/source/m32exec.c Revise C++ structure trackers for performance and introduce "tspritetype", for temporary sprites or other usages where using the trackers would be invalid or undesired. DONT_BUILD.  
4880 2353d 11h helixhorned /polymer/eduke32/source/m32exec.c Mapster32: make sprite duplication examples in m32script_ex.map work again.

- Work around a sequencing issue (assignment of searchstat) in
M32_DrawRoomsAndMasks()
- When having sprites highlighted and changing shade, since r1943 change
every highlighted sprite's shade if one of them is aimed at. With this
revision, if SHIFT is pressed while doing that, only change the aimed at
sprite's shade
- a.m32: Use 'break' from a state instead of 'return'. The former may be
"sticky" in a way that is not intended. Needs to be debugged later.
- Update instructions in m32script_ex.map

DONT_BUILD.
 
4799 2384d 12h helixhorned /polymer/eduke32/source/m32exec.c m32script: fix tilesizx[]/tilesizy[] access. Can also 'copy' from them.  
4798 2384d 12h helixhorned /polymer/eduke32/source/m32exec.c M32Script cleanup. Fixes at least one non-minor and one minor bug.  
4658 2427d 4h terminx /polymer/eduke32/source/m32exec.c Various additional optimizations: add CLASSIC_SLICE_BY_4 mode to unroll some of the loops in a-c, replace integer divisions by a divisor unknown at compile time with usage of libdivide, clean up pragmas further by removing more old stuff that wasn't used anywhere. This is another one of those nasty commits that make people cry. DONT_BUILD.  
4563 2516d 0h hendricks266 /polymer/eduke32/source/m32exec.c Move implementation details of Mapster32's sound system from m32exec.c into sounds_mapster32.c, and set up a sound system stub in KenBuild Editor.

DONT_BUILD.
 
4560 2516d 0h hendricks266 /polymer/eduke32/source/m32exec.c Progress towards KenBuild Editor, part 2.

DONT_BUILD.
 
4541 2523d 22h hendricks266 /polymer/eduke32/source/m32exec.c Replace the funkily-formatted GNU.TXT with the FSF's official gpl-2.0.txt. Also, update the FSF's address in all source files that contain it.

DONT_BUILD.
 
4491 2575d 7h helixhorned /polymer/eduke32/source/m32exec.c Bye, bye, B*alloc(), all hail X*alloc()! Replace large portion of the calls...

... and cull code that is dead with the X*alloc() versions since they never
return NULL on requesting memory.

Use something like
git grep '[^Xx]\(m\|c\|re\)alloc *('
and
git grep '[^Xx]strdup *('
to see places where I left the B*alloc() calls intact.

BUILD_LUNATIC.
 
4385 2643d 22h terminx /polymer/eduke32/source/m32exec.c Widespread use of ARRAY_SIZE macro.  
4360 2660d 10h helixhorned /polymer/eduke32/source/m32exec.c Propagate 'blend' to rotatesprite_(), but don't hook it up to scripting yet.  
4357 2665d 11h helixhorned /polymer/eduke32/source/m32exec.c a.m32: add states 'uniformceiling' and 'uniformfloor'.

Given highlighted sectors, these take the arithmetic mean of their ceiling's
or floor's (respectively) z, removing the slope bit from all, and setting the
new z to the mean one, rounded down to 1024 Build z units (one PGUP/PGDN).

BUILD_LUNATIC.
 
4196 2744d 10h helixhorned /polymer/eduke32/source/m32exec.c m32script: fix parsing negated labels, getnumber* with neg. 'max'.

Exposed by this snippet from a.m32:
getnumber256 .owner "OWNER (projection picnum): " -MAXTILES
Now, Alt+KP2 works as expected in 3D mode.
 
4068 2825d 17h helixhorned /polymer/eduke32/source/m32exec.c Prevent calling function pointers cast to an incompatible type.

Most often, this had happened when casting comparison functions for qsort()
like these: "int yax_cmpbunches(const int16_t *b1, const int16_t *b2)"
to a function pointer type expecting "const void *". Alas, this is undefined
behavior: see
http://blog.frama-c.com/index.php?post/2013/08/24/Function-pointers-in-C
and posts linked from it.

At least two cases have not been fixed:
- The savegame system maintains pointers which are either to data or a function in
the generic "void *". This ought to be made into a union.
- Probably also:
#define OSD_ALIAS (int32_t (*)(const osdfuncparm_t*))0x1337
 
3823 2939d 22h helixhorned /polymer/eduke32/source/m32exec.c Replace inline "qsetmode==200" checks with in3dmode().

Analogously for the negation; remove a couple of redundant decls of "qsetmode".
 
3753 2957d 12h helixhorned /polymer/eduke32/source/m32exec.c m32script: sync rotatesprite* with CON.  
3610 3006d 3h hendricks266 /polymer/eduke32/source/m32exec.c Add "rotatespritea" to CON and M32script.

I hope I didn't bruise Lunatic too much.
 

Show All