Difference between revisions of "Source:NetHack 3.6.0/include/ntconf.h"

From NetHackWiki
Jump to navigation Jump to search
(Created page with "__MIXEDSYNTAXHIGHLIGHT__ Below is the full text to '''ntconf.h''' from the source code of NetHack 3.6.0. To link to a particular line, write...")
 
 
Line 3: Line 3:
  
 
{{NGPL}}
 
{{NGPL}}
  <span id="line1">1.   /* NetHack 3.6 ntconf.h $NHDT-Date: 1447424077 2015/11/13 14:14:37 $  $NHDT-Branch: master $:$NHDT-Revision: 1.48 $ */</span>
+
  <span id="line1">1. /* NetHack 3.6 ntconf.h $NHDT-Date: 1447424077 2015/11/13 14:14:37 $  $NHDT-Branch: master $:$NHDT-Revision: 1.48 $ */</span>
  <span id="line2">2.   /* Copyright (c) NetHack PC Development Team 1993, 1994.  */</span>
+
  <span id="line2">2. /* Copyright (c) NetHack PC Development Team 1993, 1994.  */</span>
  <span id="line3">3.   /* NetHack may be freely redistributed.  See license for details. */</span>
+
  <span id="line3">3. /* NetHack may be freely redistributed.  See license for details. */</span>
  <span id="line4">4.   </span>
+
  <span id="line4">4. </span>
  <span id="line5">5.   #ifndef NTCONF_H</span>
+
  <span id="line5">5. #ifndef NTCONF_H</span>
  <span id="line6">6.   #define NTCONF_H</span>
+
  <span id="line6">6. #define NTCONF_H</span>
  <span id="line7">7.   </span>
+
  <span id="line7">7. </span>
  <span id="line8">8.   /* #define SHELL /* nt use of pcsys routines caused a hang */</span>
+
  <span id="line8">8. /* #define SHELL /* nt use of pcsys routines caused a hang */</span>
  <span id="line9">9.   </span>
+
  <span id="line9">9. </span>
  <span id="line10">10.   #define RANDOM    /* have Berkeley random(3) */</span>
+
  <span id="line10">10. #define RANDOM    /* have Berkeley random(3) */</span>
  <span id="line11">11.   #define TEXTCOLOR /* Color text */</span>
+
  <span id="line11">11. #define TEXTCOLOR /* Color text */</span>
  <span id="line12">12.   </span>
+
  <span id="line12">12. </span>
  <span id="line13">13.   #define EXEPATH              /* Allow .exe location to be used as HACKDIR */</span>
+
  <span id="line13">13. #define EXEPATH              /* Allow .exe location to be used as HACKDIR */</span>
  <span id="line14">14.   #define TRADITIONAL_GLYPHMAP /* Store glyph mappings at level change time */</span>
+
  <span id="line14">14. #define TRADITIONAL_GLYPHMAP /* Store glyph mappings at level change time */</span>
  <span id="line15">15.   </span>
+
  <span id="line15">15. </span>
  <span id="line16">16.   #define LAN_FEATURES /* Include code for lan-aware features. Untested in \</span>
+
  <span id="line16">16. #define LAN_FEATURES /* Include code for lan-aware features. Untested in \</span>
  <span id="line17">17.                           3.4.0*/</span>
+
  <span id="line17">17.                         3.4.0*/</span>
  <span id="line18">18.   </span>
+
  <span id="line18">18. </span>
  <span id="line19">19.   #define PC_LOCKING /* Prevent overwrites of aborted or in-progress games */</span>
+
  <span id="line19">19. #define PC_LOCKING /* Prevent overwrites of aborted or in-progress games */</span>
  <span id="line20">20.   /* without first receiving confirmation. */</span>
+
  <span id="line20">20. /* without first receiving confirmation. */</span>
  <span id="line21">21.   </span>
+
  <span id="line21">21. </span>
  <span id="line22">22.   #define HOLD_LOCKFILE_OPEN /* Keep an exclusive lock on the .0 file */</span>
+
  <span id="line22">22. #define HOLD_LOCKFILE_OPEN /* Keep an exclusive lock on the .0 file */</span>
  <span id="line23">23.   </span>
+
  <span id="line23">23. </span>
  <span id="line24">24.   #define SELF_RECOVER /* Allow the game itself to recover from an aborted \</span>
+
  <span id="line24">24. #define SELF_RECOVER /* Allow the game itself to recover from an aborted \</span>
  <span id="line25">25.                           game */</span>
+
  <span id="line25">25.                         game */</span>
  <span id="line26">26.   </span>
+
  <span id="line26">26. </span>
  <span id="line27">27.   #define SYSCF                /* Use a global configuration */</span>
+
  <span id="line27">27. #define SYSCF                /* Use a global configuration */</span>
  <span id="line28">28.   #define SYSCF_FILE "sysconf" /* Use a file to hold the SYSCF configuration \</span>
+
  <span id="line28">28. #define SYSCF_FILE "sysconf" /* Use a file to hold the SYSCF configuration \</span>
  <span id="line29">29.                                   */</span>
+
  <span id="line29">29.                                 */</span>
  <span id="line30">30.   </span>
+
  <span id="line30">30. </span>
  <span id="line31">31.   #define USER_SOUNDS</span>
+
  <span id="line31">31. #define USER_SOUNDS</span>
  <span id="line32">32.   </span>
+
  <span id="line32">32. </span>
  <span id="line33">33.   /*#define CHANGE_COLOR*/ /* allow palette changes */</span>
+
  <span id="line33">33. /*#define CHANGE_COLOR*/ /* allow palette changes */</span>
  <span id="line34">34.   #define SELECTSAVED /* Provide menu of saved games to choose from at start \</span>
