* ----------------------------------------------------------------------
* 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
*
extern display_t display_type;
#define XSHOGI (display_type == DISPLAY_X)
-#define NOT_CURSES ((display_type == DISPLAY_X) \
- || (display_type == DISPLAY_RAW))
/* Miscellaneous globals. */
extern short hard_time_limit; /* If you exceed time limit, you lose. */
-extern short barebones; /* Don't print of stats for x interface. */
extern short nolist; /* Don't list game after exit. */
#define NO_PTYPE_PIECES 11
#define NO_COLS 5
#define NO_ROWS 5
+#define NO_CAMP_ROWS 1
#else
#define NO_PIECES 15
#define MAX_CAPTURED 19
#define NO_PTYPE_PIECES 15
#define NO_COLS 9
#define NO_ROWS 9
+#define NO_CAMP_ROWS 3
#endif
#define NO_SQUARES (NO_COLS*NO_ROWS)
/* board properties */
-#ifndef MINISHOGI
-#define InBlackCamp(sq) ((sq) < 27)
-#define InWhiteCamp(sq) ((sq) > 53)
-#else
-#define InBlackCamp(sq) ((sq) < 5)
-#define InWhiteCamp(sq) ((sq) > 19)
-#endif
+#define InBlackCamp(sq) ((sq) < (NO_COLS * NO_CAMP_ROWS))
+#define InWhiteCamp(sq) ((sq) >= (NO_COLS * (NO_ROWS - NO_CAMP_ROWS)))
#define InPromotionZone(side, sq) \
(((side) == black) ? InWhiteCamp(sq) : InBlackCamp(sq))
#ifndef MINISHOGI
#define pxx (" PLNSGBRPLNSBRK ")
#define qxx (" plnsgbrplnsbrk ")
-#define rxx ("ihgfedcba")
-#define cxx ("987654321")
#else
#define pxx (" PSGBRPSBRK ")
#define qxx (" psgbrpsbrk ")
-#define rxx ("edcba")
-#define cxx ("54321")
#endif
/***************** Table limits ********************************************/
extern char ColorStr[2][10];
extern char mvstr[4][6];
-extern unsigned short MV[MAXDEPTH];
-extern int MSCORE;
extern int mycnt1, mycnt2;
extern short ahead;
extern struct leaf rootnode;
extern void Initialize_dist(void); /* init.c */
extern void Initialize_eval(void); /* eval.c */
extern void NewGame(void);
-extern int parse(FILE * fd, unsigned short *mv,
- short side, char *opening);
extern void GetOpenings(void);
-extern int OpeningBook(unsigned short *hint, short side);
+extern int OpeningBook(unsigned short *hint);
typedef enum
{
short score,
short depth,
short ply,
- short alpha,
short beta,
unsigned short mv);
void (*ChangeAlphaWindow)(void);
void (*ChangeBetaWindow)(void);
void (*ChangeHashDepth)(void);
- void (*ChangeSearchDepth)(void);
+ void (*ChangeSearchDepth)(char *sx);
void (*ChangeXwindow)(void);
void (*ClearScreen)(void);
void (*DoDebug)(void);