RetroLinker
Linker for several 8-bit, 16-bit and 32-bit formats
|
Public Types | |
enum | relocation_type_t { RelocationLowByte = 0 , RelocationOffset16 = 1 , RelocationSegment = 2 , RelocationPointer32 = 3 , RelocationHighByte = 4 , RelocationOffset16_LoaderResolved = FlagTIS | 5 , RelocationOffset32_PharLap = FlagPharLap | 5 , RelocationPointer48_PharLap = 6 , RelocationOffset32 = 9 , RelocationPointer48 = 11 , RelocationOffset32_LoaderResolved = 13 } |
Types for the value that needs to be relocated. More... | |
Public Member Functions | |
uint16_t | GetSize (OMF86Format *omf, bool is32bit) const |
void | Write (OMF86Format *omf, ChecksumWriter &wr, bool is32bit) const |
void | CalculateValues (OMF86Format *omf, Module *mod) |
void | ResolveReferences (OMF86Format *omf, Module *mod) |
Static Public Member Functions | |
static Fixup | Read (OMF86Format *omf, Linker::Reader &rd, uint8_t leading_data_byte, bool is32bit) |
Public Attributes | |
bool | segment_relative |
Set if segment relative, self relative otherwise. | |
relocation_type_t | type |
The type of the relocation value. | |
uint16_t | offset |
Offset to value to be relocated, relative to the latest data block. | |
Reference | ref |
Reference of this relocation. | |
Types for the value that needs to be relocated.