diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/bitboards.cpp | 0 | ||||
| -rw-r--r-- | src/bitboards.hpp | 40 | ||||
| -rw-r--r-- | src/board/board.hpp | 15 |
3 files changed, 40 insertions, 15 deletions
diff --git a/src/bitboards.cpp b/src/bitboards.cpp new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/bitboards.cpp diff --git a/src/bitboards.hpp b/src/bitboards.hpp new file mode 100644 index 0000000..7288f8a --- /dev/null +++ b/src/bitboards.hpp @@ -0,0 +1,40 @@ +#ifndef SRC_BITBOARDS_H_ +#define SRC_BITBOARDS_H_ + +#include "board/board.hpp" +#include <cstdint> +#include <unordered_map> + +struct BitBoards { + uint64_t whitePawns; + uint64_t whiteKnights; + uint64_t whiteBishops; + uint64_t whiteRooks; + uint64_t whiteQueens; + uint64_t whiteKing; + + uint64_t blackPawns; + uint64_t blackKnights; + uint64_t blackBishops; + uint64_t blackRooks; + uint64_t blackQueens; + uint64_t blackKing; +}; +struct UndoMoveBitboards { + BitBoards board; + + bool oldTurn; + bool oldCanEnpassant; + Position oldEnPassant; + + bool OldWhiteCastleKing; + bool OldWhiteCastleQueen; + bool OldBlackCastleKing; + bool OldBlackCastleQueen; + + int oldHalfMoveClock; + int oldMoveClock; + uint64_t ZobristKey; + GameState oldState; +}; +#endif /* SRC_BITBOARDS_H_ */ diff --git a/src/board/board.hpp b/src/board/board.hpp index b35773d..0b92798 100644 --- a/src/board/board.hpp +++ b/src/board/board.hpp @@ -36,21 +36,6 @@ struct TranspositionsEntry { int depth; int Eval; }; -struct BitBoards { - uint64_t whitePawns; - uint64_t whiteKnights; - uint64_t whiteBishops; - uint64_t whiteRooks; - uint64_t whiteQueens; - uint64_t whiteKing; - - uint64_t blackPawns; - uint64_t blackKnights; - uint64_t blackBishops; - uint64_t blackRooks; - uint64_t blackQueens; - uint64_t blackKing; -}; struct Game { Piece pieces[64]; bool turn = true; // 1 white; 0 black |
