http://www.ibiblio.org/pub/historic-linux/ftp-archives/sunsite.unc.edu/Sep-29-1996...
[xscreensaver] / README
1
2 To build:
3
4   -  read the comments in `config.h' and edit it as appropriate
5   -  xmkmf ; make
6   -  make install install.man
7
8 The xscreensaver program waits until the keyboard and mouse have been idle
9 for a period, and then runs a graphics demo chosen at random.  It turns off
10 as soon as there is any mouse or keyboard activity.
11
12 The purpose of xscreensaver is to display pretty pictures on your screen 
13 when it is not in use, in keeping with the philosophy that unattended 
14 monitors should always be doing something interesting, just like they do 
15 in the movies.
16
17 However, xscreensaver can also be used as a screen locker, to prevent
18 others from using your terminal while your are away.
19
20 The benefit that this program has over the combination of the xlock and
21 xautolock programs is the ease with which new graphics hacks can be
22 installed: you don't need to recompile this program to add a new display
23 mode, you just change some resource settings.  Any program which can be
24 invoked in such a way that it draws on the root window of the screen can
25 now be used as a screensaver without modification.  The programs that
26 are being run as screensavers don't need to have any special knowledge
27 about what it means to be a screensaver.
28
29 The XIDLE or MIT-SCREEN-SAVER server extensions will be used if you have them.
30
31 Unfortunately, locking doesn't work if you don't have Motif.
32
33 Also included are several graphics hacks for use as screensavers.  There's
34 nothing magic about these: they're just programs that draw on the root
35 window, which are pointed at by the screensaver's default resource settings.
36
37    qix          - My own implementation of this, with many more options
38                   than you would have thought qix could have.
39    helix        - Generates spirally "stringart" patterns.
40    pedal        - Draws a different kind of spirally pattern.
41    rorschach    - Random inkblot patterns.
42    attraction   - A bouncing ball demo, or a qix-like demo, or a wild
43                   color-cycling thing, with some odd rules.
44    greynetic    - Random colored/stippled rectangles.
45    rocks        - Flying through an asteroid field.
46    blitspin     - Rotate a bitmap using bitblts.
47    imsmap       - Generates random maps or cloud formations.
48    hypercube    - 2d projection of a hypercube rotating on all four axes.
49    slidescreen  - Divides the screen into a grid and plays a 16-puzzle on it.
50    decayscreen  - A melting effect.
51    halo         - Random circular patterns.
52    pyro         - Fireworks.  Looks a lot like the version in xlock.
53    hopalong     - Fractals.  I snarfed this code from xlock.
54    flame        - Fractals.  Also from xlock.
55    noseguy      - A guy with a big nose wanders around the screen saying
56                   things.  I snarfed this code from xnlock.
57    maze         - This is the X maze demo modified to take a -root option
58                   so that it works with xscreensaver.
59    lmorph       - morphing line drawings.
60
61 All of these will pop up their own window unless given that -root option.
62 See their man pages for more details.
63
64 Other reasonable things to use as screensavers, if you have them, are
65
66   xdaliclock -root -builtin2    - melting digital clock
67   xswarm -r 2>&-                - swimming sperm
68   xwave -root                   - random 3d graphs
69   xbouncebits                   - bounce arbitrary bitmaps around
70   ico -r                        - it's dull, but it's there
71   xv -root file.gif -quit       - they don't all have to animate!
72   xsplinefun                    - bouncing splines
73   kaleid -root                  - qix-like kaleidescope patterns
74   xfishtank -c black -d -r 1    - fish (use version 2.0 or later)
75
76 You can get all of these from the contrib directory on ftp.x.org.  If you
77 know of (or write) any other interesting programs that can be used as
78 screensavers, please let me know!
79
80 The latest version of xscreensaver is always ftpable from ftp.x.org.  You can
81 also get it from my web page at http://www.netscape.com/people/jwz/.
82
83         -- Jamie Zawinski <jwz@netscape.com>
84
85 \f
86 Changes since 1.25:     Added `lmorph' hack.
87                         Added viscosity and mouse-control to attraction.
88                         Fixed possible bad color choices in qix and attraction.
89                         Added ramp-mode to halo.
90                         Added a new RNG, which is faster and more portable
91                         than using the RNG in libc.
92                         Made locking work on SCO.
93                         Various other minor tweaks that I don't remember.
94 Changes since 1.24:     Made it capture the stdout/stderr of its subprocesses
95                         and present them on the screensaver window itself.
96                         Made demo mode work correctly with non-default visuals
97                         and color maps, instead of always using the defaults.
98                         Added -visual argument to all included screenhacks.
99                         Support for the R6 MIT-SCREEN-SAVER server extension.
100                         Made the demo mode list scroll properly.
101                         Added `pedal' hack.
102 Changes since 1.23:     Fixed some private-colormap oddities in slidescreen,
103                         decayscreen, and xroger.  Fixed apparent conservation-
104                         of-mass problem in pyro; made the shrapnel round.
105 Changes since 1.22:     Minor tweaks for IRIX5; fixed locking race condition.
106 Changes since 1.21:     Minor tweaks for X11R6.
107                         Fixes for non-default visuals.
108 Changes since 1.20:     Fixed bug in color blitspin; added default image.
109                         Added diagnostics to noseguy.  Fixed off-by-one
110                         error in flame.  Added some missing casts.
111 Changes since 1.18:     Added `flame' hack.
112                         Fixed a minor Motif dialog text field bug.
113                         Fixed yet another XPointer-not-defined-in-R4 bug.
114 Changes since 1.17:     Added support for shadow password files.
115                         Fixed some Motif-related locking bugs.
116                         Added diagnostics when locking is disabled.
117                         Made blitspin able to use the XPM library.
118                         Added `decayscreen' hack.
119 Changes since 1.16:     Added `halo' hack.
120 Changes since 1.15:     Portability fixes.
121 Changes since 1.14:     Broke the driver up into more source files.
122                         Moved the hacks into their own directory.
123                         Made all `time' parameters accept the 00:00:00 syntax,
124                         so that even the parameters which are normally read as
125                         `minutes' can be specified in seconds.
126                         Added colormap cycling to `imsmap'.
127                         Made hyper work with K&R compilers.
128 Changes since 1.13:     Added `orbit' option to `attraction' hack.
129                         Added `lock-timeout' option.
130                         Cleaned up options of `maze' hack.
131 Changes since 1.8:      Added demo mode, and locking.
132                         Added `maze' hack.
133                         Added `norotate' option to `rocks' hack.