add pawn movegen (untested)

This commit is contained in:
2024-02-26 19:15:42 +01:00
parent ca4e274957
commit f1a081a7b6
4 changed files with 136 additions and 37 deletions

View File

@@ -4,10 +4,11 @@
#include <stdio.h>
#include <string.h>
#include "../src/position.h"
#include "../src/piece.h"
#include "../src/bitboard.h"
#include "../src/hyperbola-quintessence.h"
#include "bug.h"
#include "position.h"
#include "piece.h"
#include "bitboard.h"
#include "hyperbola-quintessence.h"
int main(int __unused ac, __unused char**av)
{
@@ -21,11 +22,25 @@ int main(int __unused ac, __unused char**av)
);
bitboard_print_multi(str, 7,
bb_file[i] | bb_rank[i] |
bb_diagonal[i] | bb_antidiagonal[i],
bb_diagonal[i], bb_antidiagonal[i],
bb_diag[i] | bb_anti[i],
bb_diag[i], bb_anti[i],
bb_file[i], bb_rank[i],
bb_knight[i], bb_king[i]);
}
bitboard_print_multi("a1-a8 a1-h8 a1-h1 a2-a7 a2-g7 a2-g2", 6,
bb_between[A1][A8], bb_between[A1][H8],
bb_between[A1][H1], bb_between[A2][A7],
bb_between[A2][G7], bb_between[A2][G2]);
bitboard_print_multi("c3-c6 c3-f6 c3-f3 c3-e1 c3-c1 c3-a1 c3-a3 c3-a5", 8,
bb_between[C3][C6], bb_between[C3][F6],
bb_between[C3][F3], bb_between[C3][E1],
bb_between[C3][C1], bb_between[C3][A1],
bb_between[C3][A3], bb_between[C3][A5]);
bitboard_print_multi("c4-c6 c4-f6 c4-f3 c4-e1 c4-c1 c4-a1 c4-a3 c4-a5", 8,
bb_between[C4][C6], bb_between[C4][F6],
bb_between[C4][F3], bb_between[C4][E1],
bb_between[C4][C1], bb_between[C4][A1],
bb_between[C4][A3], bb_between[C4][A5]);
/*
* for (square_t sq = 0; sq < 64; ++sq) {
* sprintf(str, "%2d %#lx %#lx knight", sq, bb_sq[sq], bb_knight[sq]);

View File

@@ -1,10 +1,11 @@
#include "debug.h"
#include "pool.h"
//#include <stdio.h>
#include "../src/chessdefs.h"
#include "../src/bitboard.h"
#include "../src/position.h"
#include "../src/fen.h"
#include "bug.h"
#include "chessdefs.h"
#include "bitboard.h"
#include "position.h"
#include "fen.h"
int main(int ac, char**av)
{
@@ -13,7 +14,6 @@ int main(int ac, char**av)
const char *fen;
char revfen[128];
int comp;
//debug_init(5, stderr, true);
//pos_pool_init();
bitboard_init();