diff --git a/src/core/memory.cpp b/src/core/memory.cpp index d438c044..0a6df093 100644 --- a/src/core/memory.cpp +++ b/src/core/memory.cpp @@ -390,7 +390,7 @@ void Memory::mapPhysicalMemory(u32 vaddr, u32 paddr, s32 pages, bool r, bool w, hostPtr = fcram + paddr; // FIXME: FCRAM doesn't actually start from physical address 0, but from 0x20000000 if (useFastmem) { - addFastmemView(vaddr, FASTMEM_FCRAM_OFFSET, usize(pages) * pageSize, w); + addFastmemView(vaddr, FASTMEM_FCRAM_OFFSET + paddr, usize(pages) * pageSize, w); } } else if (paddr >= VirtualAddrs::DSPMemStart && paddr < VirtualAddrs::DSPMemStart + DSP_RAM_SIZE) { hostPtr = dspRam + (paddr - VirtualAddrs::DSPMemStart);