Copyright: Tod Liverseed


Com 6.9

Serial/TCPIP terminal emulator

Com is a serial / tcpip terminal emulator. Com allows you to communicate with BBS systems, dial in servers, or even telnet over the internet to another computer.  Com also allows you to transfer files using many different protocols between computers. Loaded with features, Com will make communicating with other computers a breeze.

Com will check your telnet configuration when it starts up and ask you if you want Com to be the default telnet browser. What this means is that you can activate Com by clicking on a telnet link in either MS internet explorer or Netscape navigator.

New this release

Developed by:

 Tod Liverseed

tgl@means.net

http://www.ll.net/tgl


New features
New features this release.

Below is a list of new features this release.

Auto Session starting - Automatic startup of any session.

Command line parameters - Allows you to startup sessions, run scripts etc from the command line.

User definable sound events - Lets you set up windows sound files for specific events.

Executing Script files in macros - Run script files from a macro.

Executing programs with macros - Run a program from a macro.

Use your own icons for sessions - Now you can use any icons for your sessions.

New script commands - for more powerful scripts.


Sound events

Setting up wav files for events.

You can set up sound files to be played when certain events occur in Com. There is four events that you can set up sound files for.

On Connect

On Disconnect

On File transfer complete

On File transfer failed

To set up sound files press Com’s <setup/sounds> menu. You will see a window like this:

To change a sound event file just click on the button to the right of the text box. You will then see a directory of your computer. Select a sound file and press <OK>. Note: Com only supports *.wav file formats.


Auto starting
Auto start sessions

Starting up a session automatically.

You can direct com to startup any session when it first starts. Basically this is an ‘Auto-connect’ feature. Any session you have defined in your phone book can be set to autostart. Note: Only one session can be selected for auto-start.

To make a session auto-connect go to Com’s ‘setup/autostart’ You will then see a window like this:

All available sessions will be listed in the left hand list. Double clicking on one will designate that entry as the auto-connect session.

To remove any auto-connect session just press the ‘Clear’ button.


Command line

Com’s command line parameters

Com has some command line functions that allow you to do special startup functions. Below is a list of the parameters that cam be used.

-OPEN <comport #> <baud>

Opens the comport in parameter 1 with a baud rate of parameter 2. Example:  -OPEN 1 57600. This will open Com 1 at 57600 baud. The comport parameters are always 8 data bits, 1 stop bit and no parity.

-START <session>

Starts up a specific session. Example:  -START bbs. This will connect to the session you have named ‘bbs’

-TCP <address> <port>

Starts up a tcpip client connection to the address specified in the second parameter. Example: -TCP gcomm.com 23.  This will do a DNS look up on ‘gcomm.com’ and attempt a connect to it. The <port> parameter is not required and defaults to 23 if there is none.

-SCRIPT <scriptname>

Executes the script in the second parameter. Do not include a full path name. Only use the script file name. Com will look in the ‘scripts’ directory for the script and execute it if its found. Example -SCRIPT BBS.SCR.  Executes the ‘bbs.scr’ script in Com’s script file directory.


Com 6.9 serial terms
Com 6.9

Serial communication terms

Below you will find some terms you may want to familiarize your self with. I am not going to go into great depth about Win95/NT serial communications, but I will explain a few common terms.

Com port

Baud rate

Data bits

Stop bits

Parity

Flow control


Comport
A communications port is the hardware with which Com is going to connect to. This is typically a modem, but can be other devices also. In the typical PC you may have up to 4 comports. These are usually numbered 1 - 4. Under special conditions you may have up to 16 ports.


Baud rate
Simply said, baud rate means speed. The higher the baud rate, the faster you can communicate. Baud rates range typically from 2400 - 115200. 2400 baud means that 2400 bits of information are transmitted over the communications line per second.


Data bits
The term data bits refers to the amount of data bits that are in an 8 bit byte. If this confuses you, don’t worry. 99% of the time you can leave this at 8. CompuServe typically uses 7 bits though.


Stop bits
Stop bits follow the data bits. These bits mark the end of each data byte. Typically this is 1.


Parity
Parity is an error checking method. Normally this will be set to none. You need to know what the remote system requires. Most BBS systems do NOT use parity.


