/* needed because of inconsistency between MSVC run-time system and gcc includes */
setbuf(stdout, NULL);
#else
-#ifdef HAVE_SETLINEBUF
- setlinebuf(stdout);
-#else
-# ifdef HAVE_SETVBUF
+#ifdef HAVE_SETVBUF
setvbuf(stdout, NULL, _IOLBF, BUFSIZ);
+#else
+# ifdef HAVE_SETLINEBUF
+ setlinebuf(stdout);
# else
-# error "Need setlinebuf() or setvbuf() to compile gnushogi!"
+# error "Need setvbuf() or setlinebuf() to compile gnushogi!"
# endif
#endif
#endif
printf("edit edit board force toggle manual move mode\n");
printf("switch sides with computer both computer match\n");
printf("black computer plays black white computer plays white\n");
- printf("depth set search depth clock set time control\n");
+ printf("sd set search depth clock set time control\n");
printf("post principle variation hint suggest a move\n");
printf("save game to file get game from file\n");
printf("xsave pos. to xshogi file xget pos. from xshogi file\n");
printf("stars turn %3s moves \n",
flag.stars ? "OFF" : "ON ");
printf("test p \n");
- printf("debug \n");
+ printf("debug depth alias for 'sd'\n");
printf("----------------------------------------------------------------\n");
printf("Computer: %-12s Opponent: %s\n",
ColorStr[computer], ColorStr[opponent]);
void
-Raw_ChangeSearchDepth(void)
+Raw_ChangeSearchDepth(char *sx)
{
- printf("depth = ");
- scanf("%hd", &MaxSearchDepth);
+ char buf[80+1];
+ strncpy(buf, sx, 80); buf[80] = '\0';
+ /* if line empty, ask for input */
+ if (!buf[0]) {
+ printf("depth = ");
+ fgets(buf, 80+1, stdin);
+ }
+ sscanf(buf, "%hd", &MaxSearchDepth);
TCflag = !(MaxSearchDepth > 0);
}