Identify player functions and update asm.h

This commit is contained in:
theo3
2021-12-28 12:08:30 -08:00
parent 9456e38606
commit 0f65f8fd50
442 changed files with 697 additions and 1092 deletions
+13 -6
View File
@@ -7,21 +7,28 @@ struct Entity_;
extern u32 Random(void);
extern void sub_08000152(u32, u32, u32);
extern u32 GetTileTypeByEntity(struct Entity_*);
extern u32 GetTileTypeByPos(s32 x, s32 y, u32 layer);
extern u32 GetTileType(u32 pos, u32 layer);
extern void SetTile(u32 index, u32 position, u32 layer);
extern u32 sub_080002D0(struct Entity_*);
extern void LoadResourceAsync(const void*, u32, u32);
extern void sub_08001242(struct Entity_*);
extern void sub_08001290(struct Entity_*, u32);
extern void sub_08001324(struct Entity_*);
extern u32 sub_08002632(struct Entity_*);
extern u32 CheckPlayerInRegion(u32 centerX, u32 centerY, u32 radiusX, u32 radiusY);
extern u32 GravityUpdate(struct Entity_*, u32);
extern u32 sub_080043E8(struct Entity_*);
extern void sub_08004484(struct Entity_*, struct Entity_*);
extern u32 sub_080045D4(u32, u32, u32, u32);
extern u32 sub_080045DA(s32, s32);
extern void sub_08004596(struct Entity_*, u32);
extern u32 sub_080045B4(struct Entity_*, u32, u32);
extern u32 CheckOnScreen(struct Entity_*);
extern u32 EntityInRectRadius(struct Entity_*, struct Entity_*, u32, u32);
extern void UpdateAnimationVariableFrames(struct Entity_*, u32);
extern u32 sub_080043E8(struct Entity_*);
extern void sub_08004484(struct Entity_*, struct Entity_*);
extern void ResetCollisionLayer(struct Entity_*);
extern void sub_08004596(struct Entity_*, u32);
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*);
#endif // ASM_H
+1 -1
View File
@@ -17,7 +17,7 @@ void ResolveEntityBelow(Entity*, Entity*);
u32 sub_0806F5A4(u32 idx);
u32 sub_0806F3E4(Entity*);
void sub_0806F69C(Entity*);
void LinearMoveUpdate(Entity*);
extern const s16 gSineTable[64];
extern const s16 gCosineTable[256];
+1 -22
View File
@@ -17,9 +17,6 @@ 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 u32 GetTileTypeByPos(s32 x, s32 y, u32 layer);
extern u32 GetTileType(u32 pos, u32 layer);
extern void SetTile(u32, u32, u32);
extern void SetDirtTile(u32);
extern Entity* CreateDeathFx(Entity*, u32, u32);
extern u8* GetSpriteSubEntryOffsetDataPointer(u32, u32);
@@ -27,19 +24,13 @@ extern bool32 LoadFixedGFX(Entity*, u32);
extern void CreateItemEntity(u32, u32, u32);
extern u32 ProcessMovement(Entity*);
extern void MenuFadeIn(u32, u32);
extern void LoadResourceAsync(const void*, u32, u32);
extern void LoadPaletteGroup(u32);
extern void TryLoadPrologueHyruleTown(void);
extern void LoadGfxGroup(u32);
extern void ResetPlayer(void);
extern u32 IsItemEquipped(u32);
extern bool32 CheckPlayerInRegion(u32 centerX, u32 centerY, u32 radiusX, u32 radiusY);
extern Entity* CreateProjectileWithParent(Entity*, u8, u8);
extern u32 GetTileTypeByEntity(Entity*);
extern u32 GetSaleItemConfirmMessageID(u32);
extern void FlushSprites(void);
extern Entity* CreateProjectile(u32);
extern void RegisterPlayerHitbox();
extern s32 GetItemPrice();
extern void DoExitTransition(ScreenTransitionData*);
extern void CreateDustAt(s32, s32, u32);
@@ -49,7 +40,6 @@ extern Entity* CreateSpeechBubbleExclamationMark(Entity*, s32, s32);
extern Entity* CreateSpeechBubbleSleep(Entity*, s32, s32);
// Unidentified
extern void sub_080791D0();
extern void sub_0805EC9C();
extern void sub_0805EC60(Entity*);
extern void sub_0806D0B0(Entity*);
@@ -128,7 +118,6 @@ extern void sub_080A7114(u32);
extern u32 sub_0807953C(void);
extern void sub_080AE068(Entity*);
extern u32 sub_0800445C(Entity*);
extern void sub_0807A108(void);
extern u32 sub_0801766C(Entity*);
extern void sub_08004168(Entity*);
extern void sub_08056208(void);
@@ -142,13 +131,9 @@ 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 sub_08016A30(Entity*);
extern u32 ResolveCollisionLayer(Entity*);
extern void sub_08077728();
extern void sub_0807AEE4();
extern u32 RunQueuedAction();
extern void sub_0807921C();
extern void UpdateFloorType();
extern void sub_08079938();
extern void sub_0807ACCC(Entity*);
extern void sub_080A2BE4(Entity*, u32);
extern u32 sub_08097ADC(Entity*);
@@ -161,7 +146,6 @@ extern void sub_0802F45C(Entity*);
extern u32 sub_0800419C(Entity*, Entity*, u32, u32);
extern void sub_08004542(Entity*);
extern void sub_08077B20();
extern bool32 CheckOnScreen(Entity*);
extern u32 sub_08017850(Entity*);
extern void sub_080809D4(void);
extern void sub_08080CB4(Entity*);
@@ -188,21 +172,16 @@ extern void sub_0801DFB4(Entity*, u32, u32, u32);
extern void sub_0801E00C();
extern void sub_08078790(Entity*, u32);
extern void sub_080788E0(Entity*);
extern void CreateEzloHint(u32, u32);
extern void sub_08078B48(void);
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 sub_080791BC9();
extern void sub_080791BC();
extern void MessageClose();
extern u32 sub_080542AC(u32);
extern u32 sub_08079FC4(u32);
extern void sub_0800455E(Entity*);
extern u32* sub_08008790(Entity*, u32);
extern void sub_0804ACF8();
extern void sub_0805F8E4(u32 r0, WStruct* r1);
extern Entity* sub_08077C94(ItemBehavior*, u32);
+1 -3
View File
@@ -17,8 +17,7 @@ u32 CheckIsInteriorWithEnemies(void);
u32 CheckIsInteriorNoEnemies(void);
u32 CheckHasMap(void);
s32 ModHealth(s32 deltaHealth);
void ModRupees(s32 rupeeDelta);
u32 ItemIsSword(u32 item);
void sub_080526F8(s32 a1);
u32 sub_08052724(void);
@@ -50,7 +49,6 @@ u32 GetFlagBankOffset(u32 idx);
RoomResInfo* GetCurrentRoomInfo(void);
void sub_08052EA0(void);
void sub_08052FD8(u32 room, u32 area);
void UpdateGlobalProgress(void);
void sub_08053250(void);
void sub_08053320(void);
void sub_080533CC(void);
+17 -5
View File
@@ -211,7 +211,7 @@ typedef struct {
/* */ u8 filler14 : 6;
/*0x3f*/ u8 field_0x3f;
/*0x40*/ u8 hurtType[64];
/*0x80*/ u16 field_0x80;
/*0x80*/ u16 speed_modifier;
/*0x82*/ u8 field_0x82[9];
/*0x8b*/ u8 controlMode;
/*0x8c*/ u16 vel_x;
@@ -277,11 +277,23 @@ extern PlayerState gPlayerState;
extern Stats gStats;
extern Entity gPlayerEntity;
extern u32 GetInventoryValue(u32);
extern s32 ModHealth(s32);
extern void ModRupees(s32);
void SetPlayerControl(PlayerControlMode mode);
void ResetPlayer(void);
void ResetPlayerVelocity(void);
void ResetPlayerAnimationAndAction(void);
void SetPlayerActionNormal(void);
void RespawnAsMinish(void);
extern void SetPlayerControl(PlayerControlMode);
void ResolvePlayerAnimation(void);
void RegisterPlayerHitbox(void);
void UpdateFloorType(void);
void CreateEzloHint(u32, u32);
u32 IsItemEquipped(u32);
u32 GetInventoryValue(u32);
s32 ModHealth(s32 delta);
void ModRupees(s32 delta);
void DeleteClones(void);
#define COPY_FLAG_FROM_TO(base, src, dest) (base) = ((base) & ~(dest)) | (((dest) * ((base) & (src))) / src)
+1 -1
View File
@@ -35,7 +35,7 @@ typedef struct {
/*0x0A*/ s16 roomScrollX;
/*0x0C*/ s16 roomScrollY;
/*0x0E*/ u8 unk5;
/*0x0F*/ u8 unk6;
/*0x0F*/ u8 scroll_flags; // 0x2 = ??, 0x4 = camera scrolling
/*0x10*/ u8 unk_10;
/*0x11*/ s8 oam_offset_x;
/*0x12*/ s8 oam_offset_y;
+2
View File
@@ -61,6 +61,8 @@ void SetFileStatusDeleted(u32 index);
extern const char gUnk_0811E470[];
void UpdateGlobalProgress(void);
#ifdef DEMO_USA
extern const u8* const demoPointers[];
extern const u8 demoUnknown1[];