Commit Graph

16617 Commits

Author SHA1 Message Date
nhkeni
0edfb577f7 Two more bug fixes:
split depend target so "make depend" and "make updatedepend"
 get the right dependencies (this puts back the previously
 temporarily removed dependencies)

deterministically pull out the right source so moc rules
 are correct
2024-03-10 19:51:55 -04:00
nhkeni
2980c55f5c report.c: silence some compiler warnings for clang + nhmd4 2024-03-10 19:51:55 -04:00
nhkeni
998240d5f5 remove gmake-specific code from Makefile.src
The awk script for NOSTATICCORE is currently broken.
2024-03-10 18:35:19 -04:00
nhkeni
387b145b58 more fixes
removal of depend target dependencies is temporary
2024-03-10 16:23:20 -04:00
nhkeni
917c574537 Merge branch 'NetHack-3.7' of https://rodney.nethack.org:20040/git/NHsource into NetHack-3.7 2024-03-10 16:17:26 -04:00
nhkeni
ae82f6494e bug fixes 2024-03-10 15:46:20 -04:00
nhkeni
7d2362c98d hack: put back recent make depend output until I can fix whatever I just broke 2024-03-10 12:51:11 -04:00
nhkeni
c747f2af9c test run of updatedepend 2024-03-10 10:41:16 -04:00
nhkeni
7ad921ebe7 Merge branch 'keni-pending2' into NetHack-3.7 2024-03-10 10:36:24 -04:00
nhkeni
f065cb4ec7 Merge branch 'keni-regex' into NetHack-3.7 2024-03-10 10:22:19 -04:00
PatR
3e2999d3e6 refine walking on ice might slip in random dirctn
If moving on ice causes the hero to hurtle an extra step in a random
direction, don't allow that to be backward to where hero started.

Also, if hero is in grid bug form, only allow hurtling forward.
It was allowing slips in a diagonal direction, which seems wrong
for grid bug, and even when it slipped in an orthogonal direction,
buffered screen updating made the combined step+hurtle appear to be
a single diagonal step.

I'm not a fan of this seemingly simple change.  The hurtle/second
step comes after the "you slip on the ice" vs "you slip off the ice"
messaging and might put the hero in a location which contradicts it.
2024-03-09 16:05:11 -08:00
Pasi Kallinen
6e6c8a7208 Curses: fix message window border
When certain options (eg. legacy at least) were turned off,
the curses message window wasn't redrawn after the character creation.
2024-03-09 22:58:28 +02:00
nhkeni
a22ed4f232 depend.awk changes
- sort the dependencies
- sort the rules
- the above can be disabled in the BEGIN block
- usage documentation changes for next commit
2024-03-09 15:23:15 -05:00
nhkeni
79867d78c8 Two new features primarily in Makefile.src:
NOSTATICCORE - an option for Linux to get a better backtrace
updatedepend - an easier alternative to "make depend"

- .gitignore: ignore new temporary .*.c files
- hints/linux.370: add NOSTATICCORE and instructions
- Makefile.src:
-- If NOSTATICCORE defined, run core .c files through awk to
   remove static attribute from functions.
-- add updatedepend target and related bits
2024-03-09 15:16:24 -05:00
PatR
42d5d6a453 reformat lots of the CRASHREPORT code
Replace tabs, split 'if (condtion) do_something' across two lines,
insert lots of spaces in things like 'if(condition){'.  I changed
a lot of C++ style comments to traditional C style, but left quite
a few of those as-is.

This also rewrites the code that pull request #1216 purports to fix.
I still can't make sense of the original and the patched edition.

Supersedes #1216
Closes #1216
2024-03-09 14:25:38 -05:00
nhkeni
e316d962a8 Minor regex naming and doc cleanup. 2024-03-09 13:28:15 -05:00
Pasi Kallinen
bb8ac1cded Curses: message window unhilite
The curses message window shows new messages bold, and removes the
bolding from older ones.  The code was calling curses mvwchgat with
attribute and color parameters in the wrong order.  Also change the
code to actually retain the color of the window, so it just removes
the bold attribute.
2024-03-09 18:44:31 +02:00
nhmall
6d22361fca separate function for acid potion damage pr#1195
Also includes a couple of trailing whitespace removals.
2024-03-09 09:25:43 -05:00
nhmall
2bda94e982 Merge branch 'pot-acid-damage' of https://github.com/argrath/NetHack into NetHack-3.7 2024-03-09 09:23:20 -05:00
PatR
4af03d8ef8 fix garbled comment
The prolog comment for hurtle() ends with
 * dx and dy should be the direction of the hurtle, not of the original
 * kick or throw and be only.
