summaryrefslogtreecommitdiff
path: root/src/core/memory.h
diff options
context:
space:
mode:
authorYuri Kunde Schlesner <yuriks@yuriks.net>2017-04-30 17:13:53 -0700
committerYuri Kunde Schlesner <yuriks@yuriks.net>2017-05-09 21:43:59 -0700
commitd3db770cad11cdacd46c68112e0095eea23cb103 (patch)
treec2646a82202c59689f1ba09a85657ad613322cea /src/core/memory.h
parent13dd0b88de66b7c60bbd35303fdb618b55ef62e3 (diff)
Memory: Add constants for the n3DS additional RAM
This is 4MB of extra, separate memory that was added on the New 3DS.
Diffstat (limited to 'src/core/memory.h')
-rw-r--r--src/core/memory.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/core/memory.h b/src/core/memory.h
index 903b58a22..802aa465e 100644
--- a/src/core/memory.h
+++ b/src/core/memory.h
@@ -37,6 +37,12 @@ enum : PAddr {
VRAM_SIZE = 0x00600000, ///< VRAM size (6MB)
VRAM_PADDR_END = VRAM_PADDR + VRAM_SIZE,
+ /// New 3DS additional memory. Supposedly faster than regular FCRAM. Part of it can be used by
+ /// applications and system modules if mapped via the ExHeader.
+ N3DS_EXTRA_RAM_PADDR = 0x1F000000,
+ N3DS_EXTRA_RAM_SIZE = 0x00400000, ///< New 3DS additional memory size (4MB)
+ N3DS_EXTRA_RAM_PADDR_END = N3DS_EXTRA_RAM_PADDR + N3DS_EXTRA_RAM_SIZE,
+
/// DSP memory
DSP_RAM_PADDR = 0x1FF00000,
DSP_RAM_SIZE = 0x00080000, ///< DSP memory size (512KB)
@@ -81,6 +87,10 @@ enum : VAddr {
LINEAR_HEAP_SIZE = 0x08000000,
LINEAR_HEAP_VADDR_END = LINEAR_HEAP_VADDR + LINEAR_HEAP_SIZE,
+ /// Maps 1:1 to New 3DS additional memory
+ N3DS_EXTRA_RAM_VADDR = 0x1E800000,
+ N3DS_EXTRA_RAM_VADDR_END = N3DS_EXTRA_RAM_VADDR + N3DS_EXTRA_RAM_SIZE,
+
/// Maps 1:1 to the IO register area.
IO_AREA_VADDR = 0x1EC00000,
IO_AREA_VADDR_END = IO_AREA_VADDR + IO_AREA_SIZE,