The Tarrasch Chess GUI


Tarrasch V3.13b Released (21Jan2021) Fixes and refinements as listed below.

  • Important bug fix: The append database feature in V3.13a didn't work (yikes, sorry)
  • TarraschBase updated through TWIC 1367
  • Small bug fix in the new tournament pairings feature, fix handling of Swiss Perfect results field if present

Tarrasch V3.13a Released (16Nov2020) Refinements as listed below.

  • Change default database from defunct kingbase-lite to tarrasch-base, see Downloads for more details.
  • Change default engine from Stockfish 8 to 11
  • Tarrasch will update a default configuration to new default engine and database (conservatively). Previously Tarrasch's respect for current settings was universal which meant new default engine/databases were ignored without user interaction.
  • Update Komodo in standard distribution to Komodo 12
  • Add Sargon 1978 (another one of my projects) to engines in standard distribution.
  • Vastly speed up copy/cut of individual games by using GetNextItem() instead of GetItemState() for all games to find selected games
  • Introduce new Tournament Pairings feature into PGN Dialog
  • Introduce restricted databases, cannot export more than 10,000 games at a time to PGN
  • Fix longstanding, serious crash bug. Tarrasch was unable to cope with PGN files it was using being modified "behind its back"
  • Tarrasch now accepts '=' as optional in promotion notation, so a8Q is accepted as well as a8=Q
  • In database creation, dup game detection now requires a YYYY match - if YYYY isn't present and matching, then games aren't counted as dups
  • Bug fix: Prevent possible race condition when changing databases before current database has finished loading
  • Update credits, mentioning relationship between Mark Crowther and TWIC and tarrasch-base
  • In all game dialogs, disable buttons that operate on games, if the dialog is empty (has no games)
  • Change from default 9 files in MRU (recent files) menu to 20
  • Fix a bug introduced in previous release that the initial database game dialog could be be slightly scrolled, with highlighted game in position zero not showing.
  • Add tooltip help to player search facility, to make it slightly more discoverable / easy to use
  • Make Game Board orientation (i.e. White or Black at the bottom) a per tab attribute

A Replacement Database is in the Pipeline (30Aug2020)

