}
else
for (i=0 ; i<count ; i++)
- ((byte *)dest)[i] = fill;
+ ((qbyte *)dest)[i] = fill;
}
void Q_memcpy (void *dest, void *src, int count)
}
else
for (i=0 ; i<count ; i++)
- ((byte *)dest)[i] = ((byte *)src)[i];
+ ((qbyte *)dest)[i] = ((qbyte *)src)[i];
}
int Q_memcmp (void *m1, void *m2, int count)
while(count)
{
count--;
- if (((byte *)m1)[count] != ((byte *)m2)[count])
+ if (((qbyte *)m1)[count] != ((qbyte *)m2)[count])
return -1;
}
return 0;
short ShortSwap (short l)
{
- byte b1,b2;
+ qbyte b1,b2;
b1 = l&255;
b2 = (l>>8)&255;
int LongSwap (int l)
{
- byte b1,b2,b3,b4;
+ qbyte b1,b2,b3,b4;
b1 = l&255;
b2 = (l>>8)&255;
union
{
float f;
- byte b[4];
+ qbyte b[4];
} dat1, dat2;
void MSG_WriteChar (sizebuf_t *sb, int c)
{
- byte *buf;
+ qbyte *buf;
//#ifdef PARANOID
// if (c < -128 || c > 127)
void MSG_WriteByte (sizebuf_t *sb, int c)
{
- byte *buf;
+ qbyte *buf;
//#ifdef PARANOID
// if (c < 0 || c > 255)
void MSG_WriteShort (sizebuf_t *sb, int c)
{
- byte *buf;
+ qbyte *buf;
//#ifdef PARANOID
// if (c < ((short)0x8000) || c > (short)0x7fff)
void MSG_WriteLong (sizebuf_t *sb, int c)
{
- byte *buf;
+ qbyte *buf;
buf = SZ_GetSpace (sb, 4);
buf[0] = c&0xff;
SZ_Write (sb, s, strlen(s)+1);
}
-// used by server (always dpprotocol)
-// moved to common.h as #define
-/*
-void MSG_WriteFloatCoord (sizebuf_t *sb, float f)
+// used by server (always latest dpprotocol)
+void MSG_WriteDPCoord (sizebuf_t *sb, float f)
{
- MSG_WriteFloat(sb, f);
+ if (f >= 0)
+ MSG_WriteShort (sb, (int)(f + 0.5f));
+ else
+ MSG_WriteShort (sb, (int)(f - 0.5f));
}
-*/
// used by client
void MSG_WriteCoord (sizebuf_t *sb, float f)
{
- if (dpprotocol)
+ if (dpprotocol == DPPROTOCOL_VERSION2)
+ {
+ if (f >= 0)
+ MSG_WriteShort (sb, (int)(f + 0.5f));
+ else
+ MSG_WriteShort (sb, (int)(f - 0.5f));
+ }
+ else if (dpprotocol == DPPROTOCOL_VERSION1)
MSG_WriteFloat(sb, f);
else
{
int MSG_ReadChar (void)
{
int c;
-
+
// LordHavoc: minor optimization
if (msg_readcount >= net_message.cursize)
// if (msg_readcount+1 > net_message.cursize)
msg_badread = true;
return -1;
}
-
+
c = (signed char)net_message.data[msg_readcount];
msg_readcount++;
int MSG_ReadByte (void)
{
int c;
-
+
// LordHavoc: minor optimization
if (msg_readcount >= net_message.cursize)
// if (msg_readcount+1 > net_message.cursize)
c = (unsigned char)net_message.data[msg_readcount];
msg_readcount++;
-
+
return c;
}
*/
msg_badread = true;
return -1;
}
-
+
c = (short)(net_message.data[msg_readcount]
+ (net_message.data[msg_readcount+1]<<8));
-
+
msg_readcount += 2;
-
+
return c;
}
int MSG_ReadLong (void)
{
int c;
-
+
if (msg_readcount+4 > net_message.cursize)
{
msg_badread = true;
+ (net_message.data[msg_readcount+1]<<8)
+ (net_message.data[msg_readcount+2]<<16)
+ (net_message.data[msg_readcount+3]<<24);
-
+
msg_readcount += 4;
-
+
return c;
}
{
union
{
- byte b[4];
+ qbyte b[4];
float f;
int l;
} dat;
-
+
dat.b[0] = net_message.data[msg_readcount];
dat.b[1] = net_message.data[msg_readcount+1];
dat.b[2] = net_message.data[msg_readcount+2];
dat.b[3] = net_message.data[msg_readcount+3];
msg_readcount += 4;
-
+
dat.l = LittleLong (dat.l);
- return dat.f;
+ return dat.f;
}
char *MSG_ReadString (void)
{
static char string[2048];
int l,c;
-
+
l = 0;
do
{
string[l] = c;
l++;
} while (l < sizeof(string)-1);
-
+
string[l] = 0;
-
+
return string;
}
-// used by server (always dpprotocol)
-// moved to common.h as #define
-/*
-float MSG_ReadFloatCoord (void)
+// used by server (always latest dpprotocol)
+float MSG_ReadDPCoord (void)
{
- return MSG_ReadFloat();
+ return (signed short) MSG_ReadShort();
}
-*/
// used by client
float MSG_ReadCoord (void)
{
- if (dpprotocol)
+ if (dpprotocol == DPPROTOCOL_VERSION2)
+ return (signed short) MSG_ReadShort();
+ else if (dpprotocol == DPPROTOCOL_VERSION1)
return MSG_ReadFloat();
else
return MSG_ReadShort() * (1.0f/8.0f);
if (buf->cursize + length > buf->maxsize)
{
if (!buf->allowoverflow)
- Host_Error ("SZ_GetSpace: overflow without allowoverflow set - use -zone on the commandline for more zone memory, default: 128k (quake original default was 48k)");
+ Host_Error ("SZ_GetSpace: overflow without allowoverflow set");
if (length > buf->maxsize)
Host_Error ("SZ_GetSpace: %i is > full buffer size", length);
// byte * cast to keep VC++ happy
if (buf->data[buf->cursize-1])
- memcpy ((byte *)SZ_GetSpace(buf, len),data,len); // no trailing 0
+ memcpy ((qbyte *)SZ_GetSpace(buf, len),data,len); // no trailing 0
else
- memcpy ((byte *)SZ_GetSpace(buf, len-1)-1,data,len); // write over trailing 0
+ memcpy ((qbyte *)SZ_GetSpace(buf, len-1)-1,data,len); // write over trailing 0
}
void COM_Init (void)
{
#if !defined(ENDIAN_LITTLE) && !defined(ENDIAN_BIG)
- byte swaptest[2] = {1,0};
+ qbyte swaptest[2] = {1,0};
// set the byte swapping variables in a portable manner
if ( *(short *)swaptest == 1)
/// just for debugging
-int memsearch (byte *start, int count, int search)
+int memsearch (qbyte *start, int count, int search)
{
int i;
Always appends a 0 byte.
============
*/
-byte *loadbuf;
-int loadsize;
-byte *COM_LoadFile (char *path, qboolean quiet)
+qbyte *loadbuf;
+int loadsize;
+qbyte *COM_LoadFile (char *path, qboolean quiet)
{
- QFile *h;
- byte *buf;
- char base[1024];
- int len;
+ QFile *h;
+ qbyte *buf;
+ char base[1024];
+ int len;
buf = NULL; // quiet compiler warning
loadsize = 0;
if (!buf)
Sys_Error ("COM_LoadFile: not enough available memory for %s (size %i)", path, len);
- ((byte *)buf)[len] = 0;
+ ((qbyte *)buf)[len] = 0;
Qread (h, buf, len);
Qclose (h);