Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Bitboard user's information request

Author: Eugene Nalimov

Date: 17:32:08 10/06/99

Go up one level in this thread


On October 06, 1999 at 20:27:02, Dan Newman wrote:

>On October 06, 1999 at 07:32:00, Bas Hamstra wrote:
>
>>On October 06, 1999 at 05:42:45, Dan Newman wrote:
>>
>>>On October 05, 1999 at 12:00:19, Robert Hyatt wrote:
>>>
>>>>I have finished writing a paper for the JICCA on the rotated bitmap approach
>>>>to chess...  although it includes traditional (non-rotated) bitmaps as well
>>>>since an understanding of them is necessary to appreciate rotated bitmaps.
>>>>
>>>>There is very little literature to reference, excepting the paper in the
>>>>old Chess Skill in Man and Machine book, so I thought that I would at least
>>>>mention the names of current (and past, such as Kaissa) programs that are or
>>>>did use bitboards.
>>>>
>>>>If you are using them, either post the particulars here (name of program,
>>>>author, affiliation [if any], and so forth) and I'll include it.
>>>>
>>>>Thanks...
>>>>
>>>>Bob
>>>
>>>I'm working on one now that I am provisionally calling Shrike (after
>>>the bird that impales its prey on cactus needles), but I've only been
>>>working on this one for about 2 1/2 weeks...
>>>
>>>It uses non-rotated bitboards and so must frequently scan the board
>>>for slider move generation and attack detection.
>>>
>>>So far I like it.  It's given me the simplest move generator and
>>>make/undo code that I've gotten so far.  It is slightly slower
>>>generating moves than my 0x88 program, but I suspect/hope that will
>>>be offset by gains elsewhere--specifically in the SEE and eval.
>>>
>>>Name: Shrike
>>>Author: Dan Newman
>>>
>>>-Dan.
>>
>>
>>About that scanning the board:
>>
>>I have a simple testversion that too uses non rotated bitboards. If I want to
>>know if a pseudo attack is blocked by any piece I use:
>>
>>  BlackPieces & WhitePieces & BlockMask[FromSquare][ToSquare]
>
>I think you meant:
>   (BlackPieces | WhitePieces) & BlockMask[FromSquare][ToSquare]
>
>>
>>The array BlockMask is a bitboard array which for each square to each other
>>square (if possible, only "slider type") contains the bitmap. It works well, is
>>easy and still fast.
>>
>>
>>Regards,
>>Bas Hamstra.
>
>That's neat.  I'll have to try it.  The only worry I'd have is the
>space that BlockMask takes up (32k if I've calculated correctly) and
>how that might affect the cache.  But it can be used in a lot of places
>(move gen, SEE, in check test, eval, any place that needs to calculate
>attacks) and seems like it'd be a lot quicker than scanning.
>
>-Dan.

You can make it 2 times smaller, by making it a "triange", not a "rectangle".
Not sure that it'll make sense, as index code will be more complex.

Eugene



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.