@Database FlashMandelWOS.guide
@Author "Dino Papararo"
@(c) "Copyright (c) 1995-2002 Dino Papararo"
@$VER: FlashMandelWOS.guide 1.6 (14/Jan/2002)
@font courier.font 13
@wordwrap

@node Main "FlashMandelWOS Guide"

@{b}@{fg highlight}FlashMandelWOS@{fg text}@{ub} 1.6 © 1996-2002 by Dino Papararo

A new program for @{"Mandelbrot's set" link Mandelbrot}.

    @{"Installation" link Install}  How to install
    @{"Requirements" link Required}  Minimun requirements
    @{"YAFG        " link YAFG}  @{fg highlight}Yet Another Fractal Generator@{fg text}
    @{"Interface   " link Interfc}  Program's interface
    @{"Features    " link Caratte}  Major features
    @{"History     " link History}  History
    @{"Future      " link Futuro}  To do...
    @{"Author      " link Autore}  Yes I'm...
    @{"Greetings   " link Ringra}  ... Hi friends!
    @{"Copyright   " link CopyRg}  Necessary informations


Due the big size of the whole archive to complete the program please download missing pictures from

  @{u}@{fg fill}http://wuarchive.wustl.edu/pub/aminet/pix/fract/FlashMandelPic.lha@{fg text}@{uu}

or some other Aminet mirror or from support site

  @{u}@{fg fill}http://rz-home.de/~eschwan/cgi-bin/makeframes.pl?fr0=Inhalt_Edgar.html&fr1=amiga/FlashMandel.shtml@{fg text}@{uu}

and copy all them into the FLASHMANDEL:Pictures drawer.

@endnode

@node Install "Installation"

To install the program, please click on the installer script icon @{b}@{fg highlight}"Install FlashMandelWOS"@{fg text}@{ub}.
An explicit assignment will be added inside your user-startup file to the destination install drawer.
To call the guide inside the program it's a must to have the Multiview command into the SYS:Utilities path, otherwise the guide will not be showed.

@next Required

@endnode

@node Mandelbrot "Mandelbrot's informations"

@prev Mandelbrot

Benoit Mandelbrot is the fractal's inventor. In year 1975 he coined this word to refer to auto-similar and fragmented forms, characteristics common to all fractals.
@{fg highlight}Mandelbrot's set@{fg text} is a fractal generated by mathematic formula @{fg fill}Z = Z² + C@{fg text}. There can be also others fractal's set with same proprieties of @{fg highlight}Mandelbrot's set@{fg text} and derived from this, one of these is the fractal rendered by this math formula @{fg fill}Z = (Z²)² + C@{fg text}.
These functions are iterated many times into complex plane (you get a complex number initially equal to zero, square it and add a costant, then you restart procedure); "@{i}many times@{ui}" correspond to the "@{i}Iterations@{ui}" parameter that you can set in many fractal's programs.
The result of this iteration can converge to a number or go to infinite. In the case that it goes to infinite, we assign a corresponding color to the speed of the divergence in the complex plane.
This is the @{"Mandelbrot's puppet" link FLASHMANDEL:Pictures/Mandelbrot_def.iff/main} derived from the original Mandelbrot formula @{fg fill}Z = Z² + C@{fg text}.

@next Mandelbrot

@endnode

@node Required "System's requirements"

@prev Install

@{b}@{fg highlight}FlashMandelWOS@{fg text}@{ub} does not need a lot of resources.
It works on any @{b}Amiga@{ub} or compatible computer with at least Kickstart @{b}3.1@{ub} or @{b}3.0@{ub} with IWantChunky patch, 1 Mb of ram, a Motorola 68020 or better processor with an fpu, from @{"68020 to 68060" link Processori} and any @{"chip-set" link ChipSet}.
The PPC is also supported, via WarpOS and MorphOS under the 68k&WarpOS emulation. The executable is in FAT-binary format, it's able to autodetect if the PPC is installed and correctly configured. Once started you can switch between both CPU via the menu Options/Processor.
If there are @{"Graphic's boards" link ChipSet}, they are supported by @{b}Screen Database@{ub} and @{b}ToolTypes@{ub}.
However I suggest you to get at least 16 MB ram, AmigaOS 3.9, CPU MC68040@40/PPC603@180, a GFX board and a good 17" or greater monitor.

@endnode

@node YAFG "Yet Another Fractal Generator"

