Files
nethack/sys/be
nethack.allison ab1872b928 zlib support; also internal compression changes
o Add support for zlib compression via ZLIB_COMP in config.h (ZLIB_COMP
  and COMPRESS are mutually exclusive).
o rlecomp and zerocomp are run time options available if RLECOMP and
  ZEROCOMP are defined, but not turned on by default if either COMPRESS
  or ZLIB_COMP are defined.
o Add information to the save file about internal compression options
  used when writing the save file, particularly rlecomp and zerocomp
  support.
o Automatically adjust rlecomp and zerocomp (if support compiled in)
  when reading in an existing savefile that was saved with those options
  turned on.  Still allows writing out of savefile in preferred format.
o In order to support zlib and not conflict with compress and uncompress
  routines there, the NetHack internal functions were changed to
  nh_uncompress and nh_compress as done in the zlib contribution received
  in 1999 from <Someone>.

I tagged the sources NETHACK_3_5_0_PREZLIB prior to applying these
changes.
2005-01-22 15:28:15 +00:00
..
2005-01-02 20:55:41 +00:00

This file is sys/be/README.  It is for those intending to compile
NetHack 3.5 on a BeOS 4.5 system.

BeOS NetHack currently only supports the TTY windowing system.  In
order to compile it, it would benefit you greatly to think of your Be
system as a UNIX variant.  It is possible to compile using BeIDE.
However, there are four executables and several steps involved in making
NetHack.  Unless you are extremely familiar with the build sequence and
are willing to modify the code somewhat, I suggest you avoid it for now.
Let the UNIX Makefiles take care of all that for you.


Known problems:
+ No special characters for walls.  None of the fonts available for use
  in a tty window has the graphics characters needed to improve the look.
  If such a font existed, then all you need to do is set the dungeon,
  object, and/or monter mappings in your defaults file.
+ The arrow keys don't work.



Build instructions.  From a freshly unpacked source tree:

1. Copy the Makfiles in sys/unix to their proper spots.  You may
   use setup.sh or copy them by hand.  Using setup.sh to create
   links instead of copying the Makefiles will work, but BeOS will
   not let you edit a link.   It may be helpful to read
   sys/unix/Install.unx.

2. Edit src/Makefile:
	o Change System to SysBe.
	o Comment out the UNIX versions of SYSSRC and SYSOBJ variables.
	o Uncomment the BeOS versions of SYSRC and SYSOBJ.
	o Uncomment the BeOS versions of CC, CFLAGS, LD, and LFLAGS.  The
	  flags are different for Intel vs BeBox/Mac.
	o Uncomment one of the Intel or BeBox/Mac BeOS versions of CC, CFLAGS,
	  LD, and LFLAGS.
	o Comment out the default CFLAGS and LFLAGS.
	o Change WINTTYLIB to be -ltermcap.

3. Edit util/Makefile:
	o If on a BeBox/Mac:
	  - Uncomment the BeOS versions of CC and CFLAGS
	  - Comment out the default CFLAGS and LFLAGS.
	o If on Intel:
	  - the default values of CFLAGS and LFLAGS work fine
	o Change YACC and LEX to be bison -y and flex respectively.

4. Edit include/config.h to change HACKDIR to be the location of your
   install directory.

5. Edit top level Makefile and change GAMEDIR to match HACKDIR in
   include/config.h.  Make sure the path to GAMEDIR exists.  Change
   SHELLDIR to a "throw away" directory, like /tmp.  We don't use the
   shell.  Change CHOWN and CHGRP commands to "true", there really
   aren't groups on the BeOS.

6. Type "make install" at the top level.



It is possible that some necessary steps needed to make the game have been
omitted.  Feel free to ad-lib as necessary.