gtpg2m2mGeneral Macros

GETFC-Get File Pool Address and Storage Block

This general macro obtains an available file pool address and optional storage block based on the attributes of the specified record ID. The optional storage block may be accessed by other entry control blocks (ECBs) through common storage or it may be protected from common access.

Format




Notes:

  1. symbol2

label
A symbolic name can be assigned to the macro statement.

datalevel
An ECB data level (D0-DF).

symbol2
If P is specified, RIAT attribute type 0 for the designated record ID applies. If O is specified, RIAT attribute type 1 for the record ID applies. See the RIATA information in TPF System Generation for further information on RTPx.

This parameter is optional and has been kept for migration purposes. New code using this macro should use the RTP parameter instead.

DECB=(reg)|label1
The label or general register (R0-R7) containing the address of the data event control block (DECB).

RTP=n|(reg)
A digit from 0-9 can be specified to designate the desired combination of record attributes assigned for the record specified in the ID parameter. RTP may also be a register containing the RIAT attribute (0-9). Valid registers are R0-R7. If a register is specified it should not be the same as the register specified for the ID or DECB parameters.

For more information about record attributes, see RIAT and RIATA in TPF System Generation.

Note:
symbol2 and the RTP parameter are mutually exclusive.

BLOCK
Specify one of the following:

YES
A storage block will be obtained on the designated level.

NO
No storage block is obtained.

The default is NO for this optional parameter.

ERROR
This is an optional parameter.

YES
Return is made to the caller on an error.

NO
A system error with exit occurs on an error.

The default value is NO.

ID=sd|(reg)
A required, self-defining term that represents a valid RIAT table record ID or a register containing a right-justified hexadecimal record ID. Valid registers are R0-R7. If a register is specified it should not be the same as the register specified for the RTP or DECB parameters.

COMMON
Allocated block storage (BLOCK parameter) can be made accessible to all other ECBs or be protected from them by using this parameter.

YES
The storage comes from the pool of shared main storage. Any ECB can access the storage block.

NO
The storage is unique to this ECB, and is protected from reference or alteration by other ECBs.

NO is the default.

The COMMON parameter is used in combination with the BLOCK parameter. Authorization to use the COMMON must be established for the calling program (OPTIONS=(CMB)) in IBMPAL.

FILL=hh
This is an optional parameter used in combination with the BLOCK parameter. If specified, a 1-byte hexadecimal value (hh) is supplied that will be used to initialize the user section of the storage block to be allocated.

For example, by coding FILL=00, a storage block allocated by the BLOCK parameter will be initialized to X'00's.

If the FILL parameter is not specified, the storage block contents will not be initialized and will not be predictable.

Entry Requirements

Return Conditions

Programming Considerations

Examples