]> git.sesse.net Git - stockfish/blobdiff - src/uci.cpp
Restore development version
[stockfish] / src / uci.cpp
index 9574ff96aada4123128df02a92eb0932af0e58bd..8d625bd9fe553510fce79ff0cf4e538131666e62 100644 (file)
@@ -174,12 +174,14 @@ void UCI::loop(int argc, char* argv[]) {
           else
               Search::Limits.ponder = false;
       }
-      else if (token == "perft" && (is >> token)) // Read perft depth
+      else if (token == "perft" || token == "divide")
       {
+          int depth;
           stringstream ss;
 
+          is >> depth;
           ss << Options["Hash"]    << " "
-             << Options["Threads"] << " " << token << " current perft";
+             << Options["Threads"] << " " << depth << " current " << token;
 
           benchmark(pos, ss);
       }
@@ -195,6 +197,11 @@ void UCI::loop(int argc, char* argv[]) {
                     << "\n"       << Options
                     << "\nuciok"  << sync_endl;
 
+      else if (token == "eval")
+      {
+          Search::RootColor = pos.side_to_move(); // Ensure it is set
+          sync_cout << Eval::trace(pos) << sync_endl;
+      }
       else if (token == "ucinewgame") TT.clear();
       else if (token == "go")         go(pos, is);
       else if (token == "position")   position(pos, is);
@@ -202,7 +209,6 @@ void UCI::loop(int argc, char* argv[]) {
       else if (token == "flip")       pos.flip();
       else if (token == "bench")      benchmark(pos, is);
       else if (token == "d")          sync_cout << pos.pretty() << sync_endl;
-      else if (token == "eval")       sync_cout << Eval::trace(pos) << sync_endl;
       else if (token == "isready")    sync_cout << "readyok" << sync_endl;
       else
           sync_cout << "Unknown command: " << cmd << sync_endl;