+
  <span id="line34">34. #define SELECTSAVED /* Provide menu of saved games to choose from at start \</span>
  <span id="line35">35.                         */</span>
+
  <span id="line35">35.                       */</span>
  <span id="line36">36.   </span>
+
  <span id="line36">36. </span>
  <span id="line37">37.   /*</span>
+
  <span id="line37">37. /*</span>
  <span id="line38">38.   * -----------------------------------------------------------------</span>
+
  <span id="line38">38.  * -----------------------------------------------------------------</span>
  <span id="line39">39.   *  The remaining code shouldn't need modification.</span>
+
  <span id="line39">39.  *  The remaining code shouldn't need modification.</span>
  <span id="line40">40.   * -----------------------------------------------------------------</span>
+
  <span id="line40">40.  * -----------------------------------------------------------------</span>
  <span id="line41">41.   */</span>
+
  <span id="line41">41.  */</span>
  <span id="line42">42.   /* #define SHORT_FILENAMES /* All NT filesystems support long names now</span>
+
  <span id="line42">42. /* #define SHORT_FILENAMES /* All NT filesystems support long names now</span>
  <span id="line43">43.   */</span>
+
  <span id="line43">43.  */</span>
  <span id="line44">44.   </span>
+
  <span id="line44">44. </span>
  <span id="line45">45.   #ifdef MICRO</span>
+
  <span id="line45">45. #ifdef MICRO</span>
  <span id="line46">46.   #undef MICRO /* never define this! */</span>
+
  <span id="line46">46. #undef MICRO /* never define this! */</span>
  <span id="line47">47.   #endif</span>
+
  <span id="line47">47. #endif</span>
  <span id="line48">48.   </span>
+
  <span id="line48">48. </span>
  <span id="line49">49.   #define NOCWD_ASSUMPTIONS /* Always define this. There are assumptions that \</span>
+
  <span id="line49">49. #define NOCWD_ASSUMPTIONS /* Always define this. There are assumptions that \</span>
  <span id="line50">50.                               it is defined for WIN32.                      \</span>
+
  <span id="line50">50.                             it is defined for WIN32.                      \</span>
  <span id="line51">51.                               Allow paths to be specified for HACKDIR,      \</span>
+
  <span id="line51">51.                             Allow paths to be specified for HACKDIR,      \</span>
  <span id="line52">52.                               LEVELDIR, SAVEDIR, BONESDIR, DATADIR,          \</span>
+
  <span id="line52">52.                             LEVELDIR, SAVEDIR, BONESDIR, DATADIR,          \</span>
  <span id="line53">53.                               SCOREDIR, LOCKDIR, CONFIGDIR, and TROUBLEDIR */</span>
+
  <span id="line53">53.                             SCOREDIR, LOCKDIR, CONFIGDIR, and TROUBLEDIR */</span>
  <span id="line54">54.   #define NO_TERMS</span>
+
  <span id="line54">54. #define NO_TERMS</span>
  <span id="line55">55.   #define ASCIIGRAPH</span>
+
  <span id="line55">55. #define ASCIIGRAPH</span>
  <span id="line56">56.   </span>
+
  <span id="line56">56. </span>
  <span id="line57">57.   #ifdef OPTIONS_USED</span>
+
  <span id="line57">57. #ifdef OPTIONS_USED</span>
  <span id="line58">58.   #undef OPTIONS_USED</span>
+
  <span id="line58">58. #undef OPTIONS_USED</span>
  <span id="line59">59.   #endif</span>
+
  <span id="line59">59. #endif</span>
  <span id="line60">60.   #define OPTIONS_USED "options"</span>
+
  <span id="line60">60. #define OPTIONS_USED "options"</span>
  <span id="line61">61.   #define OPTIONS_FILE OPTIONS_USED</span>
+
  <span id="line61">61. #define OPTIONS_FILE OPTIONS_USED</span>
  <span id="line62">62.   </span>
+
  <span id="line62">62. </span>
  <span id="line63">63.   #define PORT_HELP "porthelp"</span>
+
  <span id="line63">63. #define PORT_HELP "porthelp"</span>
  <span id="line64">64.   </span>
+
  <span id="line64">64. </span>
  <span id="line65">65.   #define PORT_DEBUG /* include ability to debug international keyboard issues \</span>
+
  <span id="line65">65. #define PORT_DEBUG /* include ability to debug international keyboard issues \</span>
  <span id="line66">66.                         */</span>
+
  <span id="line66">66.                       */</span>
  <span id="line67">67.   </span>
+
  <span id="line67">67. </span>
  <span id="line68">68.   #define SAFERHANGUP /* Define SAFERHANGUP to delay hangup processing  \</span>
+
  <span id="line68">68. #define SAFERHANGUP /* Define SAFERHANGUP to delay hangup processing  \</span>
  <span id="line69">69.                       * until the main command loop. 'safer' because it \</span>
+
  <span id="line69">69.                     * until the main command loop. 'safer' because it \</span>
  <span id="line70">70.                       * avoids certain cheats and also avoids losing    \</span>
+
  <span id="line70">70.                     * avoids certain cheats and also avoids losing    \</span>
  <span id="line71">71.                       * objects being thrown when the hangup occurs.    \</span>
+
  <span id="line71">71.                     * objects being thrown when the hangup occurs.    \</span>
  <span id="line72">72.                       */</span>
+
  <span id="line72">72.                     */</span>
  <span id="line73">73.   </span>
+
  <span id="line73">73. </span>
  <span id="line74">74.   /* Stuff to help the user with some common, yet significant errors */</span>
+
  <span id="line74">74. /* Stuff to help the user with some common, yet significant errors */</span>
  <span id="line75">75.   #define INTERJECT_PANIC 0</span>
