X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=gnushogi%2Fcommondsp.c;h=5f5b5bf83accf12591438f20e3260145a570b143;hb=dfb85f9c229657e1047d9aa9a478a49fb4b4b37d;hp=7361e76bf8061bfbcdcaf526bac851f7ce8bf604;hpb=0b0fc4c9c805e95d883196b947217e23efb443c5;p=gnushogi.git diff --git a/gnushogi/commondsp.c b/gnushogi/commondsp.c index 7361e76..5f5b5bf 100644 --- a/gnushogi/commondsp.c +++ b/gnushogi/commondsp.c @@ -182,7 +182,7 @@ algbr(short f, short t, short flag) 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'; @@ -1615,9 +1615,15 @@ InputCommand(char *command) } else if (strcmp(s, "post") == 0) { - flag.post = !flag.post; + flag.post = (xboard ? 1 : !flag.post); } - else if (strcmp(s, "alg") == 0) + else if (strcmp(s, "nopost") == 0) + { + flag.post = 0; + } + else if (strcmp(s, "alg") == 0 || + strcmp(s, "accepted") == 0 || strcmp(s, "rejected") == 0 || + strcmp(s, "variant") == 0 || strcmp(s, "computer") == 0) { /* noop */ ; } @@ -1626,6 +1632,22 @@ InputCommand(char *command) { 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)) { @@ -1713,7 +1735,8 @@ InputCommand(char *command) { 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")); } @@ -1758,7 +1781,7 @@ InputCommand(char *command) 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; @@ -1770,7 +1793,7 @@ InputCommand(char *command) * 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;