GNU.WIKI: The GNU/Linux Knowledge Base

  [HOME] [PHP Manual] [HowTo] [ABS] [MAN1] [MAN2] [MAN3] [MAN4] [MAN5] [MAN6] [MAN7] [MAN8] [MAN9]

  [0-9] [Aa] [Bb] [Cc] [Dd] [Ee] [Ff] [Gg] [Hh] [Ii] [Jj] [Kk] [Ll] [Mm] [Nn] [Oo] [Pp] [Qq] [Rr] [Ss] [Tt] [Uu] [Vv] [Ww] [Xx] [Yy] [Zz]


       munch - munching squares


       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]


       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.


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

               Draw classic munching squares only.

               Draw "mismunch" only.

       -random Do one or the other.

       -fps    Display the current frame rate and CPU load.


       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),


       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 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,
       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  representations  are  made  about  the
       suitability  of  this software for any purpose.  It is provided "as is"
       without express or implied warranty.

  All copyrights belong to their respective owners. Other content (c) 2014-2018, GNU.WIKI. Please report site errors to
Page load time: 0.174 seconds. Last modified: November 04 2018 12:49:43.