                                  X-Comm
                                  ------

                               Version 1.00
                               ------------

             Copyright ฉ Edward Lawford & William Waring 1992

                        "X-Comm - Xpect the Best!"

                                ___________
                                LEGAL STUFF
                                ฏฏฏฏฏฏฏฏฏฏฏ

Copyright
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        X-Comm,  and  subsequent  and  previous versions, are by Australian
Law,  owned  in  copyright  by Edward Lawford and William Waring.  I hereby
grant permission for duplication of this archive to any bulletin board, FTP
site,  or any other type of electronic media without our consent as long as
the following conditions are met :-

        (1)  This  archive  is not used to generate profit, except under my
             (Edward Lawford) and/or William Waring's consent.
        (2)  The distributed archive must be left in the exact state as the
             way  it  was  archived by me.  There may be no item deleted or
             changed   at   all.   This  includes  executables,  libraries,
             documentation or any file or directory of any kind.
        (3)  I hereby grant permission for this archive to be placed in the
             Fred  Fish  public domain libraries.  A Nominal copying fee of
             no more than $5AUD may be charged.

Shareware
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  is  the  unregistered  evaluation  version  of X-Comm.  It is
distributed  under the concept of shareware.  This means that you may trial
this  product  for  30  days, and if after that period you wish to continue
using this product, you MUST register it.

        This  is NOT the complete version of X-Comm.  It does not include a
new,  unique  feature  that can't be found in any other terminal program to
this  date.   "File  Control"  is only activated in the registered version,
therefore  anything  to  do with File Control in this version is "ghosted".
To  find  out  more  about  File  Control,  please read the section on File
Control in this manual.

        To  register  your copy of X-Comm, please fill out the registration
form   included   in   the   "Documentation"  directory  of  this  archive.
Information about registration, cost, terms, etc are included in this file.

Disclaimer
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        X-Comm  does  NOT  come  with  any guarantee of ANY kind.  In fact,
X-Comm  is  not guaranteed to do anything, or everything.  If it decides to
throw  a spanner into your hard drive spindle and throw a bolt of lightning
at  your  power supply, DON'T BLAME ME!  Although I doubt very much that it
would  do  this,  X-Comm is not under any form of guarantee at all.  I will
say  that  I  have  written  it  to  serve as a terminal program, but if it
doesn't do this, DON'T BLAME ME!  You get the picture...

Distribution
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        I  plan  to distribute this program as far and wide as is possible.
Feel  free  to upload the evaluation archive to any BBS, FTP site, FSP site
or  any  friend  you desire.  You may NOT however change X-Comm in any way.
See the "Copyright" section for more information.

        New  versions  will  be  posted to anonymous FTP first.  The site I
have  chosen  is  amiga.physik.unizh.ch.   I chose this because it seems to
have  coverage  matched only by the ill fated "AB20" archives.  It has many
mirrors  in many locations, so it should be freely available to most people
who  have anonymous FTP access.  Once it reaches there, I hope that it will
be spread to most BBS's around the world.  I am planning on uploading it to
most BBS's here in Sydney, Australia.

Contents of the Distribution Archive
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

     C (dir)
       IconX                            MuchMore
       XCommRT                          
     Fonts (dir)
          IBM (dir)
            8                                
          CourierIBM (dir)
            13                               
       CourierIBM.font                  IBM.font
     Libs (dir)
       owndevunit.library               reqtools.library
       xemamiga.library                 xemascii.library
       xemibm.library                   xemvt340.library
       xprascii.library                 xprkermit.library
       xprxmodem.library                xprymodem.library
       xprzmodem.library                
     Documentation (dir)
       OwnDevUnit.doc                   OwnDevUnit.doc.info
       VT340.Keys&Cmds                  VT340.Keys&Cmds.info
       X-Comm.BugReportForm             X-Comm.BugReportForm.info
       X-Comm.Manual                    X-Comm.Manual.info
       X-Comm.Registration              X-Comm.Registration.info
       X-Comm.RegistrationForm          X-Comm.RegistrationForm.info
       X-CommRexx.Manual                X-CommRexx.Manual.info
       XPRAscii.doc                     XPRAscii.doc.info
       XPRKermit.doc                    XPRKermit.doc.info
       XPRXModem.doc                    XPRXModem.doc.info
       XPRYModem.doc                    XPRYModem.doc.info
       XPRZModem.doc                    XPRZModem.doc.info
     Rexx (dir)
       ExtroLogon.Rexx                  ExtroLogon.Rexx.info
       TwisterLogon.Rexx                TwisterLogon.Rexx.info
  Documentation.info               Install X-Comm
  Install X-Comm.info              Rexx.info
  X-Comm                           X-Comm.info

===========================================================================

                               ____________
                               Introduction
                               ฏฏฏฏฏฏฏฏฏฏฏฏ

X-Comm - The Amiga Terminal Program
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        X-Comm  is  an  telecommunications  package for the Amigaฎ range of
computers.   It  was  written  to  be a fast, easy to use but very powerful
terminal  program  that  looked good.  It only runs under Kickstart 2.04 or
higher  and  uses the gadtools library for its GUI.  We have tried to stick
to the Commodore guidelines for user interfaces as much as possible to keep
the program 'familiar.'

        X-Comm  has  many features, most of which are designed to make your
communications  life  easier  and  more  comforatable.  It is the result of
almost 1 year of programming effort by myself, William Waring and our chief
beta  tester  and  GUI artist, Michael Lorant.  X-Comm consists of over 1.1
Megabyte of source code.  It was written using SAS/C Version 6.10, CygnusEd
Version  2.12, WShell 2.0 and Directory Opus Version 4.00.  I couldn't have
written X-Comm without any of these ingredients.