+
  <span id="line75">75. #define INTERJECT_PANIC 0</span>
  <span id="line76">76.   #define INTERJECTION_TYPES (INTERJECT_PANIC + 1)</span>
+
  <span id="line76">76. #define INTERJECTION_TYPES (INTERJECT_PANIC + 1)</span>
  <span id="line77">77.   extern void FDECL(interject_assistance,</span>
+
  <span id="line77">77. extern void FDECL(interject_assistance,</span>
  <span id="line78">78.                     (int, int, genericptr_t, genericptr_t));</span>
+
  <span id="line78">78.                   (int, int, genericptr_t, genericptr_t));</span>
  <span id="line79">79.   extern void FDECL(interject, (int));</span>
+
  <span id="line79">79. extern void FDECL(interject, (int));</span>
  <span id="line80">80.   </span>
+
  <span id="line80">80. </span>
  <span id="line81">81.   /*</span>
+
  <span id="line81">81. /*</span>
  <span id="line82">82.   *===============================================</span>
+
  <span id="line82">82.  *===============================================</span>
  <span id="line83">83.   * Compiler-specific adjustments</span>
+
  <span id="line83">83.  * Compiler-specific adjustments</span>
  <span id="line84">84.   *===============================================</span>
+
  <span id="line84">84.  *===============================================</span>
  <span id="line85">85.   */</span>
+
  <span id="line85">85.  */</span>
  <span id="line86">86.   #ifdef _MSC_VER</span>
+
  <span id="line86">86. #ifdef _MSC_VER</span>
  <span id="line87">87.   #if (_MSC_VER > 1000)</span>
+
  <span id="line87">87. #if (_MSC_VER > 1000)</span>
  <span id="line88">88.   /* Visual C 8 warning elimination */</span>
+
  <span id="line88">88. /* Visual C 8 warning elimination */</span>
  <span id="line89">89.   #ifndef _CRT_SECURE_NO_DEPRECATE</span>
+
  <span id="line89">89. #ifndef _CRT_SECURE_NO_DEPRECATE</span>
  <span id="line90">90.   #define _CRT_SECURE_NO_DEPRECATE</span>
+
  <span id="line90">90. #define _CRT_SECURE_NO_DEPRECATE</span>
  <span id="line91">91.   #endif</span>
+
  <span id="line91">91. #endif</span>
  <span id="line92">92.   #ifndef _SCL_SECURE_NO_DEPRECATE</span>
+
  <span id="line92">92. #ifndef _SCL_SECURE_NO_DEPRECATE</span>
  <span id="line93">93.   #define _SCL_SECURE_NO_DEPRECATE</span>
+
  <span id="line93">93. #define _SCL_SECURE_NO_DEPRECATE</span>
  <span id="line94">94.   #endif</span>
+
  <span id="line94">94. #endif</span>
  <span id="line95">95.   #ifndef _CRT_NONSTDC_NO_DEPRECATE</span>
+
  <span id="line95">95. #ifndef _CRT_NONSTDC_NO_DEPRECATE</span>
  <span id="line96">96.   #define _CRT_NONSTDC_NO_DEPRECATE</span>
+
  <span id="line96">96. #define _CRT_NONSTDC_NO_DEPRECATE</span>
  <span id="line97">97.   #endif</span>
+
  <span id="line97">97. #endif</span>
  <span id="line98">98.   #pragma warning(disable : 4996) /* VC8 deprecation warnings */</span>
+
  <span id="line98">98. #pragma warning(disable : 4996) /* VC8 deprecation warnings */</span>
  <span id="line99">99.   #pragma warning(disable : 4142) /* benign redefinition */</span>
+
  <span id="line99">99. #pragma warning(disable : 4142) /* benign redefinition */</span>
  <span id="line100">100. #pragma warning(disable : 4267) /* conversion from 'size_t' to XX */</span>
+
  <span id="line100">100. #pragma warning(disable : 4267) /* conversion from 'size_t' to XX */</span>
  <span id="line101">101. #if (_MSC_VER > 1600)</span>
+
  <span id="line101">101. #if (_MSC_VER > 1600)</span>
  <span id="line102">102. #pragma warning(disable : 4459) /* hide global declaration */</span>
+
  <span id="line102">102. #pragma warning(disable : 4459) /* hide global declaration */</span>
  <span id="line103">103. #endif                          /* _MSC_VER > 1600 */</span>
+
  <span id="line103">103. #endif                          /* _MSC_VER > 1600 */</span>
  <span id="line104">104. #endif                          /* _MSC_VER > 1000 */</span>
+
  <span id="line104">104. #endif                          /* _MSC_VER > 1000 */</span>
  <span id="line105">105. #pragma warning(disable : 4761) /* integral size mismatch in arg; conv \</span>
+
  <span id="line105">105. #pragma warning(disable : 4761) /* integral size mismatch in arg; conv \</span>
  <span id="line106">106.                                     supp*/</span>
+
  <span id="line106">106.                                   supp*/</span>
  <span id="line107">107. #ifdef YYPREFIX</span>
+
  <span id="line107">107. #ifdef YYPREFIX</span>
  <span id="line108">108. #pragma warning(disable : 4102) /* unreferenced label */</span>
+
  <span id="line108">108. #pragma warning(disable : 4102) /* unreferenced label */</span>
  <span id="line109">109. #endif</span>
+
  <span id="line109">109. #endif</span>
  <span id="line110">110. #ifdef __cplusplus</span>
+
  <span id="line110">110. #ifdef __cplusplus</span>
  <span id="line111">111. /* suppress a warning in cppregex.cpp */</span>
+
  <span id="line111">111. /* suppress a warning in cppregex.cpp */</span>
  <span id="line112">112. #pragma warning(disable : 4101) /* unreferenced local variable */</span>
