X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=gnushogi%2Fgnushogi.h;h=13dea78933f5eaa8265d6aeb7e767445d6de8d03;hb=83fb6711bb7548d23086364b6bebccfceb4c6225;hp=0200d670cd1c6adb512e60981ebb421fb15d9471;hpb=53066346e15cfc765eb96de1b446647da5231ee8;p=gnushogi.git diff --git a/gnushogi/gnushogi.h b/gnushogi/gnushogi.h index 0200d67..13dea78 100644 --- a/gnushogi/gnushogi.h +++ b/gnushogi/gnushogi.h @@ -4,11 +4,14 @@ * Main header file for GNU Shogi. * * ---------------------------------------------------------------------- - * - * Copyright (c) 2012 Free Software Foundation + * Copyright (c) 1993, 1994, 1995 Matthias Mutz + * Copyright (c) 1999 Michael Vanier and the Free Software Foundation * * GNU SHOGI is based on GNU CHESS * + * Copyright (c) 1988, 1989, 1990 John Stanback + * Copyright (c) 1992 Free Software Foundation + * * This file is part of GNU SHOGI. * * GNU Shogi is free software; you can redistribute it and/or modify it @@ -155,10 +158,12 @@ extern void movealgbr(short m, char *s); #define NO_PIECES 15 #define MAX_CAPTURED 19 #define NO_PTYPE_PIECES 15 -#define NO_SQUARES 81 -#define NO_SQUARES_1 80 #define NO_COLS 9 #define NO_ROWS 9 +#define NO_SQUARES (NO_COLS*NO_ROWS) + +#define ROW_NAME(n) ('a' + NO_ROWS - 1 - n) +#define COL_NAME(n) ('1' + NO_COLS - 1 - n) #if defined HASHFILE || defined CACHE # define PTBLBDSIZE (NO_SQUARES + NO_PIECES) @@ -248,6 +253,7 @@ enum { king }; +/* move types */ enum { ptype_no_piece = 0, ptype_pawn = 0, @@ -851,14 +857,9 @@ extern struct hashentry *ttable[2]; extern short rpthash[2][256]; extern char *DRAW; -/* - * FIXME: these should be more generic instead of using the - * magic number 9. - */ - -#define row(a) ((a) / 9) -#define column(a) ((a) % 9) -#define locn(a, b) (((a) * 9) + b) +#define row(a) ((a) / NO_COLS) +#define column(a) ((a) % NO_COLS) +#define locn(a, b) (((a) * NO_COLS) + b) /* init external functions */ extern void InitConst(char *lang); /* init.c */