Print 'ponder' always immediately behind 'go'
authorH.G.Muller <hgm@hgm-xboard.(none)>
Mon, 27 Oct 2014 22:32:11 +0000 (23:32 +0100)
committerH.G.Muller <hgm@hgm-xboard.(none)>
Mon, 27 Oct 2014 23:27:46 +0000 (00:27 +0100)
Some engines do not like it if you print it otherwise.

UCI2WB.c

index d7e9671..95fe411 100644 (file)
--- a/UCI2WB.c
+++ b/UCI2WB.c
@@ -35,6 +35,7 @@ int mps, tc, inc, sTime, depth, myTime, hisTime, stm, computer = NONE, memory, o
 int statDepth, statScore, statNodes, statTime, currNr, size, collect, nr, sm, inex, on[500];\r
 char currMove[20], moveMap[500][10], /* for analyze mode */ canPonder[20], threadOpt[20];\r
 char board[100];  // XQ board for UCCI\r
+char *nameWord = "name ", *valueWord = "value ", *wTime = "w", *bTime = "b", *wInc = "winc", *bInc = "binc"; // keywords that differ in UCCI\r
 int unit = 1;\r
 \r
 FILE *toE, *fromE, *fromF;\r
@@ -130,15 +131,14 @@ StartSearch(char *ponder)
 {      // send the 'go' command to engine. Suffix by ponder.\r
        int x = (ponder[0] != 0);\r
        int nr = moveNr + x; // we ponder for one move ahead!\r
-       fprintf(toE, "\ngo btime %d wtime %d", stm == BLACK ^ x ^ sc=='s' ? myTime : hisTime, stm == WHITE ^ x ^ sc=='s' ? myTime : hisTime);\r
-       DPRINT(    "\n# go btime %d wtime %d", stm == BLACK ^ x ^ sc=='s' ? myTime : hisTime, stm == WHITE ^ x ^ sc=='s' ? myTime : hisTime);\r
+       fprintf(toE, "\ngo%s btime %d wtime %d", ponder, stm == BLACK ^ x ^ sc=='s' ? myTime : hisTime, stm == WHITE ^ x ^ sc=='s' ? myTime : hisTime);\r
+       DPRINT(    "\n# go%s btime %d wtime %d", ponder, stm == BLACK ^ x ^ sc=='s' ? myTime : hisTime, stm == WHITE ^ x ^ sc=='s' ? myTime : hisTime);\r
        if(sTime > 0) { fprintf(toE, " movetime %d", sTime); DPRINT(" movetime %d", sTime); } else\r
        if(mps) { fprintf(toE, " movestogo %d", mps*(nr/(2*mps)+1)-nr/2); DPRINT(" movestogo %d", mps*(nr/(2*mps)+1)-nr/2); }\r
        if(inc && !suffix) { fprintf(toE, " winc %d binc %d", inc, inc); DPRINT(" winc %d binc %d", inc, inc); }\r
        if(depth > 0) { fprintf(toE, " depth %d", depth); DPRINT(" depth %d", depth); }\r
         if(suffix) { fprintf(toE, suffix, inc); DPRINT(suffix, inc); }\r
-       fprintf(toE, "%s\n", ponder);\r
-       DPRINT("%s\n", ponder);\r
+       fprintf(toE, "\n"); DPRINT("\n");\r
 }\r
 \r
 void\r