Writing Messages to the System Console [ Accessing Files Programmer's Guide ] MPE/iX 5.0 Documentation
Accessing Files Programmer's Guide
Writing Messages to the System Console
Two intrinsics are available that allow you to print a character string
directly from your program to the system console:
* PRINTOP transmits an ASCII character string from your program to
the system console.
* PRINTOPREPLY transmits an ASCII character string from your program
to the system console, and solicits a reply from the system
operator.
Writing a message to the system console
Example 8-4 is an HP Pascal/iX program segment that illustrates how your
program can call the PRINTOP intrinsic to transmit a message from a
character array in your program to the System Console.
Example 8-4. Writing a Message to the System Console[REV BEG]
:
var
message : packed array [1..56] of char; {declare PRINTOP parm}
length : shortint; {declare PRINTOP parm}
controlcode : 0..65535; {declare PRINTOP parm}
:
message := 'Message to Operator'; {message to transmit }
length := -19 {actual length in bytes }
controlcode := 0; {set to default }
PRINTOP ( message,
length,
controlcode
);
:
[REV END]
The PRINTOP intrinsic transmits a maximum of 56 ASCII characters to the
system console. Longer messages are truncated to 56 characters. For
more information about PRINTOP intrinsic parameters, refer to the MPE/iX
Intrinsics Reference Manual (32650-90028).
Writing a message to the system console and requesting a reply
The PRINTOPREPLY intrinsic can be used to transmit a message from an
array in your program to the system console and to request that a reply
be returned. The message that you send must be no longer than 50
characters in length. PRINTOPREPLY can return a maximum of 31 ASCII
characters to your program. For example, a program could ask the system
operator if the line printer contains a certain type of form. If the
response is affirmative, the program could then write information on
these forms.
Example 8-5 is an HP Pascal/iX code segment containing a PRINTOPREPLY
intrinsic call. The program is asking the system operator if the line
printer device LP contains the correct forms. The program is requesting
that the system operator respond with a simply YES or NO response. The
program takes appropriate action based upon the characters returned in
reply.
Example 8-5. Writing a Message to the System Console and Requesting a
Reply
:
var
message : packed array [1..50] of char; {PRINTOREPLY parameter}
length : shortint; {PRINTOREPLY parameter}
zero : shortint; {PRINTOREPLY parameter}
reply : packed array [1..31] of char; {PRINTOREPLY parameter}
expected_length: shortint; {PRINTOREPLY parameter}
counter
:
message := 'Does device LP contain the correct forms? [Y/N]';
length := -47 {length of message }
zero := 0;
reply := ' '; {initialize reply }
expected_length := -3 {expected reply Y/YES/N/NO }
PRINTOREPLY ( message, {message sent to system console }
length, {length of message in range 0..50 }
zero, {required, but not used. Set to 0 }
reply {reply returned in this array }
expected_length {length of reply in range 0..31 }
);
:
The actual length of the System Operator's reply is returned to
expected_length. For more information about PRINTOREPLY intrinsic
parameters, refer to the MPE/iX Intrinsics Reference Manual
(32650-90028).
MPE/iX 5.0 Documentation