1
0
Fork 0
mirror of https://github.com/sockspls/badfish synced 2025-07-11 19:49:14 +00:00
BadFish/src
Marco Costalba bbdf9e4737 Fix a condition in connected_moves()
When checking if the moving piece p1 in a previous
move m1 defends the destination square of a move m2
we have to use the occupancy with the from square of
m2 removed so to take in account the case in which
f2 will block an x-ray attack from p1.

For instance in this position:
r2k3r/p1pp1pb1/qn3np1/1N2P3/1p3P2/2B5/PPP3QP/R3K2R b KQ - 1 9

The move eXf6 is connected to the previous move Bc3 that
defends the destination square f6.

With this patch we have about 10% more moves detected as
'connected'. Anyhow the absolute number is very low, about
4000 more moves out of 6M nodes searched.

Another issue spotted by Hongzhi "Hawk Eye" Cheng ;-)

new bench: 5757373
2012-11-02 17:18:38 +01:00
..
benchmark.cpp Rename RootPosition and shuffle think() 2012-10-24 15:01:39 +02:00
bitbase.cpp Don't push on the stack 200KB in one go 2012-09-30 11:35:14 +02:00
bitboard.cpp Use self-describing constants instead of numbers 2012-10-21 11:16:21 +02:00
bitboard.h Micro-optimize pop_lsb() for 64bit case 2012-11-02 12:11:49 +01:00
bitcount.h Fix POPCNT support on mingw 64 2012-10-06 13:01:44 +02:00
book.cpp Drop a magic in book.cpp 2012-09-22 11:19:10 +02:00
book.h Rename class Book to PolyglotBook 2012-09-16 10:32:57 +02:00
endgame.cpp Detect drawish KQKP endings 2012-10-28 10:17:57 +01:00
endgame.h Detect drawish KQKP endings 2012-10-28 10:17:57 +01:00
evaluate.cpp Use self-describing constants instead of numbers 2012-10-21 11:16:21 +02:00
evaluate.h Move RootColor from Eval to Search 2012-10-21 09:12:02 +02:00
history.h Use self-describing constants instead of numbers 2012-10-21 11:16:21 +02:00
main.cpp Terminate threads before to exit main() 2012-08-29 19:11:44 +02:00
Makefile Further improve compatibility when compiling on OS X 2012-10-16 00:13:16 -07:00
material.cpp Use self-describing constants instead of numbers 2012-10-21 11:16:21 +02:00
material.h Use self-describing constants instead of numbers 2012-10-21 11:16:21 +02:00
misc.cpp Rearrange prefetch code 2012-10-08 11:43:47 +02:00
misc.h Get rid of struct Time 2012-09-04 09:38:51 +02:00
movegen.cpp Fix crash under Chess 960 2012-09-16 14:14:55 +02:00
movegen.h Prefer size_t over int for array sizes 2012-08-19 11:01:46 +01:00
movepick.cpp Retire refine_eval() 2012-10-22 10:03:53 +02:00
movepick.h Rename *last to *end 2012-09-09 10:24:40 +02:00
notation.cpp Use std::stack instead of fixed size array 2012-10-27 13:31:23 +02:00
notation.h Fix MSVC 2012 64bits warnings 2012-09-14 09:57:13 +02:00
pawns.cpp Use self-describing constants instead of numbers 2012-10-21 11:16:21 +02:00
pawns.h Use self-describing constants instead of numbers 2012-10-21 11:16:21 +02:00
platform.h Fix compatibility with old Windows 95 and 98 2012-10-20 10:48:26 +02:00
position.cpp Fix a warning under MSVC 2012-11-02 11:43:23 +01:00
position.h Retire move_attacks_square() 2012-10-30 20:03:35 +01:00
psqtab.h Use self-describing constants instead of numbers 2012-10-21 11:16:21 +02:00
rkiss.h Update copyright year to 2012 2011-12-30 13:52:16 +01:00
search.cpp Fix a condition in connected_moves() 2012-11-02 17:18:38 +01:00
search.h Rename RootPosition and shuffle think() 2012-10-24 15:01:39 +02:00
thread.cpp Rename RootPosition and shuffle think() 2012-10-24 15:01:39 +02:00
thread.h Further rearrange search() 2012-10-01 10:44:04 +02:00
timeman.cpp Complete the renaming in Search::LimitsType 2012-03-31 09:16:09 +01:00
timeman.h Use UCI names in Search::LimitsType 2012-03-27 14:26:58 +01:00
tt.cpp Rename first_1 / last_1 in lsb / msb 2012-07-08 09:36:40 +01:00
tt.h Use std::vector to implement HashTable 2012-03-31 19:07:11 +01:00
types.h Don't need to init board[] with NO_PIECE 2012-10-22 00:38:12 +02:00
uci.cpp Creative formatting in uci.cpp 2012-10-28 11:28:14 +01:00
ucioption.cpp Move all Contempt Factor code to search.cpp 2012-10-13 14:49:01 +02:00
ucioption.h Introduce namespace UCI 2012-08-18 12:26:22 +01:00