X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=common.h;h=f06fbcf886df5bb11ed5a2f7f80ac43c49af68d7;hb=2cbef99e7202b7af01c5fef277501fc5baa7b50a;hp=755df7843d0ed051e0cdf64386281ba429487a2d;hpb=1bb92a334cb80297755d51dcbb3847273b49226e;p=xboard.git diff --git a/common.h b/common.h index 755df78..f06fbcf 100644 --- a/common.h +++ b/common.h @@ -132,7 +132,7 @@ typedef char *String; outside world in ASCII. In a similar way, the different rank numbering systems (starting at rank 0 or 1) are implemented by redefining '1'. */ -#define BOARD_RANKS 11 /* [HGM] for in declarations */ +#define BOARD_RANKS 17 /* [HGM] for in declarations */ #define BOARD_FILES 16 /* [HGM] for in declarations */ #define BOARD_HEIGHT (gameInfo.boardHeight) /* [HGM] made user adjustable */ #define BOARD_WIDTH (gameInfo.boardWidth + 2*gameInfo.holdingsWidth) @@ -248,12 +248,20 @@ typedef enum { WhitePawn, WhiteKnight, WhiteBishop, WhiteRook, WhiteQueen, WhiteFerz, WhiteAlfil, WhiteAngel, WhiteMarshall, WhiteWazir, WhiteMan, WhiteCannon, WhiteNightrider, WhiteCardinal, WhiteDragon, WhiteGrasshopper, - WhiteSilver, WhiteFalcon, WhiteLance, WhiteCobra, WhiteUnicorn, WhiteKing, + WhiteSilver, WhiteFalcon, WhiteLance, WhiteCobra, WhiteUnicorn, WhiteLion, + WhiteTokin, WhiteDagger, WhitePCardinal, WhitePDragon, WhiteCat, + WhitePSword, WhiteMonarch, WhiteMother, WhiteNothing, WhitePRook, WhitePDagger, + WhiteDolphin, WhiteVacant, WhiteHorned, WhiteEagle, WhiteSword, + WhiteSkip, WhiteCrown, WhiteHorse, WhiteDrunk, WhitePBishop, WhiteKing, BlackPawn, BlackKnight, BlackBishop, BlackRook, BlackQueen, BlackFerz, BlackAlfil, BlackAngel, BlackMarshall, BlackWazir, BlackMan, BlackCannon, BlackNightrider, BlackCardinal, BlackDragon, BlackGrasshopper, - BlackSilver, BlackFalcon, BlackLance, BlackCobra, BlackUnicorn, BlackKing, - EmptySquare, + BlackSilver, BlackFalcon, BlackLance, BlackCobra, BlackUnicorn, BlackLion, + BlackTokin, BlackDagger, BlackPCardinal, BlackPDragon, BlackCat, + BlackPSword, BlackMonarch, BlackMother, BlackNothin, BlackPRook, BlackPDagger, + BlackDolphin, BlackVacant, BlackHorned, BlackEagle, BlackSword, + BlackSkip, BlackCrown, BlackHorse, BlackDrunk, BlackPBishop, BlackKing, + EmptySquare, DarkSquare, NoRights, // [HGM] gamestate: for castling rights hidden in board[CASTLING] ClearBoard, WhitePlay, BlackPlay, PromotePiece, DemotePiece /*for use on EditPosition menus*/ } ChessSquare; @@ -264,6 +272,8 @@ typedef enum { #define PROMOTED (int)WhiteDragon - (int)WhiteRook + (int) #define DEMOTED (int)WhiteRook - (int)WhiteDragon + (int) #define SHOGI (int)EmptySquare + (int) +#define CHUPROMOTED ((int)WhitePDragon - (int)WhiteDragon)*(gameInfo.variant == VariantChu) + PROMOTED +#define IS_SHOGI(V) ((V) == VariantShogi || (V) == VariantChu) typedef ChessSquare Board[BOARD_RANKS][BOARD_FILES]; @@ -323,6 +333,7 @@ typedef enum { Variant35, /* Temporary name for possible future ICC wild 35 */ Variant36, /* Temporary name for possible future ICC wild 36 */ VariantShogi, /* [HGM] added variants */ + VariantChu, VariantXiangqi, VariantCourier, VariantGothic, @@ -338,6 +349,7 @@ typedef enum { VariantGreat, VariantTwilight, VariantMakruk, + VariantASEAN, VariantSChess, VariantGrand, VariantSpartan, @@ -369,6 +381,7 @@ typedef enum { "wild35", \ "wild36", \ "shogi", \ + "chu", \ "xiangqi", \ "courier", \ "gothic", \ @@ -384,6 +397,7 @@ typedef enum { "great",\ "twilight",\ "makruk",\ + "asean",\ "seirawan",\ "grand",\ "spartan",\ @@ -449,6 +463,7 @@ typedef struct { int loadGameIndex; /* game # within file */ char *saveGameFile; Boolean autoSaveGames; + Boolean onlyOwn; /* [HGM] suppress auto-saving of observed games */ char *loadPositionFile; int loadPositionIndex; /* position # within file */ char *savePositionFile; @@ -650,10 +665,12 @@ typedef struct { int zippyShortGame; /* [HGM] aborter */ #endif Boolean lowTimeWarning; /* [HGM] low time */ + Boolean quitNext; char *lowTimeWarningColor; char *serverFileName; char *serverMovesName; + char *finger; Boolean suppressLoadMoves; int serverPause; int timeOdds[ENGINES];