summaryrefslogtreecommitdiff
path: root/games/Phalanx/patches/setboard.patch
diff options
context:
space:
mode:
Diffstat (limited to 'games/Phalanx/patches/setboard.patch')
-rw-r--r--games/Phalanx/patches/setboard.patch219
1 files changed, 219 insertions, 0 deletions
diff --git a/games/Phalanx/patches/setboard.patch b/games/Phalanx/patches/setboard.patch
new file mode 100644
index 0000000000..10b3bd2592
--- /dev/null
+++ b/games/Phalanx/patches/setboard.patch
@@ -0,0 +1,219 @@
+diff -ur Phalanx-XXII/io.c Phalanx-XXII-scid/io.c
+--- Phalanx-XXII/io.c 2005-10-03 00:29:22.000000000 +0200
++++ Phalanx-XXII-scid/io.c 2008-02-03 12:07:09.000000000 +0100
+@@ -984,11 +984,11 @@
+ if( Inp[0] == '\0' )
+ if( fgets(Inp,255,stdin) == NULL ) strcpy(Inp,"quit\n");
+
+- if( strncmp(Inp,"exit\n",5) == 0 && Flag.analyze )
++ if( strncmp(Inp,"exit",4) == 0 && Flag.analyze )
+ { Flag.machine_color = Flag.analyze = 0; Inp[0]='\0'; return 1; }
+
+- if( strncmp(Inp,"quit\n",5) == 0
+- || strncmp(Inp,"exit\n",5) == 0 )
++ if( strncmp(Inp,"quit",4) == 0
++ || strncmp(Inp,"exit",4) == 0 )
+ {
+ if( Flag.ponder < 2 ) return 0;
+ else
+@@ -1007,7 +1007,7 @@
+ }
+
+ /* COMMAND: analyze */
+- if( strncmp( Inp, "analyze\n", 8 ) == 0 )
++ if( strncmp( Inp, "analyze", 7 ) == 0 )
+ {
+ if( Flag.ponder >= 2 ) { Abort = 1; return 0; }
+ puts("analyze mode, type 'exit' to terminate");
+@@ -1017,7 +1017,7 @@
+ }
+
+ /* COMMAND: force */
+- if( strncmp( Inp, "force\n", 6 ) == 0 )
++ if( strncmp( Inp, "force", 5 ) == 0 )
+ {
+ if( Flag.ponder >= 2 ) { Abort = 1; return 0; }
+ puts("you play both");
+@@ -1027,8 +1027,8 @@
+ }
+
+ /* COMMANDS: white, black */
+- if( strncmp( Inp, "white\n", 6 ) == 0
+- || strncmp( Inp, "black\n", 6 ) == 0 )
++ if( strncmp( Inp, "white", 5 ) == 0
++ || strncmp( Inp, "black", 5 ) == 0 )
+ {
+ if( Flag.ponder >= 2 ) { Abort = 1; return 0; }
+ puts("you do not play both");
+@@ -1038,7 +1038,7 @@
+ }
+
+ /* COMMAND: both */
+- if( strncmp( Inp, "both\n", 5 ) == 0 )
++ if( strncmp( Inp, "both", 4 ) == 0 )
+ {
+ if( Flag.ponder >= 2 ) { Abort = 1; return 0; }
+ puts("machine plays both");
+@@ -1047,7 +1047,7 @@
+ }
+
+ /* COMMAND: new */
+- if( strncmp( Inp, "new\n", 4 ) == 0 )
++ if( strncmp( Inp, "new", 3 ) == 0 )
+ {
+ if( Flag.ponder >= 2 ) { Abort = 1; return 0; }
+ setfen("rnbqkbnr/pppppppp/////PPPPPPPP/RNBQKBNR/w");
+@@ -1062,7 +1062,7 @@
+ }
+
+ /* COMMAND: go */
+- if( strncmp( Inp, "go\n", 3 ) == 0 )
++ if( strncmp( Inp, "go", 2 ) == 0 )
+ {
+ if( Flag.ponder >= 2 ) { Abort = 1; return 0; }
+ Flag.machine_color = Color;
+@@ -1070,11 +1070,11 @@
+ }
+
+ /* COMMAND: bd */
+- if( strncmp( Inp, "bd\n", 3 ) == 0 || strncmp( Inp, "d\n", 2 ) == 0 )
++ if( strncmp( Inp, "bd", 2 ) == 0 || strncmp( Inp, "d\n", 2 ) == 0 )
+ { printboard(NULL); Inp[0]='\0'; return 1; }
+
+ /* COMMAND: bk */
+- if( strncmp( Inp, "bk\n", 3 ) == 0 )
++ if( strncmp( Inp, "bk", 2 ) == 0 )
+ {
+ tmove m[256]; int n;
+ extern void bk(tmove *, int );
+@@ -1086,7 +1086,7 @@
+ }
+
+ /* COMMAND: post */
+- if( strncmp( Inp, "post\n", 5 ) == 0 )
++ if( strncmp( Inp, "post", 4 ) == 0 )
+ {
+ Flag.post = 1;
+ puts("post on");
+@@ -1094,7 +1094,7 @@
+ }
+
+ /* COMMAND: nopost */
+- if( strncmp( Inp, "nopost\n", 7 ) == 0 )
++ if( strncmp( Inp, "nopost", 6 ) == 0 )
+ {
+ Flag.post = 0;
+ puts("post off");
+@@ -1139,7 +1139,7 @@
+
+
+ /* COMMAND: hard */
+- if( strncmp( Inp, "hard\n", 5 ) == 0 )
++ if( strncmp( Inp, "hard", 4 ) == 0 )
+ {
+ if( Flag.ponder==0 && Flag.easy==0 )
+ Flag.ponder = 1;
+@@ -1148,7 +1148,7 @@
+ }
+
+ /* COMMAND: easy */
+- if( strncmp( Inp, "easy\n", 5 ) == 0 )
++ if( strncmp( Inp, "easy", 4 ) == 0 )
+ {
+ if( Flag.ponder != 0 )
+ {
+@@ -1189,7 +1189,7 @@
+ }
+
+ /* COMMAND: book */
+- if( strncmp( Inp, "book\n", 5 ) == 0 )
++ if( strncmp( Inp, "book", 4 ) == 0 )
+ {
+ Flag.book = ! Flag.book;
+ if( Flag.book ) puts("book on");
+@@ -1198,15 +1198,15 @@
+ }
+
+ /* COMMAND: about */
+- if( strncmp( Inp, "about\n", 6 ) == 0 )
++ if( strncmp( Inp, "about", 5 ) == 0 )
+ { about(); Inp[0]='\0'; return 1; }
+
+ /* COMMAND: fen */
+- if( strncmp( Inp, "fen\n", 3 ) == 0 )
++ if( strncmp( Inp, "fen", 3 ) == 0 )
+ { printpositionfen(); Inp[0]='\0'; return 1; }
+
+ /* COMMAND: help */
+- if( strncmp( Inp, "help\n", 5 ) == 0 )
++ if( strncmp( Inp, "help", 4 ) == 0 )
+ {
+ puts("COMMAND SUMMARY: about (shows settings), bd (displays position - same");
+ puts("as 'd'), bk (shows book info), book (enables/disables book), both");
+@@ -1240,7 +1240,7 @@
+ }
+
+ /* COMMAND: xboard */
+- if( strncmp( Inp, "xboard\n", 7 ) == 0 )
++ if( strncmp( Inp, "xboard", 6 ) == 0 )
+ {
+ Flag.xboard = 2;
+ puts("xboard mode on");
+@@ -1267,7 +1267,7 @@
+ }
+
+ /* COMMAND: undo (xboard) */
+- if( strncmp( Inp, "undo\n", 5 ) == 0 || strncmp( Inp, "u\n", 2 ) == 0 )
++ if( strncmp( Inp, "undo", 4 ) == 0 || strncmp( Inp, "u\n", 2 ) == 0 )
+ {
+ if( Flag.ponder >= 2 ) { Abort = 1; return 0; }
+ if( Counter != 0 )
+@@ -1283,7 +1283,7 @@
+ }
+
+ /* COMMAND: remove (xboard) */
+- if( strncmp( Inp, "remove\n", 7 ) == 0 )
++ if( strncmp( Inp, "remove", 6 ) == 0 )
+ {
+ if( Flag.ponder >= 2 ) { Abort = 1; return 0; }
+ if( Counter > 1 )
+@@ -1309,6 +1309,15 @@
+ return 1;
+ }
+
++/* COMMAND: setboard <FEN> */
++/* added by Pascal Georges */
++ if( strncmp( Inp, "setboard ", 9 ) == 0 )
++ {
++ setfen(Inp+9);
++ Inp[0] = '\0';
++ return 1;
++ }
++
+ /* COMMAND: test a position */
+ if( sevenslashes(Inp) ) /* test */
+ {
+
+diff -ur Phalanx-XXII/phalanx.h Phalanx-XXII-scid/phalanx.h
+--- Phalanx-XXII/phalanx.h 2005-10-03 00:41:14.000000000 +0200
++++ Phalanx-XXII-scid/phalanx.h 2008-07-14 10:45:41.000000000 +0200
+@@ -1,7 +1,7 @@
+ #ifndef PHALANX_INCLUDED
+ #define PHALANX_INCLUDED
+
+-#define VERSION "XXII"
++#define VERSION "XXII-pg"
+
+ #ifdef GNUFUN
+ # include <getopt.h>
+
+diff -ur Phalanx-XXII/README Phalanx-XXII-scid/README
+--- Phalanx-XXII/README 2005-09-21 02:38:39.000000000 +0200
++++ Phalanx-XXII-scid/README 2008-02-03 12:07:09.000000000 +0100
+@@ -1,2 +1,6 @@
++*********************************************************
++[December 2006 : added setboard option - Pascal Georges ]
++*********************************************************
++
+ Phalanx is a chess playing program
+ Copyright (c) 1997, 1998, 1999, 2000 Dusan Dobes