X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=gnushogi%2Fgnushogi.h;h=dd5c21e96b9e9437c73ea89f7af2df9b0a8b19bf;hb=a5dcd4c22b91b752f4d7c831318311f14125a29d;hp=29d9abee482f99ff08472922e95ee3c23ff82104;hpb=6ec68dbedbcb4225cfe8e29e32675cb0fa486b34;p=gnushogi.git diff --git a/gnushogi/gnushogi.h b/gnushogi/gnushogi.h index 29d9abe..dd5c21e 100644 --- a/gnushogi/gnushogi.h +++ b/gnushogi/gnushogi.h @@ -66,6 +66,7 @@ extern display_t display_type; extern short hard_time_limit; /* If you exceed time limit, you lose. */ extern short nolist; /* Don't list game after exit. */ +extern short xboard; /* Use XBoard instead of xShogi protocol */ /* @@ -181,8 +182,11 @@ extern void movealgbr(short m, char *s); #endif #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) +#define ROW_NAME(n) ( xboard ? '1' + n : ('a' + NO_ROWS - 1 - n) ) +#define COL_NAME(n) ( xboard ? 'a' + n : ('1' + NO_COLS - 1 - n) ) +#define ROW_NUM(c) ( xboard ? c - '1' : ('a' + NO_ROWS - 1 - c) ) +#define COL_NUM(c) ( xboard ? c - 'a' : ('1' + NO_COLS - 1 - c) ) + #if defined HASHFILE || defined CACHE # define PTBLBDSIZE (NO_SQUARES + NO_PIECES) @@ -638,6 +642,7 @@ struct flags short bothsides; /* computer plays both sides */ short hash; /* enable/disable transposition table */ short force; /* enter moves */ + short analyze; /* search during move entry */ short easy; /* disable thinking on opponents time */ short beep; /* enable/disable beep */ short timeout; /* time to make a move */ @@ -1037,7 +1042,7 @@ extern void UpdateWeights(short side); extern int InitMain(void); extern void ExitMain(void); extern void Initialize(void); -extern void InputCommand(char *command); +extern int InputCommand(char *command, int root); extern void ExitShogi(void); extern void ClearScreen(void); extern void SetTimeControl(void); @@ -1072,7 +1077,7 @@ extern void algbr(short f, short t, short flag); extern void OutputMove(void); extern void ShowCurrentMove(short pnt, short f, short t); extern void ListGame(void); -extern void ShowMessage(char *s); +extern void ShowMessage(char *s, ...); extern void ClearScreen(void); extern void DoDebug(void); extern void DoTable(short table[NO_SQUARES]); @@ -1111,6 +1116,7 @@ typedef enum extern int VerifyMove(char *s, VerifyMove_mode iop, unsigned short *mv); extern unsigned short TTage; +extern short movesLeft, currentMove; /* display driver framework */ @@ -1138,7 +1144,7 @@ struct display void (*ShowDepth)(char ch); void (*ShowGameType)(void); void (*ShowLine)(unsigned short *bstline); - void (*ShowMessage)(char *s); + void (*ShowMessage)(char *s, ...); void (*AlwaysShowMessage)(const char *format, ...); void (*Printf)(const char *format, ...); void (*doRequestInputString)(const char* fmt, char* buffer);