gnushogi.git
10 years agoDo not hardcode squares for camp limits and spare an #ifdef MINISHOGI.
Yann Dirson [Sat, 25 Jan 2014 20:34:34 +0000]
Do not hardcode squares for camp limits and spare an #ifdef MINISHOGI.

10 years agoImprove readability of algbr().
Yann Dirson [Mon, 20 Jan 2014 22:52:49 +0000]
Improve readability of algbr().

10 years agoUpdate TODO list
Yann Dirson [Mon, 20 Jan 2014 21:57:10 +0000]
Update TODO list

10 years agoMark more functions and vars static.
Yann Dirson [Mon, 20 Jan 2014 21:18:18 +0000]
Mark more functions and vars static.

10 years agoRemove more duplicate variable declarations.
Yann Dirson [Mon, 20 Jan 2014 21:12:01 +0000]
Remove more duplicate variable declarations.

10 years agoMove SetTimeControl into tctrl.c.
Yann Dirson [Mon, 20 Jan 2014 21:02:01 +0000]
Move SetTimeControl into tctrl.c.

Nothing display/interface-specific here.

10 years agoDrop more dead code and unused decls.
Yann Dirson [Mon, 20 Jan 2014 21:00:21 +0000]
Drop more dead code and unused decls.

10 years agoGet rid of redundant "barebones" flag, essentially used as synonym for "XSHOGI".
Yann Dirson [Sun, 19 Jan 2014 21:23:03 +0000]
Get rid of redundant "barebones" flag, essentially used as synonym for "XSHOGI".

10 years agoTrivial if/printf's simplifications.
Yann Dirson [Sun, 19 Jan 2014 21:22:14 +0000]
Trivial if/printf's simplifications.

10 years agoMake posting of ponder output default
H.G. Muller [Fri, 27 Sep 2013 08:06:01 +0000]
Make posting of ponder output default

10 years agoUpdate TODO list
Yann Dirson [Sat, 18 Jan 2014 17:33:48 +0000]
Update TODO list

10 years agoStart NEWS entry for 1.5.0
Yann Dirson [Sat, 18 Jan 2014 17:28:13 +0000]
Start NEWS entry for 1.5.0

10 years agoNuke files missed when switching to automake
Yann Dirson [Thu, 16 Jan 2014 22:19:15 +0000]
Nuke files missed when switching to automake

10 years agoMerge branch 'maint'
Yann Dirson [Thu, 16 Jan 2014 21:43:06 +0000]
Merge branch 'maint'

Conflicts:
configure.ac
gnushogi/cursesdsp.h
gnushogi/dspwrappers.c
gnushogi/dspwrappers.h
gnushogi/pattern.c
gnushogi/rawdsp.h

10 years agoBump version to "1.4.1+".
Yann Dirson [Thu, 16 Jan 2014 21:37:30 +0000]
Bump version to "1.4.1+".

10 years agoPrepare v1.4.1
Yann Dirson [Tue, 14 Jan 2014 21:50:32 +0000]
Prepare v1.4.1

10 years agoUpdate maintainership info in AUTHORS.
Yann Dirson [Tue, 14 Jan 2014 21:27:57 +0000]
Update maintainership info in AUTHORS.

10 years agoUpdate copyright info for 2008 (minishogi patches) and recent developments.
Yann Dirson [Tue, 14 Jan 2014 21:27:42 +0000]
Update copyright info for 2008 (minishogi patches) and recent developments.

10 years agoAdd missing copyright info to *-common.c, added by the minishogi patches.
Yann Dirson [Tue, 14 Jan 2014 21:16:52 +0000]
Add missing copyright info to *-common.c, added by the minishogi patches.

10 years agoAdjust comment to prevent licensecheck from considering pattern.c as generated
Yann Dirson [Tue, 14 Jan 2014 21:07:32 +0000]
Adjust comment to prevent licensecheck from considering pattern.c as generated

