RetroLinker
Linker for several 8-bit, 16-bit and 32-bit formats
|
(FlexOS 286 only) The fast loading group (unimplemented) More...
#include <cpm86.h>
Classes | |
struct | ldt_descriptor |
Public Member Functions | |
void | Clear () override |
uint16_t | GetSizeParas (const CPM86Format &module) const override |
Returns the size of the segment group in 16-byte paragraphs. | |
void | WriteData (Linker::Writer &wr, const CPM86Format &module) override |
void | ReadData (Linker::Reader &rd, const CPM86Format &module) override |
Public Member Functions inherited from DigitalResearch::CPM86Format::Descriptor | |
void | ReadDescriptor (Linker::Reader &rd) |
void | WriteDescriptor (Linker::Writer &wr, const CPM86Format &module) |
std::string | GetDefaultName () |
Public Attributes | |
uint16_t | maximum_entries = 0 |
Maximum allowed LDT entries. | |
uint16_t | first_free_entry = 0 |
First free entry in LDT after last filled entry. | |
uint16_t | index_base = 0 |
The index base. | |
uint16_t | first_used_index = 0 |
First used index. | |
std::vector< ldt_descriptor > | ldt |
Public Attributes inherited from DigitalResearch::CPM86Format::Descriptor | |
group_type | type = Undefined |
The type of the group. | |
uint16_t | size_paras = 0 |
Size of the group, as stored on disk, in 16-byte paragraphs. | |
uint16_t | load_segment = 0 |
Load segment address of the group, or 0 if it can be relocated. Not to be used outside of system drivers. | |
uint16_t | min_size_paras = 0 |
Minimum required size of the group, when loaded into memory, in 16-byte paragraphs. | |
uint16_t | max_size_paras = 0 |
Maximum required size of the group, when loaded into memory, in 16-byte paragraphs. | |
uint32_t | offset = 0 |
Offset to image in file. | |
std::shared_ptr< Linker::Writable > | image = nullptr |
The actual binary image of the group. | |
bool | attach_zero_page = false |
Set to true if a supplementary 256 bytes of zeros are required. When generating image, it is easier to just insert 256 bytes of 0 instead of modifying the image. This is not required when storing a file loaded from disk. | |
Additional Inherited Members | |
Public Types inherited from DigitalResearch::CPM86Format::Descriptor | |
enum | group_type { Undefined , Code = 1 , Data , Extra , Stack , Auxiliary1 , Auxiliary2 , Auxiliary3 , Auxiliary4 , SharedCode , Fixups = Auxiliary4 , FastLoad = 0xFE , Libraries = 0xFF , ActualAuxiliary4 = 0x100 | Auxiliary4 , ActualFixups = 0x200 | Fixups } |
Group type, stored as the first byte of the descriptor. More... | |
(FlexOS 286 only) The fast loading group (unimplemented)
|
overridevirtual |
Reimplemented from DigitalResearch::CPM86Format::Descriptor.
|
overridevirtual |
Returns the size of the segment group in 16-byte paragraphs.
Reimplemented from DigitalResearch::CPM86Format::Descriptor.
|
overridevirtual |
Reimplemented from DigitalResearch::CPM86Format::Descriptor.
|
overridevirtual |
Reimplemented from DigitalResearch::CPM86Format::Descriptor.