4 ! a screen saver and locker for the X window system
10 ! See "man xscreensaver" for more info. The latest version is always
11 ! available at http://www.jwz.org/xscreensaver/
14 ! These resources, when placed in the system-wide app-defaults directory
15 ! (e.g., /usr/lib/X11/app-defaults/XScreenSaver) will provide the default
16 ! settings for new users. However, if you have a ".xscreensaver" file in
17 ! your home directory, the settings in that file take precedence.
20 ! Don't hand this file to "xrdb" -- that isn't how app-defaults files work.
21 ! Though app-defaults files have (mostly) the same syntax as your ~/.Xdefaults
22 ! file, they are used differently, and if you run this file through xrdb,
23 ! you will probably mess things up.
25 #error Do not run app-defaults files through xrdb!
26 #error That does not do what you might expect.
27 #error Put this file in /usr/lib/X11/app-defaults/XScreenSaver instead.
29 ! /* (xrdb prevention kludge: whole file)
49 *overlayTextForeground: #FFFF00
50 *overlayTextBackground: #000000
52 *font: *-medium-r-*-140-*-m-*
54 ! The default is to use these extensions if available (as noted.)
55 *sgiSaverExtension: True
56 *mitSaverExtension: False
60 ! This is what the "Demo" button on the splash screen runs (/bin/sh syntax.)
61 *demoCommand: xscreensaver-demo
63 ! This is what the "Prefs" button on the splash screen runs (/bin/sh syntax.)
64 *prefsCommand: xscreensaver-demo -prefs
66 ! This is the URL that the "Help" button on the splash screen loads.
67 *helpURL: http://www.jwz.org/xscreensaver/man.html
69 ! This is how the "Help" button loads URLs (/bin/sh syntax.)
70 ! The "helpURL" will be substituted for up to two occurrences of "%s".
71 *loadURL: netscape -remote 'openURL(%s)' || netscape '%s'
73 ! This is what the "Manual" button in xscreensaver-demo runs (/bin/sh syntax.)
74 *manualCommand: xterm +sb -fg black -bg gray75 -T '%s manual' \
75 -e /bin/sh -c 'man "%s" || read foo'
76 ! Gnome folks might prefer this:
77 !*manualCommand: gnome-help-browser 'man:%s'
80 ! The format used for printing the date and time in the password dialog box
81 ! (see the strftime(3) manual page for details.)
82 *dateFormat: %d-%b-%y (%a); %I:%M %p
83 ! To show the time only:
84 ! *dateFormat: %I:%M %p
89 ! Turning on "installColormap" interacts erratically with twm and tvtwm,
90 ! but seems to work fine with mwm and olwm. Try it and see. If your
91 ! screen turns some color other than black, the window manager is buggy,
92 ! and you need to set this resource to False (or get a WM that works.)
94 *installColormap: True
97 ! Any program which can draw on the root window will work as a screensaver.
98 ! The following resource enumerates them.
100 ! Programs are separated by newlines (specified in resource files with \n).
101 ! Lines may be continued with a lone \ at the end of the line.
103 ! Each line is an `sh' command.
105 ! If the first (non-blank) character on the line is "-", then that means
106 ! that this command is disabled: it's still in the list, but it won't ever
107 ! be used. (This is just to make it easy to disable and then re-enable
110 ! If the first word on the line is the name of a visual followed by a
111 ! colon, then that visual will be used for the program, if it is available.
112 ! If no such visual is available, then the program will be skipped. In
113 ! this way, you can specify that you want certain programs to run only
114 ! on color screens, and others only on mono screens, by making use of the
115 ! magic visual names "color" and "mono". Likewise, if some hacks prefer
116 ! colormaps, but others prefer 24-bit windows, that also can be arranged
117 ! (in this case, by using "PseudoColor:" versus "TrueColor:".)
119 ! Some of the screenhacks are written using OpenGL. OpenGL programs are
120 ! a bit different than normal X programs, in that they prefer visuals that
121 ! are *half* as deep as the screen. You can tell xscreensaver to select a
122 ! good visual for a GL program by using the magic visual name "GL".
124 ! All programs must be launched in such a way that they draw on the root
125 ! window; they should not be spawned in the background with "&". If shell
126 ! metacharacters are used, they must be understandable to `sh', not `csh'
127 ! (the $SHELL variable is not consulted, for unfortunate but good reasons.)
129 ! Be sure to check out Demo Mode: run the `xscreensaver-demo' program to
130 ! edit the current list of programs interactively, try out the various modes,
131 ! and change other parameters. See the man page for details.
134 "Qix (solid)" qix -root -solid -delay 0 -segments 100 \n\
135 "Qix (transparent)" qix -root -count 4 -solid -transparent \n\
136 "Qix (linear)" qix -root -count 5 -solid -transparent \
137 -linear -segments 250 -size 100 \n\
138 - mono: "Qix (xor)" qix -root -linear -count 5 -size 200 \
139 -spread 30 -segments 75 -solid -xor \n\
141 "Attraction (balls)" attraction -root -mode balls \n\
142 "Attraction (lines)" attraction -root -mode lines -points 3 \
144 - "Attraction (poly)" attraction -root -mode polygons \n\
145 "Attraction (splines)" attraction -root -mode splines -segments \
147 "Attraction (orbital)" attraction -root -mode lines -radius 300 \
148 -orbit -vmult 0.5 \n\
154 rorschach -root -offset 7 \n\
158 slidescreen -root \n\
159 decayscreen -root \n\
161 blitspin -root -grab \n\
165 "Ripples (oily)" ripples -root -oily -light 2 \n\
166 "Ripples (stir)" ripples -root -oily -light 2 -stir \n\
167 "Ripples (desktop)" ripples -root -water -light 6 \n\
183 "Grav (trails)" grav -root -trail -decay \n\
198 goop -root -max-velocity 0.5 -elasticity \
201 "Starfish (blob)" starfish -root -blob \n\
204 coral -root -delay 0 \n\
206 triangle -root -delay 1 \n\
213 kaleidescope -root \n\
215 xlyap -root -randomize \n\
219 interference -root \n\
220 truchet -root -randomize \n\
226 "RD-Bomb (mobile)" rd-bomb -root -speed 1 -size 0.1 \n\
235 "Wander (spots)" wander -root -advance 0 -size 10 -circles \
236 True -length 10000 -reset 100000 \n\
240 petri -root -size 2 -count 20 \n\
241 "Petri 2" petri -root -minlifespeed 0.02 \
242 -maxlifespeed 0.03 -minlifespan 1 \
243 -maxlifespan 1 -instantdeathchan 0 \
244 -minorchan 0 -anychan 0.3 \n\
250 xspirograph -root \n\
252 - "NerveRot (dense)" nerverot -root -count 1000 \n\
253 - "NerveRot (thick)" nerverot -root -count 100 -line-width 4 \
254 -max-nerve-radius 0.8 -nervousness 0.5 -db \n\
256 - "Zoom (Fatbits)" zoom -root \n\
257 "Zoom (Lenses)" zoom -root -lenses \n\
259 - "RotZoomer (mobile)" rotzoomer -root -move \n\
260 whirlwindwarp -root \n\
261 color: bubbles -root \n\
262 default-n: webcollage -root \n\
263 default-n: "WebCollage (whacked)" \
264 webcollage -root -filter \
265 'vidwhacker -stdin -stdout' \n\
266 - default-n: vidwhacker -root \n\
268 @GL_KLUDGE@ GL: gears -root \n\
269 @GL_KLUDGE@ GL: "Gears (planetary)" gears -root -planetary \n\
270 @GL_KLUDGE@ GL: superquadrics -root \n\
271 @GL_KLUDGE@ GL: morph3d -root \n\
272 @GL_KLUDGE@ GL: cage -root \n\
273 @GL_KLUDGE@ GL: moebius -root \n\
274 @GL_KLUDGE@ GL: stairs -root \n\
275 @GL_KLUDGE@ GL: pipes -root \n\
276 @GL_KLUDGE@ GL: sproingies -root \n\
277 @GL_KLUDGE@ GL: rubik -root \n\
278 @GL_KLUDGE@ GL: atlantis -root \n\
279 @GL_KLUDGE@ GL: lament -root \n\
280 @GL_KLUDGE@ GL: bubble3d -root \n\
281 @GL_KLUDGE@ GL: glplanet -root \n\
282 @GL_KLUDGE@ GL: pulsar -root \n\
283 - GL: "Pulsar (textures)" \
284 pulsar -root -texture -mipmap \
285 -texture_quality -light -fog \n\
286 @GLE_KLUDGE@GL: extrusion -root \n\
287 @GL_KLUDGE@ GL: sierpinski3d -root \n\
288 @GL_KLUDGE@ GL: gflux -root \n\
289 @GL_KLUDGE@ GL: stonerview -root \n\
290 @GL_KLUDGE@ GL: starwars -root \n\
291 @GL_KLUDGE@ GL: gltext -root \n\
292 @GL_KLUDGE@ GL: "GLText (clock)" gltext -text "%A%n%d %b %Y%n%r" -root \n\
293 @GL_KLUDGE@ GL: "Molecule" molecule -root \n\
294 @GL_KLUDGE@ GL: "Molecule (lumpy)" molecule -root -no-bonds -no-labels \n\
295 @GL_KLUDGE@ GL: dangerball -root \n\
297 - xdaliclock -root -builtin3 -cycle \n\
298 - default-n: xearth -nofork -nostars -ncolors 50 \
299 -night 3 -wait 0 -timewarp 400.0 -pos \
301 - ssystem -fullscreen :32 \n\
302 - xmountains -b -M -Z 0 -r 1 \n\
303 - "XMountains (top)" xmountains -b -M -Z 0 -r 1 -m \n\
304 - xaos -root -autopilot -incoloring -1 \
305 -nogui -outcoloring -1 \n\
306 - xfishtank -d -s \n\
313 ! To display a randomized slideshow of images, you can do something like this:
315 ! default-n: "Slideshow" xv -root -rmode 5 -random -viewonly \
316 ! -wloop -wait 30 $HOME/bitmaps/*.jpg \n\
318 ! or, if you prefer "xli" to "xv", like this: (but note that xli's "-delay"
319 ! option doesn't work in conjunction with "-onroot", so you need to add a
320 ! line for each image individually... "xv" is better in this respect.)
322 ! default-n: xli -quiet -onroot -center -border black \
323 ! $HOME/bitmaps/pic1.jpg \n\
324 ! default-n: xli -quiet -onroot -center -border black \
325 ! $HOME/bitmaps/pic2.jpg \n\
326 ! default-n: xli -quiet -onroot -center -border black \
327 ! $HOME/bitmaps/pic3.jpg \n\
329 ! Note that we've used "default-n" as the visual name, rather than just
330 ! "default": this means "default visual, no install", that is, it's like
331 ! specifying the command-line arguments "-visual default -no-install".
332 ! This is necessary because, when XV or XLI arerunning in "-root" mode, they
333 ! always assume that the default visual and colormap are being used, rather
334 ! than examining the window it is drawing on to see what visual and colormap
335 ! it has. If we didn't force the default visual to be used, we would get an
336 ! X error. If we didn't force the default colormap to be installed, the
337 ! colors would be all wrong. "default-i" may also be used as a visual name
338 ! (meaning, "-visual default -install") but you probably won't ever need
342 ! Some of the GL demos that SGI ships work with XScreenSaver; most don't.
343 ! XScreenSaver includes a program (not built or installed by default)
344 ! called "xscreensaver-sgigl". To use the SGI demos with XScreenSaver,
345 ! build that program, and use it to launch the SGI demos. For example,
346 ! on Irix 6.2, you can do this:
348 ! xscreensaver-sgigl /usr/demos/bin/ep -S
349 ! xscreensaver-sgigl /usr/demos/bin/bongo
351 ! On Irix 6.3, things have moved, so you need to do it like this:
353 ! xscreensaver-sgigl /usr/sbin/ep -S
355 ! (But note that, on non-SGIs, the bundled "stonerview" hack is a decent
356 ! clone of "ep". Yay!)
358 ! You can also use the "ant" demo, but first you need to wrap a shell script
359 ! around it that cds to its home directory, so that it can find its files;
360 ! and also pass it the -S argument, to prevent it from forking. What a mess!
361 ! Basically, the SGI demo writers went out of their way to make my life hell.
365 !=============================================================================
367 ! You probably don't want to change anything after this point.
369 !=============================================================================
372 XScreenSaver.pointerPollTime: 5
373 XScreenSaver.initialDelay: 0
374 XScreenSaver.windowCreationTimeout: 30
375 XScreenSaver.bourneShell: /bin/sh
378 ! Resources for the password and splash-screen dialog boxes of
379 ! the "xscreensaver" daemon.
381 *Dialog.headingFont: *-times-bold-r-*-*-*-180-*-*-*-iso8859-1
382 *Dialog.bodyFont: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
383 *Dialog.labelFont: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
384 *Dialog.buttonFont: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
385 *Dialog.dateFont: *-courier-medium-r-*-*-*-80-*-*-*-iso8859-1
386 *Dialog.foreground: #000000
387 *Dialog.background: #BFBFBF
388 *Dialog.Button.foreground: #000000
389 *Dialog.Button.background: #D0D0D0
390 *Dialog.text.foreground: #000000
391 *Dialog.text.background: #FFFFFF
392 *passwd.thermometer.foreground: #FF0000
393 *passwd.thermometer.background: #FFFFFF
394 *Dialog.topShadowColor: #E7E7E7
395 *Dialog.bottomShadowColor: #737373
396 *Dialog.logo.width: 210
397 *Dialog.logo.height: 210
398 *Dialog.internalBorderWidth: 30
399 *Dialog.borderWidth: 1
400 *Dialog.shadowThickness: 4
402 *passwd.heading.label: XScreenSaver %s
403 *passwd.body.label: This display is locked.
404 *passwd.user.label: User:
405 *passwd.passwd.label: Password:
406 *passwd.passwdFont: *-courier-medium-r-*-*-*-140-*-*-*-iso8859-1
407 *passwd.thermometer.width: 8
409 *splash.heading.label: XScreenSaver %s
410 *splash.body.label: Copyright © 1991-2001 by
411 *splash.body2.label: Jamie Zawinski <jwz@jwz.org>
412 *splash.demo.label: Demo
413 *splash.prefs.label: Prefs
414 *splash.help.label: Help
417 ! Resources for the Motif dialog boxes of the "xscreensaver-demo" program.
419 *fontList: *-helvetica-medium-r-*-*-*-120-*-*-*-iso8859-1
420 *demoDialog*label1.fontList: *-helvetica-medium-r-*-*-*-140-*-*-*-iso8859-1
421 *cmdText.fontList: *-courier-medium-r-*-*-*-120-*-*-*-iso8859-1
422 *label0.fontList: *-helvetica-bold-r-*-*-*-140-*-*-*-iso8859-1
423 XScreenSaver*doc.fontList: *-helvetica-medium-r-*-*-*-100-*-*-*-iso8859-1
424 ! above must be fully qualified to get around *sgiMode.
428 *XmTextField.foreground: #000000
429 *XmTextField.background: #FFFFFF
430 *list.foreground: #000000
431 *list.background: #FFFFFF
433 *ApplicationShell.title: XScreenSaver
434 *warning.title: XScreenSaver
435 *warning_popup.title: XScreenSaver
436 *allowShellResize: True
439 *menubar*file.labelString: File
440 *menubar*file.mnemonic: F
441 *file.blank.labelString: Blank Screen Now
442 *file.blank.mnemonic: B
443 *file.lock.labelString: Lock Screen Now
444 *file.lock.mnemonic: L
445 *file.kill.labelString: Kill Daemon
446 *file.kill.mnemonic: K
447 *file.restart.labelString: Restart Daemon
448 *file.restart.mnemonic: R
449 *file.exit.labelString: Exit
450 *file.exit.mnemonic: E
452 *menubar*edit.labelString: Edit
453 *menubar*edit.mnemonic: E
454 *edit.cut.labelString: Cut
455 *edit.cut.mnemonic: u
456 *edit.copy.labelString: Copy
457 *edit.copy.mnemonic: C
458 *edit.paste.labelString: Paste
459 *edit.paste.mnemonic: P
461 *menubar*help.labelString: Help
462 *menubar*help.mnemonic: H
463 *help.about.labelString: About...
464 *help.about.mnemonic: A
465 *help.docMenu.labelString: Documentation...
466 *help.docMenu.mnemonic: D
468 *demoTab.marginWidth: 10
469 *optionsTab.marginWidth: 10
471 *XmScrolledWindow.topOffset: 10
472 *XmScrolledWindow.leftOffset: 10
473 *demoTab.topOffset: 4
474 *form1.bottomOffset: 10
475 *form3.leftOffset: 10
476 *form3.rightOffset: 10
478 *frame.bottomOffset: 10
479 *enabled.topOffset: 10
480 *visLabel.topOffset: 10
482 *form4.bottomOffset: 4
484 *XmComboBox.marginWidth: 0
485 *XmComboBox.marginHeight: 0
487 *demo.marginWidth: 30
488 *demo.marginHeight: 4
493 *down.marginHeight: 4
496 *frame.traversalOn: False
498 *list.automaticSelection: True
499 *list.visibleItemCount: 20
503 *demoTab.labelString: Graphics Demos
504 *optionsTab.labelString: Screensaver Options
505 *down.labelString: \\/
507 *frameLabel.labelString:
508 *cmdLabel.labelString: Command Line:
509 *cmdLabel.alignment: ALIGNMENT_BEGINNING
510 *enabled.labelString: Enabled
511 *visLabel.labelString: Visual:
512 *visLabel.alignment: ALIGNMENT_END
513 *visLabel.leftOffset: 20
514 *demo.labelString: Demo
515 *man.labelString: Documentation...
516 *done.labelString: Quit
518 *preferencesLabel.labelString: XScreenSaver Parameters
520 *timeoutLabel.labelString: Saver Timeout
521 *cycleLabel.labelString: Cycle Timeout
522 *fadeSecondsLabel.labelString: Fade Duration
523 *fadeTicksLabel.labelString: Fade Ticks
524 *lockLabel.labelString: Lock Timeout
525 *passwdLabel.labelString: Password Timeout
526 *preferencesForm*XmTextField.columns: 8
528 *verboseToggle.labelString: Verbose
529 *cmapToggle.labelString: Install Colormap
530 *fadeToggle.labelString: Fade Colormap
531 *unfadeToggle.labelString: Unfade Colormap
532 *lockToggle.labelString: Require Password
539 *Cancel.marginWidth: 30
540 *Cancel.marginHeight: 4
541 *Cancel.rightOffset: 10
542 *Cancel.bottomOffset: 10
547 !=============================================================================
549 ! Online documentation for xscreensaver-demo.
551 !=============================================================================
553 ! sanity check -- hands off.
554 *hacks.documentation.isInstalled: True
556 *hacks.qix.documentation: \
557 This is the swiss army chainsaw of qix programs. It bounces a series \
558 of line segments around the screen, and uses variations on this basic \
559 motion pattern to produce all sorts of different presentations: line \
560 segments, filled polygons, overlapping translucent areas... Written \
563 *hacks.attraction.documentation: \
564 Like qix, this uses a simple simple motion model to generate many \
565 different display modes. The control points attract each other up to \
566 a certain distance, and then begin to repel each other. The \
567 attraction/repulsion is proportional to the distance between any two \
568 particles, similar to the strong and weak nuclear forces. \
570 One of the most interesting ways to watch this hack is simply as \
571 bouncing balls, because their motions and interactions with each \
572 other are so odd. Sometimes two balls will get into a tight orbit \
573 around each other, to be interrupted later by a third, or by the edge \
574 of the screen. It looks quite chaotic. \
576 Written by Jamie Zawinski, based on Lisp code by John Pezaris.
578 *hacks.pyro.documentation: \
579 Pyro draws exploding fireworks. Blah blah blah. Written by Jamie \
582 *hacks.helix.documentation: \
583 This repeatedly generates spirally string-art-ish patterns. Written \
586 *hacks.pedal.documentation: \
587 This is sort of a combination spirograph/string-art. It generates a \
588 large, complex polygon, and lets the X server do the bulk of the work \
589 by giving it an even/odd winding rule. Written by Dale Moore, based \
590 on some ancient PDP-11 code.
592 *hacks.rorschach.documentation: \
593 This generates random inkblot patterns. The algorithm is deceptively \
594 simple for how well it works; it merely walks a dot around the screen \
595 randomly, and then reflects the image horizontally, vertically, or \
596 both. Any deep-seated neurotic tendencies which this program reveals \
597 are your own problem. Written by Jamie Zawinski.
599 *hacks.hopalong.documentation: \
600 This draws lacy fractal patterns, based on iteration in the imaginary \
601 plane, from a 1986 Scientific American article. Mostly written by \
604 *hacks.greynetic.documentation: \
605 This draws random colored and stippled rectangles. Written by Jamie \
608 *hacks.imsmap.name: IMSmap
609 *hacks.imsmap.documentation: \
610 This generates random cloud-like patterns. It looks quite different \
611 in monochrome and color. The basic idea is to take four points on \
612 the edge of the image, and assign each a random ``elevation''. Then \
613 find the point between them, and give it a value which is the average \
614 of the other four, plus some small random offset. Then coloration is \
615 done based on elevation. \
617 The color selection is done by binding the elevation to either hue, \
618 saturation, or brightness, and assigning random values to the others. \
619 The ``brightness'' mode tends to yield cloudlike patterns, and the \
620 others tend to generate images that look like heat-maps or CAT-scans. \
621 Written by Juergen Nickelsen and Jamie Zawinski.
623 *hacks.slidescreen.name: SlideScreen
624 *hacks.slidescreen.documentation: \
625 This grabs an image of whatever is on your screen, divides it into a \
626 grid, and then randomly shuffles the squares around as if it was one \
627 of those annoying ``16-puzzle'' games, where there is a grid of \
628 squares, one of which is missing. I hate trying to solve those \
629 puzzles, but watching one permute itself is more amusing. Written by \
632 *hacks.decayscreen.name: DecayScreen
633 *hacks.decayscreen.documentation: \
634 This grabs an image of whatever is on your screen, and makes it melt. \
635 You've no doubt seen this effect before, but no screensaver would \
636 really be complete without it. It works best if there's something \
637 colorful visible. Warning, if the effect continues after the screen \
638 saver is off, seek medical attention. Written by David Wald and \
641 A number of these screenhacks have the ability to take an image of \
642 your desktop and manipulate it in some way. On SGI systems, these \
643 programs are able to (at random) pull their source image from the \
644 system's video input instead! This works nicely if you leave some \
645 some random television station plugged in.
647 *hacks.jigsaw.documentation: \
648 This grabs a screen image, carves it up into a jigsaw puzzle, \
649 shuffles it, and then solves the puzzle. This works especially well \
650 when you feed it an external video signal instead of letting it grab \
651 the screen image (actually, I guess this is generally true...) When \
652 it is grabbing a video image, it is sometimes pretty hard to guess \
653 what the image is going to look like once the puzzle is solved. \
654 Written by Jamie Zawinski.
656 *hacks.blitspin.name: BlitSpin
657 *hacks.blitspin.documentation: \
658 The ``blitspin'' hack repeatedly rotates a bitmap by 90 degrees by \
659 using logical operations: the bitmap is divided into quadrants, and \
660 the quadrants are shifted clockwise. Then the same thing is done \
661 again with progressively smaller quadrants, except that all \
662 sub-quadrants of a given size are rotated in parallel. Written by \
663 Jamie Zawinski based on some cool SmallTalk code seen in in Byte \
666 As you watch it, the image appears to dissolve into static and then \
667 reconstitute itself, but rotated. You can provide the image to use, \
668 as an XBM or XPM file, or tell it to grab a screen image and rotate \
671 *hacks.slip.documentation: \
672 This program throws some random bits on the screen, then sucks them \
673 through a jet engine and spews them out the other side. To avoid \
674 turning the image completely to mush, every now and then it will and \
675 then it interjects some splashes of color into the scene, or go into \
676 a spin cycle, or stretch the image like taffy, or (this is my \
677 addition) grab an image of your current desktop to chew on. \
678 Originally written by Scott Draves; whacked on by Jamie Zawinski.
680 *hacks.distort.documentation: \
681 This hack grabs an image of the screen, and then lets a transparent \
682 lens wander around the screen, magnifying whatever is underneath. \
683 Written by Jonas Munsin.
685 *hacks.spotlight.documentation: \
686 Draws a spotlight scanning across a black screen, illumnating the \
687 underlying desktop when it passes. Written by Rick Schultz.
689 *hacks.hypercube.documentation: \
690 This displays 2D projections of the sequence of 3D objects which are \
691 the projections of the 4D analog to the cube: as a square is composed \
692 of four lines, each touching two others; and a cube is composed of \
693 six squares, each touching four others; a hypercube is composed of \
694 eight cubes, each touching six others. To make it easier to \
695 visualize the rotation, it uses a different color for the edges of \
696 each face. Don't think about it too long, or your brain will melt. \
697 Written by Joe Keane, Fritz Mueller, and Jamie Zawinski.
699 *hacks.hyperball.documentation: \
700 Hyperball is to hypercube as dodecahedron is to cube: this displays \
701 a 2D projection of the sequence of 3D objects which are the projections \
702 of the 4D analog to the dodecahedron. Written by Joe Keane.
704 *hacks.halo.documentation: \
705 This draws trippy psychedelic circular patterns that hurt to look at. \
706 It can also animate the control-points, but that takes a lot of CPU \
707 and bandwidth. Written by Jamie Zawinski.
709 *hacks.maze.documentation: \
710 This is the ancient X maze demo, modified to work with xscreensaver. \
711 It generates a random maze, then solves it with visual feedback. \
712 Originally by Jim Randell; modified by a cast of thousands.
714 *hacks.noseguy.documentation: \
715 A little man with a big nose wanders around your screen saying \
716 things. The things which he says can come from a file, or from an \
717 external program like `zippy' or `fortune'. This was extracted from \
718 `xnlock' by Dan Heller. Colorized by Jamie Zawinski.
720 *hacks.flame.documentation: \
721 Another iterative fractal generator. Written by Scott Draves.
723 *hacks.lmorph.name: LMorph
724 *hacks.lmorph.documentation: \
725 This generates random spline-ish line drawings and morphs between \
726 them. Written by Sverre H. Huseby and Glenn T. Lines.
728 *hacks.deco.documentation: \
729 This one subdivides and colors rectangles randomly. It looks kind of \
730 like Brady-Bunch-era rec-room wall paneling. (Raven says: ``this \
731 screensaver is ugly enough to peel paint.'') Written by Jamie \
732 Zawinski, inspired by Java code by Michael Bayne.
734 *hacks.moire.documentation: \
735 This one draws cool circular interference patterns. Most of the \
736 circles you see aren't explicitly rendered, but show up as a result \
737 of interactions between the other pixels that were drawn. Written by \
738 Jamie Zawinski, inspired by Java code by Michael Bayne. As he \
739 pointed out, the beauty of this one is that the heart of the display \
740 algorithm can be expressed with just a pair of loops and a handful of \
741 arithmetic, giving it a high ``display hack metric''.
743 *hacks.moire2.documentation: \
744 Another example of the fun you can have with moire \
745 interference patterns; this hack generates fields of concentric \
746 circles or ovals, and combines the planes with various operations. \
747 The planes are moving independently of one another, causing the \
748 interference lines to ``spray.'' Written by Jamie Zawinski.
750 *hacks.lightning.documentation: \
751 This one draws crackling fractal lightning bolts. It's simple, \
752 direct, and to the point. If only it had sound... Written by Keith \
755 *hacks.strange.documentation: \
756 This draws strange attractors: it's a colorful, \
757 unpredictably-animating field of dots that swoops and twists around. \
758 The motion is very nice. Written by Massimino Pascal.
760 *hacks.spiral.documentation: \
761 Moving circular patterns, by Peter Schmitzberger. Moving circular \
762 patterns means moire; interference patterns, of course.
764 *hacks.laser.documentation: \
765 Moving radiating lines, that look vaguely like scanning laser beams. \
766 Written by Pascal Pensa. (Frankie say: relax.)
768 *hacks.grav.documentation: \
769 This program draws a simple orbital simulation. If you turn on \
770 trails, it looks kind of like a cloud-chamber photograph. Written \
773 *hacks.drift.documentation: \
774 How could one possibly describe this except as ``drifting recursive \
775 fractal cosmic flames?'' Another fine hack from the Scott Draves \
776 collection of fine hacks.
779 *hacks.ifs.documentation: \
780 This one draws spinning, colliding iterated-function-system images. \
781 Written by Massimino Pascal.
783 *hacks.julia.documentation: \
784 This one draws spinning, animating (are you detecting a pattern here \
785 yet?) explorations of the Julia set. You've probably seen static \
786 images of this fractal form before, but it's a lot of fun to watch in \
787 motion as well. One interesting thing is that there is a small \
788 swinging dot passing in front of the image, which indicates the \
789 control point from which the rest of the image was generated. \
790 Written by Sean McCullough.
792 *hacks.penrose.documentation: \
793 Draws quasiperiodic tilings; think of the implications on modern \
794 formica technology. Written by Timo Korvola. \
796 In April 1997, Sir Roger Penrose, a British math professor who has \
797 worked with Stephen Hawking on such topics as relativity, black \
798 holes, and whether time has a beginning, filed a \
799 copyright-infringement lawsuit against the Kimberly-Clark \
800 Corporation, which Penrose said copied a pattern he created (a \
801 pattern demonstrating that ``a nonrepeating pattern could exist in \
802 nature'') for its Kleenex quilted toilet paper. Penrose said he \
803 doesn't like litigation but, ``When it comes to the population of \
804 Great Britain being invited by a multinational to wipe their bottoms \
805 on what appears to be the work of a Knight of the Realm, then a last \
806 stand must be taken.'' \
808 As reported by News of the Weird #491, 4-jul-1997.
810 *hacks.sierpinski.documentation: \
811 This draws the two-dimensional variant of the recursive Sierpinski \
812 triangle fractal. Written by Desmond Daignault.
814 *hacks.braid.documentation: \
815 Draws random color-cycling inter-braided concentric circles. Written \
818 *hacks.galaxy.documentation: \
819 This draws spinning galaxies, which then collide and scatter their \
820 stars to the, uh, four winds or something. Originally an Amiga \
821 program by Uli Siegmund.
823 *hacks.bouboule.documentation: \
824 This draws what looks like a spinning, deforming baloon with \
825 varying-sized spots painted on its invisible surface. Written by \
828 *hacks.swirl.documentation: \
829 More flowing, swirly patterns. This version is by M. Dobie and R. \
830 Taylor, but you might have seen a Mac program similar to this called \
831 FlowFazer. There is also a cool Java applet of a similar concept
833 *hacks.flag.documentation: \
834 This draws a waving colored flag, that undulates its way around the \
835 screen. The trick is the flag can contain arbitrary text and images. \
836 By default, it displays either the current system name and OS \
837 type, or a picture of ``Bob,'' but you can replace the text or the \
838 image with a command-line option. Written by Charles Vidal and Jamie \
841 *hacks.sphere.documentation: \
842 Another of the classic screenhacks of the distant past, this one \
843 draws shaded spheres in multiple colors. This hack traces its \
844 lineage back to Tom Duff in 1982.
846 *hacks.forest.documentation: \
847 This draws fractal trees. Written by Peter Baumung. Everybody loves \
850 *hacks.lisa.documentation: \
851 This draws Lisajous loops, by Caleb Cullen. Remember that device \
852 they had the Phantom Zone prisoners in during their trial in \
853 Superman? I think that was one of these.
855 *hacks.lissie.documentation: \
856 Another Lissajous figure. This one draws the progress of circular \
857 shapes along a path. Written by Alexander Jolk.
859 *hacks.goop.documentation: \
860 This draws set of animating, transparent, amoeba-like blobs. The \
861 blobs change shape as they wander around the screen, and they are \
862 translucent, so you can see the lower blobs through the higher ones, \
863 and when one passes over another, their colors merge. Written by \
864 Jamie Zawinski. I got the idea for this from a cool mouse pad I \
865 have, which achieves the same kind of effect in real life by having \
866 several layers plastic with colored oil between them. Written by \
869 *hacks.starfish.documentation: \
870 This generates a sequence of undulating, throbbing, star-like \
871 patterns which pulsate, rotate, and turn inside out. Another display \
872 mode uses these shapes to lay down a field of colors, which are then \
873 cycled. The motion is very organic. Written by Jamie Zawinski.
875 *hacks.munch.documentation: \n\
882 As reported by HAKMEM, in 1962, Jackson Wright wrote the above PDP-1 \
883 code. That code still lives on in this screenhack, some 35 years \
884 later. The number of lines of enclosing code has increased \
885 substantially, however. This version is by Tim Showalter.
887 *hacks.fadeplot.name: FadePlot
888 *hacks.fadeplot.documentation: \
889 Draws what looks like a waving ribbon following a sinusoidal path. \
890 Written by Bas van Gaalen and Charles Vidal.
892 *hacks.coral.documentation: \
893 Simulates coral growth, albeit somewhat slowly. This image doesn't \
894 really do it justice. Written by Frederick Roeber.
896 *hacks.mountain.documentation: \
897 Generates random 3d plots that look vaguely mountainous. Written by \
900 *hacks.triangle.documentation: \
901 Generates random mountain ranges using iterative subdivision of \
902 triangles. Written by Tobias Gloth.
904 *hacks.worm.documentation: \
905 An ancient xlock hack that draws multicolored worms that crawl around \
906 the screen. Written by Brad Taylor, Dave Lemke, Boris Putanec, and \
909 *hacks.rotor.documentation: \
910 Another ancient xlock demo, this one by Tom Lawrence. It draws a \
911 line segment moving along a complex spiraling curve. I tweaked this \
912 to generate curvier lines, but still frames of it don't look like \
915 *hacks.ant.documentation: \
916 A cellular automaton that is really a two-dimensional Turing machine: \
917 as the heads (``ants'') walk along the screen, they change pixel \
918 values in their path. Then, as they pass over changed pixels, their \
919 behavior is influenced. Written by David Bagley.
921 *hacks.demon.documentation: \
922 A cellular automaton that starts with a random field, and organizes \
923 it into stripes and spirals. Written by David Bagley.
925 *hacks.loop.documentation: \
926 This one produces loop-shaped colonies that spawn, age, and \
927 eventually die. Written by David Bagley.
929 *hacks.vines.documentation: \
930 This one generates a continuous sequence of small, curvy geometric \
931 patterns. It scatters them around your screen until it fills up, \
932 then it clears the screen and starts over. Written by Tracy Camp and \
935 *hacks.kaleidescope.documentation: \
936 Another clone of an ancient meme, consisting largely of frenetic \
937 rotational motion of colored lines. This one is by Ron Tapia. The \
938 motion is nice, but I think it needs more solids, or perhaps just \
939 brighter colors. More variations in the rotational speed might help, \
942 *hacks.xjack.documentation: \
943 This program behaves schizophrenically and makes a lot of typos. \
944 Written by Jamie Zawinski. If you haven't seen Stanley Kubrick's \
945 masterpiece, ``The Shining,'' you won't get it. Those who have \
946 describe this hack as ``inspired.''
948 *hacks.xlyap.documentation: \
949 This generates pretty fractal pictures by doing funky math involving \
950 the ``Lyapunov exponent.'' It has a cool interactive mode, too. \
951 Written by Ron Record.
953 *hacks.cynosure.documentation: \
954 A hack similar to `greynetic', but less frenetic. The first \
955 implementation was by Stephen Linhart; then Ozymandias G. Desiderata \
956 wrote a Java applet clone. That clone was discovered by Jamie \
957 Zawinski, and ported to C for inclusion here.
959 *hacks.flow.documentation: \
960 Another series of strange attractors: a flowing series of points, \
961 making strange rotational shapes. Written by Jeff Butterworth.
963 *hacks.epicycle.documentation: \
964 This program draws the path traced out by a point on the edge of a \
965 circle. That circle rotates around a point on the rim of another \
966 circle, and so on, several times. These were the basis for the \
967 pre-heliocentric model of planetary motion. Written by James \
970 *hacks.interference.documentation: \
971 Another color-field hack, this one works by computing decaying \
972 sinusoidal waves, and allowing them to interfere with each other as \
973 their origins move. Written by Hannu Mallat.
975 *hacks.truchet.documentation: \
976 This draws line- and arc-based Truchet patterns that tile the screen. \
977 Written by Adrian Likins.
979 *hacks.bsod.name: BSOD
980 *hacks.bsod.documentation: \
981 BSOD stands for ``Blue Screen of Death.'' The finest in personal \
982 computer emulation, this hack simulates popular screen savers from a \
983 number of less robust operating systems. Written by Jamie Zawinski.
985 *hacks.crystal.documentation: \
986 Moving polygons, similar to a kaleidescope (more like a kaleidescope \
987 than the hack called `kaleid,' actually.) This one by Jouk Jansen.
989 *hacks.discrete.documentation: \
990 More ``discrete map'' systems, including new variants of Hopalong and \
991 Julia, and a few others. Written by Tim Auckland.
993 *hacks.kumppa.documentation: \
994 Spiraling, spinning, and very, very fast splashes of color rush \
995 toward the screen. Written by Teemu Suutari.
997 *hacks.rd-bomb.name: RD-Bomb
998 *hacks.rd-bomb.documentation: \
999 Another variation of the `Bomb' program by Scott Draves. This draws \
1000 a grid of growing square-like shapes that, once they overtake each \
1001 other, react in unpredictable ways. ``RD'' stands for \
1004 *hacks.sonar.documentation: \
1005 This program draws a simulation of a sonar screen. Written by \
1006 default, it displays a random assortment of ``bogies'' on the screen, \
1007 but if compiled properly, it can ping (pun intended) your local \
1008 network, and actually plot the proximity of the other hosts on your \
1009 network to you. It would be easy to make it monitor other sources of \
1010 data, too. (Processes? Active network connections? CPU usage per \
1011 user?) Written by Stephen Martin.
1013 *hacks.t3d.name: T3D
1014 *hacks.t3d.documentation: \
1015 This draws a working analog clock composed of floating, throbbing \
1016 bubbles. Written by Bernd Paysan.
1018 *hacks.penetrate.documentation: \
1019 This hack simulates the classic arcade game Missile Command. Written \
1022 *hacks.deluxe.documentation: \
1023 This draws a pulsing sequence of stars, circles, and lines. It would \
1024 look better if it was faster, but as far as I can tell, there is no \
1025 way to make this be both: fast, and flicker-free. Yet another reason \
1026 X sucks. Written by Jamie Zawinski.
1028 *hacks.compass.documentation: \
1029 This draws a compass, with all elements spinning about randomly, for \
1030 that ``lost and nauseous'' feeling. Written by Jamie Zawinski.
1032 *hacks.squiral.documentation: \
1033 Draws a set of interacting, square-spiral-producing automata. The \
1034 spirals grow outward until they hit something, then they go around \
1035 it. Written by Jeff Epler.
1037 *hacks.xflame.documentation: \
1038 Draws a simulation of pulsing fire. It can also take an arbitrary \
1039 image and set it on fire too. Written by Carsten Haitzler, hacked on \
1042 *hacks.wander.documentation: \
1043 Draws a colorful random-walk, in various forms. Written by Rick \
1046 *hacks.critical.documentation: \
1047 Draws a system of self-organizing lines. It starts out as random \
1048 squiggles, but after a few iterations, order begins to appear. \
1049 Written by Martin Pool.
1051 *hacks.phosphor.documentation: \
1052 Draws a simulation of an old terminal, with large pixels and \
1053 long-sustain phosphor. It can run any program as a source of the text \
1054 it displays. Written by Jamie Zawinski.
1056 *hacks.xmatrix.documentation: \
1057 A rendition of the text scrolls seen in the movie ``The Matrix.'' \
1058 Written by Jamie Zawinski.
1060 *hacks.petri.documentation: \
1061 This simulates colonies of mold growing in a petri dish. Growing \
1062 colored circles overlap and leave spiral interference in their wake. \
1063 Written by Dan Bornstein.
1065 *hacks.shadebobs.name: ShadeBobs
1066 *hacks.shadebobs.documentation: \
1067 This draws smoothly-shaded oscilating oval patterns, that look \
1068 something like vapor trails or neon tubes. Written by Shane Smit.
1070 *hacks.ccurve.name: C Curve
1071 *hacks.ccurve.documentation: \
1072 Generates self-similar linear fractals, including the classic ``C \
1073 Curve.'' Written by Rick Campbell.
1075 *hacks.blaster.documentation: \
1076 Draws a simulation of flying space-combat robots (cleverly disguised \
1077 as colored circles) doing battle in front of a moving star field. \
1078 Written by Jonathan Lin.
1080 *hacks.bumps.documentation: \
1081 A bit like `Spotlight', except that instead of merely exposing part \
1082 of your desktop, it creates a bump map from it. Basically, it \
1083 3D-izes a roaming section of your desktop, based on color intensity. \
1084 Written by Shane Smit.
1086 *hacks.xteevee.name: XTeeVee
1087 *hacks.xteevee.documentation: \
1088 XTeeVee simulates various television problems, including static, \
1089 loss of vertical hold, and a test pattern. By Greg Knauss.
1091 *hacks.xspirograph.name: XSpiroGraph
1092 *hacks.xspirograph.documentation: \
1093 Simulates that pen-in-nested-plastic-gears toy from your childhood. \
1096 *hacks.nerverot.name: NerveRot
1097 *hacks.nerverot.documentation: \
1098 Draws different shapes composed of nervously vibrating squiggles, \
1099 as if seen through a camera operated by a monkey on crack. \
1102 *hacks.webcollage.name: WebCollage
1103 *hacks.webcollage.documentation: \
1104 This program makes collages out of random images pulled off of the \
1105 World Wide Web. It finds these images by doing random web searches, \
1106 and then extracting images from the returned pages. It can also be \
1107 set up to filter the images through the `VidWhacker' program, above, \
1108 which looks really great. \
1110 (Note that most of the images it finds are text, and not pictures. \
1111 This is because most of the web is pictures of text. Which is pretty \
1112 sad.) Written by Jamie Zawinski.
1114 *hacks.vidwhacker.name: VidWhacker
1115 *hacks.vidwhacker.documentation: \
1116 This is actually just a shell script that grabs a frame of video from \
1117 the system's video input, and then uses some PBM filters (chosen at \
1118 random) to manipulate and recombine the video frame in various ways \
1119 (edge detection, subtracting the image from a rotated version of \
1120 itself, etc.) Then it displays that image for a few seconds, and \
1121 does it again. This works really well if you just feed broadcast \
1122 television into it. \
1124 Currently, the three lines of the script that actually grab the \
1125 source picture are SGI specific, but it should be trivial to adapt it \
1126 to work on other systems that can grab video (please send me the \
1127 changes if you do this...)
1129 *hacks.rocks.documentation: \
1130 This draws an animation of flight through an asteroid field, with \
1131 changes in rotation and direction. It can also display 3D \
1132 separations for red/blue glasses! Mostly written by Jamie Zawinski.
1134 *hacks.bubbles.documentation: \
1135 This simulates the kind of bubble formation that happens when water \
1136 boils:small bubbles appear, and as they get closer to each other, \
1137 they combine to form larger bubbles, which eventually pop. Written \
1140 *hacks.gears.documentation: \
1141 This draws sets of turning, interlocking gears, rotating in three \
1142 dimensions. Another GL hack, by Danny Sung, Brian Paul, Ed Mackey, \
1145 *hacks.superquadrics.documentation: \
1146 Ed Mackey reports that he wrote the first version of this program in \
1147 BASIC on a Commodore 64 in 1987, as a 320x200 black and white \
1148 wireframe. Now it is GL and has specular reflections.
1150 *hacks.morph3d.name: Morph3D
1151 *hacks.morph3d.documentation: \
1152 Another 3d shape-changing GL hack, by Marcelo Vianna. It has the \
1153 same shiny-plastic feel as Superquadrics, as many computer-generated \
1156 *hacks.cage.documentation: \
1157 This draws Escher's ``Impossible Cage,'' a 3d analog of a moebius \
1158 strip, and rotates it in three dimensions. Written by Marcelo \
1161 *hacks.moebius.documentation: \
1162 Another M. C. Escher hack by Marcelo Vianna, this one draws \
1163 ``Moebius Strip II,'' a GL image of ants walking along the surface of \
1166 *hacks.stairs.documentation: \
1167 by Marcelo Vianna's third Escher GL hack, this one draws an \
1168 ``infinite'' staircase.
1170 *hacks.pipes.documentation: \
1171 If you've ever been in the same room with a Windows NT machine, \
1172 you've probably seen this GL hack. This version is by Marcelo \
1175 *hacks.sproingies.documentation: \
1176 Q-Bert meets Marble Madness! Written by Ed Mackey.
1178 *hacks.rubik.documentation: \
1179 Draws a Rubik's Cube that rotates in three dimensions and repeatedly \
1180 shuffles and solves itself. Another fine GL hack by Marcelo Vianna.
1182 *hacks.atlantis.documentation: \
1183 This is xfishtank writ large: a GL animation of a number of sharks, \
1184 dolphins, and whales. The swimming motions are great. Originally \
1185 written by Mark Kilgard.
1187 *hacks.lament.documentation: \
1188 Animates a simulation of Lemarchand's Box, repeatedly solving itself. \
1189 Requires OpenGL, and a machine with fast hardware support for texture \
1190 maps. Warning: occasionally opens doors. Written by Jamie Zawinski.
1192 *hacks.bubble3d.name: Bubble3D
1193 *hacks.bubble3d.documentation: \
1194 Draws a stream of rising, undulating 3D bubbles, rising toward the \
1195 top of the screen, with nice specular reflections. Written by Richard \
1198 *hacks.glplanet.name: GLPlanet
1199 *hacks.glplanet.documentation: \
1200 Draws a planet bouncing around in space. Written by David Konerding. \
1201 The built-in image is a map of the earth (extracted from `xearth'), \
1202 but you can wrap any texture around the sphere, e.g., the planetary \
1203 textures that come with `ssystem'.
1205 *hacks.pulsar.documentation: \
1206 Draws some intersecting planes, making use of alpha blending, fog, \
1207 textures, and mipmaps, plus a ``frames per second'' meter so that you \
1208 can tell how fast your graphics card is... Requires OpenGL. Written \
1211 *hacks.extrusion.documentation: \
1212 Draws various rotating extruded shapes that twist around, lengthen, \
1213 and turn inside out. Created by David Konerding from the samples \
1214 that come with the GL Extrusion library by Linas Vepstas.
1216 *hacks.sierpinski3d.name: Sierpinski3D
1217 *hacks.sierpinski3d.documentation: \
1218 This draws the three-dimensional variant of the recursive Sierpinski \
1219 triangle fractal, using GL. Written by Tim Robinson and Jamie Zawinski.
1221 *hacks.ripples.documentation: \
1222 This draws rippling interference patterns like splashing water. \
1223 With the -water option, it manipulates your desktop image to look \
1224 like something is dripping into it. Written by Tom Hammersley.
1226 *hacks.gflux.name: GFlux
1227 *hacks.gflux.documentation: \
1228 Draws a rippling waves on a rotating wireframe grid, using GL. \
1229 Written by Josiah Pease.
1231 *hacks.xrayswarm.name: XRaySwarm
1232 *hacks.xrayswarm.documentation: \
1233 Draws a few swarms of critters flying around the screen, with nicely \
1234 faded color trails behind them. Written by Chris Leger.
1236 *hacks.zoom.documentation: \
1237 Zooms in on a part of the screen and then moves around. With the \
1238 -lenses option the result is like looking through many overlapping \
1239 lenses rather than just a simple zoom. Written by James Macnicol.
1241 *hacks.whirlwindwarp.name: WhirlwindWarp
1242 *hacks.whirlwindwarp.documentation: \
1243 Floating stars are acted upon by a mixture of simple 2D \
1244 forcefields. The strength of each forcefield changes \
1245 continuously, and it is also switched on and off at random. \
1246 By Paul 'Joey' Clark.
1248 *hacks.rotzoomer.name: RotZoomer
1249 *hacks.rotzoomer.documentation: \
1250 Creates a collage of rotated and scaled portions of the \
1251 screen. Written by Claudio Matsuoka.
1253 *hacks.stonerview.name: StonerView
1254 *hacks.stonerview.documentation: \
1255 Chains of colorful squares dance around each other in complex spiral \
1256 patterns. Written by Andrew Plotkin, based on SGI's `electropaint' \
1259 *hacks.starwars.name: StarWars
1260 *hacks.starwars.documentation: \
1261 Draws a stream of text slowly scrolling into the distance at an \
1262 angle, over a star field, like at the beginning of the movie of the \
1263 same name. Written by Jamie Zawinski and Claudio Matauoka.
1265 *hacks.gltext.name: GLText
1266 *hacks.gltext.documentation: \
1267 Displays a few lines of text spinning around in a solid 3D font. \
1268 Written by Jamie Zawinski.
1270 *hacks.molecule.documentation: \
1271 Draws several different representations of molecules. Some common \
1272 molecules are built in, and it can also read PDB (Protein Data Base) \
1273 files as input. Written by Jamie Zawinski.
1275 *hacks.dangerball.name: DangerBall
1276 *hacks.dangerball.documentation: \
1277 Draws a ball that periodically extrudes many random spikes. Ouch! \
1278 Written by Jamie Zawinski.
1281 !=============================================================================
1283 ! Documentation for some programs that are not bundled with XScreenSaver
1285 !=============================================================================
1287 *hacks.xdaliclock.name: XDaliClock
1288 *hacks.xdaliclock.documentation: \
1289 XDaliClock draws a large digital clock, the numbers of which change by \
1290 ``melting'' into their new shapes. Written by Jamie Zawinski. This \
1291 is not included with the XScreenSaver package, but if you don't have \
1292 it already, you can find it at <http://www.jwz.org/xdaliclock/>.
1294 *hacks.xearth.documentation: \
1295 XEarth draws an image of the Earth, as seen from your favorite vantage \
1296 point in space, correctly shaded for the current position of the Sun. \
1297 Written by Kirk Johnson. This is not included with the XScreenSaver \
1298 package, but if you don't have it already, you can find it at \
1299 <http://www.cs.colorado.edu/~tuna/xearth/>.
1301 *hacks.ssystem.name: SSystem
1302 *hacks.ssystem.documentation: \
1303 SSystem is a GL Solar System simulator. It simulates flybys of Sun, \
1304 the nine planets and a few major satellites, with four camera modes. \
1305 Written by Raul Alonso. This is not included with the XScreenSaver \
1306 package, but if you don't have it already, you can find it at \
1307 <http://www1.las.es/~amil/ssystem/>.
1309 *hacks.xmountains.documentation: \
1310 XMountains generates realistic-looking fractal terrains of snow-capped \
1311 mountains near water, with either a top view or a side view. \
1312 Written by Stephen Booth. This is not included with the XScreenSaver \
1313 package, but if you don't have it already, you can find it at \
1314 <http://www.epcc.ed.ac.uk/~spb/xmountains/>. \
1316 Be sure to compile it with -DVROOT or it won't work right when launched \
1317 by the xscreensaver daemon.
1319 *hacks.xaos.name: XaoS
1320 *hacks.xaos.documentation: \
1321 XaoS generates fast fly-through animations of the Mandelbrot and other \
1322 fractal sets. Written by Thomas Marsh and Jan Hubicka. This is not \
1323 included with the XScreenSaver package, but if you don't have it \
1324 already, you can find it at <http://limax.paru.cas.cz/~hubicka/XaoS/>.
1326 *hacks.xfishtank.name: XFishTank
1327 *hacks.xfishtank.documentation: \
1328 Fish! This is not included with the XScreenSaver package, but if you \
1329 don't have it already, you can find it at \
1330 <http://metalab.unc.edu/pub/Linux/X11/demos/>.
1332 *hacks.xsnow.documentation: \
1333 Draws falling snow and the occasional tiny Santa. By Rick Jansen. \
1334 You can find it at <http://www.euronet.nl/~rja/Xsnow/>.
1336 *hacks.goban.documentation: \
1337 Replays historical games of go (aka wei-chi and baduk) on the screen. \
1338 By Scott Draves. You can find it at <http://www.draves.org/goban/>.
1340 *hacks.electricsheep.name: ElectricSheep
1341 *hacks.electricsheep.documentation: \
1342 ElectricSheep is an xscreensaver module that displays mpeg video of \
1343 an animated fractal flame. In the background, it contributes render \
1344 cycles to the next animation. Periodically it uploades completed \
1345 frames to the server, where they are compressed for distribution to \
1348 This program is recommended only if you have a high bandwidth \
1349 connection to the Internet. \
1351 By Scott Draves. You can find it at <http://www.electricsheep.org/>. \
1352 See that web site for configuration information.
1354 *hacks.cosmos.documentation: \
1355 Draws fireworks and zooming, fading flares. By Tom Campbell. \
1356 You can find it at <http://www.mindspring.com/~campbell/cosmos/>.
1358 ! (xrdb prevention kludge: whole file) */