
TAKE NOTE:  brottool as distributed here will only run on a Sun3.  That
	    is only because the f_sqrt() function uses some 68020
	    instructions.  However, it wouldn't be much fun on a Sun2
	    anyway (too slow) so I didn't supply a Sun2 f_sqrt() routine.
	    Also, because the array used for plotting is so large (2 Meg),
	    most Sun2 systems will fall a bit short.  This was developed
	    on Sun OS 3.2, no promises about other versions (no way for
	    2.x, probably works for any 3.x).


Brottool is a little program that takes the following equation:

    tmp = y - SIGN(x) * sqrt(fabs(b*x-c));
    y = a - x;
    x = tmp;

and goes nuts with it.  Preferably, it should be started up like:

    brottool -Ws 1100 700

since brottool scales its control panel according to the size of the frame,
this allows for greater accuracy when selecting the seed values.  I've
found that the best setup is to set the X offset around the middle, set the
horizontal scrollbar around the middle so that the origin is about in the
center of the screen, and set the Y offset to around 300 (it defaults to 120).

Brottool clears the screen and restarts anytime one of the seeds changes,
the scale changes or the X or Y offsets change.  It does NOT restart if you
scroll (the canvas is a "window" into the larger background, the X and Y
offsets control where in the background the program will plot, you can then
scroll your window around viewing the picture).

Clicking the "Stop" botton halts the plotting.  This is actually rather
useless (until I add something like screendump - maybe).

Brottool allocates a 2 Meg. array for plotting (monocrome).  If your system
has only 4 meg (or heaven forbid - less), you will want to make sure that
nothing else is running (esp. other tools).  They can be on the desktop, they
just shouldn't be in the run state or you will get some pretty massive paging
and swapping (i.e. no perfmeter, clocktool, etc.).

The f_sqrt() routine has restricted use because half of it was developed
on company time.  Run "sccs what f_tab_sqrt.o" (once it is unpacked) on
the file to see the Copyright notice.  The rest of the program is purely
public domain, although I would appreciate it if people sent me any neat
changes they make.

To make brottool, do the following (assuming you have already unpacked
the shell archive):

    1) Type "make"
    2) As mentioned above, type "brottool -Ws 1100 700 &"
    3) Play

POSSIBLE ENHANCEMENTS:

1) Add Sun2 f_sqrt() routine.
2) Add floating point support.  The patterns generated are VERY accuracy
   dependant.  Although floating point looks better, it was too slow for
   me, so I did the integer implementation.
3) Add a "screendump" command.
4) Add a "don't clear" button so that multiple images can be viewed (either
   overlayed or offset).
5) Other wizbang stuff, like XORing new points, reverse video (although
   this can be done with suntools), etc.


					Have fun, and don't
					hypnotize yourself,

					Matt Goheen
			{seismo,allegra,ames,rutgers}!rochester!srs!matt

