PicoChess v3.3 Bookworm Images [10 June 2024]

384 views
Skip to first unread message

RandyR

unread,
Jun 10, 2024, 9:37:15 AMJun 10
to PicoChess
Hi everyone,

I have updated my images to support the Saitek Maestro and Analyst retro engine modules. Also, the Cray Blitz and Crafty engines have been added to the Wine image. A huge thanks to Dirk for sharing these and for fixing the MAME files for the Saitek modules. 

As before, please read the documentation. The links (below) are unchanged.

Randy


64-bit Bookworm Lite (4.6 GB)

64-bit Bookworm Desktop (5.2 GB)

64-bit Bookworm Desktop with Wine (5.8 GB)

RandyR

unread,
Jun 10, 2024, 10:13:16 AMJun 10
to PicoChess
I forgot to mention, the Wasp engine from John Stanback has been updated to version 7.0 as well.

Charles

unread,
Jun 10, 2024, 5:50:52 PMJun 10
to PicoChess
Does this work on the out of the box dgtpi? I'm working on upgrading my picochess to v3 and I'm not sure if I should be aiming for bookworm64 bookworm32 or bullseye 

RandyR

unread,
Jun 10, 2024, 5:54:05 PMJun 10
to PicoChess
You should use the Lite image on a stock DGTPi.

Randy

Santiago Torres

unread,
Jun 10, 2024, 7:50:59 PMJun 10
to PicoChess
Hi friends, how can I get and add the mame or other retro engines.  I have used the retroengines that come with picochess, however other engines do not appear in the picochess options.  Thanks for clarify.  BTW Picochess is a very powerful tool for chess.  Thanks to the developers.

Regards,

Santiago

Randy Reade

unread,
Jun 10, 2024, 8:37:01 PMJun 10
to pico...@googlegroups.com
All necessary files are included in the image, except for MAME roms that are not free to use. The roms for which we have permission to use are located in the /opt/picochess/engines/mame_emulation/roms folder. To add a new retro engine, place the required rom file(s) in the aforementioned roms folder, add an entry to the /opt/picochess/engines/aarch64/retro.ini file (sample entries for supported machines can be found in the aarch64/engines_ini/all_retro.ini file so you can copy it from there). Then reboot.

Note that the current version of MAME is 0.265 so you need roms compatible with that version.

Randy

--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/picochess/84824fd9-010e-444a-91b1-e66581969259n%40googlegroups.com.

Santiago Torres

unread,
Jun 10, 2024, 9:37:23 PMJun 10
to PicoChess
Thanks Randy for your great explanation.  Best regards,

Santiago

Luigi Vogliobene

unread,
Jun 12, 2024, 4:19:57 PMJun 12
to PicoChess
Hi, sorry to say that the Crafty engine do not work out of the book: it simply won't reply.

Luigi

Randy Reade

unread,
Jun 12, 2024, 4:27:32 PMJun 12
to pico...@googlegroups.com
I think the book should be set to no-book, Dirk can confirm. I'll check when I get a chance.

Randy

Luigi Vogliobene

unread,
Jun 12, 2024, 4:35:37 PMJun 12
to PicoChess
I also tried with NO-BOOK, same results, the engine won't reply.

Luigi

Dirk

unread,
Jun 12, 2024, 4:53:12 PMJun 12
to PicoChess
Yes, although Crafty is a WB engine it does not support all UCI (converter) features like playing with an external book or position setup.

On my system Crafty plays without any problem with black or white.

Dirk

RandyR

unread,
Jun 12, 2024, 8:17:35 PMJun 12
to PicoChess
I just tested on my Pi4b and Crafty is working with no-book for me also.

Luigi Vogliobene

unread,
Jun 13, 2024, 8:15:52 AMJun 13
to PicoChess
Given that I have a multitude of chess engines to practice with, mine was just a report and I confirm that even in NO BOOK mode the 3 new windows64 engines stop working as soon as they exit the opening phase (internal engine book), when they have to reflect on the next move to play. I tested this with various opening books. This issue only comes from the 3 new windows64 (wb) engines, using my others windows64 engines like Stockfish, Komodo, Dragon, Shredder etc. no problems at all to report.

Luigi

Dirk

unread,
Jun 13, 2024, 8:35:22 AMJun 13
to PicoChess
Hi Luigi,

as I said: 

