Files
nethack/sys/be
nethack.rankin 43f72cc357 yet more wizard mode handling (trunk only)
Reorganize the recent wizard mode control:  move set_playmode() from
xxxmain.c to the core, and have it call new authorize_wizard_mode() to do
the port-specific part.  If the set_playmode() call during startup doesn't
result in running in wizard mode (either because not allowed or user
didn't request it), it will be called again during restore if the save
file is from a wizard mode game.

     For ports which check character name for authorization, players will
have to use `nethack -u whatever -D' (or options for name and playmode) to
restore a wizard mode save file if WIZARD has been changed from "wizard".
plname[] from a wizard mode saved game will always have that value, so if
it's not the right one players will need to get authorized by the startup
code before loading the save file.
2007-02-17 05:25:36 +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.