summaryrefslogtreecommitdiff
path: root/arm9/lib/include/mmap.h
blob: 12823fa0e3e9135bdbc60dc87c79954add069a34 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#ifndef POKEDIAMOND_ARM9_MMAP_H
#define POKEDIAMOND_ARM9_MMAP_H

#include "nitro/types.h"
#include "nitro/mmap_shared.h"

extern u32 SDK_AUTOLOAD_DTCM_START[];

#define HW_MAIN_MEM_EX_SIZE     0x00800000
#define HW_MAIN_MEM_DEBUGGER_OFFSET     0x00700000

#define HW_ITCM_IMAGE 0x01000000
#define HW_ITCM                 0x01FF8000
#define HW_ITCM_SIZE            0x00008000
#define HW_ITCM_END (HW_ITCM + HW_ITCM_SIZE)

#define HW_DTCM                 ((u32)SDK_AUTOLOAD_DTCM_START)
#define HW_DTCM_SIZE            0x00004000

#define HW_DTCM_SYSRV           (HW_DTCM + 0x00003fc0)
#define HW_INTR_CHECK_BUF       (HW_DTCM_SYSRV + 0x38)

#define HW_CARD_ROM_HEADER_SIZE 0x00000160
#define HW_DOWNLOAD_PARAMETER_SIZE      0x00000020

#define HW_RESET_PARAMETER_BUF  (HW_MAIN_MEM + 0x007ffc20)
#define HW_ROM_BASE_OFFSET_BUF  (HW_MAIN_MEM + 0x007ffc2c)
#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_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 HW_BIOS_EXCP_STACK_MAIN (HW_MAIN_MEM + 0x007ffd80)
#define HW_EXCP_VECTOR_MAIN     (HW_MAIN_MEM + 0x007ffd9c)

#define HW_PXI_SIGNAL_PARAM_ARM9        (HW_MAIN_MEM + 0x007fff80)

#define HW_WM_RSSI_POOL         (HW_MAIN_MEM + 0x007fff98)

#define HW_COMPONENT_PARAM      (HW_MAIN_MEM + 0x007fff9c)

#define HW_LOCK_ID_FLAG_MAIN    (HW_MAIN_MEM + 0x007fffb0)
#define HW_SHARED_LOCK_BUF      (HW_MAIN_MEM + 0x007fffc0)
#define HW_CARD_LOCK_BUF        (HW_MAIN_MEM + 0x007fffe0)

#define HW_BUTTON_XY_BUF        (HW_MAIN_MEM + 0x007fffa8)

#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 //POKEDIAMOND_ARM9_MMAP_H