1. You MUST use the picochess no book option for these engine, 
2. you can't switch sides for CrayBlitz (for this you have to select the corresponding Cray  engines - B means Cry plays black!),
3. you can't take back moves and
4. You have to restart the engine for each new game you want to play

If you consider this you should be able to play full games with these WB engines - air least I can.

Here I play my special opening ;-) which is definitely not in internal book of CrayBlitz and I can play until mate:

PicoChessWeb (picochessweb) – VNC Viewer 2024-06-13 14-26-28.jpg

Same with Crafty:

PicoChessWeb (picochessweb) – VNC Viewer 2024-06-13 14-34-15.jpg

But I have not changed the internal books of Cray blitz on my system.

Dirk

RandyR

unread,
Jun 13, 2024, 9:43:42 AMJun 13
to PicoChess
Not sure why it isn't working for you. What Pi version are you using? Are you using my latest image or did you copy over the files to an older system. What time setting are you using?

Randy

Luigi Vogliobene

unread,
Jun 13, 2024, 1:12:37 PMJun 13
to PicoChess
Hi Dirk & Randy,

thank you for your support, I think I found where is the problem, in my settings : Clock Time !  I usually select "time per move" 10 seconds per move for my play. If I select "time per game" (5 or 10 minutes I tested) the engines works flawlessy but if I select "time per move",  5 or 10 or whatever seconds per move I select, the engines stop working or something stop the engine calculation when the clock go back to 0. 

Luigi

Randy Reade

unread,
Jun 13, 2024, 1:26:22 PMJun 13
to pico...@googlegroups.com
Ok. Now we are getting somewhere. Running from the command line using go movetime 5000 doesn't seem to come back with a move. Perhaps we can't use fast times with the wb2uci method?

--
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.

Dirk

unread,
Jun 13, 2024, 1:40:56 PMJun 13
to pico...@googlegroups.com
Yes these old engines (at least the Cray Blitz ones) are not real WB engines at all and hence so not support all the picochess timecontrols. Time control and level happens in the specific config file as I have pointed out in the another blast from the past thread.
I was hoping that the engine just ignores all  uci time control options but obviously it is only true for game time!?

Regarding Crafty although being a real WB engine and hence it should take care about time control settings via uci converter move time might also be a problem!?

Dirk 

Von meinem iPad gesendet

Am 13.06.2024 um 19:26 schrieb Randy Reade <randy...@gmail.com>:



Randy Reade

unread,
Jun 13, 2024, 3:07:31 PMJun 13
to pico...@googlegroups.com
When I get a chance I'll test it in Windows.

RandyR

unread,
Jun 13, 2024, 5:33:02 PMJun 13
to PicoChess
I tested the uci2wb program with crafty in windows and the standard uci command 'go movetime 5000' just sends crafty into thinking and it never gives a 'best move'. Further testing shows that the movetime in uci2wb seems to be in seconds vice milliseconds. 'go movetime 5' returns a move in 5 seconds. A 'stop' command also returns a move.

Using crafty directly you can use the 'st 5' command for a 5 second search time.

Not sure if this is worth implementing in PicoChess.

Randy

RandyR

unread,
Jun 13, 2024, 10:34:27 PMJun 13
to PicoChess
It looks like the issue was an old version of wb2uci.exe. See the attached zip archive for 2 files. Place crafty_uci.exe into the aarch64/windows64/crafty_uci folder. Place the CrayBlitzUCI.exe file into both the aarch64/windows64/Cray_Blitz/cray_blitz_b and ../cray_blitz_w folders (the files are the same - just renamed from wb2uci.exe). Make sure you set them as executable:

chmod a+x crafty_uci.exe
chmod a+x CrayBlitzUCI.exe

Move time should now work normally.

Randy

Dirk

unread,
Jun 14, 2024, 2:15:34 AMJun 14
to 'Dirk' via PicoChess
Hi Randy,

I am pretty sure that I tried the new wb2uci version when building the whole thing because that what people were using in the talk chess forum but this did not work in PicoChess (at least for CrayBlitz)!

I just double checked and CrayBlitz stopped working (after leaving the internal book!?) again:
PicoChessWeb (picochessweb) – VNC Viewer 2024-06-14 08-10-31.jpeg

When I check on command line level the new wb2uci crashes:

./CrayBlitzUCI.exe

uci

id name Cray Blitz 4.9h

id author Robert Hyatt, 1990

option name Program type string default inbetween.exe

