Fix some warnings
[fairymax.git] / fairymax.c
index 931099a..47b9ca5 100644 (file)
@@ -140,7 +140,7 @@ n[]=".*XKNBRQEWFMACHG?x+knbrqewfmachg";        /* piece symbols on printout*/
 int pv[10000],*sp=pv; // triangular array\r
 int margin;\r
 \r
-pboard()\r
+void pboard()\r
 {int i;\r
  i=-1;W(++i<128)printf(" %c",(i&15)==BW&&(i+=15-BW)?10:n[b[i]&31]);\r
 }\r
@@ -151,7 +151,7 @@ int k,q,l,e,E,z,n;      /* (q,l)=window, e=current eval. score, E=e.p. sqr.*/
 {                       /* e=score, z=prev.dest; J,Z=hashkeys; return score*/\r
  int j,r,m,v,d,h,i,F,G,P,V,f=J,g=Z,C,s,flag,FF,*ps=sp,kk=S;\r
  signed char t,p,u,x,y,X,Y,H,B,gt;\r
- struct _*a=A+(J+(k+S)*E&U-1);                 /* lookup pos. in hash table*/\r
+ struct _*a=A+(J+(k+S)*E&U);                   /* lookup pos. in hash table*/\r
  *sp++=0;\r
  q-=q<e;l-=l<=e;                               /* adj. window: delay bonus */\r
  d=a->D;m=a->V;X=a->F;Y=a->Y;                  /* resume at stored depth   */\r
@@ -324,7 +324,7 @@ if(z&4*S)K=X,L=Y&~S;
 \r
 int PrintResult(int s)\r
 {\r
-        int i, j, k, cnt=0;\r
+        int j, k, cnt=0;\r
 \r
         /* search last 50 states with this stm for third repeat */\r
         for(j=2; j<=100 && j <= HistPtr; j+=2)\r
@@ -377,17 +377,15 @@ int PrintResult(int s)
 }\r
 \r
 \r
-InitEngine()\r
+void InitEngine()\r
 {\r
- int i, j;\r
-\r
  N=32*S+7;W(N-->S+3)T[N]=rand()>>9;\r
  srand(GetTickCount());\r
 }\r
 \r
-InitGame()\r
+void InitGame()\r
 {\r
- int i,j,k=0;\r
+ int i,k=0;\r
 \r
  Side = WHITE; Q=0; O=S;\r
  Fifty = 0; R = 0;\r
@@ -413,7 +411,7 @@ InitGame()
 \r
 void CopyBoard(int s)\r
 {\r
-        int i, j, k, cnt=0;\r
+        int i, j;\r
 \r
         /* copy game representation of engine to HistoryBoard */\r
         /* don't forget castling rights and e.p. state!       */\r
@@ -424,7 +422,7 @@ void CopyBoard(int s)
                                          \r
 void PrintVariants(int combo)\r
 {\r
-        int i, j, count=0, total=0; char c=EOF+1, buf[80];\r
+        int count=0, total=0; char c=EOF+1, buf[80];\r
         FILE *f;\r
 \r
         f = fopen(INI_FILE, "r");\r
@@ -461,7 +459,7 @@ void PrintOptions()
        printf("feature done=1\n");\r
 }\r
                                          \r
-int LoadGame(char *name)\r
+void LoadGame(char *name)\r
 {\r
         int i, j, ptc, count=0; char c, buf[80], pieceToChar[80];\r
         static int currentVariant;\r
@@ -531,11 +529,10 @@ int LoadGame(char *name)
 \r
 int main(int argc, char **argv)\r
 {\r
-        int Computer, MaxTime, MaxMoves, TimeInc, sec, i, j;\r
-        char line[256], command[256], c, cc;\r
-        int m, nr, hh;\r
+        int Computer, MaxTime, MaxMoves, TimeInc, sec, i;\r
+        char line[256], command[256], c;\r
+        int m, nr;\r
         double cpuT;\r
-        FILE *f;\r
 \r
         if(argc>1 && sscanf(argv[1], "%d", &m)==1)\r
         { U = (1<<m)-1; argc--; argv++; }\r
@@ -614,7 +611,7 @@ int main(int argc, char **argv)
                         continue;\r
                }\r
                if (!fgets(line, 256, stdin))\r
-                       return;\r
+                       return 1;\r
                if (line[0] == '\n')\r
                        continue;\r
                sscanf(line, "%s", command);\r
@@ -666,7 +663,7 @@ int main(int argc, char **argv)
                }\r
                if (!strcmp(command, "quit"))\r
                         /* exit engine */\r
-                       return;\r
+                       return 0;\r
                if (!strcmp(command, "force")) {\r
                         /* computer plays neither */\r
                         Computer = EMPTY;\r
@@ -747,7 +744,7 @@ int main(int argc, char **argv)
                        if(sscanf(line+7, "Ini File=%s", filename) == 1) {\r
                                inifile = filename; continue;\r
                        }\r
-                       if(sscanf(line+7, "Clear Hash") == 1) for(i=0; i<U; i++) A->K = 0;\r
+                       if(sscanf(line+7, "Clear Hash%c", &c) == 1) for(i=0; i<=U; i++) A->K = 0;\r
                        if(sscanf(line+7, "MultiVariation Margin=%d", &margin) == 1) continue;\r
                        if(sscanf(line+7, "Variant fairy selects=%s", selectedFairy+6) == 1) continue;\r
                        if(sscanf(line+7, "Cambodian Makruk rules=%d", &Cambodian) == 1) continue;\r
@@ -884,7 +881,7 @@ int main(int argc, char **argv)
                 GT = (Side == WHITE ? piecetype : blacktype)[line[4]&31];\r
                 if(GT) PromPiece = (Side == WHITE ? 7 : 7+pm) - GT, GT |= 32 + Side;\r
                 {char *c=line; K=c[0]-16*c[1]+799;L=c[2]-16*c[3]+799; }\r
-                if (m)\r
+                if (m & line[1] != '@')\r
                         /* doesn't have move syntax */\r
                        printf("Error (unknown command): %s\n", command);\r
                 else { int i=-1;\r