The clause "and be only" is incomplete and was added sometime between
3.3.0 and 3.4.0.

I suspect it was meant to say "and be only -1 or 0 or +1" but the code
enforces that with sgn(dx) and sgn(dy) so if that's the case, it isn't
necessary.  Whether that guess is right or wrong, remove the clause
since as it stands now, it makes no sense.
2024-03-08 23:34:12 -08:00
PatR
cb50fbb2ce fix for breaking unreachable statue
Reported almost 9 years ago:  if an adjacent statue was in a pit,
you could use a pick-axe to break it even though if you managed to
move to the pit location without falling in, you wouldn't be able
to reach objects there including the statue.

Allow a pick to reach if hero is in a conjoined pit, or if it is a
mattock rather than an ordinary pick-axe.  Otherwise you'll get the
"you swing at thin air" result.  Similarly when hero is in a pit and
and adjacent statue or boulder is on the floor:  mattock will work
but pick-axe now yields "you can't reach".
2024-03-08 13:08:28 -08:00
PatR
76826744d7 fix analyzer complaint about get_mkroom_name()
Force the result to be non-Null.
2024-03-08 10:08:11 -08:00
nhmall
8f4137f9fc The Lua download site won't accept http: anymore 2024-03-08 12:30:59 -05:00
nhmall
cfc3a7f2b6 set of Makefiles.vms for GNU make 4.1 on VMS based on Unix Makefiles
A test build log follows