option name InitString type string default <empty>

option name Hash type spin default 2 min 0 max 1024

option name HashCommand type string default <empty>

option name HashFormula type string default

option name HashOnCommandline type check default false

option name InitTime type spin default 2 min 0 max 30

option name StartTime type spin default 1 min 0 max 30

option name Delay type spin default 0 min 0 max 1000

option name MateScore type spin default 0 min 0 max 100000

option name LevelType type spin default 1 min 1 max 2

option name SlowDown type spin default 1 min 1 max 100

option name Edit type combo default setboard var setboard var edit var cb-edit

option name Ponder type check default true

option name AlwaysMoveOnStop type check default false

option name OwnBook type check default false

option name ShowThinkingMove type check default false

option name Analyze type check default true

option name UseUndo type check default true

option name WhiteScore type check default false

option name Logfile type check default false

option name Priority type combo default Normal var Normal var BelowNormal var Lo

w

option name RunIdle type check default false

option name Computer type check default false

option name SimulateHint type check default false

option name LevelExtend type combo default None var Progressive var Strict var F

ailsafe var None

option name Protocol type spin default 2 min 1 max 2

option name Noise type spin default 0 min -1 max 99

option name Help type button

option name UCI_Opponent type string default <empty>

option name UCI_LimitStrength type check default false

option name UCI_Elo type spin default 1000 min 1 max 1000

option name CpuPower type string default 100.0

uciok

ucinewgame

isready

0174:err:environ:init_peb starting L"F:\\opt\\picochess\\engines\\aarch64\\windows\\Cray_Blitz\\cray_blitz_b\\inbetween.exe" in experimental wow64 mode

0174:err:virtual:map_fixed_area out of memory for 0x6fffffcd0000-0x6ffffffef000

0174:err:virtual:try_map_free_area mmap() error Cannot allocate memory, range 0x7fffffcd0000-0x7ffffffef000, unix_prot 0x7.

0180:err:virtual:map_fixed_area out of memory for 0x6fffffcd0000-0x6ffffffef000

0180:err:virtual:map_fixed_area out of memory for 0x6fffffb30000-0x6fffffcb9000

0180:err:virtual:map_fixed_area out of memory for 0x6fffff5b0000-0x6fffffb12000

0180:fixme:kernelbase:AppPolicyGetProcessTerminationMethod FFFFFFFFFFFFFFFA, 00000000800EED70

readyok

… (wb2uci crashes)

pi@picochessweb:~/picochess/engines/aarch64/windows $ 


If you don’t experience that in your image it must be because of your custom build kernel for wine I assume and I would to have to upgradevto your image as well  :-(

Dirk


-- 
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.

Dirk

unread,
Jun 14, 2024, 2:38:34 AMJun 14
to PicoChess
For Crafty it looks like the new wb2uci does work indeed better - even on my system ;-)

No problems for now.

Luigi Vogliobene

unread,
Jun 14, 2024, 4:23:17 AMJun 14
to PicoChess
Crafty now works well w/ move time option, Cray B stop working after 7 moves. New wb2uci files.
Immagine 2024-06-14 102201.png

Dirk

unread,
Jun 14, 2024, 6:18:44 AMJun 14
to pico...@googlegroups.com

Ah, good to know - then it is not my standard wine installation (I don’t use Randy’s custom kernel).

And it makes sense as Crafty is a real WB engine.

Looks like we can now even switch sides during a game and maybe do a position set up.

Thanks for finding this behavior Luigi and Randy.

Am 14.06.2024 um 10:23 schrieb Luigi Vogliobene <lvogl...@gmail.com>:

Crafty now works well w/ move time option, Cray B stop working after 7 moves. New wb2uci files.
To view this discussion on the web visit https://groups.google.com/d/msgid/picochess/c297b2ad-1dda-4d45-b5c5-bfee1d0207f0n%40googlegroups.com.
<Immagine 2024-06-14 102201.png>

RandyR

unread,
Jun 14, 2024, 10:55:26 AMJun 14
to PicoChess
Yeah, I didn't test Cray-Blitz (CB) last night. I just assumed that with Crafty working so would CB. I tested in Windows and it has an issue there as well, but there are no errors - it just stops responding. I didn't notice that CB also uses inbetween. I guess keeping the old version of wb2uci for CB and avoiding move time would be best for now. Or, keep the new version of wb2uci for CB also and just avoid move times (using 'go' instead of 'go movetime 5000' seems to work for the new wb2uci). If we had the source for the old wb2uci we could fix the movetime (just divide by 1000). I suppose there may also be a way using inbetween to alter the command sent to CB. Or maybe it's something else.

