Commit Graph
100 Commits
Author SHA1 Message Date
nhmall 9a21e55830 comment update 2022-05-23 13:32:25 -04:00
nhmall 0e9f53a624 oil burning secret door described as spell #771
Closes #771
2022-05-23 13:25:12 -04:00
nhmall 05d628752e warning fix 2022-05-21 21:26:21 -04:00
nhmall 7b506c715c Merge branch 'NetHack-3.7' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.7 2022-05-21 21:22:42 -04:00
nhmall 68d7ef440f follow-up (from entrez) 2022-05-21 21:22:20 -04:00
nhmall f19ccde709 make currently unhandled switch cases apparent 2022-05-21 09:13:02 -04:00
nhmall 441840c737 expand info a wee bit on revive() panic 2022-05-21 09:08:23 -04:00
nhmall 35b56fb94b incorporate the later force push on pr767 2022-05-20 19:45:07 -04:00
nhmall d93f8ebf69 fixes3-7-0.txt entries for pr765 and pr767 2022-05-20 17:59:42 -04:00
nhmall eb49ca7c5a Merge branch 'pr765-767' into NetHack-3.7 2022-05-20 17:41:18 -04:00
nhmall 69a6e1dd01 Merge branch 'makeplural-gateaux' of https://github.com/entrez/NetHack into pr765-767 2022-05-20 17:40:22 -04:00
nhmall b72b70ea99 Merge branch 'fix-pray-goto' of https://github.com/argrath/NetHack into pr765-767 2022-05-20 17:40:04 -04:00
nhmall 95da0beffa fix MSDOS cross-compile
After some Make variables and additional override for CROSS_TO_MSDOS
is required.
2022-05-19 19:53:48 -04:00
nhmall 29236fc22d don't force manual edit of config.h for Lua 5.3.6 and earlier 2022-05-19 19:22:43 -04:00
nhmall 629b5d67a9 fix 'make all' from src directory 2022-05-19 19:00:47 -04:00
nhmall 27119907a7 use updated lua library name in make spotless 2022-05-19 08:18:52 -04:00
nhmall f57555ae6b differentiate lua object library names by Lua ver 2022-05-19 07:44:29 -04:00
nhmall fafe54869d tested newer versions of visual studio
Also fixes a missing ')' typo in Makefile.nmake
2022-05-18 12:17:00 -04:00
nhmall 44c225a11e yet more version buf 2022-05-12 20:10:27 -04:00
nhmall f8b8495144 more version buf 2022-05-12 19:56:16 -04:00
nhmall fe5cb1011f buf sizes in version.c
there were some 'sizeof buf' on a passed pointer variable buf.
pass the actual buffer size in a second argument.
2022-05-12 19:38:50 -04:00
nhmall 66e965f878 Don't include /fsanitize=address in vs 2017
Closes #759
2022-05-12 08:05:28 -04:00
nhmall c5ec3fc248 Xcode project update 2022-05-11 16:38:27 -04:00
nhmall c38e5cba5c correct the qt5 package instructions for ubuntu 2022-05-11 09:47:00 -04:00
nhmall d486270ec9 warning fix 2022-05-10 21:10:02 -04:00
nhmall 6d15142250 fix one more lua file header 2022-05-10 11:30:30 -04:00
nhmall 0602a3b89f update lua file headers 2022-05-10 11:26:52 -04:00
nhmall 6c12b85a0e missed a reference in README 2022-05-09 17:58:26 -04:00
nhmall 4f851e0165 update README to reflect a recent file name change 2022-05-09 17:55:49 -04:00
nhmall 718365cf03 Merge branch 'pr758' into NetHack-3.7 2022-05-09 17:16:30 -04:00
nhmall c87f779755 split getting kick damages into separate function
Closes #758 by argrath
2022-05-09 17:15:31 -04:00
nhmall b53e76813d bump patchlevel 2022-05-09 09:15:17 -04:00
nhmall 4951cca84e Merge branch 'pr757' into NetHack-3.7 2022-05-09 09:06:50 -04:00
nhmall a01a26f0a7 split adjusting attributes into separate function
Closes #757 by argrath
2022-05-09 09:05:58 -04:00
nhmall 81528b2853 Merge branch 'fix-do-wear' of https://github.com/argrath/NetHack into pr757 2022-05-09 09:04:56 -04:00
nhmall 7c2d528202 Merge branch 'pr754' into NetHack-3.7 2022-05-09 09:04:22 -04:00
nhmall 011405a15c split kicking empty space into separate function
Closes #754 by argrath
2022-05-09 09:03:24 -04:00
nhmall c8a866cc14 Merge branch 'fix-kick' of https://github.com/argrath/NetHack into pr754 2022-05-09 09:02:01 -04:00
nhmall 9db8bd93df Merge branch 'pr748' into NetHack-3.7 2022-05-09 08:56:19 -04:00
nhmall d3f98917e9 fixes entry for pr748 2022-05-09 08:55:40 -04:00
nhmall 200302e15f Merge branch 'altarmask-sanctum-bit' of https://github.com/entrez/NetHack into pr748 2022-05-09 08:47:02 -04:00
nhmall 17cb7646c2 follow-up bit in utf8map.c 2022-05-09 07:46:54 -04:00
nhmall 0aaa114a46 rgbstr_to_uint32() -> rgbstr_to_int32()
Closes #756
2022-05-09 07:31:30 -04:00
nhmall 2047d42bc6 regression in process_text_window()
original code:

     if (linestart && (*cp & 0x80) != 0) {
         g_putch(*cp);
         end_glyphout();
         linestart = FALSE;
     } else {
         (void) putchar(*cp);
     }

