z/OS TSO/E Programming Services
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Building the PUTGET Parameter Block (PGPB)

z/OS TSO/E Programming Services
SA32-0973-00

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 block
Number 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.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014