I am starting a separate Post on a subject which I still struggle with matching up to certain numbers provided in different ways:Mark Uniacke wrote:I would imagine there is essentially one book but within it it has moves assigned to various book styles. Some moves may be exclusive to a book style while others may occur in different styles.
That seems the most likely implementation to me.
First of all before I start composing my questions, the above comment from Mark I do believe is a Key to part of the solution.
If you look into the Cosmos Manual the following is described:
2.7 Built-in Openings
At the beginning of a game, the computer will often move instantly on
many levels. This is because it is playing from memory, using its own
built-in "book" of opening chess moves. This book contains thousands
of positions, including most major openings and many positions from
grandmaster play. If the current board position is in its book, the computer
plays a response to that position automatically, instead of having
to think about the move!
A special feature of this computer's opening book is its ability to
handle transpositions. A transposition occurs when a position reached
by a certain set of moves can also be reached when those same moves
occur in a different order. The computer's integrated Automatic Transposition
Manager handles these cases with ease!
Also included is a unique user-selectable book feature, which lets
you choose from different types of opening books, or even turn the
book off, if desired.
e. Full Book (Square E2)
Turning on the Full Book option gives the computer the freedom to
choose any move from its built-in book of openings, so you'll see a
greater variety of opening lines being played. If this option is selected
the Passive, Active, and Tournament Book options are disabled.
With this option on, you may see the computer make some questionable
moves. This is because its built-in book of openings must contain
responses to certain lines of play (even questionable lines), in case they
are played. While the computer would not make these moves on its
own, it needs to know how to respond to them in the best way. Therefore,
when you turn on the Full Book, the computer could potentially
play one of these moves.
f. Passive Book (Square F2)
Selecting the Passive Book option forces the computer to give
preference to passive and closed positions when deciding which lines to
play.If this option is selected, the Active Book and Tournament Book options are disabled.
g. Active Book (Square G2)
When this option is activated, the computer will give preference to
active lines and open positions when deciding which lines to play.
If this option is selected, the Passive Book and Tournament Book options are
disabled.
h. Tournament Book (Square H2)
When you turn the Tournament Book option on, the computer is
forced to always select the best possible line of play in every opening.
While this results in the best chess play, it also narrows down the
computer's choice of moves by limiting its available book lines. If this
option is selected, the Active Book and Passive Book options are
disabled.
If you read the above carefully it seems to fit into Mark's comment that only one book should be used.
Another hint that this seems to be correct comes from Mephisto Modena:
Mephisto's Opening Book differentiates between active and passive moves. Active opening moves are the ones the computer will select when it is playing. Passive moves however are recognized by MEPHISTO so that it can find the answering moves if the opponent plays these but it will avoid playing them itself as it could lead to positions which the computer's program may not handle so well. Passive moves are indicated by dots between the characters and numbers on the display.
Now all this nicely fits into Mark's explanation.
Now here are some programs and their ROM sizes and the year that they were first sold:
Mephisto Modena - 1992
ROM 32,768 Bytes
Opening Book: 10,000 Half Moves
Processor: 6502 - 4 MHz
GK2000 - 1992
ROM: 16,384 Bytes
Opening Book: 2,000 Half Moves
Processor: H8 - 10 MHz
GK2100 - 1993
ROM 32,768 Bytes
Opening Book: 30,000 Half Moves
Processor: H8 - 10 MHz
Saitek Travel Champion 2100 - 1994
ROM 32,768 Bytes
Opening Book: 30,000 Half Moves
Processor: H8 - 10 MHz
RadioShack Champion 2250XL - 1997
ROM 32,768 Bytes
Opening Book: 20,000 Half Moves
Processor: H8 - 10 MHz
Saitek Cosmos - 1998
ROM 32,768 Bytes
Opening Book: 6,000 Half Moves
Processor: H8 - 10 MHz
Saitek Cougar - 1998
ROM 32,768 Bytes
Opening Book: 6,000 Half Moves
Processor: H8 - 16 MHz
Mephisto Milano Pro - 1997
ROM: 65,536 Bytes
Opening Book: 50,000 Half Moves
Processor: SuperH 7034 20 MHz
Mephisto Magellan - 1998
ROM: 65,536 Bytes
Opening Book: 50,000 Half Moves
Processor: SH7034 20 MHz
Mephisto Atlanta - 1997
ROM: 65,536 Bytes
Opening Book: 50,000 Half Moves
Processor: SH7034 20 MHz
Mephisto Senator - 1998
ROM: 65,536 Bytes
Opening Book: 50,000 Half Moves
Processor: SuperH 7034 20 MHz
Here is some data I have taken from DOS Programs:
Fritz 1 - 1991
Fritz.bin 28,828 08/27/91
Fritz.fbk 16,132 08/16/90
-------------------------
Total = 54,960 Bytes
Fritz.exe 233,572 10/07/91
Fritz 2 - 1993
Fritz2.bin 36,037 01/08/93
Fritz2.fbk 22,670 01/13/93
--------------------------
Total = 58,707 Bytes
Fritz2.exe 244,858 12/09/92
Fritz 3 - 1995
fritz3.bin 53,990 01/23/95
fritz3.fbk 140,414 11/28/94
--------------------------
Total = 194,404 Bytes
fritz3.exe 258,428 10/12/95
Mychess - 1980
Mychess.com 52,284 01-01-80
Gideon - 1993
Gideon.trl 29,181 Bytes
Gideon.mvs 42,206 Bytes
So now questions, questions... and more questions..
GK2000
ROM: 16,384 Bytes
Opening Book: 2,000 Half Moves
If you look at the ROM size, I can only assume that the program is a pre Fritz 1 version and pruned down to it's barest minimum. The Opening Book size as shown in Wiki seems to make sense in this case.
You have to also consider that besides the book and the program you also need some sort of minimum basic programming to steer the chess program and features and options.
Mephisto Modena - 1992
ROM 32,768 Bytes
Opening Book: 10,000 Half Moves
Now if you take Fritz.bin 28,828 Bytes this could theoretically fit with a little pruning down of Fritz 1 (which was written in 1991)
But now the question for you programmers, how many bytes do you need for 10,000 Half Moves? Fritz 1 has a book size of 16,132 Bytes. Does anyone know how many Half Moves the Fritz 1 book has. The FBK file is already written in I would guess Assembly language and therefore is already most likely compressed. (I know I cannot read it when I open the file in the DOS Edit mode)
GK2100 - 1993
ROM 32,768 Bytes
Opening Book: 30,000 Half Moves
So how do you fit 30,000 Half Moves into the GK2100?
RadioShack Champion 2250XL - 1997
ROM 32,768 Bytes
Opening Book: 20,000 Half Moves
How do you fit 20,000 into the RS2250XL ? Come on you Programmers Fess UP!!!
Saitek Cosmos - 1998
ROM 32,768 Bytes
Opening Book: 6,000 Half Moves
Saitek Cougar - 1998
ROM 32,768 Bytes
Opening Book: 6,000 Half Moves
Interesting that Wiki shows Cosmos and Cougar as 6,000 Half Moves, as well as Centurion and some others. So what is correct?
Mephisto Atlanta - 1997
ROM: 65,536 Bytes
Opening Book: 50,000 Half Moves
Now here finally!!! I see light with Fritz1 and Fritz2 both fit comfortably into Atlanta. How you may ask?
Ok a theory!
Assume the manuals do not tell the whole truth. Which of course we all know is an easy thing to assume.
Now take a claim of 50,000 Half Moves and Mark's comments and think them through.
What do we have?
Big Book
Tournament Book
Active Book
Passive Book
Now lets do some assumptions.
Big Book = 20,000 Half Moves
Tournament Book = 12,000 Half Moves
Active Book = 9,000 Half Moves
Passive Book = 9,000 Half Moves
What do we have?
We have a book size of 20,000 Half Moves or for arguments sake 20K or 20,480 Bytes in size. (Taking Mark's comment to heart here)
Now look at Fritz 2 again:
Fritz 2 - 1993
Fritz2.bin 36,037 01/08/93
Fritz2.fbk 22,670 01/13/93
--------------------------
Total = 58,707 Bytes
Now I would think that with Atlanta's ROM: 65,536 Bytes Fritz 2 would fit in there nicely and the book, with room to spare for Features and all the other bells and whistles. (Now if someone states that Atlanta is a Fritz 3 then we have a bit of a pruning problem or book size problem again)
So now back to GK2100 and RS2250 how do you fit a book size of 30,000 and 20,000 half moves into 32 KB ROM?
Come on let's hear the explanations!
Currently I preferring to lean on what I read for Modena's book size and even Cosmos, Cougar's books size.
Still I hate all these assumptions that I am making it would be nice if someone had some numbers on how many Bytes you need for 1000 Half Moves!
Interesting stuff regards,