============================== FracBlank 2.2 ==============================
===========================================================================
A  screen  blanker  utility  written  by Olaf `Olsen' Barthel.  © Copyright
1991-92 by Olaf `Olsen' Barthel, Giftware, all rights reserved.
   Cosmic  flame  fractal  code  derived from original xlock program source
code, © Copyright 1988-91 by Patrick J.  Naughton.
   No  guarantee  of any kind is made that the program(s) described in this
document are 100% reliable.  You use this material on your own risk.

================================= Purpose ================================
===========================================================================
FracBlank is yet another custom screen blanker created to live in symbiosis
with  Kickstart  2.04   (Kickstart  37.175  and  Workbench  37.67 or higher
required)  and  the  Commodities Exchange toolkit, similar to the `Blanker'
program to be found in the Tools/Commodities drawer, just more wonderful.
   Apart  from the usual job (turning the screen black after a given period
of  time to prevent the phosphorus of your monitor from burning in) it will
draw  some neat patterns while mouse and keyboard are inactive.  Instead of
animating  polygons,  the  Amiga  logo,  the Boing!  ball or other assorted
items, real plane or cosmic flame fractals will be drawn.
   The algorithm employed comes from the September 1986 issue of Scientific
American;  some  of  you  who  are  familiar with X11 will know it from the
popular  `xlock'  program.  The patterns created may remind you of spiders'
webs,  lace  or  even  Chladni's  patterns  formed by grains of sand strewn
across  a  vibrating surface.  When I received a copy of the original xlock
program  source code I decided to add another fractal type:  cosmic flames.
The  patterns created by this algorithm ressemble cosmic nebuli, ferns, the
traces  left by subatomic particles or the fruitless attempts of a lecturer
in particle physics to do action-painting.

============================== Installation ===============================
===========================================================================
I  have  provided  two  versions of `FracBlank', one has been compiled with
standard  Motorola  FFP  support  (this one will run on any Amiga which has
Kickstart 2.04+ installed), the other one will only work on Amiga computers
which  have  an  MC68020/030  and  an  FPU68881/882  (or MC68040) installed
(namely the A3000/T/UX line of computers).
   Drop the approriate file into your WbStartup drawer or add the line `run
>nil:  <nil:  fracblank' to your `s:user-startup' file.
   There  are  a  number  of  command  line  switches  available which also
correspond  to  tooltype  entries  to  be  changed/created by selecting the
approriate icon and choosing the Workbench item `Information...':

CX_PRIORITY...... The  Cx priority to assign this tool to.  You may want to
                  change  this  value  if  there is more than one Commodity
                  tool    running   to   use  the  same  key  sequences  as
                  `FracBlank'.   The  one  which  has  the  higher priority
                  assigned will receive the keystrokes first.

CX_POPKEY........ The  keys to press to open the `FracBlank' control panel.
                  The  control  panel allows you to set the hotkeys, adjust
                  the timeouts, to  select the hotkeys and to terminate the
                  program.

CX_POPUP......... This   is  a  boolean  switch  which  determines  whether
                  `FracBlank' is to open the control panel on startup or to
                  remain quiet.  Place `yes' here to open it.

BLANKSCREEN...... The keys to depress to force the screen blanker to become
                  active.  If the blanker is already active, pressing these
                  keys will cause the pattern to change.
                     When  in `Random' mode, a pattern change only concerns
                  the currently active fractal type, it will not change the
                  fractal type.

FRACTAL.......... The  program supports two fractal types and a random mode
                  which  will select either of these.  To select real plane
                  fractals,  place  `REAL'  or `REALPLANE' here.  To select
                  cosmic  flames,  use  `COSMICFLAME' or `FLAME'; any other
                  name will select the random mode.

