aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xperft.bash2
-rw-r--r--src/board/fen.cpp5
2 files changed, 6 insertions, 1 deletions
diff --git a/perft.bash b/perft.bash
index cb0149b..4b085fe 100755
--- a/perft.bash
+++ b/perft.bash
@@ -19,7 +19,7 @@ testPerft() {
configs=(
# starting pos
- "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1|1|1"
+ "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1|1|20"
"rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1|2|400"
"rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1|3|8902"
"rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1|4|197281"
diff --git a/src/board/fen.cpp b/src/board/fen.cpp
index 5f27e68..73201b8 100644
--- a/src/board/fen.cpp
+++ b/src/board/fen.cpp
@@ -32,6 +32,11 @@ static void updateBitboards(Game *g) {
g->PieceBitboard = g->WhitePieceBitboard | g->BlackPieceBitboard;
}
static void SetPiece(int i, PieceType type, bool color, Game *g) {
+ if (i < 0 || i >= 64) {
+ std::println("Fatal: piece outside board");
+ assert(false && "Malformed board");
+ exit(1);
+ }
g->pieces[i] = {.color = color, .type = type};
}