VariantTwilight,
VariantMakruk,
VariantSChess,
+ VariantGrand,
VariantSpartan,
VariantUnknown /* Catchall for other unknown variants */
} VariantClass;
"twilight",\
"makruk",\
"seirawan",\
+ "grand",\
"spartan",\
"unknown" \
}
char *computerString[ENGINES];
char *chessProgram[ENGINES];
char *directory[ENGINES];
+ char *pgnName[ENGINES];
Boolean firstPlaysBlack;
Boolean noChessProgram;
char *host[ENGINES];
Boolean isUCI[ENGINES];
Boolean hasOwnBookUCI[ENGINES];
char * adapterCommand;
+ char * ucciAdapter;
char * polyglotDir;
Boolean usePolyglotBook;
char * polyglotBook;
char *egtFormats;
int niceEngines; /* [HGM] nice */
char *logo[ENGINES];/* [HGM] logo */
+ char *pairingEngine;/* [HGM] pairing */
Boolean autoLogo;
Boolean noGUI; /* [HGM] fast: suppress all display updates */
char *engOptions[ENGINES]; /* [HGM] options */
Boolean markers; /* [HGM] markers */
Boolean pieceMenu;
Boolean sweepSelect;
+ Boolean whitePOV;
+ Boolean scoreWhite;
+ Boolean pvSAN[ENGINES];
char *tourneyFile;
+ char *defName;
char *processes;
char *results;
char *participants;
extern int chatCount;
extern char chatPartner[MAX_CHAT][MSG_SIZ];
+// [HGM] generally useful macros; there are way too many memory leaks...
+#define FREE(x) if(x) free(x)
+#define ASSIGN(x, y) if(x) free(x); x = strdup(y)
+
// [HGM] for now we use the kludge to redefine all the unstructured options by their array counterpart
// in due time we would have to make the actual substitutions all through the source