Fix funny search-and-replace copyright typo.
[gnushogi.git] / gnushogi / gnushogi.h
index 0200d67..60cedaa 100644 (file)
@@ -4,11 +4,14 @@
  *     Main header file for GNU Shogi.
  *
  * ----------------------------------------------------------------------
- *
- * Copyright (c) 2012 Free Software Foundation
+ * Copyright (c) 1993, 1994, 1995 Matthias Mutz
+ * Copyright (c) 1999 Michael Vanier 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
  * Display options.
  */
 
-typedef enum { DISPLAY_RAW, DISPLAY_CURSES, DISPLAY_X } display_t;
+typedef enum {
+  DISPLAY_RAW,
+#ifdef HAVE_LIBCURSES
+  DISPLAY_CURSES,
+#endif
+  DISPLAY_X
+} display_t;
 extern display_t display_type;
 
 #define XSHOGI     (display_type == DISPLAY_X)
@@ -155,16 +164,17 @@ extern void movealgbr(short m, char *s);
 #define NO_PIECES       15
 #define MAX_CAPTURED    19
 #define NO_PTYPE_PIECES 15
-#define NO_SQUARES      81
-#define NO_SQUARES_1    80
 #define NO_COLS          9
 #define NO_ROWS          9
+#define NO_SQUARES      (NO_COLS*NO_ROWS)
+
+#define ROW_NAME(n) ('a' + NO_ROWS - 1 - n)
+#define COL_NAME(n) ('1' + NO_COLS - 1 - n)
 
 #if defined HASHFILE || defined CACHE
 #  define PTBLBDSIZE (NO_SQUARES + NO_PIECES)
 #endif
 
-#include "dspwrappers.h"   /* Display functions. */
 #include "eval.h"
 
 #define SCORE_LIMIT 12000
@@ -248,6 +258,7 @@ enum {
     king
 };
 
+/* move types */
 enum {
     ptype_no_piece = 0,
     ptype_pawn = 0,
@@ -289,10 +300,10 @@ enum {
 #endif
 
 /* move symbols */
-#define pxx (CP[2])
-#define qxx (CP[1])
-#define rxx (CP[4])
-#define cxx (CP[3])
+#define pxx (" PLNSGBRPLNSBRK ")
+#define qxx (" plnsgbrplnsbrk ")
+#define rxx ("ihgfedcba")
+#define cxx ("987654321")
 
 /***************** Table limits ********************************************/
 
@@ -717,7 +728,6 @@ extern short balance[2];
 extern small_short ChkFlag[], CptrFlag[], TesujiFlag[];
 extern short Pscore[], Tscore[];
 extern /*unsigned*/ short rehash;  /* -1 is used as a flag --tpm */
-extern char version[], patchlevel[];
 extern unsigned int ttbllimit;
 extern unsigned int TTadd;
 extern unsigned int ttblsize;
@@ -808,7 +818,6 @@ typedef struct hashval drop_hashcode_array[2][NO_PIECES][NO_SQUARES];
 
 extern hashcode_array  *hashcode;
 extern drop_hashcode_array  *drop_hashcode;
-extern char  *CP[];
 
 #ifdef QUIETBACKGROUND
 extern short background;
@@ -851,14 +860,13 @@ extern struct hashentry  *ttable[2];
 extern short rpthash[2][256];
 extern char *DRAW;
 
-/*
- * FIXME: these should be more generic instead of using the
- * magic number 9.
- */
+extern char* DRAW_REPETITION;
+extern char *DRAW_MAXMOVES;
+extern char *DRAW_JUSTDRAW;
 
-#define row(a)     ((a) / 9)
-#define column(a)  ((a) % 9)
-#define locn(a, b) (((a) * 9) + b)
+#define row(a)     ((a) / NO_COLS)
+#define column(a)  ((a) % NO_COLS)
+#define locn(a, b) (((a) * NO_COLS) + b)
 
 /* init external functions */
 extern void InitConst(char *lang); /* init.c */
@@ -1024,7 +1032,6 @@ typedef enum
 #endif
 } ElapsedTime_mode;
 
-extern void  ElapsedTime(ElapsedTime_mode iop);
 extern void  SetResponseTime(short side);
 extern void  CheckForTimeout(int score, int globalscore,
                              int Jscore, int zwndw);
@@ -1035,7 +1042,6 @@ extern void  SearchStartStuff(short side);
 extern void  ShowDepth(char ch);
 extern void  TerminateSearch(int);
 extern void  ShowResults(short score, unsigned short *bstline, char ch);
-extern void  PromptForMove(void);
 extern void  SetupBoard(void);
 extern void  algbr(short f, short t, short flag);
 extern void  OutputMove(void);
@@ -1043,10 +1049,6 @@ extern void  ShowCurrentMove(short pnt, short f, short t);
 extern void  ListGame(void);
 extern void  ShowMessage(char *s);
 extern void  ClearScreen(void);
-extern void  gotoXY(short x, short y);
-extern void  ClearEoln(void);
-extern void  DrawPiece(short sq);
-extern void  UpdateClocks(void);
 extern void  DoDebug(void);
 extern void  DoTable(short table[NO_SQUARES]);
 extern void  ShowPostnValues(void);
@@ -1067,6 +1069,7 @@ extern void  ShowLine(unsigned short *bstline);
 extern int   pick(short p1, short p2);
 extern short repetition(void);
 extern void  TimeCalc(void);
+extern void  ElapsedTime(ElapsedTime_mode iop);
 
 extern short
 DropPossible(short piece, short side, short sq); /* genmoves.c */
@@ -1084,4 +1087,6 @@ typedef enum
 extern int VerifyMove(char *s, VerifyMove_mode iop, unsigned short *mv);
 extern unsigned short TTage;
 
+#include "dspwrappers.h"   /* Display functions. */
+
 #endif /* _GNUSHOGI_H_ */