Provided by: xscreensaver-data-extra_5.08-0ubuntu3_i386 bug
 

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.
                Default: 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.
                Default: 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.
        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.