EDuke32 Changelog Unofficial archive

What changed in EDuke32, build by build

2,117 builds · 8,866 commits · 25 authors · October 2009 – August 2026

Commits per year

Select a year to see its builds
SVN era · r1519 – r8798 Git era · voidpoint.io, from april 2020
Filters · 1 active

Showing 670 builds · 2,334 commits

Export CSV
Display options
Commit details:

May 2012 15 builds · 64 commits

Build 2632

1 May 2012 · 5 commits · 1 author SVN
Open build
  • General

    Some leftover stuff from the Wii patch.

    Helixhorned r2632 1 May, 05:41
    Show details

    - in actors.c, make a static array const (the original patch removed the staticness) - remove one comment and change some compiled-out code - remove commented out pre-Makefile.common stuff Some changes were not adopted from tueidj's patch: - whitespace cleanup - ud.config.UseJoystick = 1 in config.c - Makefile.common, as mentioned before - proper read-in of g_numRealPalettes, because it was done with r2503

  • General

    Patch adding Wii support by tueidj, part 11: miscellaneous changes

    Helixhorned r2631 1 May, 05:41
    Show details

    - BIGX -> BIGX_, likely again because of a name clash - make a loop in animlib.c iterate in forward direction

  • General

    Patch adding Wii support by tueidj, part 10: sound and endianness changes

    Helixhorned r2630 1 May, 05:40 Fix
    Show details

    This part is a mixture of the original patch and my changes. It seems like tueidj had some trouble 1) getting OGG to work, which is why it's conditionally compiled out 2) struggling with endianness with the mixing routines? This may be also due to him missing to define two others BIGENDIAN macros (our code is in need of cleanup there). Note the change in jaudiolib/src/mix.c! Because I added my share to this part, I might have actually broken sound mixing on big-endian platforms.

  • General

    Patch adding Wii support by tueidj, part 9: build.h sector/wall/spr/... limits

    Helixhorned r2629 1 May, 05:40 Engine
    Show details

    On the Wii, V7 (i.e. original) map limits are used and the maximum screen size is 1600x1200.

  • General

    Patch adding Wii support by tueidj, part 8: system-specific changes

    Helixhorned r2628 1 May, 05:40
    Show details

    - conditionally compiles out some code intended for the PC platforms - compat.c: get home directory routine, access() implementation - game.c: don't use ioctl(), lower cache1d size to 8 MiB, Wii-specific initialization code and application directory ("apps/eduke32")

Build 2627

1 May 2012 · 7 commits · 1 author SVN
Open build
  • General

    Patch adding Wii support by tueidj, part 7: networking

    Helixhorned r2627 1 May, 05:39
    Show details

    This simply macro-defines various low-level networking functions.

  • General

    Patch adding Wii support by tueidj, part 6: mutexes

    Helixhorned r2626 1 May, 05:39 Fix
    Show details

    For the Wii, SDL's mutex functionality is used. The implementation in the original patch was wrong though, so this part required non-trivial changes.

  • General

    Patch adding Wii support by tueidj, part 5: game-side input device changes

    Helixhorned r2625 1 May, 05:39
    Show details

    - the crosshair is displayed at the position read from the absolute pointing device - in the menus, use the hat input (that was mapped to mouse buttons in part 4) for navigation

  • General

    Patch adding Wii support by tueidj, part 4: joystick support

    Helixhorned r2624 1 May, 05:38 Fix
    Show details

    - sdlayer.c: custom "get joystick button names" routine - jmact/mouse.c: packs some joystick events into the value returned by MOUSE_GetButtons(): bits used are 256, 512, 4096, 8192 - MOUSE_Init() --> Mouse_Init(), presumably because of a name clash? - comments out right-shift of joystick analog values by 5, maybe this fixes the scale problems with the joystick on the PC too?

  • General

    Patch adding Wii support by tueidj, part 3: SDL-level mouse changes

    Helixhorned r2623 1 May, 05:38
    Show details

    This part adds support for an absolute pointing device.

Open the build to see all 7 commits

April 2012 11 builds · 37 commits

Build 2620