Tarrasch currently comes with Kingbase Lite as it's default and reference database. Unfortunately the Kingbase project has been abandoned, and so Tarrasch's database is increasingly out of date. Previously I have worried about the ethics of distributing my own curated database with Tarrasch, but I have now resolved this road block by coming to an agreement with Mark Crowther author of the famous TWIC website. Mark has very generously agreed to me curating and distributing a database based on the TWIC collection. Expect to see this included in a new version of Tarrasch before the end of September October (whoops we're now in November, just a few more days I hope, sorry about the extended delay). I will take the opportunity to update the (also out of date) engine collection in the main Tarrasch package at that time as well.

Tarrasch V3.12b Released (28Aug2020) Refinements as listed below.

  • Bug fix: Database creation, the last 3 of 6 PGN files now included and not ignored (thanks to Julian Fey from Germany for reporting this bug).
  • Bug fix: File open from shell or command line now checks for pgn or tdb, and doesn't just assume pgn (now tdb works as well - results were sadly rather comical when tdb file was assumed to be pgn).
  • Bug fix: Fix crash bug that caused pattern and material balance searches sometimes to fail catastrophically crashing Tarrasch before the search dialog even opened.
  • Bug fix: Progress bar was sometimes a little misleading with huge databases due to an integer overflow, now calculated with float instead.
  • Refinement: First game in a game dialog is now always shown immediately the dialog opens (previously it sometimes needed a down or up arrow key to reveal it).

Tarrasch V3.12a Released (11Mar2019) Refinements as listed below.

  • Improve handling of open file requests from Windows Explorer. Previously if the request couldn't be accepted (because a game dialog was open for example) it was ignored. Now it is deferred until the game dialog is closed and the user is prompted whether they still want to open the file.
  • Skip over the UTF-8 BOM (hex EF BB BF) if it is present at the start of a .pgn file. This improves interoperability with other chess programs that choose to start their .pgn files with this abomination!
  • Combat the recent tendency of Tarrasch to create too many open tabs. From V3.10a, cancelling the games dialog after a file open command still opens the file and loads the first game. With this refinment, if the user loads a new game that way, then immediately opens another file, the second file open does not create a new tab.
  • Upgrade from WxWidgets 3.1.1 to WxWidgets 3.1.2

Tarrasch V3.11a Released (14Jan2019) Tweaks and bugfixes as listed below.

  • Fix small bug: Promote rest of comment to moves did not work properly if the comment was an initial comment at start of game.
  • Merge pull request #12 from Github user metiscus, resolves two cases of invalid memory access
  • Fix another problem identified by Github user metiscus, (see Github issue: Several functions can access memory through invalid pointers #13). Thanks metiscus!
  • Don't open a file by shell / command line mechanism if we have a dialog box open
  • Allow GamesDialog to start at non zero game index (for current file dialog go to current game instead)
  • Fix problem: V3.10 was not showing focused (initial) game if more than a pages worth of games.
  • Fix bug: GamesDialog title could be gibberish, showed up in DB list all ordered by player feature.
  • Change button name from Cancel to more accurate Close for File Open Game selection dialogs.
  • Fix issue #11, Moving backwards in main line not working
  • Improvements in Publish to markdown including;
  • Add extra line break at end
  • Support "Diagram #" as well as "#Diagram"
  • Remove space after "Diagram #" or "#Diagram"
  • Fix a little bug in previous move detection from first move in variation if peer variations
  • Improved intentation indication (always have parens, suppress extra whitespace after a paren)
  • Tweak to reflect improvements in Publish function
  • Update kingbase-lite.tdb database, includes games through to the end of 2018

Tarrasch V3.10c Released (5Nov2018) Another maintenance release. Fixes an ugly crash bug that would happen since V3.10a if the user loads a second instance of Tarrasch, and follows the advice of the message that pops up if they try to use the database, which is not loaded in these circumstances. (The crash occurs if you try and force load a database in these circumstances). My apologies for the necessity of this release.

Tarrasch V3.10b Released (4Nov2018) A maintenance release to fix one annoying problem in the previous release. Sometimes (often?) after a database search Windows was stealing the focus from Tarrasch and giving it to another program (often Chrome). Possibly an undesirable artifact from the improved resizability of the database window. Tarrasch now (re)asserts focus after a database search. My apologies for the necessity of this release.

Tarrasch V3.10a Released (17Oct2018) The first release for a long time, and the culmination of a lot of development effort. Includes an updated Kingbase Lite (but bundled engine versions not updated just at the moment). Here is a list of all changes (expect a period of more frequent releases with less changes ahead)

  • Optional .pgn file extension association now multiple instance behaviour is improved (see below)
  • Refine command line parameter behaviour. If argument is a valid file, pass it to another instance if running and exit. But allow multiple instances in other circumstances.
  • If another instance is already running, dont automatically load the database to save memory (show db: (not loaded)) - but inform user whats happening and allow them to manually load it
  • Allow File > Open of .tdb files, hopefully this will improve user understanding of the database concept
  • Games dialog size and position now persists across sessions
  • Games dialogs now much more usefully resizable
  • Introduce two extra fields in status line at bottom. Db: indicates database file and status plus draw counts show approaching threefold and 50 move rule draws
  • Change to normal file open behaviour - cancel does dismisses game selection dialog but leaves file open - fixes something that has always been confusing and annoying
  • Switch to saved file after save game as - this is more consistent and less annoying than the previous behaviour
  • Implement three engine priorities, selectable in engine dialog
  • Improve click on destination square popup move menu, move cancel to end of popup menu, so a single click makes expected move
  • Squeeze up option dialogs to reduce chance of options not fitting on small displays
  • Allow user to select text font size (instead of just normal/large)
  • Show full version info in title
  • Change UI tab name from Suggestions to Start
  • Allow cancelling database loads now, so user can work with partial database loads if they are impatient.
  • Allow user to cancel database append when loading the database to be appended
  • Select current database doesn't need to wait for an initial database load
  • Add new copy FEN to system clipboard command to edit window
  • Removal legacy SQL database support (only affects datbase files made by the Alpha version of V3)
  • Human v Computer refinement, hurry engine a little by telling it it has slightly less time than it really has - trying to avoid time loss by brinkmanship combined with slightly out of sync clocks and communication delays between gui and engine
  • Add transparent panels to Linux icon, ensure pasted text is ascii (fixes Linux crash), tweak games dialog to avoid Linux squeezing up chessboard
  • Support desktop Tarrasch icon under Linux (and Mac?) using xpm graphics
  • Add slighly more height to kibitz window, avoids vertical scrollbar in Linux
  • Linux port fixes by John Cheetham on Github
  • Upgrade from WxWindows 3.1.0 to WxWindows 3.1.1
  • Upgrade to Visual Studio 2017
  • This version does not work on Windows XP (email me if this is a problem for you)
  • Fix important bug: We were forgetting to announce result of human-computer games!
  • Fix bug: We can now restore size and position from last session on either display in multidisplay setups.
  • Fix bug: Dont pass thru keys if some text is selected unless all the text is within a single comment
  • Fix bug: spin control min,max,init parameters were in wrong order, so move count editing was improperly restricted
  • Fix bug: threefold repetition check - we were using naive castling/enpassant check (so sometimes we needed four repetitions!) - refinement conditions these details accurately
  • Fix bug: Allows windows document directory can be a root directory
  • Fix bug: Abnormal text line endings in db duplicate file
  • Fix bug: initialise Roster fen (r.fen) properly if not normal start position - how did anything work without this?
  • Bug fixes for slightly improved database performance from Martin Strunz on Github

Kingbase Lite updated (7Jul2018) The standalone Kingbase Lite Tarrasch format database in the downloads directory has been updated to match Pierre Havard's latest release. It now corresponds to the 2018 edition, plus five monthly updates. Compared to the version that comes with V3.03 of Tarrasch, there are more than a year's extra games. I am sorry to have released so little recently. I have been working hard on Tarrasch and I do look forward to getting the latest improvements to users soon. On the other hand V3.03 of Tarrasch has proven itself as a fairly sturdy and reliable workhorse in the last year.

Tarrasch V3.03 released (21May2017) Another bug fix release. Upgrading to this version is strongly recommended. My apologies, there have really been too many bugs discovered in months since version 3 has been released. My sincere hope is that not too many users have been affected, and that the teething issues are over and that Tarrasch is now in its most robust and useful state ever. Change log;

  • The edit improvements of the previous release came at the cost of a new bug - deleting a comment would often lead to transient display glitches - eg if the screen showed 1.e4 Comment 1...e5 deleting the Comment would leave 1.e4 1...e5 instead of 1.e4 e5. Fortunately saved .pgn data was not affected. Bug fixed.
  • File Save As did not close the handle of the new file immediately, which could cause problems if the new file was manipulated again before exiting Tarrasch. Bug fixed.
  • File handling corner cases involving games stored in the clipboard fixed.
  • Pierre Havard has resumed publication of Kingbase and I have reverted to Kingbase Lite as my default database and retired my temporary solution Tarraschbase (Tarraschbase was kind of my own 'fork' of Kingbase).
  • The default database name is now 'kingbase-lite.tdb', i.e. there is no date information in the name itself, so the name won't change as future versions are released. This should make it easier for users to upgrade the database in future - just download the latest version, no need to point Tarrasch at a new file name.
  • Some message box dialogs with longer titles than message text have have had title and message text swapped around avoiding truncation of the title.
  • Upper limit on Engine Hash in UI increased from 4GB to 32GB.

Tarrasch V3.02 released (1Apr2017) This version is a bug fix release, correcting all problems discovered in the first quarter of 2017. Sadly this includes some significant problems, and upgrading to this version is strongly recommended. Change log;

  • Annoying problems with editing games with many variations and comments (so that the edit window needs to scroll) fixed. The edit cursor no longer jumps to bottom line, and scroll position is preserved if you switch tabs.
  • A side effect of the fix above is that text editing (for comments) is faster than ever, faster than previous V3 versions and much faster than V2.
  • Introduce Tarraschbase - Kingbase lite 2016-03 plus more recent games from Twic. This is hopefully a temporary measure until Kingbase is updated again.
  • Screen adjustment for improved games dialog behaviour on commodity 720p laptops.
  • Kibitz box is dynamically scaled to show all four lines - not always 99 pixels high.
  • Deleting games in games dialogs behaves better.
  • Stalemate and Checkmate positions no longer sent to engine for analysis.
  • Bug fixed: (Bug was; Cannot save recalculated ECOs to file.)
  • Bug fixed: (Bug was; Modify game -> make new tab -> go back to game -> undo changes game still shows as modified even though undo stack correctly shown as empty).
  • Inappropriate sharing of pgn games dialog help screen with clipboard and session games dialogs corrected.
  • Long overdue update from Komodo V3 to Komodo V8 (apologies for not noticing that the Komodo free version has changed dramatically).

Tarrasch V3.01 released (28Dec2016) This version is a bug fix release, correcting all problems discovered in Tarrasch V3's first month. Keen Tarrasch users should definitely update, casual users will probably not benefit much. Change log;

  • Add progress gauge when writing duplicate games, previously this slow operation appeared as stuck progress
  • Title of progress bar during duplicate games write allows discoverability
  • Write duplicate pgn file after database written - so it is optional and can be cancelled
  • Engine dialog box works on smaller screens
  • Arrows allow tab navigation when number of tabs fills main screen
  • Heading in frame is the default option
  • Pattern search - "Don't allow extra material" no longer the default!
  • Avoid slowly leaking memory on meta-data as databases loaded or created
  • Problems with pattern and material balance searches using clipboard as temporary database - fixed
  • Ctrl-A = select all finally works in game dialogs
  • Error handling in append database was broken - sometimes (eg unrecognised file format) leaving user unsure what happened
  • Slightly more informative "can't load database" message
  • Never show asterisk = file modified if no current file!
  • Order files after database append as intended - so most recent games appear first

Tarrasch V3 finally released! (25Nov2016)

Final Tarrasch V3 Beta released, with many enhancements (20Nov2016) This version will replace Tarrasch V2 in the next few days. You can read about the latest enhancements to the Tarrasch V3 Beta on my development blog

Tarrasch V3 Beta Updated to new look (11Oct2016) See the Home, Downloads and Faq pages.

A fresh new look for Tarrasch! (19Sep2016) Only in the nightly build (for now), the fresh new look for Tarrasch includes a coloured resizable board.

Tarrasch V3 Nightly Released! (13Aug2016) See the Home and Downloads pages.

Tarrasch V3 Beta Released! (11Jul2016) See the Home, Downloads and Faq pages.

Youtube Tutorial Available (3Jun2016) Nayel Farag has made a very nice Tarrasch V2 tutorial that covers a lot of ground efficiently in a short time. Thank you Nayel!

Tarrasch V3 Preview Released! (12Mar2016) See the Home, Downloads and Faq pages.

Maintenance version V2.03c release (28Jan2016) I hope this is the last update to Tarrasch V2 (Tarrasch V3 is coming soon). This update includes the latest version of Stockfish. There are a couple of other significant enhancements. For the first time Tarrasch can show the "Event" (as well as the "Site") in game lists. Tarrasch now only writes "brace" comments to .pgn, never "semicolon" comments (which are poorly supported by other chess software). This should eliminate the main cause of interoperability problems with other chess software.

Tarrasch V3 Alpha Released! (12Dec2015) This is an important milestone for the Tarrasch Chess GUI. See my blog for more information and download instructions.

Maintenance version V2.03b release (24Jun2015) This is a small update to correct a long standing issue - Until now Tarrasch only supported the English character set (Ascii in computer-speak) in .pgn file header fields and comments. This version adds support for extra characters defined in ISO 8859, for example accented characters used by many European languages. No other changes are made, so if you don't need special characters, you can treat it as an optional update. Thanks to Jacques Bouthier for helping me sort this out.

Maintenance version V2.03a release (31May2015) This is update to V2 is an attempt to keep it relevant in 2015. I now include the latest Stockfish engine and the free version of the Houdini engine. The default engine is now Stockfish, 64 bit version on 64 bit Windows. A few other small changes: Improve colour of dark squares. On 32 bit Windows, don't allow user to try to run 64 bit engine. Change text of commands from 'promote comments to variation' to 'promote comments to moves'. Fix bug that stopped DELETE key working in pgn dialog. Add more menu keyboard shortcuts.

28Dec2014 Youtube video demonstrating the planned Tarrasch V3 See the blog.

Maintenance version V2.02br release (29Apr2014) This small update is courtesy of programmer Ralph Moritz, who contacted me via GitHub (see below) where he made some improvements to Tarrasch. The changes are (A) a bugfix that addresses the embarrassing problem that the "Command" -> "Play Black" menu item actually played white instead (presumably the big "Play Black" button, which has always worked okay masked this for most users). Ralph has also added (B) a copy game to system clipboard (PGN) feature, and (C) fixed a long standing problem that Max CPU cores engine option only enabled multiple cores on engines that follow the Rybka UCI convention for this (which basically means not many engines, maybe only Rybka :-).

Tarrasch V2 (T2) on GitHub (29Apr2014) I now think of T2 as the old version of Tarrasch, even though it is still the most recent real product, T3 being vapourware for the most part. When I finished T2 I put the source code on a public repository at After a recent discussion with Ralph Moritz, I have moved it to the new GitHub T2 repository, and I have accepted changes (improvements) from Ralph which today I am publishing as a maintenance release.

Tarrasch on GitHub (29Apr2014) For some time now I have been developing Tarrasch V3 (T3), and recently I started developing in public using the GitHub T3 repository. More details on T3 and GitHub on my development blog

Maintenance version V2.02ar release (17Jun2013) After a long (too long) period of complete inactivity (at least publically), I've dipped my toe back into the water by fixing some small but significant problems. I will blog about the changes soon, but basically the main bug fixed is a nasty one that could corrupt .pgn files in some cases if there are multiple games edited between file saves. The next most significant fix is that if you are just entering moves (rather than playing against the engine) the game won't terminate prematurely with a draw due to the 50 move rule, insufficient material or three fold repetition. Smaller fixes are kibitzing now works with single PV engines (eg Strelka), slight truncation of the graphic images on the right edge of the h file is fixed, playing against the engine after a null move now works, and finally repetition is now spelled properly! Note that I've been doing a lot of other private Tarrasch work, but for now none of that is ready for prime time. As I say I will start blogging again soon to shed further light.

Butterfly chess engine (20Apr2012) Giuseppe Cannella offers a minimally altered version of the portable (no install) Tarrasch package to demonstrate his Butterfly open source engine. Thanks Giuseppe! (Update 10Jan2014 - Giuseppe reports that he has been working on his engine, now renamed to Cinnamon, the link above has been updated accordingly)

No install version (14Mar2012) I've packaged the Tarrasch executable and support files into a no-install .zip file for users who prefer this option. Available on the download page.

Whoops (6Mar2012) For a little less than 24 hours, on March 5th, I had mistakenly reverted my download links to V2.00a, i.e. the old version before the maintenance release. Sorry about that. If you downloaded on or around that date, check your Help -> About menu to make sure you are running V2.01.

Tarrasch V2.01a Maintenance Release (18Feb2012) This is fully documented on my blog. The main bugs fixed allow Houdini to work more smoothly, ensure that the custom UCI parameter feature works as intended, and that the 4th line of Kibitz text works properly.

Tarrasch V2 open sourced (finally) (8Jan2012) Go to this public repository. to download the source and start collaborating on the project.

Komodo edition released (1Nov2011) A slightly modified version of Tarrasch that includes the Komodo engine is now hosted on Komodo's website. Komodo is the second major engine (after Rybka) that provides Tarrasch in this way as a particularly easy way to use the engine.

Tarrasch V2 released (13Sep2011) Finally! Compared to the last beta, next and previous file game buttons have been added. Also a larger font option, and some small bug fixes and enhancements.

Updated Tarrasch V2 beta with new features (7Sep2011) Tarrasch V2 beta has been re-released with some useful new features, including resizable move and kibitz windows, an optional smaller chess board, and custom UCI engine parameters.

Tarrasch V2 Beta version released (19Aug2011) Tarrasch V2 is now feature complete, and much more stable than the previous alpha version. It's now available to the public to download and try. Please remember what 'beta' status means; The program is not yet fully tested. If you are willing to try the program, please let me know what you think of it. Obviously any problems or bugs found are of particular interest to me.

Tarrasch V2 Alpha version released (13Mar2011) If you'd like to play with a nearly complete, but not fully tested version of Tarrasch V2, go over to the Tarrasch Chess GUI blog and ask for download instructions. The reason you have to ask for a copy is that I don't want uncontrolled access to a piece of software that hasn't yet been tested, polished and tuned. But I do want people who are interested in Tarrasch V2 (and have been patiently waiting a long time) to have a chance to see what it will offer.

Bill Forster
Triple Happy Ltd.