Flow control
Flow control refers to the controlling of the data to and from a communications port. For instance, if data is coming in too fast for a computer to process then flow control is used to pause the incoming data. There are two versions of flow control, hardware and software. Typically hardware flow control is the best.


Com concepts
Com 6.9

Concepts

If you are new to computer communications then you may want to take a peek at some of the terms and concepts below.

File transfers

Terminal emulation

Scripting

Macros


File transfers
Com 6.9

File transfers and protocols

Sooner or later you will most likely need to transfer files between two computers. Unfortunately there are a lot of ways this is done. Com supports most though. File transfers are governed by protocols. Com supports many different protocols. A protocol determines how the file is send, controls error correction and does all the hard communication work for you.

In a typical transfer, one machine will be the receiver and the other machine will be the transmitter. The sender usually starts the sequence first by starting a protocol send. The receiver then starts a receive.The protocol handles the rest. Below is a list of some of the protocols that Com supports. See the file transfer reference for more details

Xmodem

Ymodem

Zmodem

Kermit

Ascii

Compuserve B+

Pure Binary


Xmodem
This is the oldest (or near) file protocol out there. Xmodem is very simple and slow. It transfers data in 128 Byte blocks then waits for an acknowledgment from the receiving system. There are few variations of this protocol:

Xmodem crc: This version uses crc error checking.

Xmodem 1K: This version transmits 1024 byte blocks instead of 128 byte blocks. This speeds up the transfer greatly.

Xmodem 1K G: Same as above except this is a streaming version. It does not wait for the receiver to acknowledge.


Ymodem
This protocol is basically Xmodem1K with a new feature. It allows multiple files to be transferred, one after another. This is called a batch protocol. Another plus is that the transmitter supplies the filename, size and date information to the receiver. Com supports one other mutation of this protocol:

Ymodem G: This is a very fast mutation of Ymodem. It is a streaming protocol that does not perform error checking. It relies on the modem to perform any error correction. You should not even try this protocol unless your modem supports error correction.


Zmodem
Zmodem Is probably the most popular file transfer protocol there is. It is almost as fast as Ymodem G, and can easily recover from errors. It even allows interrupted file transfers to be continued at a later time. This is probably the protocol you should use.


Kermit
Kermit was made to handle file transfers under special  conditions. Conditions like serial data bits of only 7 bits, and transferring between mainframe computers and PCs.


Ascii transfers
Ascii transfers are used to transfer text files. Typically you will want to avoid this protocol unless you are sending text files to special machines or between to different kinds of computers.


Compuserve B+
CompuServe B+ is a protocol that is only used by the on-line service CompuServe. Com only supports the B+ version.


Binary transfer
Com has a special ‘one-way’ protocol. It allows you to send a file in its pure binary format to a decive. Note you cannot receive pure binary(yet). To start a pure binary send just press the ‘Transfer’ button then select ‘Pure Binary’.


Emulation
Com 6.9

Terminal emulation

Terminal emulation simply means how the incoming and outgoing information is translated. Emulation controls how the information is displayed on the screen. This includes colors, graphics, blinking text and cursor position.

Keyboard emulation is a method of translating your key strokes into something that the remote computer can understand. In most cases you can leave this set to ANSI.

ANSI - This emulation is almost always the default emulation of BBS systems. The emulation provided by Com is a subset of the X3.64 ANSI standard.

VT52, VT100 - These types are typically found on main-frame computers.

TN3270 - This is a subset of the 3270 telnet emulation. This too is typically found on main-frame computers.

See Terminal Emulation for more details.


Macros
Com 6.9

Macros and their use

Macros are an easy way to perform actions with one mouse click. For instance, you could make a macro for your username and another for your password. When you are prompted for your username just click the username button. Com will send you username to the remote computer.

Com features 50 completely configurable macros that you can define. They are grouped in 5 pages of ten. You may set captions for each page. The macro buttons can be docked also. When docked the macros become part of the main window, usually below the main buttons. See the Macro reference for more details.


Script example
Com 6.9

Scripting and Auto scripting

See the Script Referenceand Auto scripting for more info.

