Abbreviate DATADIR to ~~ while saving XB themes The path name of theme files is typically quite long in XBoard, where installed data is very deep in the file-system tree. This path is now recognized, and replacend by its abbreviation ~~ when storing a theme in the -themeNames option.
Fix debris after click-click explosion near board edge The redrawn grid was not exposed for board edges a knight's jump away from an explosion square after a click-click capture in variant atomic. This was due to the smartness in preventing overlapping exposures of neighboring square, deferring the task to expose the grid to squares that were beyond the edge. Now all squares in the explosion range are exposed including grid.
Fix multi-leg promotions Two-leg promotions were sent as gibberish to the engine (and thus rejected). It was also pretty annoying that XBoard's own idea of what should be promotions was still applied even when highlighting denied promotions (because the zone was different than assumed, or a promotion-on-entry rule applies). Now the legality markers from the GUI move generator are different from the red and yellow markers from an engine highlight command, and the latter are taken as a denial of promotion, and will suppress it.
Erase markers before processing highlight FEN Markers from the Betza generator were only half-heartedly erased when a color-FEN camein through a highlight command, because FENs tend to skip empty squares in stretches. This was already fixed for the legal[][] array, but now it is fixed for the markers itself as well.
Allow engine to force user to make non-standard promotion The engine can now force an unexpected promotion on moves entered by the user, by marking the to-square of such a move in blue. Releasing a piece on such a blue square will then defer further processing of the move (after having send the 'put' command to the engine) until reception of a 'choice' command to specify what the piece should promote to. This solves problems in Maka Dai Dai Shogi, where a piece capturing a contageous piece would only be allowed to promote to its normal promoted form if the to-square was marked in purple (offering a P / +P toggle).
Fix saving theme The option -trueColors is now saved with the theme settings when a pieceImageDirectory was given in XBoard, and the piece colors are saved when this option is off even with a piece directory. The square colors are now also saved when useBooardTextures is on, but the textures are transparent. For this the transparency also had to be made visible in the WinBoard front end, (by moving the flags for it to backend.c), but always stay at the default 0 there.
Fix deferral on sweep promotions When a sweep in the to-square due to a highlight-induced promotion had left the original piece as choice, the piece would be considered to promote to itself (i.e. the move would get the promoChar for its piece type), rather than to not promote at all. Some engines choked on this (HaChu). Now such a move is not considered a promotion.