aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/bitboards.cpp0
-rw-r--r--src/bitboards.hpp40
-rw-r--r--src/board/board.hpp15
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