summaryrefslogtreecommitdiff
path: root/src/core/mem_map.h
diff options
context:
space:
mode:
authorGravatar bunnei2014-04-27 12:40:31 -0400
committerGravatar bunnei2014-04-27 12:40:31 -0400
commitb2a6ad52f4a059b66e2a0ea12813ce968fa04277 (patch)
treeaff9bf7cdb3c4a620708f7c9911a0d7b1c126153 /src/core/mem_map.h
parentadded code to LCD modules keep track of framebuffer location in FCRAM or VRAM (diff)
downloadyuzu-b2a6ad52f4a059b66e2a0ea12813ce968fa04277.tar.gz
yuzu-b2a6ad52f4a059b66e2a0ea12813ce968fa04277.tar.xz
yuzu-b2a6ad52f4a059b66e2a0ea12813ce968fa04277.zip
added helper functions to mem_map to convert physical addresses to virtual addresses
Diffstat (limited to 'src/core/mem_map.h')
-rw-r--r--src/core/mem_map.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/core/mem_map.h b/src/core/mem_map.h
index 1a49cc98d..c744e377e 100644
--- a/src/core/mem_map.h
+++ b/src/core/mem_map.h
@@ -53,7 +53,9 @@ enum {
53 HARDWARE_IO_PADDR_END = (HARDWARE_IO_PADDR + HARDWARE_IO_SIZE), 53 HARDWARE_IO_PADDR_END = (HARDWARE_IO_PADDR + HARDWARE_IO_SIZE),
54 HARDWARE_IO_VADDR_END = (HARDWARE_IO_VADDR + HARDWARE_IO_SIZE), 54 HARDWARE_IO_VADDR_END = (HARDWARE_IO_VADDR + HARDWARE_IO_SIZE),
55 55
56 VRAM_PADDR = 0x18000000,
56 VRAM_VADDR = 0x1F000000, 57 VRAM_VADDR = 0x1F000000,
58 VRAM_PADDR_END = (VRAM_PADDR + VRAM_SIZE),
57 VRAM_VADDR_END = (VRAM_VADDR + VRAM_SIZE), 59 VRAM_VADDR_END = (VRAM_VADDR + VRAM_SIZE),
58 60
59 SCRATCHPAD_VADDR_END = 0x10000000, 61 SCRATCHPAD_VADDR_END = 0x10000000,
@@ -141,4 +143,16 @@ inline const char* GetCharPointer(const u32 address) {
141 return (const char *)GetPointer(address); 143 return (const char *)GetPointer(address);
142} 144}
143 145
146inline const u32 VirtualAddressFromPhysical_FCRAM(const u32 address) {
147 return ((address & FCRAM_MASK) | FCRAM_VADDR);
148}
149
150inline const u32 VirtualAddressFromPhysical_IO(const u32 address) {
151 return (address + 0x0EB00000);
152}
153
154inline const u32 VirtualAddressFromPhysical_VRAM(const u32 address) {
155 return (address + 0x07000000);
156}
157
144} // namespace 158} // namespace