# [rc5] v3

Eric Gindrup gindrup at okway.okstate.edu
Mon Oct 27 17:32:24 EST 1997

```     Back of the envelope.

Pieces that have no position are obviously captured.

It's "always black's turn".  The idea is to treat it as if the
computer is always black, even when playing white since that
simplifies the openings tables (microscopically).

En Passant requires more information than that.  A pawn must be moved
to the fourth rank (from its side of the board) on its first movement
(during the game) to be susceptible to en passant attack.  Then on the
subsequent move by the opponent, a pawn adjacent to the pawn so moved
may capture that pawn by capturing the square "skipped" by that pawn.
Thus, it is necessary to indicate if the previous move was of a pawn
and if so if to the fourth rank.  It is then possible to determine if
that pawn is susceptible to en passant capture through analysis of the
location of opposing pawns.
-- Eric Gindrup ! gindrup at okway.okstate.edu

Subject: Re: [rc5] v3
Author:  <rc5 at llamas.net > at SMTP
Date:    1997/10/26 19:25

On Thu, 23 Oct 1997, Sebastian Kuzminsky wrote:
> jeff at delta.com (Jeff Woods) wrote:
>
>    There are some fancy high-pack schemes, but a rough BOTE calculation
> will do for now.
BOTE?

> There are 64 squares, so it takes 6 bits to uniquely
> identify a square.  There are sixteen pieces and sixteen pawns on the
> board.  If each one has a 6-bit square identifier, then thats 32 * 6 =
> 192 bits.  The 16 pawns may have been promoted to any of four pieces, or
> be un-promoted in which case they may be allowed to en-passant right or
> left or not at all, that's seven options for another another 3 bits
> each, 16 * 3 = 48.  Finally, both sides may be allowed to castle long or
> short, 2 bits per side, 2 * 2 = 4 bits.  What did i forget?
1) Encoding for captured peices.
2) Whose turn it is.
3) You can deduce the en passant allowablity from the layout (I think -- I'm
not all that much of a chess player.)

I would do the entire board as a 64*64 array, and have each position marked
by what peice is there (0 for none, high bit is color).  Then do a RLE on
the whole thing.  Then follow with overall status

>    That's 192 + 48 + 4 = 244 bits, or 30.5 bytes.
Didn't check mine, as it is varable-length.

-=- James Mastros
---
Current Bovine Rate: ~5894.11 mkeys/sec
If Keys were dollars, we could pay off the U.S.
National Debt in 14.70 minutes.
-=- http://rc5stats.distributed.net/statbar.html (Tue Oct 21 1997)

----
To unsubscribe, send email to majordomo at llamas.net with 'unsubscribe rc5' in the
body.

----
To unsubscribe, send email to majordomo at llamas.net with 'unsubscribe rc5' in the body.

```