From 2ff050bdab9b55a51e1906ea89809aa2ccae789e Mon Sep 17 00:00:00 2001 From: Fexty12573 Date: Tue, 2 Jul 2024 13:43:39 +0200 Subject: [PATCH] Document various sprite resource getters and setters --- include/sprite_util.h | 18 +++--- src/overlay006/ov6_022426AC.c | 4 +- src/overlay006/ov6_02243258.c | 16 ++--- src/overlay007/ov7_0224CD28.c | 4 +- src/overlay009/ov9_02249960.c | 2 +- src/overlay021/ov21_021D5AEC.c | 6 +- src/overlay021/ov21_021D76B0.c | 2 +- src/overlay021/ov21_021D94BC.c | 4 +- src/overlay021/ov21_021DC9BC.c | 2 +- src/overlay021/ov21_021E1924.c | 2 +- src/overlay021/ov21_021E4CA4.c | 2 +- src/overlay021/ov21_021E68F4.c | 2 +- src/overlay021/ov21_021E737C.c | 4 +- src/overlay021/ov21_021E8484.c | 2 +- src/overlay022/ov22_02255094.c | 8 +-- src/overlay022/ov22_02259C58.c | 2 +- src/overlay063/ov63_0222AE60.c | 8 +-- src/overlay070/ov70_0225D9A4.c | 2 +- src/overlay107/ov107_02249604.c | 4 +- src/overlay111/ov111_021D2F80.c | 2 +- src/overlay114/ov114_0225C700.c | 2 +- src/sprite_util.c | 105 +++++++++++++------------------- src/unk_020093B4.c | 22 +++---- src/unk_0200A328.c | 44 ++++++------- src/unk_0200C6E4.c | 10 +-- src/unk_0200DA60.c | 4 +- src/unk_0205CA94.c | 4 +- 27 files changed, 134 insertions(+), 153 deletions(-) diff --git a/include/sprite_util.h b/include/sprite_util.h index d72e7cc175..23ceff209b 100644 --- a/include/sprite_util.h +++ b/include/sprite_util.h @@ -42,18 +42,18 @@ BOOL SpriteResourceCollection_IsIDUnused(const SpriteResourceCollection * param0 void SpriteResource_ReleaseData(SpriteResource * param0); void SpriteResourceCollection_Remove(SpriteResourceCollection * param0, SpriteResource * param1); void SpriteResourceCollection_Clear(SpriteResourceCollection * param0); -SpriteResource * sub_02009DC8(const SpriteResourceCollection * param0, int param1); +SpriteResource * SpriteResourceCollection_Find(const SpriteResourceCollection * param0, int param1); int SpriteResource_GetID(const SpriteResource * param0); -NNSG2dCharacterData * sub_02009E1C(const SpriteResource * param0); -NNSG2dPaletteData * sub_02009E34(const SpriteResource * param0); -NNSG2dCellDataBank * sub_02009E4C(const SpriteResource * param0); -NNSG2dCellAnimBankData * sub_02009E64(const SpriteResource * param0); -NNSG2dMultiCellDataBank * sub_02009E7C(const SpriteResource * param0); -NNSG2dMultiCellAnimBankData * sub_02009E94(const SpriteResource * param0); -int sub_02009EAC(const SpriteResource * param0); +NNSG2dCharacterData * SpriteResource_GetCharData(const SpriteResource * param0); +NNSG2dPaletteData * SpriteResource_GetPaletteData(const SpriteResource * param0); +NNSG2dCellDataBank * SpriteResource_GetCellData(const SpriteResource * param0); +NNSG2dCellAnimBankData * SpriteResource_GetCellAnimData(const SpriteResource * param0); +NNSG2dMultiCellDataBank * SpriteResource_GetMultiCellData(const SpriteResource * param0); +NNSG2dMultiCellAnimBankData * SpriteResource_GetMultiCellAnimData(const SpriteResource * param0); +enum SpriteResourceType SpriteResource_GetType(const SpriteResource * param0); NNS_G2D_VRAM_TYPE SpriteResource_GetVRAMType(const SpriteResource *spriteRes); int SpriteResource_GetPaletteIndex(const SpriteResource *spriteRes); -void sub_02009F08(SpriteResource * param0, int param1); +void SpriteResource_SetVRAMType(SpriteResource * param0, NNS_G2D_VRAM_TYPE param1); int sub_02009F34(void); UnkStruct_02009F38 * sub_02009F38(UnkStruct_02009F38 * param0, int param1); void sub_02009F40(const void * param0, UnkStruct_02009F38 * param1, int param2); diff --git a/src/overlay006/ov6_022426AC.c b/src/overlay006/ov6_022426AC.c index 3ada857072..4fe74e9a93 100644 --- a/src/overlay006/ov6_022426AC.c +++ b/src/overlay006/ov6_022426AC.c @@ -170,8 +170,8 @@ static void ov6_02242880(SpriteResourceCollection *param0, SpriteResourceCollect NNSG2dImageProxy *v5; const NNSG2dImagePaletteProxy *v6; - v3 = sub_02009DC8(param0, 0); - v4 = sub_02009DC8(param1, 1); + v3 = SpriteResourceCollection_Find(param0, 0); + v4 = SpriteResourceCollection_Find(param1, 1); sub_0200A3DC(v3); sub_0200A640(v4); diff --git a/src/overlay006/ov6_02243258.c b/src/overlay006/ov6_02243258.c index 918ced47b2..582525cd94 100644 --- a/src/overlay006/ov6_02243258.c +++ b/src/overlay006/ov6_02243258.c @@ -1661,7 +1661,7 @@ static void ov6_02244734(SysTask *param0, void *param1) static void ov6_022447B4(SysTask *param0, void *param1) { UnkStruct_ov6_02243FFC *v0 = param1; - SpriteResource *v1 = sub_02009DC8(v0->unk_200, 0); + SpriteResource *v1 = SpriteResourceCollection_Find(v0->unk_200, 0); switch (v0->unk_268) { case 0: @@ -1675,7 +1675,7 @@ static void ov6_022447B4(SysTask *param0, void *param1) static void ov6_022447EC(SysTask *param0, void *param1) { UnkStruct_ov6_02243FFC *v0 = param1; - SpriteResource *v1 = sub_02009DC8(v0->unk_200, 0); + SpriteResource *v1 = SpriteResourceCollection_Find(v0->unk_200, 0); if (v0->unk_268 == 1) { SpriteResource_ReleaseData(v1); @@ -2095,7 +2095,7 @@ static void ov6_02245118(UnkStruct_ov6_02243FFC *param0, void *param1) SpriteResource *v1; const NNSG2dImageProxy *v2; - v1 = sub_02009DC8(param0->unk_200, 3); + v1 = SpriteResourceCollection_Find(param0->unk_200, 3); v2 = sub_0200A534(v1); v0 = NNS_G2dGetImageLocation(v2, NNS_G2D_VRAM_TYPE_2DMAIN); @@ -2119,9 +2119,9 @@ static void ov6_02245170(UnkStruct_ov6_02243FFC *param0, void *param1) NNSG2dImageProxy *v3; const NNSG2dImagePaletteProxy *v4; - v2 = sub_02009DC8(param0->unk_200, 3); + v2 = SpriteResourceCollection_Find(param0->unk_200, 3); v3 = sub_0200A534(v2); - v1 = sub_02009DC8(param0->unk_204, 2); + v1 = SpriteResourceCollection_Find(param0->unk_204, 2); v4 = sub_0200A72C(v1, v3); v0 = NNS_G2dGetImagePaletteLocation(v4, NNS_G2D_VRAM_TYPE_2DMAIN); @@ -2132,7 +2132,7 @@ static void ov6_02245170(UnkStruct_ov6_02243FFC *param0, void *param1) static void ov6_022451B8(UnkStruct_ov6_02243FFC *param0) { int v0; - SpriteResource *v1 = sub_02009DC8(param0->unk_200, 3); + SpriteResource *v1 = SpriteResourceCollection_Find(param0->unk_200, 3); sub_0200A4E4(v1); SpriteResourceCollection_Remove(param0->unk_200, v1); @@ -2146,7 +2146,7 @@ static void ov6_022451B8(UnkStruct_ov6_02243FFC *param0) GF_ASSERT(v0 < 4); - v1 = sub_02009DC8(param0->unk_204, 2); + v1 = SpriteResourceCollection_Find(param0->unk_204, 2); sub_0200A6DC(v1); SpriteResourceCollection_Remove(param0->unk_204, v1); @@ -2158,7 +2158,7 @@ static void ov6_022451B8(UnkStruct_ov6_02243FFC *param0) } GF_ASSERT(v0 < 3); - v1 = sub_02009DC8(param0->unk_208, 3); + v1 = SpriteResourceCollection_Find(param0->unk_208, 3); SpriteResource_ReleaseData(v1); SpriteResourceCollection_Remove(param0->unk_208, v1); diff --git a/src/overlay007/ov7_0224CD28.c b/src/overlay007/ov7_0224CD28.c index 458bf11ddc..a2ca57de00 100644 --- a/src/overlay007/ov7_0224CD28.c +++ b/src/overlay007/ov7_0224CD28.c @@ -1507,12 +1507,12 @@ static void ov7_0224EB7C(UnkStruct_ov7_0224D008 *param0, u16 param1) return; } - v0 = sub_02009DC8(param0->unk_94.unk_194[0], 2); + v0 = SpriteResourceCollection_Find(param0->unk_94.unk_194[0], 2); SpriteResourceCollection_ModifyChar(param0->unk_94.unk_194[0], v0, 16, Item_FileID(param1, 1), 0, 11); sub_0200A4C0(v0); - v0 = sub_02009DC8(param0->unk_94.unk_194[1], 1); + v0 = SpriteResourceCollection_Find(param0->unk_94.unk_194[1], 1); SpriteResourceCollection_ModifyPalette(param0->unk_94.unk_194[1], v0, 16, Item_FileID(param1, 2), 0, 11); sub_0200A6B8(v0); diff --git a/src/overlay009/ov9_02249960.c b/src/overlay009/ov9_02249960.c index 67b8e50fd9..f6708ce492 100644 --- a/src/overlay009/ov9_02249960.c +++ b/src/overlay009/ov9_02249960.c @@ -2663,7 +2663,7 @@ static void ov9_0224AEE4(UnkStruct_ov9_02249B04 *param0, UnkStruct_ov9_0224B064 { NNSG2dPaletteData *v1; - v1 = sub_02009E34(param1->unk_1BC[0]); + v1 = SpriteResource_GetPaletteData(param1->unk_1BC[0]); { int v2 = 0; UnkStruct_ov9_0224ADC0 *v3 = ¶m0->unk_1D00; diff --git a/src/overlay021/ov21_021D5AEC.c b/src/overlay021/ov21_021D5AEC.c index 04730f2283..341ab2c969 100644 --- a/src/overlay021/ov21_021D5AEC.c +++ b/src/overlay021/ov21_021D5AEC.c @@ -783,13 +783,13 @@ static void ov21_021D6580(UnkStruct_ov21_021D71A8 *param0) { SpriteResource *v0; - v0 = sub_02009DC8(param0->unk_80[0], 81); + v0 = SpriteResourceCollection_Find(param0->unk_80[0], 81); sub_0200A4E4(v0); - v0 = sub_02009DC8(param0->unk_80[1], 3); + v0 = SpriteResourceCollection_Find(param0->unk_80[1], 3); sub_0200A6DC(v0); - v0 = sub_02009DC8(param0->unk_80[0], 111); + v0 = SpriteResourceCollection_Find(param0->unk_80[0], 111); sub_0200A4E4(v0); SpriteResourceCollection_Delete(param0->unk_80[0]); diff --git a/src/overlay021/ov21_021D76B0.c b/src/overlay021/ov21_021D76B0.c index a9f19e2857..eb28849b42 100644 --- a/src/overlay021/ov21_021D76B0.c +++ b/src/overlay021/ov21_021D76B0.c @@ -680,7 +680,7 @@ static void ov21_021D8018(UnkStruct_ov21_021D7C64 *param0, UnkStruct_ov21_021D77 GF_ASSERT(param0->unk_00[0]); - v2 = sub_02009DC8(v3->unk_13C[1], 3 + 1000); + v2 = SpriteResourceCollection_Find(v3->unk_13C[1], 3 + 1000); v1.unk_00 = v3->unk_14C; v1.unk_08 = sub_0200A72C(v2, NULL); diff --git a/src/overlay021/ov21_021D94BC.c b/src/overlay021/ov21_021D94BC.c index 41b6ebdc3b..f13b0017c8 100644 --- a/src/overlay021/ov21_021D94BC.c +++ b/src/overlay021/ov21_021D94BC.c @@ -2686,7 +2686,7 @@ static void ov21_021DBDC8(UnkStruct_ov21_021DC96C *param0, UnkStruct_ov21_021D95 SpriteResource *v1; UnkStruct_ov21_021D13FC *v2 = param1->unk_00; - v1 = sub_02009DC8(v2->unk_13C[1], 3 + 16000); + v1 = SpriteResourceCollection_Find(v2->unk_13C[1], 3 + 16000); v0.unk_00 = v2->unk_14C; v0.unk_08 = sub_0200A72C(v1, NULL); @@ -2711,7 +2711,7 @@ static void ov21_021DBE3C(UnkStruct_ov21_021DC96C *param0, UnkStruct_ov21_021D95 SpriteResource *v1; UnkStruct_ov21_021D13FC *v2 = param1->unk_00; - v1 = sub_02009DC8(v2->unk_13C[1], 3 + 16000); + v1 = SpriteResourceCollection_Find(v2->unk_13C[1], 3 + 16000); v0.unk_00 = v2->unk_14C; v0.unk_08 = sub_0200A72C(v1, NULL); diff --git a/src/overlay021/ov21_021DC9BC.c b/src/overlay021/ov21_021DC9BC.c index 4d085f0168..9acb2ce93c 100644 --- a/src/overlay021/ov21_021DC9BC.c +++ b/src/overlay021/ov21_021DC9BC.c @@ -632,7 +632,7 @@ static void ov21_021DD2E0(UnkStruct_ov21_021DD420 *param0, UnkStruct_ov21_021DCA GF_ASSERT(param0->unk_C8); - v2 = sub_02009DC8(param1->unk_00->unk_13C[1], 14 + 6000); + v2 = SpriteResourceCollection_Find(param1->unk_00->unk_13C[1], 14 + 6000); v1.unk_00 = v3->unk_14C; v1.unk_08 = sub_0200A72C(v2, NULL); diff --git a/src/overlay021/ov21_021E1924.c b/src/overlay021/ov21_021E1924.c index cd2ed29a0f..fc95c95cbc 100644 --- a/src/overlay021/ov21_021E1924.c +++ b/src/overlay021/ov21_021E1924.c @@ -787,7 +787,7 @@ static void ov21_021E2478(UnkStruct_ov21_021E2588 *param0, UnkStruct_ov21_021E1A GF_ASSERT(param0->unk_00[0]); - v2 = sub_02009DC8(v3->unk_13C[1], 11 + 2100); + v2 = SpriteResourceCollection_Find(v3->unk_13C[1], 11 + 2100); v1.unk_00 = v3->unk_14C; v1.unk_08 = sub_0200A72C(v2, NULL); diff --git a/src/overlay021/ov21_021E4CA4.c b/src/overlay021/ov21_021E4CA4.c index 03a70aab62..f859524624 100644 --- a/src/overlay021/ov21_021E4CA4.c +++ b/src/overlay021/ov21_021E4CA4.c @@ -925,7 +925,7 @@ static void ov21_021E58B8(UnkStruct_ov21_021E5004 *param0, UnkStruct_ov21_021E4D int v4; u32 v5; - v2 = sub_02009DC8(v3->unk_13C[1], 18 + 10000); + v2 = SpriteResourceCollection_Find(v3->unk_13C[1], 18 + 10000); v1.unk_00 = v3->unk_14C; v1.unk_08 = sub_0200A72C(v2, NULL); diff --git a/src/overlay021/ov21_021E68F4.c b/src/overlay021/ov21_021E68F4.c index 9258c17edc..0424a37de9 100644 --- a/src/overlay021/ov21_021E68F4.c +++ b/src/overlay021/ov21_021E68F4.c @@ -611,7 +611,7 @@ static void ov21_021E70D4(UnkStruct_ov21_021E6C60 *param0, UnkStruct_ov21_021E6A GF_ASSERT(param0->unk_00[0]); - v2 = sub_02009DC8(v3->unk_13C[1], 11 + 2100); + v2 = SpriteResourceCollection_Find(v3->unk_13C[1], 11 + 2100); v1.unk_00 = v3->unk_14C; v1.unk_08 = sub_0200A72C(v2, NULL); diff --git a/src/overlay021/ov21_021E737C.c b/src/overlay021/ov21_021E737C.c index 6494c3c599..7213c0829b 100644 --- a/src/overlay021/ov21_021E737C.c +++ b/src/overlay021/ov21_021E737C.c @@ -1085,13 +1085,13 @@ static const UnkStruct_ov21_021E9DB0 *ov21_021E83D8(const UnkStruct_ov21_021E9DB static void ov21_021E8400(UnkStruct_ov21_021E7714 *param0, u8 param1, u16 param2) { - NNSG2dPaletteData *v0 = sub_02009E34(param0->unk_14[1]); + NNSG2dPaletteData *v0 = SpriteResource_GetPaletteData(param0->unk_14[1]); const NNSG2dImagePaletteProxy *v1 = sub_0200A72C(param0->unk_14[1], NULL); sub_0200393C(v0->pRawData, param0->unk_BC, 3 * 16, param1, param2); sub_0201DC68(NNS_GFD_DST_2D_OBJ_PLTT_MAIN, NNS_G2dGetImagePaletteLocation(v1, NNS_G2D_VRAM_TYPE_2DMAIN), param0->unk_BC, 3 * 32); - v0 = sub_02009E34(param0->unk_24[1]); + v0 = SpriteResource_GetPaletteData(param0->unk_24[1]); v1 = sub_0200A72C(param0->unk_24[1], NULL); sub_0200393C(v0->pRawData, param0->unk_C0, 5 * 16, param1, param2); diff --git a/src/overlay021/ov21_021E8484.c b/src/overlay021/ov21_021E8484.c index 6b2839e060..6870e2313a 100644 --- a/src/overlay021/ov21_021E8484.c +++ b/src/overlay021/ov21_021E8484.c @@ -575,7 +575,7 @@ static void ov21_021E8B40(UnkStruct_ov21_021E8794 *param0, UnkStruct_ov21_021E85 GF_ASSERT(param0->unk_00[0]); - v2 = sub_02009DC8(v3->unk_13C[1], 11 + 2100); + v2 = SpriteResourceCollection_Find(v3->unk_13C[1], 11 + 2100); v1.unk_00 = v3->unk_14C; v1.unk_08 = sub_0200A72C(v2, NULL); diff --git a/src/overlay022/ov22_02255094.c b/src/overlay022/ov22_02255094.c index cdb436ae32..6898ef7eeb 100644 --- a/src/overlay022/ov22_02255094.c +++ b/src/overlay022/ov22_02255094.c @@ -202,7 +202,7 @@ void ov22_022552C4(UnkStruct_ov22_0225A0E4 *param0, int param1) { SpriteResource *v0; - v0 = sub_02009DC8(param0->unk_48[0], param1); + v0 = SpriteResourceCollection_Find(param0->unk_48[0], param1); SpriteResourceCollection_Remove(param0->unk_48[0], v0); } @@ -210,7 +210,7 @@ void ov22_022552D8(UnkStruct_ov22_0225A0E4 *param0, int param1) { SpriteResource *v0; - v0 = sub_02009DC8(param0->unk_48[1], param1); + v0 = SpriteResourceCollection_Find(param0->unk_48[1], param1); SpriteResourceCollection_Remove(param0->unk_48[1], v0); } @@ -218,7 +218,7 @@ void ov22_022552EC(UnkStruct_ov22_0225A0E4 *param0, int param1) { SpriteResource *v0; - v0 = sub_02009DC8(param0->unk_48[2], param1); + v0 = SpriteResourceCollection_Find(param0->unk_48[2], param1); SpriteResourceCollection_Remove(param0->unk_48[2], v0); } @@ -226,7 +226,7 @@ void ov22_02255300(UnkStruct_ov22_0225A0E4 *param0, int param1) { SpriteResource *v0; - v0 = sub_02009DC8(param0->unk_48[3], param1); + v0 = SpriteResourceCollection_Find(param0->unk_48[3], param1); SpriteResourceCollection_Remove(param0->unk_48[3], v0); } diff --git a/src/overlay022/ov22_02259C58.c b/src/overlay022/ov22_02259C58.c index 26b94a1796..1486ae60ad 100644 --- a/src/overlay022/ov22_02259C58.c +++ b/src/overlay022/ov22_02259C58.c @@ -413,7 +413,7 @@ asm static void ov22_0225A154 (UnkStruct_ov22_0225A154 * param0, int param1, Unk str r2, [sp, #0x90] str r0, [sp, #0xa0] ldr r0, [r4, #0x4c] - bl sub_02009DC8 + bl SpriteResourceCollection_Find mov r1, #0 bl sub_0200A72C str r0, [sp, #0x98] diff --git a/src/overlay063/ov63_0222AE60.c b/src/overlay063/ov63_0222AE60.c index 9bf56a2c2a..70de47c713 100644 --- a/src/overlay063/ov63_0222AE60.c +++ b/src/overlay063/ov63_0222AE60.c @@ -749,7 +749,7 @@ static void ov63_0222B510(UnkStruct_ov63_0222AE60 *param0, u32 param1, u32 param param0->unk_10[param1].unk_04[0] = SpriteResourceCollection_AddCharFrom(param0->unk_2280[0], param0->unk_2294[0], ((((param1) * 2) + 13) + 1), 0, 0x200 + param1, param2, param4); param0->unk_10[param1].unk_04[1] = SpriteResourceCollection_AddPaletteFrom(param0->unk_2280[1], param0->unk_2294[0], (((param1) * 2) + 13), 0, 0x200 + param1, param2, 1, param4); - v0 = sub_02009E1C(param0->unk_10[param1].unk_04[0]); + v0 = SpriteResource_GetCharData(param0->unk_10[param1].unk_04[0]); if (v0->szByte == 0x1800) { v2 = 0; @@ -805,10 +805,10 @@ static void ov63_0222B664(UnkStruct_ov63_0222AE60 *param0, u32 param1, u32 param param0->unk_10[param1].unk_04[0] = SpriteResourceCollection_AddCharFrom(param0->unk_2280[0], param0->unk_2294[1], (1 + ((param1)-2)), 0, 0x200 + param1, param2, param4); if (param3 == 2) { - v0 = sub_02009E1C(param0->unk_10[param1].unk_04[0]); + v0 = SpriteResource_GetCharData(param0->unk_10[param1].unk_04[0]); v0->szByte = 0x800; } else if (param3 == 1) { - v0 = sub_02009E1C(param0->unk_10[param1].unk_04[0]); + v0 = SpriteResource_GetCharData(param0->unk_10[param1].unk_04[0]); v0->szByte = 0x1400; } @@ -1132,7 +1132,7 @@ static void ov63_0222BC80(UnkStruct_ov63_0222AE60 *param0, SpriteResource *param NNSG2dPaletteData *v0; u32 v1[2]; - v0 = sub_02009E34(param1); + v0 = SpriteResource_GetPaletteData(param1); v1[0] = sub_0200A760(param1, NNS_G2D_VRAM_TYPE_2DMAIN); v1[1] = sub_0200A760(param1, NNS_G2D_VRAM_TYPE_2DSUB); diff --git a/src/overlay070/ov70_0225D9A4.c b/src/overlay070/ov70_0225D9A4.c index 23d852b6f2..263dd87e40 100644 --- a/src/overlay070/ov70_0225D9A4.c +++ b/src/overlay070/ov70_0225D9A4.c @@ -2780,7 +2780,7 @@ static void ov70_02260080(UnkStruct_ov70_0225FA84 *param0, UnkStruct_ov70_0225E4 GF_ASSERT(v5); param0->unk_6C[1] = SpriteResourceCollection_AddPalette(param1->unk_194[1], v4.unk_00, v4.unk_08, 0, 101, NNS_G2D_VRAM_TYPE_2DSUB, 1, param3); - ov70_02260268(sub_02009E34(param0->unk_6C[1])); + ov70_02260268(SpriteResource_GetPaletteData(param0->unk_6C[1])); v5 = sub_0200A640(param0->unk_6C[1]); GF_ASSERT(v5); diff --git a/src/overlay107/ov107_02249604.c b/src/overlay107/ov107_02249604.c index 0164faed12..7e7529b8cf 100644 --- a/src/overlay107/ov107_02249604.c +++ b/src/overlay107/ov107_02249604.c @@ -182,7 +182,7 @@ void ov107_022499BC(UnkStruct_ov107_02249954 *param0, u16 param1) { SpriteResource *v0; - v0 = sub_02009DC8(param0->unk_190[0], 1); + v0 = SpriteResourceCollection_Find(param0->unk_190[0], 1); SpriteResourceCollection_ModifyChar(param0->unk_190[0], v0, 16, Item_FileID(param1, 1), 0, 100); sub_0200A4C0(v0); @@ -194,7 +194,7 @@ void ov107_022499FC(UnkStruct_ov107_02249954 *param0, u16 param1) { SpriteResource *v0; - v0 = sub_02009DC8(param0->unk_190[1], 1); + v0 = SpriteResourceCollection_Find(param0->unk_190[1], 1); SpriteResourceCollection_ModifyPalette(param0->unk_190[1], v0, 16, Item_FileID(param1, 2), 0, 100); sub_0200A6B8(v0); diff --git a/src/overlay111/ov111_021D2F80.c b/src/overlay111/ov111_021D2F80.c index f2a06ab008..13a97c7f3d 100644 --- a/src/overlay111/ov111_021D2F80.c +++ b/src/overlay111/ov111_021D2F80.c @@ -207,7 +207,7 @@ void ov111_021D33B0(UnkStruct_ov111_021D2F80 *param0, int param1) GF_ASSERT(0); } - v0 = sub_02009DC8(param0->unk_190[1], 3); + v0 = SpriteResourceCollection_Find(param0->unk_190[1], 3); SpriteResourceCollection_ModifyPalette(param0->unk_190[1], v0, 184, Unk_ov111_021D3940[param1], 0, 115); sub_0200A6B8(v0); diff --git a/src/overlay114/ov114_0225C700.c b/src/overlay114/ov114_0225C700.c index eddabe6343..ca828ea91e 100644 --- a/src/overlay114/ov114_0225C700.c +++ b/src/overlay114/ov114_0225C700.c @@ -1137,7 +1137,7 @@ void ov114_0225CB38(UnkStruct_ov114_0225CAD4 *param0) int ov114_0225CB74(UnkStruct_ov114_0225CAD4 *param0) { - SpriteResource *v0 = sub_02009DC8(param0->unk_10.unk_00[1], 5000); + SpriteResource *v0 = SpriteResourceCollection_Find(param0->unk_10.unk_00[1], 5000); return sub_0200A760(v0, NNS_G2D_VRAM_TYPE_2DMAIN); } diff --git a/src/sprite_util.c b/src/sprite_util.c index f289c8741d..b07c160966 100644 --- a/src/sprite_util.c +++ b/src/sprite_util.c @@ -509,19 +509,16 @@ void SpriteResourceCollection_Clear(SpriteResourceCollection *spriteResources) } } -SpriteResource * sub_02009DC8 (const SpriteResourceCollection * param0, int param1) +SpriteResource *SpriteResourceCollection_Find(const SpriteResourceCollection *spriteResources, int id) { - int v0; - int v1; + GF_ASSERT(spriteResources); - GF_ASSERT(param0); - - for (v0 = 0; v0 < param0->capacity; v0++) { - if (param0->resources[v0].rawResource) { - v1 = Resource_GetID(param0->resources[v0].rawResource); - - if (v1 == param1) { - return param0->resources + v0; + for (int i = 0; i < spriteResources->capacity; i++) { + if (spriteResources->resources[i].rawResource) { + // Explicit assignment is needed to match + int resID = Resource_GetID(spriteResources->resources[i].rawResource); + if (resID == id) { + return spriteResources->resources + i; } } } @@ -535,70 +532,58 @@ int SpriteResource_GetID(const SpriteResource *spriteRes) return Resource_GetID(spriteRes->rawResource); } -NNSG2dCharacterData * sub_02009E1C (const SpriteResource * param0) +NNSG2dCharacterData *SpriteResource_GetCharData(const SpriteResource *spriteRes) { - CharResourceData * v0; + GF_ASSERT(spriteRes->type == SPRITE_RESOURCE_CHAR); - GF_ASSERT(param0->type == 0); - - v0 = (CharResourceData *)SpriteResource_GetData(param0); - return v0->charData; + CharResourceData *charRes = SpriteResource_GetData(spriteRes); + return charRes->charData; } -NNSG2dPaletteData * sub_02009E34 (const SpriteResource * param0) +NNSG2dPaletteData *SpriteResource_GetPaletteData(const SpriteResource *spriteRes) { - PaletteResourceData * v0; + GF_ASSERT(spriteRes->type == SPRITE_RESOURCE_PALETTE); - GF_ASSERT(param0->type == 1); - - v0 = (PaletteResourceData *)SpriteResource_GetData(param0); - return v0->paletteData; + PaletteResourceData *paletteRes = SpriteResource_GetData(spriteRes); + return paletteRes->paletteData; } -NNSG2dCellDataBank * sub_02009E4C (const SpriteResource * param0) +NNSG2dCellDataBank *SpriteResource_GetCellData(const SpriteResource *spriteRes) { - CellResourceData * v0; + GF_ASSERT(spriteRes->type == SPRITE_RESOURCE_CELL); - GF_ASSERT(param0->type == 2); - - v0 = (CellResourceData *)SpriteResource_GetData(param0); - return v0->cellBank; + CellResourceData *cellRes = SpriteResource_GetData(spriteRes); + return cellRes->cellBank; } -NNSG2dCellAnimBankData * sub_02009E64 (const SpriteResource * param0) +NNSG2dCellAnimBankData *SpriteResource_GetCellAnimData(const SpriteResource *spriteRes) { - CellAnimResourceData * v0; + GF_ASSERT(spriteRes->type == SPRITE_RESOURCE_CELL_ANIM); - GF_ASSERT(param0->type == 3); - - v0 = (CellAnimResourceData *)SpriteResource_GetData(param0); - return v0->animBank; + CellAnimResourceData *cellAnimRes = SpriteResource_GetData(spriteRes); + return cellAnimRes->animBank; } -NNSG2dMultiCellDataBank * sub_02009E7C (const SpriteResource * param0) +NNSG2dMultiCellDataBank *SpriteResource_GetMultiCellData(const SpriteResource *spriteRes) { - MultiCellResourceData * v0; + GF_ASSERT(spriteRes->type == SPRITE_RESOURCE_MULTI_CELL); - GF_ASSERT(param0->type == 4); - - v0 = (MultiCellResourceData *)SpriteResource_GetData(param0); - return v0->multiCellBank; + MultiCellResourceData *multiCellRes = SpriteResource_GetData(spriteRes); + return multiCellRes->multiCellBank; } -NNSG2dMultiCellAnimBankData * sub_02009E94 (const SpriteResource * param0) +NNSG2dMultiCellAnimBankData *SpriteResource_GetMultiCellAnimData(const SpriteResource *spriteRes) { - MultiCellAnimResourceData * v0; + GF_ASSERT(spriteRes->type == SPRITE_RESOURCE_MULTI_CELL_ANIM); - GF_ASSERT(param0->type == 5); - - v0 = (MultiCellAnimResourceData *)SpriteResource_GetData(param0); - return v0->multiCellAnimBank; + MultiCellAnimResourceData *multiCellAnimRes = SpriteResource_GetData(spriteRes); + return multiCellAnimRes->multiCellAnimBank; } -int sub_02009EAC (const SpriteResource * param0) +enum SpriteResourceType SpriteResource_GetType(const SpriteResource *spriteRes) { - GF_ASSERT(param0); - return param0->type; + GF_ASSERT(spriteRes); + return spriteRes->type; } NNS_G2D_VRAM_TYPE SpriteResource_GetVRAMType(const SpriteResource *spriteRes) @@ -630,22 +615,18 @@ int SpriteResource_GetPaletteIndex(const SpriteResource *spriteRes) return 0; } -void sub_02009F08 (SpriteResource * param0, int param1) +void SpriteResource_SetVRAMType(SpriteResource *spriteRes, NNS_G2D_VRAM_TYPE vramType) { - GF_ASSERT(param0); + GF_ASSERT(spriteRes); - if (param0->type == 0) { - CharResourceData * v0; - - v0 = SpriteResource_GetData(param0); - v0->vramType = param1; + if (spriteRes->type == SPRITE_RESOURCE_CHAR) { + CharResourceData *charRes = SpriteResource_GetData(spriteRes); + charRes->vramType = vramType; } - if (param0->type == 1) { - PaletteResourceData * v1; - - v1 = SpriteResource_GetData(param0); - v1->vramType = param1; + if (spriteRes->type == SPRITE_RESOURCE_PALETTE) { + PaletteResourceData *paletteRes = SpriteResource_GetData(spriteRes); + paletteRes->vramType = vramType; } } diff --git a/src/unk_020093B4.c b/src/unk_020093B4.c index 93d843d9cf..0ddb1e1b07 100644 --- a/src/unk_020093B4.c +++ b/src/unk_020093B4.c @@ -34,29 +34,29 @@ void sub_020093B4(CellActorResourceData *param0, int param1, int param2, int par GF_ASSERT(param11); GF_ASSERT(param0); - v0 = sub_02009DC8(param9, param1); + v0 = SpriteResourceCollection_Find(param9, param1); GF_ASSERT(v0); - v1 = sub_02009DC8(param10, param2); + v1 = SpriteResourceCollection_Find(param10, param2); GF_ASSERT(v1); - v2 = sub_02009DC8(param11, param3); + v2 = SpriteResourceCollection_Find(param11, param3); GF_ASSERT(v2); if (param12) { if (param4 != 0xffffffff) { - v3 = sub_02009DC8(param12, param4); + v3 = SpriteResourceCollection_Find(param12, param4); GF_ASSERT(v3); } } if (param13 != NULL) { if (param5 != 0xffffffff) { - v4 = sub_02009DC8(param13, param5); + v4 = SpriteResourceCollection_Find(param13, param5); } if (param6 != 0xffffffff) { - v5 = sub_02009DC8(param14, param6); + v5 = SpriteResourceCollection_Find(param14, param6); } } @@ -64,7 +64,7 @@ void sub_020093B4(CellActorResourceData *param0, int param1, int param2, int par v6 = sub_0200A558(v0, v2); GF_ASSERT(v6); - param0->charData = sub_02009E1C(v0); + param0->charData = SpriteResource_GetCharData(v0); } else { v6 = sub_0200A534(v0); GF_ASSERT(v6); @@ -73,17 +73,17 @@ void sub_020093B4(CellActorResourceData *param0, int param1, int param2, int par param0->paletteProxy = sub_0200A72C(v1, v6); param0->imageProxy = v6; - param0->cellBank = sub_02009E4C(v2); + param0->cellBank = SpriteResource_GetCellData(v2); if (v3) { - param0->cellAnimBank = sub_02009E64(v3); + param0->cellAnimBank = SpriteResource_GetCellAnimData(v3); } else { param0->cellAnimBank = NULL; } if (v4) { - param0->multiCellBank = sub_02009E7C(v4); - param0->multiCellAnimBank = sub_02009E94(v5); + param0->multiCellBank = SpriteResource_GetMultiCellData(v4); + param0->multiCellAnimBank = SpriteResource_GetMultiCellAnimData(v5); } else { param0->multiCellBank = NULL; param0->multiCellAnimBank = NULL; diff --git a/src/unk_0200A328.c b/src/unk_0200A328.c index af2e9f0b57..ef2e00a1d8 100644 --- a/src/unk_0200A328.c +++ b/src/unk_0200A328.c @@ -17,9 +17,9 @@ BOOL sub_0200A328(const SpriteResource *param0) UnkStruct_0200A328 v0; GF_ASSERT(param0); - GF_ASSERT(sub_02009EAC(param0) == 0); + GF_ASSERT(SpriteResource_GetType(param0) == 0); - v0.unk_00 = sub_02009E1C(param0); + v0.unk_00 = SpriteResource_GetCharData(param0); v0.unk_04 = SpriteResource_GetVRAMType(param0); v0.unk_08 = SpriteResource_GetID(param0); v0.unk_0C = 0; @@ -47,9 +47,9 @@ BOOL sub_0200A39C(const SpriteResource *param0) UnkStruct_0200A328 v0; GF_ASSERT(param0); - GF_ASSERT(sub_02009EAC(param0) == 0); + GF_ASSERT(SpriteResource_GetType(param0) == 0); - v0.unk_00 = sub_02009E1C(param0); + v0.unk_00 = SpriteResource_GetCharData(param0); v0.unk_04 = SpriteResource_GetVRAMType(param0); v0.unk_08 = SpriteResource_GetID(param0); v0.unk_0C = 0; @@ -62,9 +62,9 @@ BOOL sub_0200A3DC(const SpriteResource *param0) UnkStruct_0200A328 v0; GF_ASSERT(param0); - GF_ASSERT(sub_02009EAC(param0) == 0); + GF_ASSERT(SpriteResource_GetType(param0) == 0); - v0.unk_00 = sub_02009E1C(param0); + v0.unk_00 = SpriteResource_GetCharData(param0); v0.unk_04 = SpriteResource_GetVRAMType(param0); v0.unk_08 = SpriteResource_GetID(param0); v0.unk_0C = 1; @@ -92,9 +92,9 @@ BOOL sub_0200A450(const SpriteResource *param0) UnkStruct_0200A328 v0; GF_ASSERT(param0); - GF_ASSERT(sub_02009EAC(param0) == 0); + GF_ASSERT(SpriteResource_GetType(param0) == 0); - v0.unk_00 = sub_02009E1C(param0); + v0.unk_00 = SpriteResource_GetCharData(param0); v0.unk_04 = SpriteResource_GetVRAMType(param0); v0.unk_08 = SpriteResource_GetID(param0); v0.unk_0C = 1; @@ -111,7 +111,7 @@ void sub_0200A490(const SpriteResource *param0, const SpriteResource *param1) GF_ASSERT(param1); v0 = SpriteResource_GetID(param0); - v1 = sub_02009E1C(param1); + v1 = SpriteResource_GetCharData(param1); sub_0201EB08(v0, v1); } @@ -124,7 +124,7 @@ void sub_0200A4C0(const SpriteResource *param0) GF_ASSERT(param0); v0 = SpriteResource_GetID(param0); - v1 = sub_02009E1C(param0); + v1 = SpriteResource_GetCharData(param0); sub_0201EB08(v0, v1); } @@ -134,7 +134,7 @@ void sub_0200A4E4(SpriteResource *param0) int v0; GF_ASSERT(param0); - GF_ASSERT(sub_02009EAC(param0) == 0); + GF_ASSERT(SpriteResource_GetType(param0) == 0); v0 = SpriteResource_GetID(param0); sub_0201EB50(v0); @@ -158,7 +158,7 @@ NNSG2dImageProxy *sub_0200A534(const SpriteResource *param0) int v0; GF_ASSERT(param0); - GF_ASSERT(sub_02009EAC(param0) == 0); + GF_ASSERT(SpriteResource_GetType(param0) == 0); v0 = SpriteResource_GetID(param0); return sub_0201EBDC(v0); @@ -171,12 +171,12 @@ NNSG2dImageProxy *sub_0200A558(const SpriteResource *param0, const SpriteResourc NNSG2dImageProxy *v2; GF_ASSERT(param0); - GF_ASSERT(sub_02009EAC(param0) == 0); + GF_ASSERT(SpriteResource_GetType(param0) == 0); GF_ASSERT(param1); - GF_ASSERT(sub_02009EAC(param1) == 2); + GF_ASSERT(SpriteResource_GetType(param1) == 2); v0 = SpriteResource_GetID(param0); - v1 = sub_02009E4C(param1); + v1 = SpriteResource_GetCellData(param1); v2 = sub_0201EC00(v0, v1->pVramTransferData->szByteMax); if (v2 == NULL) { @@ -200,9 +200,9 @@ BOOL sub_0200A5C8(const SpriteResource *param0) UnkStruct_0200A5C8 v0; GF_ASSERT(param0); - GF_ASSERT(sub_02009EAC(param0) == 1); + GF_ASSERT(SpriteResource_GetType(param0) == 1); - v0.unk_00 = sub_02009E34(param0); + v0.unk_00 = SpriteResource_GetPaletteData(param0); v0.unk_04 = SpriteResource_GetVRAMType(param0); v0.unk_0C = SpriteResource_GetID(param0); v0.unk_08 = SpriteResource_GetPaletteIndex(param0); @@ -230,9 +230,9 @@ BOOL sub_0200A640(const SpriteResource *param0) UnkStruct_0200A5C8 v0; GF_ASSERT(param0); - GF_ASSERT(sub_02009EAC(param0) == 1); + GF_ASSERT(SpriteResource_GetType(param0) == 1); - v0.unk_00 = sub_02009E34(param0); + v0.unk_00 = SpriteResource_GetPaletteData(param0); v0.unk_04 = SpriteResource_GetVRAMType(param0); v0.unk_0C = SpriteResource_GetID(param0); v0.unk_08 = SpriteResource_GetPaletteIndex(param0); @@ -264,7 +264,7 @@ void sub_0200A6B8(const SpriteResource *param0) GF_ASSERT(param0); v1 = SpriteResource_GetID(param0); - v0 = sub_02009E34(param0); + v0 = SpriteResource_GetPaletteData(param0); sub_0201F990(v1, v0); } @@ -274,7 +274,7 @@ void sub_0200A6DC(SpriteResource *param0) int v0; GF_ASSERT(param0); - GF_ASSERT(sub_02009EAC(param0) == 1); + GF_ASSERT(SpriteResource_GetType(param0) == 1); v0 = SpriteResource_GetID(param0); sub_0201F9F0(v0); @@ -298,7 +298,7 @@ const NNSG2dImagePaletteProxy *sub_0200A72C(const SpriteResource *param0, NNSG2d int v0; GF_ASSERT(param0); - GF_ASSERT(sub_02009EAC(param0) == 1); + GF_ASSERT(SpriteResource_GetType(param0) == 1); v0 = SpriteResource_GetID(param0); diff --git a/src/unk_0200C6E4.c b/src/unk_0200C6E4.c index 63a48ee798..b760894c05 100644 --- a/src/unk_0200C6E4.c +++ b/src/unk_0200C6E4.c @@ -588,13 +588,13 @@ CellActorData *SpriteActor_LoadResources(SpriteRenderer *param0, SpriteGfxHandle const NNSG2dImagePaletteProxy *sub_0200D04C(SpriteGfxHandler *param0, int param1) { - SpriteResource *v0 = sub_02009DC8(param0->unk_0C[1], param1); + SpriteResource *v0 = SpriteResourceCollection_Find(param0->unk_0C[1], param1); return sub_0200A72C(v0, NULL); } u32 sub_0200D05C(SpriteGfxHandler *param0, int param1, NNS_G2D_VRAM_TYPE param2) { - SpriteResource *v0 = sub_02009DC8(param0->unk_0C[1], param1); + SpriteResource *v0 = SpriteResourceCollection_Find(param0->unk_0C[1], param1); return sub_0200A760(v0, param2); } @@ -1311,7 +1311,7 @@ void sub_0200D948(SpriteRenderer *param0, SpriteGfxHandler *param1, int param2, { SpriteResource *v0; - v0 = sub_02009DC8(param1->unk_0C[0], param5); + v0 = SpriteResourceCollection_Find(param1->unk_0C[0], param5); SpriteResourceCollection_ModifyChar(param1->unk_0C[0], v0, param2, param3, param4, param0->unk_00); sub_0200A4C0(v0); @@ -1321,7 +1321,7 @@ void sub_0200D97C(SpriteRenderer *param0, SpriteGfxHandler *param1, int param2, { SpriteResource *v0; - v0 = sub_02009DC8(param1->unk_0C[1], param5); + v0 = SpriteResourceCollection_Find(param1->unk_0C[1], param5); SpriteResourceCollection_ModifyPalette(param1->unk_0C[1], v0, param2, param3, param4, param0->unk_00); sub_0200A6B8(v0); @@ -1336,7 +1336,7 @@ void sub_0200D9B4(SpriteRenderer *param0, SpriteGfxHandler *param1, NARC *param2 { SpriteResource *v0; - v0 = sub_02009DC8(param1->unk_0C[0], param5); + v0 = SpriteResourceCollection_Find(param1->unk_0C[0], param5); SpriteResourceCollection_ModifyCharFrom(param1->unk_0C[0], v0, param2, param3, param4, param0->unk_00); sub_0200A4C0(v0); diff --git a/src/unk_0200DA60.c b/src/unk_0200DA60.c index 73982bb4df..8ec46d0897 100644 --- a/src/unk_0200DA60.c +++ b/src/unk_0200DA60.c @@ -684,7 +684,7 @@ static void sub_0200EE98(UnkStruct_ov5_021D30A8 *param0, ArchivedSprite *param1) sub_020135F0(param1->archive, param1->character, param0->unk_1C6, &v7, &v0[(32 * 10 * 10)]); } - v2 = sub_02009DC8(param0->unk_194[0], 89301); + v2 = SpriteResourceCollection_Find(param0->unk_194[0], 89301); v3 = sub_0200A534(v2); v1 = NNS_G2dGetImageLocation(v3, NNS_G2D_VRAM_TYPE_2DMAIN); @@ -694,7 +694,7 @@ static void sub_0200EE98(UnkStruct_ov5_021D30A8 *param0, ArchivedSprite *param1) Heap_FreeToHeap(v0); v0 = sub_02013660(param1->archive, param1->palette, param0->unk_1C6); - v4 = sub_02009DC8(param0->unk_194[1], 89301); + v4 = SpriteResourceCollection_Find(param0->unk_194[1], 89301); v5 = sub_0200A72C(v4, v3); v1 = NNS_G2dGetImagePaletteLocation(v5, NNS_G2D_VRAM_TYPE_2DMAIN); diff --git a/src/unk_0205CA94.c b/src/unk_0205CA94.c index b728f69358..6cf2027a79 100644 --- a/src/unk_0205CA94.c +++ b/src/unk_0205CA94.c @@ -444,13 +444,13 @@ static void sub_0205D0D8(UnkStruct_0205D094 *param0, int param1, u32 param2) param0->unk_20[0] = sub_0205D1C4(param0->unk_08[0], ¶m0->unk_18[0], Unk_020ED8B4[0][param1]); for (v0 = 0; v0 < param0->unk_18[0]->unk_08; v0++) { - sub_02009F08(param0->unk_18[0]->unk_00[v0], param2); + SpriteResource_SetVRAMType(param0->unk_18[0]->unk_00[v0], param2); } param0->unk_20[1] = sub_0205D1C4(param0->unk_08[1], ¶m0->unk_18[1], Unk_020ED8B4[1][param1]); for (v0 = 0; v0 < param0->unk_18[1]->unk_08; v0++) { - sub_02009F08(param0->unk_18[1]->unk_00[v0], param2); + SpriteResource_SetVRAMType(param0->unk_18[1]->unk_00[v0], param2); } param0->unk_20[2] = sub_0205D1C4(param0->unk_08[2], NULL, 0);