Author: Vincent Diepeveen
Date: 08:52:18 10/29/02
Go up one level in this thread
On October 29, 2002 at 06:46:18, Uri Blass wrote: >On October 29, 2002 at 04:26:38, Dave Gomboc wrote: > >>On October 29, 2002 at 04:05:14, Uri Blass wrote: >> >>>It is faster to have a special function that generate the moves and calculate >>>moves that are checks. >>> >>>The point is that a lot of moves are from the same from square so I do not need >>>to check if the from square is in the same direction with the king if I do it in >>>that way. >> >>You may want to work outwards from the king. >> >>Dave > >Yes > >I think that it is a good idea in order to detect fast cases when I do not need >to check the from square for all moves. > >If there is no piece that pseudoattack the king from all directions then it >means that the only possible checks are based on the to square. > >I already do it when I update my pin arrays but I did not think about it when I >generated my function to detect checks in the first plies of the qsearch. > >Note that my pin array can also be optimized. >Today movei knows only the pinned pieces of the side to move and I believe that >it is better to know the pinned pieces of both sides and to update them. > >Uri You could go for something cheap to detect checks in qsearch and just see whether the 'to' square possibly attacks the king square, only after that call a function. if( quickchecktable[piece][63+kingsq-to] && slowcheck(piece,to,kingsq) ) check = true; ...
This page took 0.01 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.