  X-BASED MASTERBALL(tm)
  ================== Masterball X widget, V7.1.3

Primary site: ftp://ftp.tux.org/pub/tux/bagleyd/xpuzzles
Secondary site: ftp://ibiblio.org/pub/Linux/games/strategy
Web page: http://www.tux.org/~bagleyd/puzzles.html
Maintainer: David A. Bagley <bagleyd@tux.org>

  It has been tested on the following platforms:
    Sun Ultra 5     SunOS 5.8
    PC  Pentium 4   Linux 2.4.18
    PC  Pentium 4   WindowsXP/Cygwin
    IBM PowerPC     AIX 4.3.3.0
    PC  Pentium 4   Windows XP Mingw*
    PC  Pentium 2   Windows 2000 Mingw*
 * Unresolved ACCELERATORS bug see HISTORY at bottom.

  Previous versions tested on:
    Sun Ultra       SunOS 5.6-5.7
    Sun SPARC       SunOS 5.5.1 (X11R5 & X11R6)
    Sun SPARC       SunOS 4.1.3
    PC  Pentium     Linux 2.0.9
    PC  486         Linux 1.2.13
    DEC VAX & ALPHA VMS 6.1
    IBM PowerPC     AIX 4.3.1.0
    HP  898         HP-UX 10.20
    HP  3xx & 700   HP-UX 9.01
    PC  486         Windows 3.1  Borland C++ 3.1
    PC  486         Windows 3.1  Microsoft C++ 1.51
    PC  486         Windows 95   Precompiled on 3.1

  If you have to do any editing to get this to work, please mail me
  the changes.

HOW TO BUILD?

  An ANSI C compiler is required for build.

  To build, it should be easy.  There are 4 types.  You may want to set some
    parameters like SCOREPATH, SCOREFILE, LOGPATH, and LOGFILE.

    configure:
      Use "configure -help" to see what options you can set using configure
      or parameters in Makefile.in .

      configure ; make

    imake:
      Sometimes this is not setup correctly by the distributor ... i.e. not
      my fault.  You may want to set parameters in Imakefile .
      If you have Xpm you may want to do this quick edit in the Imakefile:
        Uncomment line "#define XpmLibrary".
      If you have Motif you may want to do this quick edit in the Imakefile:
        Uncomment line "#define XmLibrary".

      xmkmf ; make

    make.com (VMS users only):
      You may want to set parameters in make.com .

      @make

    win/Makefile (Mingw users only):
      You may want to set parameters in Makefile (like
      COPT=-02 -mno-cygwin).

      cd win
      make

      Then run "wmball".  Your on your own on installing the wmball.ini
      file and mball.scores file.

X users only:
  Then just run "xmball".  If you do a "make install" "SCOREPATH" and
  "LOGPATH" must be set correctly.

  You should copy Mball.ad (or Mballduo.ad) to $(HOME)/Mball
  or use "make install" to copy it to something like
  /usr/lib/X11/app-defaults/Mball, especially if the background is
  similar to one of the wedges.  Edit this file for your preferences.

  There are a few install options using configure.
  make install:
    Normal installation usually in /usr/local.  The problem is that the
    file mball.scores should be writable by the application but not
    users.  It will try to fallback to reading and writing in the current
    directory.  (mball.log is a temporary log file to keep track of
    moves, here the current directory is the default with /usr/tmp as the
    fallback).
  make install-games:
    This will install the puzzle like the BSD games.  This configuration
    is for the most part hard coded and will ignore most prefix settings.
    The difference here is that it runs setgid.  This then has some
    "medium" security risks.

  The following installation options are used when the above ones are working.
  make install-png:
    This is used to install the "*.mball.png" images for use with menus
    in Gnome and KDE.
  make install-xpm:
    This is used to install the "mball.?.xpm" images for use with menus
    in CDE using system files (name changes from ".xpm" to ".pm" when
    installing).  The xpm images are the same the png images except the small
    image is 24x24 instead of 22x22.
  make install-xpm-home:
    This is used to install the images for use with menus in CDE using
    from your home directory.  I have this set up using the desktop and
    menus.  There are probably many ways but I have it set up using
    $HOME/.dt/types/dtfile.dt, $HOME/.dt/types/dtwm.fp, and $HOME/.dt/dtwmrc
    These files can be copied and changed from /usr/dt.
  The control feature allows you to move the whole masterball at
  once without being entered as a move.  Hold down the control key
  while using the left mouse button or the keypad.

  One has to orient the wedges in orient mode, besides getting all the
  wedges to be the same color. To do this one has to get the wedges
  with the numbers on one side and in order (clockwise).  This will add
  complexity, so there are 2 sets of records.

  Try resizing the puzzle. Notice the puzzle resizes to take advantage of
  the "room" available.

  The title is in the following format (non-motif version):
    xmball.{2|4|6|8|10|12}: <int> @ (<Number of moves>/\
      {<Record number of moves>|NEVER|PRACTICE}) - <Comment>
      {2|4|6|8|10|12}: current number of wedges.
      <int>: number of sectors per wedge.
      {<Record...}: puzzle is either in practice mode or record mode
        In record mode, if there is no record of the current puzzle, it
        displays "NEVER".

  If you were looking for a auto-solver, sorry. One of the problems in
  auto-solvers the generally don't work for different number of cuts.
  If you know of one let me know.

  I know the look is not exactly right.  For simplicity, I did not take
  into account spherical placement of the latitude cuts.

  Refer to the man page for detailed command line options.

  If you want further information on puzzles, I'll be glad :-) to send
  it to you.

