~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Scid Introduction file. Scid version: 3.4 (Released: January 2003). Website for updated releases: http://scid.sourceforge.net/ Email address of author: sgh@users.sourceforge.net IMPORTANT NOTE: I don't update this file as often as I should. The website and the Scid online help pages will probably be more useful. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ CONTENTS 1: Introduction. 1.1: What is Scid? 1.2: Programs in the Scid package. 1.3: Copyright. 1.4: Installing Scid (Unix). 1.5: Installing Scid (Windows). 1.6: Customising Scid. 1.7: What language is Scid written in? 2: scid: the main application. 2.1: Using chess analysis programs with scid. 3: pgnscid: the PGN->Scid converter program. 4: Contacting the author. 5: Acknowledgements and references. 5.1: Where to find PGN game files. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1: Introduction 1.1: What is Scid? Scid (for "Shane's Chess Information Database" is a free chess database application for Unix and Microsoft Windows operating systems. Scid converts to and from PGN (Portable Game Notation) format, which is the standard for text-based chess information exchange, but uses its own fast compact format for storing files. The final section of this file (references) lists some internet sites where you can find PGN chess game files you can use in Scid. 1.2: Programs in the Scid package. There are three main programs that make up Scid: - scid is the main application, with a graphical user interface. - scidlet is a WinBoard-compatible chess engine which can be used in Scid to analyze chess positions. - pgnscid is a command-line (console) program that does one task: it converts PGN files into scid format. Since you can open PGN files in scid, this program is not really required. Other executable programs for Unix users include: - tkscid is the Tcl/Tk interpreter that the program "scid" executes. tcscid is a Tcl-only (non-graphical) version of tkscid. You will usually invoke tkscid or tcscid as part of a Tcl/Tk script (such as scid or sc_addmove) rather than directly as programs. - scmerge is a utility for merging a number of Scid databases into a new, larger database. Usage: scmerge newbase oldbase1 oldbase2 ... - scidpgn is a Tcl script that prints every game in a Scid database to standard output. Useful for converting a whole database back into PGN format. - sc_import is a Tcl script for importing PGN files into an existing Scid database. Usage: sc_import base pgn-files... - sc_spell takes a Scid database and spelling file and applies all possible name corrections, then marks all duplicate games deleted. Example usage: sc_spell mybase spelling.ssp 1.3: Copyright. Scid is copyrighted software. It is freely distributable under the terms of the GPL, which is a common license used for free software. See the COPYING file for details. If you use Scid often and find it useful, please consider making a donation to the author, of any amount you feel appropriate. Email me <sgh@users.sourceforge.net> for my postal address if you want to pay a small token fee for Scid. 1.4: Installing Scid (Unix). On Unix-ish operating systems (such as Linux, Solaris, BSD, etc) you should just be able to type "./configure" then "make" to compile the programs. The configure script tries to determine the appropriate Makefile settings for your computer. If it is not successful, you may need to edit the file "Makefile" before typing "make". The configure script can take optional parameters specifying settings. For example, you you want the install directory to be "/usr/local/bin" and the C++ compiler optimzations to be "-O2 -funroll-loops" on your system, just type: ./configure BINDIR=/usr/local/bin OPTIMIZE="-O2 -funroll-loops" If you want to compile Scid without multi-language support, type: ./configure LANGUAGES="" You need Tcl/Tk (version 8.0 or higher) installed to run Scid. If you do not have Tcl/Tk, you can download it from the website: http://tcl.activestate.com/software/tcltk/ You will probably want to put all the executable programs in a directory in your PATH (such as ~/bin), so they can be run from any directory. To do this, putting the files in "/usr/local/bin" for example, just type: ./configure BINDIR=/usr/local/bin make install I have only tried compiling with "g++", the GNU C++ compiler. Others should work fine, I imagine. 1.5: Installing Scid (Windows). The Scid download for Windows is an executable installer program. Run the installer to install Scid. It will let you select the Scid installation folder, a start menu for Scid, etc. After installing Scid for Windows, the executable files (including the main application program, scid.exe) can be found in the "bin" folder under the Scid installation folder. 1.6: Customising Scid. The main Scid program ("scid") has many customisable parameters. Scid's Options menu has an entry for saving the current options; these are saved to the file ".scid" in your home directory for Unix users, or the file "scid.opt" in the same directory as scid.exe for Windows users. BE VERY CAREFUL if you edit your Scid options file by hand, because it will not work if you do not preserve its format. 1.7: What language is Scid written in? Why was it written? Scid was developed from scratch; the only borrowed resources are the piece bitmaps which are from freeware Truetype chess fonts. Scid is entirely written in C++, except for the graphical front-end program "scid" which is in Tcl/Tk. I wrote Scid because I wanted to have a high-quality, fast chess database for Linux/Unix, one I could customise to my own needs, and for a fun hobby. If others find it useful, that's a bonus. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2: Scid: the main application. The program "scid" is the main Scid program. It is a Tcl/Tk program that uses "tkscid", a Tcl/Tk interpreter extended to support Scid database actions. A lot of Scid parameters are customisable. When Scid starts up, it tries to read the file "~/.scid" (or scid.opt for Windows users) for your customised options, fonts and colors. You can provide a database to open to scid when it starts up, by providing a single command-line argument, e.g: "scid mygames" or "scid mygames.si" Scid provides an online help index; read the help pages for more information on using the program. 2.1: Using chess analysis programs with scid The Scid analysis window provides a way to have a chess program such as Robert Hyatt's "Crafty" analyse the current position, automatically restarting the analysis whenever the position changes. Most WinBoard-compatible chess programs should work in the Scid analysis window, even those that do not have an "analyze" command. Scid comes with a small chess engine called Scidlet as the default analysis engine. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 3: Pgnscid: the PGN->scid converter. Pgnscid is the utility that converts PGN files into Scid format. Its usage is simple: it takes one parameter, the name of the PGN file. Given a file "games.pgn", for example, it creates games.si, games.sn and games.sg, the three essential Scid files for the database. It also creates games.log which will contain any errors or warnings. Pgnscid can accept two optional parameters, before the PGN filename: -f Force overwriting of an existing Scid database. By default, pgnscid will not overwrite an existing database. -x Ignore text between games, do not store it as pre-game comments. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 4: Contacting the Author Feedback about Scid is most welcome. My email address is: sgh@users.sourceforge.net You can also contribute improvements or bug fixes to the program, or just let me know what you'd like to see added to Scid. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5: Acknowledgements and references See the "THANKS" or "thanks.txt" file for more acknowledgements. Scid is entirely my own creation, with a few exceptions. The code for decompressing ".gz" files (located in src/zlib/ in the Scid source package) is the zlib library written by Jean-loup Gailly and Mark Adler. The zlib homepage is: http://www.info-zip.org/pub/infozip/zlib/ The code used for reading Nalimov-format tablebases (located in src/egtb/ in the Scid source package) is the standard code written by Eugene Nalimov (eugenen@microsoft.com) that many chess programs use. References to other chess-related software I have mentioned here: ** PGN (Portable Game Notation) is the accepted standard for textual representation of chess games and transfer between chess databases. It is the only format Scid can currently import from or export to. Steven J. Edwards created the PGN standard and the document explaining it is available at many chess websites; here is one location for it: http://scid.sourceforge.net/standard.txt ** Xboard is a graphical program for playing chess against a computer or on the internet, and can also be used to browse PGN files. There is an equivalent for Windows 98/NT, called WinBoard. The author is Tim Mann. His chess web page also contains information on chess engines such as GNU Chess and Crafty, at: http://www.tim-mann.org/chess.html ** Crafty is probably the strongest free chess program in existence, and the source code is freely redistributable! It is updated frequently. The author is Bob Hyatt. The Crafty ftp site is: ftp://ftp.cis.uab.edu/pub/hyatt/ The "TB" subdirectory at this site contains many tablebase files which can also be used in Scid. Many thanks to Bob for an awesome piece of free software! 5.1: Where to find PGN game files. There are many good internet sites that contain collections of games. The following are ones I have used and liked: ** Mark Crowther's "The Week In Chess" is at http://www.chesscenter.com/twic/twic.html and is the best source of up-to-date international games. ** The Chess archive at Pitt University has game collections by events, players, and openings. It is at: http://www.pitt.edu/~schach/Archives/ or by file transfer protocol: ftp://ftp.pitt.edu/group/student-activities/chess/ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ OK, that's all of the README file. Hope you found it helpful. :) I would just like to thank all the people whose websites, chess programs, PGN game collections, etc I have mentioned above, for what they have given to the chess community. I hope you enjoy using Scid! Shane Hudson sgh@users.sourceforge.net January 2003 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~