Create new (empty) branch for board themes
[xboard.git] / readme.htm
diff --git a/readme.htm b/readme.htm
deleted file mode 100644 (file)
index ca59e5c..0000000
+++ /dev/null
@@ -1,223 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">\r
-<html>\r
-<head>\r
-</head>\r
-<body>\r
-<big><span style="font-weight: bold;">Tinkering with Winboard<br>\r
-by Alessandro Scotti<br>\r
-</span></big><br>\r
-Last update: March 22, 2005.<br>\r
-<br>\r
-This readme is about some modifications I made to Winboard 4.2.7. Some\r
-will work in Xboard too, while others are for Winboard only.\r
-Regardless, everything here is absolutely experimental and has been\r
-tested very little... so no warranties ok?<br>\r
-<br>\r
-All modified sources are included in this archive, the rest can be\r
-downloaded from <a href="http://www.tim-mann.org/xboard.html">Tim\r
-Mann's Xboard page</a>. Please feel free to take my changes and use\r
-them as you like, they are released under the GPL.<br>\r
-<br>\r
-<big><span style="font-weight: bold;">Game adjudication</span></big><br>\r
-<br>\r
-User can adjudicate a game between two machines, using the "Action"\r
-menu. Note that this only works if two machines are playing.<br>\r
-<br>\r
-Also, it is possible to adjudicate a game automatically with this\r
-parameter:<br>\r
-<br>\r
-<div style="margin-left: 40px;">/adjudicateLossThreshold=-700<br>\r
-</div>\r
-<br>\r
-if set to a negative value, Winboard will adjudicate a game if a engine\r
-can't get a score above the specified threshold for 3 full moves (6\r
-plies). Note that both engines must agree on the score value, and also\r
-the game is only adjudicated after the last move from the losing engine.<br>\r
-<br>\r
-Adjudication is still under test!<br>\r
-<br>\r
-<big><span style="font-weight: bold;">Background textures</span></big><br>\r
-<br>\r
-Add the following to winboard.ini:<br>\r
-<br>\r
-<div style="margin-left: 40px;">/liteBackTextureFile="sandstone_w.bmp"<br>\r
-/darkBackTextureFile="sandstone_b.bmp"<br>\r
-/liteBackTextureMode=1<br>\r
-/darkBackTextureMode=1<br>\r
-</div>\r
-<br>\r
-Of course you can choose any file you like for texturing the light and\r
-dark squares, as long as it's a valid BMP (Windows bitmap) file. <br>\r
-<br>\r
-Valid texture modes are 1 (default) and 2. In mode 1 the squares are\r
-taken from portions of the texture bitmap and copied without further\r
-processing. In mode 2, squares can also be rotated, mirrored and so on\r
-in order to provide a little more variety to the texture. The\r
-operations are selected at random so the board will look slightly\r
-different every time the program is run.<br>\r
-<br>\r
-Note: to "comment out" a filename, put an asterisk in front of it, i.e.\r
-"*sandstone.bmp" will be skipped.<br>\r
-<br>\r
-Additionally it is possible to override the size of the "gap" between\r
-the squares, which is otherwise selected automatically. Add this to\r
-winboard.ini:<br>\r
-<br>\r
-<div style="margin-left: 40px;">/overrideLineGap=2<br>\r
-</div>\r
-<br>\r
-I have added this because textures usually look better with a smaller\r
-or no gap. Any negative value will ignore the override and use the\r
-standard value from Winboard.<br>\r
-<br>\r
-The combination of these parameters can produce very interesting\r
-effects, see for example <a\r
- href="http://usuarios.lycos.es/alexwbtm/Test/">Alex Guerrero's page</a>.<br>\r
-<br>\r
-<big><span style="font-weight: bold;">Font-based rendering of chess\r
-pieces</span></big><br>\r
-<br>\r
-It is possible to use chess fonts to draw pieces, in place of the usual\r
-bitmaps. You have to specify the font name by adding the following to\r
-winboard.ini:<br>\r
-<br>\r
-<div style="margin-left: 40px;">/renderPiecesWithFont="Chess Leipzig"<br>\r
-</div>\r
-<br>\r
-Chances are the program will automatically recognize the font and\r
-select the proper mapping, i.e. the correspondence between a chess\r
-piece and the corresponding font character. So if the board looks good\r
-you're set and there's nothing else to do, otherwise you'll have to\r
-find the proper mapping and tell it to the program with&nbsp; this\r
-setting:<br>\r
-<br>\r
-<div style="margin-left: 40px;">/fontPieceToCharTable="phbrqkojntwl"<br>\r
-</div>\r
-<br>\r
-The piece are in order: white pawn, knight, bishop, rook, queen, king\r
-and black pawn, knight, bishop, rook, queen, king. So the example above\r
-tells the program to use the letter "p" for a white pawn, the letter\r
-"h" for a white knight, the letter "t" for a black rook and so on.<br>\r
-<br>\r
-Note: to "comment out" a font name, put an asterisk in front of it,\r
-i.e. "*Chess Merida" will be skipped because of the asterisk.<br>\r
-<br>\r
-It is possible to customize the font foreground and background color,\r
-with these settings:<br>\r
-<br>\r
-<div style="margin-left: 40px;">/fontPieceBackColorWhite=#ffffcc<br>\r
-/fontPieceForeColorWhite=#402010<br>\r
-/fontPieceBackColorBlack=#ffffcc<br>\r
-/fontPieceForeColorBlack=#301008<br>\r
-</div>\r
-<br>\r
-Colors are expressed in RGB notation. If you are not familiar with the\r
-RGB notation&nbsp; I would suggest to leave them alone until I manage\r
-to update the GUI. In this case, the program will take the board\r
-settings as for the usual piece set.<br>\r
-<br>\r
-It is also possible to control the size of the piece with respect to\r
-the square, for example this entry:<br>\r
-<br>\r
-<div style="margin-left: 40px;">/fontPieceSize=80<br>\r
-</div>\r
-<br>\r
-tells the program to make the pieces about 20% smaller than a square\r
-(i.e. the piece size is 80%). Note that different fonts may require\r
-different values for this parameter. Usually values in the 70-80 range\r
-provide the best values, however the program accepts anything from 50\r
-to 150.<br>\r
-<br>\r
-Font-based pieces are automatically given a "roundish" look. For now,\r
-this option is not mapped to a user-definable setting.<br>\r
-<br>\r
-<big><span style="font-weight: bold;">Fast clipboard pasting</span></big><br>\r
-<br>\r
-Press Ctrl-V to paste a PGN game or a FEN position from the clipboard,\r
-the program will try to autodetect the proper type.<br>\r
-<br>\r
-<big><span style="font-weight: bold;">Thread initialization bug</span></big><br>\r
-<br>\r
-I've tried to fix a bug reported (and fixed) by Anastasios Milikas (of\r
-AICE), where a thread could try to access a not yet initialized\r
-variable. I've used a different approach here, where threads are\r
-started in a "suspended" state and then released only when the variable\r
-has been initialized (this has the advantage of putting all the\r
-required fix code in one place, and the disadvantage of not having been\r
-tested by Anastasios).<br>\r
-<br>\r
-<big><span style="font-weight: bold;">Protection from some buffer\r
-overflows</span></big><br>\r
-<br>\r
-In just a few cases, I've tried to put some guard against buffer\r
-overflows. These are just quick attempts... a lot more work would be\r
-needed to provide some measurable benefits. I hope that bug **353 is\r
-finally fixed now. The buffer overflows were propagated across several\r
-functions so as soon as one was fixed another would crash!<br>\r
-<br>\r
-<big><span style="font-weight: bold;">Absolute scores can be converted\r
-to relative</span></big><br>\r
-<br>\r
-Some engines (e.g. Crafty, Delphi) always report scores from the white\r
-side (i.e. absolute), rather than the engine side (i.e. relative). This\r
-leads to confusion and breaks features such as automatic adjudication.\r
-In order to convert the scores to relative add the following to\r
-winboard.ini:<br>\r
-<br>\r
-<div style="margin-left: 40px;">/firstScoreAbs=false<br>\r
-</div>\r
-<br>\r
-If true, the score of the first program is absolute and will be negated\r
-when playing black. And similarly:<br>\r
-<br>\r
-<div style="margin-left: 40px;">/secondScoreAbs=false<br>\r
-</div>\r
-<br>\r
-if true, the score of the second program is absolute and will be\r
-negated when playing black.<br>\r
-<br>\r
-<big><span style="font-weight: bold;">Engine search info can be saved\r
-in a PGN file</span></big><br>\r
-<br>\r
-Add the following to winboard.ini:<br>\r
-<br>\r
-<div style="margin-left: 40px;">/pgnExtendedInfo=true<br>\r
-</div>\r
-<br>\r
-If true, and the PGN save game option is enabled, each move will be\r
-followed by a comment&nbsp; containing the engine score and thinking\r
-depth (when available).<br>\r
-<br>\r
-Note: can also be set from the General options dialog.<br>\r
-<br>\r
-<big><span style="font-weight: bold;">Engine search info can be hidden\r
-in human-computer games</span></big><br>\r
-<br>\r
-When "show thinking" is disabled, engine thinking is not generated at\r
-all, rather than simply hidden. It is now possible to generate the\r
-think lines (e.g. for logging or saving in the PGN) yet hide them when\r
-the engine is playing against a human player. Add the following to\r
-winboard.ini:<br>\r
-<br>\r
-<div style="margin-left: 40px;">/hideThinkingFromHuman=true<br>\r
-</div>\r
-<br>\r
-Note: can also be set from the General options dialog.<br>\r
-<br>\r
-<big><span style="font-weight: bold;">Asymmetric time controls</span></big><br>\r
-<br>\r
-Very experimental! You can enter two time controls in the usual dialog,\r
-separated by "/". If so, white will be assigned the first time and\r
-black the second. So for example "0:30/2:00" will give 30 seconds to\r
-white and 2 minutes to black.<br>\r
-<br>\r
-Note: for now these times stay with black and white, rather than the\r
-corresponding player.<br>\r
-<br>\r
-<big><span style="font-weight: bold;">User interface</span></big><br>\r
-<br>\r
-Options to "hide thinking from human" and "save extended info in PGN"\r
-now appears in the "General" options dialog.<br>\r
-<br>\r
-</body>\r
-</html>\r