changes from H.G. Muller; version 4.3.15
[xboard.git] / common.h
index cde32fb..6d8a6ec 100644 (file)
--- a/common.h
+++ b/common.h
@@ -100,7 +100,11 @@ int pclose(FILE *);
 \r
 /* End compatibility grunge */\r
 \r
-#define PROTOVER                2       /* engine protocol version */\r
+#define PROTOVER                2       /* engine protocol version */
+
+// [HGM] license: Messages that engines must print to satisfy their license requirements for patented variants\r
+#define GOTHIC "Gothic Chess (see www.GothicChess.com) is licensed under U.S. Patent #6,481,716 by Ed Trice"\r
+#define NOFALCON "Falcon Chess (see www.chessvariants.com) is licensed under U.S. Patent #5,690,334 by George W. Duke"\r
 \r
 /* [HGM] Some notes about board sizes:\r
    In games that allow piece drops, the holdings are considered part of the\r
@@ -221,10 +225,10 @@ typedef enum {
     BlackHSideCastleFR, BlackASideCastleFR, \r
     WhitePromotionKnight, WhitePromotionBishop,\r
     WhitePromotionRook, WhitePromotionQueen, WhitePromotionKing,\r
-    WhitePromotionChancellor, WhitePromotionArchbishop,\r
+    WhitePromotionChancellor, WhitePromotionArchbishop, WhitePromotionCentaur,\r
     BlackPromotionKnight, BlackPromotionBishop,\r
     BlackPromotionRook, BlackPromotionQueen, BlackPromotionKing,\r
-    BlackPromotionChancellor, BlackPromotionArchbishop,\r
+    BlackPromotionChancellor, BlackPromotionArchbishop, BlackPromotionCentaur,\r
     WhiteCapturesEnPassant, BlackCapturesEnPassant,\r
     WhiteDrop, BlackDrop, \r
     NormalMove, AmbiguousMove, IllegalMove, ImpossibleMove,\r
@@ -244,13 +248,6 @@ typedef enum {
     SoundIcsDraw, SoundIcsUnfinished, NSoundClasses\r
 } SoundClass;\r
 \r
-typedef enum { \r
-  SizeTiny, SizeTeeny, SizeDinky, SizePetite, SizeSlim, SizeSmall,\r
-  SizeMediocre, SizeMiddling, SizeAverage, SizeModerate, SizeMedium,\r
-  SizeBulky, SizeLarge, SizeBig, SizeHuge, SizeGiant, SizeColossal,\r
-  SizeTitanic, NUM_SIZES \r
-} BoardSize;\r
-\r
 /* Names for chess variants, not necessarily supported */\r
 typedef enum {\r
     VariantNormal,       /* Normal chess */\r
@@ -288,6 +285,7 @@ typedef enum {
     VariantCapaRandom,\r
     VariantBerolina,\r
     VariantJanus,\r
+    VariantSuper,\r
     VariantUnknown       /* Catchall for other unknown variants */\r
 } VariantClass;\r
 \r
@@ -326,6 +324,8 @@ typedef enum {
   "falcon",\\r
   "caparandom",\\r
   "berolina",\\r
+  "janus",\\r
+  "super",\\r
   "unknown" \\r
 }\r
 \r
@@ -573,6 +573,10 @@ typedef struct {
     Boolean autoKibitz;\r
     int engineComments;\r
     char *userName;\r
+    int rewindIndex;    /* [HGM] autoinc   */\r
+    int sameColorGames; /* [HGM] alternate */\r
+    int smpCores;\r
+    char *egtFormats;\r
 } AppData, *AppDataPtr;\r
 \r
 /* [AS] PGN tags (for showing in the game list) */\r