diff options
Diffstat (limited to 'src/chess.h')
| -rwxr-xr-x | src/chess.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/chess.h b/src/chess.h index 7ff9994..2e9189a 100755 --- a/src/chess.h +++ b/src/chess.h @@ -716,6 +716,19 @@ typedef struct _POSITION // bbRookAttacks/bbQueenAttacks that will retire the rest of it. BITBOARD bbPawnAttacks[2]; + // First mover of the bbMinorAttacks pair (knight only for now -- + // bishop is a separate, later step; see board_representation/ + // EVAL.md section 2). "Which squares does this side's knight(s) + // attack" -- computed via g_KnightAttacksBB[c] and OR'd in per + // knight, Eval()-scoped scratch like bbPawnAttacks above, cleared + // once per Eval() call in _ClearAttackTables since (unlike + // bbPawnAttacks) it's accumulated across multiple pieces via |=, + // not assigned wholesale. Bishop still writes its own minor-bit + // contribution into the old rgSquare[c|8].bvAttacks structure for + // now -- every consumer that needs "any minor's attack," not just + // knight's, ORs both sources together until bishop converts too. + BITBOARD bbMinorAttacks[2]; + ULONG uWhiteSqBishopCount[2]; // num bishops on white squares SCORE iMaterialBalance[2]; // material balance |
