RetroLinker
Linker for several 8-bit, 16-bit and 32-bit formats
|
Represents a block of data in the file, also an end-of-block object is an instance of this type. More...
#include <pcos.h>
Public Types | |
enum | block_type : uint8_t { TYPE_LOAD = 3 , TYPE_OFFSET_RELOCATION = 4 , TYPE_SEGMENT_RELOCATION = 5 , TYPE_END = 6 } |
Every block has a type field. More... | |
Public Member Functions | |
virtual uint16_t | GetLength () const |
The length of the block, not including the type and length fields. | |
virtual void | ReadFile (Linker::Reader &rd, uint16_t length) |
Fills the contents of this object. | |
virtual void | WriteFile (Linker::Writer &wr) const |
Writes the contents of the block to the file, including the type and length fields. | |
virtual std::unique_ptr< Dumper::Region > | MakeRegion (std::string name, offset_t offset, unsigned display_width) const |
Creates a region for displaying the block contents. | |
virtual void | AddFields (Dumper::Region ®ion, const CMDFormat &module) const |
Adds block specific fields. | |
virtual void | DumpContents (Dumper::Dumper &dump, offset_t file_offset, const CMDFormat &module) const |
Display block specific contents. | |
void | Dump (Dumper::Dumper &dump, offset_t file_offset, const CMDFormat &module) const |
Displays the entire block. | |
MemoryBlock (int type) | |
Static Public Member Functions | |
static std::unique_ptr< MemoryBlock > | ReadFile (Linker::Reader &rd) |
Parses a block, including the type and length fields. | |
Public Attributes | |
block_type | type |
The type of the block. | |
Represents a block of data in the file, also an end-of-block object is an instance of this type.
enum PCOS::CMDFormat::MemoryBlock::block_type : uint8_t |
|
virtual |
Adds block specific fields.
Reimplemented in PCOS::CMDFormat::LoadBlock, and PCOS::CMDFormat::RelocationBlock.
|
virtual |
Display block specific contents.
Reimplemented in PCOS::CMDFormat::RelocationBlock.
|
virtual |
The length of the block, not including the type and length fields.
Reimplemented in PCOS::CMDFormat::LoadBlock, PCOS::CMDFormat::RelocationBlock, and PCOS::CMDFormat::UnknownBlock.
|
virtual |
Creates a region for displaying the block contents.
Reimplemented in PCOS::CMDFormat::LoadBlock, and PCOS::CMDFormat::UnknownBlock.
|
virtual |
Fills the contents of this object.
length | The number of bytes in the block, not including the type and length fields |
Reimplemented in PCOS::CMDFormat::LoadBlock, PCOS::CMDFormat::RelocationBlock, and PCOS::CMDFormat::UnknownBlock.
|
virtual |
Writes the contents of the block to the file, including the type and length fields.
Reimplemented in PCOS::CMDFormat::LoadBlock, PCOS::CMDFormat::RelocationBlock, and PCOS::CMDFormat::UnknownBlock.