Scripting is a way automatically execute instructions depending upon prompts received from the remote session. A good example of this is logging into a BBS. You are prompted for your name or user ID and then prompted for a password. You could have Com watch for these prompts and send your name and password automatically. Suppose you are logging in to a system that prompts you for login information like this:

What is your first name: <Tod>

What is your last name: <Liverseed>

You could make a script like this:

; Wait for the first name prompt for 20 seconds.

Wait ‘first name’ 20000

;Check for success. If not then exit script

If fail error

;Send your name.

send ‘Tod’

;Wait for the last name prompt for 5 seconds.

Wait ‘last name’ 5000

;Exit script if prompt not found in 5 seconds.

if fail error

;Send last name.

send ‘Liverseed’

;Label

:error


Script reference
Com 6.9

Script language

:<label>

;<comment>

CHDIR      <drive:directory>

DATABITS   <value>

DELAY      <duration in ticks>

DELETE     <filemask>

DISPLAY  'Just did something'

DONEPORT

DOWNLOAD   <protocol>

EXECFILE <filename>

GOTO     <label>

IF       1/2/3...127 <label>

IF       SUCCESS/TIMEOUT/FAIL  <label>

INITPORT   <COM1..COM9> <baud>

OPENCLIENT   <address>  <port>

PARITY    <value>

PLAYSOUND <sound file>

SEND     'XXXXXX'

SENDBREAK  <duration in ticks>

SENDFILE <filename>

SET      <option> <data>

    ABORTNOCARRIER <true/false>

    RETRY  <data>

    DIRECTORY <drive:directory>

    FILEMASK <filemask>

    FILENAME <filename>

    WRITEFAIL

    WRITERENAME

    WRITEANYWAY

    ZWRITECLOBBER

    ZWRITEPROTECT

    ZWRITENEWER

    ZSKIPNOFILE <true/false>

STOPBITS    <value>

UPLOAD       <protocol>

WAIT     'XXXXX' <timeout in ticks>

WAITFORTIME <time>

WAITMULTI  'XXX|ZZZ|YYY', <timeout in ticks>


Script Labels
:<label>

A point in the script file that can be jumped to via a GOTO or IFinstruction. A label name can be any type of string without embeddedspaces. For example ':TopOfLoop', ':TOP_OF_LOOP' are both acceptable;':top of loop' is not.


Script Comments
;<comment>

Any line that starts with a semicolon is considered a comment. Blanklines are also considered comments and may be freely added forreadability.


Initport
INITPORT   <COM1..COM9> <baud>

Open the specified port at the specified baud rate. The lineparameters are always no parity, 8 databits and 1 stop bit. Only oneport at a time may be opened.


DONEPORT

Closes a port previously opened with INITPORT.


Send
SEND     'XXXXXX'

Transmits the string 'XXXXXX'. Control characters may transmitted by preceding a character with '^'. For example, a control C character is represented by ^C. You'll use this feature most often when sending carriage returns. For example, SEND 'myname^M' might be an appropriate response to a logon prompt where you would normally type your name and press <Enter>. NOTE: Unlike Object Pascal strings the control characters must be *inside* the quote marks, if quote marks are necessary. If the string does not contain any embedded blanks the beginning and ending quotes can be omitted. The quotes are required if the string has embedded blanks. Here are some examples to illustrate this point:

  SEND ABC      sends ABC

  SEND 'ABC'    sends ABC

  SEND A B C    sends only the A ('B C' is considered a comment)

  SEND 'A B C'  sends A B C


Wait
WAIT     'XXXXX' <timeout in ticks>

Waits up to <timeout in ticks> ticks for a particular received string. The string comparison is always case insensitive. However, the string comparison need not be complete. If, for example, a host returns the string 'Host XXXX ready' where XXXX might vary from session to session, the WAIT command should wait for 'ready' only. As with the SEND command, beginning and ending quotes are only required if the string contains embedded blanks.

This command sets one of three conditions: SUCCESS, FAIL or TIMEOUT, which can be tested with the IF command. SUCCESS is set if the string is received before the timeout. TIMEOUT is set if the timeout expires before the string is received. FAIL is set if the timeout expires and all retries are exhausted.


IF
IF       SUCCESS/TIMEOUT/FAIL  <label>