+
  <span id="line112">112. #pragma warning(disable : 4101) /* unreferenced local variable */</span>
  <span id="line113">113. #endif</span>
+
  <span id="line113">113. #endif</span>
  <span id="line114">114. #endif /* _MSC_VER */</span>
+
  <span id="line114">114. #endif /* _MSC_VER */</span>
  <span id="line115">115. </span>
+
  <span id="line115">115. </span>
  <span id="line116">116. </span>
+
  <span id="line116">116. </span>
  <span id="line117">117. #define RUNTIME_PORT_ID /* trigger run-time port identification for \</span>
+
  <span id="line117">117. #define RUNTIME_PORT_ID /* trigger run-time port identification for \</span>
  <span id="line118">118.                           * identification of exe CPU architecture  \</span>
+
  <span id="line118">118.                         * identification of exe CPU architecture  \</span>
  <span id="line119">119.                           */</span>
+
  <span id="line119">119.                         */</span>
  <span id="line120">120. </span>
+
  <span id="line120">120. </span>
  <span id="line121">121. /* The following is needed for prototypes of certain functions */</span>
+
  <span id="line121">121. /* The following is needed for prototypes of certain functions */</span>
  <span id="line122">122. #if defined(_MSC_VER)</span>
+
  <span id="line122">122. #if defined(_MSC_VER)</span>
  <span id="line123">123. #include <process.h> /* Provides prototypes of exit(), spawn()      */</span>
+
  <span id="line123">123. #include <process.h> /* Provides prototypes of exit(), spawn()      */</span>
  <span id="line124">124. #endif</span>
+
  <span id="line124">124. #endif</span>
  <span id="line125">125. </span>
+
  <span id="line125">125. </span>
  <span id="line126">126. #include <string.h> /* Provides prototypes of strncmpi(), etc.    */</span>
+
  <span id="line126">126. #include <string.h> /* Provides prototypes of strncmpi(), etc.    */</span>
  <span id="line127">127. #ifdef STRNCMPI</span>
+
  <span id="line127">127. #ifdef STRNCMPI</span>
  <span id="line128">128. #define strncmpi(a, b, c) strnicmp(a, b, c)</span>
+
  <span id="line128">128. #define strncmpi(a, b, c) strnicmp(a, b, c)</span>
  <span id="line129">129. #endif</span>
+
  <span id="line129">129. #endif</span>
  <span id="line130">130. </span>
+
  <span id="line130">130. </span>
  <span id="line131">131. /* Visual Studio defines this in their own headers, which we don't use */</span>
+
  <span id="line131">131. /* Visual Studio defines this in their own headers, which we don't use */</span>
  <span id="line132">132. #ifndef snprintf</span>
+
  <span id="line132">132. #ifndef snprintf</span>
  <span id="line133">133. #define snprintf _snprintf</span>
+
  <span id="line133">133. #define snprintf _snprintf</span>
  <span id="line134">134. #pragma warning( \</span>
+
  <span id="line134">134. #pragma warning( \</span>
  <span id="line135">135.     disable : 4996) /* deprecation warning suggesting snprintf_s */</span>
+
  <span id="line135">135.     disable : 4996) /* deprecation warning suggesting snprintf_s */</span>
  <span id="line136">136. #endif</span>
+
  <span id="line136">136. #endif</span>
  <span id="line137">137. </span>
+
  <span id="line137">137. </span>
  <span id="line138">138. #include <sys/types.h></span>
+
  <span id="line138">138. #include <sys/types.h></span>
  <span id="line139">139. #include <stdlib.h></span>
+
  <span id="line139">139. #include <stdlib.h></span>
  <span id="line140">140. #include <stdio.h></span>
+
  <span id="line140">140. #include <stdio.h></span>
  <span id="line141">141. #ifdef __BORLANDC__</span>
+
  <span id="line141">141. #ifdef __BORLANDC__</span>
  <span id="line142">142. #undef randomize</span>
+
  <span id="line142">142. #undef randomize</span>
  <span id="line143">143. #undef random</span>
+
  <span id="line143">143. #undef random</span>
  <span id="line144">144. #endif</span>
+
  <span id="line144">144. #endif</span>
  <span id="line145">145. </span>
+
  <span id="line145">145. </span>
  <span id="line146">146. #define PATHLEN BUFSZ  /* maximum pathlength */</span>
+
  <span id="line146">146. #define PATHLEN BUFSZ  /* maximum pathlength */</span>
  <span id="line147">147. #define FILENAME BUFSZ /* maximum filename length (conservative) */</span>
+
  <span id="line147">147. #define FILENAME BUFSZ /* maximum filename length (conservative) */</span>
  <span id="line148">148. </span>
+
  <span id="line148">148. </span>
  <span id="line149">149. #if defined(_MAX_PATH) && defined(_MAX_FNAME)</span>
+
  <span id="line149">149. #if defined(_MAX_PATH) && defined(_MAX_FNAME)</span>
  <span id="line150">150. #if (_MAX_PATH < BUFSZ) && (_MAX_FNAME < BUFSZ)</span>
+
  <span id="line150">150. #if (_MAX_PATH < BUFSZ) && (_MAX_FNAME < BUFSZ)</span>
  <span id="line151">151. #undef PATHLEN</span>
+
  <span id="line151">151. #undef PATHLEN</span>
  <span id="line152">152. #undef FILENAME</span>
+
  <span id="line152">152. #undef FILENAME</span>
  <span id="line153">153. #define PATHLEN _MAX_PATH</span>
+
  <span id="line153">153. #define PATHLEN _MAX_PATH</span>
  <span id="line154">154. #define FILENAME _MAX_FNAME</span>
+
  <span id="line154">154. #define FILENAME _MAX_FNAME</span>
  <span id="line155">155. #endif</span>
