Get rid of cxx/rxx in favor of COL/ROW_NAME.
[gnushogi.git] / gnushogi / makepattern.c
index 947c4bc..ef1a937 100644 (file)
@@ -4,6 +4,7 @@
  * ----------------------------------------------------------------------
  * 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
  *
@@ -36,7 +37,6 @@
 #define MAX_OPENING_SEQUENCE 20
 #define MAX_PATTERN          200
 
-static char *patternfile = PATTERNFILE;
 small_short pattern_data[MAX_PATTERN_DATA];
 
 /* minimal ShowMessage to avoid dependency on extraneous display code */
@@ -124,7 +124,7 @@ ScanPiece(char **s, small_short *side,
         /* determine column */
         for (c = 0; c < NO_COLS; c++)
         {
-            if (**s == cxx[c])
+            if (**s == COL_NAME(c))
             {
                 (*s)++;
                 break;
@@ -137,7 +137,7 @@ ScanPiece(char **s, small_short *side,
         /* determine row */
         for (r = 0; r < NO_ROWS; r++)
         {
-            if (**s == rxx[r])
+            if (**s == ROW_NAME(r))
             {
                 (*s)++;
                 break;
@@ -191,7 +191,7 @@ ScanPattern (char *s, short *pindex)
 
 
 void
-ReadOpeningSequences (short *pindex)
+ReadOpeningSequences (short *pindex, const char* patternfile)
 {
     FILE *fd;
     char s[256];
@@ -250,14 +250,14 @@ ReadOpeningSequences (short *pindex)
 
 
 void
-WriteOpeningSequences (short pindex)
+WriteOpeningSequences (short pindex, const char* patternincfile)
 {
     FILE *fd;
     short n = 0;
     short max_pattern = 0;
     short max_opening_sequence = 0;
 
-    fd = fopen ("pattern.inc", "w");
+    fd = fopen (patternincfile, "w");
     fprintf(fd, "#define MAX_PATTERN_DATA %d\n\n", pindex);
     fprintf(fd, "small_short pattern_data[MAX_PATTERN_DATA] =\n{\n");