]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - sys_linux.c
changed main() argv parameter to non-const, and casting it to const on assignment...
[xonotic/darkplaces.git] / sys_linux.c
index 728ff5fd57bde6bdc2f91bbefa569d1e9bd07c95..ea91828fcc01419a788eca385eb510ff319ebc6b 100644 (file)
@@ -21,15 +21,12 @@ cvar_t sys_usetimegettime = {CVAR_SAVE, "sys_usetimegettime", "1"};
 // =======================================================================
 // General routines
 // =======================================================================
-
-void Sys_Quit (void)
+void Sys_Shutdown (void)
 {
-       Host_Shutdown();
 #ifndef WIN32
        fcntl (0, F_SETFL, fcntl (0, F_GETFL, 0) & ~FNDELAY);
 #endif
        fflush(stdout);
-       exit(0);
 }
 
 void Sys_Error (const char *error, ...)
@@ -47,11 +44,15 @@ void Sys_Error (const char *error, ...)
        va_end (argptr);
        fprintf(stderr, "Error: %s\n", string);
 
+       Con_Print ("Quake Error: ");
+       Con_Print (string);
+       Con_Print ("\n");
+
        Host_Shutdown ();
        exit (1);
 }
 
-void Sys_Print(const char *text)
+void Sys_PrintToTerminal(const char *text)
 {
        printf("%s", text);
 }
@@ -139,7 +140,7 @@ char *Sys_ConsoleInput(void)
        if (cls.state == ca_dedicated)
        {
                static char text[256];
-               int len = 0;
+               static int len = 0;
 #ifdef WIN32
                int c;
 
@@ -147,30 +148,30 @@ char *Sys_ConsoleInput(void)
                while (_kbhit ())
                {
                        c = _getch ();
-                       putch (c);
                        if (c == '\r')
                        {
-                               text[len] = 0;
+                               text[len] = '\0';
                                putch ('\n');
                                len = 0;
                                return text;
                        }
-                       if (c == 8)
+                       if (c == '\b')
                        {
                                if (len)
                                {
+                                       putch (c);
                                        putch (' ');
                                        putch (c);
                                        len--;
-                                       text[len] = 0;
                                }
                                continue;
                        }
-                       text[len] = c;
-                       len++;
-                       text[len] = 0;
-                       if (len == sizeof (text))
-                               len = 0;
+                       if (len < sizeof (text) - 1)
+                       {
+                               putch (c);
+                               text[len] = c;
+                               len++;
+                       }
                }
 #else
                fd_set fdset;
@@ -194,23 +195,30 @@ char *Sys_ConsoleInput(void)
        return NULL;
 }
 
-void Sys_Sleep(void)
+void Sys_Sleep(int milliseconds)
 {
+       if (milliseconds < 1)
+               milliseconds = 1;
 #ifdef WIN32
-       Sleep (1);
+       Sleep(milliseconds);
 #else
-       usleep(1);
+       usleep(milliseconds * 1000);
 #endif
 }
 
-int main (int argc, const char **argv)
+char *Sys_GetClipboardData (void)
+{
+       return NULL;
+}
+
+int main (int argc, char **argv)
 {
        double frameoldtime, framenewtime;
 
        signal(SIGFPE, SIG_IGN);
 
        com_argc = argc;
-       com_argv = argv;
+       com_argv = (const char **)argv;
 
 #ifndef WIN32
        fcntl(0, F_SETFL, fcntl (0, F_GETFL, 0) | FNDELAY);