X-Git-Url: http://winboard.nl/cgi-bin?a=blobdiff_plain;f=fairymax.c;h=30396a2a6ba83141956f84d2cf71970aebea6fe8;hb=3714a5dd8d476d35a7e348d22a3de8f04a428e2d;hp=d72a13b7c24411bc2ab5b6f89c6521eb3b925fe9;hpb=183d27789ac4c36ace275b6e7f3380df240986e9;p=fairymax.git diff --git a/fairymax.c b/fairymax.c index d72a13b..30396a2 100644 --- a/fairymax.c +++ b/fairymax.c @@ -412,7 +412,7 @@ void CopyBoard(int s) void PrintVariants(int combo) { - int i, j, count=0, total=0; char c, buf[80]; + int i, j, count=0, total=0; char c=EOF+1, buf[80]; FILE *f; f = fopen(INI_FILE, "r"); @@ -866,6 +866,7 @@ int main(int argc, char **argv) else { int i=-1; if(b[L] && (b[L]&16) == Side && w[b[L]&15] < 0) // capture own King: castling { i=K; K = L; L = i>L ? i-1 : i+2; } + if(w[GT&15] < -1) pl[GT&31]++, J+=89729; // promotion to royal piece if(b[K]&32) GT = 0; // non-virgin mover => true promotion rather than gating if(D(Side,-I,I,Q,O,LL|S,3)!=I) { /* did have move syntax, but illegal move */