Merge branch 'maint'
[gnushogi.git] / gnushogi / makepattern.c
index 9b57925..cf869e2 100644 (file)
 #define MAX_OPENING_SEQUENCE 20
 #define MAX_PATTERN          200
 
-char *patternfile = PATTERNFILE;
+static char *patternfile = PATTERNFILE;
+small_short pattern_data[MAX_PATTERN_DATA];
+
+/* minimal ShowMessage to avoid dependency on extraneous display code */
+static void
+Dummy_ShowMessage(char *s)
+{
+    printf("%s\n", s);
+}
+static struct display dummydsp = {
+  .ShowMessage = Dummy_ShowMessage,
+};
+struct display *dsp = &dummydsp;
 
 #define is_digit(c) (((c) >= '0') && ((c) <= '9'))
 #define is_alpha(c) ((((c) >= 'a') && ((c) <= 'z')) \
@@ -180,7 +192,6 @@ ScanPattern (char *s, short *pindex)
 
 void
 ReadOpeningSequences (short *pindex)
-
 {
     FILE *fd;
     char s[256];
@@ -213,7 +224,7 @@ ReadOpeningSequences (short *pindex)
             {
                 if (ScanPattern(s, pindex))
                 {
-                    ShowMessage("error in pattern sequence...");
+                    dsp->ShowMessage("error in pattern sequence...");
                     exit(1);
                 }
                 else
@@ -229,13 +240,13 @@ ReadOpeningSequences (short *pindex)
         sprintf(s,
                 "Pattern: %d bytes for %d sequences with %d patterns.\n",
                 *pindex, max_opening_sequence, max_pattern);
-        ShowMessage(s);
+        dsp->ShowMessage(s);
 
         fclose(fd);
+    } else {
+        sprintf(s, "no pattern file '%s'", patternfile);
+        dsp->ShowMessage(s);
     }
-
-    sprintf(s, "no pattern file '%s'", patternfile);
-    ShowMessage(s);
 }