From: Marco Costalba Date: Fri, 4 Jan 2013 13:10:35 +0000 (+0100) Subject: Teach file_to_char() about upper/lower case X-Git-Url: https://git.sesse.net/?p=stockfish;a=commitdiff_plain;h=900e2d4e1e1424076ec197cbe22e941fbf8cbf6b;ds=sidebyside Teach file_to_char() about upper/lower case This allows to further simplify Position::fen() No functional change. --- diff --git a/src/position.cpp b/src/position.cpp index 8dab668b..a005d5df 100644 --- a/src/position.cpp +++ b/src/position.cpp @@ -358,16 +358,16 @@ const string Position::fen() const { ss << (sideToMove == WHITE ? " w " : " b "); if (can_castle(WHITE_OO)) - ss << (chess960 ? char(toupper(file_to_char(file_of(castle_rook_square(WHITE, KING_SIDE))))) : 'K'); + ss << (chess960 ? file_to_char(file_of(castle_rook_square(WHITE, KING_SIDE)), false) : 'K'); if (can_castle(WHITE_OOO)) - ss << (chess960 ? char(toupper(file_to_char(file_of(castle_rook_square(WHITE, QUEEN_SIDE))))) : 'Q'); + ss << (chess960 ? file_to_char(file_of(castle_rook_square(WHITE, QUEEN_SIDE)), false) : 'Q'); if (can_castle(BLACK_OO)) - ss << (chess960 ? file_to_char(file_of(castle_rook_square(BLACK, KING_SIDE))) : 'k'); + ss << (chess960 ? file_to_char(file_of(castle_rook_square(BLACK, KING_SIDE)), true) : 'k'); if (can_castle(BLACK_OOO)) - ss << (chess960 ? file_to_char(file_of(castle_rook_square(BLACK, QUEEN_SIDE))) : 'q'); + ss << (chess960 ? file_to_char(file_of(castle_rook_square(BLACK, QUEEN_SIDE)), true) : 'q'); if (st->castleRights == CASTLES_NONE) ss << '-'; diff --git a/src/types.h b/src/types.h index 506e1b0f..b7bcb4e8 100644 --- a/src/types.h +++ b/src/types.h @@ -441,8 +441,8 @@ inline int square_distance(Square s1, Square s2) { return SquareDistance[s1][s2]; } -inline char file_to_char(File f) { - return char(f - FILE_A + 'a'); +inline char file_to_char(File f, bool tolower = true) { + return char(f - FILE_A + (tolower ? 'a' : 'A')); } inline char rank_to_char(Rank r) {