[comp.sources.unix] v14i099: Dial out and terminal emulator, Part01/06

rsalz@bbn.com (Rich Salz) (05/19/88)

Submitted-by: fthood!egray
Posting-number: Volume 14, Issue 99
Archive-name: pcomm/part01

Pcomm is a public domain telecommunication program for Unix designed to
operate similar to the popular MSDOS program, ProComm.  ProComm (TM) is
copyrighted by Datastorm Technologies Inc.

The program has a minor quirk which may be irritating to some...  In order
to get pop-up windows to work while communicating with another system, the
program has to keep a duplicate copy of what it thinks is on the screen.
This "virtual screen" is only used to repaint the background during the 
transition from the terminal mode to the command mode.  The problem is
that the virtual screen currently doesn't "understand" escape sequences.
For example, when the screen is repainted, instead of clearing the screen,
the string "^[[2J" will appear.  Since the virtual screen is ONLY USED in
the command mode, the quirk doesn't detract from the usefulness of the
program (in my humble opinion).  No bug reports on this, please... I'm
working on it!

Have fun...

Emmet P. Gray				US Army, HQ III Corps & Fort Hood
...!ihnp4!uiucuxc!fthood!egray		Attn: AFZF-DE-ENV
					Directorate of Engineering & Housing
					Environmental Management Office
					Fort Hood, TX 76544-5057

-----------------------------------------------------------------------------
#! /bin/sh
# This is a shell archive, meaning:
# 1. Remove everything above the #! /bin/sh line.
# 2. Save the resulting text in a file.
# 3. Execute the file with /bin/sh (not csh) to create:
#	Readme
#	Release.notes
#	Doc
#	Pcomm.1
#	Pcomm.dial_dir
#	Pcomm.modem
#	Pcomm.param
export PATH; PATH=/bin:/usr/bin:$PATH
echo shar: "extracting 'Readme'" '(7859 characters)'
if test -f 'Readme'
then
	echo shar: "will not over-write existing file 'Readme'"
