packages icon
README file for XSpringies 1.1                                    March 1, 1993
==============================

General info:
-------------
  XSpringies is a mass and spring simulation system.  It's intended use is more
like that of a game, than some design package.

  It's written using Xlib only.  No Motif or any other widgets sets are used.

  The animation in XSpringies is done using an off-screen Pixmap.  The next
frame is drawn on this pixmap, then is blitted onto the screen.  Since the
frame rate is about 30 frames per second, slower machines (or machines which
have poorly written bit-blitting code) will be deathly slow and blinky.

Installation info:
------------------
First, edit the Imakefile/Makefile.std and change the value of DDIR to reflect
where you want to install the xspringies files.  Don't forget the trailing /
on the end of your filename.

If you are using the Imakefile, type "xmkmf".

    If you have problems at the beginning, and you are using the
    Imakefile, it might be caused by the strange definition I have for
    "MKDIRHIER", which I had to redefine because of the silly way Imake
    is set up.  If this happens, type "which mkdirhier" to see what the
    full path for mkdirhier is, and put this in place of the backquoted
    expression in the Imakefile. (i.e. - if the full path is
    "/usr/local/bin/mkdirhier", then you change the line to
    "MKDIRHIER = BourneShell /usr/local/bin/mkdirhier").

Then, type "make install".

Then, just run xspringies and have fun.

Updates
-------
For version 1.1:
 Bugs fixed:
 - Compiles for NEWS system
 - Keyboard input now works under openlook window manager
 - Animation no longer gets 'stuck' after like 35 minutes
 - File format is more compact by removing unnecessary zeros
   (i.e. - before 1.500000, now 1.5) and has more precision to eliminate
   tiny errors perceived when saving and reloading a file
 - Strange ~-expansion behavior for filenames is gone
 - The GO! button replaces the hard to find Action checkbox
 - A Delete button was added, which is the same as the Delete key

 New features:
 - Spring thickness can be specified using the "-st <number>" command
   line switch (0 is default width - thin line)
 - Instead of the entire screen being bit-blitted, only the bounding box
   necessary to draw new objects and cover old objects is drawn.  This
   greatly speeds up the animation when drawing small objects (such as
   a "jello").  If the bounding box changes size periodically (as in the
   "pendbees" file), the "-nbb" command line switch disables this feature
   to allow for slower, but smoother animation.
 - A cursor, and filename editing features were added.  It uses emacs-like
   keys:
      ^B/^F = back/forward
      ^A/^E = goto beginning/end of line
      ^K/^Y = kill to end of line/yank from kill buffer
      ^D    = delete character under cursor
      ^U    = kill all input
      ^T    = transpose character under cursor with previous character
      ESC   = exit from filename edit mode

Misc info:
----------
  The author of xspringies is Douglas DeCarlo.
  Email address:  dmd@gradient.cis.upenn.edu
  Please send any bug-reports/comments/suggestions/demo-files to this address.