11 years agoGame-List options dialog for XBoard
H.G. Muller [Fri, 29 Jan 2010 20:47:47 +0000 (21:47 +0100)]
Game-List options dialog for XBoard

A dialog similar to that of WinBoard was cloned from the game-list
window. The XBoard front-end is in a separate file xgamelistopt.c,
which in fact implements most of the low-level front-end as back-end.

11 years agoRefactoring of game-list-options dialog
H.G. Muller [Fri, 29 Jan 2010 11:48:50 +0000 (12:48 +0100)]
Refactoring of game-list-options dialog

The back-end part is separated off, and moved to a file gamelistopt.c.
Front-end for now stays in winboard.c. No prototypes in frontend.h yet.

11 years agoFix of ancient WB bug: test integer option values for validity
H.G. Muller [Tue, 26 Jan 2010 18:28:43 +0000 (19:28 +0100)]
Fix of ancient WB bug: test integer option values for validity

Only a string of digits preceded by an optional sign is accepted now.
Before, any string was accepted, and leaving out a value could lead to
the next option being ignored (if it did not need a value) because it
was considered the value for the previous one!

11 years agoFix bug in edit-position of holdings
H.G. Muller [Tue, 26 Jan 2010 18:00:54 +0000 (19:00 +0100)]
Fix bug in edit-position of holdings

The holdings were effectivelly taken one too large, so that a promoted
shogi Pawn moved to, or created in the holdings was not demoted to Pawn,
but put in the dark (which you could see by the holding count if you did
it twice). The overflow tests in these two cases now have been corrected.

11 years agoSave fonts in XBoard settings file per boardSize
H.G. Muller [Mon, 25 Jan 2010 12:54:40 +0000 (13:54 +0100)]
Save fonts in XBoard settings file per boardSize

Each -boardSize now can have its own font specified in the settings file
(and thus by a command-line option, although it would in general not be
very useful to specify a font for a size other than the selected). E.g.
a prefix "size33:" to the font name will apply it only to -size 33.
An unspecified-size font option (not normally in the settings file) will
always prevail over a font option specific for the current size.
A font of some size must have been used or specified in order to be

11 years agoFix width of filter field in XBoard GameList
H.G. Muller [Mon, 25 Jan 2010 07:56:35 +0000 (08:56 +0100)]
Fix width of filter field in XBoard GameList

An empirical dependence of the width of this text edit on the square
size now makes for an acceptable layout at any board size.

11 years agoUse FICS atomic draw claim for sending move in zippy mode
H.G. Muller [Sun, 24 Jan 2010 18:09:45 +0000 (19:09 +0100)]
Use FICS atomic draw claim for sending move in zippy mode

For this the relaying of the move had to be moved until after the
adjudication, which again has to be done after MakeMove(), which is a
bit dubious, as MakeMove might take significant time when animating.

11 years agoSend FICS atomic claim to ICS if move creates draw after offer
H.G. Muller [Sun, 24 Jan 2010 17:51:38 +0000 (18:51 +0100)]
Send FICS atomic claim to ICS if move creates draw after offer

The FICS format "draw MOVE" is used to send the move to the ICS  when
the user enters a move that adjudicates as a claimable draw, and he
offered a draw before the move. For the benefit of ICS that do not
understand this format, the plain move is sent afterwards.

11 years agoAlso allow user to claim by offering draw before his move
H.G. Muller [Sun, 24 Jan 2010 17:16:14 +0000 (18:16 +0100)]
Also allow user to claim by offering draw before his move

Use the existing userOfferedDraw variable to test for such offers in

11 years agoAlso adjudicate after user move
H.G. Muller [Sun, 24 Jan 2010 16:29:42 +0000 (17:29 +0100)]
Also adjudicate after user move

Call Adjudicate() in FinishMove().

11 years agoRefactoring of adjudication code
H.G. Muller [Sun, 24 Jan 2010 14:56:56 +0000 (15:56 +0100)]
Refactoring of adjudication code

