The following applies to all exits described here:
DMS places the address of an 80-b0te buffer in register 0. For input files, DMS places the contents of the user labels in this buffer. For output files, it takes the contents of the user labels from this buffer.
To resume program execution, the LBRET macro must be called after the processing of UVL, UHL or UTL labels; in all other cases, the EXRTN macro must be called.
For files with nonstandard labels, the volume and file labels are processed using BTAM macros, regardless of the access method selected for file processing.
For standard user labels, writing is executed automatically.
EXLST exits control the writing of user labels or nonstandard labels and can also be used to intercept any errors which occur during label checking.
OPENV | The user program checks or writes UVL labels or nonstandard volume header labels. |
LABGN | The user program checks or writes UHL labels or nonstandard file header labels. |
LABEND | The user program checks or writes user/nonstandard end-of-file labels. DMS distinguishes between UTL end-of-file labels and UTL end-of-volume labels on the basis of the preceding group of system labels (EOF, EOV). |
LABEOV | The user program checks or writes user/nonstandard end-of-volume labels. |
LABERR | The LABERR routine is activated if a label error occurs during the processing of files with standard labels, e.g. if EOF/EOV labels are missing or, for input files, if the value of the block counter in the EOF/EOV label differs from that of the block counter within DMS. |