Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: generating captures without bitboards

Author: Edward Screven

Date: 08:51:02 06/11/99

Go up one level in this thread


On June 10, 1999 at 19:46:45, vitor wrote:

>i've been trying to figure out a way to generate captures only (for move
>ordering) without using bitboards. i considered maintaining an attack table that
>is continually updated but it sounds pretty slow. so far, the fastest way seems
>to be just doing full move generation. any better ideas?

for each target piece/pawn worth more than futility threshold
{
  generate attacks by pawn on target [1]
  for each opponent bishop, rook, queen
  {
     if nothing between target and attacker, generate move [2]
  }
  for each opponent king, knight
  {
     if attacker can attack target square, generate move [3]
  }
}

[1] is easy because there are only two candidates

[2] is easy if you have at east an 64 bit occupied square set
    and a 64bit between[fromsquare][tosquare] table

[3] is easy if you have 64 bit kingattack[fromsquare] and
    knightattack[fromsquare] tables

(don't forget to handle enpassant capture and promotion special cases.)

 - edward



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.