Put all the rule-based (as opposed to score-based) adjudications in a
separate routine, so they can also be called on user moves. This
requires sending the drawing move to the opponent engine to be made
conditional on existence of the latter. Execution of the code is no
longer dependent on the condition TwoMachinesPlay, but actual game
terminations are now all restricted by an alternative condition (no ICS

11 years agoUse -keepAlive option to determine connection health
H.G. Muller [Sun, 24 Jan 2010 10:46:30 +0000 (11:46 +0100)]
Use -keepAlive option to determine connection health

When there has been no ICS response since the previous 'ping', assume we
are disconnected and do a fatal-error exit. Also auto-start the ping
process in InitBackend3().

11 years agoUse arrow keys in XBoard GameList for entry selection
H.G. Muller [Sat, 23 Jan 2010 22:00:10 +0000 (23:00 +0100)]
Use arrow keys in XBoard GameList for entry selection

Add translations for arrows and home/end, to call LoadSelectedProc with
argument to indicate the step, and let the latter perform the action.

11 years agoAllow <Enter> to apply filter in XB GameList filter edit
H.G. Muller [Sat, 23 Jan 2010 21:24:20 +0000 (22:24 +0100)]
Allow <Enter> to apply filter in XB GameList filter edit

Apply a translation to intercept the <Enter> key. Set focus back to the
list display afterwards.

11 years agoAccept <Enter> for changing chat partner
H.G. Muller [Sat, 23 Jan 2010 20:44:36 +0000 (21:44 +0100)]
Accept <Enter> for changing chat partner

A kludge stolen from Alessandro's GameList filter allowed to let the
typing of <Enter> while updating the chat-partner field of the WinBoard
chat windows to act as pressing the Change button. Gives focus to the
input field of the window afterwards.

11 years agoMove duplicat gamelist code to backend
H.G. Muller [Sat, 23 Jan 2010 20:42:38 +0000 (21:42 +0100)]
Move duplicat gamelist code to backend

The filtering routines are moved from xgamelist.c and wgamelist.c to
gamelist.c, and a prototype for them is placed in backend.h.

11 years agoPort game-list filtering to XBoard
H.G. Muller [Sat, 23 Jan 2010 18:29:18 +0000 (19:29 +0100)]
Port game-list filtering to XBoard

Added a text edit and apply button to the XBoard game-list dialog, and
only have it print those lines that match the filter. Translate index in
list to index of game in file when a game is selected, and index in file
to index in list when a line is highlighted. Duplicates some code
between xgamelist.c and wgamelist.c, which should be moved to back-end.

11 years agoConvert to DOS line endings
H.G. Muller [Thu, 21 Jan 2010 18:24:49 +0000 (19:24 +0100)]
Convert to DOS line endings

For easier understanding of upcoming diffs of winboard.c

11 years agoRefactoring of move-history code
H.G. Muller [Thu, 21 Jan 2010 13:32:46 +0000 (14:32 +0100)]
Refactoring of move-history code

The WinBoard code in whistory.c was split in a front-end part (remaining
in whistory.c) and a back-end part (now in history.c in the xboard
directory). This to allow easy porting to other platforms.

11 years agoAdd fixed-time/move button in XBoard time-control dialog
H.G. Muller [Wed, 20 Jan 2010 11:48:30 +0000 (12:48 +0100)]
Add fixed-time/move button in XBoard time-control dialog

Put the TC-type buttons in a radio-group, and highlight the selected mode.

11 years agoFix bug in XBoard PV display
H.G. Muller [Tue, 19 Jan 2010 17:27:14 +0000 (18:27 +0100)]
Fix bug in XBoard PV display

The PV was unloaded on anything but a button release, in stead of the
other way around.

11 years agofixed hardcoded location of config file for xboard
Arun Persaud [Sat, 23 Jan 2010 19:04:11 +0000 (11:04 -0800)]
fixed hardcoded location of config file for xboard

the location should now follow sysconfdir during the configuration process.
Also added some more output to the configure script.

11 years agonew developer release master-20100118
Arun Persaud [Mon, 18 Jan 2010 20:18:32 +0000 (12:18 -0800)]
new developer release

11 years agofixed Makefile.am to handle config file correctly
Arun Persaud [Mon, 18 Jan 2010 20:15:06 +0000 (12:15 -0800)]
fixed Makefile.am to handle config file correctly

11 years agoChange opening array -variant fairy
H.G. Muller [Fri, 15 Jan 2010 20:55:29 +0000 (21:55 +0100)]
Change opening array -variant fairy

We now use the position of "Chess with Different Armies", FIDE army vs.
a fantasy army (inspired on the Color-bound Clobberers) as opening

11 years agoAdd variant Makruk
H.G. Muller [Wed, 13 Jan 2010 18:08:45 +0000 (19:08 +0100)]
Add variant Makruk

Thai Chess, played by 2 million world-wide. Required pawn promotion to
happen in a zone, and the Alfil to move as Shogi Silver, a new opening
array, and unusual Pawn placement. Because of the latter, I consider it
a setup position, so a FEN will always be sent to the engine.

11 years agoFix parsing of O-O and O-O-O after FEN pasting in FRC
H.G. Muller [Sun, 17 Jan 2010 13:17:10 +0000 (14:17 +0100)]
Fix parsing of O-O and O-O-O after FEN pasting in FRC

Because the initial rights were not set in the FEN reader, the
initial rights of the previous game remained in force, so that the
parser did not understand OO-castling (although it would allow KxR

11 years agoFix reading FEN castling rights for knightmate and twokings
H.G. Muller [Fri, 15 Jan 2010 13:40:43 +0000 (14:40 +0100)]
Fix reading FEN castling rights for knightmate and twokings

Scanning the back-rank for a King did not work in these variants,
because either the Unicorn castles, or there might be two Kings.

11 years agoFix omission in castling refactoring for ICS received boards
H.G. Muller [Wed, 13 Jan 2010 10:42:52 +0000 (11:42 +0100)]
Fix omission in castling refactoring for ICS received boards

A default of -1 was still used, in stead of NoRights, when no Rook was
found. In theory this could have had effect in a setup board 0 in FRC,
when there were no Rooks on the back rank.

11 years agoFix TwoKings ICS castling-rights bug
H.G. Muller [Wed, 13 Jan 2010 10:35:34 +0000 (11:35 +0100)]
Fix TwoKings ICS castling-rights bug

Scanning the rank (as is done because of FRC) assigned castling rights
to the rightmost King. Even scanning the opposite direction would not
work, as it is not always the eftmost King that can castle. So we now
explicitly test for a King on e1/e8 in TwoKings and assign it rights,
relying on the Rook rights received from the ICS to control castling.

11 years agofix double start of zippy engine after switch to gothic
H.G. Muller [Thu, 19 Nov 2009 03:12:25 +0000 (19:12 -0800)]
fix double start of zippy engine after switch to gothic

In ICS mode we now switch to the proper variant as soon as we receive
the generic game-start message, to prevent a mismatch when the first
board is received (which would trigger fetching of a move list).

11 years agoExtensive bugfix of -autoKibitz
H.G. Muller [Mon, 11 Jan 2010 15:44:40 +0000 (16:44 +0100)]
Extensive bugfix of -autoKibitz

Suppression of printing of diverted kibitz messages failed when they
extended over more than one read. This could even lead to such
messages being erroneously saved as comments, which then lead to
crashes. The suppression mechanism now waits for a prompt, in stead of
the end of buffer. This required the printing of any leftover in the
buffer to be deferred until the next read completes it.
The number of people kibitzed to is now printed.

11 years agoFix piece-to-char table -variant fairy
H.G. Muller [Mon, 11 Jan 2010 15:30:59 +0000 (16:30 +0100)]
Fix piece-to-char table -variant fairy

The letters for Lance and Snake where swapped.

11 years agoMake WinBoard makefiles use parser.c in XBoard directory
H.G. Muller [Sat, 9 Jan 2010 10:54:20 +0000 (11:54 +0100)]
Make WinBoard makefiles use parser.c in XBoard directory

11 years agoDocs update for new features
H.G. Muller [Fri, 8 Jan 2010 17:23:39 +0000 (18:23 +0100)]
Docs update for new features

11 years agoFix new args parsing of -lowTimeWarningColor
H.G. Muller [Fri, 8 Jan 2010 14:18:37 +0000 (15:18 +0100)]
Fix new args parsing of -lowTimeWarningColor

This did not occur in the XBoard color translation table yet.

11 years agoAllow editing of holdings in EditPosition mode
H.G. Muller [Fri, 8 Jan 2010 13:16:59 +0000 (14:16 +0100)]
Allow editing of holdings in EditPosition mode

Dragging pieces to and from the holdings now consistently keep track of
the home square of pieces and the piece counts, as does creation of
pieces in the holdings through the piece menu.

11 years agoIndicate squares a lifted piece can legally move to
H.G. Muller [Fri, 8 Jan 2010 12:59:57 +0000 (13:59 +0100)]
Indicate squares a lifted piece can legally move to

Under control of the new option -showTargetSquares when
-highlightDragging and -testLegality are on, the squares a piece can
move to are marked by fat dots in the highlightColor (non-captures) and
premoveHighlightColor (captures), as soon as you grab it for dragging.
In variants with mandatory capture, the capture target of other pieces
is marked with the highlightColor (as non-captures are then not allowed).

11 years agoFix bug for incommensurate time odds
H.G. Muller [Fri, 8 Jan 2010 11:35:10 +0000 (12:35 +0100)]
Fix bug for incommensurate time odds

After normalization (-timeOddsMode 1) the time odds factors can be
non-integer, and thus must be stored as float.

11 years agoDisplay PV right-clicked from EngineOutput window
H.G. Muller [Fri, 8 Jan 2010 10:41:26 +0000 (11:41 +0100)]
Display PV right-clicked from EngineOutput window

The clicked PV is selected and the memo gets focus, so that it is
highlighted. This selection is restored in the proper place after
insetrtion of a new line in the memo.

11 years agoDisplay PV on right-clicking board
H.G. Muller [Fri, 8 Jan 2010 09:19:32 +0000 (10:19 +0100)]
Display PV on right-clicking board

11 years agoBugfix legality null move in parsing with -testLegality off
H.G. Muller [Fri, 8 Jan 2010 08:21:04 +0000 (09:21 +0100)]
Bugfix legality null move in parsing with -testLegality off

The pointers were compared, in stead of the values.
Furthermore, instead of null moves, it rejected moves on the main diagonal when legality checking was off.

Also exclude moves with empty squares and enemy pieces.

11 years agoNewly lexed winboard/parser.c
H.G. Muller [Thu, 7 Jan 2010 18:10:39 +0000 (19:10 +0100)]
Newly lexed winboard/parser.c

11 years agoHarmonize declarations of XBoard and WinBoard
H.G. Muller [Thu, 7 Jan 2010 18:05:17 +0000 (19:05 +0100)]
Harmonize declarations of XBoard and WinBoard

The engine-exit and settings patches make some stuff common to WinBoard
and XBoard, which needed to be harmonized, and is moved to frontend.h.

11 years agoAllow Ctrl-C copying from EngineOutput window text to clipboard
H.G. Muller [Thu, 7 Jan 2010 12:07:57 +0000 (13:07 +0100)]
Allow Ctrl-C copying from EngineOutput window text to clipboard

11 years agoAllow popup-less (fatal) exit of engine after tellusererror
H.G. Muller [Thu, 7 Jan 2010 11:52:17 +0000 (12:52 +0100)]
Allow popup-less (fatal) exit of engine after tellusererror

11 years agoImprove layout of Engine #N Settings dialog
H.G. Muller [Thu, 7 Jan 2010 11:40:12 +0000 (12:40 +0100)]
Improve layout of Engine #N Settings dialog

An attempt is made to align the input fields of spins and text-edits

11 years agoLet XBoard print version with argument --version or -v
H.G. Muller [Wed, 6 Jan 2010 23:31:11 +0000 (00:31 +0100)]
Let XBoard print version with argument --version or -v

11 years agoFix castling rule assignment in shuffle games
H.G. Muller [Wed, 6 Jan 2010 23:25:57 +0000 (00:25 +0100)]
Fix castling rule assignment in shuffle games

The conversion to in-board storage for rights copied directly to boards[0] in steadof
initialPosition, and was then overwritten when the latter was copied with uninitialized
rights to boards[0]. This affected FRC and CRC, where rights are non-standard.

11 years agoImplement castling in -variant caparandom
H.G. Muller [Wed, 6 Jan 2010 23:17:25 +0000 (00:17 +0100)]
Implement castling in -variant caparandom

CRC should be treated as FRC, but until now it never was. We now test for FRC_TYPE_CASTLING.

11 years agoFix default castling rights on reading incomplete FEN
H.G. Muller [Wed, 6 Jan 2010 23:09:18 +0000 (00:09 +0100)]
Fix default castling rights on reading incomplete FEN

This was overlooked in the conversion to the in-board storage of rights.

11 years agoFix NoncompliantFEN defaults.
H.G. Muller [Wed, 6 Jan 2010 23:03:09 +0000 (00:03 +0100)]
Fix NoncompliantFEN defaults.

This must be NULL to get compliant FENs, not "", which would suppress castling and e.p. fields.

11 years agoChange format of -adapterCommand.
H.G. Muller [Wed, 6 Jan 2010 22:54:49 +0000 (23:54 +0100)]
Change format of -adapterCommand.

first or f at the start of an option name are now automatically changed into second or s,
rather than needing %% to be recognized. The values of -ec and -ed in the default
-adapterCommand are now quoted (now XBoard understands quoting in the engine command line).

11 years agoMake WinBoard defaults for -fd and -sd equal to "." rather than empty strings.
H.G. Muller [Wed, 6 Jan 2010 22:51:16 +0000 (23:51 +0100)]
Make WinBoard defaults for -fd and -sd equal to "." rather than empty strings.

11 years agoDelete old indirection settings-file code
H.G. Muller [Wed, 6 Jan 2010 22:28:47 +0000 (23:28 +0100)]
Delete old indirection settings-file code

11 years agoCorrect XBoard default debug file name
H.G. Muller [Wed, 6 Jan 2010 20:45:14 +0000 (21:45 +0100)]
Correct XBoard default debug file name

11 years agoSuppress saving font settings.
H.G. Muller [Wed, 6 Jan 2010 20:34:48 +0000 (21:34 +0100)]
Suppress saving font settings.

The fonts are size dependent, and might thus not be reusable in the next
session. For now we therefore suppress the saving of them in the
settings file, until we diversify the fonts per boardSize.

11 years agoadded missing sounds files to be able to compile on windows
Arun Persaud [Sun, 13 Dec 2009 07:38:20 +0000 (23:38 -0800)]
added missing sounds files to be able to compile on windows

12 years agoChanges needed to compile master branch.
Eric Mullins [Thu, 10 Dec 2009 00:29:37 +0000 (17:29 -0700)]
Changes needed to compile master branch.

12 years agoimplements the eval-graph window for XBoard
H.G. Muller [Sun, 6 Dec 2009 20:11:46 +0000 (12:11 -0800)]
implements the eval-graph window for XBoard

12 years agoimproves the XBoard handling of the engine command line
H.G. Muller [Sun, 6 Dec 2009 19:58:34 +0000 (11:58 -0800)]
improves the XBoard handling of the engine command line

it now understands limited forms of quoting, so engine binaries with spaces in their file name can be handled.

12 years agoA better and more flexible way of invoking Polyglot
H.G. Muller [Sun, 6 Dec 2009 19:56:40 +0000 (11:56 -0800)]
A better and more flexible way of invoking Polyglot

rewrote uci.c. No more use of temporary files, all data passed through the engine command line. Adds a new command-line option -adapterCommand for this.

12 years agoremove trailing \r in xboard output
H.G. Muller [Sun, 6 Dec 2009 19:34:50 +0000 (11:34 -0800)]
remove trailing \r in xboard output

there is an annoying carriage return (displayed as ^M) at the end of the PV in the engine-output window, not
only with Fairy-Max, but also with UCI engine running under Polyglot. This patch replaces the trailing CR that Linux programs send after the PV line y a space.

12 years agodouble buffer size to prevent overflow
H.G. Muller [Sun, 29 Nov 2009 19:56:32 +0000 (11:56 -0800)]
double buffer size to prevent overflow

This patch doubles the size of the ICS input buffer to 16KB, to prevent
the suspected overflow with -keepLineBreaksICS false when using
"inchannel 1" on FICS and over 500 people are tuned in.

12 years agofix problem with empty string in -firstNeedsNoncompliantFEN
H.G. Muller [Sat, 28 Nov 2009 21:33:52 +0000 (13:33 -0800)]
fix problem with empty string in -firstNeedsNoncompliantFEN

This fixes a bug in the use of the -firstNeedsNoncompliantFEN option with
an empty string as argument. (Which led to truncation of the FEN.)

12 years agoupdates makefiles to include dependency on config.h
H.G. Muller [Sat, 28 Nov 2009 21:32:12 +0000 (13:32 -0800)]
updates makefiles to include dependency on config.h

adds the dependency of wbres.o on config.c introduced by having the VersionInfo in the resource

12 years agocorrectly apply some check boxes from the option menu
H.G. Muller [Sat, 28 Nov 2009 21:28:00 +0000 (13:28 -0800)]
correctly apply some check boxes from the option menu

Usng the check-boxes in the Option->Adjudications menu to indicate the
engine reports absolute scores is now copied directly to the ChessProgramState,
from where it is used, in stead of only to appData. This makes the change take
effect immediately, in stead of after restarting.

12 years agoscore sign in analysis mode
H.G. Muller [Sat, 28 Nov 2009 21:27:43 +0000 (13:27 -0800)]
score sign in analysis mode

this does not alter any of the current behavior with compliant engines,
but does extend the correction for non-compliant score reporting under
control of the -first(second)ScoreIsAbs option to cases where the engine
is analyzing or playing on an ICS.

12 years agofix for bug #28077: xboard needs to link against x11
Arun Persaud [Wed, 25 Nov 2009 05:09:30 +0000 (21:09 -0800)]
fix for bug #28077: xboard needs to link against x11

hopefully fixed automake to take care of this

12 years agoFix castling rights when copying FEN to clipboard (again)
H.G. Muller [Tue, 24 Nov 2009 04:37:20 +0000 (20:37 -0800)]
Fix castling rights when copying FEN to clipboard (again)

missed a spot last time

12 years agorestoring windows (EngineOutput and MoveHistory) on startup
H.G. Muller [Tue, 24 Nov 2009 04:22:58 +0000 (20:22 -0800)]
restoring windows (EngineOutput and MoveHistory) on startup

restoring the open / closed status of the
auxiliary windows (EngineOutput and MoveHistory) on startup
in XBoard like they do in WinBoard, which makes sense now that
we aso remember their coordinates between sessions.

12 years agofixed some outstanding pixmaps
H.G. Muller [Tue, 24 Nov 2009 04:21:14 +0000 (20:21 -0800)]
fixed some outstanding pixmaps

fixed transparency issues

12 years agouse linux style options for config file and add a system config file for XBoard
H.G. Muller [Tue, 24 Nov 2009 04:17:25 +0000 (20:17 -0800)]
use linux style options for config file and add a system config file for XBoard

This patch makes XBoard write the options to its conf file in
Linux style, "-option value" rather than Windows style "/option=value".

The WinBoard option parsing code has always understood both formats
(including any hybrids), but the format it preferred for writing might
look quite strange to Linux users. I also attached a file to be installed
as /etc/xboard/xboard.conf on "make install".

12 years agofix window positioning
H.G. Muller [Tue, 24 Nov 2009 03:58:55 +0000 (19:58 -0800)]
fix window positioning

This patch adds stuff in the header files that allow the various front-end files
to share information on which windows exist, are up, and how they are positioned.
The EngineOutput, MoveHistory and GameList windows now all remember their
position and size, even when they are closed when XBoard exits.

12 years agosame argDescriptor parsing for Xboard and Winbaord
H.G. Muller [Tue, 24 Nov 2009 03:51:19 +0000 (19:51 -0800)]
same argDescriptor parsing for Xboard and Winbaord

This patch makes XBoard and WinBoard use the same argDescriptor
list of options, and (largely) use the same code for parsing and saving them.
This is acheived by moving this code to a new file args.h, and #including this
in both winboard.c and xboard.c (so that tiny differences, e.g. in default
values in the table, are decided by the context). XBoard has new menu items
"Save Settings Now" and "Save Settings on Exit" in the "Option" menu.
XBoard uses /etc/xboard/xboard.conf as default settings file.
A new option, -saveSettingsFile, can specify where settings should be saved,
without parsing the file. (So that it also works if the file does not yet exist.)

12 years agonew developer release master-20091122
Arun Persaud [Sun, 22 Nov 2009 21:00:31 +0000 (13:00 -0800)]
new developer release

changed release name to <branch>-<date>

12 years agofix the irritating wandering off of the MoveHistory window in XBoard on opening/closing.
H.G. Muller [Sun, 22 Nov 2009 20:34:13 +0000 (12:34 -0800)]
fix the irritating wandering off of the MoveHistory window in XBoard on opening/closing.

12 years agouse xtell for talking to handles, but tell for talking into a channel.
H.G. Muller [Sun, 22 Nov 2009 20:29:47 +0000 (12:29 -0800)]
use xtell for talking to handles, but tell for talking into a channel.

by changing the chatboxes to use xtell in stead of tell, we broke
the possibility to use the chat-box for chatting into a channel (which is
apparently not possible with xtell).

12 years agofix bug in bughouse drop menu
H.G. Muller [Sun, 22 Nov 2009 20:15:15 +0000 (12:15 -0800)]
fix bug in bughouse drop menu

This patch fixes the bughouse drop menu, which was broken by the
new mouse driver, and could no longer drop white Pawns.

12 years ago2nd step for moving option parsing from winboard to the backend
H.G. Muller [Thu, 19 Nov 2009 03:29:57 +0000 (19:29 -0800)]
2nd step for moving option parsing from winboard to the backend

This is the next step in option-setting refactoring: All options that are
defined in XBoard are now included in the WinBoard ArgDescriptor list.
The handling of sound option has been harmonized: the sound names
now all initially go to the appData array, (as in XB) in stead of directly to the
WB-specific variables, and LoadAllSounds now takes care of the copying.
A new routine ExportSounds copies them back before saving settings
(which, in XBoard, could be a no-op).

The definition of defaults for the XB-only options has been moved to common.h.

12 years ago1st step for moving option parsing from winboard to the backend
H.G. Muller [Thu, 19 Nov 2009 03:24:35 +0000 (19:24 -0800)]
1st step for moving option parsing from winboard to the backend

This is a preparatory step in moving option parsing of WinBoard to the back-end.
The table of command-line options now contains a fifth field, holding the compiled-in default.
This obviates most of the front-end routine InitAppData, which now is replaced by a table-driven
initialization routine SetDefaultsFromList(), which could be back-end.

12 years agorefactoring evalgraph code
H.G. Muller [Wed, 18 Nov 2009 20:33:39 +0000 (12:33 -0800)]
refactoring evalgraph code

This is the refactored EvalGraph code: the back-end part is separated off,
and put in a file evalgraph.c, which in the future can also be used with XBoard.
Only the WinBoard front-end code is left in the file wevalgraph.c. A new
header file defines the variables and routines they share.

12 years agoclean-up
Arun Persaud [Wed, 18 Nov 2009 20:29:06 +0000 (12:29 -0800)]

some file permissions where set up wrong
(e.g. execute permissions for text files)

12 years agorefactoring of engineoutput
H.G. Muller [Wed, 18 Nov 2009 19:34:22 +0000 (11:34 -0800)]
refactoring of engineoutput

This refactoring patch separates the back-end part out of
xengineoutput.c, and puts it in a separate file engineoutput.c.
A new header engineoutput.h included by both defines the routines
for cross calling. Similarly wengineo.c will be stripped from its
back-end code, (and renamed to wengineoutput.c), so WinBoard and
XBoard now both use engineoutput.c rather than maintaining duplicate
code in their front-end part.

I also let the back-end now call EngineOutputUpdate directly, rather then
through a relay in the front-end, by renaming it to SetProgramStats
(the former name of the relay in winboard.c / xboard.c).

Moved some templates of functions in engineoutput.c from winboard.h
to frontend.h

12 years agofixed build on openbsd
Arun Persaud [Sun, 15 Nov 2009 06:13:10 +0000 (22:13 -0800)]
fixed build on openbsd

added missing header file

12 years agoimprove thinking-output for mulit-variant
H.G. Muller [Sun, 15 Nov 2009 06:06:58 +0000 (22:06 -0800)]
improve thinking-output for mulit-variant

Improve multi-variant support by sorting the Thinking-Output lines of the most recent depth by score in the Engine-Output window.

12 years agofix castling rights when copying FEN to clipboard
H.G. Muller [Sun, 15 Nov 2009 06:05:12 +0000 (22:05 -0800)]
fix castling rights when copying FEN to clipboard

This patch forces leaving of Edit-Position mode before copying a FEN to the clipboard, to make sure castling rights are faked in a consistent way. Before you could get FENs that had castling rights for non-existent Rooks.

12 years agoThis patch gives a better handling of comments in PGN files, and adds the variation...
H.G. Muller [Sun, 15 Nov 2009 06:03:47 +0000 (22:03 -0800)]
This patch gives a better handling of comments in PGN files, and adds the variation as comment to the main line on using Revert in local mode.

12 years agofixed prototype for AppendComment
Arun Persaud [Sat, 7 Nov 2009 02:53:19 +0000 (18:53 -0800)]
fixed prototype for AppendComment

12 years agocleaned up some debug messages and typos
H.G. Muller [Fri, 6 Nov 2009 17:06:44 +0000 (09:06 -0800)]
cleaned up some debug messages and typos

12 years agovariation-support patch
H.G. Muller [Fri, 6 Nov 2009 17:05:09 +0000 (09:05 -0800)]
variation-support patch

It allows you to Revert to the main line (or previous variation) when
playing variations on an existing game in EditGame or Analyze mode.

12 years agofix for new way of saving castling and e.p. information
H.G. Muller [Fri, 6 Nov 2009 16:48:09 +0000 (08:48 -0800)]
fix for new way of saving castling and e.p. information

I forgot to make some conversions to the new-style encoding of castling there
(using the enum constant NoRights instead of -1 to indicate
the absence of rights, which was the price of storing the
rights in the board, which is an unsigned enum type.)

I also was a bit worried about portability, because I casted the enum type ChessSquare
to (int) before comparing it with (possibly negative) constants EP_NONE etc.
Now on my system enum types are (unsigned int), and this works, but I could
imagine there are systems where this would be an unsigned char. (Not sure
if there are rules for this). So to be safe I cast ChessSquare to (signed char),
which should always work to make small negative ints assigned to it read
back as themselves.

12 years agoremoved files that should only be in the windboard directory
Arun Persaud [Fri, 6 Nov 2009 16:44:59 +0000 (08:44 -0800)]
removed files that should only be in the windboard directory

12 years agoadd Winboard source files into tar-ball
Arun Persaud [Fri, 6 Nov 2009 03:32:35 +0000 (19:32 -0800)]
add Winboard source files into tar-ball

forgot to add them when rewriting the Makefile.am

12 years agoIntegrate castling and e.p. rights into board array; bugfix for EditPosition
H.G. Muller [Fri, 6 Nov 2009 03:23:44 +0000 (19:23 -0800)]
Integrate castling and e.p. rights into board array; bugfix for EditPosition

A large-scale operation that I have been postponing since the very first 4.4.0:
The castling and e.p. rights are now integrated into the board array, as
boards[moveNr][CASTLING][i] replacing castlingRights[moveNr][i] and
boards[moveNr][EP_STATUS] replacing epStatus[moveNr]
These quantities are now automatically copied with the position by CopyBoards
(allowing the removal of lots of dedicated copying code), and passed as
function arguments with the position (so that the moves.c functions like
TestLegality, MateTest, CoordsToAlgebraic, Disambiguate, GenLegal
no longer need explicit e.p. and castling parameters.

Also fixed a bug introduced by a recent previous fix: by adding fake castling
rights to a position set up through the EditPosition menu, I destroyed the
castling rights of a pasted FEN. Faking castling rights is now made conditional
in EditPositionDone(), depending on the caller. (I had not realized it was also
called after FEN pasting, to send the position to the engine.)

12 years agoadded missing library for build on OS X
Arun Persaud [Fri, 6 Nov 2009 03:03:17 +0000 (19:03 -0800)]
added missing library for build on OS X

Xmu seems to be missing

12 years agoSome code refactoring and cleanup; one small bug fix
H.G. Muller [Thu, 5 Nov 2009 06:57:30 +0000 (22:57 -0800)]
Some code refactoring and cleanup; one small bug fix

Some code refactoring, mainly to bring definitions of routines and variables
shared between winboard.c and one of the auxiliary-windows files
whistory.c, wevalgraph.c, wgamelist.c, wengineo.c somewere in a header file
(winboard.h). Unfortunately this made winboard.h dependent on data types
defined in frontend.h, so that the #include order had to be changed in many
other .c files.

The operation revealed one potentially bad bug: engineOutputDialogUp was
written as int in engineo.c, but declared as char in winboard.c.

I also changed the storage mechanism of the the comment and tags window
positions to use WindowPlacement structs rather than simple variables,
so that in the future they can be docked, like the others.

I also removed some remnants of the Analysis window.

The wgamelist.h and wedittags.h header files contained only 3 lines, and
I absorbed them in winboard.h, rather than creating other such nearly empty
headers engineo.h, whistory.h and wevalgraph.h. This affects the make files.

12 years agolet the clocks run in -searchTime mode
H.G. Muller [Wed, 4 Nov 2009 02:26:06 +0000 (18:26 -0800)]
let the clocks run in -searchTime mode

12 years agoadd fixed time per move to the WinBoard time-control menu dialog
H.G. Muller [Tue, 3 Nov 2009 01:41:12 +0000 (17:41 -0800)]
add fixed time per move to the WinBoard time-control menu dialog

12 years agoupdated version number to unstable
Arun Persaud [Sat, 31 Oct 2009 17:42:50 +0000 (10:42 -0700)]
updated version number to unstable