[42m             [33m___[31m                                                        [40m
[42m            [33m////[31m  ##                     ####                           [40m
[42m           [33m////[31m  ###                   ##    ##                         [40m
[42m          [33m////[31m  ####              ##  ##                                [40m
[42m   [33m___   ////[31m  ## ##                  ##                                [40m
[42m   [33m\\\\ ////[31m  ######  ####  ##   #### ##          ###   ####  ##        [40m
[42m    [33m\\\X///[31m  ##   ##  ##  ##  ##  ##  ##        ##   ## ##  ##  ##      [40m
[42m     [33m\\X//[31m  ##    ##  ##  ##  ##  ##   ##    ## ##   ## ##  ##  ##      [40m
[42m      [33m\X/[31m #####  #### ##  ##  ## ####    ####     ###   ##  ##  ## 2.3  [40m
[42m                                                                        [40m

(C) Gerhard Loder, DL3MGQ


[32m[4mContents[0m[31m

1. Introduction
1.1 What is Amicom ?
1.2 System requirements
1.3 Copyright
1.4 Disk contents

2. Packet radio use
2.1 What is packet radio ?
2.2 What do you need for packet radio ?
2.3 What does Amicom do ?

3. Installation
3.1 The "konfig.ac" configuration file
3.2 The content of the other files
3.3 Standard texts
3.4 Using Amicom with the WA8DED Hostmode
3.5 Using Amicom with the KISS mode, SMACK-mode or Flexnet-CRC-KISS
3.6 Using Amicom with a BayCom modem

4. Using the terminal program
4.1 Screen setup
4.2 Pulldown menus
4.3 Commands
4.4 Description of the TNC commands for BayCom.drv and KISS.drv
4.5 Keyboard layout
4.6 Remote commands

5. Data transmission
5.1 Different kinds of data transfers
5.2 Sending text data
5.3 Sending binary data

6. Special functions
6.1 Autosave
6.2 BoxCheck
6.3 Monitorsave
6.4 Convers

7. Explanations
7.1 Character set converter
7.2 PCFont
7.4 Explanations concerning the transmission format
7.5 Explanations about the monitor contents
7.6 For further questions




[32m[4m1. Introduction[0m[31m


[32m[4m1.1 What is Amicom?[0m[31m

Amicom is a packet radio terminal program for the Amiga, which is used for the
wireless data transmissions of radio amateurs.  It works with almost any
hardware (modem, TNC, multimode controller) and gives you all the comfortable
functions that are necessary in packet radio use.

I would like to thank here all the OMs who helped me to develop this software.
A special thanks to Daniel, HB9VBC [Hey that's me!  :-)] for the English
translation of this manual.


[32m[4m1.2 System requirements[0m[31m

Amicom needs an Amiga with a minimum of 512K RAM, Kickstart version 1.2,
Workbench version 1.3 and one floppy drive.  1MB RAM and a hard drive is
recommended for optimal convenient use.  For the connection to the radio, you
need one of the following:

- A TNC (TNC2, TNC3, ...) with WA8DED compatible HOST mode.
- A TNC or multimode controller (PK232, MFJ 1278, KAM, ...) with a software
  which can accept KISS mode.  This is the case with most multimode
  controllers.
- A TNC with SMACK-software. This is an extended KISS-mode with 16-bit
  checksum (CRC).
- A TNC or RMNC with Flexnet CRC KISS mode.
- A BayCom modem or an compatible to this one.  It's a simple
  modem which finds place on the serial port.  A faster processor is
  necessary to be able to use this modem, an Amiga with a 7Mhz MC68000
  will NOT do!
  Since version 2.2 of AmiCom you could unmodified versions of the BayCom-
  or PC-Com-Modem.


[32m[4m1.3 Copyright[0m[31m

AmiCom ist freeware. It can be freely copied and given on from OM to OM, but
only in the form of a 1:1 copy of the original disk or the original archives.
You are only allowed to give it in the UNCHANGED state and for free, all
commercial usage is highly prohibited!  It is not allowed to give this
software for free with other commercial products. A distribution through PD
networks is allowed.
All other rights to this software as well as all other files attached to it
stay by the author.
The program can only be used for non commercial applications in the radio
amateur community, all commercial usage and usage outside ham-radio is
prohibited.

The use of this software is at one's own risk, I do not take any
responsibilities for any damages caused (loss of data, broken serial
chips, ...) by the use of this program.  I can't give you a guarantee for a
total good function of the software.

The original rights to the BayCom modem stay by Johannes Kneip, DG3RBU.
The modem can only be used for non commercial purposes in the radio amateur
community.  Modems made are only for your personal usage.  An advertisement
for the software (BayCom) or the programming of a software that uses their
hardware, has to get prior approval of the authors.


[32m[4m1.4 Contents of the disk[0m[31m

You can find the following files on the original disk or in the original
archives:

AmiCom/ACIcons.bin             This file contains the graphics information
                               for the icons which amicom could display
                               at the bottom of the screen.
AmiCom/AmiCom                  The terminal program itself.
AmiCom/AmiCom.info             The icon that goes with it.
AmiCom/Anleitung.txt           The german documentation.
AmiCom/Anleitung.txt.info      The icon that goes with it.
AmiCom/BayCom.drv              The driver for the BayCom modem on the
                               serial port.
AmiCom/Documentation.txt       The English documentation that you are
                               reading right now ;-).
AmiCom/Documentation.txt.info  The icon that goes with it.
AmiCom/greeting.ac             A text file in which a personal greeting
                               message can be stored for each call sign.
AmiCom/help.ac                 A text file with the german and English help
                               files.
AmiCom/history.txt             A text file containing the program history
                               for the different versions.
AmiCom/Host.drv                The driver for the WA8DED hostmode.
AmiCom/KISS.drv                The driver for KISS mode, SMACK and Flexnet-
                               CRC-KISS.
AmiCom/KISS.ini                A text file containing the command sequence
                               which must be sent to the TNC or
                               multimode controller to put it into KISS mode
                               when the program starts.
AmiCom/konfig.ac               The main configuration file. The most
                               important informations for the program
                               configuration are contained in this text file.
AmiCom/<CALL>.log              This text file is only made if you wish,
                               it contains the logbook entries for all
                               your connections.
AmiCom/names.ac                This text file is automatically used by AmiCom
                               and contains for each call sign a name up to
                               20 characters long.  Here are only included the
                               call signs and location of most of the german,
                               as well as some neighboring digipeaters and
                               mailboxes.
AmiCom/ScreenMode.bin          In this file AmiCom will save the settings
                               of the filerequester.
AmiCom/text.ac                 In this text file, you can define up to 26
                               multi line standard texts.  These standard
                               can then be sent by pressing a key.  Some
                               standard texts already used by the system are
                               already contained in this file.
Fonts/AmiCom.font              An IBM Character font, so you can represent
                               on your AMIGA those special IBM block graphic
                               drawings and special characters.
Fonts/AmiCom/style             Font information.
HotHelp/Projekte/#?.hdr|#?.txt These files contain the online documentation
                               and helpfiles for AmiCom.


[32m[4m2. Packet radio use[0m[31m


[32m[4m2.1 What is packet radio?[0m[31m

Packet radio is a mean to transfer data (text, images, computer programs,
...) with wireless transmissions between radio amateurs.  Transfer rates up
to 2400 bit/s transform the digital information into a series of 2 different
audible tones and transmits them via the microphone entry.  It is very
similar to RTTY, for example.  Other methods are used for higher speeds.
The transmission is established thanks to a special protocol, which is
called the "AX.25", an amateur adaptation from the world famous X.25
protocol.  With this protocol, you are insured to get an error free
transmission because errors are detected and corrected by asking another
transmission from the sender.  With this protocol you can also use only
one channel for multiple users.
The interesting thing about this transmission method is that both stations
which are in a packet radio connection, do not need to hear themselves.
They can connect through up to 8 other packet radio stations, the
data is then always transmitted from one station to the other until it
finally reaches destination.
In the early days of packet radio, there were only some individuals talking
to each other using this mode.  Over time, there came digital relays
stations, called digipeaters, which were well placed and had dedicated
directional transmissions with other digipeaters (links), mostly on higher
amateur bands.  Thanks to these digipeaters, it was possible to contact
other amateurs with only very little material and power.  You can even send
news worldwide through mailboxes, or exchange information on all kinds of
topics.  The research goes on every day, and the experiments of radio
amateurs have no limits.


[32m[4m2.2 What do you need for packet radio?[0m[31m

To be qrv in packet radio, you need, apart from your radio station, some
hard and software.  You have a lot of possibilities:

[1m1. A TNC[0m
A TNC (Terminal Node Controller) is a small computer with some RAM for the
data and an EPROM (Erasable Programmable Read Only Memory) containing the
packet radio software, also called firmware.  A TNC also contains a modem
(MOdulator/DEModulator) which converts the digital signals to AF tones.
With the in built serial port, you can establish a connection with a
terminal or a computer, with the corresponding software.  The way the data
is exchanged between the computer and the TNC is determined by the
firmware you use.  The most common TNC is the TAPR TNC-2 and there exists a
lot of software for it.  The software is free and can be exchanged very
easily.

[1m2. A multimode controller[0m
A multimode controller or multiprotocol controller is basically the same as a
TNC, but it can also be used for other digital modes like RTTY, FAX, CW...  A
multimode controller contains most often more than one modem (one for each
mode) and uses software that is specially written for that hardware. The
internals differ from one make to the other and it is simply not possible to
exchange the software as easily as with a TNC - you always need software
updates from the manufacturer.

[1m3. A special software solution for a computer with a simple modem.[0m
These special software solutions exist for the C64 (Digicom) and the PC
(BayCom) for example.  BayCom is a really simple modem, which uses the serial
interface of the computer.  A special software controls the modem so packet
radio can be used with it.  This implies that the computer does a lot of
the work: since the modem is so simple and easy to make, the computer has
to do a lot of calculations for it. Especially for modern multitasking
operation systems this is a big problem...

TNCs and multimode controllers give you a lot of different possibilities
for connecting to your computer.  The simplest way is to use the [1mterminal
mode[0m which is available on most devices.  This way, the transmission is
simply represented in normal ASCII text.  You can switch between commands
and data with special control characters like CTRL-C or ESCAPE.  The only
job the terminal has to do is to give to the TNC the commands you type on
the keyboard and to display on the monitor the text it receives from the
TNC.  For this job, you simply use a terminal program which was intended to
be  used with telephone modems.  This method is very easy, but not convenient
at all.  The conducting of multiconnections or the transmission of binary
data is not possible without some major problems.
Another very common way to talk to the TNC is the [1mWA8DED hostmode[0m.
The host here is the computer, since he's the only one having the control of
everything.  The transmission in WA8DED hostmode uses a special binary format.
The data is collected into blocks and is transmitted with some other
information, so you can distinguish very clearly between channels as well as
data, commands, answers, and errors.  To be able to use the WA8DED hostmode,
you need a specific software on the computer; a simple terminal program is not
enough.  On the other hand, using such a software is much more comfortable
because special amateur radio needs are incorporated into it.  These softs
often allow you to send data on more than one channel.  On a special
channel, the monitor, you can always see what is happening on the QRG,
etc...
Most TNCs or multimode controllers also support the [1mKISS mode[0m because it is a
very simple mode; so it is very easy to implement it.  In the KISS mode, the
only thing the TNC still does is use it's modem capabilities.  The received
frames are sent almost untouched to the computer, which also has to send the
frames ready to transmit to the TNC. The whole AX.25 protocol is managed by
the computer.  That's what makes programming the KISS mode so complicating.
Even though, it has the advantage that you can also use higher level protocols
like TCP/IP.
Since version 2.2 AmiCom also supports SMACK-mode and Flexnet-CRC-KISS. These
are extensions of KISS with an 16 bit checksum (CRC) to avoid errors on
serial transmission between computer and TNC.


[32m[4m2.3 What does Amicom do?[0m[31m

Amicom is a special terminal program for packet radio.  Amicom doesn't use
one specific hardware configuration because it consists of two different
parts:  the terminal program itself, and a driver to communicate with the
TNC, multimode controller or even specific hardware (like a BayCom modem).
Because you are able to exchange these drivers, the program is able to use
a lot of different hardware configurations.  The drivers that exist for
Amicom up to now are:

Host.drv       A driver that uses a TNC with WA8DED hostmode on the serial
               port.  It works with all TNCs who have a WA8DED or NORD><LINK
               firmware, or which are compatible with one of these.

KISS.drv       A driver that uses TNCs or multimode controllers which
               support KISS mode.  KISS mode is available on almost any
               device, but has some disadvantages.  If the TNC can also use
               WA8DED hostmode, it should be preferred.
               If the TNC does support SMACK-mode or Flexnet-CRC-KISS (KISS
               with CRC) it will be supported by KISS.drv automatically.

BayCom.drv     A driver for the BayCom modem (developed by DG3RBU and
               DL8MBT) connected to the serial port.  For the moment, only
               1200 Baud is supported, for use with a TCM3105.
               Since version 2.2 you could use unmodified modems. Because of
               a software trick there is always +12V on the TXD pin of the
               serial port.

Amicom offers a really comfortable user interface with all the functions
you need for a comfortable packet radio usage.  You can define up to 255
separate different channels.  You can have a separate and independent
connection on each channel; each connection being able to have a two way
data transfer.  There is a separate write and reception window with
numerous editing functions for each channel.  You can switch comfortably
between the channels with the function keys.  There is a separate window
for constant monitoring of the frequency.  You can scroll back ANY window
and the scroll back size is only limited by your RAM size.  Other stations
can control Amicom remotely with special remote commands (which start with
a "//").  This way, you can start a file transfer remotely from another
station, even if the OM isn't there.  Amicom uses a data file containing 20
characters for each call sign, which are displayed when you're connected to
them and can be sent to them when the station connects.  This file contains
in the base version most of the german and some neighboring digipeaters and
mailboxes.  In another text file, you can define up to 26 multi line
standard texts which can simply be sent by the press of a key.  These
standard texts also support some simple macros like date, time, name,
callsign, etc...  Some standard texts are used by Amicom for special
functions.  For example when someone connects you, Amicom can send (if you
wish) a greeting message.  7plus binary coded files can be stored right at
the reception with the correct filename to a drawer you previously defined.
A BoxCheck function can alphabetically order by title the messages from your
mailbox and you can simply retrieve them with a click of the mouse.


[32m[4m3. Installation[0m[31m

Installing Amicom is real easy.  The main program and all the files that go
with it have to be put in the same directory, that you can name as you
like.  When you start the program from cli, you should type first "CD
<directory>" then type Amicom.  When you start the program from the
Workbench, this is done automatically.  But before you start the program,
you must absolutely make some changes to the "konfig.ac" file!


[32m[4m3.1 The "konfig.ac" configuration file[0m[31m

The "konfig.ac" text file contains all the most important informations and
settings Amicom uses.  Each line contains a keyword, which has a special
function, with one or more parameters separated by spaces.  The parameter
contains either a number (e.g., 2, 100), a text chain (e.g. "test", "df0:")
or a switch (ON or OFF).  Amicom ignores lines with a semi colon (;) in
front of them.

The following keywords are used:

[1mAMDATE <switch>[0m
AMDATE ON      Shows the date in the American format: MM/DD/YYYY
AMDATE OFF     Shows the date in the European format: DD.MM.YYYY

[1mAUDIO <value>[0m
With AUDIO you could select the audio channel(s)  which will be used by the
terminal. You could use the following values:

1: channel 0, left
2: channel 1, right
4: channel 2, right
8: channel 3, left

You could add the values, the default value is "AUDIO 3". This means that
AmiCom will use channel 0 and channel 1 for audio output on both
loudspeakers.

[1mAUTOSAVE <switch>[0m
Turns the autosave function on or off.  If autosave is on, all the received
7plus files will be saved with the correct name to the AUTOSAVE defined
directory.

[1mAUTOSAVEDIR "<path>"[0m
Tells Amicom where he should automatically save the 7plus data he receives
when AUTOSAVE is on.  The 7plus filename will be appended to the
AUTOSAVEDIR, so it has to end either with a "/" or a ":".
Example:
AUTOSAVEDIR ":AmiCom/Bin/"

[1mBELL <switch>[0m
Turns the bell (Big Ben bell) on or off when someone connects you or when a
connected stations rings you with the remote command "//RI".

[1mBOXCHECK <switch>[0m
Turns the BoxCheck function on or off.

[1mBUFFER <channel number> <size>[0m
Sets the size of the scroll back buffer for a specific channel.  The bigger
this size, the more you can scroll back.  But the program gets slower, with
the size of the RAM you use.  Channel number 0 is the monitor, the size is
given in kilobytes (1024 bytes).
Example:
BUFFER 0 10; the size of the monitor scroll back is 10*1024 bytes

[1mBUFFERS <size>[0m
Like BUFFER but for all channels.  If you first set a specific channel
value with BUFFER, it will be overwritten with BUFFERS, so first set
BUFFERS then specific channels size with BUFFER.

[1mCHANNELS <number>[0m
Tells Amicom how many channels you want.  CHANNELS can take any value
between 1 and 255, but each channel uses memory and slows down the program.
A useful value for CHANNELS is 6, because you can just show that many calls
in the status line 1.  When using WA8DED hostmode, you can only set
CHANNELS to the maximum number of channels your firmware can handle.
Amicom tells the TNC the value of CHANNELS with the tnc-command TNC (Y
<number>) so it doesn't take too many connects.

[1mCONVERTER <number>[0m
Tells Amicom which character converter he should use.
CONVERTER 0    There is no character conversion used apart from the
               conversion of End Of Lines (LF to CR). It is the
               equivalent of the ANSI character set of the Amiga.
CONVERTER 1    The Amiga character set is changed to the IBM character set
               before transmitting and the other way round for reception.
               This concerns mainly the special national characters like
               for example .
CONVERTER 2    Like 1, but the german "Umlauts" () are converted
               to the DIN character set (\[]~|{}).

[1mCTEXT <switch>[0m
Turns the connect text on or off.  If it is on, then a connecting station
will receive the standard text "C" which can be a small greeting or station
information.

[1mDRIVER "<name>"[0m
Tells Amicom which driver it should use for the communication with the TNC
or for controlling the hardware (modem).  Up to date, these drivers are:

BayCom.drv     Driver for the BayCom modem from DG3RBU and DL8MBT for the
               serial port.
Host.drv       Driver for using a TNC with WA8DED or compatible hostmode
               firmware.
KISS.drv       Driver for all TNCs or multimode controllers with KISS mode,
               SMACK or Flexnet-CRC-KISS.

[1mECHO <switch>[0m
Switches the echo-function on or off. Is ist on all transmitted text will
be displayed in the output-window.

[1mEDITWINDOW <number of lines>[0m
Sets the size of the type-in window.  This size can always be changed when
the program is working by clicking the left mouse button on the status line
2 and moving up or down with the mouse.  The size of the scroll back buffer
cannot be changed, it is fixed to 40 lines.

[1mEDITOR "<name>"[0m
Here you can define your preferred text editor which can be called by a
command or by the pull down menu.  The editor must have it's own window,
since it is called with the command "RUN >NIL: <Name>".
Example:
EDITOR ":c/MicroEmacs"

[1mEND[0m
The configuration file is finished after END.

[1mENGLISH <switch>[0m
ENGLISH ON    All remote texts (answers, errors) are in English.
ENGLISH OFF   The texts are in german.

[1mICONS <switch>[0m
ICONS ON      AmiCom will display an iconbar on the bottom of the screen
              with which you can select the most important functions of
              the terminal.
ICONS OFF     No icons will be displayed. Setting ICONS ON is only useful
              when higher resolutions are used (640*400 or 640*512 Points).

[1mINFOTIME <value>[0m
Sets the value of the infotime in 1/100 of seconds.  The infotimer has the
following function:
The text you entered is not sent right away to the TNC, but the program
waits some time before doing it, this time is defined by INFOTIME.  If you
type more text before this time is up, then this other text is collected
with the first and they are sent together.  This function avoids that a lot
of small frames are sent out and it gives you some higher data transfer
rate.

[1mINTERLACE <switch>[0m
If INTERLACE is set on, the screen will open in interlaced mode, that gives
you twice the vertical size of a normal screen. When using OS 2.0 or newer
this parameter will be ignored. Instead of this AmiCom will open a
screenmoderequester.

[1mLOGBOOK <switch>[0m
Amicom will conduct an automatic logbook if you set this function on.  It
will save the information to the file "<CALL>.log".  It saves automatically
the date, start and end time of the connections.

[1mMAXFRAME <value>[0m
MAXFRAME sets the maximal number of frames that Amicom can send which have
not yet been acknowledged.  This value can be between 1 and 7.  If Amicom
already sent out MAXFRAME data frames, then he will not give any more data
to the TNC.  The value given here is also sent to the TNC with the command
(O <value>).

[1mMODEMBAUD <value>[0m
Sets the modembaudrate if the driver does support this. Look at the driver-
documentation.

[1mMODEMFLAGS <value>[0m
Sets up to 8 flags for special use of the driver. Look at the driver-
documentation.

[1mMHEARD <switch>[0m
Amicom will keep a list of the 30 last stations heard if this function is
set on.  This list can then be seen by a pull down menu (or keyboard
shortcut) and even be asked from another station with a remote command.

[1mMONDECODE <switch>[0m
MONDECODE OFF All receieved data will be displayed in the monitorwindow
              without any change.
MONDECODE ON  If the receieved data contains binary AmiCom will display an
              short message like "<BIN <size> BYTES>".

[1mMONITORWINDOW <number of lines>[0m
This sets the size 1 of the monitor window.  This size can always be
changed after you started the program by clicking on the status line 3 with
the left mouse button and moving up or down.  The size 2 of the monitor
window is always set to 0 and both sizes can be switched in permeance by
pressing SHIFT+HELP.

[1mMYCALL "<Call>"[0m
Sets your own callsign, the most important information!  Amicom sends this
info to the TNC (I <Call>).
Example:
MYCALL "HB9VBC"

[1mMYNAME "<name>"[0m
Sets your own name, important for the converse mode.
Example:
MYNAME "Daniel"

[1mNUMPAD <switch>[0m
NUMPAD ON      The numeric keypad is used to control some of Amicom's
               special functions (Home/End/PgUp/PgDn/ScrlL...).
NUMPAD OFF     The numeric keypad is used for numbers.
Amicom can also be used without numeric keypad, which is especially
important for Amiga 600 users...

[1mPACLEN <value>[0m
Sets the maximum size of data blocks in an Info frame.  PACLEN accepts
values between 16 and 256.

[1mPALETTE <color register> <red value> <green value> <blue value>[0m
You can set the screen colors with PALETTE.  The red, green, and blue
values can be set between 0 and 15. <color register> can be one of the
following:
0=background
1=text color 1 (self written text, status line, pull down menus ...)
2=text color 2 (output text in the output window, monitor heard line ...)
3=background color 2 (background of the status lines)
Example:
PALETTE 0 0 0 0        ;background=black
PALETTE 1 15 15 0      ;text color 1=yellow
PALETTE 2 0 15 0       ;text color 2=green
PALETTE 3 8 8 8        ;background color 2=grey

[1mPCFONT <switch>[0m
If PCFONT is on, Amicom will use the IBM character set (Amicom.font)
instead of the normal Amiga character set (topaz.font).  Since this is not
compatible with the character set converter, is it only used for reception,
for example of representations of IBM block graphics in drawings, tables,
etc...  A permanent usage by setting it on in this configuration file is
actually not meaningful.

[1mPOPUPTIME <value>[0m
Sets the value in seconds how long error- and answer-requesters ("Error of
TNC:", "Answer of TNC:" should be displayed.

[1mREMOTE <switch>[0m
A connecting station can issue special remote commands (starting with a
"//" at the beginning of the line) if this function is set on, and thus
remote control your station.

[1mREMOTEDIR "<path>"[0m
Sets the remote directory.  The connecting station can have read/write
access to this directory as well as all others underneath it if REMOTE is
set on.
Example:
REMOTEDIR ":AmiCom/Remote/"

[1mSCREENHEIGHT <value>[0m
Sets the screen height that Amicom opens when the program starts.  The
width is always 640 points.  "SCREENHEIGHT 0" chooses the normal workbench
size:  256/512 with PAL Amigas and 200/400 with NTSC Amigas (INTERLACE
OFF/ON). When using OS 2.0 or newer this parameter will be ignored.
Instead of this AmiCom will open a screenmoderequester when it will be
startet the first time.

[1mSERBAUDRATE <value>[0m
Tells Amicom what baud rate to use between the computer and the TNC.  This
value will be given over to the driver (e.g. "Host.drv") which will take over
the serial connection himself.  The serial connection always uses 8 Bit, 1
stop bit and no parity (8N1).  You have to put your TNC or multimode
controller to these settings (most are already fixed this way, so you don't
have to touch anything).

[1mSERDEVICE "<name>"[0m
Tells Amicom which serial communication device it should use with the TNC,
normally this is "serial.device", but for multi serial cards you can change
this to another device.

[1mSERUNIT <number>[0m
Sets the number of the serial unit used to communicate between the Amiga
and the TNC.  With the built in serial port of the Amiga (serial.device)
this unit will always be 0, but for multi serial cards it is possible to
choose the serial port you wish with this function.

[1mSOUND <switch>[0m
If this function is set on, all received data will be signaled by an
acoustic click.  With the different tones it is possible to hear if the
data is received on the current channel (lower tone) or another channel
(higher tone).  This also determines if a <BELL> character (CTRL-G, ASCII
code 7) will be sent to the speaker or not.

[1mTNC <channel number> "<command>"[0m
With this keyword, you can automatically send upon program start a command
to the TNC for example to initialize it.  Important commands should always
be sent on channel 0, since after a disconnect, all other channels are set
to the values of channel 0.
Example:
TNC 0 "M UISC" ;Turns the monitor on.

[1mTNCCLOCK <switch>[0m
Amicom will send the time with the command "K" to the TNC when this
function is on, e.g.:  "K 23.03.1994", "K 17:00:10".
If your TNC firmware doesn't have a clock (for example like the original
firmware from WA8DED), then you should disable this function, since you
would only get an error.

[1mTNCSTOP <channel number> "<command>"[0m
Like TNC, nut the command will be sent to the TNC when you quit the
program.
Example:
TNCSTOP 0 "M N" ;Turns the monitor off again.

[1mUMLAUTE <switch>[0m
UMLAUTE ON     The german "Umlauts" () can be typed in the type-in
               window.
UMLAUTE OFF    The german "Umlauts" are not allowed and are transformed the
               following way:
               ->oe, ->ae, ->ue, ->ss, ->Oe, ->Ae, ->Ue


[32m[4m3.2 The content of the other files[0m[31m

Apart from the main program (Amicom, the terminal) and the drivers
(#?.drv), Amicom uses also the following files:

[1mgreetings.ac[0m
In this file, you can set for each call a personal greeting.  It will then
be used in a standard text, like for example in a connect text, when the
macro "%b" is used.

The file "greeting.ac" has the following structure:
-----------------------------------------------------------------------------
;you can put a comment with a semi colon at the beginning of the line
#DL3MGQ
This is the greeting for DL3MGQ and it goes on until the next rhombus(#)
at the beginning of a line.
#HB9VBC
This is the greeting for HB9VBC.
#
-----------------------------------------------------------------------------

[1mhelp.ac[0m
This file contains all the help texts for the remote commands "//H" in
german and English.  It doesn't need to be touched.

[1mKISS.ini[0m
This file is opened by KISS.drv and contains the commands that are
necessary to put the TNC or multimode controller into KISS mode.

[1mkonfig.ac[0m
This is the main configuration file for Amicom, the content has already
been discussed.

[1mnames.ac[0m
This file is automatically used by Amicom and contains for each call, also
with SSID, a name with up to 20 characters.  Unknown stations can register
their name with the remote command "//N".  This file also contains the type
of station (user, mailbox or digipeater).  The type should absolutely be
correct since it is very important for some functions.

The file "names.ac" has the following structure:
<call, optional SSID> <type, 0...2> <name, up to 20 characters long>

If there is no SSID present for a call sign (ANYTHING), the entry will
apply to all SSIDs.  If there is a SSID present (ANYTHING-1), then the
connecting station must have this SSID.  For this reason, when there are
multiple entries for a call, calls with SSIDs should be put before calls
without them.

The type of the station can take the following values:
0 = a terminal, a user, a normal station.
1 = a bbs, a mailbox.
2 = a digipeater.

Example:
-----------------------------------------------------------------------------
DB0MWS-8 2 BBS Mnchen West
DB0MWS-9 1 TCP/IP Mnchen West
DB0MWS 1 Digi Mnchen West
HB9IAP-8 1 BBS Geneva
HB9IAP 2 Digi Geneva
HB9VBC 0 Daniel
-----------------------------------------------------------------------------

[1mtext.ac[0m
You can define up to 26 standard texts (A-Z) in this file.  These standard
texts can then be sent by pressing a combination of keys.


[32m[4m3.3 Standard texts[0m[31m

You can define up to 26 standard texts (A-Z) in the file "[1mtext.ac[0m".  These
standard texts can then be sent by pressing a combination of keys.  Some
texts are used by the program for special functions:

Text C: The connect text.  This text is sent when you are connected from
        someone.  It can contain for example a greeting or a short station
        description.
Text I: The info text.  It contains the station description and can be
        asked for by the connecting station with the remote command "//I".
Text N: This text can be asked for with the remote command "//N" and
        contains for example important news (//News).
Text P: The prompt.  It is sent after some remote commands.
Text Q: The quit text.  It is sent at the end of a connection when the
        connection station issues the "//Q" command, and can contain a goodbye
        message.

The following macros can be used in the standard texts, which of course
will be replaced by Amicom with the actual values:

%b The file "greeting.ac" is looked up for a personal greeting of the
   connecting station and sent.  It is used in the connect text (text "C").
%c The callsign of the connecting station.
%d The date.  It will either be sent in the European (DD.MM.YYYY) or the
   American (MM/DD/YYYY) format, this depends on the setting in the
   "konfig.ac" file.
%m Your own callsign which was used for MYCALL.
%n The name of the connecting station.  If the name is unknown, so it is
   not in the "names.ac" file, then the call sign is used (like %c).
%p The channel number on which the station is connected.
%v The version of Amicom, to date "2.3".
%z The time if the "HH:MM:SS" format.
%? If the name of the connecting station is known, that is, he is
   registered in the file "names.ac", then this macro is treated as a
   comment (;) and ignored.
   If the name is unknown, then the line starting with a "%?" is sent.
   You can for instance ask the connecting station to register his name
   with the remote command "//N" by using this macro in the connect text.
%% The character "%" itself.

The file "text.ac" has the following structure:
------------------------------------------------------------------------------
;Comments can be put using a semicolon at the beginning of the line.
#A
This is text A which goes until the next line that starts with a rhombus(#)
#B
This is text B.
It goes on more than one line.
;And here comes the connect text:
#C
Hello %n, welcome to the station operated by %m.
%b
%?Please enter your name with the command '//N <name>'.
#
------------------------------------------------------------------------------


[32m[4m3.4 Using Amicom with the WA8DED Hostmode[0m[31m

Since Amicom is basically prepared to be used with a TNC with WA8DED
Hostmode, it is not necessary to make major modifications to make it work.
Just edit the file "konfig.ac" with your favorite text editor (ex: ED) and
make the following changes:

First set your own call sign and name, for example:
[3mMYCALL "HB9VBC"[0m
[3mMYNAME "Daniel"[0m
Then set the driver you wish to use, for hostmode it's "Host.drv".  The
keyword DRIVER has to be changed to:
[3mDRIVER "Host.drv"[0m
Amicom also needs some paths to know where to put the data.  If Amicom is
directly in the main directory of a diskette or a Hard Disk, you can leave
the following entries untouched:
[3mREMOTEDIR ":AmiCom/Remote/"[0m
[3mAUTOSAVEDIR ":AmiCom/Bin/"[0m
It's important that the paths always end with a "/" or ":", because Amicom
just adds the file name to this.
If you want to use a text editor with the pull down menus or a command, then
you need to tell Amicom which one and where it is:
[3mEDITOR ":Utilities/MicroEmacs"[0m
If your TNC firmware has no clock (command "K"), then you should change the
keyword TNCCLOCK to the following:
[3mTNCCLOCK OFF[0m
If TNCCLOCK is on, Amicom tries to set it with the command "K".  This only
gives you an error message if your TNC doesn't have a clock.
If your TNC is connected to the in built serial port of the Amiga, then you
have to use:
[3mSERDEVICE "serial.device"[0m
[3mSERUNIT 0[0m
This should be changed if you use an multi serial card.
The baud rate of the serial port have to be the same for the computer and
the TNC.  If your TNC works at 9600 Baud (serial), less is not recommended
for Hostmode, you should set this:
[3mSERBAUDRATE 9600[0m
The TNC has to work with 8 Bit data, 1 stop bit, and no parity (8N1).
If you use a firmware from WA8DED (e.g.: TNC-Firmware version 2.6), then the
TNC expects to receive the frack time in seconds and not 1/100th of seconds
like other version (e.g.: NORD><LINK).  The parameter "F" should be changed
from "F 800" to "F 8".
[3mTNC 0 "F 8"[0m
The parameters "MODEMBAUD" and "MODEMFLAGS" will be ignored.
The other parameters should only be changed if you know exactly what they
do!

You can also put some personal greetings, etc...  in the files
"greeting.ac" and "text.ac", but this is not necessary for a first test.


[32m[4m3.5 Using Amicom with the KISS mode, SMACK mode or Flexnet-CRC-KISS[0m[31m

Extensive changes are necessary to use Amicom with the KISS mode.  First,
open the file "konfig.ac" with your favorite text editor (ex: ED) and make
the following changes:

First set your own call sign and name, for example:
[3mMYCALL "HB9VBC"[0m
[3mMYNAME "Daniel"[0m
Then set the driver you wish to use, for hostmode it's "Host.drv".  The
keyword DRIVER has to be changed to:
[3mDRIVER "KISS.drv"[0m
Amicom also needs some paths to know where to put the data.  If Amicom is
directly in the main directory of a diskette or a Hard Disk, you can leave
the following entries untouched:
[3mREMOTEDIR ":AmiCom/Remote/"[0m
[3mAUTOSAVEDIR ":AmiCom/Bin/"[0m
It's important that the paths always end with a "/" or ":", because Amicom
just adds the file name to this.
If you want to use a text editor with the pull down menus or a command, then
you need to tell Amicom which one and where it is:
[3mEDITOR ":Utilities/MicroEmacs"[0m
If your TNC is connected to the in built serial port of the Amiga, then you
have to use:
[3mSERDEVICE "serial.device"[0m
[3mSERUNIT 0[0m
This should be changed if you use an multi serial card.
The baud rate of the serial port have to be the same for the computer and
the TNC.  If your TNC works at 9600 Baud (serial), you should set this:
[3mSERBAUDRATE 9600[0m
The TNC has to work with 8 Bit data, 1 stop bit, and no parity (8N1),
otherwise Amicom can't put the TNC into KISS mode.  KISS mode always uses
8N1.
KISS mode has some disadvantages:  the software which makes the protocol
(AX.25 L2) is not informed of the status of the DCD (if the frequency is
occupied or not).  It also cannot check if the TNC has already sent out the
frames or not (because the frequency is occupied for example).  For this
reason, it is very important to set the timer 2 (parameter @T2) correctly.
This timer sets the time that the computer should wait before sending out
an acknowledgement (RR0v, REJ0v, RNR0v) after reception of a packet (I00^
data).  If it is set too small, then each received packet will be
acknowledged alone.  If it is set too big, then the received packets are
acknowledged too late and the corresponding station sends them
again for nothing.  For 1200 Baud packet, the optimal time was found to be
2 seconds, so the following has to be changed:
[3mTNC 0 "@T2 200"[0m
This value has to be set smaller, for higher baud rates on the radio side
(e.g.:  9600) and be checked during a data transfer with the monitor.
The parameters "MODEMBAUD" and "MODEMFLAGS" will be ignored.
The other parameters should only be changed if you know exactly what they
do!

Amicom, respectively KISS.drv sets the TNC or multimode controller to KISS
mode on program start, and sets KISS off when it's ended.  You have to tell
Amicom how your TNC behaves in order to be able to do this, that's why
there is the file "[1mKISS.ini[0m".  In this file the used mode is also
defined:

@0  Auto. KISS.drv uses KISS-mode, after having received an SMACK- or
    Flexnet-CRC-frame mode will be switched.
@1  KISS. KISS.drv will only use KISS-frames.
@2  SMACK. After KISS.drv has been startet it will be in SMACK-mode, only
    frames with correct SMACK-CRC will be interpreted.
@3  Flexnet-CRC-KISS. Only frames with correct Flexnet-CRC will be
    interpreted.

The structure of the rest of the file is simple:
Like always, a line starting with a semicolon (;) is ignored, so you can
leave comments or lines you don't need any more.  All other lines
contain the ASCII codes of the characters that have to be sent to the TNC.

Example:
To switch to KISS mode with a TNC with TAPR software, you would use:
<press CTRL-C> KISS ON <press Return> RESTART <press Return>

That would correspond to the following line in KISS.ini:
[3m3 75 73 83 83 32 79 78 13 82 69 83 84 65 82 84 13[0m
[33m^ ^  ^  ^  ^  ^  ^  ^  ^  ^  ^  ^  ^  ^  ^  ^  ^
| |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
| K  I  S  S  |  O  N  |  R  E  S  T  A  R  T  +-RETURN
+-CTRL-C      +-space  +-RETURN[31m

In the file are already included some entries for different TNCs, some
which weren't tested by myself.  So all you need to do is find the right
line, take the semicolon away and leave all the others with semicolons.

You can also put some personal greetings, etc...  in the files
"greeting.ac" and "text.ac", but this is not necessary for a first test.


[32m[4m3.6 Using Amicom with a Baycom modem[0m[31m

Amicom can be used with the Baycom modem from Johannes, DG3RBU and Florian,
DL8MBT since the version 2.0.  For the time, only modems with 1200 Baud and
which use the serial port can be used, for example the plug in modem with
TCM3105.
Since version 2.2 all modems could be used without modification for
power-supply.
But those who think they can finally sell their TNC should read on.  The
Baycom modem is a simple modem which transforms the received AF signal (1200
and 2200 Hz) into respective digital HI/LO levels.  When sending, the modem
makes the correct tones respectively to the level on the serial port and sets
the PTT of the transceiver.  That means that the software has to control bit
by bit the modem and that the modem has no intelligence like a TNC.  This is
achieved by special interrupt functions which have to be called quite
extensively, which is of course very straining for the multitasking system of
the Amiga.  You also need a very exact timing since the interrupts need to be
exactly at the right time and very regular.  This is exactly the problem.
I have found out that some graphic routines disable the interrupts a short
time.  This is especially noticeable with the ScrollRaster() function which
is used to scroll the screen contents.  I have no idea why it is like this.
The time the interrupts are disabled depends of the processor you use and
not of the use of the Blitter like one could think.
That means that you can only use a Baycom modem with a fast processor.
It works perfectly on my Amiga with a 25 MHz MC68030 and even multitasking
is still possible.  With a 7 MHz MC68000, you will always get receive
errors (Reject) when the text is output to the screen, because there is no
CPU time left.  An Amiga 1200 with a 14 MHz MC68020 will work problem free.
But if you use Amicom with other software, you could have some problems.
Like stated, the interrupts have to stay free at all times.  That's why all
programs which disable the interrupts even a little while, will give
transmission errors.  An example for such programs are old hard disk
drivers which disable the interrupts when they access the hard drive.  To
see if the interrupts are disabled, you can use the function "@DEBUG".
When you click on the speaker symbol, the "Baycom.drv" will output a click
on audio channel 0 at each interrupt.  You should get a constant whistle.
Important is the tone when you don't receive a packet (DCD off).  Is this
tone distorted or even discontinued, then a problem free use with a Baycom
modem is not possible.  Baycom.drv also uses the timer A in CIA B which is
only used for data transfer of the serial port, so it is normally free.
Sometimes it is still in use from another application or a program that
used the serial port before, this can be fixed by doing a reset.  But there
are also some programs which just simply take this interrupt without
checking if it's free, that's the case of some sound module players.  Using
such programs with Baycom.drv gives you a system crash.  Recognition of the
DCD, so if the QRG is free or not, is achieved by checking the modem's data
throughput.  Because the TCM3105 in the modem also reacts to noise, you
have to use the squelch on your transceiver.  It is recommended to build a
"digital squelch" with an XR2211 because the radio squelch is usually so
slow and is the main culprit of reception errors and collisions.  The modem
will then only react to the AF tones, so your squelch can stay open.  The
schematics for this are also contained in the file "Baycom.iff".

To use Amicom with a Baycom modem, some changes are necessary.  First, open
the file "konfig.ac" with your favorite text editor (ex:  ED) and make the
following changes:

First set your own call sign and name, for example:
[3mMYCALL "HB9VBC"[0m
[3mMYNAME "Daniel"[0m
Then set the driver you wish to use, for the Baycom modem it's
"Baycom.drv".  The keyword DRIVER has to be changed to:
[3mDRIVER "Baycom.drv"[0m
Amicom also needs some paths to know where to put the data.  If Amicom is
directly in the main directory of a diskette or a Hard Disk, you can leave
the following entries untouched:
[3mREMOTEDIR ":AmiCom/Remote/"[0m
[3mAUTOSAVEDIR ":AmiCom/Bin/"[0m
It's important that the paths always end with a "/" or ":", because Amicom
just adds the file name to this.
If you want to use a text editor with the pull down menus or a command, then
you need to tell Amicom which one and where it is:
[3mEDITOR ":Utilities/MicroEmacs"[0m
The entries for the serial port (device, baudrate) and the parameters
"MODEMBAUD" and "MODEMFLAGS" will be ignored.
The other parameters should only be changed if you know exactly what they
do!

You can also put some personal greetings, etc...  in the files
"greeting.ac" and "text.ac", but this is not necessary for a first test.



[32m[4m4. Using the terminal program[0m[31m

When you start AmiCom the first time with OS 2.0 or higher and when
"reqtools.library" version 38 or newer is installed a screenmode requester
will be opened to select screen resolution. This settings will be saved
in the file "ScreenMode.bin", if you want to change them you should
delete this file.
When using older versions of the operating system (OS 1.2 or 1.3) you
could select the screenmode in the file "konfig.ac" with the parameters
"INTERLACE" and "SCREENHEIGHT".

[32m[4m4.1 Screen setup[0m[31m

Once the program is started, Amicom opens it's own screen and displays the
input- and monitorwindow. If you swich to channel 1 by pressing the F1-key
you would see something like this:

-----------------------------------------------------------------------------
AmiCom 2.3  [01.01.1999 23:59]                                         [ ][ ]
-----------------------------------------------------------------------------
 1:discon     2:discon     3:discon     4:discon     5:discon     6:discon
-----------------------------------------------------------------------------




-----------------------------------------------------------------------------
1 T:discon                          B0  N0  U0  T0  discon.           1AB
-----------------------------------------------------------------------------












-----------------------------------------------------------------------------
MH:
-----------------------------------------------------------------------------



-----------------------------------------------------------------------------

On the top line, you can see the screen title line (Amicom 2.3...) in which
there is the actual date and time.  Then follows the status line 1
(1:discon...), the type in window, the status line 2 (1 T:discon...), the
output window, the status line 3 (MH:...) and finally the monitor window.

[1mStatus line 1[0m
This line contains the calls of the first 6 connected stations.  The active
channel has a frame around it and is displayed beneath the status line 1.
If data is received on any other channel, then you will see instead of the
double point (:) a bigger than symbol (>).  You can switch between channels
with the function keys or just click on it with the mouse.

[1mType in window[0m
The type in window consists of a 40 line buffer of which only a portion is
displayed here.  All the text you enter on the keyboard is first stored in
this buffer so you can edit it freely with the cursor keys.  You can just
type freely your text, any words that will not fit on the line are just
reported to the next line (wordwrap feature).  When you have completed 3
lines, they are automatically sent off.  If you want to send them off
before that, just press the Return key.  When you move around with the
cursor keys, the lines that belonged together are split and when you press
Return, they will be sent one at a time.  Pressing Return will then send
out the line on which the cursor is currently positioned.
"Del" erases the character underneath the cursor "<-" the character before
the cursor and "CTRL+Y" erases the whole line.
If you are at the beginning of a line, you can go into command mode by
pressing "ESCAPE" which will be represented by a " " at the beginning of
the line.  Enter your command for the TNC of Amicom and send it off with
Return.  Amicom can differentiate automatically TNC commands from terminal
commands.  The size of the type in window can always be changed by clicking
on the status line 2 with the left mouse button (leave the button pushed)
and moving up and down until you like the size, then stop pushing the
button.

[1mStatus line 2[0m
The status line 2 consists of a line like:
-----------------------------------------------------------------------------
 1 D:DB0ZKA    Digi Augsburg          B0  N0  U0  T0  Info Transf. 1AB
-----------------------------------------------------------------------------
[33m <-----1----->|<----------2--------->|<-------------3------------>|<----4---->[31m

1: This is the number of the channel which is currently displayed, the type
   of station connected and the call (DB0KZA).
   The type can be one of the following:
    T: Terminal, a normal user, a normal station.
    B: BBS, a mailbox.
    D: Digipeater
   Not all functions work with each type of station.  News with "//1..." can
   only be sent to terminal stations, the boxcheck function only works with
   mailboxes and autosave only with mailboxes and terminals.
   Mailboxes cannot send out remote commands, they will be ignored. This will
   prevent from unwantet erros.
   The type of a station is defined with the name in the file "names.ac".
2: The name of the station to which you're connected to on this channel.
   It can be made up of maximum 20 characters and is contained in the file
   "names.ac".  Unknown stations can register their names with the remote
   command "//N...".
3: The link status of a connection.  Is one the following:
   B (Buffered): Number of frames or linkstatusmessages in the TNC buffer
                 which have not been displayed yet.
   N (Not sent): Number of frames not sent but in the TNC buffer.
   U (Unack):    Number of frames that were sent out but not yet acknowledged.
   T (Tries):    Number of tries to transmit a frame.  If T is constantly
                 bigger than 1, then you have a poor radio connection.

   Then follows one of the following texts:
   discon.         Disconnected, no connection.
   Link setup      Amicom is trying to establish a connection.
   Frame Reject    A reject frame was sent (FRMR).  This is a big protocol
                   error and terminates most of the time the connection.
   Disc. req.      Amicom is trying to disconnect.
   Info transf.    Normal information transfer, the most common thing in a
                   connection.
   Rej. sent       A reject was sent in order to get the missing data
                   again.
   Waiting ack.    Waiting on an answer from the other station.  If no data
                   is transmitted over a period of time, the connection is
                   tested to see if it's still ok.
   Device busy     Our station cannot accept more data because the receive
                   buffer is full.
   Rem. dev. b.    The other station cannot accept more data.
   Both dev. b.    Both stations are busy.
   W.a. & d.b.     Waiting ack. & Device busy.
   W.a. & r.b.     Waiting ack. & Remote device busy.
   W.a. & b.b.     Waiting ack. & Both devices busy.
   R.s. & d.b.     Reject sent & Device busy.
   R.s. & r.b      Reject sent & Remote device busy.
   R.s. & bdb.     Reject sent & Both devices busy.  

4: Some important status information is shown here:
   0-2: The number of the selected character converter chosen.
   A:   The autosave function is on.  If a 7Plus coded binary file is
        received, Amicom will automatically save it with the right name.
   B:   The BoxCheck function is on.  If Amicom can identify if the
        received text is a list from a DieBox or FBB bbs, it will save this
        text and sort it to a special buffer.
   b:   Data has arrived into the BoxCheck buffer.
   C:   This channel is in converse mode.  All data received on this
        channel are automatically resent to the other channels in converse
        mode.
   P:   The printer has been activated on this channel. Every receieved
        text will be printed.
   p:   The printer has been activated on an another channel.
   T:   A small connect text was defined and will be sent when a station
        connects.
   V:   On this channel the ViewText-function is activated. After you have
        receieved a complete page of text AmiCom stops the output. If you
        press "PrtSc" the next page will be displayed.

   After a space, you can also have this:
   R:   The received data is saved to disk (Read).  More info is on the
        status line 3.
   S:   Data is sent from disk (Send).  More info is on the status line 3.

The character set changer display should absolutely be checked when you
transfer for example 7Plus or 7Bit coded binary data.  If such data is sent
out as text data or saved to disk, then the character converter has (!) to
be set off, otherwise the binary data is useless.  Because people always
forget to set the character converter off, there is a special submenu in
the menu "File Send" called "7Plus".  If data is sent out this way, only
the end of line character is changed (LF->CR).  When receiving, the
character converter is automatically set off.

[1mOutput window[0m
All received data and informations from the program are shown in the output
window.  Following colors and style are used for easier comprehension:

Text color 1: This data was received or output from the program himself and
              are for the user.
Text color 2: This data came from the user or from the program and were
              sent off.

Normal:       This is normal received or typed in text.
Bold:         This text came from the program, for example error messages
              or output to a remote command.
Cursive:      This text came from the TNC or the driver, for example status
              display.

You can scroll back/fwd in the output window with the keys "PgUp", "PgDn",
respectively "shift+cursor up" and "shift+cursor down".  With "Home" and
"End", respectively "ctrl+cursor up" and "ctrl+cursor down" you can go
directly to the buffer beginning/end.  How far you can scroll depends on
your BUFFERS setting.  While you scroll back, the TNC is not emptied, so
always go back to the buffer end with "End".
If you want to read some text you could stop the output by pressing the
"ScrL"-key, pressing it once again will continue the textoutput.
For a comfortable textreading exists the TextView-option, it will be startet
with the pulldownmenu "Switch/ViewText" or Amiga-Right+"V". It works similar
to the texviewer "more". Is it switched on AmiCom stops the textoutput after
each complete page. If you press now the key "PrtSc" AmiCom will display
the next page.
If you click separate words in the output window, they'll appear in the
type in window and can be edited. For those who want to use bigger textblocks
exists the clipboard. If you press "Amiga-right+L" you will enter textmark-
mode. Now you can mark blockstart by klicking into the outputwindow. After
you have marked blockend by double clicking into the outputwindow the text
will be copied into the clipboard and can be used for further functions
(Send, Save...). Cou could cancel textmark if you press "Amiga-right+L"
second or define an another textblock by marking blockstart and -end new
before you have double clicked.
Because clipboard uses memory you should close it if you don't need it.

[1mStatus line 3[0m
In normal use, Amicom will display in the status line 3 up to 11 calls
which were heard on the frequency.  If 11 calls have already been heard and
a 12th is heard, then the one which hasn't been heard for the longest time
is replaced by the new one.  A call is taken off the list if it wasn't heard
in the last 5 minutes.  With this function, you can always see which
stations are actually QRV on the frequency.

During a data transfer, another representation appears.  If the total
length of the data is known (send, receive with autobin or autosave of a
7Plus data), you will get a line like:

-----------------------------------------------------------------------------
R7 TEST.7PL 3450/9876 (34%), t=5 min.
-----------------------------------------------------------------------------
[33m<----1---->|<---2--->|<-3->|<---4--->[31m

1: R: Amicom is receiving and writing on (hard)disk (read).
   S: Amicom is sending data from (hard)disk.
   T: Transfer of a text file with character and EOL conversion (LF<->CR).
   B: Transfer of a binary file without character conversion.
   A: Transfer with Autobin.
   7: Reception of a 7Plus file with autosave or transmitting without
      character conversion; only EOL conversion .
   The file name follows after that without path (TEST.7PL).
2: Number of bytes already transferred and total number (3450 from 9876)
3: Number of bytes already transferred in percent of total (0-100)
4: Time still needed if the transfer stays at this rate.  This time is only
   an approximation and cannot be held for true because the data transfer rate
   normally always fall.

Points 3,4 and the total size will be missing if the total size of the data
is unknown.

[1mMonitor window[0m
On the bottom of the screen you can see the monitor window.  You can
constantly monitor the activity of the QRG in this window.  You can switch
to whole screen with the HELP key.  Once in the whole monitor screen, you
can also send out unnumbered info on the frequency (CQ calls, etc...), or
see the scroll back monitor buffer similarly to the output window scroll
back buffer.  If you press HELP again, you will switch back to the last
active QSO channel.  You can choose between two monitor window sizes with
shift+HELP.  You can also set the monitor window size by pulling on the
status line 3 with the mouse.


[32m[4m4.2 Pull down menus[0m[31m

Most program functions are called by pull down menus.  Here is a list of all
the functions.  The shortcuts which can be used with the right Amiga key
are listed in parentheses.

Program menu:
Editor         (E) Calls the specified editor in "konfig.ac" with
                   "RUN >NIL: <name>".
Shell          (S) Opens a new shell with "RUN >NIL: NewShell".
Help/About     (A) AmiCom will try to open an HotHelp window with all
                   keys which contents the specified keyword. For example:
                   If you enter "KISS" AmiCom opens an HotHelp window and
                   searches in all projects (*) for the key "*KISS*".
Help/Open      (H) Opens an HotHelp window on the same position with the
                   same content like the last closed window.
                   If you select this function first HotHelp will display
                   the project "AmiCom" and the key "Startseite".
Quit           (Q) Quits the program.

File menu:
Read File          The received data can be saved to (hard)disk this way.
                   You can only read one file at a time.  While reading,
                   the autosave function is off.
Send File          Sends a file from a (hard)disk.
Send Clipboard     Sends the content of the clipboard.
Stop Reading       The file which Amicom was saving to, is closed.
Stop Rending       Stops the transmission of a file.
Delete File        Deletes a file name, like the command "Delete" in shell.

Function menu:
Connect        (C) A call sign is asked for.  Amicom attempts to connect
                   this call.
Disconnect     (D) The connection is ended.  Please wait until the
                   connection is really finished!
MyCall         (I) With this you could change the MyCall and your own
                   Name on this channel till the next disconnect. Then
                   AmiCom will use the default settings.
C. Message     (T) You can enter a short message that will be sent upon
                   connection. (max 80 chars, e.g.: "Moment pse, just have a
                   600 ohm call, "be right back"...)
Undo           (U) Amicom shows all the received messages of the type
                   "Connected to..." or "Reconnected to..." and actualizes
                   the logbook.  The status line will also contain the
                   actual call.  If for example you should receive a "false
                   message" from a BBS, you can undo it with this command.
                   The logbook will be changed too.
BoxCheck/Clear     The BoxCheck buffer is cleared and the memory is freed.
                   This is done automatically when you leave the mailbox.
BoxCheck/Show  (B) Shows the contents of the BoxCheck buffer.  You can
                   leave this mode by pressing ESCAPE.
BoxCheck/
      ReadNext (N) Sends a read command ("R") for the next chosen message.
Clipboard/
    Mark Block (L) Defines a block in the receive buffer. After selecting
                   blockstart by simple clicking and blockend by doubleclick
                   it will be copied into the clipboard.
Clipboard/Clear    Clears the entire clipboard and frees memory.
Clipboard/Save     Saves the clipboard on disc.
Clipboard/Print    Prints the clipboard.
Clear Editbuffer   Clears the entire editbuffer.
Printer/On     (P) Everything that is received on this channel will be sent to
                   the printer.
Printer/Off    (O) Turns the print function off.
Standardtext   (-) After having chosen this function, or by pressing
                   rightAMIGA+"-", you have to type a key (A-Z) to send out
                   that key's specific standard text.
Monitor menu:
Save/On            Starts the monitor save function.
Save/Off           Stops this function.
Mon. H. /Show  (M) Shows the big monitor heard list.  This list contains up
                   to 30 heard stations.
Mon. Heard/Clear   Deletes the big and small monitor heard list.

Switch menu:
Some functions can be turned on/off with this menu.

The following switches are seperate for each channel:
Convers            Converse mode on/off.
Converter          Choose the character converter (off, IBM or IBM/DIN).
Umlaute            "Umlauts" on/off.
ViewText       (V) Turns the ViewText-option.

The following switches are used global for the whole program:
AutoSave           Turns the autosave function on/off.
Bell               Turns bell on/off when connected or "//RI".
BoxCheck           Turns the BoxCheck function on/off.
CText              Sets connect text on/off.
Echo               Switches the echo-function on or off.
MHeard             Sets monitor heard list on/off.
PCFont             Uses the IBM character set (Amicom.font)
Remote             Sets remote on/off.  ("//XXXX" commands on/off)
Sound              Turns noise on/off when receiving data or CTRL-G.


[32m[4m4.3 Commands[0m[31m

If the cursor is in the type in window at the beginning of a line, you can
switch to command mode by typing ESCAPE.  The command mode is represented
by a "" at the beginning of the line.  You can then enter your command for
the TNC or the terminal and send it by pressing RETURN.  The differentiation
of [1mterminalm[0m or [1mTNC commands[0m is made by Amicom.  Here is a list of all the
terminal commands.  Which TNC commands can be used depends on the driver you
use or of your TNC firmware.  A list of commands for KISS.drv or Baycom.drv
follows in the next chapter.

[1mTerminal commands[0m
Each command is a keyword followed by one or more parameters which can be a
number, a character chain, or a switch.  A switch is made up of the words
"EIN", "AUS", "ON" or "OFF".  If the character chain contains spaces, it
should be set between quotation marks, e.g.: 'df0:data', '"This is a
test."'.  If the command is sent without a parameter, the actual value of
this parameter will be displayed.

List of terminal commands:

[1mAUTOSAVE <switch>[0m
Turns the autosave function on/off.

[1mBELL <switch>[0m
Turns the bell on/off when someone connects or uses //RI.

[1mBOXCHECK <switch>[0m
Turns the BoxCheck function on/off.

[1mC <call [path]>[0m
Connect, a connection is established to the callsign, eventually via the
specified digipeaters.  If a connection is already established to that
station, Amicom will send out the error message "STATION ALREADY
CONNECTED", increments the SSID by MYCALL and tries to connect again.
Example:
c hb9iap
c hb9iap-8 hb9iap
c hb9iap-8 via hb9iap

[1mCHANNEL <channel number>[0m
[1mCH <channel number>[0m
Switches to the specified channel number.  Because you can "only" (?) go the
first 30 channels with the function keys, this command is necessary to be
able to access the channels 31-255 (for those who need that much...).

[1mCLRBOXCHECK[0m
Clears the buffer of the boxcheck-funktion and frees memory.

[1mCLRMHEARD[0m
[1mCMH[0m
Erases the big and small monitor heard lists.

[1mCLRCLIP[0m
Erases the clipboard.

[1mCONVERS <switch>[0m
[1mCONV <switch>[0m
Turns converse mode on/off on active channel.

[1mCONVERTER <number>[0m
Chooses the character set converter for the specified channel, <number> can
take a value between 0 and 2.

[1mCTEXT <switch>[0m
Turns the connect text on/off.

[1mDELETE <file name>[0m
[1mDEL <file name>[0m
Erases the specified file name on (hard)disk like the shell command
"Delete".

[1mD[0m
Disconnect, the connection on this channel is ended.

[1mECHO[0m
Switches the echo-function on or off.

[1mEDITOR[0m
[1mED[0m
Starts the configured editor.

[1mHELP[0m
Lists all possible terminal commands.

[1mMAXFRAME <value>[0m
Sets the maximum number of frames that can be sent out without being
acknowledged.  MAXFRAME can take values between 1 and 7, the set value will
be sent to the TNC with the command "O <value>".

[1mMHEARD <switch>[0m
Turns the updating of the big monitor heard list on/off.

[1mMONSAVE[0m
Starts the monitor-save-function.

[1mMONSAVEOFF[0m
Closes the monitor-save-function.

[1mNEWSHELL[0m
Starts a new shell.

[1mPACLEN <value>[0m
PAC <value>
Sets the maximum length of data frames.  PACLEN accepts values between 16
and 256.

[1mPCFONT <switch>[0m
Turns the font "AmiCom.font" on/off.

[1mPRINTCLIP[0m
Sends the clipboard to the printer.

[1mPRINTER <switch>[0m
Turns the printer on/off.

[1mQUIT[0m
Quits program.

[1mRA <file name>[0m
Starts download of the file name <file name> with Autobin.

[1mRB <file name>[0m
Starts the reception of a binary file to disk, the character set converter will
not be used.

[1mRT <file name>[0m
Starts the reception of a text file to disk, the character set converter will
be used.

[1mREMOTE <switch>[0m
Turns the remote commands with //XXXX on/off.

[1mRTT[0m
Measures the running time of data between the two stations.

[1mS7 <file name>[0m
Starts the transmission of the 7plus-file <file name>.

[1mSA <file name>[0m
Starts the upload of the file <file name> in with Autobin.

[1mSB <file name>[0m
Starts the transmission of the file <file name> without the character set
converter.

[1mSL[0m
Starts the transmission of the content of the clipboard.

[1mST <file name>[0m
Starts the transmission of the file <file name> with the character set
converter.

[1mSAVECLIP[0m
Saves the clipboard.

[1mSOUND <switch>[0m
Turns the sound by received packets or CTRL-G on/off.

[1mSTOP[0m
Stops or breaks a data transfer.

[1mUMLAUTE <switch>[0m
Turns the umlauts on/off.


[32m[4m4.4 Description of the TNC commands for Baycom.drv and KISS.drv[0m[31m

When using the WA8DED-hosmode all TNC-commands and the whole protocol and
transmittercontrol is worked by teh TNC-firmware.
That is why when using "Host.drv" the TNC commands are only dependant on your
TNC firmware since "Host.drv" directly sends the commands unchanged to the
TNC. For further informations look into your TNC-documentation.

By "BayCom.drv" and "KISS.drv", the TNC commands are treated at the
driver's level, just like the whole AX.25 protocol, a part from the status
and error reports and the monitor output.  The usage is so very similar as
to using WA8DED hostmode firmware.  If a command is used without
parameters, it's actual value will be displayed.

Here is a list of TNC commands for the "BayCom.drv" and "KISS.drv".  Those
marked with a star (*) are valid for each channel separately.  When you
disconnect, the values of the channel 0 will be taken again.  This is why
the most important settings have to be made on channel 0!

List of [1mTNC commands[0m:

[1mB <180...600>[0m                                       (DAMA time-out in seconds)
This parameter is only used for DAMA activity, it will be automatically
detected and used by the driver.  With the parameter "B", you can set the DAMA
time-out in seconds, the default setting is 180 (3 minutes).  If during this
time, Amicom hasn't received a poll from the DAMA master, Amicom will
switch back to CSMA usage (normal usage).
Since version 2.2 AmiCom will change this timer automatically depending on
the time between 2 polls from the DAMA master.

[1mC <call> [via] [digipeater digipeater...][0m                          (Connect) *
Sets a connection to the defined station.  You can also specify a route
with up to 8 digipeaters.  If a connection is already established to this
station on this channel, then the new route will be used instead and the
link rebuilt.
On channel 0 (monitor) you can define the unproto (UI frames) destination
call with this function (e.g. "C CQ").

Example:
c hb9iap
c hb9iap-8 hb9iap
c hb9iap-8 v hb9iap
c hb9iap-8 via hb9iap

Attention: When you are working via an DAMA-node you are only allowed to
connect the DAMA-master (node) or via the DAMA-master! When you connect an
another user directly it will disturb the whole operation on the frequency.

[1mD[0m                                                               (Disconnect) *
Ends the connection on this channel, but before that, Amicom waits until
all the sent frames have been acknowledged by the other station.  If the
disconnect command is sent twice, all the frames are dropped immediately
and only the disconnect request is sent.  If the disconnect command is sent
three times, the connection is immediately terminated without even waiting
for the disconnect acknowledgment (UA-) from the other station.  This
solution should only be used in helpless cases, as the other station maybe
hasn't received the end of connection status.

[1mF <1...65535>[0m                           (timer 1, frack in 1/100 of seconds) *
Sets the value of the timer 1 (frack) in 1/100 of seconds.  If a frame has
been sent out to the other station and if he hasn't acknowledged during this
laps of time, then the same frame will be resent (poll). Since version 2.2
this parameter only sets the start-value of the timer 1. The actual value will
be calculated using the average response-time of the other station.
IN DAMA-mode this parameter will be ignored.

[1mI <call>[0m                                                            (mycall) *
Sets your own callsign.  This setting should absolutely be made on channel
0 because the other channels will take these values after a disconnect.

[1mK <0...2>[0m
Tells Amicom if you wish to stamp (date and time) the received packets:
0 = no stamp.
1 = stamp by status information (CONNECTED TO...).
2 = stamp by status information and monitor heard lines (fm HB9VBC to...).

[1mL[0m                                                               (get status) *
Gives the status of the connection on this channel.  The status is composed
of 6 numbers which have the following meaning:
1. number: The number of not yet displayed status informations.
2. number: The number of not yet shown data frames.
3. number: The number of frames that have not been sent but are in the TNC
           buffer.  This value is also displayed on the status line 2 (N).
4. number: The number of sent data frames which haven't been acknowledged
           yet.  This value is also displayed on the status line 2 (U). 
5. number: The number of retries of the last frames.  This value is also
           shown on the status line 2 (T).
6. number: Link status of the connection.  It is displayed as text on the
           status line 2.

[1mM <U|I|S|C|N>[0m
With M you can define what's being displayed in the monitor:
U: unproto frames (UI) are displayed.
I: info frames (I) are displayed.
S: control frames (RR, REJ, RNR, FRMR, SABM, DISC, UA, DM) are displayed.
C: show the monitor even if you're connected.
When using Amicom, you should set "M" to "UISC"!

[1mN <0...65535>[0m                                                    (N2, tries) *
Sets the maximum number of retries.  If you still don't get an answer from
the other station, then the connection is terminated (LINK FAILURE).  The
value 0 sets this to infinity, be careful of this!!!

[1mO <1...7>[0m                                                         (maxframe) *
Sets the maximum number of unacknowledged frames.  Once so many frames have
been sent out, Amicom waits for an acknowledgment from the other station.

[1mP <0...255>[0m                                                      (persistence)
Sets the value for the built in random generator.  The TNC will never
transmit with a value of 0, but with a value of 255 he will transmit without
an interval.
This parameter is related with the slot time (W), useful values are between
16 and 128. In DAMA-mode this parameter will be ignored.

Warning:  The parameters P and W should only be changed if you know exactly
          how they work! If you change them wrong you could disturb the
          operation on the whole frequency!

[1mQ [+|-] <call> [search route][0m                           (QRV? search function)
With Q it is possible to search for a station, just like the F command by a
Flexnet.
Q <call>             Searches for the station <call> directly and on the
                     configured search route (Q +).
Q <call> <route>     Searches for the station <call> on the route <route>.
                     The <route> can contain up to 8 digipeaters.  If
                     <route> is specified then the configured one is not
                     used.
Q + <route>          Sets the route <route> to the search routes.  You can
                     have up to 8 search routes, each containing up to 8
                     digipeaters.
Q - <route>          Takes the <route> out of the search route.

[1mR <0|1>[0m                                                           (digipeat) *
Turns the L2 digipeating on/off. If it is on your own station could be used
as an digipeater when your call is contained in the connect-path.

[1mT <0...255>[0m                                      (TXDelay in 1/100 of seconds)
After having pressed the PTT switch of your trx, you have to wait some time
before you can really send data at the specified power, on the specified
frequency which has to be set by the PLL, until the transmission relays
switches, etc...  If you didn't wait, some data would get lost.  To remedy
this, use the parameter "T" which tells the TNC how much time he has to
wait after pressing the PTT switch before really sending data.  A TXDelay
time of 250 ms (T 25) should suffice for most modern transceivers, a time
too long only blocks the frequency for nothing.

[1m1[0mU                                                               (connect text)
With U you can normally set the connect text on/off.  This is done by
Amicom and is useless in this case.  So you don't always get an error
message if the command "U" is present in the config file, it is also
implemented here but has no function.

[1mV[0m                                                                    (Version)
Shows an versionmessage.

[1mW <0...255>[0m                                    (slot time in 1/100 of seconds)
Sets the slot time for the persistence function in 1/100 of seconds.  This
setting goes together with the "P" parameter, see there for more infos.

[1mX <0|1>[0m                                                        (lock transmit)
0: the trx is locked (SWL).
1: the trx is free to send.

[1mY <0...255>[0m                                                         (channels)
Sets the maximum number of connects the TNC can take from the outside.  If
there is already "Y" number of connections, then if another station wants
to connect you (SABM+), Amicom will send back a disconnected mode (DM-).
This value is automatically set to the number of CHANNELS set in the config
file.
"Y" without parameters shows the number of channels set and the number of
connections in parentheses.

[1m@B[0m                                                                   (buffers)
Shows how much of the buffer is still free.  Behind is the maximum value of
the buffer in parentheses.

[1m@D <0|1>[0m                                     (full duplex, only with KISS.drv)
Turns the full duplex on/off.  This is only possible if you separated the
reception from the transmission and isn't normally used by normal stations
but only by dedicated links between digipeaters.

[1m@DEBUG[0m                                           (debug, only with BayCom.drv)
Opens the debug window in which you can see the status of the DCD and PTT
as well as if you're in DAMA mode or not.  When you click on the speaker
symbol, BayCom.drv will send out a click on audio channel 0 with each
interrupt.  You should hear a constant tone.  If the audio is not made up
of a constant frequency when you don't receive anything (DCD off) or even
if it's broken, then you can't use the BayCom modem without major problems.
During reception (DCD on), it's normal to hear a little distortion in the
sound, because the phase length always changes so the DPLL (Digital Phase
Locked Loop) can synchronize to the receiving signal.

[1m@I <0...256>[0m                                                           (IPoll)
If a info-frame must be repeated which has an length smaller or equal than the
with @I defined value it will be repeated immediately (I+) instead an
simple poll (RR+, RNR+) like defined in the AX.25-protocol-definition.
"@I 0" switches info-poll off.

[1m@N <Call> [Call Call...][0m                                                (CNot)
With this command you could define up to 9 callsigns from which AmiCom will
ignore every connect request.

Example:
@N NOCALL BEACON ;AmiCom will answer every connect-request of this 2 callsigns
                 ;with an DM-.

[1m@S[0m                                                               (Statistic) *
This command will display an small statistic like:

TXI 12, TXR 6 (50.0%), RXI 20

TXI is the number of transmittet info-frames.
TXR is the number of retransmissions of info-frames and retransmissions in
    percent (percent=TXR*100/TXI). In this example this means a very bad
    link...
RXI is the number of receieved info-frames.

[1m@T2 <0...65535>[0m                 (packet response timer T2 in 1/100 of seconds)
Before the received frames are acknowledged, Amicom will wait the "@T2" set
time to see if another info frame is being received.  If the timer has
timed out and no other info frame is received, then the acknowledgment
(RRv, RNRv, REJv) is sent out.  This timer is especially useful in KISS
mode, so not each and single frame is acknowledged.  By Amicom, the
following modification is used:  After reception of an acknowledgment
(RRv, REJv, RR-...), Amicom will also wait the "@T2" time before sending
out another info frame (I^).  This avoids unnecessary transmission with the
KISS mode.
In DAMA-mode this parameter will be ignored.

[1m@T3 <6000...65535>[0m              (link inactivity timer T3 in 1/100 of seconds)
If you're transferring data (you don't have much to talk about, hi), then
Amicom will check after @T3 time of receiving nothing if the connection is
still ok.

[1m@TA <0...255>[0m                                    (TX-tail in 1/100 of seconds)
After sending the last frame, Amicom will wait @TA time before dropping the
PTT line.  This is sometimes needed by slow modems.


[32m[4m4.5 Keyboard layout[0m[31m

[1mKeyboard layout in normal mode:[0m

F1...F10               Switches between the channels 1-10.
SHIFT+F1...F10         Switches between the channels 11-20.
CTRL+F1...F10          Switches between the channels 21-30.
HELP                   Switches to the monitor channel (channel 0).  When
                       you press HELP again, you go back to the channel you
                       left (QSO channel).
SHIFT+HELP             Switches between the two alternative monitor sizes
                       at the bottom of the screen.
ESCAPE                 If the cursor is at the beginning of a line, then
                       you can enter TNC or terminal commands by pressing
                       ESCAPE.
                       If a requester is beeing displayed you could close
                       it by pressing ESCAPE. If AmiCom awaits an user input
                       ESCAPE is like selecting "Cancel".
DEL                    Erases in the type in window the character that is
                       under the cursor.
SHIFT+DEL              Erases all characters from the corsor position till
                       end of the line.
<-                     Erases the character just before the cursor.
SHIFT+<-               Erases all characters from the beginning of the line
                       till one character before cursor position.
CTRL-B                 With this you could insert spaces between the words
                       in the actual line till it reaches maximum lenght.
                       If you do this with more than 1 line you get a
                       beautiful textblock.
CTRL-C                 Witth this you could center the actual line. Good
                       for headlines...
CTRL-Y                 Erases the complete line in the type in window.
RETURN                 Stops the entry on a line and sends the command or
                       the text out to the TNC.  Amicom then jumps to the
                       next line.
                       If AmiCom awaits an user-input in an requester then 
                       RETURN is like selecting "OK".
SHIFT+RETURN           AmiCom jumps to the next line but the text will not
                       be sent (like in the wordwrap function). With this
                       you could join up to 3 lines and send them together.
CURSOR UP              Moves the cursor in the type in window up one line.
CURSOR DOWN            Moves the cursor in the type in window down one line.
CURSOR LEFT            Moves the cursor in the type in window back one
                       character.
CURSOR RIGHT           Moves the cursor in the type in window forward one
                       character.
SHIFT+UP or PgUp       Scrolls back one page in the output window.  The
                       output is stopped until you go to the end of the
                       buffer again.
SHIFT+DOWN or PgDn     Scrolls forward one page in the output window.
CTRL+UP or Home        Jumps to the beginning of the buffer.
CTRL+DOWN or End       Jumps to the end of the buffer, incoming text will be
                       displayed again.
ScrL on numeric pad    The output will be stopped until SclL is pressed
                       again, like this you can read the received text.

[1mKeyboard layout in the BoxCheck buffer:[0m

F1...F10,              Switches between the channels like in normal mode.
SHIFT+F1..F10,         If the key of the current displayed channel will be
CTRL+F1...F10          pressed then AmiCom closes the BoxCheck buffer and
                       switches to normal display.
HELP                   Switches to the monitor channel (channel 0).  When
                       you press HELP again, you go back to the channel you
                       left with the BoxCheck buffer.
SHIFT+HELP             Switches between the two alternative monitor sizes
                       at the bottom of the screen.
ESCAPE                 Goes back to normal mode.  BoxCheck display will be
                       ended.
                       If a requester is beeing displayed you could close
                       it by pressing ESCAPE. If AmiCom awaits an user-input
                       ESCAPE is like selecting "Cancel".
CURSOR UP              Scrolls back one line in the buffer.
CURSOR DOWN            Scrolls forward one line in the buffer.
SHIFT+UP or PgUp       Scrolls back one page in the buffer.
SHIFT+DOWN or PgDn     Scrolls forward one page in the buffer.
CTRL+UP or Home        Jumps to buffer start.
CTRL+DOWN or End       Jumps to buffer end.
F                      You can define a search string for which Amicom will
                       search through the BoxCheck buffer.
R                      Goes back to normal operation and sends a read
                       command for all (!) selected messages.  It is better
                       to close the BoxCheck buffer and read the messages
                       one by one with rightAMIGA+N.
SPACE                  The top most message is selected.  Pressing SPACE
                       again will un mark it.  All marked messages can then
                       be read automatically.


[32m[4m4.6 Remote commands[0m[31m

Amicom can be remotely controlled if you activated this feature (REMOTE
ON).  The remote commands start with a "//" at the beginning of a line,
this is to differentiate them from the normal QSO text.  Remote commands
will be ignored from mailboxes, that's why you have to set the entries in
the file "names.ac" correctly!

The following remote commands are supported by Amicom:

[1m//CHAR <charset>[0m

With "//CHAR" you could select an charset converter.
"//CHAR 0" Switches the charset converter off (Amiga charset, ANSI).
"//CHAR 1" Switches to IBM charset. AmiCom does now try to change all
           characters which are contained in IBM charset as well in Amiga
           charset so that they are displayed correctly. This concerns
           most of the national special characters like the german umlaute
           (ae ue ue...).
"//CHAR 2" Swithes to IBM charset but the german umlaute are transformed
           to DIN charset. With this charset you couldn't use all characters
           (cornered brackets, backslash...).

[1m//CONV[0m
Starts converse mode on this channel.  All what is entered here will be
sent to the other channels which are also in converse mode.  You can a QSO
with more than one station like this.  Please note that this function
should only be used if your local digipeater doesn't have a converse mode
function itself.

[1m//CS[0m
Gives the connect status.  This is a list containing all the connected
stations with their channel numbers.  A line of the connect status could
look like this:

Connect-Status de HB9VBC, 02.03.1994 14:10:30:

CH 1 HB9VBC-1  --> B:HB9IAP-8  via HB9IAC      5m Digi Geneva

[33m1---|2--------|3--|4|5-----------------------|6--|7-------------------|8---|[31m

1: The number of the channel on which the connection is taking place.
2: Your own call (MyCall) on this channel
3: The direction of the connection:
   -->: You connected the station (HB9IAP-8).
   <--: You were connected from the other station.
4: The type of the connected station.  It can have the following values:
   T: A terminal, a normal user.
   B: A BBS, a mailbox.
   D: A digipeater.
5: The call of the station to whom you are connected.  If the connection
   goes through one or more digipeaters, the last digipeater will also be
   displayed.
6: The time which the current connection exists in minutes
7: The name of the station if it's known.
8: If the channel is in converse mode, you will also see here "conv".

[1m//DEL <file>[0m
Deletes a file in the remote directory. You could only delete your own files.
The sysop of the station could delete all files with the self-remote function.

[1m//DIR [<sub directory>][0m
[1m//D [<sub directory>][0m
Shows the directory of the remote directory or a sub directory of it.  The
other stations have read and write privileges on this remote directory!

[1m//ECHO <text>[0m
[1m//E <text>[0m
Sends the <text> back.

[1m//END[0m
Closes a file you opened with //W, //WT or //WB or brakes the data transfer
(//WA, //R, //RT, //RB, //RA).

[1m//HILFE [<command>][0m
[1m//HELP [<command>][0m
[1m//H [<command>][0m
"//H" gives you a list of all the remote commands possible.  You can get
specific help for a command with "//H <command>".


[1m//INFO[0m
[1m//I[0m
Sends the standard text "I".  It normally contains a small station
information or presentation.

[1m//MH[0m
Shows the monitor heard list.  This list can contain up to 30 stations
which were heard in the monitor.  It is sorted from the last heard to the
first heard.

[1m//NAME [<name>][0m
[1m//N [<NAME>][0m
"//N" gives you the name which of the station which is connected on this
channel while "// <name>" will set the name corresponding to your call into
the file "names.ac".

[1m//NEWS[0m
[1m//NE[0m
Sends the standard text "N".

[1m//RT <file name>[0m
[1m//R <file name>[0m
Reads the file <file name> from the remote directory, the character set
converter is used.  The transmission can be stopped at all times with "//END".

[1m//RA <yfile name>[0m
[1m//RPRG <file name>[0m
Download of the file <file name> from the remote directory with autobin.

[1m//RB <file name>[0m
Reads the file <file name> from the remote directory without using the
character set converter and EOL conversion.

[1m//RTT[0m
Mesures the runningtime of the data between the two stations.

[1m//Q[0m
[1m//BYE[0m
Ends a connection.  Before ending, Amicom will send the standard text "Q"
which can contain for example a goodbye message.

[1m//VER[0m
Sends the version number of the program and a copyright message.

[1m//WT <file name> [<comment>][0m
[1m//W <file name> [<comment>][0m
Opens the file <file name> in the remote directory.  You can then enter
text that will be saved to this file, the character converter will be used.
To close the file, you must enter "//END".
You could add an up to 30 characters long comment which sould describe the
content of the file.

[1m//WA <file name> [<comment>][0m
[1m//WPRG <file name> [<comment>][0m
Opens the file <file name> in the remote directory for upload with Autobin.
You could add an up to 30 characters long comment which sould describe the
content of the file.

[1m//WB <file name> [<comment>][0m
Opens the file <your file> in the remote directory.  You can then enter
text that will be saved to this file, the character converter will not be
used.  To close the file, you must enter "//END".
You could add an up to 30 characters long comment which sould describe the
content of the file.


In the case you would like to experiment with these commands before going
off on the air, you can try these on a non connected channel with yourself.
Just go to a non connected channel and issue the remote commands you wish.
In this case you could overwrite and delete all files in remotedirectory, not
only these ones which you have created yourself.


[32m[4m5. Data transmission[0m[31m


[32m[4m5.1 Different kinds of data transfers[0m[31m

When transferring data over packet radio, you should make a difference
between two types: text files and binary data.  Text files consist of
normal ASCII text which can be directly read and sent.  Binary files can
consist of workable programs, images or special file formats; they contain
all the characters between 0-255.  The differentiation has two causes:

- In packet radio, the ASCII code 13 (return character) is used to separate
  lines.  Various computer systems use different line separators or
  combinations, e.g. linefeed (ASCII code 10) by the Amiga or return+linefeed
  by MS-DOS.  If text files have to be sent, you have to change the line
  separators to return first.  This would make binary files useless because
  those need ALL the characters from 0-255.  Also for non ASCII code normed
  characters like the German umlauts, it is necessary to transform the
  characters first.
- A binary file has to be transmitted without any missing bytes, transmission
  errors have to be detected.  A special transmission protocol has been
  created to avoid that the other station who wants to save the file has to
  know when it starts and finishes.  This protocol is the autobin protocol.
  If you want to send binary files through your BBS, there exists a lot of
  programs which will transfer your files to normal ASCII text.  The most
  know in the packet radio network is 7plus.  With this program, you can also
  find and correct transmission errors.


[32m[4m5.2 Sending text data[0m[31m

Text data transmission is the easiest of all data transmissions.  You can,
with Amicom, write a simple message with an editor and send it directly
from (hard)disk.  The other station receives the text just like if it had
been written normally.  All that is received on a channel can also be save
directly to (hard)disk, you can then read or print the messages later.  If
you call the function "File/Read File/Text", you can choose a file name to
which all the data will be saved immediately.
Because the Packet Radio network uses the Return character for end of lines
(ASCII code 13), Amicom will change all the linefeeds from the Amiga (ASCII
code 10) to returns before sending out text, when receiving the contrary
applies.  If a character set converter is used, e.g. IBM or DIN/IBM, then most
special characters or national characters ...) are also changed.


[32m[4m5.3 Sending binary data[0m[31m

For a binary transfer, all the 256 characters are needed. That means that
special control characters also have to be used. There is also another
problem with binary transfers:
All characters have to be transferred correctly, no character can be missing
and no character should be added. So that the other station knows when the
file starts, how long it is, and when it's finished, there is the Autobin
protocol. An Autobin transmission functions somewhat like this:

OM A tells OM B that he wants to transmit binary data:

[33m> OM A -> OM B: "I'm going to send you binary data, start saving please."[31m

OM B starts the automode reception with the function "File/Read File/Auto".
OM A also can start automode reception with the remote command "//WA ...".

[33m> OM B -> OM A: "Ok, I'm ready now."[31m

OM A starts the transmission with the function "File/Send File/Auto".
OM B also can start the transmission with the remote command "//RA ...".

The software from OM A (sender) will transmit an #BIN# header which contains:

- The lenght of the file in bytes. The software from the receiver will save
  everything that he's receiving to (hard)disk till he have received
  this number of bytes. The file will be closed automatically.
- A 16 bit checksum (CRC). With this the receiver could check if the
  filetransfer was error free.
- The creation date of the original file. AmiCom does not care about this,
  the date will be only transmitted for compatibility to other software.
- An flag which shows that the sender does know the extended AutoBin
  protocol which allows to continue interrupted filetransfer.
- The name of the original file. This will be only transmitted for information
  of the user.

Some older software do not transmit all this information but at least file
size.

Is the software of OM B ready to save it will transmit "#OK#" and station
A will start transmission. After filetransfer has been finished the
receiver will close the file automatically. If he does know the CRC he
will check if there was an transmission error.

When the receiver selects an file which does already exist AmiCom does
automatically check if it is an file which has been transfered previous
but not complete. So you could continue filetransfer when there was
an interruption, for example "link failure".
In this case the receiver repeats with an extended #OK# which contains:

- The name of the stored file. This would be transmitted only for information
  of the user.
- The number of bytes in the file fragment of an previously received file.
- CRC of the file fragment.

With this the sender could check if the previosly transmitted file has been
received correctly and if it is the same.

The user of the terminal could break filetransfer at any time and continue
later.

If the other station does not use the extended AutoBin protocol AmiCom does
recognize this. Then you could not continue an previous failed filetransfer
and you must check CRC yourself.

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!                                                                         !
! If the CRC is not correct the receiver must delete the received file or !
! file fragment because it contains an error!                             !
!                                                                         !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!



Most stations and mailboxes can only transfer files as text.  To bypass
this problem, there are several programs which can transfer binary files to
text.  The most common in the Amateur radio world is 7Plus.  A 7Plus file
transfer goes like this:

Let's say you want to transfer a file that is called "test".  You first
have to transform it to a text file with 7Plus.  You write the following
command in the shell:
[33m7Plus Test[31m
7Plus will then make a file called "TEST.7PL".  If the file is longer,
7Plus will split it up into several parts, e.g. "TEST.P01" and "TEST.P02".
These parts can then simply be transmitted as text files.  Once all the
parts are received by the other station, they'll have to enter the
following command in the shell:
[33m7Plus test.7pl[31m
or
[33m7Plus test.p01[31m
and find the original binary file again.  If there is a transmission error, an
error report will be made which can be sent to the originator of the
program so he can send you only the missing part.  More information is
given in the 7Plus documentation.

When transferring 7Plus coded files as text files, you must (!) disable the
character set converter (CONVERTER 0), otherwise the file will be
useless.  Because most people simply forget to turn off and the on again
the character set converter, Amicom has the function "File/Send File/7Plus".
This function sends text without the character set converter, so only the
linefeeds are changed to returns.  If the autosave function is on, received
7Plus files will be automatically saved with their right names to the
autosave directory.


[32m[4m6. Special functions[0m[31m


[32m[4m6.1 Autosave[0m[31m

Most mailboxes are only capable of transferring text files.  If you want to
transfer binary files, you have to transform them first to text.  The most
common packet radio binary coder is "7Plus" from Axel Bauda, DG1BBQ.  7Plus
will code automatically binary files to small text files.  If there was a
transmission error somewhere, 7Plus allows you to transfer only the
missing/destroyed part.  It is actually a very practical way to transfer
files, but the saving of the multiple parts is a cumbersome chore.
The autosave function of Amicom will do this job for you.  With the
"AUTOSAVEDIR" keyword in the "konfig.ac" file, you can define to which
directory the files have to be saved to.  If Amicom receives a line which
starts with " go_7+", " go_text." or " go_info.", it will automatically
stop using the character set converter and save the file with the right
name (*.7pl, *.pxx, *.err, *.cor or *.inf).  It will close the file and
start using the character set converter again after having received a
" stop_text." or " stop_info.".  If the file already exists (e.g. "TEST.7PL"),
Amicom will change the name (e.g. "TEST.7PL_TRY_2") to avoid erasing the old
file.
If AmiCom receives more ERR-files (e.g. "TEST.ERR") it will change the
filename like the way 7Plus expects it when there are more parts (e.g.
"TEST.E01" up to "TEST.EFF"). So you now can easy join the files with
"7Plus -j TEST.ERR" and create an COR-File with "7Plus TEST.ERR". with this
correction-file all stations should be able to correct their errors.
If AmiCom receives more COR-files (e.g. "TEST.COR") it will change the
filename to "TEST.C01" up to "TEST.CFF". When an error appears when
decoding the file 7Plus will now try all parts to get the missing lines.
When a 7Plus file is beeing received AmiCom will do no screen output.


[32m[4m6.2 BoxCheck[0m[31m

Most mailboxes have a check function which will show you the message titles
since your last login.  Like this you can check in by regular intervals to
see if there is anything new of interest.  But the mailboxes usually
receive hundreds of messages a day which are listed in their order of
reception.  Having to look through this list is already a cumbersome task
but then you have to send several read commands if you found some messages
of interest.  This is especially the case with FBB style mailboxes, because
the numbers are usually made up of 5 or 6 digits.
The BoxCheck function of Amicom will make this task much easier for you.
If Amicom receives a check or list line, it will automatically put it into
a buffer and sort the line by the TO field and by alphabetical order.  The
contents of this buffer can be seen with the "Function/BoxCheck/Show"
function or by pressing Right-Amiga+B.  Then you can select the interesting
messages by clicking on them with the mouse or the space bar.  ESCAPE
leaves the BoxCheck buffer but it's contents is still there.  To send a
read command for the next selected entry, you simply type Right-Amiga+N or
use the "Function/BoxCheck/Next" function.
The function "Function/BoxCheck/Clear" will erase the BoxCheck buffer's
contents on this channel.  The same is true if you disconnect from the
mailbox.

Problems:
The BoxCheck function needs to receive a special type of line format from
the BBS.  That's why this function only works with BayCom and DieBox
mailboxes (command "Check") as well as F6FBB mailboxes (command "List").
Because the FBB type mailboxes have sometimes some differences, I cannot
guarantee you that it will work with all of them.  I have tested it with
FBB-5.15.
All recognized lines are automatically save to the BoxCheck buffer without
checking if the line has already been received, so please clear the buffer
before doing another check or list.  This is done automatically when you
disconnect from the BBS - unfortunately also when you just get shortly
disconnected from the mailbox...


[32m[4m6.3 Monitorsave[0m[31m

Sometimes you can see in your monitor that when an interesting message has
been written by an OM, the evening at prime time, a lot of other OMs are
reading his message.  This is actually a waste of time because it would be
much easier to have just one OM read the message and the others read it
along in their monitors.  Sometimes it can be necessary to save the
complete monitor channel for software test, etc...
I have implemented the monitor save function into Amicom for this reason.
This function will save the whole monitor or only a specified part of it.
You can limit it to specific frames or even save the whole QSO from one
station to another.
You access the monitor save function with the menu "Monitor/Save/On".
Amicom then opens a requester in which you can set everything.  You first
have to define the fm- and to- calls if you want to save a specific QSO:

Only fm [         ] to [         ] -> The whole monitor will be saved.
Only fm [HB9IAP   ] to [         ] -> Only the frames which are sent by
                                      HB9IAP will be saved.
Only fm [         ] to [HB9VBC   ] -> Save all that goes to HB9VBC, doesn't
                                      matter from whom.
Only fm [HB9IAP   ] to [HB9VBC   ] -> Save only the frames from HB9IAP to
                                      HB9VBC.

In case you don't want to save all the frames, you can select which ones
you wish to save:

Only Info-Frames:        These frames (I) contain the actual data.
Only Unnumbered-Info:    These frames (UI) contain also data but are not
                         related to a QSO.
Only Supervisory-Frames: These are control frames which control the
                         connection (RR, REJ, RNR, SABM,...).

If you selected the point "Only Info-Frames" and if you selected a fm- and
a to- call, you can also select the point "Keep Order".  Amicom will then
save the frames in the same order as the other station sees them himself
without the monitor headers (fm... to... ctrl I00...).  You can then save
for a specific station his entire QSO, e.g. for passive box checking!  This
cannot be ensured however since you don't take part in the QSO, you could
miss some frames and have some "holes".
If you want to save a text file, you can choose which character set
converter to use, [OK] will start the monitor save function and [CANCEL]
will stop it.


[32m[4m6.4 Convers[0m[31m

In packet radio could only exist connections between 2 different stations but
sometimes you would like to chat with more than 1 OM. The AX.25 protocol
does not allow this, because of this AmiCom has an "convers function".
Every channel, expect monitor, could be switched into convers mode with
pulldown menu, command or remote command. All received text on an convers
channel will be sent to all other channesl in convers mode, extended with
call and name of the station which sent this text.
The user of the terminal could also join the convers. He only must enter
his text on any channel which is switched into convers mode.
Charset could be changed in convers mode too using the remote command
"//char ...".


[32m[4m7. Explanations[0m[31m


[32m[4m7.1 Character set converter[0m[31m

A computer is only a machine which can handle numbers.  So the computer can
also display text characters, they are also saved as numbers: each
character has a specific number for it, A is 65, B is 66, etc...  This
serie was defined in the ASCII code (American Standard Code for Information
Interchange), but only for the characters from 0-127.  These first 128
codes contain all the control codes and characters for English.  For the
characters from 128-255, no standard has been set and so more than one is
used; each computer maker having it's own.  This range contains mostly less
used graphic characters and special national characters like the German
umlauts.
In the amateur radio community, all kinds of computers are used and so all
kinds of different character sets.  In order to avoid confusion and
problems, Amicom has two conversion tables which can be used before
transmitting and when receiving:

CONVERTER 0: The character set converter is set off, only the normal ANSI
             character set of the Amiga is used.  Before sending out data,
             only the linefeeds are changed to returns for PR usage.
CONVERTER 1: The German umlauts ) and most other national
             characters ...) as well as control characters
             (...) are converted to the IBM character set, as long as
             they are present in both (IBM and Amiga) character sets.
CONVERTER 2: Like 1, but the German umlauts ) are converted to the
             DIN character set (|{}~\[]).  These characters can then not be
             used any more!

The DIN character set is an old usage from the time when data transmission
were still using only 7 bits.  It is still used very much in the packet
radio transmissions but it's become absolutely useless since packet radio
uses 8 bit transmissions!  When using this character set, you have the
disadvantage of not being able to use the other characters (|{}~\[]) which
are still in use a lot.  This way, you get umlauts when there shouldn't be
any...

Warning:
When you are transferring ASCII coded binary data (e.g. with 7Plus, 7Bit,
UUE...) you absolutely have to turn the character set converter off!  A
such file which has gone through the character set converter is useless.


[32m[4m7.2 PCFont[0m[31m

Sometimes you may find in the mailboxes special drawings (maps, diagrams,
tables) which were drawn using the IBM block graphics characters.  To see
these correctly on the Amiga, there is the font "AmiCom.font" which consist
of an original IBM character set.
You can turn it on/off with the menu "Switch/PCFont" of the command "PCFONT
ON/OFF".  It's useless to leave it permanently since it doesn't work
together with the character set converter and only when receiving.


[32m[4m7.3 Explanations concerning the transmission format[0m[31m

I still always receive questions concerning PR transmissions, modem
drivers, etc...  For this reason, I'll explain here how the packet radio
transmissions work.

The transmission protocol used by packet radio has the name "AX.25".  This
is a radio amateur adaptation of the world famous X.25 protocol (AX.25 =
Amateur X.25).  The data to be transmitted is collected into blocks and
sent with some protocol information.  These blocks are also called frames
or packets, that's where the name "packet radio" comes from.  The
communication is controlled by special frames, e.g. connect request,
disconnect request, acknowledgment of the correctly received frames,
repeat demand by transmission errors, etc...

You can define 3 types of frames:

I-frames:  Info frames, they contain the actual information.
S-frames:  Supervisory frames, they control if the transmission is ok or not.
U-frames:  Unnumbered frames, they take control of special functions like
           connection, disconnection, etc... A special form of U frame is
           the UI (unnumbered information) which was implemented especially
           for amateur radio.  A UI frame contains information which doesn't
           correspond to a particular connection and so doesn't take part
           in the protocol.  You can send CQ calls or beacons for example
           with a UI frame.

U- and S- frames have the following structure:

+------+---------------+---------------+-----+------+
| Flag | Address field | Control block | FCS | Flag |
+------+---------------+---------------+-----+------+

I- and UI- frames have the following structure:

+------+---------------+---------------+-----+------+-----+------+
| Flag | Address field | Control block | PID | Info | FCS | Flag |
+------+---------------+---------------+-----+------+-----+------+

Description of the particular fields:

Flag           This special character is used to differentiate each
               frame.  This character never shows up in a frame.
Address field  The frames can be sorted to the different connections with
               this field.  The address field contains the source and
               destination call signs as well as up to 8 digipeaters.  Some
               unused bits in the address field are used for other functions
               like DAMA master recognition.  The address field can be made
               up of between 112 and 560 bits.
Control block  The control block defines what type of frame it is (S-, U-
               or I- frame).  It also contains the frame number so you can
               see if you lost a frame in the transmission.  The control
               block is 8 bits long.
PID            The Protocol ID is only used in I- and UI- frames.  It
               defines which layer 3 protocol is used.  By normal AX.25
               transmission (no layer 3) it is $F0.  The size of the PID
               field is 8 bits.
Info           The info field is only available by I- and UI- frames.  Here
               are the actual data, it can be made up of up to 256 bytes
               (PACLEN).
FCS            The Frame Check Sequence is a 16 bit error proof sum which
               is calculated over the whole frame.  With this FCS, you can
               check if there was a transmission error or not.  Frames with
               errors have to be repeated by the other station until they
               arrive correctly.

How is each frame sent out?

The transmission uses the NRZI coding.  The difference with the asynchronous
serial transmission which is used by the RS232 serial port of the Amiga is
the following:

With the asynchronous transmission, the data is transmitted byte by byte,
before the byte, there is a start and after the byte there is 1 or 2 stop
bits.  If you use 8 data bits, one stop bit and no parity (8N1), then the
transmission of the character %11010010 would look like this:

Low  (+12V)     #####       #####   ########   #####
                #   #       #   #   #      #   #   #
                #   #       #   #   #      #   #   #
     (0V)       # 0 # 1  1  # 0 # 1 # 0  0 # 1 # 0 # 1
                #   #       #   #   #      #   #   #
                #   #       #   #   #      #   #   #
High (-12V) ...##   #########   #####      #####   #####################...
                aaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbccccc

a = start bit
b = data bits
c = stop bit

Because each byte starts with a start bit (level change from high to low),
the receiver can synchronize to the data and can always check for the
polarity of the signal in the middle of a bit.  Other than that, you can be
sure to get the beginning of each byte thanks to this level change and
leave a big time between each bytes if you have to.

With the synchronized NRZI coding, the actual state of the line is not
important since a 0 bit will always consist of a level change as opposed to
a 1 bit which stays at the same level.  By packet radio at 1200 baud, the
signals are transformed into AF tones of 1200 and 2200 Hz, the character
%11010010 would look like this:

2200/1200 Hz             #########   #########
                         #       #   #       #
                         #       #   #       #
                   1   1 # 0   1 # 0 # 0   1 # 0
                         #       #   #       #
                         #       #   #       #
1200/2200 Hz  ...#########       #####       #####...

Start and stop bits don't exist any more, the data bits have to be
transmitted without any pause.  In order to be able to differentiate each
frame, they start and end with a special character, the flag (%0111110).
"Bitstuffing" is used so that this character cannot be found in a frame:
the sender adds a 0-bit after a serie of 5 1-bits and the receiver takes
away this 0-bit again after 5 1-bits.  This way, you also avoid having with
a long serie of 1-bits synchronization problems because there has been no
level change.  The receiver should check for the level at exactly the
middle of the bit.

As you can see, this form of coding is not very well adapted for the serial
port chip (UART) of the Amiga.  When using a simple modem on the serial
port (BayCom modem), we use a simple trick:  The hand shake lines are used
as data lines and controlled bit wise by the software.  For this reason, it
is very demanding on the computer for timing and only applicable for low
baud rates.  For higher baud rates, you would need a special serial port
chip like one from the Z85XX series, which is used for example in a TNC-2.


[32m[4m7.4 Explanations about the monitor contents[0m[31m

If you set the monitor on (M UISC), you'll see all the received and sent
frames displayed in the monitor window.  With the Hostmode (Host.drv), the
display will depend on your TNC firmware.  It is usually the same as with
the "BayCom.drv" and the "KISS.drv", whose display is as following:

fm <source call> to <destination call> [via <digi calls>] ctl...
... <control block> [pid <PID>] [[DAMA]]

[...]              This display is optional.
<source call>      The call sign of the sender of the frame with eventually
                   a SSID (e.g. HB9VBC-1).
<destination call> The call sign of the receiving station of the frame with
                   eventually a SSID.
<digi calls>       Here you can have up to 8 digipeater call signs.  If a
                   frame was sent from a digipeater, it will have a start
                   (HB9IAP*).  If there is no star, the frame was sent from
                   the <source call>.
<control block>    The control block of a frame is decoded and shown here
                   as a keyword, the explanation follows.
<PID>              The Protocol ID is shown here by I- and UI- frames in
                   hexadecimal, e.g. "F0".
[DAMA]             If the transmission came from a DAMA master, "[DAMA]" will
                   be shown at the end of the line.


Keywords used for the representation of the control block:

Iab      An info frame.  The contents of the information is shown after the
         monitor headline (fm...).
UI       An unnumbered info (UI- frame, Unproto transmission).  The contents
         of the information is shown after the monitor headline (fm...).
RRa      Reception acknowledgment.  The station is ready to receive more
         data.
RNRa     Reception acknowledgment.  The station is not ready to receive more
         data.
REJa     Reject frame.  A frame was lost in the transmission and has to be
         sent again.
SABM     "Set asynchronous balanced mode", a connection request.
DISC     "Disconnect", a disconnection request.
DM       "Disconnected mode", this connection does not exist or is
         interrupted.
UA       "Unnumbered acknowledge", acknowledges SABM or DISC.
FRMRc    "Frame reject", a serious protocol error.  The 6 digits following
         the FRMR describes the error more thoroughly.
?cch     An undefined control block.

a        The number of the next awaited frame (reception frame counter).
b        The number of this frame (transmission frame counter).
c        Hexadecimal number.

After the control block, you can see one of the following characters:

<nothing> A frame in protocol version 1 (not used anymore).
!         A frame in protocol version 1 with P/F bit set.
v         An answer frame in protocol version 2.
-         An answer frame in protocol version 2 with P/F bit set (Final).
^         A command frame in protocol version 2.
+         A command frame in protocol version 2 with P/F bit set (Poll).


[32m[4m7.5 For further questions[0m[31m

If you have any other questions or problems, please contact one of the
following radio amateurs:

Germany:     DL3MGQ @ DB0KCP.#BAY.DEU.EU    (the author, in German if
                                             possible)
Switzerland: HB9VBC @ HB9IAP.SROM.CHE.EU    (the translator, in English,
                                             French or German)
France:      F6HTW  @ F1EBV.FMLR.FRA.EU     (French)
England:     G6RIL  @ GB7SYP.#19.GBR.EU     (English)
Australia:   VK5STR @ VK5PO.#BVL.#SA.AUS.OC (English)

[32m------------------------------------------------------------------------------[31m

That's it for the documentation to Amicom Version 2.3.  The author,
Gerhard, DL3MGQ @ DB0KCP.#BAY.DEU.EU, wishes you a lot of fun with it.
