home *** CD-ROM | disk | FTP | other *** search
/ Dream 57 / Amiga_Dream_57.iso / Amiga / Jeux / Reflexion / Crafty-15.19.lha / crafty-15.19 / doc / README.amiga < prev   
Text File  |  1998-10-01  |  6KB  |  176 lines

  1. Short:    Crafty Chess program  V 15.19
  2. Author:   hyatt@cis.uab.edu (Robert M. Hyatt)
  3. Uploader: dlorre@caramail.com (Dominique Lorre)
  4. Type:     game/board
  5.  
  6.  
  7.  
  8. From Crafty.FAQ (author : Anil Mungal (amungal@vnet.ibm.com)) :
  9. ---
  10. [1] What is Crafty?
  11.  
  12. Crafty is a chess program written by Bob Hyatt (hyatt@cis.uab.edu).
  13. It is modeled after Cray Blitz (also written by Bob).
  14.  
  15. Crafty has the following features:
  16. - written in C
  17. - can be compiled with the GNU C compiler on various platforms
  18. - has a customizable opening book
  19. - supports tablebases (Steven Edward's endgame database)
  20. - text interface
  21.  
  22. Crafty is a work in progress, and is frequently updated/enhanced by Bob.
  23. -----
  24. [1.1] What platforms can Crafty run on?
  25. ---
  26. Now, on the Amiga !
  27.  
  28. Crafty is really strong. It wins 2-0 again UChess which was the strongest
  29. until now. It has also a lot a features, is PGN aware and also maintain an
  30. internal list of IM/GM ! I noticed it was particularly good in endings:
  31. White : Pc7, Kd7
  32. Black: Pb7, Bg6, Kg3
  33. White to move.
  34. Crafty found the draw in 20 minutes on 68030/28Mhz !
  35.  
  36. THE GOOD NEWS
  37. Crafty is now stable and the new version seems stronger. Also the book
  38. creation needs much less memory.
  39.  
  40. THE BAD NEWS
  41. Crafty still not works with AmyBoard and now only supports XBoard 4.0.
  42. This means that we have either to use it with X11 and XBoard-4.0 or to
  43. update AmyBoard to the 4.0 version (I say we because if you are working on it
  44. I would appreciate to be informed about this).
  45.  
  46. There are also some memory problems. In resume : if you don't have enough
  47. memory for the hash size, your system might crash. This will not happen
  48. on startup since I have put some special code for handling this but only
  49. if you declare a big hash size later or if your book is too big. The author
  50. of crafty, Mr. Hyatt, recommends that you don't allocate more than the
  51. half of your available memory for the hash size and if you follow this
  52. recommendation you should not have any problem.
  53.  
  54. SYSTEM REQUIREMENTS
  55. I think crafty would run on a 2Mb system.
  56. Due to the way I compiled it, crafty requires a 68020 and a 2.0 system.
  57.  
  58. INSTALLATION
  59. First, you must have a minimal Geek Gadgets distribution. If you don't,
  60. please do the following :
  61.  
  62. Makedir <YourPath>/GG
  63. Assign GG: <YourPath>/GG
  64. Assign GNU: GG:
  65. Assign ADE: GG
  66. The two Assigns for ADE and GNU are for ancient names of the ADE distribution.
  67. If you do this you will not have any trouble in the future.
  68. Makedir GG:lib
  69. Makedir GG:bin
  70. Makedir GG:Sys
  71.  
  72. A few words of explanation : The geek gagdets is providing a library named
  73. ixemul.library which is a NetBSD kernel. So it is very Unix-like. I don't want
  74. to go into details but when you want to install a new Geek-Gagdets utility
  75. it will have to be installed here, in the GG: drawer.
  76.  
  77. Now, install the ixemul.library, the name depends on the flavor you choose :
  78.  
  79. Cd GG:
  80. Copy <SrcPath>ixemul-bin.lha ""
  81. Lha x ixemul-bin
  82.  
  83. And ixemul will be extracted to your Sys directory
  84.  
  85. If the archive is in the form tar.gz :
  86.  
  87. Cd G::
  88. copy <SrcPath>ixemul-bin.tar.gz ""
  89. gunzip ixemul-bin.tar.gz
  90. tar xvf ixemul-bin.tar
  91.  
  92. Of course, in this case you will need tar and gzip in your path.
  93.  
  94. If the ixemul is a special flavor you may need to rename it :
  95.  
  96. Cd GG:Sys/Libs
  97. Rename ixemul020.library as ixemul.library
  98. Rename ixnet020.library as ixnetlibrary
  99.  
  100. Now, all you need is to add the following in your user-startup :
  101.  
  102. Assign GG: <YourPath>/GG
  103. Assign GNU: GG
  104. Assign ADE: GG:
  105. Path GG:bin ADD
  106. Assign LIBS: GG:Sys/Libs ADD
  107.  
  108. As I said, this is minimal, you might need other assigns such as info:
  109. for GG:info but this is not needed by Crafty. If your are interested,
  110. you should have look on the Geek gadgets docs on the Aminet in dev/gg or
  111. on the geek Gadgets site at http://www.ninemoons.com.
  112.  
  113. When you have done this, or if you have already a suitable Geek Gadgets
  114. installation, crafty can be installed :
  115.  
  116.  
  117. Cd <CraftyPath>
  118. Copy <SrcPath>crafty-15.19.lha ""
  119. Lha x crafty-15.19
  120.  
  121. The directory crafty-15.19 will be created.
  122.  
  123. It is better to use crafty on its directory. I have made a cleanup script
  124. that will remove all the extra files
  125. Just pay attention to the fact that crafty is creating two files each time
  126. you play a game, so starting it from any directory will create a lot of
  127. CLp files. Always starting Crafty from the same drawer is a good habit.
  128.  
  129.  
  130. DEVELOPER INFORMATION
  131. This is the list of modifications I have done for making the Amiga version
  132. of Crafty-15.19.
  133.  
  134. 1) I did not used the code I made for the 15.9 but started from the
  135. 15.19 official version. Anyway the author of Crafty seems to have integrated
  136. some of my changes.
  137.  
  138. 2) I have modified some of the init.c file because crafty was requiring
  139. about 7M on startup. The Amiga code uses AvailMem to check how many memory
  140. Crafty can use.
  141.  
  142. 3) I removed the old _kbhit function from a previous version of Crafty
  143. because the ixemul.library is good enough to handle the keyboard like
  144. an UNIX system.
  145.  
  146. 4) I discovered a bug when Crafty was compiled with -fomit-frame-pointer
  147. (egcs-1.0.2). The file test.pgn reproduces it : Enter analyze mode,
  148. then read test.pgn and try the following moves : Qxa2 and Kxc3.
  149. If compiled with -fomit-frame-pointer the reply is :
  150.                 2     0.68  Mat03   31. ... Rxb3+ 32. Kd4 Qa1+ 33. Kd5
  151.                                     Qe5#
  152. which is false because the knight can take the queen !
  153.  
  154. If not compiled with -fomit-frame-pointer the reply is:
  155.                 2     0.63  Mat04   31. ... Rxb3+ 32. Kd4 Qf2+ 33. Kd5
  156.                                     Rc5+ 34. Ke4 Qe3#
  157. which is correct. Anyway the program is stable because it will reproduce
  158. the same output when given this position to analyze.
  159.  
  160. 5) If you try some options such as compiling without -mc68020 you might have
  161. some compiler errors in attacks.c and movgen.c.
  162. This is due to the complexity of the code and you will have to live with it.
  163.  
  164. 6) After some tests it appeared that COMPACT_ATTACKS and SPLIT_SHIFTS were
  165. giving the best results.
  166.  
  167. 7) Compiled with egcs and stuff from the Geek Gadgets May 98 Snapshot.
  168.  
  169. 8) Crafty will not compile on SAS/C because it needs 8 bytes long long.
  170. If you really want to do that you will have to switch to C++, create
  171. a BITBOARD class and perform an heavy modification to the sources (mainly
  172. casting) and do the work again when you will you want to upgrade to the
  173. next version. You can look at the ulonglong.h file if you are interested.
  174.  
  175. Dominique Lorre (dlorre@craramail.com) 1-Oct-98
  176.