X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=gnushogi%2Fbook.c;h=547f3fd8f5e0e7292edb15c3e822236379445a31;hb=84a046a1ad4157428b59831a32892b7978290c5f;hp=88d21be73567276be9ab5484ceeb375f1f819ae2;hpb=916e9d3b3acd6422ad21f8edbbe5da768737f2b8;p=gnushogi.git diff --git a/gnushogi/book.c b/gnushogi/book.c index 88d21be..547f3fd 100644 --- a/gnushogi/book.c +++ b/gnushogi/book.c @@ -4,6 +4,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 * @@ -116,8 +117,8 @@ Balgbr(short f, short t, short flag) short piece = flag & pmask; bmvstr[0][0] = pxx[piece]; bmvstr[0][1] = '*'; - bmvstr[0][2] = cxx[column(t)]; - bmvstr[0][3] = rxx[row(t)]; + bmvstr[0][2] = COL_NAME(column(t)); + bmvstr[0][3] = ROW_NAME(row(t)); bmvstr[0][4] = bmvstr[2][0] = '\0'; strcpy(bmvstr[1], bmvstr[0]); bmvstr[1][1] = '\''; @@ -129,10 +130,10 @@ Balgbr(short f, short t, short flag) /* algebraic notation */ /* bmvstr[0]: 7g7f bmvstr[1]: * (+)P7g7f(+) bmvstr[2]: (+)P7f(+) */ - bmvstr[0][0] = cxx[column(f)]; - bmvstr[0][1] = rxx[row(f)]; - bmvstr[0][2] = cxx[column(t)]; - bmvstr[0][3] = rxx[row(t)]; + bmvstr[0][0] = COL_NAME(column(f)); + bmvstr[0][1] = ROW_NAME(row(f)); + bmvstr[0][2] = COL_NAME(column(t)); + bmvstr[0][3] = ROW_NAME(row(t)); bmvstr[0][4] = '\0'; if (promoted) @@ -292,7 +293,7 @@ BVerifyMove(char *s, unsigned short *mv, int moveno) UnmakeMove(opponent, &xnode, &tempb, &tempc, &tempsf, &tempst); /* Illegal move in check */ #if !defined QUIETBOOKGEN - puts("Illegal move (in check) %s"); + puts("Illegal move (in check): %s"); bkdisplay(s, cnt, moveno); #endif return false; @@ -312,7 +313,7 @@ BVerifyMove(char *s, unsigned short *mv, int moveno) /* Illegal move */ #if !defined QUIETBOOKGEN - printf("Illegal move (no match) %s\n", s); + printf("Illegal move (no match): %s\n", s); bkdisplay(s, cnt, moveno); #endif return false; @@ -333,10 +334,12 @@ RESET(void) { short l; - flag.illegal = flag.mate = flag.post = flag.quit + flag.illegal = flag.mate = flag.quit = flag.reverse = flag.bothsides = flag.onemove = flag.force = false; + flag.post &= xboard; /* [HGM] xboard: do not clear in XBoard mode */ + flag.material = flag.coords = flag.hash = flag.easy = flag.beep = flag.rcptr = true;