dwww Home | Manual pages | Find package

munch(6x)                     XScreenSaver manual                    munch(6x)

NAME
       munch - munching squares

SYNOPSIS
       munch  [-display  host:display.screen] [-foreground color] [-background
       color] [-window] [-root] [-mono] [-install]  [-visual  visual]  [-delay
       usecs]  [-xor]  [-noxor]  [-clear  number]  [-simul number] [-classic |
       -mismunch | -random] [-fps]

DESCRIPTION
       The munch program performs the munching squares hack.  It picks  square
       size,  position,  and  gravity randomly.  It also displays a creatively
       broken misimplementation of the classic algorithm.

       The munching squares hack consists 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.

OPTIONS
       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
               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 usecs
               The delay between steps of the animation, in microseconds.  De-
               fault: 2500.

       -xor    Use the XOR drawing function.  This is the default.

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

       -clear number
               Number of squares to misdraw before clearing the display.   De-
               fault: 65.

       -simul number
               Number of squares to misdraw simultaneously.  Default: 5.

       -classic
               Draw classic munching squares only.

       -mismunch
               Draw "mismunch" only.

       -random Do one or the other.

       -fps    Display the current frame rate and CPU load.

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),
       http://www.inwap.com/pdp10/hbaker/hakmem/hakmem.html

HISTORY
       HAKMEM: MIT AI Memo 239, Feb. 29, 1972.
               Beeler, M., Gosper, R.W., and Schroeppel, R.

               "Unless otherwise stated, all computer programs are in PDP-6/10
               assembly language."

               ITEM 146: MUNCHING SQUARES

                   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
       Copyright 1997 Tim Showalter.
       Copyright 2004 Steven Hazel.
       Copyright 1992-2008 Jamie Zawinski.

       Permission to use, copy, modify, distribute, and sell this software and
       its  documentation  for any purpose is hereby granted without fee, pro-
       vided that the above copyright notice appear in  all  copies  and  that
       both  that  copyright  notice and this permission notice appear in sup-
       porting documentation.  No representations are made about the suitabil-
       ity  of  this software for any purpose.  It is provided "as is" without
       express or implied warranty.

X Version 11                  5.45 (08-Dec-2020)                     munch(6x)

Generated by dwww version 1.14 on Fri Jan 24 06:15:24 CET 2025.