summaryrefslogtreecommitdiff
path: root/arm9/lib/include/mmap.h
diff options
context:
space:
mode:
Diffstat (limited to 'arm9/lib/include/mmap.h')
-rw-r--r--arm9/lib/include/mmap.h45
1 files changed, 45 insertions, 0 deletions
diff --git a/arm9/lib/include/mmap.h b/arm9/lib/include/mmap.h
new file mode 100644
index 00000000..14820c39
--- /dev/null
+++ b/arm9/lib/include/mmap.h
@@ -0,0 +1,45 @@
+#ifndef NITRO_MMAP_H
+#define NITRO_MMAP_H
+
+#include "types.h"
+
+extern u32 SDK_AUTOLOAD_DTCM_START[];
+
+#define HW_MAIN_MEM 0x02000000
+#define HW_MAIN_MEM_SIZE 0x00400000
+#define HW_MAIN_MEM_EX_SIZE 0x00800000
+#define HW_MAIN_MEM_MAIN_SIZE 0x003E0000
+#define HW_MAIN_MEM_SHARED_SIZE 0x00001000
+#define HW_MAIN_MEM_DEBUGGER_OFFSET 0x00700000
+
+#define HW_ITCM 0x01FF8000
+#define HW_ITCM_SIZE 0x00008000
+
+#define HW_WRAM 0x037F8000
+
+#define HW_DTCM ((u32)SDK_AUTOLOAD_DTCM_START)
+#define HW_DTCM_SIZE 0x00004000
+
+#define HW_CARD_ROM_HEADER_SIZE 0x00000160
+#define HW_DOWNLOAD_PARAMETER_SIZE 0x00000020
+
+#define HW_ARENA_INFO_BUF (HW_MAIN_MEM + 0x007ffda0) // Arena data structure
+#define HW_ROM_HEADER_BUF (HW_MAIN_MEM + 0x007ffe00) // ROM registration area data buffer
+#define HW_RED_RESERVED (HW_MAIN_MEM + 0x007ff800) // Some kind of reserved data for shared memory
+#define HW_MAIN_MEM_MAIN_END (HW_MAIN_MEM + HW_MAIN_MEM_MAIN_SIZE)
+#define HW_MAIN_MEM_EX_END (HW_MAIN_MEM + HW_MAIN_MEM_EX_SIZE)
+#define HW_MAIN_MEM_SHARED (HW_MAIN_MEM_EX_END - HW_MAIN_MEM_SHARED_SIZE)
+#define HW_DTCM_SVC_STACK_END (HW_DTCM + 0x00003fc0)
+#define HW_SVC_STACK_SIZE 0x00000040
+#define HW_DTCM_SVC_STACK (HW_DTCM_SVC_STACK_END - HW_SVC_STACK_SIZE)
+#define HW_DTCM_IRQ_STACK_END (HW_DTCM_SVC_STACK)
+
+#define OSi_MAIN_ARENA_HI_DEFAULT (HW_MAIN_MEM_MAIN_END)
+#define OSi_MAINEX_ARENA_HI_DEFAULT (HW_MAIN_MEM + HW_MAIN_MEM_DEBUGGER_OFFSET)
+#define HW_ITCM_ARENA_HI_DEFAULT (HW_ITCM + HW_ITCM_SIZE)
+#define HW_SHARED_ARENA_HI_DEFAULT (HW_RED_RESERVED - HW_CARD_ROM_HEADER_SIZE - HW_DOWNLOAD_PARAMETER_SIZE)
+#define HW_SHARED_ARENA_LO_DEFAULT (HW_MAIN_MEM_SHARED)
+#define OSi_WRAM_MAIN_ARENA_HI_DEFAULT (HW_WRAM)
+#define OSi_WRAM_MAIN_ARENA_LO_DEFAULT (HW_WRAM)
+
+#endif \ No newline at end of file