From: havoc Date: Sat, 17 Aug 2002 23:19:47 +0000 (+0000) Subject: removed fxmesa support (3dfx svgalib) because no one used it to my knowledge, and... X-Git-Tag: RELEASE_0_2_0_RC1~335 X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fdarkplaces.git;a=commitdiff_plain;h=5487a6f74245074ed93b2efcb4249c697b7409fe removed fxmesa support (3dfx svgalib) because no one used it to my knowledge, and it probably did not even work due to poor maintenance and cleaned up makefile a bit git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@2256 d7cf8633-e32d-0410-b094-e92efae38249 --- diff --git a/in_svgalib.c b/in_svgalib.c deleted file mode 100644 index be416871..00000000 --- a/in_svgalib.c +++ /dev/null @@ -1,334 +0,0 @@ -/* - in_svgalib.c - - (description) - - Copyright (C) 1996-1997 Id Software, Inc. - Copyright (C) 1999-2000 Marcus Sundberg [mackan@stacken.kth.se] - Copyright (C) 1999,2000 contributors of the QuakeForge project - Please see the file "AUTHORS" for a list of contributors - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License - as published by the Free Software Foundation; either version 2 - of the License, or (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - - See the GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to: - - Free Software Foundation, Inc. - 59 Temple Place - Suite 330 - Boston, MA 02111-1307, USA - - $Id$ -*/ - -#ifdef HAVE_CONFIG_H -# include "config.h" -#endif - -#include "quakedef.h" -#include "sys.h" -#include "console.h" - -#include -#include -#ifdef HAVE_UNISTD_H -#include -#endif - -#include -#include -#include - - -static int UseKeyboard = 1; -static int UseMouse = 1; -static int in_svgalib_inited = 0; - -static unsigned char scantokey[128]; -static int mouse_buttons; -static int mouse_buttonstate; -static int mouse_oldbuttonstate; -static float mouse_x, mouse_y; -static float old_mouse_x, old_mouse_y; -static int mx, my, uimx, uimy; - -static void IN_init_kb(void); -static void IN_init_mouse(void); - -static void keyhandler(int scancode, int state) -{ - int sc; - - sc = scancode & 0x7f; - Key_Event(scantokey[sc], state == KEY_EVENTPRESS); -} - - -static void mousehandler(int buttonstate, int dx, int dy, int dz, int drx, int dry, int drz) -{ - mouse_buttonstate = buttonstate; - uimx += dx; - uimy += dy; - mx += dx; - my += dy; - if (drx > 0) { - Key_Event(K_MWHEELUP, 1); - Key_Event(K_MWHEELUP, 0); - } else if (drx < 0) { - Key_Event(K_MWHEELDOWN, 1); - Key_Event(K_MWHEELDOWN, 0); - } -} - - -void IN_Init(void) -{ - if (COM_CheckParm("-nokbd")) UseKeyboard = 0; - if (COM_CheckParm("-nomouse")) UseMouse = 0; - - uimx = uimy = 0; - if (UseKeyboard) - IN_init_kb(); - if (UseMouse) - IN_init_mouse(); - - in_svgalib_inited = 1; -} - -static void IN_init_kb(void) -{ - int i; - - for (i=0 ; i<128 ; i++) { - scantokey[i] = ' '; - } - - scantokey[ 1] = K_ESCAPE; - scantokey[ 2] = '1'; - scantokey[ 3] = '2'; - scantokey[ 4] = '3'; - scantokey[ 5] = '4'; - scantokey[ 6] = '5'; - scantokey[ 7] = '6'; - scantokey[ 8] = '7'; - scantokey[ 9] = '8'; - scantokey[ 10] = '9'; - scantokey[ 11] = '0'; - scantokey[ 12] = '-'; - scantokey[ 13] = '='; - scantokey[ 14] = K_BACKSPACE; - scantokey[ 15] = K_TAB; - scantokey[ 16] = 'q'; - scantokey[ 17] = 'w'; - scantokey[ 18] = 'e'; - scantokey[ 19] = 'r'; - scantokey[ 20] = 't'; - scantokey[ 21] = 'y'; - scantokey[ 22] = 'u'; - scantokey[ 23] = 'i'; - scantokey[ 24] = 'o'; - scantokey[ 25] = 'p'; - scantokey[ 26] = '['; - scantokey[ 27] = ']'; - scantokey[ 28] = K_ENTER; - scantokey[ 29] = K_CTRL; /*left */ - scantokey[ 30] = 'a'; - scantokey[ 31] = 's'; - scantokey[ 32] = 'd'; - scantokey[ 33] = 'f'; - scantokey[ 34] = 'g'; - scantokey[ 35] = 'h'; - scantokey[ 36] = 'j'; - scantokey[ 37] = 'k'; - scantokey[ 38] = 'l'; - scantokey[ 39] = ';'; - scantokey[ 40] = '\''; - scantokey[ 41] = '`'; - scantokey[ 42] = K_SHIFT; /*left */ - scantokey[ 43] = '\\'; - scantokey[ 44] = 'z'; - scantokey[ 45] = 'x'; - scantokey[ 46] = 'c'; - scantokey[ 47] = 'v'; - scantokey[ 48] = 'b'; - scantokey[ 49] = 'n'; - scantokey[ 50] = 'm'; - scantokey[ 51] = ','; - scantokey[ 52] = '.'; - scantokey[ 53] = '/'; - scantokey[ 54] = K_SHIFT; /*right */ - scantokey[ 55] = KP_MULTIPLY; - scantokey[ 56] = K_ALT; /*left */ - scantokey[ 57] = ' '; - scantokey[ 58] = K_CAPSLOCK; - scantokey[ 59] = K_F1; - scantokey[ 60] = K_F2; - scantokey[ 61] = K_F3; - scantokey[ 62] = K_F4; - scantokey[ 63] = K_F5; - scantokey[ 64] = K_F6; - scantokey[ 65] = K_F7; - scantokey[ 66] = K_F8; - scantokey[ 67] = K_F9; - scantokey[ 68] = K_F10; - scantokey[ 69] = KP_NUMLCK; - scantokey[ 70] = K_SCRLCK; - scantokey[ 71] = KP_HOME; - scantokey[ 72] = KP_UPARROW; - scantokey[ 73] = KP_PGUP; - scantokey[ 74] = KP_MINUS; - scantokey[ 75] = KP_LEFTARROW; - scantokey[ 76] = KP_5; - scantokey[ 77] = KP_RIGHTARROW; - scantokey[ 79] = KP_END; - scantokey[ 78] = KP_PLUS; - scantokey[ 80] = KP_DOWNARROW; - scantokey[ 81] = KP_PGDN; - scantokey[ 82] = KP_INS; - scantokey[ 83] = KP_DEL; - /* 84 to 86 not used */ - scantokey[ 87] = K_F11; - scantokey[ 88] = K_F12; - /* 89 to 95 not used */ - scantokey[ 96] = KP_ENTER; /* keypad enter */ - scantokey[ 97] = K_CTRL; /* right */ - scantokey[ 98] = KP_DIVIDE; - scantokey[ 99] = K_PRNTSCR; /* print screen */ - scantokey[100] = K_ALT; /* right */ - - scantokey[101] = K_PAUSE; /* break */ - scantokey[102] = K_HOME; - scantokey[103] = K_UPARROW; - scantokey[104] = K_PGUP; - scantokey[105] = K_LEFTARROW; - scantokey[106] = K_RIGHTARROW; - scantokey[107] = K_END; - scantokey[108] = K_DOWNARROW; - scantokey[109] = K_PGDN; - scantokey[110] = K_INS; - scantokey[111] = K_DEL; - scantokey[119] = K_PAUSE; - - if (keyboard_init()) { - Sys_Error("keyboard_init() failed"); - } - keyboard_seteventhandler(keyhandler); -} - -static void IN_init_mouse(void) -{ - int mtype; - char *mousedev; - int mouserate = MOUSE_DEFAULTSAMPLERATE; - - mouse_buttons = 3; - - mtype = vga_getmousetype(); - - mousedev = "/dev/mouse"; - if (getenv("MOUSEDEV")) mousedev = getenv("MOUSEDEV"); - if (COM_CheckParm("-mdev")) { - mousedev = com_argv[COM_CheckParm("-mdev")+1]; - } - - if (getenv("MOUSERATE")) mouserate = atoi(getenv("MOUSERATE")); - if (COM_CheckParm("-mrate")) { - mouserate = atoi(com_argv[COM_CheckParm("-mrate")+1]); - } - - if (mouse_init(mousedev, mtype, mouserate)) { - Con_Printf("No mouse found\n"); - UseMouse = 0; - } else{ - mouse_seteventhandler((void*)mousehandler); - } -} - -void IN_Shutdown(void) -{ - Con_Printf("IN_Shutdown\n"); - - if (UseMouse) - mouse_close(); - if (UseKeyboard) - keyboard_close(); - in_svgalib_inited = 0; -} - - -void Sys_SendKeyEvents(void) -{ - if (!in_svgalib_inited) return; - - if (UseKeyboard) { - while ((keyboard_update())); - } -} - - -void IN_Commands(void) -{ - if (UseMouse) - { - /* Poll mouse values */ - while (mouse_update()) - ; - - /* Perform button actions */ - if ((mouse_buttonstate & MOUSE_LEFTBUTTON) && - !(mouse_oldbuttonstate & MOUSE_LEFTBUTTON)) - Key_Event (K_MOUSE1, true); - else if (!(mouse_buttonstate & MOUSE_LEFTBUTTON) && - (mouse_oldbuttonstate & MOUSE_LEFTBUTTON)) - Key_Event (K_MOUSE1, false); - - if ((mouse_buttonstate & MOUSE_RIGHTBUTTON) && - !(mouse_oldbuttonstate & MOUSE_RIGHTBUTTON)) - Key_Event (K_MOUSE2, true); - else if (!(mouse_buttonstate & MOUSE_RIGHTBUTTON) && - (mouse_oldbuttonstate & MOUSE_RIGHTBUTTON)) - Key_Event (K_MOUSE2, false); - - if ((mouse_buttonstate & MOUSE_MIDDLEBUTTON) && - !(mouse_oldbuttonstate & MOUSE_MIDDLEBUTTON)) - Key_Event (K_MOUSE3, true); - else if (!(mouse_buttonstate & MOUSE_MIDDLEBUTTON) && - (mouse_oldbuttonstate & MOUSE_MIDDLEBUTTON)) - Key_Event (K_MOUSE3, false); - - mouse_oldbuttonstate = mouse_buttonstate; - } -} - - -void IN_Move(usercmd_t *cmd) -{ - if (!UseMouse) - return; - - /* Poll mouse values */ - while (mouse_update()) - ; - - if (key_dest != key_game) - ui_mouseupdaterelative(uimx, uimy); - else - IN_Mouse(cmd, mx, my); - mx = 0; - my = 0; - uimx = 0; - uimy = 0; -} - -void IN_HandlePause (qboolean pause) -{ -} - diff --git a/makefile b/makefile index 8d948bdd..fff672e4 100644 --- a/makefile +++ b/makefile @@ -22,16 +22,18 @@ SOUNDLIB= #if you want no CD audio CD=cd_null.o -OBJECTS= builddate.o $(CD) $(SND) chase.o cl_demo.o cl_input.o cl_main.o cl_parse.o cl_tent.o cmd.o common.o console.o crc.o cvar.o fractalnoise.o gl_draw.o r_sky.o gl_rmain.o gl_rsurf.o host.o host_cmd.o image.o keys.o mathlib.o menu.o model_alias.o model_brush.o model_shared.o model_sprite.o net_bsd.o net_udp.o net_dgrm.o net_loop.o net_main.o pr_cmds.o pr_edict.o pr_exec.o r_light.o r_explosion.o sbar.o sv_main.o sv_move.o sv_phys.o sv_user.o sv_light.o sys_linux.o transform.o view.o wad.o world.o zone.o vid_shared.o palette.o r_crosshairs.o gl_textures.o gl_models.o r_sprites.o r_modules.o r_explosion.o r_lerpanim.o protocol.o quakeio.o ui.o portals.o sys_shared.o cl_light.o gl_backend.o cl_particles.o cl_screen.o cgamevm.o cgame.o filematch.o collision.o cl_collision.o matrixlib.o cl_video.o dpvsimpledecode.o wavefile.o meshqueue.o +OBJECTS= builddate.o chase.o cl_demo.o cl_input.o cl_main.o cl_parse.o cl_tent.o cmd.o common.o console.o crc.o cvar.o fractalnoise.o gl_draw.o r_sky.o gl_rmain.o gl_rsurf.o host.o host_cmd.o image.o keys.o mathlib.o menu.o model_alias.o model_brush.o model_shared.o model_sprite.o net_bsd.o net_udp.o net_dgrm.o net_loop.o net_main.o pr_cmds.o pr_edict.o pr_exec.o r_light.o r_explosion.o sbar.o sv_main.o sv_move.o sv_phys.o sv_user.o sv_light.o sys_linux.o transform.o view.o wad.o world.o zone.o vid_shared.o palette.o r_crosshairs.o gl_textures.o gl_models.o r_sprites.o r_modules.o r_explosion.o r_lerpanim.o protocol.o quakeio.o ui.o portals.o sys_shared.o cl_light.o gl_backend.o cl_particles.o cl_screen.o cgamevm.o cgame.o filematch.o collision.o cl_collision.o matrixlib.o cl_video.o dpvsimpledecode.o wavefile.o meshqueue.o #K6/athlon optimizations -CPUOPTIMIZATIONS=-march=k6 +#CPUOPTIMIZATIONS=-march=k6 #note: don't use -march=athlon, every gcc which has it currently (2.96-3.1) #have optimizer bugs (like entities disappearing randomly - a bug with #compiling BOX_ON_PLANE_SIDE in mathlib.h) #CPUOPTIMIZATIONS=-march=athlon #686 optimizations #CPUOPTIMIZATIONS=-march=i686 +#no specific CPU +CPUOPTIMIZATIONS= #use this line for profiling PROFILEOPTION=-pg -g @@ -49,19 +51,14 @@ NOPROFILEOPTIMIZATIONS= #normal compile OPTIMIZATIONS= -O6 -fno-strict-aliasing -ffast-math -funroll-loops $(NOPROFILEOPTIMIZATIONS) -fexpensive-optimizations $(CPUOPTIMIZATIONS) -CFLAGS= -MD -Wall -Werror -I/usr/X11R6/include -I/usr/include/glide $(OPTIMIZATIONS) $(PROFILEOPTION) +CFLAGS= -MD -Wall -Werror -I/usr/X11R6/include $(OPTIMIZATIONS) $(PROFILEOPTION) #debug compile #OPTIMIZATIONS= #CFLAGS= -MD -Wall -Werror -I/usr/X11R6/include -ggdb $(OPTIMIZATIONS) $(PROFILEOPTION) -#LordHavoc: what is XIE? XFree 4.1.0 doesn't need it and 4.2.0 seems to be missing it entirely -#LDFLAGS= -L/usr/X11R6/lib -lm -lX11 -lXext -lXIE -lXxf86dga -lXxf86vm -lGL -ldl $(SOUNDLIB) $(PROFILEOPTION) -#LDFLAGS= -L/usr/X11R6/lib -lm -lX11 -lXext -lXxf86dga -lXxf86vm -lGL -ldl $(SOUNDLIB) $(PROFILEOPTION) LDFLAGS= -L/usr/X11R6/lib -lm -lX11 -lXext -lXxf86dga -lXxf86vm -ldl $(SOUNDLIB) $(PROFILEOPTION) -#if you don't need the -3dfx version, use this line all: builddate darkplaces-glx -#all: builddate darkplaces-glx darkplaces-3dfx builddate: touch builddate.c @@ -69,15 +66,11 @@ builddate: .c.o: gcc $(CFLAGS) -c $*.c -darkplaces-glx: $(OBJECTS) vid_glx.o +darkplaces-glx: vid_glx.o $(CD) $(SND) $(OBJECTS) gcc -o $@ $^ $(LDFLAGS) -darkplaces-3dfx: $(OBJECTS) in_svgalib.o vid_3dfxsvga.o - gcc -o $@ $^ $(LDFLAGS) - - clean: - -rm -f darkplaces-glx darkplaces-3dfx *.o *.d + -rm -f darkplaces-glx *.o *.d .PHONY: clean builddate diff --git a/vid_3dfxsvga.c b/vid_3dfxsvga.c deleted file mode 100644 index a07b8f31..00000000 --- a/vid_3dfxsvga.c +++ /dev/null @@ -1,307 +0,0 @@ -/* - vid_3dfxsvga.c - - OpenGL device driver for 3Dfx chipsets running Linux - - Copyright (C) 1996-1997 Id Software, Inc. - Copyright (C) 1999,2000 Nelson Rush. - Copyright (C) 1999,2000 contributors of the QuakeForge project - Please see the file "AUTHORS" for a list of contributors - - This program is free software; you can redistribute it and/or - modify it under the terms of the GNU General Public License - as published by the Free Software Foundation; either version 2 - of the License, or (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - - See the GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to: - - Free Software Foundation, Inc. - 59 Temple Place - Suite 330 - Boston, MA 02111-1307, USA - - $Id$ -*/ - -#include "quakedef.h" -#include "sys.h" -#include "console.h" -#include "sbar.h" - -#include -#include -#include -#include - -#include - -#include -#include -#include - - -viddef_t vid; // global video state - -static void *dlhand = NULL; - -static fxMesaContext fc = NULL; -static int scr_width, scr_height; - -int VID_options_items = 0; - -/*-----------------------------------------------------------------------*/ -void D_BeginDirectRect (int x, int y, qbyte *pbitmap, int width, int height) -{ -} - -void D_EndDirectRect (int x, int y, int width, int height) -{ -} - -void VID_Shutdown(void) -{ - if (!fc) - return; - - fxMesaDestroyContext(fc); - - GL_CloseLibrary(); -} - -void signal_handler(int sig) -{ - printf("Received signal %d, exiting...\n", sig); - Host_Shutdown(); - abort(); - exit(0); -} - -void InitSig(void) -{ - signal(SIGHUP, signal_handler); - signal(SIGINT, signal_handler); - signal(SIGQUIT, signal_handler); - signal(SIGILL, signal_handler); - signal(SIGTRAP, signal_handler); - signal(SIGBUS, signal_handler); - signal(SIGSEGV, signal_handler); - signal(SIGTERM, signal_handler); -} - -typedef void (GLAPIENTRY *gl3DfxSetDitherModeEXT_FUNC) (GrDitherMode_t mode); - -void VID_SetupDithering(void) -{ - Con_Printf ("Dithering: "); - - dlhand = dlopen (NULL, RTLD_LAZY); - - if (dlhand == NULL) { - Con_SafePrintf ("unable to set.\n"); - return; - } - - if (strstr(gl_extensions, "3DFX_set_dither_mode")) { - gl3DfxSetDitherModeEXT_FUNC dither_select = NULL; - - dither_select = (void *) dlsym(dlhand, "gl3DfxSetDitherModeEXT"); - - if (COM_CheckParm ("-dither_2x2")) { - dither_select(GR_DITHER_2x2); - Con_Printf ("2x2.\n"); - } else if (COM_CheckParm ("-dither_4x4")) { - dither_select(GR_DITHER_4x4); - Con_Printf ("4x4.\n"); - } else { - qglDisable(GL_DITHER); - Con_Printf ("disabled.\n"); - } - } - dlclose(dlhand); - dlhand = NULL; -} - -/* -================= -VID_GetWindowSize -================= -*/ -void VID_GetWindowSize (int *x, int *y, int *width, int *height) -{ - *x = *y = 0; - *width = scr_width; - *height = scr_height; -} - -void VID_Finish (void) -{ - if (r_render.integer) - { - qglFinish(); - fxMesaSwapBuffers(); - } -} - -static int resolutions[][3]={ - { 320, 200, GR_RESOLUTION_320x200 }, - { 320, 240, GR_RESOLUTION_320x240 }, - { 400, 256, GR_RESOLUTION_400x256 }, - { 400, 300, GR_RESOLUTION_400x300 }, - { 512, 256, GR_RESOLUTION_512x256 }, - { 512, 384, GR_RESOLUTION_512x384 }, - { 640, 200, GR_RESOLUTION_640x200 }, - { 640, 350, GR_RESOLUTION_640x350 }, - { 640, 400, GR_RESOLUTION_640x400 }, - { 640, 480, GR_RESOLUTION_640x480 }, - { 800, 600, GR_RESOLUTION_800x600 }, - { 856, 480, GR_RESOLUTION_856x480 }, - { 960, 720, GR_RESOLUTION_960x720 }, -#ifdef GR_RESOLUTION_1024x768 - { 1024, 768, GR_RESOLUTION_1024x768 }, -#endif -#ifdef GR_RESOLUTION_1152x864 - { 1152, 864, GR_RESOLUTION_1152x864 }, -#endif -#ifdef GR_RESOLUTION_1280x960 - { 1280, 960, GR_RESOLUTION_1280x960 }, -#endif -#ifdef GR_RESOLUTION_1280x1024 - { 1280, 1024, GR_RESOLUTION_1280x1024 }, -#endif -#ifdef GR_RESOLUTION_1600x1024 - { 1600, 1024, GR_RESOLUTION_1600x1024 }, -#endif -#ifdef GR_RESOLUTION_1600x1200 - { 1600, 1200, GR_RESOLUTION_1600x1200 }, -#endif -#ifdef GR_RESOLUTION_1792x1344 - { 1792, 1344, GR_RESOLUTION_1792x1344 }, -#endif -#ifdef GR_RESOLUTION_1856x1392 - { 1856, 1392, GR_RESOLUTION_1856x1392 }, -#endif -#ifdef GR_RESOLUTION_1920x1440 - { 1920, 1440, GR_RESOLUTION_1920x1440 }, -#endif -#ifdef GR_RESOLUTION_2048x1536 - { 2048, 1536, GR_RESOLUTION_2048x1536 }, -#endif -#ifdef GR_RESOLUTION_2048x2048 - { 2048, 2048, GR_RESOLUTION_2048x2048 } -#endif -}; - -#define NUM_RESOLUTIONS (sizeof(resolutions)/(sizeof(int)*3)) - - -static int -findres(int *width, int *height) -{ - int i; - - for(i=0; i < NUM_RESOLUTIONS; i++) { - if((*width <= resolutions[i][0]) && - (*height <= resolutions[i][1])) { - *width = resolutions[i][0]; - *height = resolutions[i][1]; - return resolutions[i][2]; - } - } - - *width = 640; - *height = 480; - return GR_RESOLUTION_640x480; -} - -int VID_SetGamma(float prescale, float gamma, float scale, float base) -{ - return FALSE; -} - -void VID_Init(void) -{ - int i; - GLint attribs[32]; - int width = 640, height = 480; - - GL_OpenLibrary(); - -// set vid parameters - attribs[0] = FXMESA_DOUBLEBUFFER; - attribs[1] = FXMESA_ALPHA_SIZE; - attribs[2] = 1; - attribs[3] = FXMESA_DEPTH_SIZE; - attribs[4] = 1; - attribs[5] = FXMESA_NONE; - - if ((i = COM_CheckParm("-width")) != 0) - width = atoi(com_argv[i+1]); - if ((i = COM_CheckParm("-height")) != 0) - height = atoi(com_argv[i+1]); - - if ((i = COM_CheckParm("-conwidth")) != 0) - vid.conwidth = atoi(com_argv[i+1]); - else - vid.conwidth = 640; - - vid.conwidth &= 0xfff8; // make it a multiple of eight - - if (vid.conwidth < 320) - vid.conwidth = 320; - - // pick a conheight that matches with correct aspect - vid.conheight = vid.conwidth*3 / 4; - - if ((i = COM_CheckParm("-conheight")) != 0) - vid.conheight = atoi(com_argv[i+1]); - if (vid.conheight < 200) - vid.conheight = 200; - - fc = fxMesaCreateContext(0, findres(&width, &height), GR_REFRESH_75Hz, - attribs); - if (!fc) - Sys_Error("Unable to create 3DFX context.\n"); - - scr_width = width; - scr_height = height; - - fxMesaMakeCurrent(fc); - - if (vid.conheight > height) - vid.conheight = height; - if (vid.conwidth > width) - vid.conwidth = width; - - InitSig(); // trap evil signals - - GL_Init(); - - VID_SetupDithering(); // 3DFX specific - - vid_hidden = false; - - Con_SafePrintf ("Video mode %dx%d initialized.\n", width, height); -} - -void VID_ExtraOptionDraw(unsigned int options_draw_cursor) -{ -} - -void VID_ExtraOptionCmd(int option_cursor) -{ -} - -void VID_SetCaption (char *text) -{ -} - -void VID_HandlePause (qboolean pause) -{ -} -