Thread View: de.comp.sources.unix
1 messages
1 total messages
Started by Frank Kaefer
Wed, 22 Jul 1992 05:04
v01i007: Pcomm 2.0 - telecommunication program for Unix, Part07/08
Author: Frank Kaefer
Date: Wed, 22 Jul 1992 05:04
Date: Wed, 22 Jul 1992 05:04
2656 lines
75405 bytes
75405 bytes
Submitted-by: egray@osiris.cso.uiuc.edu (Emmet P. Gray)
Posting-number: Volume 1, Issue 7
Archive-name: pcomm/part07
#! /bin/sh
# This is a shell archive. Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file". To overwrite existing
# files, type "sh file -c". You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g.. If this archive is complete, you
# will see the following message at the end:
# "End of archive 7 (of 8)."
# Contents: pcomm-2.0/Doc.me
# Wrapped by fkk@stasys on Tue Jul 21 22:06:01 1992
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'pcomm-2.0/Doc.me' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'pcomm-2.0/Doc.me'\"
else
echo shar: Extracting \"'pcomm-2.0/Doc.me'\" \(68115 characters\)
sed "s/^X//" >'pcomm-2.0/Doc.me' <<'END_OF_FILE'
X.\" format this thru tbl and the me macro package.
X.po 1.0i \" 1 inch page offset
X.ps 10 \" 10 point type
X.nh \" no hyphenation
X.ll 6.5i \" line length (8.5in -1.0in, -1.0in)
X.nr sf 3 \" section font is bold
X.nr tf 1 \" title font is roman
X.oh ''Pcomm Reference Manual'Page %'
X.eh 'Page %'Pcomm Reference Manual''
X.\" this macro is used to change the proportional font to 12 pitch
X.de CS
X.cs R 22
X..
X.\" and this one puts things back
X.ds Cs
X.cs R
X..
X.tp
X.sp 7
X.CS
X.(l C
XPPPPPP CCCC OOOO MM MM MM MM
XP P C O O M M M M M M M M
XPPPPPP C O O M M M M M M
XP C O O M M M M
XP CCCC OOOO M M M M
X.)l
X.Cs
X.sp 7
X.ce 11
XPcomm Reference Manual
X.sp
Xversion 2.0
X.sp 3
X written by
X.sp
XEmmet P. Gray
X.cc A
X...!uunet!uiucuxc!fthood!egray
XAcc .
Xfthood!egray@uxc.cso.uiuc.edu
X.ce 0
X.sp 6
XPcomm is a public domain telecommunication program for Unix that is
Xdesigned to operate similarly to the MSDOS program, ProComm. ProComm (TM)
Xis copyrighted by Datastorm Technologies, Inc. This is a completely new
Xprogram and contains no ProComm source code. This is not a Datastorm
Xproduct.
X.pn 1
X.bp
X.sh 1 INTRODUCTION
X.(x
X\*($n INTRODUCTION
X.)x
X.lp
XPcomm is a public domain, menu driven, telecommunication program
Xdesigned to provide the same \*(lqease of use\*(rq as similar programs
Xavailable in MSDOS. Some of its features are:
X.br
X.in +0.5i
X.(b L
X\(bu Large dialing directory
X\(bu Full scripting feature
X\(bu Automatic redial feature
X\(bu Six built-in file transfer protocols
X\(bu External file transfer program support
X\(bu Data logging (log of the terminal session)
X\(bu Printer logging
X\(bu Screen dump to a file
X\(bu Shell escapes to Unix
X\(bu Help screen
X\(bu Keyboard macros
X\(bu User customization
X\(bu Administrative logging of phone calls
X\(bu Optional modem configuration per dialing directory entry
X\(bu Administrative limits on long distance access
X.)b
X.in
X.lp
XPcomm does not emulate any particular terminal. Whatever terminal
Xyou're on, is what the remote system \*(lqsees\*(rq.
X.sh 2 Abbreviations
X.(x
X \*($n Abbreviations
X.)x
X.lp
XPcomm uses the notation \*(lq^A-X\*(rq to mean control-A followed by the
Xletter X. The dash (\-) in the notation is just for clarity; it is not
Xincluded in the actual command sequence. Also, there is no distinction
Xbetween upper and lower case letters.
X.lp
XThe following abbreviations appear in Pcomm:
X.br
X.in +0.5i
X.(b L
X.TS
Xl l.
X<CR> carriage return key (sometimes labeled Enter)
X<ESC> escape key
X<SPACE> space bar
X<DEL> del key
X<up> up arrow key
X<down> down arrow key
XLF line feed character (control-J)
XCR carriage return character (control-M)
X.TE
X.)b
X.in
X.sh 2 Requirements
X.(x
X \*($n Requirements
X.)x
X.lp
XPcomm will not run on terminals with a screen size of less than 80
Xcolumns by 24 lines or on terminals that lack cursor movement
Xcapabilities. For terminals without arrow keys, use the letter
X\*(lqU\*(rq in place of \*(lqup arrow\*(rq and the letter \*(lqN\*(rq in
Xplace of \*(lqdown arrow\*(rq (the letter \*(lqD\*(rq would have been a
Xmore obvious choice, but, unfortunately, it is used elsewhere).
X.sh 2 "Support files"
X.(x
X \*($n Support files
X.)x
X.lp
XPcomm uses four support files, namely:
X.br
X.in +0.5i
X.(b L
X.TS
Xl l.
Xpcomm\^.\^dial_dir the dialing directory
Xpcomm\^.\^extrnl the external file transfer programs
Xpcomm\^.\^modem the modem/TTY database
Xpcomm\^.\^param the start-up default parameters
X.TE
X.)b
X.in
X.lp
XThere is a default directory (typically \*(lq/usr/local/lib/pcomm\*(rq)
Xwhere the \*(lqstandard\*(rq support files live. Since the average user
Xwon't have write permission on these files, it's assumed that they will
Xcopy one or more of these standard files to their own directories and
Xedit them to suit their needs.
X.lp
XPcomm can use the environmental variable \*(lqPCOMM\*(rq to search for
Xthese \*(lqprivate\*(rq support files. If used, the variable must
Xcontain the path to the directory containing the files. You can
X\*(lqmix and match\*(rq the use of standard and private support files.
XFor example, the pcomm\^.\^modem file is rarely changed by the user so there
Xwould be no need to copy that file to the private directory.
X.lp
XPcomm also uses normal Unix shell scripts to perform the \*(lqchat\*(rq
Xsequences necessary to automatically log a user onto a system.
X.lp
XThe following directories are searched to find the support files and the
Xshell scripts:
X.br
X.in +0.5i
X.(b L
X1) directory given with the \*(lq\-d\*(rq option
X2) directory in the PCOMM environmental variable
X3) the current working directory
X4) the default directory (compiled into Pcomm)
X.)b
X.in
X.bp
X.\" force "chapter" heading to odd page
X.if e \{
X.ep
X.bp\}
X.sh 1 "RUNNING PCOMM"
X.\" put a blank line in the index
X.(x
X
X.)x _
X.(x
X\*($n RUNNING PCOMM
X.)x
X.lp
XPcomm has the following command line syntax.
X.sp
X.in +0.5i
X.(b L
Xpcomm [\-d directory] [\-f system name] [\-a auxiliary file]
X.br
X.ti +\w'pcomm 'u
X[-e|o|n] [-w word length] [-b baud rate] [-p phone number]
X.)b
X.in
X.lp
XThe \*(lq\-d\*(rq option allows you to specify an additional path to be
Xused when searching for the Pcomm support files. This option is often
Xuseful for \*(lqborrowing\*(rq someone else's dialing directory.
X.lp
XThe \*(lq\-f\*(rq option is used to specify automatic dialing of an entry
Xin the dialing directory. The name field in the dialing directory
X(described later) is checked against the string given on the command
Xline. If a match is found, that entry is automatically dialed. The
Xmatch does not consider upper and lower case differences.
X.lp
XThe \*(lq\-a\*(rq option is used to specify a script file to be
X\*(lqplayed\*(rq prior to dialing, to specify the TTY to be use, or to
Xspecify the mdoem to be used. This feature can be used to customize
XPcomm options or perform unattended operations.
X.lp
XThe remaining options are used to set the parity, data bits, baud rate,
Xand telephone number from the command line.
X.br
X.in +0.5i
X.(b L
X.TS
Xl l.
X\-e Set the parity to even
X\-o Set the parity to odd
X\-n Set the parity to none
X\-b Set the baud rate
X\-p Dial this number
X.TE
X.)b
X.in
X.sh 2 "Hot key"
X.(x
X \*($n Hot key
X.)x
X.lp
XPcomm uses a \*(lqhot key\*(rq to precede each command. (The value of
Xthe hot key is a user tunable parameter, but for the purpose of this
Xdocument we'll assume the hot key is defined as control-A).
X.lp
XThe hot key is used to put Pcomm in the command mode. For example, to
Xget the help screen, you type control-A (to get to the command mode)
Xthen the number 0 (to display the help screen). When a command is
Xcompleted, Pcomm returns to the terminal mode.
X.lp
X.ft I
XNOTE:\ \ While in the command mode, the communication with the remote
Xsystem is temporarily suspended.
X.ft
X.sh 2 "Status line"
X.(x
X \*($n Status line
X.)x
X.lp
XWhenever Pcomm is in the command mode (or is not currently connected to
Xa remote) a status line is displayed at the bottom of the screen. A
Xtypical status line might look like this:
X.br
X.if n .po 0 \" table may be more than 6.5in wide
X.if n .ll 8.5i
X.CS
X.TS
Xbox center;
Xl|l|l|l|l|l|l|l.
X^A-0 HELP No TTY FDX 1200 E71 LOG OFF PTR OFF CR CR
X.TE
X.Cs
X.if n .po 1.0i
X.if n .ll 6.5i
X.lp
XThe eight fields of the status line are:
X.br
X.in +0.5i
X.(b L
X\(bu help screen command (or a temporary message)
X\(bu name of the TTY device in use
X\(bu duplex mode (FDX = full duplex, HDX = half duplex)
X\(bu current connection settings (not necessarily DTE speed)
X\(bu status of data logging option
X\(bu status of printer logging option
X\(bu incoming CR translation
X\(bu outgoing CR translation
X.)b
X.in
X.lp
X.ft I
XNOTE:\ \ If the DTE interface speed is locked, the status line will show
Xthe "connected" speed rather than the speed of the serial port.
X.ft
X.sh 2 "Help screen"
X.(x
X \*($n Help screen
X.)x
X.lp
XThe help screen gives a brief review of all the available commands. To
Xaccess the help screen type ^A and \*(lq0\*(rq (zero). The typical help
Xscreen will look like this:
X.br
X.if n .po 0 \" table may be more than 6.5in wide
X.if n .ll 8.5i
X.CS
X.(b L
X.TS
Xbox center;
Xc s s
Xc c c
Xl l l.
X.sp
XP C O M M H E L P
X.sp
X_
X.sp
XMajor Functions Utility Functions File Functions
X.sp
X Dialing Directory. ^A-D Program Info .... ^A-I Send Files .... ^A-<up>
X Auto Redial ...... ^A-R Setup Screen .... ^A-S Receive Files . ^A-<down>
X Keyboard Macros .. ^A-M Change Directory. ^A-B Pass Thru Mode. ^A-T
X Line Settings .... ^A-P Clear Screen .... ^A-C Directory ..... ^A-F
X Exit Pcomm ....... ^A-X Toggle Duplex ... ^A-E Screen Dump ... ^A-G
X Unix Gateway ..... ^A-4 Hang Up Phone ... ^A-H Start Data Log. ^A-1
X Command Files .... ^A-5 Printer On/Off .. ^A-L Toggle Log .... ^A-2
X Toggle CR-CR/LF . ^A-3
X Break Key ....... ^A-7
X.sp
X.T&
Xc s s.
XPress any key to continue
X.TE
X.)b
X.Cs
X.if n .po 1.0i
X.if n .ll 6.5i
X.sh 2 "Exit Pcomm"
X.(x
X \*($n Exit Pcomm
X.)x
X.lp
XTo exit Pcomm, you type ^A and \*(lqx\*(rq to access the exit window.
X.br
X.in +0.5i
X.CS
X.(b L
X.TS
Xbox;
Xl.
X Exit
X.sp
X.\" spaces out to here
X Exit to Unix? (y/n): _
X.sp
X.TE
X.)b
X.Cs
X.in
X.lp
XTo exit, you press the letter \*(lqy\*(rq (carriage return not required).
X.bp
X.if e \{
X.ep
X.bp\}
X.sh 1 "SETUP SCREENS"
X.(x
X
X.)x _
X.(x
X\*($n SETUP SCREENS
X.)x
X.lp
XPcomm allows you to change many of the default parameters. The setup
Xscreen is accessed by typing ^A and \*(lqs\*(rq. The following screen
Xshows the sub-menu choices:
X.br
X.CS
X.(b L
X.(c
X------------------------- Setup Menu ----------------------------
X.sp
X 1) TTY Setup
X 2) Modem Setup
X 3) Terminal Setup
X 4) General Setup
X 5) ASCII Transfer Setup
X 6) External Protocol Setup
X S) Save setup to disk
X.sp
X-----------------------------------------------------------------
XOPTION ==> _ Press <ESC> to exit
X.)c
X.)b
X.Cs
X.lp
XTo select one of the sub-menu choices, you type the number (or letter)
Xat the \*(lqOPTION ==>\*(rq prompt. To exit from a sub-menu and return
Xto this setup menu screen, you press the escape key.
X.lp
XChanges made affect the current Pcomm session only. To make the changes
Xbecome the default, you select the \*(lqs\*(rq option.
X.sh 2 Prompting
X.(x
X \*($n Prompting
X.)x
X.lp
XThere are several different types of prompts used in the setup screens.
XThe prompts use the bottom two lines on the display for user input and
Xto give more information on what is being asked. Pcomm will beep at any
Xillegal input. The escape key <ESC> will abort any prompt. The prompt
Xtypes are:
X.sp
X.in +0.5i
X\(bu Character prompt. Asks you to input a single character.
X.br
X.in +\w'\(bu 'u
X.ti -\w'\(bu 'u
X\(bu String prompt. Asks you to input a word or group of characters.
X.in 0.5i
X.br
X\(bu Numeric prompt. Asks you for a number.
X.br
X.in +\w'\(bu 'u
X.ti -\w'\(bu 'u
X\(bu Menu prompt. Shows a selection and allows you to choose the
Xcurrent selection by pressing the carriage return or change the
Xselection by pressing the space bar.
X.in 0
X.sh 2 "TTY setup"
X.(x
X \*($n TTY setup
X.)x
X.lp
XThe TTY setup allows you to assign the serial ports that Pcomm is
Xallowed to use, and what is attached to each port. A typical TTY setup
Xscreen might look like this:
X.br
X.CS
X.(b L
X.(c
X-------------------------- TTY Setup ----------------------------
X.sp
X TTY name Modem name Locked speed
X.sp
X 1) tty10 HAYES 0
X 2) tty11 HAYES 0
X 3) tty12 DIRECT 0
X 4) tty13 TELEBIT 38400
X 5) tty13 TELEBIT_V.32 38400
X 6) tty13 TELEBIT_PEP 38400
X 7) 0
X 8) 0
X 9) 0
X 10) 0
X.sp
X A) Add a TTY entry
X D) Delete a TTY entry
X.sp
X-----------------------------------------------------------------
XOPTION ==> _ Press <ESC> to return
X.)c
X.)b
X.Cs
X.lp
XYou may edit an entry by typing the entry number at the prompt. To add
Xan entry, you type \*(lqA\*(rq at the prompt, etc.
X.lp
XThe TTY setup fields are:
X.ba +0.5i
X.lp
X1) TTY name. This is the name of the serial port that Pcomm will be
Xallowed to use. Notice that the path component of the name,
X\*(lq/dev/\*(rq is not used.
X.lp
X2) Modem name. This a key word that is used later to link the modem
Xdatabase with the TTY database. The name could be any combination of
Xletters or numbers (both upper and lower case).
X.lp
X.ft I
XNOTE:\ \ All hard-wired ports (ports without modems attached) \fBmust\fP
Xuse the word \*(lqDIRECT\*(rq for the modem name.
X.ft R
X.lp
X3) Locked speed. Normally Pcomm will use the baud rate in the dialing
Xdirectory when talking to the modem. If the locked speed is non-zero,
Xthen the baud rate specified is only one that will ever be use. The
Xbaud rate is selected from a \*(lqmenu prompt\*(rq. See Appendix C for
Xmore information about the use of this feature.
X.lp
X.ft I
XNOTE:\ \ It is often best to put the fastest modem/TTYs at the end of the
XTTY database.
X.ft
X.ba
X.sh 2 "Modem setup"
X.(x
X \*($n Modem setup
X.)x
X.lp
XThe modem setup contains the commands to make the modem dial, hang up
Xthe phone, etc. A typical modem setup screen might look like this:
X.br
X.CS
X.(b L
X.(c
X-------------------------- Modem Setup --------------------------
X.sp
X 1) Modem name (1 of 4) ... HAYES
X 2) Modem init string ..... ATS7=60S11=70E0Q0V1X4&D2!
X 3) Dialing command ....... ATDT
X 4) Dialing cmd suffix .... !
X 5) Hang up string ........ ~~+++~~ATH0!
X 6) Auto baud detect ...... Y
X 7) 300 baud connect ...... CONNECT!
X 8) 1200 baud connect ..... CONNECT 1200
X 9) 2400 baud connect ..... CONNECT 2400
X 10) 4800 baud connect .....
X 11) 9600 baud connect .....
X 12) 19200 baud connect ....
X 13) 38400 baud connect ....
X 14) No connect string 1 ... BUSY
X 15) No connect string 2 ... VOICE
X 16) No connect string 3 ... NO CARRIER
X 17) No connect string 4 ...
X-----------------------------------------------------------------
XOPTION ==> _ Press <ESC> to return
X.)c
X.)b
X.Cs
X.lp
XThe fields of the modem setup are:
X.ba +0.5i
X.lp
X1) Modem name. This is the key word that links the modem database with
Xthe TTY database. A menu prompt is used to select the modem name (and
Xthe remaining parameters that go with it). The \*(lq(1 of 4)\*(rq field
Xindicates there are additional modems in the database.
X.lp
X2) Modem initialization string. This is sent to the modem whenever the
Xport is selected. Consult your modem manual for the codes to be used.
XNotice the use of the \*(lq!\*(rq character. This is the \*(lqcharacter
Xsynonym\*(rq for the carriage return.
X.lp
X.ft I
XNOTE:\ \ See section 3.5 for the complete list of character synonyms. To
Xremove the special meaning of a character synonym, you must prepend a
X\*(lq\e\*(rq to the character.
X.ft
X.lp
X3) Dialing command. The first part of the command to make the modem
Xdial. It is assumed that the phone number will immediately follow.
X.lp
X4) Dialing command suffix. The last part of the command to make the
Xmodem dial. Typically this will be the carriage return \*(lqcharacter
Xsynonym\*(rq.
X.lp
X5) Hang up string. The command to make the modem hang up the phone.
XThe character synonym for a 1 second pause is the tilde \*(lq~\*(rq
Xcharacter.
X.lp
X6) Auto baud detect. Should Pcomm attempt to change the baud rate of
Xthe TTY to the baud rate matching the connect string? This feature
Xrequires the connect strings to be unique.
X.lp
X7\-13) Connect strings. The return messages when the modem has connected
Xto the remote. If different messages are returned for each baud rate at
Xwhich the modem answers, then they should be specified.
X.lp
X.ft I
XNOTE:\ \ Pcomm uses the connect strings to determine which baud rates the
Xmodem is capable of supporting. For example, if the 4800 baud connect
Xstring is empty, Pcomm assumes the modem can not support 4800 baud.
X.sp
XNOTE:\ \ If two connect strings are very similar, (for example,
X\*(lqCONNECT\*(rq is entirely contained in \*(lqCONNECT 1200\*(rq), it
Xis possible that the return code from the modem will match the incorrect
Xstring. To prevent this from happening, use the command synonym for the
Xcarriage return to terminate the shorter string (for example, use
X\*(lqCONNECT!\*(rq instead of \*(lqCONNECT\*(rq).
X.ft
X.lp
X14\-17) No connect strings. The messages returned by the modem when no
Xconnection is made.
X.ba
X.sh 2 "Terminal setup"
X.(x
X \*($n Terminal setup
X.)x
X.lp
XThe terminal setup allows you to define the hot key and the mapping of
Xthe end-of-line characters. A typical terminal setup menu will look
Xlike this:
X.br
X.CS
X.(b L
X.(c
X---------------------- Terminal Setup ---------------------------
X.sp
X 1) Hot key (decimal) ...... 1
X 2) ASCII version of hot ... ^A
X.sp
X 3) Duplex ................. FULL
X 4) Flow control ........... XON/XOFF
X 5) CR translation (in) .... CR
X 6) CR translation (out) ... CR
X.sp
X-----------------------------------------------------------------
XOPTION ==> _ Press <ESC> to return
X.)c
X.)b
X.Cs
X.lp
XThe fields in the terminal setup are:
X.ba +0.5i
X.lp
X1) Hot key. This is the decimal code for the user definable hot key.
XConsult an ASCII/decimal conversion chart for the decimal values of
Xother characters.
X.lp
X2) ASCII version of hot key. This is the printable version of the hot
Xkey used by Pcomm in the help screen and status line.
X.lp
X3) Duplex. A menu prompt is shown to select between FULL duplex and
XHALF duplex. In the half duplex mode, characters sent to the remote
Xsystem are also sent to the screen. (The duplex mode can also be
Xchanged \*(lqon the fly\*(rq by the ^A-E command.)
X.lp
X4) Flow control. A menu prompt is shown to select between XON/XOFF flow
Xcontrol and NONE. Pcomm often temporarily disables flow control during
Xfile transfers.
X.lp
X.ft I
XNOTE:\ \ If your terminal gets \*(lqstuck\*(rq due to a flow control
Xproblem, any ^A (hot key) sequence will resume the flow.
X.ft
X.lp
X5\-6) CR translations. The end-of-line characters for both incoming and
Xoutgoing carriage returns can be altered to suit the remote system's
Xneeds. A menu prompt provides the following choices:
X.sp
X.in +0.5i
X.nf
X\(bu CR (no translation)
X\(bu CR/LF translate CR to CR/LF
X.fi
X.in
X.lp
XThe incoming CR translation can also be changed \*(lqon the fly\*(rq
Xwith the ^A-3 command.
X.ba
X.sh 2 "General setup"
X.(x
X \*($n General setup
X.)x
X.lp
XThe general setup allows you to define the character synonyms and the
Xdefault files used by the screen dump and other features. A typical
Xgeneral setup screen might look like this:
X.br
X.CS
X.(b L
X.(c
X------------------------- General Setup -------------------------
X.sp
X 1) Default log file ....... pcomm.log
X 2) Screen dump file ....... pcomm.dump
X.sp
X 3) Strip high bit ........ YES
X.sp
X 4) Pause character ........ ~
X 5) CR character ........... !
X 6) CTRL character ......... ^
X 7) ESC character .......... |
X 8) Break character ........ %
X.sp
X 9) Aborted downloads ...... KEEP
X.sp
X 10) Connect delay (sec) .... 35
X 11) Redial delay (sec) ..... 5
X.sp
X-----------------------------------------------------------------
XOPTION ==> _ Press <ESC> to return
X.)c
X.)b
X.Cs
X.lp
XThe general setup fields are:
X.ba +0.5i
X.lp
X1) Default log file. The file name to be used as the default when the
Xdata logging is activated (^A-1). The log file name can be changed
X\*(lqon the fly\*(rq by the ^A-1 command.
X.lp
X2) Screen dump file. The file name to be used for the screen dump
Xcommand (^A-G).
X.lp
X3) Strip high bit. Should Pcomm strip the eighth bit on incoming and
Xoutgoing characters? A menu prompt allows you to select YES or NO.
XThis feature is not used during file transfers.
X.lp
X4\-8) Character synonyms. These are symbols that Pcomm uses to represent
Xspecial characters (or perform special functions) when sending commands
Xto the modem. Synonyms are useful for entering and displaying special
Xcharacters in a human readable form. The synonyms are:
X.sp
X.in +0.5i
X.nf
X\(bu Pause for 1 second
X\(bu The carriage return character (control-M)
X\(bu Convert the next character to control-xx
X\(bu The escape character (control-[)
X\(bu Send a modem break
X.fi
X.in
X.lp
X.ft I
XNOTE:\ \ To prevent the special meaning of one of these characters prepend
Xa \*(lq\e\*(rq to it.
X.ft
X.lp
X9) Aborted downloads. When a download aborts (fails), should the
Xpartially completed file be kept? The menu prompt allows \*(lqKEEP\*(rq
Xor \*(lqDELETE\*(rq.
X.lp
X10) Connect delay. The number of seconds Pcomm will wait for the modem
Xto return a status code.
X.lp
X11) Redial delay. The number of seconds to wait before Pcomm tries to
Xcall the number again.
X.ba
X.sh 2 "ASCII transfer setup"
X.(x
X \*($n ASCII xfer setup
X.)x
X.lp
XThis setup screen allows you to select options to be used for ASCII
Xuploads and downloads. A typical ASCII transfer setup will look like
Xthis:
X.br
X.CS
X.(b L
X.(c
X---------------------- ASCII Transfer Setup ---------------------
X.sp
X ASCII UPLOAD
X.sp
X 1) Echo locally ........... NO
X 2) Expand blank lines ..... NO
X 3) CR delay (ms) .......... 0
X 4) Pace the output ........ NO
X 5) CR translation ......... NONE
X 6) LF translation ......... ADD CR
X.sp
X ASCII DOWNLOAD
X.sp
X 7) Transfer timeout (sec) . 5
X 8) CR translation ......... STRIP
X 9) LF translation ......... NONE
X.sp
X-----------------------------------------------------------------
XOPTION ==> _ Press <ESC> to return
X.)c
X.)b
X.Cs
X.lp
XThe fields are:
X.ba +0.5i
X.lp
X1) Echo locally. This is similar to the duplex option in that it copies
Xoutgoing characters to the screen. The options are YES and NO.
X.lp
X2) Expand blank lines. Should a blank line (LF alone) be expanded to a
Xspace and LF? Some BBS systems use a blank line to signal the end of an
XASCII upload. The options are YES and NO.
X.lp
X3) CR delay. The delay in milliseconds to be used when sending a CR.
XThe menu prompt limits the choice to 0, 100, or 150.
X.lp
X4) Pace output. Should each character sent be delayed? Very old BBS
Xsystems may require this. The choice is YES or NO.
X.lp
X5) CR translation. The menu prompt provides the following choices for
Xupload translations:
X.br
X.in +0.5i
X.(b L
X\(bu NONE (no translation)
X\(bu ADD LF translate CR to CR/LF
X\(bu STRIP remove the CR character
X.)b
X.in
X.lp
X6) LF translation. Same as above except the choices are:
X.br
X.in +0.5i
X.(b L
X\(bu NONE (no translation)
X\(bu ADD CR translate LF to CR/LF
X\(bu STRIP remove the LF character
X.)b
X.in
X.lp
X7) Transfer timeout. The number of seconds to be used to determine the
Xend of an ASCII download. You can halt the transfer before the timer
Xgoes off by hitting the <ESC> key.
X.lp
X8\-9) Same as 5) and 6) above, except the translations apply to ASCII
Xdownloading.
X.ba
X.sh 2 "External protocol setup"
X.(x
X \*($n External protocol
X.)x
X.lp
XThis setup screen allows you to embed the name of external file transfer
Xprograms into the list of available protocols. When transferring files,
Xthe external program name will appear on the list of options along with
Xthe built-in protocols.
X.br
X.CS
X.(b L
X.(c
X-------------------- External Protocol Setup --------------------
X.sp
X UPLOAD
X.sp
X Name Command Line Requires file list?
X 1) zmodem sz Y
X 2) kermit kermit -ivs Y
X 3) N
X.sp
X DOWNLOAD
X.sp
X Name Command Line Requires file list?
X 4) zmodem rz N
X 5) kermit kermit -ivr Y
X 6) N
X.sp
X-----------------------------------------------------------------
XOPTION ==> _ Press <ESC> to return
X.)c
X.)b
X.Cs
X.lp
XTo change a line (or add a new one), enter the line number at the
Xprompt. You will be prompted for the Name, the Command Line, and the
X\*(lqRequires file list?\*(rq flag. To remove an entry, enter a single
Xspace character at the Name prompt.
X.lp
XThe Command Line is the Unix command that you would normally type in to
Xinvoke the program (minus the names of the files to be transferred).
XThe last field in the setup is used to indicate whether or not Pcomm
Xshould prompt for a list of file names to be added to the command.
X.lp
X.ft I
XNOTE:\ \ Pcomm adds a single space character and the file names (if any)
Xto the end of the command.
X.sp
XNOTE:\ \ The program itself isn't \*(lqembedded\*(rq into Pcomm (it still
Xgets called like any other external program), only the name and
Xinvocation information is actually incorporated into Pcomm.
X.ft
X.bp
X.if e \{
X.ep
X.bp\}
X.sh 1 "MAJOR FUNCTIONS"
X.(x
X
X.)x _
X.(x
X\*($n MAJOR FUNCTIONS
X.)x
X.lp
XWhen Pcomm is invoked without the \*(lq\-f\*(rq or \*(lq\-a\*(rq command
Xline option, you're placed in the terminal mode with a blank screen and
Xa status line. However, since Pcomm hasn't yet selected a serial port
Xto use, characters typed at the blank screen are ignored. Normally the
Xfirst command you'll use is ^A-D to bring up the dialing directory menu.
X.sh 2 "Dialing directory"
X.(x
X \*($n Dialing directory
X.)x
X.lp
XTo dial another system, you type ^A-D to access the dialing directory
Xmenu, then enter the entry number at the prompt.
X.lp
XThe entry number could be preceded by a special long distance dialing
Xcode such as \*(lq#5\*(rq in lieu of \*(lq5\*(rq alone. Long distance
Xcodes could contain access numbers such as those that MCI and Sprint
Xrequire.
X.lp
XA typical dialing directory will look like this:
X.br
X.if n .po 0 \" table may be more than 6.5in wide
X.if n .ll 8.5i
X.CS
X.(b L
X.TS
Xbox center;
Xc s s s s
Xc c r c l
Xl r r c l.
X.sp
XD I A L I N G D I R E C T O R Y
X.sp
X_
X.sp
XName Number Baud P D S Dpx Auxiliary
X 1- Abbey Road 1 (512) 590-6036 2400-N-8-1 F
X 2- Tel-Med-Com 555-8686 9600-E-7-1 F TELEBIT_V.32
X 3- C Board 1 (619) 722-8724 2400-N-8-1 F
X 4- Crest 1 (213) 471-2518 2400-N-8-1 F Sample
X 5- Last Chance 1 (219) 762-8411 2400-E-7-1 F
X 6- Killer 1 (214) 827-1994 1200-E-7-1 F
X 7- System A (direct) 19200-N-8-1 F tty12
X 8- 1200-E-7-1 F
X 9- 1200-E-7-1 F
X 10- 1200-E-7-1 F
X.sp
X.T&
Xl s s s s.
X.nf
X ==> _ R Revise M Manual Dialing Entry to Dial
X P LD Codes D Delete Entry <CR> Scroll Down
X <up>/<down> Page L Print Entries <ESC> Exit
X.sp
X LD Codes Active: @ #
X.fi
X.sp
X.TE
X.)b
X.Cs
X.if n .po 1.0i
X.if n .ll 6.5i
X.lp
XThe fields of the dialing directory are:
X.ba +0.5i
X.lp
XName) The name of the remote system.
X.lp
XNumber) The telephone number to the remote system.
X.lp
X.ft I
XNOTE:\ \ The \*(lq(\*(rq, \*(lq)\*(rq, \*(lq-\*(rq, and space characters
Xare just for looks, and don't get sent to the modem. To prevent the
Xstripping of one of these characters, prepend a \*(lq\e\*(rq to it.
X.ft
X.lp
XLine settings) The communications settings to be used when dialing
Xthat entry. The range of values are:
X.br
X.in +0.5i
X.(b L
X.TS
Xr c c c
Xr l c c.
XBaud Parity Data bits Stop bits
X_
X300 N - none 7 1
X1200 E - even 8 2
X2400 O - odd
X4800
X9600
X19200
X38400
X.TE
X.)b
X.in
X.lp
XDuplex) The duplex mode. Either \*(lqF\*(rq for full or
X\*(lqH\*(rq for half.
X.lp
XAuxiliary) This field has one of three uses:
X.br
X.in +0.5i
X1) Name of the shell script to be used during the auto-login \*(lqchat\*(rq
Xsequence.
X.br
X2) Name of the TTY to be used.
X.br
X3) Name of the Modem to be used.
X.in
X.lp
X.ft I
XNOTE:\ \ On all hard-wired ports, the script field is used to contain the
Xname of the port. For example, if tty12 is a hard-wired port to
X\*(lqSystem A\*(rq, then the dialing directory entry for \*(lqSystem
XA\*(rq will have \*(lqtty12\*(rq in the script field.
X.ft
X.lp
X.ft I
XNOTE:\ \ The ability to specify a modem allows you to customize each
Xdialing directory entry to use its own peculiar modem initization string.
X.ft
X.ba
X.lp
XThe commands at the dialing directory prompt are:
X.ba +0.5i
X.lp
XR) Revise (or add) a dialing directory entry or long distance dialing
Xcode. Prompts you to save the changes to disk. A typical revise screen
Xwould look like this:
X.br
X.CS
X.(b L
X.TS
Xbox center;
Xl.
X.sp
X.\" spaces out to here
X Entry to revise? _ (Entry Number, +,-,@,#)
X.sp
X.TE
X.)b
X.Cs
X.lp
XIf a dialing directory entry is selected, each field of the entry is
Xshown with its current settings. You can enter a new value, press a
Xcarriage return to skip past a field, or enter a single space character
Xto erase a field. An <ESC> at any field will abort the command.
X.lp
XP) Print (display) the long distance dialing codes.
X.lp
X<up>/<down>) Scroll the dialing directory up or down 10 lines. Use the
Xup and down arrow keys to access this feature.
X.lp
XM) Manual dial. Prompts you for a phone number rather than using a
Xnumber already in the dialing directory.
X.lp
XD) Delete an entry or a range of entries. Prompts you to save the
Xchanges to disk.
X.lp
XL) Print. Send the dialing directory to the printer or a file of your
Xchoice.
X.lp
X1\-100) Entry number. Dial the phone for that entry number. If the
Xscript field contains the name of a valid Unix shell script, that script
Xis \*(lqplayed\*(rq after the connection is made to perform the
Xauto-login \*(lqchat\*(rq sequences. See section 8 of this manual for
Xmore details on the format and use of script commands.
X.lp
X.ft I
XNOTE:\ \ To access the port directly without dialing (perhaps to send the
Xdial codes yourself), select an empty entry or enter a single space
Xcharacter at the phone number prompt of the manual dial option.
X.ft
X.lp
X<CR> Carriage return. Scroll the dialing directory down one line.
X.ba
X.sh 2 Redial
X.(x
X \*($n Redial
X.)x
X.lp
XThe redial feature is a misnomer; it really is a queuing system that
Xallows Pcomm to dial several numbers in a cycle until one of them
Xanswers.
X.lp
XWhen you invoke the redial command with ^A-R, you're prompted for a list
Xof dialing directory numbers. (You may also prepend a long distance
Xcode to the entry number).
X.br
X.CS
X.(b L
X.TS
Xbox center;
Xl.
X Redial Queue
X.sp
X.\" spaces out to here
X Directory Entry Number(s): _
X.sp
X.T&
Xc.
X(<CR> for previous numbers)
X.TE
X.)b
X.Cs
X.lp
XTo redial the previous number, press a carriage return alone at the
Xprompt. An <ESC> aborts this command.
X.sh 2 "Keyboard macros"
X.(x
X \*($n Keyboard macros
X.)x
X.lp
XKeyboard macros are used as a shortcut to send commonly used strings to
Xthe remote system with only a few keystrokes. The characters used to
Xidentify the macros are the shifted number keys. For example, if the
Xstring \*(lqls -alRF \e\| more!\*(rq was assigned to the \*(lq!\*(rq key
X(the shifted number 1 key), then when you press ^A-!, the string
X\*(lqls -alRF | more\*(rq is sent to the remote (followed by a <CR>
Xbecause of the \*(lq!\*(rq character synonym).
X.lp
XTo review or edit the keyboard macros, you type ^A-M. The following
Xscreen will appear:
X.br
X.CS
X.(b L
X.TS
Xbox center;
Xc
Xl.
XKeyboard Macros
X.sp
X_
X.sp
X.\" spaces out to here
X ^A-! ls -alRF \e\| more!
X ^A-@
X ^A-#
X ^A-$
X ^A-%
X ^A-^
X ^A-&
X ^A-*
X ^A-(
X ^A-)
X.sp
X Macro key to revise: _
X.sp
X.T&
Xc.
XPress <ESC> to continue
X.TE
X.)b
X.Cs
X.lp
XTo edit a macro, you type the macro key character (without the leading
Xhot key). After typing the new string information, you will be prompted
Xto save the changes to disk. To erase an entry enter a single space
Xcharacter.
X.lp
X.ft I
XNOTE:\ \ All of the character synonyms described in section 3.5 are
Xavailable for use with the keyboard macros.
X.ft
X.sh 2 "Line settings"
X.(x
X \*($n Line settings
X.)x
X.lp
XThe line settings menu is invoked by ^A-P. A typical line settings menu
Xwill look like this:
X.br
X.CS
X.(b L
X.TS
Xbox center;
Xc
Xl.
XLine Settings
X_
X.sp
X Current Settings: 1200,E,7,1
X.sp
X 1) 300,E,7,1 8) 300,N,8,1
X 2) 1200,E,7,1 9) 1200,N,8,1
X 3) 2400,E,7,1 10) 2400,N,8,1
X 4) 4800,E,7,1 11) 4800,N,8,1
X 5) 9600,E,7,1 12) 9600,N,8,1
X 6) 19200,E,7,1 13) 19200,N,8,1
X 7) 38400,E,7,1 14) 38400,N,8,1
X.sp
X Parity Data Bits Stop Bits
X 15) Odd 16) 7 bits 18) 1 bit
X 17) 8 bits 19) 2 bits
X.sp
X 20) Save Changes YOUR CHOICE: _
X.sp
X.T&
Xc.
XPress <ESC> to return
X.TE
X.)b
X.Cs
X.lp
XWhile dialing a remote, the line settings in the dialing directory entry
Xare automatically used. Therefore the line settings menu is used to
Xfine tune the values during a terminal session or to select the
Xparameters for manual dialing. You can make the current setting the
Xdefault by selecting the \*(lqSave Changes\*(rq option.
X.lp
XThe current line settings are also displayed in the status line.
X.lp
X.ft I
XNOTE:\ \ During file transfers, certain parameters (namely the data bits
Xand parity) will be temporarily changed. The status line will \fBnot\fP
Xreflect these temporary promotions.
X.ft R
X.sh 2 "Exit Pcomm"
X.(x
X \*($n Exit Pcomm
X.)x
X.lp
XTo exit Pcomm, you type ^A-X. The phone is hung up (if a call was in
Xprogress), the print and data logging features are closed, and the TTY
Xresources are released.
X.lp
X.ft I
XNOTE:\ \ Pcomm drops the DTR (Data Terminal Ready) on the port before
Xexiting to Unix.
X.ft
X.sh 2 "Unix gateway"
X.(x
X \*($n Unix gateway
X.)x
X.lp
XTo temporarily suspend Pcomm and spawn a Unix shell, you type ^A-4. To
Xreturn to Pcomm, you exit the shell normally, typically with ^D or
X\*(lqexit\*(rq.
X.lp
X.ft I
XNOTE:\ \ The SHELL environmental variable is used to determine which
Xprogram to invoke.
X.ft
X.sh 2 "Command files"
X.(x
X \*($n Command files
X.)x
X.lp
XCommand files (shell scripts) can be envoked by typing ^A-5 to automate
Xkeyboard input and to perform Pcomm command sequences. The following window
Xwill prompt for the file name.
X.br
X.CS
X.(b L
X.TS
Xbox center;
Xl.
X Command Files
X.sp
X.\" spaces out to here
X Shell script: _
X.sp
X.TE
X.)b
X.Cs
X.lp
XThe use of shell scripts is discussed in Section 8.
X.bp
X.if e \{
X.ep
X.bp\}
X.sh 1 "UTILITY FUNCTIONS"
X.(x
X
X.)x _
X.(x
X\*($n UTILITY FUNCTIONS
X.)x
X.lp
XThe following commands perform secondary functions.
X.sh 2 "Program information"
X.(x
X \*($n Program info
X.)x
X.lp
XTo display the opening information screen, you type ^A-I. Press any key
Xto return to the terminal mode.
X.sh 2 "Setup screen"
X.(x
X \*($n Setup screen
X.)x
X.lp
XThe setup screens are described in detail in section 3 of this manual.
X.sh 2 "Change directory"
X.(x
X \*($n Change directory
X.)x
X.lp
XTo change the current working directory while still inside Pcomm, you
Xtype ^A-B. A screen similar to the following will appear:
X.br
X.CS
X.(b L
X.TS
Xbox center;
Xl.
X Change Directory
X.sp
X.\" spaces out to here
X Current directory: /usr/egray
X New directory: _
X.sp
X.TE
X.)b
X.Cs
X.lp
XAbbreviations known to the shell are acceptable; for example, the
X\*(lq~\*(rq character will be translated to the home directory in the
Xcsh or ksh shell.
X.sh 2 "Clear screen"
X.(x
X \*($n Clear screen
X.)x
X.lp
XTo clear the local screen and home the cursor, you type ^A-C.
X.lp
X.ft I
XNOTE:\ \ The remote system may not \*(lqknow\*(rq the screen has been
Xcleared, and may make assumptions about the screen that are incorrect.
X.ft
X.sh 2 "Toggle duplex"
X.(x
X \*($n Toggle duplex
X.)x
X.lp
XThe ^A-E command changes the duplex mode from FULL to HALF, or from HALF
Xto FULL. The status line shows the current duplex mode. Use the
XTerminal Setup to make permanent changes to the duplex mode.
X.sh 2 "Hang up the phone"
X.(x
X \*($n Hang up the phone
X.)x
X.lp
XTo hang up the phone, you type ^A-H. The word \*(lqdisconnecting\*(rq
Xwill briefly show in the status line.
X.lp
X.ft I
XNOTE:\ \ Pcomm does not drop the DTR (Data Terminal Ready) during the hang up.
X.ft
X.sh 2 "Printer logging"
X.(x
X \*($n Printer logging
X.)x
X.lp
XThe ^A-L command toggles the printer logging on or off. The current
Xprinter status is displayed in the status line.
X.lp
X.ft I
XNOTE:\ \ Since all printing goes to the normal Unix print spool program,
Xthe characters will not print on the printer as they appear on the
Xscreen. The printing will actually begin when the printer logging is
Xturned \fBoff\fP and the complete print job is sent to the spool.
X.ft R
X.sh 2 "Toggle CR \- CR/LF"
X.(x
X \*($n Toggle CR \- CR/LF
X.)x
X.lp
XThe ^A-3 command toggles the incoming line termination characters
Xbetween CR and CR/LF. The status line shows the current settings (in
Xthe next to the last field).
X.sh 2 "Break"
X.(x
X \*($n Break
X.)x
X.lp
XThe ^A-7 command sends a modem break to the remote system. The word
X\*(lqbreak\*(rq is (very) briefly displayed on the status line.
X.lp
X.ft I
XNOTE:\ \ This not the same as the break key on the keyboard (we don't
Xwant to send a break to the local system, we want to send it to
Xthe \fBremote\fP system).
X.ft R
X.bp
X.if e \{
X.ep
X.bp\}
X.sh 1 "FILE FUNCTIONS"
X.(x
X
X.)x _
X.(x
X\*($n FILE FUNCTIONS
X.)x
X.lp
XOne of the most important features of a telecommunication program is the
Xability to transfer files. The following file transfer protocols are
Ximplemented:
X.br
X.in +0.5i
X.(b L
X.TS
Xl l l l.
XProtocol Packet Error Multiple
Xname size detection files?
X_
Xxmodem 128 checksum/CRC no
Xxmodem-1k 128/1024 checksum/CRC no
Xmodem7 128 checksum yes \u1\d
Xymodem 128/1024 CRC yes \u2\d
Xymodem-g 128/1024 none \u3\d yes
XASCII none none no
Xzmodem \u4\d 128/1024 CRC yes
X(external) ? ? ?
X.TE
X.TS
Xl l.
XNotes: 1 CP/M style file name
X 2 MSDOS style file name and file size
X 3 Not needed!
X 4 zmodem is implemented as an external program
X.TE
X.)b
X.in
X.lp
X.ft I
XNOTE:\ \ The built-in protocols that send file name information, convert
Xthe Unix style file name to fit the MSDOS name restrictions.
X.ft
X.sh 2 "External protocols"
X.(x
X \*($n External protocols
X.)x
X.lp
XThe external \*(lqprotocol\*(rq is really a method of running an
Xexternal program from Pcomm to accomplish a file transfer. The most
Xcommon use of this feature would be to run Kermit or some proprietary
Xprogram.
X.lp
XFrequently used external file transfer programs (such as zmodem) can
Xhave their names embedded into the list of available protocols by using
Xthe External Protocol Setup in section 3.7.
X.lp
XTo abort an external file transfer, you hit the <ESC> key. All other
Xcharacters typed at the keyboard are ignored.
X.lp
X.ft I
XNOTE:\ \ The external protocol feature can also be used (misused?) to pipe
Xthe output of a Unix command to the remote.
X.ft
X.sh 2 "Send files"
X.(x
X \*($n Send files
X.)x
X.lp
XTo send a file to the remote, you'll first have to instruct the remote
Xsystem to receive the file, then type ^A-\*(lqup arrow\*(rq. The
Xfollowing screen will appear:
X.br
X.in 3.2i
X.CS
X.(b L
X.TS
Xbox;
Xc
Xl.
XUpload
X.sp
X 1) xmodem
X 2) xmodem-1k
X 3) modem7
X 4) ymodem
X 5) ymodem-g
X 6) ASCII
X 7) zmodem
X 8) kermit
X E) (external)
X.sp
X <ESC> to Abort
X.sp
X Protocol: _
X.sp
X.TE
X.)b
X.Cs
X.in
X.lp
XYou then select the type of protocol at the prompt, and another window
Xsimilar to this will appear:
X.br
X.CS
X.(b L
X.TS
Xbox center;
Xl.
X Send xmodem
X.sp
X.\" space out to here
X Enter filename: _
X.sp
X.TE
X.)b
X.Cs
X.lp
XNow you type in the file name or names you'd like to send. Wildcards
Xknown to the shell are acceptable.
X.lp
XNow the file transfer actually begins. A screen similar to the
Xfollowing is displayed during the transfer:
X.br
X.in 2.4i
X.CS
X.(b L
X.TS
Xbox;
Xc
Xn.
XUploading
X.sp
X.\" spaces out to here
X Protocol\&: xmodem
X File name\&: main.c
X File size\&: 4420
X Error check method\&: CRC
X Est transfer time\&: 0:00:50
X Block count\&: 5
X Percent complete\&: 11.2%
X Bytes transferred\&: 640
X Errors this block\&: 0
X Total error count\&: 0
X Last message\&: NONE
X.sp
X.T&
Xc.
XPress <ESC> to abort
X.TE
X.)b
X.Cs
X.in
X.lp
XAs the transfer progresses, the \*(lqblock count\*(rq, \*(lqpercent
Xcomplete\*(rq, and \*(lqbytes transferred\*(rq fields will be
Xcontinuously updated. If errors occur the \*(lqerrors this block\*(rq
Xand \*(lqtotal error count\*(rq fields will be updated and the \*(lqlast
Xmessage\*(rq field will contain a message about the error.
X.lp
XAt the end of the transfer, Pcomm will beep and return to the terminal
Xmode. If an error occurred and the transfer was aborted, you will be
Xprompted to acknowledge the error by pressing a key before returning to
Xthe terminal mode.
X.sh 2 "Receive files"
X.(x
X \*($n Receive files
X.)x
X.lp
XTo receive a file (or group of files) from a remote system, you'll have
Xto first instruct the remote system, then type ^A-\*(lqdown arrow\*(rq.
XReceiving a file is basically the same as sending a file.
X.lp
X.ft I
XNOTE:\ \ Some systems do not pad the end of the file with control-Z's and
Xtherefore files might grow in length when received.
X.ft
X.sh 2 "Pass thru mode"
X.(x
X \*($n Pass thru mode
X.)x
X.lp
XThe pass through mode is used when you have two or more machines in a
Xcommunications daisy chain. The following diagram shows an example of
Xthis type of arrangement:
X.br
X.in +0.5i
X.(b L
X.TS
X|c|c|c|c|c|.
X_ _ _
XIBM PC Unix IBM PC
Xrunning <---- running <---- running
XProComm ----> Pcomm ----> RBBS
X_ _ _
X.TE
X.)b
X.in
X.lp
XIf a file is to be transferred from the last machine to the first
Xmachine, the middle machine must appear completely transparent. The
Xmiddle machine must \*(lqforward the data\*(rq without altering it in
Xany way. The pass through mode \*(lqexpires\*(rq after a designated
Xperiod of inactivity, after which the user is returned to the terminal
Xmode.
X.lp
XTo access the pass through mode, you type ^A-T. The following screen
Xwill appear:
X.br
X.CS
X.(b L
X.TS
Xbox center;
Xl.
X Pass Thru Mode
X.sp
X.\" spaces out to here
X Enter the expiration time (5-60 sec) : _
X.sp
X.TE
X.)b
X.Cs
X.lp
X.ft I
XNOTE:\ \ While in the pass through mode, no Pcomm command to the middle
Xmachine will be honored. Therefore, the \fBonly\fP way to exit this
Xmode is to not type anything on the keyboard until the expiration period
Xhas elapsed.
X.sp
XNOTE:\ \ The baud rates to and from the middle machine need not be the
Xsame, however the slowest speed determines the overall speed of the
Xtransfer (the weakest link in the chain).
X.ft R
X.sh 2 Directory
X.(x
X \*($n Directory
X.)x
X.lp
XTo obtain a listing of a directory on the local system while still
Xrunning Pcomm, you type ^A-F. The following screen will appear:
X.br
X.CS
X.(b L
X.TS
Xbox center;
Xl.
X List Directory
X.sp
X.\" spaces out to here
X Current directory: /usr/egray
X File spec (wildcards allowed): _
X.sp
X.TE
X.)b
X.Cs
X.lp
XAbbreviations known to the shell are valid. Output is sent through a
X\*(lqmore\*(rq like program.
X.lp
X.ft I
XNOTE:\ \ Since we're really doing a popen() to the \*(lqls\*(rq command,
Xadditional command line options are also valid.
X.ft
X.sh 2 "Screen dump"
X.(x
X \*($n Screen dump
X.)x
X.lp
XTo dump the contents of the current screen (minus any windows showing)
Xyou type ^A-G. The contents of the screen are written to the file
Xspecified in the general setup for this purpose. If the file already
Xexists, the screen contents are appended to the file. The message
X\*(lqscreen dump\*(rq will briefly appear in the status line.
X.lp
X.ft I
XNOTE:\ \ The screen contents are subject to the available VCS (video
Xcommand sequence) emulation, so an exact representation is not
Xguaranteed.
X.ft
X.sh 2 "Start data logging"
X.(x
X \*($n Start data logging
X.)x
X.lp
XTo start the data logging, or change the file used for data logging, you
Xtype ^A-1. The following screen will appear:
X.br
X.CS
X.(b L
X.TS
Xbox center;
Xl.
X Start Data Logging
X.sp
X.\" spaces out to here
X Default log file: pcomm.log
X New log file: _
X.sp
X.TE
X.)b
X.Cs
X.lp
XTo keep the default file, just press a carriage return at the prompt,
Xotherwise, enter a new file name. If the file already exits, the new
Xdata is appended to the file.
X.lp
XThe status of the logging is shown in the status line.
X.lp
X.sh 2 "Toggle logging"
X.(x
X \*($n Toggle logging
X.)x
X.lp
XTo temporarily suspend data logging or to start it again without being
Xprompted for the file name, you type ^A-2.
X.bp
X.if e \{
X.ep
X.bp\}
X.sh 1 "DIALING WINDOW"
X.(x
X
X.)x _
X.(x
X\*($n DIALING WINDOW
X.)x
X.lp
XWhile Pcomm is dialing another system, a screen similar to the following
Xis shown:
X.sp
X.if n .po 0 \" table may be wider than 6.5in
X.if n .ll 8.5i
X.CS
X.(b L
X.TS
Xbox center;
Xc
Xn.
X.sp
XD I A L I N G W I N D O W
X.sp
X_
X.sp
X.\" spaces out to here
XSystem name\&: C Board
XPass number\&: 1
XElapse time this try\&: 4
XTime at start of dial\&: 14:53:36
XTime at start of this try\&: 14:53:36
XConnect delay time\&: 35
XRedial delay time\&: 5
XAuxiliary\&:
XResult of last try\&:
X.T&
Xc.
X.sp
X <SPACE>: Recycle <DEL>: Remove from queue E: Change delays
X.sp
XPress <ESC> to abort
X.TE
X.)b
X.Cs
X.if n .po 1.0i
X.if n .ll 6.5i
X.lp
XItems in the window are continously updated to show the progress of the
Xdialing attempt.
X.lp
XThe options available during the dialing window are:
X.ba +0.5i
X.lp
XSPACE) Press the space bar to stop the dialing of the current entry and
Xgo on to the next entry in the queue. If there is only one entry in the
Xqueue, that number is redialed.
X.lp
XDEL) Press the DEL key to remove the current number from the queue.
X.lp
XE) Press the letter \*(lqE\*(rq to change the connect delay time, or the
Xredial delay time (the pause between dialing attempts). You will be
Xprompted to save the changes to disk.
X.lp
X.CS
X.(b L
X.TS
Xbox center;
Xl.
X Change Delay Times
X.sp
X.\" spaces out to here
X Current connect delay time: 35
X Current redial delay time: 5
X.sp
X New connect delay: _
X New redial delay:
X.sp
X.TE
X.)b
X.Cs
X.ft I
XNOTE:\ \ While the DEL and E options are being processed, the dialing is
Xtemporarily suspended.
X.ft
X.ba
X.bp
X.if e \{
X.ep
X.bp\}
X.sh 1 "SCRIPT COMMANDS"
X.(x
X
X.)x _
X.(x
X\*($n SCRIPT COMMANDS
X.)x
X.lp
XPcomm doesn't have a built-in script language, instead it uses Unix
Xshell scripts (Bourne shell, C shell, Korn shell, etc) to perform the
Xnecessary \*(lqchat\*(rq sequences to log a user on to a remote system.
X.lp
XSince shell scripts are run \*(lqoutside\*(rq of Pcomm, the
X\*(lqpcomm_cmd\*(rq program is used to transmit command sequences to
XPcomm. For example, a script can contain a line such as \*(lqpcomm_cmd
Xdata_log on\*(rq to turn on the data logging feature. The shell scripts
Xspecified in the dialing directory are run \fBafter\fP the connection to
Xthe remote system has been made.
X.lp
XYou may hit the <ESC> key at any time to abort an auto-login script
Xbefore it has completed.
X.lp
X.ft B
XWARNING:\ \ Any file that has a \*(lqclear text\*(rq (un-encrypted)
Xversion of your password is a significant security threat. You should
Xremove the read permission to all others.
X.ft
X.lp
XIn order to assist in the creation of auto-login scripts, the following
Xexternal programs have been provided.
X.sh 2 "Pcomm_cmd command"
X.(x
X \*($n Pcomm_cmd command
X.)x
X.lp
XPcomm_cmd is an external Pcomm support program. It is used from inside
Xshell scripts to access Pcomm commands, such as \*(lqpcomm_cmd send
Xxmodem junk\*(rq for sending the file \*(lqjunk\*(rq to the remote using
Xthe xmodem file transfer protocol.
X.lp
XThe following command line options are supported.
X.in +1.0i
X.sp
X.ti -0.5i
XSET BAUD [ 300 | 1200 | 2400 | 4800 | 9600 | 19200 | 38400 ]
X.br
XSet the baud rate for the current connection. This feature is for use
Xwith the DIAL MANUAL command, since the baud rate information in the
Xdialing directory entries overrides this value.
X.sp
X.ti -0.5i
XSET PARITY [ EVEN | ODD | NONE ]
X.br
XSet the parity for the current connection. For use with the DIAL MANUAL
Xcommand.
X.sp
X.ti -0.5i
XSET DATA_BITS [ 7 | 8 ]
X.br
XThe number of data bits (word length) used for the current connection.
XFor use with the DIAL MANUAL command.
X.sp
X.ti -0.5i
XSET STOP_BITS [ 1 | 2 ]
X.br
XThe number of stop bits for the current connection. For use with the
XDIAL MANUAL command.
X.sp
X.ti -0.5i
XSET DUPLEX [ HALF | FULL ]
X.br
XSet the duplex mode (local echo). The HALF option is used if the remote
Xsystem does not echo characters as they are typed.
X.sp
X.ti -0.5i
XSET AUX filename
X.br
XUse the argument as the auxiliary file associated with the current
Xconnection. Since chaining of scripts is not supported, this feature
Xwould only be used to set the TTY or modem.
X.sp
X.ti -0.5i
XSET HOT_KEY [1-256]
X.br
XChange the decimal value of the \*(lqhot key\*(rq to this value.
X.sp
X.ti -0.5i
XSET ASCII_HOT string
X.br
XChange the ASCII representation of the hot key to the given argument. The
Xlength of the string must be no more than 4 characters wide.
X.sp
X.ti -0.5i
XSET FLOW_CTRL [ XON/XOFF | NONE ]
X.br
XSet the flow control between the local and remote systems to either XON/XOFF
Xor NONE.
X.sp
X.ti -0.5i
XSET CR_IN [ CR | CR/LF ]
X.br
XTranslate in-comming carriage returns carriage return followed by a line
Xfeed, or pass the carriage return through unchanged.
X.sp
X.ti -0.5i
XSET CR_OUT [ CR | CR/LF ]
X.br
XTranslate out-going carriage returns to CR or CR/LF.
X.sp
X.ti -0.5i
XSET LOGFILE filename
X.br
XChange the name of the default log file. For use with the DATA_LOG command.
X.sp
X.ti -0.5i
XSET DUMPFILE filename
X.br
XChange the name of the screen dump file. For use with the SCREEN_DUMP
Xcommand.
X.sp
X.ti -0.5i
XSET STRIP [ YES | NO ]
X.br
XShould the in-comming data be stripped to 7 bits?
X.sp
X.ti -0.5i
XSET LOCAL_ECHO [ YES | NO ]
X.br
XShould data be shown on the screen during ASCII uploads?
X.sp
X.ti -0.5i
XSET EXPAND [ YES | NO ]
X.br
XShould blank lines be \*(lqexpanded\*(rq to a line with a single space?
XFor use only during ASCII uploads.
X.sp
X.ti -0.5i
XSET CR_DELAY [ 0 | 100 | 150 ]
X.br
XSet the delay for the carriage returns for ASCII uploads.
X.sp
X.ti -0.5i
XSET PACE [ YES | NO ]
X.br
XShould the entire upload be artificially slowed down? For use during ASCII
Xuploads.
X.sp
X.ti -0.5i
XSET CR_UP [ NONE | ADD_LF | STRIP ]
X.br
XControls the translation of carriage returns during ASCII uploads.
X.sp
X.ti -0.5i
XSET LF_UP [ NONE | ADD_CR | STRIP ]
X.br
XControls the translation of line feeds during ASCII uploads.
X.sp
X.ti -0.5i
XSET TIMER [5-150]
X.br
XControls the timer (in seconds) that detects the end of an ASCII download.
X.sp
X.ti -0.5i
XSET CR_DN [ NONE | ADD_LF | STRIP ]
X.br
XControls the translation of carriage returns during ASCII downloads.
X.sp
X.ti -0.5i
XSET LF_DN [ NONE | ADD_CR | STRIP ]
X.br
XControls the translation of line feeds during ASCII downloads.
X.sp
X.ti -0.5i
XQUERY TTY_NAME
X.br
XReturns the name of the current TTY in use or NONE.
X.sp
X.ti -0.5i
XQUERY MODEM_NAME
X.br
XReturns the name of the current modem in use or NONE.
X.sp
X.ti -0.5i
XIF CONNECTED
X.br
XReturns a 1 if Pcomm is currently connected to a remote, otherwise a 0.
X.sp
X.ti -0.5i
XIF LOG_STATUS
X.br
XReturns a 1 if the data logging feature is turned on, otherwise 0.
X.sp
X.ti -0.5i
XIF PRINTER_STATUS
X.br
XReturns a 1 if the printer is turned on, otherwise 0.
X.sp
X.ti -0.5i
XDIAL [ MANUAL phone_number ] entry_number
X.br
XDial an entry from the dialing directory. The MANUAL option is used to
Xoptionaly dial a phone number without the use of the dialing directory.
XDIAL returns after 1 attempt. A return code of 1 means a connection
Xwas made.
X.sp
X.ti -0.5i
XREDIAL entry_number
X.br
XSimilar to the DIAL command, but 10 attempts are made.
X.sp
X.ti -0.5i
XEXIT
X.br
XHang up the phone and exit from Pcomm.
X.sp
X.ti -0.5i
XCLEAR_SCREEN
X.br
XClear the screen.
X.sp
X.ti -0.5i
XCHG_DIR directory
X.br
XChange the current working directory to the given directory.
X.sp
X.ti -0.5i
XHANG_UP
X.br
XHang up the phone, but remain in Pcomm.
X.sp
X.ti -0.5i
XPRINTER [ ON | OFF ]
X.br
XControl the logging of data to the printer.
X.sp
X.ti -0.5i
XMODEM_BREAK
X.br
XSend a modem break to the remote system. This is typically used to
Xtell the remote to switch to a different baud rate.
X.sp
X.ti -0.5i
XSEND protocol filename
X.br
XSend a file to the remote. The valid protocols are XMODEM, XMODEM_1K,
XMODEM7, YMODEM, YMODEM_G, ASCII, EXT_1, EXT_2, and EXT_3.
X.sp
X.ti -0.5i
XRECEIVE protocol filename
X.br
XReceive a file from the remote. The valid protocols are XMODEM,
XXMODEM_1K, MODEM7, YMODEM, YMODEM_G, ASCII, EXT_1, EXT_2, and EXT_3.
X.sp
X.ti -0.5i
XSCREEN_DUMP
X.br
XDump the current contents of the screen to the DUMPFILE. If the file
Xalready exists, the new contents are appended to the file.
X.sp
X.ti -0.5i
XDATA_LOG [ ON | OFF ]
X.br
XControl logging of the terminal session to the LOGFILE. If the file
Xalready exists, the new contents are appended to the file.
X.in
X.sh 2 "Waitfor command"
X.(x
X \*($n Waitfor command
X.)x
X.lp
XThe waitfor command has the following syntax:
X.sp
X.in +0.5i
Xwaitfor \-n string
X.in
X.lp
Xwhere \*(lqn\*(rq is the number of seconds to wait and \*(lqstring\*(rq
Xis the string to wait for.
X.lp
XWaitfor returns a 0 if the string was found, a 1 if it didn't find the
Xstring within the allotted time, and a \-1 if there was an error.
XWaitfor returns immediately if the string is found.
X.lp
XThe waitfor command would typically be used in a script to indicate that
Xthe desired prompt has appeared. For example:
X.sp
X.in +0.5i
X.CS
X.(b L
Xwaitfor \-5 "ogin:"
Xif [ "$?" \-eq 0 ]
Xthen
X.in +0.5i
Xecho "egray"
X.in
Xfi
X.)b
X.Cs
X.in
X.lp
Xwould wait up to 5 seconds for the string \*(lqogin:\*(rq. If the
Xreturn code is 0 (the strings did appear), send the string
X\*(lqegray\*(rq (my user ID).
X.lp
X.ft I
XNOTE:\ \ Upper and lower case letters are considered different. If you
Xare not sure if the prompt is \*(lqLogin:\*(rq or \*(lqlogin:\*(rq, then
Xskip the first letter in the string and use \*(lqogin:\*(rq.
X.ft
X.sh 2 "Matches command"
X.(x
X \*($n Matches command
X.)x
X.lp
XThe matches command has the following syntax:
X.in +0.5i
X.sp
Xmatches string1 string2
X.in
X.lp
XMatches returns a 0 if string2 is contained in string1, and returns a 1
Xif it does not. Unlike waitfor, the matches command does not read the
XTTY port.
X.lp
XThe matches command could be used to test string values such as:
X.sp
X.in +0.5i
X.CS
X.(b L
Xread junk
Xmatches $junk "login failed"
Xif [ "$?" \-eq 0 ]
Xthen
X.in +0.5i
Xexit
X.in
Xfi
X.)b
X.Cs
X.in
X.sh 2 "Examples"
X.(x
X \*($n Examples
X.)x
X.lp
XIt is not my intention to teach the reader the fundamentals of Unix
Xshell programming. There are several good books on the subject
Xavailable in stores.
X.lp
XRemember to add execute permission to the file and remove the read
Xpermission to all others.
X.lp
X.(b L
XThe simplest auto-login script may contain the following:
X.sp
X.in +0.5i
X.CS
X# send a <CR>
Xecho ""
X# wait 5 seconds for the login prompt
Xwaitfor \-5 ogin:
X# send my user ID
Xecho "egray"
X# wait 5 seconds for the password prompt
Xwaitfor \-5 assword:
X# send my password
Xecho "abcdefg"
X# return to Pcomm
Xexit 0
X.Cs
X.)b
X.in
X.lp
X.(b L
XA more complex script is required if the user must send a modem break to
Xsynchronize the baud rate of the remote. For example:
X.sp
X.in +0.5i
X.CS
Xecho ""
Xtry=0
X# loop until done
Xwhile true
Xdo
X.in +0.5i
X# wait 5 seconds for the login prompt
Xwaitfor \-5 ogin:
X# test the exit code of the waitfor command
Xif [ "$?" \-eq 0 ]
Xthen
X.in +0.5i
X# send my user ID and exit the loop
Xecho "egray"
Xbreak
X.in
Xfi
X.sp
X# increment the number of attempts
Xtry=\`expr $try + 1\`
X# test to see if we should give up
Xif [ "$try" \-eq 5 ]
Xthen
X.in +0.5i
Xexit 1
X.in
Xfi
X.sp
X# send a modem break and loop again
Xpcomm_cmd modem_break
Xecho ""
X.in 0.5i
Xdone
X# wait 5 seconds for the password prompt
Xwaitfor \-5 assword:
X# test the return code from waitfor
Xif [ "$?" \-eq 0 ]
Xthen
X.in +0.5i
X# send my password
Xecho "abcdefg"
X.in
Xelse
X.in +0.5i
Xexit 1
X.in
Xfi
X# return to Pcomm
Xexit 0
X.Cs
X.)b
X.in 0
X.lp
X.(b L
XThe following is an example fo a shell script that will dial a system,
Xlog a user on, transfer a file called junk using xmodem, log out, and
Xexit Pcomm.
X.sp
X.in +0.5i
X.CS
X# are we allready connected?
Xanswer=`pcomm_cmd if connected`
Xif [ "$answer" -eq 0 ]
Xthen
X.in +0.5i
X# dial entry number 23 in my dialing directory
Xpcomm_cmd dial 23
X.in -0.5i
Xfi
X# wait for the login prompt
Xwaitfor ogin:
X# send my user id
Xecho egray
X# wait for the password prompt
Xwaitfor assword:
X# send my passwd
Xecho abcdefg
X# wait for a Unix prompt
Xwaitfor $
X# start up an xmodem file transfer
Xecho sx junk
X# wait for the sx command to say its ready
Xwaitfor now
Xsleep 1
X# do a file transfer
Xpcomm_cmd receive xmodem junk
X# wait for the prompt
Xwaitfor $
X# log me out
Xecho "^D"
Xsleep 1
X# exit pcomm
Xpcomm_cmd exit
X.Cs
X.)b
X.in 0
X.bp
X.if e \{
X.ep
X.bp\}
X.uh "Appendix A \- Typical Modem Configuration"
X.(x
X
X.)x _
X.(x
XAppendix A \- Typical Modem Configuration
X.)x
X.lp
XI can't begin to describe how to configure every modem to work with
XPcomm. There are, however, several guidelines that will apply to
Xvirtually any modem.
X.ba +0.5i
X.lp
X1) Pcomm doesn't care about the DCD (Data Carrier Detect) settings of
Xthe modem.
X.lp
X2) It would be nice (but not essential) if the loss of the DTR (Data
XTerminal Ready) caused the modem to hang up.
X.lp
X3) Pcomm doesn't care if commands are echoed back by the modem (it might
Xsave a few milliseconds if echoing was turned off).
X.lp
X4) Some sort of result codes are required. Numeric result codes are
Xok... but since they are displayed on the screen, word result codes
Xwill make more sense.
X.lp
X5) If the modem can return different result codes for each baud rate at
Xwhich it answers, then by all means, use them. Match the odd-ball
Xcodes (such as CONNECT FAST for Telebit PEP) to the closet matching speed.
X.lp
X6) Anything that is returned by the modem, but not listed in the modem
Xsetup, is ignored.
X.lp
X8) Systems running older versions of uugetty (the bi-directional version
Xof getty that comes with HDB uucp) may require extra commands in the
Xinitialization string to assure that uugetty switches to its dial out
Xmode. Normally, \*(lqAT!~AT!~\*(rq causes enough dialogue to force
Xuugetty to release the line.
X.ba
X.lp
XFor example, a 2400 baud Hayes compatible modem might be configured with
Xthe following command:
X.sp
X.in +0.5i
X.nf
XAT\ S7=60\ S11=70\ E0\ Q0\ V1\ X4\ &D2
X.fi
X.in +0.5i
X.(b L
X.TS
Xl l.
XAT Hayes attention command
XS7=60 Wait 60 seconds for an answer
XS11=70 70 ms touch tone dialing
XE0 Don't echo commands (not essential)
XQ0 Turn result codes on
XV1 Return word result codes
XX4 Use as many result codes as you've got
X&D2 Hang up when DTR is lost (nice to have)
X.TE
X.)b
X.in 0
X.bp
X.if e \{
X.ep
X.bp\}
X.uh "Appendix B \- AT&T Unix PC 7300/3b1 Dial Codes"
X.(x
X
X.)x _
X.(x
XAppendix B \- AT&T Unix PC 7300/3b1 Dial Codes
X.)x
X.lp
XThe dialing codes used by the OBM (On Board Modem) are not
Xstraight-forward. The modem setup, as distributed, looks like this:
X.br
X.CS
X.(b L
X.(c
X-------------------------- Modem Setup --------------------------
X.sp
X 1) Modem name (1 of 2) ... OBM
X 2) Modem init string .....
X 3) Dialing command ....... %
X 4) Dialing cmd suffix .... @
X 5) Hang up string ........
X 6) Auto baud detect ...... N
X 7) 300 baud connect ...... CONNECT
X 8) 1200 baud connect ..... CONNECT
X 9) 2400 baud connect .....
X 10) 4800 baud connect .....
X 11) 9600 baud connect .....
X 12) 19200 baud connect ....
X 13) 38400 baud connect ....
X 14) No connect string 1 ...
X 15) No connect string 2 ...
X 16) No connect string 3 ...
X 17) No connect string 4 ...
X-----------------------------------------------------------------
XOPTION ==> _ Press <ESC> to return
X.)c
X.)b
X.Cs
X.lp
XThe relevant fields of the modem setup are:
X.ba +0.5i
X.lp
X1) Modem name. This must be \*(lqOBM\*(rq.
X.lp
X.ft I
XNOTE:\ \ Pcomm uses the modem name as a flag to determine which dialing
Xmethod to use. The string \*(lqOBM\*(rq is a \*(lqreserved word\*(rq
Xthat Pcomm uses to switch to the AT&T Unix PC 7300/3b1 dialing method.
X.ft
X.lp
X3) Dialing command. This should be \*(lq%\*(rq for touch tone dialing
Xor \*(lq^\*(rq for pulse dialing.
X.lp
X4) Dialing cmd suffix. This must be the \*(lq@\*(rq character.
X.lp
X6) Auto baud detect. The OBM cannot use the auto baud detect feature.
X.lp
X7\-8) Connect strings. Although the OBM doesn't actually return any
Xresult codes, these fake fields are required.
X.ba
X.lp
XAdditional OBM dialing codes from the phone(7) manual:
X.br
X.in +0.5i
X.(b L
X.TS
Xl l.
X\*(lq~\*(rq wait for next dial tone
X\*(lq,\*(rq pause 2 seconds
X\*(lq:\*(rq pause 10 seconds
X\*(lq&\*(rq perform a hookflash
X\*(lq%\*(rq begin tone dialing
X\*(lq^\*(rq begin pulse dialing
X.TE
X.)b
X.in
X.lp
XThese codes can be inserted into the phone number string, for example:
X.br
X.in +0.5i
X.(b L
X.TS
Xl l.
X555-1234~56 dial 555-1234, wait for tone, dial 56
X9,555-1234 dial 9, wait 2 seconds, dial 555-1234
X%555^1234 dial 555 using tone, 1234 using pulse
X.TE
X.)b
X.in
X.lp
X.ft I
XNOTE:\ \ The dialing codes for the OBM are not subject to character
Xsynonym translations, therefore the \*(lq%\*(rq, \*(lq^\*(rq, and
X\*(lq~\*(rq characters do NOT have to be preceded by the \*(lq\e\*(rq
Xcharacter to remove their special meaning.
X.ft
X.bp
X.if e \{
X.ep
X.bp\}
X.uh "Appendix C \- Using High Speed Modems"
X.(x
X
X.)x _
X.(x
XAppendix C \- Using High Speed Modems
X.)x
X.ba
X.lp
XThe features and complexities of newer high speed intelligent modems
Xavialable today warrants a more detailed discussion.
X.lp
X1) Locked interface speed
X.ba +0.5i
X.lp
XNewer modems have the ability to maintain a locked interface speed
Xwith the computer without regard to the connected baud rate. For
Xexample, it is a good idea to lock the interface speed at
X19200 baud (or 38400) when the modem is \*(lqtalking\*(rq at 14400 baud.
X.lp
XThe \*(lqlocked speed\*(rq field of the TTY database was created to
Xsolve this problem. If this value is non-zero, Pcomm wll only use this
Xbaud rate when talking to the modem. The true connected baud rate
X(14400 for example) will continue to be displayed in the status line.
X.ba
X.lp
X2) Multiple setups
X.ba +0.5i
X.lp
XUsers of newer modems may require a different \*(lqinit string\*(rq or
X\*(lqdial string\*(rq depending on the target machine being called. For
Xexample, when trying to connect to older V.32 modems, the V.42 and V.42bis
Xfeatures may have to be disabled. In this case, the dial string would
Xcontain the command to disable the unwanted features.
X.lp
XThis problem is solved by creating additional modem entries in the modem
Xdatabase. For example, you could have an entry called \*(lqTELEBIT\*(rq
Xfor normal connections, one called \*(lqTELEBIT_V.32\*(rq for connecting
Xot older V.32 modems, and another called \*(lqTELEBIT_PEP\*(rq for
Xconnections to othe PEP modems.
X.lp
XPcomm uses the connect strings to determine if the modem can handle the
Xrequested baud rate. If there are multiple modems that satisfy that baud
Xrate, then the first modem entry is used. You can influence the choice of
Xsuitable modems by placing the name of the modem in the Auxiliary field of
Xthe dialing directory. In this way, you can have a default modem and a
Xspecific modem for each dialing directory that my require one.
X.lp
XYou choices are virtually unlimited... you can have a separte modem
Xsetup to control modem features such as error control, compression,
Xprotocol spoofing, etc.
X.ba
X.lp
X3) Telebit WorldBlazer settings
X.ba +0.5i
X.lp
XThe following configuration is what I personally use for my Telebit
XWorldBlazer on bi-directional lines (ones with uugetty). Your mileage
Xmay vary.
X.in +0.5i
X.(b L
X.TS
Xl l.
X~&F Restores factory settings
XL1 Low speaker volume
XQ2 Use result codes only when dialing out
XX2 Use the most detailed result codes
X&C1 Set DCD to follow the carrier
X&D3 Hard reset on loss of DTR
XS0=1 Answer on first ring
XS7=60 Wait at least 60 seconds for a carrier
XS51=6 Set interface speed to 38400 baud
XS58=2 Rull duplex RTS/CTS flow control
XS59=15 Use result code extensions
XS61=0 Pass modem breaks to the other end
X&W Save in NVM
X.TE
X.)b
X.ba
X.lp
X4) Sample TTY database
X.ba +0.5i
X.lp
XThe following is the contents of the sample TTY database:
X.br
X.in +0.5i
X.(b L
X.TS
Xl l c
Xl l l.
XTTY name Modem name Init speed
X.sp
X1) tty10 HAYES 0
X2) tty11 HAYES 0
X3) tty12 DIRECT 0
X4) tty13 TELEBIT 38400
X5) tty13 TELEBIT_V.32 38400
X6) tty13 TELEBIT_PEP 38400
X.TE
X.)b
X.in
X.lp
XNotice that the last three entries share the same TTY.
X.ba
X.lp
X5) Sample modem database entry for TELEBIT
X.ba +0.5i
X.lp
XThe third entry in the sample modem database is for the Telebit modem
Xdesignated for use under normal conditions.
X.br
X.in +0.5i
X.CS
X.(b L
X.(c
X 1) Modem name (3 of 5) .... TELEBIT
X 2) Modem init string ...... ATZ!~~
X 3) Dialing command ........ ATDT
X 4) Dialing cmd suffix ..... !
X 5) Hang up string ......... ~~+++~~ATH0!
X 6) Auto baud detect ....... Y
X 7) 300 baud connect ....... CONNECT 300
X 8) 1200 baud connect ...... CONNECT 1200
X 9) 2400 baud connect ...... CONNECT 2400
X10) 4800 baud connect ...... CONNECT 4800
X11) 9600 baud connect ...... CONNECT 9600
X12) 19200 baud connect ..... CONNECT FAST
X13) 38400 baud connect .....
X14) No connect string 1 .... BUSY
X15) No connect string 2 .... ERROR
X16) No connect string 3 .... NO CARRIER
X17) No connect string 4 .... NO DIALTONE
X.)c
X.)b
X.Cs
X.in
X.ba
X.lp
X6) Sample modem database entry for TELEBIT_V.32
X.ba +0.5i
X.lp
XThe 4th entry is for the Telebit modem designated for use with older V.32
Xmodems that are confused by V.42 and V.42bis.
X.br
X.in +0.5i
X.CS
X.(b L
X.(c
X 1) Modem name (4 of 5) .... TELEBIT_V.32
X 2) Modem init string ...... ATZ!~~
X 3) Dialing command ........ ATS180=0S50=6DT
X 4) Dialing cmd suffix ..... !
X 5) Hang up string ......... ~~+++~~ATH0!
X 6) Auto baud detect ....... Y
X 7) 300 baud connect ....... CONNECT 300
X 8) 1200 baud connect ...... CONNECT 1200
X 9) 2400 baud connect ...... CONNECT 2400
X10) 4800 baud connect ...... CONNECT 4800
X11) 9600 baud connect ...... CONNECT 9600
X12) 19200 baud connect .....
X13) 38400 baud connect .....
X14) No connect string 1 .... BUSY
X15) No connect string 2 .... ERROR
X16) No connect string 3 .... NO CARRIER
X17) No connect string 4 .... NO DIALTONE
X.)c
X.)b
X.Cs
X.ba
X.lp
X7) Sample modem database entry for TELEBIT_PEP
X.ba +0.5i
X.lp
XThe 5th entry is for the Telebit modem designated for use with other
XTelebit PEP modems.
X.br
X.in +0.5i
X.CS
X.(b L
X.(c
X 1) Modem name (5 of 5) .... TELEBIT_PEP
X 2) Modem init string ...... ATZ!~~
X 3) Dialing command ........ ATS50=255DT
X 4) Dialing cmd suffix ..... !
X 5) Hang up string ......... ~~+++~~ATH0!
X 6) Auto baud detect ....... Y
X 7) 300 baud connect .......
X 8) 1200 baud connect ......
X 9) 2400 baud connect ......
X10) 4800 baud connect ......
X11) 9600 baud connect ......
X12) 19200 baud connect ..... CONNECT FAST
X13) 38400 baud connect .....
X14) No connect string 1 .... BUSY
X15) No connect string 2 .... ERROR
X16) No connect string 3 .... NO CARRIER
X17) No connect string 4 .... NO DIALTONE
X.)c
X.)b
X.Cs
X.in 0
X.ba 0
X.\" the index page
X.hx
X.bp
X.pl -10v
X.(b C
XTable of Contents
X.)b
X.sp 3
X.\" Not all versions of nroff can handle a 2 column index
X.2c
X.nr xu 2
X.xp
END_OF_FILE
if test 68115 -ne `wc -c <'pcomm-2.0/Doc.me'`; then
echo shar: \"'pcomm-2.0/Doc.me'\" unpacked with wrong size!
fi
# end of 'pcomm-2.0/Doc.me'
fi
echo shar: End of archive 7 \(of 8\).
cp /dev/null ark7isdone
MISSING=""
for I in 1 2 3 4 5 6 7 8 ; do
if test ! -f ark${I}isdone ; then
MISSING="${MISSING} ${I}"
fi
done
if test "${MISSING}" = "" ; then
echo You have unpacked all 8 archives.
rm -f ark[1-9]isdone
else
echo You still need to unpack the following archives:
echo " " ${MISSING}
fi
## End of shell archive.
exit 0
--
Frank Kaefer # fkk@stasys.sta.sub.org # Starnberg, Germany
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads