RetroLinker
Linker for several 8-bit, 16-bit and 32-bit formats
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
O65::O65Format::Module::relocation Struct Reference

Relocation entries. More...

#include <o65.h>

Public Member Functions

 relocation (uint8_t type_segment, offset_t value=0, offset_t symbol_index=0)
 

Public Attributes

uint8_t type_segment
 The type (bits 4 to 7) and segment (bits 0 to 3) of the relocation.
 
offset_t symbol_index
 (optional) For undefined references (RELOC_SEGMENT_UNDEFINED), the index of the external symbol in the undefined_symbols
 
offset_t value
 (optional) The unrelocated parts of the reference
 

Static Public Attributes

static const int RELOC_TYPE_MASK = 0xE0
 The bitmask in the relocation type corresponding to the relocation type.
 
static const int RELOC_TYPE_LOW = 0x20
 Low 8 bits of a value.
 
static const int RELOC_TYPE_HIGH = 0x40
 High 8 bits (bits 8 to 15) of a value.
 
static const int RELOC_TYPE_WORD = 0x80
 16-bit value
 
static const int RELOC_TYPE_SEG = 0xA0
 High 8 bits (bits 16 to 23) of a far address.
 
static const int RELOC_TYPE_SEGADDR = 0xC0
 24-bit address
 
static const int RELOC_SEGMENT_MASK = 0x1F
 The bitmask in the relocation type corresponding to the segment number.
 
static const int RELOC_SEGMENT_UNDEFINED = 0x00
 Reference does not belong to a segment, instead it is an external reference.
 
static const int RELOC_SEGMENT_ABSOLUTE = 0x01
 Reference is a global value.
 
static const int RELOC_SEGMENT_TEXT = 0x02
 Reference belongs to the text segment.
 
static const int RELOC_SEGMENT_DATA = 0x03
 Reference belongs to the data segment.
 
static const int RELOC_SEGMENT_BSS = 0x04
 Reference belongs to the bss segment.
 
static const int RELOC_SEGMENT_ZERO = 0x05
 Reference belongs to the zero segment (6502/65c816 specific)
 

Detailed Description

Relocation entries.


The documentation for this struct was generated from the following file: