diff options
| author | octorock <79596758+octorock@users.noreply.github.com> | 2022-03-31 22:36:32 +0200 |
|---|---|---|
| committer | octorock <79596758+octorock@users.noreply.github.com> | 2022-03-31 22:38:53 +0200 |
| commit | 03e15c611ceb2c35a0766afde467fddf02327dc8 (patch) | |
| tree | ed075d25376eb80aa764231ecd23a1253b0c502f /include | |
| parent | ced56e2fa30db327ffe98f27455702133f40fcf8 (diff) | |
Decompile some of beanstalkSubtask
Diffstat (limited to 'include')
| -rw-r--r-- | include/beanstalkSubtask.h | 36 | ||||
| -rw-r--r-- | include/functions.h | 4 | ||||
| -rw-r--r-- | include/main.h | 2 | ||||
| -rw-r--r-- | include/player.h | 3 | ||||
| -rw-r--r-- | include/room.h | 3 | ||||
| -rw-r--r-- | include/save.h | 2 | ||||
| -rw-r--r-- | include/structures.h | 20 |
7 files changed, 63 insertions, 7 deletions
diff --git a/include/beanstalkSubtask.h b/include/beanstalkSubtask.h new file mode 100644 index 00000000..8735475a --- /dev/null +++ b/include/beanstalkSubtask.h @@ -0,0 +1,36 @@ +#ifndef BEANSTALK_SUBTASK_H +#define BEANSTALK_SUBTASK_H + +#include "global.h" + +/* +tiles 0x4000 and above create an entry here + */ +#define MAX_0200B240 0x100 +typedef struct { + u16 position; // (layer << 0xc) | position + u16 data; +} struct_0200B240; +extern struct_0200B240 gUnk_0200B240[MAX_0200B240]; + +typedef struct { + u16 vramOffset; + u8 gfxSize; + u8 unk_3; + u32 gfxOffset; +} BgAnimationGfx; + +typedef struct { + BgAnimationGfx* gfx; + u32 unk_4; +} BgAnimationFrame; + +typedef struct { + BgAnimationFrame* currentFrame; + u16 unk_4; + u16 timer; +} BgAnimation; +#define MAX_BG_ANIMATIONS 8 +extern BgAnimation gBgAnimations[MAX_BG_ANIMATIONS]; + +#endif // BEANSTALK_SUBTASK_H
\ No newline at end of file diff --git a/include/functions.h b/include/functions.h index 53f1821a..2f0428a8 100644 --- a/include/functions.h +++ b/include/functions.h @@ -42,7 +42,7 @@ extern void SetDirtTile(u32); * @param basePosition the position the offsets in tileData are based on * @param layer the tile layer */ -extern void SetMultipleTiles(u16* tileData, u32 basePosition, u32 layer); +extern void SetMultipleTiles(TileData* tileData, u32 basePosition, u32 layer); extern void TryLoadPrologueHyruleTown(void); extern void UnloadGFXSlots(Entity*); extern void UnloadOBJPalette(Entity*); @@ -74,7 +74,7 @@ extern u32 sub_080044EC(Entity*, u32); extern void sub_0800451C(Entity*); extern void sub_08004542(Entity*); extern void sub_080085B0(Entity*); -extern void sub_08008796(Entity*, u32, u32, u32); +extern u16* sub_08008796(Entity*, u32, u32, u32); extern void sub_08016AD2(Entity*); extern u32 sub_0801766C(Entity*); extern void sub_0801AFE4(void); diff --git a/include/main.h b/include/main.h index c6be0f37..0a2c97bf 100644 --- a/include/main.h +++ b/include/main.h @@ -81,7 +81,7 @@ typedef struct { /*0x0A*/ u16 fadeInTime; /*0x0C*/ u8 fillerC[0x10]; /*0x1c*/ RoomControls unk_1c; - /*0x2e*/ u8 unk_2e[0x364]; + /*0x2e+4*/ u8 unk_2e[0x360]; } UI; static_assert(sizeof(UI) == 0x3b4); diff --git a/include/player.h b/include/player.h index 5a914e87..e6206968 100644 --- a/include/player.h +++ b/include/player.h @@ -241,8 +241,7 @@ typedef struct { /*0x3a*/ u8 field_0x3a; /*0x3b*/ u8 field_0x3b; /*0x3c*/ u8 field_0x3c[2]; - /*0x3e*/ u8 swordGoldParticle : 1; - /* */ u8 swordBlueParticle : 1; + /*0x3e*/ u8 swordDamage : 2; /* */ u8 filler14 : 6; /*0x3f*/ u8 field_0x3f; /*0x40*/ u8 path_memory[64]; diff --git a/include/room.h b/include/room.h index 5cd1c1d6..f4663028 100644 --- a/include/room.h +++ b/include/room.h @@ -52,6 +52,7 @@ typedef struct { /*0x28*/ union SplitWord bg3OffsetX; /*0x2C*/ union SplitWord bg3OffsetY; /*0x30*/ Entity* camera_target; + /*0x34*/ u32 unk_34; } RoomControls; extern RoomControls gRoomControls; @@ -69,7 +70,7 @@ typedef struct { /* 0x0a */ u8 unk2; /* 0x0b */ u8 filler2; /* 0x0c */ s16 lightLevel; - /* 0x0e */ u8 filler3[2]; + /* 0x0e */ u16 unk_0e; /* 0x10 */ u8 unk_10[4]; /* 0x14 */ u32 flags; /* 0x18 */ u32 unk3; diff --git a/include/save.h b/include/save.h index d85cad01..487c499a 100644 --- a/include/save.h +++ b/include/save.h @@ -41,7 +41,7 @@ typedef struct { /*0x006*/ u8 saw_staffroll; /*0x007*/ u8 unk7; /*0x008*/ u8 global_progress; /**< @see UpdateGlobalProgress */ - /*0x009*/ u8 field_0x9[0x34]; + /*0x009*/ u8 field_0x9[0x37]; /*0x040*/ u32 windcrests; /**< Windcrest flags. */ /*0x044*/ u8 filler44[0xC]; /*0x050*/ u32 unk50; diff --git a/include/structures.h b/include/structures.h index 7fc1210f..0b0dc185 100644 --- a/include/structures.h +++ b/include/structures.h @@ -318,4 +318,24 @@ typedef struct { u8 stylized; } Font; +typedef struct { + u8 unk_0; + u8 unk_1; + u8 unk_2[2]; + u16 unk_4; + u8 filler[12]; + Entity* unk_14; + u8 unk_18; + u8 unk_19; + u8 unk_1a; + u8 unk_1b; +} struct_02018EB0; + +extern struct_02018EB0 gUnk_02018EB0; + +typedef struct { + s16 tile; + s16 position; +} TileData; + #endif |
