Short:        Draw organic cyclic blobs
Author:       Claude Heiland-Allen <claude.heiland-allen@lincoln.oxford.ac.uk>
Uploader:     Claude Heiland-Allen <claude heiland-allen lincoln oxford ac uk>
Requires:     AmigaOS 2.04+
Architecture: m68k-amigaos
Website:      http://users.ox.ac.uk/~linc0882/graphics/cyclepix/

This program draws organic cyclic blobs.  There are examples
on the website - looks pretty cool huh?  Currently the program
is restricted to a PAL overscan screen with 32 colours, if
anyone out there wants a better version then email me.  The
website explains how it works and has some linux C source code
too.  To save the pictures use something like ScreenX.


Usage:
  > cha_cyclepix
    ; show random pictures until CtrlC
  > cha_cyclepix 4 0 0 4 .25 0 0 0 0 0 0 0
    ; show example until CtrlC, change numbers!
    ; experiment with changing the first 6 numbers first, and
    ; each gradually, until you see how it works
    ; then set the 7th and 10th numbers to 3 (say) and change
    ; the last six numbers - see how this makes it freaky ;)

How it works:
  - cha_cyclepix draws a cosine amplitude grid (think eggbox)
    position modulated (distorted) by two other waves
  - the grid is made up of waves X and Y
  - the distortion is made up of waves U and V
  - the template is XN,XA,XP,YN,YA,YP,UN,UA,UP,VN,VA,VP
    I guess you want to know what that means
    well, the first letter is the wave and the second letter
      N = number, number of peaks onscreen (X and U are
        assumed to be horizontal, Y and V vertical, for some
        internal calculations - other angles may be slightly
        different)
      A = angle, angle of the waves (0 is horizontal, 1 is
        full circle, so .25 is vertical - increasing numbers
        mean more clockwise)
      P = phase, where the wave starts in its cycle (best to
        adjust these by hand to fit the picture on the screen
        nicely

Bugs:
  - typing cha_cyclepix ? will show the template after it
    opens its screen
  - specifying no arguments is safe
    specifying all 12 arguments is safe
    specifying other arguments may not be safe

Limitations:
  - cha_cyclepix is limited to a 32 colour overscan screen
    with a fixed palette
  - there is no built-in save option, use ScreenX or similar
  - the rendering code is not very optimised, and the
    drawing code is very slow indeed
  - command line is a bit obscure, maybe a nice GUI sometime
  - the random-number seed is fixed, so you always get the
    same set of random pictures...

Source:
  - inspiration came from a PD program called Cyclops, but
    that was non-OS and had awkward parameters - cha_cyclepix
    is much more elegant (if lacking the really obscure options)
  - written in E and a bit of assembler, source code included