* Massachusetts.
*
* Enhancements Copyright 1992-2001, 2002, 2003, 2004, 2005,
- * 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+ * 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
*
* The following terms apply to Digital Equipment Corporation's copyright
* interest in XBoard:
cl.ftIn = yytext[1+skip] - AAA;
cl.promoCharIn = NULLCHAR;
- if(yyleng-skip > 3 && (gameInfo.variant == VariantShogi || gameInfo.variant == VariantSChess)) /* [HGM] can have Shogi-style promotion */
+ if(yyleng-skip > 3) /* [HGM] in some variants pieces promote */
cl.promoCharIn = yytext[yyleng-1-(yytext[yyleng-1]==')')];
if(cl.promoCharIn == '+' && gameInfo.variant != VariantShogi) cl.promoCharIn = NULLCHAR; // + means check outside Shogi
cl.ftIn = yytext[2+skip] - AAA;
cl.promoCharIn = NULLCHAR;
- if(yyleng-skip > 4 && (gameInfo.variant == VariantShogi || gameInfo.variant == VariantSChess)) /* [HGM] can have Shogi-style promotion */
+ if(yyleng-skip > 4) /* [HGM] in some variants pieces promote */
cl.promoCharIn = yytext[yyleng-1-(yytext[yyleng-1]==')')];
if(cl.promoCharIn == '+' && gameInfo.variant != VariantShogi) cl.promoCharIn = NULLCHAR; // + means check outside Shogi
} else {
currentMoveString[0] = ToLower(yytext[0]);
}
+ if(CharToPiece(currentMoveString[0]) == EmptySquare) return ImpossibleMove; // Unknown piece;
+
return LegalityTest(boards[yyboardindex], PosFlags(yyboardindex), DROP_RANK, // [HGM] does drops now too
CharToPiece(currentMoveString[0]), currentMoveString[3] - ONE, currentMoveString[2] - AAA, NULLCHAR);
}