RetroLinker
Linker for several 8-bit, 16-bit and 32-bit formats
|
Classes | |
struct | ImportBlock |
struct | Relocation |
struct | RelocationBlock |
struct | RelocationSection |
Public Member Functions | |
void | ReadFile (Linker::Reader &rd) override |
Loads file into memory. | |
offset_t | ImageSize () const override |
Retrieves size of stored data. | |
offset_t | WriteFile (Linker::Writer &wr) const override |
Stores data in memory to file. | |
void | Dump (Dumper::Dumper &dump) const override |
Display file contents in a nice manner. | |
![]() | |
Format (offset_t file_offset=0) | |
virtual void | Clear () |
Resets all fields to their default values, deallocate memory. | |
offset_t | WriteFile (Writer &wr, offset_t count, offset_t offset=0) const override |
Writes data of non-zero filled sections. | |
![]() | |
virtual std::shared_ptr< const ActualImage > | AsImage () const |
Retrieves a randomly accessible image. | |
std::shared_ptr< ActualImage > | AsImage () |
Retrieves a randomly accessible image. | |
Public Attributes | ||
executable_type | uid1 = executable_type(0) | |
application_type | uid2 = application_type(0) | |
uint32_t | uid3 = 0 | |
uint32_t | uid_checksum = 0 | |
bool | new_format = true | |
cpu_type | cpu = ECpuUnknown | |
uint32_t | header_crc = 0 | |
union { | ||
uint32_t code_checksum | ||
uint32_t module_version | ||
}; | ||
union { | ||
uint32_t data_checksum | ||
uint32_t compression_type | ||
}; | ||
uint32_t | tool_version | |
uint64_t | timestamp | |
flags_type | flags = flags_type(0) | |
uint32_t | heap_size_min = 0 | |
uint32_t | heap_size_max = 0 | |
uint32_t | stack_size = 0 | |
uint32_t | bss_size = 0 | |
uint32_t | entry_point = 0 | |
uint32_t | code_address = 0 | |
uint32_t | data_address = 0 | |
uint32_t | export_table_offset = 0 | |
uint32_t | import_table_offset = 0 | |
uint32_t | code_offset = 0 | |
uint32_t | data_offset = 0 | |
uint32_t | import_offset = 0 | |
uint32_t | code_relocation_offset = 0 | |
uint32_t | data_relocation_offset = 0 | |
uint32_t | process_priority = 0 | |
uint32_t | uncompressed_size = 0 | |
uint32_t | secure_id = 0 | |
uint32_t | vendor_id = 0 | |
std::array< capability_type, 2 > | capabilities | |
uint32_t | exception_descriptor = 0 | |
uint8_t | export_description_type = 0 | |
std::vector< uint8_t > | export_description | |
std::shared_ptr< Linker::Image > | code | |
std::shared_ptr< Linker::Image > | data | |
std::vector< ImportBlock > | dll_reference_table | |
uint32_t | dll_reference_table_size = 0 | |
RelocationSection | code_relocations | |
RelocationSection | data_relocations | |
![]() | ||
offset_t | file_offset | |
|
overridevirtual |
Display file contents in a nice manner.
Reimplemented from Linker::Format.
|
overridevirtual |
Retrieves size of stored data.
Reimplemented from Linker::Format.
|
overridevirtual |
Loads file into memory.
Implements Linker::Format.
|
overridevirtual |
Stores data in memory to file.
Implements Linker::Format.