Author: Ulrich Tuerke
Date: 09:24:33 03/13/03
Go up one level in this thread
On March 13, 2003 at 12:08:52, Mike Hood wrote: >On March 13, 2003 at 05:30:45, Ulrich Tuerke wrote: > >>On March 13, 2003 at 04:34:39, Igor V. Korshunov wrote: >> >>>Hi there! >>> >>>I know some engines that exist as Fritz native also. This is Comet, Crafty, >>>List, EXchess and Faile. >>> >>>How I can convert my own engine to Fritz native? >> >>You have to make an agreement with ChessBase in order to do this. >> >>> >>>Can somebody give me useful hints? >> >>If I were you, I'd rather consider supporting UCI. As a "free bonus" your engine >>will then also run perfectly under Fritz-7 (or later). >> >>I don't see real advantages of supporting a native CB interface. >> >>Uli > >I've heard rumours that the Chessbase protocol is secret, only disclosed >grudgingly to engine programmers that Chessbase approves of, but I don't >understand that. Wouldn't it be in Chessbase's own commercial interests to make >their protocol public and encourage as many programmers as possible to write >Chessbase native engines? After all, that would be a gentle encouragement for >people to buy one of the Chessbase programs in order to get the GUI. If >Chessbase is worried about there being a flood of inferior engines (by >"inferior" I don't mean weaker engines, I mean engines that don't correctly >support the protocol) there could be a final testing done by Chessbase before >they give the final seal of approval: posting it for download on their web site. Well, I don't really know because I'm not a CB employe. However, the CB protocol is very different from the other protocols in one respect: whereas UCI and wb are protocols defining the communication between different processes, the CB kind of protocol defines how a dynamic link library has to behave. The CB natives are running in the process context of the GUI, i.e. any engine crash will also crash the GUI. Imagine the flood of complaints and bug reports regarding the Fritz-GUI which could be raised in case of buggy native engines. I don't know the windows world to well, but may there is even the possibilty that engine code may erroneously write into the virtual address space of the GUI modules leading to peculiar errors (kind of undetected access violations). I could imagine that these properties make CB very careful in selecting native engines. But this is just a guess. Uli > >Which brings me to another question: what are the criteria for UCI engines being >offered for download on Chessbase's site? The current list is very small: >Pharaon, Sjeng and Tao. And these three are bad examples, because Pharaon relies >heavily on an ini-file (in Winboard manner) and I've never been able to get Tao >to run stably in the Chessbase GUI. (Tao runs perfectly with Arena). > >After reading a comprehensive summary of today's chess protocols in another >forum, it seems that there are only three major protocols in use: Winboard, UCI >and Chessbase. They all have their advantages and disadvantages, but let's just >accept the fact that they exist side by side. Period. Rather than fiddling about >with adapters, why doesn't someone create protocol modules for all three >protocols with identical parameters. That would be in agreement with the main >concept of object-oriented programming: reusability. Then a programmer could >finish his engine, download all three modules, link them with his engine and >decide whether to release all three versions of his engine or just one. The >further advantage of this is that due to the encapsulation of the protocol >programming in three pre-tested modules, he would only have to test one version >of his program, and he could assume that the other two versions work perfectly.
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.