mirror of
https://github.com/wiiu-env/WUMSLoader.git
synced 2026-09-27 04:17:03 -05:00
Support for WUMS 0.3.1
This commit is contained in:
@@ -148,22 +148,22 @@ public:
|
||||
return this->export_name;
|
||||
}
|
||||
|
||||
[[nodiscard]] bool isSkipEntrypoint() const {
|
||||
return this->skipEntrypoint;
|
||||
}
|
||||
|
||||
[[nodiscard]] bool isInitBeforeRelocationDoneHook() const {
|
||||
return this->initBeforeRelocationDoneHook;
|
||||
}
|
||||
|
||||
void setSkipEntrypoint(bool value) {
|
||||
this->skipEntrypoint = value;
|
||||
}
|
||||
|
||||
void setInitBeforeRelocationDoneHook(bool value) {
|
||||
this->initBeforeRelocationDoneHook = value;
|
||||
}
|
||||
|
||||
[[nodiscard]] bool isSkipInitFini() const {
|
||||
return this->skipInitFini;
|
||||
}
|
||||
|
||||
void setSkipInitFini(bool value) {
|
||||
this->skipInitFini = value;
|
||||
}
|
||||
|
||||
bool relocationsDone = false;
|
||||
private:
|
||||
std::vector<std::shared_ptr<RelocationData>> relocation_data_list;
|
||||
@@ -181,6 +181,6 @@ private:
|
||||
uint32_t startAddress = 0;
|
||||
uint32_t endAddress = 0;
|
||||
uint32_t entrypoint = 0;
|
||||
bool skipEntrypoint = false;
|
||||
bool initBeforeRelocationDoneHook = false;
|
||||
bool skipInitFini = false;
|
||||
};
|
||||
|
||||
@@ -186,12 +186,12 @@ ModuleDataFactory::load(const std::string &path, uint32_t *destination_address_p
|
||||
if (key == "export_name") {
|
||||
DEBUG_FUNCTION_LINE("export_name = %s", value.c_str());
|
||||
moduleData->setExportName(value);
|
||||
} else if (key == "skipEntrypoint") {
|
||||
} else if (key == "skipInitFini") {
|
||||
if (value == "true") {
|
||||
DEBUG_FUNCTION_LINE("skipEntrypoint = %s", value.c_str());
|
||||
moduleData->setSkipEntrypoint(true);
|
||||
DEBUG_FUNCTION_LINE("skipInitFini = %s", value.c_str());
|
||||
moduleData->setSkipInitFini(true);
|
||||
} else {
|
||||
moduleData->setSkipEntrypoint(false);
|
||||
moduleData->setSkipInitFini(false);
|
||||
}
|
||||
} else if (key == "initBeforeRelocationDoneHook") {
|
||||
if (value == "true") {
|
||||
|
||||
@@ -92,7 +92,7 @@ bool ModuleDataPersistence::saveModuleData(module_information_t *moduleInformati
|
||||
module_data->startAddress = module->getStartAddress();
|
||||
module_data->endAddress = module->getEndAddress();
|
||||
module_data->entrypoint = module->getEntrypoint();
|
||||
module_data->skipEntrypoint = module->isSkipEntrypoint();
|
||||
module_data->skipInitFini = module->isSkipInitFini();
|
||||
module_data->initBeforeRelocationDoneHook = module->isInitBeforeRelocationDoneHook();
|
||||
|
||||
moduleInformation->number_used_modules++;
|
||||
@@ -127,7 +127,7 @@ std::vector<std::shared_ptr<ModuleData>> ModuleDataPersistence::loadModuleData(m
|
||||
moduleData->setStartAddress(module_data->startAddress);
|
||||
moduleData->setEndAddress(module_data->endAddress);
|
||||
moduleData->setExportName(module_data->module_export_name);
|
||||
moduleData->setSkipEntrypoint(module_data->skipEntrypoint);
|
||||
moduleData->setSkipInitFini(module_data->skipInitFini);
|
||||
moduleData->setInitBeforeRelocationDoneHook(module_data->initBeforeRelocationDoneHook);
|
||||
|
||||
for (auto &export_entrie: module_data->export_entries) {
|
||||
|
||||
Reference in New Issue
Block a user