[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [gnugo-devel] gmp mode sgf output
From: |
Gunnar Farneback |
Subject: |
Re: [gnugo-devel] gmp mode sgf output |
Date: |
Tue, 03 Sep 2002 17:48:04 +0200 |
User-agent: |
EMH/1.14.1 SEMI/1.14.3 (Ushinoya) FLIM/1.14.2 (Yagi-Nishiguchi) APEL/10.3 Emacs/20.7 (sparc-sun-solaris2.7) (with unibyte mode) |
Paul wrote:
> for some reason it handles passes coming from gmp client incorrectly
> (at least on 19x19 board). however, the same is true for 3.3.5. it
> may be a bug in jago 4.42 which i used for testing.
>
> please, test with other clients.
>
> if mistake is not jago-specific, it is gmp.c which should be fixed.
>
> lines 414-418:
> s = val & 0x1ff;
> if (s == 0) {
> x = -1;
> y = 0;
> } else if (s == 0x1ff) {
>
> when pass is coming from jago, val=342 (19x19 board). gmp.c expects
> that val=0 is sent for passes.
I assume you mean val=362 since 342 would be T18. But it's wrong
anyway. The GMP specification is very clear that pass is represented
by 0. Excerpt from the specification:
| 5. Move command - 1101 0pii 1iii iiii
| Interpretation of the move command is game specific. For the game
| of Go, top value bit (p) is 1 if player to move is white or 0 if black.
| 9 bit value (i) is a board intersection value or 0 for pass.
^^^^^^^^^^
| Intersection values run 1 at A1, 2 at B1 ... with value wrapping at
| end of row (varies with board size) so next row is A2. Range for
| 19x19 board is thus 1...361 (A1 ...T19). A1 is in the lower left corner
| and the letter I is omitted. [...]
My conclusion is that this would indeed be a Jago bug.
/Gunnar