share+amiga: gate pcmain.c nhuuid for CROSS_TO_AMIGA, drop amidos.c copy
amidos.c had a byte-identical copy of the RFC 4122 v4 generator already living under CROSS_TO_ATARI in sys/share/pcmain.c.
This commit is contained in:
@@ -45,44 +45,6 @@ amiga_self_assign(void)
|
|||||||
UnLock(dup);
|
UnLock(dup);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Generate an RFC 4122 v4 UUID for this game. Draw bytes from the
|
|
||||||
core's ISAAC64 RNG, which init_random() seeded before we get here. */
|
|
||||||
void
|
|
||||||
get_nhuuid(void)
|
|
||||||
{
|
|
||||||
uchar bytes[16];
|
|
||||||
int i;
|
|
||||||
|
|
||||||
if (svn.nhuuid[0])
|
|
||||||
return;
|
|
||||||
|
|
||||||
for (i = 0; i < 16; i++)
|
|
||||||
bytes[i] = (uchar) rn2(256);
|
|
||||||
/* RFC 4122: version=4 (random), variant=10. */
|
|
||||||
bytes[6] = (bytes[6] & 0x0F) | 0x40;
|
|
||||||
bytes[8] = (bytes[8] & 0x3F) | 0x80;
|
|
||||||
|
|
||||||
Snprintf(svn.nhuuid, sizeof svn.nhuuid,
|
|
||||||
"%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-"
|
|
||||||
"%02x%02x%02x%02x%02x%02x",
|
|
||||||
bytes[0], bytes[1], bytes[2], bytes[3],
|
|
||||||
bytes[4], bytes[5],
|
|
||||||
bytes[6], bytes[7],
|
|
||||||
bytes[8], bytes[9],
|
|
||||||
bytes[10], bytes[11], bytes[12], bytes[13],
|
|
||||||
bytes[14], bytes[15]);
|
|
||||||
}
|
|
||||||
|
|
||||||
void
|
|
||||||
free_nhuuid(void)
|
|
||||||
{
|
|
||||||
int i;
|
|
||||||
|
|
||||||
for (i = 0; i < SIZE(svn.nhuuid); i++) {
|
|
||||||
svn.nhuuid[i] = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#include "winext.h"
|
#include "winext.h"
|
||||||
#include "winproto.h"
|
#include "winproto.h"
|
||||||
|
|
||||||
|
|||||||
+56
-10
@@ -12,7 +12,7 @@
|
|||||||
#include <signal.h>
|
#include <signal.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if !defined(AMIGA) && !defined(__DJGPP__)
|
#if !defined(AMIGA) && !defined(__DJGPP__) && !defined(__MINT__)
|
||||||
#include <sys\stat.h>
|
#include <sys\stat.h>
|
||||||
#else
|
#else
|
||||||
#include <sys/stat.h>
|
#include <sys/stat.h>
|
||||||
@@ -27,9 +27,7 @@ char orgdir[PATHLEN]; /* also used in pcsys.c, amidos.c */
|
|||||||
|
|
||||||
#ifdef TOS
|
#ifdef TOS
|
||||||
boolean run_from_desktop = TRUE; /* should we pause before exiting?? */
|
boolean run_from_desktop = TRUE; /* should we pause before exiting?? */
|
||||||
#ifdef __GNUC__
|
/* _stksize is owned by sys/atari/tos.c for the 5.0 GEM build. */
|
||||||
long _stksize = 16 * 1024;
|
|
||||||
#endif
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef AMIGA
|
#ifdef AMIGA
|
||||||
@@ -119,7 +117,6 @@ _CrtSetReportFile(_CRT_ASSERT, _CRTDBG_FILE_STDERR);*/
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef TOS
|
#ifdef TOS
|
||||||
long clock_time;
|
|
||||||
if (*argv[0]) { /* only a CLI can give us argv[0] */
|
if (*argv[0]) { /* only a CLI can give us argv[0] */
|
||||||
gh.hname = argv[0];
|
gh.hname = argv[0];
|
||||||
run_from_desktop = FALSE;
|
run_from_desktop = FALSE;
|
||||||
@@ -342,10 +339,6 @@ _CrtSetReportFile(_CRT_ASSERT, _CRTDBG_FILE_STDERR);*/
|
|||||||
/*
|
/*
|
||||||
* It seems you really want to play.
|
* It seems you really want to play.
|
||||||
*/
|
*/
|
||||||
#ifdef TOS
|
|
||||||
if (comp_times((long) time(&clock_time)))
|
|
||||||
error("Your clock is incorrectly set!");
|
|
||||||
#endif
|
|
||||||
if (!dlb_init()) {
|
if (!dlb_init()) {
|
||||||
pline(
|
pline(
|
||||||
"%s\n%s\n%s\n%s\n\nNetHack was unable to open the required file "
|
"%s\n%s\n%s\n%s\n\nNetHack was unable to open the required file "
|
||||||
@@ -779,7 +772,48 @@ free_nhuuid(void)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(CROSS_TO_AMIGA)
|
#if defined(CROSS_TO_ATARI) || defined(CROSS_TO_AMIGA)
|
||||||
|
/* Generate an RFC 4122 v4 UUID for this game. Draw bytes from the
|
||||||
|
core's ISAAC64 RNG, which init_random() seeded before we get here. */
|
||||||
|
void
|
||||||
|
get_nhuuid(void)
|
||||||
|
{
|
||||||
|
uchar bytes[16];
|
||||||
|
int i;
|
||||||
|
|
||||||
|
if (svn.nhuuid[0])
|
||||||
|
return;
|
||||||
|
|
||||||
|
for (i = 0; i < 16; i++)
|
||||||
|
bytes[i] = (uchar) rn2(256);
|
||||||
|
/* RFC 4122: version=4 (random), variant=10. */
|
||||||
|
bytes[6] = (bytes[6] & 0x0F) | 0x40;
|
||||||
|
bytes[8] = (bytes[8] & 0x3F) | 0x80;
|
||||||
|
|
||||||
|
Snprintf(svn.nhuuid, sizeof svn.nhuuid,
|
||||||
|
"%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-"
|
||||||
|
"%02x%02x%02x%02x%02x%02x",
|
||||||
|
bytes[0], bytes[1], bytes[2], bytes[3],
|
||||||
|
bytes[4], bytes[5],
|
||||||
|
bytes[6], bytes[7],
|
||||||
|
bytes[8], bytes[9],
|
||||||
|
bytes[10], bytes[11], bytes[12], bytes[13],
|
||||||
|
bytes[14], bytes[15]);
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
free_nhuuid(void)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
|
||||||
|
for (i = 0; i < SIZE(svn.nhuuid); i++) {
|
||||||
|
svn.nhuuid[i] = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(CROSS_TO_AMIGA) || defined(CROSS_TO_ATARI)
|
||||||
|
#ifdef CROSS_TO_AMIGA
|
||||||
void msmsg
|
void msmsg
|
||||||
VA_DECL(const char *, fmt)
|
VA_DECL(const char *, fmt)
|
||||||
{
|
{
|
||||||
@@ -790,6 +824,18 @@ VA_DECL(const char *, fmt)
|
|||||||
VA_END();
|
VA_END();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
#ifdef CROSS_TO_ATARI
|
||||||
|
void
|
||||||
|
msmsg(const char *fmt, ...)
|
||||||
|
{
|
||||||
|
va_list ap;
|
||||||
|
va_start(ap, fmt);
|
||||||
|
vprintf(fmt, ap);
|
||||||
|
va_end(ap);
|
||||||
|
fflush(stdout);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
unsigned long
|
unsigned long
|
||||||
sys_random_seed(void)
|
sys_random_seed(void)
|
||||||
|
|||||||
Reference in New Issue
Block a user