This page describes the ViewStation's HDSscreensaver manual
page.
HDSscreensaver Manual Page
This is the HDS screensaver manual page.
NAME
hdssaver - local ViewStation FX screensaver, chooser, and
locking client.
SYNOPSIS
hdssaver [-display host:display.screen] [-program screensaver]
[-timeout int] [-cycle int] [-fade] [-nofade] [-unfade] [-nounfade]
[-nographics] [-lock] [-lockalways] [-password password] [-xrm
resources]
OPTION
hdssaver provides the ViewStation user with a list of locally run
screensaver graphics programs using a standard Motif file selection box
widget. This program waits until the keyboard and mouse have been idle
for a period, and then run the currently chosen graphics demo. It turns
off the demo as soon as there is any mouse or keyboard activity. Its
purpose is to display pretty pictures on your screen when it is not in
use, in keeping with the philosophy that unattended monitors should
always be doing something interesting, just like they do in the movies.
By running these programs locally, network load is diminished.
This program also acts as a ViewStation screen locker. When
lock is selected the user is prompted for a password (maximum of ten
characters). Once the password is verified, the currently chosen
graphics demo will run. Any further use of the keyboard or mouse causes
the ViewStation to prompt for the password. If the correct password is
entered within 30 seconds the graphics demo is turned off and the
ViewStation returned to its previous state.
The following graphics demo programs are available and can be
customized either through command line options, or resource settings:
hdslogo -- Blinking HDS logo
attraction -- A bouncing
ball demo, or a qix-like demo, or a wild color-cycling thing, with
some odd rules.
blitspin -- Rotate a bitmap using bitblts.
greynetic
-- Random colored/stippled rectangles.
helix -- Generates spirally
"stringart" patterns.
hopalong -- Fractals.
hypercube -- 2D
projection of a 4D object.
imsmap -- Generates random maps or
cloud formations
noseguy -- A guy with a big nose wanders around
the screen saying things.
pyro -- Fireworks.
qix -- Flying
string art.
random -- Cycle through list randomly.
rocks --
Flying through an asteroid field.
rorschach -- Random inkblot
patterns.
slidescreen -- Permute the screen image like an 8-puzzle
xroger
-- Blinking jolly roger flag.
See the individual man pages for more details.
Provisions are made to allow the user to add and delete from
this list, modify timeout, cycle, and fade times, as well as instantly
view each graphics program.
OPTIONS
hdssaver accepts the following options:
-program screensaver
The screensaver will activate this program after the keyboard and
mouse have been idle for the time set by timeout. This program must be
a set as a local client of type screensaver as defined by the user's
client.config file. Please refer to the ViewStation User's manual for
more information concerning local clients. Default value is hdslogo ( a
blinking HDS logo).
-timeout seconds
The screensaver will activate after the keyboard and mouse have
been idle for this many seconds. Default value is 120 seconds with a
minimum of ten.
-cycle seconds
After the screensaver has been running for this many seconds, the
currently running screensaver will be killed (with SIGTERM), and a new
one started. This is only applicable when random is selected and has a
default value of 30 seconds with a minimum of 10.
-fade
If set, the current screen will fade out before the screensaver
graphics program is run. Default set.
-nofade
If set, the current screen will just blank before the
screensaver graphics program is run.
-unfade
If set, the screensaver graphics program will fade out before the
screen is restored. Default set.
-nounfade
If set, the current screensaver will just blank before the
screen is restored.
-nographics
If set, the user interface widget will not be displayed.
-password password
The password used if screensaver is set as lock.
-lock
If set the display will be locked immediately. The user will be
prompted for a lock ing password if one has not already been provided.
The default saver is used unless a different one is specified.
-lockalways
If set, every screensaver will be invoked with the locking
option set. The password option MUST be used in conjunction for this
option to be valid.
X DEFAULTS
hdsscreensaver understands the following resources:
program (class Program)
Same as the -program command-line
option. Default HDSlogo.
timeout (class Time)
Same
as the -timeout command-line option. Default 120 seconds.
cycle
(class Time)
Same as the -cycle command-line option. Default 30
seconds.
fade (class Boolean)
Same as the -fade
command-line option. If this is true, then when the screensaver
activates, the current contents of the screen will fade to black instead
of simply winking out. This only works on displays with writable
colormaps. Default true. A fade will also be done when switching
graphics screensavers (when the cycle timer expires and random is
selected. )
unfade (class Boolean)
Same as the
-unfade command-line option. If this is true, then when the screen saver
deactivates, the original contents of the screen will fade in from black
instead of appearing immediately. This only works on displays with
writable colormaps. Default True.
fadeSeconds (class Time)
If fade or unfade is true, this is how long the fade will be in
seconds (default 1.)
fadeTicks (class Integer)
If fade is true, this
is how many times a second the colormap will be changed to effect a
fade. Higher numbers yield smoother fades, but may make the fades take
longer if your server isn't fast enough to keep up. Default 75.
nographics (class Boolean)
If this is true the graphics user
interface widget will not be displayed. up. Default False.
lock (class Boolean)
If true the display will be locked
immediately. The user will be prompted for a locking password if one
has not already been provided. The default saver is used unless a
different one is specified.
lockalways (class Boolean)
If this is true each screensaver will be invoked with the lock
option set. Note that the screensaver password must also be set for
this to work. Default False.
password (class Char)
The screensaver password used when the lock option is set. Default
Null.
programs (class Programs)
The graphics demo
programs which hdsscreensaver runs when the user is idle. The value of
this resource is a string, one screensaver command per line. Each line
must contain exactly one command -- no semi-colons.
If the
value of this resource is empty, then no programs will be run; the
screen will simply be made black.
Note that you must escape
the newlines; here is an example of how you might set this in your
.Xdefaults file:
hdsscreensaver.programs: \
rocks \n\
qix \n\
rocks \n\
hdslogo
HOW IT WORKS
When
it is time to activate the screensaver, a full-screen black window is
created. This window is given the appropriate properties so that, to
any subsequently-created programs, it will appear to be a ``virtual
root'' window. The currently selected graphics screensaver program is
then run.
When the user becomes active again, the screensaver
window is unmapped and the running subprocess is killed by sending it
SIGTERM. This is also how the subprocesses are killed when the
screensaver decides that it's time to run a different demo if random is
selected: the old one is killed and a new one is launched.
Before launching a subprocess, hdsscreensaver stores an
appropriate value for $DISPLAY in the environment that the child will
receive. (This is so that if you start hdsscreensaver with a -display
argument, the programs which hdsscreen saver launches will draw on the
same display.)
When the screensaver turns off, or is killed,
care is taken to restore the ``real'' virtual root window if there is
one. Because of this, it is important that you not kill the screensaver
process with kill -9 if you are running a virtual-root window manager.
If you kill it with -9, you may need to restart your window manager to
repair the damage. This isn't an issue if you aren't running a virtual-
root window manager.
ENVIRONMENT
DISPLAY to get
the default host and display number.
XENVIRONMENT to get the name
of a resource file that overrides the global resources stored in the
RESOURCE_MANAGER property.
SEE ALSO
hdslogo(1),
attraction(1), blitspin(1), greynetic(1), helix(1), hopalong(1),
hypercube(1), imsmap(1), noseguy(1), pyro(1), qix(1), random(1),
rocks(1), rorschach(1), slidescreen(1), xroger(1).
BUGS
Apparently there are some problems with ``XView'' programs
getting confused and thinking that the screensaver window is the real
root window even when the screensaver is not active: ClientMessages
intended for the window manager are sent to the screensaver window
instead. This could be solved by making HDS saver forward all
unrecognised ClientMessages to the real root window, but there may be
other problems as well.
COPYRIGHT
Copyright
1993, HDS Network Systems, Inc.
AUTHORS
Joseph H. Durant (HDS Network Systems)
Modified merge of xscreensaver and xnlock clients ported as a local
client to the ViewStation.
Please let me know if you find any bugs
or make any improvements.
Return to Section Heading Page
Return to the Home Page
If you need more information than is available here, you can reach
HDS via email at info@hds.com, or
call us at 1.800.HDS.1551 in the USA, or at +610.277.8300 from outside
the US. For questions or problems regarding the HDS WWW page, contact
webmaster@hds.com.
© 1996 by HDS Network Systems
Inc.