May 2012
-
fix one stack index, comment on a problem with ffi.C access.
-
General
A couple of minor fixes and comments that got accumulated in my tree.
-
General
Makefile.shared: don't link with libsupc++ on linux.
Show details
It works perfectly fine without it for me, and including it for no reason is just an annoyance to other people building from source.
-
General
Introduce two convenient sprite iteration macros in build.h, add a few uses.
Show details
Defines SPRITES_OF(Statnum, Iter) and SPRITES_OF_SECT(Sectnum, Iter) [The first is so that STAT_* can be substituted for Iter and it reads nicely.] Usage should be self-explanatory, but one thing to keep in mind is that the sprites that are iterated over MUST NOT be deleted.
-
General
In CON showview, if drawing off-screen, clear the view with pal 0 and bail out.
Show details
This fixes the glitches/corruption whereever showview is used from EVENT_DISPLAYROOMS while the scene is actually rendered to a tile instead of the frame buffer, for example because we have a tilted view or "pixel doubling" enabled. Fixing it for real (i.e. so that the showview actually completes) will require more effort.
-
General
mdsprite.c: patch up bad array access in loadkvx, remove const from kopen4load arg.
Show details
vbit was being accessed with an int32 e.g. at address 3200 when only 3203 were allocated. We simply alloc +1 byte.
-
General
On Windows, check file name case with 'sound' and 'music' CON commands.
Show details
This is done by kopen4loadfrommod'ing and immediately closing the file (since the checker is still run from there when not ingame). On my system, times were like 0.12 ms, 0.2 ms and 0.5 ms for each openfrompath/findfrompath, openfrompath/Bopen and SHGetFileInfo respectively, so it shouldn't have a too noticable impact on initial loading times.
-
General
In kopen4loadfrommod, don't try g_modDir if it's the default "/".
Show details
I experienced the following on Windows XP: a few openfrompath() --> findfrompath() calls were taking enormously long (4.5 secs) to complete, having been passed a file name like "//bla/qwe.asd". My guess is that Windows then tried to interpret these as a network FS path in access(), and the 4.5 secs represents a timeout value.
-
General
Only check file name case when not in-game; don't warn for ALLUPPER or alllower.
Show details
The first means that the expensive (~0.5 ms) SHGetFileInfo() calls won't inter- fere with smooth gameplay, but files that are opened only at game-time like sounds won't be checked. The second means that there are now less false positives, i.e. warnings about files that would be found due to the check-all-{upper,lower} hack.
-
General
engine.c: make horizlookup/horizlookup2 have int32_t elts instead of intptr_t.
-
General
In tilted-view setup code, allocate TILE_TILT storage more tightly.
-
General
build.c: factor out two identical code instances into handle_sprite_in_clipboard
-
General
Disallow high-quality (640x480) tilted screen if MAXYDIM is less than 640.
Show details
This fixes the crash on Wii when looking sidewards (e.g. when dying), but makes the tilted view look more pixelated. The problem was that an attempt was made to render onto a 640x640 tile for the rotated view, but the base engine arrays were too small for that.
-
General
Various cleanup and rewrites.
Show details
- make allocatepermanenttile() return intptr_t - the usual
-
General
Fix harmless "cast to pointer from integer of different size" warning with x64.
-
General
Cleanup & minor rewrites, among other things in premap.c:G_EnterLevel().
-
General
With engine compiled for V7 limits, refuse loading maps exceeding them.
Show details
Also, correct the loadboard() return value checks in premap.c to be aware of a returned -2 ("wrong map version").
-
General
On Windows, don't try to lowercase/uppercase filenames.
Show details
Most of the time, Windows file name lookup is case-insensitive. Reading the docs (see MSDN's CreateFile help, for example), it seems like case-sensitivity can be controlled on a per-file basis where applicable (NTFS), but people should be concerned about matching case in the DEFs/on disk *especially* in that case. Also, note that this hack will not always help on systems with case-sensitive lookup.
-
General
On Windows, check for case-mismatched file names on successful kopen4load().
Show details
When a file from the local file system is opened, its real file name is gotten with SHGetFileInfo() and compared against the one that was passed. In the case they're not identical, a warning is issued. This is one step towards eliminating mismatched file names in DEFs etc., which cause trouble on systems that look them up case-sensitively. However, it's not perfect because the issue is trickier than it appears on first sight. For one thing, this will only check the last (i.e. file) part in the path, falsely accepting mismatched directory names. However for these, it reports them ruthlessly, even for those names where the try-other-case hack (try all uppercase, all lowercase) would find the correctly-cased file.
-
General
Fix some *printf format-char/vararg mismatches on x86_64 in net.c.
-
General
Bump BYTEVERSION because of the preceding change.
-
General
-
General
Add EVENT_LOADGAME and EVENT_SAVEGAME, self-explanatory. Also make EVENT_NEWGAME use myconnectindex for player ID instead of screenpeek.
-
General
Setting RETURN in EVENT_DISPLAYCROSSHAIR will now change the crosshair's picnum while allowing the game to position it, etc. As usual, setting RETURN to -1 disables hardcoded drawing of the crosshair completely.
-
General
Bump build date from 20110312 to 20120522.
-
General
EDuke32 Wii: Ready for action!
-
General
Mac OS X: Add correct default values for 'gameexecutable' cfg string so that the Mapster32 test feature works with .app bundles.
Show details
Note: You may encounter a crash if you try to test your map and Mapster32 is running fullscreen.
-
General
Fix warnings in net.c and xdelta3.
-
General
Correct an oversight and make handleevents() call our own window processing function instead of the default Windows one.
-
General
Minor formatting fix
-
less-trivial, but not non-trivial changes
-
trivial changes
-
factor out common packet handling code
-
unblock stuff
-
General
Fix the previous/next weapon events
-
General
net.c tweaks, just for the sake of pushing them to SVN.
Show details
- alloc_multimapstate() helper - make g_netMapRevision a uint32 and store save->revision in sequence order (without &(NET_REVISIONS-1)) - one assert, one XXX comment, stylistic changes
-
General
PNG screenshots: don't save custom gAMA.
Show details
This should be more correct, since previously, the saved PNGs were way too contrasty when looked from within a browser. Now, they'll always be slightly darker than in-game (assuming one has a gamma greater than 1).
-
General
With Clang, compile in GNU89 mode and fix clang detection in the Makefiles.
Show details
The default C99 mode is giving us linking errors from xdelta3.
-
General
Fix one ptr size mismatch and one format letter/arg mismatch on x86_64.
-
General
Fix cheats giving inventory items and their events.
-
actions prototype, not enabled even in the dev build.
Show details
For Lunatic, we'll want to get rid of the t_data --> script indirections, since the latter will be no more. Thus, all parameters are saved in t_data directly. For the normal build, there are no changes, only stylistic tweaks.
-
v7 engine support, event updates
-
General
Fix A_CheckEnemyTile() returning 1 for "fixed" sprites (see r1913).
Show details
Those sprites are usually decorative, and certainly not enemies!
-
General
Fix building xdelta3.o
-
General
Add xdelta3 source and headers to VS2010 project
-
General
WIP multiplayer changes, still completely broken.
-
General
Update ENet with changes from the newest version from CVS (yes, they still use CVS)
-
General
Update QuickLZ to 1.5.1 beta 7
-
General
Add xdelta3, required for some broken multiplayer updates I plan on committing later
-
General
Fix EVENT_CHECKTOUCHDAMAGE (the change to how events handle RETURN broke it)