Cairo-Board (FICS compatible Linux chess interface)

Discussion of chess software programming and technical issues.

Moderator: Ras

User avatar
Roland Chastain
Posts: 680
Joined: Sat Jun 08, 2013 10:07 am
Location: France
Full name: Roland Chastain

Cairo-Board (FICS compatible Linux chess interface)

Post by Roland Chastain »

Hello!

I have just discovered a very nice program of which I had never heard before. It is a FICS compatible Linux chess interface written in C by Julien Bramary: https://github.com/julbra/cairo-board

After a small modification of the source code (see my commit here), I could compile the program, and as far as I see it works perfectly.

I also had to change the path to Stockfish, in uci-adapter.c:

Code: Select all

	//TODO: can we discover these from $PATH?
  /*
	if (brainfish) {
		argv[0] = "/usr/local/bin/brainfish";
	} else {
		argv[0] = "/usr/bin/stockfish";
	}
  */
  argv[0] = "/home/roland/Applications/moteurs/stockfish/11/Linux/stockfish_20011801_x64";
The application crashes when Stockfish is not found.

I also changed the value of the variable ics_mode, in main.c:

Code: Select all

gboolean ics_mode = TRUE;
After that I could connect to FICS.

Code: Select all

[roland@localhost cairo-board (master)]$ ./cairo_board
Connected to ICS server.
[parse UCI thread] - Starting UCI parser
[UCI manager thread] - Starting UCI manager

             _       __     __                             __      
            | |     / /__  / /________  ____ ___  ___     / /_____ 
            | | /| / / _ \/ / ___/ __ \/ __ `__ \/ _ \   / __/ __ \
            | |/ |/ /  __/ / /__/ /_/ / / / / / /  __/  / /_/ /_/ /
            |__/|__/\___/_/\___/\____/_/ /_/ /_/\___/   \__/\____/ 
       ^^__                  _____________________                 _  _  _ 
      /  - \_               / ____/  _/ ____/ ___/   _            | || || |
    <|    __<              / /_   / // /    \__ \   (_)           |_______|
    <|    \               / __/ _/ // /___ ___/ /  _              \__ ___ /
    <|     \             /_/   /___/\____//____/  (_)              |___|_|
    <|______\                                                      |_|___|
     _|____|_        ======================================        |___|_|
    (________)         freechess.org  ----  54.39.129.129         (_______)
    /________\       ======================================       /_______\ 
                       (Login screen designed by Alefith)

   ****** Welcome to the Free Internet Chess Server at freechess.org ******

Webpage: http://www.freechess.org
Head admin : mattuc   Complaints to : complaints@freechess.org
Server location: freechess.org   Server version : 1.25.20

      If you are not a registered player, enter guest or a unique ID.
             (If your return key does not work, use cntrl-J)

login: 
"rchastain" is a registered name.  If it is yours, type the password.
If not, just hit return to try another name.

password: 

**** rchastain ****
------------------------------------------------------------------------------
                         *** Message Of The Day ***


Today's Scheduled Events:
    0730: The Daily 5 0
    1200  Scheduled Fischer Random at 12:00 pm Server Time
    1400: 20 0 at 1400
    1600: 1 0 tournament
    1800: Thursday's Scheduled 15 0
    2200: The Nightly 5 0


To join a scheduled tournament, join channel 49 (+channel 49)
And be there for the scheduled start.

For a complete tournament schedule, type "td help schedule"
Regular tournaments are run all day, "td set tourneyinfo on" to see them.

All times are server times.
To check the current server time, use "date".
==============================================================================
FICS web page: http://www.freechess.org   - add a link to FICS from your page
==============================================================================

Index of new news items:
1633 (Tue, Apr  2) Chess for Android app can now connect to FICS.
1641 (Sat, Feb 29) Diamond Chess - New app for iPhones and iPads.
1647 (Wed, Jun  3) RIP marcelk
1655 (Sat, Nov 28) Diamond Chess app now available for Android devices.
1656 (Fri, Jan 22) Astrobot - new astrology/astronomy bot.
1660 (Sat, Apr 10) MAC version of Diamond Chess app updated & has new download URL.
1666 (Mon, Dec  6) FICS Donations Drive #3 Progress Report
1668 (Sun, Dec 26) ATT.net no longer blocking our emails.
1670 (Fri, Feb  4) Password resets being done by hand for the time being.
1671 (Fri, Feb  4) Adjudications are being done by hand for the time being.
("news <n>" will display item number 'n')


You have 0 messages (0 unread).
Use "messages u" to view unread messages and "clearmessages *" to clear all.
defprompt set.
pendinfo set.
nowrap set.
lock set.
Style 12 set.
Auto-flagging enabled.
-- channel list: 4 channels --
1   2   49  50  
[roland@localhost cairo-board (master)]$ 
Now I have to learn the FICS protocol. :)
Qui trop embrasse mal étreint.
User avatar
Roland Chastain
Posts: 680
Joined: Sat Jun 08, 2013 10:07 am
Location: France
Full name: Roland Chastain

Re: Cairo-Board (FICS compatible Linux chess interface)

Post by Roland Chastain »

To build the application:

Code: Select all

git clone https://github.com/julbra/cairo-board
# or git clone https://github.com/rchastain/cairo-board
cd cairo-board
mkdir build
cd build
cmake ..
make
Qui trop embrasse mal étreint.
User avatar
Roland Chastain
Posts: 680
Joined: Sat Jun 08, 2013 10:07 am
Location: France
Full name: Roland Chastain

Re: Cairo-Board (FICS compatible Linux chess interface)

Post by Roland Chastain »

I played a game against someone on freechess.org. I confirm that the application works perfectly. 8-)
Qui trop embrasse mal étreint.