X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;ds=sidebyside;f=console.c;h=910038e5f1f514379c61112642b647fe5b13198e;hb=93808305537a75ad1dd5595743d1561ab40dd3c8;hp=9f967d1873e5e3fa1bfd81ef236f5f5d1ae35d41;hpb=87a99dafc0a80dd138a8bddef2664a497c970a9a;p=xonotic%2Fdarkplaces.git diff --git a/console.c b/console.c index 9f967d18..910038e5 100644 --- a/console.c +++ b/console.c @@ -39,7 +39,7 @@ int con_backscroll; int con_current; // offset in current line for next print int con_x; -char *con_text = 0; +char con_text[CON_TEXTSIZE]; //seconds cvar_t con_notifytime = {CVAR_SAVE, "con_notifytime","3"}; @@ -60,8 +60,6 @@ extern int key_insert; qboolean con_initialized; -mempool_t *console_mempool; - /* ============================================================================== @@ -99,35 +97,14 @@ const char* Log_Timestamp (const char *desc) strftime (timestring, sizeof (timestring), "%a %b %d %H:%M:%S %Y", crt_tm); if (desc != NULL) - snprintf (timestamp, sizeof (timestamp), "====== %s (%s) ======\n", desc, timestring); + dpsnprintf (timestamp, sizeof (timestamp), "====== %s (%s) ======\n", desc, timestring); else - snprintf (timestamp, sizeof (timestamp), "====== %s ======\n", timestring); + dpsnprintf (timestamp, sizeof (timestamp), "====== %s ======\n", timestring); return timestamp; } -/* -==================== -Log_Init -==================== -*/ -void Log_Init (void) -{ - // Allocate a log queue - logq_size = 512; - logqueue = Mem_Alloc (tempmempool, logq_size); - logq_ind = 0; - - Cvar_RegisterVariable (&log_file); - - // support for the classic Quake option -// COMMANDLINEOPTION: Console: -condebug logs console messages to qconsole.log, see also log_file - if (COM_CheckParm ("-condebug") != 0) - Cvar_SetQuick (&log_file, "qconsole.log"); -} - - /* ==================== Log_Open @@ -138,7 +115,7 @@ void Log_Open (void) if (logfile != NULL || log_file.string[0] == '\0') return; - logfile = FS_Open (log_file.string, "a", false); + logfile = FS_Open (log_file.string, "ab", false, false); if (logfile != NULL) { strlcpy (crt_log_file, log_file.string, sizeof (crt_log_file)); @@ -252,7 +229,7 @@ void Log_Printf (const char *logfilename, const char *fmt, ...) { qfile_t *file; - file = FS_Open (logfilename, "a", true); + file = FS_Open (logfilename, "ab", true, false); if (file != NULL) { va_list argptr; @@ -348,50 +325,40 @@ void Con_CheckResize (void) int i, j, width, oldwidth, oldtotallines, numlines, numchars; char tbuf[CON_TEXTSIZE]; - width = (vid.conwidth >> 3); + width = (vid_conwidth.integer >> 3); if (width == con_linewidth) return; - if (width < 1) // video hasn't been initialized yet - { - width = 80; - con_linewidth = width; - con_totallines = CON_TEXTSIZE / con_linewidth; - memset (con_text, ' ', CON_TEXTSIZE); - } - else - { - oldwidth = con_linewidth; - con_linewidth = width; - oldtotallines = con_totallines; - con_totallines = CON_TEXTSIZE / con_linewidth; - numlines = oldtotallines; + oldwidth = con_linewidth; + con_linewidth = width; + oldtotallines = con_totallines; + con_totallines = CON_TEXTSIZE / con_linewidth; + numlines = oldtotallines; - if (con_totallines < numlines) - numlines = con_totallines; + if (con_totallines < numlines) + numlines = con_totallines; - numchars = oldwidth; + numchars = oldwidth; - if (con_linewidth < numchars) - numchars = con_linewidth; + if (con_linewidth < numchars) + numchars = con_linewidth; - memcpy (tbuf, con_text, CON_TEXTSIZE); - memset (con_text, ' ', CON_TEXTSIZE); + memcpy (tbuf, con_text, CON_TEXTSIZE); + memset (con_text, ' ', CON_TEXTSIZE); - for (i=0 ; i= (size_t) con_linewidth) { - DrawQ_String (0, v, temptext, con_linewidth, 8, 8, 1, 1, 1, 1, 0); + DrawQ_ColoredString( 0, v, temptext, con_linewidth, 8, 8, 1.0, 1.0, 1.0, 1.0, 0, &colorindex ); strcpy(temptext, &temptext[con_linewidth]); v += 8; } if (strlen(temptext) > 0) { - DrawQ_String (0, v, temptext, 0, 8, 8, 1, 1, 1, 1, 0); + DrawQ_ColoredString( 0, v, temptext, 0, 8, 8, 1.0, 1.0, 1.0, 1.0, 0, &colorindex ); v += 8; } } @@ -824,16 +813,17 @@ void Con_DrawConsole (int lines) { int i, y, rows, j; char *text; + int colorindex = -1; if (lines <= 0) return; // draw the background if (scr_conbrightness.value >= 0.01f) - DrawQ_Pic(0, lines - vid.conheight, "gfx/conback", vid.conwidth, vid.conheight, scr_conbrightness.value, scr_conbrightness.value, scr_conbrightness.value, scr_conalpha.value, 0); + DrawQ_Pic(0, lines - vid_conheight.integer, "gfx/conback", vid_conwidth.integer, vid_conheight.integer, scr_conbrightness.value, scr_conbrightness.value, scr_conbrightness.value, scr_conalpha.value, 0); else - DrawQ_Fill(0, lines - vid.conheight, vid.conwidth, vid.conheight, 0, 0, 0, scr_conalpha.value, 0); - DrawQ_String(vid.conwidth - strlen(engineversion) * 8 - 8, lines - 8, engineversion, 0, 8, 8, 1, 0, 0, 1, 0); + DrawQ_Fill(0, lines - vid_conheight.integer, vid_conwidth.integer, vid_conheight.integer, 0, 0, 0, scr_conalpha.value, 0); + DrawQ_String(vid_conwidth.integer - strlen(engineversion) * 8 - 8, lines - 8, engineversion, 0, 8, 8, 1, 0, 0, 1, 0); // draw the text con_vislines = lines; @@ -846,7 +836,7 @@ void Con_DrawConsole (int lines) j = max(i - con_backscroll, 0); text = con_text + (j % con_totallines)*con_linewidth; - DrawQ_String(0, y, text, con_linewidth, 8, 8, 1, 1, 1, 1, 0); + DrawQ_ColoredString( 0, y, text, con_linewidth, 8, 8, 1.0, 1.0, 1.0, 1.0, 0, &colorindex ); } // draw the input prompt, user text, and cursor if desired