Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: An improved diagonal fill, and a bug warning

Author: Sune Fischer

Date: 15:31:00 09/13/02

Go up one level in this thread


On September 13, 2002 at 18:20:33, Gerd Isenberg wrote:

>On September 13, 2002 at 16:56:38, Steffan Westcott wrote:
>
>>On September 13, 2002 at 04:07:55, Sune Fischer wrote:
>>
><snip>
>
>>There is sadly a bug in both of your routines. You use a return value of 0 to
>>indicate if no path exists. However, if (sq1 & sq2) != 0, you return a path
>>length of 0 also! When reporting the path length, my routines include the end
>>points and so have minimum value of 1 for any valid path.
>>
>>Cheers,
>>Steffan
>
>Hi Steffan,
>
>Thanks for the tip.
>
>In the assembler routine the minimum distance was also one, if connected.
>Distance, initilialzed with zero (xor eax, eax) was preincremented before the
>connection conditions occurs. But that's of course not necessary. Already
>changed it, in combination with Sune's "shift" hint to produce the initial
>square bitboards (... if the "one" is already there :-)

Hehe, what a team :)

Now, perhaps counting isn't really necessary for the bishops and rooks, unlike
the king they move more than one square at a time (doh!), so I guess boolean is
an acceptable optimization.


Gerd, another thing.

I seem to remember you once talked about compact rotated attack bitboards.
Did you ever make that work for the diagonals?

I have the rook attack tables down to a mere 4.5 kB, I seem to remember you also
derived that number (8x8x64+1x8x64).

Or am I completely off the mark here?

-S.

>regards,
>Gerd



This page took 0 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.