+
  <span id="line155">155. #endif</span>
  <span id="line156">156. #endif</span>
+
  <span id="line156">156. #endif</span>
  <span id="line157">157. </span>
+
  <span id="line157">157. </span>
  <span id="line158">158. #define NO_SIGNAL</span>
+
  <span id="line158">158. #define NO_SIGNAL</span>
  <span id="line159">159. #define index strchr</span>
+
  <span id="line159">159. #define index strchr</span>
  <span id="line160">160. #define rindex strrchr</span>
+
  <span id="line160">160. #define rindex strrchr</span>
  <span id="line161">161. </span>
+
  <span id="line161">161. </span>
  <span id="line162">162. /* Time stuff */</span>
+
  <span id="line162">162. /* Time stuff */</span>
  <span id="line163">163. #include <time.h></span>
+
  <span id="line163">163. #include <time.h></span>
  <span id="line164">164. </span>
+
  <span id="line164">164. </span>
  <span id="line165">165. #define USE_STDARG</span>
+
  <span id="line165">165. #define USE_STDARG</span>
  <span id="line166">166. #ifdef RANDOM</span>
+
  <span id="line166">166. #ifdef RANDOM</span>
  <span id="line167">167. /* Use the high quality random number routines. */</span>
+
  <span id="line167">167. /* Use the high quality random number routines. */</span>
  <span id="line168">168. #define Rand() random()</span>
+
  <span id="line168">168. #define Rand() random()</span>
  <span id="line169">169. #else</span>
+
  <span id="line169">169. #else</span>
  <span id="line170">170. #define Rand() rand()</span>
+
  <span id="line170">170. #define Rand() rand()</span>
  <span id="line171">171. #endif</span>
+
  <span id="line171">171. #endif</span>
  <span id="line172">172. </span>
+
  <span id="line172">172. </span>
  <span id="line173">173. #include <sys/stat.h></span>
+
  <span id="line173">173. #include <sys/stat.h></span>
  <span id="line174">174. #define FCMASK (_S_IREAD | _S_IWRITE) /* file creation mask */</span>
+
  <span id="line174">174. #define FCMASK (_S_IREAD | _S_IWRITE) /* file creation mask */</span>
  <span id="line175">175. #define regularize nt_regularize</span>
+
  <span id="line175">175. #define regularize nt_regularize</span>
  <span id="line176">176. #define HLOCK "NHPERM"</span>
+
  <span id="line176">176. #define HLOCK "NHPERM"</span>
  <span id="line177">177. </span>
+
  <span id="line177">177. </span>
  <span id="line178">178. #ifndef M</span>
+
  <span id="line178">178. #ifndef M</span>
  <span id="line179">179. #define M(c) ((char) (0x80 | (c)))</span>
+
  <span id="line179">179. #define M(c) ((char) (0x80 | (c)))</span>
  <span id="line180">180. /* #define M(c) ((c) - 128) */</span>
+
  <span id="line180">180. /* #define M(c) ((c) - 128) */</span>
  <span id="line181">181. #endif</span>
+
  <span id="line181">181. #endif</span>
  <span id="line182">182. </span>
+
  <span id="line182">182. </span>
  <span id="line183">183. #ifndef C</span>
+
  <span id="line183">183. #ifndef C</span>
  <span id="line184">184. #define C(c) (0x1f & (c))</span>
+
  <span id="line184">184. #define C(c) (0x1f & (c))</span>
  <span id="line185">185. #endif</span>
+
  <span id="line185">185. #endif</span>
  <span id="line186">186. </span>
+
  <span id="line186">186. </span>
  <span id="line187">187. #if defined(DLB)</span>
+
  <span id="line187">187. #if defined(DLB)</span>
  <span id="line188">188. #define FILENAME_CMP stricmp /* case insensitive */</span>
+
  <span id="line188">188. #define FILENAME_CMP stricmp /* case insensitive */</span>
  <span id="line189">189. #endif</span>
+
  <span id="line189">189. #endif</span>
  <span id="line190">190. </span>
+
  <span id="line190">190. </span>
  <span id="line191">191. /* this was part of the MICRO stuff in the past */</span>
+
  <span id="line191">191. /* this was part of the MICRO stuff in the past */</span>
  <span id="line192">192. extern const char *alllevels, *allbones;</span>
+
  <span id="line192">192. extern const char *alllevels, *allbones;</span>
  <span id="line193">193. extern char hackdir[];</span>
+
  <span id="line193">193. extern char hackdir[];</span>
  <span id="line194">194. #define ABORT C('a')</span>
+
  <span id="line194">194. #define ABORT C('a')</span>
  <span id="line195">195. #define getuid() 1</span>
+
  <span id="line195">195. #define getuid() 1</span>
  <span id="line196">196. #define getlogin() ((char *) 0)</span>
+
  <span id="line196">196. #define getlogin() ((char *) 0)</span>
  <span id="line197">197. extern void NDECL(win32_abort);</span>
+
  <span id="line197">197. extern void NDECL(win32_abort);</span>
  <span id="line198">198. extern void FDECL(nttty_preference_update, (const char *));</span>
+
  <span id="line198">198. extern void FDECL(nttty_preference_update, (const char *));</span>
  <span id="line199">199. extern void NDECL(toggle_mouse_support);</span>
+
  <span id="line199">199. extern void NDECL(toggle_mouse_support);</span>
  <span id="line200">200. extern void FDECL(map_subkeyvalue, (char *));</span>
+
  <span id="line200">200. extern void FDECL(map_subkeyvalue, (char *));</span>
  <span id="line201">201. extern void NDECL(load_keyboard_handler);</span>
+
  <span id="line201">201. extern void NDECL(load_keyboard_handler);</span>
  <span id="line202">202. extern void NDECL(raw_clear_screen);</span>
