X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=gnushogi%2Fbook.c;h=57758bbd5c7083bd6bfd49fc2269d37289b0e785;hb=41518afff9fc23dadca228ff069814e134af303e;hp=547f3fd8f5e0e7292edb15c3e822236379445a31;hpb=7e806d3c2cba049e315b13e64cadfa309c734ba5;p=gnushogi.git diff --git a/gnushogi/book.c b/gnushogi/book.c index 547f3fd..57758bb 100644 --- a/gnushogi/book.c +++ b/gnushogi/book.c @@ -73,7 +73,7 @@ static ULONG bhashkey; * Generate move strings in different formats. */ -void +static void Balgbr(short f, short t, short flag) { short promoted = false; @@ -166,10 +166,8 @@ Balgbr(short f, short t, short flag) } - - #ifndef QUIETBOOKGEN -void +static void bkdisplay(char *s, int cnt, int moveno) { static short pnt; @@ -240,11 +238,9 @@ bkdisplay(char *s, int cnt, int moveno) } #endif /* SEMIQUIETBOOKGEN */ } - #endif /* QUIETBOOKGEN */ - /* * BVerifyMove(s, mv, moveno) * @@ -252,7 +248,7 @@ bkdisplay(char *s, int cnt, int moveno) * opponent. If a match is found, make the move on the board. */ -int +static int BVerifyMove(char *s, unsigned short *mv, int moveno) { static short pnt, tempb, tempc, tempsf, tempst, cnt; @@ -320,8 +316,6 @@ BVerifyMove(char *s, unsigned short *mv, int moveno) } - - /* * RESET() * @@ -329,7 +323,7 @@ BVerifyMove(char *s, unsigned short *mv, int moveno) * */ -void +static void RESET(void) { short l; @@ -365,9 +359,7 @@ RESET(void) } - -static -int +static int Vparse (FILE * fd, USHORT *mv, USHORT *flags, int moveno) { int c, i; @@ -584,24 +576,23 @@ static ULONG currentoffset; #define MAXOFFSET(B) ((B.booksize - 1) * sizeof_gdxdata + sizeof_gdxadmin) -#define HashOffset(hashkey, B) \ -{ \ - currentoffset = ((ULONG)hashkey % B.booksize) \ - * sizeof_gdxdata + sizeof_gdxadmin; \ +static void HashOffset(ULONG hashkey, struct gdxadmin *B) +{ + currentoffset = (hashkey % B->booksize) * sizeof_gdxdata + sizeof_gdxadmin; } -#define NextOffset(B) \ -{ \ - currentoffset += sizeof_gdxdata; \ - if (currentoffset > B.maxoffset) \ - currentoffset = sizeof_gdxadmin; \ +static void NextOffset(struct gdxadmin *B) +{ + currentoffset += sizeof_gdxdata; + if (currentoffset > B->maxoffset) + currentoffset = sizeof_gdxadmin; } #define WriteAdmin() \ { \ - lseek(gfd, 0, 0); \ + lseek(gfd, 0, SEEK_SET); \ write(gfd, (char *)&ADMIN, sizeof_gdxadmin); \ } @@ -609,7 +600,7 @@ static ULONG currentoffset; { \ if (mustwrite ) \ { \ - lseek(gfd, currentoffset, 0); \ + lseek(gfd, currentoffset, SEEK_SET); \ write(gfd, (char *)&DATA, sizeof_gdxdata); \ mustwrite = false; \ } \ @@ -617,13 +608,13 @@ static ULONG currentoffset; static int ReadAdmin(void) { - lseek(gfd, 0, 0); + lseek(gfd, 0, SEEK_SET); return (sizeof_gdxadmin == read(gfd, (char *)&ADMIN, sizeof_gdxadmin)); } static int ReadData(struct gdxdata *DATA) { - lseek(gfd, currentoffset, 0); + lseek(gfd, currentoffset, SEEK_SET); return (sizeof_gdxdata == read(gfd, (char *)DATA, sizeof_gdxdata)); } @@ -745,7 +736,7 @@ GetOpenings(void) */ WriteData(); - HashOffset(bhashkey, B); + HashOffset(bhashkey, &B); first = true; while (true) @@ -787,7 +778,7 @@ GetOpenings(void) } } - NextOffset(B); + NextOffset(&B); first = false; } @@ -891,7 +882,6 @@ GetOpenings(void) } - /* * OpeningBook(hint) * @@ -932,7 +922,7 @@ OpeningBook(unsigned short *hint) } x = 0; - HashOffset(hashkey, B); + HashOffset(hashkey, &B); #ifdef BOOKTEST printf("looking for book move, bhashbd = 0x%lx bhashkey = 0x%x\n", (ULONG)hashbd, HashValue(hashkey)); @@ -958,7 +948,7 @@ OpeningBook(unsigned short *hint) break; } - NextOffset(B); + NextOffset(&B); } #ifdef BOOKTEST @@ -1056,6 +1046,3 @@ OpeningBook(unsigned short *hint) Book--; return false; } - - -