Rand() was typically defined to random() or to rand().
gcc seems to provide a random() to link to on linux
when sys/share/random.c is linked in, but other platforms
such as Windows got an undefined refence to random()
when RANDOM wasn't defined.
The only direct use seems to be in get_rnd_txt() these
days, in rumors.c
Under the USE_ISAAC64 config, neither srandom()
nor srand() are being invoked to seed those routines,
and it really should be using isaac64 when USE_ISAAC64
is defined anyway.
/* #define SHELL */ /* nt use of pcsys routines caused a hang */
-/* #define RANDOM */ /* have Berkeley random(3) */
-#define USE_ISAAC64
-
#define TEXTCOLOR /* Color text */
#define EXEPATH /* Allow .exe location to be used as HACKDIR */
/*#define CHANGE_COLOR*/ /* allow palette changes */
#define SELECTSAVED /* Provide menu of saved games to choose from at start */
-
+
#define SYS_RANDOM_SEED /* Use random seed derived from CNG */
+
/*
* -----------------------------------------------------------------
* The remaining code shouldn't need modification.
#include <time.h>
#define USE_STDARG
-#ifdef RANDOM
+
/* Use the high quality random number routines. */
+#ifdef USE_ISAAC64
+#define Rand() rn2(RAND_MAX)
+#else
+#define RANDOM
+#ifdef RANDOM
#define Rand() random()
#else
#define Rand() rand()
#endif
+#endif
#include <sys/stat.h>
#define FCMASK (_S_IREAD | _S_IWRITE) /* file creation mask */
#include <time.h>
/* the high quality random number routines */
-
+#ifdef USE_ISAAC64
+#define Rand() rn2(RAND_MAX)
+#else
#ifdef RANDOM
#define Rand() random()
#else
#define Rand() rand()
#endif
+#endif
/* file creation mask */
#include <time.h>
#endif
+/* the high quality random number routines */
+#ifdef USE_ISAAC64
+#define Rand() rn2(RAND_MAX)
+#else
#ifdef RANDOM
-/* Use the high quality random number routines. */
#define Rand() random()
#else
#define Rand() rand()
#endif
+#endif
#ifndef TOS
#define FCMASK 0660 /* file creation mask */
#endif
/* Use the high quality random number routines. */
+/* the high quality random number routines */
+#ifdef USE_ISAAC64
+#define Rand() rn2(RAND_MAX)
+#else
#if defined(BSD) || defined(LINUX) || defined(ULTRIX) || defined(CYGWIN32) \
|| defined(RANDOM) || defined(__APPLE__)
#define Rand() random()
#else
#define Rand() lrand48()
#endif
+#endif
#ifdef TIMED_DELAY
#if defined(SUNOS4) || defined(LINUX) || (defined(BSD) && !defined(ULTRIX))
#define rindex strrchr
/* Use the high quality random number routines. */
+#ifdef USE_ISAAC64
+#define Rand() rn2(RAND_MAX)
+#else
#if defined(RANDOM)
#define Rand() random()
/* VMS V7 adds these entry points to DECC$SHR; stick with the nethack-supplied
#else
#define Rand() rand()
#endif
+#endif
#define SYS_RANDOM_SEED
#ifndef __GNUC__
#define index strchr
#define rindex strrchr
#define USE_STDARG
-#ifdef RANDOM
+
/* Use the high quality random number routines. */
+#ifdef USE_ISAAC64
+#define Rand() rn2(RAND_MAX)
+#else
+#ifdef RANDOM
#define Rand() random()
#else
#define Rand() rand()
#endif
+#endif
#define FCMASK 0660 /* file creation mask */
#define regularize nt_regularize