Release: EGTB verification tool

Discussion of chess software programming and technical issues.

Moderators: hgm, Dann Corbit, Harvey Williamson

Forum rules
This textbox is used to restore diagrams posted with the [d] tag before the upgrade.
Post Reply
User avatar
jshriver
Posts: 1210
Joined: Wed Mar 08, 2006 8:41 pm
Location: Morgantown, WV, USA
Contact:

Release: EGTB verification tool

Post by jshriver » Sat Apr 15, 2017 8:25 am

http://olympuschess.com/EGTBChecker/EGTBChecker.zip

The basic usage is:

java -jar EGTBChecker.jar /path/to/EGTBfiles
or
java -jar EGTBChecker.jar d:\EGTB

It recursively checks all files and sub-directories so if you have all your files in C:\EGTB no need to list each subdirectory.

Verified it works in Linux and Windows. Sorry it's command-line only for now, planning to add a GUI but wanted to get the core parts done first.

It supports the following EGTB tablebases:
Syzygy 3,4,5, 6 DTZ and 6 WDL
Gaviota 3,4,5
Nalimov 3,4,5, 6
Robbo Total Bases 3,4,5,z
Robbo Triple Bases 2,3,4,5,5-1, z

As always open to suggestions and comments!

It's a little raw. This has been in my head for years and finally sat down tonight and pushed it out in about 5 hours. Most of the work though was creating the database.

-Josh

flok

Re: Release: EGTB verification tool

Post by flok » Sat Apr 15, 2017 9:45 am

But what does it do/check? :D

User avatar
jshriver
Posts: 1210
Joined: Wed Mar 08, 2006 8:41 pm
Location: Morgantown, WV, USA
Contact:

Re: Release: EGTB verification tool

Post by jshriver » Thu Apr 20, 2017 4:44 am

flok wrote:But what does it do/check? :D
You feed it a directory containing EGTB files. It verifies them against an internal database of MD5 hashes. Then lets you know if the files are ok, and what set they are from.

It's not impressive, more like an automated MD5 checker :) But it has verified MD5 of all the various EGTB's I listed (I have all of them even robbo).

In the future I'd like to add a report generator so it can tell you the final results broken down by set (Syzygy, Gaviota, etc) and what was corrupt/valid/missing and such.

For now though it's a good way to check and make sure your files are still ok and not suffering from bit rot. I'm glad I had 2 copies of the Nalimov 6men set as one was corrupted from deep storage.

Also open to ideas. When I get a chance I'll make a github account for it.
-Josh

User avatar
Marek Soszynski
Posts: 550
Joined: Wed May 10, 2006 5:28 pm
Location: Birmingham, England

Re: Release: EGTB verification tool

Post by Marek Soszynski » Thu Apr 20, 2017 5:51 pm

Thanks! It does indeed work on Linux.
Marek Soszynski

User avatar
MikeB
Posts: 4551
Joined: Thu Mar 09, 2006 5:34 am
Location: Pen Argyl, Pennsylvania

Re: Release: EGTB verification tool

Post by MikeB » Sat Apr 22, 2017 4:40 am

jshriver wrote:http://olympuschess.com/EGTBChecker/EGTBChecker.zip

The basic usage is:

java -jar EGTBChecker.jar /path/to/EGTBfiles
or
java -jar EGTBChecker.jar d:\EGTB

It recursively checks all files and sub-directories so if you have all your files in C:\EGTB no need to list each subdirectory.

Verified it works in Linux and Windows. Sorry it's command-line only for now, planning to add a GUI but wanted to get the core parts done first.

It supports the following EGTB tablebases:
Syzygy 3,4,5, 6 DTZ and 6 WDL
Gaviota 3,4,5
Nalimov 3,4,5, 6
Robbo Total Bases 3,4,5,z
Robbo Triple Bases 2,3,4,5,5-1, z

As always open to suggestions and comments!

It's a little raw. This has been in my head for years and finally sat down tonight and pushed it out in about 5 hours. Most of the work though was creating the database.

-Josh
works on macOS, although I suspect I'm getting false negatives on these three..

Code: Select all

KPvK.rtbw  Corrupt File hash should be: f3cce67836b0fff3fb28f72c003d1ba1 
KPvK.rtbz  Corrupt File hash should be: 7bc6496b47e5f949491e1f0edd256d05 
KQvK.rtbw  Corrupt File hash should be: bc91c5d49b48f4dfef1d1485fad8b272 
KQvK.rtbz  Corrupt File hash should be: 04b8d08bde6d4e004040d05f0aa6d1c9
KPvK.rtbw  Corrupt File hash should be: f3cce67836b0fff3fb28f72c003d1ba1 
KPvK.rtbz  Corrupt File hash should be: 7bc6496b47e5f949491e1f0edd256d05 
this is true even after regenerating the 3 man syzygy

Code: Select all

run.pl --generate --max 3 --threads 12
https://github.com/syzygy1/tb

Post Reply