RetroLinker
Linker for several 8-bit, 16-bit and 32-bit formats
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Protected Member Functions | List of all members
AS86Obj::AS86ObjFormat Class Reference

Object format of Introl-C, output format for as86, used as an output by Bruce's C compiler from the dev86 package. More...

#include <as86obj.h>

Inheritance diagram for AS86Obj::AS86ObjFormat:
Linker::InputFormat Linker::Format Linker::Image

Classes

class  ByteCode
 
class  ChangeSegment
 
class  Module
 
class  RawBytes
 
class  RelocatorSize
 
struct  segment_size_list
 
class  SimpleRelocator
 
class  SkipBytes
 
class  Symbol
 
class  SymbolRelocator
 

Public Types

enum  cpu_type { CPU_I8086 = 0xA086 , CPU_I80386 = 0xA386 , CPU_MC6809 = 0x5331 }
 

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.
 
void GenerateModule (Linker::Module &module) const override
 Loads the information into a module object, a convenience method when there is a single module generated.
 
- Public Member Functions inherited from Linker::InputFormat
virtual void SetupOptions (std::shared_ptr< OutputFormat > format)
 Initializes the reader for linking purposes.
 
virtual void ProduceModule (ModuleCollector &linker, Reader &rd, std::string file_name)
 Reads a file and loads the information into a module object.
 
virtual void ProduceModule (Module &module, Reader &rd)
 Reads a file and loads the information into a module object, a convenience method when there is a single module generated.
 
virtual void GenerateModule (ModuleCollector &linker, std::string file_name, bool is_library=false) const
 Loads the information into a module object.
 
virtual bool FormatProvidesSegmentation () const
 Whether the format enables multiple x86 segments.
 
virtual bool FormatRequiresDataStreamFix () const
 Whether the generated file might contain bugs that require fixing.
 
virtual bool FormatProvidesResources () const
 Whether the format supports resources.
 
virtual bool FormatProvidesLibraries () const
 Whether the format enables importing/exporting libraries.
 
- 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 ImageSize () const override
 Retrieves size of stored data.
 
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.
 

Static Public Member Functions

static constexpr int GetSize (int size)
 

Public Attributes

offset_t file_size = offset_t(-1)
 
cpu_type cpu = cpu_type(0)
 
std::vector< Modulemodules
 
- Public Attributes inherited from Linker::Format
offset_t file_offset
 

Static Protected Member Functions

static std::string GetDefaultSectionName (unsigned index)
 
static std::shared_ptr< Linker::SectionGetDefaultSection (unsigned index)
 

Detailed Description

Object format of Introl-C, output format for as86, used as an output by Bruce's C compiler from the dev86 package.

Member Function Documentation

◆ Dump()

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

Display file contents in a nice manner.

Reimplemented from Linker::Format.

◆ GenerateModule()

void AS86ObjFormat::GenerateModule ( Linker::Module & module) const
overridevirtual

Loads the information into a module object, a convenience method when there is a single module generated.

Reimplemented from Linker::InputFormat.

◆ ImageSize()

offset_t AS86ObjFormat::ImageSize ( ) const
overridevirtual

Retrieves size of stored data.

Implements Linker::Image.

◆ ReadFile()

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

Loads file into memory.

Implements Linker::Format.

◆ WriteFile()

offset_t AS86ObjFormat::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: