The list form of the CLOSE macro is used to construct a data management
parameter list. Any number of parameters (data control block addresses
and associated options) can be specified. A parameter list constructed
by a CLOSE macro, list form, can be referred to by either an OPEN
or CLOSE execute-form instruction. You must ensure that the MODE parameters
on the list and execute forms are consistent. Errors and unpredictable
results occur if the modes are inconsistent.
There are two forms of the list, the short form and the long form.
The short form list consists of a one-word entry for each DCB or ACB
in the parameter list. The high-order byte is used for the options
and the 3 low-order bytes are used for the DCB address. The long form
list consists of an eight byte entry for each DCB or ACB in the parameter
list. The high order byte is used for the options and the low order
four bytes are used for the DCB or ACB address. For either form of
list, the end of the list is indicated by a 1 in the high-order bit
of the last entry's option byte. The length of a list generated by
a list-form instruction must be equal to the maximum length required
by an execute-form instruction that refers to the same list. You can
construct a maximum length list by one of two methods:
- Code a list-form instruction with the maximum number of parameters
required by an execute-form instruction that refers to the list.
- Code a maximum length list by using commas in a list-form instruction
to acquire a list of the appropriate size. For example, coding CLOSE (,,,,,,,,,),MF=L would
provide a list of 5 fullwords (5 dcb addresses and
5 options).
Entries at the end of the list that are not referred to by the
execute-form instruction are assumed to have been filled in when the
list was constructed or by a previous execute-form instruction. Before
using the execute-form instruction, you can shorten the list by placing
a 1 in the high-order bit of the last DCB entry to be processed.
A zeroed work area on a word boundary is equivalent to CLOSE (,DISP,...),MF=L and
can be used in place of a list-form instruction. Allocate four bytes
per entry if you wish the effect of MODE=24. Allocate eight bytes
per entry if you wish the effect of MODE=31. The high-order bit of
the last DCB entry must contain a 1 before this list can be used with
the execute-form instruction.
The list form of the CLOSE macro is:
[label]
|
CLOSE
|
([dcb address,],[option
],...)
[,TYPE=T]
[,MF=L
[,MODE=24|31]
|
dcb address—A-Type Address
option—Same as standard form
- TYPE=T
- can be coded in the list-form instruction to allow the specified
option to be checked for validity when the program is assembled.
- MF=L
- specifies the CLOSE macro is used to create a data management
parameter list referred to by an execute-form instruction.
- MODE=24|31
- coded the same as the standard form. This specification must match
that of the execute form.