merge Alex's dual rng proposal with the isaac64 rng code and adjust

This is branched from Alex's hallu-rng-stability branch,
with two build corrections (detect.c, zap.c), and merged
with  the isaac64 branch that we have ready to go.

Alex's dual rng is supported by setting up the array
of multiple isaac64 contexts.

I stuck with Alex's approach of passing the rng function
name around as the parameter (rng or rn2_on_display_rng)
for the new additional parameter needed for
set_random(), init_random(), reseed_random(),
and init_isaac64().
This commit is contained in:
nhmall
2019-01-28 19:43:55 -05:00
parent 819ee796f2
commit 457e4b68aa
7 changed files with 37 additions and 23 deletions

View File

@@ -925,8 +925,8 @@ E char *FDECL(strstri, (const char *, const char *));
#endif
E boolean
FDECL(fuzzymatch, (const char *, const char *, const char *, BOOLEAN_P));
E void NDECL(init_random);
E void NDECL(reseed_random);
E void FDECL(init_random, (int FDECL((*fn), (int))));
E void FDECL(reseed_random, (int FDECL((*fn), (int))));
E time_t NDECL(getnow);
E int NDECL(getyear);
#if 0
@@ -2105,7 +2105,7 @@ E void FDECL(genl_outrip, (winid, int, time_t));
/* ### rnd.c ### */
#ifdef USE_ISAAC64
E void FDECL(init_isaac64, (unsigned long));
E void FDECL(init_isaac64, (unsigned long, int FDECL((*fn), (int))));
E long NDECL(nhrand);
#endif
E int FDECL(rn2, (int));