by Steve Lopez

ChessBase programmer Mathias Feist contributes a correction to something I wrote in ETN on January 10th:

You wrote:

"Also, be careful not to overrun the total amount of available RAM for your hash tables when loading multiple engines (when using one engine as the tactical engine and another as the positional engine). For example, if you have 24 Mb RAM listed after "Free RAM" on the screen, don't try loading two engines with 16 Mb RAM each. You should instead select the "Adapt all hash tables" box before loading the first engine at 16 Mb RAM. Then load the second engine without making any further hash table adjustments. Each engine will now have access to the full 16 Mb RAM."

I think you misunderstood an option in the engines load dialog: "Adapt all hashtables" in the engines dialog sets the size of the hashtables of all loaded engines to the numerical value you see in the input field. This option is there so that you don't have to unload the engines when changing the size of the hashtables. The option doesn't have anything to do with the memory of your machine, but only with the value you input into that field. It doesn't have any effect on engines you load afterwards... If you set both engines to 16 MB you should have 32 MB free memory or your system will be swapping.

Guilty as charged and I stand corrected! Thanks for straightening me out on this, Matthias!

Robert Ericsson contributed this via e-mail:

Here is another great way to use CTRL + C within ChessBase or CBLight:

1) Copy diagram to Clipboard

2) Open up your image editor (Photoshop or the freeware program Irfan View for instance) and press CTRL + V

3) Save as gif or any other format.

Voila! You have just created a ChessBase gif diagram!

Yes, sir, Robert, that's an excellent tip. You can save the file in a variety of formats (depending on the graphics software you're using) and even import them into print documents. Thanks for the tip!

Finally, longtime ChessBase user Randy Foreman is now Dr. Randy Foreman. Congratulations, Doc, on a job well done!


by Steve Lopez

This week we'll take a look at some search tricks for both ChessBase and Fritz.

First of all, it's a good idea to get in the habit of clicking the "Reset all" button whenever you start a new search. The reason for this is that Fritz/ChessBase remember the last search you performed and keep the information in the search mask unless you change it. For example, someone called to tell me that he couldn't find any Bobby Fischer games (as White) in Mega Database 98. As it turns out, he'd just done a search for a variation of the Grob. The "Position" button was still checked, meaning that the program was still going to search for that board position in the Grob. He then typed in Fischer's name in the "White" box, unchecked "Ignore colors", clicked "OK" and the program came back with two games by "L. Fischer", but nothing for Bobby. The reason was because Bobby never played the Grob as White. The user wasn't aware that his Grob position was still being searched for by the program.

You see, the search mask is an and search, not an or search, to put it in Boolean terms (George Boole was a 19th-century English mathematician whose name is still cursed by first year Algebra students). If you enter two different criteria in the search mask, the program will find all games in which both criteria apply, not games in which one or the other apply. So if you do a search in which you ask for Bobby Fischer and Grob games, you get all games in which Fischer played the Grob (that is, no games) rather than a combined list of all games played by Fischer and all games in which the Grob was played.

To alleviate this problem, click "Reset all" in the search mask before entering your search criteria. This will eliminate any prior search criteria and return the search mask to its original neutral state.

Another big problem with searching for Bobby's games: typing "R" or "Robert" in the left-hand box and "Fischer" in the right-hand box. Take a look at the game list for any ChessBase database and you'll see that the game headers are arranged like a telephone book: last name followed by first name. Consequently you'll need to type a player's last name first (in the left-hand box) followed by his first name (in the right-hand box). In this case, you would type "Fischer" (without the quotes, of course), then "R" or "Robert". (Using the initial is better, in case the particular database you're using doesn't have complete first names).

Another problem in searching for Fischer's games: not capitalizing the "F". The search mask is case-sensitive, meaning that it looks for exactly what you type in the player boxes. If you type "fischer" (all lower case), you get zip. If you type "FISCHER" (all upper case), you get nada. You need to type "Fischer" (capitalizing only the first letter) to find his games.

Computers are stupid, you see. They only look for what you tell them to look for and then they follow the instructions to the letter. So, for example, if you type in "Fisher" (without the required letter "c") the computer can't make the intuitive leap that you must have meant "Fischer" simply because it's a chess database and you must be talking about the former World Champion. It only does what you told it. So you'll get some Fisher games, but not those of Bobby Fischer.

One interesting call came when someone did a database search for Fischer's games and found several after 1992. "I know your data is inaccurate because Robert J. Fischer did not play any chess after 1992!" Actually, he did. Robert J. Fischer played (and still plays) many games, mostly in the Virginia area. I've spoken with him on a couple of occasions and he's a heck of a nice guy. He's also not the Robert J. Fischer who won the world chess championship in 1972. He's a USCF master who just happens to have the same name. (None of this really has a thing to do with searches; I just think it's a hilarious story. It's a real hoot to see young kids looking at a wallchart at a VCF tournament and freaking out over the participation of Robert J. Fischer. Bob doesn't even argue anymore -- he just signs the requested autograph and goes back to his game).

A frequent question concerns the two ways to call up the search mask in ChessBase 7. One way is to use the "binoculars" button in the Database window. The second is to use the "filter" button at the bottom of a game list. The difference between the two is pretty simple, but significant. The binoculars button in the Database window takes the games found in the search and places them on the ChessBase Clipboard. Clicking the "filter" button in the games list screens out (or filters) the games that don't meet the search criteria and only shows the games that do match (in other words, it shortens the game list to show only the games that meet the search requirements). Another important thing to remember is that if you are doing a position search, loading a game from a filtered game list jumps you right to that position, while doing it from the Clipboard takes you to the start of the game. Loading a game from a position search in Fritz always takes you to that position in the game.

Which method should you use? It really depends on what you intend to do with the games once they're found. If you just want to play through a few games, finding them using the filter button in the game list is OK. But if you'd like to copy the games to another database, use the binoculars button in the Database window. Since the games are copied to the Clipboard, you can easily just drag-and-drop the Clipboard over to the database to which you want the games copied.

You can do searches across multiple databases in ChessBase 7. Just hold down the SHIFT key on your keyboard and click once on each database you want to include in the search. You'll see these database icons turn grey to indicate that they're selected as part of your search. When you're done selecting databases, click the binoculars button to call up the search mask. All of the games found will be sent to the Clipboard. You can later hold down the SHIFT key and click each of these databases again to unselect them.

I'm frequently asked how to save the results of a search so that they can be viewed at a later date without performing the search a second time. Just copy the games into another database. You can always delete the entire database later when you're done with it.

Let's say you have performed a search in a game list, seen the games you want, and want to go back to the complete (unfiltered) list. This is pretty easy. In Fritz, Junior, and Nimzo, just click the "list" button in the database window. In ChessBase 7, you'll see a very tiny button in the lower right corner of the game list window (far to the right of the Help button). This works just like a light switch on a wall (it's a two position switch). Click it once to go back to your full game list. If you change your mind and want to go back to the list of games that met your search requirements, click it again.

If you're searching for recent games, here's a great way to speed up your search if your database is sorted chronologically. Open the game list for your database and scroll down to the first game of the first year of your search (for example, if I only want games from 1995 onward in Mega Database 98, I would scroll down the list so that game 666,924 was the first one showing in the window). Then click the "filter games" button to call up the search mask. A window appears asking you to confirm that you want to start the search with the first game number showing in the list (for example, my window says "First game" with "666924" in the box). Click OK and the search mask will appear. Once you've filled out the search mask and clicked OK, the search will commence with the first game showing in the game list and progressing to the end of the database. In my example, I cut my search time by about 75% using this scrolling method.

Don't forget the importance of the "Ignore colors" box. If you're doing a search for a player and have "Ignore colors" checked, it doesn't matter in which color box you type the player's name; all of the player's games will be found regardless of which side of the board he was seated. But if you uncheck "Ignore colors", make sure you type the player's name in the correct box.

If you're searching for all the games that two specific players contested against each other, type in both names and make sure "Ignore colors" is clicked on. Another way to do the same search in ChessBase 7 is to click the Player Index button in the Database window (this is the button that looks like a face. On my computers this looks like Edgar Allen Poe. Previous versions had a face that looked like Cindy Crawford. Note to programmers: go back to using Cindy for the icon. Better yet, change it to look like Kathy Ireland). Using the Player Index is faster on large databases because much of the material is already located. It's faster on very small databases (such as my databases of online games) because of the small number of names in the database (you get all the player names at one time, instead of an alphabetical listing).

Just pick one of the two players you're looking for and find him in the Player Index (shortcut tip: once you've gotten past the letter categories and see a list of actual names, you can click the binoculars button and type in the last name of the player to save yourself some scrolling). Then click on the filter button to call up the search mask and type in the name of the second player. ChessBase then finds all the games in which the two players were pitted against each other.

