EDuke32 Changelog Archivio non ufficiale

Cosa è cambiato in EDuke32, build per build

2.117 build · 8.866 commit · 25 autori · Ottobre 2009 – Agosto 2026

Commit per anno

Seleziona un anno per vederne le build
Era SVN · r1519 – r8798 Era Git · voidpoint.io, da aprile 2020
Filtri · 1 attivi

Visualizzate 670 build · 2.334 commit

Esporta CSV
Opzioni di visualizzazione
Dettagli dei commit:

Marzo 2012 21 build · 116 commit

Build 2525

24 mar 2012 · 2 commit · 1 autore SVN
Apri la build
  • Generale

    Make "LIBS+= $(L_SSP) -Wl,--enable-auto-import" conditional to Windows.

    Helixhorned r2525 24 mar, 08:59
  • Generale

    Correct 'nofloorpalrange' range clamping, move one get_hud_pal() farther down.

    Helixhorned r2524 24 mar, 08:59
    Mostra dettagli

    The nofloorpalrange beginning and end indices are silently clamped to 1 .. 255.

Build 2519

22 mar 2012 · 9 commit · 1 autore SVN
Apri la build
  • Generale

    Rather trivial changes in engine.c and crc32.c.

    Helixhorned r2519 22 mar, 15:48 Engine
  • Generale

    Make 'nofloorpalrange' def token affect HUD weapons.

    Helixhorned r2518 22 mar, 15:47
  • Generale

    New game def token "nofloorpal <pbeg> <pend>", disabling sprites taking on floor pals.

    Helixhorned r2517 22 mar, 15:47 Engine
    Mostra dettagli

    It has always annoyed me how floors with "shirt-color" type palookups like 21 affected the color of its containing sprites and HUD-drawn stuff. This commit allows one to specify an inclusive range of pals for which this should be disabled for sprites (but not for HUD stuff, yet).

  • Generale

    Remove global 'uint8_t *anim_pal' which was only used once as a temporary.

    Helixhorned r2516 22 mar, 15:47
  • Generale

    In Mapster32, remove ReadGamePalette() and GAMEpalette[] and use engine's palette[].

    Helixhorned r2515 22 mar, 15:46 Engine
Apri la build per vedere tutti i 9 commit

Build 2505

20 mar 2012 · 3 commit · 1 autore SVN
Apri la build
  • Generale

    Probably fix sheared PNG screenshots.

    Helixhorned r2505 20 mar, 11:32 Fix
    Mostra dettagli

    We shouldn't assume a particular bytes-per-line value and use ylookup[] instead. Specifically, windowed modes on Windows use a frame buffer that always has odd x dimension.

  • Generale

    Rename 'numpalookups' to 'numshades' internally.

    Helixhorned r2504 20 mar, 11:32
  • Generale

    Weirdness removal in G_LoadExtraPalettes (which reads lookup.dat).

    Helixhorned r2503 20 mar, 11:31
    Mostra dettagli

    - replace bit tweaking for big endian archs with clear code - allow palette lookups >= 128, previously we read into a signed byte

Build 2502