Tests the condition set by the last command and, if the tested condition is true, jumps to <label>. If the condition is not true then execution continues with the next statement.


Wait multi
WAITMULTI  'XXX|ZZZ|YYY', <timeout in ticks>

Waits up to <timeout in ticks> ticks for one of several substrings. The bar character (|) separates the substrings. The comparisons are always case insensitive. The maximum length of the entire string is 255characters. As with the SEND command, beginning and ending quotes are only required if the string contains embedded blanks. This command sets a numeric condition result based on the substring received: '1' is set if the first substring is received, '2' is set if the second substring is received, and so on. If none of the strings are received then TIMEOUT is set; if all retries have been exhausted then FAIL is set.


If 1/2/3
IF       1/2/3...127 <label>

Tests the condition set by the last WAITMULTI command and, if the tested condition is true, jumps to <label>. If the condition is not true then execution continues with the next statement.

The following example sends a modem dial command, then waits for one of CONNECT, NO CARRIER, or BUSY responses. If none of the responses are received then control falls through to the GOTO statement:

  send 'atdt260-9726^m'

  waitmulti 'connect|no carrier|busy' 1092

  if 1 HandleConnect

  if 2 HandleNoConnect

  if 3 HandleBusy

  goto HandleTimeout

  :HandleConnect

    ...proceed with session

  :HandleNoConnect

    ...handle noconnect error

  :HandleBusy

    ...handle busy error

  ...


Goto
GOTO     <label>

Unconditionally jumps to <label>.


Display
DISPLAY  'Just did something'

Generates a call to the TApdScript component's OnScriptDisplay eventhandler. If the DisplayToTerminal property is True and a terminal component exists on the form then the string is also displayed to the terminal. This can be used to monitor the progress of the script and to aid in debugging.


Send break
SENDBREAK  <duration in ticks>

Transmit a break of <duration in ticks> ticks.


Delay
DELAY      <duration in ticks>

Delays for <duration in ticks> ticks. The script doesn't yield during delays so keep the delays as short as possible.


Set
SET      <option> <data>

Sets or resets a variety of script and protocol options. Some options require a <data> argument; some do not.


Retry
   RETRY  <data>

  Sets an internal retry count that is incremented whenever WAIT or  WAITMULTI result in a TIMEOUT condition. When <retry count> TIMEOUTs  have occurred the FAIL condition is set. The default is 1, meaning  no retries are attempted.


Directory
   DIRECTORY <drive:directory>

  Sets the destination directory used during protocol receives.


Filemask
   FILEMASK <filemask>

  Sets the file mask used during protocol transfers. For non-batch  protocols this must be a specific file name rather than a mask


Filename
   FILENAME <filename>

  Sets the received file name for protocols that do not transfer the  file name (all Xmodem protocols).


AbortNoCarrier
ABORTNOCARRIER <true/false>

Determines of Com should abort the file transfer if the carrier signal is lost. A value of true makes Com abort if there is no carrier signal.


   WRITEFAIL

  Sets the WriteFailAction property to wfWriteFail for all protocols  except Zmodem -- meaning that if an incoming file already exists the  incoming file is skipped.


   WRITERENAME

  Sets the WriteFailAction property to wfWriteRename for all protocols  except Zmodem -- meaning that if an incoming file already exists the  incoming file is renamed (the first character of the file name is  replaced with $).


   WRITEANYWAY

  Sets the WriteFailAction property to wfWriteAnyway for all protocols  except Zmodem -- meaning that if an incoming file already exists the existing file is overwritten.


   ZWRITECLOBBER

  Sets the ZmodemFileOption property to zfoWriteClobber -- meaning that  if an incoming file already exists the existing file is overwritten.


   ZWRITEPROTECT

  Sets the ZmodemFileOption property to zfWriteProtect option --  meaning that if an incoming file already exists the incoming file is skipped.


   ZWRITENEWER

  Sets the ZmodemFileOption property to zfWriteNewer option -- meaning that if an incoming file already exists the existing file is overwritten only if the incoming file is newer.


ZSkipnofile
   ZSKIPNOFILE <true/false>

  Sets the ZmodemSkipNoFile property to True or False. When this option is True incoming files are skipped if they do *not* already exist on the receiving machine.