new code:

    if (linestart) {
        if (SYMHANDLING(H_UTF8)) {
            /* FIXME: what is actually in that line? is it the \GNNNNNNNN or UTF-8? */
            g_putch(*cp);
        } else if ((*cp & 0x80) != 0) {
            g_putch(*cp);
            end_glyphout();
        }
        linestart = FALSE;
    } else {
        (void) putchar(*cp);
    }

The new code didn't output a character if linestart was true and the character did
not have bit 0x80 set.

fixed code:

    if (linestart) {
        if (SYMHANDLING(H_UTF8)) {
            /* FIXME: what is actually in that line? is it the \GNNNNNNNN or UTF-8? */
            g_putch(*cp);
        } else if ((*cp & 0x80) != 0) {
            g_putch(*cp);
            end_glyphout();
        } else {
            (void) putchar(*cp);
        }
        linestart = FALSE;
    } else {
        (void) putchar(*cp);
    }
2022-05-08 20:27:00 -04:00
nhmall b74ba33eed tile.c must match target for crosscompile 2022-05-07 15:06:43 -04:00
nhmall 3101727fc0 more preprocessor and multiplatform cleanup
in wintty.c
2022-05-07 15:00:11 -04:00
nhmall e4f85df216 Revert "some follow-up for MSDOS build"
This reverts commit 36d3b64326.
2022-05-07 14:34:06 -04:00
nhmall 36d3b64326 some follow-up for MSDOS build
The preprocessor directives in win/tty/wintty.c were crossed-up
under MSDOS build. I think I got them straightened out now.

For a crosscompile situation, the tilemap utility (which runs on
the host) needs to produce an output src/tile.c that is compatible
for the target platform.

Don't use ENHANCED_SYMBOLS under MSDOS, for now anyway.
2022-05-07 13:08:02 -04:00
nhmall 0a171bb862 clear a warning during build with vs project
src/nhlua.c(93,16): warning C4324: 'nhl_user_data': structure was padded
due to alignment specifier
2022-05-07 11:34:24 -04:00
nhmall 12773da1b5 Guidebook.txt cron daily update 2022-05-07 11:27:05 -04:00
nhmall eb802a8371 Visual studio project updates 2022-05-07 11:19:59 -04:00
nhmall 47b2eb29c1 Clean up CI build for Windows 2022-05-07 11:00:13 -04:00
nhmall 4b7c547dcd trailing blank removal 2022-05-07 10:40:21 -04:00
nhmall cb0c21e91d ENHANCED_SYMBOLS
A new feature, enabled by default to maximize testing, but one which can
be disabled by commenting it out in config.h

With this, some additional information is added to the glyphmap entries
in a new optional substructure called u with these fields:
    ucolor          RGB color for use with truecolor terminals/platforms.
                    A ucolor value of zero means "not set." The actual
                    rgb value of 0 has the 0x1000000 bit set.
    u256coloridx    256 color index value for use with 256 color
                    terminals, the closest color match to ucolor.
    utf8str         Custom representation via utf-8 string (can be null).

There is a new symset included in the symbols file, called enhanced1.

Some initial code has been added to parse individual
OPTIONS=glyph:glyphid/R-G-B entries in the config file.

The glyphid can, in theory, either be an individual glyph (G_* glyphid)
for a single glyph, or it can be an existing symbol S_ value
(monster, object, or cmap symbol) to store the custom representation for
all the glyphs that match that symbol.

Examples:
   OPTIONS=glyph:G_fountain/U+03A8/0-150-255