18 mar 2012 · 7 commit · 1 autore SVN
Apri la build
  • Generale

    Clear up after r2495. (Because I'm a pedantic asshole.)

    Helixhorned r2502 18 mar, 16:18 FixEngine
    Mostra dettagli

    - in Mapster, pre-form the default 10 clip map names before returning from G_CheckCommandLine() so it gets loaded even if we passed no cmdline args. - malloc + strlen + strcpy --> strdup - don't need to spank dead variables ;) - we may call calloc with zero size, which isn't bad by itself, but asserting for non-null afterwards is. Allocs of 0 are implementation-defined, and may well return a null pointer (C99 7.20.3).

  • Generale

    Assorted trivia.

    Helixhorned r2501 18 mar, 16:18
    Mostra dettagli

    Make some computer Duke opponent variables in player.c static.

  • Generale

    Input validation: guard makepalookup 'pal', 2dcol 'col'. Add one const.

    Helixhorned r2500 18 mar, 16:17
  • Generale

    Use vlineasm4 for the upright-oriented rotatesprite in C-replacements build.

    Helixhorned r2499 18 mar, 16:17
    Mostra dettagli

    Gives a couple more fps for scenes where much screen estate is covered by stuff, like when holding the devastator.

  • Generale

    Port tvlineasm2 to C and enable transmaskvline2 code also for all-C builds.

    Helixhorned r2498 18 mar, 16:17 Engine
    Mostra dettagli

    With the same setup as before, a screen-filling translucent wall (with nothing drawn behind it) renders at about 7 fps faster (from 60-something fps initially)

Apri la build per vedere tutti i 7 commit

Build 2492

17 mar 2012 · 5 commit · 1 autore SVN
Apri la build
  • Generale

    Remix undo/redo system, fixing potential access of freed memory.

    Helixhorned r2492 17 mar, 04:35 FixEngine
    Mostra dettagli

    A run of consecutive mapstates may share sector/wall/sprite blocks, but the code was deciding whether to free them solely on local properties. Now, save a reference count at the beginning of each such allocated block and free it only if it reaches zero.

  • Generale

    In undo/redo, always print the revision that got _restored_.

    Helixhorned r2491 17 mar, 04:35
  • Generale

    "Promote" oob sectnum/statnum sprites to corruption level 4.

    Helixhorned r2490 17 mar, 04:34 FixEngine
    Mostra dettagli

    Also, always print at least level 5 corruptions (that is, have no instances of completely silent corruptcheck).

  • sprite list consistency checker in corruptcheck.

    Helixhorned r2489 17 mar, 04:34 FixEngine
    Mostra dettagli

    This checks for about every possible type of sprite list corruption and reports back with a corruption level 5 if one of the 14 validations fail.

  • Generale

    Tweak Mapster32's sound index (F2).

    Helixhorned r2488 17 mar, 04:34 Engine
    Mostra dettagli

    - start scrolling from about half of the visible page - PGUP/DGDN moves the cursor by 1/4 of the page - code cleanup (we only need one displine[80], use clearkeys())

Build 2484

14 mar 2012 · 8 commit · 1 autore SVN
Apri la build
  • Generale

    Make 'Numsprites' also accessible from CON (read-only) under the same name.

    Helixhorned r2484 14 mar, 15:32 CON
    Mostra dettagli

    Note the capitalization. I hope that this makes clashes with user variable names less likely.

  • Generale

    Save 'Numsprites' into savegames and mapstates. Bump savegame minor version.

    Helixhorned r2483 14 mar, 15:31
  • Generale

    Fix (still not enabled) undo/redo code compilation.

    Helixhorned r2482 14 mar, 15:31 Fix
    Mostra dettagli

    Also include one comment about a currently failing assertion there.

  • Generale

    Include <assert.h> in compat.h.

    Helixhorned r2481 14 mar, 15:31
  • Generale

    When loading map w/ oob sectnum sprites, make them have sect. 0 if updatesector fails.

    Helixhorned r2480 14 mar, 15:30 Engine
    Mostra dettagli

    Previously, if the sprite turned really out to be in void space, either freelist inconsistency (before the list rewrite) or oob access (now) would happen. Also add an bound-checking assert() for insertsprite's sectnum argument (it's not a bound check!)

Apri la build per vedere tutti i 8 commit

Build 2454