Let's say you want to find all the games of a certain player against multiple opponents (for example, Kasparov against Karpov, Ivanchuk, and Shirov). This is simple, but requires three separate searches. Follow the procedure from the previous paragraph to find all of Kasparov's games in the Player Index, then use the filter to search for Karpov. When the program gives you the list, scroll back up to the top of the list, click once on the first listed game to highlight it, then hit SHIFT-END on your keyboard. This highlights all of the games on the list. Click the button at the bottom of the window that looks like a little red push pin (the kind you'd use on a cork bulletin board). This has now sent all of the Kasparov-Karpov games to the ChessBase Clipboard.

Next click the little "light switch" in the lower right-hand corner of the list window. This restores the list to show all of Kasparov's games. Click the filter button again and replace "Karpov" with "Ivanchuk". Click OK and the list will now show all of Kasparov's games against Ivanchuk. Scroll to the top of the list, single-click on the first listed game to highlight it, hit SHIFT-END, and click the red push-pin button.

Now repeat the process, replacing "Ivanchuk" with "Shirov". When you're finished, you can return to the Database window, double-click on the Clipboard, and have your list of all the games Garry played against either Karpov, Ivanchuk, or Shirov. (By the way, for those who are intensely curious, Kasparov and Karpov had played 167 tournament and match games against each other by the end of 1996. No wonder they're sick of each other.)

A real bugaboo for a lot of players is the search by openings. The easiest way to do this is to search by ECO (Encyclopedia of Chess Openings) classifications. I realize that many chessplayers don't know these codes by heart (few people do, actually -- I know the ones for the openings I specialize in, plus a few extras). An online resourse for this can be found at Chess Mecca. Becoming familiar with these classifications can save you a world of work in performing searches. You just type an ECO code (or range of codes) in the spaces provided in the search mask and these will be included in the search criteria.

How detailed should your searches be? That really depends on what you're searching for. If you find that a search coughs up too much material, narrow it by some criteria of your choosing. If you're looking for all the games of a particular opening and you get hundreds or thousands of "hits", break down the search into smaller chunks. If you're an experienced player of that opening, try looking for all the games of that opening played in the last two years. If you're new to the opening in question, you might consider learning it according to it's historical development: do a search for all the games of that opening through 1930. Then go from 1931 to 1945 in your second search. On your third pass, try 1946 to 1960, and so on. I'm not saying that this is necessarily the best way to tackle the material. I'm just providing you with some ideas ("the author, laughing aloud, deftly sidesteps the oncoming avalanche of e-mail furiously written by masters who tell him he's full of doody...").

The more stuff you enter in the search mask, the less material you get back from the search (it's sort of an "inverse-square law" application). Let's look at an example, using Mega Database 98:

Games played by Garry Kasparov: 1276
Games played by Garry Kasparov as Black: 579
Games won by Garry Kasparov as Black: 214
Games won by Garry Kasparov as Black, playing the King's Indian Defense: 46
Games won by Garry Kasparov as Black, playing the King's Indian Defense, against opposition rated 2500 or higher: 38
Games won by Garry Kasparov as Black, playing the King's Indian Defense, against opposition rated 2500 or higher, in 35 moves or less: 13
Games won by Garry Kasparov as Black, playing the King's Indian Defense, against opposition rated 2500 or higher, in 35 moves or less, in which a Black Knight was played to b4 between moves 5 and 30: 2

(Again for the intensely curious, the two games were against Kavalek, Bugojno 1982, and Portisch, Linares 1990).

It's easy to see from this that the more stuff you ask for, the less stuff you get (much like my kids at Christmas). The trick is to tailor your searches to find what you need without being overwhelmed by the mass of data or underwhelmed by the scarcity of information (I wanted to say "paucity of information" but I didn't know how to spell it).

So there you have it: some basic tips for using the search mask. Enjoy your scavenger hunt through your databases. Until next week, have fun!

You can e-mail me with your comments, suggestions, and analysis for Electronic T-Notes. If you love gambits, stop by the Chess Kamikaze Home Page and the Yahoo Chess Kamikazes Club.