summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorYamaArashi <YamaArashi@users.noreply.github.com>2017-01-05 15:58:58 -0800
committerGitHub <noreply@github.com>2017-01-05 15:58:58 -0800
commit2bf932b4f0fdfc821396b58250c02fc4eabf47e7 (patch)
treef83225b8abbe1d24ff4e32909ca03ff472c1cfc0 /include
parent297de575412e42bdc91850fb5c8bba0df3babae4 (diff)
parent9dc9c657b489ae4d5b983ea0cbd12a8e77803dbf (diff)
Merge pull request #163 from camthesaxman/intro
decompile more intro functions
Diffstat (limited to 'include')
-rw-r--r--include/asm.inc.h8
-rw-r--r--include/gba/syscall.h2
-rw-r--r--include/gba/types.h21
-rw-r--r--include/sprite.h14
4 files changed, 34 insertions, 11 deletions
diff --git a/include/asm.inc.h b/include/asm.inc.h
index 61790e8ce..18127f136 100644
--- a/include/asm.inc.h
+++ b/include/asm.inc.h
@@ -470,10 +470,10 @@ void sub_813CAF4(u8);
void intro_reset_and_hide_bgs(void);
void sub_813CCE8(u8);
void sub_813CE30(u16, u16, u16, u16);
-u8 sub_813CE88(/*TODO: arg types*/);
-u8 sub_813CFA8(/*TODO: arg types*/);
-void sub_813D084(/*TODO: arg types*/);
-u8 sub_813D584(/*TODO: arg types*/);
+u8 sub_813CE88(u16, s16, u16, u16, u8);
+u8 sub_813CFA8(u16, u16, u16, u16);
+void sub_813D084(u8);
+u8 sub_813D584(u16, s16, u16, u16, u16, u8);
void sub_813D788(struct Sprite *);
void sub_813D880(struct Sprite *);
void sub_813D954(/*TODO: arg types*/);
diff --git a/include/gba/syscall.h b/include/gba/syscall.h
index 9576f7e99..e47f964d1 100644
--- a/include/gba/syscall.h
+++ b/include/gba/syscall.h
@@ -31,6 +31,8 @@ void CpuSet(const void *src, void *dest, u32 control);
void CpuFastSet(const void *src, void *dest, u32 control);
+void BgAffineSet(struct BgAffineSrcData *src, struct BgAffineDstData *dest, s32 count);
+
void ObjAffineSet(struct ObjAffineSrcData *src, void *dest, s32 count, s32 offset);
void LZ77UnCompWram(const void *src, void *dest);
diff --git a/include/gba/types.h b/include/gba/types.h
index be7390d5a..fd8a20a4c 100644
--- a/include/gba/types.h
+++ b/include/gba/types.h
@@ -74,6 +74,27 @@ struct OamData
#define ST_OAM_H_RECTANGLE 1
#define ST_OAM_V_RECTANGLE 2
+struct BgAffineSrcData
+{
+ s32 texX;
+ s32 texY;
+ s16 scrX;
+ s16 scrY;
+ s16 sx;
+ s16 sy;
+ u16 alpha;
+};
+
+struct BgAffineDstData
+{
+ s16 pa;
+ s16 pb;
+ s16 pc;
+ s16 pd;
+ s32 dx;
+ s32 dy;
+};
+
struct ObjAffineSrcData
{
s16 xScale;
diff --git a/include/sprite.h b/include/sprite.h
index 57926fc68..3c8da394f 100644
--- a/include/sprite.h
+++ b/include/sprite.h
@@ -130,13 +130,13 @@ struct SpriteTemplate
struct Sprite
{
- struct OamData oam;
- union AnimCmd **anims;
- struct SpriteFrameImage *images;
- union AffineAnimCmd **affineAnims;
- const struct SpriteTemplate *template;
- struct SubspriteTable *subspriteTables;
- void (*callback)(struct Sprite *);
+ /*0x00*/ struct OamData oam;
+ /*0x08*/ union AnimCmd **anims;
+ /*0x0C*/ struct SpriteFrameImage *images;
+ /*0x10*/ union AffineAnimCmd **affineAnims;
+ /*0x14*/ const struct SpriteTemplate *template;
+ /*0x18*/ struct SubspriteTable *subspriteTables;
+ /*0x1C*/ void (*callback)(struct Sprite *);
/*0x20*/ struct Coords16 pos1;
/*0x24*/ struct Coords16 pos2;