Article View: comp.archives
Article #256[rec.games.chess] X Windows interface to ICS available
From: Kirk Gunsallus
Date: Fri, 10 Apr 1992 05:55
Date: Fri, 10 Apr 1992 05:55
209 lines
7191 bytes
7191 bytes
Archive-name: auto/rec.games.chess/X-Windows-interface-to-ICS-available
Here is an X-Windows interface to the internet chess server ICS. I am only
the distributor of this program so unfortunately I cannot help debug
problems you might experience. It has been used on several machines and
most problems are worked out. It allows mouse interaction with ICS
to speed up play and lessen entry errors. More importantly, the board
is displayed graphically aloowing for easier (and better?) play.
It can be obtained by anonymous ftp from raj5.tn.cornell.edu (128.84.249.70)
in /pub file xics.tar.Z. Type uncompress xics.tar.Z and tar -xvf xics.tar.
Below is a copy of xics.man.formatted which is included in the archive.
Kirk Gunsallus
xics(PUBLIC) xics(PUBLIC)
NAME
xics - X-Windows interface to the Internet Chess Server
SYNOPSIS
xics servername portnumber
DESCRIPTION
xics is an X-Windows interface to the Internet Chess Server
(ICS). ICS is a program that allows players to connect to a
machine over the internet and play games with one another.
Normally, the output of ICS is in ASCII format which
discourages chess novices from playing, as they find it
difficult to grasp quickly a chess board printed in ASCII
format. xics parses this output and displays the chess
board on the graphics screen. One can use the mouse to make
moves (instead of typing them in on the keyboard).
Currently, only a limited functionality has been
incorporated, however, users interested in modifying the
code are encouraged to do so and distribute the code freely
to other ICS users.
xics initiates a telnet session with the specified host
(ICS) and connects to the given port number. It then opens
up a graphics window displaying the chess board. Any board
position printed by ICS is parsed and displayed by xics.
When playing a game, moves are made by clicking the mouse on
the piece to be moved and then clicking the mouse on the
square where the piece is to be moved. xics will generate
the proper move (e.g. a2-a4) and send it to ICS via telnet.
The usual ICS interface (via the keyboard) is still
available.
You can use xics for watching others play chess too. Simply
use existing ICS commands such as "observe number" and
"refresh" to print the board, which will automatically be
displayed in the graphics window. Please note that xics can
parse boards printed using "style 1" (the default style)
only.
When invoking xics, keep the xterm window from which you
invoke xics handy. You will need it for entering your name
and password and most ICS commands.
AVAILABILITY
xics works only on UNIX(TM) machines running X-Windows. It
uses only Xlib and is probably quite portable. I have tested
it successfully on a Sun-3, a Sun-4, a DecStation 5000 and
an IBM RS6000.
TECHNICAL DESCRIPTION
xics creates a bidirectional pipe between itself and telnet.
This pipe is used to feed input to telnet as well as collect
Page 1 (printed 3/29/92)
xics(PUBLIC) xics(PUBLIC)
output from it. xics multiplexes over 3 types of inputs:
stdin - whatever is typed on the keyboard is sent to the
telnet session
output of telnet - is printed on the screen as well as
parsed for displaying boards graphically
mouse clicks - are used to generate moves that are printed
on stdin and are also sent to the telnet session
COMMANDS
In addition to ICS commands that can be entered using the
keyboard, xics will allow the following:
move pieces using the mouse -- To move a piece, simply click
on it and then click on the square where the piece is
supposed to move. This is irrespective of whether you are
capturing a piece, or simply moving a piece to an empty
square or promoting it to another piece. When the mouse is
clicked on a square, the corresponding position is printed
in the status window (at the bottom), so you know what you
are moving. When a move is made, no attempt is made by xics
to see if the move is valid. The move is simply sent to ICS.
ICS will take care of ascertaining the validity of the move.
If the move is not valid, ICS will print "command not
found". If the move is valid, ICS will generate the new
board and print it. xics will grab this output and display
it on the graphics board. Thus the check for correctness of
moves is taken care of, indirectly.
Switch Sides -- Since the notation "abcdefgh" "12345678" is
always relative to white, if you are playing with black
pieces, simply click on the menu button "WHITE". The button
will change to "BLACK" and you can now play with black
pieces.
King Side Castle -- Simply click on the button "K CASTLE".
The command "o-o" will be sent to ICS.
Queen Side Castle -- Simply click on the button "Q CASTLE".
The command "o-o-o" will be sent to ICS.
Quit -- When the button "QUIT" is hit, xics will send "quit"
to ICS and will itself terminate.
BUGS
None known, but doesn't mean there aren't any.
LIMITATIONS
Several. Most ICS commands cannot be executed using the
mouse (they have to be typed in); the program will work only
Page 2 (printed 3/29/92)
xics(PUBLIC) xics(PUBLIC)
on UNIX(TM) machines; its parsing abilities are dependent on
the output format of ICS; not all output of telnet is
represented graphically, etc., etc., etc.
Perhaps the most serious limitation is that if the format of
ICS output is changed, xics will cease to work unless its
source is modified. Hopefully the person who maintains ICS
will refrain from doing so.
AUTHOR
Wishes to remain anonymous because he is afraid that if his
identity is known, he will have to support the program for
the rest of his life.
COPYRIGHT
This software is free and can be distributed freely without
permission. You can make modifications to it, but please
don't break the program!
ACKNOWLEDGEMENTS
The bitmaps for chess pieces were obtained from gnuchess.
SEE ALSO
Answers to Frequently Asked Questions (FAQ) in the newsgroup
rec.games.chess on USENET.
Page 3 (printed 3/29/92)
Technical Details
Message-ID:
<s3ajsINN8gr@agate.berkeley.edu>Path:
arc1-ca.pugleaf.net!sparky!uunet!usc!elroy.jpl.nasa.gov!ames!agate!theory.TC.Cornell.EDU!kxgjReferences:
<1992Apr9.201012.12219@tc.cornell.edu>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!sparky!uunet!usc!elroy.jpl.nasa.gov!ames!agate!theory.TC.Cornell.EDU!kxgj From: kxgj@theory.TC.Cornell.EDU (Kirk Gunsallus) Newsgroups: comp.archives Subject: [rec.games.chess] X Windows interface to ICS available Followup-To: rec.games.chess Date: 10 Apr 1992 05:55:08 GMT Organization: Cornell Theory Center Lines: 210 Approved: adam@soda.berkeley.edu Distribution: world Message-ID: <s3ajsINN8gr@agate.berkeley.edu> References: <1992Apr9.201012.12219@tc.cornell.edu> NNTP-Posting-Host: soda.berkeley.edu X-Original-Newsgroups: rec.games.chess X-Original-Date: 9 Apr 92 20:10:12 GMT