Upload
UPLOAD       <protocol>

Starts transmitting files using <protocol>. <protocol> must be one ofXMODEM, XMODEM1K, XMODEM1KG, YMODEM, YMODEMG, ZMODEM or KERMIT. All files matching the mask previously specified by SET FILEMASK are transmitted.


Download
DOWNLOAD   <protocol>

Starts receiving files using <protocol>. <protocol> must be one of XMODEM, XMODEM1K, XMODEM1KG, YMODEM, YMODEMG, ZMODEM or KERMIT. If using any of the Xmodem protocols you must call SET FILENAME before DOWNLOAD to specify the name of the received file.


ChDir
CHDIR      <drive:directory>

Changes the current drive and/or directory to the one specified by<drive:directory>. If the drive or directory does not exist the FAIL condition is set.


Delete
DELETE     <filemask>

Deletes all files matching <filemask>. If no path is specified the current directory is used.


SendFile
SENDFILE <filename>

This command sends any file to the remote system. It uses no protocol. It is send just as if you were typing. This could be handy for sending a signature to add to the end of a message or any other need to send a lot of data quickly.


Playsound
PLAYSOUND <filename>

Plays a windows sound file in the *.wav format. You may or may not include the full path name of the sound file. If you do not supply the full path name, Com will look in its sound directory.


Execfile
EXECFILE <filename>

Executes a program file. You need to include the entire file path name unless the program is in your current path.


Waitfortime
WAITFORTIME <time>

Stalls the script until a specified time. Example:  Waitfortime 20:00:00.  This will stall the script until 8:00:00 PM.


Ticks

System Bios clock ticks. About 18.2 ticks per second


Script Databits
Databits   <value>

Allows you to set the comport databits value. Value may be 5 - 8. You may change this with the comport open or closed.


Script Stop bits
Stopbits   <value>

Sets the comport stop bits. Value may be 1 or 2. You may change this with the comport open or closed.


Script parity
Parity    <value>

Sets comport parity. Value may be NONE, EVEN, ODD, SPACE, or MARK. You may change the parity of a comport with the port open or closed.


Openclient
Openclient   <Address>  <Port>

Opens a tcpip client connection. <Address> is the address to connect to.  <Port> is the port to connect to. This command is still under development.


Auto scripting
Com 6.9

Auto scripting

Auto scripting is Com’s ability to learn a task then perform it unattended. A good example is logging into a BBS. To tell Com to learn a login just select record from the scripts button. Then dial the entry. Login as normal. Once logged in and waiting at the main menu you can stop the learning process by selecting ‘halt record’ from the script button. Com will then ask you the file name you wish to use. You will then be asked if you want to assign the script you made as the default login script for the entry you are dialing. If you choose ‘Yes’ then Com will execute this script every time you dial the entry.

Note: You may not record a script while executing another. Learning of a script is not allways full proof. Com does a good job trying to figure out whats happening but it may fail on some tasks. When this happens you may need to edit the script by hand.


Macro reference
Com 6.9 Macros

Macro reference

Macros are a way of sending a phrase or command to the remote system with a single mouse click or button press. To use macros you must first set them up.  Lets set up a few macros that send your username and password to a remote BBS system. You can do this with the macros docked or floating.

Setting up macro page captions.

Setting up macro button text.

Setting up macro button captions.

Executing scripts with macros

Executing Programs in macros


Changing macro captions
Com 6.9 Macros

Setting up macro captions.

Just right click on the ‘Page’ bar. Then click on change caption. You may enter pretty much anything you want in there for a caption. You can now do this for all the other pages. Note: be sure to make the page active before changing the caption or you may change the caption of the currently active page. Com will now remember these until you change them.


Macro button captions
Com 6.9 Macros

Macro Text

To change the caption of a button (whether it has one already or not) just right click you mouse over the button you would like to alter. Then click on change caption. Enter the new caption of the button and press enter. Remember to keep the captions short so they fit in the button!


Macro text
Com 6.9 Macros

Changing the macro text.

The macro text is the actual text that will get sent to the remote system when you press the button ( or associated F key). There is a few things to know about the macro text. You can send control characters to the remote system by preceding them with a ‘^’. Sooner or later you will need to know this because to send a carriage return (enter key) to the remote you must add ‘^M’ to the end of the text. Example.

