*/
#include <algorithm>
-#include <cstring>
-#include <sstream>
+#include <cstring> // For memset
#include "bitboard.h"
#include "bitcount.h"
const std::string Bitboards::pretty(Bitboard b) {
- std::ostringstream ss;
+ std::string s = "+---+---+---+---+---+---+---+---+\n";
for (Rank rank = RANK_8; rank >= RANK_1; --rank)
{
- ss << "+---+---+---+---+---+---+---+---+" << '\n';
-
for (File file = FILE_A; file <= FILE_H; ++file)
- ss << "| " << (b & (file | rank) ? "X " : " ");
+ s.append(b & make_square(file, rank) ? "| X " : "| ");
- ss << "|\n";
+ s.append("|\n+---+---+---+---+---+---+---+---+\n");
}
- ss << "+---+---+---+---+---+---+---+---+";
- return ss.str();
+
+ return s;
}
Bitboard masks[], unsigned shifts[], Square deltas[], Fn index) {
int MagicBoosters[][8] = { { 969, 1976, 2850, 542, 2069, 2852, 1708, 164 },
- { 3101, 552, 3555, 926, 834, 4122, 2131, 1117 } };
+ { 3101, 552, 3555, 926, 834, 26, 2131, 1117 } };
RKISS rk;
Bitboard occupancy[4096], reference[4096], edges, b;