1 PROMPT_
 The function of the program is to prompt the specified device
 (D=SYS$COMMAND), with a specified message and return the response in
 the specified local symbol.  The prompt will timeout after a specified
 intervial (D=0-0:0:10.00) has elapsed.  This program was developed
 mainly for the system startup command procedure to allow system
 programmer interaction with startup.

 Syntax:

    PROMPT :== $disk:[directory]PROMPT
    PROMPT symbol_name "prompt_message"

2 Parameters
 symbol_name - is the local symbol that is to receive the user's reply.

 "prompt_message" - is the message that is to be sent to the device.
    The "" will be removed if present.

2 Qualifiers
/DEFAULT=default_value
 Is the value to return in the local symbol if no reply is given
 within the specified time interval.  If this qualifier is
 specified, then the program will not return a timeout error
 status.

/DEVICE=device_name (D=SYS$COMMAND)
 Is the name of the device which is to be used for prompting.  The
 device must be a TTY type device.  That is to say the prompt message
 will be sent to the device and the response will be read from it.

 The default device is SYS$COMMAND:, suitability privileged users 
 may specify devices other than their terminal.

/ECHO (D)
/NOECHO
 This qualifier will enable or disable the echoing of the reply.  By 
 default the reply is echoed.

/PUNCTUATION (D)
/NOPUNCTUATION
Is a flag indicating whether to append a colon and a space to the
prompt message.  For example:

    $ PROMPT SYMBOL "Message?"
    Message?: your_answer
 vs
    $ PROMPT/NOPUNCTUATION SYMBOL "Message? "
    Message? your_answer

 By default the prompt message will have the colon and space
 appended. 

/TERMINATOR=symbol
 This qualifier will return in the specified 'symbol' the 
 termination character.  The termination character will be 
 represented as follows:

   ^@	nul			   ^P	Control/P
   ^A	Control/A		   ^Q	Control/Q *
   ^B	Control/B		   ^R	Control/R *
   ^C	Control/C *		   ^S	Control/S *
   ^D	Control/D		   ^T	Control/T
   ^E	Control/E		   ^U	Control/U *
   ^F	Control/F		   ^V	Control/V
   ^G	bell			   ^W	Control/W
   ^H	back space *		   ^X	Control/X *
   ^I	tab *			   ^Y	Control/Y *
   ^J	line feed *		   ^Z	Control/Z
   ^K	vertical tab *		   ^[	escape
   ^L	form feed *		   ^\	Control/\
   ^M	carriage return		   ^]	Control/]
   ^N	Control/N		   ^^	Control/^
   ^O	Control/O *		   ^_	Control/_

 Codes marked with '*' will most likely not be returned as 
 terminators (however, there are always exceptions to every rule).

/TIMEOUT=delta_time (D=0-0:0:10.00)
 Is the length of time that the program is to wait for a reply.  If
 no reply is given before the timeout the program will return with an
 appropriate error status, unless /DEFAULT has been specified.  In
 that case the default value will be returned and a good completion
 reported.

 The default timeout interval is 10 seconds (0-0:0:10.00)

/TYPE_AHEAD (D)
/NOTYPE_AHEAD
 This qualifier will allow type ahead information to be used as part 
 of the reply (default).  If /NOTYPE_AHEAD is specified the type 
 ahead buffer will be purged before the prompt is issued.

/UPPER_CASE (D)
/NOUPPER_CASE
 Is a flag indicating whether to translate the the reply to all upper
 case characters or not.  By default the reply will be returned
 translated to upper case.

2 Exit_Conditions
 The return status codes are:

    SS$_NORMAL   - reply received and is in the local symbol.
    SS$_INSFARG  - insufficent arguments passed in the call.
    SS$_BADPARAM - bad parameter passed in call.
    SS$_TIMEOUT  - timeout occured and no default value was
                   specified.
    SS$_???      - some other error from a system service call.
