Document VideoMaxe Release 04.20 documentation

			VideoMaxe Program Guide
			~~~~~~~~~~~~~~~~~~~~~~~

		  Release 04.20 © Stephan Sürken 1993

			Closed on 16 Sep 1993


0. Important
=============

0.1. Copyright & legal stuff
-----------------------------

 VideoMaxe	04.XX is © Stephan Sürken 1993.
 VMConvert	01.XX is © Stephan Sürken 1993.
 CCode		01.XX is © Stephan Sürken 1993.

  The whole package is SHAREWARE, that means you may copy it freely but
 if you really use it (and want to decode the full version ;-), you must
 send me a donation (see `How to register'). The whole package is
 Copyright © Stephan Sürken.

  If you copy it, you MUST copy the whole original archive.
 Exception: You may freely copy both documentation files "VideoMaxe.doc"
 and "VideoMaxe.guide" if you let them unchanged.

  If you sell it you MUST NOT demand more than your costs have been to
 copy it. Especially, you MUST NOT sell it for more than five (5) US
 Dollar or five (5) DM (or an equivalent in other currencies). This
 limit is obligatory for all Public Domain dealers.

  The program may be included in Public Domain Series, especially in
 Fred Fishs Amiga Disk Library.

  The program may in no way whatsoever be used commercially without
 the author`s permission.

  However, I am not responsible for any damages this program might do.
 Though it is tested thoroughly, I can`t guarantee that the program
 will perform exactly as decribed.

  The program must neither be used nor copied by any extremely right wing
 organisations or persons.

0.2. Release Notes
-------------------

 VideoMaxe 04.20, © Stephan Sürken.
 Needs VideoMaxe.catalog 3.

 See `History' and `Release 04.20' for changes.

 Compiled with M2Amiga, Release 4.2.
 Program is reentrant, creates a min stack of 15000 Byte automatically.
 A needed but not existing library causes an assert with "Arts" error
 message.

 Special compilations for better CPUs possible if requested.

0.3. How to register
---------------------

  To be able to use all features of VideoMaxe you must adjust the
 correct release password in the `VideoMaxe preferences'. However,
 you can work without the password properly, too. In fact, the only
 thing you can't do is creating your own mask `entry list's, so that
 you are bound to the examples included in the package.
  Note that if you like the program and use it, you MUST NOT use the
 limited VideoMaxe without paying the donation. The limited VideoMaxe
 is ShareWare as well! When you register, you will get access to the
 full version as little "thank-you".

  You can obtain that password by sending me the shareware-donation of

       30,- Deutsche Mark	or	20,- US Dollar.

 Practically, the procedure should be like this:

 o Case 1: You have access to EMail.
           -> Send me an E-Mail including your full name (and e-mail
              address), indicating that you want to get the password.
              Simultaneously transmit the money to my bank account;
              take care to identify yourself sufficiently, so that I
              can find out who sent me the money.
              Then, I will e-mail you the password (and the newest
              version if requested).
 o Case 2: You have no access to EMail.
           -> Send me a standard letter including an sufficiently
              stamped return-envelope. Include the money into that
              letter or transmit it to my bank account.
              Then I will return the envelope with the password
              (and the disk with the newest version if requested).

              INNERHALB DEUTSCHLANDS:
              Sie können auch 5,- DM mehr überweisen, wenn sie keinen
              Rückumschlag einschicken wollen.
              Das Porto beträgt 1,00 DM (ohne Disk) und neuerdings
              2,00 DM (nicht 1,70) mit Disk.

  See `The Author' for addresses.

  See `VideoMaxe preferences window' for information how to employ
 the password.

0.4. Rise from VideoMaxe 03.XX to 04.XX
----------------------------------------

 If you have used VideoMaxe 03.XX, you can update your project and
 your "Treiber"-files. This is done by the CLI-tool "VMConvert",
 residing in the "Tools" directory of the original archive.
 It can convert VideoMaxe 03.XX projects and VideoMaxe 03.XX
 "Treiber"-files to the current 04.XX format.

 Do this conversions with the multiple use installer script
 "InstallVM" in the original archive. Please start this up and
 read its help texts for details.

 Refer to VMConvert`s documentation (if existing) if you want to
 use it from Shell ("VMConvert ?" will show up the syntax).

0.5. Odds & Ends
-----------------

 o The default (program-coded) and standard (installed)
   `layout preferences' open a PAL screen, 640x256. If you
   have a NTSC-only machine, you will get an error message on
   startup; simply ignore this messages, open a with a system`s
   default screen mode, change the `layout preferences' in
   VideoMaxe to your wishes & "Save" it (see bug `-(13)').
 o In some windows string/integer gadget contents are taken only if
   a IDCMP-GadgetUp arrives at the window (TAB or ENTER). So better
   press these keys in the gadgets after changing its contents
   to make sure.
 o VideoMaxe is localized while the documentation is in english
   only. I hope you will understand that I am simply not willing
   to keep several documents of this length for different languages
   up to date - this would simply end in chaos. So I choosed
   the language I hope most people will understand for this
   documentation.
   If YOU want to translate it however, why not? Contact me, see
   `The Author'.
 o If you however see texts in VideoMaxe that begin with a "(*) ",
   this indicates that in the catalog file you use this text had not
   yet been translated into the language of the catalog in question.
   This should not occur however.
 o Some words to the catalog file and menu/gadget shortcuts.
   There are some applications that strictly follow the style
   guide: They define for every window everything new and use
   the suggested names for the strings (i.e. XXX_MENU for
   menus or XXX_GAD for gadget text). This is simply needed
   if you want to define shortcuts for gadgets and menus in
   the catalog, BUT:

   1st: you get monster names to differentiate the different
        window names, i.e. like

        MSG_TRANSFERPANEL_ABORT_ENTIRE_TRANSFER_GAD_STR

        from Olaf Barthel`s Term.

   2nd: you get a damn lot of strings! E.g. Term`s source default
        strings file is about 200 K big! As these default strings
        must be hard-coded, that means 100 - 200 K more code
        (depending on the compliler`s optimization) only for
        the text!!
        And think about all the translaters that have to
        translate these strings...

   So, this is the reason why I will not define shortcuts via
   the catalog file. I will even try 2 reduce the number of
   needed strings by their intelligent combination.


1. Installation
================

1.1. Requirements
------------------

 To be able to run (this version of) VideoMaxe on your computer you must
 have any Amiga with OS 2.04+ and the locale library (available with
 WB 2.1+).

 Remark: I tried to make the program runable without the locale library
         to give users without WB 2.1 the chance to start the program.
         Normally one can`t do that with M2Amiga (see bug `-(14)'),
         but extra for new libraries since OS 36, they deliver optional
         library interfaces. These can be imported without letting
         the program assert if the library in question can`t be found,
         but the programmer must test if it was really opened.
         Great! I dedicated at least an hour to performing the
         needed changes to realize the library as option, then finally
         wanted to import the optional interface from my brand new
         OS 39 distribution of M2Amiga, and --

                            IT WAS MISSING!!!!!!!!!

1.2. Accomplish installation
-----------------------------

 Please use the multiple use installer script "InstallVM" in the
 original archive; read its help texts for details.

 If you want to do it by hand, read the `Documentation',
 understand it and do it yourself (old beggar).


2. Documentation
=================

 This documentation is divided in two main parts, namely the chapters
 `General' that introduces basic types and concepts of VideoMaxe and
 `Details' that provide a detailed description of the program.

2.1. Introduction
------------------

  I now that many video organizers are already existent.
  Among these, I did not find one that would satisfy all features
  I wanted nor have the environment I demanded.

  Starting programming in 1989, releasing a first version openly
  in 1990 (02.11), this program has developed to a tool even
  I am quite satisfied with.

  Sure, nothing new, but its ultimate solution:

  VideoMaxe, THE video organizer!


                       FEATURES
                       ========

  (only some that just come to my mind...)

  Environment:
  ~~~~~~~~~~~~
  o Full OS 2.0/2.1 support (Localization, Asl, fonts,
     application icon, etc.).
  o Comfortable screen/window layout saving
  o Font-sensitive runtime gadget calculation.
  o Comfortable installer script for installing, updating, etc.
  o Good documentation (english), text and guide format.
  o ...

  Concepts:
  ~~~~~~~~~
  o NO limitations whatsoever concerning amount of titles, rubrics,
    tapes (or whatever:+) except for your ram space.
  o Ultimate answer to the questions:
    o Where to record a new title?
    o How to spool to title x (counter, rest time, used time...)?
    o If I have a video recorder without rest or used time display,
      how can I get exact counter position?
    o How to express different compression modes (i.e. long play)?
  o A freely editable mask entry list for each tape and title; that
    means that you can carry as much additionally information as you
    wish per tape or title. Provides a mask concept to handle that
    (save, load masks etc.).
  o Title length are given in minutes AND seconds to be able to cover
    rather short titles (e.g. music).
  o Comfortable search routines
  o Printing
  o ...

2.2. General
-------------

 This chapter provides an overview of the program`s basic concepts - so
 if you are an advanced amiga user you should be able to intuitively
 work with the program by understanding only this chapter.

2.2.1. Data Types
------------------

 VideoMaxe consists of many data types that have multiple relations
 and interact in multiple ways.
 I will give you a short list of the key types only. These are
 sufficient to understand VideoMaxe as a user.

2.2.1.1. Mask entry
--------------------

 A mask entry is the basic type for VideoMaxe`s "data base" facility.

 It consists of:

 o Its name.
 o Its kind.
   Up to now, three different kinds are possible:
   - On/Off type
   - Number type
   - Text type
 o Its data; the kind of data depends on the mask entry`s kind.

 See `Mask entry window' as well.

2.2.1.2. Mask entry list
-------------------------

 A mask entry list is a list of mask entries. Important types
 containing such lists are `tape's, `title's and `mask's.

 It consists of:

 o An unlimited amount of mask entries. See `mask entry'.

 See `Mask entry list window' as well.

2.2.1.3. Mask
--------------

 A mask is a `mask entry list' combined with a name for identification.

 It consists of:

 o Its name.
 o Its `mask entry list'

 Note: It is used in `mask list's only. The mask entry lists of masks
       in a project`s mask list can be used with the mask entry lists
       of tapes and titles.

 See `Mask window' as well.

2.2.1.4. Mask list
--------------------

 A mask list is a list of `mask's. There is always one mask list
 per `project'. In a project, the first entry of that list will
 be taken as default for new tapes and the second entry will be
 taken as default for new titles.

 So, you see, this list should contain all your favorite masks
 for that project (for tapes & titles).

 It consist of

 o An unlimited number of `mask's.

 Note: You CAN enter values into the masks here, but I do not
       appreciate that. However, use values that will most
       likely be a default for a new title or tape.
       I appreciate: Text-empty text, Number-zero, On/Off-off.

 See `Mask list file' and `Mask list window' as well.

2.2.1.5. Rubric
----------------

 A rubric is a classification for titles.

 It consists of:

 o Its name. Leading spaces will be automatically removed.

 It is linked to:

 o The list of `title's that are classified into this rubric.

 See `Rubric window' as well.

2.2.1.6. Tape
--------------

 A tape is the resource where a title is located physically.

 It consists of:

 o Its number.
 o Its length (in minutes).
 o Its "over hang", that is the time it is "longer" than described
   by the manufacturer (in minutes).
   The actual length of a tape (used for the calculations) is the
   addition of "length" and "over hang".
 o Its `mask entry list', containing additionally data.

 It is linked to:

 o The list of `title's recorded on this tape.

 See `Tape window' as well.

2.2.1.7. Title
---------------

 A title is data that can be recorded on (any) tape.

 It consists of

 o Its name.
 o Its key for comparison. Is only internally used, not saved but created
    when inserting/changing a title. See `Alphabetical order concept'.
 o Its (play) length (in minutes and seconds).
    See `title compression concept'.
 o Its compression factor (fraction).
    See `title compression concept'.
 o Its boolean locked flag. Is this true, the title will not be taken
   into consideration for "used spaces suggestions".
   See `Suggestion concept'.
 o Its date and time. Both strings are shown (and MUST be typed) in
   the template of the OS locale prefs. See your Amiga User Manual
   for more details.
 o Its `mask entry list', containing additionally data.

 It is linked to

 o The `tape' it is recorded on.
 o The `rubric' it is classified into.

 See `Title window' as well.

2.2.1.7.1. Title compression concept
-------------------------------------

 Problem: There may be video recorders with the ability to
 compress. For example, many video recorders do have a
 so-called long-play-mode to compress the length of titles
 to half the original length. So one has to handle two
 different length, namely the play length and the actual
 length of a title. The first one should be there for
 the user, the second for VideoMaxe`s calculations.

 VideoMaxe`s solution: Every `title' has a length. This
 represents the play length. The actual length will be
 calculated internally. To be able to do that, one has
 to know the compression mode the title has been recorded
 in. As the only impact on VideoMaxe of a compression is
 (a prolonging or) shortening of the actual title length,
 it is enough to know how much a title length is
 compressed. The value indicating that is the compression
 factor of a `title'. This is the factor the recording
 is compressed due to its length concerning the used compression
 mode. This factor may be smaller than one to simulate prolonging
 of the titles length.
 For example, the compression factor for the compression mode
 "Long Play" is 2, the normal compression factor is 1.

2.2.1.7.2. Suggestion concept
------------------------------

 Problem: You want to record a new title - but on which tape???

 VideoMaxe`s solution: Every `title' has an actual length
 (see `title compression concept'). Every `tape' has a actual tape
 length (length+overhang). Every title has a boolean
 locked flag. With these three values the suggestion concept
 is built up.
 And that is how it goes: You create a new title and set
 the title`s length & compression mode. For this titel`s
 actual title length VideoMaxe provides suggestions where
 best to record it. Namely:
 o Suggestions for free spaces of time
   You get a list of all tapes the title will fit on. Ordered
   from the shortest to the longest possible actual rest time
   to be left on the tape if the titel would actually be placed
   there.
 o Suggestions for used spaces of time
   You get a list of all blocks of coherent titles (`tape' list!)
   with the "locked"-flag not set whose actual length are big
   enough to include the new title. If the block ends with a
   title that is simultaneously last on its tape, the tapes`s
   rest time is added to the block`s length. Blocks that
   contain a(t least one) other fitting block are redundant
   and not displayed. In the following I will write

   o (<title1>,.., <titleN>) for a block that is longer than needed and
     will thus "partly overplay" <titleN> and
   o (<title1>,.., <titleN> ..) for a block that can hold the new
     title only with the rest time of the tape (and thus will
     completely overplay all titles).

   So, you see, these blocks contain potential list of titles
   to be overplayed with the new title.

   This list is ordered from the shortest to the
   longest possible blend. The blend is the actual length
   that will contain a "partly overplayed" title
   ((title1,..,titleN)-block) OR
   the actual rest time left on the tape
   ((title1,..,titleN ..)-block))
   after actually accepting the suggestion.

 Example: You have a project with

 o Tape 1, actual length 244
   o Film 1, actual length 120, locked
   o Film 2, actual length 110

 o Tape 2, actual length 183
   o Docu 1, actual length 45
   o Docu 2, actual length 45


 # Suggestions for actual new title length = 14:

   Free spaces suggestion list:
   (Tape 1) (Tape 2)
   Used spaces suggestion list:
   (Docu 1) (Docu 2) (Film 2)

 # Suggestions for actual new title length = 90:

   Free spaces suggestion list:
   (Tape 2)
   Used spaces suggestion list:
   (Docu 1, Docu 2) (Film 2) (Docu 2 ..)

 # Suggestions for actual new title length = 100:

   Free spaces suggestion list:
   -no suggestion possible-
   Used spaces suggestion list:
   (Film 2) (Docu 2 ..) (Docu 1, Docu 2 ..)

 # Suggestions for actual new title length = 125:

   Free spaces suggestion list:
   -no suggestion possible-
   Used spaces suggestion list:
   (Docu 2 ..) (Docu 1, Docu 2 ..)

2.2.1.8. Project
-----------------

 A project is a representation for a collection of tapes.

 It consists of

 o Its name.
 o Its preferences:
   o How to show the spool information, see `spool information concept'.
   o A `mask list', containing the mask entry list templates for this
      project.
   o A `video recorder' for counter calculations.
      See `spool information concept'
   o Its articles-string.
      See `Alphabetical order concept'
   o A `printer preferences' that contains the projects defaults
      printer prefs.
 o Its list of `rubric's.
 o Its list of `tape's.
 o Its list of `title's.
 o Its list of clipped titles. This list is not saved in the
   `project file' and has no special meaning - you`ll simply find
   it very useful when working with VideoMaxe.

 See `Project file' and `Project window' as well.

2.2.1.8.1. Spool information concept
-------------------------------------

 A spool information provides the information needed to access
 a title (with a `video recorder').

 A `project' can have three different kinds of spool information
 show types adjusted in its preferences; the adjusted type has
 impact on all output operations done with the project.

 These types are

 o "Used time" shows the spool information of a title as used time.
     This is the time from start of the tape upto the beginning of
     the title.
     For example: "Used time: 90 Minutes", if a title is recorded
     90 minutes after the begin of the tape.
 o "Rest time" shows the spool information of a title as rest time.
     This is the time from the beginning of the title upto the end
     of the tape.
     For example: "Rest time: 110 Minutes", if a title starts
     110 minutes before the end of the tape.
 o "Counter" shows the spool information of a title as counter
     position. This is the counter position of the title as
     calculated by the adjusted `video recorder' of the project.

2.2.1.8.2. Alphabetical order concept
--------------------------------------

 o General comparison of strings

   Since release 04.20, VideoMaxe uses the locale library for comparison,
   using the "Collate 2" mode.
   If you do not have the locale library (and VideoMaxe finally runs
   without it, see `Requirements'), a normal ASCII compare will be used.

   This comparison is used for every alphabetically ordered list in
   VideoMaxe.

   Examples for alphabetically ordered lists: rubric list, any rubric`s
   title list, main project`s title list.

 o Special comparison of titles

   Before executing the general string compare, a titel`s name is
   converted to a "key"-string, that actually is used for the
   comparison.

   This convertion executes two steps:

    o Delete leading spaces.
    o Delete all pretexts defined in the project`s article-string.
      The case sense is ignored here (not localized yet, so no
      special chars will be capped (i.e. "ö" to "Ö" will not be
      performed))

   The articles-string:
   ~~~~~~~~~~~~~~~~~~~~
   Every project contains such articles-string. It contains the
   pretexts to be left out in alphabetical order; every pre-text
   must end with a "|"-char.

   Example: Let the articles-string be "A |An |The |". This would leave
            out the english articles "a", "an" and "the" when comparing
            strings.
            Thus, "A Zoo", "The Giraffe", "An Elefant" would be ordered
            to: "An Elefant", "The Giraffe", "A Zoo".

   IMPORTANT: Note that if you change the articles-string, the order will
              NOT automatically changed in all the list at once - only new
              items will be ordered with the new comparison.
              To perform this, you will have to save the project and
              then reload it.

2.2.1.9. VideoMaxe preferences
-------------------------------

 A VideoMaxe preferences represents data with that VideoMaxe is
 configured. There`s is always exactly one active while the
 program is running.

 It consists of

 o The password. If this is correct, you will have access to all
    features of VideoMaxe. See `How to register'.
 o The (name of the) default `mask list' to use with new projects.
 o The (name of the) default `video recorder' file to use with
    new projects.
 o The (name of the) default `printer preferences' file to use with
    new projects.
 o Bool flag "Copy Projects?": Projects will be copied when entering
    the project editor if this is set. This may be slow, but provides
   the possibility to cancel the project editor.
 o Bool flag "Save Icons?": Icons are saved with any file saving
    operation if this is set.
 o Bool flag "Show picture ...?": Shows the title picture with every
    `About' (and so on every startup) if this is set.
 o All default directory names for the load and save operations
    on the six different filetypes.

 Note that the first three entries are files that will be loaded as
 default for _new_ projects only - they won`t affect _existing_
 projects at all.
 The last six entries exactly represent the default directories
 for the six filetypes described in `File types'.

 See `VideoMaxe preferences file' and `VideoMaxe preferences window'
 as well.

2.2.1.10. Layout preferences
----------------------------

 A Layout preferences represents data with that VideoMaxe`s layout
 (screen, window etc.) is configured. There is always exactly one
 active while the program is running.

 It consists of

 o The screen mode, colours, fonts etc. to use in VideoMaxe
 o The shapes (including the zoom state) of all VideoMaxe windows.

 See `Layout preferences file' and `Layout preferences window' as well.

2.2.1.11. Printer preferences
-----------------------------

 A Printer preferences represents data with that VideoMaxe`s printing
 is configured. Each `Project' contains exactly one.

 It consists of

 o Four different adjustments concerning the print.
   See its editor and you will see....

 See `Printer preferences file' and `Printer preferences window' as well.

2.2.1.12. Video recorder
-------------------------

 A video recorder represents the behaviour of a counter of a special
 recorder. There is always one video recorder per project.

 It consists of

 o Four different functions (for four different tape lengths)
   of a video recorder counter. (4 different functions as the
   calculations may differ with different tape lengths).
   This function calculates for any give used time a counter
   position.
   A such function consists of
   o Its preferred tape length. Zero indicates that this function
      should be ignored.
      For tape calculations the function will be chosen, whose
      function`s preferred tape length is the most close to the
      length of the tape.
   o A list of "movements per minute". This will contain the
      movement of the counter in a special minute (from start
      of the tape).
      To get to theses values you have to spool to these positions
      (i.e. minute 6), let the tape run for one minute and then
      see how much the counter has proceeded.
      (No fine work.)

 Notes: In most cases, you will not need these functions as you`re
        satisfied with rest- or/and used time. Engage yourself in
        creating such functions only if you urgently need the
        counter positions, i.e. if you cannot point-spool without
        it. If you really have created one I would be pleased to
        release it in newer versions.

 See `Video recorder file' and `Video recorder window' as well.

2.2.2. File Types
------------------

 There are six filetypes VideoMaxe can load and save.

 "Default names" are the file names that will be accessed via
 the `standard menus' "Load" and "Save".

 "Default icons" are the file names of the icon VideoMaxe will
 use when saving a file of that type with the "Save icons?"
 flag set in the `VideoMaxe preferences'. If this file does not
 exists, the system`s default icon will be used.

2.2.2.1. VideoMaxe preferences file
------------------------------------

 It contains all data of a `VideoMaxe preferences'.

 Default name: VM:Config/VM.prefs
 Default icon: VM:Config/VideoMaxePrefsIcons.info

2.2.2.2. Layout preferences file
---------------------------------

 It contains all data of a `layout preferences'.

 Default name: VM:Config/LO.prefs
 Default icon: VM:Config/LayoutPrefsIcon.info

2.2.2.3. Printer preferences file
----------------------------------

 It contains all data of a `printer preferences'.

 Default name: Defined in the `VideoMaxe preferences'.
               Used for new projects only, not accessable via
               "Load" or "Save".
 Default icon: VM:Config/PrinterPrefsIcon.info

2.2.2.4. Video recorder file
-----------------------------

 It contains all data of a `video recorder'.

 Default name: Defined in the `VideoMaxe preferences'.
               Used for new projects only, not accessable via
               "Load" or "Save".
 Default icon: VM:Config/VideoRecorderIcon.info

2.2.2.5. Mask list file
------------------------

 It contains all data of a `mask list'.

 Default name: Defined in the `VideoMaxe preferences'.
               Used for new projects only, not accessable via
               "Load" or "Save".
 Default icon: VM:Config/MaskListIcon.info

2.2.2.6. Project file
----------------------

 It contains all data of a `project'.

 Default name: Defined as the name of the last disk access with that
               project (e.g. new projects have no default, just loaded
               projects have the name they are loaded from as default,
               etc.).
               Not accessable via "Load".
 Default icon: VM:Config/ProjectIcon.info

2.2.3. Controlling the program
-------------------------------

 VideoMaxe is window-oriented and modularized. That means that you
 normally manipulate a certain amount of data in a window,
 encapsulated from the rest.

 Note that most of VideoMaxe`s behaviour will not be described at all
 in this documentation as I think it is self-evident. For example,
 error messages or safety requests will nowhere be documented.

2.2.3.1. Standard Gadgets
--------------------------

 There are standard gadgets appearing repeatedly in the program`s
 windows that generally mean the same. Here`s a list of those
 gadgets:

 o Standard Gadgets manupulating an item

   OK		: Push the data as it is into action.
   Delete	: Delete the item whose data is being shown.
   Cancel	: Leave the window with exactly the situation as it
   		  has been before opening it.
   		  Equivalent to "WindowClose".

 o Standard Gadgets manupulating a list of items

   OK		: Push the data as it is into action.
   New		: Create a new list item.
   Edit		: Edit the active list item.
   Empty	: Empty the list (Length(list) = 0).
   Cancel	: Leave the window with exactly the situation as it
   		  has been before opening it.
   		  Equivalent to "WindowClose".


 Note: Side effects and "Cancel"
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 Note that to be able to "Cancel", the window must operate on a
 copy of the data. So, if you are not able to "Cancel" (as
 the  button is ghosted), the data has not been copied. This is,
 for example, the case with the Window "Project" if you put off
 "Copy Project?" in the VideoMaxe preferences. This is useful,
 as the copying of a big project might take a long time.
 Note, too, that "Cancel" leaves you in exactly the same
 PROGRAM situation but you may have changed the programs
 ENVIRONMENTAL situation, for example by file-saving something
 in a window (in fact, file-savings are the ONLY side effect
 operations of that kind in this program). A simple example of
 that is changing and saving the VideoMaxe preferences and
 leaving the window via Cancel". The changes will not be taken
 by the program (certainly, as you selected Cancel!), but at
 the next startup of VideoMaxe this changed file will be read
 and put to action.

2.2.3.2. Standard menus
------------------------

 Every window might have a menu as well. Push the right mouse button
 to see it (suprise!). For all the menu items there is one rule
 to get their meaning: Read them! Menu items are read with their
 whole "path", e.g. "Rubric.New" or "Specials.Print.Rubric list".
 Employing that rule I bet you get at least a hint to any item`s
 meaning.

 There are three standard menu items concerning file accesses:

 o "Load" will load a file with a fixed name.
          Global key shortcut "L".
 o "Save" will save a file to a fixed name.
          Global key shortcut "S".
 o "Open" will open a file requester and let you choose a file to load.
          Global key shortcut "O".
 o "Save as" will open a file requester and let you choose a filename
          to save to.
          Global key shortcut "A".

 Global menu shortcuts will not be used for anything else anywhere.

2.3. Details
-------------

 This chapter will describe the programs behaviour and interface
 in detail. Mainly, all different windows are described one by one.

2.3.1. Startup
---------------

2.3.1.1. How to startup
------------------------

 You can startup VideoMaxe in two main ways: from CLI/Shell or from
 Workbench. From Shell, simply type

 	VM:VideoMaxe [RETURN]

 and from Workbench simply doubleklick on the VideoMaxe Icon.

 You may use an unlimited (unregarding the max allowed length for
 an argument line, 255 chars) amount of filenames as argument. Only
 files of the types VideoMaxe preferences, Layout preferences and
 projects are regarded and preloaded. For example from Shell you
 could type

 	VM:VideoMaxe MyFineLayout MyFineVideoCassettes [RETURN]

 . This would let VideoMaxe startup with the layout `MyFineLayout` and
 preload the project `MyFineVideoCassettes`. Certainly you have the same
 opportunities from WB, i.e. via doubleklicking one (or more) VideoMaxe
 project icon(s) or simply doubleklicking on an enhanced election
 including the VideoMaxe Icon. Sure u`ll get that straight.

2.3.1.2. Startup configuration
-------------------------------

 Though you can run VideoMaxe only with the file "VideoMaxe" copied
 anywhere to your (hard) disk, I strongly advice you to use the
 logical device "VM:". If you do not, however, you will have click
 away several requesters on every startup of VideoMaxe (but perhaps you
 like that).

 Note that if the logical device "VM:" is not present, it will
 - after one system request for it - automatically be assigned to
 the current directory on startup; note also that the directory
 "VM:Config" will be created if non-existent, and address your
 thanks to the style guide.

 Preloaded files:
 ~~~~~~~~~~~~~~~~

 o Default `VideoMaxe preferences file'
 o Default `Layout preferences file'

 o All default icons for the six different file types
    `Mask list file', `Project file', `Printer preferences file',
    `Video recorder file', `VideoMaxe preferences file' and
    `Layout preferences file'.

 o The Catalog-File "VideoMaxe.catalog", that may be located in
   "LOCALE:Catalogs/<lang>/" or in "<startup-cd>/Catalogs/<lang>".
   See your Amiga User Manual for more details about localization.

 o "VM:Config/VM.pic". Data for the title picture, shown with "About".
   Is not shown if you put it off in the `VideoMaxe preferences' or if
   VideoMaxe can`t open an adequate screen (PAL:Hires, 4 colours).

2.3.2. VideoMaxe preferences window
------------------------------------

 In this window the `VideoMaxe preferences' are edited.

 Gadgets
 ~~~~~~~
 o "Password". With this gadget you can adjust the password. Type
     the correct password here and leave the window via "OK". Then,
     the screen title should be changed to "<version> - Registered user".
     If not, then you have not typed the correct password.
 o "Mask list" file name of the default `mask list' for new projects.
 o "Video recorder" file name of the default `video recorder' for
     new projects.
 o "Printer preferences" file name of the default `printer preferences'
     for new projects.
 o "Copy projects?" lets you edit this flags of the
     `VideoMaxe preferences'.
 o "Save icons?" lets you edit this flags of the
     `VideoMaxe preferences'.
 o "Show picture with about?" lets you edit this flags of the
     `VideoMaxe preferences'.

 o "Mask list" file name of the default `mask list' for new projects.

 o "Project path" lets you edit the default directory path for the file
     requester when processing `project file's.
 o "Mask list path" lets you edit the default directory path for the file
     requester when processing `mask list file's.
 o "Printer preferences path" lets you edit the default directory path
     for the file requester when processing `printer preferences file's.
 o "Video recorder path" lets you edit the default directory path for
     the file requester when processing `video recorder file's.
 o "VideoMaxe preferences path" lets you edit the default directory path
     for the file requester when processing `VideoMaxe preferences file's.
 o "Layout preferences path" lets you edit the default directory path for
     the file requester when processing `layout preferences file's.

 Menus
 ~~~~~
 o "VideoMaxe preferences"
   o `Standard menus' "Load", "Open", Save", "Save as" are processing
       `VideoMaxe preferences file's.
 o "Specials"
   o "Start values" reactivates the values that were active when the
     window was entered.
   o "Default" activates the values of the hard coded VideoMaxe default.

 All disk operations can easily be done via the file requester by
 clicking on the gadgets right of the string gadgets.

2.3.3. Layout preferences window
---------------------------------

 In this window the `layout preferences' are edited.

 Gadgets
 ~~~~~~~
 o "Screen mode" pops up the system`s screen mode requester. Please
     refer to your Amiga for explanation.
     You can edit the screen mode here.

 o "Public screen?". If checked, the VideoMaxe screen will be a public
     screen. The public screen id is "VM-Screen".
     Don`t check this if you are not sure what a public screen is.
 o "Shanghai windows?". If checked, all VideoMaxe windows will be
     opened on the default public screen, else on the VideoMaxe screen.
     Don`t check this if you are not sure what the default public screen
     is.

 Use a public screen manager to handle the last two flags.

 o "Colours" lets you edit the screen`s colours.
     Not yet supported (04.20).
 o "Screen font" lets you edit the font to be used as screen`s default.
     Window and screen titles will be printed in that font.
 o "Menu font" lets you edit the font to be used for menu texts.
 o "Gadget font" lets you edit the font to be used for gadget texts.

 All font selectors pop up the system`s font selector window.

 Menus
 ~~~~~
 o "Layout preferences"
   o `Standard menus' "Load", "Open", Save", "Save as" are processing
       `layout preferences file's.
 o "Specials"
   o "Start values" reactivates the values that were active when the
     window was entered.
   o "Default" activates the values of the hard coded VideoMaxe default.

 Remember that, though not visible, the shapes (including the zoom
 state) of all VideoMaxe windows are hold here. They can`t be adjusted
 here, but the editor always contains the current shapes after entering
 it. It certainly does not contain the current shapes if you have
 previously loaded a layout from disk inside the editor.
 If you want the shape of the layout window to be snapshot
 as well, adjust the layout editor window and leave it via
 "Cancel", as "OK" should use the (perhaps loaded) values...

2.3.4. Project list window
---------------------------

 In this window the list of all currently loaded `project's is shown.

 Gadgets
 ~~~~~~~
 o The list gadget displays the current list of projects.
   The projects are represented in the list through their names (NOT
   their _file_ names!), preceded by "[ ] " for an unchanged, "[*] "
   for a changed project.
   You can add en entry to the list either by loading a project or
   by creating a new project via the standard "New" gadget. Latter
   will (load the standard files for new projects and then) pop up
   the project editor with the new project.
   You can delete a list entry by deleting an existing project
   in the project editor.
 o `Standard Gadgets'

 Menus
 ~~~~~
 o "Project"
   o `Standard menus' "Open", "Save", "Save as" are processing
     projects. The fixed file name of a project is the file name
     it has been loaded from.
   o "About" tries to show the VideoMaxe title picture if its
     flag in the `VideoMaxe preferences' is set and then shows
     some information about this version of VideoMaxe in a window.
   o "Iconify" will put VideoMaxe into iconification mode. That means
     that the screen will be closed and an application icon will
     be placed on the Workbench. You may drag `VideoMaxe preferences',
     `layout preferences' and `project' files onto the VideoMaxe app
     icon (in fact, you may drag anything onto it, but only these
     files will be processed...). Used mainly to gain memory and
     clean up the machine.
   o "Quit" will try to quit the program, equivalent to "Window Close".

 o "Preferences"
   o "VideoMaxe" will pop up the `VideoMaxe preferences window'.
   o "Layout" will pop up the `layout preferences window'.

 o "Specials"
   o "Swap two entries" will swap two entries in the project list
     however.

2.3.5. Project window
----------------------

 In this window a `project' is displayed and can be edited.

 Gadgets
 ~~~~~~~
 o "Name" is a string gadget containing the project`s name (NOT its
     file name !!)
 o The list selector gadget underneath the "Name" gadget let you
     choose between the different "list-display-modes":
   o "Title list sorted by name" displays all titles
       (in alphabetical order)
   o "Title list of tape" displays all titles of the active tape
       (sorted by their occurence on the tape)
   o "Title list of rubric" displays all titles of the active rubric
       (in alphabetical order)
   o "Title list sorted by date" displays all titles
       (sorted by their date)
   o "Clipped title list" displays all titles in the clipped title list.
 o "Rubric" displays the active `rubric' and let you freely choose
     a new active rubric from the project`s rubric list via the
     slider gadget above.
     The active rubric is always the rubric of the active title.
 o "Tape" displays the active `tape' and let you freely choose
     a new active tape from the project`s tape list via the
     slider gadget above.
     The active tape is always the tape of the active title.
 o The dominating list gadget contains the list of all titles of the
     active list. This active list is determined by the list selector,
     the active rubric and the active tape.
     In this list there is always one active `title' (or none, if the list
     has no entries) that is displayed at the bottom of the list. You
     can activate any title of the list by clicking onto it. By that,
     you will automaticallly change the active tape and active rubric.
     A doubleklick on a titel will pop up the `title window' with that
     title.
 o "Spool information" displays the spool information of the active
     title. The kind of this information depends on the adjustments
     in the project`s preferences: rest time, used time or counter.
     See Menus.
 o `Standard gadgets'.

 Menus
 ~~~~~
 o "Rubric"
   o "Edit" pops up the `rubric window' with the active rubric.
   o "New" pops up the `rubric window' for a new rubric.
   o "Choose" pops up a window with a list of all rubrics with the
       possibility to choose an new active rubric.
   o "Print" pops up the `print window' to print the rubric.

 o "Tape"
   o "Edit" pops up the `tape window' with the active tape.
   o "New" pops up the `tape window' for a new tape.
   o "Choose" pops up a window with a list of all tapes with the
       possibility to choose a new active tape.
   o "Search" pops up the `search for tape window'.
   o "Print" pops up the `print window' to print the tape.

 o "Title"
   o "Edit" pops up the `title window' with the active title.
   o "New" pops up the `title window' for a new title.
   o "Copy active title" pops up the `title window' for a new title,
       copying some data from the active title to the new (see
       Bug `-(7)').
   o "Search" pops up the `search for title window'.
   o "Print" pops up the `print window' to print the title.
   o "Add to clip list" adds the active title to the clipped title list
       of the project (if the active title is not already the clip list).
   o "Remove from clip list" removes the active title from the clipped
       title list of the project (if the active title is in the clip list).

 o "Preferences" lets you adjust the preferences of the displayed
     project.
   o "Spool information"
     o "Used time" advices VideoMaxe to normally display the used time
         as spool information for a title.
     o "Rest time" advices VideoMaxe to normally display the rest time
         as spool information for a title.
     o "Counter" advices VideoMaxe to normally display the calculated
         counter position referring to the adjusted `video recorder'
         as spool information for a title.
   o "Mask list" pops up the `mask list window' with the mask list
       of the project.
   o "Video recorder" pops up the `video recorder window' with the
       project`s `video recorder'.
   o "Articles" pops up the a string request window with the `project'`s
       article string. See `Alphabetical order concept'.
   o "Printer" pops up the `printer preferences window' with the
       project`s `printer preferences'.

 o "Specials" covers some special features.
   o "Start values" sets all data of the displayed project back to
       the values it had when entering the window. Only accessable
       if you have "Copy Projects?" on in the `VideoMaxe preferences'
       (or with new projects).
   o "Mask" covers some special features handling the titles `mask's.
       (The texts of these items are long enough to be self-explaining...)
   o "Print"
     o "Rubric list" pops up the `print window' to print the rubric list.
     o "Tape list" pops up the `print window' to print the tape list.
     o "Active title list" pops up the `print window' to print the
         current title list.
   o "Statistics" pops up a window with some more or less interesting
       numbers and diagrams.
   o "Clear clipped title list" will delete all titles from the clipped
       title list.

2.3.6. Rubric window
---------------------

 In this window a `rubric' is displayed and can be edited.

 Gadgets
 ~~~~~~~
 o "Name" lets you edit the name of the rubric.
 o `Standard gadgets'.

 Menus
 ~~~~~
 o "Specials"
   o "Start values" reactivates the values that were active when the
       window was entered.

2.3.7. Tape window
-------------------

 In this window a `tape' is displayed and can be edited.

 Gadgets
 ~~~~~~~
 o "Number" lets you edit the number of the tape. The tape number
     is an id for a tape.
 o "Length" lets you edit the length of the tape. A RETURN or TAB
     in this gadget will perform a default calculation of the tape
     overhang.
 o "Tape overhang" lets you edit the overhang of the tape.
 o "Mask entry list" pops up the `mask entry list window' with the
     mask entry list of that tape.
 o "Show tape" will display the tape in an asynchronous window if
     checked.
 o `Standard gadgets'.

 Menus
 ~~~~~
 o "Specials"
   o "Start values" reactivates the values that were active when the
       window was entered.
   o "Tape overhang"
     o "Default" calculates a normal tape overhang, depending on the
         value in the "Length" gadget. A tape with 240 minutes for
         example has a default tape overhang of 4 minutes.

2.3.8. Title window
--------------------

 In this window a `title' is displayed and can be edited.

 Gadgets
 ~~~~~~~
 o "Name" lets you edit the name of the tape. There may be multiple
     titles with the same name.
 o "Tape" lets you edit the tape the title is recorded on. You can`t
     change the tape if you are editing an existing title.
 o "Rubric" lets you edit the rubric the title is classified to.
 o "Length" lets you edit the title's length. The first gadget
     contains the minutes, the latter the seconds. Normally you`ll
     not use the seconds, but they`re there if you for example want
     to store pieces of music.
 o "Compression factor" lets you edit the compression factor.
     See `Title' for explanation.
 o "locked" lets you edit the status of the title. See
     `suggestions window'.
 o "Date" lets you edit the title`s date. For new titles, this is
     initially set to the current date.
 o "Time" lets you edit the title`s time. For new titles, this is
     initially set to the current time.
 o "Mask entry list" pops up the `mask entry list window' with the mask
     entry list of the title.

 o "Suggestion exists?". If checked, this means that there is a
     suggestion present. A click on it then means killing the
     present suggestion. If it is not checked, a click on this gadget
     will pop up the `suggestions window', presenting the
     `suggestion concept'.
     Can only be accessed if you`re editing a new title.
 o "Accept suggestion?". If checked, this will cause VideoMaxe to
     regard the existing suggestion when choosing "Ok". Can only be
     accessed if a suggestion exists.
 o "Show tape?" will display the tape of the title in an asynchronous
     window if checked. Mutual excludes with "Show suggestion?".
 o "Show suggestion?" will display the active suggestion of the title
     in an asynchronous window if checked.
     Mutual excludes with "Show tape?".
     Can only be accessed if a suggestion exists.

 o `Standard gadgets'.

 Menus
 ~~~~~
 o "Specials"
   o "Start values" reactivates the values that were active when the
       window was entered.
   o "Compression factor". See `Title' for explanation.
     o "none" will set the compression factor to 1.
     o "Long play" will set the compression factor to 2.
   o "Date"
     o "Start values" reactivates the values for date AND time that
         were active when the window was entered.
     o "current" will set the date AND time of the title to the current
         date and time.

2.3.9. Mask list window
------------------------

 In this window a `mask list' is displayed and can be edited.

 Gadgets
 ~~~~~~~
 o The gadget containing the list of the masks. The entries are
    represented by their `mask' names, arbitrary order.
    A click on an entry will activate it, a doubleclick will
    pop up the `mask window' with the mask in question.
 o `Standard gadgets'.

 Menus
 ~~~~~
 o "Mask list"
   o `Standard menus' "Open", "Save As" are accessing mask lists.
 o "Specials"
   o "Start values" reactivates the values that were active when the
       window was entered.
   o "Swap two entries" gives you the opportunity to swap to mask
       positions in the list.

2.3.10. Mask window
-------------------

 In this window a `mask' is displayed and can be edited.
 If you are editing the first mask of the project`s `mask list',
 the window title will be "Default mask for new tapes", if
 you are editing the second mask it will be "Default mask for new
 titles".

 Gadgets
 ~~~~~~~
 o "Name" lets you edit the mask`s name.
 o "Mask entry list" pops up the mask `entry list window' with the
     mask entry list of the mask
 o `Standard gadgets'.

 Menus
 ~~~~~
 o "Specials"
   o "Start values" reactivates the values that were active when the
       window was entered.

2.3.11. Mask entry list window
------------------------------

 In this window a `mask entry list' is displayed and can be edited.

 Gadgets
 ~~~~~~~
 o An unlimited amount of gadgets representing a `mask entry'.
    The VALUES of these mask entries can be edited here, their
    type and name are changed in a `mask entry window'.
    Thus, there may be three different kinds:
   o On/Off type. Displayed by a checkbox-gadget, followed by the
      mask entry`s name.
   o Number kind. Displayed by the mask entry`s name followed by
      an integer gadget.
   o Text kind. Displayed by the mask entry`s name followed by
      a string gadget.
 o A mutual exclude gadget that lets you choose the active mask
    entry. Visibly through circles preceding the mask entries.
 o `Standard gadgets'.

 Menus
 ~~~~~
 o "Specials"
   o "Start values" reactivates the values that were active when the
       window was entered.
   o "Swap two entries" gives you the opportunity to swap to mask
       entry positions.
   o "Use a mask" lets you choose a mask of the project`s mask list
       to use its mask entry list in this window.
   o "Append a mask" lets you choose a mask of the project`s mask list
       to append its mask entry list to the active mask entry list in
       this window.
   o "Merge a mask" lets you choose a mask of the project`s mask list
       to merge its mask entry list with the active mask entry list in
       this window. This is like "Append ...", but mask entries with
       a name that is already existent in the active list are not
       appended.

2.3.12. Mask entry window
--------------------------

 In this window a `mask entry' is displayed and can be edited.

 Gadgets
 ~~~~~~~
 o "Name" lets you edit the name of the mask entry.
 o The list kind gadget lets you edit the type of the mask entry.
   You can choose:
   o "On/Off type" to store a boolean value with this mask entry.
   o "Number type" to store a number with this mask entry.
   o "Text type" to store a text with this mask entry.
 o `Standard gadgets'.


2.3.13. Suggestions window
---------------------------

 In this window the `suggestion concept' for a given actual title
 length is presented with option to select a suggestion.

 Gadgets
 ~~~~~~~
 o "Required space of time" displays the actual length for that
     suggestions are requested.
 o "Free spaces of time" displays the suggestions for free spaces
     of time for the required space of time. A click on an entry
     will activate it and display the suggestion in question in
     an asynchronous window. A doubleclick on an entry
     will select that suggestion and exit the suggestions window.
 o "Used spaces of time" displays the suggestions for used spaces
     of time for the required space of time. A click on an entry
     will activate it and display the suggestion in question in
     an asynchronous window. A doubleclick on an entry
     will select that suggestion and exit the suggestions window.

 o `Standard gadgets'.


2.3.14. Search for tape window
--------------------------------

 In this window you can comfortably search for a `tape'.

 Gadgets
 ~~~~~~~
 o "Text to search for" lets you edit the token that should be found.
 o The 1st cycle gadget lets you adjust the following search options:
   o "Search for full text" will search for the occurence of the full
       text "as it is" given as token.
   o "Search for pattern" will search for any occurence of the token
       and will not regard case sense.

 o The 2nd cycle gadget lets you adjust the following search options:
   o "Search in tape name only" will only search in the "number" field
       of the tapes. Note that for that purpose, token will be
       transformed into a number.
   o "Search in all texts" will search in all texts. That means, it
       will search in the "number" field AND in all mask entries of the
       type text. See `mask entry'.

 o "Clear" will set the active tape to NIL. That means that the next
     search via "Next Matching" will be started at the beginning of
     the tape list.
     Will be shown by the text "No more matching entries" in the
     "Found tape"-Gadget.
 o "Next matching" will perform a search with the adjusted options.
     See "Found tape" for more information.
 o "Found tape" displays the found tape.
     This is simultaneously the active tape, used as list position
     where to start the search from. There are three possible entries:
     o "Not searched yet". Active tape NIL. Search starts at the
         beginning of the list. Initial entry.
     o "No more matching entries". Active tape NIL. Search starts at the
         beginning of the list. Entry after "Clear" or unsuccesful
         search.
     o The name of a tape. Active tape not NIL. Search starts directly
         after the active tape. Entry after successful search.

 o `Standard gadgets'. "Ok" will take over the active tape.

2.3.15. Search for title window
--------------------------------

 In this window you can comfortably search for a `title'.

 Gadgets
 ~~~~~~~
 o "List to search in" displays the list that will be used for
     the search. This value depend on from where the search was
     called.

 o "Text to search for" lets you edit the token that should be found.
 o The 1st cycle gadget lets you adjust the following search options:
   o "Search for full text" will search for the occurence of the full
       text "as it is" given as token.
   o "Search for pattern" will search for any occurence of the token
       and will not regard case sense.

 o The 2nd cycle gadget lets you adjust the following search options:
   o "Search in title name only" will only search in the "name" field
       of the titles. Please note that that means you will search in
       the "key"-strings of the titles only.
       See `Alphabetical order concept'.
   o "Search in all texts" will search in all texts. That means, it
       will search in the "name" field AND in all mask entries of the
       type text. See `mask entry'.

 o "Clear" will set the active title to NIL. That means that the next
     search via "Next Matching" will be started at the beginning of
     the list we are searching in.
     Will be shown by the text "No more matching entries" in the
     "Found Title"-Gadget.
 o "Next matching" will perform a search with the adjusted options.
     See "Found title" for more information.
 o "Found title" displays the found title.
     This is simultaneously the active title, used as list position
     where to start the search from. There are three possible entries:
     o "Not searched yet". Active title NIL. Search starts at the
         beginning of the list. Initial entry.
     o "No more matching entries". Active title NIL. Search starts at the
         beginning of the list. Entry after "Clear" or unsuccesful
         search.
     o The name of a title. Active title not NIL. Search starts directly
         after the active title. Entry after successful search.

 o `Standard gadgets'. "Ok" will take over the active title.


2.3.16. Printer preferences window
-----------------------------------

 In this window the `printer preferences' are displayed and can be edited.

 All real values in centimeters.

 Gadgets
 ~~~~~~~
 o Configuration number lets you select the `printer preferences'
     configuration that should be displayed in this window.
   o "1st configuration" to "4th configuration"
 o "Name" lets you edit the name this print configuration.
 o "Paper length" lets you edit the length of the paper to print to.
 o "Paper width" lets you edit the width of the paper to print to.
 o "Print length" lets you edit the length of the print output
     inside the paper length.
 o "Print width" lets you edit the width of the print output
     inside the paper width.
 o "Left margin" lets you edit the position the print should start
     from the left.
 o "Flip Margins?". If checked, margins will be flipped (e.g. for
     "two-sides-print".
 o "Lines Per Inch?" lets you select the horizontal print depth.
 o "Characters Per Inch?" lets you select the vertical print depth.

 o "Print tape" lets you select how to print a tape.
   o "nothing" prints no tape.
   o "little" prints crucial informations.
   o "medium" prints enough informations.
   o "verbose" prints a damn lot of informations.

 o "Print title" lets you select how to print a title.
   o "nothing" prints no title.
   o "little" prints crucial informations.
   o "medium" prints enough informations.
   o "verbose" prints a damn lot of informations.

 o "Letter quality?". If checked, print will be in LQ mode.
 o "Proportional?". If checked, print will be proportional.

 o `Standard gadgets'

 Menus
 ~~~~~
 o "Printer preferences"
   o `Standard menus' "Open", "Save as" are processing
       `printer preferences files'.
 o "Specials"
   o "Start values" reactivates the values that were active when the
     window was entered.
   o "Default" activates the values of the hard coded VideoMaxe default.

2.3.17. Print window
---------------------

 This window lets you perform a print. It depends on how this
 window has been entered what will be printed.

 Please read `-(15)'.

 Gadgets
 ~~~~~~~
 o "Head line" lets you edit the head line of the print.
     Initially this will be a senseful text that tells what
     will be printed.
 o Configuration number lets you select the `printer preferences'
     configuration that should be used with the print.
   o "1st configuration" to "4th configuration"
 o "Tape mask" lets you choose how to print the mask entry lists
     of tapes.
   o "nothing" prints no mask entry lists.
   o "all" prints every mask entry of the mask entry lists.
   o "filtered" prints only the mask entries that are in the
       chosen mask. Only if this is selected, you can choose
       a mask out of the project`s mask list.
 o "Title mask" lets you choose how to print the mask entry lists
     of titles.
   o "nothing" prints no mask entry lists.
   o "all" prints every mask entry of the mask entry lists.
   o "filtered" prints only the mask entries that are in the
       chosen mask. Only if this is selected, you can choose
       a mask out of the project`s mask list.
 o `Standard gadgets'. Note that "Ok" will perform the print.

 Menus
 ~~~~~
 o "Specials"
   o "Change printer preferences" pops up the
       `printer preferences window' with the active printer preferences.
       Initially, the active printer preferences are the printer
       preferences of the project print has been called from.
       Changing the preferences here will never have an impact on
       the project`s printer preferences but only locally on this
       window.

2.3.18. Video recorder window
------------------------------

 In this window a `video recorder' is displayed and can be edited.

 Gadgets
 ~~~~~~~
 o "Name" lets you edit the name the video recorder whose counter
     functions are edited.
 o The cycle gadget lets you edit the function to edit.
   o "1st counter" to "4th counter" for the four possible counter
       functions.
 o "Preferred tape length" lets you edit the preferred tape length
     for the selected function.
 o "Entry number" displays and lets you edit the active entry number.
     A counter function consists of nothing else but an array of REALs
     that each are accessed by an number. These numbers range from 0
     to 40 and every such number represents exactly one "Minute".
 o "Minute" displays the minute the entry number represents.
 o "Movement for minute" lets you edit the movement per minute for
     the minute displayed in the "Minute"-gadget.
     RETURN will increase the entry number by one (and thus change the
     minute) and lets you edit the next value.
     Please see `Video recorder' and `Spool information system'.

 o `Standard gadgets'

 Menus
 ~~~~~
 o "Video recorder"
   o `Standard menus' "Open", "Save as" access `video recorder file's.
 o "Specials"
   o "Start values" reactivates the values that were active when the
     window was entered.
   o "Default" activates the values of the hard coded VideoMaxe default.


3. History
===========

 This chapter consists of two parts, namely `Changes' and `Bugs'.
 The first contains changes (improvements, addings, minor bugs)
 made in newer releases.
 The second part covers all major bugs found (and mostly solved)
 in various releases of VideoMaxe.

3.1. Changes
-------------

 Starting programming in 1989, releasing a first version openly
 in 1990 (02.11). Starting here with the last 1.3 release.

 Date is always the final compilation date.

3.1.1. Release 03.24
---------------------

 Date: 22 May 1992

 This is the last version of VideoMaxe for WB 1.3.

 Refer to the 03.24 documents for details.

3.1.2. Release 04.00_beta
--------------------------

 Date: 25 Feb 1993

 Initial 4.00 version. Had the remark not to use it as it was a
 beta version and might be (and was...) bogus.

 Though successor of VideoMaxe 03.XX, so much changes have been
 made that it is in fact a new program with completely new
 documentation required.

 o Added all the numberless fabulous features the 04 versions of
   VideoMaxe!!!
 o All file formats changed. Opportunity to update project and
   video recorder (old "Treiber"-) files.

3.1.3. Version 04.10
---------------------

 Date: 16 Apr 1993

 Major bug fix release. First 04 release allowed to work with.
 See `Bugs'.

 o Changed "VM:Prefs" to "VM:Config" (style guide)

3.1.4. Version 04.11
---------------------

 Date: 26 Apr 1993

 Minor bug fix release. Done this mainly because of the embarrassing
 bug `-(12)'.

 o some minor bug fixes
 o you do not have to press "TAB" or "ENTER" to really read the
   search texts in the search title and the search tape windows;
   that was really irritating sometimes. Some gadget position
   have changed as well...
 o added french catalog. Thanks Leif!

3.1.5. Version 04.12
---------------------

 Date: 06 May 1993

 Minor bug fix release, fixing bug `-(13)' that irritated some
 american NTSC-only-machine users...

 o Improved the documentation

3.1.6. Release 04.20
---------------------

 Date: 16 Sep 1993

 Major update release.

 o Finally found bug why program crashed when dragging a file onto
   VideoMaxe`s application icon. Now you`re able to drag `project's,
   `VideoMaxe preferences' and `layout preferences' onto VideoMaxe`s
   app icon in iconification mode.
 o Comparing strings now with the localized compare from the locale
   library (collate 2). No longer capitalize the title's strings
   for exactly that reason.
 o Won`t save icon now if there is already one existing when saving
   a file. Saved icons will now have a no fixed icon position.
 o Redrawed all VideoMaxe icons.
 o Created in-program-code for the default layout window shapes.
   This will let VideoMaxe`s default pal layout look much better
   (try it in the `layout preferences window', before all windows
   were as big as the screen). Useful when the  "VM:Config/LO.prefs"
   file however couldn`t be loaded.
 o Every project now contains a clipped title list, accessable in the
   `project window'.
 o Completed the documentation, writing my fingers down to rather
   short sticks
 o Finally wrote an installer script. Will now do
   minor updates, new installation, full version decoding, file
   updating
 o No longer automatically capitalizing rubric names. This will
   however not lead to compatibility problems, as these strings
   were actually saved big and not only internally computed.
 o Added shortcuts for important menus.
 o Put "Public screen?" and "Shanghai windows?" flags to work.
 o Slight change needed in "Search for title" because of no longer
   capitalizing title's key strings: "Search for full text" will now
   regard case sense, only "Search for pattern" will not.
   Embedded same behaviour into "Search for tape".
 o new catalog file created (version 3). German updating, French updating
   by Leif Kornstaedt (Thanks, Leif!).
 o Finally dropped the coded/light version schnick-schnack. Now you
   can simply edit the password in the vm prefs, and according to its
   correctness some features are blocked or not...

3.2. Bugs
----------

 Bugs are found in programs in multiple ways; there are small bugs,
 funny and ugly bugs, and, of course, there are bugs not even
 Commodore knows where they came from.

 But now for something completely different:

 o The bugs listed beneath are known bugs only; thus, that list is not
   complete in what way soever.
 o Furthermore, it may be that even some known "bugs" do not occur in
   the list. For one thing, they may be too "small" so that I decided
   not to mention them (and there are many of these, mentioned as
   "done minor bug fixes" in "Changes"). The other thing
   is that I might not consider some strange behaviour as "bug", though
   other may do.

 And here`s the list:

 Convention:

 +(<bugNo>)	= Bug number <bugNo> is not yet fixed
 -(<bugNo>)	= Bug number <bugNo> is fixed in current version


3.2.1. -(1)
------------

 In version	: 04.00_beta (08.03.93)
 Location	: Everywhere
 Situation	: More than one window is open
 Error		: The IDCMP-Port of the unactive window is not blocked
 Ok since	: Release 04.10
 Notes		: This isn`t really a "bug", I simply haven`t implemented
                  that yet. So watch out if VideoMaxe does not react...


3.2.2. -(2)
------------

 In version	: 04.00_beta (08.03.93)
 Location	: Reopening VideoMaxe (from iconification)
 Situation	: Not enough free (chip) ram available
 Error		: VideoMaxe will assert (so all previously loaded (and
		  perhaps changed) projects will be lost)
 Ok since	: Release 04.10
 Notes		:


3.2.3. -(3)
------------

 In version	: 04.00_beta (08.03.93)
 Location	: Save project
 Situation	: A loaded project`s path+filename is longer than 80 chars
		  and you select the menu item "Save"
 Error		: The complete filename will be cut off and the project will
		  be tried to save to that wrong name; this might cause
		  an error (that`s the best case) or the project might be
		  saved to that wrong name. This latter behaviour is _VERY_
		  ugly, as it may overwrite (without further request) an
		  already existing file that coincidentially has exactly
		  this name...
 Ok since	: Release 04.10
 Notes		: Fortunately, the worst case situation described above is
		  not very probable


3.2.4. -(4)
------------

 In version	: 04.00_beta (08.03.93)
 Location	: Project
 Situation	: Use one of the special mask operations
 Error		: VideoMaxe does not recognize the project to be changed
 Ok since	: Release 04.10
 Notes		:


3.2.5. -(5)
------------

 In version	: 04.00_beta (08.03.93)
 Location	: Project
 Situation	: Change the active list via the mx-gadget while there
		  is no active title
 Error		: VideoMaxe will not refresh the spool information even
		  if the selection of the new list provides an active title
 Ok since	: Release 04.10
 Notes		:


3.2.6. -(6)
------------

 In version	: 04.00_beta (08.03.93)
 Location	: Main
 Situation	: Starting up VideoMaxe
 Error		: First, the about information is shown and then the args
 		  are loaded; this should be the other way round
 Ok since	: Release 04.10
 Notes		:


3.2.7. -(7)
------------

 In version	: 04.00_beta (08.03.93)
 Location	: Copied Title
 Situation	: The title window starts with the advice to to copy a
 		  title
 Error		: ALL informations are copied while is is very unuseful
 		  to copy the date information; it should have the value
 		  of the current time
 Ok since	: Release 04.10
 Notes		: I will add the pre-text "Copy of " to the name of the
 		  title as well (and will think about other values useful
 		  to copy or not)


3.2.8. -(8)
------------

 In version	: 04.00_beta (08.03.93)
 Location	: Everywhere
 Situation	: Closing a window
 Error		: In this situation VideoMaxe should get both the normal
 		  window sizes & the zoomed window sizes. Somehow this
 		  goes astray.
 Ok since	: Release 04.10
 Notes		:


3.2.9. -(9)
------------

 In version	: 04.00_beta (08.03.93)
 Location	: Everywhere
 Situation	: Intuition`s window refresh (caused by window size change)
 Error		: After this operation the window will refresh its frame
		  each time the right mouse button is pressed
 Ok since	: 04.20
 Notes		: This can be _very_ annoying if you have more of those
		  windows, as the refreshing steals your time. Obviously
		  my refreshing procedure is innocent, so why is this???


3.2.10. +(10)
--------------

 In version	: 04.00_beta (08.03.93)
 Location	: Everywhere
 Situation	: You`ve choosed a proportional gadget font in the layout
		  preferences
 Error		: The gadget real time calculations will be (slightly)
		  wrong
 Ok since	:
 Notes		: Until this bug is fixed, I leave it open to you to
		  choose a proportional gadget font. Perhaps you find one
		  that will do...


3.2.11. -(11)
--------------

 In version	: 04.00_beta (08.03.93)
 Location	: Project list -> Project
 Situation	: Ram-Cloning a project
 Error		: Titles are inserted in alphabetical order. As the titles
		  are managed in a binary tree as well (and I haven`t
		  implemented AVL-Trees...), the tree of the cloned project
		  becomes a linear list. Employing the recursive search
		  procs (and these are used in the copying routine itself)
		  then very likely leads to a stack overflow error...
 Ok since	: Release 04.10
 Notes		: The titles are now inserted according to the tape title
		  lists as it should be (and is handled saving projects).
		  Thus, I hope to have the best chance to get an more or
		  less balanced tree.

3.2.12. -(12)
--------------

 In version	: 04.10
 Location	: Suggest
 Situation	: Choosing a suggestion for used spaces that does fully
		  overplay (at least one) title (indicated by only one
		  ">")
 Error		: VideoMaxe will Assert with an error message that can
		  only be understood by me :+).
 Ok since	: Release 04.11
 Notes		: There were three words missing in the source after I
		  had slightly changed the meaning of a datatype :-|.
		  It was something like "AND (end # NIL)"...

3.2.13. -(13)
--------------

 In version	: 04.11
 Location	: Starting up VideoMaxe
 Situation	: Can`t open the screen though enough memory available
		  (e.g. because of an unexistent screen mode).
 Error		: VideoMaxe will give the error message "Not enough
		  memory available!" instead of "Can`t open screen!".
		  Furthermore, VideoMaxe will not try to open a screen
		  with another (available) screen mode.
 Ok since	: Release 04.12
 Notes		: Reported to me by Matt Simmons.
		  In fact, you might get trouble if you want to START
		  VideoMaxe of Releases 04.11- on a pure NTSC machine
		  (though certainly the programs runs with any screen
		  mode), as you can`t change the preloaded layout
		  preferences file.

3.2.14. -(14)
--------------

 In version	: 04.00
 Location	: Starting up VideoMaxe
 Situation	: A library VideoMaxe needs is not available.
 Error		: The program SHOULD assert with the dos exit code
		  FAILED (but one should not believe an compilers
		  manual...). The program DOES mostly assert with an
		  ILLEGAL INSTRUCTION ALERT however.
 Ok since	: Release 04.20
 Notes		: As M2Amiga automatically opens the used libraries,
		  I`ve no chance to explicitely test all needed
		  libraries - the runtime system is doing that for
		  me (with this noted bug...). _I_ can`t correct
		  this but will now link a run time file that at
		  least shows which library could not be opened (though
		  code will thus increase).



3.2.15. -(15)
----------------

 In version	: 04.12
 Location	: Print routine
 Situation	: Printing with certain printer drivers (e.g. EpsonX)
 Error		: Printer device will produce an error when initializing
		  the printer (though the used commands are known to the
		  driver); this will let VideoMaxe cancel the print job.
 Ok since	: Release 04.20
 Notes		: Obviously no failure of my print routine. I did the
		  following to improve VideoMaxe failure handling:

		  o survey the printer device error flag after every
		    ANSI command sent to it and

		    # display any _known_ error as plain text with the
		      last used ANSI command
		    # display any unknown error with the last used ANSI
		      command
		    # let the user decide after any of those errors if
		      he wants to cancel, proceed or proceed & ignore
		      the following errors

3.2.16. -(16)
--------------

 In version	: 04.12
 Location	: Startup
 Situation	: Starting VideoMaxe up from Workbench with VM: not
		  assigned.
 Error		: VideoMaxe will not automatically assign VM: to the
		  current directory (see `Startup Configuration').
 Ok since	: Release  04.20
 Notes		: Did look for the cli-structure only...

3.2.17. -(17)
--------------

 In version	: 04.10
 Location	: Saving `project file'
 Situation	: Save ("Save", `Standard menus') a new project.
 Error		: Access to NIL: as no default string present-program
 		  assert
 Ok since	: Release  04.20
 Notes		: Never done this, discovered by chance!!
 		  Now ignoring such call.

3.2.18. -(18)
--------------

 In version	: 04.12
 Location	: Startup VideoMaxe
 Situation	: Supply a `layout preferences file' as argument
 Error		: Won`t open the correct screen
 Ok since	: Release  04.20
 Notes		: Simply corrected the order of the startup sequence.
 		  Rather foolish error...

3.2.19. -(19)
--------------

 In version	: 04.12
 Location	: Delete a title
 Situation	: U wanta delete a title with length zero
 Error		: Won`t be able to do that if it is not last on tape.
 Ok since	: Release  04.20
 Notes		: Sure you should be able to delete a title with length
 		  zero any time. In fact, you could not delete such titles
 		  at all if they weren`t last on tape...now you can.

3.2.20. -(20)
--------------

 In version	: 04.12
 Location	: Release package
 Situation	: -
 Error		: An absolutely senseless file "Install.bat" was included.
 Ok since	: Release  04.20
 Notes		: No idea how that file got there...

3.2.21. -(21)
--------------

 In version	: 04.00
 Location	: Startup
 Situation	: Old catalog loaded
 Error		: String mixup
 Ok since	: Release  04.20
 Notes		: Delivered OC_Version with zero, because nothing else
 		  would work with OpenCatalog. A bug in M2Amiga?
 		  Now testing for version differently.

4. Thanks to...
================

 Jens Stumpe for painting the title picture.
 Leif Tobias Kornstaedt for the French translation.

 All programmers for their PD soft that makes my Amiga worth living!!


5. The Author
==============

 The author is me and I am the author.


                Send many letters to:
                ~~~~~~~~~~~~~~~~~~~~~
 		Stephan Sürken
 		Kurt-Schumacher-Str. 34 A 161
 		D-67663 Kaiserslautern


                Send a lot of mails to:
                ~~~~~~~~~~~~~~~~~~~~~~~
		s_suerke@informatik.uni-kl.de


                Send much money to:
                ~~~~~~~~~~~~~~~~~~~
                Bank account at: Stadtsparkasse Kaiserslautern, FRG

		BLZ: 540 501 10		identity of bank in germany
		KTO: 128 029 758	number of my bank account


                For urgent questions call D-0631-15045.

 Enjoy!

 Stephan.