$ make
pipe set default [.src] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 LUA_VERSION=5.4.6 nethack \
        && set def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.src]'
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]hacklib.c /OBJECT=hacklib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)    /obj=[-.util]panic.obj [-.util]panic.c
if f$search("hacklib.olb").eqs."" then -
library/create hacklib.olb/object
library/insert/replace hacklib.olb hacklib.obj,[-.util]panic.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lapi.c /OBJECT=lapi.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lauxlib.c /OBJECT=lauxlib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lbaselib.c /OBJECT=lbaselib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lcode.c /OBJECT=lcode.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lcorolib.c /OBJECT=lcorolib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lctype.c /OBJECT=lctype.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]ldblib.c /OBJECT=ldblib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]ldebug.c /OBJECT=ldebug.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]ldo.c /OBJECT=ldo.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]ldump.c /OBJECT=ldump.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lfunc.c /OBJECT=lfunc.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lgc.c /OBJECT=lgc.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]linit.c /OBJECT=linit.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]liolib.c /OBJECT=liolib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]llex.c /OBJECT=llex.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lmathlib.c /OBJECT=lmathlib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lmem.c /OBJECT=lmem.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]loadlib.c /OBJECT=loadlib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lobject.c /OBJECT=lobject.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lopcodes.c /OBJECT=lopcodes.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]loslib.c /OBJECT=loslib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lparser.c /OBJECT=lparser.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lstate.c /OBJECT=lstate.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lstring.c /OBJECT=lstring.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lstrlib.c /OBJECT=lstrlib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]ltable.c /OBJECT=ltable.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]ltablib.c /OBJECT=ltablib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]ltm.c /OBJECT=ltm.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lundump.c /OBJECT=lundump.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lutf8lib.c /OBJECT=lutf8lib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lvm.c /OBJECT=lvm.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /define=(LUA_USE_C89) [-.lib.lua.lua546.src]lzio.c /OBJECT=lzio.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  luaplaceholder.
c /OBJECT=luaplaceholder.obj
if f$search("[-.lib.lua]lua546.olb").eqs."" then library/create/obj [-.lib.lua]l
ua546.olb
library/insert/replace [-.lib.lua]lua546.olb lapi.obj, lauxlib.obj, lbaselib.obj
, lcode.obj, lcorolib.obj, lctype.obj, ldblib.obj, ldebug.obj, ldo.obj, ldump.ob
j, lfunc.obj, lgc.obj, linit.obj, liolib.obj, llex.obj, lmathlib.obj, lmem.obj,
loadlib.obj, lobject.obj, lopcodes.obj, loslib.obj, lparser.obj, lstate.obj, lst
ring.obj, lstrlib.obj, ltable.obj, ltablib.obj, ltm.obj, lundump.obj, lutf8lib.o
bj, lvm.obj, lzio.obj, luaplaceholder.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.sys.vms]vmsmain.c /OBJECT=vmsmain.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]allmain.c /OBJECT=allmain.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]alloc.c/OBJECT=alloc.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]apply.c/OBJECT=apply.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]artifact.c /OBJECT=artifact.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]attrib.c /OBJECT=attrib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]ball.c /OBJECT=ball.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]bones.c/OBJECT=bones.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]botl.c /OBJECT=botl.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]calendar.c /OBJECT=calendar.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]cmd.c /OBJECT=cmd.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]coloratt.c /OBJECT=coloratt.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]dbridge.c /OBJECT=dbridge.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]decl.c /OBJECT=decl.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]detect.c /OBJECT=detect.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]dig.c /OBJECT=dig.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]display.c /OBJECT=display.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]dlb.c /OBJECT=dlb.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]do.c /OBJECT=do.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]do_name.c /OBJECT=do_name.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]do_wear.c /OBJECT=do_wear.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]dog.c /OBJECT=dog.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]dogmove.c /OBJECT=dogmove.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]dokick.c /OBJECT=dokick.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]dothrow.c /OBJECT=dothrow.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]drawing.c /OBJECT=drawing.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]dungeon.c /OBJECT=dungeon.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]eat.c /OBJECT=eat.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]end.c /OBJECT=end.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]engrave.c /OBJECT=engrave.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]exper.c/OBJECT=exper.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]explode.c /OBJECT=explode.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]extralev.c /OBJECT=extralev.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]files.c/OBJECT=files.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]fountain.c /OBJECT=fountain.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]getpos.c /OBJECT=getpos.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]hack.c /OBJECT=hack.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]insight.c /OBJECT=insight.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]invent.c /OBJECT=invent.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]isaac64.c /OBJECT=isaac64.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]light.c/OBJECT=light.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]lock.c /OBJECT=lock.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]mail.c /OBJECT=mail.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]makemon.c /OBJECT=makemon.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]mcastu.c /OBJECT=mcastu.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]mdlib.c /OBJECT=mdlib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]mhitm.c /OBJECT=mhitm.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]mhitu.c /OBJECT=mhitu.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]minion.c /OBJECT=minion.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]mklev.c /OBJECT=mklev.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]mkmap.c /OBJECT=mkmap.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]mkmaze.c /OBJECT=mkmaze.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]mkobj.c /OBJECT=mkobj.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]mkroom.c /OBJECT=mkroom.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]mon.c /OBJECT=mon.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]mondata.c /OBJECT=mondata.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]monmove.c /OBJECT=monmove.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]monst.c /OBJECT=monst.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]mplayer.c /OBJECT=mplayer.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]mthrowu.c /OBJECT=mthrowu.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]muse.c /OBJECT=muse.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]music.c /OBJECT=music.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]nhlua.c /OBJECT=nhlua.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]nhlsel.c /OBJECT=nhlsel.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]nhlobj.c /OBJECT=nhlobj.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]objnam.c /OBJECT=objnam.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]o_init.c /OBJECT=o_init.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]objects.c /OBJECT=objects.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]options.c /OBJECT=options.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]pager.c /OBJECT=pager.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]pickup.c /OBJECT=pickup.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]pline.c /OBJECT=pline.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]polyself.c /OBJECT=polyself.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]potion.c /OBJECT=potion.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]pray.c /OBJECT=pray.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]priest.c /OBJECT=priest.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]quest.c /OBJECT=quest.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]questpgr.c /OBJECT=questpgr.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]read.c /OBJECT=read.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]rect.c /OBJECT=rect.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]region.c /OBJECT=region.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]report.c /OBJECT=report.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]restore.c /OBJECT=restore.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]rip.c /OBJECT=rip.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]rnd.c /OBJECT=rnd.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]role.c /OBJECT=role.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]rumors.c /OBJECT=rumors.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]save.c /OBJECT=save.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]selvar.c /OBJECT=selvar.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]sfstruct.c /OBJECT=sfstruct.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]shk.c /OBJECT=shk.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]shknam.c /OBJECT=shknam.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]sit.c /OBJECT=sit.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]sounds.c /OBJECT=sounds.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]sp_lev.c /OBJECT=sp_lev.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]spell.c /OBJECT=spell.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]stairs.c /OBJECT=stairs.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]steal.c /OBJECT=steal.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]steed.c /OBJECT=steed.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]strutil.c /OBJECT=strutil.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]symbols.c /OBJECT=symbols.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]sys.c /OBJECT=sys.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]teleport.c /OBJECT=teleport.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]timeout.c /OBJECT=timeout.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]topten.c /OBJECT=topten.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]track.c /OBJECT=track.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]trap.c /OBJECT=trap.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]u_init.c /OBJECT=u_init.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]utf8map.c /OBJECT=utf8map.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]uhitm.c/OBJECT=uhitm.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]vault.c/OBJECT=vault.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]version.c /OBJECT=version.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]vision.c /OBJECT=vision.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]weapon.c /OBJECT=weapon.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]were.c /OBJECT=were.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]wield.c /OBJECT=wield.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]windows.c /OBJECT=windows.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]wizard.c /OBJECT=wizard.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]wizcmds.c /OBJECT=wizcmds.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]worm.c /OBJECT=worm.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]worn.c /OBJECT=worn.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]write.c/OBJECT=write.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]zap.c /OBJECT=zap.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.sys.vms]vmsfiles.c /OBJECT=vmsfiles.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.sys.vms]vmsmail.c /OBJECT=vmsmail.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.sys.vms]vmsmisc.c /OBJECT=vmsmisc.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.sys.vms]vmstty.c /OBJECT=vmstty.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.sys.vms]vmsunix.c /OBJECT=vmsunix.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /OBJECT=getline.obj [-.win.tty]getline.c
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /OBJECT=termcap.obj [-.win.tty]termcap.c
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /OBJECT=topl.obj [-.win.tty]topl.c
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  /OBJECT=wintty.obj [-.win.tty]wintty.c
cxx /INCLUDE_DIR=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS) /OBJECT=cppregex.obj [-.sys.share]cppregex.cpp
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)  [-.src]tclib.c /OBJECT=tclib.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)    \
        /OBJECT=date.obj [-.src]date.c