+
  <span id="line202">202. extern void NDECL(raw_clear_screen);</span>
  <span id="line203">203. </span>
+
  <span id="line203">203. </span>
  <span id="line204">204. #include <fcntl.h></span>
+
  <span id="line204">204. #include <fcntl.h></span>
  <span id="line205">205. #ifndef __BORLANDC__</span>
+
  <span id="line205">205. #ifndef __BORLANDC__</span>
  <span id="line206">206. #include <io.h></span>
+
  <span id="line206">206. #include <io.h></span>
  <span id="line207">207. #include <direct.h></span>
+
  <span id="line207">207. #include <direct.h></span>
  <span id="line208">208. #else</span>
+
  <span id="line208">208. #else</span>
  <span id="line209">209. int _RTLENTRY _EXPFUNC access(const char _FAR *__path, int __amode);</span>
+
  <span id="line209">209. int _RTLENTRY _EXPFUNC access(const char _FAR *__path, int __amode);</span>
  <span id="line210">210. int _RTLENTRY _EXPFUNC _chdrive(int __drive);</span>
+
  <span id="line210">210. int _RTLENTRY _EXPFUNC _chdrive(int __drive);</span>
  <span id="line211">211. int _RTLENTRYF _EXPFUNC32 chdir(const char _FAR *__path);</span>
+
  <span id="line211">211. int _RTLENTRYF _EXPFUNC32 chdir(const char _FAR *__path);</span>
  <span id="line212">212. char _FAR *_RTLENTRY _EXPFUNC getcwd(char _FAR *__buf, int __buflen);</span>
+
  <span id="line212">212. char _FAR *_RTLENTRY _EXPFUNC getcwd(char _FAR *__buf, int __buflen);</span>
  <span id="line213">213. int _RTLENTRY _EXPFUNC</span>
+
  <span id="line213">213. int _RTLENTRY _EXPFUNC</span>
  <span id="line214">214. write(int __handle, const void _FAR *__buf, unsigned __len);</span>
+
  <span id="line214">214. write(int __handle, const void _FAR *__buf, unsigned __len);</span>
  <span id="line215">215. int _RTLENTRY _EXPFUNC creat(const char _FAR *__path, int __amode);</span>
+
  <span id="line215">215. int _RTLENTRY _EXPFUNC creat(const char _FAR *__path, int __amode);</span>
  <span id="line216">216. int _RTLENTRY _EXPFUNC close(int __handle);</span>
+
  <span id="line216">216. int _RTLENTRY _EXPFUNC close(int __handle);</span>
  <span id="line217">217. int _RTLENTRY _EXPFUNC _close(int __handle);</span>
+
  <span id="line217">217. int _RTLENTRY _EXPFUNC _close(int __handle);</span>
  <span id="line218">218. int _RTLENTRY _EXPFUNC</span>
+
  <span id="line218">218. int _RTLENTRY _EXPFUNC</span>
  <span id="line219">219. open(const char _FAR *__path, int __access, ... /*unsigned mode*/);</span>
+
  <span id="line219">219. open(const char _FAR *__path, int __access, ... /*unsigned mode*/);</span>
  <span id="line220">220. long _RTLENTRY _EXPFUNC lseek(int __handle, long __offset, int __fromwhere);</span>
+
  <span id="line220">220. long _RTLENTRY _EXPFUNC lseek(int __handle, long __offset, int __fromwhere);</span>
  <span id="line221">221. int _RTLENTRY _EXPFUNC read(int __handle, void _FAR *__buf, unsigned __len);</span>
+
  <span id="line221">221. int _RTLENTRY _EXPFUNC read(int __handle, void _FAR *__buf, unsigned __len);</span>
  <span id="line222">222. #endif</span>
+
  <span id="line222">222. #endif</span>
  <span id="line223">223. #include <conio.h></span>
+
  <span id="line223">223. #include <conio.h></span>
  <span id="line224">224. #undef kbhit /* Use our special NT kbhit */</span>
+
  <span id="line224">224. #undef kbhit /* Use our special NT kbhit */</span>
  <span id="line225">225. #define kbhit (*nt_kbhit)</span>
+
  <span id="line225">225. #define kbhit (*nt_kbhit)</span>
  <span id="line226">226. </span>
+
  <span id="line226">226. </span>
  <span id="line227">227. #ifdef LAN_FEATURES</span>
+
  <span id="line227">227. #ifdef LAN_FEATURES</span>
  <span id="line228">228. #define MAX_LAN_USERNAME 20</span>
+
  <span id="line228">228. #define MAX_LAN_USERNAME 20</span>
  <span id="line229">229. #endif</span>
+
  <span id="line229">229. #endif</span>
  <span id="line230">230. </span>
+
  <span id="line230">230. </span>
  <span id="line231">231. #ifndef alloca</span>
+
  <span id="line231">231. #ifndef alloca</span>
  <span id="line232">232. #define ALLOCA_HACK /* used in util/panic.c */</span>
+
  <span id="line232">232. #define ALLOCA_HACK /* used in util/panic.c */</span>
  <span id="line233">233. #endif</span>
+
  <span id="line233">233. #endif</span>
  <span id="line234">234. </span>
+
  <span id="line234">234. </span>
  <span id="line235">235. extern int FDECL(set_win32_option, (const char *, const char *));</span>
+
  <span id="line235">235. extern int FDECL(set_win32_option, (const char *, const char *));</span>
  <span id="line236">236. #define LEFTBUTTON FROM_LEFT_1ST_BUTTON_PRESSED</span>
+
  <span id="line236">236. #define LEFTBUTTON FROM_LEFT_1ST_BUTTON_PRESSED</span>
  <span id="line237">237. #define RIGHTBUTTON RIGHTMOST_BUTTON_PRESSED</span>
