home *** CD-ROM | disk | FTP | other *** search
/ Esprit de Apple Corps / EDAC-2.iso / Graphics / Apps / Programs / FractalGS / FGS1.1.Doc next >
Encoding:
Text File  |  1989-01-23  |  19.0 KB  |  334 lines

  1. Fractals-GS 
  2.  
  3.  Version 1.1 
  4.  12/15/88
  5.  Documentation updated 1/23/89
  6.  By Steven W. Disbrow
  7.  (c) 1987-89 By EGO Systems.
  8.  
  9.  This Program was written in TML Pascal.
  10.  (c) 1987 TML Systems, Inc.
  11.  Certain portions of this software are copyrighted by TML Systems, Inc.
  12.  
  13.  This version of this program is Public Domain. Feel free to distribute.
  14.  
  15.  WHAT IT DOES:
  16.  Fractals-GS is STILL a program that allows your Apple ][GS to generate pictures
  17.  of the famous Mandelbrot Set.  For convenience, pictures may be saved in
  18.  progress and restarted later.
  19.  
  20.  THEORY AND CREDITS:
  21.  Like most Fractal programs in the world, this one is based on one of A.K.
  22.  Dewdney's articles in Scientific American.  His work, in turn, is based on the
  23.  work of that IBM guy, Mandelbrot (he's the one that started this mess!).  For
  24.  some of the theory and background on this stuff, see any of Dewdney's articles
  25.  (check your library).  For some serious brain damage, check out any of
  26.  Mandelbrots books. (Golly, I hope I spelled his name right!)
  27.  There are four reasons that I did this update to Fractals-GS:
  28.  1) Ed Finney wrote me a letter (USnail) and told me how much he liked the
  29.     program .
  30.  2) Fred Krol asked me if he could include it as a demo with a new hardware
  31.     product his company is about to release.  I said yes.
  32.  3) Garry M. Delong sent me some MONEY.
  33.  4) I am getting really sick of my job programming IBM PC's and Mainframes.  So
  34.     if any of you Apple ][GS programming shops out there need good people...
  35.  
  36.  BUGS IN THIS VERSION - 1/23/89
  37.   1) Due to a bug in AppleWorks GS, the documentation file was screwed up.
  38.    This file fixes that.
  39.   2) The only program bug I know of at this point is the fact that when entering
  40.    a title for a picture via the "NEW" or "MAGNIFY" options, you can only enter
  41.    eleven charaters.  To get around this, use the "SAVE AS..." menu selection to
  42.    specify a title for the picture. Or, you could close the picture, rename it
  43.    and then reload it.
  44.  
  45.  FIXES TO BUGS AND 'FEATURES' IN VERSION 1.00:
  46.   1) I figured out how to get rid of the *&^%& menu bar! (And boy did I)
  47.   2) Pictures were saved incorrectly in Version 1.00.  This made it difficult
  48.      (but not impossible) to use Fractals-GS generated pictures with programs
  49.      such as DeluxePaint ][ and PaintWorks.  This has been fixed. In fact, this
  50.      version will fix all of your old pictures if you want it to.  For more info
  51.      see the detailed discussion at the end of this document.
  52.   3) While I claimed that Version 1.00 painted it's pictures in 16 colors the
  53.      more observant of you (i.e. not blind) will no doubt have noticed that
  54.      there were only about 8 colors in any picture that you drew. This was a
  55.      STUPID mistake and it won't happen again.  Thanks to Noreen for spotting
  56.      this one.
  57.   4) Pictures and their data are now stored in 1 file.  The use of a '.Pic' and
  58.      a '.Dat' file was a 'Feature' that really began to bug the #&!! out of me
  59.      after about 20 pictures. 
  60.   5) Also included in this version is a Fractals-GS Icon.  Copy it into the
  61.      Icons folder of either your startup disk or your Fractals-GS disk.
  62.  
  63.  THE FRACTALS-GS MENU BAR:
  64.  The menu bar in Version 1.10 of Fractals-GS behaves a bit differently than in 
  65.  Version 1.00 or just about any other ][GS program.  When you first start the
  66.  program, the menu bar appears at the top of the screen just as you would
  67.  expect.  After you open a picture (using either "LOAD PIC..." or "LOAD FGS...")
  68.  however, the picture fills the entire screen and the menu bar disappears
  69.  (finally)! To get the menu bar back, move the cursor to the top of the screen.
  70.  To make the menu bar disappear again move the cursor away from the menu bar.
  71.  We here at EGO Systems call this the Phantom Menu Bar (PMB) because we could
  72.  not think of anything dirty to call it.  This PMB is why the "FULL SCREEN"
  73.  option has been taken out of the WINDOWS menu.  Activating a menu choice by
  74.  using a command key combination will cause the menu bar to appear briefly and
  75.  the command will be carried out.  If you close the current picture the menu bar
  76.  reappears and stays put until you open another picture.  The only other
  77.  programs that I know of that use a PMB are Instant Music and The King Of
  78.  Chicago (a great game).  If anyone else wants to know how to get rid of the
  79.  menu bar, let me know and I'll be glad to tell you.
  80.  
  81.  WHAT'S IN THE MENUS?
  82.  
  83.  APPLE MENU:
  84.   The Apple Menu contains the obligatory "About Fractals-GS..." selection and
  85.   any desk accessories you might have installed.
  86.  
  87.  FILE MENU:
  88.   NEW - This selection brings up a Dialog box that allows you to specify
  89.    information about the picture you want Fractals-GS to draw.  The information
  90.    you must specify is:
  91.     X Coordinate and Y Coordinate - These values specify the BOTTOM LEFT HAND
  92.      CORNER coordinates of the picture that Fractals-GS is to draw.
  93.     X Range and Y Range - These range values are added to the X and Y coordinate
  94.      values to  specify the range of numbers that the picture is to show.  
  95.     Number of Iterations Per Pixel - This specifies the maximum number of times 
  96.      that Fractals-GS evaluates each pixel to determine its color.  Lower values
  97.      produce faster, less accurate, pictures.  Larger values produce more
  98.      detailed pictures, but they take a LONG, LONG, LONG time to finish (You
  99.      have been warned!).
  100.     Title - This can be a 15 character title for the picture.
  101.    When the NEW Dialog box is invoked, a set of default values is shown. These
  102.    defaults specify a picture giving an overview of the Mandelbrot Set.  These 
  103.    default values are specified in scientific notation.  The values you supply
  104.    do not have to be in scientific notation.
  105.   CLOSE - This selection closes the current picture.  If the picture has been
  106.    modified, you will be asked if you want to save the changes.
  107.   LOAD PIC - This selection will allow you to load ANY picture that is in the
  108.    standard, uncompressed file format (file type $C1).  A picture that is loaded
  109.    in this manner may only be viewed.  Both 320 and 640 mode pictures may be
  110.    loaded (640 mode pictures may look a bit odd though...).
  111.   LOAD FGS - This is short for "LOAD a Fractals-GS Picture and its Data".
  112.    If you try to load in a plain picture file, Fractals-GS will give an error
  113.    message and the operation will be aborted.  For more information, see the
  114.    discussion at the end of this document.
  115.   SAVE AS - This selection allows you to save an FGS Picture (i.e. a picture and
  116.    its associated data) in progress.  The picture can be loaded in later (via
  117.    the LOAD FGS selection) and restarted.  The resulting pictures can be loaded
  118.    into DeluxePaint ][ and (I hope) other paint programs.  Use the
  119.    "Import File..." option when loading Fractals-GS pictures into AppleWorks GS. 
  120.   DELETE - This selection allows you to delete any file.
  121.   RENAME - This selection allows you to rename any file.
  122.  
  123.  EDIT MENU:
  124.   The Edit Menu is not implemented in this version of Fractals-GS.
  125.  
  126.  WINDOWS MENU :
  127.   COORDINATES - The Coordinates selection brings up a small window showing the
  128.    current position of the cursor 'in' the complex plane.  The coordinates
  129.    window can be moved anywhere you want.  This option can be very handy when
  130.    you are in the Magnify mode (be sure to select Coordinates before you select
  131.    Magnify).
  132.   GET INFO - The Get Info selection tells you all of the important stuff about
  133.    the picture you are currently viewing.  The Get Info  Dialog now includes a
  134.    'Total Time' entry. This tells you how much time (in Hours, Minutes and
  135.    Seconds) you have wasted drawing a particular picture. If the picture was
  136.    generated with Version 1.00, the Total Time is set to 0 hours, 0 minutes and
  137.    0 seconds. Also included in the Get Info selection is the option to print
  138.    out the Info.  (Make sure that your printer is ready!)
  139.   MAGNIFY - The Magnify option allows you to "Zoom In" on a portion of an FGS
  140.    picture and generate a new picture.  When you select Magnify, the cursor
  141.    changes into a Magnifying Glass (well, that's what it's SUPPOSED to be!).
  142.    To cancel the Magnify option press the escape ("esc") key.  See the following
  143.    EXAMPLES section for more information on this option.
  144.   PREFERENCES - The preferences option brings up a dialog box which allows you
  145.    to set the following options:
  146.     1) Screen Saver - If you turn the screen saver on, the screen will turn
  147.      black when you select an option from the RUN menu (Mandelbrot or Julia).
  148.      This option is included because I figure that most pictures will be run at
  149.      night and your monitor will be off anyway and the pictures get drawn a bit
  150.      faster that way.  How much faster? It depends on the number of color breaks
  151.      in the picture.
  152.     2) Color Cycling Direction - This can be either IN (towards the black areas)
  153.      or OUT (away from the black areas).  If neither button is selected, the
  154.      program defaults to OUT.
  155.     3) Color Cycling Speed - How fast the color cycle goes.  Drag the scroll bar
  156.      to set the speed.  I can't quite get the other areas of the scroll bar to
  157.      behave correctly just yet (give me a break, I still have Christmas shopping
  158.      to do) so this will have to do for now.  
  159.    Click the 'OK' button when you are done.  There is no cancel button because
  160.    none of this stuff is really that important, is it?
  161.  
  162.  COLORS MENU:
  163.   SET - This is not yet implemented.
  164.   DEFAULT - This is not yet implemented.
  165.   CYCLE - Select this item to start the colors cycling.  If the Coordinates
  166.    window is open, it will be closed and the cycling will begin.  While in
  167.    Cycling mode you can set the direction and speed of the cycle using the
  168.    PREFERENCES item or  by pressing the following keys:
  169.     'D' - Pressing 'D' reverses the direction of the cycle.
  170.     '-' - Pressing '-' slows down the speed of the cycle.
  171.     '+' - Pressing '+' increases the speed of the cycle.
  172.    Note that you do not have to have Shift or Caps Lock pressed for these keys
  173.    to work.
  174.    To hide the cursor, press the Space Bar. To get the cursor back, move the
  175.    mouse.
  176.  
  177.  RUN MEN:
  178.   MANDELBROT - The Mandelbrot selection tells Fractals-GS to start drawing a
  179.    picture using the formulas that generate Mandelbrot set pictures.  The cursor
  180.    will change into the wristwatch and the picture will start drawing.  If you
  181.    have the Screen Saver turned on, the screen will go black.  To stop the
  182.    execution of this option, press the escape ("esc") key.  When the CURRENT ROW
  183.    is finished being evaluated, Fractals-GS will stop drawing the picture.
  184.   JULIA - This selection is not yet implemented.
  185.  
  186.  SPECIAL KEYS:
  187.   The following keys (upper or lowercase) do the following things in the
  188.   following modes:
  189.    AT ANY TIME -
  190.     'Space Bar' - Pressing the Space Bar at any time hides the cursor.  Move
  191.      the mouse to make the cursor reappear.
  192.    CYCLE MODE -
  193.     'D' - Pressing 'D' reverses the direction of the cycle.
  194.     '-' - Pressing '-' slows down the speed of the cycle.
  195.     '+' - Pressing '+' increases the speed of the cycle.
  196.    MAGNIFY MODE -
  197.     'esc' - Pressing 'esc' (the escape key) ends magnify mode.
  198.    RUN MODE -
  199.     'esc' - Pressing 'esc' (the escape key) ends run mode when Fractals-GS has
  200.      finished evaluating the current line of the picture.
  201.  
  202.  EXAMPLES:
  203.  
  204.   CREATING A NEW PICTURE - 
  205.    1) From the "FILE" menu, select "NEW".  A Dialog Box containing default
  206.     values will appear.  To edit these values click the mouse in the appropriate
  207.     box and use the arrow keys and delete keys to change the values.  When you
  208.     have the values you want, click on the "OK" button and an empty window will
  209.     appear.  If you change your mind, click the "Cancel" button.  
  210.    2) Now that you have the empty window, you probably want to get the picture 
  211.     started!  To do this, simply pull down the "RUN" menu and select the
  212.     "Mandelbrot" item.  At this point, Fractals-GS begins to calculate and draw
  213.     your picture.  Don't worry if nothing appears immediately, Fractals-GS only
  214.     draws a pixel (or line of pixels) when it crosses a 'color boundary' (you
  215.     should understand what I mean after you see it in action).  
  216.    3) The next step is to RELAX.  The ][GS is a VERY slow machine and some of
  217.     these pictures can take upwards of 20 hours to draw!
  218.    4) What's that you say?  You don't want your computer tied up for 20+ hours
  219.     drawing a stupid picture?  Neither did I!  That's why Fractals-GS has the
  220.     ability to save a picture in progress!  To save it however, you must stop
  221.     it. To stop a picture that is being drawn, press the escape ("esc") key.
  222.     Fractals-GS will stop drawing the picture when it reaches the end of the
  223.     current line (this in itself can take up to 30 minutes!).  
  224.    5) To save the picture as it now stands, pull down the "FILE" menu and select
  225.     the "Save As..." item.  This brings up a Dialog Box that prompts you for a
  226.     name to save the file under.  When you have the name that you want, click on
  227.     the "SAVE" button and Fractals-GS will save your picture and its associated
  228.     data in the file.
  229.    6) Now that your picture is saved, you can close it and start or load another
  230.     picture, or you can restart the picture you just saved.  To restart the
  231.     picture, just select the "Mandelbrot" item from the "RUN" menu.
  232.  
  233.   LOADING AND RESTARTING A SAVED PICTURE - 
  234.    1) From the "FILE" menu, select "LOAD FGS...".  This brings up a Dialog Box 
  235.     that prompts you for the name of a file to load.  When you find the file you
  236.     want, double-click on its name or click on its name once and then click the
  237.     "OPEN" button.  Fractals-GS will then load your picture and its data.  If
  238.     the Fractals-GS data can not be found in the file, Fractals-GS will tell you
  239.     so and the load operation will be aborted.
  240.    2) Once you have loaded the picture, you may restart it by selecting the
  241.     "Mandelbrot" item from the "RUN" menu.
  242.    3) To stop and save the picture, follow steps 4-6 under CREATING A NEW
  243.     PICTURE (above).
  244.  
  245.   USING THE MAGNIFY OPTION -
  246.    1) Once you have a picture drawn (or almost drawn) you can "Zoom In" on bits
  247.     of it that look interesting.  First, load in a previously drawn picture (the 
  248.     picture does not need to be completely finished) via the "LOAD FGS..."
  249.     option as described above.  
  250.    2) Pull down the "WINDOWS" menu and select the "Coordinates" item.  Please
  251.     note that this step is ENTIRELY OPTIONAL and is not really necessary when
  252.     magnifying a picture.
  253.    3) Pull down the "WINDOWS" menu and select the "Magnify" item.  The cursor
  254.     will change into a "Magnifying Glass".  This tells you that you are now in
  255.     Magnify mode.
  256.    4) Place the cursor at or near the point of interest and press and hold the
  257.     mouse button.  While STILL HOLDING DOWN on the mouse button, begin to drag
  258.     the mouse.  A box is drawn to show the area that will be magnified.  You can
  259.     drag the mouse in any direction.  When you have the area you are interested
  260.     in selected, release the mouse button.
  261.    5) When you have released the mouse button, a Dialog Box identical to the
  262.     "NEW" Dialog Box will appear and show you the specifications for the area
  263.     you have just selected.  Change them as you would if you were specifying a
  264.     new picture.  
  265.    6) When the specifications are to your liking, click the "OK" button.  The
  266.     picture that you were working with previously will be closed (if changes
  267.     were made to it, you will be asked if you want to save those changes), and a
  268.     new, empty window will be opened (if the Coordinates window was open, it too
  269.     will be closed).  This window will eventually contain the drawing of the
  270.     zoomed area. To begin drawing this picture, follow steps 2-6 under CREATING
  271.     A NEW PICTURE (above).
  272.    7) If you do not like the specifications for the area you have chosen, click
  273.     the "CANCEL" button.  This will place you back in Magnify mode and you can
  274.     try again.  If you do not want to try again or you did not want to try in
  275.     the first place, press the escape key and Magnify mode will be turned off.
  276.  
  277.   HINTS -
  278.    1) When in magnify mode try to get the X and Y ranges about the same.  If
  279.     they are very different, the resulting picture will look stretched or
  280.     smashed. This is because that, on the ][GS, pixels are taller than they are
  281.     wide.  So, when you are boxing in the area you want to magnify, make the
  282.     vertical sides a bit longer than the horizontal sides.
  283.    2) When in magnify mode and when specifying a new picture, the values for
  284.     the X and Y coordinate represent the lower left hand corner of the picture.
  285.    3) When you are zooming in really 'deep', make the iteration limit larger.  
  286.     Otherwise the picture may end up being all black.
  287.    4) An iteration limit of 100 is more than enough for really well detailed
  288.     pictures.
  289.    5) Run these things at night or when you are at work or school.  If you live
  290.     in an area that has a lot of electrical storms or power outages, do NOT run
  291.     these things unattended.  I'm NOT going to be held responsible for fried or
  292.     otherwise damaged ][GS's. (To quote Dave: "Oh, yeah? How much did you pay to
  293.     get into the show tonight?")
  294.  
  295.   CONVERTING VERSION 1.00 PICTURES TO VERSION 1.1:
  296.    Like I said earlier, Version 1.00 saved it's pictures incorrectly.  I have
  297.    corrected this problem so that Version 1.10 saves pictures correctly.  Since
  298.    it was not YOUR fault that I screwed up Version 1.00, I have included the
  299.    ability to load Version 1.00 pictures and save them out in the correct
  300.    format.  The process to do this is simple:
  301.     1) Load in the old picture using "LOAD FGS...".
  302.     2) Save the picture to the same (or a different) name using the "SAVE AS..."
  303.      option.
  304.     3) Delete the pictures old ".Dat" file.
  305.    You may want to verify that the pictures attributes are intact before
  306.    deleting the ".Dat" file.  To do this, close the picture file, rename the
  307.    ".Dat" file to something without ".Dat" on the end of it, reopen the picture
  308.    file and use the Get Info option to verify that the pictures attributes are
  309.    OK.
  310.  
  311.   TECHNICAL NOTE - Version 1.00 pictures are identified via the fact that the 
  312.    Auxiliary Type of the ".Pic" file SHOULD be zero (0).  Version 1.10 files
  313.    have an Auxiliary Type of 257 (hexadecimal $0101, just like Apple uses to
  314.    specify version numbers of the ][GS tool sets).  If you have trouble
  315.    converting Version 1.00 pictures, use a utility such as my NoDOS Desk
  316.    Accessory to check the Auxiliary Type and change it back to 0 if necessary.
  317.    Convert your pictures now. I plan on removing this conversion ability from
  318.    the next version.
  319.    Also, as I stated earlier, pictures and their data are now saved in the same 
  320.    file.  This means that a Fractals-GS picture file will be 33K.  This scheme
  321.    saves directory space since you don't have to have the ".Dat" file along for
  322.    the ride.
  323.  
  324.  I hope you like this program and find it useful.  If you have ANY questions,
  325. criticisms, compliments or CASH you would like to throw my way, please do so.  I
  326. would especially like to hear about ANY bugs you find in it.  This was my first
  327. attempt at a full blown ][GS application and I would REALLY love some feedback.  
  328. My GEnie address is "S.DISBROW", my AppleLink name is "Obnoxio" and my home
  329. address is:
  330.  
  331.  Steven Disbrow
  332.  1421 O'Neal Rd.
  333.  Hixson, TN. 37343
  334.