petri - simulates mold growing in a petri dish
petri [-display host:display.screen] [-foreground
color] [-background color] [-window] [-root] [-mono]
[-install] [-visual visual] [-delay microseconds] [-size
integer] [-mem-throttle amount] [-count integer]
[-originalcolors] [-diaglim real] [-anychan real] [-minorchan
real] [-instantdeathchan real] [-minlifespeed real]
[-maxlifespeed real] [-mindeathspeed real] [-maxdeathspeed
real] [-minlifespan integer] [-maxlifespan integer]
[-fps]
petri simulates mold growing in a petri dish via a
state-heavy grid of automata (vaguely like Conway's Life, only with much
more state per cell).
petri 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
- 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
microseconds
- The interframe delay, in microseconds. Defaults to 10000, resource
delay.
- -size
integer
- The size of a cell in pixels. Defaults to 4, resource size.
- -mem-throttle
amount
- The maximum amount of memory to consume, specified either in megabytes
(suffix "M"), kilobytes (suffix "K"), or bytes (sans
suffix). In order to meet the memory requirement, the cell size may be
increased. Defaults to 22M, resource memThrottle.
- -count
integer
- How many different varieties of mold to grow (including Black Death).
Defaults to 8, resource count.
- -originalcolors
- If specified, indicates that the colors used should be the artist's
original choices (a fixed set of primary and secondary colors). In this
case, count must be 8 or less. Defaults to not specified (i.e., false),
resource originalcolors.
- -diaglim
real
- The age limit for diagonal growth as a multiplier of orthogonal growth
(range 1..2). 1 means square growth, 1.414 (i.e., sqrt(2)) means
approximately circular growth, 2 means diamond growth. Defaults to 1.414,
resource diaglim.
- -anychan
real
- The chance (range 0..1) that at each iteration, one or more new cells will
be born. Defaults to 0.0015, resource anychan.
- -minorchan
real
- The chance (range 0..1) that, given that new cells will be born, that only
two will be added (hence being a minor cell birth event). Defaults to 0.5,
resource minorchan.
- -instantdeathchan
real
- The chance (range 0..1) that, given that death and destruction will
happen, that instead of using Black Death cells, death will come
instantaneously. Defaults to 0.2, resource instantdeathchan.
- -minlifespeed
real
- The minimum speed for living cells as a fraction of the maximum possible
speed (range 0..1). Defaults to 0.04, resource minlifespeed.
- -maxlifespeed
real
- The maximum speed for living cells as a fraction of the maximum possible
speed (range 0..1). Defaults to 0.13, resource maxlifespeed.
- -mindeathspeed
real
- The minimum speed for Black Death cells as a fraction of the maximum
possible speed (range 0..1). Defaults to 0.42, resource
mindeathspeed.
- -maxdeathspeed
real
- The maximum speed for Black Death cells as a fraction of the maximum
possible speed (range 0..1). Defaults to 0.46, resource
maxdeathspeed.
- -minlifespan
integer
- The minimum lifespan for a colony, in iterations, before Black Death
comes. Defaults to 500, resource minlifespan.
- -maxlifespan
integer
- The maximum lifespan for a colony, in iterations, before Black Death
comes. Defaults to 1500, resource maxlifespan.
- -fps
- Display the current frame rate and CPU load.
- 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.
There are resource equivalents for each option, noted above.
There are no known bugs in petri as of this writing.
Copyright © 1992-2000 by Dan Bornstein.
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.
Dan Bornstein <danfuzz@milk.com>, 06-Jul-2000.