HLASM Programmer's Guide
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Input and output files

HLASM Programmer's Guide
SC26-4941-06

Depending on the options in effect, High Level Assembler requires the files as shown in Figure 1.
Figure 1. High Level Assembler Files
                     ┌──────────────┐
                     │    SYSIN     │     ┌─────────────┐
                     └───────────┬──┘  ┌──┤   ASMAOPT   │
                                 │     │  └─────────────┘
                                 │     │
                                 ↓     ↓
 ┌──────────────┐           ┌────┴─────┴───┐           ┌──────────────┐
 │    SYSLIB    ├──────────→┤  Assembler   ├←─────────→┤    SYSUT1    │
 └──────────────┘           └───────┬──────┘           └──────────────┘
                                    │
                                    ↓
      ┌──────────────┬──────────────┼──────────────┬──────────────┐
      │              │              │              │              │
      ↓              ↓              ↓              ↓              ↓
┌─────┴─────┐  ┌─────┴─────┐  ┌─────┴─────┐  ┌─────┴─────┐  ┌─────┴─────┐
│  SYSPRINT │  │  SYSTERM  │  │  SYSLIN   │  │  SYSPUNCH │  │  SYSADATA │
└───────────┘  └───────────┘  └───────────┘  └───────────┘  └───────────┘

The ddnames can be overridden during installation.

High Level Assembler requires the following files:
SYSIN
An input file containing the source statements to be processed.
SYSLIB
A file containing macro definitions (for macro definitions not defined in the source program), source code to be called for through COPY assembler instructions, or both.
SYSPRINT
A file containing the assembly listing (if the LIST option is in effect).
SYSTERM
A file containing essentially a condensed form of SYSPRINT, principally error flagged statements and their error messages (only if the TERM option is in effect).
SYSPUNCH
A file containing object module output, normally for punching (only if the DECK option is in effect).
SYSLIN
A file containing object module output normally for the linkage editor (only if the OBJECT option is in effect).
SYSADATA
A file containing associated data output (only if the ADATA option is in effect).
SYSUT1
Assembler work file (only if the WORKFILE option is in effect).
ASMAOPT
An input data set containing an assembler option list.

The files listed above are described in the text following Table 1. The characteristics of these files, those set by the assembler and those you can override, are shown in Table 1.

Table 1. Assembler file characteristics
File Access Method Logical Record Length (LRECL) Block Size (BLKSIZE) Record Format (RECFM)
SYSIN QSAM 80  4   7  10 
ASMAOPT QSAM  11   6  Fixed/Variable
SYSLIB BPAM 80  5   7  10 
SYSPRINT QSAM  1   6   8  10 
SYSTERM QSAM  2   4   9  10 
SYSPUNCH QSAM  12   4   3 
SYSLIN QSAM  12   4   3 
SYSADATA QSAM 32756 32760 or greater VB
SYSUT1 QSAM   32768 Fixed
Notes to Table 1:
 1 
If you specify EXIT(PRTEXIT) and the user exit specifies the logical record length, the logical record length returned is used, unless the SYSPRINT data set has a variable-length record format in which case the LRECL used is 4 bytes greater than the value returned by the exit. If EXIT(PRTEXIT) has not been specified or the user exit does not specify a record length, the record length from the FILEDEF command or file label is used, if present. Otherwise, the record length defaults to 133, or 137 if the record format is variable-length.

The minimum record length allowed for SYSPRINT is 121, and the maximum allowed is 255. If the record format is variable-length, the LRECL should be at least 125 or 137 depending on the LIST option.

 2 
If you specify EXIT(TRMEXIT) and the user exit specifies the logical record length, the logical record length returned is used. If you do not specify EXIT(TRMEXIT) or the user exit does not specify a record length, the record length from the FILEDEF command or file label is used, if present. If not present, the record length defaults to the record length for SYSPRINT (if the LIST option is in effect) or 133 otherwise.

The maximum record length allowed for SYSTERM is 255.

 3 
Both fixed and variable formats are supported; the default is fixed.
 4 
If specified, the BLKSIZE must equal the LRECL, or be a multiple of the LRECL. If BLKSIZE is not specified, it is set to LRECL.
 5 
The BLKSIZE on the FILEDEF command or the file label must equal the LRECL, or be a multiple of the LRECL.
 6 
The blocksize must be equal to or a multiple of the record length if the record format is fixed. If the record format is variable, then the blocksize must be at least 4 bytes greater than the record length.
 7 
Set by the assembler to F (or FB) if necessary.
 8 
Both fixed and variable formats are supported; the default is variable. If the FILEDEF command or file label specifies machine or ASA control characters, the ASA option is set or reset accordingly. If machine or ASA control characters are not specified on the FILEDEF command or file label, the record format is modified according to the ASA option.
 9 
Set by the assembler to F (or FB) if necessary. The record format is set to FA (or FBA) if the ASA option is specified, or FM (or FBM) otherwise.
 10 
You can specify B, S, or T, or any combination of these.
 11 
The minimum record length allowed for ASMAOPT is 5. The maximum record length allowed is 32756 if the record format is variable length or 32760 if the record format is fixed length.
 12 
If you specify the OBJECT option,the logical record length must be 80. If you specify the GOFF option, the object module can be generated with either fixed-length records of 80 bytes, or variable-length records up to a BLKSIZE of 32720.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014