From 8859f559f49e065e92ccc5f4ae520df098fbccef Mon Sep 17 00:00:00 2001 From: Thomas Gellekum Date: Fri, 15 May 1998 12:14:23 +0000 Subject: New port KnightCap, a learning chess program with an OpenGL-based GUI. PR: 6631 Submitted by: Andrey Zakhvatov --- games/KnightCap/Makefile | 32 ++++++++++++++++++++++++++++++++ games/KnightCap/distinfo | 1 + games/KnightCap/files/patch-aa | 34 ++++++++++++++++++++++++++++++++++ games/KnightCap/files/patch-ab | 14 ++++++++++++++ games/KnightCap/pkg-comment | 1 + games/KnightCap/pkg-descr | 22 ++++++++++++++++++++++ games/KnightCap/pkg-plist | 3 +++ 7 files changed, 107 insertions(+) create mode 100644 games/KnightCap/Makefile create mode 100644 games/KnightCap/distinfo create mode 100644 games/KnightCap/files/patch-aa create mode 100644 games/KnightCap/files/patch-ab create mode 100644 games/KnightCap/pkg-comment create mode 100644 games/KnightCap/pkg-descr create mode 100644 games/KnightCap/pkg-plist (limited to 'games') diff --git a/games/KnightCap/Makefile b/games/KnightCap/Makefile new file mode 100644 index 000000000000..26112d48b30f --- /dev/null +++ b/games/KnightCap/Makefile @@ -0,0 +1,32 @@ +# New ports collection makefile for: KnightCap +# Version required: 3.5 +# Date created: 10 May 1998 +# Whom: Andrey Zakhvatov +# +# $Id$ +# + +DISTNAME= KnightCap-3.5 +PKGNAME= knightcap-3.5 +CATEGORIES= games x11 +MASTER_SITES= ftp://samba.anu.edu.au/pub/KnightCap/ + +MAINTAINER= andy@icc.surw.chel.su + +LIB_DEPENDS= MesaGL\\.13\\.:${PORTSDIR}/graphics/Mesa \ + MesaGLU\\.13\\.:${PORTSDIR}/graphics/Mesa \ + glut\\.3\\.:${PORTSDIR}/graphics/Mesa + +FETCH_BEFORE_ARGS= -P +ALL_TARGET= KnightCap +USE_X11= yes +WRKSRC= ${WRKDIR}/Export + +do-install: + @ ${INSTALL_PROGRAM} ${WRKSRC}/KnightCap ${PREFIX}/bin +.if !defined(NOPORTDOCS) + @ ${MKDIR} ${PREFIX}/share/doc/KnightCap + @ ${INSTALL_DATA} ${WRKSRC}/README ${PREFIX}/share/doc/KnightCap +.endif + +.include diff --git a/games/KnightCap/distinfo b/games/KnightCap/distinfo new file mode 100644 index 000000000000..bb495abc2862 --- /dev/null +++ b/games/KnightCap/distinfo @@ -0,0 +1 @@ +MD5 (KnightCap-3.5.tar.gz) = 4c188f4a8e0e153ca7d6e84257cb1ae1 diff --git a/games/KnightCap/files/patch-aa b/games/KnightCap/files/patch-aa new file mode 100644 index 000000000000..0cf23bfaaa9f --- /dev/null +++ b/games/KnightCap/files/patch-aa @@ -0,0 +1,34 @@ +--- Makefile Wed Mar 11 21:51:57 1998 ++++ /home/andy/tmp/wrk/Makefile Sun May 10 09:54:13 1998 +@@ -2,11 +2,11 @@ + + # what C compiler? It better be Ansi-C. Use gcc if you have it. + # you may find that KnightCap is very slow if you don't use gcc +-CC = gcc ++#CC = gcc + + # What compiler switches do you want? These ones work well with gcc + #OPT = -O2 -fshort-enums -Wall +-OPT = -g -fshort-enums -Wall ++OPT = -O2 -fshort-enums -Wall -DPI=M_PI + + # If you don't have gcc then perhaps try this instead. You only need + # the null definition for inline if your C compiler doesn't know about +@@ -21,13 +21,10 @@ + # display (or you don't have OpenGL and Glut libraries) + # If you do have these libs then make sure the first three + # lines point at the right places +-MESA = /usr/local/Mesa-2.1 +-GLUT = /usr/local/Mesa-2.1/glut-3.2 +-X11 = /usr/X11R6 +-GLUT_LIBS = -L$(GLUT)/lib/glut -lglut +-MESA_LIBS = -L$(MESA)/lib -lMesaGLU -lMesaGL -lm +-XLIBS = -L$(X11)/lib -lXmu -lXt -lXext -lX11 -lXi +-DISPLAYFLAGS = -I$(MESA)/include -I$(GLUT) -DRENDERED_DISPLAY=1 ++GLUT_LIBS = -L$(X11BASE)/lib -lglut ++MESA_LIBS = -L$(X11BASE)/lib -lMesaGLU -lMesaGL -lm ++XLIBS = -L$(X11BASE)/lib -lXmu -lXt -lXext -lX11 -lXi ++DISPLAYFLAGS = -I$(X11BASE)/include -DRENDERED_DISPLAY=1 + + # comment out the following line if you don't want KnightCap's + # evaluation function learning turned on. diff --git a/games/KnightCap/files/patch-ab b/games/KnightCap/files/patch-ab new file mode 100644 index 000000000000..01dba41e45cb --- /dev/null +++ b/games/KnightCap/files/patch-ab @@ -0,0 +1,14 @@ +--- knightcap.c Wed Mar 11 21:51:58 1998 ++++ /home/andy/tmp/wrk/knightcap.c Sun May 10 09:54:22 1998 +@@ -934,7 +934,11 @@ + reset_board(); + init_movements(); + ++#ifdef __FreeBSD__ ++ signal(SIGCHLD, SIG_IGN); ++#else + signal(SIGCLD, SIG_IGN); ++#endif + + pid1 = getpid(); + diff --git a/games/KnightCap/pkg-comment b/games/KnightCap/pkg-comment new file mode 100644 index 000000000000..11e80e983df3 --- /dev/null +++ b/games/KnightCap/pkg-comment @@ -0,0 +1 @@ +Chess program with 3D interface for X Window System. diff --git a/games/KnightCap/pkg-descr b/games/KnightCap/pkg-descr new file mode 100644 index 000000000000..a6308a455b37 --- /dev/null +++ b/games/KnightCap/pkg-descr @@ -0,0 +1,22 @@ +KnightCap is a chess program. + +The principal differences between KnightCap and other chess programs +are: + + - KnightCap has an optional fully rendered 3D interface, giving a feel much + more like an "over the board" game. + + - KnightCap was developed to run on a parallel distributed memory + machine, although it also runs on normal unix boxes. + + - KnightCap does not have an opening book---instead it keeps a file + (brain.dat) of losing moves and inserts them in the hash table at the + start of each search. At present it has about 1500 entries, and + this makes it a pretty competitive opening player. + + - KnightCap learns the parameters of its evaluation function as it + plays. The most dramatic example of how this helps is an experiment + we conducted on FICS in which KnightCap learnt from a 1650 player + to a 2100 player in just 300 games. See + http://keating.anu.edu.au/~jon/papers/knigtcap.ps.gz for more info on + its learning algorithm. diff --git a/games/KnightCap/pkg-plist b/games/KnightCap/pkg-plist new file mode 100644 index 000000000000..f6fc4f39a8b0 --- /dev/null +++ b/games/KnightCap/pkg-plist @@ -0,0 +1,3 @@ +bin/KnightCap +share/doc/KnightCap/README +@dirrm share/doc/KnightCap -- cgit