starfish — radially-symmetric throbbing colormap-hacking graphics demo


starfish [-display host:display.screen] [-foreground color] [-background color] [-window] [-root] [-mono] [-install] [-visual visual] [-delay usecs] [-delay2 secs] [-thickness pixels] [-rotation degrees] [-duration seconds] [-colors int] [-blob] [-no-blob] [-fps]


The starfish program draws radially symmetric objects, which expand, contract, rotate, and turn inside out. It uses these shapes to lay down a field of smooth colors, and then rotates the colormap.


starfish accepts the following options:
Draw on a newly-created window. This is the default.
Draw on the root window.
If on a color display, pretend we're on a monochrome display.
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.
-delay microseconds
How much of a delay should be introduced between steps of the animation. Default 10000, or about 1/100th second.
-thickness pixels
How wide each color band should be. Default 0, meaning random (the chosen value will be between 0 and 15.)
-rotation degrees
How quickly the objects should rotate at each step. Default 0, meaning random (the chosen value will be between 0 and 12 degrees.)
-colors int
How many colors to use. Default 200. The more colors, the smoother the transitions will be, and the nicer the resultant images.
-duration seconds
How long to run before choosing a new shape. Default 30 seconds.
-delay2 seconds
When duration expires, how long to wait before starting a new run. Default 5 seconds.
If blob option is specified, then the raw shapes will be shown, instead of a field of colors generated from them.
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 <>, 14-Jun-97.