(Your platform/terminal font needs to be able to include/display the
character, of course.)

The NetHack core code does parsing and storing the customized
entries, and adding them to the glyphmap data structure.

Any window port can utilize the additional information in the glyphinfo
that is passed to them, once code is added to do so.

Also, consolidate some symbol-related code into symbols.c, and remove it from
files.c and options.c
2022-05-07 10:25:13 -04:00
nhmall 721b1cc9b9 unreferenced local variable warning 2022-05-04 08:48:56 -04:00
nhmall 308dce273d warning bits on Windows build
src/nhlua.c(1606): warning C4127: conditional expression is constant
src/nhlua.c(2032): warning C4127: conditional expression is constant
2022-05-01 12:18:45 -04:00
nhmall 281d959b8b revisit Qt6 macOS QSoundEffect
- After reverting previous related commit, add the QtMultimedia folder to
the include search path as suggested by PatR, and leave qt_bind.cpp alone
2022-04-27 19:06:06 -04:00
nhmall 75f3008123 Revert "Qt6 QSoundEffect on macOS"
This reverts commit f6149904c3.
2022-04-27 19:00:18 -04:00
nhmall f6149904c3 Qt6 QSoundEffect on macOS 2022-04-27 13:56:01 -04:00
nhmall 43158982c3 consolidate two fixes entries for QSoundEffect 2022-04-27 08:40:02 -04:00
nhmall fd63deaa0d Qt comment update 2022-04-27 07:52:10 -04:00
nhmall 4f815d77ff add a fixes note on change from QSound to QSoundEffect 2022-04-27 07:45:43 -04:00
nhmall e2bd117c61 QSoundEffect supported in Qt6 but needs conditional code rework 2022-04-27 07:40:40 -04:00
nhmall 4d62f418f0 fix Qt6 broken build 2022-04-27 07:35:31 -04:00
nhmall 63a0a63730 rename sys/windows/Makefile.msc
rename sys/windows/Makefile.msc to sys/windows/Makefile.nmake
2022-04-25 15:16:41 -04:00
nhmall 9334086506 compiler warning
src/do_wear.c(2884): warning C4389: '!=': signed/unsigned mismatch
2022-04-25 09:45:10 -04:00
nhmall 407f08c4d1 tested Windows command line build with latest VS
- Microsoft Visual Studio 2017 Community Edition v 15.9.47
- Microsoft Visual Studio 2019 Community Edition v 16.11.13
- Microsoft Visual Studio 2022 Community Edition v 17.1.5
2022-04-25 09:36:33 -04:00
nhmall adbee93dea cron job updates 2022-04-16 11:08:34 -04:00
nhmall 5762631f96 resolve build error on windows with vs2022
win/tty/getline.c(305) :
warning C4701: potentially uninitialized local variable 'ecmatches' used
win/tty/getline.c(305) :
error C4703: potentially uninitialized local pointer variable
'ecmatches' used
2022-04-16 08:32:13 -04:00
nhmall d20b2772eb visual studio comment follow-up 2022-04-12 14:49:34 -04:00
nhmall 1daa2806f9 build tested with updated Visual Studio versions
VS 2017 (Apr 12, 2022 version 15.9.46)
VS 2019 (Apr 12, 2022 version 16.11.12)
VS 2022 (Apr 12, 2022 version 17.1.4)
2022-04-12 14:43:28 -04:00
nhmall 4d1caf8e3a Windows keyhandling 2022-04-11 15:24:55 -04:00
nhmall b9abd2a185 fix a Windows initializer 2022-04-10 17:18:48 -04:00
nhmall 6670c31f90 try CI build with mingw-w64 release 5 2022-04-09 13:52:41 -04:00
nhmall 303e34e5c6 clear a warning: variable set but not used
makedefs.c:2125:12: warning: variable 'sum' set but not used
[-Wunused-but-set-variable]
    int i, sum = 0;
           ^
    1 warning generated.
2022-04-04 10:35:43 -04:00
nhmall e74f3c607a Windows build test with Visual Studio 2022 17.1.3 2022-04-02 13:45:04 -04:00
nhmall d7630ebff8 make zip file contents pathless for msdos pkg 2022-04-01 16:11:30 -04:00
nhmall af24a46e32 Merge branch 'fix-trap' of https://github.com/argrath/NetHack into pr712 2022-03-25 08:21:49 -04:00
nhmall 2c21a75cb2 Merge branch 'pr713' into NetHack-3.7 2022-03-25 08:18:01 -04:00
nhmall 5478baa6ee giant ant tiles or right side of msdos display 2022-03-23 22:01:01 -04:00
nhmall a61586153f Windows nmake build - separate x86 and x64 objs 2022-03-13 21:17:08 -04:00
nhmall 439087ec6d remove a commented out test line from Makefile.utl 2022-03-13 11:37:00 -04:00
nhmall c7b63d5ef9 follow-up: missed one include/tile.h 2022-03-13 11:24:19 -04:00
nhmall a7e83696bd update include/.gitinfo 2022-03-13 11:17:58 -04:00
nhmall 2234cc256d some parallel Make glitches noticed
observed: parallel build attempts of makedefs that trampled over
one another.