29 Apr 2012 · 5 commits · 1 author SVN
Open build
  • General

    Revert r2232, "don't reset full-screen tint on basepal change" in CON setgamepalette.

    Helixhorned r2620 29 Apr, 13:55 FixCON
    Show details

    Because gltexinvalidate*() could be called too often when setgamepalette is used while having a tint overlaid else. Pending thorough analysis/reworking of the 32-bit mode base palette handling / texture invalidation.

  • General

    When deleting GL skin textures, handle the case where they are aliased.

    Helixhorned r2619 29 Apr, 13:54
    Show details

    That is, have a second loop over all models run for each deleted tex and null the texname. This is ugly, sure, but it's better than calling glDeleteTextures on stale names.

  • General

    Fix 'realloc' routine of GL texture name (id) debugging code.

    Helixhorned r2618 29 Apr, 13:54 Fix
  • General

    Prettify some code in mdsprite.c.

    Helixhorned r2617 29 Apr, 13:54
    Show details

    - factor out a longish expression - whitespace, move a var down - remove unneeded casts (recall: "usual arithmetic conversions") - strcat -> Bstrcat, strcpy -> Bstrcpy

  • General

    Lunatic translator: nearing syntax completion while treading in murky waters.

    Helixhorned r2616 29 Apr, 13:54 Fix
    Show details

    - bump lpeg stack limit to 1024 (hack) for long if/if/if...else chains - lexical: newline, EOF and whitespace; "bad" identifiers; hex literals, newline terminated strings (allow empty string) - syntax: allow nesting of array expressions, it's easier than special-casing; handle issues with structs expecting parm2 (hackish); userdef; switch/case/default - fix parsing some commands; mind prefixes! - frontend: if failing match, print last keyword and its position; warn on "bad" identifiers (one per such); batch processing from command line - Files that locate finds from my linux box now pass (except where there are really syntax errors).

Build 2615

28 Apr 2012 · 2 commits · 1 author SVN
Open build
  • General

    CON palfrom: sanity-check current player and maybe print error message.

    Helixhorned r2615 28 Apr, 14:56 CON
  • General

    Make two-way trains capable of carrying SE49 or SE50 sprites.

    Helixhorned r2614 28 Apr, 14:56 Engine

Build 2610

14 Apr 2012 · 1 commit · 1 author SVN
Open build
  • General

    Fix a null pointer access in Polymer mouse picking.

    Helixhorned r2610 14 Apr, 06:04 FixEngine
    Show details

    Specifically, it was in the "determine searchwall when aiming at floor or ceiling" part. Now, if prsectors[]->ceil.plane (or ->floor.plane) is NULL, we set the searchwall to the sector's firstwall and return.

Build 2609

13 Apr 2012 · 3 commits · 1 author SVN
Open build
  • General

    Cleanup in game.c/actors.c part2, only whitespace changes.

    Helixhorned r2609 13 Apr, 03:46
  • General

    Some cleanup in game.c/actors.c, part 1.

    Helixhorned r2608 13 Apr, 03:45
  • General

    actors.c: factor out various duplicated code in G_MoveEffectors.

    Helixhorned r2607 13 Apr, 03:45 Fix
    Show details

    - 4 instances -> HandleSE31 - 4 instances -> MaybeTrainKillPlayer - 2 instances -> MaybeTrainKillEnemies - move a couple of variables into inner blocks and add 'const' for easier reading In passing, fix a minor glitch where the squishing sound of an enemy that got run over by an SE 6 or 14 car would appear to originate from the SE instead of the enemy's last position.

Build 2606

10 Apr 2012 · 3 commits · 1 author SVN
Open build
  • when drawing art sky, temporarily set texcoord s wrapping to clamping.

    Helixhorned r2606 10 Apr, 13:14 FixEngine
    Show details

    This properly fixes the unwanted vertical lines.

  • General

    Mapster/classic: Make Ctrl-P toggle parallax rendering types in 3D mode again.

    Helixhorned r2605 10 Apr, 13:14 Engine
    Show details

    Of course, it's just for the heck of it, since this setting is not saved into MAP files. I kinda like the cylindrical projection...

  • General

    Fix flipping masked walls in Mapster/classic.

    Helixhorned r2604 10 Apr, 13:14 FixEngine
    Show details

    This has been there since searchbottomwall introduction in r1466.

Build 2603

9 Apr 2012 · 4 commits · 1 author SVN
Open build
  • General

    Fix aspect correction in fullscreen mode.

    Helixhorned r2603 9 Apr, 12:22 Fix
    Show details

    Previously, we only set the viewingrange according to the physical screen's dimensions, but didn't correct yxaspect for a potential non-square pixel ratio.

  • General

    Add samples/aspect.map for calibrating aspect-related settings and testing.

    Helixhorned r2602 9 Apr, 12:22
  • General

    On Windows, auto-determine r_screenaspect on startup.

    Helixhorned r2601 9 Apr, 12:22
    Show details

    Consequently, it's not saved as a setting in either the game or editor config files. We do this by calling "GetSystemMetrics(SM_CXSCREEN)" (accordingly for y) and calculating the cvar by dividing common factors, since it has to be in the form WWHH. This may fail for _really_ strange screen dimensions, so a log message is printed at the very beginning.

  • General

    On Windows, don't allow map playtesting from Mapster when in fullscreen.

    Helixhorned r2600 9 Apr, 12:21 Engine
    Show details

    Because this doesn't even seem to work on XP, we're being spammed with DDERR_SURFACELOST messages...

Build 2599

8 Apr 2012 · 2 commits · 1 author SVN
Open build
  • General

    Fix point deletion in Mapster32.

    Helixhorned r2599 8 Apr, 08:52 FixEngine
    Show details

    Previously, it was possible to leave a sector with less than three walls if a point got deleted transitively by a TROR link. Now, a proper check is done for all deletion candidates and a message stating which wall and sector is problematic is printed. Thanks for Diaz for pointing out the brokenness.

  • fix inconsistent format letter vs. vararg in fprintf.

    Helixhorned r2598 8 Apr, 08:52 Fix

Build 2592

5 Apr 2012 · 3 commits · 1 author SVN
Open build
  • General

    A couple of less interesting changes.

    Helixhorned r2592 5 Apr, 12:49
    Show details

    - strip 'inline' from animateoffs() definition, remove declaration in build.h - one min/max -> clamp - one malloc/strlen/strcpy -> strdup

  • fix some commands breaking too early in case of a failed validation.

    Helixhorned r2591 5 Apr, 12:49 FixEngineCON
    Show details

    If one next instruction happened to be interpreted, madness would ensue, because the pointer wouldn't be aligned on the "opcode" part anymore. Also, with "seti", set current sprite index only after a successful validation.

  • General

    New M32Script command "getspritelinktype" <spritenum> <<linktypevar>>.

    Helixhorned r2590 5 Apr, 12:49 EngineCON
    Show details

    This get into the writable variable the "linking type" of the sprite with index <spritenum>. The result is a bit field of ORed values: 1: lotag has linking semantics 2: hitag 4: extra, 8: xvel, 16: yvel, 32: zvel, 64: owner (custom only) Custom setting about which sprites have what kind of linking can be programmed via EVENT_LINKTAGS: it receives a sprite index as the 'current sprite' and is supposed to return the bit field in RETURN. An example which lists sprites and their linking hi- and lotags is provided in the state 'listusedtags' in a.m32.

Build 2589

4 Apr 2012 · 9 commits · 1 author SVN
Open build
  • General

    Fix "ignored application parameter" message for short options.

    Helixhorned r2589 4 Apr, 11:58 Fix
  • General

    Big clean up in defs.c and related content. The usual stuff...

    Helixhorned r2588 4 Apr, 11:58
    Show details

    - factor out many identical checks in a convenient function; some messages may read slightly differently now and tile ranges may be handled more strictly (error out if one of the limits is invalid) - factor out two instances of identical (up to one arg) code into tile_from_truecolpic - factor out setting picsiz[] and stuff into set_picsizanm - some checks - Make "undefmodelof" non-functional and warn. - in "animtilerange", if the tile difference is >= 64, error out since we can't store it in picanm[]

  • General

    Add dummy parsing of "nofloorpalrange" to defs.c.

    Helixhorned r2587 4 Apr, 11:57
  • General

    Move some debugging stuff out of compat.h into glbuild.h and common.h.

    Helixhorned r2586 4 Apr, 11:57
  • General

    Fix "Thanks (...) for giving us big heads" message at the end of Ep4.

    Helixhorned r2585 4 Apr, 11:57 Fix
    Show details

    This was more or less done by trial and error rather than understanding what exactly is going on there. In any case, the code for all the different ending scenes ought to be factored out instead of being duplicated with subtle differences every time.

Open the build to see all 9 commits

March 2012 21 builds · 116 commits

Build 2575

31 Mar 2012 · 3 commits · 1 author SVN
Open build
  • General

    CON showview/showviewunbiased: silently clamp 'horiz' to HORIZ_MIN..HORIZ_MAX.

    Helixhorned r2575 31 Mar, 04:22 CON
  • General

    Allow the screen bounds difference in CON showview/-unbiased to be less than 2.

    Helixhorned r2574 31 Mar, 04:22 EngineCON
    Show details

    This requires one tweak in drawrooms' umost/dmost setup to prevent oob access. Specifically, a coordinate difference of 0 is allowed. In the classic renderer, this would mean a one-pixel (real screen coords) height or width. In Polymost, it would currently mean a one-pixel height and zero-pixel width, but this might be subject to change.

  • General

    New CON command 'showviewunbiased', mapping the screen coords w/o round-to-0 bias.

    Helixhorned r2573 31 Mar, 04:22 CON
    Show details

    The showview command transforms the 320-based screen bound coordinates to the real screen bounds like xreal = (x*xdim)/320, which shows a bias towards zero: for example, for a 1680 screen width, the maximum permissible value 319 is mapped to round_to_zero((319*1680)/320) == 1674. (The rounding is implicit in the integer division). This makes it impossible for a view to cover the whole screen with any other resolution than 320x200. The new command transforms the bounds like xreal = (x*(xdim-1))/319, which would map 319 to 1679 in the preceding example.

Build 2571

