                         EXLOG V2.0 DOCUMENTATION
                         ------------------------

                             TABLE OF CONTENTS
                             -----------------

                  1. ..............   Introduction
                  2. ..............   Getting started    (New user: Read this)
                  3. ..............   The Host Screen
                    3a. ..............  The menus
                    3b. ..............  The gadgets
                  4. ..............   The Logtype Screen
                    4a. ..............  The menus
                    4b. ..............  The gadgets
                  5. ..............   About calculations (Read this!)
                  6. ..............   Error messages
                  7. ..............   History
                  8. ..............   Registration       (New user: Read this)
                  9. ..............   Known bugs


                              1. INTRODUCTION
                              ---------------

ExLog is a utility to be used to calculate your phone bill from the
log-files created by your terminal software.  The goal of the program is
maximum userfriendlyness and flexibility.  To obtain maximum userfriendly-
ness, ExLog is totally intuition-based and offers a range of configurable
options.  To obtain maximum flexibility, it is possible to teach ExLog to
read other log-file formats, than the three default formats (JR-Comm,
MagiCall & TrapDoor).  ExLog runs on both KS1.3 and KS2.0, and if KS2.0 is
present, the buffered I/O functions FRead() and FWrite() are used.
Furthermore NTSC is detected (and supported).



                            2. GETTING STARTED
                            ------------------

When ExLog is run, it will automatically detach itself from the CLI, and
set it's own stack size to 30000.  A requester will show up, saying:
"Unable to open file S:ExLog.cfg for input" (the reason should be pretty
obvious).  After confirming this requester, ExLog will show you the stuff.
The first screen, that is opened is the screen, from where you will conduct
must of your business - The Host Screen.  In the upper left coener, there
is a LISTVIEW type gadget showing the boards, with registered calls.  This
is empty except for an entry called @DefaultPrices.  Selecting this entry
will highlight it, and show some data in the gadgets just below (Std.,
Start, End, Price, ...) - These prices are the default prices for alle new
boards.  See section 3b for documentation on how to set the prices.  When
you have set the default prices, you are ready to read the logfiles - The
header above the LISTVIEW (the "BOARDS" header) is actually a gadget, and
clicking it, will toggle the contents of the LISTVIEW between "BOARDS" and
"LOGTYPES".  Toggle it to show logtypes, and select the logtype you whish
to read (you may ofcouse select more that one logtype to be read).  Now
select the menuitem Project/Read logfile (Amiga-R), and a requester will
pop up for each logtype you have selected, prompting you to specify the
actual logfile.  While the logfile is being read, some messages may be
shown in the large lower box - See section 7 for an explanation of error
messages.  Now all the boards shown in the LISTVIEW gadget will have the
same price settings as the @DefaultPrices antry, and you may now select
(one by one) the boards to recieve other price settings, setting the
prices.  Once this is done, save the configuration, and have some fun.

    -------------------------------------------------------------------
    NOTE: The unregistered version only reads 100 lines of any logfile.
    -------------------------------------------------------------------
    -------------------------------------------------------------------
    NOTE FROM JOKER: This version is 100%. The limitation was removed!
    -------------------------------------------------------------------



                            3. THE HOST SCREEN
                            ------------------

The Host Screen is the first screen shown by ExLog. It is from this screen
most of the work is done. Only if you need to teach ExLog a new log-file
format, will you have to do some hard labour on the logtype screen.



                               3a. THE MENUS
                               -------------

PROJECT (Menu)
|
+-Load config             Load configuration
+-Save config             Save configuration (without filerequester)
+-Save config as          Save configuration (with filerequester)
+-Preferences
| +-Auto calculate        Perform calculations whenever needed        (*1)
| +-Auto clear            Clear old call data, when logfiles are read (*2)
| +-Verbose calculation   Display all totals, while calculating
| +-Autoread logfiles     Automatically read the logfiles, when ExLog is started
|
+-Edit formats            Jump to the Logtype Screen
+-Read logfiles           Read selected logfiles
+-Read logfiles from      Read selected logfiles (with filerequester)
+-Clear data              Clear all call data
|
+-About                   An absolute must.
|
+-Quit                    Guess what!

*1:  Calculations are needed under the following sercumstances:

  - One or more logfiles are read
  - Period start/end are changed
  - Price settings for one or more hosts are changed

  If Auto calculate is on, calculations are performed automatically, when
needed.  This may take a while, if your logfile is big, so if many changes
are made to the price settings, it is recommended to turn this option
temporarely off (note, that normally this option should be turned on).

*2:  Call data should be cleared, if the same logfile is read more than
once (or else the calls will be registered and added repeatedly).  This
option should allways be turned on unless you are reading the logfiles in
seperate steps.

      STATISTICS (Menu)
      |
      +-Daily
      | +-Calls     Display call statistics by hour
      | +-Time      Display time statistics by hour
      | +-Price     Display price statistics by hour
      +-Weekly
      | +-Calls     Display call statistics by day
      | +-Time      Display time statistics by day
      | +-Price     Display price statistics by day
      +-Monthly
      | +-Calls     Display call statistics by month
      | +-Time      Display time statistics by month
      | +-Price     Display price statistics by month
      +-Top10
      | +-Calls     Display top 10 boards (meassured by calls)
      | +-Time      Display top 10 boards (meassured by time)
      | +-Price     Display top 10 boards (meassured by price)
      +-Misc        Display various interesting statistic information
      |
      +-Percentage  Toggle between relative and absolute figures



                              3b. THE GADGETS
                              ---------------

                  +---------------------+
Toggle between -->|       BOARDS        |
HOSTS and         +-+--------------+----+        +------+
LOGTYPES.         | |Valby Amiga BB|      Start: |080169| <- Oldest accepted call.
                  | |Bits'n'Chips  |+---+        +------+
Proportional ---->|#|AUGL          ||Del|        +------+
gadget.           |#|DAB           |+---+ End  : |311299| <- Newest accepted call.
                  |#|Unknown carrie|  ^          +------+
                  +-+--------------+  |           +----+
Select all HOSTS/  +---+------+----+  Delete se-  |Cal-|
LOGTYPES. -------->|All|Toggle|None|  lected en-  |cu- | <- Start calculation.
                   +---+------+----+  tries.      |late|
                          ^     ^                 +----+
Toggle selection. --------+     +-- Unselect all.
                  +------------------------------------------+
                  | PRICE       CHEAP PERIODS   CHEAP DAYS   |
                  +------------------------------------------+
                    Std.      Start End  Price     Day  Price
                  +------+ +-+----+----+------+ +-+---+------+
                  | 0.350| |@|1930|0800| 0.187| |@|Sun| 0.187|
                  +------+ +-+----+----+------+ +-+---+------+
                     ^      ^  ^    ^     ^      ^  ^    ^
                     |      |  |    |     |      |  |    |
Set standard price/minute   |  |    |     |      |  |    | -+
Show/edit next period ------+  |    |     |      |  |    |  |
Set time for period start -----+    |     |      |  |    |  |
Set time for period start ----------+     |      |  |    |  |--} (*1)
Set price for period ---------------------+      |  |    |  |
Show/edit next day ------------------------------+  |    |  |
Set day name ---------------------------------------+    |  |
Set price for day ---------------------------------------+ -+

*1:  These gadgets are activated, when a host is selected.  The host will
be displayed with white text on a black background (all other selected
hosts are displayed with grey text on black background).  Note, that
recalculation is needed, whenever the prices or periods are changed.



                           4. THE LOGTYPE SCREEN
                           ---------------------

The Logtype Screen is used, when a new logtype is to be registered (or if
an existing logtype has to be modified).



                               4a. THE MENUS
                               -------------

PROJECT (Menu)
|
+- Return     Return to Host Screen
+- Quit       Guess what!



                              4b. THE GADGETS
                              ---------------

       +--------------+   +----------------------------------------+
       |    LOGTYPE   |   |          IDENTIFICATION PATTERNS       |
       +-+------------+   +-----------+----------------------------+-+
       |#|JR-comm     | +>Connect   : |                            |@|-+
Propor-|#|MagiCall    | |             +----------------------------+-+ |
tional |#|TrapDoor    | +>Disconnect: |                            |@|-+
gadget>| |            | |             +----------------------------+-+ |
       | |            | +>Upload    : |XXXXXXXXXXXXXXXXXXXXXXXXXXXX|@|-+
Log-   +-+------------+ |             +----------------------------+-+ |
type- >|              | +>Download  : |XXXXXXXXXXXXXXXXXXXXXXXXXXXX|@|-+
name   +--------------+ |             +----------------------------+-+ |
        +---+ +------+  | Def. host   |                            |   |
        |Add| |Delete|  |             +----------------------------+   |
        +---+ +------+  |                  ^                           |
          ^       ^     |                  +- Default host name (*1)   |
          |       |     +-------------------- Various patterns  (*2)   |
Add new logtype   +-- Delete selected logtypes              Show/edit next
                                                            pattern.

*1:  If the connect-ID does not contain @b (host name identifier), this
host name will be used.  This is usefull with logfiles like the
TrapDoor.log:

             .
             .
             .
|  1-Mar-92 19:32:27  TrapDoor 1.50 opened
:  1-Mar-92 19:32:39  Waiting for Call
:  1-Mar-92 19:32:46  Calling 86720274  <- "86720274" could be the host name
                                           but we have no connection yet.
|  1-Mar-92 19:33:04  CONNECT 2400      <- This is the connection
             .                             identifier, but here we have no
             .                             host name
             .
