X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=gnushogi%2Fcommondsp.c;h=bcd84e1e18411e297c0cba52f43ddf41f663c528;hb=bf2b048e82b1ebe7034e9107a61fdd86fce2a6b7;hp=8fc4b32b7639b37a64f8fc0ac07f7ec34e7fe8de;hpb=84a046a1ad4157428b59831a32892b7978290c5f;p=gnushogi.git diff --git a/gnushogi/commondsp.c b/gnushogi/commondsp.c index 8fc4b32..bcd84e1 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'; @@ -1039,8 +1039,10 @@ BookSave(void) RequestInputString(fname, sizeof(fname)-1); } - if (fname[0] == '\0') + if (fname[0] == '\0') { + dsp->AlwaysShowMessage("aborting book save"); return; + } if ((fd = fopen(fname, "a")) != NULL) { @@ -1420,16 +1422,15 @@ TestPSpeed(short(*f) (short side), unsigned j) 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); @@ -1453,16 +1454,15 @@ SetOppTime(char *time) 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); @@ -1496,7 +1496,9 @@ SetMachineTime(char *time) void InputCommand(char *command) { +#ifdef QUIETBACKGROUND short have_shown_prompt = false; +#endif short ok, done, is_move = false; unsigned short mv; char s[80], sx[80]; @@ -1632,9 +1634,15 @@ 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 done=1\n", + 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 @@ -1729,8 +1737,8 @@ InputCommand(char *command) { SetMachineTime(sx + strlen("time")); } - else if (strcmp(s, "otime") == 0 || - (xboard && strcmp(s, "otim")) == 0) + else if ((strcmp(s, "otime") == 0) || + (xboard && (strcmp(s, "otim")) == 0)) { SetOppTime(sx + strlen("otime")); } @@ -1775,7 +1783,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; @@ -1787,7 +1795,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;