@{b}@{i}@{fg highlight}@{bg text}Why another fractal's generator ?@{bg back}@{fg text}@{ui}@{ub}
First of all for myself speed challenge and the really cool pictures rendered, but also because does not exists something like it which is @{b}full based@{ub} on @{b}Amiga OS@{ub} and doesn't make, to gain more speed, dirty tricks.
At this time the binary is less than 200 KB, one executable for 68k and PPC processors; moreover the others do not manage PPC, GFX Cards, AGA/ECS Overscan, Multitasking or they writes directly into Chip/Video ram or somewhere...
Obviously there can be BUGs !
For the features read the node @{"Features" link Caratte}.
@endnode

@node Interfc "Program's interface"

@{b}@{fg highlight}FlashMandelWOS@{fg text}@{ub} is system friendly, and respects the @{b}@{fg highlight}Style Guide@{fg text}@{ub}, so all gadgets, menus and requesters are easy.

These are the supported @{b}ToolTypes@{ub}:

@{b}@{fg highlight}SCREENWIDTH@{fg text}@{ub}   : initial screen's width between 640 and 16368 pixel (default=800).
@{b}@{fg highlight}SCREENHEIGHT@{fg text}@{ub}  : initial screen's height between 480 and 16384 pixel (default=600).
@{b}@{fg highlight}SCREENPLANES@{fg text}@{ub}  : initial screen's depth between 3 and 8 bitplanes (default=8).
@{b}@{fg highlight}SCREENMODE@{fg text}@{ub}    : initial hexadecimal display mode OCS,ECS,AGA,RTG (default=40d20001 CGX 640x480x8).
@{b}@{fg highlight}REALMIN@{fg text}@{ub}       : initial left real limit between -8 and +8 (default=-2.0).
@{b}@{fg highlight}REALMAX@{fg text}@{ub}       : initial right real limit between -8 and +8 (default=+1.0).
@{b}@{fg highlight}IMAGMIN@{fg text}@{ub}       : initial bottom imaginary limit between -8 and +8 (default=-1.125).
@{b}@{fg highlight}IMAGMAX@{fg text}@{ub}       : initial top imaginary limit between -8 and +8 (default=+1.125).
@{b}@{fg highlight}FONTNAME@{fg text}@{ub}      : initial screen font (default=courier.font).
@{b}@{fg highlight}FONTSIZE@{fg text}@{ub}      : initial font size (default=13).
@{b}@{fg highlight}STARTPRI@{fg text}@{ub}      : initial program priority (default=-3).
@{b}@{fg highlight}POWER@{fg text}@{ub}         : initial exponent of Z = (Z^(2^n)) + C formula (default=1).
@{b}@{fg highlight}STARTWITHJULIA@{fg text}@{ub}: initial formula '0' for Mandelbrot and '1' for Julia (default=0).
@{b}@{fg highlight}JULIACONSTREAL@{fg text}@{ub}: initial Julia real constant (default=-0.72).
@{b}@{fg highlight}JULIACONSTIMAG@{fg text}@{ub}: initial Julia imaginary constant (default=-0.26).
@{b}@{fg highlight}COLORSREMAP@{fg text}@{ub}   : Linear=0, Ln(x)=1, Repeated=2, Sqrt(x)=3, x²-x=4, Sqrt(x³-x²-x)=5, Sinh(Ln(x³))=6, Cosh(Log(x³))=7, (default=0).
@{b}@{fg highlight}USEPPC@{fg text}@{ub}        : if you set this to 1 program will use the PPC if present (default=1).
@{b}@{fg highlight}USERNAME@{fg text}@{ub}      : write your name here and you'll be the author of all your saved pictures and palettes (default=Amiga Rules) ;-).


At the start, if you haven't modified ToolTypes, @{"Mandelbrot's set" link FLASHMANDEL:Pictures/Mandelbrot_def.iff/main} is rendered between @{b}(-2.0,-1.125i)@{ub} and @{b}(+1.0,+1.125i)@{ub} limits, with a 800 x 600 screen at maximun colors supported (256 for @{"AGA/RTG" link ChipSet}, 32 with @{"ECS/OCS" link ChipSet}).
At the end of the rendering, an instant with a PPC processor, the about requester will be displayed showing the version of the program and the Giftware condition status.
Hitting the "More" gadget will be shown the workgroup too.
To continue choose the "Ok" gadget.

On the screen's title bar there are the following parameters:

