X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=gnushogi%2Fcommondsp.c;h=785b72e986a8e846f1a3ac0b2c7358bbec5e8b15;hb=7f6340bb48dec4e1e091fcf551af50bd3cfdcd2e;hp=50dc032196d4023d68ab52109b48862021f9a042;hpb=1ea53ec86415316844abc71728f155bcb194bf7f;p=gnushogi.git diff --git a/gnushogi/commondsp.c b/gnushogi/commondsp.c index 50dc032..785b72e 100644 --- a/gnushogi/commondsp.c +++ b/gnushogi/commondsp.c @@ -125,6 +125,17 @@ movealgbr(short m, char *s) /* * Generate move strings in different formats. + * + * INPUT: + * - f piece to be moved + * - 0 < f < NO_SQUARES source square + * - NO_SQUARES <= f NO_SQUARES + 2*NO_PIECES dropped piece modulo NO_PIECES + * - t & 0x7f target square + * - t & 0x80 promotion flag + * - flag FIXME: must be zero ? + * + * OUTPUT: + * - GLOBAL mvstr */ void @@ -386,17 +397,17 @@ parser(char *f, int side, short *fpiece) if (f[1] == '*' || f[1] == '\'') { - c2 = '9' - f[2]; - r2 = 'i' - f[3]; + c2 = COL_NAME(f[2]); + r2 = ROW_NAME(f[3]); return ((NO_SQUARES + *fpiece) << 8) | locn(r2, c2); } else { - c1 = '9' - f[1]; - r1 = 'i' - f[2]; - c2 = '9' - f[3]; - r2 = 'i' - f[4]; + c1 = COL_NAME(f[1]); + r1 = ROW_NAME(f[2]); + c2 = COL_NAME(f[3]); + r2 = ROW_NAME(f[4]); p = (f[5] == '+') ? 0x80 : 0; return (locn(r1, c1) << 8) | locn(r2, c2) | p; @@ -716,7 +727,7 @@ SaveGame(void) for (i = NO_ROWS - 1; i > -1; i--) { - fprintf(fd, "%c ", 'i' - i); + fprintf(fd, "%c ", ROW_NAME(i)); for (c = 0; c < NO_COLS; c++) { @@ -751,7 +762,7 @@ SaveGame(void) } fputs(empty, fd); - fprintf(fd, " 9 8 7 6 5 4 3 2 1\n"); + fprintf(fd, " 9 8 7 6 5 4 3 2 1\n"); /* FIXME */ fputs(empty, fd); fprintf(fd, " p l n s g b r k\n");