void SZ_Clear (sizebuf_t *buf);
void *SZ_GetSpace (sizebuf_t *buf, int length);
void SZ_Write (sizebuf_t *buf, const void *data, int length);
-void SZ_Print (sizebuf_t *buf, const char *data); // strcats onto the sizebuf
+void SZ_Print(sizebuf_t *buf, const char *data); // strcats onto the sizebuf
void SZ_HexDumpToConsole(const sizebuf_t *buf);
void Com_HexDumpToConsole(const qbyte *data, int size);
#define LittleLong(l) (l)
#define BigFloat(l) FloatSwap(l)
#define LittleFloat(l) (l)
-#elif ENDIAN_BIG
+#elif defined(ENDIAN_BIG)
// big endian
#define BigShort(l) (l)
#define LittleShort(l) ShortSwap(l)
float MSG_ReadCoord (void);
-float MSG_ReadDPCoord (void);
-
#define MSG_ReadAngle() (MSG_ReadByte() * (360.0f / 256.0f))
#define MSG_ReadPreciseAngle() (MSG_ReadShort() * (360.0f / 65536.0f))
-#define MSG_ReadVector(v) {(v)[0] = MSG_ReadCoord();(v)[1] = MSG_ReadCoord();(v)[2] = MSG_ReadCoord();}
+#define MSG_ReadVector(v) ((v)[0] = MSG_ReadCoord(), (v)[1] = MSG_ReadCoord(), (v)[2] = MSG_ReadCoord())
//============================================================================
//============================================================================
extern struct cvar_s registered;
+extern struct cvar_s cmdline;
#define GAME_NORMAL 0
#define GAME_HIPNOTIC 1
#define GAME_FNIGGIUM 10
#define GAME_SETHERAL 11
#define GAME_SOM 12
+#define GAME_TENEBRAE 13 // full of evil hackery
extern int gamemode;
extern char *gamename;
// strlcat and strlcpy, from OpenBSD
// Most (all?) BSDs already have them
-#if !defined(__OpenBSD__) && !defined(__NetBSD__) && !defined(__FreeBSD__)
+#if defined(__OpenBSD__) || defined(__NetBSD__) || defined(__FreeBSD__) || (defined(__APPLE__) && defined(__MACH__))
+# define HAVE_STRLCAT 1
+# define HAVE_STRLCPY 1
+#endif
+#ifndef HAVE_STRLCAT
/*
* Appends src to string dst of size siz (unlike strncat, siz is the
* full size of dst, not space left). At most siz-1 characters
* If retval >= siz, truncation occurred.
*/
size_t strlcat(char *dst, const char *src, size_t siz);
+#endif // #ifndef HAVE_STRLCAT
+#ifndef HAVE_STRLCPY
/*
* Copy src to string dst of size siz. At most siz-1 characters
* will be copied. Always NUL terminates (unless siz == 0).
*/
size_t strlcpy(char *dst, const char *src, size_t siz);
-#endif // #if !defined(__OpenBSD__) && !defined(__NetBSD__) && !defined(__FreeBSD__)
+#endif // #ifndef HAVE_STRLCPY
#endif