X-Git-Url: http://de.git.xonotic.org/?a=blobdiff_plain;f=sys_win.c;h=e261d04ddf5d046c9db2af7cb07eb8b02401e274;hb=9e63b852381f1fc228dedc8eed053b52d4a5eac8;hp=7ec988cc567c47ea94df7c8648a69db1c60276b5;hpb=c294ce3a35d87288b409172ca109a734cfadb21c;p=xonotic%2Fdarkplaces.git diff --git a/sys_win.c b/sys_win.c index 7ec988cc..e261d04d 100644 --- a/sys_win.c +++ b/sys_win.c @@ -19,15 +19,18 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ // sys_win.c -- Win32 system interface code -#define WIN32_USETIMEGETTIME 0 - #include "quakedef.h" -#include "winquake.h" +#include +#include #include "errno.h" #include "resource.h" #include "conproc.h" #include "direct.h" +extern void S_BlockSound (void); + +cvar_t sys_usetimegettime = {CVAR_SAVE, "sys_usetimegettime", "1"}; + // # of seconds to wait on Sys_Error running dedicated before exiting #define CONSOLE_ERROR_TIMEOUT 60.0 // sleep time on pause or minimization @@ -35,9 +38,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // sleep time when not focus #define NOT_FOCUS_SLEEP 20 -int starttime; -qboolean ActiveApp, Minimized; - static qboolean sc_return_on_enter = false; HANDLE hinput, houtput; @@ -46,129 +46,6 @@ static HANDLE hFile; static HANDLE heventParent; static HANDLE heventChild; -/* -=============================================================================== - -QFile IO - -=============================================================================== -*/ - -// LordHavoc: 256 pak files (was 10) -#define MAX_HANDLES 256 -QFile *sys_handles[MAX_HANDLES]; - -int findhandle (void) -{ - int i; - - for (i=1 ; i 126))) + while (*lpCmdLine && *lpCmdLine <= ' ') lpCmdLine++; - if (*lpCmdLine) - { - argv[host_parms.argc] = lpCmdLine; - host_parms.argc++; + if (!*lpCmdLine) + break; - while (*lpCmdLine && ((*lpCmdLine > 32) && (*lpCmdLine <= 126))) + if (*lpCmdLine == '\"') + { + // quoted string + lpCmdLine++; + argv[com_argc] = lpCmdLine; + com_argc++; + while (*lpCmdLine && (*lpCmdLine != '\"')) lpCmdLine++; - - if (*lpCmdLine) - { - *lpCmdLine = 0; + } + else + { + // unquoted word + argv[com_argc] = lpCmdLine; + com_argc++; + while (*lpCmdLine && *lpCmdLine > ' ') lpCmdLine++; - } + } + if (*lpCmdLine) + { + *lpCmdLine = 0; + lpCmdLine++; } } - host_parms.argv = argv; - - COM_InitArgv (host_parms.argc, host_parms.argv); - - host_parms.argc = com_argc; - host_parms.argv = com_argv; - Sys_Shared_EarlyInit(); + Cvar_RegisterVariable(&sys_usetimegettime); + tevent = CreateEvent(NULL, false, false, NULL); if (!tevent) @@ -570,29 +432,28 @@ int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLin Sys_Shared_LateInit(); - oldtime = Sys_DoubleTime (); - + frameoldtime = Sys_DoubleTime (); + /* main window message loop */ while (1) { if (cls.state != ca_dedicated) { // yield the CPU for a little while when paused, minimized, or not the focus - if ((cl.paused && !ActiveApp) || Minimized) + if ((cl.paused && !vid_activewindow) || vid_hidden) { SleepUntilInput (PAUSE_SLEEP); scr_skipupdate = 1; // no point in bothering to draw } - else if (!ActiveApp) + else if (!vid_activewindow) SleepUntilInput (NOT_FOCUS_SLEEP); } - newtime = Sys_DoubleTime (); - Host_Frame (newtime - oldtime); - oldtime = newtime; + framenewtime = Sys_DoubleTime (); + Host_Frame (framenewtime - frameoldtime); + frameoldtime = framenewtime; } /* return success of application */ return true; } -