forked from hoshir/zebra
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit 3a030ad
Showing
81 changed files
with
36,544 additions
and
0 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,275 @@ | ||
# | ||
# File: Makefile | ||
# | ||
# Author: Gunnar Andersson ([email protected]) | ||
# | ||
# Created: July 2, 1997 | ||
# | ||
# Modified: December 25, 2005 | ||
# | ||
|
||
|
||
|
||
# --- Files --- | ||
|
||
SRCS = \ | ||
bitbcnt.c \ | ||
bitbmob.c \ | ||
bitboard.c \ | ||
bitbtest.c \ | ||
cntflip.c \ | ||
counter.c \ | ||
display.c \ | ||
doflip.c \ | ||
end.c \ | ||
epcstat.c \ | ||
error.c \ | ||
eval.c \ | ||
game.c \ | ||
getcoeff.c \ | ||
globals.c \ | ||
hash.c \ | ||
learn.c \ | ||
midgame.c \ | ||
moves.c \ | ||
myrandom.c \ | ||
opname.c \ | ||
osfbook.c \ | ||
patterns.c \ | ||
pcstat.c \ | ||
probcut.c \ | ||
safemem.c \ | ||
search.c \ | ||
stable.c \ | ||
thordb.c \ | ||
timer.c \ | ||
unflip.c | ||
# bitbvald.c | ||
|
||
HEADERS = \ | ||
autoplay.h \ | ||
bitbcnt.h \ | ||
bitbmob.h \ | ||
bitboard.h \ | ||
bitbtest.h \ | ||
cntflip.h \ | ||
constant.h \ | ||
counter.h \ | ||
display.h \ | ||
doflip.h \ | ||
end.h \ | ||
epcstat.h \ | ||
error.h \ | ||
eval.h \ | ||
game.h \ | ||
getcoeff.h \ | ||
globals.h \ | ||
hash.h \ | ||
learn.h \ | ||
macros.h \ | ||
magic.h \ | ||
midgame.h \ | ||
moves.h \ | ||
myrandom.h \ | ||
opname.h \ | ||
osfbook.h \ | ||
patterns.h \ | ||
pcstat.h \ | ||
porting.h \ | ||
probcut.h \ | ||
psdump.h \ | ||
safemem.h \ | ||
search.h \ | ||
stable.h \ | ||
texts.h \ | ||
thordb.h \ | ||
timer.h \ | ||
unflip.h | ||
# bitbvald.h | ||
|
||
|
||
BOOKTOOL_SRCS = $(SRCS) booktool.c | ||
|
||
PRACTICE_SRCS = practice.c | ||
ENDDEV_SRCS = enddev.c | ||
ALL_SRCS = $(SRCS) $(PRACTICE_SRCS) $(ENDDEV_SRCS) zebra.c scrzebra.c booktool.c autop.c thorop.c tune8dbs.c | ||
|
||
OBJS = $(SRCS:.c=.o) | ||
BOOKTOOL_OBJS = $(BOOKTOOL_SRCS:.c=.o) | ||
PRACTICE_OBJS = $(PRACTICE_SRCS:.c=.o) | ||
ENDDEV_OBJS = $(ENDDEV_SRCS:.c=.o) | ||
|
||
AUTOPLAY_EXE = autoplay | ||
BOOKTOOL_EXE = booktool | ||
PRACTICE_EXE = practice | ||
ENDDEV_EXE = enddev | ||
ZEBRA_EXE = zebra | ||
SCRZEBRA_EXE = scrzebra | ||
|
||
|
||
|
||
# --- Libraries | ||
|
||
LDFLAGS = -static -lm -lz | ||
#LDFLAGS = -static -lm -lz -Wl,-Map,map.out | ||
|
||
|
||
|
||
# --- Programs --- | ||
|
||
CC = gcc | ||
CXX = g++ | ||
|
||
|
||
# --- Flags --- | ||
|
||
DEFS = -DINCLUDE_BOOKTOOL -DTEXT_BASED -DUSE_PENTIUM_ASM -DZLIB_STATIC | ||
#DEFS = -DUSE_PENTIUM_ASM -DZLIB_STATIC | ||
|
||
WARNINGS = -Wall -Wcast-align -Wwrite-strings -Wstrict-prototypes -Winline | ||
#OPTS = -O2 -s -fomit-frame-pointer -march=pentium -malign-functions=6 -fschedule-insns2 | ||
OPTS = -O4 -s -fomit-frame-pointer -mtune=pentium2 -falign-functions=32 | ||
#OPTS = -O4 -pg -mtune=pentium2 -falign-functions=32 | ||
#OPTS = -O4 -g -mtune=pentium2 | ||
|
||
CFLAGS = $(OPTS) $(WARNINGS) $(DEFS) | ||
CXXFLAGS = $(CFLAGS) | ||
|
||
|
||
|
||
# --- Targets --- | ||
|
||
all : libzebra.a zebra scrzebra booktool practice enddev tune8dbs | ||
|
||
zebra : $(OBJS) zebra.o autop.o | ||
$(CC) -o $(ZEBRA_EXE) $(CFLAGS) $(OBJS) zebra.o autop.o $(LDFLAGS) | ||
|
||
scrzebra : $(OBJS) scrzebra.o autop.o | ||
$(CC) -o $(SCRZEBRA_EXE) $(CFLAGS) $(OBJS) scrzebra.o autop.o $(LDFLAGS) | ||
|
||
libzebra.a: $(OBJS) | ||
ar rcv libzebra.a $(OBJS) | ||
ranlib libzebra.a | ||
|
||
clean : | ||
$(RM) $(OBJS) booktool.o zebra.o scrzebra.o $(ZEBRA_EXE) a.out core \ | ||
*.stackdump gmon.out $(PRACTICE_OBJS) $(PRACTICE_EXE) \ | ||
libzebra.a *.da | ||
|
||
booktool : $(OBJS) $(BOOKTOOL_OBJS) autop.o | ||
$(CC) -o $(BOOKTOOL_EXE) $(CFLAGS) $(BOOKTOOL_OBJS) autop.o $(LDFLAGS) | ||
|
||
practice : $(PRACTICE_OBJS) $(OBJS) autop.o | ||
$(CC) -o $(PRACTICE_EXE) $(CFLAGS) $(PRACTICE_OBJS) $(OBJS) autop.o $(LDFLAGS) | ||
|
||
enddev : $(ENDDEV_OBJS) $(OBJS) autop.o | ||
$(CC) -o $(ENDDEV_EXE) $(CFLAGS) $(ENDDEV_OBJS) $(OBJS) autop.o $(LDFLAGS) | ||
|
||
zsrc: | ||
tar cf zebra.tar $(ALL_SRCS) $(HEADERS) Makefile \ | ||
openings.txt COPYING README | ||
gzip --best -f zebra.tar | ||
|
||
bookinst: | ||
$(CC) -o bookinst $(CFLAGS) bookinst.c myrandom.o | ||
|
||
tune8dbs: | ||
$(CC) -o tune8dbs $(CFLAGS) tune8dbs.c $(LDFLAGS) | ||
|
||
genbb: genbb.o | ||
$(CC) -o genbb genbb.o | ||
|
||
genmmx: genmmx.o | ||
$(CXX) -o genmmx genmmx.o | ||
|
||
depend: | ||
makedepend -Y $(ALL_SRCS) | ||
|
||
# .s file dependencies. | ||
|
||
bitbcnt.s : bitbcnt.c bitboard.h | ||
$(CC) $(CFLAGS) -S bitbcnt.c | ||
bitbmob.s : bitboard.h bitbmob.c end.h | ||
$(CC) $(CFLAGS) -S bitbmob.c | ||
bitbtest.s : bitboard.h bitbtest.c | ||
$(CC) $(CFLAGS) -S bitbtest.c | ||
bitbvald.s : bitboard.h bitbvald.c | ||
$(CC) $(CFLAGS) -S bitbvald.c | ||
doflip.s : doflip.c error.h globals.h hash.h macros.h moves.h patterns.h texts.h unflip.h | ||
$(CC) $(CFLAGS) -S doflip.c | ||
end.s : autoplay.h bitbcnt.h bitbmob.h bitboard.h bitbtest.h cntflip.h constant.h counter.h display.h doflip.h end.c end.h epcstat.h eval.h getcoeff.h globals.h hash.h macros.h midgame.h moves.h osfbook.h probcut.h search.h stable.h texts.h timer.h unflip.h | ||
$(CC) $(CFLAGS) -S end.c | ||
getcoeff.s : constant.h error.h eval.h getcoeff.c macros.h magic.h moves.h patterns.h safemem.h search.h texts.h | ||
$(CC) $(CFLAGS) -S getcoeff.c | ||
moves.s : cntflip.h constant.h doflip.h globals.h hash.h macros.h moves.c moves.h patterns.h search.h texts.h unflip.h | ||
$(CC) $(CFLAGS) -S moves.c | ||
|
||
# The dependendices below were generated by "make depend". | ||
# DO NOT DELETE | ||
|
||
bitbcnt.o: macros.h | ||
bitbmob.o: bitbmob.h bitboard.h macros.h end.h search.h constant.h counter.h | ||
bitbmob.o: globals.h | ||
bitboard.o: bitboard.h macros.h constant.h | ||
bitbtest.o: macros.h bitboard.h | ||
cntflip.o: cntflip.h constant.h error.h macros.h moves.h texts.h | ||
counter.o: counter.h macros.h | ||
display.o: porting.h constant.h display.h search.h counter.h macros.h | ||
display.o: globals.h eval.h safemem.h texts.h timer.h | ||
doflip.o: doflip.h macros.h error.h globals.h constant.h hash.h moves.h | ||
doflip.o: patterns.h texts.h unflip.h | ||
end.o: porting.h autoplay.h bitbcnt.h bitboard.h macros.h bitbmob.h end.h | ||
end.o: search.h constant.h counter.h globals.h bitbtest.h cntflip.h display.h | ||
end.o: doflip.h epcstat.h eval.h getcoeff.h hash.h midgame.h moves.h | ||
end.o: osfbook.h probcut.h pcstat.h stable.h texts.h timer.h unflip.h | ||
epcstat.o: epcstat.h | ||
error.o: porting.h error.h texts.h | ||
eval.o: counter.h macros.h eval.h search.h constant.h globals.h moves.h | ||
game.o: porting.h bitboard.h macros.h constant.h display.h search.h counter.h | ||
game.o: globals.h end.h error.h eval.h game.h getcoeff.h hash.h midgame.h | ||
game.o: moves.h myrandom.h osfbook.h patterns.h probcut.h epcstat.h pcstat.h | ||
game.o: stable.h texts.h thordb.h timer.h unflip.h | ||
getcoeff.o: porting.h constant.h error.h eval.h search.h counter.h macros.h | ||
getcoeff.o: globals.h getcoeff.h magic.h moves.h patterns.h safemem.h texts.h | ||
globals.o: globals.h constant.h | ||
hash.o: error.h hash.h constant.h macros.h myrandom.h safemem.h search.h | ||
hash.o: counter.h globals.h | ||
learn.o: porting.h constant.h end.h search.h counter.h macros.h globals.h | ||
learn.o: game.h hash.h learn.h moves.h osfbook.h patterns.h timer.h | ||
midgame.o: autoplay.h constant.h display.h search.h counter.h macros.h | ||
midgame.o: globals.h eval.h getcoeff.h hash.h midgame.h moves.h myrandom.h | ||
midgame.o: patterns.h pcstat.h probcut.h epcstat.h texts.h timer.h | ||
moves.o: cntflip.h constant.h doflip.h macros.h globals.h hash.h moves.h | ||
moves.o: patterns.h search.h counter.h texts.h unflip.h | ||
myrandom.o: myrandom.h | ||
opname.o: opname.h | ||
osfbook.o: porting.h autoplay.h constant.h counter.h macros.h display.h | ||
osfbook.o: search.h globals.h end.h error.h eval.h game.h getcoeff.h hash.h | ||
osfbook.o: magic.h midgame.h moves.h myrandom.h opname.h osfbook.h patterns.h | ||
osfbook.o: safemem.h texts.h timer.h | ||
patterns.o: constant.h display.h search.h counter.h macros.h globals.h | ||
patterns.o: patterns.h | ||
pcstat.o: porting.h pcstat.h | ||
probcut.o: porting.h constant.h epcstat.h pcstat.h probcut.h | ||
safemem.o: error.h macros.h safemem.h texts.h | ||
search.o: constant.h counter.h macros.h error.h hash.h globals.h moves.h | ||
search.o: search.h texts.h | ||
stable.o: porting.h bitboard.h macros.h bitbtest.h constant.h end.h search.h | ||
stable.o: counter.h globals.h patterns.h | ||
thordb.o: porting.h bitboard.h macros.h constant.h error.h moves.h myrandom.h | ||
thordb.o: patterns.h safemem.h texts.h thordb.h thorop.c | ||
timer.o: porting.h constant.h macros.h timer.h | ||
unflip.o: macros.h unflip.h | ||
practice.o: constant.h display.h search.h counter.h macros.h globals.h game.h | ||
practice.o: moves.h osfbook.h patterns.h | ||
enddev.o: constant.h display.h search.h counter.h macros.h globals.h game.h | ||
enddev.o: hash.h learn.h moves.h myrandom.h osfbook.h patterns.h timer.h | ||
zebra.o: constant.h counter.h macros.h display.h search.h globals.h doflip.h | ||
zebra.o: end.h error.h eval.h game.h getcoeff.h hash.h learn.h midgame.h | ||
zebra.o: moves.h myrandom.h osfbook.h patterns.h thordb.h timer.h | ||
scrzebra.o: zebra.c constant.h counter.h macros.h display.h search.h | ||
scrzebra.o: globals.h doflip.h end.h error.h eval.h game.h getcoeff.h hash.h | ||
scrzebra.o: learn.h midgame.h moves.h myrandom.h osfbook.h patterns.h | ||
scrzebra.o: thordb.h timer.h | ||
booktool.o: constant.h hash.h macros.h osfbook.h search.h counter.h globals.h | ||
autop.o: autoplay.h |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
----- LICENSE ----- | ||
|
||
This piece of software is released under the GPL. | ||
See the file COPYING for more information. | ||
|
||
----- COMPILING ----- | ||
|
||
You need make and a C compiler, e.g. GCC, to compile Zebra. Run "make all" | ||
to build Zebra and some tools. I have built Zebra using Cygwin and GCC 3.2. | ||
Using an older or newer version of GCC should work fine. ICC should also | ||
work, but I have not access to it. The inline assembly can only be used | ||
if you run GCC, so performance will probably take a big hit if you use a | ||
compiler that is not capable of reading GCC-style inline assembly. | ||
|
||
----- RUNNING ----- | ||
|
||
Copy coeffs2.bin and book.bin from the directory where WZebra is installed | ||
to the directory where Zebra and its tools are found. | ||
"./zebra -help" describes the available options. If you find the help text | ||
too terse: Use the force, read the source. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
/* | ||
File: autop.c | ||
Created: May 23, 1998 | ||
Modified: May 2, 1999 | ||
Author: Gunnar Andersson ([email protected]) | ||
Contents: An empty definition of functions from autoplay | ||
used when no event handling is necessary. | ||
*/ | ||
|
||
|
||
|
||
#include <stdio.h> | ||
#include "autoplay.h" | ||
|
||
|
||
|
||
void | ||
handle_event( int only_passive_events, int allow_delay, int passive_mode ) { | ||
} | ||
|
||
void | ||
toggle_event_status( int allow_event_handling ) { | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
/* | ||
File: autoplay.h | ||
Created: May 21, 1998 | ||
Modified: August 1, 2002 | ||
Author: Gunnar Andersson ([email protected]) | ||
Contents: | ||
*/ | ||
|
||
|
||
|
||
#ifndef AUTOPLAY_H | ||
#define AUTOPLAY_H | ||
|
||
|
||
|
||
|
||
#ifdef __cplusplus | ||
extern "C" { | ||
#endif | ||
|
||
|
||
|
||
void | ||
handle_event( int only_passive_events, | ||
int allow_delay, | ||
int passive_mode ); | ||
|
||
void | ||
toggle_event_status( int allow_event_handling ); | ||
|
||
|
||
|
||
#ifdef __cplusplus | ||
} | ||
#endif | ||
|
||
|
||
|
||
#endif /* AUTOPLAY_H */ |
Oops, something went wrong.