Linking nethack.
link  vmsmain.obj, \
        allmain.obj, alloc.obj, apply.obj, artifact.obj, attrib.obj, ball.obj, b
ones.obj, botl.obj, calendar.obj, cmd.obj, coloratt.obj, dbridge.obj, decl.obj,
detect.obj, dig.obj, display.obj, dlb.obj, do.obj, do_name.obj, do_wear.obj, dog
.obj, dogmove.obj, dokick.obj, dothrow.obj, drawing.obj, dungeon.obj, eat.obj, e
nd.obj, engrave.obj, exper.obj, explode.obj, extralev.obj, files.obj, fountain.o
bj, getpos.obj, hack.obj, hacklib.obj, insight.obj, invent.obj, isaac64.obj, lig
ht.obj, lock.obj, mail.obj, makemon.obj, mcastu.obj, mdlib.obj, mhitm.obj, mhitu
.obj, minion.obj, mklev.obj, mkmap.obj, mkmaze.obj, mkobj.obj, mkroom.obj, mon.o
bj, mondata.obj, monmove.obj, monst.obj, mplayer.obj, mthrowu.obj, muse.obj, mus
ic.obj, nhlua.obj, nhlsel.obj, nhlobj.obj, objnam.obj, o_init.obj, objects.obj,
options.obj, pager.obj, pickup.obj, pline.obj, polyself.obj, potion.obj, pray.ob
j, priest.obj, quest.obj, questpgr.obj, read.obj, rect.obj, region.obj, report.o
bj, restore.obj, rip.obj, rnd.obj, role.obj, rumors.obj, save.obj, selvar.obj, s
fstruct.obj, shk.obj, shknam.obj, sit.obj, sounds.obj, sp_lev.obj, spell.obj, st
airs.obj, steal.obj, steed.obj, strutil.obj, symbols.obj, sys.obj, teleport.obj,
 timeout.obj, topten.obj, track.obj, trap.obj, u_init.obj, utf8map.obj, uhitm.ob
