Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

SCP: ANSI C chess program package available via ftp

50 views
Skip to first unread message

Steven J. Edwards

unread,
Mar 15, 1993, 6:25:00 AM3/15/93
to
Greetings.

Here is the README file for the SCP ANSI C chess program package. I
have recently uploaded it to the valkyries.andrew.cmu.edu ftp site in
the /pub/chess/uploads directory as:

-rw-r----- 1 ftp staff 34547 Mar 15 16:18 SCP.tar.Z

Enjoy.

-- 8< ----------------------------------------------------------------------

README: Information abstract for the SCP package

Revised: 1993.03.15

by: s...@xylos.ma30.bull.com

----

The SCP project is a port of the Stanback Chess Program, a C language
chessplaying program written by John Stanback in 1987 and generously
released into the public domain.

One version of his program went on to become the base for GNUchess and
is still under development by various hackers at large. While this
has produced some interesting results, the project has grown a bit
large in both size and complexity. This growth has made it difficult
for newcomers to start with their own development efforts because of
the increase in both hardware and software resource demand just to get
the GNUchess source installed and running. Also, experienced
programmers have had difficulty with integrating the basic code into
supervisory programs for comparison testing. The original, non-ANSI C
source was never really restructured to take advantage of more modern
programming techniques.

Therefore, this SCP package has been supplied. Unlike the current
GNUchess (from which nothing has been borrowed to date), this version
has the following characteristics designed for newcomers and
integrators:

1: It has full, strict ANSI C coding; no semantic diagnostics are
generated by fussy compilers.

2: A somewhat readable coding style is used; this is of course a
subjective judgement, but comparisons are welcome.

3: It has reasonable symbolic naming for types, constants, variables,
and functions.

4: The source is somewhat more manageable with only direct
chessplaying code involved and without the distraction of peripheral
utilities.

5: Compared to GNUchess, the run time version of the program is much
smaller in size and is more likely to be easily ported to small
machines; less than about 30 Kbyte is necessary for data storage.

6: No unusual assumptions are made about the development environment.
All that is required is an ANSI C compiler and a linking facility.

7: There are no tricky preprocessor "ifdef" constructs in the source;
the same version works for all targets seen so far. Targets include a
number of different Unix-like systems and some Macintoshes. It is
believed that the program will work okay on reasonable Amiga, Atari,
and various MS-DOS systems. (If you have a spare machine that has
little to do, this just might be a good project to keep it busy.)

8: The program does not use the curses library as not everyone (such
as the typical Macintosh developer) has access to curses support; only
simple stream I/O is required for operation.

9: Because the program has been simplified, a rather simple and
hopefully universal Makefile is provided.

10: Every function has at least one comment! There is also a couple
of useful block comments at the start of the main C source file.

The SCP is still undergoing development, and revised versions can be
expected in the future although no schedule will be given. There are
three goals at the moment:

1: Increase the consistency and specificity among names and types used
throughout the project; the idea is to use the most informative (i.e.,
restrictive) type definitions instead of the same old "short int" for
almost everything.

2: Install the code needed for integration into the SAN Kit. The SAN
Kit is a portable ANSI C source toolkit for the chess programming
community. A version of the SAN Kit due fairly soon will use the SCP
as a "chess engine". This will provide a useful example for those
interested in writing their own chessplaying programs. The
integration will also make the full SAN command processing and
communication services available to the SCP. The grand idea is to use
the SAN Kit to handle all of the "grunt work" of writing chess
software and to also support a single set of standards for chess data
interchange including moves (SAN), positions (FEN), games (PGN), and
commands (IPCC). More information is included in the SAN Kit which
can be found at ftp sites like valkyries.andrew.cmu.edu (as the file
"SAN.tar.Z" somewhere in the /pub/chess directory).

3) Improvements in playing strength along with bugfixes to the SCP
will be made, but these are really not a big part of the initial
effort. These may be best done by experimenters as has been done with
GNUchess. Remember, the idea is to keep the SCP relatively simple for
both its intended audience and its role as a sample SAN Kit chess
engine.

As will all code related to the SAN Kit project, the SCP is provided
on an "as is" basis and without any warranty whatsoever. It may be
freely redistributed as long long as such redistribution does not
hinder later distribution or usage by others. This README file is to
be included in any subsequent distributions.

Remember: "Gens uns sumus"

README: EOF

-- 8< ----------------------------------------------------------------------

[The above opinions expressed are my own; not necessarily held by others.]
== Steven J. Edwards Bull HN Information Systems Inc. ==
== (508) 294-3484 300 Concord Road MS 820A ==
== s...@xylos.ma30.bull.com Billerica, MA 01821 USA ==
"That Government which Governs the Least, Governs Best." -- Thomas Jefferson

0 new messages