home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format 58 / af058sub.adf / RCalc141.lha / RenderCalc.doc < prev    next >
Text File  |  1994-01-21  |  36KB  |  737 lines

  1.                               RenderCalc v1.41
  2.  
  3.                        Author: Daniel S. Milling Jr.
  4.  
  5.                   Copyright © 1994 Daniel S. Milling Jr.
  6.                             All Rights Reserved
  7. ----------------------------------------------------------------------------
  8.  
  9. DISCLAIMER
  10.  
  11. The author makes no warranties or representations, either expressed or
  12. implied, with respect to the program and information included herein.
  13. The product presented herein is being supplied on an "as is" basis and
  14. is expressly subject to change without notice.  You use this software at
  15. your own risk.  In no event will the author be held liable for direct,
  16. indirect, incidental, or consequential damages resulting from the use or
  17. misuse of the program and information provided herein.
  18.  
  19.  
  20.  
  21. DISTRIBUTION
  22.  
  23. RenderCalc is a Shareware program.  The RenderCalc program, the
  24. distribution materials and the registration keyfiles are
  25. Copyright © 1994 Daniel S. Milling Jr. All Rights Reserved.
  26.  
  27. If you find this program useful, please send in the registration fee
  28. of $15(US) to the author of the program.  The address is given at the bottom
  29. of the Registration.form file.  Please see the Registration.readme file for
  30. more information regarding registration and the keyfiles.
  31.  
  32. RenderCalc is freely redistributable in it's original form to any bulletin
  33. board, public domain software collection, or network system as long as the
  34. original archive is kept intact in it's entirety and remains unaltered and
  35. as long as no fee, other than nominal media cost, is charged for
  36. distribution.
  37.  
  38. The keyfiles which are sent to registered users may not be distributed
  39. and are for the sole use of the registered user.  Since the keyfile contains
  40. the encrypted name of the registered user, among other information, it would
  41. behoove the user to keep it to him or herself.  Any circulated keyfiles, if
  42. brought to the attention of the programmer, will be rendered useless in
  43. updated versions of the program and that user will be removed from any future
  44. update lists.  Spread the program, not the keyfile.
  45.  
  46. This program, in whole or in part, may not be included in any commercial
  47. package without the prior written consent of the author.
  48.  
  49.  
  50.  
  51. INTRODUCTION
  52.  
  53. This program originally grew from my need to quickly and easily calculate
  54. the number of frames it would take for an object moving X miles per hour
  55. to move Y feet.  This was a necessity for some animations I was creating.
  56. I banged out the original C code for the CLI version in no more than ten
  57. minutes.  Pretty easy.  Since that day, I thought it would be very nice to
  58. have a GUI to go along with this program.  After toying around with GUI
  59. programming on and off for a couple of months between rendering, I finally
  60. came up with RenderCalc 1.0, my first program with a GUI.
  61.  
  62. Between RenderCalc v1.0 and v1.41 there have been MANY additions and
  63. improvements.  My original intention was only to create a little
  64. speed/distance calculator that could take MPH and FEET and tell me how
  65. many frames it would take to travel that distance.  After a couple of weeks,
  66. RenderCalc has exploded into what it is today.
  67.  
  68.  
  69. Features:
  70. ---------
  71.  
  72. - Ability to enter values for Speed and Distance and receive output telling
  73.   you how many total frames, seconds, minutes and the length of time, in the
  74.   specified time code format, that the motion will take.
  75.  
  76. - The Speed, Distance and Length Input Gadgets have Cycle gadgets attached
  77.   to them which allows you to change the units of the entered number 'on the
  78.   fly.'  This gives you instantaneous updates without having to re-type the
  79.   number again.
  80.  
  81. - Table of conversions between units of length.  Supported units are
  82.   inches, feet, yards, miles, millimeters, meters and kilometers.
  83.  
  84. - Ability to change the units of ANY inputted number and have all of the
  85.   values update, relative to the new units, on the fly.  This saves having
  86.   to re-type the values again.
  87.  
  88. - If you want to convert a number to different units, you may enter
  89.   that number into the Length gadget and see the printed results in the
  90.   conversion table below.
  91.  
  92. - The table of conversions is linked to the Distance and Length buttons,
  93.   which means that any number entered in either gadget will be converted and
  94.   printed into the table.  The reason for this is that if you enter a
  95.   number into the Distance gadget and would like to know what it converts
  96.   to in units of a different system, you don't have to re-type it into the
  97.   Length gadget.  It is automatically calculated and printed for you.
  98.  
  99. - SMPTE non-drop frame, EBU and Film time code supported.  SMPTE drop frame
  100.   is a selectable time code format but NOT implemented at this time.
  101.  
  102. - Ability to enter Time Code In and Out points as well as a Duration.  The
  103.   time code values are printed out under the Time Code Output section.  The
  104.   time code input has two modes of operation.  You may enter Time Code In and
  105.   Time Code Out points which results in Duration being the final output value.
  106.   You may also enter a Time Code In and a Duration which will give you the
  107.   Time Code Out as your final value.
  108.  
  109. - Ability to change the Time Code Type 'on the fly.'  This means that you
  110.   may switch between the supported time code formats and see the updated
  111.   results immediately without having to re-enter the values.
  112.  
  113. - A Zoom gadget which shrinks the program window.  Instead of having
  114.   to quit the program, the user may click on the Zoom gadget.  Doing this
  115.   shrinks down the RenderCalc window, getting it out of the way.  Clicking
  116.   again will restore the window to it's normal size.  In the Unregistered
  117.   version of the program, the Shareware Notice will be brought up every
  118.   time the Zoom gadget is clicked.  Upon registration, this annoyance is
  119.   removed.
  120.  
  121. - Keyfile system which allows for easy registration.  Upon registration,
  122.   you will receive a personalized ASCII keyfile which will permanently remove
  123.   ALL instances of the Shareware Notice.  These instances include starting and
  124.   exiting the program as well as clicking on the Zoom gadget.  The Shareware
  125.   notice will never appear again, unless the keyfile is deleted or tampered
  126.   with.  The keyfile will work with all future versions of the program.  If,
  127.   for some reason, the keyfile code changes, all registered users will receive
  128.   an updated keyfile as soon as possible.
  129.  
  130.  
  131.  
  132. Requirements
  133. ------------
  134. - Kickstart 2.x or above.
  135. - asl.library version 37 or above (38 or above is HIGHLY preferred)
  136.   If you don't have the asl.library the program is still usable although
  137.   you won't get a file requester.
  138.  
  139.  
  140.  
  141. INSTALLATION
  142.  
  143. To install RenderCalc, just move the RenderCalc program icon into the
  144. desired drawer through Workbench.  You may now run it by double clicking on
  145. the program icon.  From CLI just type in the program name when you are in
  146. it's directory or include the full path if you're not.
  147.  
  148.  
  149.  
  150.  
  151. PURPOSE
  152.  
  153. The purpose of this program is to provide the animator with three essential
  154. tools.
  155.  
  156.   - The first is the ability to calculate the number of frames needed
  157.     to represent a moving object of known speed and known linear distance
  158.     travelled.
  159.  
  160.   - The second tool is the ability to quickly and easily convert numbers
  161.     between different common units of length.
  162.  
  163.   - The third purpose is to provide the user with the ability to easily and
  164.     quickly calculate Time Code durations from an IN and OUT point and also to
  165.     Calculate an OUT point from an IN point and a duration.  These conversion
  166.     may be done interchangeably between the three supported time code formats.
  167.  
  168.  
  169.  
  170. HOW TO USE THE PROGRAM
  171.  
  172. When you run the program you will see a Shareware message reminding
  173. you to register the program if it is of use to you.  This window will also
  174. appear upon exiting the program as well.  Read the Registration.readme file
  175. for more information.
  176.  
  177. After the Shareware Notice disappears, you will be presented with the
  178. main program.
  179.  
  180. There are three main input/output sections to the program.  They are:
  181.  
  182.     I. Frame Calculator
  183.    II. Units Converter
  184.   III. Time Code Calculator
  185.  
  186. All three sections are interconnected more or less.  This means that data
  187. entered into one section may affect the output of another section.
  188.  
  189.  
  190. I. Frame Calculator
  191.  
  192. The Frame Calculator takes the input of a speed and a distance and
  193. calculates how many frames it will take for a body to move that distance,
  194. while travelling at that speed.
  195.  
  196.   NOTE: This will only be accurate for linear movements.  At this present
  197.         time there is no implementation for the calculation of movement
  198.         through an arc or anything other than a linear path.  At this time
  199.         there is no implementation of variable speeds through a distance,
  200.         meaning that positive and negative accelerations are not accounted
  201.         for.  Only constant velocities are handled at this time.
  202.  
  203. The Frame Calculator consists of two input gadgets.  They are the Speed
  204. and Distance Gadgets.  Each gadget has one or more cycle gadgets attached
  205. to them.  The cycle gadgets tell the program which units to use in the
  206. conversion process.
  207.  
  208.   SPEED INPUT - The Speed gadget is attached to two cycle gadgets.  The
  209.                 first cycle gadget gives the units of distance while the
  210.                 second cycle gadget gives the units of time.  Together you
  211.                 will get a valid (units of distance) per (units of time)
  212.                 measurement of speed.
  213.  
  214.                 To enter input, click anywhere in the Speed input box, if a
  215.                 cursor is not present already, a cursor will then appear.
  216.                 Once the cursor is in the Speed input box, type in the value
  217.                 and then hit <RETURN> when you are done.
  218.  
  219.                 The first cycle gadget, which represents the unit of
  220.                 distance, may be in units of inches, feet, yards, miles,
  221.                 millimeters, meters or kilometers.  The default unit is MILES.
  222.                 To change the units of this gadget, just click on it.  For
  223.                 every click you will cycle through all of the possible
  224.                 choices.
  225.  
  226.                 The second cycle gadget, which represents the units of
  227.                 time, may be in units of seconds, minutes or hours.
  228.                 The default unit is HOURS.  To change the units of this
  229.                 gadget, just click on it.  For every click you will cycle
  230.                 through all of the possible choices.
  231.  
  232.  
  233.   DISTANCE INPUT - The Distance gadget is attached to one cycle gadget.
  234.                    This cycle gadget gives the units of distance that the
  235.                    body will move through.  This value, with it's units,
  236.                    are used to calculate the number of frames it will take
  237.                    for a body to move through that distance while travelling
  238.                    at that speed.
  239.  
  240.                    To enter input, click anywhere in the Distance input box,
  241.                    if a cursor is not present already, a cursor will then
  242.                    appear.  Once the cursor is in the Distance input box, type
  243.                    in the value and then hit <RETURN> when you are done.
  244.  
  245.                    The cycle gadget, which represents the units of distance
  246.                    travelled, may be in units of inches, feet, yards, miles,
  247.                    millimeters, meters or kilometers.  The default unit is
  248.                    FEET.  To change the units of this gadget, just click on
  249.                    it.  For every click you will cycle through all of the
  250.                    possible choices.
  251.  
  252.   For each of these two input gadgets, the user may input numbers of no more
  253.   than 6 decimal places or a total of 10 numerical characters including
  254.   decimal point.  Spaces and other characters are not allowed and will not
  255.   produce output.
  256.  
  257.  
  258. The Frame Calculator also consists of an output sub-section which shows the
  259. output in four different units.  These units are Frames, Seconds, Minutes
  260. and a Time Code value.  In the case of the Distance input gadget, we have
  261. another output into the Unit Conversion Table.  See the section on the Unit
  262. Conversion Table for a complete description of this feature.
  263.  
  264.  
  265.   NOTE: Each output is a separate entity.  For the values entered in the
  266.         Speed and Distance gadgets, you will have a Total of Frames, a Total
  267.         of Seconds and a Total of Minutes printed out.  These first three
  268.         outputs are total values.  For example if you have a reading of 1181
  269.         Frames, 39.4 seconds and 0.7 minutes this means that 1181 Frames is
  270.         equal to 39.4 seconds which is equal to 0.7 minutes.  This is meant
  271.         as a gauge giving the user a sense of how much time 'x' number of
  272.         Frames will take in more familiar units.
  273.  
  274.   The fourth output represents the time code duration that 'x' number of
  275.   frames would span.
  276.  
  277.  
  278.   ACCURACY:  THE FRAMES value is rounded up if it is 'x.5' or greater.  If 
  279.              you don't like this, just add or subtract a frame.  It seems that
  280.              for values of 60 frames or more the rounding won't make too much
  281.              of a difference.
  282.  
  283.              THE SECONDS value is rounded up if it is 'x.x5' or greater.  This
  284.              is not meant to be a very accurate number but only to give a
  285.              'close-enough' estimate of how many seconds are required for
  286.              'x' frames.
  287.  
  288.              THE MINUTES value is rounded up if it is 'x.x5' or greater.  This
  289.              also is not meant to be a very accurate number.  It is meant to
  290.              only give a 'close-enough' estimate of how many minutes are
  291.              required for 'x' number of Frames.
  292.  
  293.              THE TIME CODE is accurate to the FRAMES value.  This means
  294.              that the value given in the Frames output is represented exactly
  295.              in the time code output.  This may be useful if you wanted to see
  296.              what the time code duration is for that Frames value.
  297.  
  298.  
  299.   CHANGING UNITS: Any cycle gadget, for the Speed or Distance inputs, may be
  300.                   clicked at any time.  When you click on the cycle gadget
  301.                   you will change the units of the corresponding value.  You
  302.                   may do this an unlimited number of times.  After you click
  303.                   on the cycle gadget, any values printed out in the Output
  304.                   sub-section of the Frame Calculator section will be updated
  305.                   to reflect the new units.  This update occurs 'on-the-fly'
  306.                   meaning that you do not have to re-enter any number again
  307.                   in order to change it's units.  The conversion is done
  308.                   automatically.
  309.  
  310.                   Clicking on the cycle gadget, attached to the Distance
  311.                   input, will also affect the units printed out in the Units
  312.                   Conversion Table.  Please see the section on the Units
  313.                   Conversion Table for a complete description of this feature.
  314.  
  315.   ERRORS: If the values for the Frame Calculator output are either too large
  316.           or too small you will see '------' printed in the corresponding
  317.           output box.  For example, Frames cannot exceed 999999 (if you really
  318.           need this many frames you need to get out more... :-) ) and cannot
  319.           be less than 1.  However, Seconds and Minutes may be zero but only
  320.           when the Frames output is VERY low.  Sometimes you will get a value
  321.           for Frames and Minutes but not Seconds.  This occurs only when the
  322.           Frame count is TOO high anyway.  Don't worry, as long as there is
  323.           a Frame output value, you are ok.  Frames is the value you want
  324.           anyway.
  325.  
  326.           If the Frame count is illegal then your Time Code output will be
  327.           set to 00:00:00:00.  Otherwise, you will have a valid time code
  328.           reading relative to the Time Code Type you have selected.  Please
  329.           see the section on Selecting The Time Code Type for a complete
  330.           description of this function.
  331.  
  332.  
  333.  
  334.  
  335. II. Units Converter
  336.  
  337. The Units Converter will take any inputted number and convert it to any
  338. supported unit.
  339.  
  340. The Length input gadget is where you may enter the number you want to
  341. convert.  The Length input gadget has a cycle gadget attached to it which
  342. specifies the units of the Length gadget value.
  343.  
  344.   LENGTH INPUT - This is where you may input a value which will be converted
  345.                  and printed out into the Units Conversion Table.  The number
  346.                  may have as many as six decimal places or a total of fifteen
  347.                  numerical digits, including the decimal point.  Spaces and
  348.                  other characters are not allowed and will not produce
  349.                  output.
  350.  
  351.                  To enter input, click anywhere in the Length input box, if a
  352.                  cursor is not present already, a cursor will then appear.
  353.                  Once the cursor is in the Length input box, type in the value
  354.                  and then hit <RETURN> when you are done.
  355.  
  356.                  If the Length Input value is illegal, the conversion table
  357.                  will fill with zeros, thus telling you the value is illegal.
  358.  
  359.                  If the Length Input value is legal but the resulting
  360.                  conversion yields an illegal number, that conversion field
  361.                  will be filled with many '---------''s all the way across the
  362.                  field.  This can occur frequently when you change the units
  363.                  of the value to be converted.
  364.  
  365.                  Attached to the Length gadget is a cycle gadget which
  366.                  specifies the units of the inputted value.  The units may
  367.                  be of inches, feet, yards, miles, millimeters, meters or
  368.                  kilometers.  To change the units of this gadget, just click
  369.                  on it.  For every click you will cycle through all of the
  370.                  possible choices.
  371.  
  372. After you enter a number into the Length gadget and hit <RETURN> the
  373. number, if valid, will be converted and printed into the Units Conversion
  374. Table.  The Units Conversion Table can be found directly below the Length
  375. Input gadget.
  376.  
  377.  
  378.   UNITS CONVERSION - The numbers printed in the table will correspond with the
  379.              TABLE   units printed to the right of them.  The base unit is
  380.                      taken from the cycle gadget which is attached to the
  381.                      Length input gadget.
  382.  
  383.                      NOTE: when a value is entered into the Distance Input
  384.                            gadget, the base unit is then taken from the Units
  385.                            cycle gadget associated with Distance.
  386.  
  387.                      For example, if you enter the number 5280 into the
  388.                      Length gadget and hit <RETURN> you  will be presented
  389.                      with your converted output.  If the cycle gadget was
  390.                      set to FEET, you should be able to look up FEET on the
  391.                      Units Conversion Table and see that the  value printed
  392.                      in the FEET box is '5280', the same number you inputted.
  393.                      This tells you, that the number you entered  was
  394.                      indeed 5280 FEET.  If we look at miles we will see
  395.                      that, yes indeed, 5280 feet is equal to 1 mile.
  396.  
  397.   DISTANCE INPUT - When a value is entered into the Distance Input gadget,
  398.   AND THE UNITS    the Units Conversion Table will then be updated with this
  399.   CONVERSION       data relative to it's units.  For example, if you had
  400.   TABLE            already entered 5280 into the Length Input gadget with
  401.                    units of FEET, and you enter the number 12 into the
  402.                    Distance Input gadget, with units of MILES, the new output
  403.                    of the Units Conversion Table will show that 12 miles is
  404.                    the entered number and that 12 miles is equal to 63360
  405.                    feet.
  406.  
  407.                    If the Distance Input value is illegal, the conversion
  408.                    table will fill with zeros, thus telling you the value is
  409.                    illegal.
  410.  
  411.                    If the Distance Input value is legal but the resulting
  412.                    conversion yields an illegal number, that conversion field
  413.                    will be filled with many '---------''s all the way across
  414.                    the field.  This can occur frequently when you change the
  415.                    units of the value to be converted.
  416.  
  417.   GOING FROM LENGTH - It is very easy to restore the previous data which was
  418.   TO DISTANCE AND     outputted to the Units Conversion Table.  For example,
  419.   VICE VERSA          if you entered a value into the Length Input gadget and
  420.                       received output, you may then enter a value into the
  421.                       Distance Input gadget and receive output.  The value
  422.                       which was previously in the Length input gadget is still
  423.                       there.  The way to retrieve this value is to click
  424.                       anywhere inside the Length Input gadget and hit the
  425.                       <RETURN> key.  If you didn't type anything else, you
  426.                       should get your previous Unit Conversion Table values.
  427.                       If you now wanted to see the conversion of the Distance
  428.                       Input value, just click anywhere inside the Distance
  429.                       Input value box and then hit <RETURN>.  If you didn't
  430.                       type anything else you should see the Units Conversion
  431.                       Table reflect the previous Distance value.
  432.  
  433.                       You may also click on the Units cycle gadget for either
  434.                       the Length Input or Distance Input gadgets.  By doing so
  435.                       you will update the Units Conversion Table with the
  436.                       Input value along with it's respective units.
  437.  
  438.                       For example.  If the last number converted was input
  439.                       from the Length gadget, and you then click on the
  440.                       Distance Units cycle gadget, the Units Conversion Table
  441.                       will be updated with the Distance Input value, relative
  442.                       to it's new units.
  443.  
  444.                       You may click back and forth among the Units gadgets
  445.                       an unlimited number of times.
  446.  
  447.   ACCURACY - All of the converted values should be accurate to within
  448.              +0.0005 and -0.0005.  I rounded the number to the third decimal
  449.              place with any number of 'x.xxx5' being round up.  I could have
  450.              let the output go to the sixth decimal place, with the number
  451.              'x.xxxxxx5' being rounded up.  This seemed a bit extreme.  If
  452.              there is enough of a response I may restore the six decimal
  453.              place numbers, otherwise it stays as is.
  454.  
  455.              NOTE: If there is any discrepancy with these converted values and
  456.                    'real-world' values I'd appreciate any feedback (my email
  457.                    addresses are listed in the 'About' requester.)  It would
  458.                    be a very simple matter for me to alter my table of
  459.                    conversions in a future revision.  I looked at a conversion
  460.                    table in my Physics book and came up with the neat and
  461.                    simple equation to calculate any conversion factor.  If
  462.                    I made any errors, please report them.
  463.  
  464.  
  465.  
  466.  
  467. III. Time Code Calculator
  468.  
  469. The Time Code Calculator will take any inputted time code IN and OUT point and
  470. tell you the time code duration between these two points.  It will also tell
  471. you the time code OUT point if you enter a time code IN point and a duration.
  472.  
  473. There are three input gadgets associated with the Time Code Calculator.
  474. These are the IN, OUT and DURATION Input gadgets.
  475.  
  476. There is a Time Code Output section right below the Input section which will
  477. tell you the time code relative to the current time code type and the number
  478. of frames each time code value represents.
  479.  
  480.   TIMECODE TYPE - This array of small buttons is situated below the Units
  481.                   Conversion Table.  This allows you to select which time
  482.                   code type you wish to work with.  The default is
  483.                   SMPTE 30fps, which is non-drop frame.
  484.  
  485.                   NOTE: SMPTE drop-frame is a selectable time code type but,
  486.                         as of this version, it is NOT implemented yet.  When
  487.                         you select SMPTE drop frame ALL of your time code
  488.                         outputs will be set to the default '00:00:00:00'
  489.                         value.  The reason this button is present is to act
  490.                         as a place holder for any future implementation of
  491.                         SMPTE drop-frame.
  492.  
  493.                   You may change the Time Code Type at any time by clicking
  494.                   on any one of these small round buttons.  After you select
  495.                   a time code type all of your current time code values will
  496.                   be recalculated to reflect this change.
  497.  
  498.                   NOTE: if your current time code is set to SMPTE (non-drop)
  499.                         and you have entered a number with a FF (frames) value
  500.                         of '29' you have a legal time code value.  But, if you
  501.                         were to change the time code type to Film, the '29',
  502.                         which was previously in the FF (frames) slot, is now
  503.                         illegal, since there are only 24 frames per second
  504.                         in Film as opposed to 30fps in SMPTE non-drop.
  505.                         If this happens, the time code reading in question is
  506.                         then set to the default '00:00:00:00' setting.
  507.                         This is true for any Time Code Output value.
  508.  
  509.                         However, The time code value presented under the
  510.                         'TOTALS' for frames WILL update properly across ALL
  511.                         time code formats.  This allows you to see what length
  512.                         of time 'x' number of frames will take in that
  513.                         specific time code format.  You should also note that
  514.                         ONLY the TIMECODE value for the number of frames will
  515.                         change, NOT the seconds or hours for that number of
  516.                         frames.  The seconds and hours are set to SMPTE
  517.                         30fps (non-drop) and aren't affected by any time code
  518.                         change.  I realize that placing both a time code
  519.                         readout along with the seconds and hours readout is a
  520.                         bit redundant but a friend of mine asked me to
  521.                         leave it.  Seconds and Minutes output may be removed
  522.                         in the future.
  523.  
  524.   ENTERING TIMECODE - There are three input gadgets which allow the user to
  525.   VALUES              enter time code values.  These are the Time Code IN,
  526.                       Time Code OUT and Time Code DURATION input gadgets.
  527.                       There are a number of ways you may input time code
  528.                       values:
  529.  
  530.                       You may input as much of the time code number as you
  531.                       wish.  If you only have 1 second and 20 frames as your
  532.                       IN point, you may type the number as:
  533.  
  534.                                    1:20         or
  535.                                    120          or
  536.                                    01:20        or
  537.                                    0120         or
  538.                                    00000120     or
  539.                                    00:00:01:20
  540.  
  541.                       The program is quite flexible as to how you may enter
  542.                       time code values.  There are a few rules however:
  543.  
  544.                       1) you may enter a number with or without the colon ':'.
  545.                          If you do enter a number with colons, the number must
  546.                          be in one of these formats: (where x is a numerical
  547.                          digit)
  548.  
  549.                                         x:xx or
  550.                                        xx:xx or
  551.                                      x:xx:xx or
  552.                                     xx:xx:xx or
  553.                                   x:xx:xx:xx or
  554.                                  xx:xx:xx:xx
  555.  
  556.                          The following are illegal:
  557.  
  558.                                          x:x or
  559.                                    x:x:xx:xx or
  560.                                    xx:xx:x:x (these are only a few.)
  561.  
  562.                       2) Here is a simple rule to follow when using colons in
  563.                          your time code value.  A time code, if it includes
  564.                          colons, is legal, if, to the RIGHT of every colon,
  565.                          there are two numerical digits.
  566.  
  567.                          You may have a single digit to the LEFT of ONLY the
  568.                          LEFTMOST colon.  The reason for this is the way the
  569.                          program reads the time code value.
  570.  
  571.                       3) If you enter a time code value with or without
  572.                          colons, then take note that the number is read from
  573.                          right to left.  Thus, if you enter the number 120
  574.                          (or 1:20) it will be interpreted as 1 second and 20
  575.                          frames.  If you really meant 1 hour and 20 minutes,
  576.                          the time code value would have to be input as
  577.                          1200000 (or 1:20:00:00).
  578.  
  579.                       4) The only character that may be used to separate the
  580.                          time code numbers is the colon.  Any other characters
  581.                          input will be treated as illegal, thus making the
  582.                          entire time code value illegal.  This will cause the
  583.                          default '00:00:00:00' value to be output.
  584.  
  585.  
  586. All Time Code Input values and calculations are output to the Time Code Output
  587. area which is directly below the Time Code Input area.  Under the TIMECODE
  588. OUTPUT heading you will notice the (HH:MM:SS:FF) label.  This tells you that
  589. the time code output, from left to right, is in hours, minutes, seconds and
  590. frames.
  591.  
  592.  
  593. TIMECODE IN - You may enter any valid time code number into this input gadget.
  594.       INPUT   After you enter the time code value hit the <RETURN> key.  If
  595.               valid, the time code will be displayed under the Time Code IN
  596.               field of the Time Code Output area.  You will also see the
  597.               number of frames which this time code value represents, relative
  598.               to the current time code type, to the right of the time code
  599.               value.
  600.  
  601.               Time Code IN input has two modes:
  602.  
  603.               FIRST
  604.  
  605.               If the last number you entered was a Time Code DURATION value,
  606.               you will see the Time Code OUT output field display a time code.
  607.               This time code is the length of time, in time code, of the IN
  608.               point plus the DURATION value (IN + DURATION = OUT.)  Next to
  609.               the OUT output field is the number of frames that the OUT
  610.               Output time code number represents relative to the current
  611.               time code type.
  612.  
  613.               If the entered value for the Time Code IN point is illegal,
  614.               ONLY the Time Code IN point will be set to the default value
  615.               of '00:00:00:00'.  The Time Code OUT and DURATION should then
  616.               equal one another since, in this case, IN + DURATION = OUT
  617.               where IN is equal to zero, OUT is then equal to DURATION.
  618.  
  619.  
  620.               SECOND
  621.  
  622.               If the last number you entered was a Time Code OUT value,
  623.               you will see the Time Code DURATION field display a time code.
  624.               This time code is the length of time, in time code, between the
  625.               IN and OUT points.  Next to the Duration output field is the
  626.               number of frames that the Duration Output time code number
  627.               represents relative to the current time code type.
  628.  
  629.               If the entered value for the Time Code IN point is illegal,
  630.               ONLY the Time Code IN point will be set to the default value
  631.               of '00:00:00:00'.  The Time Code OUT and DURATION should then
  632.               equal one another since, in this case, OUT - IN = DURATION
  633.               where IN is equal to zero, OUT is then equal to DURATION.
  634.  
  635.  
  636.  
  637. TIMECODE OUT - You may enter any valid time code number into this input
  638.        INPUT   gadget.  After you enter the time code value hit the <RETURN>
  639.                key.  If valid, the time code will be displayed under the
  640.                Time Code OUT field of the Time Code Output area.  You will
  641.                also see the number of frames which this time code value
  642.                represents, relative to the current time code type, to the
  643.                right of the time code value.
  644.  
  645.                If you previously entered a Time Code IN point, you will see
  646.                the Time Code Duration output field display a time code.  This
  647.                time code is the length of time, in time code, between the IN
  648.                and OUT points.  Next to the Duration output field is the
  649.                number of frames that the Duration Output time code number
  650.                represents relative to the current time code type.
  651.  
  652.                If the entered value for the Time Code OUT point is illegal,
  653.                both the Time Code Out and Time Code Duration fields will
  654.                display the default '00:00:00:00' time code value.
  655.  
  656.  
  657.  
  658. TIMECODE     - You may enter any valid time code number into this input
  659. DURATION       gadget.  After you enter the time code value hit the <RETURN>
  660.    INPUT       key.  If valid, the time code will be displayed under the Time
  661.                Code DURATION field of the Time Code Output area.  You will
  662.                also see the number of frames which this time code value
  663.                represents, relative to the current time code type, to the
  664.                right of the time code value.
  665.  
  666.                If you previously entered a Time Code IN point, you will see
  667.                the Time Code OUT output field display a time code.  This time
  668.                code is the length of time, in time code, of the IN point plus
  669.                the DURATION value (IN + DURATION = OUT.)  Next to the OUT
  670.                output field is the number of frames that the OUT Output time
  671.                code number represents relative to the current time code type.
  672.  
  673.                If the entered value for the Time Code DURATION point is
  674.                illegal, both the Time Code Out and Time Code Duration fields
  675.                will display the default '00:00:00:00' time code value.
  676.  
  677.  
  678. Below the TIMECODE OUTPUT area there is an 'About' button which will bring up
  679. a requester telling you about the program and such.  This is the same as the
  680. 'About' menu item.
  681.  
  682.  
  683. MENUS
  684.  
  685. The only two menu items are the 'About' and 'Quit' items.  You may see some
  686. information regarding the program by either selecting the 'About' menu item,
  687. by clicking on the button labelled 'Tell Me About RenderCalc!' or by pressing
  688. the RightAmiga-A key combination.  You may quit the program by either clicking
  689. on the Close gadget, by selecting the 'Quit' menu item or by pressing the
  690. RightAmiga-Q key combination.
  691.  
  692.  
  693.  
  694. BUG REPORTS
  695.  
  696. If you happen to find what you may think is a bug, please let me know.  You
  697. may report a bug by either Internet Email or postal mail.  You will find my
  698. Email addresses when you click on the 'About' menu item or it's associated
  699. button within the program.  My postal address is at the bottom of the
  700. Registration.form file which is also included with this archive.
  701.  
  702.  
  703.  
  704. CREDITS
  705.  
  706. Programming and Manual Writing:
  707.  
  708.    Daniel S. Milling Jr.
  709.  
  710.  
  711.  
  712. Intuition Interface Designed with:
  713.  
  714.    GadToolsBox 2.0 by Jan van den Baard
  715.  
  716.  
  717.  
  718. Intuition Interface modifications by:
  719.  
  720.    Daniel S. Milling Jr.
  721.  
  722.  
  723.  
  724. Compiled with:
  725.  
  726.    SAS C compiler
  727.  
  728.  
  729.  
  730. Special Thanks To:
  731.  
  732.    Larry Styer for Beta Testing  (if there's a bug, it's his fault!! :-)
  733.    Ryan Brooks for answering some intuition related questions and for not
  734.                finding any enforcer hits!
  735.    Chris Esser for his way-cool splitter program!
  736.  
  737.