@DATABASE "TotalDuration"
@NODE MAIN "Main part"

                               @{b}Total Duration@{ub}

                        (C) @{"Tomasz Kepa" LINK "About author..."} 09.VII.1996

                                 @{i}version 1.0@{ui}
                   @{b}_____________________________________@{ub}

                        @{" What the script does?     " LINK "What the script does?"}
                        @{" Requirements              " LINK "Requirements"}
                        @{" Usage                     " LINK "Usage"}

                        @{" Future                    " LINK "Future"}
                   @{b}_____________________________________@{ub}

                        @{" Disclaimer                " LINK "Disclaimer"}
                        @{" Effects of work           " LINK "Effects of work"}

                              @{" About author..." LINK "About author..."}
@ENDNODE

@NODE "About author..."

    @{b}About author...@{ub}

The  one who wrote this short AREXX script is me, Tomasz Kepa :-) I wrote it
in  few  hours,  in a while of boredom. Some time ago I needed such program,
even  I wrote to HiP's author, but apparently the idea wasn't good enough to
implement.  But HiP has an AREXX port, thanks to which my script exists. But
why  does  it  exist? Some time ago I was recording a compact cassette for a
friend of mine... Of course, I was recording PT mods =) I wasn't able to fit
the modules with acceptable accuracy, I had to use a calculator. This script
could be useful then.

Please  send  any  comments,  ideas,  bug reports and effect of work of this
script (please!) to:

   Snail mail:                        E-mail:

   Tomasz Kepa                        domel@alf.cc.uni.torun.pl
   ul. Stawisinskiego 4f/68           domel@pc1.xlo.torun.pl
   87-100 TORUN
   POLAND

If you decided to use snail-mail, please send a nice postcard =)
@ENDNODE

@NODE "What the script does?"

    @{b}What the script does?@{ub}

This  script  calculates  total  duration of modules present in HiP's module
list.  Also  it gives informations about the highest and lowest duration and
also an average of all durations. It can be sometimes useful (as it would be
in my case).
@ENDNODE

@NODE "Requirements"

    @{b}Requirements@{ub}

Script  needs an Amiga with KS1.2+ (althought checked only on A1200 w/ 3.0);
HippoPlayer  2.12+  (I  think)  and  working AREXX server. Also some modules
won't do any harm =)
@ENDNODE

@NODE "Usage"

    @{b}Usage@{ub}

Script can be ran fron CLI or Shell with command

  @{b}RX TotalDuration.hip@{ub} [SD=ShortDisplay] [ND=NoDisplay]

Parameters  in  square brackets are optional (do you see any other brackets?
=).  Parameter SD or ShortDisplay will cause displaying immediate results in
one line. Parameter ND or NoDisplay will cause no output except short raport
at the end. You can also use /? as parameter, you'll get short help.

Remember, you can give only one argument at a time.

In  Shell you can add an s protection-bit to the script. This will allow you
running the script by writing only a name.

During  the calculating of duration you should remember that if HiP will ask
you  about  deleting  the  file  from  list  (if  e.g.  its  format can't be
recognized), do NOT delete. Deleting may cause errors in average.

Also  the  title  bar should be set to 'time/duration, pos/length'. Else you
will get 0:00 on each module.

Remember,  this  script works correctly (the effects are accurate) only when
the  duration  can  be  calculated.  You  can't  get the durations from e.g.
ScreamTracker. Also never-ending ProTracker modules has duration 0:00.
@ENDNODE

@NODE "Disclaimer"

    @{b}Disclaimer@{ub}

This  script  is  FreeWare.  This  means  that  no fee should be charged for
copying. Script can be distributed only with HippoPlayer, including script's
documentation.  I  am not liable for any eventual damages caused directly or
indirectly by this script.

If you want to use this script comercially, please contact @{"me" LINK "About author..."}.
@ENDNODE

@NODE "Future"

    @{b}Future@{ub}

In  this  version  script  checks the duration after loading and playing the
module  (this  is @{b}one@{ub} HiP's AREXX function, I can't change it from 'outside'
of  HiP).  This causes that you hear some sound from beginning of the module
before  the  next  one  is  loaded. I hope that in near future HiP will have
function which would only load the module, without playing, which will leave
music  channels  unallocated (you could use the channels for other purposes,
now you can not).

If anyone would request, I could localize the script.
@ENDNODE

@NODE "Effects of work"

    @{b}Effects of work@{ub}

@{i}Total duration of 1170 modules is 67:09:14 (that's exactly 241754 seconds)
Highest duration: 32:09, lowest duration: 0:07. Average: 3:26@{ui}

It's more than @{i}67 hours@{ui} of continuous music... almost three days :-)
Whole check took 25 minutes 41 seconds (thanks must go to my Apollo 1240@25 :)
(I used some UN*X' Time like program)

My collection: 1170 modules.
Compression: xpk: SQSH, CRMS, GZIP
Size: approx.  266 MB w/o compression, 163 MB w/ compression (hey, I have only
      850 MB of HD :-)

These were full, normal modules. Now @{u}chip@{uu} ones:

@{i}Total duration of 834 modules is 18:28:39 (that's exactly 66519 seconds)
Highest duration: 8:35, lowest duration: 0:05. Average: 1:19@{ui}

Wow!! 18 hours of pure chip! :-)
Whole check took 6 minutes and 43 seconds.

My collecton: 834 modules
Compression: xpk: MASH, PWPK, LZCB, GZIP, PPMQ, SHRI, CRMS, NUKE, SQSH, DMCB.
Size: approx. 19.9 MB w/o compression, 8 MB w/ compression (wow!)

I wonder how is it on @{i}your@{ui} Amiga...
I can put your statistics here if you'd like. Please! I'm very interested...
As  I  got  almost  no feedback (one person!! only one person have seen this
script and only one person has modules in the whole Amiga community!?)
@ENDNODE