ref: aff29f25c0e72554e533162fc4d2ba69a8009fdb
parent: 4f4a0b78514eabbd3d5c1e86a178bd3628d37435
author: Konstantinn Bonnet <qu7uux@gmail.com>
date: Wed Oct 14 05:39:37 EDT 2015
remove some stupid printing shit, cleanup fixes don't be overly verbose for no reason, and try to output warnings/errors on 2.
--- a/README
+++ b/README
@@ -45,7 +45,7 @@
---------
- udp/ip, plan9 style
- port quakeworld: mkmany, merging common code
-- sound: don't require mixfs and fix soundbuffer write race
+- sound: don't require mixfs (for cdaudio) and fix soundbuffer write race
- crash in d_sprite.c:D_SpriteDrawSpans after several hours of looping the
demos
- (amd64) entities visible through walls right when emerging from/immerging into
@@ -76,13 +76,14 @@
-record, -playback: broken and unused
-sndbits, -sndspeed, -sndmono
-cddev, -nocdaudio
+ -developer
- no fullscreen; screen resolution is just the window's dimensions; any
resolution (under the r_shared.h limits) is allowed; resize by dragging window
edges
- some stupid kbd/mouse bugs fixed; mouse grabbing actually grabs the mouse
- added m_windowed cvar (replacing _windowed_mouse), for mouse grabbing
-- ungrabs the mouse when main menu is accessed
-- removed cd [on|off|reset|remap] commands: not quake's problem
+- ungrabs the mouse when main menu or console is accessed
+- removed cd [on|off|reset|remap|eject] commands: not quake's problem
Shitty workarounds and other bullshit
--- a/cd.c
+++ b/cd.c
@@ -42,7 +42,7 @@
err:
close(fd);
- fprint(2, "cdinfo: %r");
+ fprint(2, "cdinfo: %r\n");
return -1;
}
--- a/cl_main.c
+++ b/cl_main.c
@@ -96,7 +96,7 @@
if (cls.demorecording)
CL_Stop_f ();
- Con_DPrintf ("Sending clc_disconnect\n");
+ print("CL_Disconnect: sending clc_disconnect...\n");
SZ_Clear (&cls.message);
MSG_WriteByte (&cls.message, clc_disconnect);
NET_SendUnreliableMessage (cls.netcon, &cls.message);
@@ -142,7 +142,7 @@
cls.netcon = NET_Connect (host);
if (!cls.netcon)
Host_Error ("CL_Connect: connect failed\n");
- Con_DPrintf ("CL_EstablishConnection: connected to %s\n", host);
+ print("CL_EstablishConnection: connected to %s\n", host);
cls.demonum = -1; // not in the demo loop now
cls.state = ca_connected;
@@ -160,7 +160,7 @@
{
char str[8192];
-Con_DPrintf ("CL_SignonReply: %d\n", cls.signon);
+ print("CL_SignonReply: got %d\n", cls.signon);
switch (cls.signon)
{
@@ -658,7 +658,7 @@
if (!NET_CanSendMessage (cls.netcon))
{
- Con_DPrintf ("CL_WriteToServer: can't send\n");
+ fprint(2, "CL_WriteToServer: can't send\n");
return;
}
--- a/cl_parse.c
+++ b/cl_parse.c
@@ -192,8 +192,8 @@
int nummodels, numsounds;
char model_precache[MAX_MODELS][MAX_QPATH];
char sound_precache[MAX_SOUNDS][MAX_QPATH];
-
- Con_DPrintf ("Serverinfo packet received.\n");
+
+ print("CL_ParseServerInfo: parsing serverinfo pkt...\n");
//
// wipe the client_state_t struct
//
--- a/common.c
+++ b/common.c
@@ -966,31 +966,27 @@
snprint(path, sizeof path, "%s/%s", com_gamedir, filename);
if((fd = create(path, OWRITE, 0666)) < 0)
- sysfatal("COM_WriteFile:create: %r");
-
- Sys_Printf("COM_WriteFile: %s\n", path);
+ sysfatal("COM_WriteFile: %r");
ewrite(fd, data, len);
close(fd);
}
-/*
-============
-COM_CreatePath
-
-Only used for CopyFile
-============
-*/
-void COM_CreatePath (char *path)
+/* create directories needed to resolve a path */
+static void
+mkdirp(char *path)
{
- char *ofs;
-
- for (ofs = path+1 ; *ofs ; ofs++)
- {
- if (*ofs == '/')
- { // create the directory
- *ofs = 0;
- Sys_mkdir (path);
- *ofs = '/';
+ int fd;
+ char *s;
+
+ for(s = path+1; *s; s++){
+ if(*s == '/'){
+ *s = 0;
+ if(access(path, AEXIST) < 0){
+ if((fd = create(path, OREAD, DMDIR|0777)) < 0)
+ sysfatal("mkdirp: %r");
+ close(fd);
+ }
+ *s = '/';
}
}
}
@@ -1009,9 +1005,9 @@
sysfatal("COM_CopyFile:open: %r");
remaining = flen(in);
- COM_CreatePath(cachepath); // create directories up to the cache file
+ mkdirp(cachepath);
if((out = create(cachepath, OWRITE, 0666)) < 0)
- sysfatal("COM_CopyFile:create: %r");
+ sysfatal("COM_CopyFile: %r");
while(remaining){
if(remaining < sizeof buf)
@@ -1069,7 +1065,6 @@
for (i=0 ; i<pak->numfiles ; i++)
if(strcmp(pak->files[i].name, filename) == 0)
{ // found it!
- Sys_Printf ("PackFile: %s : %s\n",pak->filename, filename);
if (handle)
{
*handle = pak->handle;
@@ -1114,7 +1109,6 @@
strcpy (netpath, cachepath);
}
- Sys_Printf("FindFile: %s\n", netpath);
com_filesize = -1;
if((i = open(netpath, OREAD)) < 0)
fprint(2, "COM_FindFile:open: %r\n");
@@ -1129,12 +1123,11 @@
*file = fopen (netpath, "rb");
}
return com_filesize;
- }
-
+ }
}
-
- Sys_Printf ("FindFile: can't find %s\n", filename);
-
+
+ fprint(2, "FindFile: no such file %s\n", filename);
+
if (handle)
*handle = -1;
else
@@ -1299,7 +1292,7 @@
unsigned short crc;
if((packhandle = open(packfile, OREAD)) < 0){
- fprint(2, "open: %r\n");
+ fprint(2, "COM_LoadPackFile: %r\n");
return nil;
}
eread(packhandle, &header, sizeof header);
--- a/console.c
+++ b/console.c
@@ -205,16 +205,11 @@
memset(&con_text[(con_current%con_totallines)*con_linewidth], ' ', con_linewidth);
}
-/*
-================
-Con_Print
-
-Handles cursor positioning, line wrapping, etc
-All console printing must go through this in order to be logged to disk
-If no console is visible, the notify window will pop up.
-================
-*/
-void Con_Print (char *txt)
+/* handles cursor positioning, line wrapping, etc. all console printing must go
+ * through this in order to be logged to disk. if no console is visible, the
+ * notify window will pop up. */
+static void
+Con_Print(char *txt)
{
int y;
int c, l;
@@ -290,30 +285,36 @@
}
}
+/* all this because of the color printing hack */
+static void
+print1(char *s, int n)
+{
+ char buf[4096], *p, *d;
-#define MAXPRINTMSG 4096
+ p = s;
+ d = buf;
+ while(*p)
+ *d++ = *p++ & 0x7f;
+ write(1, buf, n);
+}
/* Handles cursor positioning, line wrapping, etc */
void
Con_Printf(char *fmt, ...)
{
+ int n;
va_list arg;
- char c, *p, msg[MAXPRINTMSG];
+ char msg[4096];
static qboolean inupdate;
/* FIXME: Con_Print() above uses 1<<7 bit for color printing select
* letters, notably in mods. this does not amuse print(2) (dofmt()?). */
va_start(arg, fmt);
- vsnprintf(msg, sizeof msg, fmt, arg);
+ n = vsnprintf(msg, sizeof msg, fmt, arg);
va_end(arg);
- for(p = msg; *p; p++){
- c = *p & 0x7f;
- if(c < 32 && c != 10 && c != 13 && c != 9)
- print("[%02x]", c);
- else
- print("%c", c);
- }
+ print1(msg, n);
+
if(!con_initialized)
return;
@@ -322,7 +323,7 @@
// write it to the scrollable buffer
Con_Print(msg);
-
+
// update the screen if the console is displayed
if(cls.signon != SIGNONS && !scr_disabled_for_loading){
/* protect against infinite loop if something in
@@ -333,22 +334,6 @@
inupdate = false;
}
}
-}
-
-void
-Con_DPrintf(char *fmt, ...)
-{
- va_list arg;
- char s[MAXPRINTMSG];
-
- if(!developer.value)
- return; // don't confuse non-developers with techie stuff...
-
- va_start(arg, fmt);
- vsnprint(s, sizeof s, fmt, arg);
- va_end(arg);
-
- Con_Printf("%s", s);
}
/*
--- a/console.h
+++ b/console.h
@@ -13,10 +13,7 @@
void Con_CheckResize (void);
void Con_Init (void);
void Con_DrawConsole (int lines, qboolean drawinput);
-void Con_Print (char *txt);
void Con_Printf (char *fmt, ...);
-void Con_DPrintf (char *fmt, ...);
-void Con_SafePrintf (char *fmt, ...);
void Con_Clear_f (void);
void Con_DrawNotify (void);
void Con_ClearNotify (void);
--- a/d_surf.c
+++ b/d_surf.c
@@ -190,21 +190,15 @@
return new;
}
-
-/*
-=================
-D_SCDump
-=================
-*/
-void D_SCDump (void)
+void
+D_SCDump(void)
{
- surfcache_t *test;
+ surfcache_t *s;
- for (test = sc_base ; test ; test = test->next)
- {
- if (test == sc_rover)
- Sys_Printf ("ROVER:\n");
- print ("%p : %d bytes %ud width\n",test, test->size, test->width);
+ for(s = sc_base; s != nil; s = s->next){
+ if(s == sc_rover)
+ print("ROVER:\n");
+ print("%p : %d bytes %ud width\n", s, s->size, s->width);
}
}
--- a/host.c
+++ b/host.c
@@ -50,8 +50,6 @@
cvar_t samelevel = {"samelevel","0"};
cvar_t noexit = {"noexit","0",false,true};
-cvar_t developer = {"developer","0"};
-
cvar_t skill = {"skill","1"}; // 0 - 3
cvar_t deathmatch = {"deathmatch","0"}; // 0, 1, or 2
cvar_t coop = {"coop","0"}; // 0 or 1
@@ -75,7 +73,7 @@
vsnprint(s, sizeof s, fmt, arg);
va_end(arg);
- Con_DPrintf("Host_EndGame: %s\n", s);
+ print("Host_EndGame: %s\n", s);
if(sv.active)
Host_ShutdownServer(false);
@@ -197,7 +195,6 @@
Cvar_RegisterVariable (&samelevel);
Cvar_RegisterVariable (&noexit);
Cvar_RegisterVariable (&skill);
- Cvar_RegisterVariable (&developer);
Cvar_RegisterVariable (&deathmatch);
Cvar_RegisterVariable (&coop);
@@ -339,7 +336,7 @@
pr_global_struct->self = saveSelf;
}
- Sys_Printf ("Client %s removed\n",host_client->name);
+ print("client %s removed\n", host_client->name);
}
// break the net connection
@@ -450,7 +447,7 @@
*/
void Host_ClearMemory (void)
{
- Con_DPrintf ("Clearing memory\n");
+ print("Clearing memory\n");
D_FlushCaches ();
Mod_ClearAll ();
if (host_hunklevel)
@@ -758,9 +755,7 @@
Hunk_AllocName (0, "-HOST_HUNKLEVEL-");
host_hunklevel = Hunk_LowMark ();
- host_initialized = true;
-
- Sys_Printf ("========Quake Initialized=========\n");
+ host_initialized = true;
}
@@ -797,6 +792,5 @@
{
VID_Shutdown();
}
- IN_Shutdown();
}
--- a/host_cmd.c
+++ b/host_cmd.c
@@ -803,7 +803,7 @@
}
host_client = save;
- Sys_Printf("%s", &text[1]);
+ print("%s", &text[1]);
}
@@ -1061,7 +1061,7 @@
PR_ExecuteProgram (pr_global_struct->ClientConnect);
if ((Sys_FloatTime() - host_client->netconnection->connecttime) <= sv.time)
- Sys_Printf ("%s entered the game\n", host_client->name);
+ print("%s entered the game\n", host_client->name);
PR_ExecuteProgram (pr_global_struct->PutClientInServer);
}
--- a/in.c
+++ b/in.c
@@ -68,7 +68,7 @@
while((r = nbrecv(kchan, &ev)) > 0)
Key_Event(ev.key, ev.down);
if(r < 0)
- fprint(2, "Sys_SendKeyEvents:nbrecv: %r\n");
+ fprint(2, "Sys_SendKeyEvents: %r\n");
}
void
@@ -196,7 +196,7 @@
ev.key = k;
ev.down = true;
if(nbsend(kchan, &ev) < 0)
- fprint(2, "kproc:nbsend: %r\n");
+ fprint(2, "kproc: %r\n");
}
}
}
@@ -210,7 +210,7 @@
ev.key = k;
ev.down = false;
if(nbsend(kchan, &ev) < 0)
- fprint(2, "kproc:nbsend: %r\n");
+ fprint(2, "kproc: %r\n");
}
}
}
@@ -218,7 +218,6 @@
}
strcpy(kdown, buf);
}
- close(fd);
}
static void
@@ -236,10 +235,9 @@
nerr = 0;
for(;;){
if((n = read(fd, buf, sizeof buf)) != 1+4*12){
- fprint(2, "mproc:read: bad count %d not 49: %r\n", n);
- sleep(1); /* why */
if(n < 0 || ++nerr > 10)
break;
+ fprint(2, "mproc: bad count %d not 49: %r\n", n);
continue;
}
nerr = 0;
@@ -267,7 +265,6 @@
break;
}
}
- close(fd);
}
static void
--- a/net_dgrm.c
+++ b/net_dgrm.c
@@ -319,9 +319,9 @@
if (sfunc.AddrCompare(&readaddr, &sock->addr) != 0)
{
#ifdef DEBUG
- Con_DPrintf("Forged packet received\n");
- Con_DPrintf("Expected: %s\n", StrAddr (&sock->addr));
- Con_DPrintf("Received: %s\n", StrAddr (&readaddr));
+ fprint(2, "Datagram_GetMessage: forged pkt received\n"
+ "%s instead of %s\n",
+ StrAddr(&readaddr), StrAddr(&sock->addr));
#endif
continue;
}
@@ -346,7 +346,7 @@
{
if (sequence < sock->unreliableReceiveSequence)
{
- Con_DPrintf("Got a stale datagram\n");
+ fprint(2, "Got a stale datagram\n");
ret = 0;
break;
}
@@ -354,7 +354,7 @@
{
count = sequence - sock->unreliableReceiveSequence;
droppedDatagrams += count;
- Con_DPrintf("Dropped %ud datagram(s)\n", count);
+ fprint(2, "Dropped %ud datagram(s)\n", count);
}
sock->unreliableReceiveSequence = sequence + 1;
@@ -371,7 +371,7 @@
{
if (sequence != (sock->sendSequence - 1))
{
- Con_DPrintf("Stale ACK received\n");
+ fprint(2, "Stale ACK received\n");
continue;
}
if (sequence == sock->ackSequence)
@@ -378,11 +378,11 @@
{
sock->ackSequence++;
if (sock->ackSequence != sock->sendSequence)
- Con_DPrintf("ack sequencing error\n");
+ fprint(2, "ack sequencing error\n");
}
else
{
- Con_DPrintf("Duplicate ACK received\n");
+ fprint(2, "Duplicate ACK received\n");
continue;
}
sock->sendMessageLength -= MAX_DATAGRAM;
--- a/net_main.c
+++ b/net_main.c
@@ -754,9 +754,9 @@
}
if (*my_ipx_address)
- Con_DPrintf("IPX address %s\n", my_ipx_address);
+ print("IPX address %s\n", my_ipx_address);
if (*my_tcpip_address)
- Con_DPrintf("TCP/IP address %s\n", my_tcpip_address);
+ print("TCP/IP address %s\n", my_tcpip_address);
}
/*
--- a/pr_cmds.c
+++ b/pr_cmds.c
@@ -862,15 +862,11 @@
RETURN_EDICT(chain);
}
-
-/*
-=========
-PF_dprint
-=========
-*/
-void PF_dprint (void)
+void
+PF_dprint(void)
{
- Con_DPrintf ("%s",PF_VarString(0));
+ /* just always print it, but not on the console */
+ fprint(2, "%s", PF_VarString(0));
}
char pr_string_temp[128];
--- a/pr_edict.c
+++ b/pr_edict.c
@@ -965,7 +965,7 @@
PR_ExecuteProgram (func - pr_functions);
}
- Con_DPrintf ("%d entities inhibited\n", inhibit);
+ print("%d entities inhibited\n", inhibit);
}
@@ -987,7 +987,7 @@
progs = (dprograms_t *)COM_LoadHunkFile ("progs.dat");
if (!progs)
Sys_Error ("PR_LoadProgs: couldn't load progs.dat");
- Con_DPrintf ("Programs occupy %lldK.\n", com_filesize/1024);
+ print("Programs occupy %lldK.\n", com_filesize/1024);
for (i=0 ; i<com_filesize ; i++)
CRC_ProcessByte (&pr_crc, ((byte *)progs)[i]);
--- a/quakedef.h
+++ b/quakedef.h
@@ -223,7 +223,6 @@
extern quakeparms_t host_parms;
extern cvar_t sys_ticrate;
-extern cvar_t developer;
extern qboolean host_initialized; // true if into command execution
extern double host_frametime;
--- a/r_alias.c
+++ b/r_alias.c
@@ -93,8 +93,7 @@
// TODO: don't repeat this check when drawing?
if ((frame >= pmdl->numframes) || (frame < 0))
{
- Con_DPrintf ("No such frame %d %s\n", frame,
- pmodel->name);
+ fprint(2, "No such frame %d %s\n", frame, pmodel->name);
frame = 0;
}
@@ -546,7 +545,7 @@
skinnum = currententity->skinnum;
if ((skinnum >= pmdl->numskins) || (skinnum < 0))
{
- Con_DPrintf ("R_AliasSetupSkin: no such skin # %d\n", skinnum);
+ fprint(2, "R_AliasSetupSkin: no such skin # %d\n", skinnum);
skinnum = 0;
}
@@ -636,7 +635,7 @@
frame = currententity->frame;
if ((frame >= pmdl->numframes) || (frame < 0))
{
- Con_DPrintf ("R_AliasSetupFrame: no such frame %d\n", frame);
+ fprint(2, "R_AliasSetupFrame: no such frame %d\n", frame);
frame = 0;
}
--- a/sv_main.c
+++ b/sv_main.c
@@ -176,7 +176,7 @@
char message[2048];
MSG_WriteByte (&client->message, svc_print);
- sprint (message, "%c\nVERSION %4.2f SERVER (%ud CRC)", 2, VERSION, pr_crc);
+ sprint(message, "%c\nVERSION %4.2f SERVER (%ud CRC)\n", 2, VERSION, pr_crc);
MSG_WriteString (&client->message,message);
MSG_WriteByte (&client->message, svc_serverinfo);
@@ -234,7 +234,7 @@
client = svs.clients + clientnum;
- Con_DPrintf("Client %s connected\n", client->netconnection->address);
+ print("client %s connected\n", client->netconnection->address);
edictnum = clientnum+1;
@@ -1018,7 +1018,7 @@
Cvar_Set ("hostname", "UNNAMED");
scr_centertime_off = 0;
- Con_DPrintf ("SpawnServer: %s\n",server);
+ print("SV_SpawnServer: %s\n", server);
svs.changelevel_issued = false; // now safe to issue another
//
@@ -1152,6 +1152,6 @@
SV_SendServerinfo (host_client);
IN_Grabm(1);
- Con_DPrintf ("Server spawned.\n");
+ print("server spawned\n");
}
--- a/sv_phys.c
+++ b/sv_phys.c
@@ -594,7 +594,7 @@
VectorCopy (ent->v.oldorigin, ent->v.origin);
if (!SV_TestEntityPosition(ent))
{
- Con_DPrintf ("Unstuck.\n");
+ fprint(2, "player unstuck\n");
SV_LinkEdict (ent, true);
return;
}
@@ -608,7 +608,7 @@
ent->v.origin[2] = org[2] + z;
if (!SV_TestEntityPosition(ent))
{
- Con_DPrintf ("Unstuck.\n");
+ fprint(2, "player unstuck\n");
SV_LinkEdict (ent, true);
return;
}
@@ -615,7 +615,7 @@
}
VectorCopy (org, ent->v.origin);
- Con_DPrintf ("player is stuck.\n");
+ fprint(2, "player is stuck\n");
}
--- a/sv_user.c
+++ b/sv_user.c
@@ -470,7 +470,7 @@
ret = NET_GetMessage (host_client->netconnection);
if (ret == -1)
{
- Sys_Printf ("SV_ReadClientMessage: NET_GetMessage failed\n");
+ fprint(2, "SV_ReadClientMessage: NET_GetMessage failed\n");
return false;
}
if (!ret)
@@ -485,7 +485,7 @@
if (msg_badread)
{
- Sys_Printf ("SV_ReadClientMessage: badread\n");
+ fprint(2, "SV_ReadClientMessage: badread\n");
return false;
}
@@ -497,11 +497,10 @@
goto nextmsg; // end of message
default:
- Sys_Printf ("SV_ReadClientMessage: unknown command char\n");
+ fprint(2, "SV_ReadClientMessage: unknown command char\n");
return false;
case clc_nop:
-// Sys_Printf ("clc_nop\n");
break;
case clc_stringcmd:
@@ -553,11 +552,10 @@
else if (ret == 1)
Cmd_ExecuteString (s, src_client);
else
- Con_DPrintf("%s tried to %s\n", host_client->name, s);
+ fprint(2, "%s tried to %s\n", host_client->name, s);
break;
case clc_disconnect:
-// Sys_Printf ("SV_ReadClientMessage: client disconnected\n");
return false;
case clc_move:
--- a/sys.c
+++ b/sys.c
@@ -56,25 +56,6 @@
void
-Sys_Printf(char *fmt, ...)
-{
- char buf[1024], *p;
- va_list arg;
-
- va_start(arg, fmt);
- vsnprint(buf, sizeof buf, fmt, arg);
- va_end(arg);
-
- for(p = buf; *p; p++){
- *p &= 0x7f;
- if(*p < 32 && *p != 10 && *p != 13 && *p != 9)
- print("[%02x]", *p);
- else
- print("%c", *p);
- }
-}
-
-void
Sys_Quit(void)
{
Host_Shutdown();
@@ -107,27 +88,11 @@
ulong t;
Dir *d;
- if((d = dirstat(path)) == nil){
- fprint(2, "dirstat: %r");
+ if((d = dirstat(path)) == nil)
return -1;
- }
t = d->mtime;
free(d);
return t;
-}
-
-void
-Sys_mkdir(char *path)
-{
- int d;
-
- /* don't care if it isn't a directory, caller doesn't check */
- if(access(path, AEXIST) == 0)
- return;
- if((d = create(path, OREAD, DMDIR|0777)) < 0)
- fprint(2, "Sys_mkdir:create: %r\n");
- else
- close(d);
}
vlong
--- a/sys.h
+++ b/sys.h
@@ -6,13 +6,11 @@
};
void Sys_Error(char *, ...);
-void Sys_Printf(char *, ...);
void Sys_Quit(void);
void Sys_LowFPPrecision(void);
void Sys_HighFPPrecision(void);
void* emalloc(ulong);
ulong Sys_FileTime(char *);
-void Sys_mkdir(char *);
vlong flen(int);
void eread(int, void *, long);
void ewrite(int, void *, long);
--- a/world.c
+++ b/world.c
@@ -646,7 +646,7 @@
{
trace->fraction = midf;
VectorCopy (mid, trace->endpos);
- Con_DPrintf ("backup past 0\n");
+ fprint(2, "backup past 0\n");
return false;
}
midf = p1f + (p2f - p1f)*frac;
--- a/zone.c
+++ b/zone.c
@@ -738,42 +738,12 @@
Cache_Free ( cache_head.next->user ); // reclaim the space
}
-
-/*
-============
-Cache_Print
-
-============
-*/
-void Cache_Print (void)
+void
+Cache_Report(void)
{
- cache_system_t *cd;
-
- for (cd = cache_head.next ; cd != &cache_head ; cd = cd->next)
- {
- Con_Printf ("%8d : %s\n", cd->size, cd->name);
- }
-}
-
-/*
-============
-Cache_Report
-
-============
-*/
-void Cache_Report (void)
-{
- Con_DPrintf ("%4.1f megabyte data cache\n", (hunk_size - hunk_high_used - hunk_low_used) / (float)(1024*1024) );
-}
-
-/*
-============
-Cache_Compact
-
-============
-*/
-void Cache_Compact (void)
-{
+ print("%4.1f megabyte data cache\n",
+ (hunk_size - hunk_high_used - hunk_low_used)
+ / (float)(1024*1024));
}
/*