Randy

Randy Reade

unread,
Jun 14, 2024, 11:35:57 AMJun 14
to pico...@googlegroups.com
It appears that Cray-Blitz doesn't like the new wb2uci even when not using Move time.

--
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.

RandyR

unread,
Jun 14, 2024, 11:45:32 AMJun 14
to PicoChess
I don't see any errors with the custom kernel. Cray-Blitz just stops responding with the updated wb2uci:

pi@picochess:/opt/picochess/engines/aarch64/windows64/Cray_Blitz/cray_blitz_b $ wine ./CrayBlitzUCI.exe
Dynarec for ARM64, with extension: ASIMD CRC32 PageSize:4096 Running on Cortex-A72 with 4 Cores
Will use Hardware counter measured at 54.0 MHz emulating 3.4 GHz
Params database has 68 entries
Box64 with Dynarec v0.2.7 3cb61ff8 built on Apr 28 2024 06:24:57
BOX64: Wine64 detected, WINEPRELOADRESERVE=""
BOX64: Detected 48bits at least of address space
BOX64: Detected running wine with "CrayBlitzUCI.exe"
Counted 48 Env var
BOX64 LIB PATH: ./:lib/:lib64/:x86_64/:bin64/:libs64/:/lib/x86_64-linux-gnu/:/usr/lib/x86_64-linux-gnu/
BOX64 BIN PATH: ./:bin/:/home/pi/.pyenv/plugins/pyenv-virtualenv/shims/:/home/pi/.pyenv/shims/:/home/pi/.cargo/bin/:/home/pi/.pyenv/bin/:/usr/local/sbin/:/usr/local/bin/:/usr/sbin/:/usr/bin/:/sbin/:/bin/:/usr/local/games/:/usr/games/
Looking for /usr/local/bin/wine
Apply RC params for wine
Applying BOX64_MAXCPU=64
argv[1]="./CrayBlitzUCI.exe"
Rename process to "wine"
Using native(wrapped) libdl.so.2
Using native(wrapped) libpthread.so.0
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux-x86-64.so.2
Using native(wrapped) libutil.so.1
Using native(wrapped) librt.so.1
Using native(wrapped) libbsd.so.0
Using emulated /opt/wine-9.3/bin/../lib/wine/x86_64-unix/ntdll.so
Using emulated /lib/x86_64-linux-gnu/libunwind.so.8
Using native(wrapped) liblzma.so.5
Dynarec for ARM64, with extension: ASIMD CRC32 PageSize:4096 Running on Cortex-A72 with 4 Cores
Will use Hardware counter measured at 54.0 MHz emulating 3.4 GHz
Params database has 68 entries
Box64 with Dynarec v0.2.7 3cb61ff8 built on Apr 28 2024 06:24:57
BOX64: Wine preloader detected, loading "/opt/wine-9.3/bin/wine" directly
BOX64: Wine64 detected, WINEPRELOADRESERVE=""
BOX64: Detected 48bits at least of address space
BOX64: Detected running wine with "CrayBlitzUCI.exe"
Counted 50 Env var
BOX64 LIB PATH: ./:lib/:lib64/:x86_64/:bin64/:libs64/:/lib/x86_64-linux-gnu/:/usr/lib/x86_64-linux-gnu/
BOX64 BIN PATH: ./:bin/:/home/pi/.pyenv/plugins/pyenv-virtualenv/shims/:/home/pi/.pyenv/shims/:/home/pi/.cargo/bin/:/home/pi/.pyenv/bin/:/usr/local/sbin/:/usr/local/bin/:/usr/sbin/:/usr/bin/:/sbin/:/bin/:/usr/local/games/:/usr/games/
Looking for /opt/wine-9.3/bin/wine
Apply RC params for wine
Applying BOX64_MAXCPU=64
argv[1]="./CrayBlitzUCI.exe"
Rename process to "wine"
Using native(wrapped) libdl.so.2
Using native(wrapped) libpthread.so.0
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux-x86-64.so.2
Using native(wrapped) libutil.so.1
Using native(wrapped) librt.so.1
Using native(wrapped) libbsd.so.0
Using emulated /opt/wine-9.3/bin/../lib/wine/x86_64-unix/ntdll.so
Using emulated /lib/x86_64-linux-gnu/libunwind.so.8
Using native(wrapped) liblzma.so.5
posix_spawn(0xffff9095ebbc, "/opt/wine-9.3/bin/wineserver", (nil), (nil), 0xffff9095ebc0["/opt/wine-9.3/bin/wineserver", "", ...], 0xffff9095f038), IsX64=1, IsX86=0 IsScript=0 envp is context->envv
 => posix_spawn(0xffff9095ebbc, "/usr/local/bin/box64", (nil), (nil), 0xfffffc6f92c0 ["/usr/local/bin/box64", "/opt/wine-9.3/bin/wineserver", ""...:1], 0xfffffc6f9ed0)
