Document VideoMaxe Release 04.30 documentation VideoMaxe Program Guide ~~~~~~~~~~~~~~~~~~~~~~~ VideoMaxe Release 04.30 © Stephan Sürken 1994 Closed on 13 Jan 1994 0. Important ============= 0.1. Copyright & legal stuff ----------------------------- All releases of VideoMaxe are (c) Copyright Stephan Sürken 1989-94. All versions of VMConvert are (c) Copyright Stephan Sürken 1992-93. The whole package is SHAREWARE, that means you may distribute it freely (if you stick to the terms below) but if you really USE it, you must send me a donation for registration. A registration is valid for all VideoMaxe releases with the same 'main-version' (currently 4); that means if you register now, you have the right to get all updates + passwords for all releases up to version number 04.99. Practically (as I fear I won't find so many improvements to justify a main version 5) your registration will be valid unlimited... Without the password, you will not be able to create own mask entry lists (but you can use the delivered examples) and some nerving requesters will show up now and then. However, even without the password you can work properly with VideoMaxe -- but _please_ don't forget to register if you really like it :-). Registered users will be informed of major updates (e.g. from 04.10 to 04.20). See `How to register'. IF YOU DISTRIBUTE VideoMaxe, you MUST copy the whole original archive. Exceptions: o You may leave out the foreign software packages (see below) -- but if you do so, you must include a new, own README file that says what changes you did to the archive. o You may freely distribute separately both documentation files "VideoMaxe.doc" or "VideoMaxe.guide" if you let them unchanged. IF YOU DISTRIBUTE VideoMaxe 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. Foreign software products ~~~~~~~~~~~~~~~~~~~~~~~~~ (1) The Installer software (c)Commodore The whole unchanged archive as provided by Commodore is placed in the 'Tools'-directory. Please refer to the contents of that archive for documentation & installation of INSTALLER. Note that with WB 2.1+, you already should have the Installer program. You need the installer to run the multi-purpose VideoMaxe installation script. (2) The AmigaGuide software (c)Commodore The two files 'AmigaGuide' (& its icon) and 'amigaguide.library' are included in this archive in the 'Tools' directory. Please note: AmigaGuide, AmigaGuide.info, amigaguide.library, WDisplay, WDisplay.info (c) Copyright 1991-93 Commodore-Amiga, Inc. All Rights Reserved. Reproduced and distributed under license from Commodore. AMIGAGUIDE SOFTWARE IS PROVIDED "AS-IS" AND SUBJECT TO CHANGE; NO WARRANTIES ARE MADE. ALL USE IS AT YOUR OWN RISK. NO LIABILITY OR RESPONSIBILITY IS ASSUMED. To install the AmigaGuide, simply copy 'amigaguide.library' to your 'libs:' directory and 'AmigaGuide' to your 'SYS:Utilities' directories, which is the recommended installation. For both files please check first if you haven't got a more recent version already installed! You need 'AmigaGuide' to view the documentation file 'VideoMaxe.guide' and the 'amigaguide.library' to be able to use its features with VideoMaxe. 0.2. Release Notes ------------------- VideoMaxe 04.30, © Stephan Sürken. Needs VideoMaxe.catalog 4. See `History' and `Release 04.30' for changes. Compiled with M2Amiga, Release 4.2. Program is reentrant, creates a min stack of 20000 Byte automatically. A needed but not existing library causes an program assertion with an "Arts" error message. All run time checks are off to make the program fast - so, unfortuneately some (unknown) bugs could lead to a system crash instead of a fine M2Amiga assert message. Special compilations for better CPUs possible if requested. 0.3. How to register --------------------- Note that any earnest usage of VideoMaxe leads to the necessity to register. Especially, you MUST NOT use the 'limited' VideoMaxe without registration. You can register and thus obtain the password by sending me a shareware donation of 30,- Deutsche Mark or 20,- US Dollar or an equivalence in other currencies. Practically, the procedure should be like this: 1st: Contact me, indicating that you want to register. Tell me your full name & address & what version of VideoMaxe you use. E-Mail appreciated. 2nd: Transmit the money, in what way ever you think it's appropriate (cash in snail mail, transfer to my bank account, cheque, etc.). Please identify yourself sufficiently, so that I can find out who sent me the money... Certainly, you may combine 1st & 2nd, e.g. in one snail mail... If you have done so, you are a registered user. I will then contact you & give you the password(s). NOTE that you will not get an update then. See `How to get updates'. Certainly, you may combine registering & getting an update, e.g. in one snail mail... See `The Author' for addresses. See `Copyright & legal stuff' for your rights & advantages as registered user. See `VideoMaxe preferences window' for how to employ the password. 0.4. How to get updates ------------------------ There are two ways to get an update of VideoMaxe: o Look out for PD Series or any other place were PD resp. ShareWare is open for the public. Hints: I will always upload the newest version to the _AmiNet_. I will always ask A.P.S. to include the newest version on a _TIME_ PD disk. I will always ask Fred to include the newest version on a _Fish_ PD disk. o Send to me via snail mail: - A disk (3.5" DD) - an sufficiently stamped return-envelope (international answering formular appreciated; innerhalb Deutschlands 2,- DM Porto) - 10,- DM/Dollar (for my endeavour) [- 30,- DM/20,- Dollar additionally, ONLY if you simultaneously want to] [ register. See `How to register'. ] I will the return the return-envelope with the newest version. 0.5. 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 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.6. Rise from VideoMaxe 04.20 to 04.30 ---------------------------------------- If you have used VideoMaxe 04.00-04.20, you can update your mask list, project, video recorder and printer preferences files. VideoMaxe preferences files cannot be updated and layout preferences files haven't changed their format. The conversion is done by the CLI-tool "VMConvert", residing in the "Tools" directory of the original archive. 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.7. 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 on the system`s default public screen, change the `layout preferences' in VideoMaxe to your wishes & "Save" it (see bug `-(13)'). 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? If so, please restrict yourself to the `Documentation' chapter and contact me before. 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.0. Introduction ------------------ VideoMaxe is a video database that satisfies all needs of a private video user (when I say all I mean all, so if you think that's false please write me your suggestion(s)). It has nearly no `limitations' whatsoever (all data strings are dynamic, no matter what video system you use, no matter what compression your video can record, no matter to catalogize films, music or whatever, no matter how much information you want to carry with a title or tape, ....[see `Concepts' for more]), it has a comfortable OS 2.1 environment, it offers six different file types to store your data, etc. See `Features' below for more. The following is the old text for this chapter, but as I spend so much time producing it, I don't dare to delete it (yet...:#): (* START OLD INTRODUCTION TEXT *) I now that many video organizers already exist. Among these, I did not find one that would satisfy all features I wanted nor have the environment I demanded. (Please watch out because this is the OLD introduction text that you are reading.) 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! (* STOP OLD INTRODUCTION TEXT *) 2.0.1. Features ---------------- (only some features that just come to my mind...) Environment: ~~~~~~~~~~~~ o Full OS 2.0/2.1 support (Localization, Asl, fonts, app. icon, ...) o Languages supported up to now: English, Deutsch, Francais o Comfortable screen/window layout saving o Font-sensitive runtime gadget calculation o Comfortable installer script for installing, updating, ... 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 All strings dynamic since 04.30. o 6 different filetypes to save configs/data: projec, mask lists, video recorder, printer preferences, layout preferences, VideoMaxe preferences 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 hours:minutes:seconds to be able to cover rather short titles (e.g. music). o Comfortable statistics since 04.30 o Comfortable search routines o Printing o ... 2.0.2. Future -------------- VideoMaxe 04.30 has realized nearly all I imagined when starting programming VideoMaxe. There still two concrete features that will definetely come with a future version: o split & merge projects. o finally include a screen colour editor... o improve font sensitive layout (proportional fonts!) o online help, based on my amigaguide documentation file o ARexx interface Any suggestions from your side concerning new features are are welcome! 2.1. F.A.Q. ------------ o "VideoMaxe always starts up in the 'unregistered' mode!" => You haven't saved the prefs with the password! Type in the password in the `VideoMaxe preferences window' and DON'T FORGET to choose "Save"!! ------------------------------------------------------------------------ o "VideoMaxe always shows odd screen open errors when starting up!" => There's a false screen mode (= a screen mode unable to display on your system) adjusted in the layout preferences. Choose your preferred screen mode in the `layout preferences window' and DON'T FORGET to choose "Save"!! ------------------------------------------------------------------------ o "How can I quickly find a free place on my tapes for a spontaneous recording?" => Choose "New title" in the project window, fill in the titles length with your wishes and choose "Get suggestion". Leave the title window via "Cancel" if you don't want to store that spontaneous recording... ------------------------------------------------------------------------ o "While printing, VideoMaxe shows 'Unsupported printer command' error? Can I print anyhow?" => 1st: I use the standard ANSI printer codes (see your OS manual). If this error occurs, this means that your in the Amiga prefrences adjusted printer driver can't translate the command. Normally this should mean that the printer belonging to the driver does not support that command, but -- at least with the original commodore drivers (sorry) -- everything is possible. 2nd: Yes. Don't cancel the printing and choose 'Ignore following errors'. Thus the non-supported commands will be ignored. However, I can't guarantee for the output, then.... 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.0. Restrictions -------------------- VideoMaxe has nearly no restrictions at all except for your machine's ram space as nearly everything is dynamic. However, the only thing restricting in VideoMaxe is the length you can assign to titles & tapes. The length of a title is restricted to (max.) 99 hours, 59 minutes and 59 seconds. If you ever want to record a title lasting more than 4 days 4 hours please call me up. The length of a tape is restricted to 9999 Minutes plus 9999 overhang minutes (or 6.9 days). If you ever have a tape with a capacy of more than these 6.9 days I can't help you. Much more important is the additional length of all titles on one tape. This must not be bigger than 24855 days, else the calculations would go wrong...:+). If however it seems not very likely to break the 24855 days frontier on one tape, you might break it with _all_ titles. You would, if you have for example 596524 titles with a length of 1 hour in one project. However, in that case the statistics might not work correctly though all other VideoMaxe features will do fine.... 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. It stores the values true or false. - Number type. It stores a number (range is that of double int, namely {-2^31..2^31-1} = {-2147483648..2147483647}. - Text type. It stores (surprise!) a text. - Comand type (4.30). It stores a text that specifies an Amiga DOS command. You will be able to (try to) execute that command in the `mask entry list window'. o Its stored data; the kind of data depends on the mask entry`s kind (see above). 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: Command-empty text 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.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.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 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 (430) Bool flag "Use abbrevations?": Causes VideoMaxe to uses intern abbreviations instead of the full (localized) texts in informational strings if this is set (i.e. "49 TIs" instead of "49 Titles"). o (430) Dynamic string block size. This specifies the number of characters added to (any VideoMaxe-) string when VideoMaxe is adviced to increase the string's length. See `dynamic strings concept'. o (430) Text information verbosities. These values let you adjust how much & which information VideoMaxe should display in informational strings. o Rubric : displayed in the `project window'. o Tape : displayed in the `project window'. o Tape in show tape : displayed in the `show tape window'. o Title : displayed in the `project window'. o Title in show tape: displayed in the `show tape window'. o Project : displayed in the `project list window'. o (430) Online help file. Should contain the guide file you want to use with the VideoMaxe online help. Not yet used properly as 430 not yet has online help (odd usage now, see `Release 04.30'). 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 All default directory names for the load and save operations on the six different filetypes. Note that the so-called 'default-files' will be loaded as default for _new_ projects only - they won`t affect _existing_ projects at all. The 'default-directories' 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.... (430) changed the old "Show title"/"Show tape" due the the new `text concept'. 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. Concepts ---------------- 2.2.2.0. Dynamic strings concept --------------------------------- (430) All data strings (except some where it makes no sense) are dynamic! That means that the string's length is limited by your machines ram capacy only! However, all string gadgets need a fixed buffer size when creating them. That means if you want to add more letters to a string than the gadget will allow, follow following (ups!) steps: (1) Fill in the gadget until your system's 'gadget full message' emerges (normally a display beep). (2) Press [RETURN] or [TAB]. => VideoMaxe will re-create the windows gadgets with more space in the desired gadget. The size that is added can be adjusted in the `VideoMaxe preferences'. (3) Go on typing!! This will work in (nearly) all VideoMaxe windows. 2.2.2.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.2.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 (,.., ) for a block that is longer than needed and will thus "partly overplay" and o (,.., ..) 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.2.3. Spool information concept ----------------------------------- A spool information provides the information needed to (physically) get access to a title on a tape. 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: 1 Hour, 30 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: 1 Hour, 50 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.2.4. 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.2.5. Text concept ---------------------- (430) Both two text types described in the following are influenced by the "Use abbrevations?"-flag in the `VideoMaxe preferences'. If it is on, intern abbreviations instead of the full (localized) texts are used creating the text. Currently, following abbrevations are used: "Use abbrevations?"-flag off "Use abbrevations?"-flag on Name Abbrevation -------------------------------------------------------------- Spool information >|< (Tape's) rest time |-> Length L Play length PL Real length RL Rubric number RU# Tape number TA# Title number TI# Rubric(s) RU's Tape(s) TA's Title(s) TI's Mask(s) MA's Mask entr(y)(ies) ME's Hour(s) H Minute(s) MIN Second(s) SEC -------------------------------------------------------------- Any suggestions for more telling abbr. are welcome. View texts ------------ For the most data types there are so-called 'view texts' created that basically serve as the identification of the data. Normally, this will be the text typed in as "name" in the corresponding window; only few very important other information may be included. Here is the list of the view texts: Data type Its view text contains Example o`Mask' Its name. "My_Fine_Mask" o`Rubric' Its name. "Horror" o`Tape' Its number, preceded by the localized string "Tape No." (or respectively by "Tape No.4" its abbr.). o`Title' Its name, preceded by "{-} " if "{*} Alien" locked, and "{*} " for if unlocked. o`Project' Its name, preceded by "[-] " if "[-] MyVideos" changed, and "[*] " for if unchanged. You can't influence or configure the view texts. Info texts ------------ For the data types `rubric', `tape', `title' and `project' there are so-called 'info texts' used throughout VideoMaxe (e.g. in the `project window', info texts for the active rubric, tape and title are shown). You can freely configure which pieces of information VideoMaxe should actually display (e.g. in the `VideoMaxe preferences', `printer preferences' or `statistics window'). However, this editing is done by the `set window', where you can in- and exclude certain pieces of information from the texts; in the info texts, each piece of information will be separated by a semicolon; the order of the pieces of information is like displayed in the set window. An example will make this clear: For the data type `tape', following pieces of information can be shown in the text info string: - Length Well, the length of the tape... - Title amount The amount of titles recorded on that tape. - Rest time The rest time on the tape. - Mask entry amount The amount of mask entries in the tape. Some sample runs: piece of inform. Config.1 Config.2 Config3 ---------------------------------------------------------------- Length on on off Title amount off on on Rest time off on on Mask entry amount off off off With the "Use abbrevations?"-flag off this will lead to the following information texts (for an example tape): Config.1: "Length 240+4" Config.2: "Length 240+4; 6 Titles; Rest time 36 Minutes" Config.2: "6 Titles; Rest time 36 Minutes" okidoki? 2.2.2.6. Error handling concept -------------------------------- All errors that may occur while using VideoMaxe will be displayed in clear text in an `error window'. However, if a ram panic occurs, it may not be able to open such a window -- then you will hear a double display beep. 2.2.3. 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.3.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.3.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.3.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.3.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.3.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.3.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.4. 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.4.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: Use : Push the data as it is shown in the window into action. Cancel: Leave the window with exactly the situation as it has been before opening it. Equivalent to "WindowClose", if "Cancel" exists. Exit : Leave the window. Only in 'no-data-windows'. No promises about the state after exiting are made. Equivalent to "WindowClose", if "Exit" exists. o Special standard gadget manupulating an item Delete: Delete the item whose data is being shown. o Special standard gadgets manupulating a list of items New : Create a new list item. Edit : Edit the active list item. Empty : Empty the list (Length(list) = 0). 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.4.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 four 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". (430) o "Move up" will move a list entry one up in its list. Global key shortcut "U". o "Move down" will move a list entry one down in its list. Global key shortcut "D". Global menu shortcuts will not be used for anything else anywhere. Note that due to that two new global shortcuts in V3.40, five other non-global shortcuts had to be changed: - Specials.Date.current in title window. Was "D", now "T". - Specials.Tape overhang.defaults in tape window. Was "D", now none. - Specials.Use a mask in mask entry list window. Was "U", now "T". - Specials.Append a mask in mask entry list window. Was "J", now "G". - Specials.Merge a mask in mask entry list window. Was "M", now "B". 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//" or in "/Catalogs/". 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 1st cycle gadget lets you choose between two divisions of the `VideoMaxe preferences' data: o "Miscellaneous" o "Path and Files" "Miscellaneous" gadgets: o "Password". With this gadget you can adjust the password. Type the correct password into the emerging window and leave the window via "Use". Leaving the VideoMaxe preferences window via "Use" will then activate that new password. Then, the screen title should be changed to " - Registered user". If not, then you have not entered the correct password. Note that certainly you will have to "Save" the adjustments if you still want to be 'registered user' on the next VideoMaxe session. 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...?" lets you edit this flags of the `VideoMaxe preferences'. o "Use abbreviations?" lets you edit this flags of the `VideoMaxe preferences'. o "Dynamic string block size" lets you edit the dynamic string size (see `VideoMaxe preferences'). o "Edit" will pop up the `set window' which lets you adjust certain info text verbosities. Which one is determined by the following o Cycle gadget. This can be changed to all text info verbosity types as described in `VideoMaxe preferences'. "Paths and Files" gadgets o "Online help" file name guide document for VideoMaxe's online help. See `VideoMaxe preferences' for details. 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 "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/text 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. (430) If this is checked, the VideoMaxe screen will not be opened and thius can't be a public screen. 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, 04.30 :(). 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 "Use" 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 "Project" (430) displays the project's info text as configured in the `VideoMaxe preferences'. 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. In this mode, you may drag `VideoMaxe preferences', `layout preferences' and `project' files onto the VideoMaxe application 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's surface. 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 `Standard menus'. o "Help" (430) an odd special feature while VideoMaxe still does not support online help. Should start AmigaGuide with the VideoMaxe document (this one...). See `Release 04.30'. 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 lets 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. (430) The rubric is displayed with its view text followed by its info text in brackets. The info text is configured in the `VideoMaxe preferences'. See `text concept'. 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. The active rubric is always the rubric of the active title. (430) The tape is displayed with its view text followed by its info text in brackets. The info text is configured in the `VideoMaxe preferences'. See `text concept'. 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 title will pop up the `title window' with that title. (430) View text are used as entries in the list. See `text concept'. o "Title" (430) displays the info text of the active title. The info text is configured in the `VideoMaxe preferences'. See `text concept'. Note that if you select the 'spool information' to be shown in the info text, it depends on the adjustments in the project`s preferences whether 'rest time', 'used time' or 'counter' is shown. 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 tape's/title's `mask entry list's. (430) The `mask specials window' will pop up. 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. (430) Since 04.30 more interesting. 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. The number is given in minutes. o "Tape overhang" lets you edit the overhang of the tape. The number is given in minutes. 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 hours, the next minutes, the last 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 "Get Suggestion" (430) pops up the `sugestions window' with the option to select a suggestion where to record this (new) title. o "Suggestion exists?". If checked, this means that there is a suggestion present. A click on it then means killing the present suggestion. 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 "Use". 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'. Each entry is preceded by a checkbox gadget that indicates whether the entry is active (and is used to select the entry). There can be only one entry active. There may be three, no four (430) 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 Command kind. Displayed by an "Execute"-gadget followed by the mask entry`s name followed by a string gadget. "Execute" will try to execute the string. o `Standard gadgets'. Menus ~~~~~ o "Specials" o "Start values" reactivates the values that were active when the window was entered. 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. o `Standard menus' 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 between "On/Off type", "Number type", "Text type", "Command type" (430). Please refer to `mask entry' for a describtion of these types. 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'. "Use" 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 what state 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. 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 and command. 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 "Add all matching..." will add all matching titles to the clipped title list and leave the window. o `Standard gadgets'. "Use" will take over the active title. (430) The title will be searched following the following schedule: (i) Binary search in the "key"-strings of the titles. Very special and very fast. Only if the 'all title list' is the active list. (ii) Linear search in the "key"-strings. Only if 'pattern' is off. (iii) Linear search in the "name"-strings. (iv) Linear search in all text/command type mask entries. 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 "Letter quality?". If checked, print will be in LQ mode. o "Proportional?". If checked, print will be proportional. (430) o "Edit" will pop up the `set window' which lets you adjust certain info text verbosities. Which one is determined by the following o Cycle gadget. This can be changed to the following text info verbosity types: rubric, tape, title, project. When using these preferences, the printed text info output will be as selected. NOTE that if you adjust an empty set in the set window, NO text info line will be printed. o "Print project infos?". If checked, view & info text of the project will be printed. They then will be the 1st thing printed. o "Add line between view & info texts?". If checked, view & info texts will be seperated by a line. o "Add line between titles?". If checked, a line will be printed between two in the print directly succeding titles. NOTE that mask entry lists -if printed- will always be separated by a line from further printing. 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 "Use" 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. 2.3.19. Mask specials window ----------------------------- (430) In this window you can do some specials concerning the mask entry lists of the tapes and titles. Gadgets ~~~~~~~ o The 1st gadgets lets you choose between the - "Tape list" (which means all tapes of the project) and the - whose value depends on in what state the window was called. This will be simply the list that was active in the `project window' it was called from. The following gadgets each stand for an operation that will be applied to all `mask entry list's of all tapes (respectively to all titles of the active title list). o "Append a mask" will append all mask entries of a mask (out of the project's mask list) to all mask entries of the specified tape (respectively title) list. o "Merge a mask" will merge all mask entries of a mask (out of the project's mask list) to all mask entries of the specified tape (respectively title) list. That means that only mask entries of the choosen mask with names _not_ already existing in the mask to be modified are not appended. This name check is case sensitive. o "Delete a mask" will delete one mask entry from all mask entry lists of the specified tape (respectively title) list. You will ba asked for a name to delete here. Again, the name check will be case sensitive. o `Standard gadgets'. Note that you can't cancel any operation if once applied! Any operation will directly work with the project! 2.3.20. Show tape window ------------------------- This window will display a tape & its titles respectively a tape with a suggestion where to record a new title. The info texts used for the tape & title are configured in the `VideoMaxe preferences'. If the window carries the title "Tape info", only a tape is shown. The title "Suggestion for free space" indicates that a suggestion is shown - to record a new title at the end of that tape. The title "Suggestion for used space" indicates such a suggestion is shown; arrows like ">" will indicate the start & end titles that would be (partly) overplayed. If there is only one arrow, then even the last title of the tape would be completely overplayed if the suggestion were accepted. If there are two, all titles except the last before the second arrow (which will only be partly overplayed) will be completely overplayed with accepting the suggestion. Examples for suggestions for used space: ----------------1------------------ {-} Aliens > {*} Robocop {*} Predator > {*} The naked gun This suggestion would overplay "Robocop" completely and "Predator" partly if accepted. ----------------2------------------ {-} Aliens > {*} Robocop {*} Predator {*} The naked gun This suggestion would overplay "Robocop", "Predator" and "The naked gun" comletely if accepted. ----------------3------------------ {-} Aliens > {*} Robocop {*} Predator {*} The naked gun > This suggestion would overplay "Robocop", "Predator" completely and "The naked gun" partly if accepted. ("Alien" will never emerge in a used space suggestion as it is locked..) ------ NOTE that you may change the size of the window without causing the window to refresh! Please realize that this window is only used by other windows and does not react itself. 2.3.21. Set window ------------------- (430) In this window you can edit a set. Gadgets ~~~~~~~ All (potential) elements of the set are represented by a checkbox gadget including the name of object. If the gadget is checked, the object is element of the set else (!) not. Simply check all objects you want to be inside the set. o `Standard gadgets'. 2.3.22. Statistics window -------------------------- No docs for that yet, but I hope it is not too complicated... 2.3.23. Error window --------------------- In this window errors are shown. The window includes one gadget only. The name of that gadget (the text to the left...) tells you what command could not be executed, and the text inside the gadget tells WHY the error occured. 2.3.24. Information window --------------------------- In this window information is shown in a gadget...:) 2.3.25. Busy window -------------------- In this window information is shown in a gadget while some routine is in process...:+))) 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.1.7. Release 04.30 --------------------- (Beta release) Date: 24 Nov 1993 o Severe intern structure change, discovering a number of smaller bugs (producing some other smaller bugs... :+) o Re-thought VideoMaxe string output. (1) New VIEW output for mask, rubric, tape, title, project. Is shown in every id-output (e.g. lists). (2) New INFO output for rubric, tape, title, project. Info for rubric, tape, title in: project window. Info for project in: project list window Will provide prefs to handle what infos to display. (3) For all these strings you now can adjust wether to take texts or symbols (VideoMaxe prefs) as identification for the shown values. As for point (1), creating and showing lists will be somewhat slower... o Introduced DYNAMIC STRINGS! That means that any string may be as long as you like!! See `dynamic strings concept'. o Added `mask special window'. No fun these long menus. o Finally produced a `statistics window' worth its name. o Will take own allocate procedures now, no longer the standard M2Amiga ones. This & the new dynamic string feature leads to the following run time memory improvements for a test VideoMaxe project file with 209 Titles: V4.20 V4.30 (standard heap) (own heap) Memory needed 128.608 99.848 89.696 Bytes o No more fussing about with TAB/ENTER to really read the data of integer/string gadgets. Now the data always will be read from the gadgets when required. o File formats have changed: -`Mask list file's changed, update with vmconvert -`Project file's changed, update with vmconvert -`Video recorder file's changed, update with vmconvert -`Printer preferences file's changed, update with vmconvert -`VideoMaxe preferences file's changed, can't be updated -`Layout preferences file's unchanged o many smaller & bigger changes concerning the outfit of the windows o improved window close up routine(s) due to halted window... o some oddities concerning the tab cycle feature for gadtool gadgets removed (used to recalc some values & then redraw the gadget in question, which caused the gadget to deactivate...). Now, the redraw procedure will check the gadget for activation, the redraw it and activates it again in case. o VideoMaxe prefs. and its window changed to the new necessities. o prt. prefs and its window changed to the new necessities. o spaces of time now in Hours, Minutes, Seconds. (proper release) Date: 13 Jan 1994 o several beta bugs fixed. o removed some harmeless bugs in some windows processings that forgot to deallocate some data. Additionally, the deallocation procedure will now be done with the window in question blocked until all is deallocated, and then the window is closed. That clears up some confusion that came up when the underlaying window was re-activated though VideoMaxe was still working on the deallocation (especially project window -> project list window). o The standard gadget "OK" is now named "Use". That seems to tell more... o Implemented "next gadget activation" with [RETURN] (mainly because some guy insisted the style guide says so...). o Included Commodores 'Installer' & 'AmigaGuide' to the archive. o added a _provisional_ 'Help' menu to project list window. However, this will only execute the online help string of the VideoMaxe preferences - please don't change that string as this somewhat curious. As adjusted when VM comes, it will call: run sys:utilities/AmigaGuide vm:docs/VideoMaxe.guide The call will open VideoMaxe.guide asynchronosly. No guarantees whether this will work on your installations are made... o Localized the installer script. English and German available. o Project window: title list no longer recalculated after title search (was rather senseless), no automatic flip to "all titles" mode after inserting a new title (rather senseless, too). Active tape/rubric are now taken as defaults for new titles. o Excluded limitations in serach title window for non-registered users. Added an nerving requester for unregistered users. o Re-thought the 'search title' routine. Now no more odd results (due to some unclarities whether to use the titles name or the modified titles name (articles omitted) in search [binary search]). Added "AddAllMatching..."-feature, suggested by Lothar Mai. o Dyn. string max block size limited to 100 (range now {1..100}). o Time space length: zero values are no longer shown. E.g. "23 Minutes" instead of "0 Hours, 23 Minutes, 0 Seconds". "0 Seconds" instead of "0 Hours, 0 Minutes, 0 Seconds" (!!). o Fixed bug: When printing, the VideoMaxe defaults for info text verbosity were used (not those values of the printer config of the project (respectively changed project's prt. conf.))... o The project window will now initially display the 1st tape instead of the full title list. o Added pattern gadget to the file requesters, defaulting to "~(#?.info)". 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: +() = Bug number is not yet fixed -() = Bug number 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 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 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 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 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 information is copied while it 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 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 (not "Save as") a NEW project. Error : Access to NIL: as no default file name present - program asserts 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. 3.2.22. -(22) -------------- In version : 04.20 Location : Project window Situation : Leaving it via OK or DELETE Error : Exec list not deallocated => ram loss Ok since : Release 04.21 3.2.23. -(23) -------------- In version : 04.20 Location : Tape window Situation : Typing a 4-digit number into the length gadget Error : Integer overflow (Arts.Assert) Ok since : Release 04.30 3.2.24. -(24) -------------- In version : 04.20 Location : Leaving VideoMaxe Situation : The VideoMaxe screen is public & guest windows are open on it. Error (I leave that to your machine) Ok since : Release 04.30 Note : Well, I simply forgot to change my Screen-CloseUp procedure when introducing public screen; the old Screen-CloseUp handled it like a custom screen and tried to close all windows on it...very embarassing... 3.2.25. -(25) -------------- In version : 04.20 Location : Title window Situation : Changing an existing title via OK (resp. USE) with: o the change won't be applyable due to any reason(s) (so an error _should_ occur...) o you have bad luck because some intern pointer is set this way and not the other...:-( Error : Stack overflow because of corrupt binary title tree may occur. Ok since : Release 04.30 Note : If the above mentioned circumstances are matched (what is rather rare & thus kept me from recognizing this bug for so long..), the intern binary title tree will be corrupted. This *may* lead to a stack overflow because of an infinitive loop - but only if the corrupted part of the tree is requested by the program. So: Though this bug is rather rare & even if it occurs, it mostly won't show -- I have found it. I am a hero. 4. Thanks to... ================ Jens Stumpe for painting the title picture. Leif Tobias Kornstaedt for the French translation. All registered users! All programmers for their PD programmes that makes my Amiga worth living!! 5. The Author ============== The author is me and I am the author. |-----------------------------------------------------------| | ADDRESS | |···························································| | Stephan Sürken | | Kurt-Schumacher-Str. 34 A 161 | | D-67663 Kaiserslautern | |-----------------------------------------------------------| |-----------------------------------------------------------| | E-MAIL (InterNet) | |···························································| | s_suerke@informatik.uni-kl.de | |-----------------------------------------------------------| |-----------------------------------------------------------| | BANK ACCOUNT | |···························································| | o Stadtsparkasse Kaiserslautern, FRG | | o Bankleitzahl (BLZ) : 540 501 10 | | - Bildschirmtext (BTX) : *966750# | | - SWIFT-Code : KLTS DE 55 BiC | | o Account-Number/Konto-Nummer: 128 029 758 | |-----------------------------------------------------------| For URGENT questions call D-0631-15045. Enjoy! -Stephan