diff options
Diffstat (limited to 'src/core/mem_map_funcs.cpp')
| -rw-r--r-- | src/core/mem_map_funcs.cpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/src/core/mem_map_funcs.cpp b/src/core/mem_map_funcs.cpp index 40d9dab3a..5ab1b6e92 100644 --- a/src/core/mem_map_funcs.cpp +++ b/src/core/mem_map_funcs.cpp | |||
| @@ -40,6 +40,10 @@ inline void _Read(T &var, const u32 addr) { | |||
| 40 | } else if ((vaddr & 0xFF000000) == 0x10000000 || (vaddr & 0xFF000000) == 0x1E000000) { | 40 | } else if ((vaddr & 0xFF000000) == 0x10000000 || (vaddr & 0xFF000000) == 0x1E000000) { |
| 41 | HW::Read<T>(var, vaddr); | 41 | HW::Read<T>(var, vaddr); |
| 42 | 42 | ||
| 43 | // FCRAM - GSP heap | ||
| 44 | } else if ((vaddr > HEAP_GSP_VADDR) && (vaddr < HEAP_GSP_VADDR_END)) { | ||
| 45 | var = *((const T*)&g_heap_gsp[vaddr & HEAP_GSP_MASK]); | ||
| 46 | |||
| 43 | // FCRAM - application heap | 47 | // FCRAM - application heap |
| 44 | } else if ((vaddr > HEAP_VADDR) && (vaddr < HEAP_VADDR_END)) { | 48 | } else if ((vaddr > HEAP_VADDR) && (vaddr < HEAP_VADDR_END)) { |
| 45 | var = *((const T*)&g_heap[vaddr & HEAP_MASK]); | 49 | var = *((const T*)&g_heap[vaddr & HEAP_MASK]); |
| @@ -68,8 +72,8 @@ inline void _Write(u32 addr, const T data) { | |||
| 68 | HW::Write<T>(vaddr, data); | 72 | HW::Write<T>(vaddr, data); |
| 69 | 73 | ||
| 70 | // FCRAM - GSP heap | 74 | // FCRAM - GSP heap |
| 71 | //} else if ((vaddr > HEAP_GSP_VADDR) && (vaddr < HEAP_VADDR_GSP_END)) { | 75 | } else if ((vaddr > HEAP_GSP_VADDR) && (vaddr < HEAP_GSP_VADDR_END)) { |
| 72 | // *(T*)&g_heap_gsp[vaddr & FCRAM_MASK] = data; | 76 | *(T*)&g_heap_gsp[vaddr & HEAP_GSP_MASK] = data; |
| 73 | 77 | ||
| 74 | // FCRAM - application heap | 78 | // FCRAM - application heap |
| 75 | } else if ((vaddr > HEAP_VADDR) && (vaddr < HEAP_VADDR_END)) { | 79 | } else if ((vaddr > HEAP_VADDR) && (vaddr < HEAP_VADDR_END)) { |
| @@ -98,8 +102,12 @@ inline void _Write(u32 addr, const T data) { | |||
| 98 | u8 *GetPointer(const u32 addr) { | 102 | u8 *GetPointer(const u32 addr) { |
| 99 | const u32 vaddr = _AddressPhysicalToVirtual(addr); | 103 | const u32 vaddr = _AddressPhysicalToVirtual(addr); |
| 100 | 104 | ||
| 105 | // FCRAM - GSP heap | ||
| 106 | if ((vaddr > HEAP_GSP_VADDR) && (vaddr < HEAP_GSP_VADDR_END)) { | ||
| 107 | return g_heap_gsp + (vaddr & HEAP_GSP_MASK); | ||
| 108 | |||
| 101 | // FCRAM - application heap | 109 | // FCRAM - application heap |
| 102 | if ((vaddr > HEAP_VADDR) && (vaddr < HEAP_VADDR_END)) { | 110 | } else if ((vaddr > HEAP_VADDR) && (vaddr < HEAP_VADDR_END)) { |
| 103 | return g_heap + (vaddr & HEAP_MASK); | 111 | return g_heap + (vaddr & HEAP_MASK); |
| 104 | 112 | ||
| 105 | } else { | 113 | } else { |