dioxin
Thanks for your ideas ... i see what you mean. It is a way to do it and it is a good one.
But in theory there are some problems: you can have a max of 9 Queens or 10 bishops or 10 Knights or 10 Rooks (just one of that options, not all) ... lo0ol ... i know that it is something anormal but sometimes can happens things very close to that. You can see some Chess Records here:
http://www.xs4all.nl/~timkr/records/records.htm
You never will have 10 Rooks but ... if i have a game with 5 Queens it will be very hard to "compress" every move using just 1 byte. May be it's a dream to (in an easy, good and fast way) store every possible chess move with only 1 byte.
The less confusing way is using 12 bits to store starpos (6 bits) and endpos (6 bits), or using 10 bits: 4 bits for the piece # (each color has 16 pieces) and 6 to the endpos (6 bits).
May be the best way to do it is using 3 Bytes for store a full black's and white's move, it will give me 24 bits ... or i can use a Long with 4 bytes to store the 24 bits info + 8 bits of another info like check, etc.
Anyway i cant sleep trying to realize that dream of use only to store only 1 byte to store every possible move in a chess board

...