j, vault.obj, version.obj, vision.obj, weapon.obj, were.obj, wield.obj, windows.
obj, wizard.obj, wizcmds.obj, worm.obj, worn.obj, write.obj, zap.obj, vmsfiles.o
bj, vmsmail.obj, vmsmisc.obj, vmstty.obj, vmsunix.obj, getline.obj, termcap.obj,
 topl.obj, wintty.obj, cppregex.obj, tclib.obj, date.obj \
         /EXECUTABLE=nethack.exe\
         +[-.lib.lua]lua546.olb/library
nethack is up to date.
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.src]'
pipe set def [.util] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 recover && s
et def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.util]'
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)    recover.c /OB
J=recover.obj
link  /EXE=recover.exe recover.obj
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.util]'
pipe set def [.doc] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 Guidebook &&
set def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.doc]'
pipe set def [-.util] &&  make makedefs && set def [-.doc]
make[2]: Entering directory 'DKA100:[DEVEL.NetHack370.util]'
LIBRARY/CREATE hacklib.olb/object
LIBRARY/INSERT hacklib.olb [-.src]hacklib.obj,[-.util]panic.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)   makedefs.c /OB
J=makedefs.obj
CC /INCLUDE=([-.include],[-.lib.lua.lua546.src]) /NAMES=(AS_IS)    /obj=placehol
der.obj placeholder.c
link  /EXE=makedefs.exe \
        []makedefs.obj, [-.src]monst.obj, [-.src]objects.obj, [-.src]date.obj, [
-.src]alloc.obj, []panic.obj, placeholder.obj, \
        hacklib.olb/lib
make[2]: Leaving directory 'DKA100:[DEVEL.NetHack370.util]'
disabled Guidebook on vms
                         make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.do
c]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 bogusmon  &&
set def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
mcr [-.util]makedefs.exe -s
about to Sprintf epitaph sizeof filename 600.filename = "../dat/epitaph.txt".RDT
MODE = "r".just did Sprintf filename="../dat/epitaph".about to Sprintf engrave s
izeof filename 600.filename = "../dat/engrave.txt".RDTMODE = "r".just did Sprint
f filename="../dat/engrave".about to Sprintf bogusmon sizeof filename 600.filena
me = "../dat/bogusmon.txt".RDTMODE = "r".just did Sprintf filename="../dat/bogus
mon".
     make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 data && set d
