summaryrefslogtreecommitdiff
path: root/src/utils/Decompressor.cpp
diff options
context:
space:
mode:
authorKiritoDv <kiritodev01@gmail.com>2024-03-12 19:09:40 -0600
committerKiritoDv <kiritodev01@gmail.com>2024-03-12 19:09:40 -0600
commitf1781973bc7bd3fc9b9cc32b4d631f9e1bbc9368 (patch)
treeab8315202c014a6a8de2aeca500bc2cdfa5ea723 /src/utils/Decompressor.cpp
parentc3f932e72122dee19fc84af5aa46a2713aa1086b (diff)
Added support for assets with vram offsets
Diffstat (limited to 'src/utils/Decompressor.cpp')
-rw-r--r--src/utils/Decompressor.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/utils/Decompressor.cpp b/src/utils/Decompressor.cpp
index 6d41910..3a2525e 100644
--- a/src/utils/Decompressor.cpp
+++ b/src/utils/Decompressor.cpp
@@ -91,6 +91,16 @@ uint32_t Decompressor::TranslateAddr(uint32_t addr, bool baseAddress){
return segment.value() + (!baseAddress ? SEGMENT_OFFSET(addr) : 0);
}
+ const auto vramEntry = Companion::Instance->GetCurrentVRAM();
+
+ if(vramEntry.has_value()){
+ const auto vram = vramEntry.value();
+
+ if(addr >= vram.addr){
+ return vram.offset + (addr - vram.addr);
+ }
+ }
+
return addr;
}