sort out functions.h

This commit is contained in:
theo3
2022-01-04 20:17:46 -08:00
parent 7036ec73af
commit 48fa5b4618
111 changed files with 1482 additions and 1434 deletions
+4
View File
@@ -11,6 +11,7 @@ extern u32 GetTileType(u32 pos, u32 layer);
extern void SetTile(u32 index, u32 position, u32 layer);
extern void UpdateScrollVram(void);
extern u32 sub_080002D0(struct Entity_*);
extern u32 sub_080002F0(u32, u32, u32);
extern void LoadResourceAsync(const void*, u32, u32);
extern void sub_08001242(struct Entity_*);
extern void sub_08001290(struct Entity_*, u32);
@@ -29,5 +30,8 @@ extern u32 sub_080045B4(struct Entity_*, u32, u32);
extern u32 sub_080045D4(u32, u32, u32, u32);
extern u32 sub_080045DA(s32, s32);
extern u32 sub_080086B4(u32, u32, u8*);
extern u32 ResolveCollisionLayer(struct Entity_*);
extern void sub_0800417E(struct Entity_*, u32);
extern u32 sub_0800442E(struct Entity_*);
#endif // ASM_H
+9 -2
View File
@@ -3,6 +3,8 @@
#include "global.h"
struct Entity_;
typedef struct {
u16 heldKeys;
u16 newKeys;
@@ -10,11 +12,11 @@ typedef struct {
u8 unk6;
u8 unk7;
} Input;
extern Input gInput;
void LoadPalettes(const u8*, s32, s32);
void LoadPaletteGroup(u32 group);
void LoadGfxGroup(u32 group);
void SetColor(u32 colorIndex, u32 color);
void SetFillColor(u32 color, u32 arg1);
@@ -73,7 +75,12 @@ void zFree(void* ptr);
void DispReset(bool32 refresh);
u32 CheckPlayerProximity(u32, u32, u32, u32);
u32 CheckKinstoneFused(u32);
void sub_0801E1EC(u32, u32, u32);
void sub_0801DD58(u32, u32);
void sub_0801E1B8(u32, u32);
void sub_0801E738(u32);
void sub_0801DFB4(struct Entity_*, u32, u32, u32);
u32 sub_0801E00C(void);
#endif // COMMON_H
+9
View File
@@ -10,12 +10,21 @@
#include "common.h"
#include "entity.h"
#include "projectile.h"
extern u32 GetNextFunction(Entity*);
extern void EnemyFunctionHandler(Entity*, EntityActionArray);
extern void sub_08001324(Entity*);
extern Entity* CreateDeathFx(Entity*, u32, u32);
extern Entity* sub_0804A9FC(Entity*, u32);
extern void SetChildOffset(Entity*, s32, s32, s32);
extern Entity* CreateProjectileWithParent(Entity*, u8, u8);
extern void sub_0804A7D4(Entity*);
extern void sub_08002724(void*, u8*);
extern void sub_080026C4(u8*, u8*, u8*, u32);
extern void sub_080026F2(u8*, void*, u8*, u32);
typedef enum {
/*0x00*/ OCTOROK,
+3
View File
@@ -232,9 +232,12 @@ u32 LoadExtraSpriteData(Entity*, SpriteLoadData*);
void SetExtraSpriteFrame(Entity*, u32, u32);
void SetSpriteSubEntryOffsetData1(Entity*, u32, u32);
void SetSpriteSubEntryOffsetData2(Entity*, u32, u32);
u8* GetSpriteSubEntryOffsetDataPointer(u32, u32);
u32 GetFacingDirection(Entity*, Entity*);
u32 ProcessMovement(Entity*);
/**
* @brief Delete the entity currently in execution.
*/
+1
View File
@@ -70,6 +70,7 @@ extern void sub_0805F7DC(u32, struct_02036540*);
extern void sub_0805F300(struct_02036540*);
extern void sub_08050A64(u32);
extern void sub_08050AFC(u32);
extern void sub_08050384();
extern const struct_080FC844 gUnk_080FC844;
extern const u16 gUnk_080FC85C[][3];
-73
View File
@@ -12,32 +12,11 @@
#include "script.h"
// Identified - to be sorted into header files
extern u32 CheckKinstoneFused(u32);
extern void ForceEquipItem(u32, u32);
extern void LoadRoomEntityList(EntityData* listPtr);
extern void SetChildOffset(Entity*, s32, s32, s32);
extern Entity* CreatePlayerItem(u32, u32, u32, u32);
extern void SetDirtTile(u32);
extern Entity* CreateDeathFx(Entity*, u32, u32);
extern u8* GetSpriteSubEntryOffsetDataPointer(u32, u32);
extern bool32 LoadFixedGFX(Entity*, u32);
extern void CreateItemEntity(u32, u32, u32);
extern u32 ProcessMovement(Entity*);
extern void MenuFadeIn(u32, u32);
extern void LoadPaletteGroup(u32);
extern void TryLoadPrologueHyruleTown(void);
extern void LoadGfxGroup(u32);
extern Entity* CreateProjectileWithParent(Entity*, u8, u8);
extern u32 GetSaleItemConfirmMessageID(u32);
extern void FlushSprites(void);
extern Entity* CreateProjectile(u32);
extern s32 GetItemPrice();
extern void DoExitTransition(ScreenTransitionData*);
extern void CreateDustAt(s32, s32, u32);
extern void PutItemOnSlot(u32 itemID);
extern Entity* CreateSpeechBubbleQuestionMark(Entity*, s32, s32);
extern Entity* CreateSpeechBubbleExclamationMark(Entity*, s32, s32);
extern Entity* CreateSpeechBubbleSleep(Entity*, s32, s32);
// Unidentified
extern void sub_0805EC9C();
@@ -78,86 +57,42 @@ extern void sub_08059278(void);
extern void sub_0804C128(u32);
extern void sub_08058324(u32);
extern void sub_0801AFE4(void);
extern u32 sub_08060354(void);
extern void sub_08057E64(void);
extern void sub_0809F814(u32);
extern void sub_080300E8(void);
extern void sub_08058D34(void);
extern void sub_0807AABC(Entity*);
extern void sub_0805B4D0(u32);
extern void sub_0804D0B4(void);
extern void sub_080534AC();
extern void sub_0807BA8C(u32, u32);
extern void sub_0804D9B0();
extern void sub_0807BB98(u32, u32, u32, u32);
extern void sub_0801D000(u32);
extern void sub_08018C58(u32);
extern void sub_080AF284(void);
extern void sub_080A71C4(u32, u32, u32, u32);
extern void sub_08054564();
extern void sub_0801DD58(u32, u32);
extern void sub_0804ED18();
extern void sub_080AF2E4(void);
extern void sub_0804F578(void);
extern void sub_08059994(void);
extern void DrawDirect(u32, u32); // trampoline to sub_080B27F4
extern void sub_0801E1B8(u32, u32);
extern void sub_080A3B74(void);
extern void sub_080A4054(void);
extern void sub_0801C1D4(void);
extern void DrawOAMCmd(void);
extern void sub_080A4D34(void);
extern u32 sub_080A4494(void);
extern void sub_080A4528(void);
extern void sub_080A4398(void);
extern void sub_0801E738(u32);
extern void sub_080A7114(u32);
extern u32 sub_0807953C(void);
extern void sub_080AE068(Entity*);
extern u32 sub_0800445C(Entity*);
extern u32 sub_0801766C(Entity*);
extern void sub_08004168(Entity*);
extern void sub_08056208(void);
extern void sub_08050384();
extern u32 sub_0806F520();
extern void sub_0806F4E8(Entity*);
extern void sub_0804A7D4(Entity*);
extern void sub_08033744(Entity*);
extern void sub_0800417E(Entity*, u32);
extern void sub_080784C8();
extern u32 sub_0808288C(Entity*, u32, u32, u32);
extern void sub_0806FDA0(Entity*);
extern bool32 LoadSwapGFX(Entity*, u16, u32);
extern u32 ResolveCollisionLayer(Entity*);
extern void sub_08077728();
extern void sub_0807921C();
extern void sub_0807ACCC(Entity*);
extern void sub_080A2BE4(Entity*, u32);
extern u32 sub_08097ADC(Entity*);
extern u32 sub_08079F8C(void);
extern void sub_080787CC(Entity*);
extern u32 sub_080044EC(Entity*, u32);
extern u32 sub_080002B8(Entity*);
extern u32 sub_08049F84(Entity*, u32);
extern void sub_0802F45C(Entity*);
extern u32 sub_0800419C(Entity*, Entity*, u32, u32);
extern void sub_08004542(Entity*);
extern void sub_08077B20();
extern u32 sub_08017850(Entity*);
extern void sub_080809D4(void);
extern void sub_08080CB4(Entity*);
extern u32 sub_0800442E(Entity*);
extern void sub_08081404(Entity*, u32);
extern void sub_0807B7D8(u32, u32, u32);
extern void sub_0800451C(Entity*);
extern u32 sub_080002F0(u32, u32, u32);
extern u32 sub_080040D8(Entity*, u8*, s32, s32);
extern void LoadGfxGroups();
extern void SetColor(u32, u32);
extern u32 sub_0805F8F8(u32);
extern void sub_08002724(void*, u8*);
extern void sub_080026C4(u8*, u8*, u8*, u32);
extern void sub_080026F2(u8*, void*, u8*, u32);
extern u32 sub_0805F7A0(u32);
extern u32* sub_0805F25C(u32);
u32 sub_0806FCB8(Entity*, u32, u32, u32);
@@ -165,8 +100,6 @@ extern void sub_080A1D70(Entity*, u32);
extern void sub_0806F62C(Entity*, u32, u32);
extern void sub_080A1ED0(u32, u32, u32);
extern u32 sub_0806F5B0(u32);
extern void sub_0801DFB4(Entity*, u32, u32, u32);
extern u32 sub_0801E00C(void);
extern void sub_08078790(Entity*, u32);
extern void sub_080788E0(Entity*);
extern void sub_08078B48(void);
@@ -174,13 +107,9 @@ extern void sub_0807919C();
extern void sub_0807CAA0(u32, u32);
extern void sub_080085B0(Entity*);
extern u32 sub_08079D48();
extern u32 sub_08008B22();
extern void MessageClose();
extern u32 sub_080542AC(u32);
extern u32 sub_08079FC4(u32);
extern u32* sub_08008790(Entity*, u32);
extern void sub_0805F8E4(u32 r0, WStruct* r1);
extern Entity* sub_08077C94(ItemBehavior*, u32);
extern Entity* sub_08077C0C(ItemBehavior*, u32);
extern void sub_08077D38(ItemBehavior*, u32);
@@ -190,10 +119,8 @@ extern u32 sub_0806F948(Entity*);
extern void sub_08077DF4(ItemBehavior*, u32);
extern void sub_08077BB8(ItemBehavior*);
extern bool32 sub_08077EFC(ItemBehavior*);
extern void sub_08078E84(Entity*, Entity*);
extern void sub_080042D0(Entity*, u32, u16);
extern u32 sub_080002A8(u32, u32, u32);
extern void sub_080806BC(u32, u32, u32, u32);
+5 -1
View File
@@ -32,13 +32,17 @@ bool32 HasDungeonSmallKey(void);
bool32 ItemIsSword(u32 item);
bool32 ItemIsShield(u32 item);
u32 GetBottleContaining(u32 item);
void PutItemOnSlot(u32 item);
s32 GetItemPrice(u32 item);
u32 GetSaleItemConfirmMessageID(u32 item);
void ForceEquipItem(u32 item, u32 slot);
void LoadGfxGroups(void);
void LoadCutsceneRoom(u32 room, u32 area);
void InitRoom(void);
void InitParachuteRoom(void);
void RegisterTransitionManager(void* mgr, void (*onEnter)(void), void (*onExit)(void));
void RegisterTransitionManager(void* mgr, void (*onEnter)(void*), void (*onExit)(void*));
void RoomExitCallback(void);
void RestoreGameTask(u32 a1);
+3
View File
@@ -5,6 +5,9 @@
#include "entity.h"
#include "player.h"
void CreateItemEntity(u32, u32, u32);
void sub_08081404(Entity*, u32);
extern void ItemDebug(ItemBehavior*, u32);
extern void ItemSword(ItemBehavior*, u32);
extern void ItemBomb(ItemBehavior*, u32);
+2
View File
@@ -3,6 +3,8 @@
#include "global.h"
extern void sub_08018C58(u32);
typedef struct {
u8 unk[4];
u32 unk2;
+1
View File
@@ -97,5 +97,6 @@ extern void VBlankInterruptWait(void);
extern void DisableInterruptsAndDMA(void);
extern void EnableVBlankIntr(void);
extern void sub_08056250(void);
extern void sub_08056208(void);
#endif
+5
View File
@@ -126,6 +126,11 @@ void MessageFromTarget(u32 index);
*/
void MessageAtHeight(u32 index, u32 y);
/**
* @brief Close message.
*/
void MessageClose(void);
void DispMessageFrame(u16*, s32, s32, u32);
#endif // MESSAGE_H
+5
View File
@@ -20,9 +20,14 @@ extern void sub_080787B4(Entity*);
extern void sub_0808C650(Entity*, u32);
extern u32 sub_0808C67C(void);
extern void sub_0808C688(void);
extern void sub_080A2BE4(Entity*, u32);
void CreateDust(Entity* parent);
void CreateDustAt(s32, s32, u32);
void CreateDustSmall(Entity* parent);
Entity* CreateSpeechBubbleQuestionMark(Entity*, s32, s32);
Entity* CreateSpeechBubbleExclamationMark(Entity*, s32, s32);
Entity* CreateSpeechBubbleSleep(Entity*, s32, s32);
typedef enum {
GROUND_ITEM,
+7
View File
@@ -288,6 +288,8 @@ void ResetPlayerAnimationAndAction(void);
void SetPlayerActionNormal(void);
void RespawnAsMinish(void);
Entity* CreatePlayerItem(u32, u32, u32, u32);
void ResolvePlayerAnimation(void);
void RegisterPlayerHitbox(void);
void UpdateFloorType(void);
@@ -299,6 +301,11 @@ s32 ModHealth(s32 delta);
void ModRupees(s32 delta);
void DeleteClones(void);
void sub_08077728();
extern void sub_08077B20();
extern u32 sub_08008B22();
extern u32* sub_08008790(Entity*, u32);
#define COPY_FLAG_FROM_TO(base, src, dest) (base) = ((base) & ~(dest)) | (((dest) * ((base) & (src))) / src)
#endif
+2
View File
@@ -1,6 +1,8 @@
#ifndef PROJECTILE_H
#define PROJECTILE_H
extern Entity* CreateProjectile(u32);
typedef enum {
/*00*/ DARK_NUT_SWORD_SLASH,
/*01*/ ROCK_PROJECTILE,
+21 -4
View File
@@ -160,6 +160,20 @@ typedef struct {
static_assert(sizeof(RoomTransition) == 0xB0);
extern RoomTransition gRoomTransition;
typedef struct {
u16 type;
u8 field_0x2[4];
s16 playerXPos;
s16 playerYPos;
u8 field_0xa;
u8 area;
u8 room;
u8 playerLayer;
u8 field_0xe;
u8 playerState;
u16 transitionSFX;
} ScreenTransitionData;
typedef struct {
u8 type;
u8 _1;
@@ -188,16 +202,19 @@ typedef enum {
TILE_ENTITY_D,
} TileEntityType;
extern void SetTileType(u32, u32, u32);
extern void InitScreenShake(u32 time, u32 magnitude);
void SetTileType(u32, u32, u32);
void InitScreenShake(u32 time, u32 magnitude);
void CallRoomProp5And7(void);
void LoadRoom(void);
void SetCurrentRoomPropertyList(u32 area, u32 room);
extern void* GetCurrentRoomProperty(u32);
extern void LoadRoomTileEntities();
void* GetCurrentRoomProperty(u32);
void LoadRoomTileEntities();
void LoadRoomEntityList(EntityData* listPtr);
void sub_0804B3C4(void*);
void sub_0804B0B0(u32 arg0, u32 arg1);
void DoExitTransition(ScreenTransitionData* data);
#endif
-14
View File
@@ -38,20 +38,6 @@ static_assert(sizeof(struct_02000010) == 0x20);
extern struct_02000010 gUnk_02000010;
typedef struct {
u16 type;
u8 field_0x2[4];
s16 playerXPos;
s16 playerYPos;
u8 field_0xa;
u8 area;
u8 room;
u8 playerLayer;
u8 field_0xe;
u8 playerState;
u16 transitionSFX;
} ScreenTransitionData;
typedef struct {
u8 active;
u8 field_0x1;
+16
View File
@@ -0,0 +1,16 @@
#ifndef SUBTASK_H
#define SUBTASK_H
#include "global.h"
// todo: separate headers for each subtask?
extern void sub_080A4528(void);
extern void sub_080A4398(void);
extern void sub_080A7114(u32);
extern void sub_080A3B74(void);
extern void sub_080A4054(void);
extern void sub_080A4D34(void);
extern u32 sub_080A4494(void);
#endif // SUBTASK_H