home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Overload
/
ShartewareOverload.cdr
/
comm
/
simtm20c.zip
/
SIMTERM.DOC
< prev
next >
Wrap
Text File
|
1990-10-08
|
58KB
|
1,321 lines
S I M T E R M
Operations Manual
Copyright (c) 1989,1990
by Jason R. Alward
All Rights Reserved
For product support, contact:
Jason R. Alward
129 Concession St. E. #22
Tillsonburg, Ontario
Canada N4G4N4
(519)-842-9175
By modem, call:
RHPN BBS (519)-688-0008
300 to 2400 baud
24 hours a day
Page 1
TABLE OF CONTENTS
-----------------
1. INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . 2
Overview . . . . . . . . . . . . . . . . . . . . . . . . . 2
Features . . . . . . . . . . . . . . . . . . . . . . . . . 2
Licensing and Distribution . . . . . . . . . . . . . . . . 3
2. GETTING STARTED . . . . . . . . . . . . . . . . . . . . . . 4
System Requirements . . . . . . . . . . . . . . . . . . . 4
Installation . . . . . . . . . . . . . . . . . . . . . . . 4
Starting Simterm . . . . . . . . . . . . . . . . . . . . . 5
Configuring Simterm . . . . . . . . . . . . . . . . . . . 5
3. USING SIMTERM . . . . . . . . . . . . . . . . . . . . . . . 9
Using the Menus . . . . . . . . . . . . . . . . . . . . . 9
The Input Editor . . . . . . . . . . . . . . . . . . . . . 9
The Help Menu . . . . . . . . . . . . . . . . . . . . . . 10
The Status Line . . . . . . . . . . . . . . . . . . . . . 10
Simterm's Functions . . . . . . . . . . . . . . . . . . . 11
Files . . . . . . . . . . . . . . . . . . . . . . . . . 11
Path . . . . . . . . . . . . . . . . . . . . . . . . . 11
Shell . . . . . . . . . . . . . . . . . . . . . . . . . 11
Exit . . . . . . . . . . . . . . . . . . . . . . . . . 12
Dial . . . . . . . . . . . . . . . . . . . . . . . . . 12
Buffer . . . . . . . . . . . . . . . . . . . . . . . . 13
Hangup . . . . . . . . . . . . . . . . . . . . . . . . 14
Download & Upload . . . . . . . . . . . . . . . . . . . 14
Echo & Linefeeds . . . . . . . . . . . . . . . . . . . 15
Initialize . . . . . . . . . . . . . . . . . . . . . . 15
Clear . . . . . . . . . . . . . . . . . . . . . . . . . 15
Options . . . . . . . . . . . . . . . . . . . . . . . . 15
Send BREAK Signal (Ctrl-@) . . . . . . . . . . . . . . . . 15
4. FILE TRANSFERS & PROTOCOLS . . . . . . . . . . . . . . . . . 16
What is a File Transfer . . . . . . . . . . . . . . . . . 16
Supported Protocols . . . . . . . . . . . . . . . . . . . 16
Ascii . . . . . . . . . . . . . . . . . . . . . . . . . 16
Xmodem . . . . . . . . . . . . . . . . . . . . . . . . 17
1k-Xmodem . . . . . . . . . . . . . . . . . . . . . . . 17
Ymodem (batch) . . . . . . . . . . . . . . . . . . . . 17
Zmodem . . . . . . . . . . . . . . . . . . . . . . . . 18
Special Zmodem Features . . . . . . . . . . . . . . . . . 18
REGISTERING SIMTERM . . . . . . . . . . . . . . . . . . . . . . 19
WARRANTY . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 2
INTRODUCTION
Chapter 1
OVERVIEW
Have you ever wished you could find a communications program that
wasn't a 150-300k program requiring a hard disk to run efficiently?
One small enough to run in a DOS shell from a large application
without being totally stripped of essential features?
Simterm was written to fill this need. Requiring about 40k of disk
space, it easily fits on a bootable floppy leaving room to download
files even 200k in size. Read the list of features below and
you'll see, Simterm is far from a "gutted" terminal.
FEATURES
~ Menu driven and very easy to use.
~ Alt-key shortcuts to major functions for quicker access.
~ Only requires about 66k of free memory to run.
~ Uses no overlay files.
~ Dialing directory loaded into RAM for faster access.
~ Support for ANSI display codes built in.
~ Handles speeds up to 19200 baud.
~ Supports COM1 through COM4.
~ Dialing directory holds 45 entries and supports auto redial,
tagging, auto dial of tagged entries, and auto untagging of
entries connected to.
~ COM settings and default transfer protocol for each system
you call stored in dialing directory.
~ Variable dial time and pause between dial attempts.
~ Capture file buffering with ANSI codes stripped.
~ Wide directory listing with automatic page pausing.
~ Can issue a DOS command or drop to a DOS shell.
~ Five transfer protocols supported for uploads/downloads:
Ascii, Xmodem, 1k-Xmodem, Ymodem (batch), and Zmodem.
~ Zmodem resume aborted or crashed transfers and auto Zmodem
downloads supported.
~ Local Echo and Add Linefeeds supported.
~ All display colours can be customized to your liking.
~ Status line displays buffer, echo, and linefeed status as
well as current COM settings, connection status and time
elapsed since connection.
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 3
LICENSING AND DISTRIBUTION
Simterm is not, nor has it ever been, free software. It is
copyright and is distributed as SHAREWARE. You are granted a
limited license to use Simterm for an evaluation period, not to
exceed 30 days. Use of Simterm beyond the evaluation period
requires registration.
Upon registering Simterm, you will receive a disk containing the
latest version and you will be entitled to product support. See
the chapter on Registering Simterm at the end of this manual for
complete details on how to register your copy of Simterm.
You may give copies of Simterm to others for their evaluation so
long as no fee is charged for the copy. Simterm may also be posted
on electronic bulletin board systems (BBS's) as long as no fee is
charged to access Simterm beyond subscription or online time fees
normally charged for access to the BBS.
Those copying, sharing, and/or electronically transmitting Simterm
may not delete, add, or in any way modify any of the files in the
Simterm package. Simterm must be distributed in it's entirety,
complete with documentation. Anyone not adhering to these
conditions is in direct violation of copyright law.
Distributors of shareware and/or public domain software must obtain
written authorization before distributing copies of Simterm. No
one may use Simterm in a promotion for any commercial venture or as
an enticement for the user to pay for any program, product, or
service without having received the express written permission of
the program's author.
In order to distribute Simterm, a shareware vendor must comply with
the following conditions:
1. Vendors must obtain written permission from Jason R. Alward
before distributing Simterm. If no reply is received,
write again. You may not distribute copies "pending"
receipt of permission.
2. Vendors may not modify or delete any of the files in the
Simterm package. A reasonable number of small text or
batch files may be added if designed to provide a service
to the user, but they must be easily identifiable and the
user must be allowed to delete these added files.
3. Vendors must make a reasonable effort to distribute only
the most recent version of Simterm. If you have received
written permission to distribute Simterm, you will be
notified of updates when they are released.
4. A maximum disk fee, set in the vendor contract, must not
be exceeded. Simterm may not be included in any package
sold for more than this maximum.
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 4
GETTING STARTED
Chapter 2
SYSTEM REQUIREMENTS
IBM PC/XT/AT or true compatible computer running DOS v2.0 or above.
One floppy disk drive, a Hayes compatible modem, and 256k of RAM.
NOTE: Simterm actually requires about 66k of free RAM to run. If
you have less than 256k in your system, try running Simterm anyway,
it just might fit. Of course you can't use the Shell command when
memory is that restricted.
INSTALLATION
Installing Simterm requires two steps. First, you simply copy the
file SIMTERM.EXE to the disk or directory where you will be using
it. Simterm uses no overlay files and creates the data files it
needs when you first run it, so you only need the one file.
The next step is to make sure Simterm can find those data files
each time you use it. If you're using Simterm on a floppy based
system, this is not a problem since you will have to insert the
disk containing Simterm and it's files in order to run it. You can
remove the Simterm disk after it starts up but you must reinsert
the disk when you make changes in the dialing directory or save
changes from the configuration menu. The dialing directory is a
special case as it only updates the file when you leave the
directory menu. This occurs when you press ESC or when you connect
to an online service after dialing, so the Simterm disk must be in
the drive at these times IF you have edited any entries.
If you're using Simterm on a hard drive you'll need to know more
about how Simterm finds it's data files. The first step Simterm
takes is to check the DOS version number. If it finds version 3.x
then it will get a complete pathname from DOS, you don't have to do
a thing. If it finds DOS version 2.x it will search the
environment for a variable named SIMTERM. In this case you should
add a line to your AUTOEXEC.BAT file as follows:
SET SIMTERM=C:\SIMTERM\
You should of course place your own drive:\path\ specification
after the "SIMTERM=" but it must end with the "\" backslash.
If Simterm doesn't find the SIMTERM variable it will use the
current directory to build a path to it's files. This is the least
desirable method since Simterm will create new files all over your
hard drive if you don't change to it's directory every time you use
it. Another minus is that these new files will contain default
information and the dialing directory will be blank.
As you can see, if you're using DOS version 2.x it is desirable to
set the SIMTERM variable. Doing this in your AUTOEXEC.BAT means
you need only do it once and don't have to bother with it again.
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 5
STARTING SIMTERM
To start Simterm simply change to the disk/directory where you put
the program and type:
SIMTERM
followed by pressing the ENTER key.
The first time you run Simterm it will create a configuration file
called SIMTERM.CFG and a dialing directory file called SIMTERM.PHN.
These will be filled with default information. Simterm will then
place you in the Configuration Options menu and place a message at
the top of the screen prompting you to configure Simterm for your
system and press "S" to save. You may need to change some of
Simterm's defaults for it to work with your system (See the
Configuring Simterm section below). When you've got Simterm
properly configured, press the "S" key to save your changes, and
you're ready to go. The next time you run Simterm, it will get
it's settings from the configuration file so you won't have to go
through this again.
CONFIGURING SIMTERM
The first step in configuring Simterm is to make sure your modem is
configured so Simterm can work with it. Simterm expects the modem
to treat status signals as their true state and not force them on
or off. The most important of these are the Carrier Detect (CD)
and Data Terminal Ready (DTR) lines. Many modems default to a
forced carrier and ignore DTR so you must configure your modem to
use the actual state of these signals. Some modems use DIP
switches to control these settings and some use commands (such as
AT &C1 for true carrier and AT &D2 for hangup on DTR low). You will
have to consult your modem's manual for the exact method used to
make your settings but the results you want are:
The Carrier Detect (CD) should reflect the actual state of the
carrier signal.
The modem should go on-hook on an On-to-Off transition of the DTR.
(When Simterm drops the DTR signal you want the modem to hangup)
Next you will need to configure Simterm to work with the rest of
your system. Simterm's configuration is completely menu driven and
you can exit the Options menu by either pressing the "S" key to
make your changes the new start up defaults, or by pressing the ESC
key to keep your changes for the current session without changing
the defaults stored on disk. When you issue the Alt-O (Options)
command, or when running Simterm for the first time, you will see a
menu that looks something like the following:
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 6
+->Current Configuration<---------------------------+
: Com Port: COM1 :
: Baud: 2400 :
: Data Bits: 8 :
: Parity: NONE :
: Stop Bits: 1 :
: Modem Initialization: AT S0=0 S7=30 E1 V1 Q0 X1^M :
: Dialing Prefix: AT DT :
: Dial Cancel: ^M :
: Dial Wait Time: 30 :
: Pause Between Dials: 5 :
: Local Echo: OFF :
: Add Linefeeds: OFF :
: Snow Checks: OFF :
: File & Colour Options :
+---------------------------------------------------+
Use the arrow keys to move the menu select bar to the item you wish
to change and press the ENTER key. You will then be able to enter
the new setting either by selecting it from a menu or typing the
new value. A description of each setting, and the range of
possible settings, where applicable, follows.
The Com Port setting tells Simterm which serial port your modem is
connected to. Simterm supports serial ports COM1 through COM4.
NOTE: If you have an internal modem, the serial port is built into
the modem itself. You'll have to check the modem's manual to see
which port it's configured for.
The Baud setting should be set to the maximum speed your modem is
capable of, in order to send the initialization string out as
quickly as possible. Supported speeds are: 300, 1200, 2400, 4800,
9600, and 19200 baud.
The Data Bits, Parity, and Stop Bits settings should be configured
for the settings you most commonly use. Most IBM compatible based
BBS's use 8 Data bits, No Parity, and 1 Stop bit, which is what
Simterm defaults to, so this would be a good choice for start up.
The supported settings for these are:
Data Bits: 7 or 8
Parity: NONE, ODD, EVEN, MARK and SPACE
Stop Bits: 1 or 2
The Modem Initialization setting is simply a string of modem
commands that you want Simterm to send to your modem at start up.
This just guarantees that the modem will be configured the same way
every time you start Simterm. The default string is:
AT S0=0 S7=30 E1 V1 Q0 X1^M
These are commands from the Hayes modem command set. You should
consult your modem's manual for the complete set of commands it
recognizes and the function of each. From this you can decide what
is needed in your initialization string.
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 7
NOTE: The ending "^M" is not a modem command but Simterm control
code notation. You can insert control codes into your string by
preceding the control character you want with a caret (^)
character. For example, a backspace is control-H so you would type
a caret immediately followed by an H like this: ^H. This is what
you must do to end your initialization string with a carriage
return, which is control-M or ^M, as Simterm does not append a
carriage return to this string. You can only use this control code
notation in certain items, which will display a message at the
bottom of the menu to inform you. See the section on The Input
Editor for further details.
The Dialing Prefix setting is a short string that is sent to the
modem just before the number to be dialed is sent. It's function
is to tell the modem to dial the following number and wait for a
connection. Simterm defaults to "AT DT" for the prefix which tells
the modem to use touch tone dialing. If you have pulse dialing in
your area you would need to change the prefix to use this dialing
method. The appropriate Hayes command would be "AT DP".
The Dial Cancel setting is a string that is sent to the modem when
you tell Simterm to interrupt a dialing operation. It defaults to
"^M", a carriage return, which is all that is needed for most
modems.
Again, consult your modem's manual for the exact commands it uses
for these operations.
The Dial Wait Time setting specifies the number of seconds Simterm
will wait for some response from the modem after sending the
command to dial. If this time elapses without Simterm receiving
any response, Simterm will terminate the dialing operation with the
Dial Cancel string.
The Pause Between Dials setting specifies the number of seconds
Simterm will wait before making another dial attempt when no
connection was established on the last attempt. For further
details on dialing operations, see the section on the Dial function
later in this manual.
The Local Echo setting tells Simterm to send characters typed in
terminal mode to the screen as well as the com port. This is
useful if you connect to a lot of systems that don't echo your
input back to you although most BBS's do.
This setting can be either ON or OFF and is just toggled when you
press ENTER.
The Add Linefeeds setting tells Simterm to send a linefeed to the
screen after every carriage return it sends to the screen. This is
used if you connect to a lot of systems that send carriage returns
only, at the end of each line. Adding linefeeds will prevent each
successive line from overwriting the previous line. You will
probably need to use this option if you're using Local Echo.
Again, this setting, and the Snow Checks setting that follows, can
be either ON or OFF and is just toggled when you press ENTER.
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 8
The Snow Checks setting tells Simterm whether or not to monitor the
horizontal retrace signal from the video card before writing to the
screen. Simterm uses direct video memory writes for all screen
output and on some CGA cards this causes interference on the screen
referred to as "snow". If this item is ON, Simterm will only write
to the screen when the video card is retracing for the next line.
This means the video card is not accessing the video memory so it
is safe for Simterm to write to this memory without interfering
with the video card. Unfortunately, during a horizontal retrace
there is only enough time to write one character to the display, so
snow checking slows down the screen output a bit, but it gives you
a clear display.
NOTE: This option should be set ONLY if you have a CGA card in your
system. Do NOT set this option on monochrome cards.
The File & Colour Options isn't a setting like the other items in
the menu. Pressing ENTER on this item takes you to another menu
where you tell Simterm the default drive:\path\ specifications to
use in file transfers, and you can customize the colour scheme used
throughout Simterm.
Customizing the colours Simterm uses is easy. Just select the item
you wish to change and press ENTER. You will be presented with a
menu of diamond characters, displayed in all the 128 possible
colour combinations with a box marking the current setting. Simply
move the box using the arrow keys, to mark the desired colour
setting and press ENTER. Simterm will refresh the display using
the new colour settings.
You should set the Upload and Download file paths to directories
where you wish to put files for transfer and receive transferred
files to respectively. If you leave these items blank Simterm will
use the current directory, which may not be desirable.
NOTE: Be sure to end both file path specifications with the
backslash "\" character. Simterm just appends the name of the file
being transferred to the end of these strings, so you'll get
constant "Invalid Path" errors if the backslash isn't there.
When your finished editing the items in the File & Colour Options
menu, press the ESC key to return to the Options menu.
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 9
USING SIMTERM
Chapter 3
USING THE MENUS
Using the menus in Simterm is easy. The arrow keys move the select
bar and ENTER selects the highlighted item. In almost all cases,
the ESC key will get you out of a menu without selecting or
changing anything.
Most of Simterm's menus are arranged vertically, but some are
horizontal. To simplify the way Simterm deals with this, the arrow
keys have been paired together. Both the UP and LEFT arrow keys
perform the same function, as do the RIGHT and DOWN arrow keys. So
if you're in a vertical menu, pressing the LEFT arrow would move
the select bar up just as the UP arrow would. And if you were in a
horizontal menu, the UP arrow would move the select bar left just
as the LEFT arrow would. The RIGHT and DOWN arrow key interaction
would be similar.
Simterm's menus also support wrap around. This means that if the
select bar were at the bottom of a menu and you pressed the DOWN
arrow key, the select bar would jump to the top. This also means
that when you're in a menu with only two options, any arrow key
will toggle the select bar between the two.
THE INPUT EDITOR
Whenever Simterm needs you to enter or edit a string of text, such
as the modem initialization string, it uses a built in line editor.
Within this editor certain keys perform special functions to make
editing easier. These keys are as follows:
The LEFT & RIGHT ARROW keys move the cursor within the existing
string without effecting the text. This lets you position the
cursor to the character where you need to start editing.
The HOME key will move the cursor to the beginning of the existing
string. Likewise, the END key will move the cursor to the end of
the string.
The BACKSPACE key will delete the character preceding the cursor
position and move the cursor back to that position, pulling any
trailing text back one space with it.
The DELETE key will delete the character at the cursor position and
pull any trailing text back one space to fill the gap. The cursor
position remains the same.
The INSERT key will toggle between insert and overwrite mode. The
cursor becomes larger to show when insert mode is on.
Finally, if you press CONTROL-HOME it will erase any existing text
and let you build your string from scratch. This is useful when no
part of the current string can be used to build your new string.
In a few special cases, Simterm will accept control code notation
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 10
within an input string. An example of this notation is "^M"
(without the quotes) which will be interpreted as control-M which
is a carriage return. Simterm only interprets this notation in
special cases, for which you will receive a help prompt explaining
how to use it. If you try to use them anywhere else, they will be
treated as a literal string with no interpretation.
THE HELP MENU
All Simterm's functions are available via Alt-key shortcuts and the
Help Menu lists all available functions, their shortcut key, and a
brief description of their purpose. You can execute a function
from this menu by moving the select bar to the desired function and
pressing ENTER, or you can just press the corresponding shortcut
key. There is no need to hold down the Alt key when in the help
menu as Simterm assumes any key pressed is intended to execute a
function. For example, pressing "D" would take you to the Dialing
Directory but if you were not in the help menu you would need to
press "D" while holding down the Alt key. All the functions work
like this except the file transfers, Upload & Download, which are
executed by pressing either PG UP or PG DN respectively.
THE STATUS LINE
Simterm uses the top line of the screen to display the current
status of it's capture buffer, echo and linefeeds state, com
settings, and carrier detect.
The capture buffer status is indicated by "Buffer:" followed by
it's current status, either ON, OFF, or PAUSE.
The echo and linefeeds status are indicated by "Echo:" and
"Linefeeds:" respectively and they're followed by either an ON or
OFF status.
The com settings status simply reflects the current Baud rate, Data
bits, Parity, and Stop bits that Simterm is currently configured to
use. These are displayed as the corresponding numbers except for
Parity, which is shown as the first letter of the corresponding
Parity type.
The carrier detect status is indicated by either the word "Offline"
or "Online". "Offline" is displayed when no carrier signal is
detected from the serial port. "Online" is displayed while a
carrier signal is present on the serial port and is followed by a
time indicator which reflects the time elapsed since the carrier
changed from an off to on status. The "Online" time is displayed
as hours:minutes.
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 11
SIMTERM'S FUNCTIONS
This section will give a detailed explanation of each of Simterm's
functions, in the same order they appear in the Help Menu. This
section should make a good reference whenever Simterm's prompts and
help prove inadequate.
Files (Alt-F)
The Files function first prompts you to enter the desired path and
filespec for which you wish to list the files. It will provide you
with a string containing the current directory and *.* filespec so
pressing ENTER will list all files in the current directory.
Simply edit this string as needed.
Once you have entered the desired filespec and pressed ENTER, the
Files function will read the directory and display all matching
files in three columns. If there are too many files to display in
one window it will stop and provide you with a "More Y/N" prompt.
Pressing "Y" at this prompt will clear the window and resume
displaying files. if you press "N" at the more prompt (or when
there are no more matching files) the Files function will display
the amount of free space on the selected drive and prompt you to
press any key, which will return you to terminal mode.
Path (Alt-P)
The Path function displays the current directory and allows you to
edit the string. Pressing ESC leaves things as they were but
pressing ENTER will cause the Path function to change the current
directory to the new one you specified. If the new directory is
invalid, a message will inform you of this and the current
directory will remain unchanged.
Shell (Alt-S)
The Shell function allows you to execute a DOS command or program
or drop to a DOS shell. It first displays a window with a DOS
prompt to allow you to enter the command or program you wish to
execute. When you've entered your command line, pressing ENTER
causes the Shell function to call COMMAND.COM to execute the
command or program. Upon the command or program's completion, you
will be prompted to press any key, which will return you to
Simterm.
If you press ENTER alone in the DOS prompt window without typing
any commands, the Shell function executes COMMAND.COM to drop to a
DOS shell. You will see a message informing you that you must use
the DOS EXIT command to exit the shell and return to Simterm.
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 12
Exit (Alt-X)
The Exit function simply prompts you to verify that you want to
exit Simterm. Pressing ENTER will exit Simterm and pressing ESC
aborts the function and returns you to terminal mode. You could
also use the arrow keys to select "No" and press Enter to exit.
Dial (Alt-D)
The Dial function takes you to the Dialing Directory which is used
to store and call the BBS's you use. This directory stores the
information for 45 BBS's and is displayed in three pages. The TAB
key is used to change pages and in the upper right corner of the
menu is "Page #" where "#" is the number of the page currently
displayed.
You access the numbers in the directory just like a menu, pressing
the UP or DOWN arrow keys to move the highlight bar to the desired
number. Pressing "E" will open another menu to allow you to edit
the highlighted number. The menu will look something like this:
+---------------------------+
: Name: :
: Phone: 000-0000 :
: Baud: 2400 :
: Data Bits: 8 :
: Parity: NONE :
: Stop Bits: 1 :
: Local Echo: Off :
: Add Linefeeds: Off :
: Transfer Protocol: Xmodem :
+---------------------------+
Simply select the item you wish to change and press ENTER to change
the information. You will get either a cursor to edit a string,
like the Name or Phone, or a menu from which to select the new
setting. When finished editing the information, pressing ESC will
return you to the Dialing Directory.
Pressing the space bar in the directory will "tag" the highlighted
number (or "untag" if it has already been "tagged"). Tagging
allows you to build a list of BBS's that you want Simterm to call
at one sitting.
Pressing ENTER initiates a dial sequence. This consists of
changing the com settings to those in the selected number, sending
the Dial Prefix string to the modem, sending the Phone string to
the modem, sending a carriage return to the modem to execute the
dial operation, and waiting for the number of seconds specified by
the Dial Wait Time. At the bottom of the directory window you will
see, the Name and Phone of the number being dialed, and the
message: "Waiting for Connection" followed by the remaining seconds
before the dial is aborted.
While Simterm is waiting, it watches for a carrier signal or a
string coming in from the modem (eg. BUSY). If Simterm gets a
carrier signal, it sets the Echo and Linefeeds settings to those
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 13
stored in the selected number, and sets the Transfer Protocol Menu
to default to the desired setting. Then it sounds a short alarm
and exits the Dialing Directory back to terminal mode.
If a string is received, Simterm echoes it after the "Last Status"
prompt and goes into the pause between dials. If the time runs out
Simterm displays "Time Elapsed" as the status and then goes into
the pause. The pause simply displays "Pausing" followed by the
number of seconds remaining before another dial attempt is made.
Simterm will continue to retry the dial until it gets a carrier and
connects, or you press ESC to abort the operation.
The number that gets dialed when you press ENTER depends on whether
there are any "tagged" entries or not. If there are no entries
tagged, Simterm dials the highlighted number. If you have tagged
some numbers, Simterm will start dialing the first tagged entry in
the directory and continue through each successive tagged entry in
the list for each dial retry. In other words, Simterm will dial
the first tagged entry, and if it doesn't connect, it will try the
next tagged entry and so on to the last tagged entry upon which it
will loop back to the first and try the whole list again.
If Simterm connects when dialing a tagged list, it will "untag" the
entry before leaving the directory. This means that when you
disconnect from this BBS, you can go to the directory and dial the
remaining tagged entries. The number that was connected to will no
longer be in the tagged list.
Pressing the space bar when dialing will cause Simterm to cancel
the dial operation and skip to the pause stage, or if you press
space while Simterm is pausing, it would skip the pause and dial
again. This is useful when dialing tagged entries and you wish to
skip over one entry for the current pass through the list.
Finally, pressing ESC when Simterm is not dialing simply returns
you to terminal mode.
Buffer (Alt-B)
The Buffer function controls the status of a "capture" file. When
the buffer is on, all characters displayed on the terminal screen
are also written to a file in Simterm's home directory called
SIMTERM.CAP.
The menu you get when you select the Buffer function is dependent
on the buffer's current status. If the buffer is off, you will be
asked if you want to open the capture file. If the buffer is on,
you will be asked if you want to close the capture file or just
"pause" buffering. If the buffer is "paused" you will be asked if
you want to close it or "unpause" it.
When Simterm opens the capture file it will not erase an existing
capture file, but rather add on or "append" to the end of the file.
If the file doesn't exist it will be created, of course.
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 14
When you "pause" buffering, you are telling Simterm to stop writing
to the capture file, but not to close it because you are just
skipping something.
Simterm uses a 10k buffer for the capture file so your activities
won't be continuously interrupted by excessive disk writes.
Hangup (Alt-H)
The Hangup function simply sets the DTR signal low, waits for about
a half second, then sets it high again. If your modem is
configured correctly, this will tell it to hangup the phone. As a
precaution, Simterm checks for the carrier signal after the hangup
and if it still exists, Simterm informs you that the hangup failed.
Download (PG DN) & Upload (PG UP)
The Download and Upload functions are used to transfer files to or
from the BBS system that you connected to. Downloading means you
are receiving a file and uploading means you are sending a file.
When you wish to transfer a file, either upload or download, the
first thing you must do is get the BBS system ready for a transfer.
Different systems use different commands and menu structures so
you'll have to see the BBS's help or instructions for exact
details, but generally you'll need to: Change to the BBS's file
section, issue the command to transfer a file (usually U or D for
upload & download respectively), enter the name of the file to
transfer, and finally issue the command to select the desired
transfer protocol. At this point the BBS should inform you that
it's ready to do the transfer.
Now that the BBS is ready, you need to tell Simterm that you wish
to transfer a file. Press the PG UP or PG DN key, depending on the
direction of your transfer, and you will receive a menu of
protocols that looks like this:
+----------------+
: Ascii :
: Xmodem :
: 1k-Xmodem :
: Ymodem (batch) :
: Zmodem :
+----------------+
Select the same protocol from this menu as you told the BBS to use
and press ENTER. You will be asked for a filename if you are
uploading or you are downloading using Ascii, Xmodem, or 1k-Xmodem.
Ymodem and Zmodem are batch protocols and will get the filename
from the BBS when downloading. Now a window will appear on the
screen displaying data about the transfer like elapsed time,
approximate characters per second, bytes sent/received, and so
forth. Now just sit back as the two systems transmit data.
Simterm will sound a short alarm to inform you when the transfer is
complete.
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 15
A special note should be made about the two batch protocols.
First, when downloading using Zmodem, you don't need to press the
PG DN key to tell Simterm to start transferring. Simterm will
recognize the initialize packet for Zmodem and will automatically
start the download when it sees this.
Second, when uploading using either batch protocol, you may send
more than one file at a time, if the BBS system supports multiple
file uploads. When Simterm asks you for the name of the file to
upload, you may enter any legal DOS wildcard specification such as:
\FILES\*.ZIP or A:*.*
The batch protocols would then send every file matching these
specs. Of course, as with any transfer that requests a filename,
if you don't specify a drive or directory, Simterm will use the
file path you set in the configuration Options menu.
Echo (Alt-E) & Linefeeds (Alt-L)
The Echo and Linefeeds functions simply toggle the local echo or
add linefeeds settings respectively. The indicators on the status
line are also updated to reflect the new setting.
Initialize (Alt-I)
The Initialize function simply sends the modem initialization
string out to the modem. This is useful for resetting the modem if
it's settings have been changed by another program that you may
have executed with the Shell function, for example.
Clear (Alt-C)
The Clear function simply clears the terminal screen using default
colours you set in your configuration.
Options (Alt-O)
The Options function calls up the configuration menu so you can
change Simterm's current settings. This is useful for changing the
com parameters, local echo, add linefeeds, colours, or whatever, as
described in the Configuring Simterm section. Pressing "S" in this
menu will save the settings to the SIMTERM.CFG file, making them
the start up defaults. Changes made in the configuration menu are
effective immediately so pressing ESC allows you to make changes
for the current session without changing the start up defaults.
Send BREAK Signal (Ctrl-@)
This function is not listed in the help menu as it is only used in
special cases, such as baud detect for some UNIX systems. It's
purpose is to transmit a special signal, called a "break", to the
remote system which would trigger some special action.
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 16
FILE TRANSFERS & PROTOCOLS
Chapter 4
WHAT IS A FILE TRANSFER
File transfers allow you to exchange programs, text, or any other
type of file with any BBS system that supports a file section. In
order to transfer files over phone lines, the receiving system must
have some way to tell if the data it received is the same as what
was originally sent. Phone lines are seldom perfectly clear of
static or noise, and this noise can alter the data as it travels
from one system to the other. This is the purpose of transfer
"protocols".
Transfer protocols generally break a file into small chunks called
"packets" or "blocks", then perform some calculation on the data
and send the "packet", followed by the result of the calculation,
to the receiver. The receiver performs the same calculation on the
data as it comes in and then compares it's result with the
following sender's result. If the two match, the receiver writes
this data to it's copy of the file and sends some acknowledgement
signal to alert the sender to send the next packet. If the two
calculation results don't match then the data was corrupted in
transit and the receiver sends a negative acknowledgement signal to
alert the sender to resend the same packet.
Different protocols use different methods for calculating the error
check value, signaling the start of a packet, and acknowledging
good and bad packets. Therefore it is important to use the same
protocol as the system you're connected to.
In Simterm I have attempted to support a "survival kit" of transfer
protocols. I couldn't support a long list of protocols since that
would have made Simterm too large a program (Simterm's main feature
is that it's very small without being "gutted" of features). I
also didn't want to support so few protocols that you would have to
turn to another terminal program for file transfers. So I've
picked the minimum complement of protocols that I felt were
essential to any terminal program.
SUPPORTED PROTOCOLS
There are five protocols supported by Simterm and they are as
follows: Ascii, Xmodem, 1k-Xmodem, Ymodem (batch), and Zmodem.
Now I'll give a brief description of each protocol.
Ascii
Ascii isn't really a protocol since it has no method for error
checking built in and as such is only useful for text files. It
does however provide one very useful function, you can upload a
message that was entered offline.
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 17
Since Ascii just reads a file and sends out the characters as if
you were typing them at the keyboard, it allows you to use a text
editor or word processor to create a message that you want to
"post" on a BBS. This is done when you're not connected and not
paying for online charges. You save your message as a pure ASCII
text file and then use Simterm to connect to the BBS. Do whatever
is required to enter a message and when the BBS is waiting for you
to type in your message, upload your text file with the Ascii
protocol. You will see the text appearing on your screen as the
BBS echoes it back, just as if you were typing it.
Xmodem
Xmodem is not particularly efficient nor 100% reliable, but it is
supported by almost every online service there is. No matter how
limited a BBS's list of supported protocols is, it will probably
support Xmodem. This is why it was essential to support Xmodem.
Some BBS's may offer you two varieties of Xmodem reflecting the two
types of error checking that Xmodem can use. These are Checksum
and CRC. Simterm supports both methods and detects which one the
BBS is using so it will work with either one. Whenever you have
the option, CRC is the preferred method as it is a great deal more
reliable than the Checksum method.
1k-Xmodem
1k-Xmodem is basically the same as Xmodem except for the size of
it's packets. Xmodem uses 128 byte packets and 1k-Xmodem uses 1024
byte packets, which is where the "1k" prefix came from. This makes
it a bit faster than Xmodem since it's packet overhead is reduced
by a factor of 8.
You should be warned that not all BBS's refer to this protocol as
1k-Xmodem. On some systems it's called "Old Ymodem" and others
just call it "Ymodem". This can lead to confusion since this is
not that same as the "Ymodem (batch)" that Simterm supports. So if
you're trying to use Ymodem and it just won't work, the BBS is
probably using a misnamed 1k-Xmodem, so tell Simterm to use
1k-Xmodem even though the BBS calls it Ymodem.
Ymodem (batch)
Ymodem (batch) uses the same type of packets as Xmodem but can use
both 128 and 1024 byte packets dynamically. The most important
feature, however, is that it starts the transfer with a special
header packet that contains complete filename, size, date, and time
information about the file. The transfer is ended with a blank
header packet (all 0's). These header packets allow more than one
file to be transmitted in a single session, thus it is called a
"batch" protocol. On some BBS's this is called "True Ymodem" or
just "Ymodem" so it can be confusing to tell whether you have to
use Ymodem or 1k-Xmodem.
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 18
Zmodem
Zmodem is the most powerful of the protocols supported by Simterm
and should be used whenever possible. It is very efficient because
of a low overhead on each data packet and, like Ymodem, it is a
batch protocol and can send more than one file per session. It
also supports advanced features like crash recovery, automatic
start on downloads, and 32 bit CRC error checking (making it
extremely reliable). These features are described in the following
section.
SPECIAL ZMODEM FEATURES
Zmodem Crash Recovery
Crash recovery means that you can resume an interrupted download at
a later time without the sender having to retransmit data that you
have already received. For instance, you're downloading a file and
you loose carrier due to line noise, or the power goes out. Now
you're stuck with an incomplete file and with any of the other
protocols, you'd have to download the whole thing again. But when
you reconnect to the BBS and download the file again using Zmodem,
it will see that the file already exists but is incomplete. So it
will tell the sender how much of the file you already have, and the
sender will adjust it's start position accordingly, thus completing
the file.
Zmodem Auto-Start
Automatic start means that you don't have to tell Simterm that
you're starting a Zmodem download. Just tell the BBS to send the
file using Zmodem and sit back. Simterm will recognize the Zmodem
initialize packet and start a Zmodem download for you.
Zmodem 32 bit CRC
The other protocols use a 16 bit CRC for their error checking an
this is reasonably reliable. Zmodem can also use a 16 bit CRC, if
the BBS version of Zmodem doesn't support a 32 bit CRC, but Simterm
prefers a 32 bit CRC for the increased reliability and will inform
the BBS that it wants to use them.
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward
Page 19
REGISTERING SIMTERM
To register Simterm, simply print the file REGISTER.DOC on your
printer, fill in the requested information and mail the form along
with your check or money order to:
Jason R. Alward
129 Concession St. E. Unit #22
Tillsonburg, Ontario
Canada N4G4N4
In order to print the form you can type the following at your DOS
command prompt:
copy register.doc prn
If you don't have a printer you can just send a letter containing
the information requested in the registration form. Be sure to
specify the version of Simterm that you are registering when not
using the supplied form.
When Simterm is going to be installed on more than one machine, you
must register a copy for each machine. Quantity purchase discounts
are as follows:
1 to 10 copies no discount
11 to 25 copies 5% discount
26 to 50 copies 10% discount
51 to 100 copies 15% discount
101 to 200 copies 20% discount
201+ copies 25% discount
Orders over 50 copies are site licenses. You will receive a master
copy and written authorization to make the number of copies
requested.
ALL PRICES AND DISCOUNTS ARE SUBJECT TO CHANGE WITHOUT NOTICE.
Discounts are not cumulative. They apply to single orders of like
products only.
WARRANTY
Simterm is sold "as is" without warranty of any kind, express or
implied, including but not limited to, any warranties of
merchantability and/or fitness for a particular purpose. Jason
Alward shall not be liable for any damages, whether direct,
indirect, special or consequential arising from a failure of
Simterm to operate in the manner desired by the user.
IN NO EVENT WILL JASON ALWARD BE LIABLE FOR ANY DAMAGES TO DATA OR
PROPERTY WHICH MAY BE CAUSED DIRECTLY OR INDIRECTLY BY THE USE OF
SIMTERM. JASON ALWARD SHALL NOT BE LIABLE TO YOU FOR ANY DAMAGES,
INCLUDING ANY LOST PROFITS, LOST SAVINGS, OR OTHER INCIDENTAL OR
CONSEQUENTIAL DAMAGES ARISING OUT OF YOUR USE OR INABILITY TO USE
SIMTERM, OR FOR ANY CLAIM BY ANY OTHER PARTY.
Simterm 2.0 Copyright (c) 1989,1990 - Jason R. Alward