From f06ed7388df76f09d8fbda765acea5d2923553d4 Mon Sep 17 00:00:00 2001 From: MegaMech Date: Fri, 8 Mar 2024 13:24:58 -0700 Subject: Detect Compression Type and Improve Yaml Structure (#21) * Auto detect mio0 * Altered decompressor * Fix bug * Bug fix * fix * debugging * fix debug * Remove logging * Fix spacing * node change * Cleanup * Track compression offset using global var * Implementation * Renames * Simplification * Fixes * Fix debugging output * yaml config segments uses array style * Fix to_hex zero fill * Bug fixes --------- Co-authored-by: = <=> --- src/factories/VtxFactory.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/factories/VtxFactory.cpp') diff --git a/src/factories/VtxFactory.cpp b/src/factories/VtxFactory.cpp index 7b74681..d506a39 100644 --- a/src/factories/VtxFactory.cpp +++ b/src/factories/VtxFactory.cpp @@ -1,4 +1,5 @@ #include "VtxFactory.h" +#include "spdlog/spdlog.h" #include "Companion.h" #include "utils/Decompressor.h" @@ -20,7 +21,11 @@ void VtxHeaderExporter::Export(std::ostream &write, std::shared_ptr void VtxCodeExporter::Export(std::ostream &write, std::shared_ptr raw, std::string& entryName, YAML::Node &node, std::string* replacement ) { auto vtx = std::static_pointer_cast(raw)->mVtxs; const auto symbol = GetSafeNode(node, "symbol", entryName); - const auto offset = GetSafeNode(node, "offset"); + auto offset = GetSafeNode(node, "offset"); + + if (IS_SEGMENTED(offset)) { + offset = SEGMENT_OFFSET(offset); + } if (Companion::Instance->IsDebug()) { write << "// 0x" << std::hex << std::uppercase << offset << "\n"; -- cgit v1.2.3