Hi! 

First of all lets compile this thing:

1) Look at config.h. There might be something you want to change

2) Have a quick look at Imakefile. If you don't have a working gcc remove the
   CC =  and 
   CCOPTIONS =  lines.

   Also check the paths for the binaries and the man-page. 

3) Run 'xmkmf' 

4) Run 'make xfibs' 
   If you don't have xmkmf, have a look at Makefile.raw 
   
Remark from rjohnson:

   If your system does not support function prototyping, add the compiler
   option "-D_NO_PROTO". (Look around in the Makefile. Search for CCOPTIONS
   or similar names) On HP, use "-Wp, -H256000" if there are too many macros
   for cpp in a compilation.

   Look around for your Motif and X includes and libraries.  They may reside
   in a different location than where xmkmf think they are. (Or xmkmf may
   not know bout the directories at all) Try something like
      /usr/include/Motif1.2 /usr/include/X11R5
      /usr/lib/Motif1.2 /usr/lib/X11R5
      or /usr/local/include... or ... (Get the point? :)

5) Edit the xfibsrc file it so that it contains your user name and password. 
   (It may be questionable whether this is a good thing or not, but as
   long as the password is different from the one you use for your other
   accounts, it shouldn't be a big security issue...)
   
    You may also want to try to customize the menu system. I'll try to give
    a short explanation:
    
    MENU My_menu M   :             This creates a menu with the name My_menu 
                                   and a "mnemonic" of M (Type Alt-M to get 
				   to the menu) The M will be underlined where 
				   it is first encountered in the menu name.
    ITEM Double D double :         Creates the item Double under the menu 
                                   defined last.
                                   Sends "double" to the FIBS-server.
    ITEM "Tell ..." T "tell ..." : Puts "tell " into your input window for you 
                                   to finish the command. It's the ellipsis 
				   that defines this behaviour.
				   If you drop the ellipsis like in "tell "
				   xfibs sends "tell " to the server.
    SEPARATOR                      creates a separator in the menu for separa-
                                   ting different kind of options.

    Beware: When specifying a mnemonic (which you have to do) be sure to use 
            Caps when caps are needed and don't if they aren't.....
	    ITEM "zombie special" Z "shout Wave, whistle, jiggle, hi Doll!!"
	    won't work as there's no "Z" in "zombie special". Use "z" instead.

    (Sorry, zombie. Just coulnd't resist :))

6) Run 'make install' and 'make install.man'
   If you get an error message from 'make install' concerning not write access
   to the app-defaults file, run 'make.install.def' instead.

7) run xfibs

8) swear and curse 'cause you can't make it work....

===================
Problems:

1) If you have problems with font-loading, put some fonts you know you have in
   the app-defaults file or in your .Xdefaults file. (Or start xfibs with 
   xfibs -font fixed or something)

2) Other problems??? Ask me

3) There is a small bug in FIBS. Sometimes when you are on the bar, it sends
   a board which has a move count of 1, even when you can move 2 pieces. If
   you're on the bar & can't move, type 'board' and then FIBS gets it right.

===================
Command summary:

There are a few local commands in xfibs. I'll try to explain what each of
these does...
 
First a local command are started with either '/' of '\'. Use what is
most natural depending on the keyboard type or whatever

	gag-command:
/gag torstein		- You won't hear my shouts
/nogag torstein		- Now you will			[not in .xfibsrc]
/gag			- list the gagged persons	[not in .xfibsrc]

	hilite-command:
/hilite torstein	- every line with my name in it will be highlighted
/hilite says		- highlight when someone talks to you
/nohilite torstein	- don't highlight etc.		[not in .xfibsrc]
/hilite			- list highlighted words	[not in .xfibsrc]

	scroll-command:
/scroll			- use scrolling input window
/noscroll		- erase the line after each command

	color-command:
/color (or /colour)	- use color setup
/nocolor (or ...)	- use monochrome setup. This might be useful if the
			  screen comes up in weird colors due to some other
			  applications you're running

	numbers-command:
/numbers		- use numbers around the board
/nonumbers		- turn them off

	frame-command:

/frame (or /noside)	- draw player names on the frame of the board
/noframe (or /side)	- draw player names at the side of the board

	blanks-command:
/blanks			- echo blank lines between responses from the server
/noblanks		- don't echo blanks (less scrolling)

	echo-command:
/echo			- echo user input in FIBS output window
/noecho			- don't echo user input

	cls-command:
/cls			- clears output area		[not in .xfibsrc]
 
	pip-command:
/pip			- display a pip count		[not in .xfibsrc]

	undo-command:
/undo			- undo last move		[not in .xfibsrc]

	move-logging:
/nologpath		- clears the log path
/logpath		- displays the log path
/logpath path		- to look in this directory for logfile. Must end
			  with a file separator, e.g.  /users/mike/bg/games/
/logfile [name]		- to log to the specified filename. If no name is
			  given, "xfibs.logfile" is used. Also if the file
			  already exists, the log is appended to the end of
			  the current file.
/log mode [+]		- to specify the log mode. If a '+' is given, the
			  mode is added to the current logging mode. Modes
			  are:
    input		- what FIBS sends us
    all			- 'input' + all boards in ascii
    play		- Everything FIBS says "You", your opponent or the
			  player you're watching do.
    boards		- all boards in ascii
    none		- nothing (allows for just dumping occasional boards
			  in ascii - see "/dump").
/dump			- dumps current board to logfile [not in .xfibsrc]

To use any of these commands in the .xfibs-file don't start the command 
with '/' or '\'.


A few commands work only in the .xfibsrc-file:

autologin		- Makes xfibs automatically log in when started.

on_login		- Everything after this is sent to the server as 
			  soon as you've logged in.

columns	<num>		- Set no. of columns (in & out)

fibslines <num>		- No. of lines in FIBS window

typelines <num>		- No. of lines in user input window

Check out the sample xfibsrc-file for examples.


BTW, make sure you try the right mouse-button from time to time, the popup-
menus change according to what is happening. As an example, if you've been
invited you may use the popup-menu to accept the invitation. You may accept
or reject doubles, accept or reject resignations etc.

Good luck!
Torstein (and now mikeq :-)
