RetroLinker
Linker for several 8-bit, 16-bit and 32-bit formats
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Public Attributes | List of all members
EPOC::SymbianFormat Class Reference
Inheritance diagram for EPOC::SymbianFormat:
Linker::Format Linker::Image

Classes

struct  ImportBlock
 
struct  Relocation
 
struct  RelocationBlock
 
struct  RelocationSection
 

Public Types

enum  executable_type { KDirectFileStoreLayoutUid = 0x10000037 , KPermanentFileStoreLayoutUid = 0x10000050 , KDynamicLibraryUid = 0x10000079 , KExecutableImageUid = 0x1000007A }
 
enum  application_type {
  _OPLObjectModule = 0x10000073 , _OPLApplication = 0x10000074 , KUidAppDllDoc = 0x10003A12 , KUidAppInfoFile = 0x10003A38 ,
  _OPLExtensions = 0x1000005D , _Application = 0x1000006C , KSharedLibraryUid = 0x1000008D , KLogicalDeviceDriverUid8 = 0x100000AE ,
  KLogicalDeviceDriverUid16 = 0x100000AF , KUidApp = 0x100039CE , KPhysicalDeviceDriverUid16 = 0x100039D0 , KPhysicalDeviceDriverUid8 = 0x100000AD ,
  KMachineConfigurationUid = 0x100000F4 , KLocaleDllUid16 = 0x100039E6 , KLocaleDllUid8 = 0x100000C3 , KKeyboardUid = 0x100000DB ,
  KEka1EntryStubUid = 0x101FDF0F , KKeyboardDataUid16 = 0x100039E0 , KKeyboardDataUid8 = 0x100000DC , KKeyboardTranUid16 = 0x100039E1 ,
  KKeyboardTranUid8 = 0x100000DD , KConsoleDllUid16 = 0x100039E7 , KConsoleDllUid8 = 0x100000C5 , KSystemStartupModeKey = 0x10204BB5 ,
  KSystemEmulatorOrientationKey = 0x10204BB6 , KServerProcessUid = 0x1000008C , KFileSystemUid = 0x1000008F , KFileServerUid = 0x100000BB ,
  KLocalFileSystemUid = 0x100000D6 , KFileServerDllUid = 0x100000BD
}
 
enum  cpu_type {
  ECpuUnknown = 0 , ECpuX86 = 0x1000 , ECpuArmV4 = 0x2000 , ECpuArmV5 = 0x2001 ,
  ECpuArmV6 = 0x2002 , ECpuMCore = 0x4000
}
 
enum  flags_type
 
enum  capability_type
 

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.
 
- Public Member Functions inherited from Linker::Format
 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.
 
- Public Member Functions inherited from Linker::Image
virtual std::shared_ptr< const ActualImageAsImage () const
 Retrieves a randomly accessible image.
 
std::shared_ptr< ActualImageAsImage ()
 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::Imagecode
 
std::shared_ptr< Linker::Imagedata
 
std::vector< ImportBlockdll_reference_table
 
uint32_t dll_reference_table_size = 0
 
RelocationSection code_relocations
 
RelocationSection data_relocations
 
- Public Attributes inherited from Linker::Format
offset_t file_offset
 

Member Function Documentation

◆ Dump()

void SymbianFormat::Dump ( Dumper::Dumper & dump) const
overridevirtual

Display file contents in a nice manner.

Reimplemented from Linker::Format.

◆ ImageSize()

offset_t SymbianFormat::ImageSize ( ) const
overridevirtual

Retrieves size of stored data.

Reimplemented from Linker::Format.

◆ ReadFile()

void SymbianFormat::ReadFile ( Linker::Reader & rd)
overridevirtual

Loads file into memory.

Implements Linker::Format.

◆ WriteFile()

offset_t SymbianFormat::WriteFile ( Linker::Writer & wr) const
overridevirtual

Stores data in memory to file.

Implements Linker::Format.


The documentation for this class was generated from the following files: