X-Git-Url: http://winboard.nl/cgi-bin?p=capablanca.git;a=blobdiff_plain;f=lasker-2.2.3%2Fsrc%2Falgcheck.c;h=c7b69060d68364164e1738b87aa5ebeea74fb036;hp=d0434450a3cbe6979021a95d9ed03fd38a6b627d;hb=d047d3cf2718e831b4cb81aba3c4111c041fc22d;hpb=fc8a38817986f2ad7a034db0d413762e509a7cac diff --git a/lasker-2.2.3/src/algcheck.c b/lasker-2.2.3/src/algcheck.c old mode 100755 new mode 100644 index d043445..c7b6906 --- a/lasker-2.2.3/src/algcheck.c +++ b/lasker-2.2.3/src/algcheck.c @@ -656,8 +656,8 @@ char *alg_unparse(struct game_state_t * gs, struct move_t * mt) } sprintf(tmp, "%c%d", mt->toFile + 'a', mt->toRank + 1 - (gs->ranks > 9)); strcat(mStr, tmp); - - if ((piece == PAWN) && (mt->piecePromotionTo != NOPIECE)) { + + if ((piece == PAWN || gs->promoType == 3) && (mt->piecePromotionTo != NOPIECE)) { strcat(mStr, "="); /* = before promoting piece */ switch (piecetype(mt->piecePromotionTo)) { case KNIGHT: @@ -702,6 +702,15 @@ char *alg_unparse(struct game_state_t * gs, struct move_t * mt) case MASTODON: strcat(mStr, "G"); break; + case GOLD: // [HGM] Shogi promotions: avoid use of '+' + strcat(mStr, "G"); + break; + case DRAGONHORSE: + strcat(mStr, "I"); + break; + case DRAGONKING: + strcat(mStr, "J"); + break; default: break; }