home *** CD-ROM | disk | FTP | other *** search
/ The Fred Fish Collection 1.5 / ffcollection-1-5-1992-11.iso / ff_disks / 200-299 / ff297.lzh / SuperMenu / SuperMenu.doc < prev    next >
Text File  |  1989-12-29  |  26KB  |  535 lines

  1.                                  SuperMenu
  2.  
  3.                         (c) 1989 by Paul T. Miller
  4.                            All rights reserved.
  5.  
  6. INTRODUCTION
  7.  
  8.    SUPERMENU is an information display system you can use to quickly and
  9. easily display text files (and sections of text files) with the press of a
  10. button. SuperMenu can be configured by you to perform in a variety of ways -
  11. you have complete control over what buttons appear (and how they look and are
  12. accessed), what section of the text is displayed (and it's position and size
  13. and how it is referenced), how the program is run (and how it operates), and
  14. a variety of other things.
  15.    SuperMenu can be run from the Workbench or CLI, and can be run once or
  16. made resident for immediate activation by a user-defined hot-key. SuperMenu
  17. uses two or more external files - one is the configuration file that makes
  18. the magic (and open-endedness) of SuperMenu possible. With this file you have
  19. complete control over all of SuperMenu's output and operation. The other file
  20. (or files) contain the information you wish to display (usually an ASCII text
  21. file - support is in the works for future additions of picture and sound
  22. files). Each file can be typed in and edited with a standard word processor,
  23. and must be in ASCII format.
  24.    SuperMenu has any number of uses, and it is constantly being updated and
  25. laden with new features. See below for a few examples and the explanation of
  26. SuperMenu's features.
  27.  
  28. USES
  29.  
  30.    I) You have an application that you use often, but find yourself looking
  31.       to the manual for help a lot. With SuperMenu, you can type a text file
  32.       with any ASCII word processor. Within the file, you can separate the
  33.       various sections pertaining to a particular function, giving each one
  34.       a specific KEYWORD for which SuperMenu will search. Then you can create
  35.       a configuration file for SuperMenu, describing how you want it to look
  36.       and what functions to have help available for. When you're finished,
  37.       you can run SuperMenu, pick a function from the menu, and SuperMenu
  38.       will display that section of your file, allowing you to scroll through
  39.       it if it's more than a specified height. You can have all your favorite
  40.       help sections separated nicely and instantly available from within
  41.       SuperMenu. (this is the reason SuperMenu was written)
  42.  
  43.   II) You have a disk with all your favorite game docs on it. You can create
  44.       a configuration file allowing you to select a documentation file to
  45.       flip through at will (and from within games that allow you to multi-
  46.       task).
  47.  
  48.  III) You've created a personal "disk-magazine" of all of your favorite
  49.       articles. SuperMenu will let you customize your disk so any of these
  50.       is instantly available at a gadget-click away.
  51.  
  52.  
  53. FUNCTIONS and PARAMETERS: SuperMenu's custom Configuration File
  54.  
  55.    With SuperMenu's configuration file, you can set up any of the following
  56. customizable parameters:
  57.  
  58.    1) SCREEN:     This function is no longer supported (but is still in the
  59.                   function list for future use). SuperMenu windows open up
  60.                   automatically on the front-most screen.
  61.  
  62.    2) FONT:       The font you want to use in displaying the menu.
  63.                   format = "FONT: Fontname Fontsize"
  64.                   default = "Topaz 8"
  65.  
  66.    3) COLUMNS:    The maximum number of horizontal columns of menu choices
  67.                   SuperMenu will display.
  68.                   format = "COLUMNS: column_number"
  69.                   default = 3
  70.  
  71.    4) ROWS:       The maximum number of vertical rows of menu choices
  72.                   SuperMenu will display.
  73.                   format = "ROWS: row_number"
  74.                   default = 15
  75.  
  76.    5) HSPACING:   Horizontal Spacing, the number of pixels horizontally
  77.                   between each of the menu choices.
  78.                   format = "HSPACING: horizontal_spacing"
  79.                   default = 10
  80.  
  81.    6) VSPACING:   Vertical Spacing, the number of pixels vertically
  82.                   between each of the menu choices.
  83.                   format = "VSPACING: vertical_spacing"
  84.                   default = 5
  85.  
  86.    7) TITLE:      The title SuperMenu will display in the menu window. See
  87.                   the NOTE below about string conventions (and the use of the
  88.                   underscore instead of spaces).
  89.                   format = "TITLE: Menu_window_title"
  90.                   default = "SuperMenu v1.01"
  91.  
  92.    8) KEYS:       This option will automatically generate a keyboard-
  93.                   equivalent for the first 26 menu options (A-Z).
  94.                   format = "KEYS: ON <or> OFF"
  95.                   default = OFF
  96.  
  97.    9) BOXES:      This option will draw a box around each of the menu
  98.                   choices (making a button appearance).
  99.                   format = "BOXES: ON <or> OFF"
  100.                   default = OFF
  101.  
  102.   10) STATUS:     This option will display the amount displayed percentage
  103.                   (and number of lines in the section) in the text window.
  104.                   format = "STATUS: ON <or> OFF"
  105.                   default = OFF
  106.  
  107.   11) FILE:       This defines a default "resident file" that is always in
  108.                   memory (see below).
  109.                   format = "FILE: resident_textfile_path"
  110.                   default = NONE
  111.  
  112.   12) PREFIX:     This defines a 2-character prefix code used for finding
  113.                   individual sections in the text files (see below).
  114.                   format = "PREFIX: two-character_prefix_code"
  115.                   default = "*:"
  116.  
  117.   13) JUSTIFY:    This sets the default justification used on your menu text.
  118.                   format = "JUSTIFY: LEFT <or> RIGHT <or> CENTER"
  119.                   default = LEFT
  120.  
  121.   14) RESIDENT:   This makes SuperMenu start up in the background, and wait
  122.                   until the HELP Key is pressed before it displays its menu.
  123.                   Closing the menu (with the CLOSE gadget) causes SuperMenu
  124.                   to return to background mode until HELP is pressed again.
  125.                   (Note: a feature has been added to customize the hot-key)
  126.                   format = "RESIDENT: ON <or> OFF"
  127.                   default = ON
  128.  
  129.   15) MENUPOS:    This allows you to set the position of the Menu Window
  130.                   when the program is run (or when you press the hot-key
  131.                   if the program is resident). X and Y are coordinates on
  132.                   the screen. If either (or both) equal -1 then the menu
  133.                   window will be centered in that axis.
  134.                   format = "MENUPOS: left_edge top_edge"
  135.                   default = -1 -1
  136.  
  137.   16) QUIET:      This turns off any printing of messages (either to the CLI
  138.                   or the Workbench titlebar) by SuperMenu. Beware, you will
  139.                   not know if an error occurs while it's loading, or whether
  140.                   or not it was installed or removed correctly.
  141.                   format = "QUIET: ON <or> OFF"
  142.                   default = OFF
  143.  
  144.   17) REOPEN:     With this option turned on, SuperMenu will automatically
  145.                   reopen any text files you left open when you made it
  146.                   resident again (when you click on the CLOSEGADGET of the
  147.                   menu window - only works when SuperMenu is made resident
  148.                   with the resident option).
  149.                   format = "REOPEN: ON <or> OFF"
  150.                   default = ON
  151.  
  152.   18) WINSIZE:    This option allows you to set the size of the text window
  153.                   when you click on an option. If there is not enough text
  154.                   to fit vertically in the window, the window will open up
  155.                   as to the set width, but only tall enough to display the
  156.                   text. If the window is too small horizontally, you may not
  157.                   be able to see all of your text. The window will open up
  158.                   just large enough for the text in either direction if a
  159.                   -1 is set for that size (and will be centered).
  160.                   format = "WINSIZE: horizontal_size vertical_size"
  161.                   default = -1 -1
  162.  
  163.   19) COMKEY:     User-defined command-key to invoke program. Must be a
  164.                   RAWKEY code in hexadecimal (with "0x" prefix).
  165.                   format = "COMKEY: 0xrawkey_code"
  166.                   default = HELP KEY
  167.  
  168.   20) QUALIFIER:  User-defined qualifier key use to modify command key. Must
  169.                   be a valid event Qualifier code in hexadecimal (with "0x"
  170.                   prefix). See Qualifier Code Chart below for valid codes.
  171.                   format = "QUALIFIER: 0xqualifier_code"
  172.                   default = NO QUALIFIER
  173.  
  174.   21) SCRSIZE:    The user-defined size to constrain all SuperMenu output
  175.                   to (width and height). A size of -1 will use the size of
  176.                   that axis of the Workbench Screen.
  177.                   format = "SCRSIZE: screen_width screen_height"
  178.                   default = -1 -1
  179.  
  180.    If any of the above parameters are ommitted from the configuration file,
  181. the defaults will be used.
  182.  
  183. NOTE: Any string (used in a screen, title, or file name) MUST have an
  184.    underscore character ("_") in place of ANY spaces in the string. If you
  185.    leave any spaces in the string (except at the end), SuperMenu will only
  186.    display the string up to that space. (So don't forget those underscores!)
  187.    Example: "Screen: Workbench_Screen" or "Title: My_Help_File"
  188.  
  189. NOTE: When you make SuperMenu resident (with the RESIDENT: command - this
  190.    should NOT be confused with the "resident file" - see below), the only
  191.    way to clear SuperMenu from memory is to press CONTROL-C while the menu
  192.    window is being displayed. (You can also run it again - this will tell
  193.    itself to remove itself :-)
  194.  
  195.  
  196. Common Qualifier Codes
  197.  
  198. Key               Code
  199. ----------------  ------
  200. Left SHIFT        0x0001
  201. Right SHIFT       0x0002
  202. Either SHIFT Key  0x0003
  203. CONTROL           0x0008
  204. Left ALT          0x0010
  205. Right ALT         0x0020
  206. Either ALT Key    0x0030
  207. Left AMIGA        0x0040
  208. Right AMIGA       0x0080
  209. Either AMIGA Key  0x00C0
  210.  
  211.  
  212. RESIDENT FILE
  213.  
  214.    Any text file may be made "resident" at the start of the program by
  215. specifying it in the parameter list in the Configuration File.
  216.    SuperMenu will load this text file and keep it resident while SuperMenu
  217. is running. If one of your buttons makes a reference to this file, it will
  218. not have to be loaded again, because it's already in memory. This greatly
  219. improves the speed at which the text is display for often-used text files.
  220.  
  221.  
  222. KEYWORDS
  223.  
  224.    Any text file may be broken down into sections, with each section having
  225. its own "keyword" to help SuperMenu find it. This allows you to have many
  226. different functions explained in one text file, rather than having a bunch
  227. of separate files. Placing all of your function information in one file, and
  228. then making that file resident, completely removes any disk access once the
  229. program is running, and provides almost instant feedback to the text
  230. requested.
  231.    To place keywords in your text file, locate the line just before the
  232. section you want to start at, and type in some identifying word that you want
  233. to be used as a keyword. This word must be on a line of its own, MUST BE IN
  234. ALL UPPERCASE, and must have a two-character keyword prefix in front of it
  235. (which you set in the configuration file with the PREFIX: parameter, if you
  236. don't want to use the default of "*:"). This keyword prefix is provided so
  237. your keyword won't get mixed up with other text in the file, and SuperMenu
  238. will know it's a keyword ("*:" was chosen because it is unlikely it would
  239. occur randomly at the beginning of a line - use your own 2-character prefix
  240. if you prefer).
  241.    When you click on a gadget that uses a keyword, SuperMenu will search
  242. through the file for that prefix code and keyword, and will display the text
  243. until it encounters THE NEXT keyword or the end of the file.
  244.  
  245.  
  246. CONFIGURATION FILE
  247.  
  248.    SuperMenu requires this configuration file to run. Even if you want all
  249. of the default parameters and don't require a resident file or optional
  250. window title, you've still got to define your menu options, and this is
  251. where that is done too!
  252.    The format of the SuperMenu conguration file is somewhat strict, and is
  253. defined below:
  254.  
  255.    If SuperMenu is run from the CLI, and no command-line parameters are used,
  256. it will look for a configuration file named "sm.config" which resides in the
  257. "s:" device (usually the "s" directory on the disk where your startup-
  258. sequence is). If you have a configuration file named something else, you can
  259. direct SuperMenu to load it instead of the default one by specifying your
  260. config file name after the name of the program (ie. "SuperMenu config.file").
  261.    If you're running SuperMenu from the Workbench, you may set an alternate
  262. configuration file by setting one of the ToolTypes with the Workbench Info
  263. option. Use the ADD command and type "CONFIG=filename" into the tooltype bar,
  264. where "filename" is the name of your configuration file. Don't forget to SAVE
  265. the modified Info file.
  266.    The file must be standard ASCII format, and the FIRST LINE of the file
  267. MUST BE the string "SMCF1", which stands for "SuperMenu Configuration File
  268. version 1". This is provided for upward compatibility, and SuperMenu WILL NOT
  269. RUN if this header string is missing.
  270.    Next come your parameter definitions, in any order you choose, with the
  271. parameter command first (in upper or lower case) followed by a colon
  272. (ie. "Screen:" or "SCREEN:" or "screen:"), and a space. Then comes the
  273. actual parameter value, be it a string (see the above NOTE:) or number (some
  274. commands may require more than one parameter, such as the font name and
  275. size - ie. "Font: Topaz 8"). After that, you can place a semi-colon (";")
  276. followed by a comment of your choice (no longer than 40 characters).
  277.  
  278.    NOTE: There must be a space between the Parameter Command and each of the
  279.          successive parameter values. There should be no quotes surrounding
  280.          any text strings (and no spaces in them either, see above NOTE).
  281.          Everything is ignored after the correct number of parameter values,
  282.          so you may place a short comment if you wish (place it after a
  283.          semi-colon, so you'll know it's a comment). See the sample config
  284.          file to examine a typical configuration file structure.
  285.  
  286.    After all of your parameter options, place the word "DATA" in upper-case
  287. on a line of its own. This tells SuperMenu that the menu definitions will
  288. follow. Don't forget this! SuperMenu won't work properly without it.
  289.  
  290.    Next come your menu definitions, each of which follow a strict line format
  291. of their own. Each successive line may begin with one of the following:
  292.  
  293. TITLE       (a non-selectable choice used for delimiting sections of
  294.              choices - ie. "User Functions" or "Adventure Games")
  295.  
  296. MENU        (an actual choice definition)
  297.  
  298. BLANK       (a blank line in the menu between two choices)
  299.  
  300.  
  301. The format of a "TITLE" option would be the following:
  302.  
  303. "TITLE  title_name  color  rendering_flags"
  304.  
  305.    "title_name" is the text to place in the title
  306.    "color" is the rendering color of the text (0-3 on Workbench Screen)
  307.    "rendering_flags" are the rendering style of the text (see below)
  308.  
  309.    Example: "TITLE User_Functions: 3 BU"
  310.  
  311.       This title ("User Functions:") will be drawn in color 3 and will be
  312.          BOLDFACE and UNDERLINED.
  313.  
  314.  
  315. The format of a "MENU" option would be the following:
  316.  
  317. "MENU  menu_name  color  rendering_flags  file_name  keyword"
  318.  
  319.    "menu_name" is the text to place in the menu
  320.    "color" is the rendering color of the text (0-3 on Workbench Screen)
  321.    "rendering_flags" are the rendering style of the text (see below)
  322.    "file_name" is the name of the text file to access for this option
  323.    "keyword" is the UPPERCASE word used to search for the specific section
  324.  
  325.    Example: "MENU Load 1 N DOC:program.HELP LOAD"
  326.  
  327.       This menu ("Load") will be drawn in color 3 and will be a normal style.
  328.          When it is selected, the text file "DOC:program.HELP" will be loaded
  329.          and the section under the keyword "LOAD" will be displayed.
  330.  
  331.    NOTE: If the file this option is supposed to load is the resident file,
  332.          use an asterisk ("*") in place of the filename. Also, do not place
  333.          the keyword prefix code in front of the keyword. If this option has
  334.          no keyword, and you just want the whole file displayed (or to start
  335.          at the beginning) specify a keyword of "*".
  336.  
  337. The "BLANK" option has no parameters. Just place it on a line by itself.
  338.  
  339.  
  340. RENDERING FLAGS
  341.  
  342.    You may select specific rendering styles for your title or menu text
  343. within the menu window by using one-character codes in the "rendering style"
  344. field of the option. You may use any of the following:
  345.    N  - normal text (no special rendering style)
  346.    B  - BOLDFACE
  347.    I  - ITALICS
  348.    U  - UNDERLINED
  349.    L  - LEFT-justify text within gadget field
  350.    R  - RIGHT-justify text within gadget field
  351.    C  - CENTER text within gadget field
  352.  
  353.    (Boldface, Italics, and Underlined may all be combined in any way you
  354.    like, ie. BIU or BI or UB, etc. The last justification flag encountered
  355.    will be the one used. If no justification flag is supplied, the default
  356.    one will be used, as set in the configuration file.)
  357.  
  358. NOTE: If any of your option text or filenames have spaces in them, replace
  359. the spaces with underscores ("_"). Do NOT forget this, or SuperMenu is
  360. likely to run unpredictably. For example, a title of "User Functions:" should
  361. really be defined as "User_Functions:".
  362.  
  363. TITLE, MENU, or BLANK options may have comments after the last parameter,
  364. just like the configuration parameters.
  365.  
  366.    The last line in the configuration file must be the string "ENDDATA" in
  367. all UPPERCASE and on a line of its own. SuperMenu will display the titles,
  368. menus, and blank lines in the menu window in the same order you placed them
  369. into the configuration file, so make sure they are layed out the way you
  370. want them first. Also, when SuperMenu draws a title, menu, or blank on the
  371. last line of the menu window (as set by the ROWS: configuration parameter),
  372. the next one will be drawn at the top of the window in the next column over.
  373. Keep in mind that your menu window will reflect the way you set up your
  374. maximum sizes and choices in the config file. If you have fewer options
  375. than the maximum sizes allow, SuperMenu will display a menu window just
  376. large enough for your options, automatically.
  377.  
  378. NOTE: You can use a different configuration file when SuperMenu is run from
  379.    the CLI by typing the path name of the config file you want to use after
  380.    the program's name (ie. "Run SuperMenu t:my_config").
  381.    You may include the QUIET option after the program name and config file
  382.    name to turn off program messages (ie. "Run SuperMenu t:my_config QUIET"),
  383.    or you may include this in the configuration file parameter list instead.
  384.  
  385. NOTE: You can close open text windows with the window's CLOSEGADGET, or by
  386.    pressing ESC or RETURN while the window is active.
  387.  
  388.  
  389. Hints for using SuperMenu effectively:
  390.  
  391. 1) If you've developed a config file and some text to be used in a LORES
  392.    display, you will have to set the margins in your text processor so that
  393.    the text lines are under 40 characters in length (make sure the edited
  394.    file is saved in a Text or ASCII format). Now you will have to inform
  395.    SuperMenu that its output should be constrained to a width of 320 (it will
  396.    automatically be set to the width of the Workbench Screen, 640, when it's
  397.    run) by using the SCRSIZE: option in the configuration file with a width
  398.    set to 320 (the height can stay at -1, the default height, but still must
  399.    be set: "SCRSIZE: 320 -1").
  400.  
  401. 2) Whenever you need to add something new to the menu and your text files,
  402.    you can easily accomplish this by typing in the new text where it needs to
  403.    go (and giving it a keyword) and inserting a new MENU item for it in the
  404.    configuration file. SuperMenu was designed to be easy to expand and simple
  405.    to customize.
  406.  
  407. 3) If you're running SuperMenu from the Workbench, all you need is to copy
  408.    the default icon to the name you want, and fill in the path name of the
  409.    SuperMenu program into the Default Tool section in the Info file, and the
  410.    configuration file to use in the ToolTypes section with "CONFIG=filename"
  411.    (this allows several icons to access the same program, each using
  412.    different configuration files).
  413.  
  414. 4) To quit SuperMenu (and remove it from memory), type a CONTROL-C while the
  415.    menu window is active, or run the program again.
  416.  
  417.  
  418. ** MODIFICATION HISTORY **
  419.  
  420. V1.62 RELEASE NOTES  12/14/89
  421.       - Remove SCREEN: config option. SuperMenu's windows now open on the
  422.         currently-active (front-most) screen.
  423.       - Add SCRSIZE: config option to force SuperMenu to constrain all of its
  424.         output (menu and text windows) to a certain size.
  425.       - Sorry. Still no ANSI...
  426.  
  427. V1.61 RELEASE NOTES  12/03/89
  428.       - Moved some pointers around having to do with the textwindow titlebar
  429.         Now keeps track of title and percentage in window info section so we
  430.         don't go around hacking up memory blocks when we make un/resident
  431.         (also brings code size down about 1K - neato)
  432.  
  433. V1.60 RELEASE NOTES  11/28/89
  434.       - Yeah!! Workbench bug was NOT a bug - this thing wouldn't work at ALL
  435.         except under my development environment (don't know why) - I changed
  436.         the handler code to an older format (with an assembler stub) and it
  437.         now works FINE! Hurrah! (I though Lattice 5.02 worked OK with reg.
  438.         parameters - guess not...)
  439.       - Text windows now display choice name in title bar with status info
  440.  
  441. V1.51 PRERELEASE NOTES  11/28/89
  442.       - Program now sets up its own port (for future AREXX compatibility)
  443.         so it knows where it is. If you run it twice, it will remove itself
  444.         (as if you did it manually with CTRL-C)
  445.       - Multiply-opened windows now open just below (if possible) the bottom-
  446.         most window on the screen (open one, move it to the top, and then
  447.         open some more for a screen full of little windows)
  448.       - Workbench bug still there (crashes horribly when run from WB, I don't
  449.         know why!! <sob> - works great from CLI, though, so put it in your
  450.         startup-sequence (later found to be WRONG - see v1.60 notes)
  451.       - Boxes bug still there, but it's no big deal anyway - don't use them
  452.  
  453. V1.50 PRERELEASE NOTES  11/26/89
  454.       - User-defined command and qualifier keys for invoking program
  455.  
  456. V1.40 PRERELEASE NOTES  11/25/89
  457.       - Size of the text window may be set with WINSIZE option
  458.       - Windows left open when made resident will re-open automatically
  459.         next time program is invoked (only in Resident mode)
  460.  
  461. V1.30 PRERELEASE NOTES  11/23/89
  462.       - Multiple or sections of the same text files may be open at once
  463.       - Multiple open text files may be manipulated independently
  464.       - QUIET config/command-line option for no messages printed
  465.       - Bug in BOXES mode makes strange lines all over (hmmmm...)
  466.       - Crazy bug in Workbench implementation, freezes for no apparent reason
  467.         after installing
  468.  
  469. V1.20 PRERELEASE NOTES  11/20/89
  470.       - Workbench support added: CONFIG ToolType sets config file
  471.       - MenuPos parameter added in config file to set menu window position
  472.       - If menu window is moved and closed, it opens in place it was closed
  473.  
  474. V1.10 PRERELEASE NOTES  11/16/89
  475.       - Resident option, can be called up at any time with HELP key
  476.       - CONTROL-C on menu window removes SuperMenu from memory
  477.       - Minor menu window heuristics bugs fixed
  478.       - Still need workbench icon selecting config file
  479.  
  480. V1.01 BETA NOTES        11/15/89
  481.       - User-supplied config filename from command-line
  482.       - Justification parameters for menu text
  483.       - Resident parameter for upward compatibility to next revision
  484.  
  485. V1.00 BETA NOTES        11/14/89
  486.       - Doesn't support ANSI control codes in text files
  487.       - No command-line options
  488.       - No workbench icon support
  489.  
  490.  
  491. AUTHOR NOTE
  492.  
  493.    SuperMenu is SHAREWARE. You may use and/or redistribute this program
  494. as you like, but if you find it exceptionally useful (or are just feeling
  495. generous, or you like my work, or my writing style, or anything else possibly
  496. worthwhile), please feel free to send me a small donation of $10 or so. This
  497. could make a struggling college student's day (and believe me, IT DOES!), and
  498. may go into helping me write more interesting and helpful programs (as well
  499. as some possible enhancements to SuperMenu - which I may already be planning!
  500. How about picture support? Hmmmm.... At the rate I'm adding stuff to this
  501. program it should be able to scramble eggs within six months!)
  502.    Here's a deal for you! Send me $20.00 and I'll send you the latest and
  503. greatest, new and improved, debugged and enhanced (smells nice too), version
  504. of SuperMenu on disk and register you for notification of future updates and
  505. other cool stuff (I'll also throw in some of my other ShareWare and PD stuff
  506. too). This includes the lastest manual revision and any SuperMenu scripts I
  507. happen to create or come across (also the upcoming blender attachment and
  508. turnip twaddler, absolutely FREE). What a baagin!
  509.  
  510.  
  511. Send any comments, criticisms, suggestions, donations, etc. to:
  512.  
  513.    Paul T. Miller
  514.    129 Orchard Avenue
  515.    Rocky Mount, VA 24151
  516.  
  517. or call me at (703) 483-8219 for a chat or something.
  518.  
  519. ------------ What are these "CUT HERE" lines REALLY for, anyway? -----------
  520.     _________
  521.    | _______ |
  522.    ||       ||              AMIGA HAS THE "ELEMENTS" OF CREATIVITY
  523.    ||     //||
  524.    ||    // ||
  525.    ||\\ //  ||                "What could be better than my Lattice `C'
  526.    || \\/   ||                  and some Dr. Pepper?"
  527.    ||_______||  "I love my Amiga 1000!"
  528.    |_________|           ___
  529.   ______________        |---|
  530.  |              |       |. '|
  531.  |          --- | ____   \./   <- supposed to be a brandy snifter
  532.  |______________|| __ |   |
  533.   |============| |____|  _|_  (This probably looks weird in non-interlace..)
  534. ----------------------------------------------------------------------------
  535.