ef [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
mcr [-.util]makedefs.exe -d
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 engrave && se
t def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
make[1]: 'engrave' is up to date.
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 epitaph && se
t def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
make[1]: 'epitaph' is up to date.
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 oracles && se
t def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
mcr [-.util]makedefs.exe -h
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 options && se
t def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
mcr [-.util]makedefs.exe -v
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 rumors && set
 def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
mcr [-.util]makedefs.exe -r
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 spec_levs &&
set def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
make[1]: 'spec_levs' is up to date.
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
pipe set def [.dat] && mcr NHMAL4$DKA100:[DEVEL.HELPERS]make.exe;1 quest_levs &&
 set def [-]
make[1]: Entering directory 'DKA100:[DEVEL.NetHack370.dat]'
make[1]: 'quest_levs' is up to date.
make[1]: Leaving directory 'DKA100:[DEVEL.NetHack370.dat]'
echo disabled check-dlb
disabled check-dlb
                  pipe true
Done.
2024-03-08 12:15:53 -05:00
nhmall
d52f05fc0e comment correction 2024-03-08 09:42:03 -05:00
nhkeni
2d864961bf Close /dev/null in child process to keep analyzer happy. 2024-03-08 09:24:36 -05:00
nhmall
5e6e7c29b9 more visual studio project file updates 2024-03-07 19:11:56 -05:00
nhmall
c3054c59b3 more vs project updates
Still failing in the CI, but building successfully locally
2024-03-07 17:45:51 -05:00
nhw_cron
22dcdb4218 This is cron-daily v1-Dec-5-2024. 000files updated: Files 2024-03-07 17:33:17 -05:00
nhmall
3fcb467a1d visual studio solution file update 2024-03-07 17:18:36 -05:00
nhmall
f58c446aba visual studio project build updates 2024-03-07 17:02:17 -05:00
nhmall
dbda2967cc attempt to fix MS-DOS cross-compile 2024-03-07 15:50:05 -05:00
nhmall
23e39ee5f5 DUMPLOG_MSG_COUNT depends on DUMPLOG_CORE for its definition 2024-03-07 15:35:12 -05:00
nhmall
056fcf7173 more CI build fixes 2024-03-07 12:42:19 -05:00
Pasi Kallinen
8cd8759e04 Walking on ice can make you slide in a random direction 2024-03-07 19:29:09 +02:00
nhmall
aacfbecf5c more CI build fixes 2024-03-07 11:44:35 -05:00
nhw_cron
68da7fe08d This is cron-daily v1-Dec-5-2024. 000files updated: Files 2024-03-07 11:34:13 -05:00
nhmall
1c66ff7c97 fix CI mingw build 2024-03-07 11:32:30 -05:00
nhmall
9720ea323c attempt to fix CI minimal build 2024-03-07 11:24:32 -05:00
nhmall
50811037f3 split some code into separate files
new .h files: hacklib.h selvar.h stairs.h

new .c files: calendar.c, getpos.c, report.c, selvar.c, stairs.c,
              strutil.c, wizcmds.c

cleanup of hacklib.c and mdlib.c

hacklib contains functions that do not have to link with the core

relocate wiz commands from cmd.c to wizcmds.c

relocate CRASHREPORT stuff to report.c

relocate getpos stuff from do_name.c to getpos.c

remove temporary struct definition from extern.h

cross-compile PRE-section split into cross-pre1.370 and cross-pre2.370

Windows sys/windows/Makefile.nmake and sys/windows/Makefile.mingw32 and
visual studio project file updates

Unix sys/unix/Makefile.src, sys/unix/Makefile.utl

populate selvar.c and selvar.h

build on MS-DOS (not cross-compile) Makefile updates
for sys/msdos/Makefile.GCC (untested)

vms updates for above (untested)
2024-03-07 11:01:04 -05:00
PatR
c22900fb63 reformat lots of the CRASHREPORT code
Replace tabs, split 'if (condtion) do_something' across two lines,
insert lots of spaces in things like 'if(condition){'.  I changed
a lot of C++ style comments to traditional C style, but left quite
a few of those as-is.

This also rewrites the code that pull request #1216 purports to fix.
I still can't make sense of the original and the patched edition.

Supersedes #1216
Closes #1216
2024-03-04 16:13:03 -08:00
nhkeni
bea2d208dd depend.awk: sort the dependencies
Can be disabled in the BEGIN block (set dosort = 0).

Blame this change on the Department of Motor Vehicles :-)
2024-03-04 13:38:17 -05:00
nhmall
ed5ef46109 fix name in new file header line 2024-03-04 08:37:30 -05:00
Pasi Kallinen
2de0c8cacb Qt: make all menus modal
This fixes a lot of problems where a menu or a text window was up
and the main window accepted input - for example you could move around,
making another window of the same type pop up ...
2024-03-04 11:39:32 +02:00
nhmall
eb294ef4e1 Files update from cron job 2024-03-03 18:47:10 -05:00
nhmall
6619d10d90 ENHANCED_SYMBOLS: store all CLR_ colors specially
The 0x1000000 bit (NH_BASIC_COLOR bit) was used to mark
CLR_BLACK when storing it in u->ucolor. Now, all of the basic CLR_*
colors are stored that way.

The NH_BASIC_COLOR bit indicates that the value in u->ucolor is
not an rgb value, rather it is one of the 0-15 basic NetHack colors.
The window-ports need to strip the NH_BASIC_COLOR bit off before using
it for color changes.
2024-03-03 18:31:11 -05:00
nhmall
3fb35e390b visual studio project file update 2024-03-03 14:35:55 -05:00
nhmall
02074d7461 Windows Makefile updates 2024-03-03 14:15:53 -05:00
nhmall
dbea5d8684 shorten options.c a little by moving some color stuff out of it
creates new coloratt.c file

Also, this attempts to fulfill a wish-list item by paxed, to
allow naming colors in symbols file by name as an alternative
to using r-g-b values.  The basic color names as well as html
color names are supported.
2024-03-03 14:11:17 -05:00
Patric Mueller
fb353fff6c Add NULL pointer guards for the crash reports variables
Calling sprintf with NULL string for a %s format identifier seems to be
undefined behavior.  I got some semi persistent crashes while calling
the extend options menu with mO.
2024-03-03 16:14:15 +01:00