xboard-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [XBoard-devel] Move Parser


From: h.g. muller
Subject: Re: [XBoard-devel] Move Parser
Date: Wed, 02 Mar 2011 09:47:14 +0100

I am trying out the new parser, and this of course reveals all kind
of things that do not seem to work properly for other reasons.
I already pushed some bugfixes to hgm.nubat.net.

One of the things that amazedme is that it seems not possible
to start a game saved in old style from a setup position.
I had a file that already contained two PGN games, and then
I saved a normal Chess game on it in old save format,
which started as a KBNK position setup with Edit Position.
When I then open the file, the Game List contains 3 games,
as it should. (The info line of the Old-style game is of course
all question marks, as it had no PGN tags to draw info from.)
But when I select the 3rd game, it plays it from the standard
opening position, which of course makes the first move illegal.

Problem seems to be that GameListBuild() puts the start of an
old-style game at move number 1, which is behind the position
diagram. So although the LoadGame routine contains code to
interpret the position diagram when it had not yet encountered
a FEN tag, this code isn't effective because it never gets to see
the diagram, but skips it with the file seek.

I tried loading the game file in WinBoard 4.2.7, and it behaves
identically. Is multiple old-style games in one file not something
that we officially support? Should this be repaired, or are we going
to drop support for old save style anyway?

This is how the game looks:

# WinBoard game file -- Wed Mar 02 09:01:59 2011
        - vs. -

[--------------
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . B . . . . .
. . K . . . . .
. . N . . . . .
. . k . . . . .
white to play
--------------]
1. Ba2  Kd1
2. Nd4  Kc1
3. Ne2+  Kd1
4. Kd3  Ke1
5. Ke3  Kd1
6. Bb3+  Ke1
7. Nf4  Kf1
*


reply via email to

[Prev in Thread] Current Thread [Next in Thread]