This is an updated version of rogue 5.3-clone. It's a LINUX port which
has all of the posted patches added to it, and considerable numbers of
bug fixes. I've also added a help page and made it operate correctly
setuid.

Alan Cox [iiitac@pyr.swan.ac.uk]

Original readme entries...
----
I've ported this to LINUX..It seems to work fine.  I mostly
POSIXized machdep.c and got rid of some floating point 
arithmetic.  (Not a terribly difficult effort...)  This 
is a first effort at dealing with the POSIX terminal I/O
so it may not be perfect.  

I didn't add the patches to the original source code
so I don't have the bug fixes added.  I used the original
machdep.c instead of the new "SYSV" version so don't know
if my effort was totally in vain. Heck I got to learn something
about the new terminal I/O model so it wasn't all in vain ;-)

Steve Wilson stevew@netcom.com

----
Yes, folks, this is the same old rogue 5.3-clone source that I've posted
here before.  So why do it again?  Well, I got many complaints/inquisitions
about whether this code was ported to a number of different UNIX/ULTRIX/VMS
systems.  The answer is still "no."  BUTTTT..., I would like to first port
it to as may of the different UNIX systems as I can, and go from there.

My problem is that I'm not particularly familiar with the ins and outs of
other UNIX systems besides the one I work on. (BSD 4.[23])  So what I've
done is set up the rogue source code so that all of the machine dependent
stuff is localized in one source file, machdep.c.  Enclosed in machdep.c
are all of the routines that I thought were even slightly machine-dependent.
Also enclosed in machdep.c is a copious set of comments describing what's
going on in there.  Now, most of these routines I believe will run most
UNIX systems without modification, but then again, some won't.
That's where I need some help.  I need folks who have access to other
UNIX systems to make modifications to machdep.c that will effectively
port the entire rogue program to their particular UNIX system.  Enough
instructions are included in machdep.c to do this.  The modified machdep.c
can be e-mailed to me, whereby I can incorporate the changes, and post
versions of machdep.c to comp.sources.games as it becomes more complete.

Does this sound remotely interesting to you?  Please give me a hand.

If you can't do it yourself, maybe you know someone who can.  A little
thumbing through your system documentation is all you probably need.

I am hoping all the system-dependencies are in machdep.c, but I suspect
there may be some 'C' constructs that various compilers out there don't
support or treat differently.  I need to know about these too.  I'm not
expecting much of this on UNIX systems, though.

The code runs through 'lint' fine on my system.  All identifiers are unique
within their first eight characters.  Function names are unique within
their first seven characters.  All file names are under 14 characters.


Prerequisites of the operating system:

	32-bit long integer. (at least)
	16-bit short integer. (at least)

	Standard I/O library providing the following:
		stdio.h (include file),
		getchar(),
		fopen(),
		fclose(),
		fread(),
		fwrite(),
		fgets(),
		printf(),
		sprintf(),
		fflush(),
		rewind().

	String library providing the following:
		strcpy(),
		strncpy(),
		strcmp(),
		strncmp().

	The curses/termlib libraries are desireable, but not strictly necessary.
	The rogue source can be compiled with -DCURSES.  This will enable a
	self-contained curses/termlib emulation package.  This package has some
	restrictions which are outined in the comments near the top of the
	enclosed source file curses.c.  This curses emulation package was put
	into the source for systems that may not have curses available, or have
	very buggy versions.  If your system has usable working curses/termlib
	libraries, it is suggested that you use them instead of the enclosed
	curses library.


Tim Stoehr
tims@zeus.TEK.COM
