Provided by: xscreensaver-data-extra_5.36-1ubuntu1_amd64 bug

NAME

       maze - an automated X11 demo repeatedly creating and solving a random maze

SYNOPSIS

       maze  [-display  host:display.screen]  [-foreground  color]  [-background color] [-window]
       [-root] [-install] [-visual visual] [-grid-size pixels] [-live-color  color]  [-dead-color
       color]  [-solve-delay  usecs]  [-pre-delay usecs] [-post-delay usecs] [-generator integer]
       [-max-length integer] [-fps]

DESCRIPTION

       The maze program creates a "random" maze and then solves it with graphical feedback.

OPTIONS

       maze accepts the following options:

       -window Draw on a newly-created window.  This is the default.

       -root   Draw on the root window.

       -install
               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 each block of the maze, in pixels; default is 0, meaning pick a random
               grid size.  Minimum meaningful value is 2.

       -live-color color
               The color of the path.

       -dead-color color
               The color of the failed path (it is also stippled with a 50% pattern.)

       -skip-color color
               The maze solver will choose to not go down a path if it can "see" (in  a  straight
               line)  that it is a dead end.  This is the color to use for paths that are skipped
               for this reason.

       -surround-color color
               If the maze solver ever completely encloses an area within the maze, then it knows
               that  the  exit  is  not in there (and in fact the interior of that area might not
               even be reachable.)  It will mark out those cells using this color.

       -solve-delay integer
               Delay (in microseconds) between each step of the solution path.  Default 5000,  or
               about 1/200th second.

       -pre-delay integer
               Delay  (in  microseconds)  between  generating  a  maze  and starting to solve it.
               Default 2000000 (2 seconds.)

       -post-delay integer
               Delay (in microseconds) after solving a maze and  before  generating  a  new  one.
               Default 4000000 (4 seconds.)

       -generator num
               Sets  the  algorithm  that  will be used to generate the mazes. The default is -1,
               which randomly selects an algorithm for each maze that is generated.  Generator  0
               is  the  original  one,  and works by walking around randomly until we hit a place
               we've been before,  then  backtracking  and  trying  a  new  direction  somewhere.
               Generator  1 picks a random spot in the maze, then draws a straight wall from that
               spot in a random direction until it hits another wall  (and  continues  until  the
               maze  is  complete).  Generator  2  is  based  on sets. Initially all cells are in
               different sets. Then two neighboring cells are chosen and if they are in different
               sets, their sets are joined. If they were in the same set, a wall is built between
               them. This continues until the maze is complete.

               All generators generate mazes with a certain 'characteristic'. See if you can spot
               them!

               The  three  algorithms  are essentially Kruskal, Prim, and a depth-first recursive
               backtracker.

       -max-length num
               Controls the maximum length of walls drawn in one go by generator 1.

       Clicking the mouse in the maze window controls it.

       LeftButton      Clears the window and restarts maze.

       MiddleButton    Pause or unpause the program.

       RightButton     Exit.

       -fps    Display the current frame rate and CPU load.

BUGS

       Expose events force a restart of maze.

       Mouse actions are based on "raw" values (Button1, Button2 and Button3)  instead  of  using
       the pointer map.

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

       X(1), xscreensaver(1)

COPYRIGHT

       Copyright © 1988 by Sun Microsystems, Inc. Mountain View, CA.

       All Rights Reserved

       Permission to use, copy, modify, and distribute this software and  its  documentation  for
       any  purpose  and  without fee is hereby granted, provided that the above copyright notice
       appear in all copies and that both that copyright notice and this permission notice appear
       in  supporting  documentation, and that the names of Sun or MIT not be used in advertising
       or publicity pertaining to distribution of the software  without  specific  prior  written
       permission. Sun and M.I.T.  make no representations about the suitability of this software
       for any purpose. It is provided "as is" without any express or implied warranty.

       SUN DISCLAIMS  ALL  WARRANTIES  WITH  REGARD  TO  THIS  SOFTWARE,  INCLUDING  ALL  IMPLIED
       WARRANTIES  OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SUN
       BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES  OR  ANY  DAMAGES  WHATSOEVER
       RESULTING  FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
       OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR  PERFORMANCE  OF
       THIS SOFTWARE.

AUTHOR(s)

       Zack Weinberg [ Smarter maze-solver ] zack@rabi.phys.columbia.edu
       Johannes Keukelaar [ Generators 1 and 2 ] johannes@nada.kth.se
         Royal Institute of Technology, Stockholm, Sweden
       Jim Randell    [ XScreenSaver version ] jmr@mddjmr.fc.hp.com
         HPLabs, Bristol
       Richard Hess   [ X11 extensions ]       {...}!uunet!cimshop!rhess
         Consilium, Mountain View, CA
       Dave Lemke     [ X11 version ]          lemke@sun.COM
         Sun MicroSystems, Mountain View, CA
       Martin Weiss   [ SunView version ]
         Sun MicroSystems, Mountain View, CA