Merge branch 'maint'
[gnushogi.git] / gnushogi / main.c
index 3c80977..d9fae21 100644 (file)
@@ -2,11 +2,15 @@
  * FILE: main.c
  *
  * ----------------------------------------------------------------------
- *
- * Copyright (c) 2012 Free Software Foundation
+ * Copyright (c) 1993, 1994, 1995 Matthias Mutz
+ * Copyright (c) 1999 Michael Vanier and the Free Software Foundation
+ * Copyright (c) 2008, 2013, 2014 Yann Dirson and the Free Software Foundation
  *
  * GNU SHOGI is based on GNU CHESS
  *
+ * Copyright (c) 1988, 1989, 1990 John Stanback
+ * Copyright (c) 1992 Free Software Foundation
+ *
  * This file is part of GNU SHOGI.
  *
  * GNU Shogi is free software; you can redistribute it and/or modify it
@@ -26,7 +30,6 @@
  *
  */
 
-#include "version.h"
 #include "gnushogi.h"
 
 #include <signal.h>
@@ -78,43 +81,38 @@ main (int argc, char **argv)
                 binbookfile = NULL;
 #endif
             }
-
             break;
 
 #ifdef BINBOOK
         case 'B':
             argc--;
             argv++;
-
             if (argc > 0)
                 binbookfile = argv[0];
-
             break;
 #endif
 
+#ifdef HAVE_LIBCURSES
         case 'C':
             /* Curses interface. */
             display_type = DISPLAY_CURSES;
-
+            dsp = &curses_display;
             break;
-
+#endif
 
         case 'h':
             /* Need the "+" syntax here... */
             hash = ((argv[0][0] == '-') ? false : true);
             break;
 
-
         case 'l':
             argc--;
             argv++;
 
             if (argc > 0)
                 Lang = argv[0];
-
             break;
 
-
         case 'L':
             argc--;
             argv++;
@@ -123,34 +121,28 @@ main (int argc, char **argv)
                 strcpy(listfile, argv[0]);
             break;
 
-
         case 's':
             argc--;
             argv++;
 
             if (argc > 0)
                 strcpy(savefile, argv[0]);
-
             break;
 
-
         case 'P':
             argc--;
             argv++;
 
             if (argc > 0)
                 bookmaxply = atoi(argv[0]);
-
             break;
 
-
         case 'R':
             /* Raw text interface. */
             display_type = DISPLAY_RAW;
-
+            dsp = &raw_display;
             break;
 
-
         case 'S':
             argc--;
             argv++;
@@ -166,23 +158,18 @@ main (int argc, char **argv)
 
             if (argc > 0)
                 rehash = atoi(argv[0]);
-
             if (rehash > MAXrehash)
                 rehash = MAXrehash;
-
             break;
 
-
         case 'T':
             argc--;
             argv++;
 
             if (argc > 0)
                 ttblsize = atoi(argv[0]);
-
-            if ((ttblsize <= MINTTABLE))
+            if (ttblsize <= MINTTABLE)
                 ttblsize = (MINTTABLE) + 1;
-
             break;
 
 #ifdef HASHFILE
@@ -208,7 +195,7 @@ main (int argc, char **argv)
                 long j;
                 struct fileentry n;
 
-                fputs(CP[66], stdout);
+                fputs("Filling transposition file, wait!\n", stdout);
                 n.f = n.t = 0;
                 n.flags = 0;
                 n.depth = 0;
@@ -221,12 +208,11 @@ main (int argc, char **argv)
             }
             else
             {
-                printf(CP[50], HASHFILE);
+                printf("Create failed for %s\n", HASHFILE);
             }
 
             return 0;
 
-
         case 't':   /* Create or test persistent transposition table. */
             hashfile = fopen(HASHFILE, RWA_ACC);
 
@@ -242,7 +228,7 @@ main (int argc, char **argv)
                 int nr[MAXDEPTH];
                 struct fileentry n;
 
-                fputs(CP[49], stdout);
+                fputs("Counting transposition file entries, wait!\n", stdout);
 
                 for (i = 0; i < MAXDEPTH; i++)
                     nr[i] = 0;
@@ -268,7 +254,7 @@ main (int argc, char **argv)
                     }
                 }
 
-                printf(CP[109], nr[0], i);
+                printf("The file contains %d entries out of max %ld\n", nr[0], i);
 
                 for (j = 1; j < MAXDEPTH; j++)
                     printf("%d ", nr[j]);
@@ -278,34 +264,30 @@ main (int argc, char **argv)
 
             return 0;
 
-
 #endif /* HASHFILE */
 #endif /* ttblsz */
 
         case 'v':
-            fprintf(stderr, CP[102], version, patchlevel);
+            fprintf(stderr, "gnushogi version %s\n", PACKAGE_VERSION);
             exit(1);
 
 
         case 'X':
             /* X interface. */
             display_type = DISPLAY_X;
-
+            dsp = &raw_display;
             break;
 
-
         case 'x':
             argc--;
             argv++;
 
             if (argc > 0)
                 xwin = argv[0];
-
             break;
 
-
         default:
-            fputs(CP[113], stderr);
+            fputs("Usage: gnushogi [-a] [-t] [-c size] [-s savefile][-l listfile] [-x xwndw]\n", stderr);
             exit(1);
         }
 
@@ -337,7 +319,7 @@ main (int argc, char **argv)
 
         if (argc > 9)
         {
-            printf("%s\n", CP[220]);
+            printf("Time Control Error\n");
             exit(1);
         }
 
@@ -367,7 +349,7 @@ main (int argc, char **argv)
                 XC++;
             else
             {
-                printf("%s\n", CP[220]);
+                printf("Time Control Error\n");
                 exit(1);
             }
 
@@ -382,7 +364,7 @@ main (int argc, char **argv)
              * an error message and quit.
              */
 
-            printf("%s\n", CP[233]);
+            printf("Invalid command-line arguments:\n");
             print_arglist(argc, argv);
             exit(1);
         }