COLOUR........... The   program   support  three  kinds  of  colour  modes,
                  monochrome mode, a static 32 colour palette and a cycling
                  75  colour  palette.   To select one of these, use `MONO'
                  for  monochrome  mode, `STATIC' for static 32 colour mode
                  and `CYCLE' for cycling 75 colour mode.

KEYBLANK......... This   is  a  boolean  switch  which  determines  whether
                  `FracBlank'  is  to turn off the mouse pointer whenever a
                  key  is pressed, `on', `off', `yes' and `no' are possible
                  arguments.

SCREENTIMEOUT.... The  number  of seconds to wait before the screen blanker
                  is  activated.   This  period of time must elapse without
                  any  mouse movements or keys being pressed.  If the value
                  placed here is zero, screen blanking will be disabled.
                     You  may  either enter the number of seconds (60, 120,
                  etc.)  or  provide  a  string in the format mm:ss (11:30,
                  12:25, etc.).

MOUSETIMEOUT..... The number of seconds to wait before the mouse pointer is
                  turned  off.  If the value placed here is zero, the mouse
                  pointer  will  not  be  turned  off automatically after a
                  certain period of time.
                     You  may  either enter the number of seconds (60, 120,
                  etc.)  or  provide  a  string in the format mm:ss (11:30,
                  12:25, etc.).

PATTERNTIMEOUT... While  the  screen  blanker  is  running,  the  number of
                  seconds  to wait before changing the fractal pattern.  If
                  the  value  placed  here  is  zero, a single pattern will
                  remain.
                     You  may  either enter the number of seconds (60, 120,
                  etc.)  or  provide  a  string in the format mm:ss (11:30,
                  12:25, etc.).
                     When  in `Random' mode, a pattern change only concerns
                  the currently active fractal type, it will not change the
                  fractal type.

   Running  `FracBlank'  twice  will cause it to open the control panel; to
terminate  `FracBlank'  send  it  a  ^C signal (such as by `break 3 c' with
`FracBlank'  running  as  CLI  task  3) or conjure up the control panel and
press the `Quit' button.

   Although  some  of  the  patterns  generated  by  the  program will look
symmetrical,  it  will make no attempt to centre them on the screen (as far
as  my  knowledge  goes,  this  would  either require precalculation of the
fractals or a severe redefinition of a bucket-full of mathematical axioms).

==================== Author's Request & Gift-Ware fee =====================
===========================================================================
By  releasing  this program and the accompanying source code as Gift-Ware I
do  not  place any obligations on you, feel free to share this program with
your  friends (and enemies) to study and to learn from it.  But, should you
feel the need to make any contributions, send them to:

                               Olaf Barthel
                             Brabeckstrasse 35
                            D-3000 Hannover 71

                        Federal Republic of Germany

   I  am  looking for old Infocom games ("Arthur and the quest for the holy
grail",  "Border  zone",  "Bureacracy", "Cutthroats", "Leather Goddesses of
Phobos",  "Nord  and  Bert  couldn't  make  head or tail of it", "Plundered
Hearts",  "Seastalker",  "Sherlock  -  The Riddle of the Crown Jewels", and
"Trinity";  MS-DOS and Atari ST versions of the text-only games are welcome
as  well  since  the  story  format  can be converted to the Amiga) and old
CinemaWare  games  (with  the  exception  of  `Defender  of  the Crown' and
`Sinbad').
   I  may  also  answer  questions  asked  via  electronic  mail.  My email
addresses are:

                    Z-Net: O.BARTHEL@A-Link-H
                   Usenet: o.barthel@a-link-h.comlink.de
                           olsen@sourcery.mxm.sub.org

   The  entire  FracBlank  package  may  be  noncommercially redistributed,
provided  that  the  package is always distributed in its complete form.  A
small  copy  fee  for  media  costs  is  okay  but  any  kind of commercial
distribution is strictly forbidden!
   Comments  and  suggestions  how  to  improve  this program are generally
appreciated!

=============== Revision history (most recent change first) ===============
===========================================================================
2.2     Added my old mouse pointer blanker code to the program.

2.1     Small changes to blanker control task priority and internal program
        parameters,  fixed  a  potential  problem  with  the  window  setup
        routine.   The blanker control code has been rewritten to avoid the
        problem of locking up the machine whenever the blanker is shut down
        shortly after it had been started.

2.0     Enhanced  multicolour mode to use interlaced extra halfbright mode,
        added  the cosmic flame fractal type and rewrote the user interface
        to become font independent.

1.9     Changed blanker action initialization, enhanced multicolour mode.

1.8     Numerous bug fixes and some enhancements.

1.7     Removed sprite blanker code, replaced it by a user copper list.

1.6     Added cycle gadget.

1.5     Added multicolour mode.

1.4     The  sprite  pointer  used  to  pop  up  randomly now and then; the
        interrupt  server  has  been  rewritten  to turn off the sprite DMA
        twice instead of only once.

1.3     Added VBlank interrupt server (disables sprites), idea turned up by
        Adam  Keith  Levin's  `Disabling  Sprite  DMA From a Vertical Blank
        Interrupt' article published in AmigaMail November/December 1989.

1.2     First public release.

1.1,1.0	Before written history.