else
sed 's/^X//' << \SHAR_EOF > 'Readme'
X
X				  Pcomm
X		      A Unix Telecommunication Program
X
XRequirements:
X
X	Pcomm will not run on terminals with a screen size of less than
X	80 columns by 24 lines or on terminals that lack cursor movement
X	capabilities.  For terminals without arrow keys, use the letter
X	"U" in place of "up arrow" and the letter "N" in place of 
X	"down arrow".
X
X	Running Pcomm from a dialup line at 1200 baud will be make the
X	windows incredibly slow.
X
XPortability:
X
X	This program was written with AT&T System V in mind.  It makes
X	use of System V specific routines such as those in termio(7).
X	There is currently no port to Berkeley or v7 Unix.
X
X	This program can make use of the newer curses(3) routines from
X	SVR2.  There is a compile-time definition OLDCURSES for compatibility
X	with older flavors of curses(3).  None of the functionality is
X	lost using older curses, only some of the whistles and bells.
X
X	Included in the distribution package is a shell script named
X	"Unixpc.shar" that contains the Makefile specific for the AT&T
X	Unix PC 7300.
X
X	Pcomm makes use of the bold, blinking and standout video attributes.
X	My concept of "standout" and "reverse" might be different than
X	yours (I like "standout" to be a brighter version of "reverse").
X	Check your terminfo database... 
X
X	Flavors of curses without the keypad() function won't be able to
X	recognize arrow keys on the terminal, so users will have to
X	substitute the letters described above for the arrow keys.
X
XThings to do:
X
X	There are many pre-processor definitions located in the source
X	code that alter the way pcomm works, or gives the location of other
X	files.  The following list shows the location and default settings
X	of these definitions:
X
X	LOG_CALLS	Should pcomm keep a log of all phone calls?  The
X			default in admin.c is no (#undef).  If defined,
X			the path to the log file is in LOGFILE.
X	
X	LIMIT_LD	Should access to long distance dialing be limited
X			to privileged users?  The default in admin.c is
X			no (#undef).  If defined, the group to check is in
X			GRPNAME.
X
X	LPRINT		This is the pretty line print program.  (This is not
X			the name of the device).  The default in d_print.c
X			is "/usr/bin/lprint".
X
X	MAX_PASS	The maximum number of dialing attempts before we
X			give up.  The default in di_win.c is 25.
X
X	DEFAULT		The directory containing the default support files.
X			It is not intended that users have write permission
X			on these files.  The default in init.c is
X			"/usr/local/lib/pcomm".
X		
X	LPR		The generic line printer program.  (This is not the
X			name of the device).  The default in input.c is
X			"/usr/bin/lpr".
X
X	LOCKDIR		The location of the UUCP lock files.  The default
X			in port.c is "/usr/spool/uucp".  (HoneyDanBer UUCP
X			normally uses /usr/spool/locks).
X
X	ASCII_PID	Should the pid (process ID) in the UUCP lock file
X			be ASCII encoded?  The default in port.c is no
X			(#undef). (HoneyDanBer UUCP normally uses ASCII pids).
X
X	NUM_DIR		The maximum slots in the dialing directory.  The
X			default in dial_dir.h is 100.
X
X	NUM_QUEUE	The maximum slots in the dialing queue.  The default
X			in dial_dir.h is 10.
X
X	NOPROMOTE	Should missing video attributes be promoted to
X			standout?  The default in misc.h is no (#undef).
X
X	NUM_TTY		The maximum number of ttys used for dialout.  The
X			default in modem.h is 10.
X
X	NUM_MODEM	The maximum number of different types of modems used
X			for dialout.  The default in modem.h is 10.
X
X	MAX_ERRORS 	The maximum number of errors for a single block
X			before we give up on a file transfer.  The default
X			in xmodem.h is 10.
X
X	The compile-time definition SGID is specific to my system, but
X	others might find it useful.  On my system, all programs that 
X	access the dialout modems, are set-group-id to "uucp".  (This is
X	because normal users don't have write permission to the devices,
X	the lock directory, or the phone.call logfile).  The use of
X	SGID will assure that the real group id is restored during shell
X	escapes, open()s, etc.  The access(2) routine is used to determine
X	read and write permissions prior to opening files.
X
X	The distribution package contains three sample support files named
X	"Pcomm.dial_dir", "Pcomm.modem", and "Pcomm.param".  These files
X	should be renamed to change the upper case "P" to a lower case
X	"p" and copied into the directory given in the DEFAULT definition
X	described above.
X
XDocumentation:
X
X	The reference documentation file, "Doc" is designed to run thru
X	the Unix "pr" command before being sent to the printer.  For example:
X
X	pr -h "          Pcomm Reference Manual              " | lpr
X
X	The file "Pcomm.1" is a nroff manual page suitable for copying
X	into /usr/man/man1.
X
XSetup:
X
X	Before pcomm can be used properly, the tty/modem database must be
X	configured to match your system.  The "pcomm.modem" file should
X	be edited by the "TTY Setup" and "Modem Setup" menus.
X
X	The shell archive "Unixpc.shar" contains the Pcomm.modem file
X	specific to the AT&T Unix PC 7300.  (Its codes are NOT intuitive)
X
XWhere similarities end:
X
X	When pcomm is first executed, it hasn't yet selected a communications
X	port to use, so characters typed at the blank screen are ignored.
X	To get a port without pcomm doing the dialing, select an empty
X	entry in the dialing directory, or use the manual dial option with
X	the phone number set to a single space character.  The second field
X	in the status line will show what tty port is currently in use.
X
X	Since all printing goes through the Unix print spooler, the printer
X	logging feature will not output characters as they appear on the
X	screen.  Printing will actually start when the print logging is
X	toggled off (and the complete print job is sent to the spool).
X
X	Pcomm doesn't emulate any terminals... Whatever terminal you're on
X	is what the remote system sees.
X
X	Pcomm doesn't have a script language or command interpreter.  The
X	index field of the dialing directory is used instead to act as a
X	shortcut into the dialing directory from the "-f" command line
X	option.  The index field is also used to specify a particular tty
X	to be used (as opposed to searching the list of ttys for the first
X	free one).  This feature must be used on direct connections with
X	other machines.  For example, if tty12 is a hard-wired port to
X	"System A", then the dialing directory entry for "System A" would
X	have "tty12" in the index field.
X
XKnown limitations:
X
X	The keyboard macro feature is not implemented at this time.
X
X	The true screen contents are lost when the "hot key" is pressed.
X	Pcomm attempts to compensate (rather poorly) by repainting a
X	virtual screen of what it thinks the true screen should look like.
X	Escape sequences in the virtual screen image will be ignored when
X	the background is repainted.  For example, if you're on a vt100 
X	and you receive a ^[[2J to clear the screen, the screen *will* be
X	cleared... but when the screen is repainted, it will contain the
X	characters ^[, [, 2, J (instead of performing the function).
X
X	The disp_tty() routine in s_tty.c currently does not support a
X	NUM_TTY definition of greater than 10.
X
X	For some strange reason, the first keystroke is "lost" after a
X	file transfer is complete or after starting data logging.
X
XFuture directions:
X
X	The virtual screen routines need a lot of work.  The most commonly
X	used escape sequences (known to terminfo) will be processed.
X
X 	I plan to have an option at compile time to have the virtual screen
X	buffer held on disk (v7) or in shared memory (SVR2).
X	
X	The input routine is designed so it could be a standalone program
X	that gets called from pcomm.  I plan to have an option at compile
X	time to have input() compiled into pcomm or as a separate program.
X
X
XEmmet P. Gray				US Army, HQ III Corps & Fort Hood
X...!ihnp4!uiucuxc!fthood!egray		Attn: AFZF-DE-ENV
X					Directorate of Engineering & Housing
X					Environmental Management Office
X					Fort Hood, TX 76544-5057
SHAR_EOF
if test 7859 -ne "`wc -c < 'Readme'`"
then
	echo shar: "error transmitting 'Readme'" '(should have been 7859 characters)'
fi
fi
echo shar: "extracting 'Release.notes'" '(853 characters)'
if test -f 'Release.notes'
then
	echo shar: "will not over-write existing file 'Release.notes'"
else
sed 's/^X//' << \SHAR_EOF > 'Release.notes'
X
X			     Pcomm  version 1.0
X
XThings that have changed:
X
X	I've added a bunch of parameters to the pcomm.param and pcomm.modem
X	files, so the files used with the beta release won't work with the
X	1.0 release.
X
X	Pcomm will attempt to determine if the modem has synchronized at
X	a baud rate different that what is expected, and make changes to
X	the line settings as appropriate.
X
X	The quit and interrupt signals are now ignored.
X	
X	All of the file transfer protocols are now functional.
X
X	The directory search order used to find the support files has been
X	changed slightly
X
XThings left to do:
X
X	Work on the virtual screen routines.
X
XHave fun...
X
XEmmet P. Gray				US Army, HQ III Corps & Fort Hood
X...!ihnp4!uiucuxc!fthood!egray		Attn: AFZF-DE-ENV
X					Directorate of Engineering & Housing
X					Environmental Management Office
X					Fort Hood, TX 76544-5057
SHAR_EOF
if test 853 -ne "`wc -c < 'Release.notes'`"
then
	echo shar: "error transmitting 'Release.notes'" '(should have been 853 characters)'
fi
fi
echo shar: "extracting 'Doc'" '(32879 characters)'
if test -f 'Doc'
then
	echo shar: "will not over-write existing file 'Doc'"
else
sed 's/^X//' << \SHAR_EOF > 'Doc'
X
X
X
X
X
X
X
X
X
X
X		  PPPPPP    CCCC    OOOO    MM   MM   MM   MM
X		  P    P   C       O    O   M M M M   M M M M
X		  PPPPPP   C       O    O   M  M  M   M  M  M
X		  P	   C       O    O   M     M   M     M
X		  P	    CCCC    OOOO    M     M   M     M
X
X
X
X
X
X
X
X
X			    Pcomm Reference Manual
X
X				 version 1.0
X
X
X
X
X				  written by
X
X				 Emmet P. Gray
X			...!ihnp4!uiucuxc!fthood!egray
X
X
X
X
X
X
X	Pcomm is a public domain telecommunications program for Unix that
X	is designed to operate similar to the MSDOS program, ProComm.
X	ProComm (TM) is copyrighted by Datastorm Technologies, Inc.  This
X	is a completely new program and contains no ProComm source code.
X	This is not a Datastorm product.
X
X
X			      Table of Contents
X
X
X		   1. INTRODUCTION .................... 3
X		   1.1 Requirements ................... 3
X		   1.2 Support files .................. 3
X
X		   2. RUNNING PCOMM ................... 4
X		   2.1 Hot key ........................ 4
X		   2.2 Status line .................... 4
X		   2.3 Help screen .................... 5
X		   2.4 Exit pcomm ..................... 5
X
X		   3. SETUP SCREENS ................... 6
X		   3.1 Prompting ...................... 6
X		   3.2 TTY setup ...................... 7
X		   3.3 Modem setup .................... 8
X		   3.4 Terminal setup ................. 9
X		   3.5 General setup .................. 10
X		   3.6 ASCII transfer setup ........... 11
X
X		   4. MAJOR FUNCTIONS ................. 13
X		   4.1 Dialing directory .............. 13
X		   4.2 Redial ......................... 15
X		   4.3 Keyboard macros ................ 15
X		   4.4 Line settings .................. 15
X		   4.5 Exit pcomm ..................... 16
X		   4.6 Unix gateway ................... 16
X
X		   5. UTILITY FUNCTIONS ............... 17
X		   5.1 Program information ............ 17
X		   5.2 Setup screen ................... 17
X		   5.3 Change directory ............... 17
X		   5.4 Clear screen ................... 17
X		   5.5 Toggle duplex .................. 17
X		   5.6 Hangup the phone ............... 17
X		   5.7 Printer logging ................ 18
X		   5.8 Toggle CR - CR/LF .............. 18
X		   5.9 Break .......................... 18
X
X		   6. FILE FUNCTIONS .................. 19
X		   6.1 Send files ..................... 19
X		   6.2 Receive files .................. 20
X		   6.3 Directory ...................... 20
X		   6.4 Screen dump .................... 21
X		   6.5 Start data logging ............. 21
X		   6.6 Toggle logging ................. 21
X
X		   7. DIALING WINDOW .................. 22
X
X1. INTRODUCTION
X
X	Pcomm is a public domain, menu driven, telecommunication program
X	designed to provide the same "ease of use" as similar programs
X	available in MSDOS.  Some of its features are:
X
X		o+ Large dialing directory
X		o+ Automatic redial feature
X		o+ Supports several file transfer protocols
X		o+ Data logging (log of the terminal session)
X		o+ Printer logging
X		o+ Screen dump
X		o+ User customization
X
X	Pcomm does not emulate any particular terminal.  Whatever terminal
X	you're on, is what the remote system "sees".
X
X1.1 Requirements
X
X	Pcomm will not run on terminals with a screen size of less than
X	80 columns by 24 lines or on terminals that lack cursor movement
X	capabilities.  For terminals without arrow keys, use the letter "U"
X	in place of "up arrow" and the letter "N" in place of "down arrow".
X
X1.2 Support files
X
X	Pcomm uses three support files, namely:
X
X		pcomm.dial_dir	the dialing directory
X		pcomm.modem	the modem/tty database
X		pcomm.param	the start-up default parameters
X
X	There is a default directory (typically "/usr/local/lib/pcomm")
X	where the "standard" support files live.  Since the average user 
X	would not have write permission on these files, it's assumed that
X	you'll copy these standard files to your own directory and edit
X	them to suit your needs.
X
X	Pcomm can use the environmental variable "PCOMM" to search for
X	these "private" support files.  If used, the variable must contain
X	the path to the directory containing the files.
X
X	The following directories are searched to find the support files:
X
X		o+ directory given with the "-d" option
X		o+ directory in the PCOMM environmental variable
X		o+ the current working directory
X		o+ the global default directory
X
X2. RUNNING PCOMM
X
X	Pcomm has the following command line syntax.
X
X		pcomm [-d directory] [-f index]
X
X	The "-d" option allows you to specify an additional path to be used
X	when searching for the pcomm support files.
X
X	The "-f" option is used to specify automatic dialing of an entry in
X	the dialing directory.  The "index" field in the dialing directory
X	(described later) is checked against the string given on the command
X	line.  If a match is found, that entry is automatically dialed.
X
X2.1 Hot key
X
X	Pcomm uses a "hot key" to precede each command.  (The value of the
X	hot key is a user tunable parameter, but for the purpose of this
X	document we'll assume the hot key is defined as control-A).
X
X	The hot key is used to put pcomm in the command mode.  For example,
X	to get the help screen, you'd type control-A (to get to the command
X	mode) then the number 0 (to display the help screen).  When a command
X	is completed, pcomm returns to the terminal mode.
X
X	NOTE:  While in the command mode, the communications with the remote
X	system is temporarily suspended.
X
X2.2 Status line
X
X	Whenever pcomm is in the command mode (or is not currently connected
X	to a remote) a status line is displayed at the bottom of the screen.
X	A typical status line might look like this:
X
X+-----------------------------------------------------------------------------+
X|  ^A-0 HELP   | No TTY | FDX |  1200 E71 | LOG OFF | PTR OFF | CR    | CR    |
X+-----------------------------------------------------------------------------+
X
X	The eight fields of the status line are:
X
X		o+ help screen command (or a temporary message)
X		o+ name of the tty device in use
X		o+ duplex mode (FDX = full duplex, HDX = half duplex)
X		o+ current line settings
X		o+ status of data logging option
X		o+ status of printer logging option
X		o+ incoming CR translation
X		o+ outgoing CR translation
X
X
X2.3 Help screen
X
X	The help screen gives a brief review of all the available commands.
X	To access the help screen type ^A and '0' (zero).  The typical help
X	screen would look like this:
X
X+-----------------------------------------------------------------------------+
X|			     P C O M M     H E L P			      |
X|-----------------------------------------------------------------------------|
X|									      |
X|       Major Functions        Utility Functions	 File Functions       |
X|									      |
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-dn |
X| Keyboard Macros ...  ^A-M  Change Directory .  ^A-B  Directory .....  ^A-F  |
X| Line Settings .....  ^A-P  Clear Screen .....  ^A-C  Screen Dump ...  ^A-G  |
X| Exit Pcomm ........  ^A-X  Toggle Duplex ....  ^A-E  Start Data Log.  ^A-1  |
X| Unix Gateway ......  ^A-4  Hangup Phone .....  ^A-H  Toggle Log ....  ^A-2  |
X|			     Printer On/Off ...  ^A-L			      |
X|			     Toggle CR/CR-LF ..  ^A-3			      |
X|			     Break Key ........  ^A-7			      |
X|									      |
X+-------------------------- Press any key to continue ------------------------+
X
X2.4 Exit pcomm
X
X	To exit pcomm, you'd type ^A and 'x' to access the exit window.
X
X	+-- Exit -----------------------+
X	|				|
X	|   Exit to Unix? (y/n): _	|
X	|				|
X	+-------------------------------+
X
X	To exit, you'd press the letter 'y' (carriage return not required).
X
X3. SETUP SCREENS
X
X	Pcomm allows you to change many of the default parameters.  The setup
X	screen is accessed by typing ^A and 's'.  The following screen is
X	typical and shows the sub-menu choices:
X
X	----------------------- Setup Menu ----------------------------
X
X				1) TTY Setup
X				2) Modem Setup
X				3) Terminal Setup
X				4) General Setup
X				5) ASCII Transfer Setup
X				S) Save setup to disk
X
X	---------------------------------------------------------------
X	OPTION ==> _				      Press ESC to exit
X	
X	To select one of the sub-menu choices, you'd type the number (or
X	letter) at the "OPTION ==>" prompt.  To exit from a sub-menu and
X	return to this setup menu screen, you'd press the escape key.
X
X	Changes made affect the current pcomm session only.  To make the
X	changes become the default, you'd select the 's' option.
X
X3.1 Prompting
X
X	There are several different types of prompts used in the setup
X	screens.  The prompts use the bottom two lines on the display for
X	user input and to give more information on what is being asked.
X	Pcomm will beep at any illegal input.  The escape key 'ESC' will
X	abort any prompt.  The prompt types are:
X
X		o+ Character prompt.  Asks you to input a single character.
X
X		o+ String prompt.  Asks you to input a word or group of
X		characters.
X
X		o+ Numeric prompt.  Asks you for a number.
X
X		o+ Menu prompt.  Shows a selection and allows you to to
X		choose the current selection by pressing the carriage return
X		or change the selection by pressing the space bar.
X
X3.2 TTY setup
X
X	The TTY setup screen contains the list of devices (ports) that pcomm
X	is allowed to use, and what is attached to each port.  A typical TTY
X	setup screen might look like this:
X
X	------------------------- TTY Setup ---------------------------
X
X		TTY name	Modem name	Maximum baud
X
X		1) tty10	HAYES		1200
X		2) tty11	HAYES		2400
X		3) tty12	DIRECT		9600
X		4)				0
X		5)				0
X		6)				0
X		7)				0
X		8)				0
X		9)				0
X		10)			        0
X
X		11) Add a TTY entry
X		12) Delete a TTY entry
X
X	---------------------------------------------------------------
X	OPTION ==> _				    Press ESC to return
X
X	You may edit an entry by typing the entry number at the prompt.
X	To add an entry, you'd type '11' at the prompt, etc.
X
X	The tty setup fields are:
X
X		1) The tty name.  This is the name of the serial port that
X		pcomm will be allowed to use.  Notice that the path component
X		of the name, "/dev/" is not used.
X
X		2) The modem name.  This a keyword that is used later to link
X		the modem database with the tty database.  The name could be
X		any combination of letters or numbers (both upper and lower
X		case).
X
X	NOTE:  All hard-wired ports (ports without modems attached)
X	*must* use the word "DIRECT" for the modem name.
X
X		3) The maximum baud rate is highest rating of the modem (or
X		the connected baud rate of hard-wired ports).  The baud rate
X		is selected from a "menu prompt".
X
X3.3 Modem setup
X
X	The modem setup contains the commands to make the modem dial, hangup
X	the phone, etc.  A typical modem setup screen might look like this:
X
X	-------------------------- Modem Setup --------------------------
X
X		1) Modem name ............. HAYES
X
X		2) Modem init string ...... ATS7=45S11=70!
X		3) Dialing command ........ ATDT
X		4) Dialing cmd suffix ..... !
X		5) Hangup string .......... ~~+++~~ATH0!
X		6) 300 baud connect ....... CONNECT!
X		7) 1200 baud connect ...... CONNECT 1200
X		8) 2400 baud connect ...... CONNECT 2400
X		9) 4800 baud connect ......
X		10) 9600 baud connect .....
X		11) 19200 baud connect ....
X		12) No connect string 1 ... BUSY
X		13) No connect string 2 ... VOICE
X		14) No connect string 3 ... NO CARRIER
X		15) No connect string 4 ...
X
X	---------------------------------------------------------------
X	OPTION ==> _				    Press ESC to return
X
X	The fields of the modem setup are:
X
X		1) Modem name.  This is the keyword that links the modem
X		database with the tty database.  A menu prompt is used to
X		select the modem name (and the remaining parameters that go
X		with it).
X
X		2) Modem initialization string.  This is sent to the modem
X		whenever the port is selected.  Consult your modem manual for
X		the codes to be used.  Notice the use of the "!" character,
X		this is the "character synonym" for the carriage return.
X
X	NOTE: See section 3.5 for the complete list of character synonyms.
X
X		3) Dialing command.  The first part of the command to make
X		the modem dial.  It is assumed that the phone number will
X		immediately follow.
X
X		4) Dialing command suffix.  The last part of the command to
X		make the modem dial.  Typically this would be the carriage
X		return "character synonym".
X
X		5) Hangup string.  The command to make the modem hangup the
X		phone.  The character synonym for a 1 second pause is the
X		tilde "~" character.
X
X		6-11) Connect strings.  The return message when the modem is
X		connected to the remote.  If different messages are returned
X		depending on which baud rate is selected, they should be
X		specified.
X
X	NOTE: If two connect strings are similar, (one is contained entirely
X	in another) then it is possible that the return code from the modem
X	will not match the correct connect string.  To prevent this from
X	happening, use the command synonym for the carriage return to
X	terminate the shorter connect string.
X
X		12-15) No connect strings.  The messages returned by the
X		modem when no connection is made.
X
X3.4 Terminal setup
X
X	The terminal setup allows you to define the hot key and the mapping
X	of the end-of-line characters.  A typical terminal setup menu would
X	look like this:
X
X	---------------------- Terminal Setup --------------------------
X
X			1) Hot key ................ 1
X			2) ASCII version of hot ... ^A
X
X			3) Duplex ................. FULL
X			4) Flow control ........... XON/XOFF
X			5) CR translation (in) .... CR
X			6) CR translation (out) ... CR
X
X	---------------------------------------------------------------
X	OPTION ==> _				    Press ESC to return
X
X	The fields in the terminal setup are:
X
X		1) Hot key.  This is the decimal code for the user definable
X		hot key.  Consult an ASCII/decimal conversion chart for the
X		decimal values of other characters.
X
X		2) ASCII version of hot key.  This is the printable version
X		of the hot key used by pcomm in the help screen and status
X		line.
X
X		3) Duplex.  A menu prompt is shown to select between FULL
X		duplex and HALF duplex.  In the half duplex mode, characters
X		sent to the remote system are also sent to the the screen.
X		(The duplex mode can also be change "on the fly" by the
X		^A-E command.)
X
X	NOTE: Due to a technical limitation in pcomm, data logging and
X	print logging will not work correctly in the half duplex mode.
X
X		4) Flow control.  A menu prompt is shown to select between
X		XON/XOFF flow control and NONE.  The flow control selected
X		here is only used during the terminal session, not during
X		file transfers.
X
X		5-6) CR translations.  The end-of-line characters for both
X		incoming and outgoing carriage returns can be altered to suit
X		the remote system's needs.  A menu prompt provides the
X		following choices:
X	
X			o+ CR (no translation)
X			o+ CR/NL translate CR to CR/NL
X
X		The incoming CR translation can also be changed "on the fly"
X		with the ^A-3 command.
X
X3.5 General setup
X
X	The general setup allows you to define the character synonyms and
X	the default files used by the screen dump and other features.  A
X	typical general setup screen might look like this:
X
X	------------------------ General Setup -----------------------
X
X			1) Default log file ....... pcomm.log
X			2) Screen dump file ....... pcomm.dump
X
X			3) Strip high bit  ........ YES
X
X			4) Pause character ........ ~
X			5) CR character ........... !
X			6) CTRL character ......... ^
X			7) ESC character .......... |
X
X			8) Aborted downloads ...... KEEP
X
X			9) Connect delay time ..... 35
X			10) Pause between redials . 5
X
X	---------------------------------------------------------------
X	OPTION ==> _				    Press ESC to return
X
X	The general setup fields are:
X
X		1) Default log file.  The file name to be used as the default
X		when the data logging is actived (^A-1).  You can override
X		this default at run time.
X
X		2) Screen dump file.  The file name to be used for the screen
X		dump command (^A-G).
X
X		3) Strip high bit.  Should pcomm strip the eighth bit on
X		incoming and outgoing characters?  A menu prompts allows you
X		to select YES or NO.  This feature is not used during file
X		transfers.
X
X		4-7) Character synonyms.  These are symbols that pcomm uses
X		to translate special characters to the their real values
X		prior to sending them to the modem.  Synonyms are useful for
X		terminals and editors that balk at special characters.
X
X		8) Aborted downloads.  When a download aborts (fails), should
X		the partially completed file be kept?  The menu prompt allows
X		"KEEP" or "DELETE".
X
X		9) Connect delay time.  The number of seconds pcomm will wait
X		for the modem to return a status code.
X
X		10) Pause between retries.  The number of seconds to wait
X		before pcomm tries to call the number again.
X
X3.6 ASCII transfer setup
X
X	This setup screen allows you to select options to be used for ASCII
X	uploads and download.  A typical ASCII transfer setup would look
X	like this:
X
X	---------------------- ASCII Transfer Setup ---------------------
X
X				ASCII UPLOAD
X
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 ......... NONE
X
X				ASCII DOWNLOAD
X
X			7) Transfer timeout ....... 5
X			8) CR translation ......... STRIP
X			9) LF translation ......... NONE
X
X	---------------------------------------------------------------
X	OPTION ==> _				    Press ESC to return
X
X	The fields are:
X
X		1) Echo locally.  This is similar to the duplex option in
X		that it copies outgoing characters to the screen.  The options
X		are YES and NO.
X
X		2) Expand blank lines.  Should a blank line (NL alone) be
X		expanded to a space and NL?  Some BBS systems use a blank
X		line to signal the end of a ASCII upload.  The options are
X		YES and NO.
X
X		3) CR delay.  The delay in milliseconds to be used when
X		sending a CR.  The menu prompt limits the choice to 0, 100,
X		or 150.
X
X		4) Pace output.  Should each character sent be delayed?  Very
X		old BBS systems may require this.  The choice is YES or NO.
X
X		5) CR translation.  The menu prompt provides the following
X		choices for upload translations:
X
X			o+ NONE (no translation)
X			o+ ADD NL translate CR to CR/NL.
X			o+ STRIP remove the CR character
X
X		6) LF translation. Same as above except the choices are:
X		
X			o+ NONE (no translation)
X			o+ ADD CR translate NL to CR/NL.
X			o+ STRIP remove the NL character
X
X		7) Transfer timeout.  The number of seconds to be used to
X		determine the end of an ASCII download.  You can halt the
X		transfer before the timer goes off by hitting the ESC key.
X
X		8-9) Same as 5) and 6) above, except for downloading.
X
X4. MAJOR FUNCTIONS
X
X	When pcomm is invoked without the "-f" command line option, you are
X	placed in the terminal mode with a blank screen and a status line.
X	However, since pcomm hasn't yet selected a serial port to use,
X	characters typed at the blank screen are ignored.
X
X	Normally the first command you'd use is ^A-D to bring up the dialing
X	directory menu.
X
X4.1 Dialing directory
X
X	To dial another system, you'd type ^A-D to access the dialing
X	directory menu, then enter the entry number at the prompt.
X
X	The entry number could be preceded by a special long distance dialing
X	code such as "#5" in lieu of "5" alone.  Long distance codes could
X	contain access numbers such as those that MCI and Sprint require.
X
X	A typical dialing directory would look like this:
X
X+----------------------------------------------------------------------------+
X|			D I A L I N G	D I R E C T O R Y		     |
X|----------------------------------------------------------------------------|
X|	  Name		     Number	   Baud P D S Dpx  Index/tty         |
X|  1- Abbey Road	1 (512) 590-6036   2400-N-8-1  F		     |
X|  2- Tel-Med-Com		526-8686   1200-E-7-1  F		     |
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  crest		     |
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)			   9600-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|									     |
X|   ==> _	R Revise	M Manual Dialing	Entry to Dial	     |
X|		P LD Codes	D Delete Entry		<cr> Scroll Down     |
X|		up/dn Page	L Print Entries		ESC Exit	     |
X|									     |
X|   LD Codes Active: @ #						     |
X|									     |
X+----------------------------------------------------------------------------+
X
X	The fields of the dialing directory are:
X
X		o+ Name.  The name of the remote system.
X
X		o+ Number.  The telephone number to the remote system.
X
X	NOTE: The "(", ")", "-", and space character are for just for looks,
X	they don't get sent to the modem.
X
X		o+ Line settings.  The communications settings to be used
X		when dialing that entry.  The range of values are:
X
X			Baud	Parity	   Data bits  Stop bits
X
X			300	N - none	7	1
X			1200	E - even	8	2
X			2400	O - odd
X			4800
X			9600
X			19200
X
X		o+ Duplex.  The duplex mode.  Either "F" for full or "H"
X		for half.
X
X		o+ Index.  The string to be used to select this entry with
X		the "-f" command line option.  This field is also used to
X		specify a particular tty for the entry.
X
X	NOTE:  On all hard-wired ports, the index field must be set to the
X	name of the port.  For example, if tty12 is a hard-wired port to
X	"System A", then the dialing directory entry for "System A" would
X	have "tty12" in the index field.
X
X	The commands at the dialing directory prompt are:
X
X		R) Revise (or add) a dialing directory entry or long distance
X		dialing code.  Prompts you to save the changes to disk.
X
X		P) Print (display) the long distance dialing codes.
X
X		up/dn) Scroll the dialing directory up or down 10 lines.
X		Use the up and down arrow keys to access this feature.
X
X		M) Manual dial. Prompts you for a phone number rather than
X		using a number already in the dialing directory.
X
X		D) Delete an entry or a range of entries.  Prompts you to
X		save the changes to disk.
X
X		L) Print.  Send the dialing directory to the printer
X		or a file of your choice.
X
X		1-100) Entry number.  Dial the phone for that entry number.
X
X	NOTE:  To access the port directly without dialing (perhaps to send
X	the dial codes yourself), select an empty entry or enter a single
X	space character at the manual dial option.
X
X		<cr> Carriage return.  Scroll the dialing directory down one
X		line.
X
X4.2 Redial
X
X	The redial feature is a misnomer, it really is a queuing system that
X	allows pcomm to dial several numbers in a cycle until one of them
X	answers.
X
X	When you invoke the redial command with ^A-R, you are prompted for a
X	list of dialing directory numbers.  (You may also prepend a long
X	distance code to the entry number).
X
X     +-- Redial Queue --------------------------------------------------+
X     |								    	|
X     |   Directory Entry Number(s): _					|
X     |									|
X     |			(CR for previous numbers)			|
X     +------------------------------------------------------------------+
X
X	To redial the previous number, press a carriage return alone at
X	the prompt.
X
X4.3 Keyboard macros.
X
X	Keyboard macros are not supported at this time.
X
X4.4 Line settings.
X
X	The line settings menu is invoked by ^A-P.  A typical line settings
X	menu would look like this:
X
X		+-----------------------------------------------+
X		|		Line Settings			|
X		|-----------------------------------------------|
X		|						|
X		|	Current Settings:  1200,E,7,1		|
X		|						|
X		|    1)     300,E,7,1	7)	 300,N,8,1	|
X		|    2)    1200,E,7,1	8)	1200,N,8,1	|
X		|    3)    2400,E,7,1	9)	2400,N,8,1	|
X		|    4)    4800,E,7,1	10)	4800,N,8,1	|
X		|    5)    9600,E,7,1	11)	9600,N,8,1	|
X		|    6)   19200,E,7,1	12)    19200,N,8,1	|
X		|						|
X		|   Parity	Data Bits	Stop Bits	|
X		|   13) Odd	14) 7 bits	16) 1 bit	|
X		|		15) 8 bits	17) 2 bits	|
X		|						|
X		|   18) Save Changes	YOUR CHOICE: _		|
X		|						|
X		+------------- Press ESC to return -------------+
X
X	After dialing a remote, the line settings in the dialing directory
X	entry are automatically used.  Therefore the line settings menu is
X	used to adjust the values or to select the default parameters.  You
X	can make the current setting the default by selecting the "Save
X	Changes" option.
X
X	The current settings are also displayed in the status line.
X
X	NOTE: During file transfers, certain parameters (namely the data
X	bits and parity) will be temporarily promoted.
X
X4.5 Exit pcomm
X
X	To exit pcomm, you'd type ^A-X.
X
X4.6 Unix gateway.
X
X	To temporarily suspend pcomm and spawn a Unix shell, you'd type
X	^A-4.  To return to pcomm, you'd exit the shell normally, typically
X	with "^D" or "exit".
X
X5. UTILITY FUNCTIONS
X
X	The following commands perform secondary functions.
X
X5.1 Program information
X
X	To display the opening information screen, you'd type ^A-I.  Press
X	any key to return to the terminal mode.
X
X5.2 Setup screen
X
X	The setup screens are described in detail in section 3 of this manual.
X
X5.3 Change directory
X
X	To change the current working directory while still inside pcomm,
X	you'd type ^A-B.  A screen similar to the following would appear:
X
X	+-- Change directory -------------------------------------------+
X	|								|
X	|   Current directory: /usr/egray				|
X	|   New directory: _						|
X	|								|
X	+---------------------------------------------------------------+
X
X	Abbrievations known to the shell are acceptable, for example the
X	"~" character would be translated to the home directory in the csh
X	or ksh shell.
X
X5.4 Clear screen.
X
X	To clear the local screen and home the cursor, you'd type ^A-C.
X
X	NOTE:  The remote system may not "know" the screen has been cleared,
X	and may make assumptions about the screen that are incorrect.
X	
X5.5 Toggle Duplex.
X
X	The ^A-E command changes the duplex mode from FULL to HALF, or from
X	HALF to FULL.  The status line shows the current settings.
X
X5.6 Hangup the phone.
X
X	To hangup the phone, you'd type ^A-H.  The word "disconnecting" will
X	briefly show in the status line.
X
X	NOTE: The hangup string is sent to the modem and then the DTR is
X	dropped on the line.
X
X5.7 Printer logging.
X
X	The ^A-L command toggles the printer logging on or off.  The current
X	settings are displayed in the status line.
X
X	NOTE: Since all printing goes to the normal Unix print spool program,
X	the characters will not print on the printer as they appear on the
X	screen.  The printing will actually begin when the printer logging
X	is turned *off* and the complete print job is sent to the spool.
X
X5.8 Toggle CR - CR/LF.
X
X	The ^A-3 command toggles the incoming line termination characters
X	between CR and CR/LF.  The status line show the current settings (in
X	the next to the last field).
X
X5.9 Break.
X
X	A ^A-7 sends a modem break to the remote system.  The word "break"
X	is (very) briefly displayed on the status line.
X
X	NOTE: This not the same as the break key on the keyboard (we don't
X	want to send a break to the local system, we want to sent it to
X	the *remote*).
X
X6. FILE FUNCTIONS
X
X	One of the most important features of a telecommunication program is
X	the ability to transfer files.  The following file transfer protocols
X	are implemented at this time:
X
X	protocol	packet		error		multiple
X	name		size		detection	files?
X	---------	--------	------------	-----
X	
X	xmodem		128		checksum/CRC	no
X	xmodem-1k	128/1024	checksum/CRC	no
X	modem7		128		checksum	yes*1
X	ymodem		128/1024	CRC		yes*2
X	ymodem-g	128/1024	none*3		yes
X	ASCII		none		none		no
X
X	Notes:	1 CP/M style file name
X		2 MSDOS style file name and file size
X		3 Not needed!
X
X6.1 Send files.
X
X	To send a file to the remote, you'd first instruct the remote system
X	to receive the file, then type ^A-"up arrow".  The following screen
X	would appear:
X
X					+----- Upload -----+
X					|		   |
X					|  1) xmodem       |
X					|  2) xmodem-1k    |
X					|  3) modem7       |
X					|  4) ymodem       |
X					|  5) ymodem-g     |
X					|  6) ASCII	   |
X					|		   |
X					|		   |
X					|		   |
X					|  ESC to Abort    |
X					|		   |
X					|  Protocol: _     |
X					+------------------+
X
X	You'd then select the type of protocol at the prompt, and another
X	window similar to this would appear:
X
X	+-- Send xmodem ------------------------------------------------+
X	|								|
X	|								|
X	|   Enter filename: _						|
X	|								|
X	|								|
X	+---------------------------------------------------------------+
X
X	Now you'd type in the file name or names you'd like to send.
X	Wildcards known to the shell are acceptable.
X
X	Now the file transfer actually begins.  A status screen similar to
X	the following is displayed during the transfer:
X
X				+-------------- Uploading --------------+
X				|					|
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				|					|
X				+---------- Press ESC to abort ---------+
X
X	As the transfer progresses, the "block count", "percent complete",
X	and "bytes transferred" fields will be continuously updated.  If
X	errors occur the "errors this block" and "total error count" fields
X	will be updated and the "last message" field will contain a message
X	about the error.
X
X	At the end of the transfer, pcomm will beep and return to the terminal
X	mode.  If an error occurred and the transfer was aborted, you will be
X	prompted to acknowledge the error by pressing a key before returning
X	to the terminal mode.
X
X6.2 Receive files
X
X	To receive a file (or group of files) from a remote system, you'd
X	instruct the remote system first, then type ^A-"down arrow".
X	Receiving a file is basically the same as sending a file.
X
X	NOTE: Some systems do not pad the end of the file with control-Z's
X	and therefore files might grow in length when received.
X
X	NOTE: Due to a technical limitation of pcomm, characters received
X	during an ASCII download will not reappear on the screen when you
X	return to the terminal mode.
X
X6.3 Directory
X
X	To obtain a listing of a directory on the local system while still
X	running pcomm, you'd type ^A-F.  The following screen would appear:
X
X	+-- List Directory ---------------------------------------------+
X	|								|
X	|   Current directory: /usr/egray				|
X	|   File spec (wildcards allowed): _				|
X	|								|
X	+---------------------------------------------------------------+
X
X	Abbrievations know to the shell are valid.
X
X	NOTE: Since we're really doing a popen() to the "ls" command,
X	additional command line options are also valid.
X
X6.4 Screen dump
X
X	To dump the contents of the current screen (minus any windows showing)
X	you'd type ^A-G.  The contents of the screen are written to the file
X	specified in the general setup for this purpose.  If the file already
X	exists, the screen contents are appended to the file.  The message
X	"screen dump" will briefly appear in the status line.
X
X6.5 Start Data log
X
X	To start the data logging, or change the file used for data logging,
X	you'd type ^A-1.  The following screen would appear:
X
X	+-- Start Data Logging -----------------------------------------+
X	|								|
X	|   Default log file: pcomm.log					|
X	|   New log file: _						|
X	|								|
X	+---------------------------------------------------------------+
X
X	To keep the default file, just press a carriage return at the prompt,
X	otherwise, enter a new file name.
X
X	The status of the logging is shown in the status line.
X
X6.6 Toggle Logging
X
X	To temporarily suspend data logging or to start it again without
X	being prompted for the file name, you'd type ^A-2.
X
X	The status lines shows the current settings.
X
X7.  DIALING WINDOW
X
X	While pcomm is dialing another system, a screen similar to the
X	following is shown:
X
X	+--------------------------------------------------------------------+
X	|		  D I A L I N G	       W I N D O W		     |
X	+--------------------------------------------------------------------+
X	|								     |
X	|		      System name: C Board			     |
X	|		      Pass number: 1				     |
X	|	     Elapse time this try: 4				     |
X	|	    Time at start of dial: 14:53:36			     |
X	|	Time at start of this try: 14:53:37			     |
X	|	       Connect delay time: 35				     |
X	|	      Pause between tries: 5				     |
X	|			Index/tty:				     |
X	|	       Result of last try:				     |
X	|								     |
X	|  SPACE: Recycle    DEL: Remove from queue   E: Change delay times  |
X	|								     |
X	+------------------------ Press ESC to abort ------------------------+
X
X	The options available during the dialing are:
X
X		SPACE) Press the space bar to stop the dialing of the current
X		entry and go on to the next entry in the queue.  If there is
X		only one entry in the queue, then that number is immediately
X		redialed.
X
X		DEL) Press the DEL key to remove the current number from the
X		queue.
X
X		E) Press the letter "E" to change the connect delay time, or
X		the pause between retries.  You will be prompted to save the
X		changes to disk.
echo shar: "36 control characters may be missing from 'Doc'"
SHAR_EOF
if test 32879 -ne "`wc -c < 'Doc'`"
then
	echo shar: "error transmitting 'Doc'" '(should have been 32879 characters)'
fi
fi
echo shar: "extracting 'Pcomm.1'" '(6287 characters)'
if test -f 'Pcomm.1'
then
	echo shar: "will not over-write existing file 'Pcomm.1'"
else
sed 's/^X//' << \SHAR_EOF > 'Pcomm.1'
X.TH PCOMM 1 local
X.SH NAME
Xpcomm \- a telecommunication program
X.SH SYNOPSIS
X.B pcomm
X[
X.B -d directory
X]
X[
X.B -f index
X]
X.SH DESCRIPTION
X.I Pcomm
Xis a telecommunication program designed to operate similar to the
Xpopular MSDOS program, ProComm.  ProComm (TM) is copyrighted by Datastorm
XTechnologies, Inc.
X.PP
XThe '-d' command line option allows the user to specify an additional
Xpath to be used when searching for the pcomm support files.
X.PP
XThe '-f' command line option is used to specify automatic dialing of an
Xentry in the dialing directory.  The 'index' field in the dialing directory
Xis checked against the string given in the command line option.  If a
Xmatch is found, that entry is automatically dialed.
X.PP
XWhenever
X.I pcomm
Xis in the command mode, a status line is displayed at the bottom of the
Xscreen.  The eight fields of the status line are:
X.PP
X.RS 5
X.nf
Xo+ help screen command
Xo+ tty name in use
Xo+ current line settings
Xo+ the duplex mode
Xo+ status of data logging
Xo+ status of printer
Xo+ incoming CR translation
Xo+ outgoing CR translation
X.fi
X.RE
X.SH COMMANDS
XThe following commands are accessible by pressing a user definable 'hot
Xkey' and the command letter.  The default 'hot key' is control-A.
X.TP
X.B ^A-0
XDisplays a summary of the available commands.
X.TP
X.B ^A-D
XDisplays the dialing directory.  From this screen, the directory
Xcan be scrolled up or down 10 lines by pressing the up or down
Xarrow keys respectively.  To select an entry to dial, just enter 
Xthe entry number at the prompt.  The following sub-commands are
Xalso available:
X.RS 5
X.TP
X.B R
XRevise or add an entry.  Prompts for entry number or long distance code
Xto revise.
X.TP
X.B D
XDelete a dialing directory entry or a range of entries.
X.TP
X.B P
XDisplay the current long distance dialing codes.
X.TP
X.B L
XSend the dialing directory to the line printer.
X.TP
X.B M
XManual dial.  Prompts for a phone number.
X.RE
X.TP
X.B ^A-R
XAutomatic redial of selected dialing directory entries.  Prompts the
Xuser for a list of directory entries to be placed in the queue.
X.TP
X.B ^A-M
XAllows the user to maintain a list of keyboard macros assigned to
Xspecific keys.  When pressed, the string assigned to that key is sent
Xto the remote system.
X.TP
X.B ^A-P
XAdjust the current communication line settings.  Displays a menu of 
Xbaud rate, parity, data bit, and stop bit choices.  Allows the new choice
Xto be saved and become the default.  The current line settings are
Xshown on the status line.
X.TP
X.B ^A-X
XExit 
X.I pcomm.
X.TP
X.B ^A-4
XSpawn a Unix shell while still communicating with the remote system.
XUses the 'native' shell as described in the SHELL environmental
Xvariable.
X.TP
X.B ^A-I
XDisplays the program information screen.
X.TP
X.B ^A-S
XDisplays a choice of setup screens.  The following sub-menus are
Xavailable:
X.RS 5 
X.TP
X.B 1
XTTY Setup.  Allows for the assignment of modem names to the ttys 
Xused for dialing.
X.TP
X.B 2
XModem Setup.  Prompts for the dialing instructions for the modem
Xnames specified in the TTY setup.
X.TP
X.B 3
XTerminal Setup.  This screen contains the 'hot key' definition and
Xcarriage return / line feed translations.
X.TP
X.B 4
XGeneral Setup.  Prompts for default log file name and the set of
Xcommand character translations.
X.TP
X.B 5
XASCII Setup.  Additional character translations allowed during ASCII
Xfile transfers.
X.TP
X.B S
XSave the changes to disk.
X.RE
X.TP
X.B ^A-B
XChanges the current working directory.
X.TP
X.B ^A-C
XClears the local screen.
X.TP
X.B ^A-E
XToggles between full duplex and half duplex mode.  The status line
Xshows the current duplex mode.
X.TP
X.B ^A-H
XHang up the phone.  Disconnects the phone, but remains in 
X.I pcomm.
X.TP
X.B ^A-L
XToggles the printer on and off.  Since the printer is accessed through
Xthe normal Unix spool program, the output is not sent to the printer
Xuntil 
X.B after
Xthis feature is turned off.
X.TP
X.B ^A-3
XToggle the line termination characters between the carriage return and
Xthe carriage return line feed pair.  This affects the terminal session
Xonly, not the file transfers.  The current settings are shown in the
Xstatus line.
X.TP
X.B ^A-7
XSend a modem break.  This is
X.B not
Xthe same as the break key on the keyboard.
X.TP
X.B ^A-up
XDisplays a menu of file transfer protocols to be used to send files 
Xto a remote system.
X.TP
X.B ^A-dn
XDisplays file transfer protocols to be used to receive files from a
Xremote system.
X.TP
X.B ^A-F
XDisplays the contents of a Unix directory.
X.TP
X.B ^A-G
XDump the contents of the screen to a specified file.  Escape
Xsequences and special characters will not be represented accurately
Xin the file.
X.TP
X.B ^A-1
XBegin data logging.  Prompts the user for the name of the file that
Xwill be used to collect a complete record of the terminal session.
X.TP
X.B ^A-2
XToggles the data logging option without prompting for a new file
Xname.  The status line shows the current data logging mode.
X.SH CONFIGURATION
X.I Pcomm
Xmust have access to the terminfo or termcap data for the terminal
Xbeing used.  The minimum capabilities include a screen size of at
Xleast 80 columns by 24 lines and cursor movement capabilities.
XRunning
X.I pcomm
Xfrom terminals at relatively slow speeds (i.e.: 1200 baud) will cause
Xthe windows to appear sluggish.
X.PP
XTerminals that don't have arrow keys or systems without the newer
Xversions of curses(3) will require the user to substitute the
Xletter 'U' for 'up arrow' and 'N' for 'down arrow'.
X.PP
XThere are three pcomm support files that contain information such as
Xthe default parameters, the modem/tty database, and dialing directory
Xentries.  The following directories are searched to find these files:
X.PP
X.RS 5
X.nf
Xo+ directory given with the '-d' option
Xo+ directory in the PCOMM environmental variable
Xo+ current directory
Xo+ default library directory
X.fi
X.RE
X.PP
XThe 'index' field in the dialing directory serves two purposes.
XThe first use is to act as a short cut into the dialing directory with
Xthe '-f' command line option.  The second use is to specify a tty name
Xfor a given entry.  If the 'index' is a valid device name, that
Xdevice is used instead of searching the tty database for a free port.
X.SH FILES
X.nf
Xpcomm.dial_dir        the dialing directory
Xpcomm.modem           the modem/tty database
Xpcomm.param           the start-up default parameters
X.fi
X.SH SEE ALSO
Xxmodem(1), mdm(1)
echo shar: "12 control characters may be missing from 'Pcomm.1'"
SHAR_EOF
if test 6287 -ne "`wc -c < 'Pcomm.1'`"
then
	echo shar: "error transmitting 'Pcomm.1'" '(should have been 6287 characters)'