11 mar 2012 · 9 commit · 1 autore SVN
Apri la build
  • Generale

    Rename ud.clipping to ud.noclip internally for sanity.

    Helixhorned r2454 11 mar, 10:38 CON
    Mostra dettagli

    This might now be even more confusing for users reading both the source and CON code (where the access is necessarily still via '.clipping'), but at least reading the source now makes sense :P

  • Generale

    After executing actor or loadactor CON code, null the instruction pointer.

    Helixhorned r2453 11 mar, 10:38 FixCON
    Mostra dettagli

    This is so that in the event of a crash, no CON dump will be printed if no (actor or loadactor) CON code was actually executing at the time of the crash, confusing the users. Note: doesn't apply for event code.

  • Generale

    Explicitly call A_DeleteSprite() from game code instead of relying on macro expansion.

    Helixhorned r2452 11 mar, 10:38
  • Generale

    Remove non-SAMESIZE_ACTOR_T code and remaining #defines.

    Helixhorned r2451 11 mar, 10:37
    Mostra dettagli

    We've been running with same-sized actor_t for a while without problems now. In the unlikely event (famous last words) that an issue should pop up later, this revision should be consulted for the differences between the two versions.

  • Generale

    Remove YES and NO #defines from duke3d.h since they're giving warnings on OS X.

    Helixhorned r2450 11 mar, 10:37
Apri la build per vedere tutti i 9 commit

Build 2442

10 mar 2012 · 5 commit · 1 autore SVN
Apri la build
  • Generale

    Rename SOUNDOWNER's (used in sound_t) member .i to .ow for easier grepping.

    Helixhorned r2442 10 mar, 13:22
  • Generale

    With dndebug, show the currently playing sounds.

    Helixhorned r2441 10 mar, 13:22 Engine
    Mostra dettagli

    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)

  • Generale

    Rename P_ActivateSwitch()'s 3rd argument from 'switchtype' to 'switchissprite'.

    Helixhorned r2440 10 mar, 13:22
  • Generale

    Some sound source cleanup, no functional changes.

    Helixhorned r2439 10 mar, 13:21
    Mostra dettagli

    - make a couple variables static in sounds_mapster32.c - KHz --> Hz in initialization text

  • Generale

    Clean up cache1d.c.

    Helixhorned r2438 10 mar, 13:21
    Mostra dettagli

    - make some variables static - conditionally compile out some code with DEBUG_ALLOCACHE_AS_MALLOC - exit(1) on failure (instead of exit(0)) - some formatting

Build 2431

8 mar 2012 · 5 commit · 1 autore SVN
Apri la build
  • Generale

    OS X: whitespace-cleanup Objective-C files. Also does TAB-->space.

    Helixhorned r2431 8 mar, 11:16
  • Generale

    OS X: fix and enable startup windows; enable PPC build in osxbuild.sh.

    Helixhorned r2430 8 mar, 11:16 Fix
  • Generale

    OS X Objective-C files: NSApp -> nsapp as before for a PPC linkage fix

    Helixhorned r2429 8 mar, 11:16 Fix
    Mostra dettagli

    Note: I'm not really sure whether I'm initializing it in the right places.

  • remove now unused B_ATTRIBUTE_USED macro.

    Helixhorned r2428 8 mar, 11:15
  • fix mirror-related oob access analogous to r1872's fix for classic.

    Helixhorned r2427 8 mar, 11:15 FixEngine
    Mostra dettagli

    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.

Build 2424

7 mar 2012 · 2 commit · 1 autore SVN
Apri la build
  • Generale

    Optimizations and tweaks for C replacements of mhline and thline.

    Helixhorned r2424 7 mar, 11:42 FixEngine
    Mostra dettagli

    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.

  • Generale

    Optimize 'rainbow' background drawing in the editor with 8-bit renderer.

    Helixhorned r2423 7 mar, 11:42 Engine

Build 2416

4 mar 2012 · 14 commit · 1 autore SVN
Apri la build
  • Generale

    Formatting; remove 'loop has empty body' warnings with clang.

    Helixhorned r2416 4 mar, 12:15
    Mostra dettagli

    I have to admit, I like its grumbling.

  • with r_parallaxskypanning=1, clamp the sky at a constant horizon.

    Helixhorned r2415 4 mar, 12:15 Engine
    Mostra dettagli

    See E4L1 for what this means.

  • Generale

    Fix apparent horizon not being independent of viewingrange (classic/Polymost).

    Helixhorned r2414 4 mar, 12:14 FixEngine
    Mostra dettagli

    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...

  • Generale

    Tweak 'dncoords' display.

    Helixhorned r2413 4 mar, 12:14 Engine
    Mostra dettagli

    added: sector extra; viewingrange and yxaspect before the main drawrooms call removed: randomseed

  • Generale

    ATTRIBUTE((pure)) for Ptile2tile(), add a forgotten comment.

    Helixhorned r2412 4 mar, 12:14
Apri la build per vedere tutti i 14 commit

Build 2394

1 mar 2012 · 2 commit · 1 autore SVN
Apri la build
  • Generale

    Define strtoll to _strtoi64 on MSVC.

    Helixhorned r2394 1 mar, 15:36
    Mostra dettagli

    Usage of a search machine by Hendricks.

  • Generale

    When failing to open a savegame file for writing, print the reason to the log.

    Helixhorned r2393 1 mar, 15:35

Febbraio 2012 24 build · 82 commit

Build 2392

29 feb 2012 · 1 commit · 1 autore SVN
Apri la build
  • Generale

    More rebust (and "correct"/expected) decimal number parsing in CON.

    Helixhorned r2392 29 feb, 07:27 FixCON
    Mostra dettagli

    The replacement of atoi with strtol in r2374 had the side-effect that numbers out of the range of a 32-bit integer were being returned as LONG_MAX/LONG_MIN instead of being converted by taking the bits and re-interpreting them (note that it was a coincidence that atoi behaved that way; to be strict, the behavior was undefined and there is no regression). Now, we implement parsing decimal integers using strtoll (with assuming "long long" being the same as int64_t) and check in which range the number falls. If it's in the range (INT32_MAX <= x <= UINT32_MAX), issue a warning; if it's not in (INT32_MIN <= x <= UINT32_MAX), warn too (though this better ought to be an error?). In each case, the bit representation is converted to the CON number type (int32 to assume maximum portability) by re-interpreting the bits [this is the same as an int/int cast, with GCC at least; more generally, it's implementation-defined per C99].

Build 2390

27 feb 2012 · 1 commit · 1 autore SVN
Apri la build
  • Generale

    Significantly speed up non-power-of-two floor sprite texture mapping functions.

    Helixhorned r2390 27 feb, 11:40 Engine
    Mostra dettagli

    (Classic renderer). We don't need 64-bit integers; also use the nice asm version of divscale32() if possible.

Build 2387

25 feb 2012 · 1 commit · 1 autore SVN
Apri la build
  • Generale

    Try to find another mirror wall if the assigned one breaks.

    Helixhorned r2387 25 feb, 07:59 FixEngine
    Mostra dettagli

    This fixes mirrors consisting of more than one walls not drawing when the first assigned mirror wall breaks. It still does not let you have more than one mirror (i.e. mirror sectors) showing up at the same time in the scene. Affects classic and Polymost only.

Build 2381

24 feb 2012 · 2 commit · 1 autore SVN
Apri la build
  • Generale

    Do bound check for "quick" sector/wall accesses from CON, i.e. in getvarvar.

    Helixhorned r2381 24 feb, 11:51 EngineCON
    Mostra dettagli

    This was causing oob sector accesses with code like this: getwall[hitwall].nextsector temp ifvarvare sector[temp].floorz sector[temp].ceilingz setvar tempb 1 (from DT's HYPERCORE). Also validate quote indices passed to CON's quote and userquote commands at runtime.

  • Generale

    Fix user quotes colored with a 2-digit number being wrongly x-aligned.

    Helixhorned r2380 24 feb, 11:51 Fix
    Mostra dettagli

    Such game text was shown starting from about the center of the screen. The reason for the bug was this code: t += 1 + isdigit(*(t+2)); The sequence points here are at the beginning and end of this assignment expression, and the updating of t may happen anywhere between these (C99 6.5.16 #3). Please don't write such code. When in doubt, and assignment and reference to the same object should be split!