This would send the text “Hi There” to the remote system but would not send a carriage return. You would have to press the enter key before the remote system responded to the command. To do this just change it to this:

Now when you press the macro button “Hi There” and a <cr>  will be sent to the remote. Note control characters must be in caps.

There is also a way to send a hexidecimal code in a macro. To do this preceed the hex code with ‘<H>’. To send the same text as above you could also do this:


Scripts and Macros
Macros and scripts

Executing a script from a macro.

You may at some time want to execute a script from a macro button. This could come in handy for logins or signatures to your mail. The first step is to create the script. See Scripting for more info on creating scripts. You will use the macro command ‘{Script}’ to execute the script file. Do not supply the full pathname for your script. Only supply the script file name. Com will look in the scripts directory for the script file. If one is not found then the macro is aborted.

Example:

When you pressed the macro button it will execute the script file ‘Login.scr’ located in your scripts directory.


Macros and programs

Executing programs with macros

You may execute any programs you wish using macros. For instance you may want to launch an off-line mail reader when you receive mail. Or you may want to launch notepad.exe for keeping notes on a session.  Example:

When you click on a macro button that has this text it will run ‘Notepad’.


CR
<cr> means pressing the enter key on your keyboard.


Function key
Function key. F1 though F10.


Ctrl M
This is the equivalent to pressing <ctrl>M or pressing the <enter> key.


File transfers
Com 6.9 File transfers

File transfers - The how-to reference

You at one time or another will need to transfer a file between you computer and a remote computer. Com makes it very easy for you to do this. Below I will guide you through the process.

The first thing you should do is set up your default download and upload directories.

First lets assume you are hooked up to a remote system and you have found the file you wish to transfer from the remote system to your system. Now you must choose the type of protocol you are going to use. Typically Zmodem is the protocol of choice for most people. This protocol is very robust and fast. But you MUST pick a procotol that the remote system supports. Remember that the remote system is in charge, not you.

Now lets assume that the remote system only supports Xmodem and Ymodem. The remote system will ask you the protocol you wish to use. Lets say we choose Ymodem. The remote system then starts sending the file. Now its up to you to start receiving the file. Press the “Transfer” button.

Just click on the Ymodem protocol and press OK. The File transfer status window will then open showing you the details of the transfer. When the transfer is complete the transfer window will disappear. You may cancel a transfer at any time by pressing <esc> or the cancel button.

Sending files is just as easy. Just choose the protocol and select the files to send Com does the rest.


From the main terminal window press the ‘Transfer’ button then choose ‘Download Path’ or ‘Upload Path’. Files you download will be sent into the download directory.


Emulation
Com 6.9

Terminal emulation

What emulation means is how Com interprets incoming and out-going characters. There are many kinds of emulation: ANSI, VT52, VT100, TN3270 and many more. Com supports the first 3 and a subset of the TN3270 emulation. You cant modify the way Com handles incoming characters but you can modify how Com interprets outgoing characters. To do this click on the ‘Setup’ button and choose keyboard. You can then modify the way com handles key strokes.

See Modifying key mapping for more details.


Key editor
 Com 6.9

Modifying the keyboard mapping

You are allowed to change to change the keys that are enabled ‘Blackened’. For instance, to change the way the F1 key reacts just click on the F1 key with your mouse. Below in the mappings you can see the different key codes that are sent in response to pressing F1.

For instance, In the ANSI emulation the key strokes sent when you press  F1 are usually <ESC>OP. This means pressing the escape key then the O then the P keys. You can change this to anything you need to. You can even define different key strokes for  <CTRL>F1.

You may also create your own type too. Just press the New Type button then fill in the mappings you want. Leaving a character blank will make COM use default mappings.

A new notes.

<ESC> sends the ASCII code 27.

<CTRL> send the is like pressing the ctrl button while pressing a key.

<H>xx  sends the hex code xx to the remote system. This may be 00 - FF and must be two characters in length.

Note:	You must use capital letters in the key words <ESC> , <CTRL>, and <H>.


Protocol Options
Com 6.9 - Protocol

Protocol Options

Honor incoming directory

Include outgoing directory