fi
fi
echo shar: "extracting 'Pcomm.dial_dir'" '(319 characters)'
if test -f 'Pcomm.dial_dir'
then
	echo shar: "will not over-write existing file 'Pcomm.dial_dir'"
else
sed 's/^X//' << \SHAR_EOF > 'Pcomm.dial_dir'
XDIR_1=Abbey Road;1 (512) 590-6036;2400-N-8-1;F;
XDIR_2=Tel-Med-Com;526-8686;1200-E-7-1;F;
XDIR_3=C Board;1 (619) 722-8724;2400-N-8-1;F;
XDIR_4=Crest;1 (213) 471-2518;2400-N-8-1;F;crest
XDIR_5=Last Chance;1 (219) 762-8411;2400-E-7-1;F;
XDIR_6=Killer;1 (214) 827-1994;1200-E-7-1;F;
XDIR_7=System A (direct);;9600-E-7-1;F;tty12
SHAR_EOF
if test 319 -ne "`wc -c < 'Pcomm.dial_dir'`"
then
	echo shar: "error transmitting 'Pcomm.dial_dir'" '(should have been 319 characters)'
fi
fi
echo shar: "extracting 'Pcomm.modem'" '(248 characters)'
if test -f 'Pcomm.modem'
then
	echo shar: "will not over-write existing file 'Pcomm.modem'"
