diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/nitro/OS_arena_shared.h | 38 | ||||
-rw-r--r-- | include/nitro/consts_shared.h | 3 | ||||
-rw-r--r-- | include/nitro/mmap_shared.h | 24 |
3 files changed, 65 insertions, 0 deletions
diff --git a/include/nitro/OS_arena_shared.h b/include/nitro/OS_arena_shared.h new file mode 100644 index 00000000..df6d526a --- /dev/null +++ b/include/nitro/OS_arena_shared.h @@ -0,0 +1,38 @@ +/* + * NOTE: + * This file is shared between ARM9 and ARM7 + * DO NOT PUT PROC SPECIFIC CODE IN HERE + * Thank You! + */ + +/* + * DO NOT INCLUDE THIS FILE DIRECTLY + * Include OS_arena.h from the specific proc's lib + */ + +#ifndef POKEDIAMOND_OS_ARENA_SHARED_H +#define POKEDIAMOND_OS_ARENA_SHARED_H + +#include "nitro/types.h" + +typedef enum { + OS_ARENA_MAIN = 0, + OS_ARENA_MAIN_SUBPRIV = 1, + OS_ARENA_MAINEX = 2, + OS_ARENA_ITCM = 3, + OS_ARENA_DTCM = 4, + OS_ARENA_SHARED = 5, + OS_ARENA_WRAM_MAIN = 6, + OS_ARENA_WRAM_SUB = 7, + OS_ARENA_WRAM_SUBPRIV = 8, + OS_ARENA_MAX = 9 +} OSArenaId; + +typedef struct { + void* lo[OS_ARENA_MAX]; + void* hi[OS_ARENA_MAX]; + u16 initialized; + u8 padding[2]; +} OSArenaInfo; + +#endif //POKEDIAMOND_OS_ARENA_SHARED_H diff --git a/include/nitro/consts_shared.h b/include/nitro/consts_shared.h index e515831e..a7fd9dcf 100644 --- a/include/nitro/consts_shared.h +++ b/include/nitro/consts_shared.h @@ -14,6 +14,7 @@ #define POKEDIAMOND_CONSTS_SHARED_H #include "nitro/types.h" +#include "nitro/mmap_shared.h" //Shared Consts @@ -23,4 +24,6 @@ #define HW_PSR_DISABLE_IRQ 0x80 // Disable IRQ #define HW_PSR_DISABLE_IRQ_FIQ 0xc0 // Disable FIQ and IRQ +#define OSi_GetArenaInfo() (*(OSArenaInfo*)HW_ARENA_INFO_BUF) + #endif //POKEDIAMOND_CONSTS_SHARED_H diff --git a/include/nitro/mmap_shared.h b/include/nitro/mmap_shared.h new file mode 100644 index 00000000..ad97c912 --- /dev/null +++ b/include/nitro/mmap_shared.h @@ -0,0 +1,24 @@ +/* + * NOTE: + * This file is shared between ARM9 and ARM7 + * DO NOT PUT PROC SPECIFIC CODE IN HERE + * Thank You! + */ + +/* + * DO NOT INCLUDE THIS FILE DIRECTLY + * Include mmap.h from the specific proc's lib + */ + +#ifndef POKEDIAMOND_MMAP_SHARED_H +#define POKEDIAMOND_MMAP_SHARED_H + +#define HW_MAIN_MEM 0x02000000 +#define HW_MAIN_MEM_SIZE 0x00400000 +#define HW_MAIN_MEM_MAIN_SIZE 0x003E0000 +#define HW_MAIN_MEM_SHARED_SIZE 0x00001000 + +#define HW_ARENA_INFO_BUF (HW_MAIN_MEM + 0x007ffda0) +#define HW_MAIN_MEM_MAIN_END (HW_MAIN_MEM + HW_MAIN_MEM_MAIN_SIZE) + +#endif //POKEDIAMOND_MMAP_SHARED_H |