Changes

Jump to: navigation, search

Cinnamon

24 bytes added, 19:56, 19 October 2020
no edit summary
Four pre-calculated attack arrays containing attack bitboards on [[Ranks|ranks]], [[Files|files]], [[Diagonals|diagonals]] and [[Anti-Diagonals|anti-diagonals]]
were indexed by the square of the sliding piece, and the associated [[Occupancy|occupancy]] index of that line, determining the blockers affecting the attack set.
Rather than to get the occupancy index from [[Incremental Updates|incremental updated ]] [[Rotated Bitboards|rotated bitboards]] for each of the four line kinds,
Cinnamon extracts line occupancies into a dense index range using [[Occupancy of any Line#Using Multiplication|multiplication]] and shift right,
as mentioned in [[Flipping Mirroring and Rotating#DiagonalstoRanks|diagonals to rank]] or [[Flipping Mirroring and Rotating#FlipAbouttheDiagonal|flip about the diagonal]].

Navigation menu