@{b}@{fg highlight}Real@{fg text}@{ub} current coord for real axis.
@{b}@{fg highlight}Imag@{fg text}@{ub} current coord for imag axis.
These two parameters will continually change moving the mouse pointer.

@{b}@{fg highlight}W:H@{fg text}@{ub} is the ratio between screen's dimensions.
@{b}@{fg highlight}R:I@{fg text}@{ub} is the ratio between fractal's dimensions.
For a real representation these two parameters @{b}MUST@{ub} be equal !
If not, is @{b}NECESSARY@{ub} to open the @{b}@{fg highlight}Coordinates Requester@{fg text}@{ub} ShortCut @{b}@{fg highlight}Amiga C@{fg text}@{ub} and select the @{b}@{fg highlight}Ratio@{fg text}@{ub} button, then recalculate the picture with the new values.

There are four menus, with shortcuts obviously:

    @{" Project " link Project}
    @{" Options " link Options}
    @{"Calculate" link Calculate}
    @{"  Video  " link Video}

Holding down the left mouse button over fractal's picture, will appear a rectangle corresponding to the new coords for a Zoom or Preview.
Meantime rendering, with the @{b}@{fg highlight}Tab@{fg text}@{ub} key you can jump @{"current rectangle" link CProb}; hitting the @{b}@{fg highlight}Esc@{fg text}@{ub} key or using the @{b}@{fg highlight}Stop@{fg text}@{ub} ShortCut @{b}@{fg highlight}Amiga X@{fg text}@{ub}, you'll stop the rendering.

@next Caratte

@endnode

@node Project "Menu Project"

@prev Interfc

There are nine choices, @{b}About@{ub}, @{b}Load Picture@{ub}, @{b}Save Picture@{ub}, @{b}Load Palette@{ub}, @{b}Save Palette@{ub}, @{b}Print@{ub} e @{b}Quit@{ub}.

@{b}About@{ub} it's the same requester which appears at the start, it gives you infos about @{"Author" link Autore} and his workgroup.
Shortcut: @{b}Amiga A@{ub}

@{b}System info@{ub} shows a requester about processors 68k & PowerPC and free memory.
Shortcut: @{b}Amiga N@{ub}

@{b}Help@{ub} shows the guide of FlashMandelWOS in asyncronous way, so you can continue with renderings, but remember you must have Multiview into the default path SYS:Utilities/Multiview. The guide is also supported hitting the 'HELP' key but only into the main window.
Shortcut: @{b}Amiga H@{ub}

@{b}Load Picture@{ub} loads a previously saved IFF picture, setting parameters automatically like those at the save time.
Shortcut: @{b}Amiga L@{ub}

@{b}Save Picture@{ub} saves current picture in IFF format, with a special @{b}Chunk@{ub} where to store fractal's coords and other parameters (iterations, mapping, etc...). The file obtained can be viewed by any program able to read IFF ILBM files. Be careful to not overwrite an existing file, but there is a verify function to inform you.
Shortcut: @{b}Amiga S@{ub}

@{b}Load Palette@{ub} loads an IFF palette file.
Shortcut: @{b}Amiga Y@{ub}

@{b}Save Palette@{ub} saves current palette in IFF format, the file obtained could useful for any other graphic application.
Shortcut: @{b}Amiga E@{ub}

@{b}Print@{ub} performs a @{i}hard copy@{ui} of the screen, it will print screen just like it is (settings are based on system preferences), the title bar, if it's present, is not printed.
Shortcut: @{b}Amiga D@{ub}

@{b}Quit@{ub} exits the program and frees all resources allocated.
Shortcut: @{b}Amiga Q@{ub}

@endnode

@node Options "Menu Options"

There are eight choices: @{b}Title@{ub}, @{b}Limits@{ub}, @{b}Iterations@{ub}, @{b}Priority@{ub}, @{b}Power@{ub}, @{b}Color mapping@{ub}, @{b}Fractal type@{ub}, @{b}Processor@{ub}.

@{b}Title@{ub} is a submenu which has a @{"boolean flag" link BoolFlag} that means if to show or not the title bar (Shortcut: @{b}Amiga O@{ub}); if the title bar is ghosted, you can zoom even in the higher part of the screen, but holding down the right mouse button the menu will always be there.
This submenu has the @{b}Last time@{ub} (Shortcut: @{b}Amiga T@{ub}) submenu choice, which shows on the title bar the last rendering elapsed time and the average speed in Pixels per Seconds, obviously if during rendering you stop it, time and speed will be wrong because only a part of fractal has been rendered.
Please notice that in FlashMandelWOS the rendering speed is not proportional to the screen dimensions, due to its rendering method, the so-called 'Divide et Impera'.
With other programs, starting to rendering in an 800x600 screen needs four times than one in 400x300 (480.000 Vs 120.000 pixels), instead with @{b}FlashMandelWOS@{ub} you'll have to wait about the same time.

