When Johan and I were working on how to implement pause in the Chessmaster GUI, it was very helpful that The King cleared its hash tables with every move. So our solution wasn't a "pause", but actually a stop/restart.hgm wrote:Indeed, pause could be implemented too. But to really make it work would be a bit of a hassle. You would have to save the entire hash table, for instance. But setscore would have other uses, and pause only one. You can do everything with it you can do with searchmoves, and more.michiguel wrote:The winboard protocol has a command 'pause' that will tell the engine to freeze the search to be continued later. I implemented that in Gaviota because it is extremely useful. Unfortunately, it is not implemented in the GUI..![]()
Wherever The King was during its search, if the user hit "pause", The King would stop and clear everything. Then when the user "unpaused", the GUI would rewind the clock to the start of The King's move and The King would start thinking again from the beginning. The result was identical, because The King's hash tables would be cleared either way.
We also had to think of our typical user -- somebody who was a very casual player and not a knowledgeable computer chess user like the people here. The main reason people would pause their game against a computer personality was so they could do some other work and then come back. Other people complained that their computers were very slow when they tried to play a game AND do some work at the same time. As I said, these were not very knowledgeable people.
Just a story to tell -- not very useful for this discussion....

jm