slidescreen — permute the screen image like an 8-puzzle


slidescreen [-display host:display.screen] [-background color] [-grid-size pixels] [-ibw pixels] [-increment pixels] [-delay usecs] [-delay2 usecs] [-duration secs] [-window] [-root] [-install] [-visual visual] [-fps]


The slidescreen program takes an image, divides it into a grid, deletes a random square of that grid, and then randomly slides one of the neighbors of this "hole" into the hole (and repeat.)

The image that it manipulates will be grabbed from the portion of the screen underlying the window, or from the system's video input, or from a random file on disk, as indicated by the grabDesktopImages, grabVideoFrames, and chooseRandomImages options in the ~/.xscreensaver file; see xscreensaver-demo(1) for more details.


slidescreen accepts the following options:
Draw on a newly-created window. This is the default.
Draw on the root window.
Install a private colormap for the window.
-visual visual
Specify which visual to use. Legal values are the name of a visual class, or the id number (decimal or hex) of a specific visual.
-grid-size pixels
The size of the grid cells. Default 70 pixels.
-ibw pixels
The size of the "gutter" between grid cells. Default 4 pixel.
-increment pixels
How many pixels by which a piece should be moved when sliding to a new location. Default 10 pixels.
-delay microseconds
How much of a delay should be introduced between steps of the animation of the motion of each segment. Default 50000, which is 0.05 seconds. This is closely related to the -increment parameter.
-delay2 microseconds
How much of a delay should be introduced between the end of the motion of one segment and the beginning of the motion of another. Default 1000000, which is one second.
-duration seconds
How long to run before loading a new image. Default 120 seconds.
Display the current frame rate and CPU load.


to get the default host and display number.
to get the name of a resource file that overrides the global resources stored in the RESOURCE_MANAGER property.


Jamie Zawinski <>, 3-dec-92.