FOUND A BUG?

  Send bugs reports and fixes to the author. For bugs, please include
  as much information as to their location as possible, since I may not
  be able to duplicate the them.

HISTORY

  [Feb 8, 2005]  V7.1.3:
    Mouse wheel for Windows now works.
  [Oct 29, 2004]  V7.1.2:
    Small changes synchronizing with Java code.
    Man page cleanups.
  [Aug 23, 2004]  V7.1:
    Thanks to Debian maintainer Florian Ernst <florian@uni-hd.de> for
      fixing a compilation problem with X and without Motif.
    Added font option.
  [Dec 15, 2003]  V7.0.1:
    The Hide functionality of the Escape key now iconifies or drops in
      task bar.
    Now avoids using FloodFill in Windows.
    Added help in Windows.
    Accelerator Keys (F keys and regular keys) in Windows now work.
  [Nov 15, 2003]  V7.0:
    Integrated winpuz6.5 (Windows 3.1/95) into X source tree.
  [Oct 26, 2003]  V5.7.4:
    Mouse wheel scrolling added.
  [Aug 28, 2003]  V5.7.2:
    png for Gnome and KDE menus and xpm for CDE menus.
    install-games configure option and added other installation options.
    Added xpm for icon.
    Help kicked over.
  [Jul 07, 2003]  V5.7:
    Thanks to my daughter for banging on the keys:
      Resetting key sliders and toggles should reset display message.
      Fix for select and release done at the same time as
        clear, undo, randomize, or solve.
    Test for cheating from get.
    Popup for auto-solve.
    "Wedges:" string drawn next to radio buttons
    Clear now checks if you really want to randomize the puzzle using
      left mouse button, 'r' will not query
    'Esc' will hide the puzzle (actually osfCancel did the trick)
    Help & About expanded and pop-ups added
    Took out bitmaps since it takes too much room
  [Mar 21, 2003]  V5.6.2:
    Installation fixes for Motif and X versions.
  [Nov 06, 2002]  V5.6.1:
    VMS Motif fix and minor changes
  [Sep 06, 2002]  V5.6:
    configure if around 2nd AC_CHECK_FUNC
    removed Sun CC (char *) warnings
    removed hard coding of program name
    Cygwin changes ./, -lSM -lICE
    record store fix
    x and xm files combined using HAVE_MOTIF
    port back from Java (on the Java side I got some help from
        Sarat Chandran <saratcmahadevan@yahoo.com>)
      use -1 for NEVER instead of 32767
      handle nobody = (null)
      .data->.dat for consistency
      background/foreground set by default
      frame color change on enter/leave
      allow more arrow keys (osf)
      menu
      split line should be a bit longer
      counter clockwise fix for undo
  [Sep 24, 2001]  V5.5.4.1: Fixed a goof for direction translation.
  [Sep 01, 2001]  V5.5.4: g++ 3.0 warnings removed.  Fixed a few bugs when
    10 or 12 wedges are used.
  [Mar 27, 2001]  V5.5.3: Infinite loop fix for ARM thanks to Matej Vela
    <mvela@public.srce.hr>.
  [Aug 11, 1999]  V5.5.2: Fixed runtime library problems when using configure.
  [Jun 20, 1999]  V5.5: Added -rv, fixed flashing on mono, fixed a mixup
     where '0' got 12 wedges instead of 10.  '=' will get 12 wedges...
     it follows the logically if you look at the keyboard...
  [Jan 01, 1997]  V5.4: Username, concurrency check, configure, bug fixes in
    get, write, and undo, man page updates.
  [Apr 08, 1996]  V5.3: Minor changes.
  [Jan 31, 1996]  V5.2: Puzzle can be moved by a more intuitive drag and
    drop approach.  Sectors will invert, when selected.
    Now using dynamic allocation, so there is no maximum
    number of rings.  The maximum number of wedges though
    is still fixed at 8.
  [Dec 15, 1995]  V5.1: Minor updates, RNG for 32/64 bit. Better sector
    drawing algorithm.  I did not figure out the border
    lines on the sectors, next time...
  [Oct 02, 1995]  V5.0: Xt/Motif, your choice.
  [May 16, 1995]  V4.10: Warnings removed from Sun's cc and lint and now
    include a random number generator.
  [Mar 13, 1995]  V1.4: Removed lint warnings and added a VMS make.com .
  [Nov 11, 1994]  V1.3: Conservative guess for random number generator.
  [Nov 07, 1994]  V1.2: Now allows undos, saves, and recalls.
  [Sep 19, 1994]  V1.1: Minor changes.
  [Sep 15, 1994]  V1.0: Xt version.
