XScreenSaver(1)                                                XScreenSaver(1)


       munch - munching squares screen hack


       munch  [-display  host:display.screen] [-foreground color] [-background
       color] [-window] [-root] [-mono] [-install]  [-visual  visual]  [-delay
       seconds]  [-xor]  [-noxor]  [-shift]  [-noshift]  [-logminwidth minimum


       The munch program preforms the munching squares hack until killed.   It
       picks square size, position, and gravity randomly; configurable options
       are listed below.

       The munching squares hack cosists of drawing Y = X XOR T for a range of
       X  and  T  over and over until all the possible combinations of X and T
       have come up.  It was reportedly discovered by Jackson Wright  in  1962
       and took 5 instructions of PDP-6 code.


       munch accepts the following options:

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

       -root   Draw on the root window.

       -mono   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

       -delay seconds
               How long to wait before starting over.  Default 5 seconds.

       -xor    Use the XOR drawing function.  (Default.)

       -no-xor Don’t use the XOR drawing function.

       -shift  Start  drawing the square at weird starting points.  (Default.)

               Don’t shift and start drawing  the  square  at  weird  starting

       -logminwidth minimum-width
               The logarithm (base 2) of the minimum with of a square (must be
               a power of 2, or some parts of the square aren’t.)


       DISPLAY 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.


       X(1),   xscreensaver(1),


       Quoted from HAKMEM, for historical interest.  As  that  document  says,
       "Unless  otherwise stated, all computer programs are in PDP-6/10 assem-
       bly language."

               Another simple display program. It is  thought  that  this  was
               discovered by Jackson Wright on the RLE PDP-1 circa 1962.

                        DATAI 2
                        ADDB 1,2
                        ROTC 2,-22
                        XOR 1,2
                        JRST .-4

               2=X,  3=Y.  Try things like 1001002 in data switches. This also
               does interesting things with operations  other  than  XOR,  and
               rotations other than -22. (Try IOR; AND; TSC; FADR; FDV(!); ROT
               -14, -9, -20, ...)

       ITEM 147 (Schroeppel):
               Munching squares is just views of the graph Y =  X  XOR  T  for
               consecutive values of T = time.

       ITEM 148 (Cohen, Beeler):
               A modification to munching squares which reveals them in frozen
               states through opening and closing curtains:  insert  FADR  2,1
               before the XOR. Try data switches =

                        4000,,4    1000,,2002    2000,,4    0,,1002

               (Notation: <left half>,,<right half>)

               Also try the FADR after the XOR, switches = 1001,,1.


       Copyright  ©  1997  by Tim Showalter.  Permission to use, copy, modify,
       distribute, and sell this software and its documentation for  any  pur-
       pose  is  hereby granted without fee, provided that the above copyright
       notice appear in all copies and that both  that  copyright  notice  and
       this  permission  notice appear in supporting documentation.  No repre-
       sentations are made about the suitability of this software for any pur-
       pose.  It is provided "as is" without express or implied warranty.


       Tim  Showalter  <>, 17-Jun-97, based on what’s in the
       Jargon File and stealing stuff from existing xscreensaver modules.

X Version 11                       17-Jun-97                   XScreenSaver(1)

Man(1) output converted with man2html