RLD record format
- Columns
- Contents
- 1
- X'02'
- 2–4
- RLD
- 5–10
- Space
- 11–12
- Data field count—number of bytes of information in data field (columns 17–72)
- 13–16
- Space
- 17–72
- Data field:
- 17–18
- Relocation ESDID
- 19–20
- Position ESDID
- 21
- Flag byte. Describes the type of relocation required:
- Bit 0
- Reserved
- Bit 1
- If 1, add 4 to address constant length
- Bit 2—3
- Address constant type:
- 0
- A
- 1
- V
- 2
- Q
- 3
- CXD
- Bits 4–5
- Address constant length minus 1
- Bit 6
- Direction of relocation (0 for +, 1 for -)
- Bit 7
- If 1, the same P-ID and R-ID for the next RLD item
- 22–24
- Absolute address to be relocated
- 25–72
- Remaining RLD entries
- 73–80
- Deck ID, sequence number, or both. The deck ID is the name from the first TITLE statement that has a non-spaces name field. The name can be 1–8 characters or if there is no name, the remaining columns contain a record sequence number.
If the rightmost bit of the flag byte is set, the following RLD entry has the same relocation ESDID and position ESDID, and this information is not repeated; if the rightmost bit of the flag byte is not set, the next RLD entry has a different relocation ESDID or position ESDID, and both ESDIDs are recorded.
Certain combinations in the Flag byte are used to indicate Relative-Immediate
relocation items:
B'x111 00xx' 2-byte Relative-Immediate reference
B'x111 10xx' 4-byte Relative-Immediate reference
The first RLD item on each RLD record must specify the Relocation and Position ESDIDs; thus, the last RLD item on a record must not set the rightmost bit of the flag byte.
For example, if the RLD entries 1, 2, and 3 of the program listing contain the following
information:
Position Relocation
Entry ESDID ESDID Flag Address
1 02 04 0C 000100
2 02 04 0C 000104
3 03 01 0C 000800
then columns 17–72 of the RLD record are:
