RetroLinker
Linker for several 8-bit, 16-bit and 32-bit formats
Loading...
Searching...
No Matches
geos.h
1#ifndef GEOS_H
2#define GEOS_H
3
4#include "../common.h"
5#include "../dumper/dumper.h"
6#include "../linker/reader.h"
7#include "../linker/segment_manager.h"
8#include "../linker/writer.h"
9
10/* TODO: unimplemented */
11
12namespace GEOS
13{
17 class GeodeFormat : public virtual Linker::SegmentManager
18 {
19 public:
20 void ReadFile(Linker::Reader& rd) override;
22 offset_t WriteFile(Linker::Writer& wr) const override;
23 void Dump(Dumper::Dumper& dump) const override;
24 /* TODO */
25
26 bool FormatSupportsSegmentation() const override;
27
28 bool FormatIs16bit() const override;
29
30 bool FormatIsProtectedMode() const override;
31
33 std::string GetDefaultExtension(Linker::Module& module, std::string filename) const override;
34 };
35}
36
37#endif /* GEOS_H */
An abstract interface that separates structure and presentation of the data inside a file.
Definition dumper.h:586
Berkeley Softworks GEOS or GeoWorks Ensemble or NewDeal Office or Breadbox Ensemble Geode file format...
Definition geos.h:18
bool FormatIsProtectedMode() const override
Whether the format is in protected mode or not (x86 only)
Definition geos.cc:20
void ReadFile(Linker::Reader &rd) override
Loads file into memory.
Definition geos.cc:25
bool FormatSupportsSegmentation() const override
Whether the format supports multiple segments.
Definition geos.cc:9
offset_t WriteFile(Linker::Writer &wr) const override
Stores data in memory to file.
Definition geos.cc:30
std::string GetDefaultExtension(Linker::Module &module, std::string filename) const override
Appends a default extension to the filename.
Definition geos.cc:48
void Dump(Dumper::Dumper &dump) const override
Display file contents in a nice manner.
Definition geos.cc:37
bool FormatIs16bit() const override
Whether the format is 16-bit or not.
Definition geos.cc:15
offset_t WriteFile(Writer &wr) const override=0
Stores data in memory to file.
Encodes an object module file as a collection of sections, symbols and relocations.
Definition module.h:24
virtual std::string GetDefaultExtension(Module &module, std::string filename) const
Appends a default extension to the filename.
A helper class, encapsulating functionality needed to import binary data.
Definition reader.h:16
A helper class to collect sections into segments.
Definition segment_manager.h:32
A helper class, encapsulating functionality needed to export binary data.
Definition writer.h:15