attempted workaround: Add a dependency as per Pat R's suggestion.

observed: Concurrent header file movement collisions were sometimes
causing file busy errors and build failures.

workaround: Eliminate tile.h header file movement from the
Makefile build so that the collisions won't occur with that
particular file. Leave the header file tile.h in win/share as it
is in the distribution and just adjust the include path in the
rule for the specific files that use it.

observed: tiletxt.c created on-the-fly from Makefile echo statements
sometimes resulted in garbled and duplicate content in it when
parallel makes were involved, and that caused a build failure.

workaround: Instead of creating a tiletxt.c on-the-fly via echo
statements in the Makefile, simplify things and use that
same #include "tilemap.c" approach but make it an actual file
in the distribution. That makes it available for other platforms
too.
2022-03-13 11:06:45 -04:00
nhmall 2bb26da9fa Windows visual studio project updates
hide a couple of warnings in non-nethack code
get rid of an obsolete file reference
2022-03-13 10:20:41 -04:00
nhmall 9e6bddac10 warning fix artifact.c
artifact.c: In function 'dump_artifact_info':
artifact.c:1088:37: warning: '%s' directive writing up to 255 bytes into a region of size 218 [-Wformat-overflow=]
 1088 |             Sprintf(buf, "  %-36.36s%s", artiname(m), buf2);
      |                                     ^~                ~~~~
In file included from ../include/config.h:652,
                 from ../include/hack.h:10,
                 from artifact.c:6:
../include/global.h:255:24: note: 'sprintf' output between 39 and 294 bytes into a destination of size 256
  255 | #define Sprintf (void) sprintf
artifact.c:1088:13: note: in expansion of macro 'Sprintf'
 1088 |             Sprintf(buf, "  %-36.36s%s", artiname(m), buf2);
      |             ^~~~~~~
2022-03-12 21:49:32 -05:00
nhmall 3fc39f273a missed band for windows Makefile.msc 2022-03-11 07:51:12 -05:00
nhmall a16f17a029 header file ordering change
This is groundwork for some other changes.

Include integer.h ahead of global.h in config.h.
2022-03-11 07:33:28 -05:00
nhmall 274984480c warning fix artifact.c
src/artifact.c(65): warning C4132: 'zero_artiexist': const object
should be initialized
2022-03-10 09:15:04 -05:00
nhmall 8551594ef8 Merge branch 'pr693' into NetHack-3.7 2022-03-10 09:10:05 -05:00
nhmall 3780bb7030 Merge branch 'fix-splev' of https://github.com/argrath/NetHack into pr693 2022-03-10 09:09:33 -05:00
nhmall fa4ad397dc some sys/windows build updates
Place built libraries for Lua and pdcurses into lib instead of the
more transient src/o subfolder.

Remove a kludge involving sys/windows/stub-pdcscrn.c.

Don't link pdcurses into NetHackW.exe (required a couple of stubs
since NetHack.exe and NetHackW.exe currently share object files
under the visual studio nmake build.

(Note: This may require a couple of follow-on minor modifications
to the mingw build. If so, the CI will flag that for us after this
commit)
2022-03-09 12:02:37 -05:00
nhmall cceef37c8b Windows nmake build fix 2022-03-07 07:35:35 -05:00
nhmall 108dc2d262 updates from cron job 2022-02-22 20:14:44 -05:00
nhmall 407e515d7a whitelist a new warning in cmd.c
src/cmd.c(1253): warning: conditional expression is constant
2022-02-22 15:10:33 -05:00
nhmall 86c444d1ac updates from cron job 2022-02-21 10:16:44 -05:00
nhmall f845df9eeb build tested with visual studio 2022 17.1.0 2022-02-16 15:57:03 -05:00
nhmall a7009e2a54 obsolete nhlan.c follow-up
- visual studio project files
- .gitattributes
2022-02-15 15:22:34 -05:00
nhmall a68cf63a05 another obsolete function reference 2022-02-15 08:16:21 -05:00