Set RTS low for writes

Abort if carrier lost

Name collision

File options override

Skip if not existing

Crash recovery

8K mode

Auto Zmodem download

File management

Kermit Block length

Kermit Windows

Kermit Timeout

Ascii Inter character delay

Ascii inter line delay

Ascii EOF timeout

CR Translation

LF Translation


Honor Dictory
Determines whether the protocol honors the path name of the incoming file.


Include directory
When you set on, the protocol will send the complete file path for every file it transmits.


RTS low for write
This option is only effective if disk cache is disabled. When this in enabled and hardware flow control is being used Com will lower the RTS line while writing to disk.


Abort on no carrier
 The protocol will abort abort if there is no carrier signal. Do not turn this on when you are using a TCPIP connect.


Name conflict
This determines what COM does with an incoming file already exists. This option does not apply to Zmodem.

Reject - Rejects the incoming file

Rename - Renames the incoming file. The first character in the filename is replaced with a ‘$’. If that file exists it will be overwritten.

Overwrite - Overwrites the file.


Zmodem options override
Causes COM to ignore the senders file options and use its own. Zmodem only.


Skip if non exist
If checked then Com will reject a file is it does NOT exist on the system.


Zmodem recover
This option applies only to sending files. If this option is set the transmitter requests the receiver to resume a file. The receiver responds by sending the current file size. The transmitter then starts sending at that position.


Zmodem 8K
When enabled this causes zmodem to use 8K blocks instead of 1K blocks. Make sure the remote system supports this before checking this box.


Zmodem auto start
This option enabled the Zmodem auto start. When enabled your system will watch for a zmodem transfer and start one when it detects an incoming file. Default is ON.


Zmodem options
These are the Zmodem file options

Newer or longer - Transfer if the file is new, newer or longer.

CRC different - This option is not supported and reserved for future use.

Append - Transfer the file is it is new, append if the file exists.

Overwrite - Overwrite the existing file.

Newer - Transfer the file only if it is either new or newer.

Different - Transfer if new or different file dates or lengths.

Reject - Transfer only if a new file.


Kermit block length
This option sets the maximum kermit packet length in bytes. Default = 80.


Kermit windows
If 1-27 then Kermit will use sliding windows to speed transfers.


Kermit time out
Determines how many seconds Kermit will wait for the next byte.


Ascii char delay
Number of milliseconds to wait between each character.


Ascii line delay
Number of milliseconds to wait between each line.


Ascii EOF
Number of seconds before the ASCII transfer automatically ends.


Ascii CR translation
Determines what COM does with a CR in an ASCII transfer


Ascii LF translation
Determines what COM does with a LF in an ASCII transfer


Selecting files
Com 6.9 - File transfers

Selecting files to upload

Selecting files is easy. You may drag and drop from the directory boxes above or from the windows explorer. To eliminate a single file from the list just double click on it.

Note: When you drop a directory in the box ALL subdirectories are also selected. If you were to drop your root drive (‘C:\’), It may take several seconds to scan through all the directories. When you are complete press the OK button. The file transfer will then begin.


Setting comport params
Com 6.9 - Comport parameters

Setting the parameters of a comport

If you ever have the need to directly connect to a communications port then you will need to set the parameters. See Serial terms for more info.

In most instances you will want to use RTS/CTS hardware flow control. Try to never have more than one type of flow control enabled at the same time. The Initialize string is sent to the comport after it has been opened. You may leave this blank or put a modem initialization string here, example:

AT&F1^M

Note you must follow the init string with a ^M for most modems. This acts like a carriage return.


Entries
Com 6.9 - Entries

Creating a new entry

Creating a new entry in the phone book is real easy. From the main phonebook window press the New button. You will then see the entry properties page. Since Com supports both serial and TCPIP connects you need to decide what type of a connect you are making.

Serial (Modem) connect:

•	Make up a name and place it in the name box.

•	Make sure the serial check box is checked.

•	Type in the phone number (if any).

•	Choose the decive you want to use.

•	To ‘wait for call’ check the ‘wait for call’ box..

•	Select a startup script (advanced users) if needed.

•	Press OK.

TCPIP (Internet) connect:

•	Make up a name and type it in the name box.

