home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-04-13 | 70.8 KB | 2,686 lines |
- Newsgroups: comp.sources.unix
- From: fthood!egray@uxc.cso.uiuc.edu (Emmet Gray)
- Subject: v26i158: pcomm-2.0.2 - a serial communications program (clone of ProComm), Part06/06
- Sender: unix-sources-moderator@vix.com
- Approved: paul@vix.com
-
- Submitted-By: fthood!egray@uxc.cso.uiuc.edu (Emmet Gray)
- Posting-Number: Volume 26, Issue 158
- Archive-Name: pcomm-2.0.2/part06
-
- #! /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 6 (of 6)."
- # Contents: Doc.me
- # Wrapped by vixie@gw.home.vix.com on Wed Apr 14 00:38:44 1993
- PATH=/bin:/usr/bin:/usr/ucb ; export PATH
- if test -f 'Doc.me' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'Doc.me'\"
- else
- echo shar: Extracting \"'Doc.me'\" \(69077 characters\)
- sed "s/^X//" >'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.\" this macro is used to change the proportional font to 12 pitch
- X.\" some folks may need ".cs CW" in lieu of ".cs R 22"
- X.de CS
- X.cs R 22
- X..
- X.\" and this one puts things back
- X.de Cs
- X.cs R
- X..
- X.tp
- X.sp 7
- X.CS
- X.(l C
- PPPPPP CCCC OOOO MM MM MM MM
- P P C O O M M M M M M M M
- PPPPPP C O O M M M M M M
- P C O O M M M M
- P CCCC OOOO M M M M
- X.)l
- X.Cs
- X.sp 7
- X.ce 11
- Pcomm Reference Manual
- X.sp
- version 2.0
- X.sp 3
- X written by
- X.sp
- XEmmet P. Gray
- X.cc A
- X...!uunet!uiucuxc!fthood!egray
- Acc .
- fthood!egray@uxc.cso.uiuc.edu
- X.ce 0
- X.sp 6
- Pcomm is a public domain telecommunication program for Unix that is
- designed to operate similarly to the MSDOS program, ProComm. ProComm (TM)
- is copyrighted by Datastorm Technologies, Inc. This is a completely new
- program and contains no ProComm source code. This is not a Datastorm
- product.
- X.bp
- X.oh ''Pcomm Reference Manual'Page %'
- X.eh 'Page %'Pcomm Reference Manual''
- X.pn 1
- X.ep
- X.bp
- X.sh 1 INTRODUCTION
- X.(x
- X\*($n INTRODUCTION
- X.)x
- X.lp
- Pcomm is a public domain, menu driven, telecommunication program
- designed to provide the same \*(lqease of use\*(rq as similar programs
- available 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
- Pcomm does not emulate any particular terminal. Whatever terminal
- you're on, is what the remote system \*(lqsees\*(rq.
- X.sh 2 Abbreviations
- X.(x
- X \*($n Abbreviations
- X.)x
- X.lp
- Pcomm uses the notation \*(lq^A-X\*(rq to mean control-A followed by the
- letter X. The dash (\-) in the notation is just for clarity; it is not
- included in the actual command sequence. Also, there is no distinction
- between upper and lower case letters.
- X.lp
- The following abbreviations appear in Pcomm:
- X.br
- X.in +0.5i
- X.(b L
- X.TS
- l 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
- LF line feed character (control-J)
- CR carriage return character (control-M)
- X.TE
- X.)b
- X.in
- X.sh 2 Requirements
- X.(x
- X \*($n Requirements
- X.)x
- X.lp
- Pcomm will not run on terminals with a screen size of less than 80
- columns by 24 lines or on terminals that lack cursor movement
- capabilities. For terminals without arrow keys, use the letter
- X\*(lqU\*(rq in place of \*(lqup arrow\*(rq and the letter \*(lqN\*(rq in
- place of \*(lqdown arrow\*(rq (the letter \*(lqD\*(rq would have been a
- more obvious choice, but, unfortunately, it is used elsewhere).
- X.sh 2 "Support files"
- X.(x
- X \*($n Support files
- X.)x
- X.lp
- Pcomm uses four support files, namely:
- X.br
- X.in +0.5i
- X.(b L
- X.TS
- l l.
- pcomm\^.\^dial_dir the dialing directory
- pcomm\^.\^extrnl the external file transfer programs
- pcomm\^.\^modem the modem/TTY database
- pcomm\^.\^param the start-up default parameters
- X.TE
- X.)b
- X.in
- X.lp
- There is a default directory (typically \*(lq/usr/local/lib/pcomm\*(rq)
- where the \*(lqstandard\*(rq support files live. Since the average user
- won't have write permission on these files, it's assumed that they will
- copy one or more of these standard files to their own directories and
- edit them to suit their needs.
- X.lp
- Pcomm can use the environmental variable \*(lqPCOMM\*(rq to search for
- these \*(lqprivate\*(rq support files. If used, the variable must
- contain 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
- would be no need to copy that file to the private directory.
- X.lp
- Pcomm also uses normal Unix shell scripts to perform the \*(lqchat\*(rq
- sequences necessary to automatically log a user onto a system.
- X.lp
- The following directories are searched to find the support files and the
- shell 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
- Pcomm has the following command line syntax.
- X.sp
- X.in +0.5i
- X.(b L
- pcomm [\-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
- The \*(lq\-d\*(rq option allows you to specify an additional path to be
- used when searching for the Pcomm support files. This option is often
- useful for \*(lqborrowing\*(rq someone else's dialing directory.
- X.lp
- The \*(lq\-f\*(rq option is used to specify automatic dialing of an entry
- in the dialing directory. The name field in the dialing directory
- X(described later) is checked against the string given on the command
- line. If a match is found, that entry is automatically dialed. The
- match does not consider upper and lower case differences.
- X.lp
- The \*(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
- specify the modem to be used. This feature can be used to customize
- Pcomm options or perform unattended operations.
- X.lp
- The remaining options are used to set the parity, data bits, baud rate,
- and telephone number from the command line.
- X.br
- X.in +0.5i
- X.(b L
- X.TS
- l l.
- X\-e Set the parity to even
- X\-o Set the parity to odd
- X\-n Set the parity to none
- X\-w Set the word length (number of data bits)
- 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
- Pcomm uses a \*(lqhot key\*(rq to precede each command. (The value of
- the hot key is a user tunable parameter, but for the purpose of this
- document we'll assume the hot key is defined as control-A).
- X.lp
- The hot key is used to put Pcomm in the command mode. For example, to
- get the help screen, you type control-A (to get to the command mode)
- then the number 0 (to display the help screen). When a command is
- completed, Pcomm returns to the terminal mode.
- X.lp
- X.ft I
- NOTE:\ \ While in the command mode, the communication with the remote
- system is temporarily suspended.
- X.ft
- X.sh 2 "Status line"
- X.(x
- X \*($n Status line
- X.)x
- X.lp
- Whenever Pcomm is in the command mode (or is not currently connected to
- a remote) a status line is displayed at the bottom of the screen. A
- typical 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.(b L
- X.TS
- box center;
- l|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.)b
- X.Cs
- X.if n .po 1.0i
- X.if n .ll 6.5i
- X.lp
- The 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
- NOTE:\ \ If the DTE (Data Terminal Equipment) interface speed is locked,
- the status line will show the \*(lqconnected\*(rq 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
- The help screen gives a brief review of all the available commands. To
- access the help screen type ^A and \*(lq0\*(rq (zero). The typical help
- screen 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
- box center;
- c s s
- c c c
- l l l.
- X.sp
- P C O M M H E L P
- X.sp
- X_
- X.sp
- Major 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&
- c s s.
- Press 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
- To 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
- box;
- l.
- 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
- To 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
- Pcomm allows you to change many of the default parameters. The setup
- screen is accessed by typing ^A and \*(lqs\*(rq. The following screen
- shows 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-----------------------------------------------------------------
- OPTION ==> _ Press <ESC> to exit
- X.)c
- X.)b
- X.Cs
- X.lp
- To select one of the sub-menu choices, you type the number (or letter)
- at the \*(lqOPTION ==>\*(rq prompt. To exit from a sub-menu and return
- to this setup menu screen, you press the escape key.
- X.lp
- Changes made affect the current Pcomm session only. To make the changes
- become the default, you select the \*(lqs\*(rq option.
- X.sh 2 Prompting
- X.(x
- X \*($n Prompting
- X.)x
- X.lp
- There are several different types of prompts used in the setup screens.
- The prompts use the bottom two lines on the display for user input and
- to give more information on what is being asked. Pcomm will beep at any
- illegal input. The escape key <ESC> will abort any prompt. The prompt
- types 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
- current selection by pressing the carriage return or change the
- selection by pressing the space bar.
- X.in 0
- X.sh 2 "TTY setup"
- X.(x
- X \*($n TTY setup
- X.)x
- X.lp
- The TTY setup allows you to assign the serial ports that Pcomm is
- allowed to use, and what is attached to each port. A typical TTY setup
- screen 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-----------------------------------------------------------------
- OPTION ==> _ Press <ESC> to return
- X.)c
- X.)b
- X.Cs
- X.lp
- You may edit an entry by typing the entry number at the prompt. To add
- an entry, you type \*(lqA\*(rq at the prompt, etc.
- X.lp
- The 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
- allowed 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
- database with the TTY database. The name could be any combination of
- letters or numbers (both upper and lower case).
- X.lp
- X.ft I
- NOTE:\ \ All hard-wired ports (ports without modems attached) \fBmust\fP
- use 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
- directory when talking to the modem. If the locked speed is non-zero,
- then the baud rate specified is the only one that will ever be use. The
- baud rate is selected from a \*(lqmenu prompt\*(rq. See Appendix C for
- more information about the use of this feature.
- X.lp
- X.ft I
- NOTE:\ \ It is often best to put the fastest modem/TTYs at the end of the
- TTY database.
- X.ft
- X.ba
- X.sh 2 "Modem setup"
- X.(x
- X \*($n Modem setup
- X.)x
- X.lp
- The modem setup contains the commands to make the modem dial, hang up
- the 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 5) ... 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-----------------------------------------------------------------
- OPTION ==> _ Press <ESC> to return
- X.)c
- X.)b
- X.Cs
- X.lp
- The 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
- the TTY database. A menu prompt is used to select the modem name (and
- the remaining parameters that go with it). The \*(lq(1 of 5)\*(rq field
- indicates there are additional modems in the database.
- X.lp
- X2) Modem initialization string. This is sent to the modem whenever the
- port is selected. Consult your modem manual for the codes to be used.
- Notice the use of the \*(lq!\*(rq character. This is the \*(lqcharacter
- synonym\*(rq for the carriage return.
- X.lp
- X.ft I
- NOTE:\ \ See section 3.5 for the complete list of character synonyms. To
- remove 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
- dial. 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
- modem dial. Typically this will be the carriage return \*(lqcharacter
- synonym\*(rq.
- X.lp
- X5) Hang up string. The command to make the modem hang up the phone.
- The character synonym for a 1 second pause is the tilde \*(lq~\*(rq
- character.
- X.lp
- X6) Auto baud detect. Should Pcomm attempt to change the baud rate of
- the TTY to the baud rate matching the connect string? This feature
- requires the connect strings to be unique. This does not override the
- locked speed feature (discussed in section 3.2).
- X.lp
- X7\-13) Connect strings. The return messages when the modem has connected
- to the remote. If different messages are returned for each baud rate at
- which the modem answers, then they should be specified.
- X.lp
- X.ft I
- NOTE:\ \ Pcomm uses the connect strings to determine which baud rates the
- modem is capable of supporting. For example, if the 4800 baud connect
- string is empty, Pcomm assumes the modem can not support 4800 baud.
- X.sp
- NOTE:\ \ If two connect strings are very similar, (for example,
- X\*(lqCONNECT\*(rq is entirely contained in \*(lqCONNECT 1200\*(rq), it
- is possible that the return code from the modem will match the incorrect
- string. To prevent this from happening, use the command synonym for the
- carriage 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
- connection is made.
- X.ba
- X.sh 2 "Terminal setup"
- X.(x
- X \*($n Terminal setup
- X.)x
- X.lp
- The terminal setup allows you to define the hot key and the mapping of
- the end-of-line characters. A typical terminal setup menu will look
- like 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-----------------------------------------------------------------
- OPTION ==> _ Press <ESC> to return
- X.)c
- X.)b
- X.Cs
- X.lp
- The 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.
- Consult an ASCII/decimal conversion chart for the decimal values of
- other characters.
- X.lp
- X2) ASCII version of hot key. This is the printable version of the hot
- key 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
- HALF duplex. In the half duplex mode, characters sent to the remote
- system are also sent to the screen. (The duplex mode can also be
- changed \*(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
- control and NONE. A value of NONE assumes that the hardware (not Pcomm)
- will perform the flow control.
- X.lp
- X.ft I
- NOTE:\ \ If your terminal gets \*(lqstuck\*(rq due to a flow control
- problem, 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
- outgoing carriage returns can be altered to suit the remote system's
- needs. 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
- The incoming CR translation can also be changed \*(lqon the fly\*(rq
- with the ^A-3 command.
- X.ba
- X.sh 2 "General setup"
- X.(x
- X \*($n General setup
- X.)x
- X.lp
- The general setup allows you to define the character synonyms and the
- default files used by the screen dump and other features. A typical
- general 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-----------------------------------------------------------------
- OPTION ==> _ Press <ESC> to return
- X.)c
- X.)b
- X.Cs
- X.lp
- The 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
- data 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
- command (^A-G).
- X.lp
- X3) Strip high bit. Should Pcomm strip the eighth bit on incoming and
- outgoing characters? A menu prompt allows you to select YES or NO.
- This feature is not used during file transfers.
- X.lp
- X4\-8) Character synonyms. These are symbols that Pcomm uses to represent
- special characters (or perform special functions) when sending commands
- to the modem. Synonyms are useful for entering and displaying special
- characters 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
- NOTE:\ \ To prevent the special meaning of one of these characters prepend
- a \*(lq\e\*(rq to it.
- X.ft
- X.lp
- X9) Aborted downloads. When a download aborts (fails), should the
- partially completed file be kept? The menu prompt allows \*(lqKEEP\*(rq
- or \*(lqDELETE\*(rq.
- X.lp
- X10) Connect delay. The number of seconds Pcomm will wait for the modem
- to return a status code.
- X.lp
- X11) Redial delay. The number of seconds to wait before Pcomm tries to
- call the number again.
- X.ba
- X.sh 2 "ASCII transfer setup"
- X.(x
- X \*($n ASCII xfer setup
- X.)x
- X.lp
- This setup screen allows you to select options to be used for ASCII
- uploads and downloads. A typical ASCII transfer setup will look like
- this:
- 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-----------------------------------------------------------------
- OPTION ==> _ Press <ESC> to return
- X.)c
- X.)b
- X.Cs
- X.lp
- The fields are:
- X.ba +0.5i
- X.lp
- X1) Echo locally. This is similar to the duplex option in that it copies
- outgoing 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
- space and LF? Some BBS systems use a blank line to signal the end of an
- ASCII upload. The options are YES and NO.
- X.lp
- X3) CR delay. The delay in milliseconds to be used when sending a CR.
- The menu prompt limits the choice to 0, 100, or 150.
- X.lp
- X4) Pace output. Should each character sent be delayed? Very old BBS
- systems may require this. The choice is YES or NO.
- X.lp
- X5) CR translation. The menu prompt provides the following choices for
- upload 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
- end of an ASCII download. You can halt the transfer before the timer
- goes off by hitting the <ESC> key.
- X.lp
- X8\-9) Same as 5) and 6) above, except the translations apply to ASCII
- downloading.
- X.ba
- X.sh 2 "External protocol setup"
- X.(x
- X \*($n External protocol
- X.)x
- X.lp
- This setup screen allows you to embed the name of external file transfer
- programs into the list of available protocols. When transferring files,
- the external program name will appear on the list of options along with
- the 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-----------------------------------------------------------------
- OPTION ==> _ Press <ESC> to return
- X.)c
- X.)b
- X.Cs
- X.lp
- To change a line (or add a new one), enter the line number at the
- prompt. 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
- space character at the Name prompt.
- X.lp
- The Command Line is the Unix command that you would normally type in to
- invoke the program (minus the names of the files to be transferred).
- The last field in the setup is used to indicate whether or not Pcomm
- should prompt for a list of file names to be added to the command.
- X.lp
- X.ft I
- NOTE:\ \ Pcomm adds a single space character and the file names (if any)
- to the end of the command.
- X.sp
- NOTE:\ \ The program itself isn't \*(lqembedded\*(rq into Pcomm (it still
- gets called like any other external program), only the name and
- invocation 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
- When Pcomm is invoked without the \*(lq\-f\*(rq or \*(lq\-a\*(rq command
- line option, you're placed in the terminal mode with a blank screen and
- a status line. However, since Pcomm hasn't yet selected a serial port
- to use, characters typed at the blank screen are ignored. Normally the
- first 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
- To dial another system, you type ^A-D to access the dialing directory
- menu, then enter the entry number at the prompt.
- X.lp
- The entry number could be preceded by a special long distance dialing
- code such as \*(lq#5\*(rq in lieu of \*(lq5\*(rq alone. Long distance
- codes could contain access numbers such as those that MCI and Sprint
- require.
- X.lp
- A 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
- box center;
- c s s s s
- c c r c l
- l r r c l.
- X.sp
- D I A L I N G D I R E C T O R Y
- X.sp
- X_
- X.sp
- Name 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&
- l 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
- The fields of the dialing directory are:
- X.ba +0.5i
- X.lp
- Name) The name of the remote system.
- X.lp
- Number) The telephone number to the remote system.
- X.lp
- X.ft I
- NOTE:\ \ The \*(lq(\*(rq, \*(lq)\*(rq, \*(lq-\*(rq, and space characters
- are just for looks, and don't get sent to the modem. To prevent the
- stripping of one of these characters, prepend a \*(lq\e\*(rq to it.
- X.ft
- X.lp
- Line settings) The communications settings to be used when dialing
- that entry. The range of values are:
- X.br
- X.in +0.5i
- X.(b L
- X.TS
- r c c c
- r l c c.
- Baud 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
- Duplex) The duplex mode. Either \*(lqF\*(rq for full or
- X\*(lqH\*(rq for half.
- X.lp
- Auxiliary) This field contains the name of a file which has one of three
- uses:
- X.lp
- X.in +0.5i
- X1) A shell script to be used during the auto-login \*(lqchat\*(rq
- sequence.
- X.br
- X2) A particular TTY to be used for hard-wired ports.
- X.br
- X3) A customized modem configuration to be used for the entry.
- X.in
- X.lp
- X.ft I
- NOTE:\ \ On all hard-wired ports, the script field is used to contain the
- name of the port. For example, if tty12 is a hard-wired port to
- X\*(lqSystem A\*(rq, then the dialing directory entry for \*(lqSystem
- A\*(rq will have \*(lqtty12\*(rq in the script field.
- X.ft
- X.lp
- X.ft I
- NOTE:\ \ The ability to specify a customized modem configuration allows
- you to tailor each dialing directory entry to meet the peculiar needs of
- the modem at the other end of the connection. See Appendix C for more
- details.
- X.ft
- X.ba
- X.lp
- The commands at the dialing directory prompt are:
- X.ba +0.5i
- X.lp
- R) Revise (or add) a dialing directory entry or long distance dialing
- code. Prompts you to save the changes to disk. A typical revise screen
- would look like this:
- X.br
- X.CS
- X.(b L
- X.TS
- box center;
- l.
- X.sp
- X.\" spaces out to here
- X Entry to revise? _ (Entry Number, +,-,@,#)
- X.sp
- X.TE
- X.)b
- X.Cs
- X.lp
- If a dialing directory entry is selected, each field of the entry is
- shown with its current settings. You can enter a new value, press a
- carriage return to skip past a field, or enter a single space character
- to erase a field. An <ESC> at any field will abort the command.
- X.lp
- P) Print (display) the long distance dialing codes.
- X.lp
- X<up>/<down>) Scroll the dialing directory up or down 10 lines. Use the
- up and down arrow keys to access this feature.
- X.lp
- M) Manual dial. Prompts you for a phone number rather than using a
- number already in the dialing directory.
- X.lp
- D) Delete an entry or a range of entries. Prompts you to save the
- changes to disk.
- X.lp
- L) Print. Send the dialing directory to the printer or a file of your
- choice.
- X.lp
- X1\-100) Entry number. Dial the phone for that entry number. If the
- script field contains the name of a valid Unix shell script, that script
- is \*(lqplayed\*(rq after the connection is made to perform the
- auto-login \*(lqchat\*(rq sequences. See section 8 of this manual for
- more details on the format and use of script commands.
- X.lp
- X.ft I
- NOTE:\ \ To access the port directly without dialing (perhaps to send the
- dial codes yourself), select an empty entry or enter a single space
- character 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
- The redial feature is a misnomer; it really is a queuing system that
- allows Pcomm to dial several numbers in a cycle until one of them
- answers.
- X.lp
- When you invoke the redial command with ^A-R, you're prompted for a list
- of dialing directory numbers. (You may also prepend a long distance
- code to the entry number).
- X.br
- X.CS
- X.(b L
- X.TS
- box center;
- l.
- X Redial Queue
- X.sp
- X.\" spaces out to here
- X Directory Entry Number(s): _
- X.sp
- X.T&
- c.
- X(<CR> for previous numbers)
- X.TE
- X.)b
- X.Cs
- X.lp
- To redial the previous number, press a carriage return alone at the
- prompt. An <ESC> aborts this command.
- X.sh 2 "Keyboard macros"
- X.(x
- X \*($n Keyboard macros
- X.)x
- X.lp
- Keyboard macros are used as a shortcut to send commonly used strings to
- the remote system with only a few keystrokes. The characters used to
- identify the macros are the shifted number keys. For example, if the
- string \*(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>
- because of the \*(lq!\*(rq character synonym). Notice the use of the
- X\*(lq\e\*(rq character to remove the special meaning of the \*(lg|\*(rq
- character synonym.
- X.lp
- To review or edit the keyboard macros, you type ^A-M. The following
- screen will appear:
- X.br
- X.CS
- X.(b L
- X.TS
- box center;
- c
- l.
- Keyboard 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&
- c.
- Press <ESC> to continue
- X.TE
- X.)b
- X.Cs
- X.lp
- To edit a macro, you type the macro key character (without the leading
- hot key). After typing the new string information, you will be prompted
- to save the changes to disk. To erase an entry enter a single space
- character.
- X.lp
- X.ft I
- NOTE:\ \ All of the character synonyms described in section 3.5 are
- available for use with the keyboard macros.
- X.ft
- X.sh 2 "Line settings"
- X.(x
- X \*($n Line settings
- X.)x
- X.lp
- The line settings menu is invoked by ^A-P. A typical line settings menu
- will look like this:
- X.br
- X.CS
- X.(b L
- X.TS
- box center;
- c
- l.
- Line 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&
- c.
- Press <ESC> to return
- X.TE
- X.)b
- X.Cs
- X.lp
- While dialing a remote, the line settings in the dialing directory entry
- are automatically used. Therefore the line settings menu is used to
- fine tune the values during a terminal session or to select the
- parameters for manual dialing. You can make the current setting the
- default by selecting the \*(lqSave Changes\*(rq option.
- X.lp
- The current line settings are also displayed in the status line.
- X.lp
- X.ft I
- NOTE:\ \ During file transfers, certain parameters (namely the data bits
- and parity) will be temporarily changed. The status line will \fBnot\fP
- reflect these temporary promotions.
- X.ft R
- X.sh 2 "Exit Pcomm"
- X.(x
- X \*($n Exit Pcomm
- X.)x
- X.lp
- To exit Pcomm, you type ^A-X. The phone is hung up (if a call was in
- progress), the print and data logging features are closed, and the TTY
- resources are released.
- X.lp
- X.ft I
- NOTE:\ \ Pcomm drops the DTR (Data Terminal Ready) on the port before
- exiting to Unix.
- X.ft
- X.sh 2 "Unix gateway"
- X.(x
- X \*($n Unix gateway
- X.)x
- X.lp
- To temporarily suspend Pcomm and spawn a Unix shell, you type ^A-4. To
- return to Pcomm, you exit the shell normally, typically with ^D or
- X\*(lqexit\*(rq.
- X.lp
- X.ft I
- NOTE:\ \ The SHELL environmental variable is used to determine which
- program to invoke.
- X.ft
- X.sh 2 "Command files"
- X.(x
- X \*($n Command files
- X.)x
- X.lp
- Command files (shell scripts) can be invoked by typing ^A-5 to automate
- keyboard input and to perform Pcomm command sequences. The following window
- will prompt for the file name.
- X.br
- X.CS
- X.(b L
- X.TS
- box center;
- l.
- X Command Files
- X.sp
- X.\" spaces out to here
- X Shell script: _
- X.sp
- X.TE
- X.)b
- X.Cs
- X.lp
- The 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
- The following commands perform secondary functions.
- X.sh 2 "Program information"
- X.(x
- X \*($n Program info
- X.)x
- X.lp
- To display the opening information screen, you type ^A-I. Press any key
- to return to the terminal mode.
- X.sh 2 "Setup screen"
- X.(x
- X \*($n Setup screen
- X.)x
- X.lp
- The 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
- To change the current working directory while still inside Pcomm, you
- type ^A-B. A screen similar to the following will appear:
- X.br
- X.CS
- X.(b L
- X.TS
- box center;
- l.
- 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
- Abbreviations known to the shell are acceptable; for example, the
- X\*(lq~\*(rq character will be translated to the home directory in the
- csh or ksh shell.
- X.sh 2 "Clear screen"
- X.(x
- X \*($n Clear screen
- X.)x
- X.lp
- To clear the local screen and home the cursor, you type ^A-C.
- X.lp
- X.ft I
- NOTE:\ \ The remote system may not \*(lqknow\*(rq the screen has been
- cleared, 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
- The ^A-E command changes the duplex mode from FULL to HALF, or from HALF
- to FULL. The status line shows the current duplex mode. Use the
- Terminal 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
- To hang up the phone, you type ^A-H. The word \*(lqdisconnecting\*(rq
- will briefly show in the status line.
- X.lp
- X.ft I
- NOTE:\ \ 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
- The ^A-L command toggles the printer logging on or off. The current
- printer status is displayed in the status line.
- X.lp
- X.ft I
- NOTE:\ \ Since all printing goes to the normal Unix print spool program,
- the characters will not print on the printer as they appear on the
- screen. The printing will actually begin when the printer logging is
- turned \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
- The ^A-3 command toggles the incoming line termination characters
- between CR and CR/LF. The status line shows the current settings (in
- the next to the last field).
- X.sh 2 "Break"
- X.(x
- X \*($n Break
- X.)x
- X.lp
- The ^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
- NOTE:\ \ This not the same as the break key on the keyboard (we don't
- want to send a break to the local system, we want to send it to
- the \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
- One of the most important features of a telecommunication program is the
- ability to transfer files. The following file transfer protocols are
- implemented:
- X.br
- X.in +0.5i
- X.(b L
- X.TS
- l l l l.
- Protocol Packet Error Multiple
- name size detection files?
- X_
- xmodem 128 checksum/CRC no
- xmodem-1k 128/1024 checksum/CRC no
- modem7 128 checksum yes \u1\d
- ymodem 128/1024 CRC yes \u2\d
- ymodem-g 128/1024 none \u3\d yes
- ASCII none none no
- zmodem \u4\d 128/1024 CRC yes
- X(external) ? ? ?
- X.TE
- X.TS
- l l.
- Notes: 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
- NOTE:\ \ The built-in protocols that send file name information, convert
- the 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
- The external \*(lqprotocol\*(rq is really a method of running an
- external program from Pcomm to accomplish a file transfer. The most
- common use of this feature would be to run Kermit or some proprietary
- program.
- X.lp
- XFrequently used external file transfer programs (such as zmodem) can
- have their names embedded into the list of available protocols by using
- the External Protocol Setup in section 3.7.
- X.lp
- To abort an external file transfer, you hit the <ESC> key. All other
- characters typed at the keyboard are ignored.
- X.lp
- X.ft I
- NOTE:\ \ The external protocol feature can also be used to pipe
- the 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
- To send a file to the remote, you'll first have to instruct the remote
- system to receive the file, then type ^A-\*(lqup arrow\*(rq. The
- following screen will appear:
- X.br
- X.in 3.2i
- X.CS
- X.(b L
- X.TS
- box;
- c
- l.
- Upload
- 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
- You then select the type of protocol at the prompt, and another window
- similar to this will appear:
- X.br
- X.CS
- X.(b L
- X.TS
- box center;
- l.
- X Send xmodem
- X.sp
- X.\" space out to here
- X Enter filename: _
- X.sp
- X.TE
- X.)b
- X.Cs
- X.lp
- Now you type in the file name or names you'd like to send. Wildcards
- known to the shell are acceptable.
- X.lp
- Now the file transfer actually begins. A screen similar to the
- following is displayed during the transfer:
- X.br
- X.in 2.4i
- X.CS
- X.(b L
- X.TS
- box;
- c
- n.
- Uploading
- 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&
- c.
- Press <ESC> to abort
- X.TE
- X.)b
- X.Cs
- X.in
- X.lp
- As the transfer progresses, the \*(lqblock count\*(rq, \*(lqpercent
- complete\*(rq, and \*(lqbytes transferred\*(rq fields will be
- continuously updated. If errors occur the \*(lqerrors this block\*(rq
- and \*(lqtotal error count\*(rq fields will be updated and the \*(lqlast
- message\*(rq field will contain a message about the error.
- X.lp
- At the end of the transfer, Pcomm will beep and return to the terminal
- mode. If an error occurred and the transfer was aborted, you will be
- prompted to acknowledge the error by pressing a key before returning to
- the terminal mode.
- X.sh 2 "Receive files"
- X.(x
- X \*($n Receive files
- X.)x
- X.lp
- To receive a file (or group of files) from a remote system, you'll have
- to first instruct the remote system, then type ^A-\*(lqdown arrow\*(rq.
- Receiving a file is basically the same as sending a file.
- X.lp
- X.ft I
- NOTE:\ \ Some systems do not pad the end of the file with control-Z's and
- therefore 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
- The pass through mode is used when you have two or more machines in a
- communications daisy chain. The following diagram shows an example of
- this type of arrangement:
- X.br
- X.in +0.5i
- X.(b L
- X.TS
- X|c|c|c|c|c|.
- X_ _ _
- IBM PC Unix IBM PC
- running <---- running <---- running
- ProComm ----> Pcomm ----> RBBS
- X_ _ _
- X.TE
- X.)b
- X.in
- X.lp
- If a file is to be transferred from the last machine to the first
- machine, the middle machine must appear completely transparent. The
- middle machine must \*(lqforward the data\*(rq without altering it in
- any way. The pass through mode \*(lqexpires\*(rq after a designated
- period of inactivity, after which the user is returned to the terminal
- mode.
- X.lp
- To access the pass through mode, you type ^A-T. The following screen
- will appear:
- X.br
- X.CS
- X.(b L
- X.TS
- box center;
- l.
- 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
- NOTE:\ \ While in the pass through mode, no Pcomm command to the middle
- machine will be honored. Therefore, the \fBonly\fP way to exit this
- mode is to not type anything on the keyboard until the expiration period
- has elapsed.
- X.sp
- NOTE:\ \ The baud rates to and from the middle machine need not be the
- same, however the slowest speed determines the overall speed of the
- transfer (the weakest link in the chain).
- X.ft R
- X.sh 2 Directory
- X.(x
- X \*($n Directory
- X.)x
- X.lp
- To obtain a listing of a directory on the local system while still
- running Pcomm, you type ^A-F. The following screen will appear:
- X.br
- X.CS
- X.(b L
- X.TS
- box center;
- l.
- 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
- Abbreviations known to the shell are valid. Output is sent through a
- X\*(lqmore\*(rq like program.
- X.lp
- X.ft I
- NOTE:\ \ Since we're really doing a popen() to the \*(lqls\*(rq command,
- additional command line options are also valid.
- X.ft
- X.sh 2 "Screen dump"
- X.(x
- X \*($n Screen dump
- X.)x
- X.lp
- To dump the contents of the current screen (minus any windows showing)
- you type ^A-G. The contents of the screen are written to the file
- specified in the general setup for this purpose. If the file already
- exists, 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
- NOTE:\ \ The screen contents are subject to the available VCS (video
- command sequence) emulation, so an exact representation is not
- guaranteed.
- X.ft
- X.sh 2 "Start data logging"
- X.(x
- X \*($n Start data logging
- X.)x
- X.lp
- To start the data logging, or change the file used for data logging, you
- type ^A-1. The following screen will appear:
- X.br
- X.CS
- X.(b L
- X.TS
- box center;
- l.
- 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
- To keep the default file, just press a carriage return at the prompt,
- otherwise, enter a new file name. If the file already exits, the new
- data is appended to the file.
- X.lp
- The 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
- To temporarily suspend data logging or to start it again without being
- prompted 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
- While Pcomm is dialing another system, a screen similar to the following
- is 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
- box center;
- c
- n.
- X.sp
- D I A L I N G W I N D O W
- X.sp
- X_
- X.sp
- X.\" spaces out to here
- System name\&: C Board
- Pass number\&: 1
- XElapse time this try\&: 4
- Time at start of dial\&: 14:53:36
- Time at start of this try\&: 14:53:36
- Connect delay time\&: 35
- Redial delay time\&: 5
- Auxiliary\&:
- Result of last try\&:
- X.T&
- c.
- X.sp
- X <SPACE>: Recycle <DEL>: Remove from queue E: Change delays
- X.sp
- Press <ESC> to abort
- X.TE
- X.)b
- X.Cs
- X.if n .po 1.0i
- X.if n .ll 6.5i
- X.lp
- Items in the window are continuously updated to show the progress of the
- dialing attempt.
- X.lp
- The options available during the dialing window are:
- X.ba +0.5i
- X.lp
- SPACE) Press the space bar to stop the dialing of the current entry and
- go on to the next entry in the queue. If there is only one entry in the
- queue, that number is redialed.
- X.lp
- DEL) 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
- redial delay time (the pause between dialing attempts). You will be
- prompted to save the changes to disk.
- X.lp
- X.CS
- X.(b L
- X.TS
- box center;
- l.
- 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
- NOTE:\ \ While the DEL and E options are being processed, the dialing is
- temporarily 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
- Pcomm doesn't have a built-in script language, instead it uses Unix
- shell scripts (Bourne shell, C shell, Korn shell, etc) to perform the
- necessary \*(lqchat\*(rq sequences to log a user on to a remote system.
- X.lp
- Since shell scripts are run \*(lqoutside\*(rq of Pcomm, the
- X\*(lqpcomm_cmd\*(rq program is used to transmit command sequences to
- Pcomm. For example, a script can contain a line such as \*(lqpcomm_cmd
- data_log on\*(rq to turn on the data logging feature.
- X.lp
- Shell scripts specified in the dialing directory are run \fBafter\fP the
- connection to the remote system, while script specified on the command
- line (with the \-a option) are run \fBbefore\fP the connection is made.
- You can make a shell script work under both situations by using the
- X\*(lqpcomm_cmd is connected\*(rq command. See the third example in
- section 8.4.
- X.lp
- You may hit the <ESC> key at any time to abort an auto-login script
- before it has completed.
- X.lp
- X.ft B
- WARNING:\ \ Any file that has a \*(lqclear text\*(rq (un-encrypted)
- version of your password is a significant security threat. You should
- remove the read permission to all others.
- X.ft
- X.lp
- In order to assist in the creation of auto-login scripts, the following
- external programs have been provided.
- X.sh 2 "Pcomm_cmd command"
- X.(x
- X \*($n Pcomm_cmd command
- X.)x
- X.lp
- Pcomm_cmd is an external Pcomm support program. It is used from inside
- shell scripts to access Pcomm commands, such as \*(lqpcomm_cmd send
- xmodem junk\*(rq for sending the file \*(lqjunk\*(rq to the remote using
- the xmodem file transfer protocol.
- X.lp
- The following command line options are supported.
- X.in +1.0i
- X.sp
- X.ti -0.5i
- SET BAUD [ 300 | 1200 | 2400 | 4800 | 9600 | 19200 | 38400 ]
- X.br
- Set the baud rate for the current connection. This feature is for use
- with the DIAL MANUAL command, since the baud rate information in the
- dialing directory entries overrides this value.
- X.sp
- X.ti -0.5i
- SET PARITY [ EVEN | ODD | NONE ]
- X.br
- Set the parity for the current connection. For use with the DIAL MANUAL
- command.
- X.sp
- X.ti -0.5i
- SET DATA_BITS [ 7 | 8 ]
- X.br
- The number of data bits (word length) used for the current connection.
- XFor use with the DIAL MANUAL command.
- X.sp
- X.ti -0.5i
- SET STOP_BITS [ 1 | 2 ]
- X.br
- The number of stop bits for the current connection. For use with the
- DIAL MANUAL command.
- X.sp
- X.ti -0.5i
- SET DUPLEX [ HALF | FULL ]
- X.br
- Set the duplex mode (local echo). The HALF option is used if the remote
- system does not echo characters as they are typed.
- X.sp
- X.ti -0.5i
- SET AUX filename
- X.br
- Use the argument as the auxiliary file associated with the current
- connection. Since chaining of scripts is not supported, this feature
- would only be used to set the TTY or modem.
- X.sp
- X.ti -0.5i
- SET HOT_KEY [1-256]
- X.br
- Change the decimal value of the \*(lqhot key\*(rq to this value.
- X.sp
- X.ti -0.5i
- SET ASCII_HOT string
- X.br
- Change the ASCII representation of the hot key to the given argument. The
- length of the string must be no more than 4 characters wide.
- X.sp
- X.ti -0.5i
- SET FLOW_CTRL [ XON/XOFF | NONE ]
- X.br
- Set the flow control between the local and remote systems to either XON/XOFF
- or NONE.
- X.sp
- X.ti -0.5i
- SET CR_IN [ CR | CR/LF ]
- X.br
- Translate in-comming carriage returns carriage return followed by a line
- feed, or pass the carriage return through unchanged.
- X.sp
- X.ti -0.5i
- SET CR_OUT [ CR | CR/LF ]
- X.br
- Translate out-going carriage returns to CR or CR/LF.
- X.sp
- X.ti -0.5i
- SET LOGFILE filename
- X.br
- Change the name of the default log file. For use with the DATA_LOG command.
- X.sp
- X.ti -0.5i
- SET DUMPFILE filename
- X.br
- Change the name of the screen dump file. For use with the SCREEN_DUMP
- command.
- X.sp
- X.ti -0.5i
- SET STRIP [ YES | NO ]
- X.br
- Should the in-comming data be stripped to 7 bits?
- X.sp
- X.ti -0.5i
- SET LOCAL_ECHO [ YES | NO ]
- X.br
- Should data be shown on the screen during ASCII uploads?
- X.sp
- X.ti -0.5i
- SET EXPAND [ YES | NO ]
- X.br
- Should blank lines be \*(lqexpanded\*(rq to a line with a single space?
- XFor use only during ASCII uploads.
- X.sp
- X.ti -0.5i
- SET CR_DELAY [ 0 | 100 | 150 ]
- X.br
- Set the delay for the carriage returns for ASCII uploads.
- X.sp
- X.ti -0.5i
- SET PACE [ YES | NO ]
- X.br
- Should the entire upload be artificially slowed down? For use during ASCII
- uploads.
- X.sp
- X.ti -0.5i
- SET CR_UP [ NONE | ADD_LF | STRIP ]
- X.br
- Controls the translation of carriage returns during ASCII uploads.
- X.sp
- X.ti -0.5i
- SET LF_UP [ NONE | ADD_CR | STRIP ]
- X.br
- Controls the translation of line feeds during ASCII uploads.
- X.sp
- X.ti -0.5i
- SET TIMER [5-150]
- X.br
- Controls the timer (in seconds) that detects the end of an ASCII download.
- X.sp
- X.ti -0.5i
- SET CR_DN [ NONE | ADD_LF | STRIP ]
- X.br
- Controls the translation of carriage returns during ASCII downloads.
- X.sp
- X.ti -0.5i
- SET LF_DN [ NONE | ADD_CR | STRIP ]
- X.br
- Controls the translation of line feeds during ASCII downloads.
- X.sp
- X.ti -0.5i
- QUERY TTY_NAME
- X.br
- Returns the name of the current TTY in use or NONE.
- X.sp
- X.ti -0.5i
- QUERY MODEM_NAME
- X.br
- Returns the name of the current modem in use or NONE.
- X.sp
- X.ti -0.5i
- IF CONNECTED
- X.br
- Returns a 1 if Pcomm is currently connected to a remote, otherwise a 0.
- X.sp
- X.ti -0.5i
- IF LOG_STATUS
- X.br
- Returns a 1 if the data logging feature is turned on, otherwise 0.
- X.sp
- X.ti -0.5i
- IF PRINTER_STATUS
- X.br
- Returns a 1 if the printer is turned on, otherwise 0.
- X.sp
- X.ti -0.5i
- DIAL [ MANUAL phone_number ] entry_number
- X.br
- Dial an entry from the dialing directory. The MANUAL option is used to
- optionally dial a phone number without the use of the dialing directory.
- DIAL returns after 1 attempt. A return code of 1 means a connection
- was made.
- X.sp
- X.ti -0.5i
- REDIAL entry_number
- X.br
- Similar to the DIAL command, but 10 attempts are made.
- X.sp
- X.ti -0.5i
- XEXIT
- X.br
- Hang up the phone and exit from Pcomm.
- X.sp
- X.ti -0.5i
- CLEAR_SCREEN
- X.br
- Clear the screen.
- X.sp
- X.ti -0.5i
- CHG_DIR directory
- X.br
- Change the current working directory to the given directory.
- X.sp
- X.ti -0.5i
- HANG_UP
- X.br
- Hang up the phone, but remain in Pcomm.
- X.sp
- X.ti -0.5i
- PRINTER [ ON | OFF ]
- X.br
- Control the logging of data to the printer.
- X.sp
- X.ti -0.5i
- MODEM_BREAK
- X.br
- Send a modem break to the remote system. This is typically used to
- tell the remote to switch to a different baud rate.
- X.sp
- X.ti -0.5i
- SEND protocol filename
- X.br
- Send a file to the remote. The valid protocols are XMODEM, XMODEM_1K,
- MODEM7, YMODEM, YMODEM_G, ASCII, EXT_1, EXT_2, and EXT_3.
- X.sp
- X.ti -0.5i
- RECEIVE protocol filename
- X.br
- Receive 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
- SCREEN_DUMP
- X.br
- Dump the current contents of the screen to the DUMPFILE. If the file
- already exists, the new contents are appended to the file.
- X.sp
- X.ti -0.5i
- DATA_LOG [ ON | OFF ]
- X.br
- Control logging of the terminal session to the LOGFILE. If the file
- already 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
- The waitfor command has the following syntax:
- X.sp
- X.in +0.5i
- waitfor \-n string
- X.in
- X.lp
- where \*(lqn\*(rq is the number of seconds to wait and \*(lqstring\*(rq
- is the string to wait for.
- X.lp
- Waitfor returns a 0 if the string was found, a 1 if it didn't find the
- string within the allotted time, and a \-1 if there was an error.
- Waitfor returns immediately if the string is found.
- X.lp
- The waitfor command would typically be used in a script to indicate that
- the desired prompt has appeared. For example:
- X.sp
- X.in +0.5i
- X.CS
- X.(b L
- waitfor \-5 "ogin:"
- if [ "$?" \-eq 0 ]
- then
- X.in +0.5i
- echo "egray"
- X.in
- fi
- X.)b
- X.Cs
- X.in
- X.lp
- would wait up to 5 seconds for the string \*(lqogin:\*(rq. If the
- return code is 0 (the strings did appear), send the string
- X\*(lqegray\*(rq (my user ID).
- X.lp
- X.ft I
- NOTE:\ \ Upper and lower case letters are considered different. If you
- are not sure if the prompt is \*(lqLogin:\*(rq or \*(lqlogin:\*(rq, then
- skip 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
- The matches command has the following syntax:
- X.in +0.5i
- X.sp
- matches string1 string2
- X.in
- X.lp
- Matches returns a 0 if string2 is contained in string1, and returns a 1
- if it does not. Unlike waitfor, the matches command does not read the
- TTY port.
- X.lp
- The matches command could be used to test string values such as:
- X.sp
- X.in +0.5i
- X.CS
- X.(b L
- read junk
- matches $junk "login failed"
- if [ "$?" \-eq 0 ]
- then
- X.in +0.5i
- exit
- X.in
- fi
- X.)b
- X.Cs
- X.in
- X.sh 2 "Examples"
- X.(x
- X \*($n Examples
- X.)x
- X.lp
- It is not my intention to teach the reader the fundamentals of Unix
- shell programming. There are several good books on the subject
- available in stores.
- X.lp
- Remember to add execute permission to the file and remove the read
- permission to all others.
- X.lp
- X.(b L
- The simplest auto-login script may contain the following:
- X.sp
- X.in +0.5i
- X.CS
- X# send a <CR>
- echo ""
- X# wait 5 seconds for the login prompt
- waitfor \-5 ogin:
- X# send my user ID
- echo "egray"
- X# wait 5 seconds for the password prompt
- waitfor \-5 assword:
- X# send my password
- echo "abcdefg"
- X# return to Pcomm
- exit 0
- X.Cs
- X.)b
- X.in
- X.lp
- X.(b L
- A more complex script is required if the user must send a modem break to
- synchronize the baud rate of the remote. For example:
- X.sp
- X.in +0.5i
- X.CS
- echo ""
- try=0
- X# loop until done
- while true
- do
- X.in +0.5i
- X# wait 5 seconds for the login prompt
- waitfor \-5 ogin:
- X# test the exit code of the waitfor command
- if [ "$?" \-eq 0 ]
- then
- X.in +0.5i
- X# send my user ID and exit the loop
- echo "egray"
- break
- X.in
- fi
- X.sp
- X# increment the number of attempts
- try=\`expr $try + 1\`
- X# test to see if we should give up
- if [ "$try" \-eq 5 ]
- then
- X.in +0.5i
- exit 1
- X.in
- fi
- X.sp
- X# send a modem break and loop again
- pcomm_cmd modem_break
- echo ""
- X.in 0.5i
- done
- X# wait 5 seconds for the password prompt
- waitfor \-5 assword:
- X# test the return code from waitfor
- if [ "$?" \-eq 0 ]
- then
- X.in +0.5i
- X# send my password
- echo "abcdefg"
- X.in
- else
- X.in +0.5i
- exit 1
- X.in
- fi
- X# return to Pcomm
- exit 0
- X.Cs
- X.)b
- X.in 0
- X.lp
- X.(b L
- The following is an example of a shell script that will dial a system,
- log a user on, transfer a file called junk using xmodem, log out, and
- exit Pcomm.
- X.sp
- X.in +0.5i
- X.CS
- X# are we already connected?
- answer=`pcomm_cmd if connected`
- if [ "$answer" -eq 0 ]
- then
- X.in +0.5i
- X# dial entry number 23 in my dialing directory
- pcomm_cmd dial 23
- X.in -0.5i
- fi
- X# wait for the login prompt
- waitfor ogin:
- X# send my user id
- echo egray
- X# wait for the password prompt
- waitfor assword:
- X# send my password
- echo abcdefg
- X# wait for a Unix prompt
- waitfor $
- X# start up an xmodem file transfer
- echo sx junk
- X# wait for the sx command to say its ready
- waitfor now
- sleep 1
- X# do a file transfer
- pcomm_cmd receive xmodem junk
- X# wait for the prompt
- waitfor $
- X# log me out
- echo "^D"
- sleep 1
- X# exit pcomm
- pcomm_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
- Appendix A \- Typical Modem Configuration
- X.)x
- X.lp
- I can't begin to describe how to configure every modem to work with
- Pcomm. There are, however, several guidelines that will apply to
- virtually any modem.
- X.ba +0.5i
- X.lp
- X1) Pcomm doesn't care about the DCD (Data Carrier Detect) settings of
- the modem.
- X.lp
- X2) It would be nice (but not essential) if the loss of the DTR (Data
- Terminal Ready) caused the modem to hang up.
- X.lp
- X3) Pcomm doesn't care if commands are echoed back by the modem (it might
- save a few milliseconds if echoing was turned off).
- X.lp
- X4) Some sort of result codes are required. Numeric result codes are
- ok... but since they are displayed on the screen, word result codes
- will make more sense.
- X.lp
- X5) If the modem can return different result codes for each baud rate at
- which it answers, then by all means, use them. Match the odd-ball
- codes (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
- setup, is ignored.
- X.lp
- X7) Systems running older versions of uugetty (the bi-directional version
- of getty that comes with HDB uucp) may require extra commands in the
- initialization string to assure that uugetty switches to its dial out
- mode. Normally, \*(lqAT!~AT!~\*(rq causes enough dialogue to force
- uugetty to release the line.
- X.ba
- X.lp
- XFor example, a 2400 baud Hayes compatible modem might be configured with
- the following command:
- X.sp
- X.in +0.5i
- X.nf
- AT\ S7=60\ S11=70\ E0\ Q0\ V1\ X4\ &D2
- X.fi
- X.in +0.5i
- X.(b L
- X.TS
- l l.
- AT Hayes attention command
- S7=60 Wait 60 seconds for an answer
- S11=70 70 ms touch tone dialing
- XE0 Don't echo commands (not essential)
- Q0 Turn result codes on
- V1 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
- Appendix B \- AT&T Unix PC 7300/3b1 Dial Codes
- X.)x
- X.lp
- The dialing codes used by the OBM (On Board Modem) are not
- straight-forward. The modem setup, as included in the Unixpc.shar file,
- 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-----------------------------------------------------------------
- OPTION ==> _ Press <ESC> to return
- X.)c
- X.)b
- X.Cs
- X.lp
- The 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
- NOTE:\ \ Pcomm uses the modem name as a flag to determine which dialing
- method to use. The string \*(lqOBM\*(rq is a \*(lqreserved word\*(rq
- that 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
- or \*(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
- result codes, these fake fields are required.
- X.ba
- X.lp
- Additional OBM dialing codes from the phone(7) manual:
- X.br
- X.in +0.5i
- X.(b L
- X.TS
- l 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
- These codes can be inserted into the phone number string, for example:
- X.br
- X.in +0.5i
- X.(b L
- X.TS
- l 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
- NOTE:\ \ The dialing codes for the OBM are not subject to character
- synonym translations, therefore the \*(lq%\*(rq, \*(lq^\*(rq, and
- X\*(lq~\*(rq characters do NOT have to be preceded by the \*(lq\e\*(rq
- character 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
- Appendix C \- Using High Speed Modems
- X.)x
- X.ba
- X.lp
- The features and complexities of the newer high speed intelligent modems
- available today warrants a more detailed discussion.
- X.lp
- X1) Locked interface speed
- X.ba +0.5i
- X.lp
- Newer modems have the ability to maintain a locked interface speed
- with the computer without regard to the connected baud rate. For
- example, 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
- The \*(lqlocked speed\*(rq field of the TTY database was created to
- solve this problem. If this value is non-zero, Pcomm will only use this
- baud 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
- Users of newer modems may require a different \*(lqinit string\*(rq or
- X\*(lqdial string\*(rq depending on the target machine being called. For
- example, when trying to connect to older V.32 modems, the V.42 and V.42bis
- features may have to be disabled. In this case, the dial string would
- contain the command to disable the unwanted features.
- X.lp
- This problem is solved by creating additional modem entries in the modem
- database. For example, you could have an entry called \*(lqTELEBIT\*(rq
- for normal connections, one called \*(lqTELEBIT_V.32\*(rq for connecting
- to older V.32 modems, and another called \*(lqTELEBIT_PEP\*(rq for
- connections to other PEP modems.
- X.lp
- Pcomm uses the connect strings to determine if the modem can handle the
- requested baud rate. If there are multiple modems that satisfy that baud
- rate, then the first modem entry is used. You can influence the choice of
- suitable modems by placing the name of the modem in the Auxiliary field of
- the dialing directory. In this way, you can have a default modem and a
- specific modem for each dialing directory that my require one.
- X.lp
- X.ft I
- NOTE:\ \ The default modem configuration (in a multiple setup situation)
- must appear first in the modem database.
- X.ft
- X.lp
- Your choices are virtually unlimited... you can have a separate modem
- setup to control modem features such as error control, compression,
- protocol spoofing, etc.
- X.ba
- X.lp
- X3) Telebit WorldBlazer settings
- X.ba +0.5i
- X.lp
- The following configuration is what I personally use for my Telebit
- WorldBlazer on bi-directional lines (ones with uugetty). Your mileage
- may vary.
- X.in +0.5i
- X.(b L
- X.TS
- l l.
- X~&F Restores factory settings
- L1 Low speaker volume
- Q2 Use result codes only when dialing out
- XX2 Use detailed result codes (connect speeds)
- X&C1 Set DCD to follow the carrier
- X&D3 Hard reset on loss of DTR
- S0=1 Answer on first ring
- S7=60 Wait at least 60 seconds for a carrier
- S51=6 Set interface speed to 38400 baud
- S58=2 Full duplex RTS/CTS flow control
- S59=15 Use result code extensions
- S61=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
- The following is the contents of the sample TTY database:
- X.br
- X.in +0.5i
- X.(b L
- X.TS
- l l c
- l l l.
- TTY name Modem name Locked 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
- Notice that the last three entries share the same TTY and are physically
- the same modem.
- X.ba
- X.lp
- X5) Sample modem database entry for TELEBIT
- X.ba +0.5i
- X.lp
- The third entry in the sample modem database is for the Telebit modem
- designated 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
- The 4th entry is for the Telebit modem designated for use with older V.32
- modems 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
- The 5th entry is for the Telebit modem designated for use with other
- Telebit 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
- Table of Contents
- X.)b
- X.sp 3
- X.\" Not all versions of {t,n}roff can handle a 2 column index
- X.2c
- X.nr xu 0.2i
- X.xp
- END_OF_FILE
- if test 69077 -ne `wc -c <'Doc.me'`; then
- echo shar: \"'Doc.me'\" unpacked with wrong size!
- fi
- # end of 'Doc.me'
- fi
- echo shar: End of archive 6 \(of 6\).
- cp /dev/null ark6isdone
- MISSING=""
- for I in 1 2 3 4 5 6 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have unpacked all 6 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
-