10 years agoDoc: mention 1.4.1
Yann Dirson [Tue, 14 Jan 2014 21:04:34 +0000]
Doc: mention 1.4.1

10 years agoDoc: more on shogi variants in general, and Mini Shogi in particular.
Yann Dirson [Tue, 14 Jan 2014 21:01:33 +0000]
Doc: more on shogi variants in general, and Mini Shogi in particular.

10 years agoSwitch build to automake, building gnuminishogi officially.
Yann Dirson [Tue, 17 Dec 2013 22:34:53 +0000]
Switch build to automake, building gnuminishogi officially.

10 years agoStop hardcoding filenames inside pat2inc, use commandline parameters.
Yann Dirson [Tue, 17 Dec 2013 20:47:28 +0000]
Stop hardcoding filenames inside pat2inc, use commandline parameters.

10 years agoPrevent pat2inc from silently reading gnushogi.pat when requested file is not found.
Yann Dirson [Tue, 17 Dec 2013 20:37:19 +0000]
Prevent pat2inc from silently reading gnushogi.pat when requested file is not found.

10 years agoMake ReadOpeningSequences easier to read.
Yann Dirson [Tue, 17 Dec 2013 20:35:30 +0000]
Make ReadOpeningSequences easier to read.

10 years agoXshogi: build scanner separately from parser.
Yann Dirson [Sat, 14 Dec 2013 19:37:28 +0000]
Xshogi: build scanner separately from parser.

10 years agoMerge branch 'maint'
Yann Dirson [Sun, 12 Jan 2014 14:30:26 +0000]
Merge branch 'maint'

10 years agoBump version to "1.4.1-rc1+".
Yann Dirson [Sun, 12 Jan 2014 14:30:05 +0000]
Bump version to "1.4.1-rc1+".

10 years agoFix "make distclean" when there is no editor backup file to remove.
Yann Dirson [Wed, 18 Dec 2013 20:44:10 +0000]
Fix "make distclean" when there is no editor backup file to remove.

10 years agoPrepare v1.4.1rc1.
Yann Dirson [Wed, 18 Dec 2013 20:34:08 +0000]
Prepare v1.4.1rc1.

10 years agoAdd build support for win32 on cygwin (gcc3).
Yann Dirson [Mon, 16 Dec 2013 23:00:46 +0000]
Add build support for win32 on cygwin (gcc3).

10 years agoGet rid of Makefile.profile, document flags to use in README.maint instead.
Yann Dirson [Tue, 17 Dec 2013 22:26:26 +0000]
Get rid of Makefile.profile, document flags to use in README.maint instead.

We don't want to maintain Makefile.profile as a quasi-copy of main Makefile,
that's not a good practice at all.

10 years agoKill dead code in pat2inc.
Yann Dirson [Tue, 17 Dec 2013 20:25:35 +0000]
Kill dead code in pat2inc.

10 years agoMinor pat2inc code cleanups
Yann Dirson [Tue, 17 Dec 2013 20:25:19 +0000]
Minor pat2inc code cleanups

10 years agoDrop useless defines for pat2inc build.
Yann Dirson [Tue, 17 Dec 2013 20:11:59 +0000]
Drop useless defines for pat2inc build.

10 years agoUse .texi suffix, preferred to .texinfo.
Yann Dirson [Tue, 17 Dec 2013 22:39:10 +0000]
Use .texi suffix, preferred to .texinfo.

10 years agoFix ordering of include dirs.
Yann Dirson [Mon, 16 Dec 2013 21:52:53 +0000]
Fix ordering of include dirs.

Local headers first, then build dir, then src dir.

10 years agoMinor makefile improvements
Yann Dirson [Mon, 16 Dec 2013 21:53:23 +0000]
Minor makefile improvements

10 years agoMove into opts.h the "mostly for hacking" remark from INSTALL file.
Yann Dirson [Sun, 15 Dec 2013 11:45:02 +0000]
Move into opts.h the "mostly for hacking" remark from INSTALL file.

10 years agoMerge branch 'maint' into master
Yann Dirson [Thu, 5 Dec 2013 22:31:07 +0000]
Merge branch 'maint' into master

10 years agoUpdate .gitignore for doc/ dir.
Yann Dirson [Thu, 5 Dec 2013 22:23:19 +0000]
Update .gitignore for doc/ dir.

10 years ago#define _POSIX_C_SOURCE to get proper access to snprintf and vsnprintf.
Yann Dirson [Thu, 5 Dec 2013 22:18:31 +0000]
#define _POSIX_C_SOURCE to get proper access to snprintf and vsnprintf.

10 years agoUse POSIX setvbuf in preference to BSD setlinebuf.
Yann Dirson [Thu, 5 Dec 2013 22:13:44 +0000]
Use POSIX setvbuf in preference to BSD setlinebuf.

This avoids implicit declaration of setlinebuf with GNU libc, which would
have required to define _BSD_SOURCE just to get rid of, and is not an
innocuous setting.

Drop call to no-op AC_FUNC_SETVBUF_REVERSED at the same time.

10 years agoFully quote autoconf macro arguments, as they should.
Yann Dirson [Thu, 5 Dec 2013 22:10:37 +0000]
Fully quote autoconf macro arguments, as they should.

10 years agoBump version to "1.4.1-rc0+".
Yann Dirson [Thu, 5 Dec 2013 22:03:01 +0000]
Bump version to "1.4.1-rc0+".

10 years agoGenerate HTML doc using makeinfo, instead of obsolecent texi2html
Yann Dirson [Thu, 5 Dec 2013 20:19:06 +0000]
Generate HTML doc using makeinfo, instead of obsolecent texi2html

11 years agoMinor cleanups.
Yann Dirson [Sat, 9 Nov 2013 22:44:21 +0000]
Minor cleanups.

11 years agoProvide "sd <n>" as (primary) alias of "depth <n>" for xboard conformance.
Yann Dirson [Sat, 9 Nov 2013 22:43:42 +0000]
Provide "sd <n>" as (primary) alias of "depth <n>" for xboard conformance.

11 years agoAllow "depth <n>" syntax.
Yann Dirson [Sat, 9 Nov 2013 22:41:44 +0000]
Allow "depth <n>" syntax.

11 years agoMention all supported commands in Raw_help.
Yann Dirson [Sat, 9 Nov 2013 22:32:11 +0000]
Mention all supported commands in Raw_help.

Still have to figure out what some of them do :)

11 years agoRemove support for -DNOPOST, and duplicate code it would introduce.
Yann Dirson [Sat, 9 Nov 2013 22:07:51 +0000]
Remove support for -DNOPOST, and duplicate code it would introduce.

This define would probably not have worked today anyway...

11 years agoReintroduce printf in Raw_help.
Yann Dirson [Sat, 9 Nov 2013 22:02:33 +0000]
Reintroduce printf in Raw_help.

There is no problem anymore with using printf here now that we don't use
CP[] anymore.  Well, that was not such a big problem anyway even then :]

11 years agoRestore interactive "level" mode in xshogi proto, by dropping trailing newline in...
Yann Dirson [Sat, 9 Nov 2013 21:54:37 +0000]
Restore interactive "level" mode in xshogi proto, by dropping trailing newline in GetString.

Not very interesting in itself, except that bug was causing some code to
be dead in Raw_SelectLevel, and several similar functions should be made
similar to that one to implement xboard protocol correctly.

11 years agoMove "offset to command args" to InputCommand.
Yann Dirson [Sat, 9 Nov 2013 17:03:32 +0000]
Move "offset to command args" to InputCommand.

11 years agoStatify more functions.
Yann Dirson [Sat, 9 Nov 2013 17:02:48 +0000]
Statify more functions.

11 years agoRefactor InputCommand, removing last need for NOT_CURSES macro.
Yann Dirson [Sat, 9 Nov 2013 16:56:06 +0000]
Refactor InputCommand, removing last need for NOT_CURSES macro.

11 years agoRefactor needlessly-complicated Raw_SelectLevel.
Yann Dirson [Sat, 9 Nov 2013 16:54:11 +0000]
Refactor needlessly-complicated Raw_SelectLevel.

11 years agoDeal with simple compiler warnings: dead code, unused parameters, etc.
Yann Dirson [Wed, 6 Nov 2013 23:06:47 +0000]
Deal with simple compiler warnings: dead code, unused parameters, etc.

11 years agoWhitespace and parenthesis cleanup.
Yann Dirson [Wed, 6 Nov 2013 21:18:36 +0000]
Whitespace and parenthesis cleanup.

11 years agoSwitch display-selection framework from dspwrappers to "struct display".
Yann Dirson [Wed, 6 Nov 2013 21:33:03 +0000]
Switch display-selection framework from dspwrappers to "struct display".

Much easier to write, will allow to correctly separate raw from xshogi,
to add proper xboard support, etc.

11 years agoDrop -pedantic from default gcc flags and restore use of explicit initializer fields.
Yann Dirson [Wed, 6 Nov 2013 21:22:51 +0000]
Drop -pedantic from default gcc flags and restore use of explicit initializer fields.

This flag includes warnings for the explicit initializer construct,
but it is much too useful.

11 years agoPrepare v1.4.1rc0.
Yann Dirson [Thu, 7 Nov 2013 21:24:01 +0000]
Prepare v1.4.1rc0.

11 years agoUpdate manual for maintainer, project communication, and plans.
Yann Dirson [Thu, 7 Nov 2013 21:23:27 +0000]
Update manual for maintainer, project communication, and plans.

11 years agoUpdate TODO: there are plans for v1.5, and things have been done.
Yann Dirson [Thu, 7 Nov 2013 21:08:14 +0000]
Update TODO: there are plans for v1.5, and things have been done.

11 years agoFix "make dist" not to include a recursive copy of the dist.
Yann Dirson [Tue, 5 Nov 2013 22:10:24 +0000]
Fix "make dist" not to include a recursive copy of the dist.

11 years agoFix formatting of boards in texinfo doc.
Yann Dirson [Tue, 5 Nov 2013 21:56:47 +0000]
Fix formatting of boards in texinfo doc.

11 years agoUpdate NEWS file for upcoming 1.4.1.
Yann Dirson [Tue, 5 Nov 2013 21:09:58 +0000]
Update NEWS file for upcoming 1.4.1.

11 years agoRemove version number from manpage.
Yann Dirson [Tue, 5 Nov 2013 21:03:08 +0000]
Remove version number from manpage.

It was not very useful there, and has been out of sync with the software
version anyway.

11 years agoRemove unused obsolete version numbers from Makefiles.
Yann Dirson [Tue, 5 Nov 2013 21:02:17 +0000]
Remove unused obsolete version numbers from Makefiles.

11 years agoTake note of more cleanups to do.
Yann Dirson [Sun, 20 Oct 2013 18:52:39 +0000]
Take note of more cleanups to do.

11 years agoMove hashfile definition from configure.ac into Makefile.in
Yann Dirson [Sun, 20 Oct 2013 19:41:47 +0000]
Move hashfile definition from configure.ac into Makefile.in

Like other similar defs...

11 years agoUse configure --enable-minishogi to select build of gnuminishogi.
Yann Dirson [Sun, 20 Oct 2013 19:29:45 +0000]
Use configure --enable-minishogi to select build of gnuminishogi.

At the same time, provide an empty gnuminishogi.tbk so things work more
as they should.

Only the patterns are still necessary to specify manually at this point.

11 years agoFix mini-Shogi out-of-bounds acces of board
H.G. Muller [Fri, 27 Sep 2013 07:37:45 +0000]
Fix mini-Shogi out-of-bounds acces of board

11 years agoAvoid looking at the game type to determine minishogi piece values.
Yann Dirson [Wed, 28 Sep 2011 22:12:07 +0000]
Avoid looking at the game type to determine minishogi piece values.

We don't know how to determine the game type anyway, and a previous
patch disables its computation, but no need to compile dead code in this
case.

Another problem to look at is that "in_opening_stage" is surely
badly tuned for MiniShogi, but the program seems to score better with
current code that by telling there is opening stage.

Flag FIXME's where applicable so some willing soul would know where to
find things to improve for MiniShogi.

11 years agoDisable GuessGameType() for MiniShogi.
Yann Dirson [Wed, 28 Sep 2011 21:27:03 +0000]
Disable GuessGameType() for MiniShogi.

Game types for MiniShogi are surely different from the ones in Shogi, so
this would require serious thought to get it right.  Just pretend we don't
know.

11 years agoFix ScorePosition() for MiniShogi.
Yann Dirson [Wed, 28 Sep 2011 21:25:24 +0000]
Fix ScorePosition() for MiniShogi.

Gcc's stack-smashing protection combined with glibc's -D_FORTIFY_SOURCE
detected with a segfault that we were using 9x9-board offsets on our 5x5
board.  This patch abstracts the relevant hardcoded constants and provides
correct values for MiniShogi.

11 years agoGenerate patterns.inc at build time.
Yann Dirson [Mon, 11 Feb 2008 00:47:01 +0000]
Generate patterns.inc at build time.

11 years agoInitial attempt at minishogi.
Yann Dirson [Mon, 11 Feb 2008 00:47:00 +0000]
Initial attempt at minishogi.

This preliminar minishogi takes the approach of conditional
compilation, so I can focus on differences between shogi and
minishogi.  Those ifdef's are expected to progressively disappear as
the support code is made generic enough to support the needs of both
variants.

11 years agoFix various regression for building out of tree.
Yann Dirson [Sun, 20 Oct 2013 20:07:19 +0000]
Fix various regression for building out of tree.

Most notably, doc was never buildable out of tree, but the recent build
enhancements did not take that into account.

11 years agoWindows port
H.G. Muller [Fri, 27 Sep 2013 07:39:28 +0000]
Windows port

This patch makes GNU Shogi compilable with gcc under Cygwin, using the
-mno-cygwin flag, so that it can run as a native Windows application,
independent of Cygwin1.dll.

The patch is fully conditional, based on defined(WIN32).

YD: rebased onto recent refactorings

11 years agoNormalize configure --help using AS_HELP_STRING.
Yann Dirson [Sun, 3 Nov 2013 14:00:20 +0000]
Normalize configure --help using AS_HELP_STRING.

11 years agoDon't bail out if configure (without --with-curses) does not find libcurses.
Yann Dirson [Sun, 3 Nov 2013 14:00:19 +0000]
Don't bail out if configure (without --with-curses) does not find libcurses.

Only fail when --with-curses was requested and libcurses cannot be found.

11 years agoFix funny search-and-replace copyright typo.
Yann Dirson [Sun, 3 Nov 2013 14:00:18 +0000]
Fix funny search-and-replace copyright typo.

11 years agoUse centralized version from configure.ac, drop use of separate patchlevel.
Yann Dirson [Sun, 3 Nov 2013 14:00:16 +0000]
Use centralized version from configure.ac, drop use of separate patchlevel.

11 years agoMove strings back into source code, from .lng support.
Yann Dirson [Sun, 3 Nov 2013 14:00:13 +0000]
Move strings back into source code, from .lng support.

* there is no point in translating the protocol
* if someone wants to translate the curses UI, this should be done with
  gettext

11 years agoMove ElapsedTime to tcontrl.c, now that there is a single implementation.
Yann Dirson [Wed, 23 Oct 2013 21:31:45 +0000]
Move ElapsedTime to tcontrl.c, now that there is a single implementation.

11 years agoMake UpdateClocks and input-polling dspwrappers-based too.
Yann Dirson [Wed, 23 Oct 2013 21:27:46 +0000]
Make UpdateClocks and input-polling dspwrappers-based too.

Those things are the only thing called from ElapsedTime() to be different
between Curses and Raw/X, and were not abstracted yet.

The poll-based polling code was not called from within ElapsedTime(), which
made it less frequently called, but that did not seem to be a problem.  And
it was redundant in Curses mode with the FIONREAD call.

11 years agoFix regression with stdarg dspwrappers.
Yann Dirson [Mon, 21 Oct 2013 22:51:02 +0000]
Fix regression with stdarg dspwrappers.

1be442641b610fa1b6172a38d9acffe2d22797b6 and
3f589711eb3ecc7644378d6a0f2f29bc4b4c7db9 are both broken, passing the
va_list inside another va_list to poor unsuspecting backend implementations.

11 years agoFixed minor regression in makepatter.
Yann Dirson [Sat, 19 Oct 2013 20:22:02 +0000]
Fixed minor regression in makepatter.

In 6cdb4afe21c8d0eb740a6a22a02a0adf922fddfc, I messed up a conditional
causing an error message to be written even when we did find a pattern file.

11 years agoFix build of --with-curses mode.
Yann Dirson [Sat, 19 Oct 2013 20:02:52 +0000]
Fix build of --with-curses mode.

Broken by 6030715dffdadf4402dccf6a8bf9966cfab2be1d and not checked soon enough :(

11 years agoDrop non-curses support from Curses_ElapsedTime.
Yann Dirson [Sat, 19 Oct 2013 19:47:18 +0000]
Drop non-curses support from Curses_ElapsedTime.

Similar to 58e443e7ec0d834fe75a9eda53f4cfaf7f8b106c, was a remnant from
before 4a9acd2e4d21586f2af629ec44cd78c237dcd702.

11 years agoDrop NOT_CURSES occurences from makepattern.
Yann Dirson [Sat, 19 Oct 2013 19:44:25 +0000]
Drop NOT_CURSES occurences from makepattern.

Why on earth are we supposing that pat2inc would run in Curses mode one day ?

11 years agoConvert more stuff from #ifdef to dspwrappers: SetupBoard.
Yann Dirson [Sat, 19 Oct 2013 19:43:25 +0000]
Convert more stuff from #ifdef to dspwrappers: SetupBoard.

Not a very big problem since that function is not curses-only this time,
but raw-only.  But this is the natural continuation of the "nuke NOT_CURSES"
movement.

11 years agoStop exporting Curses-internal functions to everyone.
Yann Dirson [Sat, 19 Oct 2013 19:33:37 +0000]
Stop exporting Curses-internal functions to everyone.

Possible since cursesdsp is now self-contained.

11 years agoFinish the --without-curses support.
Yann Dirson [Sat, 19 Oct 2013 19:27:11 +0000]
Finish the --without-curses support.

Now that all the silly problems refering to Curses-specific functions from
unrelated places are all solved, we can spare linking cursesdsp when not
required.

11 years agoRemove dead Curses-specific code from Raw_ElapsedTime()
Yann Dirson [Sat, 19 Oct 2013 19:25:44 +0000]
Remove dead Curses-specific code from Raw_ElapsedTime()

11 years agoRemove useless explicit prototype for pow().
Yann Dirson [Sat, 19 Oct 2013 19:19:29 +0000]
Remove useless explicit prototype for pow().

11 years agoChange ElapsedTime to a normal display function.
Yann Dirson [Sat, 19 Oct 2013 17:07:12 +0000]
Change ElapsedTime to a normal display function.

The FIONREAD version is clearly tied to Curses, and the NOFIONREAD works
corectly with xshogi/xboard as well as Raw.  No reason for a separate
mechanism.

--without-curses now builds as expected.

11 years agoMake spacing consistent in *dsp.c, kill unused global hidden between funcs.
Yann Dirson [Sat, 19 Oct 2013 15:48:45 +0000]
Make spacing consistent in *dsp.c, kill unused global hidden between funcs.