short piece = flag & pmask;
mvstr[0][0] = pxx[piece];
- mvstr[0][1] = '*';
+ mvstr[0][1] = xboard ? '@' : '*';
mvstr[0][2] = COL_NAME(column(t));
mvstr[0][3] = ROW_NAME(row(t));
mvstr[0][4] = '\0';
static void
SetOppTime(char *time)
{
- int m, t, sec;
+ int m, t;
- sec = 0;
t = (int)strtol(time, &time, 10);
if (*time == ':')
{
time++;
/* FIXME: sec is parsed but ignored */
- sec = (int)strtol(time, &time, 10);
+ (void)strtol(time, &time, 10);
}
m = (int)strtol(time, &time, 10);
static void
SetMachineTime(char *time)
{
- int m, t, sec;
+ int m, t;
- sec = 0;
t = (int)strtol(time, &time, 10);
if (*time == ':')
{
time++;
/* FIXME: sec is parsed but ignored */
- sec = (int)strtol(time, &time, 10);
+ (void)strtol(time, &time, 10);
}
m = (int)strtol(time, &time, 10);
{
flag.post = 0;
}
- else if (strcmp(s, "alg") == 0)
+ else if (strcmp(s, "alg") == 0 ||
+ strcmp(s, "accepted") == 0 || strcmp(s, "rejected") == 0 ||
+ strcmp(s, "variant") == 0 || strcmp(s, "computer") == 0)
{
/* noop */ ;
}
{
flag.quit = true;
}
+ else if (strcmp(s, "xboard") == 0)
+ {
+ xboard = true;
+ strcpy(ColorStr[0], "White");
+ strcpy(ColorStr[1], "Black");
+ }
+ else if (strcmp(s, "protover") == 0)
+ {
+ printf("feature myname=\"GNU %sShogi %s\" variants=\"%sshogi\" debug=1 setboard=0 sigint=0 done=1\n",
+#ifdef MINISHOGI
+ "mini", PACKAGE_VERSION, "5x5+5_"
+#else
+ "", PACKAGE_VERSION, ""
+#endif
+ );
+ }
else if ((strcmp(s, "set") == 0)
|| (strcmp(s, "edit") == 0))
{
{
SetMachineTime(sx + strlen("time"));
}
- else if (strcmp(s, "otime") == 0)
+ else if ((strcmp(s, "otime") == 0) ||
+ (xboard && (strcmp(s, "otim")) == 0))
{
SetOppTime(sx + strlen("otime"));
}
ok = true;
dsp->UpdateDisplay(0, 0, 1, 0);
}
- else if (strcmp(s, "black") == 0)
+ else if (xboard ? strcmp(s, "white") == 0 : strcmp(s, "black") == 0)
{
computer = white;
opponent = black;
* ok = true; don't automatically start with black command
*/
}
- else if (strcmp(s, "white") == 0)
+ else if (xboard ? strcmp(s, "black") == 0 : strcmp(s, "white") == 0)
{
computer = black;
opponent = white;