431baa43d4
cleanup
2024-05-30 10:47:02 +02:00
972046351b
fen: simplify fen_check() + fix e.p. when no possible capture
2024-05-27 14:54:44 +02:00
f657f8498a
perft-test: output also SF perf
2024-05-16 09:07:15 +02:00
239498bc2a
cleanup
2024-05-16 07:29:02 +02:00
d1cb1f3c2c
perft-test: re-use pos
2024-05-16 07:27:35 +02:00
86f8184c56
misc.c: init_all()
2024-05-15 18:34:50 +02:00
fec1dc68b5
fen-test: fix total stats when total time is 0 (like depth 1 or 2)
2024-05-06 07:45:32 +02:00
c710da4bf9
move_do2: save/restore state inside func; perft: add silent option
2024-04-18 09:54:58 +02:00
36e1d987f3
rename second perft function, perft_test()
2024-04-17 18:43:09 +02:00
2505217c70
rename pos_all_legal() to pos_legal_dup(), new pos_legal()
2024-04-17 09:13:21 +02:00
8b3202fac0
add CFLAGS -Wshadow and -funroll-loops, fix related common-test.h
2024-04-17 08:21:20 +02:00
473cc8683e
perf-test: add command-line options, optional SF's perft compare
2024-04-16 12:33:11 +02:00
f0acdb6a66
pos_ok(): always set BUG_ON and WARN_ON
2024-04-16 12:32:37 +02:00
374116b1e7
simplify pos_set_checkers_pinners_blockers() (cont'd)
2024-04-10 15:59:24 +02:00
660722fadc
cleanup
2024-04-10 12:53:31 +02:00
f2ce20a504
add bb_pawn_attacks[][], bb_shift()
2024-04-09 08:10:53 +02:00
027aa2c132
bb: bb_{first_bb,next,multiple{}, chessdefs: relative sq diffs
2024-04-04 10:03:43 +02:00
afecbeb955
movegen-test: add set_checkers_pinners_blockers call
2024-04-02 20:40:44 +02:00
4816b4a53a
experiment: add pos_set_checkers_pinners_blockers()
2024-03-30 18:45:13 +01:00
96744cea20
perft-test: option to run perft/perft2/both
2024-03-29 10:00:01 +01:00
ad8a9609ce
misc.c: add a few basic clock functions
2024-03-28 08:33:27 +01:00
26b9a5b58a
brchess func calls changes, always run perft() & perft2()
2024-03-27 12:53:42 +01:00
edcc87be5a
a few more perft debug tests
2024-03-27 12:41:38 +01:00
08ba989170
is_legal: fix check+pinned and knight check; perft-test + perft2()
2024-03-26 17:43:59 +01:00
ce2e0e8459
add forgotten changes in bitboard-switch branch (git is so... difficult)
2024-03-23 17:41:15 +01:00
856e3e52da
add movedo-test
2024-03-21 07:00:20 +01:00
49302c7a60
lowercase move flags macros
2024-03-17 17:33:48 +01:00
260d8d34bd
move.h: simplify flags. movegen.c: add pos_next_legal()
2024-03-16 10:06:55 +01:00
3e477f7442
movegen-test: add SF/uci promotion parsing
2024-03-15 09:07:02 +01:00
aba0113344
add piece-test
2024-03-15 09:04:44 +01:00
6ee4cd1642
cleanup
2024-03-11 16:12:45 +01:00
d81dca6e23
add sq_line array, bb_sq_aligned3, renamed sq_manh to sq_taxi
2024-03-11 16:04:45 +01:00
87e7695873
new pos/bb funcs, legal(), better castling gen, etc. [see commit details]
...
- new sq_pinners
- new pseudo_is_legal() (unfinished)
- improve castling pseudo move gen
- more position and lower level bitboard helper funcs:
- pos_{_occ,between_occ,between_count,pinners}
- bb_{rank,file,rel_rank,_sq_aligned,_sq_between)
- rename some bitboard globals
- replace bb ranks/files enums with defines (issue with clang)
-> Need to find a way to use enum safely
- tests:
- add common-test.h
- new attack-test.c
2024-03-10 10:58:14 +01:00
b351d198b8
sq_attackers() + others (see dedails). Ready for move do/undo ?
...
- add many "const" in func parameters
- attack.c: sq_attackers()
- move print_board_raw from position.c to to board.c
- move some fen_check() tests to pos_check()
- add REL_RANK() macro. TODO: add one more for bitboards
- fen.c: more tests for FEN validity
- position.c: add pos_checkers() and pos_check()
- tests: add common-test.h (for shared FEN positions access)
2024-03-04 21:34:29 +01:00
a499893f32
add board_print, board_print_mask
2024-03-02 07:10:23 +01:00
7859228f89
movegen-test: add fen test array
2024-02-29 09:19:24 +01:00
f1a081a7b6
add pawn movegen (untested)
2024-02-26 19:15:42 +01:00
ccc0dfd2f6
temp commit for machine transfer
2024-02-22 09:37:02 +01:00
fa5c9bb8ab
bitboard8_sprint -> bitboard_rank_sprint (temp, need BB+rank as input)
2024-02-22 09:29:10 +01:00
9c02a02c1e
fen: add fen_test()
2024-02-22 09:11:25 +01:00
403e625cbe
add hyperbola-quintessence.[ch]}, rank move gen, + file/rook/queen
2024-02-15 10:15:13 +01:00
3e828ed29b
add bitboard_print_multi(), file/rank/diag/antidiag masks generation
2024-02-12 21:34:42 +01:00
d5906b1fb9
start bitboard init (see commit details)
...
- bitboard.c: make attacks for knight/king
- square macros (BB, BBfile, BBrank) renamed sq_make, sq_file,
sq_rank, moved to board.h (and become temporarily inline funcs)
- different macros/defs moved to "correct place" (bitboard/board/piece):
board.[ch]: everything related to board/square
bitboard.[ch]: everything related to bitboards
piece.[ch]: everything related to pieces
2024-02-11 20:47:09 +01:00
4f25c1416d
re-organize defines / few bug fix
2024-02-10 09:16:59 +01:00
d6f2497bb0
rename typedefs - temp commit for computer change
2024-02-08 09:50:14 +01:00
1929d4bb1f
bb migration: add util, update fen/fen-test + partial pos + piece
2024-02-07 22:08:24 +01:00
6acacb0314
Keep bitboard.c
2024-02-05 08:38:08 +01:00
01c5765888
remove -DBIN_xxx from brchess source files. parts moved to ./test (TODO)
2023-12-13 21:30:39 +01:00