else
sed 's/^X//' << \SHAR_EOF > 'Pcomm.modem'
XTTY_1=tty10;HAYES;1200
XTTY_2=tty11;HAYES;2400
XTTY_3=tty12;DIRECT;9600
XMODEM_1a=HAYES;ATS7=45S11=70!;ATDT;!;~~+++~~ATH0!
XMODEM_1b=CONNECT!;CONNECT 1200;CONNECT 2400;;;
XMODEM_1c=BUSY;VOICE;NO CARRIER;
XMODEM_2a=DIRECT;;;;
XMODEM_2b=;;;;;
XMODEM_2c=;;;;
SHAR_EOF
if test 248 -ne "`wc -c < 'Pcomm.modem'`"
then
	echo shar: "error transmitting 'Pcomm.modem'" '(should have been 248 characters)'
fi
fi
echo shar: "extracting 'Pcomm.param'" '(362 characters)'
if test -f 'Pcomm.param'
then
	echo shar: "will not over-write existing file 'Pcomm.param'"
else
sed 's/^X//' << \SHAR_EOF > 'Pcomm.param'
XD_BAUD=1200
XD_PARITY=E
XD_DBITS=7
XD_SBITS=1
XHOT=1
XASCII_HOT=^A
XD_DUPLEX=FULL
XFLOW=XON/XOFF
XCR_IN=CR
XCR_OUT=CR
XLOGFILE=pcomm.log
XDUMPFILE=pcomm.dump
XSTRIP=YES
XPAUSE_CHAR=~
XCR_CHAR=!
XCTRL_CHAR=^
XESC_CHAR=|
XABORT=KEEP
XCDELAY=35
XPAUSE=5
XLECHO=NO
XEXPAND=NO
XCR_DELAY=0
XPACE=NO
XCR_UP=NONE
XLF_UP=NONE
XTIMER=5
XCR_DN=STRIP
XLF_DN=NONE
XLD_PLUS=
XLD_MINUS=
XLD_AT=8,
XLD_POUND=9
SHAR_EOF
if test 362 -ne "`wc -c < 'Pcomm.param'`"
then
	echo shar: "error transmitting 'Pcomm.param'" '(should have been 362 characters)'
fi
fi
exit 0
#	End of shell archive


-- 
Please send comp.sources.unix-related mail to rsalz@uunet.uu.net.