@{b}Limits@{ub} shows a window with some numeric gadgets and permits to insert by hand new values for complex coordinates and the Julia constant.
Four @{"Button Gadget" link ButtGad} @{b}Accept, Ratio, Reset, Cancel@{ub} are left to accept and apply changes, adjust coord's aspect ratio to the screen dimensions, to come back to the original values and to close the window without any change.
The Other button, instead, holds only one of two axis dimensions for a successful ratio adjustment; default is fractal's real X axis.
Shortcut: @{b}Amiga C@{ub}

@{b}Iterations@{ub} is a submenu where to set @{"iterations" link Mandelbrot}, between 8 preset values or a numeric requester. You are warned about best iterations number @{b}MUST@{ub} be greater than screen's colors otherwise you'll not be able to use the whole palette. Be warned high values for firsts zooms lead to bad results too, you must increase Iterations by little steps, zoom after zoom. This parameter interferes a lot with the final result and the rendering time !
Max iterations are equal to 2^15 -> 32768.
Shortcut: @{b}Amiga I@{ub} to store a not preset iteration number.

@{b}Priority@{ub} is a submenu for task priority. Choices are between -5 and +5 to not interfere with normal OS activity.
Shortcut: @{b}Amiga <n>@{ub} to set the priority at +<n>, where <n> is a numeric value between 0 and 5.
          @{b}Amiga Shift <n>@{ub} to set the priority at -<n>, where <n> is a numeric value between 0 and 5.

@{b}Power@{ub} is a submenu to set the exponent n of the formula Z = (Z^(2^n)) + C  with  1 <= n <= 11. Setting n to the default value 1 you get the classic Mandelbrot and Julia fractals.

@{b}Colors remap@{ub} colors are assigned in function of iterations for every point. FlashMandelWOS has 8 different ways to assign a color to a point.
@{b}Linear@{ub} colors are remapped following the graph of y=x function.
@{b}Ln(x)@{ub} colors are remapped following the graph of y=Ln(x) function.
@{b}Repeated@{ub} colors are remapped following the graph of y=x function and repeated when last color is reached.
@{b}Sqrt(x)@{ub} colors are remapped following the graph of y=Sqrt(x) function.
@{b}x²-x@{ub} colors are remapped following the graph of y=x²-x function.
@{b}Sqrt(x³-x²-x)@{ub} colors are remapped following the graph of y=Sqrt(x³-x²-x) function.
@{b}Sinh(Ln(x³))@{ub} colors are remapped following the graph of y=Sinh(Ln(x)) function.
@{b}Cosh(Log(x³))@{ub} colors are remapped following the graph of y=Cosh(Log(x)) function.
Shortcut: @{b}Amiga <n>@{ub} to choose between the first 4 way of fractal color mapping.
          @{b}Amiga Shift <n>@{ub} to choose between the last 4 way of fractal color mapping.


@{b}Fractal type@{ub} is a submenu to set the @{"rendering formula" link Formula}.

    @{b}Julia@{ub}  To select the Julia rendering formula.
    Shortcut: @{b}Amiga J@{ub}

    @{b}Mandelbrot@{ub}  To select the mandelbrot rendering formula.
    Shortcut: @{b}Amiga M@{ub}
    
@{b}Processor@{ub} is a submenu to switch between the CPU module (68k/PPC)

    @{b}68k@{ub}  To select the Mc 68xxx CPU, from the 68020 to the 68060 with an FPU.
    Shortcut: @{b}Amiga -@{ub}

    @{b}Ppc@{ub}  To select the PowerPC 6xx CPU, from 603e to 620 series, and maybe next generations too ;-)
    Shortcut: @{b}Amiga +@{ub}
@endnode

@node Calculate "Menu Calculate"

There are five choices: @{b}Preview@{ub}, @{b}ReCalculate@{ub}, @{b}UnDo@{ub}, @{b}Zoom@{ub}, @{b}Stop@{ub}.

@{b}Preview@{ub} opens a window four times smaller than screen for a faster rendering.
Shortcut: @{b}Amiga W@{ub}

@{b}ReCalculate@{ub} rewrites fractal with a new set of parameters.
Shortcut: @{b}Amiga R@{ub}

@{b}UnDo@{ub} comes back to the previous coords.
Shortcut: @{b}Amiga U@{ub}

@{b}Zoom@{ub} renders fractal within the new rectangle coords.
Shortcut: @{b}Amiga Z@{ub}

@{b}Stop@{ub} stops rendering.
Shortcut: @{b}Amiga X@{ub}, same result holding down ESC key.

@endnode

@node Video "Menu Video"

There are four choices: @{b}Cycle@{ub}, @{b}Palette@{ub}, @{b}Screen mode@{ub}, @{b}Font settings@{ub}.

@{b}Cycle@{ub} is a submenu with three options:

  @{b}Forward@{ub}  starts the @{"color cycling" link ColCyc} forward (Shortcut: @{b}Amiga >@{ub}).

  @{b}Backward@{ub} starts the @{"color cycling" link ColCyc} backward (Shortcut: @{b}Amiga <@{ub}).

  @{b}Delay@{ub}    sets delay between color cycling (0..100) (Shortcut: @{b}Amiga -@{ub}).


@{b}Palette@{ub} opens the @{"Palette requester" link PalReq} to manage colors.

@{b}Screen mode@{ub} to select new screen resolutions, for all modes there is a window proprieties to let you choose the best mode.

@{b}Font settings@{ub} to change screen charracters, useful for higher resolutions. Gui will change automatically with new fonts. Maximun font size is 24 pixel and are supported proportional fonts.

@next Interfc

@endnode

@node BoolFlag "Boolean Flag"

@prev BoolFlag

A boolean flag has two states, True/False, On/Off, Zero/One... in this case shows or not the screen title.
@next BoolFlag

@endnode

@node ButtGad "Button Gadget"

@prev ButtGad

A @{b}Button Gadget@{ub} is a Gadget (Interface Selectable Element) which can be pressed to execute a function.
(@{fg fill}I didn't belive there were people who don't know it...@{fg text})

@next ButtGad

@endnode

@node PalReq "Palette Requester"

@prev PalReq

@{b}Palette Requester@{ub} is a window where to modify, copy, swap, spread, invert and rotate the colors.

This window has many gadgets. The first on the left is a rectangle with all modifiable colors, selecting one you can modify every cromatic component. Colors are ordered from left to right and from top to down; first color is in the top-left corner, last instead is in the bottom-right corner. First 4 colors should be unchanged, because are used for the interface look, however you can change them as you wish, but pay attention... you are warned!
@{b}Copy@{ub} gadget copies the selected color into another. Select color to copy and press the @{b}Copy@{ub} gadget, than select destination position.
@{b}Swap@{ub} gadget swap two colors into the palette.
@{b}Spread@{ub} gadget merge colors between current color and next selected with a very soft effect.
@{b}Invert@{ub} gadget invert the palette from top to down. Is useful to test high palette's pens without zooming far into picture and to import palettes from other Mandelbrot's programs. @{b}FlashMandelWOS@{ub} for speed reasons uses colors in a different way from other programs, the pen 255 is the first to be used, the pen 254 the second and so on...
@{b}<<@{ub} gadget rotate by one in one position the whole palette from right to left.
@{b}>>@{ub} gadget rotate by one to one position the whole palette from left to right.
@{b}UnDo@{ub} gadget abort olny last operation.

The three scroller gadgets modify the three colors components red (R), green (G) and blue (B) of selected pen.
I suggest you to modify the single color's components with the keys @{b}'e'-'t'@{ub} for red, @{b}'f'-'h'@{ub} for green, @{b}'v'-'n'@{ub} for blue. The keys are @{b}'case sensitive'@{ub} and if used with @{b}shift/caps lock@{ub} you will add/sub @{b}10@{ub} units per time.

The three gadgets @{b}Accept@{ub}, @{b}Reset@{ub} and @{b}Cancel@{ub} downwards can accept the new changes, reset to original colors and reject any change.

@next PalReq

@endnode

@node ColCyc "Color Cycling"

@prev ColCyc

The @{i}Color Cycling@{ui} is a special function to animate the picture, moving palette color sequence.
In a @{"Color Bar" link Bar.brush/main} with a sequence of colors, if we copy the first in the second and so on, we'll have an animation effect.
The @{"Mandelbrot's set" link Mandelbrot} generated has next related property: for all near functions divergences are set same colors, therefore the palette rotation, in this case, generate a special effect.

@next ColCyc

@endnode

@node Formula "Rendering formula"

@prev Formula

There are two types of @{b}rendering formula@{ub}.

The @{b}Julia Set@{ub} is graphed by calculating the complex coordinate of each pixel Z, and by squaring that number and adding a second constant complex number C each iteration. if that number never goes to infinity, then that number is in the set, and the pixel is colored with the black color. If not, the corresponding to the number of iterations it took to determine that number is going to infinity is plotted. There are an infinite number of Julia Sets, as the constant C can be any complex number.

The @{b}Mandelbrot Set@{ub}, modeled after the Julia Set, uses the same basic process for each pixel, starting with Z equal to zero instead of starting out with the pixel's complex number value, and adding the pixel's number value C each iteration after squaring what you've got (Z) instead of adding a constant. Just as with the Julia Set, you can create different fractal by using different C values, in the Mandelbrot Set, you can use different starting Z value. You can also you compute Z to a power other than 2 before adding C. Z³+C is a cubic Mandelbrot, etc..

@next Formula

@endnode

@node Caratte "Program features"

@prev Interfc

FlashMandelWOS is system friendly, with full respect of AmigaOS and Multitasking, uses only standard library functions, and SHOULD not produce Enforcer or Mungwall Hit.
FlashMandelWOS is developed and tested on an Amiga 4000 with Cyberstorm 060@50/604e@200, CybervisionPPC, CGX V4.
The program is coded with the efficiency in mind, so I assure you about the use of every register of both Mc 68k and Ppc processors and every memory cell allocated by FlashMandelWOS.
Rendering is speeded up with a direct access of ALL variables keeping ALL them into the FPU registers for both 68k and PowerPC processors, so don't worry about your math libraries versions but be sure to got a working and fast FPU ;-)
Uses the @{"Divide et Impera" link CProb} recursively method to gain time for @{"Mandelbrot's set" link Mandelbrot} rendering.
Uses ToolTypes to be extremely configurable and flexible directly on the first use.
Supports for every graphic display able to provide an entry in the Video Mode Database, OCS, ECS, AGA, P96, CGX...
You can choose from two different fractal types the Mandelbrot and Julia Sets with 11 different exponents between 2 and 2048.
You can Render a picture, save it and reload it later, continuing zooming into it without loose your work.
If you have a PowerPC 6xx processor the program will use it by default for instant renderings otherwise will use the 68k.
FlashMandelWOS uses the new elegant and simple Reaction GUI, is localized, has an installation script to even update or uninstall the program.
You can print your pictures on any supported Workbech printer.
Sources are spreaded to learn as example and to improve/continue developing program.
It's really fast and respecting the ratio between the complex plane and the screen dimensions shows you the REAL MandelBrot and Julia fractals!
FlashMandelWOS archive has precalculated pictures to start your explorations, you can choose also between many predefined funny palettes.


@endnode

@node Futuro "FlashMandelWOS Future"

I'd like to add at least the following features but I'm not sure I'll do that... it depends a lot from my free time and your feedback:

@{b}1)@{ub} Add an @{fg highlight}Arexx port@{fg text} to automatize the program to generate new pictures or movies and many other goodies too ;-))
@{b}2)@{ub} Dedicated recompiled versions for @{fg highlight}MorphOS and AROS@{fg text} operating systems if it's not too much difficult.
@{b}3)@{ub} Add @{fg highlight}3D renderings and 24 bit palettes@{fg text} features.
@{b}4)@{ub} Double the @{fg highlight}precision@{fg text} for both 68k and PPC to zoom even more into the fractals, suggestions are welcome ;-)

Please send @{"me" link Autore} any comment, suggest, bug, by snail mail or E-Mail @{fg highlight}DinoP@IName.Com@{fg text} or @{fg highlight}DinoP@InWind.It@{fg text}.

@next History

@endnode

@node History "FlashMandelWOS History"

@prev Futuro

@{b}@{fg highlight}FlashMandelWOS 1.6@{fg text}@{ub}

 Extended main formula from Z = Z² + C to Z = (Z^(2^n)) + C with 1 <= n <= 11.

 Added a new ToolType POWER to set start polynomial exponent, default set to 1.

 Changed default coords into (-2,+1.125i) (+1,-1.125i).

 Splitted archive in 2 parts, one for pictures pix/fract/FlashMandelPic.lha (downlodable form any Aminet mirror) and other for everithing else.

 Recompiled all with AmigaOS 3.9 developer archive, includes and libs.

 Made many different internal changes.

 Updated docs for new features added.

@{b}@{fg shine}FlashMandelWOS 1.5@{fg text}@{ub}

**************************************************************************************************************
**************************************************************************************************************
Without the hard work of Edgar Schwan this version of FlashMandel could never be released! Thanks a lot Edgar.
**************************************************************************************************************
**************************************************************************************************************

 Added support for Reaction GUI, now it's possible to use all features only by mouse.

 Added support for Localization for Italian and German languages, others are welcome ;-)

 Added an Installation script to install, upgrade or delete the program.

 Speeded up about 12% the renderings in PPC mode.

 Reworked the printer support code for a better output, now should be printed the whole A4 paper.

 Reworked the guide a bit.

 Now FlashMandel has an unofficial internet site http://rz-home.de/~eschwan/FlashMandel_GB.shtml by Edgar Schwan.

 Some minor internal changes and optimizations increasing compatibility with all future Amiga clones ;-)

 Now you need al least Kickstart 3.1 (V40) to run the program due the use of the WriteChunkyPixels ROM function.

@{b}@{fg highlight}FlashMandelPPC 1.2@{fg text}@{ub}

 Renderings in 68k mode are much faster, about 30% on my Mc68060 due a better use of data cache.

 PowerPC FPU datas now are 32 bit aligned speeding up a bit the rendering, bugfixed by Frank Mariak.

 FlashMandelWOS runs on MorphOS too, under WarpOS emulation ;-)

 Reducing screen depth caused wrong colors remap, fixed.

 Changed the default screenmode to the Picasso 800x600x256, tested with WinUAE Jit.

 Changed the coordinates record of iff pictures, you can't open older saved pictures :-((

 Added an information requester about processors recognized 68k & PowerPC and available memory.

 Extended the fade effect 'To Black/From Black' when a new picture or palette is loaded.

 Added an Italian guide too, by Giorgio Signori.

 Now you can choose between 8 different ways to remap colors.

 Optimized PPC code to a better memory access.

 Recompiled using Andreas Heumann's PPCMathMib increasing between 1,5 and 9 times the speed of all math functions.
 
 Added new docs and icons by Edgar Schwan.

 Refreshed FlashMandel's pictures archive.

 Made many internal code changes.

 Added new ToolTypes.

@{b}@{fg highlight}FlashMandelPPC 1.0@{fg text}@{ub}

 First public non beta version.

@next Ringra

@endnode

@node Autore "How reach the author"

@prev RBrandner

Snail address if you have @{fg highlight}a lot of@{fg text} patience :-)

    Dino Papararo
    Via Manzoni, 184
    80123 Napoli
    Italy

E-Mail addresses:

    DinoP@IName.Com
    DinoP@InWind.it

HomePage:

    SpazioWeb.InWind.it/DinoP

Unofficial support site in English and German languages (Webmaster Edgar Schwan):

http://rz-home.de/~eschwan/amiga/FlashMandel.shtml

Coder of @{b}@{fg highlight}FlashMandelWOS@{fg text}@{ub}.

@next Ringra

@endnode

@node Ringra "FlashMandelWOS workgroup"

@prev History

@{"Author" link Autore} greets these people to have helped him during the project development:

@{fg highlight}Edgar Schwan@{fg text} for the new Reaction GUI, Localization, Installation script, Deutch docs, Unofficial web site, Beta testing.

@{fg highlight}Elena Novaretti@{fg text} for her contibution with new ideas, critics and suggests to the developing of FlashMandelWOS and for her help into debug and beta testing.

@{fg highlight}Giorgio Signori@{fg text} for FlashMandelWOS GlowIcon, Italian docs, Beta testing.

Last but not least following people have contibuted with criticisms and hints to debug and improve costantly FlashMandel, FlashMandelPPC and now FlashMandelWOS:

@{fg highlight}Vincenzo Iodice@{fg text},@{fg highlight}Guillaume Ubbelohde@{fg text},@{fg highlight}Jen Allen@{fg text},@{fg highlight}Illya Rudkyn@{fg text},@{fg highlight}Jarle Thorsen@{fg text},@{fg highlight}Francis Labrie@{fg text},@{fg highlight}Carol Meilicke@{fg text},@{fg highlight}Steffen Haeuser@{fg text},@{fg highlight}Staffan Lindberg@{fg text},@{fg highlight}Thomas Lorenz@{fg text},@{fg highlight}Andreas Steup@{fg text},@{fg highlight}Stu Casper@{fg text},@{fg highlight}Paula-Christiina Wirtanen@{fg text},@{fg highlight}Jon B. Peterson@{fg text},@{fg highlight}Ronald Teune@{fg text},@{fg highlight}Claudio Pucci@{fg text},@{fg highlight}Sergio Tassi@{fg text},@{fg highlight}Frank Mariak@{fg text},@{fg highlight}Fabrizio Bartoloni@{fg text}......

TNX ! TNX ! TNX ! TNX ! TNX ! TNX ! TNX ! TNX ! TNX ! TNX ! TNX ! TNX ! TNX ! TNX ! TNX ! TNX ! TNX ! TNX !

@endnode

@node CopyRg "CopyRight infos"

@{b}@{fg highlight}FlashMandelWOS@{fg text}@{ub} is GiftWare, send anything to @{"Author" link Autore}, if you like it.

USE @{b}@{fg highlight}FlashMandelWOS@{fg text}@{ub} AT YOUR OWN RISK, THERE IS NO WARRANTY OF FUNCTIONING. @{"AUTHOR" link Autore} DOES NOT ASSUME ANY RESPONSABILITY FOR ANY INCONVENIENCE.

The whole archive of @{b}@{fg highlight}FlashMandelWOS@{fg text}@{ub} or a part of it can't be used for money, anyway it is freely distributable in Public Domain, ShareWare or GiftWare software collections, on condition that they be under 30 US $ fee. Fred Fish, Aminet, AmyResource, BitPlane, Amiga.It, AmigaMagazin and others newspapers are free to include this program in their CD collections in archived and unarchived way, but leaving the whole contents as the original one.

@next CopyRg

@endnode

@node Processori "Supported processors"

@prev Processori

Any Motorola® 68020+ family processor with an Fpu is supported. PPC support is tested on 603e and 604e CPU mounted on BlizzardPPC & CyberstormPPC and SHOULD be compatible with next generations too.
In this archive is released a versions for Mc68020/68030 + Mc68881/2, Mc68040fpu, Mc68060fpu processors with or without a PowerPC;
FlashMandelWOS is compiled to generate code for the Mc68020 with an Fpu, but it's full forward compatible with Mc68030/040/060 and optimized for pipelines of Mc68040/060 Cpu, Mc68882+ Fpu, PowerPc 6xx.
The Mc68k & PPC rendering routines are all optimized by hand in 68k & PPC asm code, with the scheduling in mind.

@next Processori

@endnode

@node ChipSet "I chipset supportati"

@prev ChipSet

Are supported all the original @{b}Amiga@{ub} @{b}OCS@{ub}, @{b}ECS@{ub} e @{b}AGA@{ub} chipsets. The program adapts itself to your resources, allowing a maximum of 32 colors on @{b}OCS@{ub} and @{b}ECS@{ub}, and screens up to 256 colors on @{b}AGA@{ub} and @{b}RTG@{ub}.
If you have any graphic board which adds an own screen into the @{fg highlight}Screen Database@{fg text}, the program will use it at any resolution (anyway with a 256 colors limitation, for the present).

@next ChipSet

@endnode

@node CProb "Continuità Probabilistica"

@prev CProb

@{b}@{fg highlight}FlashMandelWOS@{fg text}@{ub} uses the properties of @{"Mandelbrot's set" link Mandelbrot} known as @{b}Probabilistic Continuity@{ub} that is to say:

@{b}@{i}Given a rectangle on the complex plane containing @{"Mandelbrot's set" link Mandelbrot}, if all the points on the rectangle outline have the same escape speed, in that case is "very probable" that the inner area has the same escape speed too.@{ui}@{ub}

The program traces the borders of the rectangle to draw and later check them, if as result they have the same color, fills the whole area with this one, otherwise it divides the rectangle in two parts and starts again on the two drawn rectangles repeatedly, with a strategy called @{i}divide et impera@{ui}.
An explanation of the word @{i}probabilistic@{ui} is given if you let the program trace the complex plane area within the coordinates (-8,-8i) (8,8i), which it fills with a uniform color: it's not a program bug, it made only a probability error... you are warned!

@next CProb

@endnode
