summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwolf2002-04-12 09:25:01 (GMT)
committercvs2git2012-06-24 12:13:13 (GMT)
commitcad24d6b59b1d3964c04863ec8417562f801bf9f (patch)
tree1b701d8e24b157cb58afa52752a9f902af75edcf
parentce821c9e2d8778b60ffc3ae7f373ca01a0484761 (diff)
downloadnethack-cad24d6b59b1d3964c04863ec8417562f801bf9f.zip
nethack-cad24d6b59b1d3964c04863ec8417562f801bf9f.tar.gz
*** empty log message ***
Changed files: nethack-ph-pld.patch -> 1.2 nethack-pld.patch -> 1.3
-rw-r--r--nethack-ph-pld.patch2686
-rw-r--r--nethack-pld.patch2659
2 files changed, 0 insertions, 5345 deletions
diff --git a/nethack-ph-pld.patch b/nethack-ph-pld.patch
deleted file mode 100644
index 74f9c0c..0000000
--- a/nethack-ph-pld.patch
+++ /dev/null
@@ -1,2686 +0,0 @@
-diff -urN nethack-3.3.1.orig/doc/recover.6 nethack-3.3.1/doc/recover.6
---- nethack-3.3.1.orig/doc/recover.6 Sat Apr 4 04:17:24 1998
-+++ nethack-3.3.1/doc/recover.6 Sat Mar 9 11:34:20 2002
-@@ -4,10 +4,6 @@
- recover \- recover a NetHack game interrupted by disaster
- .SH SYNOPSIS
- .B recover
--[
--.B \-d
--.I directory
--]
- .I "base1 base2" ...
- .SH DESCRIPTION
- .PP
-@@ -25,14 +21,6 @@
- which files to process.
- Each base option specifies recovery of a separate game.
- .PP
--The
--.B \-d
--option, which must be the first argument if it appears,
--supplies a directory which is the NetHack playground.
--It overrides the value from NETHACKDIR, HACKDIR, or the directory
--specified by the game administrator during compilation
--(usually /usr/games/lib/nethackdir).
--.PP
- For recovery to be possible,
- .I nethack
- must have been compiled with the INSURANCE option, and the run-time option
-@@ -61,33 +49,13 @@
- .I nethack
- would have used.
- .PP
--Since
--.I recover
--must be able to read and delete files from the playground
--and create files in the save directory,
--it has interesting interactions with game security.
--Giving ordinary players access to
--.I recover
--through setuid or setgid is tantamount to leaving the playground
--world-writable,
--with respect to both cheating and messing up other players.
--For a single-user system, this of course does not change anything,
--so some of the microcomputer ports install
--.I recover
--by default.
--.PP
--For a multi-user system,
--the game administrator may want to arrange for all .0 files in the
--playground to be fed to recover when the host machine boots,
--and handle game crashes individually.
--If the user population is sufficiently trustworthy,
--.I recover
--can be installed with the same permissions the
--.I nethack
--executable has.
--In either case,
- .I recover
--is easily compiled from the distribution utility directory.
-+has been installed under PLD Linux as sgid games. This makes
-+it possible for users to recover their own games. The security hazards
-+of possible cheating have been removed, by taking out the
-+.I -d
-+option and making sure the only directory auto-save files can be read
-+from is /var/games/nethack.
- .SH NOTES
- .PP
- Like
-diff -urN nethack-3.3.1.orig/include/artilist.h nethack-3.3.1/include/artilist.h
---- nethack-3.3.1.orig/include/artilist.h Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/include/artilist.h Sat Mar 9 11:34:20 2002
-@@ -26,7 +26,7 @@
- #define ELEC(a,b) {0,AD_ELEC,a,b} /* electrical shock */
- #define STUN(a,b) {0,AD_STUN,a,b} /* magical attack */
-
--STATIC_OVL NEARDATA struct artifact artilist[] = {
-+STATIC_OVL struct artifact artilist[] = {
- #endif /* MAKEDEFS_C */
-
- /* dummy element #0, so that all interesting indices are non-zero */
-diff -urN nethack-3.3.1.orig/include/config.h nethack-3.3.1/include/config.h
---- nethack-3.3.1.orig/include/config.h Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/include/config.h Sat Mar 9 11:34:20 2002
-@@ -35,16 +35,16 @@
- /* Hint: if you're not developing code, don't define
- ULTRIX_PROTO. */
-
--#include "config1.h" /* should auto-detect MSDOS, MAC, AMIGA, and WIN32 */
-+/* #include "config1.h" */ /* should auto-detect MSDOS, MAC, AMIGA, and WIN32 */
-
-
- /* Windowing systems...
- * Define all of those you want supported in your binary.
- * Some combinations make no sense. See the installation document.
- */
--#define TTY_GRAPHICS /* good old tty based graphics */
-+#define TTY_GRAPHICS /* good old tty based graphics */
- /* #define X11_GRAPHICS */ /* X11 interface */
--/* #define QT_GRAPHICS */ /* Qt interface */
-+#define QT_GRAPHICS /* Qt interface */
- /* #define GNOME_GRAPHICS */ /* Gnome interface */
-
- /*
-@@ -110,7 +110,7 @@
- * would allow:
- * xpmtoppm <x11tiles.xpm | pnmscale 1.25 | ppmquant 90 >x11tiles_big.xpm
- */
--/* # define USE_XPM */ /* Disable if you do not have the XPM library */
-+# define USE_XPM /* Disable if you do not have the XPM library */
- # ifdef USE_XPM
- # define GRAPHIC_TOMBSTONE /* Use graphical tombstone (rip.xpm) */
- # endif
-@@ -126,15 +126,15 @@
-
- #ifndef WIZARD /* allow for compile-time or Makefile changes */
- # ifndef KR1ED
--# define WIZARD "wizard" /* the person allowed to use the -D option */
-+# define WIZARD "root" /* the person allowed to use the -D option */
- # else
- # define WIZARD
- # define WIZARD_NAME "wizard"
- # endif
- #endif
-
--#define LOGFILE "logfile" /* larger file for debugging purposes */
--#define NEWS "news" /* the file containing the latest hack news */
-+#define LOGFILE "/var/games/nethack/logfile" /* larger file for debugging purposes */
-+#define NEWS "/var/games/nethack/news" /* the file containing the latest hack news */
-
- /*
- * If COMPRESS is defined, it should contain the full path name of your
-@@ -151,8 +151,8 @@
-
- #ifdef UNIX
- /* path and file name extension for compression program */
--#define COMPRESS "/usr/bin/compress" /* Lempel-Ziv compression */
--#define COMPRESS_EXTENSION ".Z" /* compress's extension */
-+#define COMPRESS "/bin/gzip" /* Lempel-Ziv compression */
-+#define COMPRESS_EXTENSION ".gz" /* compress's extension */
- /* An example of one alternative you might want to use: */
- /* #define COMPRESS "/usr/local/bin/gzip" */ /* FSF gzip compression */
- /* #define COMPRESS_EXTENSION ".gz" */ /* normal gzip extension */
-@@ -167,7 +167,7 @@
- * a tar-like file, thus making a neater installation. See *conf.h
- * for detailed configuration.
- */
--/* #define DLB */ /* not supported on all platforms */
-+#define DLB /* not supported on all platforms */
-
- /*
- * Defining INSURANCE slows down level changes, but allows games that
-@@ -186,7 +186,7 @@
- * otherwise it will be the current directory.
- */
- # ifndef HACKDIR
--# define HACKDIR "/usr/games/lib/nethackdir" /* nethack directory */
-+# define HACKDIR "/usr/share/games/nethack" /* nethack directory */
- # endif
-
- /*
-@@ -196,7 +196,7 @@
- * since the user might create files in a directory of his choice.
- * Of course SECURE is meaningful only if HACKDIR is defined.
- */
--/* #define SECURE */ /* do setuid(getuid()) after chdir() */
-+#define SECURE /* do setuid(getuid()) after chdir() */
-
- /*
- * If it is desirable to limit the number of people that can play Hack
-@@ -282,7 +282,7 @@
- * functions that have been macroized.
- */
-
--/* #define VISION_TABLES */ /* use vision tables generated at compile time */
-+#define VISION_TABLES /* use vision tables generated at compile time */
- #ifndef VISION_TABLES
- # ifndef NO_MACRO_CPATH
- # define MACRO_CPATH /* use clear_path macros instead of functions */
-@@ -320,7 +320,7 @@
- #endif
-
- #define EXP_ON_BOTL /* Show experience on bottom line */
--/* #define SCORE_ON_BOTL */ /* added by Gary Erickson (erickson@ucivax) */
-+#define SCORE_ON_BOTL /* added by Gary Erickson (erickson@ucivax) */
-
- /*
- * Section 5: MORE FUN STUFF!!!
-diff -urN nethack-3.3.1.orig/include/config1.h nethack-3.3.1/include/config1.h
---- nethack-3.3.1.orig/include/config1.h Mon Dec 6 22:22:04 1999
-+++ nethack-3.3.1/include/config1.h Sat Mar 9 11:34:20 2002
-@@ -71,13 +71,12 @@
- # endif
- #endif
- #ifdef __SASC_60
--# define NEARDATA __near /* put some data close */
-+# define __near /* put some data close */
- #else
- # ifdef _DCC
--# define NEARDATA __near /* put some data close */
-+# define __near /* put some data close */
- # else
--# define NEARDATA
--# endif
-+# define # endif
- #endif
- #ifdef AMIGA
- # define NEED_VARARGS
-diff -urN nethack-3.3.1.orig/include/decl.h nethack-3.3.1/include/decl.h
---- nethack-3.3.1.orig/include/decl.h Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/include/decl.h Sat Mar 9 11:38:07 2002
-@@ -24,13 +24,13 @@
- E char SAVEP[];
- #endif
-
--E NEARDATA int bases[MAXOCLASSES];
-+E int bases[MAXOCLASSES];
-
--E NEARDATA int multi;
--E NEARDATA int warnlevel;
--E NEARDATA int nroom;
--E NEARDATA int nsubroom;
--E NEARDATA int occtime;
-+E int multi;
-+E int warnlevel;
-+E int nroom;
-+E int nsubroom;
-+E int occtime;
-
- #define WARNCOUNT 6 /* number of different warning levels */
- E uchar warnsyms[WARNCOUNT];
-@@ -39,7 +39,7 @@
- E int otg_temp;
-
- #ifdef REDO
--E NEARDATA int in_doagain;
-+E int in_doagain;
- #endif
-
- E struct dgn_topology { /* special dungeon levels for speed */
-@@ -117,43 +117,43 @@
- #define nemesis_level (dungeon_topology.d_nemesis_level)
- #define knox_level (dungeon_topology.d_knox_level)
-
--E NEARDATA stairway dnstair, upstair; /* stairs up and down */
-+E stairway dnstair, upstair; /* stairs up and down */
- #define xdnstair (dnstair.sx)
- #define ydnstair (dnstair.sy)
- #define xupstair (upstair.sx)
- #define yupstair (upstair.sy)
-
--E NEARDATA stairway dnladder, upladder; /* ladders up and down */
-+E stairway dnladder, upladder; /* ladders up and down */
- #define xdnladder (dnladder.sx)
- #define ydnladder (dnladder.sy)
- #define xupladder (upladder.sx)
- #define yupladder (upladder.sy)
-
--E NEARDATA stairway sstairs;
-+E stairway sstairs;
-
--E NEARDATA dest_area updest, dndest; /* level-change destination areas */
-+E dest_area updest, dndest; /* level-change destination areas */
-
--E NEARDATA coord inv_pos;
--E NEARDATA dungeon dungeons[];
--E NEARDATA s_level *sp_levchn;
-+E coord inv_pos;
-+E dungeon dungeons[];
-+E s_level *sp_levchn;
- #define dunlev_reached(x) (dungeons[(x)->dnum].dunlev_ureached)
-
- #include "quest.h"
- E struct q_score quest_status;
-
--E NEARDATA char pl_character[PL_CSIZ];
--E NEARDATA char pl_race; /* character's race */
-+E char pl_character[PL_CSIZ];
-+E char pl_race; /* character's race */
-
--E NEARDATA char pl_fruit[PL_FSIZ];
--E NEARDATA int current_fruit;
--E NEARDATA struct fruit *ffruit;
-+E char pl_fruit[PL_FSIZ];
-+E int current_fruit;
-+E struct fruit *ffruit;
-
--E NEARDATA char tune[6];
-+E char tune[6];
-
- #define MAXLINFO (MAXDUNGEON * MAXLEVEL)
- E struct linfo level_info[MAXLINFO];
-
--E NEARDATA struct sinfo {
-+E struct sinfo {
- int gameover; /* self explanatory? */
- int stopprint; /* inhibit further end of game disclosure */
- #if defined(UNIX) || defined(VMS) || defined (__EMX__)
-@@ -175,25 +175,25 @@
- E const char ynqchars[];
- E const char ynaqchars[];
- E const char ynNaqchars[];
--E NEARDATA long yn_number;
--E NEARDATA int smeq[];
--E NEARDATA int doorindex;
--E NEARDATA char *save_cm;
-+E long yn_number;
-+E int smeq[];
-+E int doorindex;
-+E char *save_cm;
- #define KILLED_BY_AN 0
- #define KILLED_BY 1
- #define NO_KILLER_PREFIX 2
--E NEARDATA int killer_format;
-+E int killer_format;
- E const char *killer;
- E const char *delayed_killer;
- E char killer_buf[BUFSZ];
- E const char *configfile;
--E NEARDATA char plname[PL_NSIZ];
--E NEARDATA char dogname[];
-+E char plname[PL_NSIZ];
-+E char dogname[];
- #ifdef DUMP_CHARACTER
--E NEARDATA char dump_fn[];
-+E char dump_fn[];
- #endif /* DUMP_CHARACTER */
--E NEARDATA char catname[];
--E NEARDATA char horsename[];
-+E char catname[];
-+E char horsename[];
- E char preferred_pet;
- E const char *occtxt; /* defined when occupation != NULL */
- E const char *nomovemsg;
-@@ -202,7 +202,7 @@
-
- #ifdef STORY_LOG
- /* JDS: buffer for the story/diary/log */
--extern NEARDATA char* story_buffer;
-+extern char* story_buffer;
-
- #endif /* STORY_LOG */
- #ifndef KEY_REBINDING
-@@ -234,30 +234,30 @@
- E char misc_cmds[]; /* other special keyboard commands */
- #endif /* KEY_REBINDING */
-
--E NEARDATA schar tbx, tby; /* set in mthrowu.c */
-+E schar tbx, tby; /* set in mthrowu.c */
-
--E NEARDATA struct dig_info { /* apply.c, hack.c */
-+E struct dig_info { /* apply.c, hack.c */
- int effort;
- d_level level;
- coord pos;
- boolean down, chew;
- } digging;
-
--E NEARDATA long moves, monstermoves;
--E NEARDATA long wailmsg;
-+E long moves, monstermoves;
-+E long wailmsg;
-
--E NEARDATA boolean in_mklev;
--E NEARDATA boolean stoned;
--E NEARDATA boolean unweapon;
--E NEARDATA boolean mrg_to_wielded;
--E NEARDATA struct obj *current_wand;
-+E boolean in_mklev;
-+E boolean stoned;
-+E boolean unweapon;
-+E boolean mrg_to_wielded;
-+E struct obj *current_wand;
-
--E NEARDATA boolean in_steed_dismounting;
-+E boolean in_steed_dismounting;
-
- E const int shield_static[];
-
- #include "spell.h"
--E NEARDATA struct spell spl_book[]; /* sized in decl.c */
-+E struct spell spl_book[]; /* sized in decl.c */
-
- #ifdef TEXTCOLOR
- #include "color.h"
-@@ -270,7 +270,7 @@
- E uchar monsyms[MAXMCLASSES]; /* current class symbols */
-
- #include "obj.h"
--E NEARDATA struct obj *invent,
-+E struct obj *invent,
- *uarm, *uarmc, *uarmh, *uarms, *uarmg, *uarmf,
- #ifdef TOURIST
- *uarmu, /* under-wear, so to speak */
-@@ -278,34 +278,34 @@
- *uskin, *uamul, *uleft, *uright, *ublindf,
- *uwep, *uswapwep, *uquiver;
-
--E NEARDATA struct obj *uchain; /* defined only when punished */
--E NEARDATA struct obj *uball;
--E NEARDATA struct obj *migrating_objs;
--E NEARDATA struct obj *billobjs;
--E NEARDATA struct obj zeroobj; /* init'd and defined in decl.c */
-+E struct obj *uchain; /* defined only when punished */
-+E struct obj *uball;
-+E struct obj *migrating_objs;
-+E struct obj *billobjs;
-+E struct obj zeroobj; /* init'd and defined in decl.c */
-
- E const char *he[3];
- E const char *him[3];
- E const char *his[3];
-
- #include "you.h"
--E NEARDATA struct you u;
-+E struct you u;
-
- #include "onames.h"
- #ifndef PM_H /* (pm.h has already been included via youprop.h) */
- #include "pm.h"
- #endif
-
--E NEARDATA struct monst youmonst; /* init'd and defined in decl.c */
--E NEARDATA struct monst *mydogs, *migrating_mons;
-+E struct monst youmonst; /* init'd and defined in decl.c */
-+E struct monst *mydogs, *migrating_mons;
-
--E NEARDATA struct mvitals {
-+E struct mvitals {
- uchar born;
- uchar died;
- uchar mvflags;
- } mvitals[NUMMONS];
-
--E NEARDATA struct c_color_names {
-+E struct c_color_names {
- const char *const c_black, *const c_amber, *const c_golden,
- *const c_light_blue,*const c_red, *const c_green,
- *const c_silver, *const c_blue, *const c_purple,
-@@ -355,12 +355,12 @@
- #define EXACT_NAME 0x0F
-
- /* Vision */
--E NEARDATA boolean vision_full_recalc; /* TRUE if need vision recalc */
--E NEARDATA char **viz_array; /* could see/in sight row pointers */
-+E boolean vision_full_recalc; /* TRUE if need vision recalc */
-+E char **viz_array; /* could see/in sight row pointers */
-
- /* Window system stuff */
--E NEARDATA winid WIN_MESSAGE, WIN_STATUS;
--E NEARDATA winid WIN_MAP, WIN_INVEN;
-+E winid WIN_MESSAGE, WIN_STATUS;
-+E winid WIN_MAP, WIN_INVEN;
- E char toplines[];
- #ifndef TCAP_H
- E struct tc_gbl_data { /* also declared in tcap.h */
-diff -urN nethack-3.3.1.orig/include/flag.h nethack-3.3.1/include/flag.h
---- nethack-3.3.1.orig/include/flag.h Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/include/flag.h Sat Mar 9 11:34:20 2002
-@@ -247,7 +247,7 @@
- #endif
- };
-
--extern NEARDATA struct flag flags;
--extern NEARDATA struct instance_flags iflags;
-+extern struct flag flags;
-+extern struct instance_flags iflags;
-
- #endif /* FLAG_H */
-diff -urN nethack-3.3.1.orig/include/global.h nethack-3.3.1/include/global.h
---- nethack-3.3.1.orig/include/global.h Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/include/global.h Sat Mar 9 11:34:20 2002
-@@ -14,7 +14,7 @@
- * Files expected to exist in the playground directory.
- */
-
--#define RECORD "record" /* file containing list of topscorers */
-+#define RECORD "/var/games/nethack/record" /* file containing list of topscorers */
- #define HELP "help" /* file containing command descriptions */
- #define SHELP "hh" /* abbreviated form of the same */
- #define DEBUGHELP "wizhelp" /* file containing debug mode cmds */
-diff -urN nethack-3.3.1.orig/include/hack.h nethack-3.3.1/include/hack.h
---- nethack-3.3.1.orig/include/hack.h Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/include/hack.h Sat Mar 9 11:34:20 2002
-@@ -78,7 +78,7 @@
- #include "decl.h"
- #include "timeout.h"
-
--NEARDATA extern coord bhitpos; /* place where throw or zap hits or stops */
-+extern coord bhitpos; /* place where throw or zap hits or stops */
-
- /* types of calls to bhit() */
- #define ZAPPED_WAND 0
-diff -urN nethack-3.3.1.orig/include/mkroom.h nethack-3.3.1/include/mkroom.h
---- nethack-3.3.1.orig/include/mkroom.h Wed Jul 7 06:16:33 1999
-+++ nethack-3.3.1/include/mkroom.h Sat Mar 9 11:34:20 2002
-@@ -34,8 +34,8 @@
- const char **shknms; /* list of shopkeeper names for this type */
- };
-
--extern NEARDATA struct mkroom rooms[(MAXNROFROOMS+1)*2];
--extern NEARDATA struct mkroom* subrooms;
-+extern struct mkroom rooms[(MAXNROFROOMS+1)*2];
-+extern struct mkroom* subrooms;
- /* the normal rooms on the current level are described in rooms[0..n] for
- * some n<MAXNROFROOMS
- * the vault, if any, is described by rooms[n+1]
-@@ -45,7 +45,7 @@
-
- extern struct mkroom *dnstairs_room, *upstairs_room, *sstairs_room;
-
--extern NEARDATA coord doors[DOORMAX];
-+extern coord doors[DOORMAX];
-
- /* values for rtype in the room definition structure */
- #define OROOM 0 /* ordinary room */
-diff -urN nethack-3.3.1.orig/include/objclass.h nethack-3.3.1/include/objclass.h
---- nethack-3.3.1.orig/include/objclass.h Mon Dec 6 22:22:37 1999
-+++ nethack-3.3.1/include/objclass.h Sat Mar 9 11:34:20 2002
-@@ -115,8 +115,8 @@
- const char *oc_descr; /* description when name unknown */
- };
-
--extern NEARDATA struct objclass objects[];
--extern NEARDATA struct objdescr obj_descr[];
-+extern struct objclass objects[];
-+extern struct objdescr obj_descr[];
-
- /*
- * All objects have a class. Make sure that all classes have a corresponding
-diff -urN nethack-3.3.1.orig/include/patchlevel.h nethack-3.3.1/include/patchlevel.h
---- nethack-3.3.1.orig/include/patchlevel.h Thu Aug 10 02:20:03 2000
-+++ nethack-3.3.1/include/patchlevel.h Sat Mar 9 11:34:20 2002
-@@ -232,7 +232,7 @@
- * refine the overlay manager, rearrange the OVLx breakdown for better
- * efficiency, rename the overlay macros, and split off the overlay
- * instructions to Install.ovl
-- * introduce NEARDATA for better Amiga efficiency
-+ * introduce for better Amiga efficiency
- * support for more VMS versions (courtesy Joshua Delahunty and Pat Rankin)
- * more const fixes
- * better support for common graphics (DEC VT and IBM)
-diff -urN nethack-3.3.1.orig/include/permonst.h nethack-3.3.1/include/permonst.h
---- nethack-3.3.1.orig/include/permonst.h Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/include/permonst.h Sat Mar 9 11:34:20 2002
-@@ -63,7 +63,7 @@
- # endif
- };
-
--extern NEARDATA struct permonst
-+extern struct permonst
- mons[]; /* the master list of monster types */
-
- #define VERY_SLOW 3
-diff -urN nethack-3.3.1.orig/include/system.h nethack-3.3.1/include/system.h
---- nethack-3.3.1.orig/include/system.h Thu Jan 6 20:20:08 2000
-+++ nethack-3.3.1/include/system.h Sat Mar 9 11:34:20 2002
-@@ -291,6 +291,9 @@
- /* The POSIX string.h is required to define all the mem* and str* functions */
- #include <string.h>
- #else
-+
-+#if (__GLIBC__ > 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1)
-+#else
- #if defined(SYSV) || defined(VMS) || defined(MAC) || defined(SUNOS4)
- # if defined(NHSTDC) || (defined(VMS) && !defined(ANCIENT_VAXC))
- # if !defined(_AIX32) && !(defined(SUNOS4) && defined(__STDC__))
-@@ -317,6 +320,7 @@
- E void *FDECL(memset, (char*,int,int));
- # endif
- #endif
-+#endif
- #endif /* POSIX_TYPES */
-
- #if defined(MICRO) && !defined(LATTICE)
-diff -urN nethack-3.3.1.orig/include/tcap.h nethack-3.3.1/include/tcap.h
---- nethack-3.3.1.orig/include/tcap.h Sun Dec 19 04:55:37 1999
-+++ nethack-3.3.1/include/tcap.h Sat Mar 9 11:34:20 2002
-@@ -50,7 +50,7 @@
- # ifdef TOS
- extern const char *hilites[CLR_MAX];
- # else
--extern NEARDATA char *hilites[CLR_MAX];
-+extern char *hilites[CLR_MAX];
- # endif
- #endif
-
-diff -urN nethack-3.3.1.orig/include/unixconf.h nethack-3.3.1/include/unixconf.h
---- nethack-3.3.1.orig/include/unixconf.h Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/include/unixconf.h Sat Mar 9 11:34:20 2002
-@@ -37,7 +37,7 @@
- #define NETWORK /* if running on a networked system */
- /* e.g. Suns sharing a playground through NFS */
- /* #define SUNOS4 */ /* SunOS 4.x */
--/* #define LINUX */ /* Another Unix clone */
-+#define LINUX /* Another Unix clone */
- /* #define CYGWIN32 */ /* Unix on Win32 -- use with case sensitive defines */
- /* #define GENIX */ /* Yet Another Unix Clone */
- /* #define HISX */ /* Bull Unix for XPS Machines */
-@@ -96,7 +96,7 @@
- */
-
- /* #define NO_FILE_LINKS */ /* if no hard links */
--/* #define LOCKDIR "/usr/games/lib/nethackdir" */ /* where to put locks */
-+#define LOCKDIR "/var/games/nethack" /* where to put locks */
-
- /*
- * If you want the static parts of your playground on a read-only file
-@@ -132,7 +132,7 @@
- * "extra output" method is used, but not all systems provide access to
- * a fine-grained timer.
- */
--/* #define TIMED_DELAY */ /* usleep() */
-+#define TIMED_DELAY /* usleep() */
- #endif
-
- /*
-@@ -181,7 +181,7 @@
- # ifdef __sgi
- #define DEF_MAILREADER "/usr/sbin/Mail"
- # else
--#define DEF_MAILREADER "/usr/bin/mailx"
-+#define DEF_MAILREADER "/usr/bin/Mail"
- # endif
- # endif
- # else
-@@ -259,7 +259,7 @@
- #include <time.h>
- #endif
-
--#define HLOCK "perm" /* an empty file used for locking purposes */
-+#define HLOCK "/var/games/nethack/perm" /* an empty file used for locking purposes */
-
- #ifndef KEY_REBINDING
- #ifndef REDO
-diff -urN nethack-3.3.1.orig/include/winprocs.h nethack-3.3.1/include/winprocs.h
---- nethack-3.3.1.orig/include/winprocs.h Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/include/winprocs.h Sat Mar 9 11:34:20 2002
-@@ -64,7 +64,7 @@
- void FDECL((*win_outrip), (winid,int));
- };
-
--extern NEARDATA struct window_procs windowprocs;
-+extern struct window_procs windowprocs;
-
- /*
- * If you wish to only support one window system and not use procedure
-diff -urN nethack-3.3.1.orig/src/apply.c nethack-3.3.1/src/apply.c
---- nethack-3.3.1.orig/src/apply.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/apply.c Sat Mar 9 11:34:20 2002
-@@ -1128,7 +1128,7 @@
- begin_burn(obj, FALSE);
- }
-
--static NEARDATA const char cuddly[] = { TOOL_CLASS, 0 };
-+static const char cuddly[] = { TOOL_CLASS, 0 };
-
- int
- dorub()
-@@ -1689,8 +1689,8 @@
- useup(obj);
- }
-
--static NEARDATA const char lubricables[] = { ALL_CLASSES, ALLOW_NONE, 0 };
--static NEARDATA const char need_to_remove_outer_armor[] =
-+static const char lubricables[] = { ALL_CLASSES, ALLOW_NONE, 0 };
-+static const char need_to_remove_outer_armor[] =
- "need to remove your %s to grease your %s.";
-
- STATIC_OVL void
-diff -urN nethack-3.3.1.orig/src/artifact.c nethack-3.3.1/src/artifact.c
---- nethack-3.3.1.orig/src/artifact.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/artifact.c Sat Mar 9 11:34:20 2002
-@@ -1107,8 +1107,8 @@
- return FALSE;
- }
-
--static NEARDATA const char recharge_type[] = { ALLOW_COUNT, ALL_CLASSES, 0 };
--static NEARDATA const char invoke_types[] = { ALL_CLASSES, 0 };
-+static const char recharge_type[] = { ALLOW_COUNT, ALL_CLASSES, 0 };
-+static const char invoke_types[] = { ALL_CLASSES, 0 };
- /* #invoke: an "ugly check" filters out most objects */
-
- int
-diff -urN nethack-3.3.1.orig/src/botl.c nethack-3.3.1/src/botl.c
---- nethack-3.3.1.orig/src/botl.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/botl.c Sat Mar 9 11:34:20 2002
-@@ -37,7 +37,7 @@
- #ifndef OVLB
- STATIC_DCL int mrank_sz;
- #else /* OVLB */
--STATIC_OVL NEARDATA int mrank_sz = 0; /* loaded by max_rank_sz (from u_init) */
-+STATIC_OVL int mrank_sz = 0; /* loaded by max_rank_sz (from u_init) */
- #endif /* OVLB */
-
- STATIC_DCL const char *NDECL(rank);
-diff -urN nethack-3.3.1.orig/src/cmd.c nethack-3.3.1/src/cmd.c
---- nethack-3.3.1.orig/src/cmd.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/cmd.c Sat Mar 9 11:34:20 2002
-@@ -243,7 +243,7 @@
- */
- #define BSIZE 20
- static char pushq[BSIZE], saveq[BSIZE];
--static NEARDATA int phead, ptail, shead, stail;
-+static int phead, ptail, shead, stail;
-
- static char
- popch() {
-@@ -4381,7 +4381,7 @@
- return x >= 1 && x <= COLNO-1 && y >= 0 && y <= ROWNO-1;
- }
-
--static NEARDATA int last_multi;
-+static int last_multi;
-
- /*
- * convert a MAP window position into a movecmd
-diff -urN nethack-3.3.1.orig/src/dbridge.c nethack-3.3.1/src/dbridge.c
---- nethack-3.3.1.orig/src/dbridge.c Mon Jul 3 19:33:10 2000
-+++ nethack-3.3.1/src/dbridge.c Sat Mar 9 11:34:20 2002
-@@ -232,7 +232,7 @@
-
- #define ENTITIES 2
-
--static NEARDATA struct entity occupants[ENTITIES];
-+static struct entity occupants[ENTITIES];
-
- STATIC_OVL
- struct entity *
-diff -urN nethack-3.3.1.orig/src/decl.c nethack-3.3.1/src/decl.c
---- nethack-3.3.1.orig/src/decl.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/decl.c Sat Mar 9 11:39:45 2002
-@@ -17,19 +17,19 @@
- char *catmore = 0; /* default pager */
- #endif
-
--NEARDATA int bases[MAXOCLASSES] = DUMMY;
-+int bases[MAXOCLASSES] = DUMMY;
-
--NEARDATA int multi = 0;
--NEARDATA int warnlevel = 0; /* used by movemon and dochugw */
--NEARDATA int nroom = 0;
--NEARDATA int nsubroom = 0;
--NEARDATA int occtime = 0;
-+int multi = 0;
-+int warnlevel = 0; /* used by movemon and dochugw */
-+int nroom = 0;
-+int nsubroom = 0;
-+int occtime = 0;
-
- int x_maze_max, y_maze_max; /* initialized in main, used in mkmaze.c */
- int otg_temp; /* used by object_to_glyph() [otg] */
-
- #ifdef REDO
--NEARDATA int in_doagain = 0;
-+int in_doagain = 0;
- #endif
-
- /*
-@@ -41,25 +41,25 @@
- #include "quest.h"
- struct q_score quest_status = DUMMY;
-
--NEARDATA int smeq[MAXNROFROOMS+1] = DUMMY;
--NEARDATA int doorindex = 0;
-+int smeq[MAXNROFROOMS+1] = DUMMY;
-+int doorindex = 0;
-
--NEARDATA char *save_cm = 0;
--NEARDATA int killer_format = 0;
-+char *save_cm = 0;
-+int killer_format = 0;
- const char *killer = 0;
- const char *delayed_killer = 0;
- char killer_buf[BUFSZ] = DUMMY;
- const char *nomovemsg = 0;
- const char nul[40] = DUMMY; /* contains zeros */
--NEARDATA char plname[PL_NSIZ] = DUMMY; /* player name */
--NEARDATA char pl_character[PL_CSIZ] = DUMMY;
--NEARDATA char pl_race = '\0';
--
--NEARDATA char pl_fruit[PL_FSIZ] = DUMMY;
--NEARDATA int current_fruit = 0;
--NEARDATA struct fruit *ffruit = (struct fruit *)0;
-+char plname[PL_NSIZ] = DUMMY; /* player name */
-+char pl_character[PL_CSIZ] = DUMMY;
-+char pl_race = '\0';
-+
-+char pl_fruit[PL_FSIZ] = DUMMY;
-+int current_fruit = 0;
-+struct fruit *ffruit = (struct fruit *)0;
-
--NEARDATA char tune[6] = DUMMY;
-+char tune[6] = DUMMY;
-
- const char *occtxt = DUMMY;
- const char quitchars[] = " \r\n\033";
-@@ -68,11 +68,11 @@
- const char ynqchars[] = "ynq";
- const char ynaqchars[] = "ynaq";
- const char ynNaqchars[] = "yn#aq";
--NEARDATA long yn_number = 0L;
-+long yn_number = 0L;
-
- #ifdef STORY_LOG
- /* JDS: buffer for the story/diary/log */
--NEARDATA char* story_buffer = NULL;
-+char* story_buffer = NULL;
-
- #endif /* STORY_LOG */
- #ifdef MICRO
-@@ -91,7 +91,7 @@
-
- struct linfo level_info[MAXLINFO];
-
--NEARDATA struct sinfo program_state;
-+struct sinfo program_state;
-
- /* 'rogue'-like direction commands (cmd.c) */
- #ifndef KEY_REBINDING
-@@ -113,43 +113,43 @@
- const schar ydir[10] = { 0,-1,-1,-1, 0, 1, 1, 1, 0, 0 };
- const schar zdir[10] = { 0, 0, 0, 0, 0, 0, 0, 0, 1,-1 };
-
--NEARDATA schar tbx = 0, tby = 0; /* mthrowu: target */
-+schar tbx = 0, tby = 0; /* mthrowu: target */
-
--NEARDATA struct dig_info digging;
-+struct dig_info digging;
-
--NEARDATA dungeon dungeons[MAXDUNGEON]; /* ini'ed by init_dungeon() */
--NEARDATA s_level *sp_levchn;
--NEARDATA stairway upstair = { 0, 0 }, dnstair = { 0, 0 };
--NEARDATA stairway upladder = { 0, 0 }, dnladder = { 0, 0 };
--NEARDATA stairway sstairs = { 0, 0 };
--NEARDATA dest_area updest = { 0, 0, 0, 0, 0, 0, 0, 0 };
--NEARDATA dest_area dndest = { 0, 0, 0, 0, 0, 0, 0, 0 };
--NEARDATA coord inv_pos = { 0, 0 };
--
--NEARDATA boolean in_mklev = FALSE;
--NEARDATA boolean stoned = FALSE; /* done to monsters hit by 'c' */
--NEARDATA boolean unweapon = FALSE;
--NEARDATA boolean mrg_to_wielded = FALSE;
-+dungeon dungeons[MAXDUNGEON]; /* ini'ed by init_dungeon() */
-+s_level *sp_levchn;
-+stairway upstair = { 0, 0 }, dnstair = { 0, 0 };
-+stairway upladder = { 0, 0 }, dnladder = { 0, 0 };
-+stairway sstairs = { 0, 0 };
-+dest_area updest = { 0, 0, 0, 0, 0, 0, 0, 0 };
-+dest_area dndest = { 0, 0, 0, 0, 0, 0, 0, 0 };
-+coord inv_pos = { 0, 0 };
-+
-+boolean in_mklev = FALSE;
-+boolean stoned = FALSE; /* done to monsters hit by 'c' */
-+boolean unweapon = FALSE;
-+boolean mrg_to_wielded = FALSE;
- /* weapon picked is merged with wielded one */
--NEARDATA struct obj *current_wand = 0; /* wand currently zapped/applied */
-+struct obj *current_wand = 0; /* wand currently zapped/applied */
-
--NEARDATA boolean in_steed_dismounting = FALSE;
-+boolean in_steed_dismounting = FALSE;
-
--NEARDATA coord bhitpos = DUMMY;
--NEARDATA coord doors[DOORMAX] = {DUMMY};
-+coord bhitpos = DUMMY;
-+coord doors[DOORMAX] = {DUMMY};
-
--NEARDATA struct mkroom rooms[(MAXNROFROOMS+1)*2] = {DUMMY};
--NEARDATA struct mkroom* subrooms = &rooms[MAXNROFROOMS+1];
-+struct mkroom rooms[(MAXNROFROOMS+1)*2] = {DUMMY};
-+struct mkroom* subrooms = &rooms[MAXNROFROOMS+1];
- struct mkroom *upstairs_room, *dnstairs_room, *sstairs_room;
-
- dlevel_t level; /* level map */
- struct trap *ftrap = (struct trap *)0;
--NEARDATA struct monst youmonst = DUMMY;
--NEARDATA struct flag flags = DUMMY;
--NEARDATA struct instance_flags iflags = DUMMY;
--NEARDATA struct you u = DUMMY;
-+struct monst youmonst = DUMMY;
-+struct flag flags = DUMMY;
-+struct instance_flags iflags = DUMMY;
-+struct you u = DUMMY;
-
--NEARDATA struct obj *invent = (struct obj *)0,
-+struct obj *invent = (struct obj *)0,
- *uwep = (struct obj *)0, *uarm = (struct obj *)0,
- *uswapwep = (struct obj *)0,
- *uquiver = (struct obj *)0, /* quiver */
-@@ -188,19 +188,19 @@
- S_ss1, S_ss2, S_ss3, S_ss2, S_ss1, S_ss2, S_ss4,
- };
-
--NEARDATA struct spell spl_book[MAXSPELL + 1] = {DUMMY};
-+struct spell spl_book[MAXSPELL + 1] = {DUMMY};
-
--NEARDATA long moves = 1L, monstermoves = 1L;
-+long moves = 1L, monstermoves = 1L;
- /* These diverge when player is Fast */
--NEARDATA long wailmsg = 0L;
-+long wailmsg = 0L;
-
- /* objects that are moving to another dungeon level */
--NEARDATA struct obj *migrating_objs = (struct obj *)0;
-+struct obj *migrating_objs = (struct obj *)0;
- /* objects not yet paid for */
--NEARDATA struct obj *billobjs = (struct obj *)0;
-+struct obj *billobjs = (struct obj *)0;
-
- /* used to zero all elements of a struct obj */
--NEARDATA struct obj zeroobj = DUMMY;
-+struct obj zeroobj = DUMMY;
-
- /* monster pronouns, index is return value of gender(mtmp) */
- const char *he[3] = { "he", "she", "it" };
-@@ -209,26 +209,26 @@
-
- #ifdef DUMP_CHARACTER
- /* originally from end.c */
--NEARDATA char dump_fn[PL_PSIZ] = DUMMY;
-+char dump_fn[PL_PSIZ] = DUMMY;
-
- #endif /* DUMP_CHARACTER */
- /* originally from dog.c */
--NEARDATA char dogname[PL_PSIZ] = DUMMY;
--NEARDATA char catname[PL_PSIZ] = DUMMY;
--NEARDATA char horsename[PL_PSIZ] = DUMMY;
-+char dogname[PL_PSIZ] = DUMMY;
-+char catname[PL_PSIZ] = DUMMY;
-+char horsename[PL_PSIZ] = DUMMY;
- #ifndef NO_PET_OPTION
- char preferred_pet; /* '\0', 'c', 'd' */
- #else
- char preferred_pet; /* '\0', 'c', 'd', 'n' (none) */
- #endif /* NO_PET_OPTION */
- /* monsters that went down/up together with @ */
--NEARDATA struct monst *mydogs = (struct monst *)0;
-+struct monst *mydogs = (struct monst *)0;
- /* monsters that are moving to another dungeon level */
--NEARDATA struct monst *migrating_mons = (struct monst *)0;
-+struct monst *migrating_mons = (struct monst *)0;
-
--NEARDATA struct mvitals mvitals[NUMMONS];
-+struct mvitals mvitals[NUMMONS];
-
--NEARDATA struct c_color_names c_color_names = {
-+struct c_color_names c_color_names = {
- "black", "amber", "golden",
- "light blue", "red", "green",
- "silver", "blue", "purple",
-@@ -251,12 +251,12 @@
- };
-
- /* Vision */
--NEARDATA boolean vision_full_recalc = 0;
--NEARDATA char **viz_array = 0;/* used in cansee() and couldsee() macros */
-+boolean vision_full_recalc = 0;
-+char **viz_array = 0;/* used in cansee() and couldsee() macros */
-
- /* Global windowing data, defined here for multi-window-system support */
--NEARDATA winid WIN_MESSAGE = WIN_ERR, WIN_STATUS = WIN_ERR;
--NEARDATA winid WIN_MAP = WIN_ERR, WIN_INVEN = WIN_ERR;
-+winid WIN_MESSAGE = WIN_ERR, WIN_STATUS = WIN_ERR;
-+winid WIN_MAP = WIN_ERR, WIN_INVEN = WIN_ERR;
- char toplines[TBUFSZ];
- /* Windowing stuff that's really tty oriented, but present for all ports */
- struct tc_gbl_data tc_gbl_data = { 0,0, 0,0 }; /* AS,AE, LI,CO */
-diff -urN nethack-3.3.1.orig/src/dig.c nethack-3.3.1/src/dig.c
---- nethack-3.3.1.orig/src/dig.c Mon Jul 17 02:16:27 2000
-+++ nethack-3.3.1/src/dig.c Sat Mar 9 11:34:20 2002
-@@ -8,7 +8,7 @@
-
- #ifdef OVLB
-
--static NEARDATA boolean did_dig_msg;
-+static boolean did_dig_msg;
-
- STATIC_DCL boolean NDECL(rm_waslit);
- STATIC_DCL void FDECL(mkcavepos, (XCHAR_P,XCHAR_P,int,BOOLEAN_P,BOOLEAN_P));
-diff -urN nethack-3.3.1.orig/src/do.c nethack-3.3.1/src/do.c
---- nethack-3.3.1.orig/src/do.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/do.c Sat Mar 9 11:34:20 2002
-@@ -44,7 +44,7 @@
-
- #ifdef OVLB
-
--static NEARDATA const char drop_types[] =
-+static const char drop_types[] =
- { ALLOW_COUNT, GOLD_CLASS, ALL_CLASSES, 0 };
-
- /* 'd' command: drop one inventory item */
-@@ -667,7 +667,7 @@
- #ifdef OVL2
-
- /* on a ladder, used in goto_level */
--static NEARDATA boolean at_ladder = FALSE;
-+static boolean at_ladder = FALSE;
-
- int
- dodown()
-@@ -1490,7 +1490,7 @@
- dowipe()
- {
- if(u.ucreamed) {
-- static NEARDATA char buf[39];
-+ static char buf[39];
-
- Sprintf(buf, "wiping off your %s", body_part(FACE));
- set_occupation(wipeoff, buf, 0);
-diff -urN nethack-3.3.1.orig/src/do_name.c nethack-3.3.1/src/do_name.c
---- nethack-3.3.1.orig/src/do_name.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/do_name.c Sat Mar 9 11:34:20 2002
-@@ -429,7 +429,7 @@
- return obj;
- }
-
--static NEARDATA const char callable[] = {
-+static const char callable[] = {
- SCROLL_CLASS, POTION_CLASS, WAND_CLASS, RING_CLASS, AMULET_CLASS,
- GEM_CLASS, SPBOOK_CLASS, ARMOR_CLASS, TOOL_CLASS, 0 };
-
-@@ -1002,7 +1002,7 @@
- const char *str;
- const char *pronoun;
- {
-- static NEARDATA char buf[BUFSZ];
-+ static char buf[BUFSZ];
- register int i;
-
- for(i=0; pronoun_pairs[i][0]; i++) {
-@@ -1039,7 +1039,7 @@
-
- #ifdef OVL2
-
--static NEARDATA const char *hcolors[] = {
-+static const char *hcolors[] = {
- "ultraviolet", "infrared", "bluish-orange",
- "reddish-green", "dark white", "light black", "sky blue-pink",
- "salty", "sweet", "sour", "bitter",
-diff -urN nethack-3.3.1.orig/src/do_wear.c nethack-3.3.1/src/do_wear.c
---- nethack-3.3.1.orig/src/do_wear.c Thu Aug 3 21:44:47 2000
-+++ nethack-3.3.1/src/do_wear.c Sat Mar 9 11:34:20 2002
-@@ -10,13 +10,13 @@
-
- #else /* OVLB */
-
--STATIC_OVL NEARDATA long takeoff_mask = 0L, taking_off = 0L;
-+STATIC_OVL long takeoff_mask = 0L, taking_off = 0L;
-
--static NEARDATA int todelay;
-+static int todelay;
-
--static NEARDATA const char see_yourself[] = "see yourself";
--static NEARDATA const char unknown_type[] = "Unknown type of %s (%d)";
--static NEARDATA const char *c_armor = "armor",
-+static const char see_yourself[] = "see yourself";
-+static const char unknown_type[] = "Unknown type of %s (%d)";
-+static const char *c_armor = "armor",
- *c_suit = "suit",
- #ifdef TOURIST
- *c_shirt = "shirt",
-@@ -31,7 +31,7 @@
- *c_axe = "axe",
- *c_that_ = "that";
-
--static NEARDATA const long takeoff_order[] = { WORN_BLINDF, W_WEP,
-+static const long takeoff_order[] = { WORN_BLINDF, W_WEP,
- WORN_SHIELD, WORN_GLOVES, LEFT_RING, RIGHT_RING, WORN_CLOAK,
- WORN_HELMET, WORN_AMUL, WORN_ARMOR,
- #ifdef TOURIST
-@@ -917,8 +917,8 @@
- multi = 0;
- }
-
--static NEARDATA const char clothes[] = {ARMOR_CLASS, 0};
--static NEARDATA const char accessories[] = {RING_CLASS, AMULET_CLASS, TOOL_CLASS, FOOD_CLASS, 0};
-+static const char clothes[] = {ARMOR_CLASS, 0};
-+static const char accessories[] = {RING_CLASS, AMULET_CLASS, TOOL_CLASS, FOOD_CLASS, 0};
-
- int
- dotakeoff()
-diff -urN nethack-3.3.1.orig/src/dogmove.c nethack-3.3.1/src/dogmove.c
---- nethack-3.3.1.orig/src/dogmove.c Sun Jul 16 03:53:14 2000
-+++ nethack-3.3.1/src/dogmove.c Sat Mar 9 11:34:20 2002
-@@ -44,7 +44,7 @@
- return (struct obj *)0;
- }
-
--static NEARDATA const char nofetch[] = { BALL_CLASS, CHAIN_CLASS, ROCK_CLASS, 0 };
-+static const char nofetch[] = { BALL_CLASS, CHAIN_CLASS, ROCK_CLASS, 0 };
-
- #endif /* OVL0 */
-
-diff -urN nethack-3.3.1.orig/src/dokick.c nethack-3.3.1/src/dokick.c
---- nethack-3.3.1.orig/src/dokick.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/dokick.c Sat Mar 9 11:34:20 2002
-@@ -9,8 +9,8 @@
- #define martial() (martial_bonus() || is_bigfoot(youmonst.data) || \
- (uarmf && uarmf->otyp == KICKING_BOOTS))
-
--static NEARDATA struct rm *maploc;
--static NEARDATA const char *gate_str;
-+static struct rm *maploc;
-+static const char *gate_str;
-
- extern boolean notonhead; /* for long worms */
-
-@@ -21,7 +21,7 @@
- STATIC_DCL void FDECL(otransit_msg, (struct obj *, BOOLEAN_P, long));
- STATIC_DCL void FDECL(drop_to, (coord *,SCHAR_P));
-
--static NEARDATA struct obj *kickobj;
-+static struct obj *kickobj;
-
- #define IS_SHOP(x) (rooms[x].rtype >= SHOPBASE)
-
-diff -urN nethack-3.3.1.orig/src/dothrow.c nethack-3.3.1/src/dothrow.c
---- nethack-3.3.1.orig/src/dothrow.c Sun Jul 16 03:42:57 2000
-+++ nethack-3.3.1/src/dothrow.c Sat Mar 9 11:34:20 2002
-@@ -18,10 +18,10 @@
- STATIC_DCL void FDECL(sho_obj_return_to_u, (struct obj *obj));
-
-
--static NEARDATA const char toss_objs[] =
-+static const char toss_objs[] =
- { ALLOW_COUNT, GOLD_CLASS, ALL_CLASSES, WEAPON_CLASS, 0 };
- /* different default choices when wielding a sling (gold must be included) */
--static NEARDATA const char bullets[] =
-+static const char bullets[] =
- { ALLOW_COUNT, GOLD_CLASS, ALL_CLASSES, GEM_CLASS, 0 };
-
- extern boolean notonhead; /* for long worms */
-@@ -1153,11 +1153,11 @@
- boolean is_buddy = sgn(mon->data->maligntyp) == sgn(u.ualign.type);
- boolean is_gem = objects[obj->otyp].oc_material == GEMSTONE;
- int ret = 0;
-- static NEARDATA const char nogood[] = " is not interested in your junk.";
-- static NEARDATA const char acceptgift[] = " accepts your gift.";
-- static NEARDATA const char maybeluck[] = " hesitatingly";
-- static NEARDATA const char noluck[] = " graciously";
-- static NEARDATA const char addluck[] = " gratefully";
-+ static const char nogood[] = " is not interested in your junk.";
-+ static const char acceptgift[] = " accepts your gift.";
-+ static const char maybeluck[] = " hesitatingly";
-+ static const char noluck[] = " graciously";
-+ static const char addluck[] = " gratefully";
-
- Strcpy(buf,Monnam(mon));
- mon->mpeaceful = 1;
-@@ -1323,8 +1323,8 @@
- struct monst *shkp = shop_keeper(*o_shop);
-
- if (shkp) { /* (implies *o_shop != '\0') */
-- static NEARDATA long lastmovetime = 0L;
-- static NEARDATA boolean peaceful_shk = FALSE;
-+ static long lastmovetime = 0L;
-+ static boolean peaceful_shk = FALSE;
- /* We want to base shk actions on her peacefulness
- at start of this turn, so that "simultaneous"
- multiple breakage isn't drastically worse than
-diff -urN nethack-3.3.1.orig/src/drawing.c nethack-3.3.1/src/drawing.c
---- nethack-3.3.1.orig/src/drawing.c Sat Jul 22 02:59:05 2000
-+++ nethack-3.3.1/src/drawing.c Sat Mar 9 11:34:20 2002
-@@ -868,7 +868,7 @@
- #endif /* ASCIIGRAPH */
-
- for (i = 0; i < MAXOCLASSES; i++) {
--#ifdef ASCIIGRAPH
-+#if defined(ASCIIGRAPH) && !defined(LINUX)
- if (iflags.IBMgraphics
- # if defined(USE_TILES) && defined(MSDOS)
- && !iflags.grmode
-@@ -876,7 +876,7 @@
- )
- oc_syms[i] = IBM_r_oc_syms[i];
- else
--#endif /* ASCIIGRAPH */
-+#endif /* ASCIIGRAPH && !LINUX */
- oc_syms[i] = r_oc_syms[i];
- }
- #if defined(MSDOS) && defined(USE_TILES)
-diff -urN nethack-3.3.1.orig/src/eat.c nethack-3.3.1/src/eat.c
---- nethack-3.3.1.orig/src/eat.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/eat.c Sat Mar 9 11:34:20 2002
-@@ -63,16 +63,16 @@
-
- #ifndef OVLB
-
--STATIC_DCL NEARDATA const char comestibles[];
--STATIC_DCL NEARDATA const char allobj[];
-+STATIC_DCL const char comestibles[];
-+STATIC_DCL const char allobj[];
- STATIC_DCL boolean force_save_hs;
-
- #else
-
--STATIC_OVL NEARDATA const char comestibles[] = { FOOD_CLASS, 0 };
-+STATIC_OVL const char comestibles[] = { FOOD_CLASS, 0 };
-
- /* Gold must come first for getobj(). */
--STATIC_OVL NEARDATA const char allobj[] = {
-+STATIC_OVL const char allobj[] = {
- GOLD_CLASS, WEAPON_CLASS, ARMOR_CLASS, POTION_CLASS, SCROLL_CLASS,
- WAND_CLASS, RING_CLASS, AMULET_CLASS, FOOD_CLASS, TOOL_CLASS,
- GEM_CLASS, ROCK_CLASS, BALL_CLASS, CHAIN_CLASS, SPBOOK_CLASS, 0 };
-@@ -151,12 +151,12 @@
- };
- #define TTSZ SIZE(tintxts)
-
--static NEARDATA struct {
-+static struct {
- struct obj *tin;
- int usedtime, reqtime;
- } tin;
-
--static NEARDATA struct {
-+static struct {
- struct obj *piece; /* the thing being eaten, or last thing that
- * was partially eaten, unless that thing was
- * a tin, which uses the tin structure above,
-diff -urN nethack-3.3.1.orig/src/end.c nethack-3.3.1/src/end.c
---- nethack-3.3.1.orig/src/end.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/end.c Sat Mar 9 11:34:20 2002
-@@ -118,7 +118,7 @@
- /*
- * The order of these needs to match the macros in hack.h.
- */
--static NEARDATA const char *deaths[] = { /* the array of death */
-+static const char *deaths[] = { /* the array of death */
- "died", "choked", "poisoned", "starvation", "drowning",
- "burning", "dissolving under the heat and pressure",
- "crushed", "turned to stone", "turned into slime",
-@@ -126,7 +126,7 @@
- "quit", "escaped", "ascended"
- };
-
--static NEARDATA const char *ends[] = { /* "when you..." */
-+static const char *ends[] = { /* "when you..." */
- "died", "choked", "were poisoned", "starved", "drowned",
- "burned", "dissolved in the lava",
- "were crushed", "turned to stone", "turned into slime",
-diff -urN nethack-3.3.1.orig/src/engrave.c nethack-3.3.1/src/engrave.c
---- nethack-3.3.1.orig/src/engrave.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/engrave.c Sat Mar 9 11:34:20 2002
-@@ -6,7 +6,7 @@
- #include "lev.h"
- #include <ctype.h>
-
--STATIC_VAR NEARDATA struct engr *head_engr;
-+STATIC_VAR struct engr *head_engr;
-
- #ifdef OVLB
- /* random engravings */
-@@ -400,7 +400,7 @@
- return(1);*/
- }
-
--static NEARDATA const char styluses[] =
-+static const char styluses[] =
- { ALL_CLASSES, ALLOW_NONE, TOOL_CLASS, WEAPON_CLASS, WAND_CLASS,
- GEM_CLASS, RING_CLASS, 0 };
-
-diff -urN nethack-3.3.1.orig/src/extralev.c nethack-3.3.1/src/extralev.c
---- nethack-3.3.1.orig/src/extralev.c Mon Nov 29 03:27:55 1999
-+++ nethack-3.3.1/src/extralev.c Sat Mar 9 11:34:20 2002
-@@ -22,7 +22,7 @@
- #define LEFT 4
- #define RIGHT 8
-
--static NEARDATA struct rogueroom r[3][3];
-+static struct rogueroom r[3][3];
- STATIC_DCL void FDECL(roguejoin,(int,int,int,int,int));
- STATIC_DCL void FDECL(roguecorr,(int,int,int));
- STATIC_DCL void FDECL(miniwalk,(int,int));
-diff -urN nethack-3.3.1.orig/src/files.c nethack-3.3.1/src/files.c
---- nethack-3.3.1.orig/src/files.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/files.c Sat Mar 9 11:34:20 2002
-@@ -8,25 +8,25 @@
- #include <ctype.h>
-
- #if !defined(MAC) && !defined(O_WRONLY) && !defined(AZTEC_C)
--#include <fcntl.h>
-+ #include <fcntl.h>
- #endif
- #if defined(UNIX) || defined(VMS)
--#include <errno.h>
--# ifndef SKIP_ERRNO
--extern int errno;
--# endif
--#include <signal.h>
-+ #include <errno.h>
-+ #ifndef SKIP_ERRNO
-+ extern int errno;
-+ #endif
-+ #include <signal.h>
- #endif
-
- #if defined(MSDOS) || defined(OS2) || defined(TOS) || defined(WIN32)
--# ifndef GNUDOS
--#include <sys\stat.h>
--# else
--#include <sys/stat.h>
--# endif
-+ #ifndef GNUDOS
-+ #include <sys\stat.h>
-+ #else
-+ #include <sys/stat.h>
-+ #endif
- #endif
- #ifndef O_BINARY /* used for micros, no-op for others */
--# define O_BINARY 0
-+ #define O_BINARY 0
- #endif
-
- #ifdef PREFIXES_IN_USE
-@@ -34,36 +34,40 @@
- static char fqn_filename_buffer[FQN_NUMBUF][FQN_MAX_FILENAME];
- #endif
-
--#if !defined(MFLOPPY) && !defined(VMS) && !defined(WIN32)
-+# if !defined(MFLOPPY) && !defined(VMS) && !defined(WIN32) && !defined(LINUX)
- char bones[] = "bonesnn.xxx";
- char lock[PL_NSIZ+14] = "1lock"; /* long enough for uid+name+.99 */
--#else
--# if defined(MFLOPPY)
--char bones[FILENAME]; /* pathname of bones files */
--char lock[FILENAME]; /* pathname of level files */
--# endif
--# if defined(VMS)
--char bones[] = "bonesnn.xxx;1";
--char lock[PL_NSIZ+17] = "1lock"; /* long enough for _uid+name+.99;1 */
--# endif
--# if defined(WIN32)
--char bones[] = "bonesnn.xxx";
--char lock[PL_NSIZ+25]; /* long enough for username+-+name+.99 */
-+# else
-+ # if defined(MFLOPPY)
-+ char bones[FILENAME]; /* pathname of bones files */
-+ char lock[FILENAME]; /* pathname of level files */
-+ # endif
-+ # if defined(VMS)
-+ char bones[] = "bonesnn.xxx;1";
-+ char lock[PL_NSIZ+17] = "1lock"; /* long enough for _uid+name+.99;1 */
-+ # endif
-+ # if defined(LINUX)
-+ char bones[] = "/var/games/nethack/bonesnn.xxx";
-+ char lock[255] = "/var/games/nethack/1lock";
-+ # endif
-+ # if defined(WIN32)
-+ char bones[] = "bonesnn.xxx";
-+ char lock[PL_NSIZ+25]; /* long enough for username+-+name+.99 */
-+ # endif
- # endif
--#endif
-
- #if defined(UNIX) || defined(__BEOS__)
--#define SAVESIZE (PL_NSIZ + 13) /* save/99999player.e */
-+ #define SAVESIZE (PL_NSIZ + 13) /* save/99999player.e */
- #else
--# ifdef VMS
--#define SAVESIZE (PL_NSIZ + 22) /* [.save]<uid>player.e;1 */
--# else
--# if defined(WIN32)
--#define SAVESIZE (PL_NSIZ + 40) /* username-player.NetHack-saved-game */
--# else
--#define SAVESIZE FILENAME /* from macconf.h or pcconf.h */
--# endif
--# endif
-+ # ifdef VMS
-+ #define SAVESIZE (PL_NSIZ + 22) /* [.save]<uid>player.e;1 */
-+ # else
-+ # if defined(WIN32)
-+ #define SAVESIZE (PL_NSIZ + 40) /* username-player.NetHack-saved-game */
-+ # else
-+ #define SAVESIZE FILENAME /* from macconf.h or pcconf.h */
-+ # endif
-+ # endif
- #endif
-
- char SAVEF[SAVESIZE]; /* holds relative path of save file from playground */
-@@ -442,7 +446,7 @@
- #else
- ret = rename(tempname, fq_bones);
- #endif
--#ifdef WIZARD
-+#if defined(WIZARD)
- if (wizard && ret != 0)
- pline("couldn't rename %s to %s", tempname, fq_bones);
- #endif
-@@ -520,9 +524,14 @@
- # else
- # if defined(WIN32)
- Sprintf(SAVEF,"%s-%s.NetHack-saved-game",get_username(0), plname);
--# else
-+# else
-+ # if defined(LINUX)
-+ Sprintf(SAVEF, "/var/games/nethack/save/%d%s", (int)getuid(), plname);
-+ regularize(SAVEF+28); /* avoid . or / in name */
-+ # else
- Sprintf(SAVEF, "save/%d%s", (int)getuid(), plname);
- regularize(SAVEF+5); /* avoid . or / in name */
-+ # endif /* LINUX */
- # endif /* WIN32 */
- # endif /* MICRO */
- #endif /* VMS */
-diff -urN nethack-3.3.1.orig/src/hack.c nethack-3.3.1/src/hack.c
---- nethack-3.3.1.orig/src/hack.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/hack.c Sat Mar 9 11:34:20 2002
-@@ -227,7 +227,7 @@
- long lastmovetime;
- lastmovetime = 0;
- #else
-- static NEARDATA long lastmovetime;
-+ static long lastmovetime;
- #endif
- /* note: this var contains garbage initially and
- after a restore */
-@@ -441,7 +441,7 @@
- }
-
- #ifdef SINKS
--static NEARDATA const char fell_on_sink[] = "fell onto a sink";
-+static const char fell_on_sink[] = "fell onto a sink";
-
- STATIC_OVL void
- dosinkfall()
-diff -urN nethack-3.3.1.orig/src/invent.c nethack-3.3.1/src/invent.c
---- nethack-3.3.1.orig/src/invent.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/invent.c Sat Mar 9 11:34:20 2002
-@@ -1025,7 +1025,7 @@
- W_WEP | W_SWAPWEP | W_QUIVER))));
- }
-
--static NEARDATA const char removeables[] =
-+static const char removeables[] =
- { ARMOR_CLASS, WEAPON_CLASS, RING_CLASS, AMULET_CLASS, TOOL_CLASS, 0 };
-
- /* interactive version of getobj - used for Drop, Identify and */
-@@ -2401,24 +2401,24 @@
- * Conversion from a class to a string for printing.
- * This must match the object class order.
- */
--STATIC_VAR NEARDATA const char *names[] = { 0,
-+STATIC_VAR const char *names[] = { 0,
- "Illegal objects", "Weapons", "Armor", "Rings", "Amulets",
- "Tools", "Comestibles", "Potions", "Scrolls", "Spellbooks",
- "Wands", "Coins", "Gems", "Boulders/Statues", "Iron balls",
- "Chains", "Venoms"
- };
-
--static NEARDATA const char oth_symbols[] = {
-+static const char oth_symbols[] = {
- CONTAINED_SYM,
- '\0'
- };
-
--static NEARDATA const char *oth_names[] = {
-+static const char *oth_names[] = {
- "Bagged/Boxed items"
- };
-
--static NEARDATA char *invbuf = (char *)0;
--static NEARDATA unsigned invbufsiz = 0;
-+static char *invbuf = (char *)0;
-+static unsigned invbufsiz = 0;
-
- char *
- let_to_name(let,unpaid)
-diff -urN nethack-3.3.1.orig/src/lock.c nethack-3.3.1/src/lock.c
---- nethack-3.3.1.orig/src/lock.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/lock.c Sat Mar 9 11:34:20 2002
-@@ -8,7 +8,7 @@
- STATIC_PTR int NDECL(forcelock);
-
- /* at most one of `door' and `box' should be non-null at any given time */
--STATIC_VAR NEARDATA struct xlock_s {
-+STATIC_VAR struct xlock_s {
- struct rm *door;
- struct obj *box;
- int picktyp, chance, usedtime;
-diff -urN nethack-3.3.1.orig/src/mail.c nethack-3.3.1/src/mail.c
---- nethack-3.3.1.orig/src/mail.c Wed Aug 9 20:02:04 2000
-+++ nethack-3.3.1/src/mail.c Sat Mar 9 11:34:20 2002
-@@ -256,7 +256,7 @@
- }
-
- /* Let the mail daemon have a larger vocabulary. */
--static NEARDATA const char *mail_text[] = {
-+static const char *mail_text[] = {
- "Gangway!",
- "Look out!",
- "Pardon me!"
-diff -urN nethack-3.3.1.orig/src/makemon.c nethack-3.3.1/src/makemon.c
---- nethack-3.3.1.orig/src/makemon.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/makemon.c Sat Mar 9 11:34:20 2002
-@@ -10,7 +10,7 @@
- #include <ctype.h>
- #endif
-
--STATIC_VAR NEARDATA struct monst zeromonst;
-+STATIC_VAR struct monst zeromonst;
-
- #ifdef OVL0
- STATIC_DCL boolean FDECL(uncommon, (int));
-@@ -1048,8 +1048,8 @@
- align_shift(ptr)
- register struct permonst *ptr;
- {
-- static NEARDATA long oldmoves = 0L; /* != 1, starting value of moves */
-- static NEARDATA s_level *lev;
-+ static long oldmoves = 0L; /* != 1, starting value of moves */
-+ static s_level *lev;
- register int alshift;
-
- if(oldmoves != moves) {
-@@ -1070,7 +1070,7 @@
- return alshift;
- }
-
--static NEARDATA struct {
-+static struct {
- int choice_count;
- char mchoices[SPECIAL_PM]; /* value range is 0..127 */
- } rndmonst_state = { -1, {0} };
-@@ -1531,7 +1531,7 @@
- #endif /* OVL1 */
- #ifdef OVLB
-
--static NEARDATA char syms[] = {
-+static char syms[] = {
- MAXOCLASSES, MAXOCLASSES+1, RING_CLASS, WAND_CLASS, WEAPON_CLASS,
- FOOD_CLASS, GOLD_CLASS, SCROLL_CLASS, POTION_CLASS, ARMOR_CLASS,
- AMULET_CLASS, TOOL_CLASS, ROCK_CLASS, GEM_CLASS, SPBOOK_CLASS,
-diff -urN nethack-3.3.1.orig/src/mhitm.c nethack-3.3.1/src/mhitm.c
---- nethack-3.3.1.orig/src/mhitm.c Thu Aug 3 22:00:42 2000
-+++ nethack-3.3.1/src/mhitm.c Sat Mar 9 11:34:20 2002
-@@ -10,9 +10,9 @@
-
- #ifdef OVLB
-
--static NEARDATA boolean vis, far_noise;
--static NEARDATA long noisetime;
--static NEARDATA struct obj *otmp;
-+static boolean vis, far_noise;
-+static long noisetime;
-+static struct obj *otmp;
-
- static const char brief_feeling[] =
- "have a %s feeling for a moment, then it passes.";
-diff -urN nethack-3.3.1.orig/src/mhitu.c nethack-3.3.1/src/mhitu.c
---- nethack-3.3.1.orig/src/mhitu.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/mhitu.c Sat Mar 9 11:34:20 2002
-@@ -5,7 +5,7 @@
- #include "hack.h"
- #include "artifact.h"
-
--STATIC_VAR NEARDATA struct obj *otmp;
-+STATIC_VAR struct obj *otmp;
-
- STATIC_DCL void FDECL(urustm, (struct monst *, struct obj *));
- # ifdef OVL1
-diff -urN nethack-3.3.1.orig/src/mklev.c nethack-3.3.1/src/mklev.c
---- nethack-3.3.1.orig/src/mklev.c Wed Aug 9 17:46:19 2000
-+++ nethack-3.3.1/src/mklev.c Sat Mar 9 11:34:20 2002
-@@ -446,7 +446,7 @@
- }
-
- /* there should be one of these per trap, in the same order as trap.h */
--static NEARDATA const char *trap_engravings[TRAPNUM] = {
-+static const char *trap_engravings[TRAPNUM] = {
- (char *)0, (char *)0, (char *)0, (char *)0, (char *)0,
- (char *)0, (char *)0, (char *)0, (char *)0, (char *)0,
- (char *)0, (char *)0, (char *)0, (char *)0,
-diff -urN nethack-3.3.1.orig/src/monmove.c nethack-3.3.1/src/monmove.c
---- nethack-3.3.1.orig/src/monmove.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/monmove.c Sat Mar 9 11:34:20 2002
-@@ -494,13 +494,13 @@
- return(tmp == 2);
- }
-
--static NEARDATA const char practical[] = { WEAPON_CLASS, ARMOR_CLASS, GEM_CLASS, FOOD_CLASS, 0 };
--static NEARDATA const char magical[] = {
-+static const char practical[] = { WEAPON_CLASS, ARMOR_CLASS, GEM_CLASS, FOOD_CLASS, 0 };
-+static const char magical[] = {
- AMULET_CLASS, POTION_CLASS, SCROLL_CLASS, WAND_CLASS, RING_CLASS,
- SPBOOK_CLASS, 0 };
--static NEARDATA const char indigestion[] = { BALL_CLASS, ROCK_CLASS, 0 };
--static NEARDATA const char boulder_class[] = { ROCK_CLASS, 0 };
--static NEARDATA const char gem_class[] = { GEM_CLASS, 0 };
-+static const char indigestion[] = { BALL_CLASS, ROCK_CLASS, 0 };
-+static const char boulder_class[] = { ROCK_CLASS, 0 };
-+static const char gem_class[] = { GEM_CLASS, 0 };
-
- boolean
- itsstuck(mtmp)
-diff -urN nethack-3.3.1.orig/src/monst.c nethack-3.3.1/src/monst.c
---- nethack-3.3.1.orig/src/monst.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/monst.c Sat Mar 9 11:34:20 2002
-@@ -90,7 +90,7 @@
- */
-
- #ifndef SPLITMON_2
--NEARDATA struct permonst mons[] = {
-+struct permonst mons[] = {
- /*
- * ants
- */
-diff -urN nethack-3.3.1.orig/src/mthrowu.c nethack-3.3.1/src/mthrowu.c
---- nethack-3.3.1.orig/src/mthrowu.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/mthrowu.c Sat Mar 9 11:34:20 2002
-@@ -19,7 +19,7 @@
- /*
- * Keep consistent with breath weapons in zap.c, and AD_* in monattk.h.
- */
--STATIC_OVL NEARDATA const char *breathwep[] = {
-+STATIC_OVL const char *breathwep[] = {
- "fragments",
- "fire",
- "frost",
-diff -urN nethack-3.3.1.orig/src/o_init.c nethack-3.3.1/src/o_init.c
---- nethack-3.3.1.orig/src/o_init.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/o_init.c Sat Mar 9 11:34:20 2002
-@@ -11,7 +11,7 @@
- STATIC_DCL boolean FDECL(interesting_to_discover,(int));
-
-
--static NEARDATA short disco[NUM_OBJECTS] = DUMMY;
-+static short disco[NUM_OBJECTS] = DUMMY;
-
- #ifdef USE_TILES
- STATIC_DCL void NDECL(shuffle_tiles);
-diff -urN nethack-3.3.1.orig/src/objects.c nethack-3.3.1/src/objects.c
---- nethack-3.3.1.orig/src/objects.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/objects.c Sat Mar 9 11:34:20 2002
-@@ -38,7 +38,7 @@
- # define OBJECT(obj,bits,prp,sym,prob,dly,wt,cost,sdam,ldam,oc1,oc2,nut,color) \
- {obj}
-
--NEARDATA struct objdescr obj_descr[] = {
-+struct objdescr obj_descr[] = {
- #else
- /* second pass -- object definitions */
-
-@@ -53,7 +53,7 @@
- # define HARDGEM(n) (0)
- # endif
-
--NEARDATA struct objclass objects[] = {
-+struct objclass objects[] = {
- #endif
- /* dummy object[0] -- description [2nd arg] *must* be NULL */
- OBJECT(OBJ("strange object",(char *)0), BITS(1,0,0,0,0,0,0,0,0,0,0,P_NONE,0),
-diff -urN nethack-3.3.1.orig/src/objnam.c nethack-3.3.1/src/objnam.c
---- nethack-3.3.1.orig/src/objnam.c Thu Aug 3 21:25:24 2000
-+++ nethack-3.3.1/src/objnam.c Sat Mar 9 11:34:20 2002
-@@ -84,7 +84,7 @@
- #ifdef LINT /* static char buf[BUFSZ]; */
- char buf[BUFSZ];
- #else
-- static char NEARDATA buf[BUFSZ];
-+ static char buf[BUFSZ];
- #endif
- register struct objclass *ocl = &objects[otyp];
- register const char *actualn = OBJ_NAME(*ocl);
-@@ -773,7 +773,7 @@
- struct obj *otmp;
- boolean ignore_oquan; /* to force singular */
- {
-- static char NEARDATA nambuf[40];
-+ static char nambuf[40];
-
- /* assert( strlen(mons[otmp->corpsenm].mname) <= 32 ); */
- Sprintf(nambuf, "%s corpse", mons[otmp->corpsenm].mname);
-@@ -810,7 +810,7 @@
- an(str)
- register const char *str;
- {
-- static char NEARDATA buf[BUFSZ];
-+ static char buf[BUFSZ];
-
- buf[0] = '\0';
-
-@@ -849,7 +849,7 @@
- the(str)
- const char *str;
- {
-- static char NEARDATA buf[BUFSZ];
-+ static char buf[BUFSZ];
- boolean insert_the = FALSE;
-
- if (!strncmpi(str, "the ", 4)) {
-@@ -995,7 +995,7 @@
- {
- /* Note: cannot use strcmpi here -- it'd give MATZot, CAVEMeN,... */
- register char *spot;
-- static char NEARDATA str[BUFSZ];
-+ static char str[BUFSZ];
- const char *excess = (char *)0;
- int len;
-
-@@ -1221,7 +1221,7 @@
- #else /* OVLB */
-
- /* wishable subranges of objects */
--STATIC_OVL NEARDATA const struct o_range o_ranges[] = {
-+STATIC_OVL const struct o_range o_ranges[] = {
- { "bag", TOOL_CLASS, SACK, BAG_OF_TRICKS },
- { "lamp", TOOL_CLASS, OIL_LAMP, MAGIC_LAMP },
- { "candle", TOOL_CLASS, TALLOW_CANDLE, WAX_CANDLE },
-@@ -1264,7 +1264,7 @@
- const char *oldstr;
- {
- register char *p, *bp;
-- static char NEARDATA str[BUFSZ];
-+ static char str[BUFSZ];
-
- if (!oldstr || !*oldstr) {
- impossible("singular of null?");
-diff -urN nethack-3.3.1.orig/src/options.c nethack-3.3.1/src/options.c
---- nethack-3.3.1.orig/src/options.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/options.c Sat Mar 9 11:34:20 2002
-@@ -6,8 +6,8 @@
- #include "config.h"
- #include "objclass.h"
- #include "flag.h"
--NEARDATA struct flag flags; /* provide linkage */
--NEARDATA struct instance_flags iflags; /* provide linkage */
-+struct flag flags; /* provide linkage */
-+struct instance_flags iflags; /* provide linkage */
- #define static
- #else
- #include "hack.h"
-@@ -2117,11 +2117,11 @@
- badoption(opts);
- }
-
--static NEARDATA const char *menutype[] = {
-+static const char *menutype[] = {
- "traditional", "combination", "partial", "full"
- };
-
--static NEARDATA const char *burdentype[] = {
-+static const char *burdentype[] = {
- "unencumbered", "burdened", "stressed",
- "strained", "overtaxed", "overloaded"
- };
-diff -urN nethack-3.3.1.orig/src/pickup.c nethack-3.3.1/src/pickup.c
---- nethack-3.3.1.orig/src/pickup.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/pickup.c Sat Mar 9 11:34:20 2002
-@@ -1503,7 +1503,7 @@
-
- /* A variable set in use_container(), to be used by the callback routines */
- /* in_container(), and out_container() from askchain() and use_container(). */
--static NEARDATA struct obj *current_container;
-+static struct obj *current_container;
- #define Icebox (current_container->otyp == ICE_BOX)
-
- /* Returns: -1 to stop, 1 item was inserted, 0 item was not inserted. */
-@@ -1773,7 +1773,7 @@
- current_container = obj; /* for use by in/out_container */
-
- if (obj->spe == 1) {
-- static NEARDATA const char sc[] = "Schroedinger's Cat";
-+ static const char sc[] = "Schroedinger's Cat";
- struct obj *ocat;
- struct monst *cat;
-
-diff -urN nethack-3.3.1.orig/src/polyself.c nethack-3.3.1/src/polyself.c
---- nethack-3.3.1.orig/src/polyself.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/polyself.c Sat Mar 9 11:34:20 2002
-@@ -1033,7 +1033,7 @@
- struct monst *mon;
- int part;
- {
-- static NEARDATA const char
-+ static const char
- *humanoid_parts[] = { "arm", "eye", "face", "finger",
- "fingertip", "foot", "hand", "handed", "head", "leg",
- "light headed", "neck", "spine", "toe", "hair", "blood", "lung"},
-diff -urN nethack-3.3.1.orig/src/potion.c nethack-3.3.1/src/potion.c
---- nethack-3.3.1.orig/src/potion.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/potion.c Sat Mar 9 11:34:20 2002
-@@ -7,8 +7,8 @@
- #ifdef OVLB
- boolean notonhead = FALSE;
-
--static NEARDATA int nothing, unkn;
--static NEARDATA const char beverages[] = { POTION_CLASS, 0 };
-+static int nothing, unkn;
-+static const char beverages[] = { POTION_CLASS, 0 };
-
- STATIC_DCL long FDECL(itimeout, (long));
- STATIC_DCL long FDECL(itimeout_incr, (long,int));
-diff -urN nethack-3.3.1.orig/src/pray.c nethack-3.3.1/src/pray.c
---- nethack-3.3.1.orig/src/pray.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/pray.c Sat Mar 9 11:34:20 2002
-@@ -930,7 +930,7 @@
- angrygods(g_align);
- }
-
--static NEARDATA const char sacrifice_types[] = { FOOD_CLASS, AMULET_CLASS, 0 };
-+static const char sacrifice_types[] = { FOOD_CLASS, AMULET_CLASS, 0 };
-
- STATIC_OVL void
- consume_offering(otmp)
-diff -urN nethack-3.3.1.orig/src/read.c nethack-3.3.1/src/read.c
---- nethack-3.3.1.orig/src/read.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/read.c Sat Mar 9 11:34:20 2002
-@@ -26,7 +26,7 @@
-
- boolean known;
-
--static NEARDATA const char readable[] =
-+static const char readable[] =
- { ALL_CLASSES, SCROLL_CLASS, SPBOOK_CLASS, 0 };
- static const char all_count[] = { ALLOW_COUNT, ALL_CLASSES, 0 };
-
-diff -urN nethack-3.3.1.orig/src/restore.c nethack-3.3.1/src/restore.c
---- nethack-3.3.1.orig/src/restore.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/restore.c Sat Mar 9 11:34:20 2002
-@@ -58,8 +58,8 @@
- #include "quest.h"
-
- boolean restoring = FALSE;
--static NEARDATA struct fruit *oldfruit;
--static NEARDATA long omoves;
-+static struct fruit *oldfruit;
-+static long omoves;
-
- #define Is_IceBox(o) ((o)->otyp == ICE_BOX ? TRUE : FALSE)
-
-@@ -946,11 +946,11 @@
- #ifndef ZEROCOMP_BUFSIZ
- #define ZEROCOMP_BUFSIZ BUFSZ
- #endif
--static NEARDATA unsigned char inbuf[ZEROCOMP_BUFSIZ];
--static NEARDATA unsigned short inbufp = 0;
--static NEARDATA unsigned short inbufsz = 0;
--static NEARDATA short inrunlength = -1;
--static NEARDATA int mreadfd;
-+static unsigned char inbuf[ZEROCOMP_BUFSIZ];
-+static unsigned short inbufp = 0;
-+static unsigned short inbufsz = 0;
-+static short inrunlength = -1;
-+static int mreadfd;
-
- static int
- mgetc()
-diff -urN nethack-3.3.1.orig/src/role.c nethack-3.3.1/src/role.c
---- nethack-3.3.1.orig/src/role.c Mon May 22 19:31:42 2000
-+++ nethack-3.3.1/src/role.c Sat Mar 9 11:34:20 2002
-@@ -503,7 +503,7 @@
- };
-
- /* used by str2XXX() */
--static char NEARDATA randomstr[] = "random";
-+static char randomstr[] = "random";
-
-
- boolean
-diff -urN nethack-3.3.1.orig/src/save.c nethack-3.3.1/src/save.c
---- nethack-3.3.1.orig/src/save.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/save.c Sat Mar 9 11:34:20 2002
-@@ -549,11 +549,11 @@
- #ifndef ZEROCOMP_BUFSIZ
- # define ZEROCOMP_BUFSIZ BUFSZ
- #endif
--static NEARDATA unsigned char outbuf[ZEROCOMP_BUFSIZ];
--static NEARDATA unsigned short outbufp = 0;
--static NEARDATA short outrunlength = -1;
--static NEARDATA int bwritefd;
--static NEARDATA boolean compressing = FALSE;
-+static unsigned char outbuf[ZEROCOMP_BUFSIZ];
-+static unsigned short outbufp = 0;
-+static short outrunlength = -1;
-+static int bwritefd;
-+static boolean compressing = FALSE;
-
- /*dbg()
- {
-diff -urN nethack-3.3.1.orig/src/shk.c nethack-3.3.1/src/shk.c
---- nethack-3.3.1.orig/src/shk.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/shk.c Sat Mar 9 11:34:20 2002
-@@ -25,7 +25,7 @@
-
- extern const struct shclass shtypes[]; /* defined in shknam.c */
-
--STATIC_VAR NEARDATA long int followmsg; /* last time of follow message */
-+STATIC_VAR long int followmsg; /* last time of follow message */
-
- STATIC_DCL void FDECL(setpaid, (struct monst *));
- STATIC_DCL long FDECL(addupbill, (struct monst *));
-diff -urN nethack-3.3.1.orig/src/sp_lev.c nethack-3.3.1/src/sp_lev.c
---- nethack-3.3.1.orig/src/sp_lev.c Sat Aug 5 01:43:26 2000
-+++ nethack-3.3.1/src/sp_lev.c Sat Mar 9 11:34:20 2002
-@@ -65,14 +65,14 @@
- #define NewTab(type, size) (type **) alloc(sizeof(type *) * (unsigned)size)
- #define Free(ptr) if(ptr) free((genericptr_t) (ptr))
-
--static NEARDATA walk walklist[50];
-+static walk walklist[50];
- extern int min_rx, max_rx, min_ry, max_ry; /* from mkmap.c */
-
- static char Map[COLNO][ROWNO];
- static char robjects[10], rloc_x[10], rloc_y[10], rmonst[10];
- static aligntyp ralign[3] = { AM_CHAOTIC, AM_NEUTRAL, AM_LAWFUL };
--static NEARDATA xchar xstart, ystart;
--static NEARDATA char xsize, ysize;
-+static xchar xstart, ystart;
-+static char xsize, ysize;
-
- STATIC_DCL void FDECL(set_wall_property, (XCHAR_P,XCHAR_P,XCHAR_P,XCHAR_P,int));
- STATIC_DCL int NDECL(rnddoor);
-diff -urN nethack-3.3.1.orig/src/spell.c nethack-3.3.1/src/spell.c
---- nethack-3.3.1.orig/src/spell.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/spell.c Sat Mar 9 11:34:20 2002
-@@ -4,8 +4,8 @@
-
- #include "hack.h"
-
--static NEARDATA schar delay; /* moves left for this spell */
--static NEARDATA struct obj *book; /* last/current book being xscribed */
-+static schar delay; /* moves left for this spell */
-+static struct obj *book; /* last/current book being xscribed */
-
- /* spellmenu arguments; 0 thru n-1 used as spl_book[] index when swapping */
- #define SPELLMENU_CAST (-2)
-diff -urN nethack-3.3.1.orig/src/steed.c nethack-3.3.1/src/steed.c
---- nethack-3.3.1.orig/src/steed.c Thu Aug 3 22:00:42 2000
-+++ nethack-3.3.1/src/steed.c Sat Mar 9 11:34:20 2002
-@@ -8,7 +8,7 @@
- #ifdef STEED
-
- /* Monsters that might be ridden */
--static NEARDATA const char steeds[] = {
-+static const char steeds[] = {
- S_QUADRUPED, S_UNICORN, S_ANGEL, S_CENTAUR, S_DRAGON, S_JABBERWOCK, '\0'
- };
-
-diff -urN nethack-3.3.1.orig/src/timeout.c nethack-3.3.1/src/timeout.c
---- nethack-3.3.1.orig/src/timeout.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/timeout.c Sat Mar 9 11:34:20 2002
-@@ -16,7 +16,7 @@
- #ifdef OVLB
-
- /* He is being petrified - dialogue by inmet!tower */
--static NEARDATA const char *stoned_texts[] = {
-+static const char *stoned_texts[] = {
- "You are slowing down.", /* 5 */
- "Your limbs are stiffening.", /* 4 */
- "Your limbs have turned to stone.", /* 3 */
-@@ -39,7 +39,7 @@
- }
-
- /* He is getting sicker and sicker prior to vomiting */
--static NEARDATA const char *vomiting_texts[] = {
-+static const char *vomiting_texts[] = {
- "are feeling mildly nauseous.", /* 14 */
- "feel slightly confused.", /* 11 */
- "can't seem to think straight.", /* 8 */
-@@ -71,7 +71,7 @@
- exercise(A_CON, FALSE);
- }
-
--static NEARDATA const char *choke_texts[] = {
-+static const char *choke_texts[] = {
- "You find it hard to breathe.",
- "You're gasping for air.",
- "You can no longer breathe.",
-@@ -79,7 +79,7 @@
- "You suffocate."
- };
-
--static NEARDATA const char *choke_texts2[] = {
-+static const char *choke_texts2[] = {
- "Your %s is becoming constricted.",
- "Your blood is having trouble reaching your brain.",
- "The pressure on your %s increases.",
-@@ -107,7 +107,7 @@
- exercise(A_STR, FALSE);
- }
-
--static NEARDATA const char *slime_texts[] = {
-+static const char *slime_texts[] = {
- "You are turning a little %s.", /* 5 */
- "Your limbs are getting oozy.", /* 4 */
- "Your skin begins to peel away.", /* 3 */
-diff -urN nethack-3.3.1.orig/src/topten.c nethack-3.3.1/src/topten.c
---- nethack-3.3.1.orig/src/topten.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/topten.c Sat Mar 9 11:34:20 2002
-@@ -37,9 +37,9 @@
- #define DTHSZ 85
- #endif /* LOG_MOVE_COUNT */
- #define ROLESZ 3
--#define PERSMAX 3 /* entries per name/uid per char. allowed */
-+#define PERSMAX 10 /* entries per name/uid per char. allowed */
- #define POINTSMIN 1 /* must be > 0 */
--#define ENTRYMAX 100 /* must be >= 10 */
-+#define ENTRYMAX 1000 /* must be >= 10 */
-
- #if !defined(MICRO) && !defined(MAC)
- #define PERS_IS_UID /* delete for PERSMAX per name; now per uid */
-@@ -80,7 +80,7 @@
- #endif
-
- /* must fit with end.c; used in rip.c */
--NEARDATA const char *killed_by_prefix[] = {
-+const char *killed_by_prefix[] = {
- "killed by ", "choked on ", "poisoned by ", "", "drowned in ",
- "", "dissolved in ", "crushed to death by ", "petrified by ",
- "turned to slime by ", "", "", "", "", "", ""
-diff -urN nethack-3.3.1.orig/src/track.c nethack-3.3.1/src/track.c
---- nethack-3.3.1.orig/src/track.c Thu Oct 28 03:45:31 1999
-+++ nethack-3.3.1/src/track.c Sat Mar 9 11:34:20 2002
-@@ -7,8 +7,8 @@
-
- #define UTSZ 50
-
--STATIC_VAR NEARDATA int utcnt, utpnt;
--STATIC_VAR NEARDATA coord utrack[UTSZ];
-+STATIC_VAR int utcnt, utpnt;
-+STATIC_VAR coord utrack[UTSZ];
-
- #ifdef OVLB
-
-diff -urN nethack-3.3.1.orig/src/trap.c nethack-3.3.1/src/trap.c
---- nethack-3.3.1.orig/src/trap.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/trap.c Sat Mar 9 11:34:20 2002
-@@ -113,8 +113,8 @@
- boolean print;
- struct monst *victim;
- {
-- static NEARDATA const char *action[] = { "smoulder", "rust", "rot", "corrode" };
-- static NEARDATA const char *msg[] = { "burnt", "rusted", "rotten", "corroded" };
-+ static const char *action[] = { "smoulder", "rust", "rot", "corrode" };
-+ static const char *msg[] = { "burnt", "rusted", "rotten", "corroded" };
- boolean vulnerable = FALSE;
- boolean plural;
- boolean grprot = FALSE;
-@@ -2528,7 +2528,7 @@
- }
-
- /* getobj will filter down to cans of grease and known potions of oil */
--static NEARDATA const char oil[] = { ALL_CLASSES, TOOL_CLASS, POTION_CLASS, 0 };
-+static const char oil[] = { ALL_CLASSES, TOOL_CLASS, POTION_CLASS, 0 };
-
- /* it may not make much sense to use grease on floor boards, but so what? */
- STATIC_OVL int
-diff -urN nethack-3.3.1.orig/src/u_init.c nethack-3.3.1/src/u_init.c
---- nethack-3.3.1.orig/src/u_init.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/u_init.c Sat Mar 9 11:34:20 2002
-@@ -909,10 +909,10 @@
- }
- obj = mksobj(otyp, TRUE, FALSE);
- } else { /* UNDEF_TYP */
-- static NEARDATA short nocreate = STRANGE_OBJECT;
-- static NEARDATA short nocreate2 = STRANGE_OBJECT;
-- static NEARDATA short nocreate3 = STRANGE_OBJECT;
-- static NEARDATA short nocreate4 = STRANGE_OBJECT;
-+ static short nocreate = STRANGE_OBJECT;
-+ static short nocreate2 = STRANGE_OBJECT;
-+ static short nocreate3 = STRANGE_OBJECT;
-+ static short nocreate4 = STRANGE_OBJECT;
- /*
- * For random objects, do not create certain overly powerful
- * items: wand of wishing, ring of levitation, or the
-diff -urN nethack-3.3.1.orig/src/weapon.c nethack-3.3.1/src/weapon.c
---- nethack-3.3.1.orig/src/weapon.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/weapon.c Sat Mar 9 11:34:20 2002
-@@ -31,13 +31,13 @@
-
- #ifndef OVLB
-
--STATIC_DCL NEARDATA const short skill_names_indices[];
--STATIC_DCL NEARDATA const char *odd_skill_names[];
--STATIC_DCL NEARDATA const char *barehands_or_martial[];
-+STATIC_DCL const short skill_names_indices[];
-+STATIC_DCL const char *odd_skill_names[];
-+STATIC_DCL const char *barehands_or_martial[];
-
- #else /* OVLB */
-
--STATIC_VAR NEARDATA const short skill_names_indices[P_NUM_SKILLS] = {
-+STATIC_VAR const short skill_names_indices[P_NUM_SKILLS] = {
- 0, DAGGER, KNIFE, AXE,
- PICK_AXE, SHORT_SWORD, BROADSWORD, LONG_SWORD,
- TWO_HANDED_SWORD, SCIMITAR, PN_SABER, CLUB,
-@@ -57,7 +57,7 @@
- };
-
- /* note: entry [0] isn't used */
--STATIC_VAR NEARDATA const char *odd_skill_names[] = {
-+STATIC_VAR const char *odd_skill_names[] = {
- "no skill",
- "bare hands", /* use barehands_or_martial[] instead */
- "two weapon combat",
-@@ -75,7 +75,7 @@
- "matter spells",
- };
- /* indexed vis `is_martial() */
--STATIC_VAR NEARDATA const char *barehands_or_martial[] = {
-+STATIC_VAR const char *barehands_or_martial[] = {
- "bare handed combat", "martial arts"
- };
-
-@@ -112,7 +112,7 @@
- odd_skill_names[-skill_names_indices[type]])
-
- #ifdef OVLB
--static NEARDATA const char kebabable[] = {
-+static const char kebabable[] = {
- S_XORN, S_DRAGON, S_JABBERWOCK, S_NAGA, S_GIANT, '\0'
- };
-
-@@ -343,7 +343,7 @@
- return (struct obj *)0;
- }
-
--static NEARDATA const int rwep[] =
-+static const int rwep[] =
- { DWARVISH_SPEAR, SILVER_SPEAR, ELVEN_SPEAR, SPEAR, ORCISH_SPEAR,
- JAVELIN, SHURIKEN, YA, SILVER_ARROW, ELVEN_ARROW, ARROW,
- ORCISH_ARROW, CROSSBOW_BOLT, SILVER_DAGGER, ELVEN_DAGGER, DAGGER,
-@@ -352,7 +352,7 @@
- /* note: CREAM_PIE should NOT be #ifdef KOPS */
- };
-
--static NEARDATA const int pwep[] =
-+static const int pwep[] =
- { HALBERD, BARDICHE, SPETUM, BILL_GUISARME, VOULGE, RANSEUR, GUISARME,
- GLAIVE, LUCERN_HAMMER, BEC_DE_CORBIN, FAUCHARD, PARTISAN, LANCE
- };
-@@ -470,7 +470,7 @@
- }
-
- /* Weapons in order of preference */
--static NEARDATA short hwep[] = {
-+static short hwep[] = {
- CORPSE, /* cockatrice corpse */
- TSURUGI, RUNESWORD, DWARVISH_MATTOCK, TWO_HANDED_SWORD, BATTLE_AXE,
- KATANA, UNICORN_HORN, CRYSKNIFE, TRIDENT, LONG_SWORD,
-diff -urN nethack-3.3.1.orig/src/wield.c nethack-3.3.1/src/wield.c
---- nethack-3.3.1.orig/src/wield.c Sat Jul 15 19:22:32 2000
-+++ nethack-3.3.1/src/wield.c Sat Mar 9 11:34:20 2002
-@@ -217,11 +217,11 @@
-
- /*** Commands to change particular slot(s) ***/
-
--static NEARDATA const char wield_objs[] =
-+static const char wield_objs[] =
- { ALL_CLASSES, ALLOW_NONE, WEAPON_CLASS, TOOL_CLASS, 0 };
--static NEARDATA const char ready_objs[] =
-+static const char ready_objs[] =
- { ALL_CLASSES, ALLOW_NONE, WEAPON_CLASS, 0 };
--static NEARDATA const char bullets[] = /* (note: different from dothrow.c) */
-+static const char bullets[] = /* (note: different from dothrow.c) */
- { ALL_CLASSES, ALLOW_NONE, GEM_CLASS, WEAPON_CLASS, 0 };
-
- int
-diff -urN nethack-3.3.1.orig/src/windows.c nethack-3.3.1/src/windows.c
---- nethack-3.3.1.orig/src/windows.c Mon May 8 22:56:52 2000
-+++ nethack-3.3.1/src/windows.c Sat Mar 9 11:34:20 2002
-@@ -40,7 +40,7 @@
-
- STATIC_DCL void FDECL(def_raw_print, (const char *s));
-
--NEARDATA struct window_procs windowprocs;
-+struct window_procs windowprocs;
-
- static
- struct win_choices {
-diff -urN nethack-3.3.1.orig/src/wizard.c nethack-3.3.1/src/wizard.c
---- nethack-3.3.1.orig/src/wizard.c Sun Jul 16 03:51:14 2000
-+++ nethack-3.3.1/src/wizard.c Sat Mar 9 11:34:20 2002
-@@ -20,7 +20,7 @@
- STATIC_DCL long FDECL(target_on, (int,struct monst *));
- STATIC_DCL long FDECL(strategy, (struct monst *));
-
--static NEARDATA const int nasties[] = {
-+static const int nasties[] = {
- PM_COCKATRICE, PM_ETTIN, PM_STALKER, PM_MINOTAUR, PM_RED_DRAGON,
- PM_BLACK_DRAGON, PM_GREEN_DRAGON, PM_OWLBEAR, PM_PURPLE_WORM,
- PM_ROCK_TROLL, PM_XAN, PM_GREMLIN, PM_UMBER_HULK, PM_VAMPIRE_LORD,
-@@ -32,7 +32,7 @@
- PM_DISENCHANTER
- };
-
--static NEARDATA const unsigned wizapp[] = {
-+static const unsigned wizapp[] = {
- PM_HUMAN, PM_WATER_DEMON, PM_VAMPIRE,
- PM_RED_DRAGON, PM_TROLL, PM_UMBER_HULK,
- PM_XORN, PM_XAN, PM_COCKATRICE,
-diff -urN nethack-3.3.1.orig/src/write.c nethack-3.3.1/src/write.c
---- nethack-3.3.1.orig/src/write.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/write.c Sat Mar 9 11:34:20 2002
-@@ -67,7 +67,7 @@
- return(1000);
- }
-
--static NEARDATA const char write_on[] = { SCROLL_CLASS, SPBOOK_CLASS, 0 };
-+static const char write_on[] = { SCROLL_CLASS, SPBOOK_CLASS, 0 };
-
- int
- dowrite(pen)
-diff -urN nethack-3.3.1.orig/src/zap.c nethack-3.3.1/src/zap.c
---- nethack-3.3.1.orig/src/zap.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/src/zap.c Sat Mar 9 11:34:20 2002
-@@ -15,8 +15,8 @@
- #define MAGIC_COOKIE 1000
-
- #ifdef OVLB
--static NEARDATA boolean obj_zapped;
--static NEARDATA int poly_zapped;
-+static boolean obj_zapped;
-+static int poly_zapped;
- #endif
-
- extern boolean notonhead; /* for long worms */
-@@ -1657,7 +1657,7 @@
- useup(otmp);
- }
-
--static NEARDATA const char zap_syms[] = { WAND_CLASS, 0 };
-+static const char zap_syms[] = { WAND_CLASS, 0 };
-
- int
- dozap()
-diff -urN nethack-3.3.1.orig/sys/amiga/wbgads.c nethack-3.3.1/sys/amiga/wbgads.c
---- nethack-3.3.1.orig/sys/amiga/wbgads.c Sat Apr 4 04:21:22 1998
-+++ nethack-3.3.1/sys/amiga/wbgads.c Sat Mar 9 11:34:20 2002
-@@ -6,7 +6,7 @@
- static void GadSpaceOut(struct OPTGAD *gads , int row , int maxx);
- static void CompSpaceOut(struct OPTGAD *gads , int row , int maxx);
-
--extern NEARDATA struct flag flags;
-+extern struct flag flags;
-
- #define INITX 7
- #define GADBORD 3
-diff -urN nethack-3.3.1.orig/sys/amiga/winext.h nethack-3.3.1/sys/amiga/winext.h
---- nethack-3.3.1.orig/sys/amiga/winext.h Thu Mar 2 19:35:47 2000
-+++ nethack-3.3.1/sys/amiga/winext.h Sat Mar 9 11:34:20 2002
-@@ -37,10 +37,10 @@
- * extern const char *roles[];
- * extern struct Library *ConsoleDevice;
- * extern char toplines[ TBUFSZ ];
-- * extern NEARDATA winid WIN_MESSAGE;
-- * extern NEARDATA winid WIN_MAP;
-- * extern NEARDATA winid WIN_STATUS;
-- * extern NEARDATA winid WIN_INVEN;
-+ * extern winid WIN_MESSAGE;
-+ * extern winid WIN_MAP;
-+ * extern winid WIN_STATUS;
-+ * extern winid WIN_INVEN;
- * extern winid WIN_OVER;
- * extern struct GfxBase *GfxBase;
- * extern struct Library *DiskfontBase;
-diff -urN nethack-3.3.1.orig/sys/share/ioctl.c nethack-3.3.1/sys/share/ioctl.c
---- nethack-3.3.1.orig/sys/share/ioctl.c Sat Jan 15 22:32:34 2000
-+++ nethack-3.3.1/sys/share/ioctl.c Sat Mar 9 11:34:20 2002
-@@ -76,6 +76,10 @@
- extern void NDECL(linux_mapon);
- extern void NDECL(linux_mapoff);
- #endif
-+#ifdef __linux__
-+extern void NDECL(linux_mapon);
-+extern void NDECL(linux_mapoff);
-+#endif
-
- #ifdef AUX
- void
-@@ -163,6 +167,9 @@
- # ifdef __linux__
- linux_mapon();
- # endif
-+# ifdef __linux__
-+ linux_mapon();
-+# endif
- (void) signal(SIGTSTP, SIG_DFL);
- # ifdef AUX
- ( void ) kill ( 0 , SIGSTOP ) ;
-@@ -174,6 +181,9 @@
- # endif
- # ifdef __linux__
- linux_mapoff();
-+# endif
-+# ifdef __linux__
-+ linux_mapoff();
- # endif
- resume_nhwindows();
- } else {
-diff -urN nethack-3.3.1.orig/sys/share/unixtty.c nethack-3.3.1/sys/share/unixtty.c
---- nethack-3.3.1.orig/sys/share/unixtty.c Sat Aug 5 02:28:39 2000
-+++ nethack-3.3.1/sys/share/unixtty.c Sat Mar 9 11:34:20 2002
-@@ -426,8 +426,7 @@
- # endif
- }
- #endif /* __linux__ */
--
--
-+
- #ifndef __begui__ /* the Be GUI will define its own error proc */
- /* fatal error */
- /*VARARGS1*/
-diff -urN nethack-3.3.1.orig/sys/unix/Makefile.doc nethack-3.3.1/sys/unix/Makefile.doc
---- nethack-3.3.1.orig/sys/unix/Makefile.doc Fri Jan 14 21:49:48 2000
-+++ nethack-3.3.1/sys/unix/Makefile.doc Sat Mar 9 11:34:20 2002
-@@ -34,7 +34,7 @@
-
-
- GAME = nethack
--MANDIR = /usr/man/man6
-+MANDIR = /usr/share/man/man6
- MANEXT = 6
-
- # manual installation for most BSD-style systems
-@@ -51,11 +51,14 @@
- # DLBMANCREATE = nroff -man dlb.6 >
-
- manpages:
-- -$(GAMEMANCREATE) $(MANDIR)/$(GAME).$(MANEXT)
-- -$(LEVMANCREATE) $(MANDIR)/lev_comp.$(MANEXT)
-- -$(DGNMANCREATE) $(MANDIR)/dgn_comp.$(MANEXT)
-- -$(RCVRMANCREATE) $(MANDIR)/recover.$(MANEXT)
-- -$(DLBMANCREATE) $(MANDIR)/dlb.$(MANEXT)
-+
-+ -mkdir -p $(DESTDIR)/$(MANDIR)
-+
-+ -$(GAMEMANCREATE) $(DESTDIR)/$(MANDIR)/$(GAME).$(MANEXT)
-+ -$(LEVMANCREATE) $(DESTDIR)/$(MANDIR)/lev_comp.$(MANEXT)
-+ -$(DGNMANCREATE) $(DESTDIR)/$(MANDIR)/dgn_comp.$(MANEXT)
-+ -$(RCVRMANCREATE) $(DESTDIR)/$(MANDIR)/recover.$(MANEXT)
-+ -$(DLBMANCREATE) $(DESTDIR)/$(MANDIR)/dlb.$(MANEXT)
-
- # manual creation for distribution
- DISTRIB = Guidebook.txt nethack.txt lev_comp.txt dgn_comp.txt recover.txt dlb.txt
-diff -urN nethack-3.3.1.orig/sys/unix/Makefile.src nethack-3.3.1/sys/unix/Makefile.src
---- nethack-3.3.1.orig/sys/unix/Makefile.src Sat Aug 5 12:52:57 2000
-+++ nethack-3.3.1/sys/unix/Makefile.src Sat Mar 9 11:34:20 2002
-@@ -24,6 +24,8 @@
- # 'SysBe' -- BeOS
- SYSTEM = Sysunix
-
-+QTDIR = /usr/X11R6/
-+
- #
- # Make sure that your bourne shell is specified here, as you have to spawn
- # some of the commands (eg. depend) in bourne shell for them to work.
-@@ -58,7 +60,7 @@
- # if you get setcgtty() warnings during execution, you are feeding gcc
- # a non-ANSI <sys/ioctl.h> -- either run fixincludes on it or use
- # -traditional in CFLAGS
--# CC = gcc
-+CC = gcc
- #
- # For Bull DPX/2 systems at B.O.S. 2.0 or higher use the following:
- #
-@@ -117,8 +119,11 @@
-
- # flags for Linux
- # compile normally
--# CFLAGS = -O2 -fomit-frame-pointer -I../include -I/usr/X11/include
--# LFLAGS = -L/usr/X11/lib
-+
-+OPTFLAGS = -O2 -fomit-frame-pointer
-+CFLAGS = $(OPTFLAGS) -I../include -I/usr/X11R6/include -I/usr/include/ncurses
-+LFLAGS = -s -L/usr/X11R6/lib
-+
- # OR compile backwards compatible a.out format
- # CFLAGS = -O2 -b i486-linuxaout -fomit-frame-pointer -I../include -I/usr/X11/include
- # LFLAGS = -b i486-linuxaout -L/usr/X11/lib
-@@ -150,7 +155,7 @@
- # The Qt and Be window systems are written in C++, while the rest of
- # NetHack is standard C. If using Qt, uncomment the LD line here to get
- # the C++ libraries linked in.
--CXXFLAGS = $(CFLAGS) -I. -I$(QTDIR)/include
-+CXXFLAGS = $(CFLAGS) -I. -I$(QTDIR)/include -I$(QTDIR)/include/qt
- CXX=g++
- #LD=g++
-
-@@ -203,8 +208,8 @@
-
- #
- #
--WINSRC = $(WINTTYSRC)
--WINOBJ = $(WINTTYOBJ)
-+WINSRC = $(WINTTYSRC) $(WINQTSRC)
-+WINOBJ = $(WINTTYOBJ) $(WINQTOBJ)
-
- # on some systems the termcap library is in -ltermcap or -lcurses
- # on 386 Xenix, the -ltermlib tputs() seems not to work; use -lcurses instead
-@@ -219,15 +224,15 @@
- # WINTTYLIB = -ltermcap
- # WINTTYLIB = -lcurses
- # WINTTYLIB = -lcurses16
--# WINTTYLIB = -lncurses
--WINTTYLIB = -ltermlib
-+WINTTYLIB = -lncurses
-+# WINTTYLIB = -ltermlib
- #
- # libraries for X11
- # If USE_XPM is defined in config.h, you will also need -lXpm here.
--WINX11LIB = -lXaw -lXmu -lXext -lXt -lX11
-+# WINX11LIB = -lXaw -lXmu -lXext -lXt -lX11
- # WINX11LIB = -lXaw -lXmu -lXt -lX11
- # WINX11LIB = -lXaw -lXmu -lXext -lXt -lXpm -lX11 -lm
--# WINX11LIB = -lXaw -lXmu -lXpm -lXext -lXt -lX11 -lSM -lICE -lm # BSD/OS 2.0
-+WINX11LIB = -lXaw -lXmu -lXpm -lXext -lXt -lX11 -lSM -lICE -lm # BSD/OS 2.0
- #
- # libraries for Qt
- WINQTLIB = -L$(QTDIR)/lib -lqt
-@@ -244,7 +249,7 @@
- # libraries for BeOS
- WINBELIB = -lbe
-
--WINLIB = $(WINTTYLIB)
-+WINLIB = $(WINTTYLIB) $(WINQTLIB)
-
- # any other strange libraries your system needs (for Sysunix only -- the more
- # specialized targets should already be right)
-diff -urN nethack-3.3.1.orig/sys/unix/Makefile.top nethack-3.3.1/sys/unix/Makefile.top
---- nethack-3.3.1.orig/sys/unix/Makefile.top Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/sys/unix/Makefile.top Sat Mar 9 11:34:20 2002
-@@ -35,14 +35,14 @@
- # therefore there should not be anything in GAMEDIR that you want to keep
- # (if there is, you'll have to do the installation by hand or modify the
- # instructions)
--GAMEDIR = $(PREFIX)/games/lib/$(GAME)dir
--VARDIR = $(GAMEDIR)
-+GAMEDIR = /usr/share/games/$(GAME)
-+VARDIR = /var/games/$(GAME)
- SHELLDIR = $(PREFIX)/games
-
- # per discussion in Install.X11 and Install.Qt
--VARDATND =
-+# VARDATND =
- # VARDATND = x11tiles pet_mark.xbm
--# VARDATND = x11tiles pet_mark.xbm rip.xpm
-+VARDATND = x11tiles pet_mark.xbm rip.xpm
- # for Atari/Gem
- # VARDATND = nh16.img title.img GEM_RSC.RSC
- # for BeOS
-@@ -169,34 +169,22 @@
- -e '}' \
- -e '$$s/.*/nodlb/p' < dat/options` ; \
- $(MAKE) dofiles-$${target-nodlb}
-- cp src/$(GAME) $(GAMEDIR)
-- -rm -f $(SHELLDIR)/$(GAME)
-+ cp src/$(GAME) $(DESTDIR)/$(GAMEDIR)
-+ -rm -f $(DESTDIR)/$(SHELLDIR)/$(GAME)
- sed -e 's;/usr/games/lib/nethackdir;$(GAMEDIR);' \
- -e 's;HACKDIR/nethack;HACKDIR/$(GAME);' \
- < sys/unix/nethack.sh \
-- > $(SHELLDIR)/$(GAME)
-+ > $(DESTDIR)/$(SHELLDIR)/$(GAME)
- # set up their permissions
-- -( cd $(GAMEDIR) ; $(CHOWN) $(GAMEUID) $(GAME) ; \
-- $(CHGRP) $(GAMEGRP) $(GAME) )
-- chmod $(GAMEPERM) $(GAMEDIR)/$(GAME)
-- -$(CHOWN) $(GAMEUID) $(SHELLDIR)/$(GAME)
-- $(CHGRP) $(GAMEGRP) $(SHELLDIR)/$(GAME)
-- chmod $(EXEPERM) $(SHELLDIR)/$(GAME)
-
- dofiles-dlb: check-dlb
-- ( cd dat ; cp nhdat $(DATNODLB) $(GAMEDIR) )
-+ ( cd dat ; cp nhdat $(DATNODLB) $(DESTDIR)/$(GAMEDIR) )
- # set up their permissions
-- -( cd $(GAMEDIR) ; $(CHOWN) $(GAMEUID) nhdat $(DATNODLB) ; \
-- $(CHGRP) $(GAMEGRP) nhdat $(DATNODLB) ; \
-- chmod $(FILEPERM) nhdat $(DATNODLB) )
-
- dofiles-nodlb:
- # copy over the game files
-- ( cd dat ; cp $(DAT) $(GAMEDIR) )
-+ ( cd dat ; cp $(DAT) $(DESTDIR)/$(GAMEDIR) )
- # set up their permissions
-- -( cd $(GAMEDIR) ; $(CHOWN) $(GAMEUID) $(DAT) ; \
-- $(CHGRP) $(GAMEGRP) $(DAT) ; \
-- chmod $(FILEPERM) $(DAT) )
-
- update: $(GAME) $(VARDAT) dungeon spec_levs
- # (don't yank the old version out from under people who're playing it)
-@@ -217,23 +205,14 @@
- install: $(GAME) $(VARDAT) dungeon spec_levs
- # set up the directories
- # not all mkdirs have -p; those that don't will create a -p directory
-- -mkdir -p $(SHELLDIR)
-- -rm -rf $(GAMEDIR) $(VARDIR)
-- -mkdir -p $(GAMEDIR) $(VARDIR) $(VARDIR)/save
-- -rmdir ./-p
-- -$(CHOWN) $(GAMEUID) $(GAMEDIR) $(VARDIR) $(VARDIR)/save
-- $(CHGRP) $(GAMEGRP) $(GAMEDIR) $(VARDIR) $(VARDIR)/save
-- chmod $(DIRPERM) $(GAMEDIR) $(VARDIR) $(VARDIR)/save
-+ -mkdir -p $(DESTDIR)/$(SHELLDIR)
-+ -rm -rf $(DESTDIR)/$(GAMEDIR) $(DESTDIR)/$(VARDIR)
-+ -mkdir -p $(DESTDIR)/$(GAMEDIR) $(DESTDIR)/$(VARDIR) $(DESTDIR)/$(VARDIR)/save
- # set up the game files
- ( $(MAKE) dofiles )
- # set up some additional files
-- touch $(VARDIR)/perm $(VARDIR)/record $(VARDIR)/logfile
-- -( cd $(VARDIR) ; $(CHOWN) $(GAMEUID) perm record logfile ; \
-- $(CHGRP) $(GAMEGRP) perm record logfile ; \
-- chmod $(FILEPERM) perm record logfile )
-+ touch $(DESTDIR)/$(VARDIR)/perm $(DESTDIR)/$(VARDIR)/record $(DESTDIR)/$(VARDIR)/logfile
- # and a reminder
-- @echo You may also want to reinstall the man pages via the doc Makefile.
--
-
- # 'make clean' removes all the .o files, but leaves around all the executables
- # and compiled data files
-diff -urN nethack-3.3.1.orig/sys/unix/Makefile.utl nethack-3.3.1/sys/unix/Makefile.utl
---- nethack-3.3.1.orig/sys/unix/Makefile.utl Mon Apr 17 15:36:44 2000
-+++ nethack-3.3.1/sys/unix/Makefile.utl Sat Mar 9 11:34:20 2002
-@@ -15,7 +15,7 @@
-
- # if you are using gcc as your compiler,
- # uncomment the CC definition below if it's not in your environment
--# CC = gcc
-+CC = gcc
- #
- # For Bull DPX/2 systems at B.O.S. 2.0 or higher use the following:
- #
-@@ -72,8 +72,9 @@
-
- # flags for Linux
- # compile normally
--# CFLAGS = -O2 -fomit-frame-pointer -I../include -I/usr/X11/include
--# LFLAGS = -L/usr/X11/lib
-+OPTFLAGS = -O2 -fomit-frame-pointer
-+CFLAGS = $(OPTFLAGS) -I../include -I/usr/X11R6/include
-+LFLAGS = -s -L/usr/X11R6/lib
- # OR compile backwards compatible a.out format
- # CFLAGS = -O2 -b i486-linuxaout -fomit-frame-pointer -I../include -I/usr/X11/include
- # LFLAGS = -b i486-linuxaout -L/usr/X11/lib
-@@ -89,19 +90,19 @@
- # flags for debugging:
- # CFLAGS = -g -I../include
-
--CFLAGS = -O -I../include
--LFLAGS =
-+# CFLAGS = -O -I../include
-+# LFLAGS =
-
- LIBS =
-
-
- # yacc/lex programs to use to generate *_comp.h, *_lex.c, and *_yacc.c.
- # if, instead of yacc/lex you have bison/flex, comment/uncomment the following.
--YACC = yacc
--LEX = lex
--# YACC = bison -y
-+# YACC = yacc
-+# LEX = lex
-+YACC = bison -y
- # YACC = byacc
--# LEX = flex
-+LEX = flex
-
- # these are the names of the output files from YACC/LEX. Under MS-DOS
- # and similar systems, they may differ
-diff -urN nethack-3.3.1.orig/sys/unix/unixmain.c nethack-3.3.1/sys/unix/unixmain.c
---- nethack-3.3.1.orig/sys/unix/unixmain.c Wed Aug 9 19:42:26 2000
-+++ nethack-3.3.1/sys/unix/unixmain.c Sat Mar 9 11:34:20 2002
-@@ -39,6 +39,11 @@
- extern void NDECL(init_linux_cons);
- #endif
-
-+#ifdef __linux__
-+extern void NDECL(check_linux_console);
-+extern void NDECL(init_linux_cons);
-+#endif
-+
- static void NDECL(wd_message);
- #ifdef WIZARD
- static boolean wiz_error_flag = FALSE;
-@@ -184,11 +189,11 @@
- (void) signal(SIGQUIT,SIG_IGN);
- (void) signal(SIGINT,SIG_IGN);
- if(!locknum)
-- Sprintf(lock, "%d%s", (int)getuid(), plname);
-+ Sprintf(lock, "/var/games/nethack/%d%s", (int)getuid(), plname);
- getlock();
- #ifdef WIZARD
- } else {
-- Sprintf(lock, "%d%s", (int)getuid(), plname);
-+ Sprintf(lock, "/var/games/nethack/%d%s", (int)getuid(), plname);
- getlock();
- }
- #endif /* WIZARD */
-diff -urN nethack-3.3.1.orig/sys/unix/unixunix.c nethack-3.3.1/sys/unix/unixunix.c
---- nethack-3.3.1.orig/sys/unix/unixunix.c Wed Aug 9 19:56:45 2000
-+++ nethack-3.3.1/sys/unix/unixunix.c Sat Mar 9 11:34:20 2002
-@@ -21,6 +21,10 @@
- extern void NDECL(linux_mapon);
- extern void NDECL(linux_mapoff);
- #endif
-+#ifdef __linux__
-+extern void NDECL(linux_mapon);
-+extern void NDECL(linux_mapoff);
-+#endif
-
- static struct stat buf, hbuf;
-
-@@ -195,14 +199,14 @@
- error("%s", "");
- }
-
-- regularize(lock);
-+ regularize(lock+23);
- set_levelfile_name(lock, 0);
-
- if(locknum) {
- if(locknum > 25) locknum = 25;
-
- do {
-- lock[0] = 'a' + i++;
-+ lock[23] = 'a' + i++;
- fq_lock = fqname(lock, LEVELPREFIX, 0);
-
- if((fd = open(fq_lock, 0)) == -1) {
-@@ -334,6 +338,9 @@
- #ifdef __linux__
- linux_mapon();
- #endif
-+#ifdef __linux__
-+ linux_mapon();
-+#endif
- if((f = fork()) == 0){ /* child */
- (void) setgid(getgid());
- (void) setuid(getuid());
-@@ -355,6 +362,9 @@
- #endif
- #ifdef __linux__
- linux_mapoff();
-+#endif
-+#ifdef __linux__
-+ linux_mapoff();
- #endif
- (void) signal(SIGINT, (SIG_RET_TYPE) done1);
- #ifdef WIZARD
-diff -urN nethack-3.3.1.orig/util/lev_main.c nethack-3.3.1/util/lev_main.c
---- nethack-3.3.1.orig/util/lev_main.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/util/lev_main.c Sat Mar 9 11:34:20 2002
-@@ -1560,7 +1560,7 @@
- # ifdef TOS
- const char *hilites[CLR_MAX];
- # else
--char NEARDATA *hilites[CLR_MAX];
-+char *hilites[CLR_MAX];
- # endif
- # endif
- /* trap.c */
-diff -urN nethack-3.3.1.orig/util/makedefs.c nethack-3.3.1/util/makedefs.c
---- nethack-3.3.1.orig/util/makedefs.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/util/makedefs.c Sat Mar 9 11:34:20 2002
-@@ -2285,7 +2285,7 @@
- #endif /* VISION_TABLES */
-
- #ifdef STRICT_REF_DEF
--NEARDATA struct flag flags;
-+struct flag flags;
- # ifdef ATTRIB_H
- struct attribs attrmax, attrmin;
- # endif
-diff -urN nethack-3.3.1.orig/win/tty/termcap.c nethack-3.3.1/win/tty/termcap.c
---- nethack-3.3.1.orig/win/tty/termcap.c Sat Mar 9 11:33:16 2002
-+++ nethack-3.3.1/win/tty/termcap.c Sat Mar 9 11:34:20 2002
-@@ -65,7 +65,7 @@
- # ifdef TOS
- const char *hilites[CLR_MAX]; /* terminal escapes for the various colors */
- # else
--char NEARDATA *hilites[CLR_MAX]; /* terminal escapes for the various colors */
-+char *hilites[CLR_MAX]; /* terminal escapes for the various colors */
- # endif
- #endif
-
-@@ -833,7 +833,7 @@
- #undef FALSE
- #define m_move curses_m_move /* Some curses.h decl m_move(), not used here */
-
--#include <curses.h>
-+#include <ncurses/curses.h>
-
- #ifndef LINUX
- extern char *tparm();
diff --git a/nethack-pld.patch b/nethack-pld.patch
deleted file mode 100644
index 46d6a1e..0000000
--- a/nethack-pld.patch
+++ /dev/null
@@ -1,2659 +0,0 @@
-diff -urN nethack-3.3.1.orig/doc/recover.6 nethack-3.3.1/doc/recover.6
---- nethack-3.3.1.orig/doc/recover.6 Sat Apr 4 04:17:24 1998
-+++ nethack-3.3.1/doc/recover.6 Sun Dec 30 12:58:40 2001
-@@ -4,10 +4,6 @@
- recover \- recover a NetHack game interrupted by disaster
- .SH SYNOPSIS
- .B recover
--[
--.B \-d
--.I directory
--]
- .I "base1 base2" ...
- .SH DESCRIPTION
- .PP
-@@ -25,14 +21,6 @@
- which files to process.
- Each base option specifies recovery of a separate game.
- .PP
--The
--.B \-d
--option, which must be the first argument if it appears,
--supplies a directory which is the NetHack playground.
--It overrides the value from NETHACKDIR, HACKDIR, or the directory
--specified by the game administrator during compilation
--(usually /usr/games/lib/nethackdir).
--.PP
- For recovery to be possible,
- .I nethack
- must have been compiled with the INSURANCE option, and the run-time option
-@@ -61,33 +49,13 @@
- .I nethack
- would have used.
- .PP
--Since
--.I recover
--must be able to read and delete files from the playground
--and create files in the save directory,
--it has interesting interactions with game security.
--Giving ordinary players access to
--.I recover
--through setuid or setgid is tantamount to leaving the playground
--world-writable,
--with respect to both cheating and messing up other players.
--For a single-user system, this of course does not change anything,
--so some of the microcomputer ports install
--.I recover
--by default.
--.PP
--For a multi-user system,
--the game administrator may want to arrange for all .0 files in the
--playground to be fed to recover when the host machine boots,
--and handle game crashes individually.
--If the user population is sufficiently trustworthy,
--.I recover
--can be installed with the same permissions the
--.I nethack
--executable has.
--In either case,
- .I recover
--is easily compiled from the distribution utility directory.
-+has been installed under PLD Linux as sgid games. This makes
-+it possible for users to recover their own games. The security hazards
-+of possible cheating have been removed, by taking out the
-+.I -d
-+option and making sure the only directory auto-save files can be read
-+from is /var/games/nethack.
- .SH NOTES
- .PP
- Like
-diff -urN nethack-3.3.1.orig/include/artilist.h nethack-3.3.1/include/artilist.h
---- nethack-3.3.1.orig/include/artilist.h Sat Jul 22 20:31:21 2000
-+++ nethack-3.3.1/include/artilist.h Sun Dec 30 12:58:40 2001
-@@ -26,7 +26,7 @@
- #define ELEC(a,b) {0,AD_ELEC,a,b} /* electrical shock */
- #define STUN(a,b) {0,AD_STUN,a,b} /* magical attack */
-
--STATIC_OVL NEARDATA struct artifact artilist[] = {
-+STATIC_OVL struct artifact artilist[] = {
- #endif /* MAKEDEFS_C */
-
- /* dummy element #0, so that all interesting indices are non-zero */
-diff -urN nethack-3.3.1.orig/include/config.h nethack-3.3.1/include/config.h
---- nethack-3.3.1.orig/include/config.h Sat Jul 22 03:13:51 2000
-+++ nethack-3.3.1/include/config.h Sun Dec 30 13:47:58 2001
-@@ -35,16 +35,16 @@
- /* Hint: if you're not developing code, don't define
- ULTRIX_PROTO. */
-
--#include "config1.h" /* should auto-detect MSDOS, MAC, AMIGA, and WIN32 */
-+/* #include "config1.h" */ /* should auto-detect MSDOS, MAC, AMIGA, and WIN32 */
-
-
- /* Windowing systems...
- * Define all of those you want supported in your binary.
- * Some combinations make no sense. See the installation document.
- */
--#define TTY_GRAPHICS /* good old tty based graphics */
-+#define TTY_GRAPHICS /* good old tty based graphics */
- /* #define X11_GRAPHICS */ /* X11 interface */
--/* #define QT_GRAPHICS */ /* Qt interface */
-+#define QT_GRAPHICS /* Qt interface */
- /* #define GNOME_GRAPHICS */ /* Gnome interface */
-
- /*
-@@ -110,7 +110,7 @@
- * would allow:
- * xpmtoppm <x11tiles.xpm | pnmscale 1.25 | ppmquant 90 >x11tiles_big.xpm
- */
--/* # define USE_XPM */ /* Disable if you do not have the XPM library */
-+# define USE_XPM /* Disable if you do not have the XPM library */
- # ifdef USE_XPM
- # define GRAPHIC_TOMBSTONE /* Use graphical tombstone (rip.xpm) */
- # endif
-@@ -126,15 +126,15 @@
-
- #ifndef WIZARD /* allow for compile-time or Makefile changes */
- # ifndef KR1ED
--# define WIZARD "wizard" /* the person allowed to use the -D option */
-+# define WIZARD "root" /* the person allowed to use the -D option */
- # else
- # define WIZARD
- # define WIZARD_NAME "wizard"
- # endif
- #endif
-
--#define LOGFILE "logfile" /* larger file for debugging purposes */
--#define NEWS "news" /* the file containing the latest hack news */
-+#define LOGFILE "/var/games/nethack/logfile" /* larger file for debugging purposes */
-+#define NEWS "/var/games/nethack/news" /* the file containing the latest hack news */
-
- /*
- * If COMPRESS is defined, it should contain the full path name of your
-@@ -151,8 +151,8 @@
-
- #ifdef UNIX
- /* path and file name extension for compression program */
--#define COMPRESS "/usr/bin/compress" /* Lempel-Ziv compression */
--#define COMPRESS_EXTENSION ".Z" /* compress's extension */
-+#define COMPRESS "/bin/gzip" /* Lempel-Ziv compression */
-+#define COMPRESS_EXTENSION ".gz" /* compress's extension */
- /* An example of one alternative you might want to use: */
- /* #define COMPRESS "/usr/local/bin/gzip" */ /* FSF gzip compression */
- /* #define COMPRESS_EXTENSION ".gz" */ /* normal gzip extension */
-@@ -167,7 +167,7 @@
- * a tar-like file, thus making a neater installation. See *conf.h
- * for detailed configuration.
- */
--/* #define DLB */ /* not supported on all platforms */
-+#define DLB /* not supported on all platforms */
-
- /*
- * Defining INSURANCE slows down level changes, but allows games that
-@@ -186,7 +186,7 @@
- * otherwise it will be the current directory.
- */
- # ifndef HACKDIR
--# define HACKDIR "/usr/games/lib/nethackdir" /* nethack directory */
-+# define HACKDIR "/usr/share/games/nethack" /* nethack directory */
- # endif
-
- /*
-@@ -196,7 +196,7 @@
- * since the user might create files in a directory of his choice.
- * Of course SECURE is meaningful only if HACKDIR is defined.
- */
--/* #define SECURE */ /* do setuid(getuid()) after chdir() */
-+#define SECURE /* do setuid(getuid()) after chdir() */
-
- /*
- * If it is desirable to limit the number of people that can play Hack
-@@ -282,7 +282,7 @@
- * functions that have been macroized.
- */
-
--/* #define VISION_TABLES */ /* use vision tables generated at compile time */
-+#define VISION_TABLES /* use vision tables generated at compile time */
- #ifndef VISION_TABLES
- # ifndef NO_MACRO_CPATH
- # define MACRO_CPATH /* use clear_path macros instead of functions */
-@@ -320,7 +320,7 @@
- #endif
-
- #define EXP_ON_BOTL /* Show experience on bottom line */
--/* #define SCORE_ON_BOTL */ /* added by Gary Erickson (erickson@ucivax) */
-+#define SCORE_ON_BOTL /* added by Gary Erickson (erickson@ucivax) */
-
- #include "global.h" /* Define everything else according to choices above */
-
-diff -urN nethack-3.3.1.orig/include/config1.h nethack-3.3.1/include/config1.h
---- nethack-3.3.1.orig/include/config1.h Mon Dec 6 22:22:04 1999
-+++ nethack-3.3.1/include/config1.h Sun Dec 30 12:58:40 2001
-@@ -71,13 +71,12 @@
- # endif
- #endif
- #ifdef __SASC_60
--# define NEARDATA __near /* put some data close */
-+# define __near /* put some data close */
- #else
- # ifdef _DCC
--# define NEARDATA __near /* put some data close */
-+# define __near /* put some data close */
- # else
--# define NEARDATA
--# endif
-+# define # endif
- #endif
- #ifdef AMIGA
- # define NEED_VARARGS
-diff -urN nethack-3.3.1.orig/include/decl.h nethack-3.3.1/include/decl.h
---- nethack-3.3.1.orig/include/decl.h Sat Jul 22 02:58:59 2000
-+++ nethack-3.3.1/include/decl.h Sun Dec 30 12:58:40 2001
-@@ -24,13 +24,13 @@
- E char SAVEP[];
- #endif
-
--E NEARDATA int bases[MAXOCLASSES];
-+E int bases[MAXOCLASSES];
-
--E NEARDATA int multi;
--E NEARDATA int warnlevel;
--E NEARDATA int nroom;
--E NEARDATA int nsubroom;
--E NEARDATA int occtime;
-+E int multi;
-+E int warnlevel;
-+E int nroom;
-+E int nsubroom;
-+E int occtime;
-
- #define WARNCOUNT 6 /* number of different warning levels */
- E uchar warnsyms[WARNCOUNT];
-@@ -39,7 +39,7 @@
- E int otg_temp;
-
- #ifdef REDO
--E NEARDATA int in_doagain;
-+E int in_doagain;
- #endif
-
- E struct dgn_topology { /* special dungeon levels for speed */
-@@ -103,43 +103,43 @@
- #define nemesis_level (dungeon_topology.d_nemesis_level)
- #define knox_level (dungeon_topology.d_knox_level)
-
--E NEARDATA stairway dnstair, upstair; /* stairs up and down */
-+E stairway dnstair, upstair; /* stairs up and down */
- #define xdnstair (dnstair.sx)
- #define ydnstair (dnstair.sy)
- #define xupstair (upstair.sx)
- #define yupstair (upstair.sy)
-
--E NEARDATA stairway dnladder, upladder; /* ladders up and down */
-+E stairway dnladder, upladder; /* ladders up and down */
- #define xdnladder (dnladder.sx)
- #define ydnladder (dnladder.sy)
- #define xupladder (upladder.sx)
- #define yupladder (upladder.sy)
-
--E NEARDATA stairway sstairs;
-+E stairway sstairs;
-
--E NEARDATA dest_area updest, dndest; /* level-change destination areas */
-+E dest_area updest, dndest; /* level-change destination areas */
-
--E NEARDATA coord inv_pos;
--E NEARDATA dungeon dungeons[];
--E NEARDATA s_level *sp_levchn;
-+E coord inv_pos;
-+E dungeon dungeons[];
-+E s_level *sp_levchn;
- #define dunlev_reached(x) (dungeons[(x)->dnum].dunlev_ureached)
-
- #include "quest.h"
- E struct q_score quest_status;
-
--E NEARDATA char pl_character[PL_CSIZ];
--E NEARDATA char pl_race; /* character's race */
-+E char pl_character[PL_CSIZ];
-+E char pl_race; /* character's race */
-
--E NEARDATA char pl_fruit[PL_FSIZ];
--E NEARDATA int current_fruit;
--E NEARDATA struct fruit *ffruit;
-+E char pl_fruit[PL_FSIZ];
-+E int current_fruit;
-+E struct fruit *ffruit;
-
--E NEARDATA char tune[6];
-+E char tune[6];
-
- #define MAXLINFO (MAXDUNGEON * MAXLEVEL)
- E struct linfo level_info[MAXLINFO];
-
--E NEARDATA struct sinfo {
-+E struct sinfo {
- int gameover; /* self explanatory? */
- int stopprint; /* inhibit further end of game disclosure */
- #if defined(UNIX) || defined(VMS) || defined (__EMX__)
-@@ -161,22 +161,22 @@
- E const char ynqchars[];
- E const char ynaqchars[];
- E const char ynNaqchars[];
--E NEARDATA long yn_number;
--E NEARDATA int smeq[];
--E NEARDATA int doorindex;
--E NEARDATA char *save_cm;
-+E long yn_number;
-+E int smeq[];
-+E int doorindex;
-+E char *save_cm;
- #define KILLED_BY_AN 0
- #define KILLED_BY 1
- #define NO_KILLER_PREFIX 2
--E NEARDATA int killer_format;
-+E int killer_format;
- E const char *killer;
- E const char *delayed_killer;
- E char killer_buf[BUFSZ];
- E const char *configfile;
--E NEARDATA char plname[PL_NSIZ];
--E NEARDATA char dogname[];
--E NEARDATA char catname[];
--E NEARDATA char horsename[];
-+E char plname[PL_NSIZ];
-+E char dogname[];
-+E char catname[];
-+E char horsename[];
- E char preferred_pet;
- E const char *occtxt; /* defined when occupation != NULL */
- E const char *nomovemsg;
-@@ -186,30 +186,30 @@
- E const char sdir[], ndir[];
- E const schar xdir[], ydir[], zdir[];
-
--E NEARDATA schar tbx, tby; /* set in mthrowu.c */
-+E schar tbx, tby; /* set in mthrowu.c */
-
--E NEARDATA struct dig_info { /* apply.c, hack.c */
-+E struct dig_info { /* apply.c, hack.c */
- int effort;
- d_level level;
- coord pos;
- boolean down, chew;
- } digging;
-
--E NEARDATA long moves, monstermoves;
--E NEARDATA long wailmsg;
-+E long moves, monstermoves;
-+E long wailmsg;
-
--E NEARDATA boolean in_mklev;
--E NEARDATA boolean stoned;
--E NEARDATA boolean unweapon;
--E NEARDATA boolean mrg_to_wielded;
--E NEARDATA struct obj *current_wand;
-+E boolean in_mklev;
-+E boolean stoned;
-+E boolean unweapon;
-+E boolean mrg_to_wielded;
-+E struct obj *current_wand;
-
--E NEARDATA boolean in_steed_dismounting;
-+E boolean in_steed_dismounting;
-
- E const int shield_static[];
-
- #include "spell.h"
--E NEARDATA struct spell spl_book[]; /* sized in decl.c */
-+E struct spell spl_book[]; /* sized in decl.c */
-
- #ifdef TEXTCOLOR
- #include "color.h"
-@@ -222,7 +222,7 @@
- E uchar monsyms[MAXMCLASSES]; /* current class symbols */
-
- #include "obj.h"
--E NEARDATA struct obj *invent,
-+E struct obj *invent,
- *uarm, *uarmc, *uarmh, *uarms, *uarmg, *uarmf,
- #ifdef TOURIST
- *uarmu, /* under-wear, so to speak */
-@@ -230,34 +230,34 @@
- *uskin, *uamul, *uleft, *uright, *ublindf,
- *uwep, *uswapwep, *uquiver;
-
--E NEARDATA struct obj *uchain; /* defined only when punished */
--E NEARDATA struct obj *uball;
--E NEARDATA struct obj *migrating_objs;
--E NEARDATA struct obj *billobjs;
--E NEARDATA struct obj zeroobj; /* init'd and defined in decl.c */
-+E struct obj *uchain; /* defined only when punished */
-+E struct obj *uball;
-+E struct obj *migrating_objs;
-+E struct obj *billobjs;
-+E struct obj zeroobj; /* init'd and defined in decl.c */
-
- E const char *he[3];
- E const char *him[3];
- E const char *his[3];
-
- #include "you.h"
--E NEARDATA struct you u;
-+E struct you u;
-
- #include "onames.h"
- #ifndef PM_H /* (pm.h has already been included via youprop.h) */
- #include "pm.h"
- #endif
-
--E NEARDATA struct monst youmonst; /* init'd and defined in decl.c */
--E NEARDATA struct monst *mydogs, *migrating_mons;
-+E struct monst youmonst; /* init'd and defined in decl.c */
-+E struct monst *mydogs, *migrating_mons;
-
--E NEARDATA struct mvitals {
-+E struct mvitals {
- uchar born;
- uchar died;
- uchar mvflags;
- } mvitals[NUMMONS];
-
--E NEARDATA struct c_color_names {
-+E struct c_color_names {
- const char *const c_black, *const c_amber, *const c_golden,
- *const c_light_blue,*const c_red, *const c_green,
- *const c_silver, *const c_blue, *const c_purple,
-@@ -307,12 +307,12 @@
- #define EXACT_NAME 0x0F
-
- /* Vision */
--E NEARDATA boolean vision_full_recalc; /* TRUE if need vision recalc */
--E NEARDATA char **viz_array; /* could see/in sight row pointers */
-+E boolean vision_full_recalc; /* TRUE if need vision recalc */
-+E char **viz_array; /* could see/in sight row pointers */
-
- /* Window system stuff */
--E NEARDATA winid WIN_MESSAGE, WIN_STATUS;
--E NEARDATA winid WIN_MAP, WIN_INVEN;
-+E winid WIN_MESSAGE, WIN_STATUS;
-+E winid WIN_MAP, WIN_INVEN;
- E char toplines[];
- #ifndef TCAP_H
- E struct tc_gbl_data { /* also declared in tcap.h */
-diff -urN nethack-3.3.1.orig/include/flag.h nethack-3.3.1/include/flag.h
---- nethack-3.3.1.orig/include/flag.h Sat Jul 22 02:59:00 2000
-+++ nethack-3.3.1/include/flag.h Sun Dec 30 12:58:40 2001
-@@ -208,7 +208,7 @@
- #endif
- };
-
--extern NEARDATA struct flag flags;
--extern NEARDATA struct instance_flags iflags;
-+extern struct flag flags;
-+extern struct instance_flags iflags;
-
- #endif /* FLAG_H */
-diff -urN nethack-3.3.1.orig/include/global.h nethack-3.3.1/include/global.h
---- nethack-3.3.1.orig/include/global.h Sat Jul 15 20:04:04 2000
-+++ nethack-3.3.1/include/global.h Sun Dec 30 12:58:40 2001
-@@ -14,7 +14,7 @@
- * Files expected to exist in the playground directory.
- */
-
--#define RECORD "record" /* file containing list of topscorers */
-+#define RECORD "/var/games/nethack/record" /* file containing list of topscorers */
- #define HELP "help" /* file containing command descriptions */
- #define SHELP "hh" /* abbreviated form of the same */
- #define DEBUGHELP "wizhelp" /* file containing debug mode cmds */
-diff -urN nethack-3.3.1.orig/include/hack.h nethack-3.3.1/include/hack.h
---- nethack-3.3.1.orig/include/hack.h Sat Jul 22 02:59:00 2000
-+++ nethack-3.3.1/include/hack.h Sun Dec 30 12:58:40 2001
-@@ -78,7 +78,7 @@
- #include "decl.h"
- #include "timeout.h"
-
--NEARDATA extern coord bhitpos; /* place where throw or zap hits or stops */
-+extern coord bhitpos; /* place where throw or zap hits or stops */
-
- /* types of calls to bhit() */
- #define ZAPPED_WAND 0
-diff -urN nethack-3.3.1.orig/include/mkroom.h nethack-3.3.1/include/mkroom.h
---- nethack-3.3.1.orig/include/mkroom.h Wed Jul 7 06:16:33 1999
-+++ nethack-3.3.1/include/mkroom.h Sun Dec 30 12:58:40 2001
-@@ -34,8 +34,8 @@
- const char **shknms; /* list of shopkeeper names for this type */
- };
-
--extern NEARDATA struct mkroom rooms[(MAXNROFROOMS+1)*2];
--extern NEARDATA struct mkroom* subrooms;
-+extern struct mkroom rooms[(MAXNROFROOMS+1)*2];
-+extern struct mkroom* subrooms;
- /* the normal rooms on the current level are described in rooms[0..n] for
- * some n<MAXNROFROOMS
- * the vault, if any, is described by rooms[n+1]
-@@ -45,7 +45,7 @@
-
- extern struct mkroom *dnstairs_room, *upstairs_room, *sstairs_room;
-
--extern NEARDATA coord doors[DOORMAX];
-+extern coord doors[DOORMAX];
-
- /* values for rtype in the room definition structure */
- #define OROOM 0 /* ordinary room */
-diff -urN nethack-3.3.1.orig/include/objclass.h nethack-3.3.1/include/objclass.h
---- nethack-3.3.1.orig/include/objclass.h Mon Dec 6 22:22:37 1999
-+++ nethack-3.3.1/include/objclass.h Sun Dec 30 12:58:40 2001
-@@ -115,8 +115,8 @@
- const char *oc_descr; /* description when name unknown */
- };
-
--extern NEARDATA struct objclass objects[];
--extern NEARDATA struct objdescr obj_descr[];
-+extern struct objclass objects[];
-+extern struct objdescr obj_descr[];
-
- /*
- * All objects have a class. Make sure that all classes have a corresponding
-diff -urN nethack-3.3.1.orig/include/patchlevel.h nethack-3.3.1/include/patchlevel.h
---- nethack-3.3.1.orig/include/patchlevel.h Thu Aug 10 02:20:03 2000
-+++ nethack-3.3.1/include/patchlevel.h Sun Dec 30 12:58:40 2001
-@@ -232,7 +232,7 @@
- * refine the overlay manager, rearrange the OVLx breakdown for better
- * efficiency, rename the overlay macros, and split off the overlay
- * instructions to Install.ovl
-- * introduce NEARDATA for better Amiga efficiency
-+ * introduce for better Amiga efficiency
- * support for more VMS versions (courtesy Joshua Delahunty and Pat Rankin)
- * more const fixes
- * better support for common graphics (DEC VT and IBM)
-diff -urN nethack-3.3.1.orig/include/permonst.h nethack-3.3.1/include/permonst.h
---- nethack-3.3.1.orig/include/permonst.h Wed Jul 7 06:16:34 1999
-+++ nethack-3.3.1/include/permonst.h Sun Dec 30 12:58:40 2001
-@@ -63,7 +63,7 @@
- # endif
- };
-
--extern NEARDATA struct permonst
-+extern struct permonst
- mons[]; /* the master list of monster types */
-
- #define VERY_SLOW 3
-diff -urN nethack-3.3.1.orig/include/system.h nethack-3.3.1/include/system.h
---- nethack-3.3.1.orig/include/system.h Thu Jan 6 20:20:08 2000
-+++ nethack-3.3.1/include/system.h Sun Dec 30 12:58:40 2001
-@@ -291,6 +291,9 @@
- /* The POSIX string.h is required to define all the mem* and str* functions */
- #include <string.h>
- #else
-+
-+#if (__GLIBC__ > 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1)
-+#else
- #if defined(SYSV) || defined(VMS) || defined(MAC) || defined(SUNOS4)
- # if defined(NHSTDC) || (defined(VMS) && !defined(ANCIENT_VAXC))
- # if !defined(_AIX32) && !(defined(SUNOS4) && defined(__STDC__))
-@@ -317,6 +320,7 @@
- E void *FDECL(memset, (char*,int,int));
- # endif
- #endif
-+#endif
- #endif /* POSIX_TYPES */
-
- #if defined(MICRO) && !defined(LATTICE)
-diff -urN nethack-3.3.1.orig/include/tcap.h nethack-3.3.1/include/tcap.h
---- nethack-3.3.1.orig/include/tcap.h Sun Dec 19 04:55:37 1999
-+++ nethack-3.3.1/include/tcap.h Sun Dec 30 12:58:40 2001
-@@ -50,7 +50,7 @@
- # ifdef TOS
- extern const char *hilites[CLR_MAX];
- # else
--extern NEARDATA char *hilites[CLR_MAX];
-+extern char *hilites[CLR_MAX];
- # endif
- #endif
-
-diff -urN nethack-3.3.1.orig/include/unixconf.h nethack-3.3.1/include/unixconf.h
---- nethack-3.3.1.orig/include/unixconf.h Mon Jul 17 03:03:51 2000
-+++ nethack-3.3.1/include/unixconf.h Sun Dec 30 12:58:40 2001
-@@ -37,7 +37,7 @@
- #define NETWORK /* if running on a networked system */
- /* e.g. Suns sharing a playground through NFS */
- /* #define SUNOS4 */ /* SunOS 4.x */
--/* #define LINUX */ /* Another Unix clone */
-+#define LINUX /* Another Unix clone */
- /* #define CYGWIN32 */ /* Unix on Win32 -- use with case sensitive defines */
- /* #define GENIX */ /* Yet Another Unix Clone */
- /* #define HISX */ /* Bull Unix for XPS Machines */
-@@ -96,7 +96,7 @@
- */
-
- /* #define NO_FILE_LINKS */ /* if no hard links */
--/* #define LOCKDIR "/usr/games/lib/nethackdir" */ /* where to put locks */
-+#define LOCKDIR "/var/games/nethack" /* where to put locks */
-
- /*
- * If you want the static parts of your playground on a read-only file
-@@ -132,7 +132,7 @@
- * "extra output" method is used, but not all systems provide access to
- * a fine-grained timer.
- */
--/* #define TIMED_DELAY */ /* usleep() */
-+#define TIMED_DELAY /* usleep() */
- #endif
-
- /*
-@@ -181,7 +181,7 @@
- # ifdef __sgi
- #define DEF_MAILREADER "/usr/sbin/Mail"
- # else
--#define DEF_MAILREADER "/usr/bin/mailx"
-+#define DEF_MAILREADER "/usr/bin/Mail"
- # endif
- # endif
- # else
-@@ -259,7 +259,7 @@
- #include <time.h>
- #endif
-
--#define HLOCK "perm" /* an empty file used for locking purposes */
-+#define HLOCK "/var/games/nethack/perm" /* an empty file used for locking purposes */
-
- #ifndef REDO
- #define Getchar nhgetch
-diff -urN nethack-3.3.1.orig/include/winprocs.h nethack-3.3.1/include/winprocs.h
---- nethack-3.3.1.orig/include/winprocs.h Fri Oct 22 00:18:07 1999
-+++ nethack-3.3.1/include/winprocs.h Sun Dec 30 12:58:40 2001
-@@ -64,7 +64,7 @@
- void FDECL((*win_outrip), (winid,int));
- };
-
--extern NEARDATA struct window_procs windowprocs;
-+extern struct window_procs windowprocs;
-
- /*
- * If you wish to only support one window system and not use procedure
-diff -urN nethack-3.3.1.orig/src/apply.c nethack-3.3.1/src/apply.c
---- nethack-3.3.1.orig/src/apply.c Thu Aug 3 21:30:51 2000
-+++ nethack-3.3.1/src/apply.c Sun Dec 30 12:58:40 2001
-@@ -1114,7 +1114,7 @@
- begin_burn(obj, FALSE);
- }
-
--static NEARDATA const char cuddly[] = { TOOL_CLASS, 0 };
-+static const char cuddly[] = { TOOL_CLASS, 0 };
-
- int
- dorub()
-@@ -1675,8 +1675,8 @@
- useup(obj);
- }
-
--static NEARDATA const char lubricables[] = { ALL_CLASSES, ALLOW_NONE, 0 };
--static NEARDATA const char need_to_remove_outer_armor[] =
-+static const char lubricables[] = { ALL_CLASSES, ALLOW_NONE, 0 };
-+static const char need_to_remove_outer_armor[] =
- "need to remove your %s to grease your %s.";
-
- STATIC_OVL void
-diff -urN nethack-3.3.1.orig/src/artifact.c nethack-3.3.1/src/artifact.c
---- nethack-3.3.1.orig/src/artifact.c Sun Jul 23 17:00:15 2000
-+++ nethack-3.3.1/src/artifact.c Sun Dec 30 12:58:40 2001
-@@ -1070,8 +1070,8 @@
- return FALSE;
- }
-
--static NEARDATA const char recharge_type[] = { ALLOW_COUNT, ALL_CLASSES, 0 };
--static NEARDATA const char invoke_types[] = { ALL_CLASSES, 0 };
-+static const char recharge_type[] = { ALLOW_COUNT, ALL_CLASSES, 0 };
-+static const char invoke_types[] = { ALL_CLASSES, 0 };
- /* #invoke: an "ugly check" filters out most objects */
-
- int
-diff -urN nethack-3.3.1.orig/src/botl.c nethack-3.3.1/src/botl.c
---- nethack-3.3.1.orig/src/botl.c Tue May 2 15:37:13 2000
-+++ nethack-3.3.1/src/botl.c Sun Dec 30 12:58:40 2001
-@@ -37,7 +37,7 @@
- #ifndef OVLB
- STATIC_DCL int mrank_sz;
- #else /* OVLB */
--STATIC_OVL NEARDATA int mrank_sz = 0; /* loaded by max_rank_sz (from u_init) */
-+STATIC_OVL int mrank_sz = 0; /* loaded by max_rank_sz (from u_init) */
- #endif /* OVLB */
-
- STATIC_DCL const char *NDECL(rank);
-diff -urN nethack-3.3.1.orig/src/cmd.c nethack-3.3.1/src/cmd.c
---- nethack-3.3.1.orig/src/cmd.c Sat Jul 22 02:59:03 2000
-+++ nethack-3.3.1/src/cmd.c Sun Dec 30 12:58:40 2001
-@@ -211,7 +211,7 @@
- */
- #define BSIZE 20
- static char pushq[BSIZE], saveq[BSIZE];
--static NEARDATA int phead, ptail, shead, stail;
-+static int phead, ptail, shead, stail;
-
- static char
- popch() {
-@@ -1812,7 +1812,7 @@
- return x >= 1 && x <= COLNO-1 && y >= 0 && y <= ROWNO-1;
- }
-
--static NEARDATA int last_multi;
-+static int last_multi;
-
- /*
- * convert a MAP window position into a movecmd
-diff -urN nethack-3.3.1.orig/src/dbridge.c nethack-3.3.1/src/dbridge.c
---- nethack-3.3.1.orig/src/dbridge.c Mon Jul 3 19:33:10 2000
-+++ nethack-3.3.1/src/dbridge.c Sun Dec 30 12:58:40 2001
-@@ -232,7 +232,7 @@
-
- #define ENTITIES 2
-
--static NEARDATA struct entity occupants[ENTITIES];
-+static struct entity occupants[ENTITIES];
-
- STATIC_OVL
- struct entity *
-diff -urN nethack-3.3.1.orig/src/decl.c nethack-3.3.1/src/decl.c
---- nethack-3.3.1.orig/src/decl.c Wed May 10 02:50:12 2000
-+++ nethack-3.3.1/src/decl.c Sun Dec 30 12:58:40 2001
-@@ -17,19 +17,19 @@
- char *catmore = 0; /* default pager */
- #endif
-
--NEARDATA int bases[MAXOCLASSES] = DUMMY;
-+int bases[MAXOCLASSES] = DUMMY;
-
--NEARDATA int multi = 0;
--NEARDATA int warnlevel = 0; /* used by movemon and dochugw */
--NEARDATA int nroom = 0;
--NEARDATA int nsubroom = 0;
--NEARDATA int occtime = 0;
-+int multi = 0;
-+int warnlevel = 0; /* used by movemon and dochugw */
-+int nroom = 0;
-+int nsubroom = 0;
-+int occtime = 0;
-
- int x_maze_max, y_maze_max; /* initialized in main, used in mkmaze.c */
- int otg_temp; /* used by object_to_glyph() [otg] */
-
- #ifdef REDO
--NEARDATA int in_doagain = 0;
-+int in_doagain = 0;
- #endif
-
- /*
-@@ -41,25 +41,25 @@
- #include "quest.h"
- struct q_score quest_status = DUMMY;
-
--NEARDATA int smeq[MAXNROFROOMS+1] = DUMMY;
--NEARDATA int doorindex = 0;
-+int smeq[MAXNROFROOMS+1] = DUMMY;
-+int doorindex = 0;
-
--NEARDATA char *save_cm = 0;
--NEARDATA int killer_format = 0;
-+char *save_cm = 0;
-+int killer_format = 0;
- const char *killer = 0;
- const char *delayed_killer = 0;
- char killer_buf[BUFSZ] = DUMMY;
- const char *nomovemsg = 0;
- const char nul[40] = DUMMY; /* contains zeros */
--NEARDATA char plname[PL_NSIZ] = DUMMY; /* player name */
--NEARDATA char pl_character[PL_CSIZ] = DUMMY;
--NEARDATA char pl_race = '\0';
--
--NEARDATA char pl_fruit[PL_FSIZ] = DUMMY;
--NEARDATA int current_fruit = 0;
--NEARDATA struct fruit *ffruit = (struct fruit *)0;
-+char plname[PL_NSIZ] = DUMMY; /* player name */
-+char pl_character[PL_CSIZ] = DUMMY;
-+char pl_race = '\0';
-+
-+char pl_fruit[PL_FSIZ] = DUMMY;
-+int current_fruit = 0;
-+struct fruit *ffruit = (struct fruit *)0;
-
--NEARDATA char tune[6] = DUMMY;
-+char tune[6] = DUMMY;
-
- const char *occtxt = DUMMY;
- const char quitchars[] = " \r\n\033";
-@@ -68,7 +68,7 @@
- const char ynqchars[] = "ynq";
- const char ynaqchars[] = "ynaq";
- const char ynNaqchars[] = "yn#aq";
--NEARDATA long yn_number = 0L;
-+long yn_number = 0L;
-
- #ifdef MICRO
- char hackdir[PATHLEN]; /* where rumors, help, record are */
-@@ -86,7 +86,7 @@
-
- struct linfo level_info[MAXLINFO];
-
--NEARDATA struct sinfo program_state;
-+struct sinfo program_state;
-
- /* 'rogue'-like direction commands (cmd.c) */
- const char sdir[] = "hykulnjb><";
-@@ -95,43 +95,43 @@
- const schar ydir[10] = { 0,-1,-1,-1, 0, 1, 1, 1, 0, 0 };
- const schar zdir[10] = { 0, 0, 0, 0, 0, 0, 0, 0, 1,-1 };
-
--NEARDATA schar tbx = 0, tby = 0; /* mthrowu: target */
-+schar tbx = 0, tby = 0; /* mthrowu: target */
-
--NEARDATA struct dig_info digging;
-+struct dig_info digging;
-
--NEARDATA dungeon dungeons[MAXDUNGEON]; /* ini'ed by init_dungeon() */
--NEARDATA s_level *sp_levchn;
--NEARDATA stairway upstair = { 0, 0 }, dnstair = { 0, 0 };
--NEARDATA stairway upladder = { 0, 0 }, dnladder = { 0, 0 };
--NEARDATA stairway sstairs = { 0, 0 };
--NEARDATA dest_area updest = { 0, 0, 0, 0, 0, 0, 0, 0 };
--NEARDATA dest_area dndest = { 0, 0, 0, 0, 0, 0, 0, 0 };
--NEARDATA coord inv_pos = { 0, 0 };
--
--NEARDATA boolean in_mklev = FALSE;
--NEARDATA boolean stoned = FALSE; /* done to monsters hit by 'c' */
--NEARDATA boolean unweapon = FALSE;
--NEARDATA boolean mrg_to_wielded = FALSE;
-+dungeon dungeons[MAXDUNGEON]; /* ini'ed by init_dungeon() */
-+s_level *sp_levchn;
-+stairway upstair = { 0, 0 }, dnstair = { 0, 0 };
-+stairway upladder = { 0, 0 }, dnladder = { 0, 0 };
-+stairway sstairs = { 0, 0 };
-+dest_area updest = { 0, 0, 0, 0, 0, 0, 0, 0 };
-+dest_area dndest = { 0, 0, 0, 0, 0, 0, 0, 0 };
-+coord inv_pos = { 0, 0 };
-+
-+boolean in_mklev = FALSE;
-+boolean stoned = FALSE; /* done to monsters hit by 'c' */
-+boolean unweapon = FALSE;
-+boolean mrg_to_wielded = FALSE;
- /* weapon picked is merged with wielded one */
--NEARDATA struct obj *current_wand = 0; /* wand currently zapped/applied */
-+struct obj *current_wand = 0; /* wand currently zapped/applied */
-
--NEARDATA boolean in_steed_dismounting = FALSE;
-+boolean in_steed_dismounting = FALSE;
-
--NEARDATA coord bhitpos = DUMMY;
--NEARDATA coord doors[DOORMAX] = {DUMMY};
-+coord bhitpos = DUMMY;
-+coord doors[DOORMAX] = {DUMMY};
-
--NEARDATA struct mkroom rooms[(MAXNROFROOMS+1)*2] = {DUMMY};
--NEARDATA struct mkroom* subrooms = &rooms[MAXNROFROOMS+1];
-+struct mkroom rooms[(MAXNROFROOMS+1)*2] = {DUMMY};
-+struct mkroom* subrooms = &rooms[MAXNROFROOMS+1];
- struct mkroom *upstairs_room, *dnstairs_room, *sstairs_room;
-
- dlevel_t level; /* level map */
- struct trap *ftrap = (struct trap *)0;
--NEARDATA struct monst youmonst = DUMMY;
--NEARDATA struct flag flags = DUMMY;
--NEARDATA struct instance_flags iflags = DUMMY;
--NEARDATA struct you u = DUMMY;
-+struct monst youmonst = DUMMY;
-+struct flag flags = DUMMY;
-+struct instance_flags iflags = DUMMY;
-+struct you u = DUMMY;
-
--NEARDATA struct obj *invent = (struct obj *)0,
-+struct obj *invent = (struct obj *)0,
- *uwep = (struct obj *)0, *uarm = (struct obj *)0,
- *uswapwep = (struct obj *)0,
- *uquiver = (struct obj *)0, /* quiver */
-@@ -170,19 +170,19 @@
- S_ss1, S_ss2, S_ss3, S_ss2, S_ss1, S_ss2, S_ss4,
- };
-
--NEARDATA struct spell spl_book[MAXSPELL + 1] = {DUMMY};
-+struct spell spl_book[MAXSPELL + 1] = {DUMMY};
-
--NEARDATA long moves = 1L, monstermoves = 1L;
-+long moves = 1L, monstermoves = 1L;
- /* These diverge when player is Fast */
--NEARDATA long wailmsg = 0L;
-+long wailmsg = 0L;
-
- /* objects that are moving to another dungeon level */
--NEARDATA struct obj *migrating_objs = (struct obj *)0;
-+struct obj *migrating_objs = (struct obj *)0;
- /* objects not yet paid for */
--NEARDATA struct obj *billobjs = (struct obj *)0;
-+struct obj *billobjs = (struct obj *)0;
-
- /* used to zero all elements of a struct obj */
--NEARDATA struct obj zeroobj = DUMMY;
-+struct obj zeroobj = DUMMY;
-
- /* monster pronouns, index is return value of gender(mtmp) */
- const char *he[3] = { "he", "she", "it" };
-@@ -190,18 +190,18 @@
- const char *his[3] = { "his", "her", "its" };
-
- /* originally from dog.c */
--NEARDATA char dogname[PL_PSIZ] = DUMMY;
--NEARDATA char catname[PL_PSIZ] = DUMMY;
--NEARDATA char horsename[PL_PSIZ] = DUMMY;
-+char dogname[PL_PSIZ] = DUMMY;
-+char catname[PL_PSIZ] = DUMMY;
-+char horsename[PL_PSIZ] = DUMMY;
- char preferred_pet; /* '\0', 'c', 'd' */
- /* monsters that went down/up together with @ */
--NEARDATA struct monst *mydogs = (struct monst *)0;
-+struct monst *mydogs = (struct monst *)0;
- /* monsters that are moving to another dungeon level */
--NEARDATA struct monst *migrating_mons = (struct monst *)0;
-+struct monst *migrating_mons = (struct monst *)0;
-
--NEARDATA struct mvitals mvitals[NUMMONS];
-+struct mvitals mvitals[NUMMONS];
-
--NEARDATA struct c_color_names c_color_names = {
-+struct c_color_names c_color_names = {
- "black", "amber", "golden",
- "light blue", "red", "green",
- "silver", "blue", "purple",
-@@ -224,12 +224,12 @@
- };
-
- /* Vision */
--NEARDATA boolean vision_full_recalc = 0;
--NEARDATA char **viz_array = 0;/* used in cansee() and couldsee() macros */
-+boolean vision_full_recalc = 0;
-+char **viz_array = 0;/* used in cansee() and couldsee() macros */
-
- /* Global windowing data, defined here for multi-window-system support */
--NEARDATA winid WIN_MESSAGE = WIN_ERR, WIN_STATUS = WIN_ERR;
--NEARDATA winid WIN_MAP = WIN_ERR, WIN_INVEN = WIN_ERR;
-+winid WIN_MESSAGE = WIN_ERR, WIN_STATUS = WIN_ERR;
-+winid WIN_MAP = WIN_ERR, WIN_INVEN = WIN_ERR;
- char toplines[TBUFSZ];
- /* Windowing stuff that's really tty oriented, but present for all ports */
- struct tc_gbl_data tc_gbl_data = { 0,0, 0,0 }; /* AS,AE, LI,CO */
-diff -urN nethack-3.3.1.orig/src/dig.c nethack-3.3.1/src/dig.c
---- nethack-3.3.1.orig/src/dig.c Mon Jul 17 02:16:27 2000
-+++ nethack-3.3.1/src/dig.c Sun Dec 30 12:58:40 2001
-@@ -8,7 +8,7 @@
-
- #ifdef OVLB
-
--static NEARDATA boolean did_dig_msg;
-+static boolean did_dig_msg;
-
- STATIC_DCL boolean NDECL(rm_waslit);
- STATIC_DCL void FDECL(mkcavepos, (XCHAR_P,XCHAR_P,int,BOOLEAN_P,BOOLEAN_P));
-diff -urN nethack-3.3.1.orig/src/do.c nethack-3.3.1/src/do.c
---- nethack-3.3.1.orig/src/do.c Mon Jul 17 02:15:55 2000
-+++ nethack-3.3.1/src/do.c Sun Dec 30 12:58:40 2001
-@@ -41,7 +41,7 @@
-
- #ifdef OVLB
-
--static NEARDATA const char drop_types[] =
-+static const char drop_types[] =
- { ALLOW_COUNT, GOLD_CLASS, ALL_CLASSES, 0 };
-
- /* 'd' command: drop one inventory item */
-@@ -631,7 +631,7 @@
- #ifdef OVL2
-
- /* on a ladder, used in goto_level */
--static NEARDATA boolean at_ladder = FALSE;
-+static boolean at_ladder = FALSE;
-
- int
- dodown()
-@@ -1421,7 +1421,7 @@
- dowipe()
- {
- if(u.ucreamed) {
-- static NEARDATA char buf[39];
-+ static char buf[39];
-
- Sprintf(buf, "wiping off your %s", body_part(FACE));
- set_occupation(wipeoff, buf, 0);
-diff -urN nethack-3.3.1.orig/src/do_name.c nethack-3.3.1/src/do_name.c
---- nethack-3.3.1.orig/src/do_name.c Wed Aug 9 17:46:17 2000
-+++ nethack-3.3.1/src/do_name.c Sun Dec 30 12:58:40 2001
-@@ -429,7 +429,7 @@
- return obj;
- }
-
--static NEARDATA const char callable[] = {
-+static const char callable[] = {
- SCROLL_CLASS, POTION_CLASS, WAND_CLASS, RING_CLASS, AMULET_CLASS,
- GEM_CLASS, SPBOOK_CLASS, ARMOR_CLASS, TOOL_CLASS, 0 };
-
-@@ -912,7 +912,7 @@
- const char *str;
- const char *pronoun;
- {
-- static NEARDATA char buf[BUFSZ];
-+ static char buf[BUFSZ];
- register int i;
-
- for(i=0; pronoun_pairs[i][0]; i++) {
-@@ -949,7 +949,7 @@
-
- #ifdef OVL2
-
--static NEARDATA const char *hcolors[] = {
-+static const char *hcolors[] = {
- "ultraviolet", "infrared", "bluish-orange",
- "reddish-green", "dark white", "light black", "sky blue-pink",
- "salty", "sweet", "sour", "bitter",
-diff -urN nethack-3.3.1.orig/src/do_wear.c nethack-3.3.1/src/do_wear.c
---- nethack-3.3.1.orig/src/do_wear.c Thu Aug 3 21:44:47 2000
-+++ nethack-3.3.1/src/do_wear.c Sun Dec 30 12:58:40 2001
-@@ -10,13 +10,13 @@
-
- #else /* OVLB */
-
--STATIC_OVL NEARDATA long takeoff_mask = 0L, taking_off = 0L;
-+STATIC_OVL long takeoff_mask = 0L, taking_off = 0L;
-
--static NEARDATA int todelay;
-+static int todelay;
-
--static NEARDATA const char see_yourself[] = "see yourself";
--static NEARDATA const char unknown_type[] = "Unknown type of %s (%d)";
--static NEARDATA const char *c_armor = "armor",
-+static const char see_yourself[] = "see yourself";
-+static const char unknown_type[] = "Unknown type of %s (%d)";
-+static const char *c_armor = "armor",
- *c_suit = "suit",
- #ifdef TOURIST
- *c_shirt = "shirt",
-@@ -31,7 +31,7 @@
- *c_axe = "axe",
- *c_that_ = "that";
-
--static NEARDATA const long takeoff_order[] = { WORN_BLINDF, W_WEP,
-+static const long takeoff_order[] = { WORN_BLINDF, W_WEP,
- WORN_SHIELD, WORN_GLOVES, LEFT_RING, RIGHT_RING, WORN_CLOAK,
- WORN_HELMET, WORN_AMUL, WORN_ARMOR,
- #ifdef TOURIST
-@@ -917,8 +917,8 @@
- multi = 0;
- }
-
--static NEARDATA const char clothes[] = {ARMOR_CLASS, 0};
--static NEARDATA const char accessories[] = {RING_CLASS, AMULET_CLASS, TOOL_CLASS, FOOD_CLASS, 0};
-+static const char clothes[] = {ARMOR_CLASS, 0};
-+static const char accessories[] = {RING_CLASS, AMULET_CLASS, TOOL_CLASS, FOOD_CLASS, 0};
-
- int
- dotakeoff()
-diff -urN nethack-3.3.1.orig/src/dogmove.c nethack-3.3.1/src/dogmove.c
---- nethack-3.3.1.orig/src/dogmove.c Sun Jul 16 03:53:14 2000
-+++ nethack-3.3.1/src/dogmove.c Sun Dec 30 12:58:40 2001
-@@ -44,7 +44,7 @@
- return (struct obj *)0;
- }
-
--static NEARDATA const char nofetch[] = { BALL_CLASS, CHAIN_CLASS, ROCK_CLASS, 0 };
-+static const char nofetch[] = { BALL_CLASS, CHAIN_CLASS, ROCK_CLASS, 0 };
-
- #endif /* OVL0 */
-
-diff -urN nethack-3.3.1.orig/src/dokick.c nethack-3.3.1/src/dokick.c
---- nethack-3.3.1.orig/src/dokick.c Tue Jul 18 04:54:18 2000
-+++ nethack-3.3.1/src/dokick.c Sun Dec 30 12:58:40 2001
-@@ -9,8 +9,8 @@
- #define martial() (martial_bonus() || is_bigfoot(youmonst.data) || \
- (uarmf && uarmf->otyp == KICKING_BOOTS))
-
--static NEARDATA struct rm *maploc;
--static NEARDATA const char *gate_str;
-+static struct rm *maploc;
-+static const char *gate_str;
-
- extern boolean notonhead; /* for long worms */
-
-@@ -21,7 +21,7 @@
- STATIC_DCL void FDECL(otransit_msg, (struct obj *, BOOLEAN_P, long));
- STATIC_DCL void FDECL(drop_to, (coord *,SCHAR_P));
-
--static NEARDATA struct obj *kickobj;
-+static struct obj *kickobj;
-
- #define IS_SHOP(x) (rooms[x].rtype >= SHOPBASE)
-
-diff -urN nethack-3.3.1.orig/src/dothrow.c nethack-3.3.1/src/dothrow.c
---- nethack-3.3.1.orig/src/dothrow.c Sun Jul 16 03:42:57 2000
-+++ nethack-3.3.1/src/dothrow.c Sun Dec 30 12:58:40 2001
-@@ -18,10 +18,10 @@
- STATIC_DCL void FDECL(sho_obj_return_to_u, (struct obj *obj));
-
-
--static NEARDATA const char toss_objs[] =
-+static const char toss_objs[] =
- { ALLOW_COUNT, GOLD_CLASS, ALL_CLASSES, WEAPON_CLASS, 0 };
- /* different default choices when wielding a sling (gold must be included) */
--static NEARDATA const char bullets[] =
-+static const char bullets[] =
- { ALLOW_COUNT, GOLD_CLASS, ALL_CLASSES, GEM_CLASS, 0 };
-
- extern boolean notonhead; /* for long worms */
-@@ -1153,11 +1153,11 @@
- boolean is_buddy = sgn(mon->data->maligntyp) == sgn(u.ualign.type);
- boolean is_gem = objects[obj->otyp].oc_material == GEMSTONE;
- int ret = 0;
-- static NEARDATA const char nogood[] = " is not interested in your junk.";
-- static NEARDATA const char acceptgift[] = " accepts your gift.";
-- static NEARDATA const char maybeluck[] = " hesitatingly";
-- static NEARDATA const char noluck[] = " graciously";
-- static NEARDATA const char addluck[] = " gratefully";
-+ static const char nogood[] = " is not interested in your junk.";
-+ static const char acceptgift[] = " accepts your gift.";
-+ static const char maybeluck[] = " hesitatingly";
-+ static const char noluck[] = " graciously";
-+ static const char addluck[] = " gratefully";
-
- Strcpy(buf,Monnam(mon));
- mon->mpeaceful = 1;
-@@ -1323,8 +1323,8 @@
- struct monst *shkp = shop_keeper(*o_shop);
-
- if (shkp) { /* (implies *o_shop != '\0') */
-- static NEARDATA long lastmovetime = 0L;
-- static NEARDATA boolean peaceful_shk = FALSE;
-+ static long lastmovetime = 0L;
-+ static boolean peaceful_shk = FALSE;
- /* We want to base shk actions on her peacefulness
- at start of this turn, so that "simultaneous"
- multiple breakage isn't drastically worse than
-diff -urN nethack-3.3.1.orig/src/drawing.c nethack-3.3.1/src/drawing.c
---- nethack-3.3.1.orig/src/drawing.c Sat Jul 22 02:59:05 2000
-+++ nethack-3.3.1/src/drawing.c Sun Dec 30 12:58:40 2001
-@@ -868,7 +868,7 @@
- #endif /* ASCIIGRAPH */
-
- for (i = 0; i < MAXOCLASSES; i++) {
--#ifdef ASCIIGRAPH
-+#if defined(ASCIIGRAPH) && !defined(LINUX)
- if (iflags.IBMgraphics
- # if defined(USE_TILES) && defined(MSDOS)
- && !iflags.grmode
-@@ -876,7 +876,7 @@
- )
- oc_syms[i] = IBM_r_oc_syms[i];
- else
--#endif /* ASCIIGRAPH */
-+#endif /* ASCIIGRAPH && !LINUX */
- oc_syms[i] = r_oc_syms[i];
- }
- #if defined(MSDOS) && defined(USE_TILES)
-diff -urN nethack-3.3.1.orig/src/eat.c nethack-3.3.1/src/eat.c
---- nethack-3.3.1.orig/src/eat.c Sat Aug 5 01:31:40 2000
-+++ nethack-3.3.1/src/eat.c Sun Dec 30 12:58:40 2001
-@@ -59,16 +59,16 @@
-
- #ifndef OVLB
-
--STATIC_DCL NEARDATA const char comestibles[];
--STATIC_DCL NEARDATA const char allobj[];
-+STATIC_DCL const char comestibles[];
-+STATIC_DCL const char allobj[];
- STATIC_DCL boolean force_save_hs;
-
- #else
-
--STATIC_OVL NEARDATA const char comestibles[] = { FOOD_CLASS, 0 };
-+STATIC_OVL const char comestibles[] = { FOOD_CLASS, 0 };
-
- /* Gold must come first for getobj(). */
--STATIC_OVL NEARDATA const char allobj[] = {
-+STATIC_OVL const char allobj[] = {
- GOLD_CLASS, WEAPON_CLASS, ARMOR_CLASS, POTION_CLASS, SCROLL_CLASS,
- WAND_CLASS, RING_CLASS, AMULET_CLASS, FOOD_CLASS, TOOL_CLASS,
- GEM_CLASS, ROCK_CLASS, BALL_CLASS, CHAIN_CLASS, SPBOOK_CLASS, 0 };
-@@ -147,12 +147,12 @@
- };
- #define TTSZ SIZE(tintxts)
-
--static NEARDATA struct {
-+static struct {
- struct obj *tin;
- int usedtime, reqtime;
- } tin;
-
--static NEARDATA struct {
-+static struct {
- struct obj *piece; /* the thing being eaten, or last thing that
- * was partially eaten, unless that thing was
- * a tin, which uses the tin structure above,
-diff -urN nethack-3.3.1.orig/src/end.c nethack-3.3.1/src/end.c
---- nethack-3.3.1.orig/src/end.c Mon Jul 3 22:59:32 2000
-+++ nethack-3.3.1/src/end.c Sun Dec 30 12:58:40 2001
-@@ -65,7 +65,7 @@
- /*
- * The order of these needs to match the macros in hack.h.
- */
--static NEARDATA const char *deaths[] = { /* the array of death */
-+static const char *deaths[] = { /* the array of death */
- "died", "choked", "poisoned", "starvation", "drowning",
- "burning", "dissolving under the heat and pressure",
- "crushed", "turned to stone", "turned into slime",
-@@ -73,7 +73,7 @@
- "quit", "escaped", "ascended"
- };
-
--static NEARDATA const char *ends[] = { /* "when you..." */
-+static const char *ends[] = { /* "when you..." */
- "died", "choked", "were poisoned", "starved", "drowned",
- "burned", "dissolved in the lava",
- "were crushed", "turned to stone", "turned into slime",
-diff -urN nethack-3.3.1.orig/src/engrave.c nethack-3.3.1/src/engrave.c
---- nethack-3.3.1.orig/src/engrave.c Sat Aug 5 01:32:10 2000
-+++ nethack-3.3.1/src/engrave.c Sun Dec 30 12:58:40 2001
-@@ -6,7 +6,7 @@
- #include "lev.h"
- #include <ctype.h>
-
--STATIC_VAR NEARDATA struct engr *head_engr;
-+STATIC_VAR struct engr *head_engr;
-
- #ifdef OVLB
- /* random engravings */
-@@ -400,7 +400,7 @@
- return(1);*/
- }
-
--static NEARDATA const char styluses[] =
-+static const char styluses[] =
- { ALL_CLASSES, ALLOW_NONE, TOOL_CLASS, WEAPON_CLASS, WAND_CLASS,
- GEM_CLASS, RING_CLASS, 0 };
-
-diff -urN nethack-3.3.1.orig/src/extralev.c nethack-3.3.1/src/extralev.c
---- nethack-3.3.1.orig/src/extralev.c Mon Nov 29 03:27:55 1999
-+++ nethack-3.3.1/src/extralev.c Sun Dec 30 12:58:40 2001
-@@ -22,7 +22,7 @@
- #define LEFT 4
- #define RIGHT 8
-
--static NEARDATA struct rogueroom r[3][3];
-+static struct rogueroom r[3][3];
- STATIC_DCL void FDECL(roguejoin,(int,int,int,int,int));
- STATIC_DCL void FDECL(roguecorr,(int,int,int));
- STATIC_DCL void FDECL(miniwalk,(int,int));
-diff -urN nethack-3.3.1.orig/src/files.c nethack-3.3.1/src/files.c
---- nethack-3.3.1.orig/src/files.c Wed Aug 9 19:38:07 2000
-+++ nethack-3.3.1/src/files.c Sun Dec 30 13:12:01 2001
-@@ -8,25 +8,25 @@
- #include <ctype.h>
-
- #if !defined(MAC) && !defined(O_WRONLY) && !defined(AZTEC_C)
--#include <fcntl.h>
-+ #include <fcntl.h>
- #endif
- #if defined(UNIX) || defined(VMS)
--#include <errno.h>
--# ifndef SKIP_ERRNO
--extern int errno;
--# endif
--#include <signal.h>
-+ #include <errno.h>
-+ #ifndef SKIP_ERRNO
-+ extern int errno;
-+ #endif
-+ #include <signal.h>
- #endif
-
- #if defined(MSDOS) || defined(OS2) || defined(TOS) || defined(WIN32)
--# ifndef GNUDOS
--#include <sys\stat.h>
--# else
--#include <sys/stat.h>
--# endif
-+ #ifndef GNUDOS
-+ #include <sys\stat.h>
-+ #else
-+ #include <sys/stat.h>
-+ #endif
- #endif
- #ifndef O_BINARY /* used for micros, no-op for others */
--# define O_BINARY 0
-+ #define O_BINARY 0
- #endif
-
- #ifdef PREFIXES_IN_USE
-@@ -34,36 +34,40 @@
- static char fqn_filename_buffer[FQN_NUMBUF][FQN_MAX_FILENAME];
- #endif
-
--#if !defined(MFLOPPY) && !defined(VMS) && !defined(WIN32)
-+# if !defined(MFLOPPY) && !defined(VMS) && !defined(WIN32) && !defined(LINUX)
- char bones[] = "bonesnn.xxx";
- char lock[PL_NSIZ+14] = "1lock"; /* long enough for uid+name+.99 */
--#else
--# if defined(MFLOPPY)
--char bones[FILENAME]; /* pathname of bones files */
--char lock[FILENAME]; /* pathname of level files */
--# endif
--# if defined(VMS)
--char bones[] = "bonesnn.xxx;1";
--char lock[PL_NSIZ+17] = "1lock"; /* long enough for _uid+name+.99;1 */
--# endif
--# if defined(WIN32)
--char bones[] = "bonesnn.xxx";
--char lock[PL_NSIZ+25]; /* long enough for username+-+name+.99 */
-+# else
-+ # if defined(MFLOPPY)
-+ char bones[FILENAME]; /* pathname of bones files */
-+ char lock[FILENAME]; /* pathname of level files */
-+ # endif
-+ # if defined(VMS)
-+ char bones[] = "bonesnn.xxx;1";
-+ char lock[PL_NSIZ+17] = "1lock"; /* long enough for _uid+name+.99;1 */
-+ # endif
-+ # if defined(LINUX)
-+ char bones[] = "/var/games/nethack/bonesnn.xxx";
-+ char lock[255] = "/var/games/nethack/1lock";
-+ # endif
-+ # if defined(WIN32)
-+ char bones[] = "bonesnn.xxx";
-+ char lock[PL_NSIZ+25]; /* long enough for username+-+name+.99 */
-+ # endif
- # endif
--#endif
-
- #if defined(UNIX) || defined(__BEOS__)
--#define SAVESIZE (PL_NSIZ + 13) /* save/99999player.e */
-+ #define SAVESIZE (PL_NSIZ + 13) /* save/99999player.e */
- #else
--# ifdef VMS
--#define SAVESIZE (PL_NSIZ + 22) /* [.save]<uid>player.e;1 */
--# else
--# if defined(WIN32)
--#define SAVESIZE (PL_NSIZ + 40) /* username-player.NetHack-saved-game */
--# else
--#define SAVESIZE FILENAME /* from macconf.h or pcconf.h */
--# endif
--# endif
-+ # ifdef VMS
-+ #define SAVESIZE (PL_NSIZ + 22) /* [.save]<uid>player.e;1 */
-+ # else
-+ # if defined(WIN32)
-+ #define SAVESIZE (PL_NSIZ + 40) /* username-player.NetHack-saved-game */
-+ # else
-+ #define SAVESIZE FILENAME /* from macconf.h or pcconf.h */
-+ # endif
-+ # endif
- #endif
-
- char SAVEF[SAVESIZE]; /* holds relative path of save file from playground */
-@@ -442,7 +446,7 @@
- #else
- ret = rename(tempname, fq_bones);
- #endif
--#ifdef WIZARD
-+#if defined(WIZARD)
- if (wizard && ret != 0)
- pline("couldn't rename %s to %s", tempname, fq_bones);
- #endif
-@@ -520,9 +524,14 @@
- # else
- # if defined(WIN32)
- Sprintf(SAVEF,"%s-%s.NetHack-saved-game",get_username(0), plname);
--# else
-+# else
-+ # if defined(LINUX)
-+ Sprintf(SAVEF, "/var/games/nethack/save/%d%s", (int)getuid(), plname);
-+ regularize(SAVEF+28); /* avoid . or / in name */
-+ # else
- Sprintf(SAVEF, "save/%d%s", (int)getuid(), plname);
- regularize(SAVEF+5); /* avoid . or / in name */
-+ # endif /* LINUX */
- # endif /* WIN32 */
- # endif /* MICRO */
- #endif /* VMS */
-diff -urN nethack-3.3.1.orig/src/hack.c nethack-3.3.1/src/hack.c
---- nethack-3.3.1.orig/src/hack.c Sat Jul 22 02:59:06 2000
-+++ nethack-3.3.1/src/hack.c Sun Dec 30 12:58:40 2001
-@@ -216,7 +216,7 @@
- long lastmovetime;
- lastmovetime = 0;
- #else
-- static NEARDATA long lastmovetime;
-+ static long lastmovetime;
- #endif
- /* note: this var contains garbage initially and
- after a restore */
-@@ -426,7 +426,7 @@
- }
-
- #ifdef SINKS
--static NEARDATA const char fell_on_sink[] = "fell onto a sink";
-+static const char fell_on_sink[] = "fell onto a sink";
-
- STATIC_OVL void
- dosinkfall()
-diff -urN nethack-3.3.1.orig/src/invent.c nethack-3.3.1/src/invent.c
---- nethack-3.3.1.orig/src/invent.c Sat Aug 5 01:37:26 2000
-+++ nethack-3.3.1/src/invent.c Sun Dec 30 12:58:40 2001
-@@ -959,7 +959,7 @@
- W_WEP | W_SWAPWEP | W_QUIVER))));
- }
-
--static NEARDATA const char removeables[] =
-+static const char removeables[] =
- { ARMOR_CLASS, WEAPON_CLASS, RING_CLASS, AMULET_CLASS, TOOL_CLASS, 0 };
-
- /* interactive version of getobj - used for Drop, Identify and */
-@@ -2159,24 +2159,24 @@
- * Conversion from a class to a string for printing.
- * This must match the object class order.
- */
--STATIC_VAR NEARDATA const char *names[] = { 0,
-+STATIC_VAR const char *names[] = { 0,
- "Illegal objects", "Weapons", "Armor", "Rings", "Amulets",
- "Tools", "Comestibles", "Potions", "Scrolls", "Spellbooks",
- "Wands", "Coins", "Gems", "Boulders/Statues", "Iron balls",
- "Chains", "Venoms"
- };
-
--static NEARDATA const char oth_symbols[] = {
-+static const char oth_symbols[] = {
- CONTAINED_SYM,
- '\0'
- };
-
--static NEARDATA const char *oth_names[] = {
-+static const char *oth_names[] = {
- "Bagged/Boxed items"
- };
-
--static NEARDATA char *invbuf = (char *)0;
--static NEARDATA unsigned invbufsiz = 0;
-+static char *invbuf = (char *)0;
-+static unsigned invbufsiz = 0;
-
- char *
- let_to_name(let,unpaid)
-diff -urN nethack-3.3.1.orig/src/lock.c nethack-3.3.1/src/lock.c
---- nethack-3.3.1.orig/src/lock.c Sat Apr 22 04:31:53 2000
-+++ nethack-3.3.1/src/lock.c Sun Dec 30 12:58:40 2001
-@@ -8,7 +8,7 @@
- STATIC_PTR int NDECL(forcelock);
-
- /* at most one of `door' and `box' should be non-null at any given time */
--STATIC_VAR NEARDATA struct xlock_s {
-+STATIC_VAR struct xlock_s {
- struct rm *door;
- struct obj *box;
- int picktyp, chance, usedtime;
-diff -urN nethack-3.3.1.orig/src/mail.c nethack-3.3.1/src/mail.c
---- nethack-3.3.1.orig/src/mail.c Wed Aug 9 20:02:04 2000
-+++ nethack-3.3.1/src/mail.c Sun Dec 30 12:58:40 2001
-@@ -256,7 +256,7 @@
- }
-
- /* Let the mail daemon have a larger vocabulary. */
--static NEARDATA const char *mail_text[] = {
-+static const char *mail_text[] = {
- "Gangway!",
- "Look out!",
- "Pardon me!"
-diff -urN nethack-3.3.1.orig/src/makemon.c nethack-3.3.1/src/makemon.c
---- nethack-3.3.1.orig/src/makemon.c Sun Jul 16 03:45:21 2000
-+++ nethack-3.3.1/src/makemon.c Sun Dec 30 12:58:40 2001
-@@ -10,7 +10,7 @@
- #include <ctype.h>
- #endif
-
--STATIC_VAR NEARDATA struct monst zeromonst;
-+STATIC_VAR struct monst zeromonst;
-
- #ifdef OVL0
- STATIC_DCL boolean FDECL(uncommon, (int));
-@@ -1042,8 +1042,8 @@
- align_shift(ptr)
- register struct permonst *ptr;
- {
-- static NEARDATA long oldmoves = 0L; /* != 1, starting value of moves */
-- static NEARDATA s_level *lev;
-+ static long oldmoves = 0L; /* != 1, starting value of moves */
-+ static s_level *lev;
- register int alshift;
-
- if(oldmoves != moves) {
-@@ -1064,7 +1064,7 @@
- return alshift;
- }
-
--static NEARDATA struct {
-+static struct {
- int choice_count;
- char mchoices[SPECIAL_PM]; /* value range is 0..127 */
- } rndmonst_state = { -1, {0} };
-@@ -1525,7 +1525,7 @@
- #endif /* OVL1 */
- #ifdef OVLB
-
--static NEARDATA char syms[] = {
-+static char syms[] = {
- MAXOCLASSES, MAXOCLASSES+1, RING_CLASS, WAND_CLASS, WEAPON_CLASS,
- FOOD_CLASS, GOLD_CLASS, SCROLL_CLASS, POTION_CLASS, ARMOR_CLASS,
- AMULET_CLASS, TOOL_CLASS, ROCK_CLASS, GEM_CLASS, SPBOOK_CLASS,
-diff -urN nethack-3.3.1.orig/src/mhitm.c nethack-3.3.1/src/mhitm.c
---- nethack-3.3.1.orig/src/mhitm.c Thu Aug 3 22:00:42 2000
-+++ nethack-3.3.1/src/mhitm.c Sun Dec 30 12:58:40 2001
-@@ -10,9 +10,9 @@
-
- #ifdef OVLB
-
--static NEARDATA boolean vis, far_noise;
--static NEARDATA long noisetime;
--static NEARDATA struct obj *otmp;
-+static boolean vis, far_noise;
-+static long noisetime;
-+static struct obj *otmp;
-
- static const char brief_feeling[] =
- "have a %s feeling for a moment, then it passes.";
-diff -urN nethack-3.3.1.orig/src/mhitu.c nethack-3.3.1/src/mhitu.c
---- nethack-3.3.1.orig/src/mhitu.c Sat Aug 5 01:37:50 2000
-+++ nethack-3.3.1/src/mhitu.c Sun Dec 30 12:58:40 2001
-@@ -5,7 +5,7 @@
- #include "hack.h"
- #include "artifact.h"
-
--STATIC_VAR NEARDATA struct obj *otmp;
-+STATIC_VAR struct obj *otmp;
-
- STATIC_DCL void FDECL(urustm, (struct monst *, struct obj *));
- # ifdef OVL1
-diff -urN nethack-3.3.1.orig/src/mklev.c nethack-3.3.1/src/mklev.c
---- nethack-3.3.1.orig/src/mklev.c Wed Aug 9 17:46:19 2000
-+++ nethack-3.3.1/src/mklev.c Sun Dec 30 12:58:40 2001
-@@ -446,7 +446,7 @@
- }
-
- /* there should be one of these per trap, in the same order as trap.h */
--static NEARDATA const char *trap_engravings[TRAPNUM] = {
-+static const char *trap_engravings[TRAPNUM] = {
- (char *)0, (char *)0, (char *)0, (char *)0, (char *)0,
- (char *)0, (char *)0, (char *)0, (char *)0, (char *)0,
- (char *)0, (char *)0, (char *)0, (char *)0,
-diff -urN nethack-3.3.1.orig/src/monmove.c nethack-3.3.1/src/monmove.c
---- nethack-3.3.1.orig/src/monmove.c Thu Aug 3 21:30:14 2000
-+++ nethack-3.3.1/src/monmove.c Sun Dec 30 12:58:40 2001
-@@ -490,13 +490,13 @@
- return(tmp == 2);
- }
-
--static NEARDATA const char practical[] = { WEAPON_CLASS, ARMOR_CLASS, GEM_CLASS, FOOD_CLASS, 0 };
--static NEARDATA const char magical[] = {
-+static const char practical[] = { WEAPON_CLASS, ARMOR_CLASS, GEM_CLASS, FOOD_CLASS, 0 };
-+static const char magical[] = {
- AMULET_CLASS, POTION_CLASS, SCROLL_CLASS, WAND_CLASS, RING_CLASS,
- SPBOOK_CLASS, 0 };
--static NEARDATA const char indigestion[] = { BALL_CLASS, ROCK_CLASS, 0 };
--static NEARDATA const char boulder_class[] = { ROCK_CLASS, 0 };
--static NEARDATA const char gem_class[] = { GEM_CLASS, 0 };
-+static const char indigestion[] = { BALL_CLASS, ROCK_CLASS, 0 };
-+static const char boulder_class[] = { ROCK_CLASS, 0 };
-+static const char gem_class[] = { GEM_CLASS, 0 };
-
- boolean
- itsstuck(mtmp)
-diff -urN nethack-3.3.1.orig/src/monst.c nethack-3.3.1/src/monst.c
---- nethack-3.3.1.orig/src/monst.c Thu Aug 3 22:51:43 2000
-+++ nethack-3.3.1/src/monst.c Sun Dec 30 12:58:40 2001
-@@ -90,7 +90,7 @@
- */
-
- #ifndef SPLITMON_2
--NEARDATA struct permonst mons[] = {
-+struct permonst mons[] = {
- /*
- * ants
- */
-diff -urN nethack-3.3.1.orig/src/mthrowu.c nethack-3.3.1/src/mthrowu.c
---- nethack-3.3.1.orig/src/mthrowu.c Sun Jul 16 03:18:53 2000
-+++ nethack-3.3.1/src/mthrowu.c Sun Dec 30 12:58:40 2001
-@@ -19,7 +19,7 @@
- /*
- * Keep consistent with breath weapons in zap.c, and AD_* in monattk.h.
- */
--STATIC_OVL NEARDATA const char *breathwep[] = {
-+STATIC_OVL const char *breathwep[] = {
- "fragments",
- "fire",
- "frost",
-diff -urN nethack-3.3.1.orig/src/o_init.c nethack-3.3.1/src/o_init.c
---- nethack-3.3.1.orig/src/o_init.c Fri Dec 10 15:16:39 1999
-+++ nethack-3.3.1/src/o_init.c Sun Dec 30 12:58:40 2001
-@@ -11,7 +11,7 @@
- STATIC_DCL boolean FDECL(interesting_to_discover,(int));
-
-
--static NEARDATA short disco[NUM_OBJECTS] = DUMMY;
-+static short disco[NUM_OBJECTS] = DUMMY;
-
- #ifdef USE_TILES
- STATIC_DCL void NDECL(shuffle_tiles);
-diff -urN nethack-3.3.1.orig/src/objects.c nethack-3.3.1/src/objects.c
---- nethack-3.3.1.orig/src/objects.c Tue Feb 22 00:36:26 2000
-+++ nethack-3.3.1/src/objects.c Sun Dec 30 12:58:40 2001
-@@ -38,7 +38,7 @@
- # define OBJECT(obj,bits,prp,sym,prob,dly,wt,cost,sdam,ldam,oc1,oc2,nut,color) \
- {obj}
-
--NEARDATA struct objdescr obj_descr[] = {
-+struct objdescr obj_descr[] = {
- #else
- /* second pass -- object definitions */
-
-@@ -53,7 +53,7 @@
- # define HARDGEM(n) (0)
- # endif
-
--NEARDATA struct objclass objects[] = {
-+struct objclass objects[] = {
- #endif
- /* dummy object[0] -- description [2nd arg] *must* be NULL */
- OBJECT(OBJ("strange object",(char *)0), BITS(1,0,0,0,0,0,0,0,0,0,0,P_NONE,0),
-diff -urN nethack-3.3.1.orig/src/objnam.c nethack-3.3.1/src/objnam.c
---- nethack-3.3.1.orig/src/objnam.c Thu Aug 3 21:25:24 2000
-+++ nethack-3.3.1/src/objnam.c Sun Dec 30 12:58:40 2001
-@@ -84,7 +84,7 @@
- #ifdef LINT /* static char buf[BUFSZ]; */
- char buf[BUFSZ];
- #else
-- static char NEARDATA buf[BUFSZ];
-+ static char buf[BUFSZ];
- #endif
- register struct objclass *ocl = &objects[otyp];
- register const char *actualn = OBJ_NAME(*ocl);
-@@ -773,7 +773,7 @@
- struct obj *otmp;
- boolean ignore_oquan; /* to force singular */
- {
-- static char NEARDATA nambuf[40];
-+ static char nambuf[40];
-
- /* assert( strlen(mons[otmp->corpsenm].mname) <= 32 ); */
- Sprintf(nambuf, "%s corpse", mons[otmp->corpsenm].mname);
-@@ -810,7 +810,7 @@
- an(str)
- register const char *str;
- {
-- static char NEARDATA buf[BUFSZ];
-+ static char buf[BUFSZ];
-
- buf[0] = '\0';
-
-@@ -849,7 +849,7 @@
- the(str)
- const char *str;
- {
-- static char NEARDATA buf[BUFSZ];
-+ static char buf[BUFSZ];
- boolean insert_the = FALSE;
-
- if (!strncmpi(str, "the ", 4)) {
-@@ -995,7 +995,7 @@
- {
- /* Note: cannot use strcmpi here -- it'd give MATZot, CAVEMeN,... */
- register char *spot;
-- static char NEARDATA str[BUFSZ];
-+ static char str[BUFSZ];
- const char *excess = (char *)0;
- int len;
-
-@@ -1221,7 +1221,7 @@
- #else /* OVLB */
-
- /* wishable subranges of objects */
--STATIC_OVL NEARDATA const struct o_range o_ranges[] = {
-+STATIC_OVL const struct o_range o_ranges[] = {
- { "bag", TOOL_CLASS, SACK, BAG_OF_TRICKS },
- { "lamp", TOOL_CLASS, OIL_LAMP, MAGIC_LAMP },
- { "candle", TOOL_CLASS, TALLOW_CANDLE, WAX_CANDLE },
-@@ -1264,7 +1264,7 @@
- const char *oldstr;
- {
- register char *p, *bp;
-- static char NEARDATA str[BUFSZ];
-+ static char str[BUFSZ];
-
- if (!oldstr || !*oldstr) {
- impossible("singular of null?");
-diff -urN nethack-3.3.1.orig/src/options.c nethack-3.3.1/src/options.c
---- nethack-3.3.1.orig/src/options.c Wed Aug 9 20:33:01 2000
-+++ nethack-3.3.1/src/options.c Sun Dec 30 12:58:40 2001
-@@ -6,8 +6,8 @@
- #include "config.h"
- #include "objclass.h"
- #include "flag.h"
--NEARDATA struct flag flags; /* provide linkage */
--NEARDATA struct instance_flags iflags; /* provide linkage */
-+struct flag flags; /* provide linkage */
-+struct instance_flags iflags; /* provide linkage */
- #define static
- #else
- #include "hack.h"
-@@ -1789,11 +1789,11 @@
- }
-
-
--static NEARDATA const char *menutype[] = {
-+static const char *menutype[] = {
- "traditional", "combination", "partial", "full"
- };
-
--static NEARDATA const char *burdentype[] = {
-+static const char *burdentype[] = {
- "unencumbered", "burdened", "stressed",
- "strained", "overtaxed", "overloaded"
- };
-diff -urN nethack-3.3.1.orig/src/pickup.c nethack-3.3.1/src/pickup.c
---- nethack-3.3.1.orig/src/pickup.c Sat Jul 22 20:41:29 2000
-+++ nethack-3.3.1/src/pickup.c Sun Dec 30 12:58:40 2001
-@@ -1469,7 +1469,7 @@
-
- /* A variable set in use_container(), to be used by the callback routines */
- /* in_container(), and out_container() from askchain() and use_container(). */
--static NEARDATA struct obj *current_container;
-+static struct obj *current_container;
- #define Icebox (current_container->otyp == ICE_BOX)
-
- /* Returns: -1 to stop, 1 item was inserted, 0 item was not inserted. */
-@@ -1713,7 +1713,7 @@
- current_container = obj; /* for use by in/out_container */
-
- if (obj->spe == 1) {
-- static NEARDATA const char sc[] = "Schroedinger's Cat";
-+ static const char sc[] = "Schroedinger's Cat";
- struct obj *ocat;
- struct monst *cat;
-
-diff -urN nethack-3.3.1.orig/src/polyself.c nethack-3.3.1/src/polyself.c
---- nethack-3.3.1.orig/src/polyself.c Sun Jul 16 17:11:05 2000
-+++ nethack-3.3.1/src/polyself.c Sun Dec 30 12:58:40 2001
-@@ -1016,7 +1016,7 @@
- struct monst *mon;
- int part;
- {
-- static NEARDATA const char
-+ static const char
- *humanoid_parts[] = { "arm", "eye", "face", "finger",
- "fingertip", "foot", "hand", "handed", "head", "leg",
- "light headed", "neck", "spine", "toe", "hair", "blood", "lung"},
-diff -urN nethack-3.3.1.orig/src/potion.c nethack-3.3.1/src/potion.c
---- nethack-3.3.1.orig/src/potion.c Sat Aug 5 01:42:35 2000
-+++ nethack-3.3.1/src/potion.c Sun Dec 30 12:58:40 2001
-@@ -7,8 +7,8 @@
- #ifdef OVLB
- boolean notonhead = FALSE;
-
--static NEARDATA int nothing, unkn;
--static NEARDATA const char beverages[] = { POTION_CLASS, 0 };
-+static int nothing, unkn;
-+static const char beverages[] = { POTION_CLASS, 0 };
-
- STATIC_DCL long FDECL(itimeout, (long));
- STATIC_DCL long FDECL(itimeout_incr, (long,int));
-diff -urN nethack-3.3.1.orig/src/pray.c nethack-3.3.1/src/pray.c
---- nethack-3.3.1.orig/src/pray.c Tue Jul 4 03:39:25 2000
-+++ nethack-3.3.1/src/pray.c Sun Dec 30 12:58:40 2001
-@@ -917,7 +917,7 @@
- angrygods(g_align);
- }
-
--static NEARDATA const char sacrifice_types[] = { FOOD_CLASS, AMULET_CLASS, 0 };
-+static const char sacrifice_types[] = { FOOD_CLASS, AMULET_CLASS, 0 };
-
- STATIC_OVL void
- consume_offering(otmp)
-diff -urN nethack-3.3.1.orig/src/read.c nethack-3.3.1/src/read.c
---- nethack-3.3.1.orig/src/read.c Sun Jul 23 00:04:06 2000
-+++ nethack-3.3.1/src/read.c Sun Dec 30 12:58:40 2001
-@@ -26,7 +26,7 @@
-
- boolean known;
-
--static NEARDATA const char readable[] =
-+static const char readable[] =
- { ALL_CLASSES, SCROLL_CLASS, SPBOOK_CLASS, 0 };
- static const char all_count[] = { ALLOW_COUNT, ALL_CLASSES, 0 };
-
-diff -urN nethack-3.3.1.orig/src/restore.c nethack-3.3.1/src/restore.c
---- nethack-3.3.1.orig/src/restore.c Thu Aug 3 23:12:48 2000
-+++ nethack-3.3.1/src/restore.c Sun Dec 30 12:58:40 2001
-@@ -58,8 +58,8 @@
- #include "quest.h"
-
- boolean restoring = FALSE;
--static NEARDATA struct fruit *oldfruit;
--static NEARDATA long omoves;
-+static struct fruit *oldfruit;
-+static long omoves;
-
- #define Is_IceBox(o) ((o)->otyp == ICE_BOX ? TRUE : FALSE)
-
-@@ -939,11 +939,11 @@
- #ifndef ZEROCOMP_BUFSIZ
- #define ZEROCOMP_BUFSIZ BUFSZ
- #endif
--static NEARDATA unsigned char inbuf[ZEROCOMP_BUFSIZ];
--static NEARDATA unsigned short inbufp = 0;
--static NEARDATA unsigned short inbufsz = 0;
--static NEARDATA short inrunlength = -1;
--static NEARDATA int mreadfd;
-+static unsigned char inbuf[ZEROCOMP_BUFSIZ];
-+static unsigned short inbufp = 0;
-+static unsigned short inbufsz = 0;
-+static short inrunlength = -1;
-+static int mreadfd;
-
- static int
- mgetc()
-diff -urN nethack-3.3.1.orig/src/role.c nethack-3.3.1/src/role.c
---- nethack-3.3.1.orig/src/role.c Mon May 22 19:31:42 2000
-+++ nethack-3.3.1/src/role.c Sun Dec 30 12:58:40 2001
-@@ -503,7 +503,7 @@
- };
-
- /* used by str2XXX() */
--static char NEARDATA randomstr[] = "random";
-+static char randomstr[] = "random";
-
-
- boolean
-diff -urN nethack-3.3.1.orig/src/save.c nethack-3.3.1/src/save.c
---- nethack-3.3.1.orig/src/save.c Thu Aug 3 23:12:48 2000
-+++ nethack-3.3.1/src/save.c Sun Dec 30 12:58:40 2001
-@@ -545,11 +545,11 @@
- #ifndef ZEROCOMP_BUFSIZ
- # define ZEROCOMP_BUFSIZ BUFSZ
- #endif
--static NEARDATA unsigned char outbuf[ZEROCOMP_BUFSIZ];
--static NEARDATA unsigned short outbufp = 0;
--static NEARDATA short outrunlength = -1;
--static NEARDATA int bwritefd;
--static NEARDATA boolean compressing = FALSE;
-+static unsigned char outbuf[ZEROCOMP_BUFSIZ];
-+static unsigned short outbufp = 0;
-+static short outrunlength = -1;
-+static int bwritefd;
-+static boolean compressing = FALSE;
-
- /*dbg()
- {
-diff -urN nethack-3.3.1.orig/src/shk.c nethack-3.3.1/src/shk.c
---- nethack-3.3.1.orig/src/shk.c Sun Jul 16 03:49:54 2000
-+++ nethack-3.3.1/src/shk.c Sun Dec 30 12:58:40 2001
-@@ -25,7 +25,7 @@
-
- extern const struct shclass shtypes[]; /* defined in shknam.c */
-
--STATIC_VAR NEARDATA long int followmsg; /* last time of follow message */
-+STATIC_VAR long int followmsg; /* last time of follow message */
-
- STATIC_DCL void FDECL(setpaid, (struct monst *));
- STATIC_DCL long FDECL(addupbill, (struct monst *));
-diff -urN nethack-3.3.1.orig/src/sp_lev.c nethack-3.3.1/src/sp_lev.c
---- nethack-3.3.1.orig/src/sp_lev.c Sat Aug 5 01:43:26 2000
-+++ nethack-3.3.1/src/sp_lev.c Sun Dec 30 12:58:40 2001
-@@ -65,14 +65,14 @@
- #define NewTab(type, size) (type **) alloc(sizeof(type *) * (unsigned)size)
- #define Free(ptr) if(ptr) free((genericptr_t) (ptr))
-
--static NEARDATA walk walklist[50];
-+static walk walklist[50];
- extern int min_rx, max_rx, min_ry, max_ry; /* from mkmap.c */
-
- static char Map[COLNO][ROWNO];
- static char robjects[10], rloc_x[10], rloc_y[10], rmonst[10];
- static aligntyp ralign[3] = { AM_CHAOTIC, AM_NEUTRAL, AM_LAWFUL };
--static NEARDATA xchar xstart, ystart;
--static NEARDATA char xsize, ysize;
-+static xchar xstart, ystart;
-+static char xsize, ysize;
-
- STATIC_DCL void FDECL(set_wall_property, (XCHAR_P,XCHAR_P,XCHAR_P,XCHAR_P,int));
- STATIC_DCL int NDECL(rnddoor);
-diff -urN nethack-3.3.1.orig/src/spell.c nethack-3.3.1/src/spell.c
---- nethack-3.3.1.orig/src/spell.c Wed Feb 16 22:50:45 2000
-+++ nethack-3.3.1/src/spell.c Sun Dec 30 12:58:41 2001
-@@ -4,8 +4,8 @@
-
- #include "hack.h"
-
--static NEARDATA schar delay; /* moves left for this spell */
--static NEARDATA struct obj *book; /* last/current book being xscribed */
-+static schar delay; /* moves left for this spell */
-+static struct obj *book; /* last/current book being xscribed */
-
- /* spellmenu arguments; 0 thru n-1 used as spl_book[] index when swapping */
- #define SPELLMENU_CAST (-2)
-diff -urN nethack-3.3.1.orig/src/steed.c nethack-3.3.1/src/steed.c
---- nethack-3.3.1.orig/src/steed.c Thu Aug 3 22:00:42 2000
-+++ nethack-3.3.1/src/steed.c Sun Dec 30 12:58:41 2001
-@@ -8,7 +8,7 @@
- #ifdef STEED
-
- /* Monsters that might be ridden */
--static NEARDATA const char steeds[] = {
-+static const char steeds[] = {
- S_QUADRUPED, S_UNICORN, S_ANGEL, S_CENTAUR, S_DRAGON, S_JABBERWOCK, '\0'
- };
-
-diff -urN nethack-3.3.1.orig/src/timeout.c nethack-3.3.1/src/timeout.c
---- nethack-3.3.1.orig/src/timeout.c Sun Jul 16 03:15:53 2000
-+++ nethack-3.3.1/src/timeout.c Sun Dec 30 12:58:41 2001
-@@ -16,7 +16,7 @@
- #ifdef OVLB
-
- /* He is being petrified - dialogue by inmet!tower */
--static NEARDATA const char *stoned_texts[] = {
-+static const char *stoned_texts[] = {
- "You are slowing down.", /* 5 */
- "Your limbs are stiffening.", /* 4 */
- "Your limbs have turned to stone.", /* 3 */
-@@ -39,7 +39,7 @@
- }
-
- /* He is getting sicker and sicker prior to vomiting */
--static NEARDATA const char *vomiting_texts[] = {
-+static const char *vomiting_texts[] = {
- "are feeling mildly nauseous.", /* 14 */
- "feel slightly confused.", /* 11 */
- "can't seem to think straight.", /* 8 */
-@@ -71,7 +71,7 @@
- exercise(A_CON, FALSE);
- }
-
--static NEARDATA const char *choke_texts[] = {
-+static const char *choke_texts[] = {
- "You find it hard to breathe.",
- "You're gasping for air.",
- "You can no longer breathe.",
-@@ -79,7 +79,7 @@
- "You suffocate."
- };
-
--static NEARDATA const char *choke_texts2[] = {
-+static const char *choke_texts2[] = {
- "Your %s is becoming constricted.",
- "Your blood is having trouble reaching your brain.",
- "The pressure on your %s increases.",
-@@ -107,7 +107,7 @@
- exercise(A_STR, FALSE);
- }
-
--static NEARDATA const char *slime_texts[] = {
-+static const char *slime_texts[] = {
- "You are turning a little %s.", /* 5 */
- "Your limbs are getting oozy.", /* 4 */
- "Your skin begins to peel away.", /* 3 */
-diff -urN nethack-3.3.1.orig/src/topten.c nethack-3.3.1/src/topten.c
---- nethack-3.3.1.orig/src/topten.c Tue May 23 23:44:55 2000
-+++ nethack-3.3.1/src/topten.c Sun Dec 30 12:58:41 2001
-@@ -33,9 +33,9 @@
- #define NAMSZ 10
- #define DTHSZ 60
- #define ROLESZ 3
--#define PERSMAX 3 /* entries per name/uid per char. allowed */
-+#define PERSMAX 10 /* entries per name/uid per char. allowed */
- #define POINTSMIN 1 /* must be > 0 */
--#define ENTRYMAX 100 /* must be >= 10 */
-+#define ENTRYMAX 1000 /* must be >= 10 */
-
- #if !defined(MICRO) && !defined(MAC)
- #define PERS_IS_UID /* delete for PERSMAX per name; now per uid */
-@@ -76,7 +76,7 @@
- #endif
-
- /* must fit with end.c; used in rip.c */
--NEARDATA const char *killed_by_prefix[] = {
-+const char *killed_by_prefix[] = {
- "killed by ", "choked on ", "poisoned by ", "", "drowned in ",
- "", "dissolved in ", "crushed to death by ", "petrified by ",
- "turned to slime by ", "", "", "", "", "", ""
-diff -urN nethack-3.3.1.orig/src/track.c nethack-3.3.1/src/track.c
---- nethack-3.3.1.orig/src/track.c Thu Oct 28 03:45:31 1999
-+++ nethack-3.3.1/src/track.c Sun Dec 30 12:58:41 2001
-@@ -7,8 +7,8 @@
-
- #define UTSZ 50
-
--STATIC_VAR NEARDATA int utcnt, utpnt;
--STATIC_VAR NEARDATA coord utrack[UTSZ];
-+STATIC_VAR int utcnt, utpnt;
-+STATIC_VAR coord utrack[UTSZ];
-
- #ifdef OVLB
-
-diff -urN nethack-3.3.1.orig/src/trap.c nethack-3.3.1/src/trap.c
---- nethack-3.3.1.orig/src/trap.c Sat Aug 5 01:43:52 2000
-+++ nethack-3.3.1/src/trap.c Sun Dec 30 12:58:41 2001
-@@ -113,8 +113,8 @@
- boolean print;
- struct monst *victim;
- {
-- static NEARDATA const char *action[] = { "smoulder", "rust", "rot", "corrode" };
-- static NEARDATA const char *msg[] = { "burnt", "rusted", "rotten", "corroded" };
-+ static const char *action[] = { "smoulder", "rust", "rot", "corrode" };
-+ static const char *msg[] = { "burnt", "rusted", "rotten", "corroded" };
- boolean vulnerable = FALSE;
- boolean plural;
- boolean grprot = FALSE;
-@@ -2500,7 +2500,7 @@
- }
-
- /* getobj will filter down to cans of grease and known potions of oil */
--static NEARDATA const char oil[] = { ALL_CLASSES, TOOL_CLASS, POTION_CLASS, 0 };
-+static const char oil[] = { ALL_CLASSES, TOOL_CLASS, POTION_CLASS, 0 };
-
- /* it may not make much sense to use grease on floor boards, but so what? */
- STATIC_OVL int
-diff -urN nethack-3.3.1.orig/src/u_init.c nethack-3.3.1/src/u_init.c
---- nethack-3.3.1.orig/src/u_init.c Sat Jul 22 20:39:06 2000
-+++ nethack-3.3.1/src/u_init.c Sun Dec 30 12:58:41 2001
-@@ -904,10 +904,10 @@
- }
- obj = mksobj(otyp, TRUE, FALSE);
- } else { /* UNDEF_TYP */
-- static NEARDATA short nocreate = STRANGE_OBJECT;
-- static NEARDATA short nocreate2 = STRANGE_OBJECT;
-- static NEARDATA short nocreate3 = STRANGE_OBJECT;
-- static NEARDATA short nocreate4 = STRANGE_OBJECT;
-+ static short nocreate = STRANGE_OBJECT;
-+ static short nocreate2 = STRANGE_OBJECT;
-+ static short nocreate3 = STRANGE_OBJECT;
-+ static short nocreate4 = STRANGE_OBJECT;
- /*
- * For random objects, do not create certain overly powerful
- * items: wand of wishing, ring of levitation, or the
-diff -urN nethack-3.3.1.orig/src/weapon.c nethack-3.3.1/src/weapon.c
---- nethack-3.3.1.orig/src/weapon.c Sun May 28 17:08:42 2000
-+++ nethack-3.3.1/src/weapon.c Sun Dec 30 12:58:41 2001
-@@ -28,13 +28,13 @@
-
- #ifndef OVLB
-
--STATIC_DCL NEARDATA const short skill_names_indices[];
--STATIC_DCL NEARDATA const char *odd_skill_names[];
--STATIC_DCL NEARDATA const char *barehands_or_martial[];
-+STATIC_DCL const short skill_names_indices[];
-+STATIC_DCL const char *odd_skill_names[];
-+STATIC_DCL const char *barehands_or_martial[];
-
- #else /* OVLB */
-
--STATIC_VAR NEARDATA const short skill_names_indices[P_NUM_SKILLS] = {
-+STATIC_VAR const short skill_names_indices[P_NUM_SKILLS] = {
- 0, DAGGER, KNIFE, AXE,
- PICK_AXE, SHORT_SWORD, BROADSWORD, LONG_SWORD,
- TWO_HANDED_SWORD, SCIMITAR, PN_SABER, CLUB,
-@@ -54,7 +54,7 @@
- };
-
- /* note: entry [0] isn't used */
--STATIC_VAR NEARDATA const char *odd_skill_names[] = {
-+STATIC_VAR const char *odd_skill_names[] = {
- "no skill",
- "bare hands", /* use barehands_or_martial[] instead */
- "two weapon combat",
-@@ -72,7 +72,7 @@
- "matter spells",
- };
- /* indexed vis `is_martial() */
--STATIC_VAR NEARDATA const char *barehands_or_martial[] = {
-+STATIC_VAR const char *barehands_or_martial[] = {
- "bare handed combat", "martial arts"
- };
-
-@@ -109,7 +109,7 @@
- odd_skill_names[-skill_names_indices[type]])
-
- #ifdef OVLB
--static NEARDATA const char kebabable[] = {
-+static const char kebabable[] = {
- S_XORN, S_DRAGON, S_JABBERWOCK, S_NAGA, S_GIANT, '\0'
- };
-
-@@ -340,7 +340,7 @@
- return (struct obj *)0;
- }
-
--static NEARDATA const int rwep[] =
-+static const int rwep[] =
- { DWARVISH_SPEAR, SILVER_SPEAR, ELVEN_SPEAR, SPEAR, ORCISH_SPEAR,
- JAVELIN, SHURIKEN, YA, SILVER_ARROW, ELVEN_ARROW, ARROW,
- ORCISH_ARROW, CROSSBOW_BOLT, SILVER_DAGGER, ELVEN_DAGGER, DAGGER,
-@@ -349,7 +349,7 @@
- /* note: CREAM_PIE should NOT be #ifdef KOPS */
- };
-
--static NEARDATA const int pwep[] =
-+static const int pwep[] =
- { HALBERD, BARDICHE, SPETUM, BILL_GUISARME, VOULGE, RANSEUR, GUISARME,
- GLAIVE, LUCERN_HAMMER, BEC_DE_CORBIN, FAUCHARD, PARTISAN, LANCE
- };
-@@ -467,7 +467,7 @@
- }
-
- /* Weapons in order of preference */
--static NEARDATA short hwep[] = {
-+static short hwep[] = {
- CORPSE, /* cockatrice corpse */
- TSURUGI, RUNESWORD, DWARVISH_MATTOCK, TWO_HANDED_SWORD, BATTLE_AXE,
- KATANA, UNICORN_HORN, CRYSKNIFE, TRIDENT, LONG_SWORD,
-diff -urN nethack-3.3.1.orig/src/wield.c nethack-3.3.1/src/wield.c
---- nethack-3.3.1.orig/src/wield.c Sat Jul 15 19:22:32 2000
-+++ nethack-3.3.1/src/wield.c Sun Dec 30 12:58:41 2001
-@@ -217,11 +217,11 @@
-
- /*** Commands to change particular slot(s) ***/
-
--static NEARDATA const char wield_objs[] =
-+static const char wield_objs[] =
- { ALL_CLASSES, ALLOW_NONE, WEAPON_CLASS, TOOL_CLASS, 0 };
--static NEARDATA const char ready_objs[] =
-+static const char ready_objs[] =
- { ALL_CLASSES, ALLOW_NONE, WEAPON_CLASS, 0 };
--static NEARDATA const char bullets[] = /* (note: different from dothrow.c) */
-+static const char bullets[] = /* (note: different from dothrow.c) */
- { ALL_CLASSES, ALLOW_NONE, GEM_CLASS, WEAPON_CLASS, 0 };
-
- int
-diff -urN nethack-3.3.1.orig/src/windows.c nethack-3.3.1/src/windows.c
---- nethack-3.3.1.orig/src/windows.c Mon May 8 22:56:52 2000
-+++ nethack-3.3.1/src/windows.c Sun Dec 30 12:58:41 2001
-@@ -40,7 +40,7 @@
-
- STATIC_DCL void FDECL(def_raw_print, (const char *s));
-
--NEARDATA struct window_procs windowprocs;
-+struct window_procs windowprocs;
-
- static
- struct win_choices {
-diff -urN nethack-3.3.1.orig/src/wizard.c nethack-3.3.1/src/wizard.c
---- nethack-3.3.1.orig/src/wizard.c Sun Jul 16 03:51:14 2000
-+++ nethack-3.3.1/src/wizard.c Sun Dec 30 12:58:41 2001
-@@ -20,7 +20,7 @@
- STATIC_DCL long FDECL(target_on, (int,struct monst *));
- STATIC_DCL long FDECL(strategy, (struct monst *));
-
--static NEARDATA const int nasties[] = {
-+static const int nasties[] = {
- PM_COCKATRICE, PM_ETTIN, PM_STALKER, PM_MINOTAUR, PM_RED_DRAGON,
- PM_BLACK_DRAGON, PM_GREEN_DRAGON, PM_OWLBEAR, PM_PURPLE_WORM,
- PM_ROCK_TROLL, PM_XAN, PM_GREMLIN, PM_UMBER_HULK, PM_VAMPIRE_LORD,
-@@ -32,7 +32,7 @@
- PM_DISENCHANTER
- };
-
--static NEARDATA const unsigned wizapp[] = {
-+static const unsigned wizapp[] = {
- PM_HUMAN, PM_WATER_DEMON, PM_VAMPIRE,
- PM_RED_DRAGON, PM_TROLL, PM_UMBER_HULK,
- PM_XORN, PM_XAN, PM_COCKATRICE,
-diff -urN nethack-3.3.1.orig/src/write.c nethack-3.3.1/src/write.c
---- nethack-3.3.1.orig/src/write.c Sat Apr 22 04:31:58 2000
-+++ nethack-3.3.1/src/write.c Sun Dec 30 12:58:41 2001
-@@ -64,7 +64,7 @@
- return(1000);
- }
-
--static NEARDATA const char write_on[] = { SCROLL_CLASS, SPBOOK_CLASS, 0 };
-+static const char write_on[] = { SCROLL_CLASS, SPBOOK_CLASS, 0 };
-
- int
- dowrite(pen)
-diff -urN nethack-3.3.1.orig/src/zap.c nethack-3.3.1/src/zap.c
---- nethack-3.3.1.orig/src/zap.c Sat Aug 5 02:23:29 2000
-+++ nethack-3.3.1/src/zap.c Sun Dec 30 12:58:41 2001
-@@ -12,8 +12,8 @@
- #define MAGIC_COOKIE 1000
-
- #ifdef OVLB
--static NEARDATA boolean obj_zapped;
--static NEARDATA int poly_zapped;
-+static boolean obj_zapped;
-+static int poly_zapped;
- #endif
-
- extern boolean notonhead; /* for long worms */
-@@ -1642,7 +1642,7 @@
- useup(otmp);
- }
-
--static NEARDATA const char zap_syms[] = { WAND_CLASS, 0 };
-+static const char zap_syms[] = { WAND_CLASS, 0 };
-
- int
- dozap()
-diff -urN nethack-3.3.1.orig/sys/amiga/wbgads.c nethack-3.3.1/sys/amiga/wbgads.c
---- nethack-3.3.1.orig/sys/amiga/wbgads.c Sat Apr 4 04:21:22 1998
-+++ nethack-3.3.1/sys/amiga/wbgads.c Sun Dec 30 12:58:41 2001
-@@ -6,7 +6,7 @@
- static void GadSpaceOut(struct OPTGAD *gads , int row , int maxx);
- static void CompSpaceOut(struct OPTGAD *gads , int row , int maxx);
-
--extern NEARDATA struct flag flags;
-+extern struct flag flags;
-
- #define INITX 7
- #define GADBORD 3
-diff -urN nethack-3.3.1.orig/sys/amiga/winext.h nethack-3.3.1/sys/amiga/winext.h
---- nethack-3.3.1.orig/sys/amiga/winext.h Thu Mar 2 19:35:47 2000
-+++ nethack-3.3.1/sys/amiga/winext.h Sun Dec 30 12:58:41 2001
-@@ -37,10 +37,10 @@
- * extern const char *roles[];
- * extern struct Library *ConsoleDevice;
- * extern char toplines[ TBUFSZ ];
-- * extern NEARDATA winid WIN_MESSAGE;
-- * extern NEARDATA winid WIN_MAP;
-- * extern NEARDATA winid WIN_STATUS;
-- * extern NEARDATA winid WIN_INVEN;
-+ * extern winid WIN_MESSAGE;
-+ * extern winid WIN_MAP;
-+ * extern winid WIN_STATUS;
-+ * extern winid WIN_INVEN;
- * extern winid WIN_OVER;
- * extern struct GfxBase *GfxBase;
- * extern struct Library *DiskfontBase;
-diff -urN nethack-3.3.1.orig/sys/share/ioctl.c nethack-3.3.1/sys/share/ioctl.c
---- nethack-3.3.1.orig/sys/share/ioctl.c Sat Jan 15 22:32:34 2000
-+++ nethack-3.3.1/sys/share/ioctl.c Sun Dec 30 12:58:41 2001
-@@ -76,6 +76,10 @@
- extern void NDECL(linux_mapon);
- extern void NDECL(linux_mapoff);
- #endif
-+#ifdef __linux__
-+extern void NDECL(linux_mapon);
-+extern void NDECL(linux_mapoff);
-+#endif
-
- #ifdef AUX
- void
-@@ -163,6 +167,9 @@
- # ifdef __linux__
- linux_mapon();
- # endif
-+# ifdef __linux__
-+ linux_mapon();
-+# endif
- (void) signal(SIGTSTP, SIG_DFL);
- # ifdef AUX
- ( void ) kill ( 0 , SIGSTOP ) ;
-@@ -174,6 +181,9 @@
- # endif
- # ifdef __linux__
- linux_mapoff();
-+# endif
-+# ifdef __linux__
-+ linux_mapoff();
- # endif
- resume_nhwindows();
- } else {
-diff -urN nethack-3.3.1.orig/sys/share/unixtty.c nethack-3.3.1/sys/share/unixtty.c
---- nethack-3.3.1.orig/sys/share/unixtty.c Sat Aug 5 02:28:39 2000
-+++ nethack-3.3.1/sys/share/unixtty.c Sun Dec 30 13:17:27 2001
-@@ -426,8 +426,7 @@
- # endif
- }
- #endif /* __linux__ */
--
--
-+
- #ifndef __begui__ /* the Be GUI will define its own error proc */
- /* fatal error */
- /*VARARGS1*/
-diff -urN nethack-3.3.1.orig/sys/unix/Makefile.doc nethack-3.3.1/sys/unix/Makefile.doc
---- nethack-3.3.1.orig/sys/unix/Makefile.doc Fri Jan 14 21:49:48 2000
-+++ nethack-3.3.1/sys/unix/Makefile.doc Sun Dec 30 14:36:50 2001
-@@ -34,7 +34,7 @@
-
-
- GAME = nethack
--MANDIR = /usr/man/man6
-+MANDIR = /usr/share/man/man6
- MANEXT = 6
-
- # manual installation for most BSD-style systems
-@@ -51,11 +51,14 @@
- # DLBMANCREATE = nroff -man dlb.6 >
-
- manpages:
-- -$(GAMEMANCREATE) $(MANDIR)/$(GAME).$(MANEXT)
-- -$(LEVMANCREATE) $(MANDIR)/lev_comp.$(MANEXT)
-- -$(DGNMANCREATE) $(MANDIR)/dgn_comp.$(MANEXT)
-- -$(RCVRMANCREATE) $(MANDIR)/recover.$(MANEXT)
-- -$(DLBMANCREATE) $(MANDIR)/dlb.$(MANEXT)
-+
-+ -mkdir -p $(DESTDIR)/$(MANDIR)
-+
-+ -$(GAMEMANCREATE) $(DESTDIR)/$(MANDIR)/$(GAME).$(MANEXT)
-+ -$(LEVMANCREATE) $(DESTDIR)/$(MANDIR)/lev_comp.$(MANEXT)
-+ -$(DGNMANCREATE) $(DESTDIR)/$(MANDIR)/dgn_comp.$(MANEXT)
-+ -$(RCVRMANCREATE) $(DESTDIR)/$(MANDIR)/recover.$(MANEXT)
-+ -$(DLBMANCREATE) $(DESTDIR)/$(MANDIR)/dlb.$(MANEXT)
-
- # manual creation for distribution
- DISTRIB = Guidebook.txt nethack.txt lev_comp.txt dgn_comp.txt recover.txt dlb.txt
-diff -urN nethack-3.3.1.orig/sys/unix/Makefile.src nethack-3.3.1/sys/unix/Makefile.src
---- nethack-3.3.1.orig/sys/unix/Makefile.src Sat Aug 5 12:52:57 2000
-+++ nethack-3.3.1/sys/unix/Makefile.src Sun Dec 30 13:47:05 2001
-@@ -24,6 +24,8 @@
- # 'SysBe' -- BeOS
- SYSTEM = Sysunix
-
-+QTDIR = /usr/X11R6/
-+
- #
- # Make sure that your bourne shell is specified here, as you have to spawn
- # some of the commands (eg. depend) in bourne shell for them to work.
-@@ -58,7 +60,7 @@
- # if you get setcgtty() warnings during execution, you are feeding gcc
- # a non-ANSI <sys/ioctl.h> -- either run fixincludes on it or use
- # -traditional in CFLAGS
--# CC = gcc
-+CC = gcc
- #
- # For Bull DPX/2 systems at B.O.S. 2.0 or higher use the following:
- #
-@@ -117,8 +119,11 @@
-
- # flags for Linux
- # compile normally
--# CFLAGS = -O2 -fomit-frame-pointer -I../include -I/usr/X11/include
--# LFLAGS = -L/usr/X11/lib
-+
-+OPTFLAGS = -O2 -fomit-frame-pointer
-+CFLAGS = $(OPTFLAGS) -I../include -I/usr/X11R6/include -I/usr/include/ncurses
-+LFLAGS = -s -L/usr/X11R6/lib
-+
- # OR compile backwards compatible a.out format
- # CFLAGS = -O2 -b i486-linuxaout -fomit-frame-pointer -I../include -I/usr/X11/include
- # LFLAGS = -b i486-linuxaout -L/usr/X11/lib
-@@ -150,7 +155,7 @@
- # The Qt and Be window systems are written in C++, while the rest of
- # NetHack is standard C. If using Qt, uncomment the LD line here to get
- # the C++ libraries linked in.
--CXXFLAGS = $(CFLAGS) -I. -I$(QTDIR)/include
-+CXXFLAGS = $(CFLAGS) -I. -I$(QTDIR)/include -I$(QTDIR)/include/qt
- CXX=g++
- #LD=g++
-
-@@ -203,8 +208,8 @@
-
- #
- #
--WINSRC = $(WINTTYSRC)
--WINOBJ = $(WINTTYOBJ)
-+WINSRC = $(WINTTYSRC) $(WINQTSRC)
-+WINOBJ = $(WINTTYOBJ) $(WINQTOBJ)
-
- # on some systems the termcap library is in -ltermcap or -lcurses
- # on 386 Xenix, the -ltermlib tputs() seems not to work; use -lcurses instead
-@@ -219,15 +224,15 @@
- # WINTTYLIB = -ltermcap
- # WINTTYLIB = -lcurses
- # WINTTYLIB = -lcurses16
--# WINTTYLIB = -lncurses
--WINTTYLIB = -ltermlib
-+WINTTYLIB = -lncurses
-+# WINTTYLIB = -ltermlib
- #
- # libraries for X11
- # If USE_XPM is defined in config.h, you will also need -lXpm here.
--WINX11LIB = -lXaw -lXmu -lXext -lXt -lX11
-+# WINX11LIB = -lXaw -lXmu -lXext -lXt -lX11
- # WINX11LIB = -lXaw -lXmu -lXt -lX11
- # WINX11LIB = -lXaw -lXmu -lXext -lXt -lXpm -lX11 -lm
--# WINX11LIB = -lXaw -lXmu -lXpm -lXext -lXt -lX11 -lSM -lICE -lm # BSD/OS 2.0
-+WINX11LIB = -lXaw -lXmu -lXpm -lXext -lXt -lX11 -lSM -lICE -lm # BSD/OS 2.0
- #
- # libraries for Qt
- WINQTLIB = -L$(QTDIR)/lib -lqt
-@@ -244,7 +249,7 @@
- # libraries for BeOS
- WINBELIB = -lbe
-
--WINLIB = $(WINTTYLIB)
-+WINLIB = $(WINTTYLIB) $(WINQTLIB)
-
- # any other strange libraries your system needs (for Sysunix only -- the more
- # specialized targets should already be right)
-diff -urN nethack-3.3.1.orig/sys/unix/Makefile.top nethack-3.3.1/sys/unix/Makefile.top
---- nethack-3.3.1.orig/sys/unix/Makefile.top Tue Jul 4 02:42:05 2000
-+++ nethack-3.3.1/sys/unix/Makefile.top Sun Dec 30 15:45:33 2001
-@@ -35,14 +35,14 @@
- # therefore there should not be anything in GAMEDIR that you want to keep
- # (if there is, you'll have to do the installation by hand or modify the
- # instructions)
--GAMEDIR = $(PREFIX)/games/lib/$(GAME)dir
--VARDIR = $(GAMEDIR)
-+GAMEDIR = /usr/share/games/$(GAME)
-+VARDIR = /var/games/$(GAME)
- SHELLDIR = $(PREFIX)/games
-
- # per discussion in Install.X11 and Install.Qt
--VARDATND =
-+# VARDATND =
- # VARDATND = x11tiles pet_mark.xbm
--# VARDATND = x11tiles pet_mark.xbm rip.xpm
-+VARDATND = x11tiles pet_mark.xbm rip.xpm
- # for Atari/Gem
- # VARDATND = nh16.img title.img GEM_RSC.RSC
- # for BeOS
-@@ -165,34 +165,22 @@
- -e '}' \
- -e '$$s/.*/nodlb/p' < dat/options` ; \
- $(MAKE) dofiles-$${target-nodlb}
-- cp src/$(GAME) $(GAMEDIR)
-- -rm -f $(SHELLDIR)/$(GAME)
-+ cp src/$(GAME) $(DESTDIR)/$(GAMEDIR)
-+ -rm -f $(DESTDIR)/$(SHELLDIR)/$(GAME)
- sed -e 's;/usr/games/lib/nethackdir;$(GAMEDIR);' \
- -e 's;HACKDIR/nethack;HACKDIR/$(GAME);' \
- < sys/unix/nethack.sh \
-- > $(SHELLDIR)/$(GAME)
-+ > $(DESTDIR)/$(SHELLDIR)/$(GAME)
- # set up their permissions
-- -( cd $(GAMEDIR) ; $(CHOWN) $(GAMEUID) $(GAME) ; \
-- $(CHGRP) $(GAMEGRP) $(GAME) )
-- chmod $(GAMEPERM) $(GAMEDIR)/$(GAME)
-- -$(CHOWN) $(GAMEUID) $(SHELLDIR)/$(GAME)
-- $(CHGRP) $(GAMEGRP) $(SHELLDIR)/$(GAME)
-- chmod $(EXEPERM) $(SHELLDIR)/$(GAME)
-
- dofiles-dlb: check-dlb
-- ( cd dat ; cp nhdat $(DATNODLB) $(GAMEDIR) )
-+ ( cd dat ; cp nhdat $(DATNODLB) $(DESTDIR)/$(GAMEDIR) )
- # set up their permissions
-- -( cd $(GAMEDIR) ; $(CHOWN) $(GAMEUID) nhdat $(DATNODLB) ; \
-- $(CHGRP) $(GAMEGRP) nhdat $(DATNODLB) ; \
-- chmod $(FILEPERM) nhdat $(DATNODLB) )
-
- dofiles-nodlb:
- # copy over the game files
-- ( cd dat ; cp $(DAT) $(GAMEDIR) )
-+ ( cd dat ; cp $(DAT) $(DESTDIR)/$(GAMEDIR) )
- # set up their permissions
-- -( cd $(GAMEDIR) ; $(CHOWN) $(GAMEUID) $(DAT) ; \
-- $(CHGRP) $(GAMEGRP) $(DAT) ; \
-- chmod $(FILEPERM) $(DAT) )
-
- update: $(GAME) $(VARDAT) dungeon spec_levs
- # (don't yank the old version out from under people who're playing it)
-@@ -213,23 +201,14 @@
- install: $(GAME) $(VARDAT) dungeon spec_levs
- # set up the directories
- # not all mkdirs have -p; those that don't will create a -p directory
-- -mkdir -p $(SHELLDIR)
-- -rm -rf $(GAMEDIR) $(VARDIR)
-- -mkdir -p $(GAMEDIR) $(VARDIR) $(VARDIR)/save
-- -rmdir ./-p
-- -$(CHOWN) $(GAMEUID) $(GAMEDIR) $(VARDIR) $(VARDIR)/save
-- $(CHGRP) $(GAMEGRP) $(GAMEDIR) $(VARDIR) $(VARDIR)/save
-- chmod $(DIRPERM) $(GAMEDIR) $(VARDIR) $(VARDIR)/save
-+ -mkdir -p $(DESTDIR)/$(SHELLDIR)
-+ -rm -rf $(DESTDIR)/$(GAMEDIR) $(DESTDIR)/$(VARDIR)
-+ -mkdir -p $(DESTDIR)/$(GAMEDIR) $(DESTDIR)/$(VARDIR) $(DESTDIR)/$(VARDIR)/save
- # set up the game files
- ( $(MAKE) dofiles )
- # set up some additional files
-- touch $(VARDIR)/perm $(VARDIR)/record $(VARDIR)/logfile
-- -( cd $(VARDIR) ; $(CHOWN) $(GAMEUID) perm record logfile ; \
-- $(CHGRP) $(GAMEGRP) perm record logfile ; \
-- chmod $(FILEPERM) perm record logfile )
-+ touch $(DESTDIR)/$(VARDIR)/perm $(DESTDIR)/$(VARDIR)/record $(DESTDIR)/$(VARDIR)/logfile
- # and a reminder
-- @echo You may also want to reinstall the man pages via the doc Makefile.
--
-
- # 'make clean' removes all the .o files, but leaves around all the executables
- # and compiled data files
-diff -urN nethack-3.3.1.orig/sys/unix/Makefile.utl nethack-3.3.1/sys/unix/Makefile.utl
---- nethack-3.3.1.orig/sys/unix/Makefile.utl Mon Apr 17 15:36:44 2000
-+++ nethack-3.3.1/sys/unix/Makefile.utl Sun Dec 30 12:58:41 2001
-@@ -15,7 +15,7 @@
-
- # if you are using gcc as your compiler,
- # uncomment the CC definition below if it's not in your environment
--# CC = gcc
-+CC = gcc
- #
- # For Bull DPX/2 systems at B.O.S. 2.0 or higher use the following:
- #
-@@ -72,8 +72,9 @@
-
- # flags for Linux
- # compile normally
--# CFLAGS = -O2 -fomit-frame-pointer -I../include -I/usr/X11/include
--# LFLAGS = -L/usr/X11/lib
-+OPTFLAGS = -O2 -fomit-frame-pointer
-+CFLAGS = $(OPTFLAGS) -I../include -I/usr/X11R6/include
-+LFLAGS = -s -L/usr/X11R6/lib
- # OR compile backwards compatible a.out format
- # CFLAGS = -O2 -b i486-linuxaout -fomit-frame-pointer -I../include -I/usr/X11/include
- # LFLAGS = -b i486-linuxaout -L/usr/X11/lib
-@@ -89,19 +90,19 @@
- # flags for debugging:
- # CFLAGS = -g -I../include
-
--CFLAGS = -O -I../include
--LFLAGS =
-+# CFLAGS = -O -I../include
-+# LFLAGS =
-
- LIBS =
-
-
- # yacc/lex programs to use to generate *_comp.h, *_lex.c, and *_yacc.c.
- # if, instead of yacc/lex you have bison/flex, comment/uncomment the following.
--YACC = yacc
--LEX = lex
--# YACC = bison -y
-+# YACC = yacc
-+# LEX = lex
-+YACC = bison -y
- # YACC = byacc
--# LEX = flex
-+LEX = flex
-
- # these are the names of the output files from YACC/LEX. Under MS-DOS
- # and similar systems, they may differ
-diff -urN nethack-3.3.1.orig/sys/unix/unixmain.c nethack-3.3.1/sys/unix/unixmain.c
---- nethack-3.3.1.orig/sys/unix/unixmain.c Wed Aug 9 19:42:26 2000
-+++ nethack-3.3.1/sys/unix/unixmain.c Sun Dec 30 12:58:41 2001
-@@ -39,6 +39,11 @@
- extern void NDECL(init_linux_cons);
- #endif
-
-+#ifdef __linux__
-+extern void NDECL(check_linux_console);
-+extern void NDECL(init_linux_cons);
-+#endif
-+
- static void NDECL(wd_message);
- #ifdef WIZARD
- static boolean wiz_error_flag = FALSE;
-@@ -184,11 +189,11 @@
- (void) signal(SIGQUIT,SIG_IGN);
- (void) signal(SIGINT,SIG_IGN);
- if(!locknum)
-- Sprintf(lock, "%d%s", (int)getuid(), plname);
-+ Sprintf(lock, "/var/games/nethack/%d%s", (int)getuid(), plname);
- getlock();
- #ifdef WIZARD
- } else {
-- Sprintf(lock, "%d%s", (int)getuid(), plname);
-+ Sprintf(lock, "/var/games/nethack/%d%s", (int)getuid(), plname);
- getlock();
- }
- #endif /* WIZARD */
-diff -urN nethack-3.3.1.orig/sys/unix/unixunix.c nethack-3.3.1/sys/unix/unixunix.c
---- nethack-3.3.1.orig/sys/unix/unixunix.c Wed Aug 9 19:56:45 2000
-+++ nethack-3.3.1/sys/unix/unixunix.c Sun Dec 30 12:58:41 2001
-@@ -21,6 +21,10 @@
- extern void NDECL(linux_mapon);
- extern void NDECL(linux_mapoff);
- #endif
-+#ifdef __linux__
-+extern void NDECL(linux_mapon);
-+extern void NDECL(linux_mapoff);
-+#endif
-
- static struct stat buf, hbuf;
-
-@@ -195,14 +199,14 @@
- error("%s", "");
- }
-
-- regularize(lock);
-+ regularize(lock+23);
- set_levelfile_name(lock, 0);
-
- if(locknum) {
- if(locknum > 25) locknum = 25;
-
- do {
-- lock[0] = 'a' + i++;
-+ lock[23] = 'a' + i++;
- fq_lock = fqname(lock, LEVELPREFIX, 0);
-
- if((fd = open(fq_lock, 0)) == -1) {
-@@ -334,6 +338,9 @@
- #ifdef __linux__
- linux_mapon();
- #endif
-+#ifdef __linux__
-+ linux_mapon();
-+#endif
- if((f = fork()) == 0){ /* child */
- (void) setgid(getgid());
- (void) setuid(getuid());
-@@ -355,6 +362,9 @@
- #endif
- #ifdef __linux__
- linux_mapoff();
-+#endif
-+#ifdef __linux__
-+ linux_mapoff();
- #endif
- (void) signal(SIGINT, (SIG_RET_TYPE) done1);
- #ifdef WIZARD
-diff -urN nethack-3.3.1.orig/util/lev_main.c nethack-3.3.1/util/lev_main.c
---- nethack-3.3.1.orig/util/lev_main.c Sun Aug 6 18:46:36 2000
-+++ nethack-3.3.1/util/lev_main.c Sun Dec 30 12:58:41 2001
-@@ -1535,7 +1535,7 @@
- # ifdef TOS
- const char *hilites[CLR_MAX];
- # else
--char NEARDATA *hilites[CLR_MAX];
-+char *hilites[CLR_MAX];
- # endif
- # endif
- /* trap.c */
-diff -urN nethack-3.3.1.orig/util/makedefs.c nethack-3.3.1/util/makedefs.c
---- nethack-3.3.1.orig/util/makedefs.c Sat Jul 22 03:38:01 2000
-+++ nethack-3.3.1/util/makedefs.c Sun Dec 30 12:58:41 2001
-@@ -2128,7 +2128,7 @@
- #endif /* VISION_TABLES */
-
- #ifdef STRICT_REF_DEF
--NEARDATA struct flag flags;
-+struct flag flags;
- # ifdef ATTRIB_H
- struct attribs attrmax, attrmin;
- # endif
-diff -urN nethack-3.3.1.orig/win/tty/termcap.c nethack-3.3.1/win/tty/termcap.c
---- nethack-3.3.1.orig/win/tty/termcap.c Wed Aug 9 19:42:27 2000
-+++ nethack-3.3.1/win/tty/termcap.c Sun Dec 30 13:23:48 2001
-@@ -65,7 +65,7 @@
- # ifdef TOS
- const char *hilites[CLR_MAX]; /* terminal escapes for the various colors */
- # else
--char NEARDATA *hilites[CLR_MAX]; /* terminal escapes for the various colors */
-+char *hilites[CLR_MAX]; /* terminal escapes for the various colors */
- # endif
- #endif
-
-@@ -833,7 +833,7 @@
- #undef FALSE
- #define m_move curses_m_move /* Some curses.h decl m_move(), not used here */
-
--#include <curses.h>
-+#include <ncurses/curses.h>
-
- #ifndef LINUX
- extern char *tparm();