diff options
author | Karel Kočí <cynerd@email.cz> | 2017-11-19 21:23:04 +0100 |
---|---|---|
committer | Karel Kočí <cynerd@email.cz> | 2017-11-19 21:23:04 +0100 |
commit | f0ad502e4651243d6a96194b3393bd460c0f7fc9 (patch) | |
tree | 4f912c24b5943bd93b5a3378df75f9611de6779b /qtmips_machine/programloader.h | |
parent | 2c6562fa78e884d66b8c2a306f020101e8803f2e (diff) | |
download | qtmips-f0ad502e4651243d6a96194b3393bd460c0f7fc9.tar.gz qtmips-f0ad502e4651243d6a96194b3393bd460c0f7fc9.tar.bz2 qtmips-f0ad502e4651243d6a96194b3393bd460c0f7fc9.zip |
Another huge pile of work for about two months
Well I should commit every change instead of this madness. I am not
documenting changes as all this is just improvements and implementation
progression.
Diffstat (limited to 'qtmips_machine/programloader.h')
-rw-r--r-- | qtmips_machine/programloader.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/qtmips_machine/programloader.h b/qtmips_machine/programloader.h index 4d722d2..7da241c 100644 --- a/qtmips_machine/programloader.h +++ b/qtmips_machine/programloader.h @@ -6,16 +6,18 @@ #include <gelf.h> #include <cstdint> #include <qvector.h> +#include <qstring.h> +#include "memory.h" class ProgramLoader { public: - ProgramLoader(char *file); + ProgramLoader(const char *file); + ProgramLoader(QString file); ~ProgramLoader(); - size_t get_nsec(); // Returns number of loadable sections - std::uint32_t get_address(size_t sec); // Get target address for given section - QVector<std::uint8_t> get_data(size_t sec); // Returns bytes of given section + void to_memory(Memory *mem); // Writes all loaded sections to memory + std::uint32_t end(); // Return address after which there is no more code for sure private: int fd; Elf *elf; |