Author: Gerd Isenberg
Date: 17:30:49 12/17/02
Go up one level in this thread
Oups, sorry, not so easy...
those were wrong again:
openPawns[WHITE] = pawnBB[WHITE] & ~filldown(allPawns);
passedPawns[WHITE] = pawnBB[WHITE] & ~filldown(allPawns|pawnAttacks[BLACK]);
notDefendable[WHITE] = pawnBB[WHITE] & fillup(pawnAttacks[WHITE]);
Both openPawns and passedPawns statements produce an empty set due to
"allPawns" as filldown parameter, which is member of the filldown result.
I'll hope this is it finally ;-)
openPawns[WHITE] = pawnBB[WHITE] & ~filldown(allPawns >> 8);
passedPawns[WHITE] = openPawns[WHITE]
& ~filldown(pawnBB[BLACK]|pawnAttacks[BLACK]);
The notDefendable-Statement was implemented as isDefendable of course.
notDefendable[WHITE] = pawnBB[WHITE] & ~fillup(pawnAttacks[WHITE]);
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.