Академический Документы
Профессиональный Документы
Культура Документы
8A RELEASE NOTES
Fairy-Max is a self-documented open-source engine for Chess and Chess variants.
It is a derivative of the World's smallest Chess program, micro-Max, and althoug
h no special effort is made to keep the size of its source code to the utmost mi
nimum, its humble origins make that the engine outine is still only about 100 li
nes of C-code. The whole source is contained in a single file (fmax4_8.c).
Fairy-Max is a WinBoard compatible engine. This means it does not display a Ches
s board itself, but has tu use WinBoard for that purpose, and should then be sta
rted by starting WinBoard, and instruct it to use Fairy-Max for thinking up the
moves.
Fairy-Max uses a hash table of 96 MegaByte by default. It is essential that this
table fit in the memory of your computer, with sufficient room to spare for Win
dows and other support programs, and a posible opponent program. On old systems,
the amount of DRAM might not be sufficient for this. To prevent that Fairy-Max
will slow down thousandfold (with a corresponding drop in playing strength) by s
ubstituting hard disk for memory, you will have to instruct it to use a smaller
hash table. To this end, you would have to replace the name Fairy-Max\fmax in th
e short-cut to start WinBoard in a specific mode, in the startup dialog box if y
ou start through the WinBoard icon itself, or in the winboard.ini file by "Fairy
-Max\fmax 20". (Including the quotes and space!) The 20 indicates Fairy-Max shou
ld only use 12MB hash table. (Each increment/decrement of this number would doub
le/half the hash size, i.e. 21 would mean 24MB, etc.) It is usually OK to use ab
out a quarter of the availble memory, even if you run Fairy-Max twice (by playin
g it against itself).
Fairy-Max should be possible to compile it with any C compiler. It was developed
using gcc under cygwin. On this platform, it can simply be compiled with the co
mmand:
gcc -O2 -mno-cygwin fmax4_8.c -o fmax.exe
This gives you a perfectly functional executable, which you can shrink in size s
omewhat by using
strip fmax.exe
For compiling under Linux, you have to define the compiler swithch LINUX. This c
an be done by adding the
command-line option "-D LINUX" (without te quotes) in the compilation command.
If you want the executable to show up in Windows as a nice icon, rather than the
standard symbol for an executable, you have to link it to an icon pictogram. I
do this by the sequence of commands:
windres --use-temp-file --include-dir . fmax.rc -O coff -o fres.o
gcc -O2 -mno-cygwin -c fmax4_8.c
gcc -mno-cygwin *.o -o fmax.exe
strip fmax.exe
I have no idea if this is a good or a stupid way to do it, I have zero experienc
e in programming Windows applications, and this was a copy-cat solution based on
the WinBoard source code that seemed to work.
Have fun,
H.G. Muller