The assembler calls the exit with a request type of 5 (PROCESS) when the assembler is writing the listing records, and it has a record for the exit to process. The address of the record is in the buffer pointer field, and the length is in the buffer length field.
The record has either an American National Standard or a machine printer control character at the start of the record depending on the setting of the ASA assembler option.
The options field contains a value that represents the type of listing record that is passed. The listing record types, and their corresponding options values, are shown on topic ***.
The exit can set the return code in the Exit Parameter List to one of the following:
The exit must also ensure that a valid printer control character is placed in the first character of the record. The printer control character may be either American National Standard or machine. The exit can check the DCB, pointed to by the DCB pointer field in the Exit Parameter List, to find out which printer control character to use.
The exit must also ensure that a valid American National Standard printer control character is placed in the first character of the record.
Although the user exit can insert or discard records, the assembler maintains the absolute record number and relative record number.
Table 18 summarizes the LISTING exit processing.
|
Request Value=Type |
Exit Return Code |
Action |
|---|---|---|
| 1=OPEN | 0 |
Assembler opens listing data set. If reason code=4, exit supplies listing line length. If reason code=16, REINIT call required. |
| 4 |
Exit writes listing records. If reason code=4, exit supplies data set information. If reason code=16, REINIT call required. |
|
| 16 |
Assembler opens listing data set, and makes no further calls to the exit. |
|
| 2=CLOSE | n/a |
Exit should close any data sets it opened, and release any storage it acquired. |
| 4=WRITE | 0 | |
| 5=PROCESS | 0 |
Record accepted. Exit may modify record. If reason code=4, the assembler, after processing the current record, provides an empty buffer for the exit to provide additional record. If reason code=8, redrive requested. 1 |
| 4 | ||
| 16 | Assembler makes no further calls to the exit. | |
| 10=REINIT | 0 | |
| 16 | Assembler makes no further calls to the exit. | |
|
Notes:
|
||
[ Top of Page | Previous Page | Next Page | Contents | Index ]