+
  <span id="line237">237. #define RIGHTBUTTON RIGHTMOST_BUTTON_PRESSED</span>
  <span id="line238">238. #define MIDBUTTON FROM_LEFT_2ND_BUTTON_PRESSED</span>
+
  <span id="line238">238. #define MIDBUTTON FROM_LEFT_2ND_BUTTON_PRESSED</span>
  <span id="line239">239. #define MOUSEMASK (LEFTBUTTON | RIGHTBUTTON | MIDBUTTON)</span>
+
  <span id="line239">239. #define MOUSEMASK (LEFTBUTTON | RIGHTBUTTON | MIDBUTTON)</span>
  <span id="line240">240. #ifdef CHANGE_COLOR</span>
+
  <span id="line240">240. #ifdef CHANGE_COLOR</span>
  <span id="line241">241. extern int FDECL(alternative_palette, (char *));</span>
+
  <span id="line241">241. extern int FDECL(alternative_palette, (char *));</span>
  <span id="line242">242. #endif</span>
+
  <span id="line242">242. #endif</span>
  <span id="line243">243. </span>
+
  <span id="line243">243. </span>
  <span id="line244">244. #endif /* NTCONF_H */</span>
+
  <span id="line244">244. #endif /* NTCONF_H */</span>
 
[[Category:NetHack 3.6.0 source code|include/ntconf.h]]
 
[[Category:NetHack 3.6.0 source code|include/ntconf.h]]

Latest revision as of 13:34, 15 December 2015

