This general macro is used to increment the file address in the specified
file address reference word (FARW) by the number of records indicated in the
count register. In addition, for offline programs using general file
relative record numbers, the relative record number is converted to a
cylinder, track, and record number in a format suitable for channel command
word usage.
Format
- label
- A symbolic name can be assigned to the macro statement.
- ATYPE
- Specify one of the following:
- MCHR
- Indicates the file address is in the 4-byte MCHR format.
- REL
- Indicates the file address is a Relative Record Number.
- COUNT=Rn
- A register containing the number of records by which the file address is
to be incremented. R14 and R15 must not be used.
- DEV=dasd_type
- The TPF-supported DASD type on which the record resides (for example,
3380).
- LEVEL=n
- A number 0-F indicating the data level of the FARW.
- SIZE
- Specify one of the following:
- SMALL
- 381-byte records.
- LARGE
- 1055-byte records.
- 4K
- 4096-byte records.
Entry Requirements
Return Conditions
- For online and offline programs:
- Control is returned to the next sequential instruction.
- The FARW at the specified data level contains the new file address.
- The control bits in the record number field of the FARW will be set
according to ATYPE and SIZE operands.
- The condition code is unpredictable.
- For ATYPE=MCHR:
- R14 will contain the head number of the file address.
- R15 will contain the record number of the file address.
- The register specified by COUNT= will contain zeros.
- For ATYPE=REL:
- For an offline program call, the register specified by the COUNT parameter
will contain the address of an 8-byte field with the following contents:
000CCHHR
Where:
- CC is the cylinder.
- HH is the track.
- R is the record.
Programming Considerations
- This macro can be run on any I-stream.
- A General File Module Table must be link edited with ATYPE=REL offline
programs. The pseudo module number is used to locate its entry in the
General File Module Table. The base number is obtained from this entry
to resolve the cylinder, track, and record address that is moved into the
returned 8-byte field.
- The General File Module Table used by ATYPE=REL offline programs must
match the table used online. This is to assure that the file addresses
calculated by the offline program will match those calculated by the online
program. The online General File Module Table is assembled in program
segment CVZD. Either CVZD can be link edited with the offline program,
or the DSECT Macros GFMTB and GFMTD (GENFD), can be assembled with the offline
program. If the macros are used, the same parameters must be used that
are used in CVZD.
- References are made to the FARW in offline programs that would normally be
resolved without any consideration in online programs. See 'Entry
Requirements' above, for coding techniques to establish addressability to
the FARW in offline programs.
- The determination of an offline program is done by checking global symbol
&BG0. Global symbol &BG0 is set to 1 when the BEGIN macro is
assembled in an online program. It is assumed that offline programs
will not use the BEGIN macro.
Examples
None.