X-Git-Url: http://winboard.nl/cgi-bin?p=gnushogi.git;a=blobdiff_plain;f=gnushogi%2Fcommondsp.c;h=33d10680f2b8be4ab6852783fa982e6ee2d438e9;hp=36cc7897f4827056597331e91aef7d8d56245526;hb=da8e444e6e41af03151cd42350180926b41da28a;hpb=1be442641b610fa1b6172a38d9acffe2d22797b6 diff --git a/gnushogi/commondsp.c b/gnushogi/commondsp.c index 36cc789..33d1068 100644 --- a/gnushogi/commondsp.c +++ b/gnushogi/commondsp.c @@ -6,6 +6,7 @@ * ---------------------------------------------------------------------- * Copyright (c) 1993, 1994, 1995 Matthias Mutz * Copyright (c) 1999 Michael Vanier and the Free Software Foundation + * Copyright (c) 2008, 2013, 2014 Yann Dirson and the Free Software Foundation * * GNU SHOGI is based on GNU CHESS * @@ -31,6 +32,10 @@ * */ +/* request *snprintf prototypes */ +#define _POSIX_C_SOURCE 200112L +#include + #if defined HAVE_GETTIMEOFDAY #include #endif @@ -42,7 +47,6 @@ #include #include -#include #include "gnushogi.h" char mvstr[4][6]; @@ -298,20 +302,7 @@ VerifyMove(char *s, VerifyMove_mode iop, unsigned short *mv) if (SqAttacked(PieceList[opponent][0], computer, &blocked)) { UnmakeMove(opponent, &xnode, &tempb, &tempc, &tempsf, &tempst); - - if (NOT_CURSES) - { - /* Illegal move in check */ - printf(CP[77], mvstr[0]); - printf("\n"); - } - else - { - /* Illegal move in check */ - sprintf(buffer, CP[77], s); - ShowMessage(buffer); - } - + AlwaysShowMessage("Illegal move (in check) %s", s); return false; } else @@ -353,21 +344,11 @@ VerifyMove(char *s, VerifyMove_mode iop, unsigned short *mv) } } - if (NOT_CURSES) - { - /* Illegal move */ - printf (CP[75], s); - } - else /* Curses. */ - { - /* Illegal move */ - sprintf(buffer, CP[76], s); - ShowMessage(buffer); - } + AlwaysShowMessage("Illegal move (no match) %s", s); if (!barebones && (cnt > 1)) { - sprintf(buffer, CP[32], s); + sprintf(buffer, "Ambiguous Move %s!", s); ShowMessage(buffer); } @@ -396,17 +377,17 @@ parser(char *f, int side, short *fpiece) if (f[1] == '*' || f[1] == '\'') { - c2 = COL_NAME(f[2]); - r2 = ROW_NAME(f[3]); + c2 = COL_NUM(f[2]); + r2 = ROW_NUM(f[3]); return ((NO_SQUARES + *fpiece) << 8) | locn(r2, c2); } else { - c1 = COL_NAME(f[1]); - r1 = ROW_NAME(f[2]); - c2 = COL_NAME(f[3]); - r2 = ROW_NAME(f[4]); + c1 = COL_NUM(f[1]); + r1 = ROW_NUM(f[2]); + c2 = COL_NUM(f[3]); + r2 = ROW_NUM(f[4]); p = (f[5] == '+') ? 0x80 : 0; return (locn(r1, c1) << 8) | locn(r2, c2) | p; @@ -447,14 +428,12 @@ GetGame(void) if (savefile[0]) { strcpy(fname, savefile); } else { - /* Enter file name */ - ShowMessage(CP[63]); - RequestInputString(fname); + ShowMessage("Enter file name: "); + RequestInputString(fname, sizeof(fname)-1); } - /* shogi.000 */ if (fname[0] == '\0') - strcpy(fname, CP[137]); + strcpy(fname, "shogi.000"); if ((fd = fopen(fname, "r")) != NULL) { @@ -568,10 +547,12 @@ GetGame(void) skipb(); Captured[side][pawn] = atoi(InPtr); skip(); +#ifndef MINISHOGI Captured[side][lance] = atoi(InPtr); skip(); Captured[side][knight] = atoi(InPtr); skip(); +#endif Captured[side][silver] = atoi(InPtr); skip(); Captured[side][gold] = atoi(InPtr); @@ -631,7 +612,7 @@ GetGame(void) } skip(); - g->color = ((*InPtr == CP[119][0]) ? white : black); + g->color = ((*InPtr == 'W') ? white : black); skip(); g->piece = (*InPtr == '+' ? promoted[piece] @@ -672,30 +653,29 @@ SaveGame(void) if (savefile[0]) { strcpy(fname, savefile); } else { - /* Enter file name */ - ShowMessage(CP[63]); - RequestInputString(fname); + ShowMessage("Enter file name: "); + RequestInputString(fname, sizeof(fname)-1); } - if (fname[0] == '\0') /* shogi.000 */ - strcpy(fname, CP[137]); + if (fname[0] == '\0') + strcpy(fname, "shogi.000"); if ((fd = fopen(fname, "w")) != NULL) { char *b, *w; - b = w = CP[74]; + b = w = "Human "; if (computer == white) - w = CP[141]; + w = "computer"; if (computer == black) - b = CP[141]; + b = "computer"; - fprintf(fd, CP[37], w, b, Game50, + fprintf(fd, "White %s Black %s %d %s\n", w, b, Game50, flag.force ? "force" : ""); fputs(empty, fd); - fprintf(fd, CP[111], TCflag, OperatorTime); - fprintf(fd, CP[117], + fprintf(fd, "TimeControl %d Operator Time %d\n", TCflag, OperatorTime); + fprintf(fd, "Black Clock %ld Moves %d\nWhite Clock %ld Moves %d\n", TimeControl.clock[black], TimeControl.moves[black], TimeControl.clock[white], TimeControl.moves[white]); fputs(empty, fd); @@ -737,16 +717,24 @@ SaveGame(void) } fputs(empty, fd); - fprintf(fd, " 9 8 7 6 5 4 3 2 1\n"); /* FIXME */ +#ifndef MINISHOGI + fprintf(fd, " 9 8 7 6 5 4 3 2 1\n"); fputs(empty, fd); fprintf(fd, " p l n s g b r k\n"); +#else + fprintf(fd, " 5 4 3 2 1\n"); + fputs(empty, fd); + fprintf(fd, " p s g b r k\n"); +#endif for (side = 0; side <= 1; side++) { fprintf(fd, "%c", (side == black) ? 'B' : 'W'); fprintf(fd, " %2d", Captured[side][pawn]); +#ifndef MINISHOGI fprintf(fd, " %2d", Captured[side][lance]); fprintf(fd, " %2d", Captured[side][knight]); +#endif fprintf(fd, " %2d", Captured[side][silver]); fprintf(fd, " %2d", Captured[side][gold]); fprintf(fd, " %2d", Captured[side][bishop]); @@ -756,7 +744,7 @@ SaveGame(void) } fputs(empty, fd); - fputs(CP[126], fd); + fputs(" move score depth nodes time flags capture\n", fd); for (i = 1; i <= GameCnt; i++) { @@ -790,13 +778,11 @@ SaveGame(void) fclose(fd); - /* Game saved */ - ShowMessage(CP[70]); + ShowMessage("Game saved"); } else { - /* ShowMessage("Could not open file"); */ - ShowMessage(CP[48]); + ShowMessage("Could not open file"); } } @@ -816,12 +802,11 @@ GetXGame(void) short sq; short side, isp; - /* Enter file name */ - ShowMessage(CP[63]); - RequestInputString(fname); + ShowMessage("Enter file name: "); + RequestInputString(fname, sizeof(fname)-1); - if (fname[0] == '\0') /* XSHOGI.position.read */ - strcpy(fname, CP[205]); + if (fname[0] == '\0') + strcpy(fname, "xshogi.position.read"); if ((fd = fopen(fname, "r")) != NULL) { @@ -835,7 +820,7 @@ GetXGame(void) #ifdef notdef fname[6] = '\0'; - if (strcmp(fname, CP[206])) + if (strcmp(fname, "xshogi")) return; #endif @@ -901,10 +886,12 @@ GetXGame(void) InPtr = fname; Captured[side][pawn] = atoi(InPtr); skip(); +#ifndef MINISHOGI Captured[side][lance] = atoi(InPtr); skip(); Captured[side][knight] = atoi(InPtr); skip(); +#endif Captured[side][silver] = atoi(InPtr); skip(); Captured[side][gold] = atoi(InPtr); @@ -944,20 +931,16 @@ SaveXGame(void) short sq, piece; short side, isp; - /* Enter file name */ - ShowMessage(CP[63]); - RequestInputString(fname); + ShowMessage("Enter file name: "); + RequestInputString(fname, sizeof(fname)-1); - if (fname[0] == '\0') /* XSHOGI.position.read */ - strcpy(fname, CP[205]); + if (fname[0] == '\0') + strcpy(fname, "xshogi.position.read"); if ((fd = fopen(fname, "w")) != NULL) { - /* xshogi position file ... */ fputs("# xshogi position file -- \n", fd); - /* -- empty line -- */ fputs("\n", fd); - /* -- empty line -- */ fputs("\n", fd); for (i = NO_ROWS - 1; i > -1; i--) @@ -989,10 +972,17 @@ SaveXGame(void) for (side = 0; side <= 1; side++) { - sprintf(fname, "%d %d %d %d %d %d %d %d\n", + sprintf(fname, +#ifndef MINISHOGI + "%d %d %d %d %d %d %d %d\n", +#else + "%d %d %d %d %d %d\n", +#endif Captured[side][pawn], +#ifndef MINISHOGI Captured[side][lance], Captured[side][knight], +#endif Captured[side][silver], Captured[side][gold], Captured[side][bishop], @@ -1023,8 +1013,8 @@ BookSave(void) strcpy(fname, savefile); } else { /* Enter file name */ - ShowMessage(CP[63]); - RequestInputString(fname); + ShowMessage("Enter file name: "); + RequestInputString(fname, sizeof(fname)-1); } if (fname[0] == '\0') @@ -1095,13 +1085,11 @@ BookSave(void) fclose(fd); - /* Game saved */ - ShowMessage(CP[70]); + ShowMessage("Game saved"); } else { - /* ShowMessage("Could not open file"); */ - ShowMessage(CP[48]); + ShowMessage("Could not open file"); } } @@ -1129,13 +1117,13 @@ ListGame(void) dbuf[16] = '\0'; dbuf[19] = '\0'; - /* use format "CLp16.Jan01-020304B" when patchlevel is 16, + /* use format "CL.Jan01-020304B" when date is Jan 1 time is 02:03:04 program played white */ - sprintf(fname, "CLp%s.%s%s-%s%s%s%c", - patchlevel, dbuf + 4, dbuf + 8, dbuf + 11, dbuf + 14, + sprintf(fname, "CL.%s%s-%s%s%s%c", + dbuf + 4, dbuf + 8, dbuf + 11, dbuf + 14, dbuf + 17, ColorStr[computer][0]); /* replace space padding with 0 */ @@ -1150,14 +1138,13 @@ ListGame(void) if (!fd) { - printf(CP[219], fname); + printf("Open failure for file: %s", fname); exit(1); } - /* fprintf(fd, "gnushogi game %d\n", u); */ - fprintf(fd, CP[161], version, patchlevel); - fputs(CP[10], fd); - fputs(CP[11], fd); + fprintf(fd, "gnushogi %s game\n", PACKAGE_VERSION); + fputs(" score depth nodes time ", fd); + fputs(" score depth nodes time\n", fd); for (i = 1; i <= GameCnt; i++) { @@ -1204,9 +1191,9 @@ ListGame(void) if (GameList[GameCnt].flags & draw) { - fprintf(fd, CP[54], DRAW); + fprintf(fd, "Draw %s\n", DRAW); - if (DRAW == CP[101]) + if (DRAW == DRAW_REPETITION) { short j; @@ -1385,7 +1372,7 @@ TestSpeed(void(*f)(short side, short ply, #endif unsigned i; - long cnt, rate, t1, t2; + long cnt, t1, t2; #ifdef HAVE_GETTIMEOFDAY struct timeval tv; @@ -1425,17 +1412,7 @@ TestSpeed(void(*f)(short side, short ply, else et = 1; - rate = (((et) ? ((cnt * 100) / et) : 0)); - -#ifdef DYNAMIC_ZNODES - if (rate > 0) - znodes = rate; -#endif - - if (NOT_CURSES) - printf(CP[91], cnt, rate); - else - ShowNodeCnt(cnt); + ShowNodeCnt(cnt); } @@ -1444,7 +1421,7 @@ void TestPSpeed(short(*f) (short side), unsigned j) { short i; - long cnt, rate, t1, t2; + long cnt, t1, t2; #ifdef HAVE_GETTIMEOFDAY struct timeval tv; #endif @@ -1473,14 +1450,7 @@ TestPSpeed(short(*f) (short side), unsigned j) else et = 1; - rate = (et) ? ((cnt * 100) / et) : 0; - - /* printf("Nodes= %ld Nodes/sec= %ld\n", cnt, rate); */ - - if (NOT_CURSES) - printf(CP[91], cnt, rate); - else - ShowNodeCnt(cnt); + ShowNodeCnt(cnt); } @@ -1492,7 +1462,7 @@ SetOppTime(char *s) int m, t, sec; sec = 0; - time = &s[strlen(CP[228])]; + time = &s[strlen("otime")]; t = (int)strtol(time, &time, 10); if (*time == ':') @@ -1526,7 +1496,7 @@ SetMachineTime(char *s) char *time; int m, t, sec; - time = &s[strlen(CP[197])]; + time = &s[strlen("time")]; sec = 0; t = (int)strtol(time, &time, 10); @@ -1609,16 +1579,7 @@ InputCommand(char *command) Sdepth = 0; #ifdef QUIETBACKGROUND - if (NOT_CURSES) - { - PromptForMove(); - } - else - { - ShowSidetoMove(); - ShowPrompt(); - } - + ShowPrompt(); have_shown_prompt = true; #endif /* QUIETBACKGROUND */ @@ -1665,15 +1626,7 @@ InputCommand(char *command) { #endif /* QUIETBACKGROUND */ - if (NOT_CURSES) - { - PromptForMove(); - } - else - { - ShowSidetoMove(); - ShowPrompt(); - } + ShowPrompt(); #ifdef QUIETBACKGROUND } @@ -1681,23 +1634,12 @@ InputCommand(char *command) have_shown_prompt = false; #endif /* QUIETBACKGROUND */ - if (command == NULL) - { + if (command == NULL) { if (NOT_CURSES) - { - s[0] = sx[0] = '\0'; + s[0] = '\0'; - while(!eof && !sx[0]) - eof = (fgets(sx, 80, stdin) == NULL); - } - else - { - fflush(stdout); - eof = (getstr(sx) == ERR); - } - } - else - { + eof = GetString(sx); + } else { strcpy(sx, command); done = true; } @@ -1710,7 +1652,7 @@ InputCommand(char *command) if (s[0] == '\0') continue; - if (strcmp(s, CP[131]) == 0) /* bd -- display board */ + if (strcmp(s, "bd") == 0) /* bd -- display board */ { /* FIXME: Hack alert! */ short old_xshogi = XSHOGI; @@ -1728,35 +1670,35 @@ InputCommand(char *command) { flag.post = !flag.post; } - else if (strcmp(s, CP[129]) == 0) + else if (strcmp(s, "alg") == 0) { /* noop */ ; /* alg */ } - else if ((strcmp(s, CP[180]) == 0) - || (strcmp(s, CP[216]) == 0)) /* quit exit */ + else if ((strcmp(s, "quit") == 0) + || (strcmp(s, "exit") == 0)) { flag.quit = true; } #if !defined NOPOST - else if (strcmp(s, CP[178]) == 0) /* post */ + else if (strcmp(s, "post") == 0) { flag.post = !flag.post; } #endif - else if ((strcmp(s, CP[191]) == 0) - || (strcmp(s, CP[154]) == 0)) /* set edit */ + else if ((strcmp(s, "set") == 0) + || (strcmp(s, "edit") == 0)) { EditBoard(); } - else if (NOT_CURSES && (strcmp(s, CP[190]) == 0)) /* setup */ + else if ((strcmp(s, "setup") == 0)) { SetupBoard(); } - else if (strcmp(s, CP[156]) == 0) /* first */ + else if (strcmp(s, "first") == 0) { ok = true; } - else if (strcmp(s, CP[162]) == 0) /* go */ + else if (strcmp(s, "go") == 0) { ok = true; flag.force = false; @@ -1772,15 +1714,15 @@ InputCommand(char *command) opponent = white; } } - else if (strcmp(s, CP[166]) == 0) /* help */ + else if (strcmp(s, "help") == 0) { help(); } - else if (strcmp(s, CP[221]) == 0) /* material */ + else if (strcmp(s, "material") == 0) { flag.material = !flag.material; } - else if (strcmp(s, CP[157]) == 0) /* force */ + else if (strcmp(s, "force") == 0) { if (XSHOGI) { @@ -1793,61 +1735,61 @@ InputCommand(char *command) flag.bothsides = false; } } - else if (strcmp(s, CP[134]) == 0) /* book */ + else if (strcmp(s, "book") == 0) { Book = Book ? 0 : BOOKFAIL; } - else if (strcmp(s, CP[172]) == 0) /* new */ + else if (strcmp(s, "new") == 0) { NewGame(); UpdateDisplay(0, 0, 1, 0); } - else if (strcmp(s, CP[171]) == 0) /* list */ + else if (strcmp(s, "list") == 0) { ListGame(); } - else if ((strcmp(s, CP[169]) == 0) - || (strcmp(s, CP[217]) == 0)) /* level clock */ + else if ((strcmp(s, "level") == 0) + || (strcmp(s, "clock") == 0)) { SelectLevel(sx); } - else if (strcmp(s, CP[165]) == 0) /* hash */ + else if (strcmp(s, "hash") == 0) { flag.hash = !flag.hash; } - else if (strcmp(s, CP[227]) == 0) /* gamein */ + else if (strcmp(s, "gamein") == 0) { flag.gamein = !flag.gamein; } - else if (strcmp(s, CP[226]) == 0) /* beep */ + else if (strcmp(s, "beep") == 0) { flag.beep = !flag.beep; } - else if (strcmp(s, CP[197]) == 0) /* time */ + else if (strcmp(s, "time") == 0) { SetMachineTime(sx); } - else if (strcmp(s, CP[228]) == 0) /* otime */ + else if (strcmp(s, "otime") == 0) { SetOppTime(sx); } - else if (strcmp(s, CP[33]) == 0) /* Awindow */ + else if (strcmp(s, "Awindow") == 0) { ChangeAlphaWindow(); } - else if (strcmp(s, CP[39]) == 0) /* Bwindow */ + else if (strcmp(s, "Bwindow") == 0) { ChangeBetaWindow(); } - else if (strcmp(s, CP[183]) == 0) /* rcptr */ + else if (strcmp(s, "rcptr") == 0) { flag.rcptr = !flag.rcptr; } - else if (strcmp(s, CP[168]) == 0) /* hint */ + else if (strcmp(s, "hint") == 0) { GiveHint(); } - else if (strcmp(s, CP[135]) == 0) /* both */ + else if (strcmp(s, "both") == 0) { flag.bothsides = !flag.bothsides; flag.force = false; @@ -1856,13 +1798,13 @@ InputCommand(char *command) SelectMove(opponent, FOREGROUND_MODE); ok = true; } - else if (strcmp(s, CP[185]) == 0) /* reverse */ + else if (strcmp(s, "reverse") == 0) { flag.reverse = !flag.reverse; ClearScreen(); UpdateDisplay(0, 0, 1, 0); } - else if (strcmp(s, CP[195]) == 0) /* switch */ + else if (strcmp(s, "switch") == 0) { computer = computer ^ 1; opponent = opponent ^ 1; @@ -1870,8 +1812,9 @@ InputCommand(char *command) flag.force = false; Sdepth = 0; ok = true; + UpdateDisplay(0, 0, 1, 0); } - else if (strcmp(s, CP[203]) == 0) /* black */ + else if (strcmp(s, "black") == 0) { computer = white; opponent = black; @@ -1883,7 +1826,7 @@ InputCommand(char *command) * ok = true; don't automatically start with black command */ } - else if (strcmp(s, CP[133]) == 0) /* white */ + else if (strcmp(s, "white") == 0) { computer = black; opponent = white; @@ -1895,25 +1838,25 @@ InputCommand(char *command) * ok = true; don't automatically start with white command */ } - else if (strcmp(s, CP[201]) == 0 && GameCnt > 0) /* undo */ + else if (strcmp(s, "undo") == 0 && GameCnt > 0) { Undo(); } - else if (strcmp(s, CP[184]) == 0 && GameCnt > 1) /* remove */ + else if (strcmp(s, "remove") == 0 && GameCnt > 1) { Undo(); Undo(); } /* CHECKME: are these next three correct? */ - else if (!XSHOGI && strcmp(s, CP[207]) == 0) /* xget */ + else if (!XSHOGI && strcmp(s, "xget") == 0) { GetXGame(); } - else if (!XSHOGI && strcmp(s, "xsave") == 0) /* xsave */ + else if (!XSHOGI && strcmp(s, "xsave") == 0) { SaveXGame(); } - else if (!XSHOGI && strcmp(s, "bsave") == 0) /* bsave */ + else if (!XSHOGI && strcmp(s, "bsave") == 0) { BookSave(); } @@ -1928,62 +1871,62 @@ InputCommand(char *command) { FlagMove(*s); } - else if (strcmp(s, CP[160]) == 0) /* get */ + else if (strcmp(s, "get") == 0) { GetGame(); } - else if (strcmp(s, CP[189]) == 0) /* save */ + else if (strcmp(s, "save") == 0) { SaveGame(); } - else if (strcmp(s, CP[151]) == 0) /* depth */ + else if (strcmp(s, "depth") == 0) { ChangeSearchDepth(); } - else if (strcmp(s, CP[164]) == 0) /* hashdepth */ + else if (strcmp(s, "hashdepth") == 0) { ChangeHashDepth(); } - else if (strcmp(s, CP[182]) == 0) /* random */ + else if (strcmp(s, "random") == 0) { dither = DITHER; } - else if (strcmp(s, CP[229]) == 0) /* hard */ + else if (strcmp(s, "hard") == 0) { flag.easy = false; } - else if (strcmp(s, CP[152]) == 0) /* easy */ + else if (strcmp(s, "easy") == 0) { flag.easy = !flag.easy; } - else if (strcmp(s, CP[230]) == 0) /* tsume */ + else if (strcmp(s, "tsume") == 0) { flag.tsume = !flag.tsume; } - else if (strcmp(s, CP[143]) == 0) /* contempt */ + else if (strcmp(s, "contempt") == 0) { SetContempt(); } - else if (strcmp(s, CP[209]) == 0) /* xwndw */ + else if (strcmp(s, "xwndw") == 0) { ChangeXwindow(); } - else if (strcmp(s, CP[186]) == 0) /* rv */ + else if (strcmp(s, "rv") == 0) { flag.rv = !flag.rv; UpdateDisplay(0, 0, 1, 0); } - else if (strcmp(s, CP[145]) == 0) /* coords */ + else if (strcmp(s, "coords") == 0) { flag.coords = !flag.coords; UpdateDisplay(0, 0, 1, 0); } - else if (strcmp(s, CP[193]) == 0) /* stars */ + else if (strcmp(s, "stars") == 0) { flag.stars = !flag.stars; UpdateDisplay(0, 0, 1, 0); } - else if (!XSHOGI && strcmp(s, CP[5]) == 0) /* moves */ + else if (!XSHOGI && strcmp(s, "moves") == 0) { short temp; @@ -1999,42 +1942,42 @@ InputCommand(char *command) #endif SwagHt = 0; - ShowMessage(CP[108]); /* test movelist */ + ShowMessage("Testing MoveList Speed"); temp = generate_move_flags; generate_move_flags = true; TestSpeed(MoveList, 1); generate_move_flags = temp; - ShowMessage(CP[107]); /* test capturelist */ + ShowMessage("Testing CaptureList Speed"); TestSpeed(CaptureList, 1); - ShowMessage(CP[85]); /* test score position */ + ShowMessage("Testing Eval Speed"); ExaminePosition(opponent); TestPSpeed(ScorePosition, 1); } - else if (!XSHOGI && strcmp(s, CP[196]) == 0) /* test */ + else if (!XSHOGI && strcmp(s, "test") == 0) { #ifdef SLOW_CPU - ShowMessage(CP[108]); /* test movelist */ + ShowMessage("Testing MoveList Speed"); TestSpeed(MoveList, 2000); - ShowMessage(CP[107]); /* test capturelist */ + ShowMessage("Testing CaptureList Speed"); TestSpeed(CaptureList, 3000); - ShowMessage(CP[85]); /* test score position */ + ShowMessage("Testing Eval Speed"); ExaminePosition(opponent); TestPSpeed(ScorePosition, 1500); #else - ShowMessage(CP[108]); /* test movelist */ + ShowMessage("Testing MoveList Speed"); TestSpeed(MoveList, 20000); - ShowMessage(CP[107]); /* test capturelist */ + ShowMessage("Testing CaptureList Speed"); TestSpeed(CaptureList, 30000); - ShowMessage(CP[85]); /* test score position */ + ShowMessage("Testing Eval Speed"); ExaminePosition(opponent); TestPSpeed(ScorePosition, 15000); #endif } - else if (!XSHOGI && strcmp(s, CP[179]) == 0) /* p */ + else if (!XSHOGI && strcmp(s, "p") == 0) { ShowPostnValues(); } - else if (!XSHOGI && strcmp(s, CP[148]) == 0) /* debug */ + else if (!XSHOGI && strcmp(s, "debug") == 0) { DoDebug(); } @@ -2051,7 +1994,7 @@ InputCommand(char *command) if (rpt >= 3) { - DRAW = CP[101]; + DRAW = DRAW_REPETITION; ShowMessage(DRAW); GameList[GameCnt].flags |= draw;