summaryrefslogtreecommitdiff
path: root/include/gba/gba.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/gba/gba.h')
-rw-r--r--include/gba/gba.h57
1 files changed, 2 insertions, 55 deletions
diff --git a/include/gba/gba.h b/include/gba/gba.h
index 06067dacf..26342cf88 100644
--- a/include/gba/gba.h
+++ b/include/gba/gba.h
@@ -1,63 +1,10 @@
#ifndef GUARD_GBA_GBA_H
#define GUARD_GBA_GBA_H
-#include <stddef.h>
-
-typedef unsigned char u8;
-typedef unsigned short u16;
-typedef unsigned int u32;
-typedef signed char s8;
-typedef signed short s16;
-typedef signed int s32;
-
-typedef volatile u8 vu8;
-typedef volatile u16 vu16;
-typedef volatile u32 vu32;
-typedef volatile s8 vs8;
-typedef volatile s16 vs16;
-typedef volatile s32 vs32;
-
-typedef float f32;
-typedef double f64;
-
-typedef u8 bool8;
-typedef u16 bool16;
-typedef u32 bool32;
-
-#define TRUE 1
-#define FALSE 0
-
-#define IWRAM_DATA __attribute__((section("iwram_data")))
-#define EWRAM_DATA __attribute__((section("ewram_data")))
-
-#define ALIGNED(n) __attribute__((aligned(n)))
-
-// The original build process placed COMMON data (i.e. uninitialized globals)
-// in IWRAM after the static variables.
-// When ld places COMMON variables in the output, it aligns the variable
-// according to the size of the variable, with a maximum alignment of 16. This
-// results in large alignment values.
-// Initialized variables are aligned according to the size of the largest
-// primitive type in the object, so their alignment will often be smaller.
-// However, we cannot use COMMON data in pokeruby because the order of COMMON
-// data in the output is not reliable. Instead, we need to initialize the
-// variables so that their order in the source file is preserved in the output.
-// But using initialized variables brings us into conflict with those large
-// alignment values.
-// These macros allow us to get around this by manually specifying what the
-// alignment would be if the variable were uninitialized.
-#define COMM(decl, n) IWRAM_DATA ALIGNED(1 << n) decl = {0};
-#define COMM_0(decl) COMM(decl, 0)
-#define COMM_1(decl) COMM(decl, 1)
-#define COMM_2(decl) COMM(decl, 2)
-#define COMM_4(decl) COMM(decl, 4)
-
+#include "gba/defines.h"
#include "gba/io_reg.h"
+#include "gba/types.h"
#include "gba/syscall.h"
#include "gba/macro.h"
-#define SOUND_INFO_PTR (*(struct SoundInfo **)0x3007FF0)
-#define INTR_CHECK (*(u16 *)0x3007FF8)
-#define INTR_VECTOR (*(void **)0x3007FFC)
-
#endif // GUARD_GBA_GBA_H