diff --git a/src/core/device_memory.h b/src/core/device_memory.h index cc7bda070..ff66e202d 100644 --- a/src/core/device_memory.h +++ b/src/core/device_memory.h @@ -28,12 +28,16 @@ public: ~DeviceMemory(); template - constexpr PAddr GetPhysicalAddr(T* ptr) { + PAddr GetPhysicalAddr(const T* ptr) const { return (reinterpret_cast(ptr) - reinterpret_cast(buffer.data())) + DramMemoryMap::Base; } - constexpr u8* GetPointer(PAddr addr) { + u8* GetPointer(PAddr addr) { + return buffer.data() + (addr - DramMemoryMap::Base); + } + + const u8* GetPointer(PAddr addr) const { return buffer.data() + (addr - DramMemoryMap::Base); }