X-Comm - The Story
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        Why  did  we  decide  to  write yet ANOTHER communications program?
Well, for one, it had been on my hit list for a while, but it always seemed
like  such  a  big  chore.  When I started, I'd only been coding in 'C' for
about  6  months,  and  in  that  time,  I  had  mostly written M A X's BBS
utilities  and  doors.   It  was the fateful night of Monday, January 26th,
1992  when  William  came  round  to my place, along with his friend, Wayne
Holly.  In the flow of conversation, Wayne mentioned to me that he might be
buying  an  internal modem.  I told him that this was a stupid idea because
he had no status lights to flash at him and tell him what was going on.  So
I  said to him that I could write a modem status program to fake the status
lights  on the front of the modem.  Wayne thought that was a good idea, and
Will  and  I  started searching around our Libraries and Devices manual for
information how to program the serial device.  I had never done this before
and  nor  had  Will.  It seems like a MASSIVE task in reading, just to open
the thing.  Anyway, they went home and I got to work on it.  After a while,
I  though  to myself, 'Why don't I turn it into a terminal program, as well
as  showing  the modem status?'.  Well?  What happened, Will and I ended up
devoting  the  last  year  of  our lives to writing this:  X-Comm (It still
doesn't display the status of the modem, except the carrier!)

About the Authors
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        Myself,  Edward  Lawford,  is still at school here in Sydney.  I am
sixteen  and  doing  my  HSC  final  exams next year.  I've been a computer
fanatic ever since my dad got me a C64 back when I was about eight.

        William  is  going into third year computing science and electrical
engineering  at  Sydney  University.   He  has  done  a fair amount to this
program,  although not quite as much as me (mainly because he studies and I
don't  :-)  ).  Then again, anyone who can write a 300+K program on a stock
A500  with  1.5meg  (After  kicking kickstart) has got to have some sort of
death wish (Don't you think Will?)

        Mike, you're not an author, so you don't get mentioned here :-)

Feature List
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        Here is a list of the major features of X-Comm :-

        - X-Comm  is  a fully blown amiga terminal program with many unique
          and powerful features.

        - X-Comm supports all standard, ESC and AGA screenmodes (Although I
          havn't  had  a chance to test the later.) It can be used with ANY
          screen as well as being able to run in any overscan mode (or none
          at  all.)  Not only that, but the size of the terminal window can
          be  completely  independant  of  the screen size.  Any space left
          over  can be used to place other items such as the status window,
          chat window or even other programs (X-Comm's screen is public.)

        - X-Comm uses a completely font sensitive user interface (thanks to
          the  help  of  GadToolsBox).   Any  font  (including proportional
          fonts)   may   be   used   for   the  windows.   Any  mono-spaced
          (non-proportional  font)  may  be used for the terminal emulation
          (This is providing the XEM library supports this, if you're using
          one.)

        - X-Comm  may  be  opened  on  a custom screen or ANY public screen
          currently  opened.   This  includes workbench or even 'term' :-).
          On  a  public  screen,  X-Comm  maybe resized, moved or generally
          manipuled to suit your needs.

        - X-Comm  has  many  features  to  create a unique 'look-and-feel'.
          This  includes  placing  a 3-D border around the terminal window,
          dropping a shadow below the window or placing a Workbench pattern
          on the backround.  You can also place invisible system gadgets on
          the  terminal  to  drag,  resize  or  depth  arrange  it  without
          interfering with your communications.  X-Comm may also be resized
          with  the aid of a unique 'sizing window' which will allow you to
          enter  the dimensions in rows and columns as well as allowing you
          to center the terminal and clock windows.

        - A  very powerful phonebook is included with X-Comm.  It allows an
          unlimited list of entries.  Each entry can contain a 200 charcter
          list of phone numbers for multi-line systems.  When dialing, each
          line  will  be  treated  seperately,  but with the same settings.
          Each  system  can  also  contain the username, password and alias
          used  on  that  system.  A password of any length and type can be
          generated  using  a  48bit  random seed password generator.  Call
          charges  can  be  assigned  to each entry so that X-Comm can keep
          track  of  how  much calls are costing so that you may be able to
          add up the cost with the unique call analyser.  Each entry may or
          may  not  have a custom configuration for X-Comm.  If it does, it
          will   allow  you  to  completely  reconfigure  X-Comm  for  that
          particular  system.   If  you do not need a custom configuration,
          X-Comm  will  save resources and just continue to use the current
          systems when logged on.  This has the additional advantage of you
          not  needing  to  update  each and every phonebook entry when you
          change certain things.

        - X-Comm  has a unique auto-login protocol called MXC.  At present,
          this  is only set to work with M A X's BBS systems.  When logging
          onto  a  M  A  X's BBS system, and if enabled, X-Comm will try to
          handshake  with  the  remote  system.  If successful, you will be
          shuttled  into  the  remote system without having to touch a key!
          It's  completely automated and very fast.  Not only that, but you
          can   configure   your   account   locally.    X-Comm  will  even
          automatically  determine  your  terminal  height  and  notify the
          remote system of how many lines your terminal can display!

        - X-Comm  has a unique Phonebook Configuration Manager which allows
          you  to  edit,  delete, add or manipulate each phonebook's custom
          configuration (if it has one.)

        - X-Comm  can  import  most  of  the  major communication program's
          phonebooks.   These  include  JR-Comm  V1.02a,  Terminus (Jr-Comm
          2.0),  Term  2.4a,  Magicall  1.0 and NComm 2.0.  X-Comm can also
          export  your  phonebook  to a file or a printer so you can have a
          permanent copy incase you loose it.

        - X-Comm  supports  all  serial  options  offered  by  the standard
          Commodore   serial   driver.    Baudrates  of  upto  115,200  are
          supported.   Highspeed  (Rad  Boogie) and shared modes as well as
          custom drivers and multi-serial boards are supported.

        - X-Comm supports the XEM standard for terminal emulation.  This is
          a  powerful  and  very fast set of emulation libraries that allow
          you  to  expand  X-Comm's emulation capabilities as new libraries
          are  released.   If you do not want to use the libraries, you can
          use  the  console  device for almost standard IBM ANSI emulation.
          Many terminal options are included.

        - X-Comm  is completely configurable for your modem type.  It comes
          preconfigured  for the Hayes 'AT' modem command set, but there is
          no  reason  why it cannot be used with other modem types.  X-Comm
          also includes a unique 'slow' command option which will allow you
          to  slow  down  the  speed at which X-Comm sends commands to your
          modem, incase you have a shitty modem (like me!)

        - X-Comm  supports  a  completly  unique  and  revolutionary  macro
          implementation.  The standard way of doing macros has always been
          to  just  supply  you  with  the  function  keys  (F1  - F10) and
          modify  this with the use of qualifiers (Alt, Control, Left Amiga
          etc.) X-Comm takes this concept further and allows you to use ANY
          key  on  the  keyboard  using any qualifier set you like.  I have
          found that using this system, a great deal of flexibilty has been
          achieved.   Macros  can  be  assigned  to  'locgical' keys on the
          keyboard,  such as Alt-P to send your password, and Alt-U to send
          your  username.   Macros also don't have to be just text strings.
          They  can send textfiles, execute an ARexx script or even execute
          a menu function in X-Comm.

        - X-Comm includes a set of format strings which allow you to insert
          information  anywhere  you like in X-Comm.  Almost any string can
          accept  these format strings.  For example, placing %u in a macro
          string will place the current username in that macro.  Placing %B
          in  a  macro will send the current baudrate.  There are many more
          which will be discussed later in detail.

        - X-Comm  can be completely iconified.  It can be told to close the
          serial device when iconified or to leave it open.  It can also be
          iconified  to an icon on workbench, a pull down menu in workbench
          or both.

        - X-Comm  has  a  unique  set  of  miscellaneous features including
          upload  docking,  customizable  task  priorities  and anti-logoff
          delayed sending plus lots more.

        - X-Comm  has  a very powerful advanced dialer configuration.  This
          allows  you  to  setup  X-Comm's dialer to account for your modem
          type.   This  includes  being  able  to send inbetween delays and
          modem  reaction  delays  as  well as being able to monitor serial
          activity whilst dialing is taking place.

        - X-Comm has a completly customizable text logfile.  Certain events
          in  the  log can be turned off and completely changed to say what
          you  like.   Using a unqiue set of format strings, you can insert
          things like last filename transfered, CPS rate, errors, connected
          baudrate, system date, time, etc.

        - X-Comm  can  generate  a binary logfile that will mirror the text
          logfile,  except  that  it will store information that will allow
          X-Comm to 'analyse' it later on, using the log analyser.  The log
          analyser  is  similar  to  many  third  party  pieces of software
          developed  for  other communications packages, except that X-Comm
          has  it built it.  Many statistics can be generated about systems
          you  have called including time spent online, downloads, uploads,
          costs  of  calling  that  system and your overall cost of calling
          every system.  This can be a very good rough indicator of working
          out  how  much you are spending on calls, BEFORE you get the next
          phone bill!

        - X-Comm  fully  supports  the  XPR  standard  for  file transfers.
          X-Comm  has a VERY comprehensive transfer status window including
          disk  space,  transfer  guages,  estimated  time to finish, error
          lists, real-time elasped clock, etc.

        - X-Comm  also  supports  a  unqiue  upload  list.  The upload list
          allows you to add multiple files from multiple directories and/or
          devices.   The  list can be generated, edited and manipulated all
          before  you  even  call  the system, saving you valuable time and
          money.   The  upload list can be used quickly with the touch of a
          button.   The  list  can  also be loaded and saved for later use.
          Aborted transfers can be automatically placed in the list.

        - X-Comm   supports   a  fully  dynamic  review  buffer.   It  runs
          independant  of  the  terminal  window.  It can be 'stuck' to the
          main  screen, pushing the terminal window down, so that you don't
          miss  data  behind  the  window.   It  is  completely movable and
          resizable and supports multi-line text snipping to the clipboard.

        - Finally,  X-Comm  has a comprehensive ARexx port, allowing you to
          control X-Comm completely by scripts.  ARexx macros can be called
          from menus, automatically at logon or using a format string.

X-Comm V1.0 - The Fake
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        I  just wanted to put this note in about a so-called X-Comm version
1.0 that got out.  This version was NOT real, it was actually V0.85฿.  This
version  was  never  intended  for  release,  and  hence didn't include any
documentation  or  support files, but it DID include MANY bugs.  My account
on  the  support  BBS  was hacked due to a mistake on my part, and the beta
version  was  downloaded.   It  was  first released as version 0.85, then a
bunch  of  LAMERS  called  'Unicorn'  got  a hold of it and decided they're
pretty smart and that they would go through it with a hex editor and zap it
to  version  1.00.   Well,  that  takes  GREAT tallent doesn't it?  They're
pretty  good  arn't they?  Managed to HACK a program.  Well done guys.  You
just scored yourself a ZERO for originality.  GET A LIFE.

        By  the  way,  just  for  reference,  the  person who spread X-Comm
initially  is  a  guy  called  Chris Baum (Alias:  Punisher).  Thanx Chris!
Standard "god i'm good" hacker type.  Again, Get a life.

        Oh  well,  this  is the REAL macoy version of X-Comm.  Please don't
get them mixed up! This is version 1.00, not V1.0.

===========================================================================

                               ____________
                               Installation
                               ฏฏฏฏฏฏฏฏฏฏฏฏ

Hardware/Software Requirements
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

X-Comm requires the following :-

        - An Amiga! (Thats a good place to start.)
        - 1 Megabyte of ram in total.
        - 512K of chip ram.
        - Kickstart version 2.04 (X-Comm will take advantage of KS3.0
          features, if present.)
        - ReqTools.library version 38 or higher.

The following things are optional but RECOMMENDED :-

        - A modem or NULL serial link.
        - The XEM terminal libraries.
        - The XPR transfer libraries.
        - A hard disk.

Installing X-Comm
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        Installing   X-Comm   is   quite   simple.   A  standard  Commodore
installation  script  has  been  included  to  help you do this.  Here is a
general rundown of what the script will do for you:

        - Copy the latest ReqTools.library to LIBS:
        - Copy XEM#?.library to LIBS:
        - Copy XPR#?.library to LIBS:
        - Place X-Comm in a suitable position.

        Thats  about  it really.  X-Comm is almost completly self contained
and can be placed anywhere you desire.  It only uses a few data files which
can  be  stored  wherever  you like (the locations can be configured inside
X-Comm.)

===========================================================================

                                 _________
                                 Operation
                                 ฏฏฏฏฏฏฏฏฏ

Conventions used in this manual
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        There  are  a few abreviations used in this manual to help cut down
the length of things.

        LMB             :       Left Mouse Button.
        RMB             :       Right Mouse Button.
        Click           :       Press and release the LMB.
        Double-Click    :       Press and release the LMB twice in rapid
                        :       succesion.
        PDM             :       Pull down menus. Press and hold the RMB to
                        :       display them.
        ("Key sequence"):       This will mean to type the sequence inside
                        :       the "" quotes. For example :-
                        :
                        :               ("Ctrl-Alt-D")
                        :
                        :       would mean you hold down both the Ctrl and
                        :       Alt key while pressing the 'D' key. You
                        :       would then release them all.
        (Gadget Name)   :       This means to click the gadget with the
                        :       name (Gadget Name).
        [Menu/Item/Sub] :       This would mean to select the PDM [Menu],
                        :       the item [Item] and the subitem [Sub].
                        :       Note : Sometimes, only Menu/Item will be
                        :       given, as there may not be a subitem.

Starting X-Comm
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        To  start  X-Comm,  you  can  either type its name from the CLI, or
double-click  its  icon  from Workbench.  After some disk accessing, X-Comm
will  bring  up  an information window displaying copyright information and
inform  you that it is currently loading and setting itself up.  After some
more disk access, you should see the X-Comm main screen appear.

        NOTE  :   If  launched from CLI, X-Comm will not return the CLI you
were using, so you may want to use Run or Runback.

        I  will  discuss  the main screen of X-Comm in more detail later in
this chapter.

Workbench Tooltypes/Command Line options
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        X-Comm  has  a  few  tooltypes and command line options that can be
used  to  modify  the way it starts off.  X-Comm uses the standard AmigaDOS
2.0 conventions for commandline options.  The options are :-

        I = ICONIFIED/S

                When  this  option  is  activated, X-Comm will start off in
iconified  mode.   This  means  that  it  will  not open a screen, but will
iconify itself depending on the iconify settings.

                To   activate   this   from  CLI,  either  specify  'I'  or
"ICONIFIED"   as  an  argument.   Click  on  the  X-Comm  icon  and  choose
[Icons/Information] to select Information on X-Comm.  Select (Add) and type
the  word  "ICONIFIED"  into  the  tool  types  string  gadget,  then press
("RETURN").   This  is  effictivly the same as launching from CLI using the
ICONIFIED keyword.  Use this convention to set all the following options.

        N = NOSERIAL/S

                This  tells  X-Comm  not  to  open  the  serial driver when
starting up, but to go into serial quiet mode.

                Specifiy either 'N' or "NOSERIAL" as an argument or add the
"NOSERIAL" tool type to X-Comm for workbench.

        C = CONFIG/K

                This  option  can  tell  X-Comm which configuration file to
use,  instead of the default configuration file.  For example if you wanted
to use the configuration file :-

                        Work:Stuff/X-CommInterlaced.Config

                You would enter:

                        CONFIG=Work:Stuff/X-CommInterlaced.Config

                as  an  argument.  This is exactly the same for a workbench
tooltype.

The ASyncronous Requester
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        These  are  requesters  that can't really be called requesters (Coz
they  aren't 'requesting' anything).  It is just an information window that
you  may  see  pop up from time to time that tells you information.  A good
example  of  this  is  the  window that you first see pop up when X-Comm is
loading.  It displays copyright information and other stuff.  Notice how it
looks  a  bit like a requester, but doesn't have any buttons?  Well I found
it  a great way of telling you that X-Comm is doing something that MAY take
some time, but will go away when X-Comm is finished doing the operation.

        If  you're interested, the ASyncronous requester is actually just a
standard  Reqtools.library EZRequest, but there are no buttons supplied, so
Reqtools  doesn't  display any.  It is put up and pulled down by the use of
Nico's  really  neat AsyncReqhandler.  Thanx Nico!  Why doesn't anyone else
use these?

The String Gadgets
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        The string gadgets in X-Comm are slightly different to ones in alot
of  other  programs.   They  have a few 'neat' features built-in to them to
help you around.  Here is a list of keys that are accepted in X-Comm string
gadgets:

        ("RETURN")           - Pressing  this  will  accept  what is in the
                               string  gadget,  and will also automatically
                               move to the next gadget.

        ("ESC")              - Pressing the Escape key will exit the string
                               gadget,  leaving none active (So you can use
                               keyboard  shortcuts).   It  will  also abort
                               what is currently in the gadget.
        ("Amiga-C")          - Will copy the current contents of the string
                               gadget  to  the  Clipboard (Unit 0).  Useful
                               for  pasting  to  the  input  stream or chat
                               window or another string gadget.
        ("Amiga-V")          - Will  paste  the  current  contents  of  the
                               Clipboard  to the string gadget.  It will be
                               appended/inserted to the string currently in
                               the gadget.
        ("Shift-LeftArrow")  - Moves the cursor to the previous word.
        ("Shift-RightArrow") - Moves the cursor to the next word.
        ("Up  Arrow")        - Skips  to the previous string gadget.  Saves
                               the contents of the current string gadget.
        ("Down  Arrow")      - Skips  to the next string gadget.  Saves the
                               contents of the current string gadget.

X-Comm AutoInserts
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

    Autoinserts  are  a  unique  set of character sequences that X-Comm can
recognise.   When  X-Comm  comes  across one, it will replace that charcter
sequence  with  a  specific  value.  For example if X-Comm comes across the
'%p'  sequence  almost any of it's strings, it will replace that value with
the  currently  used  Password.  There are many autoinserts, and most begin
with  either  the  '%',  '@'  or  '\'  charcter.   Following  one  of those
characters  will  be  another  value  which represents which autoinsert you
would  like  to  use.   Here  is  a  list  of all the currently implemented
autoinserts, and a brief description of what they do:

        System Autoinserts:
        ==================

        %u - Inserts the current Username.  Only valid if you are online to
             a specific system.  If not, the Default Username will be used.

        %U - Inserts the Default Username.

        %p - Inserts the current Password.  Only valid if you are online to
             a specific system.  If not, the Default Password will be used.

        %P - Inserts the Default Password.

        %i - Inserts  the current Alias.  Only valid if you are online to a
             specific system.  If not, the Default Alias will be used.

        %S - Inserts the name of the system you are currently online to.

        %B - Inserts the baudrate that you connected at.

        Tranfers Autoinserts:
        =====================

        NOTE:   These  autoinserts are only valid after a file transfer has
completed.

        %K - Type of transfer (Upload, Download.)

        %P - Protocol used.

        %F - The filename of the last file downloaded.

        %f - The filesize of the last file downloaded.

        %X - The time taken to complete the transfer.

        %x - The average CPS rate attained.

        %e - How many errors were recieved during the transfer.

        General Autoinserts:
        ====================

        %L - The current length of the call.

        %C - The current cost of the call.

        %T - The time in 24 hour format.

        %t - The time in 12 hour format.

        %D - The date in long (verbose) format.

        %d - The date in a shortened format.

        File Control Autoinserts:
        =========================

        NOTE:   These  are  only  valid in File Control strings and nowhere
else!   They  also only make sense if you are using a registered Version of
X-Comm.

        @f - Filename.  Note that you should use this and not the Transfers
             autoinsert (%F).

        @o - The  output device.  This is where the output from the spawned
             file   control  action  process  will  go  (usually  CON:   or
             nothing.)

        @u - The destination path of the current filetype.

        Execute Autoinserts:
        ====================

        @a - Execute  an  ARexx  script.   This is a VERY powerful function
             which  allows  ALOT  of  flexibility.   This  MUST be the last
             autoinsert  in  the  string  and must contain the filename and
             path directly after it (no space.)

        @c - Execute  a  DOS/CLI  command.   Again,  this  must be the last
             insert  in  the  string and must contain the complete filename
             and path directly after it.

        Literal Autoinserts:
        ====================

        \r - Carriage Return.  Strictly speaking, this places the cursor at
             the beginning of the current line.

        \n - New  line.  Strictly speaking, this places the cursor one line
             down.

        NOTE:   Both  \n\r  should be used together when communicating with
your  modem but some systems will interpret a \n\r as two 'RETURNS'.  If it
does that, take away the \r and leave the \n. You may have to experiment.

        \t - Inserts a horizonal tab.

        \a - Inserts a bell (CTRL-G) character.

        \b - Inserts backspace (CTRL-H) charcter.

        \\ - Inserts a single '\'.

        \% - Inserts a single '%'.

         ^ - Inserts  a  Control  charcter.   A  letter  should follow this
             indicating the control charcter to insert.  For instance, '^G'
             would insert a Bell (CTRL-G) charcter.

        X-Comm  also has an Autoinsert list that can be used in most places
where  autoinserts are accepted.  If an autoinsert list is available, there
will  be a little gadget next to the string gadget that looks like an arrow
pointing  between  two  lines.   Selecting  this  gadget  will bring up the
autoinsert window, allowing you to quickly insert the desired insert at the
current  cursor  position.   Note  that  if  you select either the 'Execute
ARexx'  or  'Execute  CLI' insert, a file requester will also be brought up
allowing you to select an ARexx script or DOS command to go with it.

Serial I/O
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        X-Comm's  main  purpose  is to communicate via the serial port with
other  outside  devices.  It does by utilising the amiga's device libraries
to  allow  controlled  access to the amiga's RS-232 serial port.  X-Comm is
not,  however,  restricted  to  using  the commodore serial driver.  X-Comm
allows  you to use other serial drivers supplied from other sources.  Other
drivers  may  include  replacment  drivers or drivers that allow the use of
multi-serial cards.

        The  general  theory  behind  X-Comm  and most other communications
packages  is  that  you  have  a  window,  and  whatever you type into this
windows, gets sent out via the serial port to whatever connection is at the
other  end,  whether  it  be  a  modem  or another computer.  Consequently,
anything  that  arrives at your serial port will be printed to the terminal
window.

The Terminal Window and Terminal Emulations
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  leads us to the discussion of the Terminal window itself.  It
is the fundamental object in any communications program such as X-Comm.  In
X-Comm,  the terminal window and terminal emulations are not built-in.  You
can  either  use  an  XEM Emulation or the Amiga's Console.device to output
data  to  the  terminal  window.   XEM Emulations are set of libraries that
follow  the  standard  XEM  protocol,  designed  by  Ueli  Kaufmann.  These
libraries  are  standard  amiga  shared  libraries which can be inserted or
removed  as  desired.   This  allows  a  great  degree  of  flexibility and
modularity.

        The  console.device  is  the  alternate  to  XEM Emulations.  It is
built-in,  and does not need to call on any external libraries (Saving disk
space.)  It  follows  a  semi-standard DEC VT102 emulation, although is not
completly  true.   It does, however, serve its purpose as a good ANSI/VT100
emulation.   The  main  advantage  of  using  the console.device is that it
handles  fonts very well.  As of the writing of this documentation, the XEM
emulations  do  not  properly  handle fonts (XEMIBM and XEMVT340 both using
IBM/8  and  topaz/8  respectivly).   This  may  change in the future as the
author  may plan to support fonts.  For this reason, you can still select a
custom terminal font when using an XEM emulation, but more on that later.

The Status Bar
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        There  are only two things that are always displayed on X-Comm; one
of  them  is  the  terminal  window,  and the other is the status bar.  The
status  bar  displays the current status of X-Comm, as well as the date and
time.  It looks something like this:

+-------------------------------------------------------------------------+
|* S Not Connected        | 19,200 | 8-None-1(FC) | Zmodem | 12:49:15 am *|
+-------------------------------------------------------------------------+
 1 2      3                   4          5            6          7       8

        (Now you know why I became a programmer an not an artist.)

        From  left  to right, this is a description of each of the 'things'
on the status bar:

1.   This  is actually the raised box to the very left of the window.  This
acts  as  a  drag gadget.  The status bar can be moved around at anytime by
clicking  the  LMB  on this gadget and moving the mouse, and then releasing
the  LMB.   The  position  of  the  status  bar defaults to centered on the
screen, but its position will be stored if moved.

2.   This  button opens and closes the Status Window.  This window displays
more  miscellaneous  information about X-Comm.  Please see the section 'The
Status Window' for more information.

3.   This field displays the name of the system you are currently connected
to, or "Not Connected" if you are not online at all.

4.   This field displays the currently selected baudrate the serial port is
currently operating at.

5.   This field displays various serial settings.  Here is a description of
each one:

        'Data Bits'-'Parity'-'Stop Bits'('Duplex''Handshaking')

6.  This is the currently selected XPR protocol library.

7.   This is the time, displayed in the format of your choice.  It may look
different on your configuration, depending you program settings.  (IE 12/24
hour or seconds on/off).

8.   This  gadget  is  at  the very right of the window and is actually the
depth  gadget  for  the  clock  window.  Clicking it will depth arrange the
status  bar  amongst  other windows.  This gadget has its greatest use when
X-Comm is used on a public screen; namely, Workbench.

X-Comm Data Files
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        X-Comm uses a global data format for storing its configuration.  In
accordance  with Commodore guidelines and to try and remain as close to the
style  guide  as possible, X-Comm uses the Commodore recommended IFF format
for  storing  its  settings.   There  are  many reasons for doing this, but
mainly for consitency.

        X-Comm  also  uses a default set of filenames; some of which can be
altered.  The defaut names are:

        X-Comm.Config - The  main  configuration  file.   These can also be
                        used  as  .PhoneConfig files aswell.  .Config files
                        contain  information  that will not be used if used
                        as a .PhoneConfig (Phonebook Configuration) file.

        X-Comm.Phonebook - This is the X-Comm phonebook file.

        X-Comm.Macros - This file stores information about keyboard macros.

        X-Comm.Rates - This  is  the  call  rates definition file, used for
                       calculating the cost of phone calls.

        X-Comm.Log - This is NOT an IFF file.  It is a humanly readable log
                     of X-Comm events.

        X-Comm.BinLog - This  IS  an  IFF  file which keeps a log of X-Comm
                        events  aswell,  but  these  are kept in a 'binary'
                        format which can quickly be read and intepretted by
                        the log analyser.

        #?.PhoneConfig - (#?   meaning  'a  name').   These  are  phonebook
                         configuration files which are used to store custom
                         configurations for phonebook entries which request
                         it.    The   name   will   be   the  name  of  the
                         corrosponding   phonebook  entry  that  this  file
                         belongs  to.   Note that these files can be loaded
                         as   standard   configuration   files.   The  only
                         difference  between  these files and .Config files
                         is  that  .Config  files  contain Phonebook/Dialer
                         information.

        X-Comm.FileType - This  file stores custom file types used by 'File
                          Control'.   Note  you will only have this file if
                          you  have  registered  X-Comm.   Please  read the
                          Registration document for more information.

===========================================================================

                                   _____
                                   Menus
                                   ฏฏฏฏฏ

        The following is a discussion of all the pull-down menus in X-Comm.
This section will discuss other aspects of X-Comm as they are encountered.

                          -- The Project Menu --
                          ญญญญญญญญญญญญญญญญญญญญญญ

About
=====

        This windows displays some interesting information about X-Comm and
its   environment.    It   also   displays   contact  addresses  and  other
miscellaneous items of amazing interest (I like the nice logo tho :-)

Load Config / Load
==================

        This  item  will  load  the  currently used configuration.  It will
change  X-Comm's  settings  to  reflect  these  settings,  including screen
options,  serial  parameters and other settings files that are used by this
configuration.

Load Config / Load From
=======================

        This  item  will  bring  up a file requester asking you to select a
configuration file.  This allows you to switch to a new configuration file.
The next time [Project / Load Config / Load] is selected, the configuration
file selected here will be loaded.

Save Config / Save
==================

        This  item  saves  all  the  relevent  information to the currently
selected  configuration file.  Items like screen options, serial parameters
and  the  names  of  the  other  settings  files  that  are  used  by  this
configuration will be saved with the file.

Save Config / Save As
=====================

        Selecting  this  will bring up a file requester asking you where to
save the current configuration to.  This allows you to create more than one
configuration file.

Iconify
=======

        This  option  iconifies X-Comm, closing the main screen.  There are
some  options  in  the  Miscellaneous  window that affect what happens when
X-Comm  is  iconifed.   If  the  'Workbench  AppIcon  on Iconify' option is
enabled,  X-Comm  will put up a small icon on the workbench that will allow
you to get back to X-Comm by double-clicking it.  If the 'Workbench AppMenu
on  Iconify'  is  enabled,  X-Comm  will  also put a pull-down menu item in
Workbench's  'Tools'  menu that will get you back to X-Comm.  If the 'Close
Serial  on  Iconify'  option  is  enabled,  X-Comm will also close down the
serial  driver  currently  in  use,  thereby  making X-Comm appear as if it
didn't exist.

        NOTE:   If  neither  the  'Workbench  AppIcon  on  Iconify'  or the
'Workbench AppMenu on Iconify' options are enabled, the 'Iconify' menu item
will be ghosted. (How are you supposed to get back?)

Quit
====

        What  can  I  say?   It quits X-Comm.  If the 'Exit without Asking'
option  is  enabled, X-Comm will quit without saying a thing.  If it isn't,
X-Comm will confirm this action by displaying a requester.

                         -- The  Phonebook Menu --
                         --  and the Phonebook  --
                         ญญญญญญญญญญญญญญญญญญญญญญญญญ

        This is a full in depth discussion of the phonebook, dialer, phone entry
editor and PCM.

The Phonebook Itself
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        The  phonebook  is  there  to  make your life easier to manage when
calling  out  to  other  systems.   It manages phone numbers, and different
configurations  that  you may use when calling another system.  It can then
also dial these phone numbers and manage the connection to another system.

The Phonebook Window
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        In  this  window, you will see two lists and a few buttons.  I will
discuss the buttons a bit later, but for now, lets look at the lists.

        The first list (the biggest one on the left) displays all the phone
entries  you  have  defined  in the phonebook.  Each entry in the list will
display  the  name  and  the  first  phone  number  (if  there are multiple
entries).   If  there  is more that one phone number defined for the entry,
then  it  will  have a little '*' displayed after the phonenumber.  More on
multiple phone numbers later.

        The  second  list is the smaller one to the right.  It is your dial
list.  This is a unique and very efficient way of managing a dial list.  It
was  actually  devised  by  the  grand daddy of amiga programmers, Jonathan
Potter  (Author  of  Direction  Opus,  ZeroVirus  etc)  and was used in his
OpusTerm  which  unfortunatly  we  never got to see, but I thought it was a
nice  idea anyway.  To add entries to the dial list, just click on an entry
in the phonebook list.  It will be copied over to the dial list.  If it has
multiple  numbers in it, each number will be added as a different 'line' in
the dial list.

The Phonebook Buttons
ญญญญญญญญญญญญญญญญญญญญญ

(Add)
=====

        This  button brings up the Phonebook Entry Editor, ready to enter a
new  phonebook  entry  into the list.  See 'The Phonebook Entry Editor' for
more information on adding/editing entries.

(Edit)
======

        This  button  modifies  the behaviour of the phonebook list.  It is
'mutually  exclusive'  with  the  (Delete)  button.   If  switched  on, the
phonebook  list  mode  will  be  changed.   Now if you click on a phonebook
entry,  the  Phonebook Entry Editor will be brought up and you will be able
to  edit  the  entry.   Experiment  with it to know what i'm talking about.
Click (Edit) again to turn it off.

(Delete)
========

        This  button also modifies the behaviour of the phonebook list.  If
you  click  on  a phonebook entry in Delete mode, it will delete the entry.
Simple eh?  Click (Delete) again to turn it off.

(Export)
========

        This  button  brings  up  the  phonebook export window.  The export
window  allows  you  to  export  your  X-Comm phonebook to a straight ASCII
textfile.   This  makes  it  easier for you to keep a hardcopy or backup of
your  phonebook  where you like.  The checkbox buttons in the export window
allow  you to toggle the information you want included in the export.  They
mean the following:

        Phone Number            - Export phone numbers.
        Mac/Cap/Scp  Filenames  - Export  the  Macro,  Capture  and  Script
                                  filenames.
        Username/Alias          - Export the username and alias.
        Password                - Export your password for each entry.
        Other  Information      - Currently  this  only exports whether you
                                  have   a  custom  configuration  for  the
                                  entry.

        The two buttons at the bottom of the export window 'Export All' and
'Only  DList'  allow  you to select which entries will be exported.  If you
select  'Export  All',  a  filerequester  will be displayed allowing you to
select  the  name  of  the  exported  file.   It will then export the whole
phonebook  to  that file.  If you select 'Only DList', a filerequester will
also be displayed allowing you to select the name of the exported file.  It
will  then  export only the entries that are in the dial list.  This allows
you to limit which entries you want to export.

(PC Manager)
============

        This button brings up the Phonebook Configuration Manager.  See the
section later on for more information.

(Sort List)
===========

        This  button  sorts  the  phonebook  list in ascending alphabetical
order.   It uses my own custom sort routine (Actually an exchange sort, but
no one told me that :-)

The Dial List Buttons
ญญญญญญญญญญญญญญญญญญญญญ

(Dial Entries)
==============

        This  button  dials  all the currently selected entries in the dial
list.  See the section on the Dialer for more information.

(Clear Entry)
=============

        This  is  the  mode  button for the dial list.  When turned on, any
entry clicked on in the dial list will be cleared.

(Select All)
============

        When clicked, this button will select all the phonebook entries and
put them in the dial list.

(Clear All)
===========

        This  button  will  single handedly clear every entry from the dial
list.


The Phonebook Entry Editor
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  window  allows  you  to  edit or add entries in the phonebook
list.  It also allows you to configure each phonebook entry to your liking.

        A description of each of the gadgets in the window follows:

(Name)
======

        The  name  of  the  system.   This will be displayed throughout the
program to reference this particular entry.

(Number)
========

        The  phone  number  of  the  entry.   It  can  contain  any  set of
characters you like including '-', '(' and ')'.  The characters will not be
altered  during dialing, so whatever is in this gadget is what will be sent
to the modem.

        There  is  an  exception to this rule however.  You can tell X-Comm
that  this entry has multiple phone numbers by seperating each phone number
in the gadget with a '|'.  This '|' or bar can be used as many times as you
like to define as many phone numbers as you like, however there can only be
a  total  of  200  charcters  in  the  string.   An example of a multi-line
phonenumber might look like this:

        552-6261 | 552-6262 | 552-6263

        When  you put this entry into the dial list, X-Comm will split each
of  the  numbers  up  into  seperate  'lines'.   These lines will be dialed
seperatly, but will use the same settings.

(User name)
===========

        This  is  your  online user name or login name.  It can be anything
you  like  and  the contents of this gadget can be sent online by using the
'%u' autoinsert.  See the section on Autoinserts for more information.

        The  little  'Getfile'  gadget  next to this one is used to put the
default  username  from the 'Phonebook/Dialer' configuration window in this
gadget.

(Password)
==========

        This  contains  your  online  system  password.  Again, this can be
anything  and  the  contents of this gadget can be sent online by using the
'%p' autoinsert.

        The  little  'Getfile'  gadget  next to this one is used to put the
default  password  from the 'Phonebook/Dialer' configuration window in this
gadget.

(Alias)
=======

        This  contains  any online alias that you might use on this system.
Again,  this  can  be  anything and the contents of this gadget can be sent
online by using the '%i' autoinsert.

        The  little  'Getfile'  gadget  next to this one is used to put the
default  alias  from  the  'Phonebook/Dialer'  configuration window in this
gadget.

(Capture)
=========

        This   is  the  name  of  the  ASCII  capture  file  to  be  opened
automatically by X-Comm upon connection to this system.

(Macros)
========

        This  is  the  name of the macro file to be used upon connection to
this system.

(ARexx)
=======

        This is the name of the ARexx script to be executed upon connection
to this system.  See the documentation on ARexx for more information.

(Call Rate)
===========

        This  list allows you to select a call rate for this system.  Rates
are  defined using the 'Call Rate Editor' and will be discussed later on in
this manual.

(Pwd Type)
==========

        This  gadget represents the type of password that will be generated
by  the  password  generated.   'Letters  Only' means the password can only
consist  of  charcters  between  ASCII 65 and 122.  'Letters/Numbers' means
that the password can be alphanumeric and consists of ASCII charcters 32 to
128.  All characters means that the password generated can contain any ASCII
values from 1 to 255.

(Length)
========

        This is the length of the password that is to be generated.

(Generate Pwd)
==============

        This  button  will  generate  a  new  password.  The result will be
placed  in  the 'Password' gadget for immediate.  You can click this gadget
as many times as you like to get new passwords.

        The  generator  uses  a  48bit random seed technique that is pretty
difficult to duplicate.  It's quite safe!

(Dial Prefix)
=============

        This  allows  you  to select a different dialing prefix to use when
dialing the system.  Dial prefixes are defined in the "Modem" window.  Upto
three other dial prefixes can be defined.

(Use Current Config)
====================

        If  this option is turned off, it tells X-Comm that you want to use
a custom configuration for this phonebook entry.  From here on in, you will
be  able to use the 'Config' listview below this gadget to configure X-Comm
for this phonebook entry.  Whenever you connect to this system, X-Comm will
use  the  configuration  belonging  to  this  entry.   When you logoff this
system, it will then restore back to the default configuration.

        The  configuration  for  the entry is stored in your defined config
path.  It is called '(nameofsystem).PhoneConfig'.  These .PhoneConfig files
can  be  loaded as normal configuration files, but do lack some information
that   is   contained   in   a   normal  configuration  file  (Namely,  The
Phonebook/Dialer configuration information).

(Enable MXC)
============

        This  option  allows you to enable the MXC autologin protocol.  For
more information on the MXC protocol, please see the later section.

(Config List)
=============

        This  is  a list of all configurable items for the phonebook entry.
It  only  has any use if you have disabled the (Use Current Config) option.
If  you  havn't disabled it, and you click on an item in the list, you will
be presented with a requester informing you that you can't configure things
for  this  phonebook  entry unless you have the (Use Current Config) option
turned off.

(Call Information)
==================

        This  option  will  scan your binary logfile and compile statistics
about the system you are currently editing.  For more information about the
call  information  statistics  window,  please see the later section on the
call analyser.

The Dialer
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        The  X-Comm  dialer  allows  you  to  dial entries contained in the
phonebook.   To  do  this,  you  will  need  a modem that supports internal
dialing (ie not one that you need a handset and a coupler to connect.)

        To dial entries, click on them in the phonebook list.  They will be
copied  into  the  diallist.   If  you double-click on a phone entry in the
phonebook  list, the entry will be inserted at the top of the dial list and
dialing will commence straight away.

The Dialer Window
ญญญญญญญญญญญญญญญญญ

        The  dialer  window displays the current status of the dialing.  It
displays  how much time is left before the dial attempt will be aborted and
how  many  overall  attempts at dialing this entry have been made.  It also
has a copy of the dial list which can be used to manipulate the dial list.

(Attempt #)
===========

        This gadget displays the amount of times the dialer has been around
the  dial  list.   Each  time it reaches the end of the dial list, it jumps
back to the beginning and increments this count.

(Timer)
=======

        This displays how much time is left before the current dial attempt
is  aborted.   It counts down to zero, and depending on your settings, will
either  wait for a certain redial delay time, or will wait for the modem to
respond.   You  can  increment and decrement the remaining timeout value by
clicking  on  the  (<)  and  (>) gadgets to the left and right of the timer
gadget respectivley.

(Calling)
=========

        This displays the name of the system you are currently calling.

(Phone #)
=========

        This displays the number of the system currently being dialed.

(Status)
========

        This  displays  the  status of the dialer.  It displays information
when the modem responds and tells you what mode it is currently in (Re-dial
delay, Dialing ..., Response wait etc.)

(Dial List)
===========

        This  is the actual dial list.  The list will scroll to follow each
entry  as  it is dialed.  If you double-click on an entry in the dial list,
it  will automatically stop dialing the system it is currently dialing, and
jump  to the one you double-clicked on.  If the list is in delete mode, any
entry clicked on will be deleted.  After all entries have been deleted, the
dialer will exit.

(Jump To)
=========

        This  gadget  is  almost  obsolete,  but  it  basically  jumps to a
specific  entry  in  the list.  To do so, click on an entry in the list and
press (Jump To) to jump the dialer to it.  It is much easier, however, just
to double-click on the entry.

(Delete)
========

        This  gadget  toggles  the list mode between Normal and Delete.  In
delete mode, clicking on a dial list entry will delete it.

(Skip)
======

        This  gadget  skips  the entry currently being dialed, and moves to
the next one.  It will obey redial delays and response delays aswell.

(Exit Dialer)
=============

        This  gadget  exits the dialer, aborting the system currently being
dialed and preserving the dial list for next time.

(Use Current)
=============

        This  is  an  emergency  gadget that will only be selectable when a
carrier  is  present.  It is just incase X-Comm didn't detect a connection.
Pressing  it  will  force  X-Comm  to  connect to the system and any custom
configuration to be loaded.

(Phonebook)
===========

        This  gadget  steps  you back to the phonebook, closing the dialer,
aborting the current dial and re-opening the phonebook window.


There is one menu item in the dialer window:

[Options / Monitor Serial Activity]
===================================

        When  this option is turned on, X-Comm will print all incoming data
from  the modem to the terminal window.  This is useful for seeing what the
modem is actually printing out for debugging purposes.


The Phonebook Configuration Manager
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        The  Phonebook  Configuration  Manager  does  just that, it manages
custom  configurations  for  phonebook entries.  The main window has a list
which displays your phonebook list.  You can then either add, delete, edit,
use  or  copy  to custom configurations.  Any phonebook entry with a custom
configuration will have the words (Has Config) written after its name.

(Add)
=====

        This  gadget  turns the list into 'Add' mode.  Any entry clicked on
will  have  a  custom  configuration  added  to  it.   If  it already has a
configuration,   this   operation  will  do  nothing.   If  it  doesn't,  a
configuration  file  will  be  created on disk and the phonebook entry will
have  its  (Use  Default  Config)  flag set to off.  The configuration file
created   will   be   exactly  the  same  as  the  currently  used  default
configuration.

(Edit)
======

        This  gadget turns the list into 'Edit' mode.  Any entry clicked on
will  be  edited.   A  window  will  appear with a list of all the possible
configuration  options.   Click  on  these to edit different aspects of the
configuration.  The configuration will be saved when 'Okay' is clicked.  It
won't be saved if 'Cancel' is clicked.

(Delete)
========

        This  gadget  turns the list into 'Delete' mode.  Any entry clicked
on  will  (if  it  has one) have its custom configuration deleted.  It will
also set the (Use Default Config) flag to on.

(Copy To)
=========

        This  gadget turns the list into 'Copy To' mode.  Any entry clicked
on  will  bring  up the copy configuration window.  This allows you to copy
information  from the currently used default configuration to the phonebook
entry's custom configuration.

        There are two lists in this window.  The first one is a list of all
the  different  aspects of the phonebook's custom configuration (ie Serial,
Terminal,  Modem  etc.) The second list depicts which information you would
like  copied  to  the  custom configuration.  Click on entries in the first
list  to  put them in the second list.  The item you clicked on will now be
part  of  the  information  copied  (ie  If  you  clicked  on terminal, all
information  regarding  terminal  settings such as type, fonts, ANSI strip,
EOL  translate  etc  will  be  copied from the current configuration to the
phonebook's  custom  configuration.) To not copy that information, click on
it in the second list and it will be put back in the first list.

        The  (A)  button will select All items for copying.  The (N) button
will clear all the items to be copied.


        (Copy Configuration to all Phonebook entries)
        =============================================

        If  this option is enabled, the items selected to be copied will be
copied to ALL phonebook entries that have a custom configuration.


(Use Config)
============

        This gadget turns the list into 'Copy To' mode.  If you click on an
entry  that  has  a custom configuration, that configuration will be loaded
and used.  This is useful for 'viewing' a configuration.

(Okay)
======

        Quits  the  Phonebook  Configuration  Manager  and  returns  to the
phonebook.    Please  note,  if  you  have  added  or  deleted  and  custom
configurations  using the manager, please SAVE the phonebook, otherwise the
additions and deletions made will not be recorded.


The Phonebook Window Menus
-------ญญญญญญญญญญญญญญญญญญญ

[Phonebook / Load]
==================

        This option brings up a file requester allowing you to select a new
phonebook  to  load.   The current phonebook is cleared to make way for the
new one.

[Phonebook / Import / X-Comm]
=============================

        This  option  allows  you  to  import an X-Comm phonebook.  Seems a
little  stupid  but  it  basically  allows  you  to append one phonebook to
another.

[Phonebook / Import / JE-Comm]
==============================

        Selecting  this  will  open  a filerequester asking you to select a
JR-Comm  V1.02a  phonebook  to import.  Once selected, X-Comm will pick out
readable  information  from  the JR-Comm phonebook and add it to the end of
the  current  phonebook  in  X-Comm format.  This can save you ALOT of time
re-doing your phonebook.

[Phonebook / Import / Terminus]
===============================

        This  option  allows  you  to  import  a  terminus  (JR-Comm  V2.0)
phonebook file.  A filerequester will ask you to select the phonebook file.
The  terminus phonebook will then be appened to the current phonebook list,
in X-Comm format.

[Phonebook / Import / term]
===========================

        This  option  will  ask  you to select the 'term' phonebook file to
import.   It  will then be appended to the current X-Comm phonebook list in
X-Comm format.

[Phonebook / Import / MagiCall]
===============================

        This  option  will ask you to select a MagiCall V1.0 phonebook file
to  import.   It  will  be appended to the current phonebook list in X-Comm
format.

[Phonebook / Import / N-Comm]
=============================

        You  can  import  an  NComm 2.0 phonebook by selecting this option.
X-Comm  will  ask  you  to  select  the phonebook file, and will proceed to
import it to X-Comm's phonebook list.

[Phonebook / Save]
==================

        This  option  saves  the current phonebook to the current phonebook
file.

[Phonebook / Save As]
=====================

        Saves  the  current  phonebook under a different name.  X-Comm will
bring  up  a  filerequester asking you to select a filename to save the new
phonebook as.

[Phonebook / Clear]
===================

        This  option  will clear the current phonebook.  It will ask you to
confirm  this  before  continuing.   This  option  is useful if you want to
import  another phonebook and you don't want the existing phonebook to be a
part of it.

[Dial List / Load]
==================

        This  menu  will allow you to load a previously saved dial list.  A
filerequester  will ask you to locate the file.  It will then read the list
and  try  to  select  each  entry into the dial list.  If the entry doesn't
exist anymore, it will be skipped.

[Dial List / Save]
==================

        This  menu  will  save  the  current  dial list to a file for later
usage.   It  will bring up a filerequester asking you to select the file to
save  as.  The format of the dial list file is straight ASCII.  The name of
each system in the dial list is saved on a newline.


The Phonebook Menus
ญญญญญญญญญญญญญญญญญญญ

        This  is  a description of the menus found outside of the phonebook
window.

[Phonebook / Load]
==================

        This  allows  you  to  load  a  new  phonebook  from  disk.   It is
essentially the same as the menu item found in the phonebook window.

[Phonebook / Save]
==================

        This  option  is  the  same  as [Phonebook / Save] in the phonebook
window.

[Phonebook / Save As]
=====================

        This  option  is the same as [Phonebook / Save As] in the phonebook
window.

[Phonebook / Redial]
====================

        This  item  brings  up  the dialer window and continues to dial the
selected dial list.  If the dial list is empty, this item has no effect.

[Phonebook / Manual Dial]
=========================

        This  brings  up a window asking you for a number to dial.  It then
adds  a  fake  entry  to  the dial list and brings up the dialer window and
dials the number entered.  Quite simple.

[Phonebook / Select System]
===========================

        This  option is only selectable when you are connected to a system,
or  more  specifically,  a  CARRIER  is detected over the serial line (This
means your DCD or CD light on your modem must be on).

        Selecting  this  option  will  bring up a window with the phonebook
list  in  it.   Selecting  an item from the list will then 'connect' you to
this  system.  It is rather like getting a connection through a dialer, but
is  useful if you have rebooted and you want to get back to your connection
and  use the same settings (username, password, alias, configuration, macro
file  etc.)  X-Comm  will  be forced into thinking that you actually called
this system.

                          -- The Settings Menu --
                          ญญญญญญญญญญญญญญญญญญญญญญญ

        This  section describes all X-Comm's configuration windows and what
each  option  does.   There  are  lots of options, so this section is quite
long.   I will try and be a little more brief in their description so as to
keep this to a minimum.

The Serial Window - [Settings / Serial]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  window  allows  you to configure the serial device driver you
are using.  Most of the time, this will be commodore's 'serial.device'.

(Baud Rate)
===========

        The  baudrate  buttons  down the left hand side of the window allow
you  to  select the baudrate of the serial port.  The baudrate is the speed
at which data is transfered to and from the port.  Depending on your modem,
you should set the baudrate at the maximum and most efficient baudrate your
computer  and  modem can handle.  X-Comm can handle baudrates from 300 upto
115,200.

(Data Bits)
===========

        This  is  how many bits of data the serial port deals with at once.
You  can  select  either 7 or 8 here.  Most communications will require you
set it at 8, but some do use 7.

(Parity)
========

        This is a form of error checking that can be incorperated into data
transfers.  There are several forms of parity checking available, but these
days,  most people use more advanced and reliable forms of error correction
such as the popular Microcom Networking Protocol or MNP that is built-in to
most of todays modems.

(Stop Bits)
===========

        This  sets  how  many  stop  bits  are used at the end of each data
packet.  For most purposes, this will be 1.

(Duplex)
========

        Duplex,  in  communications terms, refers to the direction of data.
X-Comm  supports  two  modes of duplex; Full and Half.  When in full duplex
mode,  communications can take place both ways (both sending and receiving)
at  once.  In half duplex mode, communications can take place in both ways,
but  only  one at a time.  In X-Comm, half duplex mode also refers to local
echo.

(Handshaking)
=============

        Handshaking   is   used   to   syncronise   the  computer  and  the
communications  device  (modem.) There are two modes of handshaking offered
in  X-Comm.  The first one is XON/XOFF.  XON/XOFF is a software handshaking
method  in  which  the  receiver  of  the  data sends back a ^S (Control-S)
character  when  it  wants  the  transmition  to  stop.  It then sends a ^Q
(Control-Q) charcter when it wants data transfer to resume.

        RTS/CTS  is  hardware handshaking in which lines in the serial port
are set high and low to stop and start data transfers.  RTS/CTS can only be
used  if  the DSR line on the device is set.  If it is not set, X-Comm will
inform  you  that it cannot continue with RTS/CTS handshaking and will drop
back to XON/XOFF handshaking.

(High Speed)
============

        This  is a mode offered by the commodore serial device which allows
optimised  transfers with the remote system.  This mode tells the device to
by-pass  some  otherwise  un-needed checks and to optmise itself for faster
transfers.  Unfortunatly, there is one drawback of this mode.  It restricts
the devices operation to 8 databits, 1 stop bit and no parity.  Fortunatly,
this  is the most common mode of operation.  When this mode is enabled, the
Data  bits, Stop bits and Parity bits gadgets will be set to their required
values and disabled.

(Shared)
========

        Most  of the time, the serial device driver runs in exclusive mode.
That  is,  only  one  program  at  a  time  may access it.  With this mode,
however,  you  can allow the device to run in Shared mode.  This means that
more  than  one  program  can  access  the device at one time, allowing the
sharing  of serial resources.  Most of the time, this mode is desirable, as
it  will  allow other programs to load properly, without any errors if they
cannot open the serial device.

(Break Length)
==============

        This  is  the  length  of  the  break that is sent out by the 'Send
Break'  command in the 'Miscellaneous' menu.  This value is passed directly
to the serial device driver, and is measured in micro-seconds.

(Serial Unit)
=============

        This  is the unit number of the serial device that you wish to use.
This  is mostly used on multi-serial cards, where more than one serial port
can  be  access.   It also has other uses like DNet for example.  Using the
dnet.device,  the  serial  unit refers the port number in the connection to
reference.  Most of the time, however, this will be set to 0.

(Serial Device)
===============

        This  string allows you to set the serial device driver that X-Comm
will  use  to  communicate  with.   Most  of  the time, this will be set to
commodores  standard device driver, 'serial.device', but in some instances,
you  may wish to use a different driver.  X-Comm can use any device driver,
provided  it behaves similarly to the commodore device driver.  Examples of
other  devices  possible are the BaudBandit.device (An optimised improvment
to  the  commodore  device  driver)  and the dnet.device (For use with dnet
networking  software).   The  'Getfile'  gadget  next  to the Serial Device
gadget is used to select the device name via a file requester.


The Terminal Window - [Settings / Terminal]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This window allows you to configure the way in which X-Comm handles
incoming serial data and the way in which it displays it to you.

(Terminal Type)
===============

        This  gadget  allows you to select which type of terminal emulation
you  would  like  to  use.   There  are two types available at present, XEM
Libraries  and  Console  Device.   The  XEM  libraries allow you to use the
external  XEM#?   emulation  libraries included in this archive.  These are
amiga  shared  libraries  which allow you to slot in new emulations as they
come  along.   Console  Device  allows you to use the amiga's built-in text
'emulation'.   The  console.device  is  used  in many places throughout the
amigas  operating  system,  but  most  people  recognise  it from the Shell
window.   X-Comm can use the console.device as it serves as a very good and
very  stable  built-in  emulation.   It is basically a variation of the DEC
VT102  emulation,  but handles most IBM/ANSI commands without any problems.
The  greatest  advantage  of  using this mode is that it fully supports all
mono-spaced fonts for output.  At present, the XEM libraries do not support
selecting a custom font, even though it is written into the standard.  I do
know, however, that this problem is being rectified.  It is for this reason
that  the  (Terminal Font) gadget is not ghosted when XEM Libraries mode is
selected.

(Emulation)
===========

        This is the name of the XEM emulation library to use.  Note that it
is only selectable when Terminal Type is set to 'XEM Libraries'.

(Terminal Font)
===============

        This  is  the  name  and  size  of  the font to use in the terminal
window.  This font must be mono-spaced (non-proportional).  It can be typed
into  the  string gadget, or selected via the file requester by clicking on
the 'Getfile' gadget next to the fontsize gadget.

        NOTE:   As  of the writing of this manual, fonts are only supported
in  the  XEMAmiga.library  and using the Console Device terminal type.  The
XEM  specification  does  support custom fonts, but currently, custom fonts
are not supported in either the XEMIBM.library or the XEMVt340.library, and
only  partially  in  the  XEMAscii.library.  I am under the impression that
this  is  being  rectified  at  the  moment.   Future  versions  of the XEM
libraries  will  allow  you  to  use the custom font that you have selected
here.

(Screen Font)
=============

        This  is  the  screen or window font to use for all text other than
the terminal window, and the review buffer view text.  This font is allowed
to  be  proportional  (Although it is not recommended under any versions of
the  operating  system less than OS3.0).  Please choose a font that creates
the  best  look  possible.  If the font is oversized, windows will be drawn
off  the  screen,  and  things  won't  look  right.  Rectify the problem by
choosing a smaller font.  Usually, anything bigger than a 9 point font on a
standard  Hires screen will not look right.  Anything over a 14 or 15 point
font  on a Hires-Laced (Or Double-PAL) screen will look awkward too.  It is
upto  you  to choose the right looking font for you.  X-Comm can be made to
look  VERY  nice  if  the  right  fonts  are chosen.  Personally, I use the
CourierIBM  font (Created by Otto Ruiter - Thanx!) for the terminal window,
and  the Helvetica 13 as a screen font.  Note that this is on a Hires-Laced
screen.

(Swap Delete and Backspace)
===========================

        In this mode, X-Comm changes the operation of the Backspace (or <-)
key  to  that  of the 'DEL' key, and the 'DEL' key to that of the Backspace
key.   This  is  useful  in  some  VT100  or greater modes where the system
expects a DEL charcter as its backspace or rubout character.

(VT100 Cursor Keys)
===================

        This  option re-maps the cursor keys to VT100 mode.  This is mostly
useful,  again  under  UNIX or using a VT100 terminal.  This option is best
explained  by  example.   If you find that the cursor keys are not working,
try  turning  this  option on.  If it still doesn't work, try changing your
terminal emulation type.

(Strip 8th Bit)
===============

        This  mode transposes all incoming data higher than ASCII 127, down
to  below  ASCII 127.  This effectivly cuts off all extended character sets
such as international and the IBM graphics sets.

(Incoming LF as)
================

        This converts incoming LF's (Line Feeds) to either LF (Same), CR/LF
or strips them all together.

(Incoming CR as)
================

        This  converts incoming CR's (Carrige Returns) to either CR (Same),
CR/LF or strips them all together.

(Outgoing LF as)
================

        This  option  remaps Outgoing LF's (Line Feeds) to either LF (Same)
or CR/LF.

(Outgoing CR as)
================

        This  option  remaps  Outgoing  CR's (Carrige Returns) to either CR
(Same) or CR/LF.

(Ascii Send Character Delay)
============================

        This  is  the  delay  (in  0.02  of  a second) between sending each
character when using the 'ASCII Send' function.  If set to 0, there will be
no  wait,  and  X-Comm  will pump out the characters in full stream.  It is
advisable  to  at  least have a value of 1, because most receivers of ASCII
data cannot handle a full stream receive of data and garbled characters may
appear.  If this happens, try setting it to a value greater or equal to 1.

(Ascii Send Line Delay)
=======================

        This  is the delay (in 0.02 of a second) between sending each line.
This  can  be  used in conjunction with (Ascii Send Charcter Delay) to slow
the  speed  of  outgoing  data when using the 'ASCII Send' function to send
textfiles.

(Strip Incoming ANSI)
=====================

        This  function  activates the ANSI sequence stripper for the review
buffer,  printer and capture files.  If this option is active, all incoming
ANSI  data will be stripped and only raw ascii text will be left.  The ANSI
will  still  be displayed and interpretted on the terminal, but will not be
stored  in the review buffer, printed to the printer (if active) or written
to  the  capture  file  (if  open).  If you are using an XEM Emulation, the
emulation   will   strip   the   ANSI   data   internally.   If  using  the
console.device, the ANSI data will be stripped by X-Comm.  This function is
useful  if  you don't want your review buffer or capture files or printouts
to be clogged with ANSI codes.

The Screen Window - [Settings / Screen]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  window  configures the way X-Comm looks including what screen
mode  to  use, how many colours, and other little aesthetic options.  Note:
When  opening  this  window,  there maybe a short pause as X-Comm scans the
internal  display  database  of  the  operating  system,  so  it may obtain
available screen modes.

(Display Mode)
==============

        This  list  contains a list of all possible display modes available
in  the operating system.  There should at least be PAL:  or NTSC:  entries
in  this  list.   Users with the AGA Chipset and/or multisync monitors that
have  activated more monitors will get extra display modes.  X-Comm can use
all display modes at this time, as long as you have the hardware to support
them.

        To select a display mode, click on it.

        NOTE:   The  first  time  you  open  this  window,  with  a default
configuration,  you  will  have  to click on your preferred display mode to
allow  you  to  configure other options in this window.  This is due to the
nature  of  the  DEFAULT_ID screen mode which is used to initially open the
X-Comm main screen.  Just click on your peferred display mode and the other
gadgets will become active.

(Overscan Type)
===============

        Overscan  is  the  area or border surrounding your amiga's display.
Most  monitors don't make use of this area, but the amiga can use this area
to  enlargen  your  display area, giving you a greater field of view.  This
option  allows  you to configure whether you want to use the overscan area,
and  if  so, what type.  If set to "None", X-Comm will just use the default
monitor  width.   If  set  to  anything else, X-Comm will use that selected
overscan  type.   Alot  of them are similar in size, but they have all been
added for compatibilty.

        NOTE:  Overscan slows down the display speed, especially if you are
not  using  an  AGA  machine and are using more than 8 colours.  I strongly
recommend  that  if you are using more than 8 colours on a non-AGA machine,
you do not use overscan.

(Screen Dimensions)
===================

        Shows  you  the final dimensions of your screen as a result of your
current screen mode and overscan type.

(Colours)
=========

        This  allows  you  to  select  how  many colours X-Comm should use.
X-Comm  will  scan  the  display  database and will allow you to select the
maximum  allowed colours for the currently selected screenmode.  If you are
using an AGA machine, you will be able to select upto 256 colours for every
screen  mode.   I  do  however, advise against this, as X-Comm has not been
totally  tested  under these conditions (I only have an A3000).  X-Comm has
been totally tested upto 32 colours in Lores though (Yuck!)

(Open on)
=========

        One of X-Comm's nicer features, this gadget tells X-Comm whether to
open  itself  on  a custom screen, or a public screen.  If you want to open
X-Comm  on  a  public  screen (usually Workbench), all other gadgets in the
window  except  the public screen name will be ghosted, as X-Comm will then
inherit  the  properties of the public screen it will open on (Note:  Under
3.0, the displaymode listview will be ghosted, but it won't under 2.0).

(Pub Screen)
============

        This  gadget works in conjunction with the previous gadget to allow
you to select the name of the public screen to open X-Comm on.  This can be
ANY  screen  that  is  open.   To help you select the screen, the 'getfile'
gadget  next to this gadget will bring up a list of currently opened public
screens on the system.

(Term Size)
===========

        This displays the size of the current terminal window, in columns x
rows.

(Size)
======

        This gadget opens up a new window which allows you to manually size
the  terminal  window to whatever size suits you.  This size of this window
directly  reflects  the size of the terminal window.  Use the sizing gadget
to  resize  the  window to what you want.  It contains string gadgets which
will be explained here:

        (Terminal Left)
        ===============

        The left offset of the terminal window in pixels.

        (Terminal Top)
        ==============

        The top offset of the terminal window in pixels.

        (Terminal Width)
        ================

        This  is  the  width  of  the  terminal window in columns using the
currently selected terminal font.

        (Terminal Height)
        =================

        This  is  the  height  of  the  terminal  window  in rows using the
currently selected terminal font.

        (Clock Left)
        ============

        This is the leftedge of the status bar in pixels.

        (Clock Top)
        ===========

        This is the topedge of the status bar in pixels.

This window also has a set of Pull Down Menus:

        [Terminal / Center]
        ===================

        Will  center the terminal window to the centre of the screen, minus
the status bar height.

        [Terminal / Center Left]
        ========================

        Left  centres  the  terminal  window,  whilst  leaving the top edge
untouched.

        [Terminal / Center Top]
        =======================

        Top  centres  the  terminal  window,  whilst  leaving the left edge
untouched.

        [Terminal / Full Screen]
        ========================

        This menu will enlarge the terminal window to its full size, taking
into account terminal borders and the clock window.

        [Terminal / Quit]
        =================

        Will exit this window.

        [Clock / Center left]
        =====================

        Will left center the status bar.

(3D Border)
===========

        This  is  an  aesthetic  function  that displays a raised 3D border
around the terminal window.  This is purley as a 'looking good' function.

(System Gadgets)
================

        This option will place invisable system gadgets around the terminal
window.   A drag-gadget will be placed along the top border of the terminal
window,  a  front-to-back  gadget  will  be  placed at the top-right of the
terminal  window  and  a  size gadget will placed at the bottom left of the
terminal window.  This is so you can quickly adjust the size of the window.

(Shadow)
========

        This will attempt to place a drop-shadow to the bottom right of the
terminal window.  It uses a crude aspect ratio routine to work out how high
and wide the shadow should be according to your display mode.  This is also
another  'look  good'  function  that only 'looks good' if you have the '3D
Border' option enabled.

(Filled Screen)
===============

        This  option  will  attempt  to  load a Wb2.x/3.0 pattern file as a
backdrop  to  X-Comm.  The (Pattern) gadget below this allows you to select
the  name  of the pattern file to use.  Pattern files are used by workbench
to store the backdrop information of the workbench screen.  X-Comm attempts
to  load  one  of  these and use it as a backdrop for its screen.  They are
usually  located  in  the 'ENV:Sys' directory and are called 'WB.pat' under
2.x  and  'WBPattern.Prefs'  under 3.0.  This is really another 'look good'
feature.

(Pattern)
=========

        The  name  of  the  Workbench pattern file for use as a backdrop to
X-Comm's main screen.  Note that picture files are not supported (Yet.)

(Default)
=========

        Sets  the  screen's palette to the built-in X-Comm defaults for the
selected screen depth.

(Workbench)
===========

        Sets X-Comm's palette to that of the Workbench screen.

(Red)
=====

        This  slider  adjusts  the  amount  of  Red  to  use in the current
selected colour.

(Green)
=======

        This  slider  adjust  the  amounts  of  Green to use in the current
selected colour.

(Blue)
=====

        This  slider  adjusts  the  amount  of  Blue  to use in the current
selected colour.

(<Palette>)
===========

        This  allows  you  to  select  which  colour  to  edit with the RGB
sliders.


The Modem Window - [Settings / Modem]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This window allows you to configure X-Comm to your modem type.  All
commands used by X-Comm to control the modem can be configured here.

(Init String)
=============

        The  initialisation  string that X-Comm will send to the modem.  It
can  contain  the  '~' character which will cause a 1/2 second delay.  Note
that because X-Comm uses the '\' charcter for internal use, you may need to
use '\\' when sending a command like '\c0' to the modem.

        Example:

                'Atz\c0\n\r'

                would need to become

                'Atz\\c0\n\r'

                for the modem to recieve it properly.

        NOTE:  Don't forget the '\n\r' or '^M' at the end so the modem will
accept your input.

(Hangup String)
===============

        The string to use when hanging up the modem.  Usually '~~+++~~~ATH0\n\r'.

(Connect)
=========

        The  string X-Comm will receive from the modem when a connection is
established.  Note that this does not include a possible baudrate.  This is
used by the dialer so it knows what is going on.

(Busy)
======

        The string X-Comm will recieve from the modem when a busy signal is
detected.  This is used by the dialer so it knows what is going on.

(Ring)
======

        The string X-Comm will recieve from the modem when an incoming call
is  detected.  The dialer will inform you that an incoming call is detected
when this string is recieved.

(Ringing)
=========

        Supported  on  some  modems.   This  string  is sent when the modem
detects  that  the  remote  phone is 'ringing'.  The X-Comm dialer will not
take  any action on this, but will inform you of it.  Note that some modems
can  get  mixed up between busy signals and ringing tones.  If it does, try
turning off the 'Ringing' detect feature.

(Voice)
=======

        Some modems can detect whether it is a computer or a human voice on
the  other  end.   If  your modem can detect this, and X-Comm receives this
string,  the  dialer  will  inform you of it, although it will not take any
action.

(No Carrier)
============

        The  string  received when a connection attempt was failed.  X-Comm
will inform you of this in the dialer.

(No Dialtone)
=============

        The  string  X-Comm will receive when a dialtone wasn't detected by
your  modem.  If this string is detected, X-Comm will abort the dialing and
continue to the next entry.

(Dial Type)
===========

        This  option  allows  you  to  select the type of dialing.  You can
select  either  Tone  or  Pulse.   The  difference being that Tone will use
'ATDT' as a prefix and Pulse will use 'ATDP' as a prefix.

(Dial Prefix #1-3)
==================

        This  is  an  alternate dial prefix that can be used instead of the
usual  one.  To use an alternate dial prefix, select either Dial Prefix #1,
#2 or #3 in the phonebook entry and X-Comm will use that prefix to dial the
number.  Useful for toggling certain modem options for a specific system.

(Dial Postfix)
==============

        Not  really  needed,  but  the  string  to use to tell the modem to
accept the command and start dialing.  Should be a carrige return.

(DTR Hangup)
============

        Selects  an  alternate  method of hanging up the modem.  If this is
selected and the "Hangup Modem" command is select, X-Comm will drop the DTR
(Data  Terminal  Ready) for approx 1/3 of a second and then raise it again.
Depending on how your modem is configured, it should drop the carrier.  The
command  to  enable  this  on most modems is 'AT&d' and is default for most
modems.  If you do not wish to have the modem hangup when the DTR is set to
low (When X-Comm has quit or the computer is rebooted), most modems use the
'AT&d2' command to disable this.  If this is the case, then do not use this
option.

(Dialer Auto-baud)
==================

        This option is usually used for non-DTE locking modems or modems at
or below 2400 baud.  If enabled, X-Comm will try and adjust the baudrate to
that  received when the connection was established.  Note this only happens
when a connection is properly established through the dialer.

(Carrier Checking)
==================

        This  option  allows you to select whether X-Comm checks the status
of  the  carrier  signal  when  performing  certain  functions.  If carrier
checking  is enabled (Default), X-Comm will check the status of the carrier
when  performing file transfers, and abort if the carrier is lost.  It will
also  not  check  the status of the carrier when performing other functions
that  do  require a carrier.  This option is usually used when using a NULL
modem  cable between computers, as the CD line is, and can not be set high.
This  will  allow you to perform file transfers and other operations whilst
using a NULL serial cable, without the transfer aborting.

(Serial Delay)
==============

        This  option  was  designed  for  modems  that cannot handle having
full-stream  commands  sent  to  them.   It  slows  down  the pace at which
commands  are  sent  to  the  modem, so it will find it easier to recognise
them.   I  put  this in because alot of other terminal programs do not have
this   option,   and   sent   commands  (Like  ATDT  when  dialing  or  the
initialisation string) in one chunk, and my old modem couldn't take it - it
just  wouldn't  act  on  the  command.   If  your  modem is not recognising
commands  being  sent  to  it  from  X-Comm, try setting this option.  This
option  is  used in conjunction with the gadget below it which is the delay
between each character in 10ths of a second.

(Delay (Seconds * 0.1))
=======================

        Used  in  conjunction  with  the  Serial  Delay option to slow down
commands  sent  to the modem from X-Comm.  The value in here represents the
time in 10ths of a second between sending each charcter.


The Paths Window - [Settings / Paths]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  window  is  where  you  configure all the default paths which
X-Comm will use.  Each path has a string gadget where the path actually is,
a  getfile  gadget used to select the path, and an Expand gadget which will
expand the path to its full name (removing assigns and volumes etc).

(Config)
========

        This  is  your  main config path, where your main and any alternate
configuration files are stored, aswell as where your .PhoneConfig files for
phonebook  entry  configuration are stored.  Note that the contents of this
string  is stored in a global ENV:  variable, X-CommConfigPath.  This is so
X-Comm knows where to look for the main configuration file on startup.  The
contents  of  this  string  will  always  be  saved  to this ENV:  variable
everytime  the  'Okay'  gadget  is  pressed.   It  is  not  recommened that
different configuration files use different configuration paths.

(Logfile)
=========

        This  is  where  your  logfiles are kept.  Both the text and binary
logfiles will be stored in this directory.

(ARexx)
=======

        This  is your ARexx path where you would like your ARexx scripts to
be  stored.   Most  of the time, this will be set to "Rexx:".  This path is
only  really  used  when  opening  the  'Execute  ARexx...' file requester,
although maybe used in other areas for later releases.

(Downloads Path)
================

        This  is  your default download path.  X-Comm will attempt to force
the protocol to use this path, but if any path is given by the protocol, it
will  be  used.   Note that the XPRZmodem.library allows you to configure a
local  download  directory.  If the zmodem library local download directory
is  set,  it  will  override  this  option.   This string should point to a
suitable place with enough space to contain downloading of files.

(Uploads)
=========

        This the default path where uploads will be sent from.  X-Comm will
use  this  path  when  opening  the 'Upload' file requester and when adding
files to the upload list.

(Capture)
=========

        This  is  your default capture path to be used when opening capture
files.

(Review)
========

        This  is  used  when  saving review buffers and other miscellaneous
text files from X-Comm's internal buffers (ASCII Send etc.)

The Macros Window - [Settings / Macros]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        X-Comm  macros are very different to the macros system used in most
other  terminal  packages.   Macros as most people know it are just strings
that  are sent to the modem when a certain function key is pressed.  X-Comm
macros  can  do  any number of things, not just send a string to the modem.
Not  only  that, but macros can be defined as any key combination available
on the keyboard, not just function keys.

The Main Macros Window
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  window  provides  a  list  of  all  currently defined macros.
X-Comm allows you to have an almost unlimited number of macros, only really
limited by memory and how many different key combinations you can have!

        The  list displays each macro by name, its calling key sequence and
the type of macro it is.

(Add)
=====

        Adds a macro.  See the Macro Editor Window for more information.

(Delete)
========

        Turns  the  list  into 'Delete' mode.  Select a macro to delete it.
Select 'Delete' again to turn delete mode off.

(Edit)
======

        Turns  the  list  into  'Edit'  mode.   Select  a macro to edit it.
Select 'Edit' again to turn edit mode off.

(Export)
========

        This  function allows you to export the currently defined macros to
an ASCII textfile.  Useful to keep a backup record.

(Load)
======

        Allows  you  to  load  a  new  set  of  macros.  It will bring up a
filerequest asking you to enter the filename of the macros to load.  If you
would  like  the  selected  macros  set  to  be  loaded everytime X-Comm is
started, save the default configuration after loading this macro file.

(Save)
======

        Will save the current set of macros to the current filename.

(Save As)
=========

        Will  bring  up a filerequester allowing you to select a new macros
filename to save the current set as.

(Okay)
======

        Exits the macro the window.

The Macros Editor Window
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  window  allows  you to actually edit each macro.  The gadgets
are described here:

(Macro Name)
============

        The  name  you  would  like  to  call  a macro.  This string is not
actually used by X-Comm, but is merely used to identify each macro by name.

(Macro Data)
============

        Depending  on  the macro type, this will contain either a string, a
filename  or  a  menu  reference.   This string can contain any of X-Comm's
autoinserts  to  insert  information  into  the  string (like a username or
password).   Depending  on  the  macro  type,  the getfile gadget here will
either  bring  up an autoinsert list, bring up a file requester or activate
pull-down  menus  in  the  macro definition window (see Macro Type for more
information.)

(Macro Key)
===========

        This is the key used to invoke this macro.  To set it, click on the
autoinsert  window  and  hold  down the key sequence you would like to use.
You  can  use  any  modifier  (Alt, Ctrl, Amiga etc.) The key sequence must
contain  one  'normal'  key  (ie 'D' or '1' for example.) All numbers, ESC,
TAB,  DEL, Help, Return and Arrow keys are counted as 'normal' keys and can
be used individually.

(Macro Type)
============

        This  allows  you to define the type of macro that you want this to
be.   If  it is text, the Macro Data string should contain the string to be
sent  when  this  macro is invoked.  The string can contain any of X-Comm's
autoinserts.

        If  this  is set to Formatted File, the macro data should contain a
complete  filename  with  path  of an ASCII file to send when this macro is
invoked.   The  file  will  be parsed by X-Comm for all autoinserts will be
interpretted and outputted correctly.

        If  this  is  set to Unformatted File, the file will be treated the
same  as  with a Formatted File type, but autoinserts that may be contained
within the file will NOT be interpretted.

        If  this is set to ARexx Command, then the macro data should be set
to a valid filename and path that is an ARexx script.  The script will then
be  executed  when the macro is invoked.  Note that this is a VERY powerful
feature and can create a very easy way of controlling X-Comm.

        If  this  is  set  to  CLI  command,  the  macro data field will be
interpretted  as a DOS command and will be executed accordingly.  If output
is needed, an output window will be opened.

        If  this  is  set  to Menu Function, then the macro data field will
contain  a menu location descriptor.  The structure of this string is (Menu
#,  Item  #, Subitem #.) The best way to obtain this string is to click the
getfile  gadget  next  to the gadget data string.  X-Comm's main menu strip
will  be  added  to the macro editor window and you will able to select the
menu  you  would  like  this  macro  to  select.   It will be automatically
translated  into this type of string.  It is best to allow X-Comm to create
the  menu function string for you at first, so you get the idea of how they
work.

The File Control Window - [Settings / File Control]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        NOTE:   If  you  are using a non-registered version of X-Comm, this
menu  will  be  ghosted.   It is only relevant in the registered version of
X-Comm  where file control is enabled.  It is explained in this document so
that  you  may  better  understand the concept of how filecontrol works and
what it actually is.

        File  Control  is a unique idea I devised right back from the start
when  writing  X-Comm.   I had planned to implement this feature right from
the  start  as  I  thought  that  it  would  be  a definate time saver when
downloading files.

        In  a sense, File Control allows you to perform specific actions on
different  filetypes  as  they  are downloaded to you.  The best example of
this is when you download an LhA or Lharc file.  These files are compressed
and  require  you  to  decompress  them  once  you have downloaded them.  I
figured it would be much easier if you could get the terminal program to do
all  this  as  soon as the file was downloaded, without you having to touch
anything.   All  you  needed to do was setup X-Comm so that it knew that an
LhA  or  Lharc  file  had  the  extension .lha or .lzh and that it could be
extracted  by running the LhA or LZ command (or whatever archiver you use.)
Then  the next time a .lzh or .lha is downloaded, X-Comm will automatically
recognise  the  file, and fire off the approriate backround task to extract
the  files,  while other possible files were downloaded.  File Control does
not  stop  here.   You  could  view pictures once they were downloaded, you
could load datafiles into programs, you could even backup every download as
they  come  down,  or move them out of a temporary directory (like RAM:) to
your storage directory.  The possibilities are endless.

The Main File Control Window
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  window  contains  a  list  of  all  the  filetypes  and their
extension.  Most of the gadgets here a fairly self explanitory.

(Add)
=====

        Will add a new filetype.  The File Control Entry Editor window will
be opened to define a new filetype.

(Edit)
======

        This  turned the listview into 'Edit' mode.  Click on a filetype in
the  list  to  edit  it.  Press the (Edit) gadget again to turn 'Edit' mode
off.

(Delete)
========

        Turns  the  list into 'Delete' mode.  Click on a filetype to delete
it.  Press the (Delete) gadget again to turn 'Delete' mode off.

(Export)
========

        Exports  all  current  textfiles to an ASCII format.  Pressing this
button  will  bring up a filerequester asking you to select the filename to
save the exported filetypes as.

(Load)
======

        Brings  up  a filerequester allowing you to select a filetypes file
to load.

(Save)
======

        Saves the current filetype list to the current filetypes file.

(Save As)
=========

        Brings up a filerequester asking you to select the filename to save
the filetypes as.

(Okay)
======

        Exits this window.

The File Control Entry Editor Window
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This window allows you to define/edit your filetypes.

(File Type)
===========

        This is just a general name that is given to filetypes.  It is only
for you to understand what each filetype is.

(Action Command)
================

        The  command  to  execute when this filetype is encountered.  It is
passed to DOS, but may contain any of X-Comm's autoinserts.  Note that this
is  the  only place where the File Control autoinserts can be used.  Use @f
to  insert  the  filename, @o the insert the output device and @u to insert
the destination path (or unarc path.)  An example LhA / Lzh action command:

        'C:LhA x @f'

        Note that you do not need to insert either the output device or the
unarc  directory.   This is because X-Comm will create a batchfile and will
start  a  new  CLI  to  execute  that  batch  file.   The  batch  file will
automatically  CD  to the unarced directory, and the CLI will automatically
use the output device specified for the filetype.

(Destination Path)
==================

        This   is   used  mainly  for  extracting  archives.   X-Comm  will
automatically  CD  to  this  directory when acting on the file, so all file
output  will  be  placed  in  this  directory.  It can be inserted into the
action command string using the @u insert.

(Output Device)
===============

        This  can  be any valid AmigaDOS device/file.  It is usually a CON:
device  with  window arguments specified after it (this is the default.) If
this string is empty, then no output device will be used.

(File Extension)
================

        This  can  be  any AmigaDOS pattern to identify the filetype.  Each
file  downloaded  will be tested against this pattern.  If it matches, then
the  action command will be executed.  Note that multiple extensions can be
bound  to  a single filetype by using ( and ).  Again, I'll use the classic
.lzh / .lha example:

        (#?.lha|#?.lzh)

        will  recongise  both  the .lha and .lzh extension.  In X-Comm, you
may  also use the '*' instead of '#?'.  This pattern is NOT case sensitive.
Note  that  the  pattern does not have to be a pattern, but can be a single
filename.   I  have  a  filetype  defined  that  recognises  one  filename,
'RECENT'.   It  a  list  of  new files available on the anonymous FTP site,
amiga.physik.unizh.ch.   Whenever  I  download  this  file,  I run an ARexx
script  using the '@a' insert as my action command.  The ARexx script opens
X-Comm's  review  buffer  and  loads the file in.  File Control really does
have many uses.

(Close Delay)
=============

        This  is  the  delay, in seconds, to wait before closing the output
device  after  acting on the file.  This is generally used as a pause after
acting on a file.  If this is set to -2, You will be asked to press any key
to close the window.  Note that using '-2' is only valid if you are using a
window as an output device.

(Stack Size)
============

        Size  of  the  stack to set when X-Comm acts on the file.  Normally
should be set to 4096, but some programs require a larger stack.

(Output ...)
============

        This  is only really valid when using a window as an output device.
If    set    to    X-Comm    Main    Screen,    X-Comm    will    place   a
'/SCREENX-Comm.<screenid>'  after  the  output  command  so that the output
window  will  open  on  X-Comm's public screen.  This is more reliable than
placing  one  after  the  command yourself, incase you are running multiple
copies of X-Comm.

(Act ...)
=========

        This  allows  you to select when X-Comm acts on a file.  If you are
performing a batch file tranfer and this is set to 'After Transfer', X-Comm
will  wait  until all the files in the batch are received before extracting
each  one.  If it is set to 'After file recieved', then X-Comm will extract
each  file  in  the  backround,  as  it  is  received.  Note that it is not
advisable to use 'After file recieved' on a machine that is not accelerated
or  is  using  a  high-speed modem, as the action performed on the filetype
could cause errors in the transfer.  Try this option first, and if problems
arise  whilst  getting  files and acting on the file at the same time, then
switch it back to 'After transfer'.

(Make Directory)
================

        This option will strip the extension from each filename, and create
a  directory  with  the  same name as the filename (minus the extension) in
your  destination  path.  It will then use the newly created directory as a
destination path.

(Query Action)
==============

        If  this  is turned on, X-Comm will bring up a requester asking you
if  you would like to act on the file, before it actually does.  This gives
you  the  option of not acting on a particularly large file, or if you know
that  it is too big to be acted on whilst a transfer is occuring.  The file
requester will inform you of the filename and its filetype.


The Miscellaneous Window - [Settings / Miscellaneous]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  window allows you to configure various miscellaneous features
of X-Comm.  It does not contain anything specific.


(X-Comm to Front on Bell)
=========================

        If this option is turned on, the X-Comm screen (or public screen if
X-Comm  is  on  a public screen) will be automatically brought to the front
when  a  beep  is  received.  The beep could have been caused internally by
X-Comm (for instance, when a file transfer is completed) or could have been
cause by X-Comm receiving the Control-G (^G) bell character.

(Flash X-Comm Screen)
=====================

        If  turned  on,  X-Comm's  screen  will  be  flashed when a beep is
performed.  If you are using version 2.1+ of the operating system, this may
involve  playing  a  sound or sound sample as configurable by the operating
system.

(Play IFF Sound Sample)
=======================

        If this option is turned on, X-Comm will allow you to select an IFF
sound  sample to played when a beep is performed.  The sample produced will
be  played  asyncronously  so  you can continue with operation whilst it is
being played.

        NOTE:   The  three  above options do NOT have any effect when using
the   'console.device'   terminal   emulation.    This   is   because   the
console.device does not allow you to change the way it performs a beep.  It
will  simply call the DisplayBeep() function.  If you are using 2.1+ of the
OS  and  the  console.device  terminal emulation and you would like a sound
sample  to  be played when a beep is performed, I suggest you use the sound
preferences to set the sound sample to be played.

(Beep Sound)
============

        The name of the sound sample to be played when a beep is performed.
The  volume  slider  below  it allows you to adjust the volume of the beep.
Note that the sample is replayed everytime this slider is moved.  Makes for
some pretty funky effects :-)

(Create Icons)
==============

        If  this option is enabled, X-Comm will create a workbench icon for
each  file  downloaded.   The  icon will be a standard project icon, with a
blank default tool entry.

(Auto Transfer Zoom)
====================

        If  this  option  is  enabled, X-Comm will automatically 'Zoom' the
transfer window as soon as a transfer is started.

(Upload Dock on Workbench)
==========================

        This  option,  if  enabled,  will  turn  on  X-Comm's unique upload
docking  feature.  X-Comm will place a special icon on workbench.  If other
icons  are dropped onto this icon, it will add that icon to the upload dock
list.   From here, the list can be either uploaded straight away, stored in
the  X-Comm  upload  list,  or  forgot  about.   Note  that whole harddrive
partitions  can  be dropped onto this icon.  If a drawer or disk is dropped
on,  X-Comm will recursivly scan the drawer/disk for files and add them all
the  upload  dock  list.  This allows you to transfer whole harddrives over
NULL modem links to another computer if you like.

(Clock Seconds)
===============

        This  toggles  whether  you  want  the  clock  in the status bar to
contain seconds aswell as the time.

(Clock Colour)
==============

        This  allows  you  to select the colour of the clock display in the
status bar.

        NOTE:  This option is only valid under OS3.0 (39+)

(Clock Type)
============

        Allows  you  to  select the clock type to 12 or 24 hour time.  Note
that  both  the  Clock Seconds and Clock Type options also effect the start
and estimate completion time display in the transfer window.

(Main : )
=========

        This  is the task priority of the main task.  It can be set between
-127  and  127.   It  is recommended that you only set it between -1 and 5.
Any  higher  could  start to interupt the normal operation of the operating
system.

(Clock : )
==========

        The  task  priority of the clock task.  You may want to set this to
lower  than the main task, as the clock task does not need a huge amount of
CPU time.

(Transfering : )
================

        This  is  the  task  priority of the main task whilst transfering a
file.   This  is  useful if you have a highspeed modem on a non-accelerated
amiga  and  find  that you get errors when transfering files.  Setting this
higher  will  mean  that  the main transfer will get more CPU time than the
transfer  window  update  process.  This will mean that the transfer window
may appear to update more slowly.

(File Control : )
=================

        The  task  prioirty  of  the  file control process when acting on a
file.   This  is only active on registered versions of X-Comm.  This can be
used  to  make  sure  that  transfers  that  may  still be happening in the
backround  will  not be to adversly affected by acting on a file.  The file
control process will be set to this tasking priority when it is started.

(Workbench AppIcon on Iconify)
==============================

        If this option is enabled, X-Comm will attempt to place an internal
icon  on  the workbench when it is iconified.  Note that it DOES NOT try to
use  the icon that may have been used to start X-Comm, but uses a specially
designed  one (Thanx Shaun!) Double clicking on this icon will cause X-Comm
to de-iconify and return to its origional state.

(Workbench AppMenu on Iconify)
==============================

        This  will attempt to place a menu item in Workbench's 'Tools' menu
called  'X-Comm'  when  X-Comm  is  iconified.   Selecting  this  item will
de-iconify X-Comm and return it to it's origional state.

        NOTE:   If  none  of  the  above  two  options  are  turned on, the
'Iconify'  option  in  the  'Project' menu will be ghosted (how can you get
back into X-Comm?) Also, if you iconify and Workbench is not loaded, X-Comm
will return immediatly (it won't be able to open either the icon and/or the
menu.)

(Close Serial on Iconify)
=========================

        If this option is enabled, X-Comm will close the serial driver when
X-Comm  goes  into  iconified state.  This is useful if you want to iconify
X-Comm  to  the  background while you open other applications which use the
serial  device  (like  a  BBS  program)  and  be able to then reopen X-Comm
whenever  you  need  it.  Even better, you can put X-Comm in your WBStartup
drawer  with the 'ICONIFIED' tooltype and if this option is enabled, X-Comm
will  sit  invisably  in  the backround until you need it.  If you do this,
don't forget to set the tool type 'DONOTWAIT'.

(Exit without Asking)
=====================

        If  this  option  is  turned off, X-Comm will confirm the action to
quit  with  a  requester.   If it is turned on, X-Comm will exit immediatly
when the 'Quit' option is selected.

(Disable File Control)
======================

        This  option is only available in registered version of X-Comm.  If
it is turned on, X-Comm will not process files for file control as they are
downloaded.   Useful  if  you want to turn it off without deleting all your
filetypes.

(Send Delay) and (Send String)
==============================

        These  two  options  are part of X-Comm's 'antilogoff' option.  The
send  delay is the delay in seconds between sending the string contained in
'Send  String'  after  'Send  Delay'  seconds of keyboard inactivity.  This
means  that  you  can  prevent  yourself from being logged off a system for
inactivity by setting these two options.  The Send Delay is in seconds, and
the  Send  String can contain any X-Comm autoinserts.  X-Comm will send the
'Send  String' after 'Send Delay' seconds of keyboard inactivity to X-Comm.
This  means that it WON'T be sent whilst you are happily typing away to the
other end, only when you type nothing.

        NOTE:   This option can be quite anoying if misused, especially for
the  sysop of the system.  Make sure that if you use this option, please do
NOT leave X-Comm running while you are unattending it for extended periods.
This  option  was  designed so that you could do a time consuming task that
needed to be done in the backround whilst online.  It could also cost you a
mamoth phone bill if not used properly!

(Review Buffer Size)
====================

        This is the maximum allowable size that the review buffer can reach
before  being  trimmed.   A  reasonable  size  for  this  would  be  32 (in
kilobytes).   If  set to 0, there will not be a limit and the review buffer
will be allowed to get as large as you have memory.


The Phonebook/Dialer Window - [Settings / 'Phonebook/Dialer']
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  window  allows  you  to  configure your phonebook and dialer.
Some   of   the  options  in  this  window  are  only  meant  for  advanced
configuration, but may need to be changed if you have a 'bitchy' modem.

(Modem Wait String)
===================

        This  is  the  string  X-Comm  will  wait  for from the modem after
sending  the 'String to Stop Dial' sequence.  It should signal that dialing
has stopped and it is now okay for X-Comm to start dialing the next number.
This  string  is  usually  'OK' or 'NO CARRIER'.  X-Comm will wait for this
string  to  be  recieved  for 'Modem Wait Timeout' seconds.  In the dialer,
X-Comm will say 'Waiting for modem response ...' and if the modem responds,
X-Comm  will  say  'Modem  has responsed' and start dialing.  If it doesn't
response  with  this  string  in  'Modem Wait Timeout' seconds, it will say
'Modem did not respond ...' and X-Comm will start dialing again anyway.  If
you  want to find out what this string is, turn on 'Modem Output in Dialer'
and  watch  what  the modems sends out when dialing is canceled.  Note that
this option only has an effect when the 'Redial Delay' is set to 0.

(Modem Wait Timeout)
====================

        This  is  the  timeout value that the X-Comm dialer will wait for a
response from the modem after stopping the dial.  This value is in seconds,
and is only really valid if your 'Redial Delay' is set to 0.  See above for
more information.

(String to Stop Dial)
=====================

        This  is  the  string  X-Comm  will  send  to the modem to stop the
dialing.   It  is  usually a return or just a space.  X-Comm will then wait
for the 'Modem Wait String' before it starts dialing again.

(Stop-Start Delay)
==================

        This  is  a  general  delay  used between receiving the 'Modem Wait
String'  from  the  dialer  and actually dialing again.  It gives the modem
suitable  time  to  reset itself ands be ready to recieve the next command.
It is measured in 0.02 of a second.  50 (1 second) is usually a good value,
although  you may wish to experiment with different values if your modem is
faster or slower.

(Modem Output in Dialer)
========================

        This  turns  on  the  display  of the modems output in the terminal
window  whilst  dialing  is  going on.  It allows you to see what the modem
says,  incase you need to debug some parts of your dialer setup.  Note this
can also be configured from within the dialer from the menu [Monitor Serial
Activity].

(Default Username)
==================

        This is really your name, or the name you use on BBS's.  It will be
automatically  filled  into  a phone entry each time you add a new one.  It
will  also  be  put into the username field of the a phonebook entry if you
click  the  'getfile' gadget next to the 'Username' gadget in the phonebook
entry editor.

(Default Password)
==================

        This  is  your  default,  or  most  used,  password.   It  will  be
automatically  filled  into  a phone entry each time you add a new one.  It
will  also  be  put into the password field of the a phonebook entry if you
click  the  'getfile' gadget next to the 'Password' gadget in the phonebook
entry editor.

(Default Alias)
===============

        This  is  your  general  alias  that  you  may use on some bulletin
boards.   It  will be automatically filled into a phone entry each time you
add a new one.  It will also be put into the alias field of the a phonebook
entry  if  you click the 'getfile' gadget next to the 'alias' gadget in the
phonebook entry editor.

(Dial Attempts)
===============

        This  is the maximum allowable dial attempts made to each phonebook
entry before the dialer gives up and exits.

(Dial Timeouts)
===============

        This  is  the  timeout value in seconds that X-Comm will wait for a
legitimate  connection.   After this value has expired, X-Comm will give up
dialing  the  entry  (cancel  the  dial) and commence dialing the next one.
Note  that  this  value can be changed whilst in the dialer by pressing the
'.' and ',' keys or clicking on the '<' and '>' gadgets.

(Redial Delay)
==============

        This  is  the  delay  that  X-Comm  will  wait  for between dialing
entries.   It  overrides  X-Comm's  intelligent wait for modem response and
just waits for the specified time, no matter what your modem says.

The MXC Recognition Protocol - [Settings / MXC]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This is really now a defunct protocol that will have limited use to
most  people.   It was origionally devised by myself and Anthony Barrett to
be  an  autologin protocol for BBS systems.  It is currently implemented in
X-Comm  and  the now unsupported PD BBS system, M A X's BBS.  If you call a
M A X's  BBS  system,  you  can  configure your account locally by changing
these  settings.   To  enable  MXC,  select  the 'Enable MXC' option in the
phonebook  entry editor.  When X-Comm successfully connects to that system,
it will attempt to handshake with the other system before anything happens.
If  it  recognises  that  the  other system can perform MXC, it will send a
packet.   If  the  remote system receives that packet correctly, the remote
system  should  automatically log you in.  If anything goes wrong along the
way,  X-Comm  will  inform  you and M A X's BBS will jump straight into the
main logon sequence.

        MXC  was  written  specifically for M A X's BBS, so the information
data sent is M A X's BBS specific.  It will send:

        - Your  Username  (From  the  username  field  in the phonebook entry
          editor)
        - Your  Password  (From  the  password  field  in the phonebook entry
          editor)
        - ANSI enabled
        - Enable CLS codes (Clear Screen Codes)
        - Your Page Length (If set to auto, X-Comm automatically work out your
          screen height for you.)
        - Page pausing (More prompt)
        - Use FSE (Full Screen Editor)
        - Recieve Junk Mail (Msg's addressed to 'All'.)
        - Your currently selected protocol. (Will be automatically determinded by
          X-Comm.)

        All the gadgets in the MXC configuration window corrospond to these
things.

        NOTE:   I  have  plans  to  replace  MXC with the IEMSI standard in
future  versions.  I had planned to release the specifications for MXC, but
since  it is now no longer supported in M A X's BBS, I don't see the point.
I  have  the  specifications  for  the IEMSI, so its only a matter of time.
Hopefully  I  can  convince  Amiga  BBS  program authors to implement IEMSI
aswell.  IEMSI will allow a standard login protocol across both the IBM and
Amiga platforms.

Transfer Protocol - [Settings / Transfer Protocol]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  option will bring up a file requester asking you to select an
XPR  transfer protocol to use.  Note that all XPR protocol libraries should
be  in  lower  case.   X-Comm  may  not  be able to open the protocol if it
contains any uppercase charcaters.

The Text Log Window - [Settings / Log / Text Log Settings]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This window allows you to control the contents of the textlog file.
The  logfile created by X-Comm can be completly customised to suit you, and
certain  information  can  be  masked  out.  Each log string can use any of
X-Comm's  autoinserts  to  put  any  specific information you like into the
logfile.

(Entry Prefix)
==============

        This  is the string that is placed before all the other log strings
when  making a log entry.  By default, it places the current date and time,
but  can be configured to show other things.  This string is used everytime
a log entry is made.

(Log Sessions)
==============

        This allows you to turn off the logging of session information.  If
this is turned off, X-Comm will not log the starting and exiting of X-Comm.

(Log Connects)
==============

        This  allows you to turn off the logging of connection information.
If  it  is turned off, X-Comm will not log connections, unknown connections
or disconnections.

(Log Transfers)
===============

        This  allows  you  to  turn off the logging of transfers.  If it is
turned off, X-Comm will not log when transfers are completed.


The Call Rates Window - [Settings / Log / Call Rates]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This window allows you to configure call charges and rates that you
will  be  charged  for  making  calls  to  certain  areas.  You can have an
unlimited  amount  of different call rates, each for a different place that
you may call.  For instace, you could define your local calls that you make
as  being 25c for connection only.  Then again, you may call overseas which
could cost 70c per 100 seconds, and it may be cheaper on weekends and after
7pm every day etc.  X-Comm allows you to configure all this.

The Main Call Rates Window
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This is like the macros and filecontrol window.  It contains a list
of  all the currently defined call rates.  There should always be one entry
in  this  list:  Default.  The default can be configured like all the other
entries, and is used by default when you create a new phonebook entry.

(Add)
=====

        Adds  a  new  call  rate.   This call rate is on its own completely
configurable for off peak rates etc.

(Edit)
======

        Turns  the  call  rate list into 'Edit' mode.  Any entry clicked on
will be edited.  Click on 'Edit' again to turn it off.

(Delete)
========

        Turns  the call rate list into 'delete' mode.  Any entry clicked on
will be deleted.  Click on 'Delete' again to turn it off.

(Export)
========

        Will  export  your currently defined call rates to a straight ASCII
textfile.   Makes  things easier to read.  Selecting this gadget will bring
up a filerequester asking you to select the filename and path to export to.

(Load)
======

        Brings  up a filerequester asking you to select a path and filename
to load another set of call rates from.  If you would like X-Comm to always
load  this  set  of  rates,  please  save your configuration after you have
loaded the set you wish to use.

(Save)
======

        Saves  the  set  of call rates to the currently selected call rates
file.

(Save As)
=========

        Brings  up  a file requester asking you where to save the currently
defined set of call rates.

(Okay)
======

        Exits this window.


The Call Rates Editor Window
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  is  where each call rate is defined.  Each of the gadgets are
explained in turn:

(Charge Type)
=============

        This  defines  whether the current call rate will be charges as one
single connection charge (Connect Only) or charged on a per time basis.  If
it  is only a Connect Only charge, then the unit cost will contain the cost
of  one  connection.   Time  will not play a factor.  Also, the Cheap Rates
listview  will  be ghosted (OS 3.0+ only) and the mode buttons for the list
will be ghosted aswell.

        If  you  wish  to have a Timed Call connection, then your unit cost
will  contain  the cost of the call per 'Time Unit' seconds.  Note if there
are  any  Cheap  Rate  times defined, then these two values will only be in
effect if the time of your call is not in any of the Cheap Rate zones.

(Unit Cost)
===========

        If  this  is  a  Connection  Only  rate,  this  will be the cost of
connection  to  the service.  If it is a Timed Call rate, then this will be
the cost of the call per 'Time Unit' seconds.

(Time Unit)
===========

        This is the size of the time unit to use for a Timed Call rate.  It
is  measured  in  seconds.   Each time 'Time Unit' seconds elapses, another
'Unit Cost' cents is added to the cost of the call.

(Cheap Rates)
=============

        Most  phone  companies  around  the  world  offer  cheaper rates at
certain times of the day and week.  This list allows you to define the cost
of being online at these different times of the day or week.

(Add)
=====

        Will  add  a new cheap rate to the list and bring up the Cheap Rate
editor window.

(Edit)
======

        Turns  the  Cheap  Rates list into edit mode.  Click on an entry to
edit it.  Click 'Edit' again to cancel this mode.

(Delete)
======

        Turns  the Cheap Rates list into delete mode.  Click on an entry to
delete it.  Click 'Delete' again to cancel this mode.

(Copy)
======

        Turns  the Cheap Rates list into duplicate mode.  Click on an entry
to duplicate it.  Click 'Copy' again to cancel this mode.


The Cheap Rates Editor Window
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  window  edits  the the cheap rate time zone, and what the per
unit cost of the call will be whilst in this time zone.

(Unit Cost)
===========

        Same as in the Call Rates Editor window.  Defines the cost of 'Time
Unit' seconds online in cents.

(Time Unit)
===========

        The  size  of  one  Time  Unit  in  seconds.   For each 'Time Unit'
seconds, an extra 'Unit Cost' cents will be added to the cost of the call.

(From)
======

        This shows the beginning of the current Cheap Rate time zone.

(To)
====

        This shows the end of the current cheap rate time zone.

(Day)
=====

        This  selects  the day (Sun, Mon, Tue, Wed, Thu, Fri or Sat)
on  which  the  time  zone either begins or end (depending on which one you
use.)

(Hours)
=======

        This  selects the hour (12 hour time) on which the time zone either
begins or end (depending on which one you use.)

(Mins)
======

        This selects the minute on which the time zone either begins or end
(depending on which one you use).


The Generate Call Window - [Settings / Log / Add Binary Log Entry]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This window allow you to insert a call to a certain system that you
may  have  called, but didn't get logged (manual dial etc.) It doesn't take
much  explanation,  so I won't go through all the gadgets here.  Basically,
you  select  the  system you called, approximately what time, what day, how
long the call was, and the call will be added to your binary log.

The Analyse Binary Log Window - [Settings / Log / Analyse Binary Log]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This is one of the most informative features of X-Comm.  Some other
programs  have  so-called 'log scanners' that attempt to scan the generated
text  log  that  the program generated, and produce some sort of output and
summary  from  it.  I never did like this method as it just wasn't accurate
enough.   Because  X-Comm has a configurable text logfile, it would be very
difficult  to  analyse it properly.  Instead, X-Comm has this all built-in.
X-Comm  not only generates a human readable text log, but it also generates
a 'binary log' which can only be read by X-Comm and support programs.

        When  the  window  is  opened, X-Comm will scan your binary log and
analyse  the  contents.   It  will  then  bring up a statistics window with
information  regarding  your  calls,  and  a  list  of calls to all systems
contained in the current log.

(Period Length)
===============

        The length (in days) that this binary log spans for.

(First Entry)
=============

        The  date, day and time that the first entry to this binary log was
made.

(Last Entry)
============

        The  date,  day and time that the last entry to this binary log was
made.

(Calls)
=======

        The total number of calls that were logged in this logfile.

(Calls - Average)
=================

        The  average number of calls made to each of the BBS's listed.  For
example,  if  there  are two BBS's in this log, and you had made 5 calls to
one and 10 to the other, this will be 7.5.

(Cost)
======

        The total cost of calling all the systems listed in this log.  This
is  very  good  for  approximating  how much you have spent so far on phone
calls, so you can get a rough idea before it's too late!  Note that this is
used in conjunction with the Call Rates to define how much each call costs.

(Cost - Average)
================

        The average cost of calling each system listed in the log.

(Time Online)
=============

        The total time spent online to all the systems listed in the log.

(Time Online - Average)
=======================

        The average time spent online to each system.

(Downloads)
===========

        The  total  number  of  downloads performed from each system in the
log.

(Downloads - Average)
=====================

        The  average  number  of downloads done from each BBS system in the
log.

(Uploads)
=========

        Same as above, but for uploads.

(Uploads - Average)
===================

        Same as above, but for uploads.

(<List of Systems>)
===================

        Contains  a  list  of  all the systems that have been logged, and a
total  call  count  of  each  one  of them.  Click on one to get the system
statistics for each system.

(Okay)
======

        Exits this window.

(Print Log)
===========

        Brings  up  a window allows you to print the contents of the binary
log in a condensed and easy to read format.

(Clear Log)
===========

        Resets  and  clears  all  entries  in  the binary log.  This is the
'nice' way to delete your binary log.


The System Statistics Window
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  can  provide  you  with  specific  information  regarding one
system.   This  window  is  also accessable from the Phonebook Entry Editor
window when editing a specific phonebook entry.

(System Name)
=============

        The name of the system these statistics are referring to.

(Last On)
=========

        The last recorded date that you connected to this system.

(Last Connect)
==============

        The last recorded baudrate that you connected to this system at.

(System Calls)
==============

        Total number of calls made to this system.

(System Calls - %)
==================

        The  percentage of total system calls that are made to this system.
For  instance,  if you had 2 systems, and you had made 20 calls in total to
both  these  systems, and you had made 15 calls to one of the systems, this
value would be 75% for that system.

        NOTE:   From now on I will not be explaining each of the '%' values
here,  as  they  are  all  fairly  straight  forward.   They  are  just the
percentage of values on this system as compared to all the other systems.

(Time Online)
=============

        The total time spent online to this system.

(Time Online - Av)
==================

        The average time spent online this system per call.

        NOTE:   I  will not be explaining the 'Av' field of the rest of the
entries.   Basically  it  is  the average value of all the calls and values
that were made to this system.

(Call Costs)
============

        The total cost of all the calls made to this system.

(Downloads)
===========

        The total amount of downloads done with this system.

(Uploads)
=========

        The total amount of uploads done with this system.


The XEM Emulation Configuration Window - [Settings / XEM Emulation Options]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        NOTE:  This menu will only be selectable if you are currently using
an XEM Emulation.

        This  allows  you to configure certain aspects of the XEM Emulation
that  you  are currently using.  It will save the options you set for later
used.   At the time of writing of this manual, however, I have not yet been
able to get the XEM Emulation to either save or read the preferences.  I am
working on getting this fixed.

The XPR Protocol Configuration Window - [Settings / XPR Transfer Options]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This window is simliar to the previous window, but it allows you to
configure  your  XPR  transfer protocol.  All preferences here are saved in
ENV  under  the  popular  method  of  'xpr<filename>'.  The options in this
window are completly specific to the current XPR protocol you are using.

Configure All - [Settings / Configure All]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  option,  when selected, which systematically run through each
of  the  configuration  windows in X-Comm and allow you to configure X-Comm
totally.  It currently opens these windows:

        - Serial
        - Terminal
        - Screen
        - Modem
        - Paths
        - Macros
        - File Control (if applicable)
        - Miscellaneous
        - Phonebook/Dialer
        - MXC
        - Text Log
        - Call Rates

        If  the  'Cancel'  gadget  is  pressed in any of these windows, the
whole operation will be aborted.


                          -- The Transfer Menu --
                          ญญญญญญญญญญญญญญญญญญญญญญญ

        In  this  menu contains the tools nessecery to transfer data to and
from  the  remote  system.   X-Comm  allows  you to use the XPR standard of
transfer  libraries  to  transfer  files  using specific protocols that the
remote system supports.  Most of the main XPR libraries are included in the
distribution  archive, and should be placed in your LIBS:  directory, space
permitting of course.

        X-Comm  also  has an internal ASCII Send function which is designed
specifically  to  send  ASCII data (ie textfiles and messages.) It does not
use  an  XPR  protocol,  but just sends the data as raw ASCII to the remote
system.   This  is  usually only appropriate when sending readable text, as
small  errors  that may occur in the transfer are not overall worrying.  If
this  happens  in  say, a binary file or archive, then it could corrupt the
whole file, rendering it useless.

The Transfer Window
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        X-Comm's  transfer  status  window is your key to information about
the  status  of  a  file transfer.  It is used by X-Comm when using the XPR
protocol  libraries  to  transfer  data.   I have tried to make this window
display  as much information as possible about the current transfer, and to
try  and  make  it  as  easy  to read as possible.  In this section, I will
explain the bits and pieces of the transfer window, and what make it up.

        X-Comm  has quite a large transfer window, and has quite a long and
extensive  routine  to  update  it, whilst the transfer is going.  Updating
this transfer window can take some time (in a computing sense,) and has the
capability  to  slow the transfer down somewhat, due to the redraw delay as
each block comes in.

        It  is  for  this  reason that I decided to create a new process to
handle the updating of the transfer window.  Whilst the main X-Comm process
goes  about  actually  transfering  the data, the other process updates the
transfer  window  information  as  it  comes  in.  This means that the main
transfer  process  can  spend as much time as possible actually transfering
the  data,  and  let  the  transfer  window  do  the  actual  update of the
information.

        Next,  X-Comm  has  the  ONLY transfer window I know of (Apart from
M A X's  BBS)  that has a realtime updating elapsed time clock.  Most other
programs  update  the  time  elapsed every block (each time a block of data
comes  in.)  X-Comm's  elapsed time clock will tick every second, no matter
what the transfer is doing.  This can be quite useful.

The Transfer Window - A Description
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        Protocol - The XPR Transfer currently being used.  This string is
                   provided by the library itself, and does not nessacerily
                   correspond to the library filename.

        Filename - The  filename  (without  path) of the current file being
                   downloaded.

        Size - This  line  displays  information about the file in terms of
               its   filesize.   It  displays  how  many  bytes  have  been
               transfered  sofar,  how  many  bytes  are remaining, and the
               total size of the file.

        Time - This  line displays information about the time involved with
               this  file.   It  displays  how much time has elapsed so far
               (realtime,)  how much time is left for the transfer, and the
               total estimated time that the transfer will take.

        Blocks - This  line  displays information about the blocks the file
                 contains.   Each  transfer  protocol transfers its data in
                 certain  block  sizes.  The popular ZModem transfers in 1k
                 (1024  byte)  blocks  of  data.  At the end of each block,
                 information  is updated and data integrity is checked.  If
                 everything  is  okay, the protocol continues.  If an error
                 has  occured, the block is resent.  This display shows how
                 many  blocks  have elapsed, how many are remaining and how
                 many  there  are  in total.  Note that the ZModem protocol
                 has  a  variable block size.  This means that the protocol
                 can  change  the  size of its block, depending on the line
                 conditions.   If a change of blocksize occurs, X-Comm will
                 change  the displayed block data accordingly to accomodate
                 the new blocksize.

        CPS  Rate - This display shows information about the speed at which
                    the  transfer  is  happening.   The  display isn't just
                    numerical, but also has a horizontal floating bar which
                    indicates  the  'efficiency' of the protocol.  The very
                    left  of the guage represents 0 baud, the very right of
                    the  guage  indicates the currently set baudrate.  Here
                    is  my  attempt  at  a  graphical  indication:   It  is
                    suggesting  that  you  are  using  a locked baudrate of
                    38,400.

                     ______________________________________
        0 baud ----> | 1,650 =========                    | <-- 38,400 baud
                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

                     If  the  guage  is filled all the way to the end, then
                     you  will  be  transfering  at  3,840  cps.   1,650 is
                     somewhere  inbetween.   If  you  are at 2400 baud, and
                     using  2400 baud as your baudrate, and are getting 230
                     cps, this guage would be almost full.

        Blk  Size - This  displays  the  current  blocksize the protocol is
                    using.

        Blk  Check - This  is  the  block  check  method  the  protocol  is
                     currently   using.    This  varies  from  protocol  to
                     protocol.

        Errors - This displays the total error count for the current file.

        Timeouts - This displays the total timeout errors that have occured
                   during  this  file.   Timeouts occur when the remote end
                   stops  sending data without warning and the local end is
                   still  waiting  for  data.  The protocol will wait for a
                   certain time before sending a timeout warning message to
                   the other end.
        Path - This  is  the current path to where files are being recieved
               to,  or  uploaded  from.   It also indicated which drive the
               files are on, which corrosponds to the next set of data.

        Now - This  line  of  data  corrosponds  to  the  space left on the
              current destination path or device.  It is only really of use
              when  downloading  files.   The 'Now' line displays the space
              information for the drive as of this moment.  It displays the
              space  free  on  the  drive,  how  much  is used, the overall
              capacity of the drive and the percentage full of the device.

        After - This  line  displays  the 'predicted' space information for
                the device, after the file has been recieved.  X-Comm tries
                to  work  this  information  out  at  the  beginning of the
                transfer  and is usually fairly accurate.  Note that if you
                are  uploading files, this will be 'N/A' (you arn't filling
                the  drive.)  It  will  also say 'Will Not Fit !' if X-Comm
                thinks  that  the data will not fit on the device.  You may
                wish  to  abort  the  transfer  if you see this.  Note that
                'Total' will always be 'N/A' as it doesn't change.

        Messages - This  displays  general  messages  that the protocol may
                   send out.

        Errors - This  is a list of received error messages, first to last.
                 You can scroll back through the list with the scrollers on
                 the right of the list.

        The Transfer Guages
        ===================

        To  the  right  of  the  transfer  window, are two tall guages that
extend  almost  the  height  of the transfer window.  Each guage displays a
percentage in them that floats (and then drowns!) on the guages themselves.
The  guages  are  3D themselves (pretty don't you think?) and rise and fall
respectively.   The  1st  guage  (the leftmost one) starts at the bottom and
works  up.   It  displays  how much of the transfer is actually complete as
its  percentage.   It  will  read  100%  and  will be full by the time the
transfer  is  finished.   The  rightmost  guage  displays  how  much of the
transfer  is left.  It will start full and end up empty.  I have found this
as  a  very  efficient  'glance' method of seeing how much of a transfer is
complete.

        There are two time values at the top and the bottom of the transfer
guages.   The  one  at  the  bottom of the guage indicates at what time the
transfer  was  started.  The one at the top indicates the estimated time at
which the transfer will finish.  This means that you can walk off and leave
the transfer, and know what time you can come back to find it finished!

Upload File(s) - [Transfer / Upload File(s) ...]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        Selecting  this  will  indicate  that you wish to upload files.  If
your  upload  list  is  currently empty, X-Comm will prompt you with a file
requester,  allowing  you  to  select  the  files  you wish to upload.  The
requester  is  multi-selectable,  and  patterns  can  be  entered to select
multiple files.

Download File(s) - [Transfer / Download File(s) ...]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        Selecting  this will attempt to start a download.  The protocol may
ask  you to enter the name of the file you wish to download as.  Otherwise,
the transfer window should come up and a transfer should be attempted.

The Upload List - [Transfer / Edit Upload List ...]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        The  upload list allows you to store a whole list of files that you
wish to upload, in a list that can be used later.  One of the problems with
conventional  terminal programs when you go to upload files, is that if you
have  alot  of files to select, you may find that the protocol on the other
end  may  timeout  before  you  even  start  the transfer.  It is also very
difficult  to  select  files  that  exist  on  different  devices,  or even
different directories.

        This  is  where the upload list can help.  When adding files to the
upload  list,  you  don't  have  to  upload  them  straight  away.  You can
preselect  the  files  before  you  logon, thus saving you money and online
time.   You  can also select files across multiple directories and devices.
The  upload  list can also be saved for repeated or later usage, and can be
loaded back later.

        Another  advantage  is  that  if  you  abort  an upload, X-Comm can
automatically  store the files that were left to upload in the upload list,
so that you need not select them all again.

(Add file(s))
=============

        This function lets you add files to the upload list.  It will bring
up a file requester allowing you to multi-select files to add.

(Clear List)
============

        Will  clear  the  upload  list.  It will confirm your action before
doing so.

(Delete File)
=============

        Will  turn  the  upload list into delete mode.  Any file clicked on
will be deleted.  Click 'Delete File' again to exit delete mode.

(Load List)
===========

        This  will  load  an  upload  list.  The upload list files are just
plain  ASCII, with each filename on a newline.  The old upload list will be
deleted and overwritten with the new one.

(Append List)
=============

        Will append an upload list to the current one.

(Save List)
===========

        Saves the upload list.

(Start Upload)
==============

        Will commence uploading the files in the upload list.


ASCII Send - [Transfer / ASCII Send ...]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  function  allows  you to send ASCII data across the line.  It
uses  no  specific protocol, and just sends the data in it's own raw format
across  the  line.   X-Comm will however do the nessacery CR/LF conversions
according  to  the terminal settings.  It will also place delays in between
charcters  and  lines, depending on the ASCII Send Charcter Delay and ASCII
Send Line Delay (see the Terminal Settings window for more information.)

        When  ASCII Send is selected, it will ask you to select the file to
send.   It  will  then  bring  up  a window with a guage on it.  This guage
indicates  to  you  how much of the file has been sent, and will eventually
fill  to the end.  Also, a percentage of how much of the file has been sent
will  be  displayed  above the guage.  Press the (Abort) button at any time
will abort the send.


                            -- The Text Menu --
                            ญญญญญญญญญญญญญญญญญญญ

        The  text  menu  contains items involved in the storage of incoming
text  as  it  is  displayed on the terminal window.  Such tools include the
capture buffer, the review buffer and the printer capture.

The Review Buffer - [Text / Review Buffer ...]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  menu  item  toggles  the  review  buffer  window, opening and
closing  it.  The review buffer is a moveable, resizable window that allows
you  to  scrollback and look at past text that may have since been scrolled
off  the  screen.   It  also allows you to save the buffer, and to copy and
paste bits out of the buffer.

        The review buffer window looks like a commodore read-only listview,
but  is actually a custom list with a scroller on the right hand side.  The
scroller  scrolls  up and down through the text.  The newest text is at the
bottom.   The window can be resized, which will resize the list aswell.  If
the text is too long to fit on the line, it will be clipped at the end.

        Clicking  and  dragging  in  the  main  text area will allow you to
highlight  an area of text.  Once an area of text is defined, and the mouse
button is release, X-Comm will copy that text into the clipboard.  Multiple
lines of text can be clipped at once, and X-Comm will scroll the text up or
down  whilst  clipping,  if  you  move  the  mouse  past the top and bottom
borders.

        The  review  buffer is dynamic.  That is that it only allocates the
memory that it needs.  The size of the review buffer can also be limited to
whatever  you  like.  To set the size limit (in KB), open the Miscellaneous
settings window and set the 'Review Buffer Size' gadget.  If this is set to
'0', there will be no size limit placed on the review buffer.

        When  the size limit has been reached, X-Comm will chop off as many
lines  from  the beginning of the buffer as is needed to reduce the size of
the  buffer to beneath the size limit.  X-Comm should never exceed the size
limit.   You  can  see how many bytes are currently in the review buffer by
opening the 'Status Window'.

        The  review  buffer window also has some keys to help you navigate.
The  up  and  down cursor keys will scroll the review buffer up or down one
line.  Holding down shift and pressing either of these two keys will scroll
up  or  down one page.  Holding down alt and pressing one of these two keys
will  jump  to  the  top or the bottom of the review buffer.  Note that any
other key pressed will be sent out to the serial driver.

        The review buffer contains a few menus.  Here is a description:

[Project / Update Screen]
=========================

        Selecting  this  menu  will  redraw  the text in the review buffer.
This  was  generally  a debugging option, but I have left it in just incase
you need it.

[Project / Clear Buffer]
========================

        Will  clear  the entire contents of the review buffer.  X-Comm will
verify your selection and make sure you REALLY want to clear it.

[Project / Search]
==================

        Selecting this will bring up a string requester asking you to enter
a  string  to  search  for.  X-Comm will then attempt to search through the
review buffer to find the string.  If it finds the string, the line will be
moved to the top and the string found will be highlighted.

[Project / Search Next]
=======================

        Note you must select 'Search' first so X-Comm knows what string you
are  looking for.  This option will use the existing search string and find
the 'next' occurence of the string.

[Project / Load]
================

        This will bring up a filerequester asking you to select the file to
load into the review buffer.  This option is very useful as X-Comm's review
buffer has proven to be a very good text reader.  You could use this online
to view files, and maybe copy bits out of it and send them whilst online.

[Project / Append]
==================

        This  option  is  the  same as [Project / Load] but will append the
contents  of  the  selected  file  to  the  end  of  the buffer, instead of
overwriting it.

[Project / Save]
================

        Saves the contents of the buffer to an ASCII file.

[Project / Quit]
================

        Closes the review buffer window.

[Edit / Paste]
==============

        Pastes  the  contents  of  the clipboard over the serial line.  The
clipboard can have data put into it by clicking and dragging out an area of
text in the review buffer.

[Other / Stick Buffer]
======================

        This  option  may  take a little bit of explaining, as I have never
seen it before in any other terminal program.

        Have  you  ever  opened  a review window on a terminal, and have to
constantly  move  it  around and out of the way so that you can see bits of
data  that  have  scrolled  up  behind  the window?  Annoying isn't it!  In
X-Comm,  you  can 'Stick' the review buffer window down on the main screen.
X-Comm  will  move  and resize the terminal window so it is then positioned
directly  underneath  the buffer window.  Your screen is now split into two
parts.   Up the top is the review buffer, and below is the terminal window.
Unfortunetly,  the terminal window is not as high, but data won't be caught
up  behind the review window.  You can resize the review buffer window, and
it  will also adjust the terminal window so it fits directly underneath the
review window.  When the review buffer window is closes, X-Comm will return
the terminal window back to it's full size.

        The best way to describe this option is for you to try it.

        Note  that you cannot stick the review buffer whilst X-Comm is on a
public screen.

Clear Review Buffer - [Text / Clear Review Buffer]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        Selecting this will clear the entire review buffer.  It is intended
as  a  quick  'memory'  recoverer.  It is identical to the one found in the
review buffer window.

Capture - [Text / Capture ...]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  option  allows  you  to  capture incoming data out to a file.
X-Comm  gives  you  the  option  of appending (adding to the end) a capture
file,  or  creating  a new one.  From the time that the capture is started,
all  data  that is received through the serial driver will be also saved to
this  file.   If  the  'Strip Capture ANSI' option in the Terminal settings
window  is turned on, X-Comm will also strip any ANSI codes out of the data
before saving it to the file.

        The capture can be turned off by selecting this option again.

Capture to Printer - [Text / Capture to Printer]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  option  is  almost  the  same as the "Capture" option, but it
allows  you  to  redirect the incoming data to the printer, instead of to a
file.   X-Comm  just dumps the data to PRT:  which will use the preferences
printer options.  X-Comm will confirm that you wish to start this operating
with  a requester, as the Amiga OS can hang up a program for quite sometime
waiting for a printer to come online, even when you may not have one.

        Capture to Printer can be turned off by selecting it again.

Paste Clipboard - [Text / Paste Clipboard]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        Selecting  this  option  will dump the contents of the clipboard to
the  serial driver.  The clipboard is a universal data area that is used by
users to store data.  X-Comm accesses and uses the clipboard to store data.
You can put data into the clipboard in X-Comm by drag-selecting a text area
in the review buffer.  This option allows you to paste that clipboard data.

Freezing Incoming data - [Text / Freeze Review Buffer]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  is  a  togglable option that allows you to stop incoming data
from  being  stored.   If this option is enabled, incoming data will not be
stored  in the review buffer, will not be written to any capture files, and
will  not  be  printed to the printer, if active.  It is useful if you know
that  there  is alot of useless data about to come thru, and you don't want
any of it.


                       -- The Miscellaneous Menu --
                       ญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This menu contains miscellaneous configuration items for X-Comm.

The TitleBar - [Miscellaneous / Titlebar]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  option  toggles  the  visability  of  the titlebar.  If it is
turned  off,  then  X-Comm's titlebar will be hidden, which allows you more
display  area  for  the terminal window.  If displayed, you will be able to
properly drag and depth arrange X-Comm's screen.  It is upto you.

The Chat Window - [Miscellaneous / Chat Window]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        The  chat window is a useful way of talking to people with either a
direct  modem  link to you, or in a CB chat conferencing system.  It allows
you  to  see  what  you are typing, and edit it before it is sent out.  The
chat  window also has a history buffer, so that past lines can be recalled,
edited and resent.

        By  default, the chat window contains just a string gadget.  Typing
in  this  string  gadget  and pressing return will send the data out to the
modem.   The  chat  window can, however, be resized.  If the window is made
high enough, a listview will be added to the top of the string gadget.  The
listview  will  contain  a  list  of  the lines in the chat history buffer.
Clicking on one of these lines will allow you to re-edit and send the line.

        Note that one of the advantages of this type of chat window is that
you  can  still use the main terminal window as you normally would when you
need to, without having to close anything.

        You  can  also  use the cursor keys to move up and down in the chat
window history list.

        There  are  a  few  menus  for  the  Chat  window,  here is a breif
description:

[Project / Load]
================

        Loads a textfile into the chat history buffer.

[Project / Append]
==================

        Appends a textfile to the chat history buffer.

[Project / Save]
================

        Saves the current chat history list to a textfile.

[Project / Clear]
=================

        Clears  the  chat  history  list.   A  requester  will confirm this
action.

[Project / Close]
=================

        Closes the chat window.

[Edit / Copy]
=============

        Copies  the  current  contents  of  the  chat  string gadget to the
clipboard.

[Edit / Paste]
==============

        Pastes  the  current  contents  of the clipboard to the chat window
string gadget.


The Status Window - [Miscellaneous / Status Window]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        The  Status  Window  was designed to complement the Status Bar.  It
contains aditional information about X-Comm's status.  It can be brought up
at any time by either selecting this menu option, or by clicking on the 'S'
gadget on the Status Bar.  Here is a description of what each of the fields
represent:

(System Name)
=============

        The  name  (if any) of the system that you are currently online to.
This is also displayed in the Status bar, but is put here for completeness.
If you are not online, this will read 'Not Connected'

(System Number)
===============

        The telephone number of the system you are connected to.  Again, it
is put here for completeness.

(Connection Rate)
=================

        This displays the baudrate that you have connected at.  X-Comm will
try  to  work  out the baudrate that you connected at by scanning the input
stream.   It  will  scan for 20 lines, until it will give up.  If X-Comm is
looking  for the connection rate, then this will read 'Scanning...'.  If it
has  found  it,  the  baudrate  will be displayed, and any other connection
information will be placed in ()'s.

(Time Online)
=============

        This  is the time in hours :  minutes :  seconds that you have been
connected  to  the  system.   X-Comm  will  started this timer as soon as a
carrier  is  detected, and it will stop as soon as the carrier is lost.  It
won't be reset until the next time a carrier is detected.

(Call Cost)
===========

        Using  the Time Online value, X-Comm will workout how much the call
is  costing  you,  in real time.  It will update every second.  X-Comm will
use  the  selected call rate for the system you are calling to work out the
cost.

(Emulation Type)
================

        This  tells  you  what  type  of  emulation  you  are using (XEM or
Console.)

(Emulation)
===========

        If you are using an XEM terminal emulation, this will read the name
of  the  library.  If you are using the console device, it will read 'Amiga
ANSI'.

(Location)
==========

        This tells you whereabouts X-Comm is located.  If X-Comm is using a
custom  screen, it will say so.  Otherwise, X-Comm will put the name of the
public screen it is on here.

(Terminal Size)
===============

        This  shows how big your terminal currently is (in Columns X Rows.)
It  will use the current terminal font to measure the size.  This is useful
when  logging  onto  BBS's and you want to know exactly how many lines your
terminal window can display.

(Screen Size)
=============

        This  is  the  potential  size  of your terminal window, given your
screens dimensions.

(Review Size)
=============

        This  shows  how  many  bytes are currently contained in the review
buffer.


                           -- The ARexx Menu --
                           ญญญญญญญญญญญญญญญญญญญญ

        This  menu  contains  tools  nessacery for executing ARexx scripts.
Note  that  in  this menu, I have chosen to call ARexx _scripts_ and X-Comm
_macros_ (the keyboard ones) so as not to get them confused.  ARexx scripts
are sometimes called Macros.


Executing an ARexx Script - [ARexx / Execute ARexx ...]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        Selecting  this will bring up a file requester asking you to select
the  ARexx  script  to  execute.  X-Comm ARexx scripts end with the default
.rexx  extension,  although  this may change in the future.  Please see the
'X-CommRexx.Manual'  for  more information on X-Comm's extensive ARexx port
commands.

Setting the Output Console - [ARexx / Set Output Console]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        This  option  allows  you  to set the current X-Comm output window.
This  window  description  will  be  used  as  an  ARexx  output window (if
enabled,)  as  the window description for the Newshell command, and for the
Execute  DOS  command  autoinsert.  It takes the form of a standard console
window description (See your operating system manual for information on the
syntax of this line).

Output Window - [ARexx / Output window]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        If  this  is  on,  X-Comm  will open an output window when an ARexx
script  is  executed.   This  is  so that you may see output from the ARexx
script  that  might not necessarily use the terminal window.  If it is off,
then  no  output window will be opened, and the next menu item will have no
effect.

Waiting after a script has finished  - [ARexx / Terminate Pause]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        If this option is turned on, and the 'Output Window' option is also
enabled, X-Comm will wait for you to press a key to continue once the ARexx
script  has  finished.   This  is useful if you need to see output that the
ARexx script may have produced before the window closes.

Newshell - [ARexx / Newshell]
ญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญญ

        Selecting this will start a new shell.  This is good if you run out
of  ways to start a shell when you need one.  The shell window will use the
'Output Console' description for it's window.


===========================================================================

                                  ______
                                  Thanks
                                  ฏฏฏฏฏฏ

        X-Comm  represents many hundreds of hours of work, not only from us
the  authors,  but from our beta testers and supporters.  Here is a list of
thankyous  to  everyone  involved  in  the  developement of X-Comm, from me
personally...

        William  Waring - For  putting  up with my 'poor' musical taste and
                          for   my   critism  of  imperfect  code,  and  my
                          criticism of those DAMN BRACES :-)

        Michael  Lorant - For suggestion all those 'oh so stupid' ideas and
                          for designing our 'pixel perfect' windows.

        All  Beta  Testers - For  their continuing support and bug reports.
                             X-Comm  wouldn't  be  the  way  it is, without
                             their help.
        IRC - And  the  all  the  users  in it for their support during the
              development stage.  Especially Sgt_D (N.  Ramella!)

        Jan  van den Baard - For GadToolsBox.  X-Comm wouldn't look the way
                             it does now without GTB!

        Nice  Francois - For  ReqTools.library :  The *BEST* file requester
                         library around!

        Ueli Kauffman - Thankyou

        Olaf  'Olsen'  Barthel - For  releasing  the  'term'  source  code.
                                 X-Comm  would  have  been  alot  harder to
                                 write  if  it  hadn't  have  been for your
                                 source code as a reference.

===========================================================================

                                __________
                                The Future
                                ----------

        This  is  the first initial release of X-Comm, so please keep it in
mind  when  judging its performance.  It has taken almost a year to get the
basis  for a solid terminal program almost laid out.  At the moment, X-Comm
in  many  respects  looks like a conventional terminal program, with mainly
conventional ideas.  In future versions, however, this will change.  X-Comm
is  going  to  break  away  from the 'norm' and become a different terminal
program  altogether.   I  plan  to  set  X-Comm aside from the rest, and to
improve  it's  functionality dramatically, with new ideas and new concepts.
We  have  already  planned version 1.1, even as I finish version 1.00.  The
GUI  is  being  worked  on  and  ideas  are being drawn up.  The next major
release of X-Comm will be unlike anything you've ever seen before.


===========================================================================

                                ___________
                                Bug Reports
                                -----------

        I  have almost no doubt in my mind that this version of X-Comm will
contain  bugs.   We  have  done our best to try and release the most stable
version  we  can.   As I work on the next version, I will also be releasing
interum updates that should fix any bugs that are suggested.

        If  you  do find bugs, PLEASE report them.  The sooner you can tell
us  whats  wrong, the soon we can fix them.  I must stress however, that it
is  no  good  to  come to us and say 'It crashed' or 'The phonebook doesn't
work' or some other short description like that.  If you do find a bug, and
you  would  like it fix, please give us DETAILED information about the bug.
As detailed as possible, and with as much clairty as to what you did before
the  problem  started, and what the actual problem is.  The better your bug
report,  the  quicker  we  can  get it out.  Please see the next section on
contacting us about bug reports.


===========================================================================

                               _____________
                               Contacting Us
                               -------------

        Edward Lawford
        ==============

        I run a support BBS called 'X-Comm Support BBS' here in Sydney.

                X-Comm Support BBS
                +61-02-960-3621
                Open 24 hours (When I'm not programming :-)
                Supports all baudrates from 1200 - 14.4k V32bis.

        I can also be contacted by internet:

                willw@extro.ucc.su.OZ.AU

                        or

                mikel@extro.ucc.su.OZ.AU

        I also hang around the #amiga chanel in IRC as 'Xed' :-)


===========================================================================

Enjoy X-Comm!

Regards,
        Edward Lawford
