summaryrefslogtreecommitdiff
path: root/arm9/lib/include
diff options
context:
space:
mode:
Diffstat (limited to 'arm9/lib/include')
-rw-r--r--arm9/lib/include/OS_entropy.h17
-rw-r--r--arm9/lib/include/consts.h13
-rw-r--r--arm9/lib/include/mmap.h2
-rw-r--r--arm9/lib/include/types.h10
4 files changed, 42 insertions, 0 deletions
diff --git a/arm9/lib/include/OS_entropy.h b/arm9/lib/include/OS_entropy.h
index f4eef4b5..b4695a72 100644
--- a/arm9/lib/include/OS_entropy.h
+++ b/arm9/lib/include/OS_entropy.h
@@ -5,6 +5,23 @@
#ifndef POKEDIAMOND_OS_ENTROPY_H
#define POKEDIAMOND_OS_ENTROPY_H
+#include "consts.h"
+
void OS_GetLowEntropyData(u32 * arr);
+typedef struct NVRAMConfig{
+ u8 ncd[110]; // todo: typeof NVRAMConfigData
+ u16 saveCount;
+ u16 rc16;
+} NVRAMConfig;
+
+extern vu64 OSi_TickCounter;
+
+extern u16 OS_GetTickLo();
+
+static inline s32 GX_GetVCount()
+{
+ return reg_GX_VCOUNT;
+}
+
#endif //POKEDIAMOND_OS_ENTROPY_H
diff --git a/arm9/lib/include/consts.h b/arm9/lib/include/consts.h
index 930f9af5..e07fe323 100644
--- a/arm9/lib/include/consts.h
+++ b/arm9/lib/include/consts.h
@@ -13,6 +13,19 @@
#define HW_PSR_DISABLE_IRQ 0x80 // Disable IRQ
#define HW_PSR_DISABLE_IRQ_FIQ 0xc0 // Disable FIQ and IRQ
+#define HW_REG_BASE 0x04000000
+#define REG_VCOUNT_OFFSET 0x006
+#define REG_VCOUNT_ADDR (HW_REG_BASE + REG_VCOUNT_OFFSET)
+#define reg_GX_VCOUNT (*(REGType16v *)REG_VCOUNT_ADDR)
+
+#define REG_KEYINPUT_OFFSET 0x130
+#define REG_KEYINPUT_ADDR (HW_REG_BASE + REG_KEYINPUT_OFFSET)
+#define reg_PAD_KEYINPUT (*(REGType16v *)REG_KEYINPUT_ADDR)
+
+#define REG_GXSTAT_OFFSET 0x600
+#define REG_GXSTAT_ADDR (HW_REG_BASE + REG_GXSTAT_OFFSET)
+#define reg_G3X_GXSTAT (*(REGType32v *)REG_GXSTAT_ADDR)
+
#define HW_C6_PR_4KB 0x16
#define HW_C6_PR_8KB 0x18
#define HW_C6_PR_16KB 0x1a
diff --git a/arm9/lib/include/mmap.h b/arm9/lib/include/mmap.h
index ddbd8883..d94df843 100644
--- a/arm9/lib/include/mmap.h
+++ b/arm9/lib/include/mmap.h
@@ -35,6 +35,8 @@ extern u32 SDK_AUTOLOAD_DTCM_START[];
#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_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)
diff --git a/arm9/lib/include/types.h b/arm9/lib/include/types.h
index 5ad2c75e..40f8207d 100644
--- a/arm9/lib/include/types.h
+++ b/arm9/lib/include/types.h
@@ -25,6 +25,16 @@ typedef volatile s64 vs64;
typedef float f32;
typedef volatile f32 vf32;
+typedef u8 REGType8;
+typedef u16 REGType16;
+typedef u32 REGType32;
+typedef u64 REGType64;
+
+typedef vu8 REGType8v;
+typedef vu16 REGType16v;
+typedef vu32 REGType32v;
+typedef vu64 REGType64v;
+
typedef int BOOL;
#define TRUE 1
#define FALSE 0