7ce64c3aee
rename hyperbola-quintessence files to hq
2024-07-06 19:16:47 +02:00
8483ffa101
cleanup
2024-07-05 08:23:16 +02:00
a8f7bd12b8
add tricky FEN from talkchess
2024-07-03 21:13:15 +02:00
73d09ec37f
perft: fix divide (untested for ages!). perft-test: SF uses divide
2024-07-03 21:10:41 +02:00
91abc3e26d
convert piece_t, square_t etc. to u8 (no more typed enum. See C23 ?).
2024-07-03 08:49:54 +02:00
44f604abac
cleanup
2024-07-01 14:06:51 +02:00
b8f0f6a120
remove MOVE_NO_MOVE (use only MOVE_NONE)
2024-06-28 11:43:52 +02:00
5cb90f5396
remove move-test
2024-06-25 13:16:47 +02:00
f4280dfa13
perft-test: add error and skipped counts
2024-06-24 09:01:55 +02:00
879bda850c
pos_ok, remove unused var warnings for 'release' target
2024-06-20 09:04:54 +02:00
242b501404
cleanup
2024-06-20 05:36:42 +02:00
840202dc0e
perft-test.c/common-test.h: add sentinel for temp tests / TT stats
2024-06-17 07:39:13 +02:00
148fef20ea
add info in pos_print, start perft TT testing
2024-06-13 10:28:32 +02:00
8be03c6230
rename TT funcs to TT_xxx()
2024-06-12 07:50:19 +02:00
ebf01bc7db
perft_test -> perft, perf -> perft_alt move2 -> move, move -> move_alt
2024-06-09 22:15:20 +02:00
5a2cdfca56
perft-test: add SF ucinewgame / isready + check sync
2024-06-08 20:10:17 +02:00
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