Reply
 
LinkBack Thread Tools Display Modes
  #1   Report Post  
Old April 15th 07, 11:11 AM posted to rec.games.chess.computer
external usenet poster
 
First recorded activity by ChessBanter: Apr 2007
Posts: 13
Default CBH file-format spec and the need for a new database program?

Hello - my interest in chess and chess-playing programs has now peaked
again and before leaving "the scene" several years ago I was in the
process of decoding/hacking the .CBH (and family) of file-formats in
order to support the format in a new chess database program I was
developing.

Can anyone tell me if any progress has been made decoding the CBH file-
format?

Also can anyone, who uses chess databases, tell me if there is any
"need" for yet another chess database program? I would make the
program freely available, though perhaps not the source code, as I
have with my previous contributions to the community...

Thanks in advance,
Andy Duplain

  #2   Report Post  
Old April 15th 07, 11:47 AM posted to rec.games.chess.computer
external usenet poster
 
First recorded activity by ChessBanter: Apr 2005
Posts: 346
Default CBH file-format spec and the need for a new database program?

On Apr 15, 3:11 am, "Andy Duplain" wrote:
Hello - my interest in chess and chess-playing programs has now peaked
again and before leaving "the scene" several years ago I was in the
process of decoding/hacking the .CBH (and family) of file-formats in
order to support the format in a new chess database program I was
developing.

Can anyone tell me if any progress has been made decoding the CBH file-
format?

Also can anyone, who uses chess databases, tell me if there is any
"need" for yet another chess database program? I would make the
program freely available, though perhaps not the source code, as I
have with my previous contributions to the community...

Thanks in advance,
Andy Duplain



Yes, Andy, there's a need for a chess database that is superior to the
current freeware dB (see my post in this forum today).

But even more importantly, there's a need for a decent chess variants
program(s), such as traditional Indian chess (sorry my book by Murray
is just out of reach), suicide chess (winner loses faster),
Blitzcraig, etc and maybe even a GO and/or bridge artificial
intelligence program for good measure.

Now with ADO.NET making dB programming a bit easier it should be
easier to code a dB, but, as you know better than I, you cannot use
canned library routines when writing a chess engine--speed is of
upmost importance. It always amazes me how Fritz will find nearly the
best line in 5 seconds as much as in 20 seconds or more. Amazing.
You know the programmers are not using the canned templates and
library functions provided by the Windows framework.

RL



  #3   Report Post  
Old April 15th 07, 03:00 PM posted to rec.games.chess.computer
external usenet poster
 
First recorded activity by ChessBanter: Dec 2005
Posts: 383
Default CBH file-format spec and the need for a new database program?

15.04.2007 12:47, raylopez99:

Yes, Andy, there's a need for a chess database that is superior to the
current freeware dB (see my post in this forum today).


That is just a glitch in the GUI. If required this could be easily
fixed. There is no need to write a complete new DB just because of this.

But even more importantly, there's a need for a decent chess variants
program(s), such as traditional Indian chess (sorry my book by Murray
is just out of reach), suicide chess (winner loses faster),
Blitzcraig, etc and maybe even a GO and/or bridge artificial
intelligence program for good measure.


Maybe some word processing would not be bad; sending e-mails, watching
videos and playing mp3 and ogg would also be nice. And when idle it
could do some SETI calculations.

Now with ADO.NET making dB programming a bit easier it should be
easier to code a dB,


The main work when writing a chess DB is creating a suitable data format
and search algorithms, so that you can perform powerful searches in
quick time. ADO.NET or things like that are of absolutely no help there.

but, as you know better than I, you cannot use
canned library routines when writing a chess engine


Chess engines are just an add-on to a chess DB.

You know the programmers are not using the canned templates and
library functions provided by the Windows framework.


Ahem, what kind of library functions or "templates" (btw - what do you
mean with that?) do you need when doing pure calculations? You need this
stuff only when interacting with the operating system, especially for
doing the GUI, disk operations and such. And here they use of course the
provided Windows framework.

Greetings,
Ralf
  #4   Report Post  
Old April 15th 07, 04:00 PM posted to rec.games.chess.computer
external usenet poster
 
First recorded activity by ChessBanter: Apr 2007
Posts: 13
Default CBH file-format spec and the need for a new database program?

Sounds encouraging. However my plans would be to produce a database
program that does its best to support every popular chess database
format, breaking any stranglehold a provider has over that format. I
don't plan to use ADO.NET - simply plain-old C++ - and to provide it
free of charge with the possibility of going open source if demand
dictates. I also wouldn't support the variants you mention, however
if it did go open source, others may fill the gaps - my task is
complex enough to ignore them for the moment.

However I would need help - not with the coding, but with the
decyphering of file-formats - in the form of source code or specs.

I have already made a start (back in 1998) and my initial piece of
work is to ween off the use of Stingray's Objective Toolkit and onto
either generic MFC classes or to freely available ones - thus making
the source usable to others, if open source occurs. I also have to re-
teach myself how to program under Windows and in C++, having spent
most of my time since using Java and UNIX...