29 Mar 2012 · 5 commits · 1 author SVN
Open build
  • General

    When requesting a non-fogged identity lookup from makepalookup(), alias to palookup[0].

    Helixhorned r2571 29 Mar, 14:17 Engine
    Show details

    (That is, the base shade table.) Before, we allocated each palookup buffer. For a vanilla setup, this means that we're now saving 224*32*256 ~= 1.8 megs, which might be interesting for low-memory gadgets.

  • General

    Don't fall back on allocache if malloc'ing a palookup buffer or transluc table fails.

    Helixhorned r2570 29 Mar, 14:17 FixEngine
    Show details

    First, it's unlikely in our day and age. Second, they're always free'd at the end, so allocache'ing them is incorrect.

  • General

    Make makepalookup() accept NULL for 'remapbuf', meaning "use identity mapping".

    Helixhorned r2569 29 Mar, 14:17 Engine
    Show details

    Also, - use this in game.c and astub.c palookup loading code - when makepalookup() is passed a 0 palnum, return early. This means that 'fogpal' will silently fail when attempting to change pal 0. - in 'makepalookup' DEF command, error out if passed a pal of 0.

  • General

    DEF command 'makepalookup', allowing indpt. specification of fog and color remapping.

    Helixhorned r2568 29 Mar, 14:16 Engine
    Show details

    The syntax is as follows: makepalookup { <token-list...> } where valid tokens are * pal <palnum>: the palette number, 1 .. 250 * red <num>, green, blue (or r, g, b): the fog color components on a 0 to 63 scale. Components that are not present are assumed to be 0. * remappal <palnum>: the palette number to take the index remapping from, i.e. 21 for blue -> red. When absent, defaults to 0. * remapself: when present, specifies that the remappal is the same as the 'pal'. This is to prevent textual redundancy when overwriting existing palookups. Examples (best tested with tile #251): 1) makepalookup { pal 200 red 30 remappal 23 } This creates palookup 200 with a fog of (30,0,0) and a blue-to-yellow remapping (assuming it has not been changed before) 2) makepalookup { pal 21 red 30 remapself } This 'fogifies' palookup 21 with a red fog. 3) makepalookup { pal 21 red 30 } This overwrites palookup 21 with a red fog, but clears the blue-to-red remapping. The fog aspect of this command affects the GL modes just like 'fogpal', but the remapping has no effect for hightiles. - Also, silently clamp 'fogpal' r,g,b values to the range 0 .. 63.

  • General

    In OpenGL modes, save savegame screenshots as they appear on the screen.

    Helixhorned r2567 29 Mar, 14:16 Engine
    Show details

    Instead of drawing the rooms and masks with the classic renderer once. The captured scene is transformed to use the base palette, so that the screenshot will also show up in classic. No aspect correction is done.

Build 2566

28 Mar 2012 · 14 commits · 1 author SVN
Open build
  • General

    The obligatory portion of trivial stuff.

    Helixhorned r2566 28 Mar, 12:45
  • Fix a potential uninitialized mem read in debug msg when in void space.

    Helixhorned r2565 28 Mar, 12:45 FixEngine
  • General

    Clean up astub.c in a similar fashion to the preceding changes.

    Helixhorned r2564 28 Mar, 12:44
  • General

    Make g_grpNamePtr memory-clean, extern clearGrpNamePtr().

    Helixhorned r2563 28 Mar, 12:44
  • General

    numgrpfiles --> NUMGRPFILES in Apple/GameListSource.game.m

    Helixhorned r2562 28 Mar, 12:44
Open the build to see all 14 commits

Build 2552

26 Mar 2012 · 11 commits · 1 author SVN
Open build
  • General

    Fix a potential sprintf to a buffer passed to it as a string argument.

    Helixhorned r2552 26 Mar, 15:06 Fix
  • fix specifying a custom configuration file with -cfg.

    Helixhorned r2551 26 Mar, 15:05 FixEngine
    Show details

    We were writing into a string literal. Ouch!

  • General

    Add "static inline" helper function "Bstrncpyz" to compat.h.

    Helixhorned r2550 26 Mar, 15:05
  • General

    Factor out various instances of getatoken() into common.c.

    Helixhorned r2549 26 Mar, 15:05
    Show details

    Alongside, these make into into the header: - the 'tokenlist' type (a typedef'd struct) - the T_EOF and T_ERROR enumeration values

  • General

    Guard scriptfile.h with an #ifndef sentinel.

    Helixhorned r2548 26 Mar, 15:04
Open the build to see all 11 commits

Build 2534

25 Mar 2012 · 5 commits · 1 author SVN
Open build
  • more complex gamevar-decl code.

    Helixhorned r2534 25 Mar, 15:01 CON
  • General

    Bound-check the 'picnum' argument to rotatesprite; tweak CON digitalnumber check.

    Helixhorned r2533 25 Mar, 15:01 CON
    Show details

    There are instances where oob picnums may propagate to that function, so protect it. The digitanumber[z] bound check is actually made more permissive, but could also just as well be removed now.

  • General

    Accumulated trivia.

    Helixhorned r2532 25 Mar, 15:01 Engine
    Show details

    - engine.c: move some variables into a lower block - premap.c: clearbufbyte --> Bmemset

  • General

    Take over more correct G_AddGroup from game.c to astub.c.

    Helixhorned r2531 25 Mar, 15:00
    Show details

    The code in the editor was potentially doing a strcat on a strdup'd string. Also, rename AddGamePath to G_AddPath in astub.c and add CODEDUP markers because shared stuff like this ought to be factored out into a separate source file some time.

  • General

    Allow up to 7 skills, coded by M210 and taken over with modifications.

    Helixhorned r2530 25 Mar, 15:00 CON
    Show details

    Skill names are defined via 'defineskillname' as before, but the index of the last non-empty skill name (plus one) is taken as the skill count. So, if you only define the 6th, there will be no effect. Note that currently, there is no way to specify less than four skills because the CON parser doesn't allow the empty string for the name (it'll go beyond the line) and because the default skill names are initialized in EDuke32 too, in addition to the CONs.

Build 2529

25 Mar 2012 · 4 commits · 1 author SVN
Open build
  • General

    Fix an assertion failure with dorotatesprite 4-pixels vline drawing.

    Helixhorned r2529 25 Mar, 06:55 Fix
    Show details
  • General

    Fix static-main-arrays debug build, which is without the clipshape feature.

    Helixhorned r2528 25 Mar, 06:54 Fix
  • General

    Factor out two practically identical instances of ceiling/floor setup code.

    Helixhorned r2527 25 Mar, 06:54
  • General

    Factor out assignment of various globals in 4 instances of wall drawing code.

    Helixhorned r2526 25 Mar, 06:54 Engine
    Show details

    This makes the differences in these codes stand out much more clearly.