jromang / picochess

GNU General Public License v3.0
74 stars 54 forks source link

PicoChess registers non-existent move #185

Closed djdekker closed 8 years ago

djdekker commented 8 years ago

I was playing the following game with White with PicoChess v0.64 against Stockfish (default level/time, but reversed board, BT board, DGT3000 clock, RPi3):

  1. e4 Nc6 2. d4 d5 3. e5 Bf5 4. Bb5

Now the computer started to think. While it was still thinking, I carried out the move 4... a6. Of course, that was not a legal thing to do (I should have waited for Black's answer), but I just wanted to see how PicoChess would register this move. On the clock the 'pause' icon appeared briefly and disappeared, and then Black's next move was 4... dxc4. This can only be a legal move if White's 4th move somehow got changed into 4. Bc4 (which is actually White's 4th move according to the web server!).

Log file at Pastebin: http://pastebin.com/yvrhcD3P

LocutusOfPenguin commented 8 years ago

Good find, DJ This bug has nothing to do with reserved board and other (hw) settings. Program shouldn't accept a6 as valid move (during black / not white is still thinking) => bug label

LocutusOfPenguin commented 8 years ago

solved (on my account)

LocutusOfPenguin commented 8 years ago

bad fix => reopen

LocutusOfPenguin commented 8 years ago

To reproduce this error in console mode enter the following commands:

setup:r2qkbnr/ppp1pppp/2n5/3pPb2/3P4/8/PPP2PPP/RNBQKBNR w KQkq - 1 4
f1b5
go
a7a6
go

the last two during picochess is thinking. It results in this wrong fen (board):

r2qkbnr/ppp1pppp/2n5/3pPb2/2BP4/8/PPP2PPP/RNBQK1NR b KQkq - 2 4

LocutusOfPenguin commented 8 years ago

fixed with v0.68