1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207
|
typedef struct LockStruct_s {
char *cmdline_arg; /* mode name */
/* Maybe other things should be added here from xlock? */
/* Should read in XLock as well to set defaults */
char *desc; /* text description of mode */
} LockStruct;
static LockStruct LockProcs[] =
{
{"ant",
"Shows Langton's and Turk's generalized ants"},
{"ball",
"Shows bouncing balls"},
{"bat",
"Shows bouncing flying bats"},
{"blot",
"Shows Rorschach's ink blot test"},
{"bouboule",
"Shows Mimi's bouboule of moving stars"},
{"bounce",
"Shows bouncing footballs"},
{"braid",
"Shows random braids and knots"},
{"bubble",
"Shows popping bubbles"},
{"bug",
"Shows Palmiter's bug evolution and garden of Eden"},
#ifdef USE_GL
{"cage",
"Shows the Impossible Cage, an Escher-like GL scene"},
#endif
#if defined( USE_XPM ) || defined( USE_XPMINC )
{"cartoon",
"Shows bouncing cartoons"},
#endif
{"coral",
"Shows a coral reef"},
{"crystal",
"Shows polygons in 2D plane groups"},
{"clock",
"Shows Packard's clock"},
{"daisy",
"Shows a meadow of daisies"},
{"dclock",
"Shows a floating digital clock"},
{"deco",
"Shows art as ugly as sin"},
{"demon",
"Shows Griffeath's cellular automata"},
{"dilemma",
"Shows Lloyd's Prisoner's Dilemma simulation"},
{"drift",
"Shows cosmic drifting flame fractals"},
{"eyes",
"Shows eyes following a bouncing grelb"},
{"fadeplot",
"Shows a fading plot of sine squared"},
{"flag",
"Shows a waving flag of your operating system"},
{"flame",
"Shows cosmic flame fractals"},
{"forest",
"Shows binary trees of a fractal forest"},
{"galaxy",
"Shows crashing spiral galaxies"},
#ifdef USE_GL
{"gears",
"Shows GL's gears"},
#endif
{"grav",
"Shows orbiting planets"},
{"helix",
"Shows string art"},
{"hop",
"Shows real plane iterated fractals"},
{"hyper",
"Shows a spinning tesseract in 4D space"},
{"ico",
"Shows a bouncing polyhedron"},
{"ifs",
"Shows a modified iterated function system"},
{"image",
"Shows randomly appearing logos"},
{"julia",
"Shows the Julia set"},
{"kaleid",
"Shows a kaleidoscope"},
{"laser",
"Shows spinning lasers"},
{"life",
"Shows Conway's game of Life"},
{"life1d",
"Shows Wolfram's game of 1D Life"},
{"life3d",
"Shows Bays' game of 3D Life"},
{"lightning",
"Shows Keith's fractal lightning bolts"},
{"lisa",
"Shows animated lisajous loops"},
{"lissie",
"Shows lissajous worms"},
{"loop",
"Shows Langton's self-producing loops"},
{"mandelbrot",
"Shows mandelbrot sets"},
{"marquee",
"Shows messages"},
{"maze",
"Shows a random maze and a depth first search solution"},
#ifdef USE_GL
{"moebius",
"Shows Moebius Strip II, an Escher-like GL scene with ants"},
{"morph3d",
"Shows GL morphing polyhedra"},
#endif
{"mountain",
"Shows Papo's mountain range"},
{"munch",
"Shows munching squares"},
{"nose",
"Shows a man with a big nose runs around spewing out messages"},
{"pacman",
"Shows Pacman(tm)"},
{"penrose",
"Shows Penrose's quasiperiodic tilings"},
{"petal",
"Shows various GCD Flowers"},
#ifdef USE_GL
{"pipes",
"Shows a selfbuilding pipe system"},
#endif
{"puzzle",
"Shows a puzzle being scrambled and then solved"},
{"pyro",
"Shows fireworks"},
{"qix",
"Shows spinning lines a la Qix(tm)"},
{"roll",
"Shows a rolling ball"},
{"rotor",
"Shows Tom's Roto-Rooter"},
#ifdef USE_GL
{"rubik",
"Shows an auto-solving Rubik's Cube"},
#endif
{"shape",
"Shows stippled rectangles, ellipses, and triangles"},
{"sierpinski",
"Shows Sierpinski's triangle"},
{"slip",
"Shows slipping blits"},
{"sphere",
"Shows a bunch of shaded spheres"},
{"spiral",
"Shows a helical locus of points"},
{"spline",
"Shows colorful moving splines"},
#ifdef USE_GL
{"sproingies",
"Shows Sproingies! Nontoxic. Safe for pets and small children"},
{"stairs",
"Shows Infinite Stairs, an Escher-like GL scene"},
#endif
{"star",
"Shows a star field with a twist"},
{"strange",
"Shows strange attractors"},
#ifdef USE_GL
{"superquadrics",
"Shows 3D mathematical shapes"},
#endif
{"swarm",
"Shows a swarm of bees following a wasp"},
{"swirl",
"Shows animated swirling patterns"},
{"triangle",
"Shows a triangle mountain range"},
{"tube",
"Shows an animated tube"},
{"turtle",
"Shows turtle fractals"},
{"vines",
"Shows fractal-like vines"},
{"voters",
"Shows Dewdney's Voters"},
{"wator",
"Shows Dewdney's Water-Torus planet of fish and sharks"},
{"wire",
"Shows a random circuit with 2 electrons"},
{"world",
"Shows spinning Earths"},
{"worm",
"Shows wiggly worms"},
{"blank",
"Shows nothing but a black screen"},
#ifdef USE_BOMB
{"bomb",
"Shows a bomb and will autologout after a time"},
{"random",
"Shows a random mode (except blank and bomb)"}
#else
{"random",
"Shows a random mode (except blank)"}
#endif
};
static int numprocs = sizeof (LockProcs) / sizeof (LockProcs[0]);
|