Best Regards,
Andy

  #5   Report Post  
Old April 15th 07, 04:28 PM posted to rec.games.chess.computer
external usenet poster
 
First recorded activity by ChessBanter: Dec 2005
Posts: 383
Default CBH file-format spec and the need for a new database program?

15.04.2007 17:00, Andy Duplain:
I also have to re-
teach myself how to program under Windows and in C++, having spent
most of my time since using Java and UNIX...


Do you regard the performance difference between Java and C++ as so big,
that it is necessary to change the language? There are pure Java SQL
databases around, which are quite fast. Why shouldn't it be possible to
write a chess DB in Java? Or are there other reasons than performance
which speak against Java?

With Chessbase and Chess Assistant there are already two quite good
databases under Windows on the market, while Linux and Macintosh have
only Scid as a choice. Sure, most users will be under Windows, but it
might be a nice idea anyway to have a solution for the minority as well.
So, something platform independent might be an idea. If it shall not be
Java, there are at least other options than MFC, which is completely
outdated (and horrible...). If programming under Windows and not using
..NET, it would be anyway a good idea to look at other frameworks - not
only because of the ability to stay cross-platform. If you are serious
about open source, Qt might be a good choice. Other open source
frameworks exist, which don't require you to open source your application.

Greetings,
Ralf


  #6   Report Post  
Old April 15th 07, 06:22 PM posted to rec.games.chess.computer
external usenet poster
 
First recorded activity by ChessBanter: Apr 2007
Posts: 13
Default CBH file-format spec and the need for a new database program?

Sounds encouraging. My intention is to produce a Windows program that
can read/write as many different databases as possible, with useful
search features and the ability to add features via plug-in (engines
etc.). I don't think however that I can provide initial support for
the chess variants you mention, however perhaps at a later point this
will be possible.

I have already made a start (back in 1998 or so) and have a partially
working program, however I am having to reacquint myself with Windows/C
++ programming having been in the Java/UNIX world since I originally
wrote the program.

But I need help - not with the coding, but with the decyphering of the
file-formats, so the more people can tell me about popular formats
(other than CBF and PGN) the better.

I won't be using ADO.NET as I don't intend to create yet another
database format - simply a program that can read/write as many formats
as possible and provide the same level of functionality to all
supported formats.

Best Regards,
Andy

  #7   Report Post  
Old April 15th 07, 07:23 PM posted to rec.games.chess.computer
external usenet poster
 
First recorded activity by ChessBanter: Apr 2007
Posts: 13
Default CBH file-format spec and the need for a new database program?

"Ralf Callenberg" wrote in message
...
15.04.2007 17:00, Andy Duplain:
I also have to re-
teach myself how to program under Windows and in C++, having spent
most of my time since using Java and UNIX...


Do you regard the performance difference between Java and C++ as so big,
that it is necessary to change the language? There are pure Java SQL
databases around, which are quite fast. Why shouldn't it be possible to
write a chess DB in Java? Or are there other reasons than performance
which speak against Java?


I haven't spoken against Java - I find it an excellent platform while
programming web server code, and I think it provide a fantastically rich and
resilient environment, however there are 2 reasons I would go for C++: 1) I
already have a partially written program written in C++ and MFC (and
Objective Toolkit, which I will have to rectify) and 2) I do want the
application to be as fast as possible - this will be an important feature.

With Chessbase and Chess Assistant there are already two quite good
databases under Windows on the market, while Linux and Macintosh have only
Scid as a choice. Sure, most users will be under Windows, but it might be
a nice idea anyway to have a solution for the minority as well. So,
something platform independent might be an idea. If it shall not be Java,
there are at least other options than MFC, which is completely outdated
(and horrible...). If programming under Windows and not using .NET, it
would be anyway a good idea to look at other frameworks - not only because
of the ability to stay cross-platform. If you are serious about open
source, Qt might be a good choice. Other open source frameworks exist,
which don't require you to open source your application.


I agree with you - however these two databases are commercial and I want to
provide something that is free to use. While I understand that not everyone
in the world uses Windows (I have a Linux server myself that I'm rather fond
of) I use Windows for my client environment. While I mention the
possibility of open source I am not necessarily going to provide a cross
platform solution - if others want to participate in order to make it work
under Mac/Linux/Whatever then so be it, however it's possible to be open
source without writing it in a cross platform environment.

I know C++ and MFC and although a little rusty, I am not going to learn
newer technologies to implement this thing - as already mentioned I want to
make use of existing work. MFC might be outdated (been out of the Windows
programming scene also) it certainly isn't horrible by any means - I quite
like it - and provides a more than adequate platform for implementing a
Windows program.

Best Regards,
Andy


  #8   Report Post  
Old April 15th 07, 08:00 PM posted to rec.games.chess.computer
external usenet poster
 
