home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1994 March / Source_Code_CD-ROM_Walnut_Creek_March_1994.iso / compsrcs / games / volume16 / nethck31 / part01 < prev    next >
Encoding:
Internet Message Format  |  1993-01-31  |  43.9 KB

  1. Path: uunet!news.tek.com!master!saab!billr
  2. From: billr@saab.CNA.TEK.COM (Bill Randle)
  3. Newsgroups: comp.sources.games
  4. Subject: v16i001:  nethack31 - display oriented dungeons & dragons (Ver. 3.1), Part01/108
  5. Message-ID: <4284@master.CNA.TEK.COM>
  6. Date: 28 Jan 93 19:08:38 GMT
  7. Sender: news@master.CNA.TEK.COM
  8. Lines: 1243
  9. Approved: billr@saab.CNA.TEK.COM
  10. Xref: uunet comp.sources.games:1557
  11.  
  12. Submitted-by: izchak@linc.cis.upenn.edu (Izchak Miller)
  13. Posting-number: Volume 16, Issue 1
  14. Archive-name: nethack31/Part01
  15. Supersedes: nethack3p9: Volume 10, Issue 46-102
  16. Environment: Amiga, Atari, Mac, MS-DOS, OS2, Unix, VMS, X11
  17.  
  18.     [OK, friends and neighbors here it is at long last - NetHack 3.1.
  19.      As the subject line indicates, this is being posted in 108 parts.
  20.      This will be done over a period of several days, so as not to
  21.      overload anyone's news spool directory. Please be patient. -br]
  22.  
  23. [The following cover note is from the authors...]
  24. [[NetHack 3.1 is a product of two years of intensive work by the NetHack
  25. Development Team and its Amiga, Atari, Macintosh, OS/2, MSDOS, and VMS
  26. ports sub-teams.  These include over thirty members from different
  27. countries.  The team wishes to express its gratitude to the management
  28. of linc.cis.upenn.edu for its generous support of this unique development
  29. activity.
  30.  
  31. NetHack 3.1 is a new generation of NetHack.  Here is a list of some of
  32. its main new features:
  33.  
  34. * Unlike 3.0, NetHack 3.1 is a multi-dungeon game.  New dungeons "branch"
  35.   off the main dungeon at different locations.
  36.  
  37. * A unifying mythology was adopted for the game.  There are tasks which
  38.   must be completed in various dungeons before the main task of capturing
  39.   the Amulet can be undertaken.  There are different quests for the
  40.   different character classes.
  41.  
  42. * There is a new multi-level endgame full of surprises.
  43.  
  44. * Many of the monsters in NetHack 3.1 now can wield weapons, zap wands,
  45.   read scrolls, and cast spells.  Fighting them must take these special
  46.   abilities into consideration.
  47.  
  48. * The game's display was completely re-written.  It is now based on a
  49.   line-of-sight principle, and it gives a new "feel" to the game.  The
  50.   new display was written with a standardized window interface, which
  51.   allows easy substitution and addition of windowing systems independent
  52.   of operating system.  For example, the UNIX port now supports X11 as
  53.   well as the traditional tty.
  54.  
  55. * Numerous local changes were made, and many new monsters, objects, and
  56.   intelligent artifacts were added.
  57.  
  58. You will discover the details and the rest of the changes for yourselves.
  59.  
  60. As we did with 3.0, we will periodically release patchlevel revisions of
  61. NetHack 3.1, which will include bug fixes and further development results.
  62. Avoid applying free-lanced patches, if you want to take advantage of these
  63. patchlevel updates.
  64.  
  65. Despite our effort, there are, no doubt, many bugs still in the code.
  66. The Amiga and Macintosh ports, in particular, still have rough edges due
  67. to time constraints on their port-team members.  A port to Windows NT is
  68. underway but is not suitable for release at this time.  We call upon you
  69. to help in debugging both the game and the ports.  The address of the
  70. NetHack development team remains nethack-bugs@linc.cis.upenn.edu.
  71.  
  72. As always, your comments and suggestions will be appreciated.  Enjoy.]]
  73.  
  74.  
  75. #! /bin/sh
  76. # This is a shell archive.  Remove anything before this line, then unpack
  77. # it by saving it into a file and typing "sh file".  To overwrite existing
  78. # files, type "sh file -c".  You can also feed this as standard input via
  79. # unshar, or by typing "sh <file", e.g..  If this archive is complete, you
  80. # will see the following message at the end:
  81. #        "End of archive 1 (of 108)."
  82. # Contents:  README MANIFEST dat doc include include/config.h src sys
  83. #   sys/amiga sys/amiga sys/amiga/splitter sys/amiga/splitter
  84. #   sys/atari sys/atari sys/mac sys/mac sys/msdos sys/msdos sys/os2
  85. #   sys/os2 sys/share sys/share sys/unix sys/unix sys/vms sys/vms util
  86. #   win win/X11 win/X11 win/tty win/tty
  87. # Wrapped by billr@saab on Wed Jan 27 16:08:45 1993
  88. PATH=/bin:/usr/bin:/usr/ucb ; export PATH
  89. if test -f 'README' -a "${1}" != "-c" ; then 
  90.   echo shar: Will not clobber existing file \"'README'\"
  91. else
  92. echo shar: Extracting \"'README'\" \(9769 characters\)
  93. sed "s/^X//" >'README' <<'END_OF_FILE'
  94. X
  95. X                NetHack 3.1 -- General information
  96. X
  97. XNetHack 3.1 is a new generation of the dungeon exploration game NetHack.
  98. XIt is a distant descendent of Hack, and a direct descendent of NetHack 3.0.
  99. XIt is the product of two years of very intensive effort by the NetHack
  100. XDevelopment Team and its porting sub-teams.  Many parts of 3.0 were
  101. Xrewritten for NetHack 3.1, and many new features were added.
  102. X
  103. XThere are a number of dramatic new additions or changes in the game:
  104. X
  105. XA general "mythology" was adopted for the game.  The various tasks in the
  106. Xgame are now articulated in the context of that mythology, and this gives
  107. Xthe game a greater coherence and unity.
  108. X
  109. XThe dungeon design was changed.  Unlike the linear form of the dungeon in
  110. X3.0, the dungeon in 3.1 is tree-structured, with dungeons that branch off
  111. Xthe "main" dungeon.  These branch-dungeons have each unique features which
  112. Xdistinguish them from one another.  As a part of this new design, a dungeon
  113. X"compiler" was added, which enables some control of the game's dungeon
  114. Xdesign from a data file.  A goal for the future is making that control
  115. Xcomplete.
  116. X
  117. XThe special levels facility of the game was greatly enhanced.  It is now
  118. Xhighly versatile, and we took advantage of its extended capacity to add many
  119. Xnew special levels.
  120. X
  121. XThe game's display code was completely re-written.  The display is now based
  122. Xon a line-of-sight principle.  It is much more efficient than the old
  123. Xdisplay code, and a lot more interesting.
  124. X
  125. XIntelligent creatures in the game can now wear armor, and they can wield
  126. Xand use weapons in combat.  They can also use wands, spells, and throw
  127. Xobjects.  This must be taken into consideration in choosing a game strategy.
  128. X
  129. XWe sought to increase the differences between the various character
  130. Xclasses, so as to make playing each of them a distinct experience.  To this
  131. Xend, special character-specific tasks and dungeons were introduced into the
  132. Xgame.
  133. X
  134. XThese are some of the most prominent global changes.  But there are many
  135. Xother changes in the game, and they are not less dramatic.  To mention just
  136. Xa few:  The shop code was revised.  Shopkeepers are smarter, and they know
  137. Xhow to repair damage to their shop.  The endgame is now a multi-level
  138. Xdungeon, full of surprises.  The artifact code was rewritten, and gaining
  139. Xaccess to the Amulet of Yendor requires the coordinated use of special
  140. Xartifacts.  Many new creatures and objects were added to the game.  We leave
  141. Xit to you to discover the rest for yourselves.
  142. X
  143. XWe dedicate the game to the many players of 3.0, with special note of those
  144. Xwho communicated with us and contributed their ideas to the development of
  145. Xthis new version.
  146. X
  147. X                        - - - - - - - - - - -
  148. X
  149. XPlease read items (1), (2) and (3) BEFORE doing anything with your new code.
  150. X
  151. X1.  Unpack the code in a dedicated new directory.  We will refer to that
  152. X    directory as the 'Top' directory.  It makes no difference what you
  153. X    call it.
  154. X
  155. X2.  If there is no flaw in the packaging, many sub-directories will be
  156. X    automatically created, and files will be deposited in them:
  157. X
  158. X    a.  A 'dat' directory, which contains a variety of data files.
  159. X    b.  A 'doc' directory, which contains various documentation.
  160. X    c.  An 'include' directory, which contains all *.h files.
  161. X    d.  A 'src' directory, which contains game *.c files used by all versions.
  162. X    e.  A 'util' directory, which contains files for utility programs.
  163. X    f.  A 'sys' directory, which contains subdirectories for files that
  164. X        are operating-system specific.
  165. X    g.  A 'sys/share' subdirectory, which contains files shared by some OSs.
  166. X    h.  A 'sys/amiga' subdirectory, which contains files specific to AmigaDOS.
  167. X    i.  A 'sys/amiga/splitter' subsubdirectory, which contains files
  168. X        for the Amiga splitter program.
  169. X    j.  A 'sys/atari' subdirectory, which contains files specific to TOS.
  170. X    k.  A 'sys/mac' subdirectory, which contains files specific to MacOS.
  171. X    l.  A 'sys/msdos' subdirectory, which contains files specific to MS-DOS.
  172. X    m.  A 'sys/os2' subdirectory, which contains files specific to OS/2.
  173. X    n.  A 'sys/unix' subdirectory, which contains files specific to UNIX.
  174. X    o.  A 'sys/vms' subdirectory, which contains files specific to VMS.
  175. X    p.  A 'win' directory, which contains subdirectories for files that
  176. X        are windowing-system specific (but not operating-system specific).
  177. X    q.  A 'win/tty' subdirectory, which contains files specific to ttys.
  178. X    r.  A 'win/X11' subdirectory, which contains files specific to X11.
  179. X
  180. X    The names of these directories should not be changed, unless you are
  181. X    ready to go through the makefiles and the makedefs program and change
  182. X    all the directory references in them.
  183. X
  184. X3.  Having unpacked, you should have a file called 'Files' in your Top
  185. X    directory.  This file contains the list of all the files you now SHOULD
  186. X    have in each directory.  Please check the files in each directory
  187. X    against this list to make sure that you have a complete set.
  188. X
  189. X4.  Before you do anything else, please read carefully the file called
  190. X    'license' in the dat subdirectory.  It is expected that you comply
  191. X    with the terms of that license, and we are very serious about it.  In
  192. X    particular, you are prohibited by the terms of the license from using
  193. X    NetHack 3.1 for gainful purposes.
  194. X
  195. X5.  If everything is in order, you can now turn to trying to get the program
  196. X    to compile and run on your particular system.  It is worth mentioning
  197. X    that the default configuration is BSD/Sun/SunOS4.x (simply because
  198. X    the code was housed on such a system).  It is also worth mentioning
  199. X    here that NetHack 3.1 is a huge program by comparison with 3.0, let
  200. X    alone 2.3.  If you intend to run it on a small machine, you'll have
  201. X    to make hard choices among the options available in config.h.
  202. X
  203. X    The files sys/*/Install.* were written to guide you in configuring the
  204. X    program for your operating system.  The files win/*/Install.* are
  205. X    available, where necessary, to help you in configuring the program
  206. X    for particular windowing environments.  Reading them, and the man page,
  207. X    should answer most of your questions.
  208. X
  209. X    At the time of this release, NetHack 3.1 is known to run on:
  210. X
  211. X        AT&T 3B1 running System V (3.51)
  212. X        AT&T 3B2/600 & 3B2/622 running System V R3.2.1
  213. X        AT&T 3B2/1000 Model 80 running System V R3.2.2
  214. X        AT&T 3B4000 running System V
  215. X        AT&T 6386 running System V R3.2
  216. X        Bull DPX/2 2x0 and 3x0 running B.O.S 02.00.xx
  217. X        Bull DPX/20  1xx 4xx 6xx or 8xx running BOSX V3.2
  218. X        Bull XPS100 running System V R3.1 (Rel VS/25 only)
  219. X        Data General AViiON systems running DG/UX
  220. X        DEC vaxen running Ultrix and BSD
  221. X        Decstations running Ultrix 3.1 or 4.0 using the cc compiler only
  222. X        Decstations running Ultrix 4.2 using either cc or gcc (1.39 OSF)
  223. X        Encore Multimax running UMAX 4.2
  224. X        Gould NP1 running UTX 3/2
  225. X        H-P 9000s300 running HP-UX
  226. X        IBM PC/RT and RS/6000 running AIX
  227. X        Mips M2000 running RiscOS 4.1
  228. X        NeXT running Mach (using BSD configuration)
  229. X        Pyramid 9820x running OSx 4.4c
  230. X        SGI Iris running IRIX
  231. X        Stardent Vistra 800 running SysV R4.0
  232. X        Stride 460 running UniStride 2.1
  233. X        Sun-3s, -4s, and -386is running SunOS 3.x and 4.x
  234. X        Sun-4s running Solaris 2.x (aka SunOS 5.x)
  235. X        Valid Logic Systems SCALD-System
  236. X        286 box running Microport SysV/AT (not extensively tested)
  237. X
  238. X        Apple Macintosh running MacOS
  239. X        Atari ST/TT/Falcon running TOS (or MultiTOS) with GCC
  240. X        Commodore Amiga running AmigaDOS 1.3/2.x with SAS/C 5.10b or
  241. X                Manx 5.0 (but see Install.ami about DICE and SAS/C 6.1)
  242. X        DEC Alpha/VMS (aka OpenVMS AXP), running V1.0
  243. X        DEC VAX/VMS, running V4.6 through V5.5-2, T6.0
  244. X        IBM PC compatibles running MS-DOS with MicroSoft C or DJGPP
  245. X        IBM PS/2 and AT compatibles running OS/2 1.1 - 2.0 with Microsoft C
  246. X                5.1 or 6.0, and OS/2 2.0 with GCC emx 0.8f or IBM C Set/2
  247. X
  248. X                        - - - - - - - - - - -
  249. X
  250. XIf you have problems building the game, or you find bugs in it, the
  251. Xdevelopment team may be reached as
  252. X
  253. X                    nethack-bugs@linc.cis.upenn.edu
  254. X
  255. XPlease be sure to include your machine type, OS, and patchlevel.
  256. X
  257. XPatches especially should be directed to this address.  If you've changed
  258. Xsomething to get NetHack to run on your system, it's likely that others have
  259. Xdone it by making slightly different modifications.  By routing your patches
  260. Xthrough the development team, we should be able to avoid making everyone else
  261. Xchoose among variant patches claiming to do the same thing, to keep most of
  262. Xthe copies of 3.1 synchronized by means of official patches, and to maintain
  263. Xthe painfully-created file organization.  (Remember the mess when everybody
  264. Xjust posted their own patches to 2.3?  There were no archived bug-fixes to
  265. Xgive people who got 2.3 after its initial release, so the same bugs kept being
  266. Xdiscovered by new batches of people.  We were successful in preventing this
  267. Xfrom happening to 3.0.  Please cooperate to keep this from happening to 3.1.)
  268. X
  269. XIt is inevitable that we will reject some proposed additions of new features
  270. Xeither because they do not fit our conception of the game, or because they
  271. Xrequire more code than we consider they're worth.  If we reject your feature,
  272. Xyou are free, of course, to post the patches to the net yourself and let the
  273. Xmarketplace decide its worth.
  274. X
  275. XAll of this amounts to the following:  If you decide to apply a free-lanced
  276. Xpatch to your 3.1 code, you are on your own.  In our own patches, we will
  277. Xassume that your code is synchronized with ours.
  278. X
  279. X                  -- Good luck, and happy Hacking --
  280. X
  281. END_OF_FILE
  282. if test 9769 -ne `wc -c <'README'`; then
  283.     echo shar: \"'README'\" unpacked with wrong size!
  284. fi
  285. # end of 'README'
  286. fi
  287. if test -f 'MANIFEST' -a "${1}" != "-c" ; then 
  288.   echo shar: Will not clobber existing file \"'MANIFEST'\"
  289. else
  290. echo shar: Extracting \"'MANIFEST'\" \(13530 characters\)
  291. sed "s/^X//" >'MANIFEST' <<'END_OF_FILE'
  292. X   File Name        Archive #    Description
  293. X-----------------------------------------------------------
  294. X Files                     95    
  295. X MANIFEST                   1    This shipping list
  296. X Porting                   99    
  297. X README                     1    
  298. X UPDATE0                   106    
  299. X dat                        1    
  300. X dat/Arch.des              36    
  301. X dat/Barb.des              90    
  302. X dat/Caveman.des           88    
  303. X dat/Elf.des               31    
  304. X dat/Healer.des            21    
  305. X dat/Knight.des            30    
  306. X dat/Priest.des            91    
  307. X dat/Rogue.des             82    
  308. X dat/Samurai.des           89    
  309. X dat/Tourist.des           86    
  310. X dat/Valkyrie.des          20    
  311. X dat/Wizard.des            87    
  312. X dat/bigroom.des           65    
  313. X dat/castle.des            98    
  314. X dat/cmdhelp               93    
  315. X dat/data.base             75    
  316. X dat/dungeon.def            8    
  317. X dat/endgame.des           81    
  318. X dat/gehennom.des          62    
  319. X dat/help                  96    
  320. X dat/hh                    103    
  321. X dat/history               103    
  322. X dat/knox.des              67    
  323. X dat/license               103    
  324. X dat/medusa.des            98    
  325. X dat/mines.des             14    
  326. X dat/opthelp               100    
  327. X dat/oracle.des            106    
  328. X dat/oracles.txt           101    
  329. X dat/quest.tx1             36    
  330. X dat/quest.tx2             29    
  331. X dat/rumors.fal            55    
  332. X dat/rumors.tru            68    
  333. X dat/tower.des             92    
  334. X dat/wizhelp               72    
  335. X dat/yendor.des            13    
  336. X doc                        1    
  337. X doc/Guidebook.mn           6    
  338. X doc/Guidebook.te1         74    
  339. X doc/Guidebook.te2         53    
  340. X doc/Guidebook.uu1          9    
  341. X doc/Guidebook.uu2         14    
  342. X doc/dgn_comp.6            97    
  343. X doc/lev_comp.6            92    
  344. X doc/nethack.6             100    
  345. X doc/recover.6             105    
  346. X doc/tmac.n                71    
  347. X doc/window.doc            53    
  348. X include                    1    
  349. X include/Window.h          105    
  350. X include/WindowP.h         107    
  351. X include/align.h           107    
  352. X include/amiconf.h         105    
  353. X include/artifact.h        106    
  354. X include/artilist.h        99    
  355. X include/attrib.h           3    
  356. X include/color.h           102    
  357. X include/config.h           1    
  358. X include/coord.h           107    
  359. X include/decl.h            96    
  360. X include/def_os2.h         104    
  361. X include/dgn_file.h        79    
  362. X include/display.h         95    
  363. X include/dungeon.h         102    
  364. X include/edog.h            107    
  365. X include/emin.h            42    
  366. X include/engrave.h         107    
  367. X include/epri.h            107    
  368. X include/eshk.h            107    
  369. X include/extern.h           4    
  370. X include/flag.h            66    
  371. X include/func_tab.h        107    
  372. X include/global.h          12    
  373. X include/hack.h            104    
  374. X include/lev.h             27    
  375. X include/macconf.h         97    
  376. X include/mail.h            107    
  377. X include/mfndpos.h         107    
  378. X include/micro.h           107    
  379. X include/mkroom.h          104    
  380. X include/monattk.h         104    
  381. X include/mondata.h         100    
  382. X include/monflag.h         99    
  383. X include/monst.h           103    
  384. X include/monsym.h          104    
  385. X include/obj.h             103    
  386. X include/objclass.h        102    
  387. X include/os2conf.h         62    
  388. X include/patchlevel.h      102    
  389. X include/pcconf.h          105    
  390. X include/permonst.h        106    
  391. X include/prop.h            107    
  392. X include/qtext.h           106    
  393. X include/quest.h           106    
  394. X include/rect.h            107    
  395. X include/rm.h              93    
  396. X include/sp_lev.h          104    
  397. X include/spell.h           84    
  398. X include/system.h          29    
  399. X include/termcap.h         106    
  400. X include/tosconf.h         106    
  401. X include/tradstdc.h        97    
  402. X include/trampoli.h        97    
  403. X include/trap.h            89    
  404. X include/unixconf.h        98    
  405. X include/vault.h           107    
  406. X include/vision.h          85    
  407. X include/vmsconf.h         94    
  408. X include/winX.h            90    
  409. X include/winami.h          106    
  410. X include/winprocs.h        104    
  411. X include/wintty.h          102    
  412. X include/wintype.h         56    
  413. X include/you.h             100    
  414. X include/youprop.h          9    
  415. X rebuild.sh                104    
  416. X src                        1    
  417. X src/allmain.c             95    
  418. X src/alloc.c               107    
  419. X src/apply.c                3    
  420. X src/artifact.c            74    
  421. X src/attrib.c              51    
  422. X src/ball.c                40    
  423. X src/bones.c               93    
  424. X src/botl.c                92    
  425. X src/cmd.c                 81    
  426. X src/dbridge.c             64    
  427. X src/decl.c                97    
  428. X src/detect.c              79    
  429. X src/display.c             52    
  430. X src/do.c                  65    
  431. X src/do_name.c             83    
  432. X src/do_wear.c             41    
  433. X src/dog.c                 33    
  434. X src/dogmove.c             50    
  435. X src/dokick.c              59    
  436. X src/dothrow.c             60    
  437. X src/drawing.c             65    
  438. X src/dungeon.c             35    
  439. X src/eat.c                 12    
  440. X src/end.c                 85    
  441. X src/engrave.c             72    
  442. X src/exper.c               102    
  443. X src/explode.c             99    
  444. X src/extralev.c            96    
  445. X src/files.c               61    
  446. X src/fountain.c            89    
  447. X src/hack.c                34    
  448. X src/hacklib.c             25    
  449. X src/invent.c              13    
  450. X src/lock.c                56    
  451. X src/mail.c                37    
  452. X src/makemon.c             31    
  453. X src/mcastu.c              95    
  454. X src/mhitm.c               79    
  455. X src/mhitu.c1              56    
  456. X src/mhitu.c2              57    
  457. X src/minion.c              101    
  458. X src/mklev.c               54    
  459. X src/mkmap.c               91    
  460. X src/mkmaze.c              71    
  461. X src/mkobj.c               83    
  462. X src/mkroom.c              86    
  463. X src/mon.c                 21    
  464. X src/mondata.c             90    
  465. X src/monmove.c             69    
  466. X src/monst.c1              11    
  467. X src/monst.c2              40    
  468. X src/monst.c3              60    
  469. X src/mplayer.c             96    
  470. X src/mthrowu.c             39    
  471. X src/muse.c                45    
  472. X src/music.c               35    
  473. X src/o_init.c              94    
  474. X src/objects.c             23    
  475. X src/objnam.c              10    
  476. X src/options.c             80    
  477. X src/pager.c               47    
  478. X src/pickup.c              80    
  479. X src/pline.c               101    
  480. X src/polyself.c            73    
  481. X src/potion.c              70    
  482. X src/pray.c                28    
  483. X src/priest.c              46    
  484. X src/quest.c               87    
  485. X src/questpgr.c            27    
  486. X src/read.c                66    
  487. X src/rect.c                68    
  488. X src/restore.c             63    
  489. X src/rip.c                 81    
  490. X src/rnd.c                 106    
  491. X src/rumors.c              94    
  492. X src/save.c                54    
  493. X src/shk.c1                47    
  494. X src/shk.c2                33    
  495. X src/shknam.c              43    
  496. X src/sit.c                 19    
  497. X src/sounds.c              49    
  498. X src/sp_lev.c1             77    
  499. X src/sp_lev.c2             62    
  500. X src/spell.c               41    
  501. X src/steal.c               17    
  502. X src/timeout.c             23    
  503. X src/topten.c              67    
  504. X src/track.c               107    
  505. X src/trap.c1               73    
  506. X src/trap.c2               67    
  507. X src/u_init.c              82    
  508. X src/uhitm.c               19    
  509. X src/vault.c               66    
  510. X src/version.c             73    
  511. X src/vision.c1             44    
  512. X src/vision.c2             58    
  513. X src/weapon.c              88    
  514. X src/were.c                105    
  515. X src/wield.c               96    
  516. X src/windows.c             106    
  517. X src/wizard.c              44    
  518. X src/worm.c                82    
  519. X src/worn.c                18    
  520. X src/write.c               103    
  521. X src/zap.c1                68    
  522. X src/zap.c2                61    
  523. X sys                        1    
  524. X sys/amiga                  1    
  525. X sys/amiga/HackWB.uu       107    
  526. X sys/amiga/Install.ami     45    
  527. X sys/amiga/Makefile.ami    63    
  528. X sys/amiga/NHinfo.uu       106    
  529. X sys/amiga/NetHack.cnf     105    
  530. X sys/amiga/NewGame.uu      100    
  531. X sys/amiga/amidos.c        92    
  532. X sys/amiga/amidos.p        107    
  533. X sys/amiga/amifont.uu      107    
  534. X sys/amiga/amifont8.uu     105    
  535. X sys/amiga/amigst.c        107    
  536. X sys/amiga/amii.hlp        106    
  537. X sys/amiga/amimenu.c       11    
  538. X sys/amiga/amirip.c        83    
  539. X sys/amiga/amiwbench.c     28    
  540. X sys/amiga/amiwind.c       58    
  541. X sys/amiga/amiwind.p       107    
  542. X sys/amiga/ask.uu           2    
  543. X sys/amiga/char.c          10    
  544. X sys/amiga/charwin.uu      105    
  545. X sys/amiga/colors.uu        5    
  546. X sys/amiga/colorwin.c      100    
  547. X sys/amiga/dflticon.uu     106    
  548. X sys/amiga/hackwb.hlp      106    
  549. X sys/amiga/ifchange        107    
  550. X sys/amiga/randwin.c        7    
  551. X sys/amiga/randwin.uu      107    
  552. X sys/amiga/scroll.uu       43    
  553. X sys/amiga/splitter         1    
  554. X sys/amiga/splitter/amiout.h 105    
  555. X sys/amiga/splitter/arg.c  101    
  556. X sys/amiga/splitter/arg.h  107    
  557. X sys/amiga/splitter/loader.c 93    
  558. X sys/amiga/splitter/multi.c  6    
  559. X sys/amiga/splitter/multi.h 107    
  560. X sys/amiga/splitter/split.doc 59    
  561. X sys/amiga/splitter/split.h 101    
  562. X sys/amiga/splitter/splitter.c 88    
  563. X sys/amiga/string.uu       107    
  564. X sys/amiga/wb.c1           39    
  565. X sys/amiga/wb.c2           22    
  566. X sys/amiga/wbcli.c         38    
  567. X sys/amiga/wbdata.c        102    
  568. X sys/amiga/wbdefs.h        102    
  569. X sys/amiga/wbprotos.h      86    
  570. X sys/amiga/wbstruct.h      106    
  571. X sys/amiga/wbwin.c          7    
  572. X sys/amiga/wbwin.uu        77    
  573. X sys/amiga/winami.c1       20    
  574. X sys/amiga/winami.c2       24    
  575. X sys/amiga/winami.p        101    
  576. X sys/atari                  1    
  577. X sys/atari/Install.tos     16    
  578. X sys/atari/Makefile.utl    101    
  579. X sys/atari/atari.cnf       105    
  580. X sys/atari/atarifnt.uue    99    
  581. X sys/atari/nethack.mnu     107    
  582. X sys/atari/setup.g         103    
  583. X sys/atari/tos.c           99    
  584. X sys/mac                    1    
  585. X sys/mac/Install.mpw       103    
  586. X sys/mac/MacHelp           104    
  587. X sys/mac/NHmake.hqx        55    
  588. X sys/mac/NHrez.hqx         102    
  589. X sys/mac/NHrsrc.hqx        78    
  590. X sys/mac/NHsound.hq1       27    
  591. X sys/mac/NHsound.hq2       25    
  592. X sys/mac/NHsound.hq3       26    
  593. X sys/mac/NHsound.hq4       30    
  594. X sys/mac/News              32    
  595. X sys/mac/hack.h            26    
  596. X sys/mac/maccurs.c         101    
  597. X sys/mac/macerrs.c         103    
  598. X sys/mac/macfile.c         91    
  599. X sys/mac/macmain.c         90    
  600. X sys/mac/macsnd.c          106    
  601. X sys/mac/mactopl.c         95    
  602. X sys/mac/macunix.c         107    
  603. X sys/mac/macwin.c1         37    
  604. X sys/mac/macwin.c2         48    
  605. X sys/mac/mgetline.c        98    
  606. X sys/mac/mhdump.c          12    
  607. X sys/mac/mmodal.c          104    
  608. X sys/mac/mstring.c         107    
  609. X sys/msdos                  1    
  610. X sys/msdos/Install.dos     84    
  611. X sys/msdos/MakeGCC.src     32    
  612. X sys/msdos/MakeGCC.utl     98    
  613. X sys/msdos/MakeMSC.src     69    
  614. X sys/msdos/MakeMSC.utl     98    
  615. X sys/msdos/Makefile.dat    99    
  616. X sys/msdos/exesmurf.c      89    
  617. X sys/msdos/exesmurf.doc    102    
  618. X sys/msdos/maintovl.doc    85    
  619. X sys/msdos/msdos.c         91    
  620. X sys/msdos/nhico.uu        107    
  621. X sys/msdos/nhpif.uu        107    
  622. X sys/msdos/ovlmgr.asm      18    
  623. X sys/msdos/ovlmgr.doc      84    
  624. X sys/msdos/ovlmgr.uu       94    
  625. X sys/msdos/setup.bat       106    
  626. X sys/msdos/trampoli.c      38    
  627. X sys/os2                    1    
  628. X sys/os2/Install.os2       34    
  629. X sys/os2/Makefile.os2      49    
  630. X sys/os2/nhpmico.uu        98    
  631. X sys/os2/os2.c             99    
  632. X sys/share                  1    
  633. X sys/share/Makefile.lib    107    
  634. X sys/share/NetHack.cnf     103    
  635. X sys/share/dgn_comp.h      107    
  636. X sys/share/dgn_lex.c       84    
  637. X sys/share/dgn_yacc.c      57    
  638. X sys/share/lev_comp.h      106    
  639. X sys/share/lev_lex.c       51    
  640. X sys/share/lev_yacc.c1     32    
  641. X sys/share/lev_yacc.c2     72    
  642. X sys/share/pcmain.c        93    
  643. X sys/share/pcsys.c         95    
  644. X sys/share/pctty.c         107    
  645. X sys/share/pcunix.c        96    
  646. X sys/share/random.c        88    
  647. X sys/share/termcap         90    
  648. X sys/share/termcap.uu      42    
  649. X sys/unix                   1    
  650. X sys/unix/Install.unx      26    
  651. X sys/unix/Makefile.dat     106    
  652. X sys/unix/Makefile.doc      4    
  653. X sys/unix/Makefile.src     70    
  654. X sys/unix/Makefile.top     103    
  655. X sys/unix/Makefile.utl     100    
  656. X sys/unix/cpp1.shr          2    
  657. X sys/unix/cpp2.shr          5    
  658. X sys/unix/cpp3.shr          8    
  659. X sys/unix/ioctl.c          105    
  660. X sys/unix/nethack.sh       107    
  661. X sys/unix/setup.sh         107    
  662. X sys/unix/snd86unx.shr     78    
  663. X sys/unix/unixmain.c       94    
  664. X sys/unix/unixtty.c        97    
  665. X sys/unix/unixunix.c       97    
  666. X sys/vms                    1    
  667. X sys/vms/Install.vms       76    
  668. X sys/vms/Makefile.dat      105    
  669. X sys/vms/Makefile.doc      106    
  670. X sys/vms/Makefile.src      48    
  671. X sys/vms/Makefile.top      104    
  672. X sys/vms/Makefile.utl      94    
  673. X sys/vms/gnutermcap.c      52    
  674. X sys/vms/gnutparam.c       89    
  675. X sys/vms/install.com       100    
  676. X sys/vms/lev_lex.h         78    
  677. X sys/vms/nethack.com       91    
  678. X sys/vms/oldcrtl.c         101    
  679. X sys/vms/spec_lev.com      105    
  680. X sys/vms/vmsbuild.com      22    
  681. X sys/vms/vmsfiles.c        98    
  682. X sys/vms/vmsmail.c         87    
  683. X sys/vms/vmsmain.c         92    
  684. X sys/vms/vmsmisc.c         107    
  685. X sys/vms/vmstty.c          87    
  686. X sys/vms/vmsunix.c         42    
  687. X util                       1    
  688. X util/dgn_comp.l           104    
  689. X util/dgn_comp.y           86    
  690. X util/dgn_main.c           105    
  691. X util/lev_comp.l           43    
  692. X util/lev_comp.y           50    
  693. X util/lev_main.c           64    
  694. X util/makedefs.c           17    
  695. X util/panic.c              106    
  696. X util/recover.c            101    
  697. X win                        1    
  698. X win/X11                    1    
  699. X win/X11/Install.X11       100    
  700. X win/X11/NetHack.ad        105    
  701. X win/X11/Window.c          102    
  702. X win/X11/dialogs.c         91    
  703. X win/X11/ibm.bdf           108    
  704. X win/X11/nethack.rc        43     
  705. X win/X11/nh10.bdf          15    
  706. X win/X11/nh32icon          107    
  707. X win/X11/nh56icon          43     
  708. X win/X11/nh72icon          104    
  709. X win/X11/winX.c            16    
  710. X win/X11/winmap.c          75    
  711. X win/X11/winmenu.c         92    
  712. X win/X11/winmesg.c         85    
  713. X win/X11/winmisc.c         24    
  714. X win/X11/winstat.c         76    
  715. X win/X11/wintext.c         93    
  716. X win/X11/winval.c          105    
  717. X win/tty                    1    
  718. X win/tty/getline.c         103    
  719. X win/tty/termcap.c         59    
  720. X win/tty/topl.c            96    
  721. X win/tty/wintty.c          46    
  722. END_OF_FILE
  723. if test 13530 -ne `wc -c <'MANIFEST'`; then
  724.     echo shar: \"'MANIFEST'\" unpacked with wrong size!
  725. fi
  726. # end of 'MANIFEST'
  727. fi
  728. if test ! -d 'dat' ; then
  729.     echo shar: Creating directory \"'dat'\"
  730.     mkdir 'dat'
  731. fi
  732. if test ! -d 'doc' ; then
  733.     echo shar: Creating directory \"'doc'\"
  734.     mkdir 'doc'
  735. fi
  736. if test ! -d 'include' ; then
  737.     echo shar: Creating directory \"'include'\"
  738.     mkdir 'include'
  739. fi
  740. if test -f 'include/config.h' -a "${1}" != "-c" ; then 
  741.   echo shar: Will not clobber existing file \"'include/config.h'\"
  742. else
  743. echo shar: Extracting \"'include/config.h'\" \(12825 characters\)
  744. sed "s/^X//" >'include/config.h' <<'END_OF_FILE'
  745. X/*    SCCS Id: @(#)config.h    3.1    92/08/29    */
  746. X/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
  747. X/* NetHack may be freely redistributed.  See license for details. */
  748. X
  749. X#ifndef CONFIG_H /* make sure the compiler does not see the typedefs twice */
  750. X#define CONFIG_H
  751. X
  752. X
  753. X/*
  754. X * Section 1:    OS selection.
  755. X *        Select the version of the OS you are using.
  756. X *        For "UNIX" select either SYSV or BSD in unixconf.h.
  757. X *        A "VMS" option is not needed since the VMS C-compilers
  758. X *        provide it (no need to change sec#1, vmsconf.h handles it).
  759. X */
  760. X
  761. X#define UNIX        /* delete if no fork(), exec() available */
  762. X
  763. X/*
  764. X * MS DOS - compilers
  765. X *
  766. X * Microsoft C auto-defines MSDOS,
  767. X * Borland C   auto-defines __TURBOC__,
  768. X * DJGPP       auto-defines MSDOS.
  769. X */
  770. X
  771. X/* #define MSDOS    /* use if not defined by compiler or cases below */
  772. X
  773. X#ifdef __TURBOC__
  774. X# define MSDOS
  775. X#endif
  776. X
  777. X#ifdef MSDOS
  778. X# undef UNIX
  779. X#endif
  780. X
  781. X/*
  782. X * Mac Stuff.
  783. X */
  784. X
  785. X#ifdef applec        /*    MPW auto-defined symbol            */
  786. X# define MAC
  787. X# undef UNIX        /*    Just in case                */
  788. X#endif
  789. X/* #define MAC        /*    We're on some mac-ish platform    */
  790. X
  791. X#ifdef MAC
  792. X# ifdef THINK_C
  793. X#  define NEED_VARARGS
  794. X# endif
  795. X#endif
  796. X
  797. X/*
  798. X * Amiga setup.
  799. X */
  800. X#ifdef AZTEC_C     /* Manx auto-defines this */
  801. X# ifdef MCH_AMIGA    /* Manx auto-defines this for AMIGA */
  802. X#  ifndef AMIGA
  803. X#define AMIGA        /* define for Commodore-Amiga */
  804. X#  endif        /* (Lattice auto-defines AMIGA) */
  805. X#define AZTEC_50    /* define for version 5.0 of manx */
  806. X# endif
  807. X#endif
  808. X#ifdef LATTICE
  809. X# define NEARDATA __near /* put some data close */
  810. X# define NO_SCAN_BRACK    /* scanf doesn't handle [] (this define available
  811. X             * for any system with this problem) */
  812. X#else
  813. X# define NEARDATA
  814. X#endif
  815. X#ifdef AMIGA
  816. X# ifdef UNIX
  817. X    "Please re-read the compilation documentation.  Thank you."
  818. X# endif
  819. X#endif
  820. X
  821. X/*
  822. X * Atari auto-detection
  823. X */
  824. X
  825. X#ifdef atarist
  826. X# undef UNIX
  827. X# define TOS
  828. X#else
  829. X# ifdef __MINT__
  830. X#  undef UNIX
  831. X#  define TOS
  832. X# endif
  833. X#endif
  834. X
  835. X/*
  836. X * and other systems...
  837. X */
  838. X
  839. X/* #define OS2        /* define for OS/2 */
  840. X
  841. X/* #define TOS        /* define for Atari ST/TT */
  842. X
  843. X/* #define STUPID    /* avoid some complicated expressions if
  844. X               your C compiler chokes on them */
  845. X/* #define TERMINFO    /* uses terminfo rather than termcap */
  846. X            /* should be defined for HPUX and most, but not all,
  847. X               SYSV */
  848. X            /* in particular, it should NOT be defined for the
  849. X             * UNIXPC unless you remove the use of the shared
  850. X             * library in the makefile */
  851. X/* #define MINIMAL_TERM    /* if a terminal handles highlighting or tabs poorly,
  852. X               try this define, used in pager.c and termcap.c */
  853. X/* #define ULTRIX_CC20    /* define only if using cc v2.0 on a DECstation */
  854. X/* #define ULTRIX_PROTO    /* define for Ultrix 4.0 (or higher) on a DECstation;
  855. X             * if you get compiler errors, don't define this. */
  856. X            /* Hint: if you're not developing code, don't define
  857. X               ULTRIX_PROTO. */
  858. X
  859. X#ifdef AMIGA
  860. X# define NEED_VARARGS
  861. X#endif
  862. X
  863. X#ifdef VMS    /* really old compilers need special handling, detected here */
  864. X# undef UNIX
  865. X# ifdef __DECC        /* buggy early versions want widened prototypes    */
  866. X#  define NOTSTDC    /* except when typedefs are involved        */
  867. X#  define USE_VARARGS
  868. X#  undef __HIDE_FORBIDDEN_NAMES    /* need non-ANSI library support functions */
  869. X# else
  870. X#  ifdef VAXC    /* must use CC/DEFINE=ANCIENT_VAXC for vaxc v2.2 or older */
  871. X#   ifdef ANCIENT_VAXC    /* vaxc v2.2 and earlier [lots of warnings to come] */
  872. X#    define KR1ED    /* simulate defined() */
  873. X#    define USE_VARARGS
  874. X#   else        /* vaxc v2.3,2.4,or 3.x, or decc in vaxc mode */
  875. X#     if defined(USE_PROTOTYPES) /* this breaks 2.2 (*forces* use of ANCIENT)*/
  876. X#      define __STDC__ 0 /* vaxc is not yet ANSI compliant, but close enough */
  877. X#      define signed     /* well, almost close enough */
  878. X#include <stddef.h>
  879. X#      define UNWIDENED_PROTOTYPES
  880. X#     endif
  881. X#     define USE_STDARG
  882. X#   endif
  883. X#  endif /*VAXC*/
  884. X# endif /*__DECC*/
  885. X# ifdef VERYOLD_VMS    /* v4.5 or earlier; no longer available for testing */
  886. X#  define USE_OLDARGS    /* <varargs.h> is there, vprintf & vsprintf aren't */
  887. X#  ifdef USE_VARARGS
  888. X#   undef USE_VARARGS
  889. X#  endif
  890. X#  ifdef USE_STDARG
  891. X#   undef USE_STDARG
  892. X#  endif
  893. X# endif
  894. X#endif /*VMS*/
  895. X
  896. X#ifdef vax
  897. X/* just in case someone thinks a DECstation is a vax. It's not, it's a mips */
  898. X# ifdef ULTRIX_PROTO
  899. X#  undef ULTRIX_PROTO
  900. X# endif
  901. X# ifdef ULTRIX_CC20
  902. X#  undef ULTRIX_CC20
  903. X# endif
  904. X#endif
  905. X
  906. X#ifdef KR1ED        /* For compilers which cannot handle defined() */
  907. X#define defined(x) (-x-1 != -1)
  908. X/* Because:
  909. X * #define FOO => FOO={} => defined( ) => (-1 != - - 1) => 1
  910. X * #define FOO 1 or on command-line -DFOO
  911. X *      => defined(1) => (-1 != - 1 - 1) => 1
  912. X * if FOO isn't defined, FOO=0. But some compilers default to 0 instead of 1
  913. X * for -DFOO, oh well.
  914. X *      => defined(0) => (-1 != - 0 - 1) => 0
  915. X *
  916. X * But:
  917. X * defined("") => (-1 != - "" - 1)
  918. X *   [which is an unavoidable catastrophe.]
  919. X */
  920. X#endif
  921. X
  922. X/* Windowing systems...
  923. X * Define all of those you want supported in your binary.
  924. X * Some combinations make no sense.  See the installation document.
  925. X */
  926. X#define TTY_GRAPHICS    /* good old tty based graphics */
  927. X/* #define X11_GRAPHICS    /* X11 interface */
  928. X
  929. X/*
  930. X * Define the default window system.  This should be one that is compiled
  931. X * into your system (see defines above).  Known window systems are:
  932. X *
  933. X *    tty, X11, mac, amii
  934. X */
  935. X
  936. X/* MAC also means MAC windows */
  937. X#ifdef MAC
  938. X# ifndef    AUX
  939. X#  undef TTY_GRAPHICS
  940. X#  undef X11_GRAPHICS
  941. X#  define DEFAULT_WINDOW_SYS "mac"
  942. X# endif
  943. X#endif
  944. X
  945. X/* no options yet: Amiga also means Intuition windows */
  946. X#ifdef AMIGA
  947. X# undef TTY_GRAPHICS
  948. X# define DEFAULT_WINDOW_SYS "amii"
  949. X#endif
  950. X
  951. X#ifndef DEFAULT_WINDOW_SYS
  952. X# define DEFAULT_WINDOW_SYS "tty"
  953. X#endif
  954. X
  955. X
  956. X
  957. X/*
  958. X * Section 2:    Some global parameters and filenames.
  959. X *        Commenting out WIZARD, LOGFILE, or NEWS removes that feature
  960. X *        from the game; otherwise set the appropriate wizard name.
  961. X *        LOGFILE and NEWS refer to files in the playground.
  962. X */
  963. X
  964. X#ifndef WIZARD        /* allow for compile-time or Makefile changes */
  965. X# ifndef KR1ED
  966. X#  define WIZARD  "wizard" /* the person allowed to use the -D option */
  967. X# else
  968. X#  define WIZARD
  969. X#  define WIZARD_NAME "wizard"
  970. X# endif
  971. X#endif
  972. X
  973. X#define LOGFILE "logfile"    /* larger file for debugging purposes */
  974. X#define NEWS "news"        /* the file containing the latest hack news */
  975. X
  976. X/*
  977. X *    If COMPRESS is defined, it should contain the full path name of your
  978. X *    'compress' program.  Defining INTERNAL_COMP causes NetHack to do
  979. X *    simpler byte-stream compression internally.  Both COMPRESS and
  980. X *    INTERNAL_COMP create smaller bones/level/save files, but require
  981. X *    additional code and time.  Currently, only UNIX fully implements
  982. X *    COMPRESS; other ports should be able to uncompress save files a
  983. X *    la unixmain.c if so inclined.
  984. X */
  985. X
  986. X#ifdef UNIX
  987. X# define COMPRESS "/usr/ucb/compress"  /* path name for 'compress' */
  988. X#endif
  989. X#ifndef COMPRESS
  990. X# define INTERNAL_COMP    /* control use of NetHack's compression routines */
  991. X#endif
  992. X
  993. X/*
  994. X *    Defining INSURANCE slows down level changes, but allows games that
  995. X *    died due to program or system crashes to be resumed from the point
  996. X *    of the last level change, after running a utility program.
  997. X */
  998. X#define INSURANCE    /* allow crashed game recovery */
  999. X
  1000. X#ifndef MAC
  1001. X# define CHDIR        /* delete if no chdir() available */
  1002. X#endif
  1003. X
  1004. X#ifdef CHDIR
  1005. X/*
  1006. X * If you define HACKDIR, then this will be the default playground;
  1007. X * otherwise it will be the current directory.
  1008. X */
  1009. X#define HACKDIR "/usr/games/lib/nethackdir"     /* nethack directory */
  1010. X
  1011. X/*
  1012. X * Some system administrators are stupid enough to make Hack suid root
  1013. X * or suid daemon, where daemon has other powers besides that of reading or
  1014. X * writing Hack files.  In such cases one should be careful with chdir's
  1015. X * since the user might create files in a directory of his choice.
  1016. X * Of course SECURE is meaningful only if HACKDIR is defined.
  1017. X */
  1018. X/* #define SECURE    /* do setuid(getuid()) after chdir() */
  1019. X
  1020. X/*
  1021. X * If it is desirable to limit the number of people that can play Hack
  1022. X * simultaneously, define HACKDIR, SECURE and MAX_NR_OF_PLAYERS.
  1023. X * #define MAX_NR_OF_PLAYERS 6
  1024. X */
  1025. X#endif /* CHDIR */
  1026. X
  1027. X
  1028. X
  1029. X/*
  1030. X * Section 3:    Definitions that may vary with system type.
  1031. X *        For example, both schar and uchar should be short ints on
  1032. X *        the AT&T 3B2/3B5/etc. family.
  1033. X */
  1034. X
  1035. X/*
  1036. X * Uncomment the following line if your compiler doesn't understand the
  1037. X * 'void' type (and thus would give all sorts of compile errors without
  1038. X * this definition).
  1039. X */
  1040. X/* #define NOVOID            /* define if no "void" data type. */
  1041. X
  1042. X/*
  1043. X * Uncomment the following line if your compiler falsely claims to be
  1044. X * a standard C compiler (i.e., defines __STDC__ without cause).
  1045. X * Examples are Apollo's cc (in some versions) and possibly SCO UNIX's rcc.
  1046. X */
  1047. X/* #define NOTSTDC            /* define for lying compilers */
  1048. X
  1049. X#include "tradstdc.h"
  1050. X
  1051. X/*
  1052. X * type schar: small signed integers (8 bits suffice) (eg. TOS)
  1053. X *
  1054. X *    typedef char    schar;
  1055. X *
  1056. X *      will do when you have signed characters; otherwise use
  1057. X *
  1058. X *    typedef short int schar;
  1059. X */
  1060. X#ifdef AZTEC
  1061. X# define schar    char
  1062. X#else
  1063. Xtypedef signed char    schar;
  1064. X#endif
  1065. X
  1066. X/*
  1067. X * type uchar: small unsigned integers (8 bits suffice - but 7 bits do not)
  1068. X *
  1069. X *    typedef unsigned char    uchar;
  1070. X *
  1071. X *    will be satisfactory if you have an "unsigned char" type;
  1072. X *    otherwise use
  1073. X *
  1074. X *    typedef unsigned short int uchar;
  1075. X */
  1076. Xtypedef unsigned char    uchar;
  1077. X
  1078. X/*
  1079. X * Various structures have the option of using bitfields to save space.
  1080. X * If your C compiler handles bitfields well (e.g., it can initialize structs
  1081. X * containing bitfields), you can define BITFIELDS.  Otherwise, the game will
  1082. X * allocate a separate character for each bitfield.  (The bitfields used never
  1083. X * have more than 7 bits, and most are only 1 bit.)
  1084. X */
  1085. X#define BITFIELDS    /* Good bitfield handling */
  1086. X
  1087. X/* #define STRNCMPI /* compiler/library has the strncmpi function */
  1088. X
  1089. X/*
  1090. X * There are various choices for the NetHack vision system.  There is a
  1091. X * choice of two algorithms with the same behavior.  Defining VISION_TABLES
  1092. X * creates huge (60K) tables at compile time, drastically increasing data
  1093. X * size, but runs slightly faster than the alternate algorithm.  (MSDOS in
  1094. X * particular cannot tolerate the increase in data size; other systems can
  1095. X * flip a coin weighted to local conditions.)
  1096. X *
  1097. X * If VISION_TABLES is defined, two-dimensional tables will be generated.
  1098. X * Some compilers need braces around the rows of such arrays; some need
  1099. X * them not to be there.  Known preferences:
  1100. X *    Braces:        Sun, DEC vaxen (Ultrix), DEC Mips
  1101. X *            Bull DPX/2 K&R (Green Hills)
  1102. X *    No Braces:    gcc, hc (IBM High C compiler), AT&T 3B, MSC 5.1
  1103. X *            Bull DPX/2 Ansi (Green Hills/-Xa option), MPW C
  1104. X * If VISION_TABLES is not defined, things will be faster if you can use
  1105. X * MACRO_CPATH.  Some cpps, however, cannot deal with the size of the
  1106. X * functions that have been macroized.
  1107. X */
  1108. X
  1109. X/*#define VISION_TABLES    /* use vision tables generated at compile time */
  1110. X#ifdef VISION_TABLES
  1111. X# define BRACES        /* put braces around rows of 2d arrays */
  1112. X#else
  1113. X# define MACRO_CPATH    /* use clear_path macros instead of functions */
  1114. X#endif
  1115. X
  1116. X
  1117. X
  1118. X/*
  1119. X * Section 4:  THE FUN STUFF!!!
  1120. X *
  1121. X * Conditional compilation of special options are controlled here.
  1122. X * If you define the following flags, you will add not only to the
  1123. X * complexity of the game but also to the size of the load module.
  1124. X *
  1125. X * Note:  Commenting MULDGN will yield a game similar to 3.0, without
  1126. X * Quest dungeons and tasks, and without some other special dungeons. 
  1127. X */
  1128. X
  1129. X/* game features */
  1130. X#define POLYSELF    /* Polymorph self code by Ken Arromdee */
  1131. X#define SOUNDS        /* Add more life to the dungeon */
  1132. X/* dungeon features */
  1133. X#define SINKS        /* Kitchen sinks - Janet Walz */
  1134. X/* dungeon levels */
  1135. X#define WALLIFIED_MAZE    /* Fancy mazes - Jean-Christophe Collet */
  1136. X#define REINCARNATION    /* Special Rogue-like levels */
  1137. X/* monsters & objects */
  1138. X#define KOPS        /* Keystone Kops by Scott R. Turner */
  1139. X#define ARMY        /* Soldiers, barracks by Steve Creps */
  1140. X#define SEDUCE        /* Succubi/incubi seduction, by KAA, suggested by IM */
  1141. X#define WALKIES        /* Leash code by M. Stephenson */
  1142. X#define TOURIST        /* Tourist players with cameras and Hawaiian shirts */
  1143. X#define TUTTI_FRUTTI    /* fruit option as in Rogue, but which works, by KAA */
  1144. X#define MUSE        /* Let monsters use more things - KAA */
  1145. X#define MULDGN        /* Multi-branch dungeons MRS & IM */
  1146. X/* difficulty */
  1147. X#define ELBERETH    /* Engraving the E-word repels monsters */
  1148. X#define EXPLORE_MODE    /* Allow non-scoring play with additional powers */
  1149. X/* I/O */
  1150. X#define REDO        /* support for redoing last command - DGK */
  1151. X#define COM_COMPL    /* Command line completion by John S. Bien */
  1152. X#ifndef AMIGA
  1153. X# define CLIPPING    /* allow smaller screens -- ERS */
  1154. X#endif
  1155. X
  1156. X#ifdef REDO
  1157. X# define DOAGAIN '\001'    /* ^A, the "redo" key used in cmd.c and getline.c */
  1158. X#endif
  1159. X
  1160. X#define EXP_ON_BOTL    /* Show experience on bottom line */
  1161. X/* #define SCORE_ON_BOTL    /* added by Gary Erickson (erickson@ucivax) */
  1162. X
  1163. X#include "global.h"    /* Define everything else according to choices above */
  1164. X
  1165. X#endif /* CONFIG_H */
  1166. END_OF_FILE
  1167. if test 12825 -ne `wc -c <'include/config.h'`; then
  1168.     echo shar: \"'include/config.h'\" unpacked with wrong size!
  1169. fi
  1170. # end of 'include/config.h'
  1171. fi
  1172. if test ! -d 'src' ; then
  1173.     echo shar: Creating directory \"'src'\"
  1174.     mkdir 'src'
  1175. fi
  1176. if test ! -d 'sys' ; then
  1177.     echo shar: Creating directory \"'sys'\"
  1178.     mkdir 'sys'
  1179. fi
  1180. if test ! -d 'sys/amiga' ; then
  1181.     echo shar: Creating directory \"'sys/amiga'\"
  1182.     mkdir 'sys/amiga'
  1183. fi
  1184. if test ! -d 'sys/amiga/splitter' ; then
  1185.     echo shar: Creating directory \"'sys/amiga/splitter'\"
  1186.     mkdir 'sys/amiga/splitter'
  1187. fi
  1188. if test ! -d 'sys/atari' ; then
  1189.     echo shar: Creating directory \"'sys/atari'\"
  1190.     mkdir 'sys/atari'
  1191. fi
  1192. if test ! -d 'sys/mac' ; then
  1193.     echo shar: Creating directory \"'sys/mac'\"
  1194.     mkdir 'sys/mac'
  1195. fi
  1196. if test ! -d 'sys/msdos' ; then
  1197.     echo shar: Creating directory \"'sys/msdos'\"
  1198.     mkdir 'sys/msdos'
  1199. fi
  1200. if test ! -d 'sys/os2' ; then
  1201.     echo shar: Creating directory \"'sys/os2'\"
  1202.     mkdir 'sys/os2'
  1203. fi
  1204. if test ! -d 'sys/share' ; then
  1205.     echo shar: Creating directory \"'sys/share'\"
  1206.     mkdir 'sys/share'
  1207. fi
  1208. if test ! -d 'sys/unix' ; then
  1209.     echo shar: Creating directory \"'sys/unix'\"
  1210.     mkdir 'sys/unix'
  1211. fi
  1212. if test ! -d 'sys/vms' ; then
  1213.     echo shar: Creating directory \"'sys/vms'\"
  1214.     mkdir 'sys/vms'
  1215. fi
  1216. if test ! -d 'util' ; then
  1217.     echo shar: Creating directory \"'util'\"
  1218.     mkdir 'util'
  1219. fi
  1220. if test ! -d 'win' ; then
  1221.     echo shar: Creating directory \"'win'\"
  1222.     mkdir 'win'
  1223. fi
  1224. if test ! -d 'win/X11' ; then
  1225.     echo shar: Creating directory \"'win/X11'\"
  1226.     mkdir 'win/X11'
  1227. fi
  1228. if test ! -d 'win/tty' ; then
  1229.     echo shar: Creating directory \"'win/tty'\"
  1230.     mkdir 'win/tty'
  1231. fi
  1232. echo shar: End of archive 1 \(of 108\).
  1233. cp /dev/null ark1isdone
  1234. MISSING=""
  1235. for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 \
  1236. 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 \
  1237. 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 \
  1238. 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 \
  1239. 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 \
  1240. 101 102 103 104 105 106 107 108 ; do
  1241.     if test ! -f ark${I}isdone ; then
  1242.     MISSING="${MISSING} ${I}"
  1243.     fi
  1244. done
  1245. if test "${MISSING}" = "" ; then
  1246.     echo You have unpacked all 108 archives.
  1247.     echo "Now execute 'rebuild.sh'"
  1248.     rm -f ark10[0-8]isdone ark[1-9]isdone ark[1-9][0-9]isdone
  1249. else
  1250.     echo You still need to unpack the following archives:
  1251.     echo "        " ${MISSING}
  1252. fi
  1253. ##  End of shell archive.
  1254. exit 0
  1255.