This general macro converts a file address reference format (FARF) format
address to a 7-byte file address in the MMCCHHR format. The name
MMCCHHR displays how the address is constructed:
- MM
- Halfword symbolic module number used to identify the physical device
- CC
- Halfword cylinder address
- HH
- Halfword head address
- R
- 1-byte record number.
The 5-byte CCHHR is the same as the record ID recorded in the count area on
file.
Format
- label
- A symbolic name can be assigned to the macro statement.
- datalevel
- A file address reference word (FARW) in the range D0-DF.
- ADDR=(reg)|label1
- This parameter specifies the general register (R1-R7) containing the
location, or a label indicating the location, of an 8-byte file
address.
Entry Requirements
- If an ECB data level is coded, R9 must contain the address of the entry
control block (ECB) being processed.
- If an ECB data level is coded, the specified FARW must contain a FARF
address.
Return Conditions
- Control is returned to the next sequential instruction.
- R14 contains the 2-byte module (MM) and cylinder (CC) numbers.
R15 contains the 2-byte head number (HH) and the 1-byte record number
(R). The rightmost byte of R15 contains one of the following
hexadecimal device type codes:
- Code
- Symbolic Device Type
- X'0C'
- DEVA
- X'10'
- DEVB
- X'14'
- DEVC
- X'18'
- DEVD
- The contents of R0-R7 are saved during execution of this
macro.
- Return codes in R14 indicate compatibility of FARF addresses.
- R14 is negative when the given FARF address is compatible with the
migration stage, but is not in the proper bounds. For instance a FARF4
address input in the FARF3/4 stage does not have a defined UFT/FTI
combination.
- R14 contains a return code if the FARF6 address does not decode.
- When R14 is not negative, this implies satisfactory execution and the
return of valid values in R14 and R15.
- If this macro is called from a program running in 24-bit mode, the
condition code will be saved across this macro call.
If the macro is called from a program running in 31-bit mode, the condition
code upon return from this macro is unknown.
- The FARW at the specified ECB data level or the location referenced by the
ADDR parameter is unchanged.
Programming Considerations
- This macro can be run on any I-stream.
- R14 should be interrogated for a negative result, denoting an invalid FARF
address given as input to this macro.
Examples
None.