diff options
| author | Aargh Rai <aargh.rai+git@gmail.com> | 2026-05-27 18:02:44 +0530 |
|---|---|---|
| committer | Aargh Rai <aargh.rai+git@gmail.com> | 2026-05-27 18:02:44 +0530 |
| commit | 2c2a70b69869f149c0407a62f1bf4c39899027a7 (patch) | |
| tree | 9c3d194c32e82039fe6e0da9fbaf2e86aeef0a59 /src/search/knight_moves.c | |
| parent | 58b2c8b6e2041e63c46b579eccc141d21801e985 (diff) | |
restructing
Diffstat (limited to 'src/search/knight_moves.c')
| -rw-r--r-- | src/search/knight_moves.c | 101 |
1 files changed, 0 insertions, 101 deletions
diff --git a/src/search/knight_moves.c b/src/search/knight_moves.c deleted file mode 100644 index 34cf66a..0000000 --- a/src/search/knight_moves.c +++ /dev/null @@ -1,101 +0,0 @@ -#include "../search.h" - -bitboard_t knight_moves[64] = { - 132096ULL, - 329728ULL, - 659712ULL, - 659712ULL >> 1, - 659712ULL >> 2, - 659712ULL >> 3, - 10489856ULL, - 4202496ULL, - - 33816580ULL, - 84410376ULL, - 168886289ULL, - 168886289ULL >> 1, - 168886289ULL >> 2, - 168886289ULL >> 3, - 2685403152ULL, - 1075839008ULL, - - 8657044482ULL, - 21609056261ULL, - 43234889994ULL, - 43234889994ULL >> 1, - 43234889994ULL >> 2, - 43234889994ULL >> 3, - 687463207072ULL, - 275414786112ULL, - - 8657044482ULL >> 8, - 21609056261ULL >> 8, - 43234889994ULL >> 8, - 43234889994ULL >> (8 + 1), - 43234889994ULL >> (8 + 2), - 43234889994ULL >> (8 + 3), - 687463207072ULL >> 8, - 275414786112ULL >> 8, - - 8657044482ULL >> 16, - 21609056261ULL >> 16, - 43234889994ULL >> 16, - 43234889994ULL >> (16 + 1), - 43234889994ULL >> (16 + 2), - 43234889994ULL >> (16 + 3), - 687463207072ULL >> 16, - 275414786112ULL >> 16, - - 8657044482ULL >> 24, - 21609056261ULL >> 24, - 43234889994ULL >> 24, - 43234889994ULL >> (24 + 1), - 43234889994ULL >> (24 + 2), - 43234889994ULL >> (24 + 3), - 687463207072ULL >> 24, - 275414786112ULL >> 24, - - 288234782788157440ULL, - 576469569871282176ULL, - 1224997833292120064ULL, - 1224997833292120064ULL >> 1, - 1224997833292120064ULL >> 2, - 1224997833292120064ULL >> 3, - 1152939783987658752ULL, - 2305878468463689728ULL, - - 1128098930098176ULL, - 2257297371824128ULL, - 4796069720358912ULL, - 4796069720358912ULL >> 1, - 4796069720358912ULL >> 2, - 4796069720358912ULL >> 3, - 4679521487814656ULL, - 9077567998918656ULL, -}; - -void get_knight_moves(moves_t* moves, position_t position) { - assert_valid_position(position); - - bitboard_t friendly_knights; - bitboard_t friendly_pieces; - if (position.turn == WHITE_TURN) { - friendly_pieces = whites(position); - friendly_knights = position.bitboards[WHITE_KNIGHT]; - } else { - friendly_pieces = blacks(position); - friendly_knights = position.bitboards[BLACK_KNIGHT]; - } - - while (friendly_knights) { - int from = __builtin_ctzll(friendly_knights); - friendly_knights &= friendly_knights - 1; - bitboard_t ATTACK_MASK = knight_moves[from]; - ATTACK_MASK &= ~friendly_pieces; - while (ATTACK_MASK) { - int to = __builtin_ctzll(ATTACK_MASK); - ATTACK_MASK &= ATTACK_MASK - 1; - add_move(moves, from, to); - } - } -} |
