When the list form of the PUTGET macro instruction expands,
it builds a four-word PUTGET parameter block (PGPB). This PGPB combines
the functions of the PUTLINE and the GETLINE parameter blocks and
contains information used by the PUT and the GET functions of the
PUTGET service routine. The list form of the PUTGET macro instruction initializes
this PGPB according to the operands you have coded in the macro instruction. This
initialized block, which you can later modify with the execute form
of the PUTGET macro instruction,
indicates to the PUTGET service routine the functions you want performed.
It also contains a pointer to the output line descriptor that describes
the output message, and it provides a field into which the PUTGET
service routine places the address of the input line returned from
the input source.
You must pass the address of the PGPB to the execute form of the
PUTGET macro instruction.
Because the list form of the macro instruction expands
into a PGPB, all you need do is pass the address of the list form
of the macro instruction to
the execute form as the PARM value.
The PUTGET parameter block is defined by the IKJPGPB DSECT, which
is provided in SYS1.MACLIB. Table 1 describes
the contents of the PUTGET parameter block.
Table 1. The
PUTGET parameter blockNumber of bytes |
Field name |
Contents or meaning |
---|
2 |
|
PUT control flags. These bits describe the output
line to the PUTGET service routine. Byte 1: - ..0. ....
- Always zero.
- ...1 ....
- The output line is a single-level message.
- .... 0...
- Must be zero.
- .... .1..
- The output line is a multilevel message.
- .... ...1
- The output line is a PROMPT message.
- xx.. ..x.
- Reserved.
Byte 2: - 1... ....
- The output line is a MODE message.
- ...1 ....
- BYPASS processing is requested.
- .... 1...
- ATTN processing is requested.
- .... .1..
- SUBSTACK=YES is specified.
- .... ..1.
- The output line is to be written in the language specified in
the UPT.
- .xx. ...x
- Reserved bits.
|
2 |
|
PUT options field. These bits indicate to the
PUTGET service routine which of the options you want to use for PUT. Byte
1: - 0... ....
- Always set to 0.
- ...0 ....
- WAIT processing has been requested. Control will be returned
to the issuer after the output line has been placed into a terminal
output buffer.
- ...1 ....
- NOWAIT processing has been requested. Control will be returned
to the issuer whether or not a terminal output buffer is available.
- ...0 ....
- NOHOLD processing has been requested. The issuer can resume processing
as soon as the output line has been placed on the output queue.
- .... 1...
- HOLD processing has been requested. The issuer is not to resume
processing until the output line has been written to the terminal
or deleted.
- .... .0..
- NOBREAK processing has been requested. The output line will be
displayed only when the terminal user is not entering a line.
- .... .1..
- BREAKIN processing has been requested. The output line is to
be sent to the terminal immediately. If the terminal user is entering
a line, the user is to be interrupted.
- .... ..00
- EDIT processing has been requested.
- .... ..01
- ASIS processing has been requested.
- .... ..10
- CONTROL processing has been requested.
- .xx. ....
- Reserved.
Byte 2: Reserved.
|
4 |
|
The address of the output line descriptor. |
2 |
|
GET control flags. Byte 1: - .00. ....
- Always zero.
- ...1 ....
- TERM processing is requested.
- x... xxxx
- Reserved bits.
Byte 2: - xxxx xxxx
- Reserved.
|
2 |
|
GET options field. These bits indicate to the
PUTGET service routine which of the options you want to use for GET. Byte
1: - 1... ....
- Always set to 1.
- ...0 ....
- WAIT processing has been requested. Control will be returned
to the issuer only after an input message has been read.
- ...1 ....
- NOWAIT processing has been requested. Control will be returned
to the issuer whether or not a line of input is available. If no
line was available, PUTGET returns a code of 20 (decimal) in general
register 15.
- .... ..00
- EDIT processing has been requested. In addition to the editing
provided by ASIS processing, the input buffer is to be filled out
with trailing blanks to the next doubleword boundary.
- .... ..01
- ASIS processing has been requested. (See the ASIS operand of
the PUTGET macro instruction description.)
- .xx. xx..
- Reserved bits.
Byte 2: - xxxx xxxx
- Reserved.
|
4 |
PGPBIBUF |
The address of the input buffer. The PUTGET service
routine fills this field with the address of the input buffer in which
the input line has been placed. |