[comp.sources.games] v10i100: nethack3p9 - display oriented dungeons & dragons

billr@saab.CNA.TEK.COM (Bill Randle) (07/14/90)

Submitted-by: Izchak Miller <izchak@linc.cis.upenn.edu>
Posting-number: Volume 10, Issue 100
Archive-name: nethack3p9/Part55
Supersedes: NetHack3: Volume 7, Issue 56-93



#! /bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g..  If this archive is complete, you
# will see the following message at the end:
#		"End of archive 55 (of 56)."
# Contents:  amiga/GBinfo.uu
#   amiga/NHScore.uu amiga/NHinfo.uu amiga/NetHack.cnf
#   amiga/NewGame.uu amiga/ami.lnk amiga/dflticon.uu include/flag.h
#   include/func_tab.h include/mkroom.h include/pcconf.h
#   include/permonst.h include/sp_lev.h mac/Segments.mac mac/macfile.c
#   others/atari.cnf src/ioctl.c src/rnd.c src/were.c
# Wrapped by billr@saab on Wed Jul 11 17:12:21 1990
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'amiga/GBinfo.uu' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'amiga/GBinfo.uu'\"
else
echo shar: Extracting \"'amiga/GBinfo.uu'\" \(2541 characters\)
sed "s/^X//" >'amiga/GBinfo.uu' <<'END_OF_FILE'
Xbegin 644 Guidebook.info
XMXQ```0``````NP`2`%``*P`&``,``0`B3>``(DZH````````````````````
XM````!/X`(ID``````(````"``````````````````!]```````!0`"H``@`!
XMT]@#````````````````````````````````````````````````/______X
XM!X```/\\__]__?_\``#_'/_^?_W__P``_PSP?!_Y__\``?\DYSY_^_S_@`#_
XM,.`^?_G^?X``_SCG_F_]_S^``'\\\'\?_/^_@``?______X_OX``````````
XM`'^`````'_______@````!S______P`````\______\`````//@\0^#^````
XM`'SSGCG.?@````#\\YYYP'P`````_/.>?\_X`````?SX/#_@^`````/\____
XM__`````#_/_____@````!_P!____X`````_______\`````/______^`````
XM``````'_@``'_______"_P``#_______GWX``!YS___Q_[Y^```^<___^?]\
XM_```/G.#\'G/?_@``#X#^><YGT?X```^<\'G^#\/\```/G,YYSF??^```!YS
XMA/!QSS^````/______^?````!_______S```````````````````````````
XM``````````````````````````````````````````````````````````!_
XM______S_P```P``````'^'P``0##``"``@`#``$`XP`!@`(``(`#`/,/@^`&
XM``#``@#;&,&`!`,`0`,`SQ_!@`8!@$`!`,<8`9`"`,!``8###X#@`P!`0`#@
XM``````'`0$``/________X!`````(```````0````&,``````,````!#````
XM``"`````PP?#O!\!@````(,,8<8Q@0````$##&&&/X(````#`PQA@#`&````
XM`@,'P\`?!`````0#``````@````,`P`````8````"`/^````$````!``````
XM`"`````P``````!@``?_______X`0``8```````]`,``,```````8(&``"&,
XM```.`$&!``!!C```!@"#`P``08Q\#X8P@`8``$'\!AC&8,0$``!!C#X8!\"`
XM"```08S&&,9@@!@``&&,>P^.,,!P```P``````!@P```&```````,X````?_
XM______X``````````````````````````````````````````````````%``
XM*@`"``'@\`,````````````````````````````````````````````````_
XM______@'@```_SS__W_]__P``/\<__Y__`/_``#_#/!\'_@`/P`!_R3G/G_X
XM``>``/\PX#Y_^`````#_..?^;_P`````?SSP?Q_\X````!_______C@`````
XM````````8#`````?_____@``````'/____X``````#S_____```````\^#Q#
XMX`,`````?/.>.<X#`````/SSGGG`8P````#\\YY_S_L````!_/@\/^#_@```
XM`_S______.````/\_____^`````'_`'____@````#_______P`````______
XM_X```````````?^```?______\+_```/______^??@``'G/___'_OGX``#YS
XM___Y_WS\```^<X/P><]_^```/@/YYSF??_@``#YSP>?X/W_P```^<SGG.9]_
XMX```'G.$\''//X````_______Y\````'_______,````````````````````
XM````````````````````````````````````````````````````````````
XM`````'_______/_```#```````?X?``!`,,``(`"``,``0#C``&``_P`@`,`
XM\P^#X`8#P,`"`-L8P8`$`#A``P#/'\&`!@`'P`$`QQ@!D`(``'@!@,,/@.`#
XM```&`.```````<```@`_________X#(````@`````0`"````8P````$_\@``
XM`$,`````C^0```##!\.\'\.(````@PQAQC'C<````0,,888_GX````,##&&`
XM,`<````"`P?#P!\'@```!`,`````'.````P#`````!@````(`_X````0````
XM$```````(````#```````&``!________@!``!@``````#T`P``P``````!@
XM@8``(8P```X`08$``$&,```&`(,#``!!C'P/AC"`!@``0?P&&,9@@`0``$&,
XM/A@'P(`(``!!C,88QF"`&```88Q[#XXPP'```#```````&#````8```````S
XM@```!________@``````````````````````````````````````````````
X5`!-365,Z571I;&ET:65S+TUO<F4`
X`
Xend
END_OF_FILE
if test 2541 -ne `wc -c <'amiga/GBinfo.uu'`; then
    echo shar: \"'amiga/GBinfo.uu'\" unpacked with wrong size!
fi
# end of 'amiga/GBinfo.uu'
fi
if test -f 'amiga/NHScore.uu' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'amiga/NHScore.uu'\"
else
echo shar: Extracting \"'amiga/NHScore.uu'\" \(2564 characters\)
sed "s/^X//" >'amiga/NHScore.uu' <<'END_OF_FILE'
Xbegin 644 NetHackScore.info
XMXQ```0``````#`!)`%``*P`&``,``0`IH@``*:(8````````````````````
XM````!/X`*&%0`"*7J````,H````^`````````````)Q```````!0`"H``@`"
XM.<@#````````````````````````````````````````````````/______X
XM!X```/\\__]__?_\``#_'/_^?_W__P``_PSP?!_Y__\``?\DYSY_^_S_@`#_
XM,.`^?_G^?X``_SCG_F_]_S^``'\\\'\?_/^_@``?______X_OX``````````
XM`'^`````'_______@````!_______P`````_______\`````(&#@Q'!^````
XM`$_.3F,G/@````#@S\YG(#P`````_DY.9^?X`````<#@X,/P>`````/_____
XM__`````#_______@````!_______X`````_______\`````/______^`````
XM``````'_@``'_______"_P``#_______GWX``!YS___Q_[Y^```^<___^?]\
XM_```/G.#\'G/?_@``#X#^><YGT?X```^<\'G^#\/\```/G,YYSF??^```!YS
XMA/!QSS^````/______^?````!_______S```````````````````````````
XM``````````````````````````````````````````````````````````!_
XM______S_P```P``````'^'P``0##``"``@`#``$`XP`!@`(``(`#`/,/@^`&
XM``#``@#;&,&`!`,`0`,`SQ_!@`8!@$`!`,<8`9`"`,!``8###X#@`P!`0`#@
XM``````'`0$``/________X!`````(```````0````&```````,````!`````
XM``"`````WY\?.X^!@````+`QL9S8P0````$?,#&8W\(````#`;&QF!@&````
XM`C\?'SP/A`````0```````@````,```````8````"```````$````!``````
XM`"`````P``````!@``?_______X`0``8```````]`,``,```````8(&``"&,
XM```.`$&!``!!C```!@"#`P``08Q\#X8P@`8``$'\!AC&8,0$``!!C#X8!\"`
XM"```08S&&,9@@!@``&&,>P^.,,!P```P``````!@P```&```````,X````?_
XM______X``````````````````````````````````````````````````%``
XM*@`"``(]$`,````````````````````````````````````````````````_
XM______@'@```_SS__W_]__P``/\<__Y__`/_``#_#/!\'_@`/P`!_R3G/G_X
XM``>``/\PX#Y_^`````#_..?^;_P`````?SSP?Q_\X````!_______C@`````
XM````````8#`````?_____@``````'_____X``````#______```````@8.#$
XM<`,`````3\Y.8R<#`````.#/SF<@(P````#^3DYGY_L````!P.#@P_!_@```
XM`________.````/______^`````'_______@````#_______P`````______
XM_X```````````?^```?______\+_```/______^??@``'G/___'_OAX``#YS
XM___Y_WS<```^<X/P><]#N```/@/YYSF?3O@``#YSP>?X/P'P```^<SGG.9]_
XMX```'G.$\''//X````_______Y\````'_______,````````````````````
XM````````````````````````````````````````````````````````````
XM`````'_______/_```#```````?X?``!`,,``(`"``,``0#C``&``_P`@`,`
XM\P^#X`8#P,`"`-L8P8`$`#A``P#/'\&`!@`'P`$`QQ@!D`(``'@!@,,/@.`#
XM```&`.```````<```@`_________X#(````@`````0`"````8`````$_\@``
XM`$``````C^0```#?GQ\[C\.(````L#&QG-CC<````1\P,9C?WX````,!L;&8
XM&`<````"/Q\?/`^'@```!```````'.````P``````!@````(```````0````
XM$```````(````#```````&``!________@!``!@``````#T`P``P``````!@
XM@8``(8P```X`08$``$&,```&`(/#``!!C'P/AC"#A@``0?P&&,9@S@0``$&,
XM/A@'P(`(``!!C,88QF"`&```88Q[#XXPP'```#```````&#````8```````S
XM@```!________@``````````````````````````````````````````````
XD`!!(86-K17AE.DYE=$AA8VL`````"`````I30T]212!A;&P`
X`
Xend
END_OF_FILE
if test 2564 -ne `wc -c <'amiga/NHScore.uu'`; then
    echo shar: \"'amiga/NHScore.uu'\" unpacked with wrong size!
fi
# end of 'amiga/NHScore.uu'
fi
if test -f 'amiga/NHinfo.uu' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'amiga/NHinfo.uu'\"
else
echo shar: Extracting \"'amiga/NHinfo.uu'\" \(2509 characters\)
sed "s/^X//" >'amiga/NHinfo.uu' <<'END_OF_FILE'
Xbegin 644 NetHack.info
XMXQ```0`````"$@`2`%``*P`&``,``0`C>P``(WN@````````````````````
XM`````R(``````````````@X````'`````````````)Q```````!0`"H``@`!
XM@;@#``````#_____________^/____QC___X__@____\8___^/_X#____&/_
XM__C_^,/___QC___X__CP___\8___^/_X_#___&/___C_^/\/__QC___X__C_
XMP__\8___^/_X__#__&````#_^/_\/_Q@````__C__P_\8___^/_X___#_&/_
XM__C_^/__\/QC___X__C___P``!__^/_X___\```'__C_^/__^`!CX'_X__C_
XM__`08_@?^/_X___P_&/^#_C_____\/___X________/____'____________
XMX____________^/________\``?#________^``!C_________!_P!______
XM___P__`_________^```/_________X`#A____________\/____________
XM#____________P?___________^'____________A________/___X?_____
XM__@/__^/_______\`__\#________@#_X#_________`'@#__________@`?
XM______________________________\`````````````!P````.<```'``?`
XM```#G```!P`'\````YP```<`!SP```.<```'``</```#G```!P`'`\```YP`
XM``<`!P#P``.<```'``<`/``#G```!P`'``\``Y____\`!P`#P`.?____``<`
XM`/`#G```!P`'```\`YP```<`!P``#P.<```'``<```,`````!P`'````````
XM``<`!P```!*<```'``<````/G```!P`'`````YP```<`````````````````
XM````````````````````````````````````````````````````````````
XM````````````````````````````````````````````````````````````
XM````````````````````````````````````````````````````````````
XM````````````````````````````````````````````````````````````
XM`````````````````````````````````````````````````````````%``
XM*@`"``&%``,``````/_____________X_____&/___C_^#____QC___X__@/
XM___\8___^/_XP____&/___C_^/#___QC___X__C\/__\8___^/_X_P___&/_
XM__C_^/_#__QC___X__C_\/_\8````/_X__P__&````#_^/__#_QC___X__C_
XM_\/\8___^/_X___P_&/___C_^/___```'__X__C___@```?_^/_X__^``&/@
XM?_C_^/_``!!C^!_X__C^``#\8_X/^/__^```____C_____,!D____\?____X
XM`!_____C____^``?____X_____P`/_P`!\/____^&'_X``&/_____QO_\'_`
XM'_________#_\#_________X```__________@`.'____________P______
XM______\/____________!____________X?___________^'_______\____
XMA_______^`___X________P#__P/_______^`/_@/________\`>`/______
XM___^`!_______________________________P`````````````'`````YP`
XM``<`!\````.<```'``?P```#G```!P`'/````YP```<`!P\```.<```'``<#
XMP``#G```!P`'`/```YP```<`!P`\``.<```'``<`#P`#G____P`'``/``Y__
XM__\`!P``\`.<```'``<``#P#G```!P`'```/`YP```<`!P```P`````'``<`
XM````````!P`'````$IP```<`!P````^<```'``<````#G```!P``````````
XM``````,!@````````````````````````?^```````````!_````````````
XM'````````````!@````````````8````````````&````````````#P`````
XM``````#G````````````````````````````````````````````````````
XM````````````````````````````````````````````````````````````
XK````````````````````````````````````````````````````````````
X`
Xend
END_OF_FILE
if test 2509 -ne `wc -c <'amiga/NHinfo.uu'`; then
    echo shar: \"'amiga/NHinfo.uu'\" unpacked with wrong size!
fi
# end of 'amiga/NHinfo.uu'
fi
if test -f 'amiga/NetHack.cnf' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'amiga/NetHack.cnf'\"
else
echo shar: Extracting \"'amiga/NetHack.cnf'\" \(2233 characters\)
sed "s/^X//" >'amiga/NetHack.cnf' <<'END_OF_FILE'
X# A '#' at the beginning of a line means the rest of the line is a comment.
X
X# This configuration file is set up for two cases, a person with a hard
X# disk as drive DH0:, and 1 person with two floppy disks.  If several people
X# are to use it, don't specify "name" or personal prefences like "dogname"
X# or "packorder" in OPTIONS.
X
X# To change configuration, comment out the unwanted configurations, and
X# remove the comment from the configuration you want.
X
X# Some options to set personal preferences.  If several people are to
X# use it, options like these should not be set.
X#OPTIONS=name:Janet-V,female,dogname:Fido,fruit:apricot
X#OPTIONS=packorder:")[%?+/=!(*0_`,endgame:10t/2a,noverbose
X
X# Other general options
X#OPTIONS=time,rest_on_space,nopickup
X
X# The search path for files like record, help, opthelp, etc.
XPATH=NetHack:
X
X# My own setup
XOPTIONS=name:Rhialto,catname:Killie,time,nopickup
X
X# A hard disk configuration.
X#
X#HACKDIR=DH0:/games/hack
X# The ";n" means don't prompt to insert a disk.
X#SAVE=;n
X#RAMDISK=Ram:
X#LEVELS=DH0:games/hack/bones
X#SAVE=DH0:/games/hack/bones;n
X
X# A 2-floppy configuration.
X#
XHACKDIR=NetHack:
XLEVELS=df1:
XSAVE=df1:save
XRAMDISK=Ram:
X
X# The 32 GRAPHICS characters (0-31) are:
X# stone, vertical wall, horizontal wall, top left corner, top right corner, 
X# bottom left corner, bottom right corner, crosswall, up T wall, down T wall, 
X# left T wall, right T wall, vertical beam, horizontal beam, left slant, right
X# slant, no door, vertical open door, horizontal open door, closed door,
X# floor, corridor, up stairs, down stairs, trap, web, pool,
X# fountain, sink, throne, altar, up ladder, down ladder, vertical drawbridge
X# wall, horizontal drawbridge wall 
X#
X# If you specify less that 32 ASCII values, the remaining characters will be
X# set to their respective defaults.
X#
X# Note that the hack.font has special graphics characters from 192 on.
X
X# An example using the hack.font graphics character set:
X#	   ' '  |   -   .   .   `   '   -   -   -   -   -   |   -   \   /   .   -   |   +   .   #   <   >   ^   "   }   {   #   \   _   <   >   #   #
XGRAPHICS = 032 192 193 194 195 196 197 198 216 214 215 213 192 193 092 047 046 193 192 198 046 035 060 062 094 034 125 123 035 092 095 060 062 035 035
END_OF_FILE
if test 2233 -ne `wc -c <'amiga/NetHack.cnf'`; then
    echo shar: \"'amiga/NetHack.cnf'\" unpacked with wrong size!
fi
# end of 'amiga/NetHack.cnf'
fi
if test -f 'amiga/NewGame.uu' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'amiga/NewGame.uu'\"
else
echo shar: Extracting \"'amiga/NewGame.uu'\" \(2535 characters\)
sed "s/^X//" >'amiga/NewGame.uu' <<'END_OF_FILE'
Xbegin 644 NewGame.info
XMXQ```0``````D0`2`%``*P`&``,``0`BTP``(P&8````````````````````
XM````!/X`(M-@`````````3<````'`````````````)Q```````!0`"H``@`!
XM@^@#``````#_____________^/____QC___X__@____\8___^/_X#____&/_
XM__C_^,/___QC___X__CP___\8___^/_X_#___&/___C_^/\/__QC___X__C_
XMP__\8___^/_X__#__&````#_^/_\/_Q@````__C__P_\8___^/_X___#_&/_
XM__C_^/__\/QC___X__C___P``!__^/_X___\```'__C_^/__^`!CX'_X__C_
XM__`08_@?^/_X___P_&/^#_C_____\/___X________/____'____\#______
XMX_____.?_____^/____SG__\``?#____\Y__^``!C_____.?__!_P!______
XM___P__`_____^#__^```/_____.?__X`#A_____P'_____\/____\_______
XM#_____@______P?___________^'____YY______A____^2?_/___X?____D
XMG_@/__^/____\S_\`__\#_____,__@#_X#_________`'@#__________@`?
XM______________________________\`````````````!P````.<```'``?`
XM```#G```!P`'\````YP```<`!SP```.<```'``</```#G```!P`'`\```YP`
XM``<`!P#P``.<```'``<`/``#G```!P`'``\``Y____\`!P`#P`.?____``<`
XM`/`#G```!P`'```\`YP```<`!P``#P.<```'``<```,`````!P`'````````
XM``<`!P```!*<```'``<````/G```!P`'`````YP```<`````````````````
XM````````````#\````````````Q@```````````,8```````````#&``````
XM``````Q@````````````````````````!\````````````Q@```````````/
XMX```````````#`````````````?`````````````````````````&&``````
XM`````!M@```````````;8```````````#,````````````S`````````````
XM`````````````````````````````````````````````````````````%``
XM*@`"``&7<`,``````/_____________X_____&/___C_^#____QC___X__@/
XM___\8___^/_XP____&/___C_^/#___QC___X__C\/__\8___^/_X_P___&/_
XM__C_^/_#__QC___X__C_\/_\8````/_X__P__&````#_^/__#_QC___X__C_
XM_\/\8___^/_X___P_&/___C_^/___```'__X__C___@```?_^/_X__^``&/@
XM?_C_^/_``!!C^!_X__C^``#\8_X/^/__^```____C_____,!D____\?____X
XM`!_____C____^``?____X_____P`/_P`!\/____\`'_X``&/_____`#_\'_`
XM'_____S\__#_\#______!__X```______G/__@`.'_____X#_____P_____^
XM?_____\/_____P?_____!____________X?____^>?____^'_____DG\____
XMA_____Y)^`___X______,_P#__P/_____S/^`/_@/________\`>`/______
XM___^`!_______________________________P`````````````'`````YP`
XM``<`!\````.<```'``?P```#G```!P`'/````YP```<`!P\```.<```'``<#
XMP``#G```!P`'`/```YP```<`!P`\``.<```'``<`#P`#G____P`'``/``Y__
XM__\`!P``\`.<```'``<``#P#G```!P`'```/`YP```<`!P```P`````'``<`
XM````````!P`'````$IP```<`!P````^<```'``<````#G```!P``````````
XM``````,!@```````````````````````````````````````````````````
XM`````````````P$```````````,;````````````^````````````;P`````
XM``````'_```````````!@````````````/@````````````````````````!
XMA@```````````;8```````````&V````````````S````````````,P`````
XM````````````````````````````````````````````````````````````
X2`!!(86-K17AE.DYE=$AA8VL`
X`
Xend
END_OF_FILE
if test 2535 -ne `wc -c <'amiga/NewGame.uu'`; then
    echo shar: \"'amiga/NewGame.uu'\" unpacked with wrong size!
fi
# end of 'amiga/NewGame.uu'
fi
if test -f 'amiga/ami.lnk' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'amiga/ami.lnk'\"
else
echo shar: Extracting \"'amiga/ami.lnk'\" \(1526 characters\)
sed "s/^X//" >'amiga/ami.lnk' <<'END_OF_FILE'
X	O_Src1:allmain.o	O_Src1:alloc.o		O_Src1:apply.o
X	O_Src1:artifact.o	O_Src1:attrib.o		O_Src1:bones.o
X	O_Src1:cmd.o		O_Src1:dbridge.o	O_Src1:decl.o
X	O_Src1:demon.o		O_Src1:do.o		O_Src1:do_name.o
X	O_Src1:do_wear.o	O_Src1:dog.o		O_Src1:dogmove.o
X	O_Src1:dokick.o		O_Src1:dothrow.o	O_Src1:eat.o
X	O_Src1:end.o		O_Src1:engrave.o	O_Src1:exper.o
X	O_Src1:extralev.o	O_Src1:fountain.o	O_Src1:getline.o
X	O_Src1:hack.o		O_Src1:invent.o		O_Src1:lock.o
X
X	O_Src2:mail.o		O_Src2:makemon.o	O_Src2:mcastu.o
X	O_Src2:mhitm.o		O_Src2:mhitu.o		O_Src2:mklev.o
X	O_Src2:mkmaze.o		O_Src2:mkobj.o		O_Src2:mkroom.o
X	O_Src2:mon.o		O_Src2:mondata.o	O_Src2:monmove.o
X	O_Src2:monst.o		O_Src2:mthrowu.o	O_Src2:music.o
X	O_Src2:o_init.o		O_Src2:objects.o	O_Src2:objnam.o
X	O_Src2:options.o	O_Src2:pager.o		O_Src2:pickup.o
X	O_Src2:polyself.o	O_Src2:potion.o
X
X	O_Src3:pray.o		O_Src3:pri.o		O_Src3:priest.o
X	O_Src3:prisym.o		O_Src3:read.o		O_Src3:restore.o
X	O_Src3:rip.o		O_Src3:rnd.o		O_Src3:rumors.o
X	O_Src3:save.o		O_Src3:search.o		O_Src3:shk.o
X	O_Src3:shknam.o		O_Src3:sit.o		O_Src3:sounds.o
X	O_Src3:sp_lev.o		O_Src3:spell.o		O_Src3:steal.o
X	O_Src3:timeout.o	O_Src3:topl.o		O_Src3:topten.o
X	O_Src3:track.o		O_Src3:trap.o		O_Src3:u_init.o
X	O_Src3:uhitm.o		O_Src3:vault.o		O_Src3:version.o
X	O_Src3:weapon.o		O_Src3:were.o		O_Src3:wield.o
X	O_Src3:wizard.o		O_Src3:worm.o		O_Src3:worn.o
X	O_Src3:write.o		O_Src3:zap.o
X
X	O_Amiga:amidos.o	O_Amiga:amitcap.o	O_Amiga:amitty.o
X	O_Amiga:amiunix.o	O_Amiga:amiwbench.o	O_Amiga:amiwind.o
X
X	O_Others:pcmain.o	O_Others:random.o
END_OF_FILE
if test 1526 -ne `wc -c <'amiga/ami.lnk'`; then
    echo shar: \"'amiga/ami.lnk'\" unpacked with wrong size!
fi
# end of 'amiga/ami.lnk'
fi
if test -f 'amiga/dflticon.uu' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'amiga/dflticon.uu'\"
else
echo shar: Extracting \"'amiga/dflticon.uu'\" \(2535 characters\)
sed "s/^X//" >'amiga/dflticon.uu' <<'END_OF_FILE'
Xbegin 644 default.icon
XMXQ```0`````"'P`;`%``*P`&``,``0`CB-@`(XH`````````````````````
XM````!/X`(X50`````````F@````&``````````````````````!0`"H``@`!
XMR2@#``````#_____________^/____QC___X__@____\8___^/_X#____&/_
XM__C_^,/___QC___X__CP___\8___^/_X_#___&/___C_^/\/__QC___X__C_
XMP__\8___^/_X__#__&````#_^/_\/_Q@````__C__P_\8___^/_X___#_&/_
XM__C_^/__\/QC___X__C___P``!__^/_X___\```'__C_^/__^`!CX'_X__C_
XM__`08_@?^/_X___P_&/^#_C_____\/___X________/____'____________
XMX____________^/________\``?#________^``!C_________!_P!______
XM___P__`_________^```/_________X`#A__________^/\/__________S_
XM#___X'!YYX/$_P?__\__.><YF/^'___@^#S/`9S_A____F<^'#^<_X?__\#P
XMGS@#PG^/_______\`__\#________@#_X#_________`'@#__________@`?
XM______________________________\`````````````!P````.<```'``?`
XM```#G```!P`'\````YP```<`!SP```.<```'``</```#G```!P`'`\```YP`
XM``<`!P#P``.<```'``<`/``#G```!P`'``\``Y____\`!P`#P`.?____``<`
XM`/`#G```!P`'```\`YP```<`!P``#P.<```'``<```,`````!P`'````````
XM``<`!P```!*<```'``<````/G```!P`'`````YP```<`````````````````
XM````````````````````````````````````````````````````````````
XM````````````````````````````````````````````````````````````
XM````!P````````````,`````'X^&&'P[`````#``QAC&9P`````?!\,P_F,`
XM`````9C!X,!C`````#\/8,!\/8``````````````````````````````````
XM`````````````````````````````````````````````````````````%``
XM*@`"``'[@`,``````/_____________X_____&/___C_^#____QC___X__@/
XM___\8___^/_XP____&/___C_^/#___QC___X__C\/__\8___^/_X_P___&/_
XM__C_^/_#__QC___X__C_\/_\8````/_X__P__&````#_^/__#_QC___X__C_
XM_\/\8___^/_X___P_&/___C_^/___```'__X__C___@```?_^/_X__^``&/@
XM?_C_^/_``!!C^!_X__C^``#\8_X/^/__^```____C_____,!D____\?____X
XM`!_____C____^``?____X_____P`/_P`!\/____^&'_X``&/_____QO_\'_`
XM'_________#_\#_________X```__________@`.'___________'P______
XM_____Y\/___\#@\\\'B?!___^?_G/.<S'X?___P?!YG@,Y^'____S.?`Y_.?
XMA___^!X3X`!X3X________P#__P/_______^`/_@/________\`>`/______
XM___^`!_______________________________P`````````````'`````YP`
XM``<`!\````.<```'``?P```#G```!P`'/````YP```<`!P\```.<```'``<#
XMP``#G```!P`'`/```YP```<`!P`\``.<```'``<`#P`#G____P`'``/``Y__
XM__\`!P``\`.<```'``<``#P#G```!P`'```/`YP```<`!P```P`````'``<`
XM````````!P`'````$IP```<`!P````^<```'``<````#G```!P``````````
XM``````,!@````````````````````````?^```````````!_````````````
XM'````````````!@````````````8````````````&````````````#P`````
XM``````#G````X````````````&`````#\?###X=@````!@`8PQC,X`````/@
XM^&8?S&``````,Q@\&`Q@````!^'L&`^'L```````````````````````````
XM````````````````````````````````````````````````````````````
X2`!!(86-K17AE.DYE=$AA8VL`
X`
Xend
END_OF_FILE
if test 2535 -ne `wc -c <'amiga/dflticon.uu'`; then
    echo shar: \"'amiga/dflticon.uu'\" unpacked with wrong size!
fi
# end of 'amiga/dflticon.uu'
fi
if test -f 'include/flag.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'include/flag.h'\"
else
echo shar: Extracting \"'include/flag.h'\" \(2833 characters\)
sed "s/^X//" >'include/flag.h' <<'END_OF_FILE'
X/*	SCCS Id: @(#)flag.h	3.0	89/02/02
X/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
X/* NetHack may be freely redistributed.  See license for details. */
X
X#ifndef FLAG_H
X#define FLAG_H
X
Xstruct flag {
X	unsigned ident;		/* social security number for each monster */
X	boolean  debug;		/* in debugging mode */
X#define	wizard	flags.debug
X	boolean  explore;	/* in exploration mode */
X#define	discover	flags.explore
X	unsigned toplin;	/* a top line (message) has been printed */
X				/* 0: top line empty; 2: no --More-- reqd. */
X	boolean  cbreak;	/* in cbreak mode, rogue format */
X	boolean  standout;	/* use standout for --More-- */
X	boolean  nonull;	/* avoid sending nulls to the terminal */
X	boolean  ignintr;	/* ignore interrupts */
X	boolean  time;		/* display elapsed 'time' */
X	boolean  nonews;	/* suppress news printing */
X	boolean  notombstone;
X	unsigned end_top, end_around;	/* describe desired score list */
X	boolean  end_own;		/* idem (list all own scores) */
X	boolean  no_rest_on_space;	/* spaces are ignored */
X	boolean  beginner;
X	boolean  female;
X	boolean  invlet_constant;	/* let objects keep their
X					   inventory symbol */
X	boolean  move;
X	boolean  mv;
X	unsigned run;		/* 0: h (etc), 1: H (etc), 2: fh (etc) */
X				/* 3: FH, 4: ff+, 5: ff-, 6: FF+, 7: FF- */
X	boolean  nopick;	/* do not pickup objects (as when running) */
X	boolean  echo;		/* 1 to echo characters */
X	boolean  botl;		/* partially redo status line */
X	boolean  botlx;		/* print an entirely new bottom line */
X	boolean  nscrinh;	/* inhibit nscr() in pline(); */
X	boolean  made_amulet;
X	unsigned no_of_wizards;	/* 0, 1 or 2 (wizard and his shadow) */
X				/* reset from 2 to 1, but never to 0 */
X	unsigned moonphase;
X#define	NEW_MOON	0
X#define	FULL_MOON	4
X
X	boolean  sortpack;	/* sorted inventory */
X	boolean  confirm;	/* confirm before hitting tame monsters */
X	boolean  safe_dog;	/* give complete protection to the dog */
X	boolean  soundok;	/* ok to tell about sounds heard */
X	boolean  verbose;	/* max battle info */
X	boolean  silent;	/* whether the bell rings or not */
X	boolean  pickup;	/* whether you pickup or move and look */
X	boolean  num_pad;	/* use numbers for movement commands */
X	boolean  help;		/* look in data file for info about stuff */
X	boolean  IBMgraphics;	/* use IBM extended character set */
X	boolean  DECgraphics;	/* use DEC VT-xxx extended character set */
X#ifdef TEXTCOLOR
X	boolean  use_color;	/* use color graphics */
X#endif
X#ifdef AMIFLUSH
X	boolean amiflush;	/* kill typeahead */
X#endif
X#ifdef DGK
X	boolean  IBMBIOS;	/* whether we can use a BIOS call for
X				 * redrawing the screen and character input */
X	boolean  rawio;		/* Whether can use rawio (IOCTL call) */
X#endif
X#ifdef MACOS
X	boolean  wantspace;		/* Waiting for a space (as in --More--) */
X#endif
X};
X
Xextern struct flag flags;
X
X#endif /* FLAG_H /**/
END_OF_FILE
if test 2833 -ne `wc -c <'include/flag.h'`; then
    echo shar: \"'include/flag.h'\" unpacked with wrong size!
fi
# end of 'include/flag.h'
fi
if test -f 'include/func_tab.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'include/func_tab.h'\"
else
echo shar: Extracting \"'include/func_tab.h'\" \(529 characters\)
sed "s/^X//" >'include/func_tab.h' <<'END_OF_FILE'
X/*	SCCS Id: @(#)func_tab.h	3.0	88/10/15
X/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
X/* NetHack may be freely redistributed.  See license for details. */
X/* func_tab.h - version 1.0.2 */
X
X#ifndef FUNC_TAB_H
X#define FUNC_TAB_H
X
Xstruct func_tab {
X	char f_char;
X	int NDECL((*f_funct));
X	const char *f_text;
X};
X
Xextern const struct func_tab cmdlist[];
X
Xstruct ext_func_tab {
X	const char *ef_txt, *ef_desc;
X	int NDECL((*ef_funct));
X};
X
Xextern const struct ext_func_tab extcmdlist[];
X
X#endif /* FUNC_TAB_H /**/
END_OF_FILE
if test 529 -ne `wc -c <'include/func_tab.h'`; then
    echo shar: \"'include/func_tab.h'\" unpacked with wrong size!
fi
# end of 'include/func_tab.h'
fi
if test -f 'include/mkroom.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'include/mkroom.h'\"
else
echo shar: Extracting \"'include/mkroom.h'\" \(2294 characters\)
sed "s/^X//" >'include/mkroom.h' <<'END_OF_FILE'
X/*	SCCS Id: @(#)mkroom.h	3.0	89/01/07
X/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
X/* NetHack may be freely redistributed.  See license for details. */
X
X#ifndef MKROOM_H
X#define MKROOM_H
X
X/* mkroom.h - types and structures for room and shop initialization */
X
Xstruct mkroom {
X	schar lx,hx,ly,hy;	/* usually xchar, but hx may be -1 */
X	schar rtype,rlit,doorct,fdoor;
X};
X
Xstruct shclass {
X	const char	*name;	/* name of the shop type */
X	char	symb;	/* this identifies the shop type */
X	int	prob;	/* the shop type probability in % */
X	schar	dist;	/* artifact placement type */
X#define D_SCATTER	0	/* normal placement */
X#define D_SHOP		1	/* shop-like placement */
X#define D_TEMPLE	2	/* temple-like placement */
X	struct itp {
X	    int	iprob;	/* probability of an item type */
X	    int itype;	/* item type: if >=0 a class, if < 0 a specific item */
X	} iprobs[5];
X	char **shknms;	/* string list of shopkeeper names for this type */
X};
Xextern const struct shclass shtypes[];	/* defined in shknam.c */
X
Xextern struct mkroom rooms[MAXNROFROOMS+1];
X/* the normal rooms on the current level are described in rooms[0..n] for
X * some n<MAXNROFROOMS
X * the vault, if any, is described by rooms[n+1]
X * the next rooms entry has hx -1 as a flag
X * there is at most one non-vault special room on a level
X */
Xextern coord doors[DOORMAX];
X
X/* values for rtype in the room definition structure */
X#define OROOM		 0	/* ordinary room */
X#define COURT		 2	/* contains a throne */
X#define	SWAMP		 3	/* contains pools */
X#define	VAULT		 4	/* contains piles of gold */
X#define	BEEHIVE		 5	/* contains killer bees and royal jelly */
X#define	MORGUE		 6	/* contains corpses, undead and ghosts */
X#define BARRACKS	 7	/* contains soldiers and their gear */
X#define	ZOO		 8	/* floor covered with treasure and monsters */
X#define DELPHI		 9	/* contains Oracle and peripherals */
X#define	TEMPLE		10	/* contains a shrine */
X#define	SHOPBASE	11	/* everything above this is a shop */
X#define ARMORSHOP	12	/* specific shop defines for level compiler */
X#define	SCROLLSHOP	13
X#define	POTIONSHOP	14
X#define	WEAPONSHOP	15
X#define	FOODSHOP	16
X#define	RINGSHOP	17
X#define	WANDSHOP	18
X#define	TOOLSHOP	19
X#ifdef SPELLS
X#define	BOOKSHOP	20
X#endif
X
X#define IS_SHOP(x)	((x).rtype >= SHOPBASE)
X
X#endif /* MKROOM_H /**/
END_OF_FILE
if test 2294 -ne `wc -c <'include/mkroom.h'`; then
    echo shar: \"'include/mkroom.h'\" unpacked with wrong size!
fi
# end of 'include/mkroom.h'
fi
if test -f 'include/pcconf.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'include/pcconf.h'\"
else
echo shar: Extracting \"'include/pcconf.h'\" \(2488 characters\)
sed "s/^X//" >'include/pcconf.h' <<'END_OF_FILE'
X/*	SCCS Id: @(#)pcconf.h	3.0	88/07/21
X/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
X/* NetHack may be freely redistributed.  See license for details. */
X
X#ifdef MSDOS
X#ifndef PCCONF_H
X#define PCCONF_H
X
X#if !defined(TOS) && !defined(AMIGA)
X
X/* #define MSC		/* define for pre-ANSI Microsoft C compilers (ver. < 5.0). */
X
X/* #define OS2		/* define for OS/2 (Timo Hakulinen) */
X/* #define OS2_CODEVIEW	/* define for OS/2 CodeView debugger versions earlier
X			   than 2.3, otherwise path searches may fail */
X/*
X *  The following options are configurable:
X */
X
X#define OVERLAY 		/* MS DOS overlay manager - PGM */
X
X#define DGK			/* MS DOS specific enhancements by dgk */
X
X#define TERMLIB 		/* enable use of termcap file /etc/termcap */
X			/* or ./termcap for MSDOS (SAC) */
X			/* compile and link in Fred Fish's termcap library, */
X			/* enclosed in TERMCAP.ARC, to use this */
X#define ANSI_DEFAULT	/* allows NetHack to run without a ./termcap */
X
X#define RANDOM		/* have Berkeley random(3) */
X
X#define SHELL		/* via exec of COMMAND.COM */
X
X#endif /* TOS */
X
X#define PATHLEN 	64	/* maximum pathlength */
X#define FILENAME	80	/* maximum filename length (conservative) */
X#ifndef MSDOS_H
X#include "msdos.h"      /* contains necessary externs for [os_name].c */
X#endif
X#define glo(x)	name_file(lock, (int)x) /* name_file used for bones */
Xextern const char *configfile;
X
X#ifdef DGK
X
X/*	Non-Selectable DGK options:
X */
X# define FROMPERM	 1	/* for ramdisk use */
X# define TOPERM 	 2	/* for ramdisk use */
X
X#endif /* DGK /**/
X
X/*
X *  The remaining code shouldn't need modification.
X */
X
X#ifndef SYSTEM_H
X#include "system.h"
X#endif
X#define index	strchr
X#define rindex	strrchr
X
X#ifndef AMIGA
X#include <time.h>
X#endif
X
X#ifdef RANDOM
X/* Use the high quality random number routines. */
X#define Rand()	random()
X#define Srand(seed)	srandom(seed)
X#else
X#define Rand()	rand()
X#define Srand(seed)	srand(seed)
X#endif /* RANDOM */
X
X#ifdef __TURBOC__
X#define alloc	malloc
X# if __TURBOC__ < 0x0200 /* version 2.0 has signal() */
X#define signal	ssignal
X# endif
X/* rename the next two functions - they clash with the Turbo C library */
X#define getdate getdate_
X#define itoa itoa_
X#endif
X
X#ifndef TOS
X#define FCMASK	0660	/* file creation mask */
X#endif
X
X#include <fcntl.h>
X
X#define exit	msexit		/* do chdir first */
X
X#ifndef REDO
X#undef	Getchar
X#define Getchar tgetch
X#endif
X
X#if !defined(TOS) && !defined(AMIGA)
X#  define TEXTCOLOR /* */
X#endif
X
X#endif /* PCCONF_H /* */
X#endif /* MSDOS /* */
END_OF_FILE
if test 2488 -ne `wc -c <'include/pcconf.h'`; then
    echo shar: \"'include/pcconf.h'\" unpacked with wrong size!
fi
# end of 'include/pcconf.h'
fi
if test -f 'include/permonst.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'include/permonst.h'\"
else
echo shar: Extracting \"'include/permonst.h'\" \(2902 characters\)
sed "s/^X//" >'include/permonst.h' <<'END_OF_FILE'
X/*	SCCS Id: @(#)permonst.h	3.0	88/04/05
X/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
X/* NetHack may be freely redistributed.  See license for details. */
X
X#ifndef PERMONST_H
X#define PERMONST_H
X
X/*	This structure covers all attack forms.
X *	aatyp is the gross attack type (eg. claw, bite, breath, ...)
X *	adtyp is the damage type (eg. physical, fire, cold, spell, ...)
X *	damn is the number of hit dice of damage from the attack.
X *	damd is the number of sides on each die.
X *
X *	Some attacks can do no points of damage.  Additionally, some can
X *	have special effects *and* do damage as well.  If damn and damd
X *	are set, they may have a special meaning.  For example, if set
X *	for a blinding attack, they determine the amount of time blinded.
X */
X
Xstruct attack {
X	uchar           aatyp;
X	uchar           adtyp, damn, damd;
X};
X
X/*	Max # of attacks for any given monster.
X */
X
X#define	NATTK	5
X
X#include "monattk.h"
X#include "monflag.h"
X
Xstruct permonst {
X
X#if defined(SMALLDATA) && !defined(MAKEDEFS_C)
X	char		mname[24], mlet;		/* full name and sym */
X#else
X	const char	*mname;			/* full name */
X	char		mlet;			/* symbol */
X#endif
X	schar		mlevel,			/* base monster level */
X			mmove,			/* move speed */
X			ac,			/* (base) armor class */
X			mr,			/* (base) magic resistance */
X			maligntyp;		/* basic monster alignment */
X	unsigned	geno;			/* creation/geno mask value */
X	struct	attack	mattk[NATTK];		/* attacks matrix */
X	unsigned	cwt,			/* weight of corpse */
X			cnutrit;		/* its nutritional value */
X	short		pxlth;			/* length of extension */
X	uchar		msound; 		/* noise it makes (6 bits) */
X	uchar		msize;			/* physical size (3 bits) */
X	long		mflags1,		/* boolean bitflags */
X			mflags2;		/* more boolean bitflags */
X# ifdef TEXTCOLOR
X	uchar		mcolor;			/* color to use */
X# endif
X};
X
Xextern struct permonst
X#if defined(SMALLDATA) && !defined(MAKEDEFS_C)
X			*mons;
X#else
X	NEARDATA	mons[];		/* the master list of monster types */
X#endif
Xextern struct permonst NEARDATA playermon, NEARDATA *uasmon;
X						/* you in the same terms */
X
X#if defined(SMALLDATA) && defined(MAKEDEFS_C)
X
Xtypedef struct pmpart {
X	char		mlet;			/* full name and sym */
X	schar		mlevel,			/* base monster level */
X			mmove,			/* move speed */
X			ac,			/* (base) armor class */
X			mr,			/* (base) magic resistance */
X			maligntyp;		/* basic monster alignment */
X	unsigned	geno;			/* creation/geno mask value */
X	struct	attack	mattk[NATTK];		/* attacks matrix */
X	unsigned	cwt,			/* weight of corpse */
X			cnutrit;		/* its nutritional value */
X	short		pxlth;			/* length of extension */
X	uchar		msound;			/* noise it makes */
X	long		mflags1,		/* boolean bitflags */
X			mflags2;		/* more boolean bitflags */
X# ifdef TEXTCOLOR
X	uchar		mcolor;			/* color to use */
X# endif
X} pmpart;
X
Xtypedef struct pmstr {
X	char		mname[24];		/* full name and sym */
X	pmpart		pmp;
X} pmstr;
X
X#endif
X
X#endif /* PERMONST_H /**/
END_OF_FILE
if test 2902 -ne `wc -c <'include/permonst.h'`; then
    echo shar: \"'include/permonst.h'\" unpacked with wrong size!
fi
# end of 'include/permonst.h'
fi
if test -f 'include/sp_lev.h' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'include/sp_lev.h'\"
else
echo shar: Extracting \"'include/sp_lev.h'\" \(2025 characters\)
sed "s/^X//" >'include/sp_lev.h' <<'END_OF_FILE'
X/*	SCCS Id: @(#)sp_lev.h	3.0	88/18/12
X/* 	Copyright (c) 1989 by Jean-Christophe Collet */
X/* NetHack may be freely redistributed.  See license for details. */
X
X#define W_NORTH     0
X#define W_SOUTH     2
X#define W_EAST	    1
X#define W_WEST	    3
X
X/* 
X * Structures manipulated by the special levels loader & compiler
X */
X
Xtypedef struct {
X	xchar x, y, mask;
X} door;
X
Xtypedef struct {
X	xchar x, y, type;
X} trap;
X
Xtypedef struct {
X	xchar x, y, class;
X	short id;
X} monster;
X
Xtypedef struct {
X	xchar x, y, class;
X	short id;
X} object;
X
Xtypedef struct {
X	xchar x, y, align, shrine;
X} altar;
X
Xtypedef struct {
X	xchar x, y, dir, open;
X} drawbridge;
X
Xtypedef struct {
X	xchar x, y, dir;
X} walk;
X
Xtypedef struct {
X	xchar x1, y1, x2, y2;
X} digpos;
X
Xtypedef struct {
X	xchar x, y, up;
X} lad;
X
Xtypedef struct {
X	xchar x1, y1, x2, y2;
X	xchar rtype, rlit;
X} region;
X
Xtypedef struct {
X	char halign, valign;
X	char xsize, ysize;
X	char **map;
X	char nrobjects;
X	char *robjects;
X	char nloc;
X	char *rloc_x;
X	char *rloc_y;
X	char nrmonst;
X	char *rmonst;
X	char nreg;
X	region **regions;
X	char ndoor;
X	door **doors;
X	char ntraps;
X	trap **traps;
X	char nmonster;
X	monster **monsters;
X	char nobjects;
X	object **objects;
X	char ndrawbridge;
X	drawbridge **drawbridges;
X	char nwalk;
X	walk **walks;
X	char ndig;
X	digpos **digs;
X	char nlad;
X	lad **lads;
X#ifdef ALTARS
X	char naltar;
X	altar **altars;
X#endif /* ALTARS /**/
X} mazepart;
X    
Xtypedef struct {
X	char numpart;
X	mazepart **parts;
X} specialmaze;
X
Xtypedef struct {
X	xchar x, y, w, h;
X	xchar rtype, rlit;
X	char ndoor;
X	door **doors;
X	char ntraps;
X	trap **traps;
X	char nmonster;
X	monster **monsters;
X	char nobjects;
X	object **objects;
X#ifdef ALTARS
X	char naltar;
X	altar **altars;
X#endif /* ALTARS /**/
X} room;
X
Xtypedef struct {
X	xchar x1,y1, x2,y2;
X} corridor;
X
Xtypedef struct {
X	xchar nroom;
X	room **rooms;
X	xchar ncorr;
X	corridor **corrs;
X	char ntraps;
X	trap **traps;
X	char nmonster;
X	monster **monsters;
X	char nobjects;
X	object **objects;
X	xchar xdnstairs, ydnstairs;
X	xchar xupstairs, yupstairs;
X} splev;
END_OF_FILE
if test 2025 -ne `wc -c <'include/sp_lev.h'`; then
    echo shar: \"'include/sp_lev.h'\" unpacked with wrong size!
fi
# end of 'include/sp_lev.h'
fi
if test -f 'mac/Segments.mac' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'mac/Segments.mac'\"
else
echo shar: Extracting \"'mac/Segments.mac'\" \(2170 characters\)
sed "s/^X//" >'mac/Segments.mac' <<'END_OF_FILE'
XSegments.mac
X============
X
XFor THINK C users (v.3.01p4 and 4), you have to construct a project.
XThe mods I made in allmain.c make use of the placement of the
Xsource files in each segment.  Except for Segment 1 below, changing
Xthe contents of any of the other segments is fine as long as you
Xmake sure the UnloadSeg's still refer to a routine in all segments
Xexcept for Segment 1.
XThis is just an example of the layout of a project. It takes time
Xto do this.  Probably the slowest part of THINK C!
XFor THINK C 4 users, the 5 or so different libraries are replaced
Xby the ANSI and unix libraries of v.4. - JL
XFor other compilers, you can still follow the same format, though
XI haven't done it myself yet.
X
X===== Seg 1 =====
Xallmain.c
Xalloc.c
Xcmd.c
Xgetline.c
Xmac.c
XMacTraps
Xpcunix.c
Xrandom.c
Xrnd.c
Xtermcap.c
Xtopl.c
X
X===== Seg 2 =====
Xmkobj.c
Xmkroom.c
Xmon.c
Xmondata.c
Xmonmove.c
Xtrack.c
Xwere.c
X
X===== Seg 3 =====
Xengrave.c
Xhack.c
Xinvent.c
Xmthrowu.c
X
X===== Seg 4 =====
Xdbridge.c
Xdog.c
Xdogmove.c
Xpri.c
Xpriest.c
X
X===== Seg 5 =====
Xshk.c
Xshknam.c
Xtrap.c
X
X===== Seg 6 =====
Xstdio [LIB]
Xstorage [LIB]
Xstrings [LIB]
XMath [LIB]
Xunix [LIB]
X
X===== Seg 7 =====
Xmakemon.c
Xmkmaze.c
Xprisym.c
Xread.c
X
X===== Seg 8 =====
Xartifact.c
Xattrib.c
Xsearch.c
Xsounds.c
Xtimeout.c
Xwizard.c
X
X===== Seg 9 =====
Xmhitu.c
X
X===== Seg 10 =====
Xdo_name.c
Xpickup.c
Xweapon.c
X
X===== Seg 11 =====
Xmcastu.c
Xmhitm.c
Xpolyself.c
X
X===== Seg 12 =====
Xlock.c
Xvault.c
X
X===== Seg 13 =====
Xdecl.c
Xmacfile.c
Xmacinit.c
Xmonst.c
Xobjects.c
Xoptions.c
Xo_init.c
Xpcmain.c
Xpctty.c
Xu_init.c
Xversion.c
X
X===== Seg 14 =====
Xapply.c
Xexper.c
X
X===== Seg 15 =====
Xdothrow.c
Xsit.c
Xwield.c
Xworn.c
Xwrite.c
X
X===== Seg 16 =====
Xpager.c
Xrumors.c
X
X===== Seg 17 =====
Xdemon.c
Xdo.c
Xsteal.c
Xworm.c
X
X===== Seg 18 =====
Xend.c
Xrip.c
Xtopten.c
X
X===== Seg 19 =====
Xfountain.c
Xpotion.c
X
X===== Seg 20 =====
Xpray.c
X
X===== Seg 21 =====
Xsp_lev.c
X
X===== Seg 22 =====
Xmklev.c
Xrestore.c
Xsave.c
X
X===== Seg 23 =====
Xmusic.c
Xspell.c
X
X===== Seg 24 =====
Xbones.c
XMacAlert.c
X
X===== Seg 25 =====
Xdo_wear.c
X
X===== Seg 26 =====
Xextralev.c
X
X===== Seg 27 =====
Xdokick.c
X
X===== Seg 28 =====
Xzap.c
X
X===== Seg 29 =====
Xeat.c
X
X===== Seg 30 =====
Xuhitm.c
X
X===== Seg 31 =====
Xobjnam.c
END_OF_FILE
if test 2170 -ne `wc -c <'mac/Segments.mac'`; then
    echo shar: \"'mac/Segments.mac'\" unpacked with wrong size!
fi
# end of 'mac/Segments.mac'
fi
if test -f 'mac/macfile.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'mac/macfile.c'\"
else
echo shar: Extracting \"'mac/macfile.c'\" \(2491 characters\)
sed "s/^X//" >'mac/macfile.c' <<'END_OF_FILE'
X/*	SCCS Id: @(#)macfile.c	3.0	88/08/05
X/*      Copyright (c) Johnny Lee, 1989.		 */
X/* NetHack may be freely redistributed.  See license for details. */
X
X/*	Common routines to locate files using mac dialog boxes */
X
X#include "config.h"
X#ifdef MACOS
X
X#define	LARGE_SFGETDLG	-4000
Xshort
XfindNamedFile(filename,type,reply)
Xchar	*filename;
Xshort	type;	/* if 0 - don't care if name matches selected file */
XSFReply	*reply;
X{
X	DialogPtr	dialog;
X	short	numTypes;
X	SFTypeList	types;	
X	Str255	prompt, name;
X	Point	where;
X	short	ok;
X	DialogRecord	storage;
X	
X	name[0] = (char)strlen(filename);
X	Strcpy((char *)&name[1], filename);
X	SetResLoad(TRUE);
X	
X	if (type == 1)
X		ParamText("\005 save","\004 for",name,"");
X	else
X		ParamText("","",name,"");
X	
X	where.h = 80;
X	where.v = 111;
X	ok = FALSE;
X	
X	switch (type) {
X	  case 0:	/* don't care what file gets loaded */
X	  	numTypes = -1;
X	  	break;
X	  case 1:	/* limit what types of files can be selected */
X	  	numTypes = 2;
X		types[0] = SAVE_TYPE;
X		types[1] = EXPLORE_TYPE;
X		break;
X	  case 2:	/* unlimited types of files but names have to match*/
X	  	numTypes = -1;
X	  	break;
X	}
X	reply->good = TRUE;
X	do {
X		SFPGetFile(where,prompt,0L,numTypes,types,0L,reply,LARGE_SFGETDLG,0L);
X		if (reply->good) {
X			if ((type == 2 && 
X				!strncmp((char *)&name[1],
X				    (char *)&(reply->fName[1]), (short)name[0]))
X				 || (type<2)) {
X				SetVol(0L,reply->vRefNum);
X				ok = TRUE;
X			}
X		}
X	} while (!ok && reply->good);
X
X	return ok;
X}
X
X#ifdef CUSTOM_IO
Xextern WindowPtr HackWindow;
Xextern short macflags;
X/*	this function also gets called by topten() in topten.c to
X *	locate the record file, but it doesn't matter at this point
X *	since the game is over by now. If nethack ever restarts,
X *	this will have to change.
X */
X
XFILE *
XopenFile(fileName, rdmode)
Xchar	*fileName, *rdmode;
X{
X	term_info *t;
X	FILE	*fp;
X		
X	t = (term_info *)GetWRefCon(HackWindow);
X
X	SetVol(0L, t->recordVRefNum);
X	fp = fopen(fileName, rdmode);
X	if (!fp) {		
X		SFReply	reply;
X
X		if (t->auxFileVRefNum) {
X			SetVol(0L,t->auxFileVRefNum);
X		}
X		
X		reply.good = false;
X		fp = fopen(fileName, rdmode);
X		if (!fp && findNamedFile(fileName,2,&reply)) {
X			if (reply.good) {
X				t->auxFileVRefNum = reply.vRefNum;
X			}
X		}
X		
X		if (!fp)
X			fp = fopen(fileName, rdmode);
X		else if (!t->auxFileVRefNum && reply.good) {
X			(void)GetVol((StringPtr)&reply.fName,&t->auxFileVRefNum);
X		}
X
X		SetPort(HackWindow);
X		if ((macflags & fDoUpdate) && !reply.good)
X			docrt();
X
X	}
X
X	return fp;
X}
X#endif
X#endif
END_OF_FILE
if test 2491 -ne `wc -c <'mac/macfile.c'`; then
    echo shar: \"'mac/macfile.c'\" unpacked with wrong size!
fi
# end of 'mac/macfile.c'
fi
if test -f 'others/atari.cnf' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'others/atari.cnf'\"
else
echo shar: Extracting \"'others/atari.cnf'\" \(2801 characters\)
sed "s/^X//" >'others/atari.cnf' <<'END_OF_FILE'
X# A '#' at the beginning of a line means the rest of the line is a comment.
X#
X# This configuration file is set up for two cases, for a hard disk
X# (as drive C:), and for one (double sided) floppy disk.
X#
X# To change the configuration, comment out the unwanted lines, and
X# uncomment the configuration you want.
X
X
X# *** OPTIONS ***
X#
X# If you want people to play NetHack over the modem, you should probably
X# uncomment the following line:
X#
X#OPTIONS=!IBM_BIOS,number_pad,nocolor
X#
X# Some options to set personal preferences.  Uncomment and change these to
X# suit your personal preference.  If several people are to use the same
X# configuration, options like these should not be set.
X#
X#OPTIONS=name:Janet-V,female,dogname:Fido,catname:Morris,fruit:apricot
X#OPTIONS=packorder:")[%?+/=!(*0_`,endgame:10 top/2 around/own
X#
X#
X# Other general options.  You might also set "silent" so as not to attract
X# the boss's attention.
X#
XOPTIONS=time,rest_on_space,nopickup
X
X# Color: if you have a color monitor and *don't* want colors, 
X# comment out the following line. (Mono users don't get color no matter what.)
X#
X#OPTIONS=nocolor
X
X# *** HARD DISK CONFIGURATION ***
X#
X#HACKDIR=c:\games\nethack
X#
X#   LEVELS and SAVE default to HACKDIR
X#
X#LEVELS=c:\games\nethack
X#   appending a ";n" to SAVE means don't prompt to insert a disk.
X#SAVE=c:\games\nethack;n
X#
X# Using a ramdisk speeds things up; a 150K ramdisk is OK even on a 1 megabyte
X# system.
X#RAMDISK=m:
X
X
X# *** 1-FLOPPY CONFIGURATION ***
X#
XHACKDIR=a:
XLEVELS=a:
XSAVE=a:
X#RAMDISK=m:
X
X
X# *** CHARACTER GRAPHICS ***
X#
X# The 35 GRAPHICS characters (0-34) are:
X# stone, vertical wall, horizontal wall, top left corner, top right corner, 
X# bottom left corner, bottom right corner, crosswall, up T wall, down T wall, 
X# left T wall, right T wall, vertical beam, horizontal beam, left slant, right
X# slant, no door, vertical open door, horizontal open door, floor, corridor,
X# up stairs, down stairs, trap, web, pool, fountain, sink, throne, altar,
X# up ladder, down ladder, vertical drawbridge wall, horizontal drawbridge wall 
X#
X# If you specify less than 35 ASCII values, the remaining characters will be
X# set to their respective defaults.
X#
X#
X# To use the Atari's (not very good) graphics character set, uncomment the
X# next GRAPHICS= line:
X#	   ' '  |   -   .   .   `   '   -   -   -   -   -   |   -   \   /   .   -   |   +   .   #   <   >   ^   "   }   {   #   \   _   <   >   #   #
X#GRAPHICS=042 124 045 169 170 045 045 043 045 045 045 045 124 045 092 047 249 251 251 252 250 240 174 175 222 223 247 221 189 196 227 243 242 178 179
X#
X# To use the font constructed by hackfnt.prg, uncomment the following line:
X#GRAPHICS=032 217 218 194 195 192 193 216 197 196 199 198 217 218 092 047 202 201 201 200 202 203 210 211 207 206 214 204 205 208 209 212 213 215 215
END_OF_FILE
if test 2801 -ne `wc -c <'others/atari.cnf'`; then
    echo shar: \"'others/atari.cnf'\" unpacked with wrong size!
fi
# end of 'others/atari.cnf'
fi
if test -f 'src/ioctl.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'src/ioctl.c'\"
else
echo shar: Extracting \"'src/ioctl.c'\" \(2343 characters\)
sed "s/^X//" >'src/ioctl.c' <<'END_OF_FILE'
X/*	SCCS Id: @(#)ioctl.c	2.0	87/09/18
X/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
X/* NetHack may be freely redistributed.  See license for details. */
X
X/* This cannot be part of hack.tty.c (as it was earlier) since on some
X   systems (e.g. MUNIX) the include files <termio.h> and <sgtty.h>
X   define the same constants, and the C preprocessor complains. */
X
X#ifndef VMS
X/* block some unused #defines to avoid overloading some cpp's */
X#define MONATTK_H
X#define MONFLAG_H
X#include "hack.h"
X
X#if defined(BSD) || defined(ULTRIX) || defined(HPUX)
X# ifdef HPUX
X#include	<bsdtty.h>
X# else
X#include	<sgtty.h>
X# endif
Xstruct ltchars ltchars;
Xstruct ltchars ltchars0 = { -1, -1, -1, -1, -1, -1 }; /* turn all off */
X#else
X#include	<termio.h>	/* also includes part of <sgtty.h> */
Xstruct termio termio;
X# ifdef AMIX
X#include <sys/ioctl.h>
X# endif /* AMIX */
X#endif
X
Xvoid
Xgetioctls() {
X#if defined(BSD) || defined(ULTRIX) || defined(HPUX)
X	(void) ioctl(fileno(stdin), (int) TIOCGLTC, (char *) &ltchars);
X	(void) ioctl(fileno(stdin), (int) TIOCSLTC, (char *) &ltchars0);
X#else
X	(void) ioctl(fileno(stdin), (int) TCGETA, &termio);
X#endif
X#if defined(TIOCGWINSZ) && (defined(BSD) || defined(ULTRIX))
X	{
X		/*
X		 * ttysize is found on Suns and BSD
X		 * winsize is found on Suns, BSD, and Ultrix
X		 */
X		struct winsize ttsz;
X
X		if (ioctl(fileno(stdin), (int)TIOCGWINSZ, (char *)&ttsz) != -1)
X		  {
X		    /*
X		     * Use the kernel's values for lines and columns if it has
X		     * any idea.
X		     */
X		    if (ttsz.ws_row)
X		      LI = ttsz.ws_row;
X		    if (ttsz.ws_col)
X		      CO = ttsz.ws_col;
X		  }
X	}
X#endif
X}
X
Xvoid
Xsetioctls() {
X#if defined(BSD) || defined(ULTRIX) || defined(HPUX)
X	(void) ioctl(fileno(stdin), (int) TIOCSLTC, (char *) &ltchars);
X#else
X	/* Now modified to run under Sys V R3.	- may have to be #ifdef'ed */
X	(void) ioctl(fileno(stdin), (int) TCSETAW, &termio);
X#endif
X}
X
X#ifdef SUSPEND		/* implies BSD */
Xint
Xdosuspend() {
X#include	<signal.h>
X#ifdef SIGTSTP
X	if(signal(SIGTSTP, SIG_IGN) == SIG_DFL) {
X		settty(NULL);
X		(void) signal(SIGTSTP, SIG_DFL);
X		(void) kill(0, SIGTSTP);
X		gettty();
X		setftty();
X		docrt();
X	} else {
X		pline("I don't think your shell has job control.");
X	}
X#else
X	pline("Sorry, it seems we have no SIGTSTP here.  Try ! or S.");
X#endif
X	return(0);
X}
X#endif /* SUSPEND /**/
X#endif /*VMS*/
END_OF_FILE
if test 2343 -ne `wc -c <'src/ioctl.c'`; then
    echo shar: \"'src/ioctl.c'\" unpacked with wrong size!
fi
# end of 'src/ioctl.c'
fi
if test -f 'src/rnd.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'src/rnd.c'\"
else
echo shar: Extracting \"'src/rnd.c'\" \(1952 characters\)
sed "s/^X//" >'src/rnd.c' <<'END_OF_FILE'
X/*	SCCS Id: @(#)rnd.c	3.0	87/07/06
X */
X/* NetHack may be freely redistributed.  See license for details. */
X
X#include	"hack.h"
X
X#if defined(LINT) && defined(UNIX)	/* rand() is long... */
Xextern int rand();
X#define RND(x)	(rand() % x)
X#else /* LINT */
X/* rand() is either random() or lrand48() - see config.h. */
X#ifdef UNIX
X#define RND(x)	(int)(Rand() % (long)(x))
X#else
X/* Good luck: the bottom order bits are cyclic. */
X#define RND(x)	(int)((Rand()>>3) % (x))
X#endif
X#endif /* LINT */
X
X#ifdef OVL2
X
Xint
Xrn1(x,y)	/* y <= rn1(x,y) < (y+x) */
Xregister int x, y;
X{
X	return(RND(x)+y);
X}
X
X#endif /* OVL2 */
X#ifdef OVL0
X
Xint
Xrn2(x)		/* 0 <= rn2(x) < x */
Xregister int x;
X{
X#ifdef DEBUG
X	if (x == 0) {
X		impossible("rn2(0) attempted");
X		return(0);
X	}
X#endif
X	return(RND(x));
X}
X
X#endif /* OVL0 */
X#ifdef OVLB
X
Xint
Xrnl(x)		/* 0 <= rnl(x) < x; sometimes subtracting Luck */
Xregister int x;	/* good luck approaches 0, bad luck approaches (x-1) */
X{
X	register int i = RND(x);
X
X	if (Luck && rn2(50 - Luck)) {
X	    i -= (x <= 15 && Luck >= -5 ? Luck/3 : Luck);
X	    if (i < 0) i = 0;
X	    else if (i >= x) i = x-1;
X	}
X
X	return i;
X}
X
X#endif /* OVLB */
X#ifdef OVL0
X
Xint
Xrnd(x)		/* 1 <= rnd(x) <= x */
Xregister int x;
X{
X#ifdef DEBUG
X	if (x == 0) {
X		impossible("rnd(0) attempted");
X		return(1);
X	}
X#endif
X	return(RND(x)+1);
X}
X
X#endif /* OVL0 */
X#ifdef OVL1
X
Xint
Xd(n,x)		/* n <= d(n,x) <= (n*x) */
Xregister int n, x;
X{
X	register int tmp = n;
X
X	while(n--) tmp += RND(x);
X	return(tmp);
X}
X
X#endif /* OVL1 */
X#ifdef OVLB
X
Xint
Xrne(x)	  /* by stewr 870807 */
Xregister int x;
X{
X	register int tmp = 1;
X	while(!rn2(x)) tmp++;
X	return(min(tmp,(u.ulevel < 15) ? 5 : (int)u.ulevel/3));
X}
X
X#ifdef THEOLOGY
Xint
Xrnz(i)
Xint i;
X{
X# ifdef LINT
X	int x = i;
X	int tmp = 1000;
X# else
X	register long x = i;
X	register long tmp = 1000;
X# endif
X	tmp += rn2(1000);
X	tmp *= rne(4);
X	if (rn2(2)) { x *= tmp; x /= 1000; }
X	else { x *= 1000; x /= tmp; }
X	return((int)x);
X}
X#endif
X
X#endif /* OVLB */
END_OF_FILE
if test 1952 -ne `wc -c <'src/rnd.c'`; then
    echo shar: \"'src/rnd.c'\" unpacked with wrong size!
fi
# end of 'src/rnd.c'
fi
if test -f 'src/were.c' -a "${1}" != "-c" ; then 
  echo shar: Will not clobber existing file \"'src/were.c'\"
else
echo shar: Extracting \"'src/were.c'\" \(2701 characters\)
sed "s/^X//" >'src/were.c' <<'END_OF_FILE'
X/*	SCCS Id: @(#)were.c	3.0	88/07/06
X/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
X/* NetHack may be freely redistributed.  See license for details. */
X
X#include	"hack.h"
X
X#ifdef OVL0
X
Xvoid
Xwere_change(mon)
Xregister struct monst *mon;
X{
X	register int pm = monsndx(mon->data);
X
X	if(is_were(mon->data))
X	    if(is_human(mon->data)) {
X		if(Protection_from_shape_changers) return;
X		if(!rn2(50-(night()*20)) || flags.moonphase == FULL_MOON) {
X		    new_were(mon);
X		    if(mons[pm].msound == MS_BARK && flags.soundok)
X			You("hear a %s howling at the moon.",
X			      pm == PM_WEREJACKAL ? "jackal" : "wolf");
X		}
X	    } else if(!rn2(30) || Protection_from_shape_changers) new_were(mon);
X}
X
X#endif /* OVL0 */
X#ifdef OVLB
X
Xstatic int FDECL(counter_were,(int));
X
Xstatic int
Xcounter_were(pm)
Xint pm;
X{
X	switch(pm) {
X	    case PM_WEREWOLF:	return(PM_WOLFWERE);
X	    case PM_WOLFWERE:	return(PM_WEREWOLF);
X	    case PM_WEREJACKAL:	return(PM_JACKALWERE);
X	    case PM_JACKALWERE:	return(PM_WEREJACKAL);
X	    case PM_WERERAT:	return(PM_RATWERE);
X	    case PM_RATWERE:	return(PM_WERERAT);
X	    default:		return(0);
X	}
X}
X
Xvoid
Xnew_were(mon)
Xregister struct monst *mon;
X{
X	register int pm;
X
X	pm = counter_were(monsndx(mon->data));
X	if(!pm) {
X	    impossible("unknown lycanthrope %s.", mon->data->mname);
X	    return;
X	}
X
X	if(canseemon(mon))
X	    pline("%s changes into a %s.", Monnam(mon),
X			Hallucination ? rndmonnam() : mons[pm].mname);
X
X	mon->data = &mons[pm];
X	/* regenerate by 1/4 of the lost hit points */
X	mon->mhp += (mon->mhpmax - mon->mhp) / 4;
X	unpmon(mon);
X	pmon(mon);		/* display new appearance */
X}
X
Xboolean
Xwere_summon(ptr,yours)	/* were-creature (even you) summons a horde */
Xregister struct permonst *ptr;
Xregister boolean yours;
X{
X	register int i, typ, pm = monsndx(ptr);
X	register struct monst *mtmp;
X	boolean success = FALSE;
X
X	if(Protection_from_shape_changers && !yours)
X		return FALSE;
X	for(i = rnd(5); i > 0; i--) {
X	   switch(pm) {
X
X		case PM_WERERAT:
X		case PM_RATWERE:
X			typ = rn2(3) ? PM_SEWER_RAT : rn2(3) ? PM_GIANT_RAT : PM_RABID_RAT ;
X			break;
X		case PM_WEREJACKAL:
X		case PM_JACKALWERE:
X			typ = PM_JACKAL;
X			break;
X		case PM_WEREWOLF:
X		case PM_WOLFWERE:
X			typ = rn2(5) ? PM_WOLF : PM_WINTER_WOLF ;
X			break;
X		default:
X			continue;
X	    }
X	    mtmp = makemon(&mons[typ], u.ux, u.uy);
X	    if (mtmp) success = TRUE;
X	    if (yours && mtmp)
X		(void) tamedog(mtmp, (struct obj *) 0);
X	}
X	return success;
X}
X
X#ifdef POLYSELF
Xvoid
Xyou_were() {
X	if(u.umonnum == u.ulycn) return;
X	if(Polymorph_control) {
X	    pline("Do you want to change into a %s? ", mons[u.ulycn].mname);
X	    if(yn() == 'n') return;
X	}
X	(void) polymon(u.ulycn);
X}
X#endif
X
X#endif /* OVLB */
END_OF_FILE
if test 2701 -ne `wc -c <'src/were.c'`; then
    echo shar: \"'src/were.c'\" unpacked with wrong size!
fi
# end of 'src/were.c'
fi
echo shar: End of archive 55 \(of 56\).
cp /dev/null ark55isdone
MISSING=""
for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 ; do
    if test ! -f ark${I}isdone ; then
	MISSING="${MISSING} ${I}"
    fi
done
if test "${MISSING}" = "" ; then
    echo You have unpacked all 56 archives.
    rm -f ark[1-9]isdone ark[1-9][0-9]isdone
    echo Building monst.c from monst.c1 and monst.c2
    cat src/monst.c1 src/monst.c2 > src/monst.c
else
    echo You still need to unpack the following archives:
    echo "        " ${MISSING}
fi
##  End of shell archive.
exit 0