|  1-Mar-92 19:33:38  Call successful
|  1-Mar-92 19:33:41  Exiting
|  1-Mar-92 19:33:45  TrapDoor 1.50 closed
             .
             .
             .

Because there if no identification of the host in the line containing the
connection-ID, there will be no @b identifier in the identification
pattern.  In this case the default host name will be used.


*2:  Some terminal programs does not log the same information upon
connection and disconnection, so more than one ID is allowed.  One terminal
program with this behaviour is JR-Comm:

             .
             .
             .
10/10/90 23:45:24 - JR-Comm session started.
10/10/90 23:49:31 - Formula II:               <- Connect-ID is OK.
10/11/90 00:02:30 - Disconnected.             <- Disconnect-ID #1.
10/11/90 00:02:33 - JR-Comm session finished.
10/11/90 10:12:50 - JR-Comm session started.
10/11/90 10:13:24 - Valby Amiga BBS:
10/11/90 10:17:48 - Hang up modem.            <- Disconnect-ID #2.
             .
             .
             .



                           5. ABOUT CALCULATIONS
                           ---------------------

The calculations are performed as follows:

  - Any call initiated within a special price period, will be registered as
    a 100% special price call. ie.:

    Std. price      : 0.375
    Cheap zone start: 1930
    Cheap zone end  : 0800
    Cheap price     : 0.1875

    A call is made at 19:00, and session connect time is 1 hour.
    This call will be registered as a std. price call, thus the total price
    will be 60 * 0.375 = 22.5
    If the call was made at 07:30, it would be registered as a special
    price call, and the price would be: 60 * 0.1875 = 11.25

    This faulty behaviour will be corrected in the next release, but there
    should not be many calls, that fall into the described category.

  - The rules for special price periods apply to the special price days as
    well.

  - The statistics are rounded correctly before being drawn (10.4 -> 10.0 &
    10.5 -> 11.0)

  - All calculations are made with a precision of one second (smallest time
    unit is one second)



                             6. ERROR MESSAGES
                             -----------------

  If ExLog refuses to start, but no guru shows up, it is probably because
it failed to open a library.  You need ReqTools.library V37 or higher to
run ExLog.  If ReqTools.library is not present, the screen will flash once,
and ExLog will terminate.

  If the screen flashes twice, you have run out of memory.

When the logfiles are read, the following messages may be displayed:

  - DD/MM/YY HH:MM:SS Never ending call to <hostname>
    No disconnect-ID was encountered for this call.

  - 100 line limit reached. Remember to register !
    You have an unregistered copy - Register ASAP!
    NOTE FROM JOKER: You will never see this!

  - *** Invalid month 'n' - Must be 1-12.
    Invalid month in ID-string from logfile.

  - *** Invalid year 'n'.
    Invalid year in ID-string from logfile.

  - *** Invalid day number 'n' - Range 1-m.
    Invalid day number in ID-string from logfile.


The following error-messages may be displayed, when you are browsing the
statistics:

  - No relative statistics, when total number of calls = 0.
    Obvious.

  - No relative statistics, when total call time = 0
    Obvious.

  - No relative statistics, when total call price = 0.0
    Obvious.



                                7. HISTORY
                                ----------

02-Mar-92 : Beta release 2.0 (How many bugs can there be ?)


                              8. REGISTRATION
                              ---------------

As you may have noticed, the unregistered version only reads 100 lines of
any logfile.  To register, just fill out the registration form (and enclose
$15 - CASH), and mail it to:

  Rene Petersen
  Carstensgade 36
  1770 KBH. V.
  Denmark

  NOTE FROM JOKER: This version works 100%. But nevertheless I recommend
  registration because this piece of software is very good and you should
  support it!!!

  Any comments may be mailed to the above address, or this Fido-net
  address: Rene Petersen 2:230/158.8

  Besides getting a registered (uncrippled) version, you also get all minor
  releases, and the next major release (which will probably be a full KS2.0
  version, if mainly KS2.0 registrations are recieved)

      ---------------------- Registration form ----------------------

  Name:_______________________________________

  Address:____________________________________
          ____________________________________
          ____________________________________
          ____________________________________

  Computer type :____________________ (A500/A100/A2000/A3000/..)
  Processor     :____________________ (680x0)
  Math-processor:____________________ (6888x)
  Kickstart ver.:____________________ (1.2/1.3/2.0)

      -------------------- Registration form end --------------------



                               9. KNOWN BUGS
                               -------------

Some users have experienced a visit by the guru, when they have a
terminal-program running in the background.  I haven't been able to locate
the cause of this error, because the error doesn't shop up on my own
computer.  Hopefully I will be able to correct this in the next release.


Please send any bug reports and general sugestions for improvements to one
of the addresses above.
