home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Otherware
/
Otherware_1_SB_Development.iso
/
amiga
/
comms
/
comprgs
/
t22bi1.lha
/
term.doc
< prev
next >
Wrap
Text File
|
1992-05-14
|
105KB
|
2,041 lines
=============================== term 2.2a =================================
===========================================================================
A Gift-Ware telecommunications program written by
Olaf Barthel, ⌐ copyright 1990-92 by Olaf Barthel & MXM,
All rights reserved.
No guarantee of any kind is given that the program(s) described in this
document are 100% reliable. You are using this material on your own risk.
========================== Important information ==========================
===========================================================================
New names for configuration files
---------------------------------
For compliance with existing design guidelines, the names of
configuration files and the preferred storage directory have changed.
`term' will now store and read configuration files in the `TERM:config'
drawer (well, unless there is a `TERMPATH' variable which lead to a
different path... see below). If no `TERM:' device is available, `term'
will assign `TERM:' to the directory it was started from. If no
`TERM:config' drawer is available, it will be created.
The (old) new file names are:
Preferences.term -> term_preferences.iff
Phonebook.term -> term_phonebook.iff
Hotkeys.term -> term_hotkeys.iff
Speech.term -> term_speech.iff
Macros.term -> term_macros.iff
Fast!Macros.term -> term_fastmacros.iff
The names introduced in v2.0 have changed to:
term_preferences.iff -> term.prefs
term_phonebook.iff -> phonebook.prefs
term_hotkeys.iff -> hotkeys.prefs
term_speech.iff -> speech.prefs
term_macros.iff -> macros.prefs
term_fastmacros.iff -> fastmacros.prefs
The old names are still supported.
=============================== Background ================================
===========================================================================
This program is a product of anger and despair; I was unable to find a
telecommunications program to suit my personal needs -- neither in the
commercial area, nor in the public-domain.
Most programs had a lot of extras but lacked other more important,
perhaps more sensible features (just to take an example: in revision 2.20c
and after four years of constant development `Handshake'ástill fails to use
the current keymap settings and also strips bit 7 when displaying
characters - sorry Eric, that's why I never registered!).
I have hesitated for a long time before starting my first attempt at
writing my very own telecommunications program. When Kickstart 2.x was
about to become widely available I took the opportunity to create `term'
always trying to use the new OS routines wherever possible. While this
started to be quite a difficult task it also was a lot of fun (imagine
Columbus wrecking his fleat four times on his journey to the West Indies
due to unexpected leakages in all vessels and sudden changes in the ships'
sailing manuals -- that's how I felt!).
As far as computer-telecommunications are concerned, Germany appears to
be a developing country. This is partly due to the Deutsche Bundespost,
the federal mail/phone company whose telecommunications monopoly used to be
protected by federal law. Until 1989 you would risk a heavy penalty if
using a non-registered modem or telephone instead of the
Bundespost-supplied hardware. So, if you have any complaints, or miss a
few extremely important features in `term', don't boo and hiss, I am not as
long in the telecomm business as you are (I have yet seen only a single DEC
VT-101 from afar!). Tell me what you need and I will try to add it in the
next revision.
This project was started at December 24 1990 and completed by January 25
1991. I used the following tools to create `term': SAS/C 5.10b, WShell,
CygnusEd Professional Release 2 & ARexx.
My thanks go to the following people for their invaluable help and
assistance: Holger Lubitz, Peter Fischer, Christoph Teuber, Garry
Glendown, Oliver Wagner, Jⁿrgen Otte, Germar Morgenthaler, Matthias Zepf,
Markus Stoll, Ralf Thanner, Martin Berndt, Ueli Kaufmann, Andreas
Kirchwitz, Veith Sch÷rgenhummer, Michael Vaeth, Roby Leemann & AUGS,
Thorsten Seidel, Till `Dill-Prince' Prinzler, Volker Ulle & the Aquila
Sysop Team, Marc-Christian Schr÷er, Udo Wolt, Michael Hohmann, Henning
Hucke, Stefan Becker, Christopher Wichura and to all those who supplied
libraries & control sequence tables.
Special thanks go to John Burton of Papua New Guinea who revised and
rewrote certain parts of the program, in particular the terminal emulation
routines.
The xpr-libraries were created by Kenneth Osterberg & Markus Pietz
(jmodem), Stephen Walton (kermit), Jack Rouse (quickb), Marc Boucher
(xmodem), Ueli Kaufmann (ascii, ymodem & vms) and Rick Huebner & William M.
Perkins (zmodem).
The xpr-standard was created by Willy Langeveld, I borrowed a single
routine (ahtoi) from Matthew Dillon's `DMouse' program, the quicksort
routine (QuickSort.asm) was written by David Jones, the touch-tone dialing
routines are based on the article `DTMF - A Program for Generating
Touch-Tone Signals' by Adam Levin, the touch tone period and cycle values
are ⌐ Copyright 1989 by Commodore-Amiga, Inc.
The current implementation of the external terminal emulation module
interface was developed by Ueli Kaufmann, who also wrote the external
terminal emulation libraries supplied with `term'. Without the invaluable
help of Martin Berndt the library interface would probably not be working
at all.
Special thanks go to Leo Schwab who discovered means to use interleaved
bitmaps in a system-integrated manner.
Since time did not permit me to translate the full original German
documentation into English, I had asked the Z-Net Amiga community for help.
As a result this document was translated by three different authors (in
order of translation): me, Marc Schr÷er and Henning Hucke. Garry Glendown
took care of the termRexx documentation -- thanks to all of you!
============================= The source code =============================
===========================================================================
Since there are still only very few well-documented examples (or general
programming examples) for Kickstart 2.x I have decided to include the full
`C' source code with the `term' distribution.
The source code is _not_ intended for commercial use. If you are about
to include portions in commercial programs you will need to ask me for
permission. Still you may use parts of the source code for non-commercial
software development without my consent.
I sincerely hope that the release of the full `term' source code will
give Kickstart 2.x a better start (I've overcome quite a lot of obstacles)
so that more programs to use the new OS features will be available soon.
============================ The distribution =============================
===========================================================================
`term' may be included with commercial programs as long as no money is made
by including it in the distribution (this also applies to inclusion in
AmigaDOS Enhancer kits, on Workbench/Extras disks or A3x00 hard disk
drives).
You _must_not_ make any money by distributing `term'. A small copy fee
for data media (5$ US maximum) or the inclusion of `term' in Public-Domain
collections such as Fred Fish's Amiga Library of Freely Distributable
Software is permitted though.
============================== Using `term' ===============================
===========================================================================
The program `term' and the data received/sent by it must not be used for
the following purposes:
1) The construction, development, production or testing of weapons or
weapon systems of any kind.
2) The construction, development, production or use of plants/installations
which include the processing of radioactive/fissionable material.
3) The training of persons to deal with the abovesaid actions.
===================== Updates & new program revision ======================
===========================================================================
Whenever a new release of `term' becomes available I will try to make it
known in the telecommunications networks. To order a copy send a self
addressed envelope, an international mail reply coupon (coupon-rΘponse
international) and a 3╜" disk to the author.
The most current `term' release will be available through ftp from
ftp.informatik.uni-oldenburg.de (134.106.1.9), look into the
`/pub/amiga/term' directory. I will also try to make sure that the most
current `term' release will be available trough ftp from
ab20.larc.nasa.gov (wuarchive.wustl.edu in the near future).
============================ Operating `term' =============================
===========================================================================
`term' can be controlled both by mouse and keyboard. With two minor
exceptions each operation requiring mouse control can also be executed
using keyboard shortcuts.
The program can be started both from Workbench and from Shell.
Kickstart 2.x is required to run `term'. The program will refuse to work
if executed under control of Kickstart 1.3 and below!
At least Kickstart 2.04 (revision 37.175) and Workbench 2.04 (revision
37.67) are required to execute `term' successfully. Earlier developer
Kickstart revisions or the Kickstart release installed on the older A3000
models will probably not work (try it if you want -- but don't complain!).
If called from Shell `term' will detach itself immediately allowing the
Shell window to be closed afterwards. This effect can be avoided if
`KEEPIO' is entered in the command line (`term keepio').
Usually, running `term'átwice will cause the screen of the other program
to be popped to the front instead of creating a second `term' process. To
avoid this effect, enter `DONTPOP' as a calling parameter (e.g. `term
dontpop'). If called from Workbench, each program will run as a separate
process.
============================ Keyboard control =============================
===========================================================================
Starting with revision 2.2 almost any action can be executed both by mouse
and by keyboard. Each element of the user interface in whose title an
underlined character an underlined character can be found can be controlled
or activated by pressing the corresponding key. If the object in question
is a list view or scroll bar, pressing the key along with a shift key will
scroll the list/bar back and forth. Pressing the `Tab' key will activate
the first string gadget on the screen.
=============================== The display ===============================
===========================================================================
The `term' main screen always opens to the full text-overscan size (which
can be set using the `Overscan' tool in the `Prefs' drawer).
At the bottom of the screen a small window displays a few basic
parameters. These are:
Status ........ The current program operating status. This includes
`Ready', `Holding'á(Control+S was pressed), `Dialing' (the
dialing function is at work), `Upload' (data is being
sent), `Download' (data is being received), `Breaking' (a
break signal is transmitted across the serial line) and
`Hanging up' (connection is being cancelled).
Font .......... The currently active screen font used for text/graphics
rendering.
Protocol ...... The currently set data transfer protocol.
Emulation ..... The currently active terminal emulation mode.
Baud Rate ..... The data transfer rate in bits per second.
Parameters .... The current serial parameters (Data bits-Parity-Stop bits).
Time .......... The current time of day.
Online ........ The time elapsed after a connection was successfully
established. This counter will be stopped as soon as the
connection is cancelled (e.g. by hanging up) and is reset
to 00:00:00 as soon as a new connection is made.
Every five seconds the time display will change to a
calling fee display and the other way round.
The screen itself is opened as a public screen (called `TERM') which is
available to other programs for their purposes. If more than one `term'
process is running, the public screen name will change according to the
number of the program (i.e. the first `term' to be started will call the
scren `TERM', the second one will call it `TERM1', the third one `TERM2',
etc.). The screen title bar will also display the name of the public
screen.
================================ The menus ================================
===========================================================================
For each requester and input window there exists a set of menu items to
execute the commands associated with the buttons, dials and gauges in the
requester/window. Press to right mouse button to have a look at the
commands and their shortcuts.
The following text is to describe the menu items available in the `term'
main menu.
1. Project
----------
This menu contains functions to load and to save program configurations and
to quit the program.
Open Settings.................. Loads the program configuration from a file
to be selected.
Save Settings.................. Saves the current program configuration
under the configuration file name last
entered.
Save Settings As............... Saves the current program configuration to
a file to be selected.
Print Screen................... Sends the current contents of the `term'
screen to the printer. This is not a
graphics hardcopy, only the ASCII
characters are printed.
Iconify........................ Closes all screens and windows `term' has
currently open, resets and releases the
serial driver and puts an icon into the
Workbench window. Double-clicking this
icon will cause `term' to wake up and to
return the state is was in before
iconification took place.
Note: while `term' is iconified, all
incoming synchronous ARexx-commands will be
queued and the corresponding ARexx programs
will appear to `hang'. As soon as `term'
is `awake' again pending commands will be
processed again.
About.......................... Shows some information on the program.
Quit........................... Terminates the program, hold down a `shift'
key to quit immediately, otherwise you will
be prompted to confirm your decision.
After selecting the `Quit' menu item the program may take a few seconds
to exit since the contents of the `log book' are freed first.
2. Utilities
------------
This menu contains functions which are to make your life a bit easier.
AmigaDOS commands as well as ARexx script files may be started from here.
As a special gift for `Snap' users, the contents of the clipboard may be
fed into the input stream.
Set Console Window............. Whenever an AmigaDOS/ARexx command is
executed an output window is opened. This
menu item will bring up a requester
allowing you to edit the size and position
of the window to be opened (consult your
AmigaDOS manual for a description of the
window position string). If you do not
want the window to appear, simply enter
`NIL:'.
Execute AmigaDOS Command....... Enter the command you want to execute and
its command line arguments here.
Execute ARexx Command.......... This function calls the ARexx server to
execute a script file. If the first input
character is a ` or " the input will be
considered as a small program in a line.
Note that this function will not be
available if the ARexx server isn't
running.
The ARexx command set supported by
`term' is described in the file
`termRexx.doc'.
Paste Clipboard Contents....... The current contents of the clipboard will
be fed into the input stream (max. 255
characters). Use the `log book' screen to
cut strings and characters to the clipboard
(`Snap' may also be used for this purpose).
Packet Window.................. Opens/closes an input window in which a
single line of characters to be transferred
across the serial line can be entered.
More on this feature is explained under
`The packet window' below.
Toggle Fast! Macro Panel....... Opens or closes the so-called fast! macro
panel. The role of the fast! macros will
be discussed later in this text.
The menu functions `Execute AmigaDOS Command' and `Execute ARexx
Command' allow you to select the name of the file to be executed by
clicking on the `Load File' gadget.
3. Capture & Buffer
-------------------
The menu items in this menu offer functions to load/save, to display and to
capture incoming text/graphics data.
Clear Buffer................... Clears the contents of the `log book'. Any
text will be discarded and _cannot_ be
recovered. Capture files are not affected
by this command.
Display Buffer................. Opens the `log book' screen. If a shift
key is held down when this menu item is
selected, instead of the `log book' screen
a small window will be opened on the main
screen. Use the cursor keys to move around
in the buffer and mouse to copy & paste
text around.
Close Buffer................... Closes the `log book' screen but does not
free the contents.
If a shift key is held down when this
menu item is selected, the small `log book'
window will be closed.
Freeze Buffer.................. This menu entry will, if enabled, stop the
`log book' from filling up with new text.
Load Buffer.................... Loads the contents of the `log book' from a
file. If there are still text lines in the
`log book' a requester will appear giving
you the choice to discard the old data,
append the new data, or to cancel the
action.
Save Buffer.................... Saves the contents of the `log book' to a
file. You will be notified if the file to
save to exists already (you may discard the
old file, append the new data or cancel the
action).
Capture To Disk................ Toggles file capture, options are the same
as with `Save Buffer'.
Capture To Printer............. Toggles printer capture.
More detailed information on the `log book' will be given later in this
document.
4. Transfer
-----------
Since data transfer cannot always be done by keyboard and console, `term'
supports a number of transfer protocols implemented as xpr-libraries. The
`term' distribution includes xprascii.library, xprjmodem.library,
xprkermit.library, xprquickb.library, xprvms.library, xprxmodem.library,
xprymodem.library and xprzmodem.library.
Upload Text.................... Sends a file/files to the remote receiver
using the current transfer protocol. If
possible this command will `ask' the
transfer protocol to transmit the file(s)
in text mode (whatever that means) which
may include CR/LF substitution and other
gimmicks. Consult the library
documentation to find out if your favourite
transfer library supports text mode.
Download Text.................. Request a file/files using the current
transfer protocol. Refer to `Upload Text'
for features/options of this mode.
Upload ASCII................... This is a pure ASCII-file upload
implemented through xprascii.library. It
was added to allow poor BBS programs to
receive text files (especially Paragon
doesn't seem to like ZModem text file
upload).
Download ASCII................. This is a pure ASCII-file download
implemented through xprascii.library.
Refer to `Upload ASCII' for
features/options of this mode.
Upload File(s)................. Send a file/files to the remote receiver
using the current transfer protocol. True
batch upload is supported both through
wildcard expressions ("#?.txt" will send
all files whose names end with `.txt') or
through multiple selection (hold down the
shift key and click the names of the files
you wish to transmit). Refer to the
documentation of your favourite transfer
library to find out if batch file transfer
is supported.
Download File(s)............... Receive a file/files using the current
transfer protocol. If the protocol does
not support batch download you are required
to enter the name of the file to be
received. Files which remain empty after
the transfer are deleted automatically.
Edit & Transfer File........... Invokes the currently selected (see `Paths'
settings menu below) text editor on a
file to be selected using a file requester.
`term' will block and wait until the
editor has returned.
After the editor has returned, the user
will be asked whether the file edited is to
be transferred as plain ASCII or via text
upload.
Transfer Options............... The transfer options can be changed with
this command. If possible a control panel
will pop up which allows you to change the
current parameters by mouse/keyboard. If
the selected transfer protocol does not
provide these option hooks, a simple string
requester will prompt for input. Consult
the documentation of your favourite
transfer protocol for legal options and the
values to which they can be set.
Transfer Protocol.............. This command allows you to specify the
transfer protocol library to be employed
for up-/downloads.
The transfer routines open an information window in which a number of
transfer parameters are displayed. Additionally, the file transfer can be
aborted by clicking either of two buttons (`Abort Entire Transfer' and
`Skip Current File'). Note: for most transfer protocols both buttons
(abort and skip) have the same effect. Consult the documentation if
different levels of abort are supported by your favourite transfer
protocol.
The following information is displayed in the transfer window:
Protocol............... The name of the transfer protocol currently
running.
File................... The name of the file being transferred.
File Size.............. If available, the size of the file.
Space Left............. The space left on the destination device. `term'
will try to calculate the number of blocks the file
being received will take on the destination device
and display a warning the file in question is
probably not going to fit.
Caution: `term' only makes a very propable
guess which may or may not come true. The guess
may be wrong if the destination device happens to
be a kind of ram-disk which shrinks and expands as
memory requirements come and go. Such devices are
usually 100% full. In most other cases you will
probably be able to make room for the file being
received before any space problem turns up.
Bytes Transferred...... Number of bytes transferred yet.
Blocks Transferred..... Number of data blocks transferred yet.
Block Check Type....... The method employed to verify the integrity of the
data blocks being transferred (this usually is a
form of cyclic redundancy checking).
Block Size............. Size of a data block in bytes.
Estimated Time......... The time the transfer protocol expects the transfer
will take.
Elapsed Time........... The time elapsed during transfer.
Message................ A message of the transfer protocol addressed to the
user.
Information............ A list to contain the last error occured or the
name of the last file transferred.
Number Of Errors....... The number of errors occured during file transfer.
Number Of Timeouts..... The number of timeouts occured during file
transfer.
Packet Type............ A short description of the data block type employed
for data transfer.
Packet Delay........... The delay between two packets being sent.
Characters/Second...... The effective transfer speed in characters per
second.
Character Delay........ The delay between two character being sent.
If the currently active transfer protocol provides the necessary
information, two bars will be displayed at the bottom of the transfer
window indicating the amount of transferred data and of time to go before
the transfer is finished.
`term' knows about the ZModem data-inquire sequence the remote receiver
issues when expecting files. If recognized, this sequence will cause
`term' to display a requester asking for the type of data upload: text or
binary. One could call this feature `auto upload'. You also have the
opportunity to select `Abort' which will transfer the ZModem abort sequence
or to click on the `Ignore' gadget which will plainly ignore the fact that
the ZModem inquiry sequence has been recognized. Note that the ZModem
abort sequence will also be transferred if you select the `Cancel' button
in the file requester to appear after selecting text- or binary-upload.
NOTE: some transfer protocols will allow you to enter a default receive
path the library is supposed to create files it receives in. On request
(see the `Settings/Miscellaneous' menu) `term' will ignore these settings
and use the settings to be changed in the `Settings/Paths' menu instead.
Each file that is received and which does not remain empty is examined
briefly to find out about the file type. If recognized successfully, a
small comment indicating the file type will be attached to the file.
`term' currently knows about the following 72 different file types:
Workbench icon file Windows bitmap image file
ASCII text file JFIF image file
`C' source code file IFF-ILBM image file
`C' header file IFF-ANIM animation file
Assembly language source code file IFF-8SVX sound file
Assembly language include file IFF-SMUS score file
Modula-2/Oberon source code file IFF-FTXT text file
ARexx script file IFF-PREF preferences file
Basic source code IFF-TERM `term' configuration file
AmigaGuide document file IFF file
TeX document file AmigaVision flow file
Metafont font file Imploder data output file
Generic font file PowerPacker data output file
Packed TeX font file LhPak self extracting archive**
TeX device independent output file Arc archive file
PasTeX font library file ARJ archive file
Manx 3.x object code file Compressed file*
Manx 5.x object code file Freeze output file*
Manx 3.x library file CPIO archive file*
Manx 5.x library file MacCompress archive file▓
AmigaDOS object code file Compact archive file▓
AmigaDOS object code library file Diamond archive file▓
AmigaDOS executable file LhArc archive file
System library file LHA archive file
System device file Zoo archive file
AmigaDOS filing system handler file PKZip archive file
AmigaDOS handler file Stuff It! archive file▓
GIF image file Pack It! archive file▓
Degas image file╣ DMS disk archive file
MacPaint image file▓ Warp disk archive file
SuperPaint image file▓ Zoom disk archive file
Macintosh PICT image file▓ SPARC object code
Sun raster image file│ SPARC executable
Postscript file MS-DOS executable
PCX image file Atari-ST/TT executable
TIFF image file Macintosh executable
╣ Atari-ST/TT-specific (Degas Elite)
▓ Macintosh-specific
│ SunOS-specific
* Unix-specific
** Not yet ready for release
5. Phone
--------
The commands in this menu deal with controlling the serial line and the
modem.
Phonebook...................... The phonebook is one of the most powerful
and complex functions of `term' and will be
described later in this document.
Dial........................... To dial a single phone number select this
menu item. The phone number entered will
be passed to the dialing routine.
Redial......................... Dialing list entries the dialing routine
was unable to establish a connection to are
again passed to the dialer.
Play Number.................... Outputs a telephone number using touch-tone
dial coding on the Amiga audio hardware.
Send Break..................... Sends a `break' signal across the serial
line.
Hang Up........................ Tells the modem to hang up the serial line.
Flush receive buffer........... Tells the serial driver to drop its input
buffer contents and resets the state of the
internal serial buffers.
Release Serial Device.......... The serial driver is released for other
programs to use it. A requester will
appear which allows you to reopen the
serial driver or to quit `term'.
If the serial driver has been released
by the ARexx interface and has not been
reopened yet, this menu item will do it.
6. Display
----------
The items in this menu deal with the `term' main screen and the terminal
emulation.
Clear Screen................... Clears the whole `term'áscreen and moves
the cursor to the top left home position.
Reset Styles................... Resets all character style attributes
(bold, blinking, inverse video, underlined,
etc.) and sets the text colour to the
default pen.
Reset Font..................... Will change the screen font back to the
default screen font (IBM/topaz).
Reset Terminal................. Use this menu item to reset the state of
the entire terminal emulation.
Save Screen (IFF-ILBM)......... Saves the contents of the `term' main
screen to a file. The resulting image file
can be read by any program to support
IFF-ILBM images.
Save Screen (ASCII)............ Saves the current contents of the screen to
a file; this does not include any graphics,
only the ASCII characters are saved.
7. Settings
-----------
`term' is configured using the `Settings' menu. The following text will
describe the functions associated with each menu item:
a) Serial Settings
------------------
This is where the serial parameters may be changed.
Baud Rate.............. Transfer speed in bits per second.
Bits/Char.............. Number of bits per transferred character (7 / 8).
Parity................. Serial parity (none, odd, even, mark, space).
Stop Bits.............. Number of stop bits (1 / 2).
Handshaking............ Serial handshaking mode (XON/XOFF, RTS/CTS, none).
Duplex................. Determines whether characters are echoed back to
the terminal screen or not (full, half = local
echo).
Buffer Size............ The number to be specified here allows to set the
serial driver I/O buffer size. Note that every
number you enter here will result in `term' and the
serial driver allocating twice the buffer size
(this is only a word of warning for those among us
who prefer buffer sizes of 256K and up).
Shared Access.......... Requested by many (two to be accurate) users, this
switch allows you to run the serial driver in
shared access mode. Not all driver types will
allow this to happen.
High-Speed Mode........ Activates a special mode of the serial driver which
is to skip a couple of internal parity and stop
bits checks resulting in higher data throughput
rate. Note that enabling this feature will only
make sense if used on two directly connected
computers.
Break Length........... Length of the break signal given in microseconds.
Serial Device.......... The name of the serial driver to be used by `term'.
This is usually `serial.device' (`modem?.device'
for the internal Supra modem, `sxbios.device' for
ASDG's serial IO card).
Device Unit Number..... The device unit number of the serial driver
selected above. This usually left 0 but can also
be used to address multiple serial IO ports.
Use.................... Accept the current settings.
Cancel................. Don't use the current settings.
Most modems will not recognize a sudden change in the baud rate. Type
`AT<RETURN>' to make the change known.
If `RTS/CTS (DSR)' handshaking is selected, `term' will check to see if
the `Data set ready' line happens to be high active. If not, it will
default back to software handshaking (xON/xOFF). The `RTS/CTS' handshaking
mode will ignore the presence or absence of the `DSR' signal.
`term' will take advantage of Christopher Whichura's OwnDevUnit.library
if installed in your system, allowing controlled access to the serial
driver's resources.
b) Modem Settings
-----------------
This is where modem control strings and other related parameters are
configured.
Modem Init String...... The string to send to the modem after successful
program initialization. This string is optional
and does not need to be entered.
The dialing routine will use the initialization
string entered here before dialing a phone number.
Modem Exit String...... The string to be sent to the modem shortly before
the program terminates. Just like the modem init
string this string is optional and does not need to
be entered.
The dialing routine will use the initialization
string entered here before dialing the next
telephone number.
Modem Hangup String.... The string to be sent to the modem when asked to
hang up the line. This string is not optional, it
has to be present for the program to work properly.
Dial Prefix............ The string to be used to prefix each dialing
command. This is usually a variant of `ATDP' or
`ATDT'.
Answerback Message..... The string to send across the serial line whenever
an `ENQ' character is received. The string is - as
usual - a command sequence.
Redial Delay........... The time to wait after walking through the whole
dialing list without making any successful
connection before another attempt is started.
Number Of Dial Retries. The number of times the dialer walks through the
dialing list trying to make a successful connection
before giving up.
Dial Timeout........... The time to wait for a successful connection during
dialing. After this time has elapsed, the dialer
will skip to the next entry in the list.
Connect Auto-Capture... If enabled will automatically open a capture file
after successfully making a connection. Any other
already open capture file will be closed before
proceeding.
Connect Auto-Baud...... Most modems echo the baud rate upon successful
connection. If enabled the baud rate will be read
and set for the serial driver.
Log Actions............ If enabled will write a protocol of each program
action (uploads, downloads, dial attempts, etc.) to
a file. Each action is listed along with time and
date. Carrier-lost-events will also note the
approximate cost of the call.
Check Carrier.......... `term' will recognize the `NO CARRIER' message a
modem emits when the carrier line signal drops back
to low. For maximum safety, `term' will also check
the carrier signal line after receiving the `NO
CARRIER' message if this switch is enabled. This
is to make sure that no accidentally appearing
string causes confusion.
Drop DTR On Hangup..... Some modems will track the `data terminal ready'
line order to make sure that the terminal program
is listening, once the line goes back to low
potential, these modems will drop the line and hang
up. Use this button to enable this feature.
Pass xON/xOFF through.. If this switch is enabled, `term' will pass
the xON/xOFF characters through to the
modem rather than processing them on its
own.
No Carrier String...... The string the modem emits if the data carrier is
lost. The program uses this to determine the
length of the connection and to calculate the how
much the user is to pay for it.
Connect String......... The string the modem emits after detecting a
carrier signal. `term' uses this input to
determine successful telephone connection, to
reconfigure itself and to start the online timer.
No Dialtone String..... The string to be returned by the modem in case it
does not encounter any dialing tone on the phone
line.
Voice String........... The string `term' is expected to receive if the
modem detects a voice call. If in dialing mode,
`term' will abort the process. The user will in
any case be notified of the event.
Ring String............ The string the modem emits if it receives a call,
same effects as with the `Voice String'.
Busy String............ The string the modem returns if the number which
has just been dialed is busy.
Use.................... Use the current settings.
Cancel................. Keep original settings.
c) Screen Settings
------------------
This menu-item will bring up a window to change all parameters of the main
screen.
Display Modes........... All graphic-modes available for the main screen are
displayed here. If you wish to use the `Super
Hires', the `Productivity' mode or the A2024-modes,
you will have to put up with some restrictions:
there are only screens with a depth of two (Amiga
colourmodes) and if in A2024-mode, different
resolutions cannot be mixed with each other any
longer.
Annotation: the A2024-modes should only be used
in connection with an A2024/Hedley-monitor.
Otherwise the screen may `crash' and working with
`term' will not be possible any longer.
Edit Screen Palette..... These gadgets are used to select a colour of the
screen palette that is to to be changed.
Red/Green/Blue.......... These proportional-gadgets are used to modify the
portions of red, green or blue.
Make Screen Public...... As dealt with before, the `term' mainscreen is
opened as `public'. With this gadget the user may
define if other applications are allowed to open up
their windows on the `term' screen.
`Shanghai' Windows...... This item, that is only displayed if `Make Screen
Public' has been selected, is closely related to
the function before. If active, all windows that
will normally be displayed on the Workbench screen
will open on the `term' main screen.
Use..................... Use the current settings.
Cancel.................. Keep the old settings.
It has to be remarked that all the `new' display-modes (Super-Hires,
Productivity, etc.) restrict the number of colours. Instead of 16-bit
portions for red, green and blue, only 2-bit portions are used, which leads
to a maximum width of the palette of at all 64 (4 ╫ 4 ╫ 4) colours. This
is no `feature' of `term' but a hardware restriction.
d) Terminal Settings
--------------------
All settings that may be done here determine the behaviour of the terminal
itself, i.e. how command sequences are interpreted and displayed.
Capture Filter......... If selected, command sequences are filtered out
before the incoming characters are captured to disk
or printer.
Destructive BS......... Determines if the `Backspace' code, which will
delete the character left from the cursor, only
moves the cursor to the left or removes the
character from the screen.
Swap DEL <-> BS........ For the hard core VT100 user: if this switch is
enabled the roles of the backspace key and the
delete key are reversed. Note: this also applies
to sequences such as Control+H which will produce a
delete character instead of a backspace character.
Strip Bit 8............ For those guys & gals who need it: if this switch
is effect each character received or transmitted by
`term' will have its upmost bit cleared.
Stop Blinking.......... If selected the VT100-blink option is suppressed.
If running in eight colour mode, `term' will open
its screen only three bitplanes deep instead of
four bitplanes deep.
Screen Title........... Requested by american users who obviously were
Status Line............ unable to produce satisfying results when playing
with the Overscan preferences tool, these two
switches allow you to disable screen title and
status line information, thus increasing the number
of lines available on the terminal screen.
Faster Layout.......... Activating this switch will slow down display
updates and window management. Oh well, not
always, there may be a speed increase with some
configurations, such as with external emulations
activated or when using more than four colours on
the screen.
I suggest to experiment with this button before
actually using it.
Send CR................ This gadget determines the sequence that is sent to
the remote if a carriage-return is issued.
As CR = without any change.
As CR+LF = carriage-return and linefeed
Ignore = suppress any carriage-return
Send LF................ This gadget determines the sequence that is sent to
the remote if a linefeed is issued.
As LF = without any change.
As LF+CR = linefeed and carriage-return.
Ignore = suppress any linefeed.
Receive CR............. These two buttons have largely the same effect as
Receive LF............. the `Send xx' buttons, they are different in that
they affect the incoming data rather than the data
transmitted.
Bell................... This is where you select the action(s) `term' is to
take whenever a `bell' character turns up in the
data stream:
- Visual
The screen will flash.
- Audible
An audible signal will be generated.
- Visual & Audible
A combination of both effects.
- Ignore
Nothing will happen.
- System default
The system beep routines will be used.
Display Size........... Usually, the number of characters to be displayed
on screen is determined by the physical dimensions
of the main screen. But now and then a BBS
requires the screen to be of a fixed size, here is
what this switch allows you to set it to:
- Screen Size
Will fit as many characters on the screen as the
physical screen size allows.
- 80 ╫ 24 (VT100)
As required by VT100, this will limit the number
of characters to be displayed on screen to the
typical 80 ╫ 24 rectangle.
- 80 ╫ 25 (ANSI)
Similar to VT100, ANSI uses a fixed screen width
but supports one more display line than VT100.
In each case, using this switch will not change the
physical dimensions of the main screen but the
limits in which the cursor can be moved.
Colour................. This gadget determines the colour-mode the terminal
emulation is going to use. Until now, three modes
have been implemented:
- Amiga
Four colours and blinking.
- 8 Colours (Blink)
Eight colours and blinking.
- 16 Colours
Sixteen colours, as the EGA-palette.
- Mono
Monochrome, two colours.
Emulation.............. At this point the user may select the terminal
emulation. First there is a solid VT102/VT220/ANSI
emulation which supports all common command-
sequences, then there is a so called `Atomic'
emulation which does only support the very basic
command-sequences (CR, LF, Backspace, etc.), all
VT102- and ANSI-command-sequences are suppressed,
and, last but not least, a `TTY'-emulation which
does not suppress all command-sequences, as
`Atomic' does, but rather echoes them to the
screen.
In addition to the builtin terminal emulation,
`term' also supports external terminal emulations.
To select one, set the terminal emulation type to
`External' and enter the name of the emulation in
the string gadget below (the file may alternatively
selected by hitting the `Select New Emulation'
button). In case anything goes wrong loading or
initializing the terminal emulation module, `term'
will switch back to the builtin `ANSI/VT'
emulation.
Emu. Name.............. The name of an external terminal emulation library
to be used by `term' instead of the builtin
emulation code.
Select New Emulation... Press this button to invoke a file requester
allowing you to select the external terminal
emulation file to be used by term instead of the
builtin terminal emulation.
Font................... `term' makes use of two fonts to display text and
graphics. `Topaz' is the system-integrated
standard font, `IBM' is a font similar to the
Standard IBM PC font which also contains
graphics-symbols. If `IBM' is selected input from
the console is automatically translated into the
corresponding `IBM' characters.
Note that the settings affected by this switch
will be ignored if an external emulation is in
effect.
KeyMap Name............ If your installation requires that `term' is to use
a custom keymap layout, enter the keymap file name
here.
Note that at the time of this writing the
program will not support custom keymap layouts with
the `Packet Window' due to operating system
limitations.
Use.................... Use the current settings.
Cancel................. Keep the old settings.
e) Commands
-----------
Here you will find entries for three command sequences which serve three
functions:
Startup/Login Macro.... At the beginning of every session with `term' and
after a connection has been established by the
dialing routine a command-sequence is executed
which may execute command-files or perform a
automatical `login'.
Upload Macro........... `term' will execute this macro after a successful
upload has been made.
Download Macro......... `term' will execute this macro after a successful
download has been made.
f) Miscellaneous
----------------
This is the place where options can be set which would not fit into other
control panels
Program Priority....... Use this slider to determine the priority under
which the `term' main process is operating.
Adjusting this value can make `term' perform more
reliably in a system which experiences heavy task
loading. It is recommended to play with this value
until a satisfactory state is found, setting the
program priority to high or too low may affect the
performance of coprocess services such as the
double-buffered file I/O routines.
Override Transfer Path. Each batch file transfer protocol allows you to
specify the name of the directory to send the files
it receives to. By default `term' will redirect
the files to a directory to be specified in the
`Path' control panel. If this switch is disabled,
the internal settings of the current transfer
protocol will be used.
Backup Configuration... By default the local program configuration saved
along with a phonebook entry will replace the
global configuration as soon as a successful
connection is made. If this switch is enabled,
`term' will remember the global configuration in
effect before the configuration data of a phonebook
entry is adopted. As soon as the serial driver
loses track of the carrier signal or the user
chooses to hang up the line, `term' will switch
back to the previous global configuration.
Use Auto Upload Panel.. Some users found the so-called `ZModem auto-upload
panel' to be invoked whenever `term' encounters the
ZModem inquiry sequence rather disturbing, this
switch will allow them to disable this feature.
Set `archived' bit..... If enabled, this switch will cause `term' to set
the `archived' bit on files transferred using the
XPR-interface.
Maximum Buffer Size.... To save memory, a high-water mark concerning the
maximum amount of memory the `log book' will
allocate for text may be specified. The minimum
value to be entered here is 2000 bytes which are
roughly equivalent to two `log book'ápages of text.
A value of 0 will cause the `log book' to always
allocate as much memory as required to buffer all
the incoming text.
Buffer Enabled......... This switch works in conjunction with the `Freeze
Buffer' menu entry (freezing the `log book'
contents). In fact, the menu entry is adjusted
according to the configuration settings whenever a
new configuration is invoked (that is, whenever a
new connection is made through the dialing panel or
at program startup time). Please note that `term'
will only freeze the buffer if this switch is set,
it will leave the buffer state (frozen or not)
untouched if this switch is not enabled.
Show Fast! Macros...... If this switch is enabled, the fast! macro panel
will be opened whenever the current configuration
becomes active (e.g. at startup time).
g) Paths
--------
In this part of the settings all paths, which `term' uses to save or load
any data, can be determined.
Config. Storage Dir.... The directory that will contain all configuration
files (Phonebook, Makrokeys, etc.). The default
configuration file is called `Preferences.term' and
will be searched in the path defined by the
enviroment variable `TERMPATH' (see end of
document).
??? Up/Downloadpath.... The directories in which the functions contained in
the `Transfer' menu will search and create files.
Capture Path........... This gadgets contain the path in which the the
capture files will be created if `Connect
Auto-Capture' is enabled.
Log File............... The name of the file in which the information on
the actions executed by `term' will be logged if
`Log Actions' is enabled.
Text Editor............ Contains the name and search path of the editor
used by `Edit File' in the Utilities menu.
Terminal `Beep' Sound.. The name of the IFF-sound-file that will be played
if a BEL-signal is detected. This file may for
technical reasons not be larger than 102400 bytes.
Use.................... Use the current settings.
Cancel................. Keep the old settings.
If any `Select' button is pressed, the path or filename beside can be
selected by the file-requester.
h) Emulation
------------
The gadgets found here allow you to change the internal parameters of the
selected emulation.
The following text only describes the parameters to change when using
the builtin terminal emulation; if an external terminal emulation is in
effect, this menu will conjure up the corresponding parameters menu
supported by the external terminal emulation module.
Smooth Scrolling....... If active, the each carriage-return code will cause
the contents of the screen to scroll up smoothly.
Wrap Characters........ This function activates the automatical carriage
return function which is triggered as soon as the
cursor crosses the right screen margin. To avoid
unpleasant side-effects, this gadget should be
activated all the time.
Wrap Cursor............ According to the VT100-specification the cursor
movements have to stop at the edges of the screen.
In spite of this the cursor may leave these
borders, especially in ANSI-mode, and may appear at
the other side of the screen. This gadget
activates a more `tolerant' mode.
Insert Mode............ Normally, `term' is in overwrite-mode (characters
entered overwrite the contents of the screen). If
this gadget is activated, typed characters are
inserted by pushing all the characters right of the
cursor towards the right margin.
Note: the insert-mode does only work for lines.
If characters are pushed out of the screen they
cannot be restored.
New Line Mode.......... This gadget activates a special mode in which some
VT100-control-sequences cause `term' to perform a
linefeed instead of clearing the screen or other
serious changes of the contents of the screen.
Numeric Keypad......... If this mode is activated the keys of the numeric
keypad transmit a command-sequence instead of a
number. If the remote computer needs these
sequences, this mode - applications mode - can be
activated with this gadget.
Cursor Keys............ If this mode is active the cursor-keys transmit a
command-sequence instead of a cursor-move. If the
remote computer needs these sequences, this mode -
applications mode - can be activated with this
gadget.
Font Scale............. VT-100 offers several different sizes of fonts.
Some can be selected with this gadget:
- Normal
The normal height of the font.
- Half Width
Half width of font.
Use.................... Use the current settings.
Cancel................. Keep the old settings.
Now for the global settings:
a) Macro Settings
-----------------
This menu is used to set user definable strings for all ten function keys.
All strings are considered command sequences, a topic which will be covered
later in this document.
Modifier.............. All in all 40 Keys may be covered with user defined
command sequences. As the Amiga keyboard only has
ten function-keys this gadget switches between the
modifier keys (shift, control, alt) which, if
pressed in addition which a function key, will
execute one of the 40 command sequences.
Load.................. Load the macro-keys from a file.
Save.................. Save the macro-keys to a file.
Use................... Use the current settings.
Cancel................ Keep the old settings.
As the definition of the function keys with command sequences
contradicts the standard definition of the four functions keys of a
VT-100-terminal, the keys F1-F4, which may be executed by pressing the
shift key and the approriate function-key simultaneously, are mapped to the
standard sequences for function-keys. The user may - of course - change
these settings.
If an external terminal emulation happens to be active, those function
keys the emulation has allocated for itself will be disabled and cannot be
edited.
b) Fast! Macro Settings
-----------------------
The design and implementation of the settings to be configured in this menu
are closely related to the menu entry `Macro Settings' discussed before,
the only difference to be seen in the fact that the fast! macros are
mapped to buttons rather than function keys (more on this topic later in
this document).
Macro List............... The list of macros entered yet, to edit one of
these, select it by clicking the mouse button
with the mouse pointer on it.
Macro.................... The name of a macro by which it is listed in the
fast! macro list.
Macro Code............... The command sequenz associated with a fast!
macro. Command sequenzes are discussed later in
this document.
New...................... Appends a new macro to the list. The user may
then select and customize it.
Delete................... Removes the currently selected macro from the
list.
Load..................... Loads the macro list from a file.
Save..................... Saves the macro list to a file.
Top...................... Places the currently selected macro at the top of
the list.
Up....................... Moves the currently selected macro one entry up.
Down..................... Moves the currently selected macro one entry
down.
End...................... Places the currently selected macro at the end of
the list.
c) Hotkeys
----------
This is where the key sequences used to arrange screens and to execute
special functions are to be configured.
term Screen To Front.. The keys to press to bring the `term' screen to the
front.
Buffer Screen To Front The keys to press to bring the screen of the log
book process to the front (note: if the screen is
not already open, pressing these keys will
accomplish nothing).
Skip Dial Entry....... As an alternative to the `Skip' gadget, pressing
these keys will skip a dialing entry if the dialing
function is currently active.
Commodity Priority.... The commodity priority to assign this task to. You
may want to change this value if you have more than
one program running which uses the same key
sequences as `term'. The program with the higher
commodity priority will receive the keystrokes
first.
Hotkeys enabled....... Whether the hotkeys are enabled or not can be
toggled by clicking on this gadget, or by using the
`Exchange' program to be found in the
`Tools/Commodities' drawer.
Load.................. Loads the hotkey settings from a file.
Save.................. Saves the hotkey settings to a file.
Use................... Use the current settings.
Cancel................ Keep the original settings.
If any changes made here do not seem to take effect immediately, the
user has probably typed a keyword wrong (causing the entire hotkey setup to
fail). I'm sorry about this, but the current implementation of hotkey
support does not sport error checking.
d) Speech
---------
If enabled, the Amiga speech synthesizer will be used to alert the user of
certain actions, such as carrier lost, connection made, etc. This feature
makes sense if `term' is running in the background where the user cannot
see what is actually happening on the main screen. By default this feature
is disabled.
Rate.................. Speaking speed in words per minute.
Pitch................. The greater this value, the higher the voice
appears to speak.
Frequency............. Voice frequency in Hertz.
Volume................ The volume of the voice.
Sex................... Enabled female or male voice.
Speech enabled........ Toggles the activity of the speech synthesizer.
Speak!................ Speaks a small sample text, note that speech must
be enabled for this function to work.
Load.................. Loads the speech settings from a file.
Save.................. Saves the speech settings to a file.
Use................... Use the current settings.
Cancel................ Keep the original settings.
===================== Telephone book & Dial function ======================
===========================================================================
The functions described in the following can be found in the `Modem' menu
and relate to the menu entries `Phonebook', `Dial' and `Redial'.
ááá`term' is equipped with a user friendly telephone number management
system, the `telephoneábook', which is operated via a Control field. The
Control field is described in the following lines.
a) The main control panel
-------------------------
NameáList..............áThe list of all telephone numbers with names
ááááááááááááááááááááááááagainst them (name of the corresponding mailbox).
If one of these entries is selected with a double
click, it will be placed at the end of the dialing
list (More on this later).
BBS Name...............áName of the last selected telephone book entry.
Phone Number...........áTelephone number of the last selected telephone
book entry.
If a BBS supports multiple lines, the phone
number of each line may be entered, each separated
by a vertical bar `|' character (example:
"123456|654321" would cause the dialing routine to
dial the numbers `123456' and `654321'). The
dialing routine will process all these phone
numbers before proceeding to the next phonebook
entry.
The `|' character also works for the modem init,
modem exit and dial prefix sequences. Whenever the
dialing routine dials another phone number from a
list separated by bars, it will try to find a
matching init/exit/dial prefix sequence. If more
phone numbers are specified than sequences are
available, it will use the last sequence given (an
example: a phone number may be given as
"123456|654321|12345", the dial prefix string may
be "ATDP|ATDT"; the dialing routine will call the
first number using "ATDP123456", the second number
using "ATDT654321" and the third number, since no
special dial prefix is available, again using
"ATDT12345").
NewáEntry..............áGenerates a new telephone book entry with standard
settings and places it at the end of the telephone
book.
Clone Entry............ Will duplicate the currently selected phonebook
entry and place it at the end of the list.
RemoveáEntry...........áRemoves the last selected telephone book entry from
ááááááááááááááááááááááááthe telephone book and frees the memory allocated
ááááááááááááááááááááááááfor this entry.
Dial List.............. Will pass the list of currently marked phonebook
entries to the dialing routine.
Clear List............. Will clear the marks set for each telephone entry
in the dialing list.
Play Number............ Plays the currently selected telephone number using
Touch-Tone« signal coding.
Load List..............áLoads the contents of a telephone book from a file.
Sort List..............áIf any phonebook entries have been selected to be
dialed, the phonebook entries will be sorted in the
order of dialing. The remaining phonebook entries
will be sorted in ascending alphabetical order.
Save List..............áSaves the contents of a telephone book to a file.
Set Password........... Press this button if you wish to save a special
access password with the currently active telephone
book file. You will then be asked to enter the
password (note: what you type will appear on the
screen!), only the first 20 characters will be
used.
To clear an existant password and to save the
phonebook file without encryption, just press
return when asked to enter the new password.
The next time you save the phonebook data, the
password will be encrypted and saved with it, the
phonebook data itself will be encrypted using the
password.
Whenever an encrypted phonebook file is loaded
and the password saved with it does not match the
last password you entered, you will be asked to
enter the access password. What you type will not
appear on the screen, press the <Return> key when
done, the <Backspace> key will delete a character,
the <Escape> key will abort the process, as will
closing the window. The input process will be
terminated automatically when 20 characters have
been entered.
Note: whenever an encrypted phonebook file is
loaded, it will take longer to load than an
ordinary phonebook file, the same applies to saving
phonebook data.
Another list is located at the right hand side of the window. Each
entry refers to a control panel to be invoked on the currently selected
telephone entry.
Serial, Modem, ........ These entries refer directly to the settings
Transfer, Screen, main menu entries of the same name.
Terminal, Commands,
Miscellaneous,
Paths, Keyboard Macros,
Fast! Macros
Password/User.......... This entry will open a control panel in which the
password and user name to be used for the current
phonebook entry can be entered. Both password and
name are made available from within the `term'
ARexx interface to allow auto login script files to
set up a connection.
Copy Config............ A lot of time can be saved by copying selected
parts of the global configuration to a local
configuration which part of a phonebook entry.
This entry will invoke a control panel which allows
to select which parts of the global configuration
should be copied. The control panel also remembers
which parts were copied when it was invoked last
time.
If the `Copy To All' button is selected, the
configuration data to be copied will be copied to
all phonebook entries.
b) Rates - support for call fee calculation
-------------------------------------------
`term' will count the minutes you are online and connected to a BBS as soon
as a connection is made through the dialing routine. As soon as the
connection is lost or you hang up, `term' will use the information to be
specified in this control panel to calculate the amount of money to be paid
for the call.
Although the design of this control panel refers largely to the german
telephone system I hope that it will be applicable to other countries'
telephone systems as well. Please tell me if this is not the case.
Pay/Unit............... The amount of money to be paid for each single time
unit when online. This fee must be given in the
smallest currency unit available (pence, cents,
centimes, etc.).
Seconds/Unit........... This is where you enter how many seconds each time
unit lasts.
Start Time............. Here you can adjust the time at which telephone
company will switch to the current pay/unit rate.
In Germany, the Deutsche Bundespost will switch to
a cheaper rate after 6:00 pm and return to the
original rate at 8:00 am in the morning. The main
purpose of this field is to offer support for these
periodic changes. If your telephone company does
not change its rates in such manner, set both
settings (Starting time and ending time) to the
same values.
Days And Dates......... This list contains the default rate settings and
exceptions for certain dates and days of the week.
Each line displays the type of the entry and a
comment (separated by the `╗' character). The
following types are available:
- Day(s)
Settings for certain days of the week
- 12. Jan (example)
Settings for a specific date
If there is no special type available for an entry,
it's probably the default settings you are dealing
with. These settings are used whenever `term'
cannot find an entry for the current day.
Add Date............... Will invoke a control panel to create a new rate
entry to be used on a specific date. Use the
sliders and button to select the day the settings
will be valid for.
Caution: the control panel will allow you to
enter nonexistant dates, such as 31. Feb so you
will have to make sure that the date in question
really exists.
Add Day(s)............. Will create a new rate entry referring to one or
more days of the week. Use the buttons of the
control panel to select the days the current
settings will be valid for.
Import................. Much work can be saved if the rate settings for the
current phonebook entry are imported (or copied)
from a different phonebook entry. To do so, select
this button. The control panel to be opened will
display the list of phonebook entries available and
three buttons:
- Replace Units
The rate settings of the current phonebook entry
will be replaced by the settings of the selected
entry.
- Append Units
The rate settings of the selected entry will be
appended to the current phonebook entry.
- Cancel
Will abort the selection.
Whenever a rate entry is selected, the corresponding parameters
(Pay/Unit, Seconds/Unit, Start Time) can be edited. If the entry refers to
a certain date or a specific day of week three additional buttons are made
available:
Edit................... Just as the labels says will allow you to modify
an entry after it has been created.
Clone.................. Will duplicate the current rate entry and append
it to the list.
Remove................. Removes an entry from the list.
c) Dialing and selecting a phonebook entry
------------------------------------------
To put a phonebook entry into the dialing list, double-click the mouse on
its name. The number appearing to the left of its name indicates the
precedence of entries in the dialing list. To remove an entry from the
list, double-click it again. Instead of double-clicking on an entry, the
space bar may be pressed as well.
To dial the list of selected entries, press the `Dial List' button,
control will be passed over to the dialing panel.
As I have been asked several times: For dialing a telephone number the
dialing prefix specified for this telephone number is used. If the
MNP-error correction for a certain mailbox has to be specifically switched
on via the dial string, this has to be done in the modem settings for this
mailbox and not in the global settings of `term'. The `Modem Init-String'
and `Modem Exit-String' entries of the telephone book can also be used for
initialisation.
áááThe following information about the dialling process is displayed:
Calling................áThe name of the telephone book entry belonging to
the number being dialled. If it is just a
telephone number the string constant
`--áUnknowná--' is shown, meaning that the name of
the mailbox is unknown.
Number.................áThe telephone number being dialed or _just_ dialed.
Next...................áThe name of the telephone book entry which will be
processed next if no connection is established. If
no further entry exists, `-- None --' will be
displayed.
Timeout................áA counter which is decreased every second and which
reflects the time remaining to establish a
connection or to cycle through the dial queue
again.
Attempt................áThis field shows the number of unsuccessful cycles
made through the dialing queue to establish a
connection.
Message................áA message to the user. This can be:
- Dialing...
A dial is in process.
- Line Is Busy.
The dialed number is engaged.
- Incoming Call!
The Modem has been called from another Modem.
- Incoming Voice Call!
The Modem is receiving a call which was not
originated by another Modem.
- No dialtone detected!
The modem was unable to detect any dialing tone
on the line, it may possibly be not connected.
- Connection Established.
Nomen est omen!
- Maximum Number Of Dial Retries Reached!
Also nomen est omen.
- Dial Attempt Timeout.
The time available to establish a connection has
been reached or exceeded.
- Redial Delay...
Pause until the next cycle through the dialing
queue.
áááAdditionally three buttons can be found in the input field, which
initiate the following functions.
SkipáCall...............áWith this function the current dialing attempt is
cancelled and the next number is processed. If no
succeeding telephone number exists `term' waits
for the next cycle through the dial queue or until
`Skip Call' is `pressed' again.
There also is a hotkey combination available to
accomplish the same effect.
Remove.................. This button works in part similar to the `Skip
Call' button. Additionally, it removes the
current phonebook entry from the dialing list.
GoáToáOnline............áIf the line is very noisy, the connection to a
mailbox has been made but the `CONNECT' signal has
been lost, you can use this button to switch
directly to the online mode of the Modem. This
will also start the pay unit counter and the dial
queue will be exited.
AbortáDialing...........áOperation of this button exits the dial queue
(leaving the the dial queue intact) and ends the
dialing process.
áááIf a connection is successfully made the corresponding entry in the dial
queue will be removed.
Selecting the close gadget or the `Quit' menu entry will close the
window and cause the phone book panel to be reopened.
============================== The Log book ===============================
===========================================================================
The `Log book' is a function which continually stores text displayed on
`term's mainscreen, so that the user can inform himself about the received
text at any time .
1. General characteristics
--------------------------
The "size" of the `log book' is managed dynamically so that for every new
line which is read new memory must be allocated. So the "size" of the `log
book' is limited only by the amount of the available memory. It is
recommended that the `log book' is emptied periodically to avoid using the
entire free memory.
áááIf there is insufficient memory to `write' a new line into the `log
book', the first line will be deleted to make room for the new line.
2. Operation
------------
The contents of the `log book' can be paged through using the keys for
moving of the cursor (`Cursor keys') (cursor keys + shift key moves page by
page, cursor keys + control key jumps to the beginning or end of the log
book). Additionally, the numpad keys are overlaid with jump and paging
functions (corresponding to the inscriptions/graphics on the front of the
keys).
áááAdditionally there is a further menu whose functions should be explained
briefly:
Search.................áA search function is called which searches from the
áááááááááááááááááááááááátopmost line ON THE SCREEN downwards for an entered
áááááááááááááááááááááááásearch string. Upper- and lowercase are ignored
ááááááááááááááááááááááááwith this function.
ááááááááááááááááááááááááIf the search string is found it is displayed and
marked/highlighted.
RepeatáSearch..........áContinues the search process started with `Search'.
The previously entered search string is carried
over.
GoáToáMaináScreen......áSwitches to the main screen of `term'.
ClearáBuffer...........áClears the contents of the `log book'.
CloseáBuffer,áQuit.....áCloses the `log book' screen but leaves the
contents unchanged.
==================== Using the clipboard and the mouse ====================
===========================================================================
Cut & paste functions are available on the main screen. Use the mouse to
point to the first character you wish to send to the clipboard, hold down
the (left) select button, move the mouse to the last character you wish to
cut and release the button. The characters you have just marked will have
been transferred to the clipboard, use the key combination Amiga+V to paste
the contents of the clipboard and to feed them back into the input stream.
Holding down the control key while clicking on a character will feed the
single character into the input stream, it will not be buffered in the
clipboard. Hold down any shift key to have the contents of the clipboard
fed into the input stream right after the mouse button is released, a
<return> will follow the data (this also works on the `log book' screen).
The middle mouse button has the same function as if the left mouse button
when pressed along with a shift key.
áááWith the aid of the mouse you can mark blocks in the `log book' which
are to be copied into the `clipboard' and which can later be fed into the
input stream with the function `Paste Clipboard Contents'.
Hold down one of the `Alt' keys and press the left mouse button to make
`term' emit a number of cursor move sequences which will position the
on-screen cursor at the spot where you clicked the mouse.
In standard string editing fields a solution had to be found to preserve
the line editing functions while still supporting menu shortcuts. To undo
any changes made press Amiga+Q, to clear the string editing field press
Amiga+X. Menus associated with the shortcuts Amiga+Q/X are called by
holding down any shift key along with the Amiga keys (i.e. Shift+Amiga+Q
will select the `Quit' menu item if available).
Clipboard functions are also available within string gadgets: press
Amiga+C to copy the contents of the gadget to the clipboard and press
Amiga+V to insert the current clipboard contents at the current cursor
position.
============================ Command sequences ============================
===========================================================================
Each character string sent directly to the modem is a command sequence.
This includes telephone numbers, modem initialisation strings, function key
assignments, etc. In addition to the normal ASCII character strings
various other commands are supported which will be described in the
following.
a) The backslash \
------------------
The following sequences are introduced with the `\':
\\.....áGenerates a single backslash.
\a.....áExecutes an ARexx command (all text to follow this character).
\b.....áGenerates a backspace (deletes the character to the left of the
áááááááácursor).
\c..... Calls a main menu entry, the menu entry to be called is determined
by the argument to follow; this is either a six digit number
(example: "\c 010203" would call subitem 1, item 2, menu 3) or the
name of the menu entry enclosed in single quotes to call (example:
"\c 'about'" would call the `About...' menu entry, the search is
case-insensitive and only compares the characters given).
\d.....áExecutes an AmigaDOS command (all text to follow this character).
\e.....áGenerates the escape character (ASCII code 27).
\f.....áGenerates a form feed (skip to beginning of the next page or
ááááááááclear the screen).
\g.....áPlaces the string to follow this character in the clipboard.
\i.....áFeeds the contents of the clipboard into the input stream.
\n.....áGenerates a line feed.
\p.....áFeeds the password of the telephone book entry into the input
stream of the last made connection. Note: The password is
automaticly cleared for security reasons when the connection is
broken.
\r.....áGenerates a carriage return.
\t.....áGenerates a tab jump.
\u..... Similar to the \p command, the \u command will feed the current
user name into the input stream.
\x.....áGenerates a break signal (as with the `Send Break' menu entry).
\^.....áGenerates a caret character.
áááIf none of the mentioned combinations is recognized the character which
follows the `\' will be fed into the input stream without any changes.
b) The caret ^
--------------
This character is used to change the following character to a `control
character'. So the sequence `^J' will become a Line feed and `^H' becomes
a tab jump. The character which follows the `^' has to be located between
`@' and `[', otherwise it is fed into the input stream without changes.
c) The tilde ~
--------------
This character causes the program to pause for exactly half a second before
it continues to process the following commands.
============================== Fast! Macros ===============================
===========================================================================
In implementation and design the fast! macros are closely related to the
function key macros. If invoked by selecting the corresponding menu entry,
a window will open on the right hand side of the screen sporting a
scrollable list of macros (the contents of this list can be edited using
the `Fast Macros' settings menu item). When a list entry is selected, the
associated command sequence (discussed above) will be executed.
By using the fast! macros it is theoretically possible to control a BBS
just by mouse, provided that you have the approriate macros in your fast!
macro list.
The fast! macro panel can be resized and acts just like the main `term'
window: menu items can be selected and characters entered are sent to the
serial driver.
=========================== The `Packet Window' ===========================
===========================================================================
In this window a line can be edited before it is sent. All the usual
editing functions known from standard input fields are available (shift +
left/right jumps to the start/end of the line).
áááAdditionally some extended functions exist which are performed by
pressing a cursor key together with the Shift or Control key:
Leftá+áControl.........áJumps to the next word.
Rightá+áControl........áJumps to the previous word.
Up.....................áShows the last entered command in the input line.
Upá+áShift.............áShows the very first command entered so far.
Down...................áShows the next entered command (if you moved back
for some commands before).
Downá+áShift...........áShows the very last command entered so far.
áááThis input field has a buffer where all previously entered commands are
stored (`Command History'). You can page through this buffer, load and
save it and individual lines can be called up again. As with the `log
book' this buffer is managed dynamically. The same memory restrictions
that apply to the `log book' are valid for this buffer.
áááThe input line also has a menu which offers the following functions:
LoadáHistory...........áLoads the contents of the input line buffer from a
file. Each stored line in this file can be called
up and sent.
SaveáHistory...........áSaves the contents of the input line buffer to a
ááááááááááááááááááááááááfile.
ClearáHistory..........áSimply releases all previously stored commands and
ááááááááááááááááááááááááthe used memory.
OtheráWindow...........áSwitches to the main screen of `term'.
Quit...................áCloses the window (corresponds to clicking the
close gadget of the window).
áááIt must be mentioned that every character entered into this window is
shown immediately so that those things where it is better that they should
not appear on the screen (like passwords for a mailbox) should be entered
in another way.
áááThe content of every input line is interpreted as a command sequence and
therefore can also contain control characters.
áááIf a line taken from the input buffer is sent without change it is _not_
stored in the buffer again (`true history' as known from `ConMan').
áááThe contents of the input buffer are cleared automatically after the
window is closed. Under no circumstances are the contents maintained until
the next call!
Provided that the packet window is large enough, a list to contain the
command line history will be displayed.
============================= System variables ============================
===========================================================================
Information which is to be available the next time the program is run is
placed as AmigaDOS variables in the directory `ENV:' and `ENVARC:' by
`term'.
áááThe variables used by `term' can be used and manipulated by other
programs transparently. In detail these variables are:
TERMPATH...............áThe name of the directory in which all information
ááááááááááááááááááááááááused by `term' is placed (Standard configuration,
áááááááááááááááááááááááátelephone book, etc.). The default setting is
áááááááááááááááááááááááá`ENVARC:term'.
TERMWINDOW.............áThe window definition which can also be entered in
ááááááááááááááááááááááááthe program via the menu function `Set Console
ááááááááááááááááááááááááWindow'.
xpr... ................áThe standard settings used for the corresponding
áááááááááááááááááááááááátransfer protocol (xprzmodem, xprkermit, etc.).
============== An author's request & gift-ware-remuneration ===============
===========================================================================
The development of `term' required conciderable expense. The effort to
find out by trial and error and with a little help from the DevCon-Disks
and the Includes & Autodocs the operating principles of some routines would
alone be worth a remuneration to the author (it's simply bad luck if the
Atlanta-DevCon records arrive with considerable delay).
áááThe author is susceptible to all kinds of donation and gifts so long as
it is assured that they are useful to him (these nice little sacks with
elephant food are better sent to the Hannover zoo). Therefore anyone
pleased by `term' or who works with the source code is welcome to
remunerate my programming efforts as he/she thinks that it matches my
efforts (If you've got no ideas yet: I am looking for old Infocom games:
"Arthur and the quest for the holy grail", "Border zone", "Bureacracy",
"Cutthroats", "Leather Goddesses of Phobos", "Nord and Bert couldn't make
head or tail of it", "Plundered Hearts", "Seastalker", "Sherlock - The
Riddle of the Crown Jewels", and "Trinity"; MS-DOS and Atari ST versions of
the text-only games are welcome as well since the story format can be
converted to the Amiga -- old CinemaWare games -- with the exception of
`Defender of the Crown' and `Sinbad' -- the source code to `ARJ' or a
Modula-2 compiler) - a lot of thanks!
My address:
Olaf Barthel
Brabeckstrasse 35
D-3000 Hannover 71
Federal Republic of Germany
Z-Net: O.BARTHEL@A-LINK-H
Usenet: o.barthel@a-link-h.comlink.de
olsen@sourcery.mxm.sub.org
áááWould those people looking at the source code to extend it or do some
modifications here and there please contact me before publication so that
our efforts can be coordinated.
áááIf someone should have a brilliant idea to improve or extend the
structure and contents of this manual, he/she may do it with my blessing (I
haven't had the enthusiasm up to now to TeXify the text).