posix_spawn returned 0
Dynarec for ARM64, with extension: ASIMD CRC32 PageSize:4096 Running on Cortex-A72 with 4 Cores
Will use Hardware counter measured at 54.0 MHz emulating 3.4 GHz
Params database has 68 entries
Box64 with Dynarec v0.2.7 3cb61ff8 built on Apr 28 2024 06:24:57
BOX64: Detected 48bits at least of address space
Counted 50 Env var
BOX64 LIB PATH: ./:lib/:lib64/:x86_64/:bin64/:libs64/:/lib/x86_64-linux-gnu/:/usr/lib/x86_64-linux-gnu/
BOX64 BIN PATH: ./:bin/:/home/pi/.pyenv/plugins/pyenv-virtualenv/shims/:/home/pi/.pyenv/shims/:/home/pi/.cargo/bin/:/home/pi/.pyenv/bin/:/usr/local/sbin/:/usr/local/bin/:/usr/sbin/:/usr/bin/:/sbin/:/bin/:/usr/local/games/:/usr/games/
Looking for /opt/wine-9.3/bin/wineserver
Rename process to "wineserver"
Using native(wrapped) libdl.so.2
Using native(wrapped) libc.so.6
Using native(wrapped) ld-linux-x86-64.so.2
Using native(wrapped) libpthread.so.0
Using native(wrapped) libutil.so.1
Using native(wrapped) librt.so.1
Using native(wrapped) libbsd.so.0
0024:err:environ:init_peb starting L"F:\\opt\\picochess\\engines\\aarch64\\windows64\\Cray_Blitz\\cray_blitz_b\\CrayBlitzUCI.exe" in experimental wow64 mode
Using emulated /opt/wine-9.3/lib/wine/x86_64-unix/win32u.so
Using native(wrapped) libm.so.6
Using native(wrapped) libfreetype.so.6
Using native(wrapped) libfontconfig.so.1
Using native(wrapped) libexpat.so.1
option name LevelExtend type combo default None var Progressive var Strict var Failsafe var None

option name Protocol type spin default 2 min 1 max 2
option name Noise type spin default 0 min -1 max 99
option name Help type button
option name UCI_Opponent type string default <empty>
option name UCI_LimitStrength type check default false
option name UCI_Elo type spin default 1000 min 1 max 1000
option name CpuPower type string default 100.0
uciok
ucinewgame
isready
0124:err:environ:init_peb starting L"F:\\opt\\picochess\\engines\\aarch64\\windows64\\Cray_Blitz\\cray_blitz_b\\inbetween.exe" in experimental wow64 mode
readyok
position startpos moves e2e4
go wtime 300000
info depth 1 score cp 1
bestmove d7d5
position startpos moves e2e4 d7d5 e4d5
go wtime 299000
info depth 1 score cp 1


And it doesn't print anything further...

RandyR

unread,
Jun 14, 2024, 12:19:33 PMJun 14
to PicoChess
Interestingly, when it stops responding on the command-line, if you type another 'go' command, it comes back with a move. Afterward, if it stops responding again you can type 'go' to make it respond. Obviously not something easily do-able in PicoChess. Btw, I made a mistake in the previous post - the command for CB should have been 'go btime ...' but it probably wouldn't have changed things. At any rate, I tested again using btime and there was no difference.

Also, when playing CB directly 'wine ./cray_blitz.exe' there is alot of dialog sent out by CB (What is your name? Are you continuing your last game? Should I play white? And then 'your move, <name>'). I don't see where inbetween handles these (in the ini files) but somehow it does.

Randy

Reply all
Reply to author
Forward
0 new messages