Change encoding of seirawan ICS gating-castlings
authorH.G. Muller <h.g.muller@hccnet.nl>
Thu, 1 Dec 2011 17:45:55 +0000 (18:45 +0100)
committerH.G. Muller <h.g.muller@hccnet.nl>
Thu, 1 Dec 2011 17:45:55 +0000 (18:45 +0100)
In stead of using upper/lower-case promoChar, the ICS now uses
RxK notation, like WinBoard writes in SAN, for better consistency.

backend.c

index 14cdf0c..8d6a273 100644 (file)
--- a/backend.c
+++ b/backend.c
@@ -4954,9 +4954,10 @@ SendMoveToICS(moveType, fromX, fromY, toX, toY, promoChar)
     char user_move[MSG_SIZ];
     char suffix[4];
 
     char user_move[MSG_SIZ];
     char suffix[4];
 
-    if(gameInfo.variant == VariantSChess && promoChar)
+    if(gameInfo.variant == VariantSChess && promoChar) {
        snprintf(suffix, 4, "=%c", toX == BOARD_WIDTH<<1 ? ToUpper(promoChar) : ToLower(promoChar));
        snprintf(suffix, 4, "=%c", toX == BOARD_WIDTH<<1 ? ToUpper(promoChar) : ToLower(promoChar));
-    else suffix[0] = NULLCHAR;
+       if(toX == BOARD_WIDTH>>1) moveType = WhitePromotion; // kludge to do gating at Rook
+    } else suffix[0] = NULLCHAR;
 
     switch (moveType) {
       default:
 
     switch (moveType) {
       default: