Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Extending Checks

Author: Stuart Cracraft

Date: 22:08:30 09/10/04

Go up one level in this thread


On September 11, 2004 at 00:05:06, Rick Bischoff wrote:

>You already count your legal moves through the loop-- that is how you determine
>mates, right?  Why not, instead of just having a bool variable for
>legalMoveFound, change it to an integer.  Then, mark the move with a special
>"only legal move bit"-- on the next iteration (with iterative deepining) or
>maybe in the same loop.
>

So it would not have to be re-searhed to know that it is the only
legal move bit?

That would presume that I'm saving my move gens at each ply which I'm
not.

These are getting allocated from the stack by the runtime and once the
node is exited gets deallocated. Hence there's no movelist to save
against which to set an only legal move bit.

Unles I'm missing something.

I know a lot of people keep their own stack and I suppose it is for
these reasons. But again I am not visualizing in my mind how keeping
the stack can help though I not it must.

Coming from the genmove-in-current-node-with-stack old school, I am
still thinking it is wiped out when the routine exits searching this node.

I liked that Chess 0.5 program Slate and Atkin published years ago in Byte.
Would like to see an extension of that in C these days with all the latest
bells and whistles. Probably much of it is old hat but I always liked the
incremental approach to the attack tables.

I'll be doing something like this for a future program but it may not force
me to keep my own stack either. Have to think about it.

Stuart



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.