
       			       Free software BY
			     Northern Telecom Inc.

     This  software  is  furnished for free and may be used and  copied as
     desired. This software or  any  other copies  thereof may be provided
     or  otherwise  made  available  to any other person.  No title to and
     ownership of  the  software  is  hereby transferred or allowed. 

     The information in this software is subject to change  without notice
     and should not be construed as a commitment by NORTHERN TELECOM INC.

     NORTHERN TELECOM assumes no responsibility for the use or reliability  
     of this software on any equipment whatsoever.

	Northern Telecom Inc.
	Network Support Systems Division
	54 Regional Drive
	Concord, New Hampshire 03301
	(603) 224-6511 X2529

	Program:	CAT
	Author:		Robin Miller
	Date:		Fall 1985

     Description:

	This  is a catchall utility I've used successfully for many years.
     It  allows some capabilities not available in other catchalls and has
     been received very well on the systems I've used it on.  This version
     is much the same as the Digital version except for the following:

	o  It's a privileged task which allows non-privileged users to
	   execute certain privileged commands.

	o  Many of the commands such as DELETE, DIRECTORY, TYPE, etc.,
	   are spawned to DCL for a friendlier interface (allows prompting
	   and switches such as /TODAY).

	o  Allows multiple command lines to be spawned.

	o  Allows commands to be added much easier than the Digital
	   version.  See module CATTBL for more details.

	o  Does not require the definition of the logical names ZZ1: and
	   ZZ2: to use the flying run/install of tasks or global command
	   files in the library account.

	o  Allows both flying run/installs or command file execution.
	   The Digital version allows one or the other but not both.

	o  On RSX-11M, commands can be shortened to a single character.
	   On RSX-11M+, modification of the MCR dispatcher is neccessary
	   to pass single character commands to catchall.

	o  A short command summary is displayed by the "CAT" command
	   along with the current version and last modification date.

------------------------------------------------------------------------------

     CAT for Fall 1985 DECUS.

	This  version of catchall has had several commands added which are
     used to program the Hayes autodial modem connected to another port on
     the  system.  The commands are generic and can be used to program any
     type  of  autodial modem from an indirect command file.  The commands
     used are:

	CHECK	This command checks for the terminal being busy or logged
		on by another user.  The exit status will be:

			success = 1 = the terminal is available.
			warning = 0 = no device or not a terminal.
			error   = 2 = the terminal is logged on.
			severe	= 4 = the terminal is busy.

	SEND	This command is used send the specified string via a
		write-breakthru to the specified terminal.

		Format:	SEND TTnn: Text_to_send [+]

		A logical name can also be used in place of TTnn:
		If the plus sign (+) is specified then overprint carriage
		control is used, otherwise single spacing is used.

	WAIT	Waits for a string from a terminal.

		Format:	WAIT[/D:n] TTnn: match_string [+]

		The  /D:n is the number of seconds to delay before issuing
		the read.  If not specified, we wait 1 second.  The number
		of  characters  in the typehead buffer is then read and if
		non-zero,  the  read  is  issued.  If  a  match  string is
		specified,  then  the  buffer  read  is  searched for that
		substring.  The  plus  sign (+) causes the characters read
		to be displayed at the terminal.  The exit status is:

			success = 1 = read and match of substring.
			warning = 0 = no characters in typehead to read.
			error   = 2 = read with no match of substring.
			fatal   = 4 = directive or syntax error.

     An example of using the above commands can be found in CALLBACK.CMD.
     This command file is used to give a user a callback on a Hayes modem
     pointed to by the logical name RM0:. Also a Runoff file CALLBACK.RNO
     explains how this procedure is supposed to work.
