Picochess Version 1.0 finally released!
I hope you don’t mind that I try to bring this forum back to life with this clickbait headline ;-)
Sorry to disappoint you but there is no official free Picochess 1.0 version yet (for newer versions you can join Jürgens’ picochess club).
I am still enjoying and using my -in the meantime upgraded to RASP 3B+ - limited edition DGTPI with picochess more than ever.
Show me one chess computer (or even Android chess app with DGT support ;-) which offers engines like the original TuroChamp paper engine, Bernstein - the very first running computer program, Konrad Zuses Plankalkül or even Leela side by side on one system.

If you like old historic engines/chess computers like me, see my posting below about SARGON…
And with my new flexible ponder mode you can analyze positions and variants even more directly and easily than with any other chess computer I think (the good old TASC R30 chess computer offered similar analysis options).
Personal Picochess 1.0 Release
What I actually did is creating a personal 1.0 release for my own pleasure trying to enhance some of the things which really have bothered me since some time and still bother me in version 0.9N.
Maybe your are interested in these enhancements as well so I thought I would share my changes - but I take no responsibility for damaging your Raspberry Pi or DGTPI if you use any of these modifications ;-)
By the way 0.9N in general is a very good working Picochess version - so no need to really change something if you are happy with it.
I just have learned Python some months ago and although I still don’t understand the picochess code in all details and although I am not a really good python programmer at all I have changed the following things:
Smaller enhancements:

Just enter the remote mode on the clock/DGTPI and the opponent can enter his moves directly via the webserver:


The webserver move is transferred to the clock and displayed like the answer move of the engine.

Bigger enhancements:
Example:
Computer answers with move Nf6 which is displayed:

You can execute your answer move even before executing the computer move:
e5 played before Nf6

Picochess agrees ;-)


Example:
Staring with start position and this (stockfish) evaluation:

Just remove the rock on h1 and wait&see what happens:

After having set up a position this way it could be necessary to change the player’s turn. That’s why I have implemented the Switching Turn function to the lever (it had no function at all in analysis modes) so that you can easily control who’s turn it is.

Here is the github repository where you can download all my changes (actually it is a copy of the 0.9N version plus my enhancements)
https://github.com/tosca07/picochess
Files to update (just copy/rename your original files and replace these with the following 3 files):
At the moment I won’t publish the changes to the original picochess master branch because these are personal enhancements which can not be switched off and not all users might be happy with these changes.
Enjoy the holidays & Picochess and I wish you all a happy new year!
Dirk
P.S. A litte Xmas gift:
A blast from the past: New historic engine for picochess: SARGON (1978)
Would you like to play against the original SARGON chess program written by Kathe & Dan Spracklen in 1978 on your picochess computer?
Now you can.
Somebody (converted the original assembler code to the Lua language (similar to python), see https://github.com/Chessforeva/Lua4chess
Like I have posted the way to include python engines we are also able to include Lua chess engines.
Just copy the file sargon_uci.lua to the engine directory and create a symbolic link with name sargon_uci to it (see my posting for adding python engines but you don’t need to copy/clone the whole Lua chess reporsitory). Furthermore you need the sargon.uci file as well which you have to create manually, see below.
Of course the original code did not know anything about uci so together with the help of Martin (author of the PyTuroChamp engine/Github project, see https://github.com/mdoege/PyTuroChamp ) we have written a uci wrapper for the original engines: sargon_uci.lua in Github repository https://github.com/tosca07/Lua4chess
It was very difficult because the original engine has no FEN string handling at all. Nevertheless I tried to even add simple (just one move) take back functionality bit of course because of the missing FEN handling you can’t set up a position and pondering/brain is also not possible.
But for a straight forward game it’s perfect and really fun to play with (even though it is not strong at all at the original level).
sargon.uci
[Original]
Plymax = 2
NoBook = FALSE
NoRandom = FALSE
[1 - Level]
Plymax = 1
NoBook = FALSE
NoRandom = FALSE
[2 - Level]
Plymax = 2
NoBook = FALSE
NoRandom = FALSE
[3 - Level]
Plymax = 3
NoBook = FALSE
NoRandom = FALSE
[4 - Level]
Plymax = 4
NoBook = FALSE
NoRandom = FALSE
I'm looking forward to playing via the web server!
Finally someone picks up the staff and keeps running.
May i propose something?
- you dont need to delete & recreate files with git
- version should be 1.00 not 1.0 cause the "." can only be made this way on dgt clocks
And who is "molly"??? :-)
Jürgen
Edit the picochess.ini I can see, anything else?
You have Rev2, it can emulate the DGT Pi menu
Al.
Al.
--
You received this message because you are subscribed to the Google Groups "PicoChess" group.
To unsubscribe from this group and stop receiving emails from it, send an email to picochess+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
Dott. Geol. Fabio FacciaroniStudio in: via Annèo Lucano, 26 - 00136 Romavia di Monte Rosso, 4 - 00060 Sacrofanocell. +39 3204150796think before you print: 3 sheets of A4 paper = 1 litre of water
--
choice = bookreader.weighted_choice(game_copy, self.excludemoves)
to
choice = bookreader.weighted_choice(game_copy, exclude_moves=self.excludemoves)
bit_board = Board(message.fen, message.uci960)
to
bit_board = Board(message.fen, chess960=message.uci960)
Might be more similar issues...
I leave this as homework & easy start point to get used the bad guy coding, ha.
Jürgen