ftp://ftp.uni-heidelberg.de/pub/X11/contrib/applications/xscreensaver-2.07.tar.gz
[xscreensaver] / README
diff --git a/README b/README
index 2783d608b2bd94de41a0cdc078aa66b87b3362c7..a8e65ba756020761809a093caf78b0d689b112b2 100644 (file)
--- a/README
+++ b/README
@@ -1,7 +1,28 @@
 
-See config.h for configuration parameters.  To build, do the usual:
+                              XScreenSaver
 
-       xmkmf ; make ; make install ; make install.man
+            a screen saver and locker for the X window system
+                            by Jamie Zawinski
+
+To build on Unix:
+
+  -  ./configure
+  -  make
+  -  make install
+
+The `configure' shell script will attempt to figure out which options are
+appropriate for your system, and will create config.h and the various
+Makefiles for you.  Run `configure --help' to see how to override these
+choices, or to specify things like the default installation directory.
+The file `INSTALL' gives a general overview of use of these sorts of
+configure scripts (those generated by the GNU autoconf system.)
+The most important hint is probably this:
+
+   ./configure --includedir=/opt/Motif/include --libdir=/opt/Motif/lib
+
+To build on VMS, see README.VMS.
+
+                              ============
 
 The xscreensaver program waits until the keyboard and mouse have been idle
 for a period, and then runs a graphics demo chosen at random.  It turns off
@@ -20,13 +41,15 @@ xautolock programs is the ease with which new graphics hacks can be
 installed: you don't need to recompile this program to add a new display
 mode, you just change some resource settings.  Any program which can be
 invoked in such a way that it draws on the root window of the screen can
-now be used as a screensaver without modification [*].  The programs that
+now be used as a screensaver without modification.  The programs that
 are being run as screensavers don't need to have any special knowledge
 about what it means to be a screensaver.
 
-The XIdle extension will be used if you have it (win win.)
+The XIDLE, MIT-SCREEN-SAVER, and/or SGI SCREEN_SAVER server extensions
+will be used if you have them.
 
-Unfortunately, locking doesn't work if you don't have Motif.
+The dialog boxes (for locking and demo-mode) look best using Motif, but
+can be configured to use Athena widgets instead.
 
 Also included are several graphics hacks for use as screensavers.  There's
 nothing magic about these: they're just programs that draw on the root
@@ -35,6 +58,7 @@ window, which are pointed at by the screensaver's default resource settings.
    qix         - My own implementation of this, with many more options
                  than you would have thought qix could have.
    helix       - Generates spirally "stringart" patterns.
+   pedal       - Draws a different kind of spirally pattern.
    rorschach   - Random inkblot patterns.
    attraction  - A bouncing ball demo, or a qix-like demo, or a wild
                  color-cycling thing, with some odd rules.
@@ -44,13 +68,51 @@ window, which are pointed at by the screensaver's default resource settings.
    imsmap      - Generates random maps or cloud formations.
    hypercube   - 2d projection of a hypercube rotating on all four axes.
    slidescreen - Divides the screen into a grid and plays a 16-puzzle on it.
+   decayscreen - A melting effect.
    halo                - Random circular patterns.
    pyro                - Fireworks.  Looks a lot like the version in xlock.
    hopalong    - Fractals.  I snarfed this code from xlock.
+   flame       - Fractals.  Also from xlock.
    noseguy     - A guy with a big nose wanders around the screen saying
                  things.  I snarfed this code from xnlock.
    maze                - This is the X maze demo modified to take a -root option
                  so that it works with xscreensaver.
+   lmorph      - morphing line drawings.
+   bubbles     - condensation forms on your monitor, then pops.
+   deco                - Generates Brady-Bunch-era wall paneling.
+   moire       - Circular interference patterns.
+   kaleidescope        - Groovy, man.
+   swirl       - Swirly color-cycling patterns.
+   bouboule    - Spinning bubbles on a transparent ball.
+   braid       - Draws random color-cycling braids around a circle.
+   drift       - Drifting recursive fractal cosmic flames.
+   fract       - Small, curvy geometric patterns.
+   galaxy      - Spinning, colliding galaxies.
+   grav                - Orbital simulation and/or cloud chamber.
+   ifs         - Spinning, colliding iterated-function-system shapes.
+   julia       - Animated rendition of the Julia set.
+   laser       - Moving radiating lines.
+   lightning   - Crackling fractal lightning bolts.
+   penrose     - Quasiperiodic tilings.
+   sierpinski  - two-dimensional Sierpinski triangle.
+   slip                - Sucks your desktop through a jet engine.
+   spiral      - Circular color-cycling interference patterns.
+   strange     - Animating strange attractors.
+   flag                - A waving flag of an arbitrary bitmap or text.
+   sphere      - draw a bunch of shaded spheres.
+   forest      - grows a fractal forest.
+   lisa                - draws animated full-loop lisajous figures.
+   goop                - Squishy transparent oil-and-bubble images
+   starfish    - Radially-symmetric throbbing colormap-hacking blobs.
+   munch       - The classic 1962-vintage "munching squares" hack.
+   fadeplot    - Draws a swimming ribbon.
+   escher      - Draws some escher-like scenes (GLX only.)
+   gears       - Draws interlocking rotating gears (GLX only.)
+   morph3d     - Draws shiny shape-changing 3d forms (GLX only.)
+   superquadrics - More shiny shape-changing 3d forms (GLX only.)
+   pipes       - Generates a field of intertwined plumbing (GLX only.)
+   rubik       - Solves a Rubik's Cube (GLX only.)
+   sproingies  - Marble Madness meets Q-Bert (GLX only.)
 
 All of these will pop up their own window unless given that -root option.
 See their man pages for more details.
@@ -61,17 +123,148 @@ Other reasonable things to use as screensavers, if you have them, are
   xswarm -r 2>&-               - swimming sperm
   xwave -root                  - random 3d graphs
   xbouncebits                  - bounce arbitrary bitmaps around
-  ico -r                       - it's dull, but it's there
+  ico -r -p8 -faces -sleep 1   - it's dull, but it's there
   xv -root file.gif -quit      - they don't all have to animate!
   xsplinefun                   - bouncing splines
-  kaleid -root                 - qix-like kaleidescope patterns
   xfishtank -c black -d -r 1   - fish (use version 2.0 or later)
+  xtacy -root                  - various eye candy
+  /usr/demos/bin/bongo -wbongo - an SGI GL demo
+
+You can get all of these from the contrib directory on ftp.x.org.  If you
+know of (or write) any other interesting programs that can be used as
+screensavers, please let me know!
 
-You can get all of these from export.lcs.mit.edu.  If you know of (or write)
-any other interesting programs that can be used as screensavers, please let
-me know!
+The latest version of xscreensaver is always available on the web at
+http://people.netscape.com/jwz/xscreensaver/.
 
-       -- Jamie Zawinski <jwz@lucid.com>
+       -- Jamie Zawinski <jwz@netscape.com>
 
-[*] It may be necessary to include "vroot.h" in the program, but that would
-be necessary for it to work with virtual-root window managers anyway.
+\f
+Changes since 2.06:    Minor header tweaks in windows.c and flag.c.
+                       Made multi-architecture (VPATH) builds work properly.
+                       Merged new GL stuff from xlockmore (rubik, morph3d.)
+                       Fixed intermittent crashes in `imsmap' and `munch'.
+                       Added `fadeplot' hack from xlockmore.
+Changes since 2.05:    Merged in VMS support from Patrick Moreau.
+Changes since 2.04:    Fixed a MIT-SCREEN-SAVER-related crash, and tweaked 
+                       configure to detect the extra-random -Xss library.
+Changes since 2.03:    HP configure tweaks.  Detect and warn about LessTif.
+                       Fixed low-color behavior of `goop', `pyro', `starfish',
+                       `greynetic', `flame', `halo', and `moire'.
+Changes since 2.02:    Fixed flicker in `pipes'.  Fixed 3d in `bouboule'.
+                       Added `munch' hack.
+                       Added basic dependencies to the Makefile.in files.
+Changes since 2.01:    Fixes for compiling with the MIT saver extension.
+                       Made the yow/fortune program be a configure option.
+                       Various configure tweaks.
+Changes since 2.00:    Added `goop' and `starfish' hacks.
+                       Added colomap cycling to `halo'.
+                       Made `attraction' use the new colormap allocator.
+                       Added better $PATH diagnostics.
+                       There was a bug in frand!  Color selection should be
+                       much improved now.
+Changes since 1.34:     Converted to use `configure' instead of `imake'.
+                        ANSI C is now required.
+                       Added Kerberos locking support, from Nat Lanza.
+                       Made the stderr text use overlay planes, if possible.
+                       Reworked the xlockmore compatibility stuff again.
+                       Added `gears', `superquadrics', `escher', `pipes',
+                       and `sproingies' hacks (depend on OpenGL.)
+Changes since 1.33:    Fixed some bugs, made fading be a little smoother.
+Changes since 1.32:    Made it work with multi-headed displays.
+                       Generalized sub-process management (Unix sucks!)
+                       Added interactive mouse frobbing to Julia.
+                       Added (untested) support for HPUX shadow passwords.
+                       Made normal non-shadow passwords be checked if the
+                       shadow passwords aren't accessible for some reason.
+Changes since 1.31:    Removed *colorPrograms and *monoPrograms resources:
+                       made it possible to specify the desired visual on a
+                       per-hack basis.
+                       Cleaned up / restructured the driver: no more globals.
+                       Made the Motif and Athena dialogs share more code.
+                       Probably fixed some Athena colormap-installation bugs.
+                       Fixed screen grabbing (cmap) on SGI 12-bit PseudoColor.
+                       Fixed divide-by-zero in bright random colormaps.
+                       Added an improved version of xlock's `flag' hack.
+                       Made unfading work better, and not flicker on SGIs.
+                       Added `sphere', `forest', `lisa' hacks from xlockmore.
+                       Added (untested) support for SunOS Adjunct passwords.
+Changes since 1.30:    Improved colors and colormap cycling of many hacks.
+                       Cleaned up xlockmore compatibility layer.
+                       Made `blitspin' able to grab an image off the screen.
+                       Ported `swirl' and `bouboule' hacks from xlockmore.
+                       Made the driver more careful about not leaving bits on
+                       the screen, or allowing other windows to raise 
+                       themselves: it now re-blanks the screen every so often.
+                       Added `-time' option to `xscreensaver-command'.
+                       Improved SGI screen-grabbing some more: now it can grab
+                       TrueColor screens into PseudoColor windows and have the
+                       colors still come out semi-reasonably.
+Changes since 1.29:    Made `slidescreen' and `decayscreen' work better on
+                       SGIs when windows of different visuals are present, by
+                       using the XReadDisplay() extension to get a true 24-bit
+                       image out of the frame buffer.
+                       Made `noseguy' be in color, if compiled with XPM.
+                       Ported `braid', `drift', `fract', `galaxy', `grav', 
+                       `ifs', `julia', `laser', `lightning', `penrose',
+                       `sierpinski', `slip', `spiral', and `strange' hacks
+                       from xlockmore.
+                       Merged `hopalong' hack with a more recent version.
+                       Added `cde.txt'.
+Changes since 1.27:    Added `deco', `moire', and `kaleidescope' hacks.
+                       Merged in support for non-Motif locking and demo mode.
+                       Made `blitspin' and `bubbles' work in TrueColor.
+                       Fixed a stupid bug I introduced in `imsmap'.
+                       Added `poly' and `gravity' options to `qix'.
+Changes since 1.26:    Added support for SGI SCREEN_SAVER extension.
+                       Made `fade' and `unfade' work on 8-bit SGIs.
+                       Made the dialog boxes more Motify.
+                       Added `bubbles' hack.
+Changes since 1.25:    Added `lmorph' hack.
+                       Added viscosity and mouse-control to attraction.
+                       Fixed possible bad color choices in qix and attraction.
+                       Added ramp-mode to halo.
+                       Added a new RNG, which is faster and more portable
+                       than using the RNG in libc.
+                       Made locking work on SCO.
+                       Various other minor tweaks that I don't remember.
+Changes since 1.24:    Made it capture the stdout/stderr of its subprocesses
+                       and present them on the screensaver window itself.
+                       Made demo mode work correctly with non-default visuals
+                       and color maps, instead of always using the defaults.
+                       Added -visual argument to all included screenhacks.
+                       Support for the R6 MIT-SCREEN-SAVER server extension.
+                       Made the demo mode list scroll properly.
+                       Added `pedal' hack.
+Changes since 1.23:    Fixed some private-colormap oddities in slidescreen,
+                       decayscreen, and xroger.  Fixed apparent conservation-
+                       of-mass problem in pyro; made the shrapnel round.
+Changes since 1.22:    Minor tweaks for IRIX5; fixed locking race condition.
+Changes since 1.21:    Minor tweaks for X11R6.
+                       Fixes for non-default visuals.
+Changes since 1.20:    Fixed bug in color blitspin; added default image.
+                       Added diagnostics to noseguy.  Fixed off-by-one
+                       error in flame.  Added some missing casts.
+Changes since 1.18:    Added `flame' hack.
+                       Fixed a minor Motif dialog text field bug.
+                       Fixed yet another XPointer-not-defined-in-R4 bug.
+Changes since 1.17:    Added support for shadow password files.
+                       Fixed some Motif-related locking bugs.
+                       Added diagnostics when locking is disabled.
+                       Made blitspin able to use the XPM library.
+                       Added `decayscreen' hack.
+Changes since 1.16:    Added `halo' hack.
+Changes since 1.15:    Portability fixes.
+Changes since 1.14:    Broke the driver up into more source files.
+                       Moved the hacks into their own directory.
+                       Made all `time' parameters accept the 00:00:00 syntax,
+                       so that even the parameters which are normally read as
+                       minutes can be specified in seconds.
+                       Added colormap cycling to `imsmap'.
+                       Made hyper work with K&R compilers.
+Changes since 1.13:    Added `orbit' option to `attraction' hack.
+                       Added `lock-timeout' option.
+                       Cleaned up options of `maze' hack.
+Changes since 1.8:     Added demo mode, and locking.
+                       Added `maze' hack.
+                       Added `norotate' option to `rocks' hack.