X-Git-Url: http://winboard.nl/cgi-bin?p=capablanca.git;a=blobdiff_plain;f=lasker-2.2.3%2Fsrc%2Fgamedb_old.c;h=dd435b45ed4766437d9a40f8476847fe1d9caaca;hp=e9d93061c4621f1dbcae3f638e8274f44a66a068;hb=d047d3cf2718e831b4cb81aba3c4111c041fc22d;hpb=76f1e81b3426b94e1d80c9daa309f78045e5335b diff --git a/lasker-2.2.3/src/gamedb_old.c b/lasker-2.2.3/src/gamedb_old.c index e9d9306..dd435b4 100644 --- a/lasker-2.2.3/src/gamedb_old.c +++ b/lasker-2.2.3/src/gamedb_old.c @@ -155,7 +155,7 @@ static int ReadGameState(FILE * fp, struct game_state_t *gs, int version) for (i = 0; i < 8; i++) for (j = 0; j < 8; j++) { pieceChar = getc(fp); - gs->board[i][j] = CharToPiece(pieceChar); + gs->board[i][j] = CharToPiece(pieceChar, NULL); } } if (fscanf(fp, "%d %d %d %d %d %d", @@ -319,6 +319,10 @@ static void ReadOneV1Move(FILE * fp, struct move_t *m) m->algString[i++] = '1' + m->toRank; m->algString[i] = '\0'; } + if (m->piecePromotionTo != 0) { // must be Shogi promotion + strcat(m->algString, "=+"); + m->piecePromotionTo |= m->color; + } } if (m->algString[0] != 'O') sprintf(m->moveString, "%c/%c%d-%c%d", PieceChar, 'a' + m->fromFile,