First recorded activity by ChessBanter: Apr 2007
Posts: 188
Default CBH file-format spec and the need for a new database program?

If you see that either the interface, or the methodology is not useful
in SCID, can't you just use the DB and the search mechanisms in that,
and build from there?

That way you keep the DB's that work with Scid still working, and if
anyone does anything with CBH databases they can do that as well?

Though it seems that you are ticked off at CB for some reason, and feel
the need to release their IP on the world. Though I for one, fully
support CB with my money, and my words, because I feel that CB has
single handedly, more than any other company or group out there, to the
world of Chess as we know it. And the profit motive has made it so.
And that they simply do not make it too onerous for those that really
need those features on any given day to do so.

But, good luck to you.
  #9   Report Post  
Old April 15th 07, 10:03 PM posted to rec.games.chess.computer
external usenet poster
 
First recorded activity by ChessBanter: Apr 2005
Posts: 346
Default CBH file-format spec and the need for a new database program?

On Apr 15, 7:00 am, Ralf Callenberg wrote:
15.04.2007 12:47, raylopez99:

Yes, Andy, there's a need for a chess database that is superior to the
current freeware dB (see my post in this forum today).


That is just a glitch in the GUI. If required this could be easily
fixed. There is no need to write a complete new DB just because of this.


Then I look forward to your patch. Please post it to this board when
you are done; a bright fellow like you should have it done in 30
minutes or so. Probably it's one line of code that needs to be fixed
along the lines of activating the evaluation window to keep it in the
foreground at all times.


But even more importantly, there's a need for a decent chess variants
program(s), such as traditional Indian chess (sorry my book by Murray
is just out of reach), suicide chess (winner loses faster),
Blitzcraig, etc and maybe even a GO and/or bridge artificial
intelligence program for good measure.


Maybe some word processing would not be bad; sending e-mails, watching
videos and playing mp3 and ogg would also be nice. And when idle it
could do some SETI calculations.


Yes, agreed; that would indeed be very cool. ;-)


Now with ADO.NET making dB programming a bit easier it should be
easier to code a dB,


The main work when writing a chess DB is creating a suitable data format
and search algorithms, so that you can perform powerful searches in
quick time. ADO.NET or things like that are of absolutely no help there.


I assume that SQL is used for search algorithms in chess dBs, no? If
not, this is news to me, please explain further.


but, as you know better than I, you cannot use
canned library routines when writing a chess engine


Chess engines are just an add-on to a chess DB.


"just" an add on for you, a programming God. FOr the rest of us
mortals it's a full time project.


You know the programmers are not using the canned templates and
library functions provided by the Windows framework.


Ahem, what kind of library functions or "templates" (btw - what do you
mean with that?)


Template is a defined term in ANSI C++, look it up. Library functions
are in Windows very type-safe with all kinds of run-time error traps
to make them foolproof, at a cost of making them very slow (but safe).


do you need when doing pure calculations? You need this
stuff only when interacting with the operating system, especially for
doing the GUI, disk operations and such. And here they use of course the
provided Windows framework.


Exactly. We are saying the same thing; sorry I was not clear. You
need "pure calculations" in a chess program (not database, I assume
you use SQL, see above). For example, traversing the chess tree is
one such "pure calculation" that does not use any template or windows
function I am aware of (that is, constructing a multi-node tree using
Min/Max Alpha/Beta and pruning, etc).

RL (master programmer---not!)



  #10   Report Post  
Old April 15th 07, 10:10 PM posted to rec.games.chess.computer
external usenet poster
 
First recorded activity by ChessBanter: Apr 2005
Posts: 346
Default CBH file-format spec and the need for a new database program?

On Apr 15, 8:28 am, Ralf Callenberg wrote:
15.04.2007 17:00, Andy Duplain:


With Chessbase and Chess Assistant there are already two quite good
databases under Windows on the market, while Linux and Macintosh have
only Scid as a choice. Sure, most users will be under Windows, but it
might be a nice idea anyway to have a solution for the minority as well.
So, something platform independent might be an idea. If it shall not be
Java, there are at least other options than MFC, which is completely
outdated (and horrible...). If programming under Windows and not using
.NET, it would be anyway a good idea to look at other frameworks - not
only because of the ability to stay cross-platform. If you are serious
about open source, Qt might be a good choice. Other open source
frameworks exist, which don't require you to open source your application.



Yes, I agree with this. But it argues strongly for using .NET, which
is platform independent (though I have not seen it yet ported to
Macintosh--but I don't follow Mac stuff). And for dBs, .NET means
ADO.NET for the most part (though of course you can use older
libraries as well). Within ADO.NET, I favor SQL Server, though of
course you can use generic legacy database providers such as OLE DB,
ODBC, or proprietary versions from Oracle, etc.

RL

Reply
Thread Tools
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT +1. The time now is 06:32 AM.

Powered by vBulletin® Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Copyright 2004-2019 ChessBanter.
The comments are property of their posters.
 

About Us

"It's about Chess"

 

Copyright © 2017