X-Git-Url: http://winboard.nl/cgi-bin?p=fairymax.git;a=blobdiff_plain;f=fairymax.c;h=5106ae1dd2c255c2640e9a23fce6bb922dc4f99d;hp=dfa3ea61bbb0e5861a7efcef4f5cf76d4a8fd4fa;hb=5dc87dcd0d60262efa7b5ce308b100371f72bc3d;hpb=c62ef367da4863f395624f3eb02cc9f215b42ada diff --git a/fairymax.c b/fairymax.c index dfa3ea6..5106ae1 100644 --- a/fairymax.c +++ b/fairymax.c @@ -876,7 +876,7 @@ int main(int argc, char **argv) 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((b[K]&15) < 3) GT = 0; // Pawn => true promotion rather than gating if(D(Side,-I,I,Q,O,LL|S,3)!=I) { /* did have move syntax, but illegal move */ printf("Illegal move:%s\n", line);