Below is the full text to ntconf.h from the source code of NetHack 3.6.0. To link to a particular line, write [[Source:NetHack 3.6.0/include/ntconf.h#line123]], for example.

The NetHack General Public License applies to screenshots, source code and other content from NetHack.

This content was modified from the original NetHack source code distribution (by splitting up NetHack content between wiki pages, and possibly further editing). See the page history for a list of who changed it, and on what dates.

 /* NetHack 3.6	ntconf.h	$NHDT-Date: 1447424077 2015/11/13 14:14:37 $  $NHDT-Branch: master $:$NHDT-Revision: 1.48 $ */
 /* Copyright (c) NetHack PC Development Team 1993, 1994.  */
 /* NetHack may be freely redistributed.  See license for details. */
 
 #ifndef NTCONF_H
 #define NTCONF_H
 
 /* #define SHELL	/* nt use of pcsys routines caused a hang */
 
 #define RANDOM    /* have Berkeley random(3) */
 #define TEXTCOLOR /* Color text */
 
 #define EXEPATH              /* Allow .exe location to be used as HACKDIR */
 #define TRADITIONAL_GLYPHMAP /* Store glyph mappings at level change time */
 
 #define LAN_FEATURES /* Include code for lan-aware features. Untested in \
                         3.4.0*/
 
 #define PC_LOCKING /* Prevent overwrites of aborted or in-progress games */
 /* without first receiving confirmation. */
 
 #define HOLD_LOCKFILE_OPEN /* Keep an exclusive lock on the .0 file */
 
 #define SELF_RECOVER /* Allow the game itself to recover from an aborted \
                         game */
 
 #define SYSCF                /* Use a global configuration */
 #define SYSCF_FILE "sysconf" /* Use a file to hold the SYSCF configuration \
                                 */
 
 #define USER_SOUNDS
 
 /*#define CHANGE_COLOR*/ /* allow palette changes */
 #define SELECTSAVED /* Provide menu of saved games to choose from at start \
                        */
 
 /*
  * -----------------------------------------------------------------
  *  The remaining code shouldn't need modification.
  * -----------------------------------------------------------------
  */
 /* #define SHORT_FILENAMES	/* All NT filesystems support long names now
  */
 
 #ifdef MICRO
 #undef MICRO /* never define this! */
 #endif
 
 #define NOCWD_ASSUMPTIONS /* Always define this. There are assumptions that \
                              it is defined for WIN32.                       \
                              Allow paths to be specified for HACKDIR,       \
                              LEVELDIR, SAVEDIR, BONESDIR, DATADIR,          \
                              SCOREDIR, LOCKDIR, CONFIGDIR, and TROUBLEDIR */
 #define NO_TERMS
 #define ASCIIGRAPH
 
 #ifdef OPTIONS_USED
 #undef OPTIONS_USED
 #endif
 #define OPTIONS_USED "options"
 #define OPTIONS_FILE OPTIONS_USED
 
 #define PORT_HELP "porthelp"
 
 #define PORT_DEBUG /* include ability to debug international keyboard issues \
                       */
 
 #define SAFERHANGUP /* Define SAFERHANGUP to delay hangup processing   \
                      * until the main command loop. 'safer' because it \
                      * avoids certain cheats and also avoids losing    \
                      * objects being thrown when the hangup occurs.    \
                      */
 
 /* Stuff to help the user with some common, yet significant errors */
 #define INTERJECT_PANIC 0
 #define INTERJECTION_TYPES (INTERJECT_PANIC + 1)
 extern void FDECL(interject_assistance,
                   (int, int, genericptr_t, genericptr_t));
 extern void FDECL(interject, (int));
 
 /*
  *===============================================
  * Compiler-specific adjustments
  *===============================================
  */
 #ifdef _MSC_VER
 #if (_MSC_VER > 1000)
 /* Visual C 8 warning elimination */
 #ifndef _CRT_SECURE_NO_DEPRECATE
 #define _CRT_SECURE_NO_DEPRECATE
 #endif
 #ifndef _SCL_SECURE_NO_DEPRECATE
 #define _SCL_SECURE_NO_DEPRECATE
 #endif
 #ifndef _CRT_NONSTDC_NO_DEPRECATE
 #define _CRT_NONSTDC_NO_DEPRECATE
 #endif
 #pragma warning(disable : 4996) /* VC8 deprecation warnings */
 #pragma warning(disable : 4142) /* benign redefinition */
 #pragma warning(disable : 4267) /* conversion from 'size_t' to XX */
 #if (_MSC_VER > 1600)
 #pragma warning(disable : 4459) /* hide global declaration */
 #endif                          /* _MSC_VER > 1600 */
 #endif                          /* _MSC_VER > 1000 */
 #pragma warning(disable : 4761) /* integral size mismatch in arg; conv \
                                    supp*/
 #ifdef YYPREFIX
 #pragma warning(disable : 4102) /* unreferenced label */
 #endif
 #ifdef __cplusplus
 /* suppress a warning in cppregex.cpp */
 #pragma warning(disable : 4101) /* unreferenced local variable */
 #endif
 #endif /* _MSC_VER */
 
 
 #define RUNTIME_PORT_ID /* trigger run-time port identification for \
                          * identification of exe CPU architecture   \
                          */
 
 /* The following is needed for prototypes of certain functions */
 #if defined(_MSC_VER)
 #include <process.h> /* Provides prototypes of exit(), spawn()      */
 #endif
 
 #include <string.h> /* Provides prototypes of strncmpi(), etc.     */
 #ifdef STRNCMPI
 #define strncmpi(a, b, c) strnicmp(a, b, c)
 #endif
 
 /* Visual Studio defines this in their own headers, which we don't use */
 #ifndef snprintf
 #define snprintf _snprintf
 #pragma warning( \
     disable : 4996) /* deprecation warning suggesting snprintf_s */
 #endif
 
 #include <sys/types.h>
 #include <stdlib.h>
 #include <stdio.h>
 #ifdef __BORLANDC__
 #undef randomize
 #undef random
 #endif
 
 #define PATHLEN BUFSZ  /* maximum pathlength */
 #define FILENAME BUFSZ /* maximum filename length (conservative) */
 
 #if defined(_MAX_PATH) && defined(_MAX_FNAME)
 #if (_MAX_PATH < BUFSZ) && (_MAX_FNAME < BUFSZ)
 #undef PATHLEN
 #undef FILENAME
 #define PATHLEN _MAX_PATH
 #define FILENAME _MAX_FNAME
 #endif
 #endif
 
 #define NO_SIGNAL
 #define index strchr
 #define rindex strrchr
 
 /* Time stuff */
 #include <time.h>
 
 #define USE_STDARG
 #ifdef RANDOM
 /* Use the high quality random number routines. */
 #define Rand() random()
 #else
 #define Rand() rand()
 #endif
 
 #include <sys/stat.h>
 #define FCMASK (_S_IREAD | _S_IWRITE) /* file creation mask */
 #define regularize nt_regularize
 #define HLOCK "NHPERM"
 
 #ifndef M
 #define M(c) ((char) (0x80 | (c)))
 /* #define M(c)		((c) - 128) */
 #endif
 
 #ifndef C
 #define C(c) (0x1f & (c))
 #endif
 
 #if defined(DLB)
 #define FILENAME_CMP stricmp /* case insensitive */
 #endif
 
 /* this was part of the MICRO stuff in the past */
 extern const char *alllevels, *allbones;
 extern char hackdir[];
 #define ABORT C('a')
 #define getuid() 1
 #define getlogin() ((char *) 0)
 extern void NDECL(win32_abort);
 extern void FDECL(nttty_preference_update, (const char *));
 extern void NDECL(toggle_mouse_support);
 extern void FDECL(map_subkeyvalue, (char *));
 extern void NDECL(load_keyboard_handler);
 extern void NDECL(raw_clear_screen);
 
 #include <fcntl.h>
 #ifndef __BORLANDC__
 #include <io.h>
 #include <direct.h>
 #else
 int _RTLENTRY _EXPFUNC access(const char _FAR *__path, int __amode);
 int _RTLENTRY _EXPFUNC _chdrive(int __drive);
 int _RTLENTRYF _EXPFUNC32 chdir(const char _FAR *__path);
 char _FAR *_RTLENTRY _EXPFUNC getcwd(char _FAR *__buf, int __buflen);
 int _RTLENTRY _EXPFUNC
 write(int __handle, const void _FAR *__buf, unsigned __len);
 int _RTLENTRY _EXPFUNC creat(const char _FAR *__path, int __amode);
 int _RTLENTRY _EXPFUNC close(int __handle);
 int _RTLENTRY _EXPFUNC _close(int __handle);
 int _RTLENTRY _EXPFUNC
 open(const char _FAR *__path, int __access, ... /*unsigned mode*/);
 long _RTLENTRY _EXPFUNC lseek(int __handle, long __offset, int __fromwhere);
 int _RTLENTRY _EXPFUNC read(int __handle, void _FAR *__buf, unsigned __len);
 #endif
 #include <conio.h>
 #undef kbhit /* Use our special NT kbhit */
 #define kbhit (*nt_kbhit)
 
 #ifdef LAN_FEATURES
 #define MAX_LAN_USERNAME 20
 #endif
 
 #ifndef alloca
 #define ALLOCA_HACK /* used in util/panic.c */
 #endif
 
 extern int FDECL(set_win32_option, (const char *, const char *));
 #define LEFTBUTTON FROM_LEFT_1ST_BUTTON_PRESSED
 #define RIGHTBUTTON RIGHTMOST_BUTTON_PRESSED
 #define MIDBUTTON FROM_LEFT_2ND_BUTTON_PRESSED
 #define MOUSEMASK (LEFTBUTTON | RIGHTBUTTON | MIDBUTTON)
 #ifdef CHANGE_COLOR
 extern int FDECL(alternative_palette, (char *));
 #endif
 
 #endif /* NTCONF_H */