•	Place a check in the TCPIP box.

•	Type in  the address or IP of the remote computer.

•	Type in the port.

•	Choose the mode of connect. Client makes the call, server waits for a call.

•	Click OK.

Few notes on TCPIP connects. You may use names for the ports also. Example ‘telnet’ is the same as putting 23 here. When you are in server mode, you are only allowed to have one connect at a time due to the limitations of the file transfers etc.


Terminal options
Com 6.9 - Terminal

Terminal options.

Just click on the setting you are wondering about.


Fore color
Click here to set the fore color. This is the text and graphics color. Note: ANSI, VT100, and TN3270 will ignore this setting most of the time.


Bold fore color
Clicking here will set the terminal color to be bold. This does not effect the font size.


Ignore background color
When checked this will make Com ignore all incoming background color commands. In other words, if you set the background color to be blue, it will stay blue, always.


Back color
Set the terminals background color. This change does not happen immediately, you must either clear the terminal window or make the remote system refresh the screen.


Bold back color
Makes the background color be bold. Example, to have a pure white background check the ‘white’ color option and check the ‘bold’ box.


Terminal font
Click here to change the terminal font. NOTE: to display ANSI graphics correctly you must use either the ComFont or Terminal font.


Terminal emmulation
Select the emulation for the terminal window. See emulation for more details


Key emulation
Select the keyboard mapping you wish to use. See keyboard mapping for more details.


Process Extended
If selected then com will process extended key strokes, line F1-F12, arrow keys etc.


Process all
If selected then Com will process all alpha numeric keys.


Map function keys
When checked Com will not process the function keys. Instead F1 - F10 keys will be mapped to Macro 1 through Macro 10 on the currently displayed macro page.


Trace port
Selected this will trace comport/tcpip activity to a file called ‘COM.TRC’. All characters send and received will be displayed in this file. This is mainly a trouble shooting option.


CR Translation
When checked this will translate the <enter> key into <enter><linefeed>.


CR and LF
When checked Com translates the <enter> key into <linefeed><enter>.


Doorway mode
This is a special terminal emulation. When checked COM will send the raw key strokes to the remote system. Do not use this unless you are sure of what you are doing.


Log port
Mainly for trouble shooting procedures. This will log Com’s internal workings in response to communication events.


Rows
The amount of rows that Com’s terminal window will display.


Columns
The number of columns that Com’s terminal window will display.


Registering
Com 6.9 - Registering

How to register COM

Com was designed for two reasons. It seems that good, cheap communications software is impossible to find. The software is either no good or is over-blown for the average user. The other reason for Com’s existence is because I like to write code. I wrote COM for you, the user. All I ask of you is support me a little. I will continue to develop applications like this and keep costs at a minimum if  I get enough support.

Registering Com will entitle you to free updates (for ever!) free technical support, and will remove the startup splash screen. I have not disabled Com in anyway. It is fully functional with no time limits. I just encourage you to support me.

To register send a check or money order (no credit cards) to:

Tod Liverseed

PO Box 422

Morristown MN

55052

Copies	Cost

1	$25.00/copy

2-10	$20.00/copy

11 - 20	$18.30/copy

21 - 50	$17.40/copy

51 - 100	$17.00/copy

100+	$16.90/copy

You must add 6.5% sales tax to all orders.

Also specify the name you wish the program to registered to. I will send out the registration codes via e-mail, fax or snail mail. Justspecify which.

Customizing and custom programming also are available.

Email your requests, comments, or suggestions to:

tgl@means.net

http://www.ll.net/tgl


Icons
Session Icons

Using icons for your sessions

You can use any icons you want for your sessions. To add icons to the list of available icons copy the *.ico files into coms icon directory. This is usually ‘C:\Program files\Tgl Micro\Com\Icons’. You may also press the ‘Add an icon’ button. This lets you add an icon to the list by using a file dialog.

Removing an icon is real easy. Just select the icon you want removed and click the ‘Delete an icon’ button. Note if you have and sessions that use this icon their icon will change.

If Com is running when you place the new icons in the directory you will need to refresh the Icon list. In Com’s Icon window click on the ‘Refresh list’ button. Note: Adding or deleting icons will change the icons of your current sessions.