From 15d44ed724988e93c010c48d2473b0b02707a4e0 Mon Sep 17 00:00:00 2001 From: rozlette Date: Mon, 15 Apr 2019 21:01:57 -0500 Subject: [PATCH] Add z_effect_soft_sprite --- Makefile | 2 +- codescript.txt | 4 +- functions.py | 24 + include/functions.h | 1175 ++++++++++++++- include/structs.h | 57 +- include/variables.h | 1283 ++++++++++++++++- .../ovl_Bg_Fu_Kaiten_0x80ACB400.c | 2 +- .../ovl_Bg_Ikana_Ray_0x80BD53C0.c | 2 +- src/code/z_effect_soft_sprite.c | 630 ++++++++ undef.txt | 4 +- variables.py | 2 + 11 files changed, 3137 insertions(+), 48 deletions(-) create mode 100644 src/code/z_effect_soft_sprite.c diff --git a/Makefile b/Makefile index 098ed339d2..90d09be9f1 100644 --- a/Makefile +++ b/Makefile @@ -74,7 +74,7 @@ $(shell mkdir -p build/src/code) $(shell mkdir -p build/src/boot_O2_g3) $(shell mkdir -p build/src/boot_O1) -check: $(ROM) code.bin boot.bin +check: $(ROM) @md5sum -c checksum.md5 $(ROM): $(ROM_FILES) diff --git a/codescript.txt b/codescript.txt index f44d6a1ff8..b78e7b77e2 100644 --- a/codescript.txt +++ b/codescript.txt @@ -204,11 +204,11 @@ SECTIONS build/asm/z_eff_ss_dead.o(.text) build/asm/z_eff_tire_mark.o(.text) build/asm/code_0x800AF710.o(.text) - build/asm/z_effect_soft_sprite.o(.text) + build/src/code/z_effect_soft_sprite.o(.text) build/asm/z_effect_soft_sprite_old_init.o(.text) build/asm/flg_set.o(.text) build/asm/z_DLF.o(.text) - build/asm/code_0x800B3AD0.o(.text) + build/asm/z_actor.o(.text) build/asm/code_0x800BF9A0.o(.text) build/asm/z_bgcheck.o(.text) build/asm/code_0x800CAAD0.o(.text) diff --git a/functions.py b/functions.py index 6a17b2b81c..ee34e1a9c5 100644 --- a/functions.py +++ b/functions.py @@ -42,6 +42,7 @@ known_funcs = { 0x8008481C:("func_8008481C","UNK_RET","UNK_TYPE, UNK_TYPE, UNK_PTR, UNK_PTR"), 0x80084940:("func_80084940","void","void"), 0x80084968:("func_80084968","void","void"), + 0x8008501C:("func_8008501C","void","u32, u32, u32, u32, u32"), 0x80085320:("func_80085320","void","s80085320*, UNK_PTR, UNK_PTR, UNK_TYPE, UNK_TYPE, UNK_PTR"), 0x800853F8:("func_800853F8","UNK_RET","s80085320*"), 0x80085468:("func_80085468","UNK_TYPE","s80085320*"), @@ -224,6 +225,21 @@ known_funcs = { 0x800A74D8:("func_800A74D8","UNK_RET","z_Actor* a0, z_GlobalContext* a1"), 0x800A75B8:("func_800A75B8","UNK_RET","z_Actor* a0, z_GlobalContext* a1"), 0x800A7650:("func_800A7650","s16","s16"), + 0x800B0050:("effect_ss_init","void","z_GlobalContext* ctxt, s32 numEntries"), + 0x800B0140:("effect_ss_clear","void","z_GlobalContext* ctxt"), + 0x800B0200:("effect_ss_get_table","z_LoadedParticleEntry*","void"), + 0x800B0210:("effect_ss_delete","void","z_LoadedParticleEntry* a0"), + 0x800B0270:("effect_ss_reset_entry","void","z_LoadedParticleEntry* particle"), + 0x800B0304:("effect_ss_find_free_space","s32","u32 priority, u32* tableEntry"), + 0x800B043C:("func_800B043C","void","z_GlobalContext* ctxt, z_LoadedParticleEntry* a1"), + 0x800B04D4:("effect_ss_load_particle","void","z_GlobalContext* ctxt, u32 type, u32 priority, void* initData"), + 0x800B067C:("effect_ss_update_particle","void","z_GlobalContext* ctxt, u32 index"), + 0x800B071C:("effect_ss_update_all_particles","void","z_GlobalContext* ctxt"), + 0x800B07D8:("effect_ss_draw_particle","void","z_GlobalContext* ctxt, s32 index"), + 0x800B081C:("effect_ss_draw_all_particles","void","z_GlobalContext* ctxt"), + 0x800B096C:("func_800B096C","s16","s16 a0, s16 a1, s32 a2"), + 0x800B09D0:("func_800B09D0","s16","s16 a0, s16 a1, f32 a2"), + 0x800B0A24:("func_800B0A24","u8","u8 a0, u8 a1, f32 a2"), 0x800B16B8:("func_800B16B8","UNK_RET","z_GlobalContext*, z_Vector3D*, UNK_PTR, UNK_PTR, UNK_PTR, UNK_PTR"), 0x800B3BA4:("func_800B3BA4","UNK_RET","UNK_PTR, f32, UNK_PTR, f32"), 0x800B3FC0:("func_800B3FC0","UNK_TYPE","UNK_TYPE"), @@ -287,6 +303,11 @@ known_funcs = { 0x800FFCD8:("func_800FFCD8","f32","f32*, f32, f32, f32, f32"), 0x800FFEBC:("func_800FFEBC","s16","s16*, s16, s16, s16, s16"), 0x80100504:("func_80100504","UNK_TYPE","u32"), + 0x80101BC8:("func_80101BC8","UNK_RET","UNK_TYPE, z_GraphicsContext*"), + 0x801022F0:("func_801022F0","UNK_RET","UNK_TYPE, UNK_TYPE, UNK_TYPE, z_GlobalContext*"), + 0x80102580:("func_80102580","UNK_TYPE","UNK_PTR, z_GraphicsContext*"), + 0x80102C88:("func_80102C88","void*","u32"), + 0x80102CE0:("func_80102CE0","void","void*"), 0x80112E80:("func_80112E80","UNK_RET","z_GlobalContext*, UNK_TYPE"), 0x80115908:("func_80115908","UNK_RET","z_GlobalContext*, UNK_TYPE"), 0x8012C28C:("func_8012C28C","UNK_RET","z_GraphicsContext*"), @@ -299,6 +320,8 @@ known_funcs = { 0x80139188:("func_80139188","UNK_TYPE","UNK_PTR, UNK_PTR"), 0x80139894:("func_80139894","UNK_RET","UNK_PTR, UNK_TYPE, UNK_TYPE, UNK_TYPE, UNK_TYPE, UNK_TYPE, UNK_TYPE, f32, f32, f32"), 0x801660B8:("func_801660B8","u32*","z_GlobalContext*, u32*, UNK_TYPE"), + 0x8016A01C:("func_8016A01C","s32","z_GlobalContext*"), + 0x80172AC8:("func_80172AC8","void*","UNK_PTR, u32"), 0x80174BF0:("func_80174BF0","UNK_RET","UNK_TYPE"), 0x801795C0:("func_801795C0","f32","f32"), 0x8017A6D4:("func_8017A6D4","f32","z_Vector3D*"), @@ -311,6 +334,7 @@ known_funcs = { 0x8019F128:("func_8019F128","UNK_RET","u16"), 0x8019F1C0:("func_8019F1C0","UNK_RET","UNK_TYPE, u16"), 0x8019FAD8:("func_8019FAD8","UNK_RET","UNK_PTR, UNK_TYPE, f32"), + 0x801A72CC:("func_801A72CC","UNK_RET","UNK_PTR"), # ovl_En_Test #0x80862B70:("func_80862B70","void","void* a0"), diff --git a/include/functions.h b/include/functions.h index 755416b1c3..77c8bcf936 100644 --- a/include/functions.h +++ b/include/functions.h @@ -123,7 +123,7 @@ void func_80084940(void); // func_80084940 void func_80084968(void); // func_80084968 // UNK_RET func_800849A0(UNK_ARGS); // UNK_RET func_80084DB0(UNK_ARGS); -// UNK_RET func_8008501C(UNK_ARGS); +void func_8008501C(u32, u32, u32, u32, u32); // func_8008501C // UNK_RET func_800850C8(UNK_ARGS); // UNK_RET func_800851E0(UNK_ARGS); // UNK_RET func_800851E8(UNK_ARGS); @@ -155,6 +155,7 @@ UNK_RET func_80085538(s80085320*); // func_80085538 // UNK_RET func_800860A0(UNK_ARGS); // UNK_RET func_800860B8(UNK_ARGS); // UNK_RET func_800860D8(UNK_ARGS); +// UNK_RET func_80086110(UNK_ARGS); // UNK_RET func_80086280(UNK_ARGS); // UNK_RET func_800862E0(UNK_ARGS); // UNK_RET func_80086310(UNK_ARGS); @@ -216,6 +217,7 @@ s32 osRecvMesg(OSMesgQueue* mq, OSMesg* msg, s32 flags); // func_80087ED0 OSIntMask osSetIntMask(OSIntMask im); // func_80088010 OSIntMask osGetIntMask(void); // func_800880B0 // UNK_RET func_80088110(UNK_ARGS); +// UNK_RET func_800882A0(UNK_ARGS); float __sinf(float x); // func_80088350 short sins(unsigned short x); // func_80088510 OSTask* _VirtualToPhysicalTask(OSTask* intp); // func_80088580 @@ -364,6 +366,7 @@ void osSpTaskYielded(void); // func_800902A0 UNK_RET memcmp(UNK_ARGS); // func_80090300 OSTime osGetTime(void); // func_80090420 // UNK_RET func_800904B0(UNK_ARGS); +// UNK_RET func_80090634(UNK_ARGS); UNK_RET __osSetGlobalIntMask(UNK_ARGS); // func_80090680 // UNK_RET func_800906D0(UNK_ARGS); // UNK_RET func_80090810(UNK_ARGS); @@ -413,6 +416,7 @@ u32 osAiGetLength(void); // func_80093BA0 // UNK_RET func_80093BB0(UNK_ARGS); void osMapTLBRdb(void); // func_80093C00 void osYieldThread(void); // func_80093C60 +// UNK_RET func_80093CC0(UNK_ARGS); u32 __osGetCause(void); // func_80093D90 // UNK_RET func_80093DA0(UNK_ARGS); // UNK_RET func_80093FF0(UNK_ARGS); @@ -610,18 +614,22 @@ s16 func_800A7650(s16); // func_800A7650 // UNK_RET func_800AFC60(UNK_ARGS); // UNK_RET func_800AFDCC(UNK_ARGS); // UNK_RET func_800AFF24(UNK_ARGS); -// UNK_RET func_800B0050(UNK_ARGS); -// UNK_RET func_800B0140(UNK_ARGS); -// UNK_RET func_800B0210(UNK_ARGS); -// UNK_RET func_800B0270(UNK_ARGS); -// UNK_RET func_800B0304(UNK_ARGS); -// UNK_RET func_800B04D4(UNK_ARGS); -// UNK_RET func_800B067C(UNK_ARGS); -// UNK_RET func_800B071C(UNK_ARGS); -// UNK_RET func_800B07D8(UNK_ARGS); -// UNK_RET func_800B081C(UNK_ARGS); -// UNK_RET func_800B09D0(UNK_ARGS); -// UNK_RET func_800B0A24(UNK_ARGS); +void effect_ss_init(z_GlobalContext* ctxt, s32 numEntries); // func_800B0050 +void effect_ss_clear(z_GlobalContext* ctxt); // func_800B0140 +z_LoadedParticleEntry* effect_ss_get_table(void); // func_800B0200 +void effect_ss_delete(z_LoadedParticleEntry* a0); // func_800B0210 +void effect_ss_reset_entry(z_LoadedParticleEntry* particle); // func_800B0270 +s32 effect_ss_find_free_space(u32 priority, u32* tableEntry); // func_800B0304 +void func_800B043C(z_GlobalContext* ctxt, z_LoadedParticleEntry* a1); // func_800B043C +void effect_ss_load_particle(z_GlobalContext* ctxt, u32 type, u32 priority, void* initData); // func_800B04D4 +void effect_ss_update_particle(z_GlobalContext* ctxt, u32 index); // func_800B067C +void effect_ss_update_all_particles(z_GlobalContext* ctxt); // func_800B071C +void effect_ss_draw_particle(z_GlobalContext* ctxt, s32 index); // func_800B07D8 +void effect_ss_draw_all_particles(z_GlobalContext* ctxt); // func_800B081C +s16 func_800B096C(s16 a0, s16 a1, s32 a2); // func_800B096C +s16 func_800B09D0(s16 a0, s16 a1, f32 a2); // func_800B09D0 +u8 func_800B0A24(u8 a0, u8 a1, f32 a2); // func_800B0A24 +// UNK_RET func_800B0B10(UNK_ARGS); // UNK_RET func_800B0D2C(UNK_ARGS); // UNK_RET func_800B0DE0(UNK_ARGS); // UNK_RET func_800B0E48(UNK_ARGS); @@ -656,6 +664,7 @@ UNK_RET func_800B16B8(z_GlobalContext*, z_Vector3D*, UNK_PTR, UNK_PTR, UNK_PTR, // UNK_RET func_800B210C(UNK_ARGS); // UNK_RET func_800B219C(UNK_ARGS); // UNK_RET func_800B221C(UNK_ARGS); +// UNK_RET func_800B23D8(UNK_ARGS); // UNK_RET func_800B242C(UNK_ARGS); // UNK_RET func_800B249C(UNK_ARGS); // UNK_RET func_800B25D8(UNK_ARGS); @@ -667,11 +676,13 @@ UNK_RET func_800B16B8(z_GlobalContext*, z_Vector3D*, UNK_PTR, UNK_PTR, UNK_PTR, // UNK_RET func_800B27A0(UNK_ARGS); // UNK_RET func_800B2810(UNK_ARGS); // UNK_RET func_800B28C8(UNK_ARGS); +// UNK_RET func_800B2930(UNK_ARGS); // UNK_RET func_800B2AC4(UNK_ARGS); // UNK_RET func_800B2B44(UNK_ARGS); // UNK_RET func_800B2BC0(UNK_ARGS); // UNK_RET func_800B2C48(UNK_ARGS); // UNK_RET func_800B2CE0(UNK_ARGS); +// UNK_RET func_800B2DA4(UNK_ARGS); // UNK_RET func_800B2DF4(UNK_ARGS); // UNK_RET func_800B2F18(UNK_ARGS); // UNK_RET func_800B2F80(UNK_ARGS); @@ -681,6 +692,7 @@ UNK_RET func_800B16B8(z_GlobalContext*, z_Vector3D*, UNK_PTR, UNK_PTR, UNK_PTR, // UNK_RET func_800B31BC(UNK_ARGS); // UNK_RET func_800B320C(UNK_ARGS); // UNK_RET func_800B326C(UNK_ARGS); +// UNK_RET func_800B32D0(UNK_ARGS); // UNK_RET func_800B3880(UNK_ARGS); // UNK_RET func_800B39A4(UNK_ARGS); // UNK_RET func_800B3AD0(UNK_ARGS); @@ -721,6 +733,7 @@ UNK_RET func_800B5DB0(z_GlobalContext*, s16); // func_800B5DB0 // UNK_RET func_800B5F24(UNK_ARGS); // UNK_RET func_800B6468(UNK_ARGS); // UNK_RET func_800B6474(UNK_ARGS); +// UNK_RET func_800B648C(UNK_ARGS); // UNK_RET func_800B64FC(UNK_ARGS); // UNK_RET func_800B6584(UNK_ARGS); // UNK_RET func_800B6608(UNK_ARGS); @@ -768,6 +781,7 @@ UNK_RET func_800B6A88(z_Actor*); // func_800B6A88 // UNK_RET func_800B722C(UNK_ARGS); // UNK_RET func_800B724C(UNK_ARGS); // UNK_RET func_800B7298(UNK_ARGS); +// UNK_RET func_800B72F8(UNK_ARGS); // UNK_RET func_800B7320(UNK_ARGS); // UNK_RET func_800B73E0(UNK_ARGS); // UNK_RET func_800B742C(UNK_ARGS); @@ -787,6 +801,7 @@ UNK_RET func_800B8118(z_Actor*, z_GlobalContext*, UNK_TYPE); // func_800B8118 // UNK_RET func_800B8248(UNK_ARGS); // UNK_RET func_800B82EC(UNK_ARGS); // UNK_RET func_800B83BC(UNK_ARGS); +// UNK_RET func_800B83F8(UNK_ARGS); UNK_TYPE func_800B84D0(s800A5AC0*, UNK_TYPE); // func_800B84D0 // UNK_RET func_800B8500(UNK_ARGS); // UNK_RET func_800B85E0(UNK_ARGS); @@ -860,6 +875,7 @@ z_Actor* func_800BAC60(UNK_PTR, z_GlobalContext*, UNK_TYPE, f32, f32, f32, UNK_T // UNK_RET func_800BB604(UNK_ARGS); // UNK_RET func_800BB8EC(UNK_ARGS); // UNK_RET func_800BBA88(UNK_ARGS); +// UNK_RET func_800BBAC0(UNK_ARGS); // UNK_RET func_800BBB74(UNK_ARGS); // UNK_RET func_800BBCEC(UNK_ARGS); // UNK_RET func_800BBDAC(UNK_ARGS); @@ -929,6 +945,7 @@ void func_800BE03C(z_GlobalContext*, UNK_TYPE); // func_800BE03C // UNK_RET func_800C01B8(UNK_ARGS); // UNK_RET func_800C0220(UNK_ARGS); // UNK_RET func_800C02AE(UNK_ARGS); +// UNK_RET func_800C02C0(UNK_ARGS); // UNK_RET func_800C0340(UNK_ARGS); // UNK_RET func_800C0474(UNK_ARGS); // UNK_RET func_800C0668(UNK_ARGS); @@ -969,13 +986,16 @@ void func_800BE03C(z_GlobalContext*, UNK_TYPE); // func_800BE03C // UNK_RET func_800C3D50(UNK_ARGS); // UNK_RET func_800C3FA0(UNK_ARGS); // UNK_RET func_800C4000(UNK_ARGS); +// UNK_RET func_800C4058(UNK_ARGS); // UNK_RET func_800C40B4(UNK_ARGS); // UNK_RET func_800C411C(UNK_ARGS); // UNK_RET func_800C4188(UNK_ARGS); // UNK_RET func_800C41E4(UNK_ARGS); // UNK_RET func_800C4240(UNK_ARGS); +// UNK_RET func_800C42A8(UNK_ARGS); // UNK_RET func_800C4488(UNK_ARGS); // UNK_RET func_800C45C4(UNK_ARGS); +// UNK_RET func_800C4C74(UNK_ARGS); // UNK_RET func_800C4D3C(UNK_ARGS); // UNK_RET func_800C4DA4(UNK_ARGS); // UNK_RET func_800C4E10(UNK_ARGS); @@ -1043,6 +1063,7 @@ UNK_RET func_800C64CC(z_GlobalContext*, UNK_PTR, UNK_TYPE); // func_800C64CC // UNK_RET func_800C9380(UNK_ARGS); // UNK_RET func_800C94E0(UNK_ARGS); UNK_RET func_800C9564(UNK_TYPE, UNK_PTR); // func_800C9564 +// UNK_RET func_800C9598(UNK_ARGS); // UNK_RET func_800C9640(UNK_ARGS); // UNK_RET func_800C9694(UNK_ARGS); // UNK_RET func_800C9704(UNK_ARGS); @@ -1053,6 +1074,9 @@ UNK_RET func_800C9564(UNK_TYPE, UNK_PTR); // func_800C9564 // UNK_RET func_800C99D4(UNK_ARGS); // UNK_RET func_800C9A24(UNK_ARGS); // UNK_RET func_800C9A4C(UNK_ARGS); +// UNK_RET func_800C9A7C(UNK_ARGS); +// UNK_RET func_800C9AB0(UNK_ARGS); +// UNK_RET func_800C9AE4(UNK_ARGS); // UNK_RET func_800C9B18(UNK_ARGS); // UNK_RET func_800C9B40(UNK_ARGS); // UNK_RET func_800C9B68(UNK_ARGS); @@ -1062,15 +1086,20 @@ UNK_RET func_800C9564(UNK_TYPE, UNK_PTR); // func_800C9564 // UNK_RET func_800C9C24(UNK_ARGS); // UNK_RET func_800C9C74(UNK_ARGS); // UNK_RET func_800C9C9C(UNK_ARGS); +// UNK_RET func_800C9CC4(UNK_ARGS); // UNK_RET func_800C9CEC(UNK_ARGS); +// UNK_RET func_800C9D14(UNK_ARGS); // UNK_RET func_800C9D50(UNK_ARGS); // UNK_RET func_800C9D8C(UNK_ARGS); +// UNK_RET func_800C9DDC(UNK_ARGS); // UNK_RET func_800C9E18(UNK_ARGS); // UNK_RET func_800C9E40(UNK_ARGS); // UNK_RET func_800C9E88(UNK_ARGS); // UNK_RET func_800C9EBC(UNK_ARGS); // UNK_RET func_800CA1AC(UNK_ARGS); // UNK_RET func_800CA1E8(UNK_ARGS); +// UNK_RET func_800CA22C(UNK_ARGS); +// UNK_RET func_800CA568(UNK_ARGS); // UNK_RET func_800CA634(UNK_ARGS); // UNK_RET func_800CA648(UNK_ARGS); // UNK_RET func_800CA6D8(UNK_ARGS); @@ -1085,7 +1114,9 @@ UNK_RET func_800CAE10(z_Actor*, UNK_TYPE); // func_800CAE10 // UNK_RET func_800CAE7C(UNK_ARGS); UNK_RET func_800CAE88(UNK_TYPE); // func_800CAE88 // UNK_RET func_800CAE9C(UNK_ARGS); +// UNK_RET func_800CAEB0(UNK_ARGS); // UNK_RET func_800CAEE0(UNK_ARGS); +// UNK_RET func_800CAEF4(UNK_ARGS); UNK_RET func_800CAF24(UNK_TYPE); // func_800CAF24 UNK_RET func_800CAF38(UNK_TYPE); // func_800CAF38 // UNK_RET func_800CAF4C(UNK_ARGS); @@ -1308,6 +1339,7 @@ UNK_RET func_800CAF38(UNK_TYPE); // func_800CAF38 // UNK_RET func_800DF71C(UNK_ARGS); // UNK_RET func_800DF72C(UNK_ARGS); // UNK_RET func_800DF840(UNK_ARGS); +// UNK_RET func_800DF86C(UNK_ARGS); // UNK_RET func_800DF8EC(UNK_ARGS); // UNK_RET func_800DFAC8(UNK_ARGS); // UNK_RET func_800DFB14(UNK_ARGS); @@ -1331,6 +1363,7 @@ UNK_RET func_800CAF38(UNK_TYPE); // func_800CAF38 // UNK_RET func_800DFFAC(UNK_ARGS); // UNK_RET func_800E007C(UNK_ARGS); // UNK_RET func_800E01B8(UNK_ARGS); +// UNK_RET func_800E0238(UNK_ARGS); // UNK_RET func_800E02AC(UNK_ARGS); // UNK_RET func_800E0308(UNK_ARGS); // UNK_RET func_800E031C(UNK_ARGS); @@ -1542,6 +1575,7 @@ UNK_RET func_800E9250(UNK_ARGS); // func_800E9250 // UNK_RET func_800E95F4(UNK_ARGS); // UNK_RET func_800E97D8(UNK_ARGS); // UNK_RET func_800E99B0(UNK_ARGS); +// UNK_RET func_800E9C90(UNK_ARGS); // UNK_RET func_800E9CFC(UNK_ARGS); // UNK_RET func_800E9E94(UNK_ARGS); // UNK_RET func_800E9F78(UNK_ARGS); @@ -1909,6 +1943,10 @@ f32 func_800FED84(s16); // func_800FED84 // UNK_RET func_800FEF2C(UNK_ARGS); // UNK_RET func_800FEFB4(UNK_ARGS); // UNK_RET func_800FF03C(UNK_ARGS); +// UNK_RET func_800FF1FC(UNK_ARGS); +// UNK_RET func_800FF2A8(UNK_ARGS); +// UNK_RET func_800FF2F8(UNK_ARGS); +// UNK_RET func_800FF3A0(UNK_ARGS); // UNK_RET func_800FF450(UNK_ARGS); // UNK_RET func_800FF50C(UNK_ARGS); // UNK_RET func_800FF52C(UNK_ARGS); @@ -1920,6 +1958,9 @@ f32 func_800FED84(s16); // func_800FED84 // UNK_RET func_800FF688(UNK_ARGS); // UNK_RET func_800FF6C4(UNK_ARGS); // UNK_RET func_800FF6F8(UNK_ARGS); +// UNK_RET func_800FF750(UNK_ARGS); +// UNK_RET func_800FF79C(UNK_ARGS); +// UNK_RET func_800FF810(UNK_ARGS); // UNK_RET func_800FF884(UNK_ARGS); f32 func_800FF8D4(z_Vector3D* a0, z_Vector3D* a1, z_Vector3D* a2); // func_800FF8D4 // UNK_RET func_800FF92C(UNK_ARGS); @@ -1968,18 +2009,18 @@ UNK_TYPE func_80100504(u32); // func_80100504 // UNK_RET func_80101AC8(UNK_ARGS); // UNK_RET func_80101AFC(UNK_ARGS); // UNK_RET func_80101B34(UNK_ARGS); -// UNK_RET func_80101BC8(UNK_ARGS); +UNK_RET func_80101BC8(UNK_TYPE, z_GraphicsContext*); // func_80101BC8 // UNK_RET func_80101D0C(UNK_ARGS); // UNK_RET func_80101D3C(UNK_ARGS); // UNK_RET func_801020A0(UNK_ARGS); // UNK_RET func_80102284(UNK_ARGS); -// UNK_RET func_801022F0(UNK_ARGS); +UNK_RET func_801022F0(UNK_TYPE, UNK_TYPE, UNK_TYPE, z_GlobalContext*); // func_801022F0 // UNK_RET func_801023D8(UNK_ARGS); // UNK_RET func_80102464(UNK_ARGS); // UNK_RET func_801024AC(UNK_ARGS); // UNK_RET func_80102518(UNK_ARGS); // UNK_RET func_80102544(UNK_ARGS); -// UNK_RET func_80102580(UNK_ARGS); +UNK_TYPE func_80102580(UNK_PTR, z_GraphicsContext*); // func_80102580 // UNK_RET func_801025B8(UNK_ARGS); // UNK_RET func_80102624(UNK_ARGS); // UNK_RET func_80102684(UNK_ARGS); @@ -1987,8 +2028,8 @@ UNK_TYPE func_80100504(u32); // func_80100504 // UNK_RET func_80102880(UNK_ARGS); // UNK_RET func_80102A64(UNK_ARGS); // UNK_RET func_80102C60(UNK_ARGS); -// UNK_RET func_80102C88(UNK_ARGS); -// UNK_RET func_80102CE0(UNK_ARGS); +void* func_80102C88(u32); // func_80102C88 +void func_80102CE0(void*); // func_80102CE0 // UNK_RET func_80102D60(UNK_ARGS); // UNK_RET func_80102DBC(UNK_ARGS); // UNK_RET func_80102DEC(UNK_ARGS); @@ -2031,6 +2072,7 @@ UNK_TYPE func_80100504(u32); // func_80100504 // UNK_RET func_8010683C(UNK_ARGS); // UNK_RET func_801068B4(UNK_ARGS); // UNK_RET func_801068D8(UNK_ARGS); +// UNK_RET func_801068FC(UNK_ARGS); // UNK_RET func_80106BEC(UNK_ARGS); // UNK_RET func_80106D08(UNK_ARGS); // UNK_RET func_80106D5C(UNK_ARGS); @@ -2039,7 +2081,11 @@ UNK_TYPE func_80100504(u32); // func_80100504 // UNK_RET func_80108558(UNK_ARGS); // UNK_RET func_80108A10(UNK_ARGS); // UNK_RET func_80108A64(UNK_ARGS); +// UNK_RET func_80108AF8(UNK_ARGS); +// UNK_RET func_801090B0(UNK_ARGS); // UNK_RET func_80109124(UNK_ARGS); +// UNK_RET func_801091F0(UNK_ARGS); +// UNK_RET func_80109428(UNK_ARGS); // UNK_RET func_801094A0(UNK_ARGS); // UNK_RET func_801094C8(UNK_ARGS); // UNK_RET func_801094F8(UNK_ARGS); @@ -2158,6 +2204,7 @@ UNK_TYPE func_80100504(u32); // func_80100504 // UNK_RET func_8010C838(UNK_ARGS); // UNK_RET func_8010C9C8(UNK_ARGS); // UNK_RET func_8010CAA0(UNK_ARGS); +// UNK_RET func_8010CB80(UNK_ARGS); // UNK_RET func_8010CD98(UNK_ARGS); // UNK_RET func_8010CFBC(UNK_ARGS); // UNK_RET func_8010D2D4(UNK_ARGS); @@ -2201,18 +2248,24 @@ UNK_TYPE func_80100504(u32); // func_80100504 // UNK_RET func_801129E4(UNK_ARGS); // UNK_RET func_80112AFC(UNK_ARGS); // UNK_RET func_80112B40(UNK_ARGS); +// UNK_RET func_80112BE4(UNK_ARGS); +// UNK_RET func_80112C0C(UNK_ARGS); UNK_RET func_80112E80(z_GlobalContext*, UNK_TYPE); // func_80112E80 // UNK_RET func_801143CC(UNK_ARGS); // UNK_RET func_80114978(UNK_ARGS); // UNK_RET func_801149A0(UNK_ARGS); // UNK_RET func_80114A9C(UNK_ARGS); +// UNK_RET func_80114CA0(UNK_ARGS); // UNK_RET func_80114E90(UNK_ARGS); // UNK_RET func_80114F2C(UNK_ARGS); // UNK_RET func_80114FD0(UNK_ARGS); +// UNK_RET func_80115130(UNK_ARGS); // UNK_RET func_801152B8(UNK_ARGS); // UNK_RET func_801153C8(UNK_ARGS); // UNK_RET func_80115428(UNK_ARGS); // UNK_RET func_8011552C(UNK_ARGS); +// UNK_RET func_801155B4(UNK_ARGS); +// UNK_RET func_80115764(UNK_ARGS); // UNK_RET func_80115844(UNK_ARGS); UNK_RET func_80115908(z_GlobalContext*, UNK_TYPE); // func_80115908 // UNK_RET func_801159EC(UNK_ARGS); @@ -2291,6 +2344,7 @@ UNK_RET func_80115908(z_GlobalContext*, UNK_TYPE); // func_80115908 // UNK_RET func_8012182C(UNK_ARGS); // UNK_RET func_80121F94(UNK_ARGS); // UNK_RET func_80121FC4(UNK_ARGS); +// UNK_RET func_801224E0(UNK_ARGS); // UNK_RET func_80122524(UNK_ARGS); // UNK_RET func_80122660(UNK_ARGS); // UNK_RET func_80122670(UNK_ARGS); @@ -2299,15 +2353,22 @@ UNK_RET func_80115908(z_GlobalContext*, UNK_TYPE); // func_80115908 // UNK_RET func_80122760(UNK_ARGS); // UNK_RET func_80122868(UNK_ARGS); // UNK_RET func_801229A0(UNK_ARGS); +// UNK_RET func_801229EC(UNK_ARGS); +// UNK_RET func_801229FC(UNK_ARGS); // UNK_RET func_80122BA4(UNK_ARGS); +// UNK_RET func_80122C20(UNK_ARGS); +// UNK_RET func_80122D44(UNK_ARGS); // UNK_RET func_80122ED8(UNK_ARGS); +// UNK_RET func_80122EEC(UNK_ARGS); // UNK_RET func_80122F28(UNK_ARGS); // UNK_RET func_80122F9C(UNK_ARGS); // UNK_RET func_80122FCC(UNK_ARGS); // UNK_RET func_8012300C(UNK_ARGS); +// UNK_RET func_8012301C(UNK_ARGS); // UNK_RET func_80123140(UNK_ARGS); // UNK_RET func_80123358(UNK_ARGS); // UNK_RET func_801233E4(UNK_ARGS); +// UNK_RET func_80123420(UNK_ARGS); // UNK_RET func_80123434(UNK_ARGS); // UNK_RET func_801234B0(UNK_ARGS); // UNK_RET func_801234D4(UNK_ARGS); @@ -2318,6 +2379,7 @@ UNK_RET func_80115908(z_GlobalContext*, UNK_TYPE); // func_80115908 // UNK_RET func_801239AC(UNK_ARGS); // UNK_RET func_80123AA4(UNK_ARGS); // UNK_RET func_80123BD4(UNK_ARGS); +// UNK_RET func_80123C58(UNK_ARGS); // UNK_RET func_80123C90(UNK_ARGS); // UNK_RET func_80123D50(UNK_ARGS); // UNK_RET func_80123DA4(UNK_ARGS); @@ -2330,16 +2392,22 @@ UNK_RET func_80115908(z_GlobalContext*, UNK_TYPE); // func_80115908 // UNK_RET func_8012405C(UNK_ARGS); // UNK_RET func_80124088(UNK_ARGS); // UNK_RET func_801240C8(UNK_ARGS); +// UNK_RET func_801240DC(UNK_ARGS); // UNK_RET func_80124110(UNK_ARGS); +// UNK_RET func_80124148(UNK_ARGS); // UNK_RET func_80124168(UNK_ARGS); // UNK_RET func_80124190(UNK_ARGS); // UNK_RET func_801241B4(UNK_ARGS); // UNK_RET func_801241E0(UNK_ARGS); +// UNK_RET func_8012420C(UNK_ARGS); // UNK_RET func_8012422C(UNK_ARGS); // UNK_RET func_80124258(UNK_ARGS); +// UNK_RET func_80124278(UNK_ARGS); // UNK_RET func_801242B4(UNK_ARGS); // UNK_RET func_801242DC(UNK_ARGS); +// UNK_RET func_80124420(UNK_ARGS); // UNK_RET func_80124618(UNK_ARGS); +// UNK_RET func_801246F4(UNK_ARGS); // UNK_RET func_80124870(UNK_ARGS); // UNK_RET func_80124CC4(UNK_ARGS); // UNK_RET func_80124F18(UNK_ARGS); @@ -2352,6 +2420,8 @@ UNK_RET func_80115908(z_GlobalContext*, UNK_TYPE); // func_80115908 // UNK_RET func_80125500(UNK_ARGS); // UNK_RET func_80125580(UNK_ARGS); // UNK_RET func_80125CE0(UNK_ARGS); +// UNK_RET func_80125D4C(UNK_ARGS); +// UNK_RET func_801262C8(UNK_ARGS); // UNK_RET func_80126440(UNK_ARGS); // UNK_RET func_801265C8(UNK_ARGS); // UNK_RET func_8012669C(UNK_ARGS); @@ -2374,6 +2444,7 @@ UNK_RET func_80115908(z_GlobalContext*, UNK_TYPE); // func_80115908 // UNK_RET func_801284A0(UNK_ARGS); // UNK_RET func_80128640(UNK_ARGS); // UNK_RET func_80128B74(UNK_ARGS); +// UNK_RET func_80128BD0(UNK_ARGS); // UNK_RET func_80129EF0(UNK_ARGS); // UNK_RET func_80129F04(UNK_ARGS); // UNK_RET func_80129F4C(UNK_ARGS); @@ -2436,6 +2507,7 @@ UNK_RET func_8012C2DC(z_GraphicsContext*); // func_8012C2DC // UNK_RET func_8012C3CC(UNK_ARGS); // UNK_RET func_8012C448(UNK_ARGS); // UNK_RET func_8012C470(UNK_ARGS); +// UNK_RET func_8012C4C0(UNK_ARGS); // UNK_RET func_8012C560(UNK_ARGS); // UNK_RET func_8012C588(UNK_ARGS); // UNK_RET func_8012C5B0(UNK_ARGS); @@ -2490,6 +2562,7 @@ u32* func_8012C724(u32*); // func_8012C724 // UNK_RET func_8012F4FC(UNK_ARGS); u8 func_8012F608(UNK_PTR, UNK_TYPE); // func_8012F608 UNK_TYPE func_8012F668(UNK_PTR, UNK_TYPE); // func_8012F668 +// UNK_RET func_8012F698(UNK_ARGS); // UNK_RET func_8012F73C(UNK_ARGS); // UNK_RET func_8012F79C(UNK_ARGS); // UNK_RET func_8012F90C(UNK_ARGS); @@ -2610,10 +2683,14 @@ void func_80131758(z_GlobalContext*, UNK_TYPE); // func_80131758 // UNK_RET func_80134DBC(UNK_ARGS); // UNK_RET func_80135448(UNK_ARGS); // UNK_RET func_801358C8(UNK_ARGS); +// UNK_RET func_801358D4(UNK_ARGS); +// UNK_RET func_801358F4(UNK_ARGS); // UNK_RET func_8013591C(UNK_ARGS); // UNK_RET func_80135954(UNK_ARGS); // UNK_RET func_80135A28(UNK_ARGS); // UNK_RET func_80135A90(UNK_ARGS); +// UNK_RET func_80135B00(UNK_ARGS); +// UNK_RET func_80135B70(UNK_ARGS); // UNK_RET func_80135BE0(UNK_ARGS); // UNK_RET func_80135C3C(UNK_ARGS); // UNK_RET func_80135C6C(UNK_ARGS); @@ -2622,15 +2699,27 @@ void func_80131758(z_GlobalContext*, UNK_TYPE); // func_80131758 // UNK_RET func_80135DB8(UNK_ARGS); // UNK_RET func_80135E3C(UNK_ARGS); // UNK_RET func_80135EE8(UNK_ARGS); +// UNK_RET func_80135F88(UNK_ARGS); // UNK_RET func_801360A8(UNK_ARGS); // UNK_RET func_801360E0(UNK_ARGS); // UNK_RET func_80136104(UNK_ARGS); // UNK_RET func_801361BC(UNK_ARGS); // UNK_RET func_80136288(UNK_ARGS); // UNK_RET func_8013631C(UNK_ARGS); +// UNK_RET func_801363F0(UNK_ARGS); // UNK_RET func_80136414(UNK_ARGS); +// UNK_RET func_8013658C(UNK_ARGS); // UNK_RET func_801365EC(UNK_ARGS); +// UNK_RET func_80136650(UNK_ARGS); +// UNK_RET func_801366AC(UNK_ARGS); +// UNK_RET func_8013670C(UNK_ARGS); +// UNK_RET func_8013676C(UNK_ARGS); +// UNK_RET func_801367B0(UNK_ARGS); +// UNK_RET func_801367F4(UNK_ARGS); +// UNK_RET func_8013682C(UNK_ARGS); +// UNK_RET func_801368CC(UNK_ARGS); // UNK_RET func_80136990(UNK_ARGS); +// UNK_RET func_80136A48(UNK_ARGS); // UNK_RET func_80136A7C(UNK_ARGS); // UNK_RET func_80136B30(UNK_ARGS); // UNK_RET func_80136BEC(UNK_ARGS); @@ -2650,6 +2739,7 @@ void func_80131758(z_GlobalContext*, UNK_TYPE); // func_80131758 // UNK_RET func_80137540(UNK_ARGS); // UNK_RET func_80137594(UNK_ARGS); // UNK_RET func_801375CC(UNK_ARGS); +// UNK_RET func_80137650(UNK_ARGS); // UNK_RET func_80137748(UNK_ARGS); // UNK_RET func_801378B8(UNK_ARGS); // UNK_RET func_801378E0(UNK_ARGS); @@ -2814,6 +2904,7 @@ UNK_RET func_80139894(UNK_PTR, UNK_TYPE, UNK_TYPE, UNK_TYPE, UNK_TYPE, UNK_TYPE, // UNK_RET func_801426A0(UNK_ARGS); // UNK_RET func_80143148(UNK_ARGS); // UNK_RET func_801431E8(UNK_ARGS); +// UNK_RET func_80143324(UNK_ARGS); // UNK_RET func_801434E4(UNK_ARGS); // UNK_RET func_801435A0(UNK_ARGS); // UNK_RET func_80143624(UNK_ARGS); @@ -2821,15 +2912,24 @@ UNK_RET func_80139894(UNK_PTR, UNK_TYPE, UNK_TYPE, UNK_TYPE, UNK_TYPE, UNK_TYPE, // UNK_RET func_80143A04(UNK_ARGS); // UNK_RET func_80143A10(UNK_ARGS); // UNK_RET func_80143A54(UNK_ARGS); +// UNK_RET func_80143AC4(UNK_ARGS); // UNK_RET func_80143B0C(UNK_ARGS); // UNK_RET func_80144574(UNK_ARGS); // UNK_RET func_801445E4(UNK_ARGS); // UNK_RET func_80144628(UNK_ARGS); // UNK_RET func_80144684(UNK_ARGS); // UNK_RET func_80144890(UNK_ARGS); +// UNK_RET func_80144968(UNK_ARGS); // UNK_RET func_80144A94(UNK_ARGS); +// UNK_RET func_80144E78(UNK_ARGS); // UNK_RET func_8014546C(UNK_ARGS); // UNK_RET func_80145698(UNK_ARGS); +// UNK_RET func_801457CC(UNK_ARGS); +// UNK_RET func_80146580(UNK_ARGS); +// UNK_RET func_80146628(UNK_ARGS); +// UNK_RET func_80146AA0(UNK_ARGS); +// UNK_RET func_80146DF8(UNK_ARGS); +// UNK_RET func_80146E40(UNK_ARGS); // UNK_RET func_80146E70(UNK_ARGS); // UNK_RET func_80146EBC(UNK_ARGS); // UNK_RET func_80146EE8(UNK_ARGS); @@ -2900,6 +3000,7 @@ UNK_RET func_80139894(UNK_PTR, UNK_TYPE, UNK_TYPE, UNK_TYPE, UNK_TYPE, UNK_TYPE, // UNK_RET func_8014D7B4(UNK_ARGS); // UNK_RET func_80150A84(UNK_ARGS); // UNK_RET func_80150D08(UNK_ARGS); +// UNK_RET func_801514B0(UNK_ARGS); // UNK_RET func_801518B0(UNK_ARGS); // UNK_RET func_80151938(UNK_ARGS); // UNK_RET func_80151A68(UNK_ARGS); @@ -3166,6 +3267,8 @@ UNK_RET func_80139894(UNK_PTR, UNK_TYPE, UNK_TYPE, UNK_TYPE, UNK_TYPE, UNK_TYPE, // UNK_RET func_8016566C(UNK_ARGS); // UNK_RET func_80165690(UNK_ARGS); // UNK_RET func_801656A4(UNK_ARGS); +// UNK_RET func_80165DCC(UNK_ARGS); +// UNK_RET func_80165DF0(UNK_ARGS); // UNK_RET func_80165E1C(UNK_ARGS); // UNK_RET func_80165E7C(UNK_ARGS); // UNK_RET func_80165EC0(UNK_ARGS); @@ -3218,6 +3321,7 @@ u32* func_801660B8(z_GlobalContext*, u32*, UNK_TYPE); // func_801660B8 // UNK_RET func_80168F64(UNK_ARGS); // UNK_RET func_801690CC(UNK_ARGS); // UNK_RET func_80169100(UNK_ARGS); +// UNK_RET func_801691F0(UNK_ARGS); // UNK_RET func_80169220(UNK_ARGS); // UNK_RET func_8016927C(UNK_ARGS); // UNK_RET func_801692C4(UNK_ARGS); @@ -3245,8 +3349,9 @@ u32* func_801660B8(z_GlobalContext*, u32*, UNK_TYPE); // func_801660B8 // UNK_RET func_80169F78(UNK_ARGS); // UNK_RET func_80169FDC(UNK_ARGS); // UNK_RET func_80169FFC(UNK_ARGS); -// UNK_RET func_8016A01C(UNK_ARGS); +s32 func_8016A01C(z_GlobalContext*); // func_8016A01C // UNK_RET func_8016A168(UNK_ARGS); +// UNK_RET func_8016A178(UNK_ARGS); // UNK_RET func_8016A268(UNK_ARGS); // UNK_RET func_8016A2C8(UNK_ARGS); // UNK_RET func_8016AC10(UNK_ARGS); @@ -3297,7 +3402,7 @@ u32* func_801660B8(z_GlobalContext*, u32*, UNK_TYPE); // func_801660B8 // UNK_RET func_80172A18(UNK_ARGS); // UNK_RET func_80172A24(UNK_ARGS); // UNK_RET func_80172A58(UNK_ARGS); -// UNK_RET func_80172AC8(UNK_ARGS); +void* func_80172AC8(UNK_PTR, u32); // func_80172AC8 // UNK_RET func_80172AE8(UNK_ARGS); // UNK_RET func_80172B04(UNK_ARGS); // UNK_RET func_80172B18(UNK_ARGS); @@ -3332,6 +3437,7 @@ u32* func_801660B8(z_GlobalContext*, u32*, UNK_TYPE); // func_801660B8 // UNK_RET func_80173B00(UNK_ARGS); // UNK_RET func_80173B18(UNK_ARGS); // UNK_RET func_80173B48(UNK_ARGS); +// UNK_RET func_80173BF0(UNK_ARGS); // UNK_RET func_80173C10(UNK_ARGS); // UNK_RET func_80173C7C(UNK_ARGS); // UNK_RET func_80173CC8(UNK_ARGS); @@ -3355,6 +3461,7 @@ u32* func_801660B8(z_GlobalContext*, u32*, UNK_TYPE); // func_801660B8 // UNK_RET func_80174B20(UNK_ARGS); // UNK_RET func_80174BA0(UNK_ARGS); UNK_RET func_80174BF0(UNK_TYPE); // func_80174BF0 +// UNK_RET func_80174F10(UNK_ARGS); // UNK_RET func_80174F24(UNK_ARGS); // UNK_RET func_80174F44(UNK_ARGS); // UNK_RET func_80174F7C(UNK_ARGS); @@ -3565,6 +3672,7 @@ UNK_TYPE func_80181A40(z_GraphicsContext*); // func_80181A40 // UNK_RET func_80182068(UNK_ARGS); // UNK_RET func_801820A0(UNK_ARGS); // UNK_RET func_8018219C(UNK_ARGS); +// UNK_RET func_801822C4(UNK_ARGS); // UNK_RET func_801823EC(UNK_ARGS); // UNK_RET func_8018284C(UNK_ARGS); // UNK_RET func_80182C90(UNK_ARGS); @@ -4216,6 +4324,9 @@ UNK_RET func_8019F1C0(UNK_TYPE, u16); // func_8019F1C0 // UNK_RET func_8019F540(UNK_ARGS); // UNK_RET func_8019F570(UNK_ARGS); // UNK_RET func_8019F5AC(UNK_ARGS); +// UNK_RET func_8019F638(UNK_ARGS); +// UNK_RET func_8019F780(UNK_ARGS); +// UNK_RET func_8019F830(UNK_ARGS); // UNK_RET func_8019F88C(UNK_ARGS); // UNK_RET func_8019F900(UNK_ARGS); // UNK_RET func_8019FA18(UNK_ARGS); @@ -4223,6 +4334,7 @@ UNK_RET func_8019FAD8(UNK_PTR, UNK_TYPE, f32); // func_8019FAD8 // UNK_RET func_8019FB0C(UNK_ARGS); // UNK_RET func_8019FC20(UNK_ARGS); // UNK_RET func_8019FCB8(UNK_ARGS); +// UNK_RET func_8019FD90(UNK_ARGS); // UNK_RET func_8019FDC8(UNK_ARGS); // UNK_RET func_8019FE1C(UNK_ARGS); // UNK_RET func_8019FE74(UNK_ARGS); @@ -4230,6 +4342,8 @@ UNK_RET func_8019FAD8(UNK_PTR, UNK_TYPE, f32); // func_8019FAD8 // UNK_RET func_8019FF9C(UNK_ARGS); // UNK_RET func_801A00EC(UNK_ARGS); // UNK_RET func_801A0124(UNK_ARGS); +// UNK_RET func_801A0184(UNK_ARGS); +// UNK_RET func_801A01C4(UNK_ARGS); // UNK_RET func_801A0204(UNK_ARGS); // UNK_RET func_801A0238(UNK_ARGS); // UNK_RET func_801A0318(UNK_ARGS); @@ -4275,6 +4389,7 @@ UNK_RET func_8019FAD8(UNK_PTR, UNK_TYPE, f32); // func_8019FAD8 // UNK_RET func_801A31EC(UNK_ARGS); // UNK_RET func_801A3238(UNK_ARGS); // UNK_RET func_801A32CC(UNK_ARGS); +// UNK_RET func_801A3590(UNK_ARGS); // UNK_RET func_801A3950(UNK_ARGS); // UNK_RET func_801A39F8(UNK_ARGS); // UNK_RET func_801A3A7C(UNK_ARGS); @@ -4282,7 +4397,9 @@ UNK_RET func_8019FAD8(UNK_PTR, UNK_TYPE, f32); // func_8019FAD8 // UNK_RET func_801A3AEC(UNK_ARGS); // UNK_RET func_801A3B48(UNK_ARGS); // UNK_RET func_801A3CD8(UNK_ARGS); +// UNK_RET func_801A3CF4(UNK_ARGS); // UNK_RET func_801A3D98(UNK_ARGS); +// UNK_RET func_801A3E38(UNK_ARGS); // UNK_RET func_801A3EC0(UNK_ARGS); // UNK_RET func_801A3F54(UNK_ARGS); // UNK_RET func_801A3F6C(UNK_ARGS); @@ -4290,6 +4407,7 @@ UNK_RET func_8019FAD8(UNK_PTR, UNK_TYPE, f32); // func_8019FAD8 // UNK_RET func_801A400C(UNK_ARGS); // UNK_RET func_801A4058(UNK_ARGS); // UNK_RET func_801A41C8(UNK_ARGS); +// UNK_RET func_801A41F8(UNK_ARGS); // UNK_RET func_801A42C8(UNK_ARGS); // UNK_RET func_801A4324(UNK_ARGS); // UNK_RET func_801A4380(UNK_ARGS); @@ -4350,7 +4468,7 @@ UNK_RET func_8019FAD8(UNK_PTR, UNK_TYPE, f32); // func_8019FAD8 // UNK_RET func_801A6D0C(UNK_ARGS); // UNK_RET func_801A7084(UNK_ARGS); // UNK_RET func_801A7168(UNK_ARGS); -// UNK_RET func_801A72CC(UNK_ARGS); +UNK_RET func_801A72CC(UNK_PTR); // func_801A72CC // UNK_RET func_801A7328(UNK_ARGS); // UNK_RET func_801A75E8(UNK_ARGS); // UNK_RET func_801A7720(UNK_ARGS); @@ -4424,6 +4542,855 @@ UNK_RET func_8019FAD8(UNK_PTR, UNK_TYPE, f32); // func_8019FAD8 // UNK_RET func_801AAA58(UNK_ARGS); // UNK_RET func_801AAA8C(UNK_ARGS); // UNK_RET func_801AAAA0(UNK_ARGS); +// UNK_RET func_80800000(UNK_ARGS); +// UNK_RET func_8080009C(UNK_ARGS); +// UNK_RET func_80800134(UNK_ARGS); +// UNK_RET func_8080066C(UNK_ARGS); +// UNK_RET func_8080071C(UNK_ARGS); +// UNK_RET func_8080074C(UNK_ARGS); +// UNK_RET func_80800910(UNK_ARGS); +// UNK_RET func_80800930(UNK_ARGS); +// UNK_RET func_80800A44(UNK_ARGS); +// UNK_RET func_808013B8(UNK_ARGS); +// UNK_RET func_80801594(UNK_ARGS); +// UNK_RET func_80801620(UNK_ARGS); +// UNK_RET func_808016E8(UNK_ARGS); +// UNK_RET func_808017DC(UNK_ARGS); +// UNK_RET func_808017F4(UNK_ARGS); +// UNK_RET func_80801800(UNK_ARGS); +// UNK_RET func_8080180C(UNK_ARGS); +// UNK_RET func_80801818(UNK_ARGS); +// UNK_RET func_80801824(UNK_ARGS); +// UNK_RET func_80801830(UNK_ARGS); +// UNK_RET func_8080183C(UNK_ARGS); +// UNK_RET func_80801848(UNK_ARGS); +// UNK_RET func_80801854(UNK_ARGS); +// UNK_RET func_80801860(UNK_ARGS); +// UNK_RET func_8080194C(UNK_ARGS); +// UNK_RET func_808019FC(UNK_ARGS); +// UNK_RET func_80801A64(UNK_ARGS); +// UNK_RET func_80801AFC(UNK_ARGS); +// UNK_RET func_80801B28(UNK_ARGS); +// UNK_RET func_80801B4C(UNK_ARGS); +// UNK_RET func_80803DF0(UNK_ARGS); +// UNK_RET func_80803EA0(UNK_ARGS); +// UNK_RET func_80803EC0(UNK_ARGS); +// UNK_RET func_80803F0C(UNK_ARGS); +// UNK_RET func_80803F30(UNK_ARGS); +// UNK_RET func_80804010(UNK_ARGS); +// UNK_RET func_808041A0(UNK_ARGS); +// UNK_RET func_80804654(UNK_ARGS); +// UNK_RET func_808047D8(UNK_ARGS); +// UNK_RET func_8080489C(UNK_ARGS); +// UNK_RET func_80804DAC(UNK_ARGS); +// UNK_RET func_80804E74(UNK_ARGS); +// UNK_RET func_80804F98(UNK_ARGS); +// UNK_RET func_8080525C(UNK_ARGS); +// UNK_RET func_808052B0(UNK_ARGS); +// UNK_RET func_808054A4(UNK_ARGS); +// UNK_RET func_808055D0(UNK_ARGS); +// UNK_RET func_808058A4(UNK_ARGS); +// UNK_RET func_80805918(UNK_ARGS); +// UNK_RET func_80805A58(UNK_ARGS); +// UNK_RET func_80805B30(UNK_ARGS); +// UNK_RET func_80805C1C(UNK_ARGS); +// UNK_RET func_80806014(UNK_ARGS); +// UNK_RET func_80806148(UNK_ARGS); +// UNK_RET func_80806310(UNK_ARGS); +// UNK_RET func_808067E0(UNK_ARGS); +// UNK_RET func_80806BC8(UNK_ARGS); +// UNK_RET func_80806CA0(UNK_ARGS); +// UNK_RET func_80806E84(UNK_ARGS); +// UNK_RET func_80806F30(UNK_ARGS); +// UNK_RET func_808071E4(UNK_ARGS); +// UNK_RET func_80807390(UNK_ARGS); +// UNK_RET func_8080742C(UNK_ARGS); +// UNK_RET func_808074B4(UNK_ARGS); +// UNK_RET func_808077AC(UNK_ARGS); +// UNK_RET func_80807940(UNK_ARGS); +// UNK_RET func_80807C58(UNK_ARGS); +// UNK_RET func_80808000(UNK_ARGS); +// UNK_RET func_80808080(UNK_ARGS); +// UNK_RET func_808080FF(UNK_ARGS); +// UNK_RET func_80808214(UNK_ARGS); +// UNK_RET func_80808D30(UNK_ARGS); +// UNK_RET func_80808F1C(UNK_ARGS); +// UNK_RET func_80809DF0(UNK_ARGS); +// UNK_RET func_80809EA0(UNK_ARGS); +// UNK_RET func_8080A3CC(UNK_ARGS); +// UNK_RET func_8080A418(UNK_ARGS); +// UNK_RET func_8080A4A0(UNK_ARGS); +// UNK_RET func_8080A6BC(UNK_ARGS); +// UNK_RET func_8080A708(UNK_ARGS); +// UNK_RET func_8080BBFC(UNK_ARGS); +// UNK_RET func_8080BC20(UNK_ARGS); +// UNK_RET func_8080BC4C(UNK_ARGS); +// UNK_RET func_8080BC58(UNK_ARGS); +// UNK_RET func_8080BDAC(UNK_ARGS); +// UNK_RET func_8080BDDC(UNK_ARGS); +// UNK_RET func_8080BE60(UNK_ARGS); +// UNK_RET func_8080C040(UNK_ARGS); +// UNK_RET func_8080C228(UNK_ARGS); +// UNK_RET func_8080C29C(UNK_ARGS); +// UNK_RET func_8080C324(UNK_ARGS); +// UNK_RET func_8080C3A8(UNK_ARGS); +// UNK_RET func_8080D164(UNK_ARGS); +// UNK_RET func_8080D170(UNK_ARGS); +// UNK_RET func_8080D1BC(UNK_ARGS); +// UNK_RET func_8080D220(UNK_ARGS); +// UNK_RET func_8080D284(UNK_ARGS); +// UNK_RET func_8080D2EC(UNK_ARGS); +// UNK_RET func_8080D3D0(UNK_ARGS); +// UNK_RET func_8080D40C(UNK_ARGS); +// UNK_RET func_8080D6D4(UNK_ARGS); +// UNK_RET func_8080F25C(UNK_ARGS); +// UNK_RET func_808108DC(UNK_ARGS); +// UNK_RET func_80811CB8(UNK_ARGS); +// UNK_RET func_80812460(UNK_ARGS); +// UNK_RET func_80812668(UNK_ARGS); +// UNK_RET func_80812760(UNK_ARGS); +// UNK_RET func_80812840(UNK_ARGS); +// UNK_RET func_80812980(UNK_ARGS); +// UNK_RET func_80812A6C(UNK_ARGS); +// UNK_RET func_80812D44(UNK_ARGS); +// UNK_RET func_80812D94(UNK_ARGS); +// UNK_RET func_80812E94(UNK_ARGS); +// UNK_RET func_80812ED0(UNK_ARGS); +// UNK_RET func_8081313C(UNK_ARGS); +// UNK_RET func_80813268(UNK_ARGS); +// UNK_RET func_80813908(UNK_ARGS); +// UNK_RET func_80813C74(UNK_ARGS); +// UNK_RET func_80813C98(UNK_ARGS); +// UNK_RET func_80814EB0(UNK_ARGS); +// UNK_RET func_80814FE8(UNK_ARGS); +// UNK_RET func_808156B4(UNK_ARGS); +// UNK_RET func_8081574C(UNK_ARGS); +// UNK_RET func_80815770(UNK_ARGS); +// UNK_RET func_8081577C(UNK_ARGS); +// UNK_RET func_80815820(UNK_ARGS); +// UNK_RET func_808160A0(UNK_ARGS); +// UNK_RET func_80817B5C(UNK_ARGS); +// UNK_RET func_80818904(UNK_ARGS); +// UNK_RET func_80818920(UNK_ARGS); +// UNK_RET func_808190C4(UNK_ARGS); +// UNK_RET func_80819238(UNK_ARGS); +// UNK_RET func_80819F04(UNK_ARGS); +// UNK_RET func_8081B240(UNK_ARGS); +// UNK_RET func_8081B6BC(UNK_ARGS); +// UNK_RET func_8081B6EC(UNK_ARGS); +// UNK_RET func_8081BCA8(UNK_ARGS); +// UNK_RET func_8081C684(UNK_ARGS); +// UNK_RET func_8081D240(UNK_ARGS); +// UNK_RET func_8081D6DC(UNK_ARGS); +// UNK_RET func_8081E118(UNK_ARGS); +// UNK_RET func_8081E7D8(UNK_ARGS); +// UNK_RET func_8081FB1C(UNK_ARGS); +// UNK_RET func_8081FF80(UNK_ARGS); +// UNK_RET func_808204AC(UNK_ARGS); +// UNK_RET func_80820FA4(UNK_ARGS); +// UNK_RET func_80821900(UNK_ARGS); +// UNK_RET func_8082192C(UNK_ARGS); +// UNK_RET func_80821958(UNK_ARGS); +// UNK_RET func_80821984(UNK_ARGS); +// UNK_RET func_80821A04(UNK_ARGS); +// UNK_RET func_80821AD4(UNK_ARGS); +// UNK_RET func_80821CC4(UNK_ARGS); +// UNK_RET func_80821D84(UNK_ARGS); +// UNK_RET func_80821F30(UNK_ARGS); +// UNK_RET func_808221DC(UNK_ARGS); +// UNK_RET func_80823350(UNK_ARGS); +// UNK_RET func_80824738(UNK_ARGS); +// UNK_RET func_808248D0(UNK_ARGS); +// UNK_RET func_80824B90(UNK_ARGS); +// UNK_RET func_808256E4(UNK_ARGS); +// UNK_RET func_8082585C(UNK_ARGS); +// UNK_RET func_808259D4(UNK_ARGS); +// UNK_RET func_80825A50(UNK_ARGS); +// UNK_RET func_80825E28(UNK_ARGS); +// UNK_RET func_808274DC(UNK_ARGS); +// UNK_RET func_80827A8C(UNK_ARGS); +// UNK_RET func_80827E08(UNK_ARGS); +// UNK_RET func_808283D8(UNK_ARGS); +// UNK_RET func_808286D8(UNK_ARGS); +// UNK_RET func_80828788(UNK_ARGS); +// UNK_RET func_8082895C(UNK_ARGS); +// UNK_RET func_808289D4(UNK_ARGS); +// UNK_RET func_80828D18(UNK_ARGS); +// UNK_RET func_80828E0C(UNK_ARGS); +// UNK_RET func_80828E40(UNK_ARGS); +// UNK_RET func_80828E64(UNK_ARGS); +// UNK_RET func_80828EC8(UNK_ARGS); +// UNK_RET func_80828EDC(UNK_ARGS); +// UNK_RET func_80828F0C(UNK_ARGS); +// UNK_RET func_80828F1C(UNK_ARGS); +// UNK_RET func_80829000(UNK_ARGS); +// UNK_RET func_80829044(UNK_ARGS); +// UNK_RET func_808290A8(UNK_ARGS); +// UNK_RET func_808290B8(UNK_ARGS); +// UNK_RET func_808290D8(UNK_ARGS); +// UNK_RET func_808290E4(UNK_ARGS); +// UNK_RET func_80829108(UNK_ARGS); +// UNK_RET func_808291AC(UNK_ARGS); +// UNK_RET func_80829304(UNK_ARGS); +// UNK_RET func_80829320(UNK_ARGS); +// UNK_RET func_808293B0(UNK_ARGS); +// UNK_RET func_808294E0(UNK_ARGS); +// UNK_RET func_80829654(UNK_ARGS); +// UNK_RET func_80829700(UNK_ARGS); +// UNK_RET func_80829900(UNK_ARGS); +// UNK_RET func_80829CF8(UNK_ARGS); +// UNK_RET func_80829D28(UNK_ARGS); +// UNK_RET func_80829E60(UNK_ARGS); +// UNK_RET func_80829FCC(UNK_ARGS); +// UNK_RET func_8082A01C(UNK_ARGS); +// UNK_RET func_8082A0CC(UNK_ARGS); +// UNK_RET func_8082A144(UNK_ARGS); +// UNK_RET func_8082A250(UNK_ARGS); +// UNK_RET func_8082A434(UNK_ARGS); +// UNK_RET func_8082A558(UNK_ARGS); +// UNK_RET func_8082A60C(UNK_ARGS); +// UNK_RET func_8082A788(UNK_ARGS); +// UNK_RET func_8082A8D0(UNK_ARGS); +// UNK_RET func_8082A9EC(UNK_ARGS); +// UNK_RET func_8082AB20(UNK_ARGS); +// UNK_RET func_8082DA90(UNK_ARGS); +// UNK_RET func_8082DABC(UNK_ARGS); +// UNK_RET func_8082DAD4(UNK_ARGS); +// UNK_RET func_8082DAFC(UNK_ARGS); +// UNK_RET func_8082DB18(UNK_ARGS); +// UNK_RET func_8082DB3C(UNK_ARGS); +// UNK_RET func_8082DB60(UNK_ARGS); +// UNK_RET func_8082DB90(UNK_ARGS); +// UNK_RET func_8082DBC0(UNK_ARGS); +// UNK_RET func_8082DC28(UNK_ARGS); +// UNK_RET func_8082DC38(UNK_ARGS); +// UNK_RET func_8082DC64(UNK_ARGS); +// UNK_RET func_8082DCA0(UNK_ARGS); +// UNK_RET func_8082DD2C(UNK_ARGS); +// UNK_RET func_8082DE14(UNK_ARGS); +// UNK_RET func_8082DE50(UNK_ARGS); +// UNK_RET func_8082DE88(UNK_ARGS); +// UNK_RET func_8082DF2C(UNK_ARGS); +// UNK_RET func_8082DF48(UNK_ARGS); +// UNK_RET func_8082DF8C(UNK_ARGS); +// UNK_RET func_8082E00C(UNK_ARGS); +// UNK_RET func_8082E078(UNK_ARGS); +// UNK_RET func_8082E094(UNK_ARGS); +// UNK_RET func_8082E0CC(UNK_ARGS); +// UNK_RET func_8082E0F4(UNK_ARGS); +// UNK_RET func_8082E12C(UNK_ARGS); +// UNK_RET func_8082E188(UNK_ARGS); +// UNK_RET func_8082E1BC(UNK_ARGS); +// UNK_RET func_8082E1F0(UNK_ARGS); +// UNK_RET func_8082E224(UNK_ARGS); +// UNK_RET func_8082E438(UNK_ARGS); +// UNK_RET func_8082E4A4(UNK_ARGS); +// UNK_RET func_8082E514(UNK_ARGS); +// UNK_RET func_8082E55C(UNK_ARGS); +// UNK_RET func_8082E5A8(UNK_ARGS); +// UNK_RET func_8082E5EC(UNK_ARGS); +// UNK_RET func_8082E634(UNK_ARGS); +// UNK_RET func_8082E67C(UNK_ARGS); +// UNK_RET func_8082E6D0(UNK_ARGS); +// UNK_RET func_8082E6F8(UNK_ARGS); +// UNK_RET func_8082E784(UNK_ARGS); +// UNK_RET func_8082E794(UNK_ARGS); +// UNK_RET func_8082E820(UNK_ARGS); +// UNK_RET func_8082E920(UNK_ARGS); +// UNK_RET func_8082E9C8(UNK_ARGS); +// UNK_RET func_8082EA10(UNK_ARGS); +// UNK_RET func_8082EA38(UNK_ARGS); +// UNK_RET func_8082EA60(UNK_ARGS); +// UNK_RET func_8082EA80(UNK_ARGS); +// UNK_RET func_8082EAC8(UNK_ARGS); +// UNK_RET func_8082EAF0(UNK_ARGS); +// UNK_RET func_8082EB18(UNK_ARGS); +// UNK_RET func_8082EB38(UNK_ARGS); +// UNK_RET func_8082EC9C(UNK_ARGS); +// UNK_RET func_8082ECCC(UNK_ARGS); +// UNK_RET func_8082ECE0(UNK_ARGS); +// UNK_RET func_8082ED20(UNK_ARGS); +// UNK_RET func_8082ED94(UNK_ARGS); +// UNK_RET func_8082EEA4(UNK_ARGS); +// UNK_RET func_8082EEE0(UNK_ARGS); +// UNK_RET func_8082EF20(UNK_ARGS); +// UNK_RET func_8082EF54(UNK_ARGS); +// UNK_RET func_8082EF9C(UNK_ARGS); +// UNK_RET func_8082EFE4(UNK_ARGS); +// UNK_RET func_8082F02C(UNK_ARGS); +// UNK_RET func_8082F09C(UNK_ARGS); +// UNK_RET func_8082F0E4(UNK_ARGS); +// UNK_RET func_8082F164(UNK_ARGS); +// UNK_RET func_8082F1AC(UNK_ARGS); +// UNK_RET func_8082F43C(UNK_ARGS); +// UNK_RET func_8082F470(UNK_ARGS); +// UNK_RET func_8082F524(UNK_ARGS); +// UNK_RET func_8082F594(UNK_ARGS); +// UNK_RET func_8082F5A4(UNK_ARGS); +// UNK_RET func_8082F5C0(UNK_ARGS); +// UNK_RET func_8082F5FC(UNK_ARGS); +// UNK_RET func_8082F62C(UNK_ARGS); +// UNK_RET func_8082F7F4(UNK_ARGS); +// UNK_RET func_8082F8A0(UNK_ARGS); +// UNK_RET func_8082F8BC(UNK_ARGS); +// UNK_RET func_8082F938(UNK_ARGS); +// UNK_RET func_8082FA5C(UNK_ARGS); +// UNK_RET func_8082FB68(UNK_ARGS); +// UNK_RET func_8082FBE8(UNK_ARGS); +// UNK_RET func_8082FC24(UNK_ARGS); +// UNK_RET func_8082FC60(UNK_ARGS); +// UNK_RET func_8082FC78(UNK_ARGS); +// UNK_RET func_8082FCC4(UNK_ARGS); +// UNK_RET func_8082FD0C(UNK_ARGS); +// UNK_RET func_8082FDC4(UNK_ARGS); +// UNK_RET func_8082FE0C(UNK_ARGS); +// UNK_RET func_808302CC(UNK_ARGS); +// UNK_RET func_808304BC(UNK_ARGS); +// UNK_RET func_808305BC(UNK_ARGS); +// UNK_RET func_808306F8(UNK_ARGS); +// UNK_RET func_808308DC(UNK_ARGS); +// UNK_RET func_808309CC(UNK_ARGS); +// UNK_RET func_80830A58(UNK_ARGS); +// UNK_RET func_80830AE8(UNK_ARGS); +// UNK_RET func_80830B38(UNK_ARGS); +// UNK_RET func_80830B88(UNK_ARGS); +// UNK_RET func_80830CE8(UNK_ARGS); +// UNK_RET func_80830D40(UNK_ARGS); +// UNK_RET func_80830DF0(UNK_ARGS); +// UNK_RET func_80830E30(UNK_ARGS); +// UNK_RET func_80830F9C(UNK_ARGS); +// UNK_RET func_80830FD4(UNK_ARGS); +// UNK_RET func_80831010(UNK_ARGS); +// UNK_RET func_80831094(UNK_ARGS); +// UNK_RET func_80831124(UNK_ARGS); +// UNK_RET func_80831194(UNK_ARGS); +// UNK_RET func_8083133C(UNK_ARGS); +// UNK_RET func_808313A8(UNK_ARGS); +// UNK_RET func_808313F0(UNK_ARGS); +// UNK_RET func_80831454(UNK_ARGS); +// UNK_RET func_80831494(UNK_ARGS); +// UNK_RET func_8083172C(UNK_ARGS); +// UNK_RET func_80831760(UNK_ARGS); +// UNK_RET func_808317C4(UNK_ARGS); +// UNK_RET func_80831814(UNK_ARGS); +// UNK_RET func_808318C0(UNK_ARGS); +// UNK_RET func_80831944(UNK_ARGS); +// UNK_RET func_80831990(UNK_ARGS); +// UNK_RET func_80831F34(UNK_ARGS); +// UNK_RET func_80832090(UNK_ARGS); +// UNK_RET func_8083213C(UNK_ARGS); +// UNK_RET func_8083216C(UNK_ARGS); +// UNK_RET func_808323C0(UNK_ARGS); +// UNK_RET func_80832444(UNK_ARGS); +// UNK_RET func_8083249C(UNK_ARGS); +// UNK_RET func_808324EC(UNK_ARGS); +// UNK_RET func_80832558(UNK_ARGS); +// UNK_RET func_80832578(UNK_ARGS); +// UNK_RET func_80832660(UNK_ARGS); +// UNK_RET func_80832754(UNK_ARGS); +// UNK_RET func_80832888(UNK_ARGS); +// UNK_RET func_80832CAC(UNK_ARGS); +// UNK_RET func_80832F24(UNK_ARGS); +// UNK_RET func_80832F78(UNK_ARGS); +// UNK_RET func_80833058(UNK_ARGS); +// UNK_RET func_808331FC(UNK_ARGS); +// UNK_RET func_808332A0(UNK_ARGS); +// UNK_RET func_808333CC(UNK_ARGS); +// UNK_RET func_808334D4(UNK_ARGS); +// UNK_RET func_808335B0(UNK_ARGS); +// UNK_RET func_808335F4(UNK_ARGS); +// UNK_RET func_80833728(UNK_ARGS); +// UNK_RET func_8083375C(UNK_ARGS); +// UNK_RET func_80833864(UNK_ARGS); +// UNK_RET func_80833998(UNK_ARGS); +// UNK_RET func_808339B4(UNK_ARGS); +// UNK_RET func_808339D4(UNK_ARGS); +// UNK_RET func_80833A64(UNK_ARGS); +// UNK_RET func_80833AA0(UNK_ARGS); +// UNK_RET func_80833B18(UNK_ARGS); +// UNK_RET func_808340AC(UNK_ARGS); +// UNK_RET func_808340D4(UNK_ARGS); +// UNK_RET func_80834104(UNK_ARGS); +// UNK_RET func_80834140(UNK_ARGS); +// UNK_RET func_808341F4(UNK_ARGS); +// UNK_RET func_808344C0(UNK_ARGS); +// UNK_RET func_80834534(UNK_ARGS); +// UNK_RET func_8083456C(UNK_ARGS); +// UNK_RET func_808345A8(UNK_ARGS); +// UNK_RET func_808345C8(UNK_ARGS); +// UNK_RET func_80834600(UNK_ARGS); +// UNK_RET func_80834CD0(UNK_ARGS); +// UNK_RET func_80834D50(UNK_ARGS); +// UNK_RET func_80834DB8(UNK_ARGS); +// UNK_RET func_80834DFC(UNK_ARGS); +// UNK_RET func_80835324(UNK_ARGS); +// UNK_RET func_808353DC(UNK_ARGS); +// UNK_RET func_80835428(UNK_ARGS); +// UNK_RET func_808354A4(UNK_ARGS); +// UNK_RET func_808355D8(UNK_ARGS); +// UNK_RET func_8083562C(UNK_ARGS); +// UNK_RET func_80835BC8(UNK_ARGS); +// UNK_RET func_80835BF8(UNK_ARGS); +// UNK_RET func_80835C64(UNK_ARGS); +// UNK_RET func_80835CD8(UNK_ARGS); +// UNK_RET func_80835D2C(UNK_ARGS); +// UNK_RET func_80835D58(UNK_ARGS); +// UNK_RET func_80835DF8(UNK_ARGS); +// UNK_RET func_80835EAC(UNK_ARGS); +// UNK_RET func_8083604C(UNK_ARGS); +// UNK_RET func_80836258(UNK_ARGS); +// UNK_RET func_808365DC(UNK_ARGS); +// UNK_RET func_80836888(UNK_ARGS); +// UNK_RET func_8083692C(UNK_ARGS); +// UNK_RET func_80836988(UNK_ARGS); +// UNK_RET func_808369F4(UNK_ARGS); +// UNK_RET func_80836A5C(UNK_ARGS); +// UNK_RET func_80836A98(UNK_ARGS); +// UNK_RET func_80836AD8(UNK_ARGS); +// UNK_RET func_80836B3C(UNK_ARGS); +// UNK_RET func_80836C70(UNK_ARGS); +// UNK_RET func_80836D8C(UNK_ARGS); +// UNK_RET func_80836DC0(UNK_ARGS); +// UNK_RET func_80836EA0(UNK_ARGS); +// UNK_RET func_80836F10(UNK_ARGS); +// UNK_RET func_808370D4(UNK_ARGS); +// UNK_RET func_80837134(UNK_ARGS); +// UNK_RET func_808373A4(UNK_ARGS); +// UNK_RET func_808373F8(UNK_ARGS); +// UNK_RET func_80837730(UNK_ARGS); +// UNK_RET func_8083784C(UNK_ARGS); +// UNK_RET func_808378FC(UNK_ARGS); +// UNK_RET func_8083798C(UNK_ARGS); +// UNK_RET func_808379C0(UNK_ARGS); +// UNK_RET func_80837B60(UNK_ARGS); +// UNK_RET func_80837BD0(UNK_ARGS); +// UNK_RET func_80837BF8(UNK_ARGS); +// UNK_RET func_80837C20(UNK_ARGS); +// UNK_RET func_80837C78(UNK_ARGS); +// UNK_RET func_80837CEC(UNK_ARGS); +// UNK_RET func_80837DEC(UNK_ARGS); +// UNK_RET func_808381A0(UNK_ARGS); +// UNK_RET func_808381F8(UNK_ARGS); +// UNK_RET func_8083827C(UNK_ARGS); +// UNK_RET func_8083868C(UNK_ARGS); +// UNK_RET func_80838760(UNK_ARGS); +// UNK_RET func_808387A0(UNK_ARGS); +// UNK_RET func_80838830(UNK_ARGS); +// UNK_RET func_808388B8(UNK_ARGS); +// UNK_RET func_808389BC(UNK_ARGS); +// UNK_RET func_80838A20(UNK_ARGS); +// UNK_RET func_80838A90(UNK_ARGS); +// UNK_RET func_808391D8(UNK_ARGS); +// UNK_RET func_80839518(UNK_ARGS); +// UNK_RET func_808395F0(UNK_ARGS); +// UNK_RET func_808396B8(UNK_ARGS); +// UNK_RET func_80839770(UNK_ARGS); +// UNK_RET func_80839800(UNK_ARGS); +// UNK_RET func_80839860(UNK_ARGS); +// UNK_RET func_80839978(UNK_ARGS); +// UNK_RET func_80839A10(UNK_ARGS); +// UNK_RET func_80839A84(UNK_ARGS); +// UNK_RET func_80839B18(UNK_ARGS); +// UNK_RET func_80839CD8(UNK_ARGS); +// UNK_RET func_80839E3C(UNK_ARGS); +// UNK_RET func_80839E74(UNK_ARGS); +// UNK_RET func_80839ED0(UNK_ARGS); +// UNK_RET func_80839F98(UNK_ARGS); +// UNK_RET func_8083A04C(UNK_ARGS); +// UNK_RET func_8083A0CC(UNK_ARGS); +// UNK_RET func_8083A114(UNK_ARGS); +// UNK_RET func_8083A274(UNK_ARGS); +// UNK_RET func_8083A4A4(UNK_ARGS); +// UNK_RET func_8083A548(UNK_ARGS); +// UNK_RET func_8083A580(UNK_ARGS); +// UNK_RET func_8083A658(UNK_ARGS); +// UNK_RET func_8083A6C0(UNK_ARGS); +// UNK_RET func_8083A794(UNK_ARGS); +// UNK_RET func_8083A844(UNK_ARGS); +// UNK_RET func_8083A878(UNK_ARGS); +// UNK_RET func_8083A98C(UNK_ARGS); +// UNK_RET func_8083AD04(UNK_ARGS); +// UNK_RET func_8083AD8C(UNK_ARGS); +// UNK_RET func_8083ADB8(UNK_ARGS); +// UNK_RET func_8083ADF0(UNK_ARGS); +// UNK_RET func_8083AE38(UNK_ARGS); +// UNK_RET func_8083AECC(UNK_ARGS); +// UNK_RET func_8083AF30(UNK_ARGS); +// UNK_RET func_8083AF8C(UNK_ARGS); +// UNK_RET func_8083B030(UNK_ARGS); +// UNK_RET func_8083B090(UNK_ARGS); +// UNK_RET func_8083B0E4(UNK_ARGS); +// UNK_RET func_8083B1A0(UNK_ARGS); +// UNK_RET func_8083B23C(UNK_ARGS); +// UNK_RET func_8083B29C(UNK_ARGS); +// UNK_RET func_8083B2E4(UNK_ARGS); +// UNK_RET func_8083B32C(UNK_ARGS); +// UNK_RET func_8083B3B4(UNK_ARGS); +// UNK_RET func_8083B73C(UNK_ARGS); +// UNK_RET func_8083B798(UNK_ARGS); +// UNK_RET func_8083B850(UNK_ARGS); +// UNK_RET func_8083B8D0(UNK_ARGS); +// UNK_RET func_8083B930(UNK_ARGS); +// UNK_RET func_8083BB4C(UNK_ARGS); +// UNK_RET func_8083BF54(UNK_ARGS); +// UNK_RET func_8083C62C(UNK_ARGS); +// UNK_RET func_8083C6E8(UNK_ARGS); +// UNK_RET func_8083C85C(UNK_ARGS); +// UNK_RET func_8083C8E8(UNK_ARGS); +// UNK_RET func_8083CB04(UNK_ARGS); +// UNK_RET func_8083CB58(UNK_ARGS); +// UNK_RET func_8083CBC4(UNK_ARGS); +// UNK_RET func_8083CCB4(UNK_ARGS); +// UNK_RET func_8083CF68(UNK_ARGS); +// UNK_RET func_8083D168(UNK_ARGS); +// UNK_RET func_8083D23C(UNK_ARGS); +// UNK_RET func_8083D6DC(UNK_ARGS); +// UNK_RET func_8083D738(UNK_ARGS); +// UNK_RET func_8083D78C(UNK_ARGS); +// UNK_RET func_8083D860(UNK_ARGS); +// UNK_RET func_8083DCC4(UNK_ARGS); +// UNK_RET func_8083DD1C(UNK_ARGS); +// UNK_RET func_8083DEE4(UNK_ARGS); +// UNK_RET func_8083DF38(UNK_ARGS); +// UNK_RET func_8083DFC4(UNK_ARGS); +// UNK_RET func_8083E14C(UNK_ARGS); +// UNK_RET func_8083E234(UNK_ARGS); +// UNK_RET func_8083E28C(UNK_ARGS); +// UNK_RET func_8083E2F4(UNK_ARGS); +// UNK_RET func_8083E354(UNK_ARGS); +// UNK_RET func_8083E404(UNK_ARGS); +// UNK_RET func_8083E514(UNK_ARGS); +// UNK_RET func_8083E758(UNK_ARGS); +// UNK_RET func_8083E7F8(UNK_ARGS); +// UNK_RET func_8083E8E0(UNK_ARGS); +// UNK_RET func_8083E958(UNK_ARGS); +// UNK_RET func_8083E9C4(UNK_ARGS); +// UNK_RET func_8083EA44(UNK_ARGS); +// UNK_RET func_8083EBD0(UNK_ARGS); +// UNK_RET func_8083EE60(UNK_ARGS); +// UNK_RET func_8083F144(UNK_ARGS); +// UNK_RET func_8083F190(UNK_ARGS); +// UNK_RET func_8083F230(UNK_ARGS); +// UNK_RET func_8083F27C(UNK_ARGS); +// UNK_RET func_8083F358(UNK_ARGS); +// UNK_RET func_8083F57C(UNK_ARGS); +// UNK_RET func_8083F828(UNK_ARGS); +// UNK_RET func_8083F8A8(UNK_ARGS); +// UNK_RET func_8083FBC4(UNK_ARGS); +// UNK_RET func_8083FCF0(UNK_ARGS); +// UNK_RET func_8083FD80(UNK_ARGS); +// UNK_RET func_8083FE38(UNK_ARGS); +// UNK_RET func_8083FE90(UNK_ARGS); +// UNK_RET func_8083FEF4(UNK_ARGS); +// UNK_RET func_8083FF30(UNK_ARGS); +// UNK_RET func_8083FFEC(UNK_ARGS); +// UNK_RET func_80840094(UNK_ARGS); +// UNK_RET func_808400CC(UNK_ARGS); +// UNK_RET func_808401F4(UNK_ARGS); +// UNK_RET func_80840770(UNK_ARGS); +// UNK_RET func_80840980(UNK_ARGS); +// UNK_RET func_808409A8(UNK_ARGS); +// UNK_RET func_80840A30(UNK_ARGS); +// UNK_RET func_80840CD4(UNK_ARGS); +// UNK_RET func_80840DEC(UNK_ARGS); +// UNK_RET func_80840E24(UNK_ARGS); +// UNK_RET func_80840E5C(UNK_ARGS); +// UNK_RET func_80840EC0(UNK_ARGS); +// UNK_RET func_80840F34(UNK_ARGS); +// UNK_RET func_80840F90(UNK_ARGS); +// UNK_RET func_808411D4(UNK_ARGS); +// UNK_RET func_808412A0(UNK_ARGS); +// UNK_RET func_808412BC(UNK_ARGS); +// UNK_RET func_80841358(UNK_ARGS); +// UNK_RET func_80841408(UNK_ARGS); +// UNK_RET func_808414E0(UNK_ARGS); +// UNK_RET func_80841528(UNK_ARGS); +// UNK_RET func_808415A0(UNK_ARGS); +// UNK_RET func_808415E4(UNK_ARGS); +// UNK_RET func_80841624(UNK_ARGS); +// UNK_RET func_80841744(UNK_ARGS); +// UNK_RET func_8084182C(UNK_ARGS); +// UNK_RET func_80841A50(UNK_ARGS); +// UNK_RET func_80841AC4(UNK_ARGS); +// UNK_RET func_80842510(UNK_ARGS); +// UNK_RET func_808425B4(UNK_ARGS); +// UNK_RET func_808426F0(UNK_ARGS); +// UNK_RET func_808430E0(UNK_ARGS); +// UNK_RET func_80843178(UNK_ARGS); +// UNK_RET func_80843EC0(UNK_ARGS); +// UNK_RET func_808442D8(UNK_ARGS); +// UNK_RET func_808445C4(UNK_ARGS); +// UNK_RET func_808446F4(UNK_ARGS); +// UNK_RET func_80844784(UNK_ARGS); +// UNK_RET func_80844D80(UNK_ARGS); +// UNK_RET func_80844EF8(UNK_ARGS); +// UNK_RET func_808460B8(UNK_ARGS); +// UNK_RET func_808463C0(UNK_ARGS); +// UNK_RET func_80846460(UNK_ARGS); +// UNK_RET func_80846528(UNK_ARGS); +// UNK_RET func_808470D4(UNK_ARGS); +// UNK_RET func_80847190(UNK_ARGS); +// UNK_RET func_8084748C(UNK_ARGS); +// UNK_RET func_808475B4(UNK_ARGS); +// UNK_RET func_808477D0(UNK_ARGS); +// UNK_RET func_80847880(UNK_ARGS); +// UNK_RET func_80847994(UNK_ARGS); +// UNK_RET func_808479F4(UNK_ARGS); +// UNK_RET func_80847A50(UNK_ARGS); +// UNK_RET func_80847A94(UNK_ARGS); +// UNK_RET func_80847BF0(UNK_ARGS); +// UNK_RET func_80847E2C(UNK_ARGS); +// UNK_RET func_80847ED4(UNK_ARGS); +// UNK_RET func_80847F1C(UNK_ARGS); +// UNK_RET func_80847FF8(UNK_ARGS); +// UNK_RET func_80848048(UNK_ARGS); +// UNK_RET func_80848094(UNK_ARGS); +// UNK_RET func_808481CC(UNK_ARGS); +// UNK_RET func_80848250(UNK_ARGS); +// UNK_RET func_80848294(UNK_ARGS); +// UNK_RET func_808482E0(UNK_ARGS); +// UNK_RET func_808484CC(UNK_ARGS); +// UNK_RET func_808484F0(UNK_ARGS); +// UNK_RET func_80848570(UNK_ARGS); +// UNK_RET func_80848640(UNK_ARGS); +// UNK_RET func_80848780(UNK_ARGS); +// UNK_RET func_808487B8(UNK_ARGS); +// UNK_RET func_80848808(UNK_ARGS); +// UNK_RET func_8084894C(UNK_ARGS); +// UNK_RET func_80848AB0(UNK_ARGS); +// UNK_RET func_80848B6C(UNK_ARGS); +// UNK_RET func_80848E4C(UNK_ARGS); +// UNK_RET func_80849054(UNK_ARGS); +// UNK_RET func_808490B4(UNK_ARGS); +// UNK_RET func_808491B4(UNK_ARGS); +// UNK_RET func_8084923C(UNK_ARGS); +// UNK_RET func_808492C4(UNK_ARGS); +// UNK_RET func_8084933C(UNK_ARGS); +// UNK_RET func_80849570(UNK_ARGS); +// UNK_RET func_80849620(UNK_ARGS); +// UNK_RET func_808496AC(UNK_ARGS); +// UNK_RET func_808497A0(UNK_ARGS); +// UNK_RET func_80849A9C(UNK_ARGS); +// UNK_RET func_80849DD0(UNK_ARGS); +// UNK_RET func_80849FE0(UNK_ARGS); +// UNK_RET func_8084A26C(UNK_ARGS); +// UNK_RET func_8084A5C0(UNK_ARGS); +// UNK_RET func_8084A794(UNK_ARGS); +// UNK_RET func_8084A884(UNK_ARGS); +// UNK_RET func_8084A8E8(UNK_ARGS); +// UNK_RET func_8084AB4C(UNK_ARGS); +// UNK_RET func_8084AC84(UNK_ARGS); +// UNK_RET func_8084AEEC(UNK_ARGS); +// UNK_RET func_8084AF9C(UNK_ARGS); +// UNK_RET func_8084B0EC(UNK_ARGS); +// UNK_RET func_8084B288(UNK_ARGS); +// UNK_RET func_8084B3B8(UNK_ARGS); +// UNK_RET func_8084B4A8(UNK_ARGS); +// UNK_RET func_8084B5C0(UNK_ARGS); +// UNK_RET func_8084BAA4(UNK_ARGS); +// UNK_RET func_8084BBF0(UNK_ARGS); +// UNK_RET func_8084BC64(UNK_ARGS); +// UNK_RET func_8084BE40(UNK_ARGS); +// UNK_RET func_8084BF28(UNK_ARGS); +// UNK_RET func_8084C124(UNK_ARGS); +// UNK_RET func_8084C16C(UNK_ARGS); +// UNK_RET func_8084C6EC(UNK_ARGS); +// UNK_RET func_8084C94C(UNK_ARGS); +// UNK_RET func_8084CA24(UNK_ARGS); +// UNK_RET func_8084CB58(UNK_ARGS); +// UNK_RET func_8084CCEC(UNK_ARGS); +// UNK_RET func_8084CE84(UNK_ARGS); +// UNK_RET func_8084D18C(UNK_ARGS); +// UNK_RET func_8084D4EC(UNK_ARGS); +// UNK_RET func_8084D770(UNK_ARGS); +// UNK_RET func_8084D820(UNK_ARGS); +// UNK_RET func_8084E034(UNK_ARGS); +// UNK_RET func_8084E25C(UNK_ARGS); +// UNK_RET func_8084E334(UNK_ARGS); +// UNK_RET func_8084E434(UNK_ARGS); +// UNK_RET func_8084E4E4(UNK_ARGS); +// UNK_RET func_8084E58C(UNK_ARGS); +// UNK_RET func_8084E65C(UNK_ARGS); +// UNK_RET func_8084E724(UNK_ARGS); +// UNK_RET func_8084E980(UNK_ARGS); +// UNK_RET func_8084ED9C(UNK_ARGS); +// UNK_RET func_8084EE50(UNK_ARGS); +// UNK_RET func_8084EF9C(UNK_ARGS); +// UNK_RET func_8084F1B8(UNK_ARGS); +// UNK_RET func_8084F3DC(UNK_ARGS); +// UNK_RET func_8084F4E8(UNK_ARGS); +// UNK_RET func_8084FC0C(UNK_ARGS); +// UNK_RET func_8084FD7C(UNK_ARGS); +// UNK_RET func_8084FE48(UNK_ARGS); +// UNK_RET func_8084FE7C(UNK_ARGS); +// UNK_RET func_808505D0(UNK_ARGS); +// UNK_RET func_80850734(UNK_ARGS); +// UNK_RET func_80850854(UNK_ARGS); +// UNK_RET func_808508C8(UNK_ARGS); +// UNK_RET func_80850B18(UNK_ARGS); +// UNK_RET func_80850BA8(UNK_ARGS); +// UNK_RET func_80850BF8(UNK_ARGS); +// UNK_RET func_80850D20(UNK_ARGS); +// UNK_RET func_80850D68(UNK_ARGS); +// UNK_RET func_808513EC(UNK_ARGS); +// UNK_RET func_80851588(UNK_ARGS); +// UNK_RET func_808516B4(UNK_ARGS); +// UNK_RET func_808519FC(UNK_ARGS); +// UNK_RET func_80851B58(UNK_ARGS); +// UNK_RET func_80851BD4(UNK_ARGS); +// UNK_RET func_80851C40(UNK_ARGS); +// UNK_RET func_80851D30(UNK_ARGS); +// UNK_RET func_80851EAC(UNK_ARGS); +// UNK_RET func_80851EC8(UNK_ARGS); +// UNK_RET func_80851F18(UNK_ARGS); +// UNK_RET func_808521E0(UNK_ARGS); +// UNK_RET func_80852290(UNK_ARGS); +// UNK_RET func_8085255C(UNK_ARGS); +// UNK_RET func_808525C4(UNK_ARGS); +// UNK_RET func_8085269C(UNK_ARGS); +// UNK_RET func_80852B28(UNK_ARGS); +// UNK_RET func_80852C04(UNK_ARGS); +// UNK_RET func_80852FD4(UNK_ARGS); +// UNK_RET func_808530E0(UNK_ARGS); +// UNK_RET func_80853194(UNK_ARGS); +// UNK_RET func_808534C0(UNK_ARGS); +// UNK_RET func_80853754(UNK_ARGS); +// UNK_RET func_80853850(UNK_ARGS); +// UNK_RET func_80853A5C(UNK_ARGS); +// UNK_RET func_80853CC0(UNK_ARGS); +// UNK_RET func_80853D68(UNK_ARGS); +// UNK_RET func_80854010(UNK_ARGS); +// UNK_RET func_808540A0(UNK_ARGS); +// UNK_RET func_80854118(UNK_ARGS); +// UNK_RET func_8085421C(UNK_ARGS); +// UNK_RET func_8085437C(UNK_ARGS); +// UNK_RET func_8085439C(UNK_ARGS); +// UNK_RET func_80854430(UNK_ARGS); +// UNK_RET func_80854614(UNK_ARGS); +// UNK_RET func_808546D0(UNK_ARGS); +// UNK_RET func_80854800(UNK_ARGS); +// UNK_RET func_808548B8(UNK_ARGS); +// UNK_RET func_80854C70(UNK_ARGS); +// UNK_RET func_80854CD0(UNK_ARGS); +// UNK_RET func_80854EFC(UNK_ARGS); +// UNK_RET func_808550D0(UNK_ARGS); +// UNK_RET func_80855218(UNK_ARGS); +// UNK_RET func_808553F4(UNK_ARGS); +// UNK_RET func_80855A7C(UNK_ARGS); +// UNK_RET func_80855AF4(UNK_ARGS); +// UNK_RET func_80855B9C(UNK_ARGS); +// UNK_RET func_80855C28(UNK_ARGS); +// UNK_RET func_80855E08(UNK_ARGS); +// UNK_RET func_80855F9C(UNK_ARGS); +// UNK_RET func_80856000(UNK_ARGS); +// UNK_RET func_80856074(UNK_ARGS); +// UNK_RET func_80856110(UNK_ARGS); +// UNK_RET func_808561B0(UNK_ARGS); +// UNK_RET func_808566C0(UNK_ARGS); +// UNK_RET func_8085687C(UNK_ARGS); +// UNK_RET func_80856888(UNK_ARGS); +// UNK_RET func_80856918(UNK_ARGS); +// UNK_RET func_808573A4(UNK_ARGS); +// UNK_RET func_80857640(UNK_ARGS); +// UNK_RET func_808576BC(UNK_ARGS); +// UNK_RET func_808577E0(UNK_ARGS); +// UNK_RET func_80857950(UNK_ARGS); +// UNK_RET func_80857A44(UNK_ARGS); +// UNK_RET func_80857AEC(UNK_ARGS); +// UNK_RET func_80857BE8(UNK_ARGS); +// UNK_RET func_80858C84(UNK_ARGS); +// UNK_RET func_80858CC8(UNK_ARGS); +// UNK_RET func_80858D48(UNK_ARGS); +// UNK_RET func_80858DB4(UNK_ARGS); +// UNK_RET func_80858DDC(UNK_ARGS); +// UNK_RET func_80858DFC(UNK_ARGS); +// UNK_RET func_80858E40(UNK_ARGS); +// UNK_RET func_80858E60(UNK_ARGS); +// UNK_RET func_80858E80(UNK_ARGS); +// UNK_RET func_80858EA0(UNK_ARGS); +// UNK_RET func_80858EC0(UNK_ARGS); +// UNK_RET func_80858EFC(UNK_ARGS); +// UNK_RET func_80858F1C(UNK_ARGS); +// UNK_RET func_80858F3C(UNK_ARGS); +// UNK_RET func_80858F5C(UNK_ARGS); +// UNK_RET func_80858F7C(UNK_ARGS); +// UNK_RET func_80858F9C(UNK_ARGS); +// UNK_RET func_80858FBC(UNK_ARGS); +// UNK_RET func_80858FE8(UNK_ARGS); +// UNK_RET func_80859028(UNK_ARGS); +// UNK_RET func_80859168(UNK_ARGS); +// UNK_RET func_808591BC(UNK_ARGS); +// UNK_RET func_80859210(UNK_ARGS); +// UNK_RET func_80859248(UNK_ARGS); +// UNK_RET func_8085929C(UNK_ARGS); +// UNK_RET func_80859300(UNK_ARGS); +// UNK_RET func_80859414(UNK_ARGS); +// UNK_RET func_808594D0(UNK_ARGS); +// UNK_RET func_808595B8(UNK_ARGS); +// UNK_RET func_8085968C(UNK_ARGS); +// UNK_RET func_80859708(UNK_ARGS); +// UNK_RET func_8085978C(UNK_ARGS); +// UNK_RET func_80859890(UNK_ARGS); +// UNK_RET func_80859990(UNK_ARGS); +// UNK_RET func_808599DC(UNK_ARGS); +// UNK_RET func_80859A10(UNK_ARGS); +// UNK_RET func_80859A44(UNK_ARGS); +// UNK_RET func_80859AD0(UNK_ARGS); +// UNK_RET func_80859AF8(UNK_ARGS); +// UNK_RET func_80859B28(UNK_ARGS); +// UNK_RET func_80859B54(UNK_ARGS); +// UNK_RET func_80859BA8(UNK_ARGS); +// UNK_RET func_80859C60(UNK_ARGS); +// UNK_RET func_80859CA0(UNK_ARGS); +// UNK_RET func_80859CE0(UNK_ARGS); +// UNK_RET func_80859CFC(UNK_ARGS); +// UNK_RET func_80859D44(UNK_ARGS); +// UNK_RET func_80859D70(UNK_ARGS); +// UNK_RET func_80859EBC(UNK_ARGS); +// UNK_RET func_80859F4C(UNK_ARGS); +// UNK_RET func_80859FCC(UNK_ARGS); +// UNK_RET func_80859FF4(UNK_ARGS); +// UNK_RET func_8085A04C(UNK_ARGS); +// UNK_RET func_8085A120(UNK_ARGS); +// UNK_RET func_8085A144(UNK_ARGS); +// UNK_RET func_8085A19C(UNK_ARGS); +// UNK_RET func_8085A1D4(UNK_ARGS); +// UNK_RET func_8085A24C(UNK_ARGS); +// UNK_RET func_8085A2AC(UNK_ARGS); +// UNK_RET func_8085A330(UNK_ARGS); +// UNK_RET func_8085A364(UNK_ARGS); +// UNK_RET func_8085A40C(UNK_ARGS); +// UNK_RET func_8085A4A4(UNK_ARGS); +// UNK_RET func_8085A530(UNK_ARGS); +// UNK_RET func_8085A5DC(UNK_ARGS); +// UNK_RET func_8085A66C(UNK_ARGS); +// UNK_RET func_8085A6C0(UNK_ARGS); +// UNK_RET func_8085A710(UNK_ARGS); +// UNK_RET func_8085A768(UNK_ARGS); +// UNK_RET func_8085A7C0(UNK_ARGS); +// UNK_RET func_8085A8C4(UNK_ARGS); +// UNK_RET func_8085A940(UNK_ARGS); +// UNK_RET func_8085AA10(UNK_ARGS); +// UNK_RET func_8085AA60(UNK_ARGS); +// UNK_RET func_8085AA84(UNK_ARGS); +// UNK_RET func_8085AACC(UNK_ARGS); +// UNK_RET func_8085AB58(UNK_ARGS); +// UNK_RET func_8085ABA8(UNK_ARGS); +// UNK_RET func_8085AC9C(UNK_ARGS); +// UNK_RET func_8085AD5C(UNK_ARGS); +// UNK_RET func_8085ADA0(UNK_ARGS); +// UNK_RET func_8085B08C(UNK_ARGS); +// UNK_RET func_8085B134(UNK_ARGS); +// UNK_RET func_8085B170(UNK_ARGS); +// UNK_RET func_8085B1F0(UNK_ARGS); +// UNK_RET func_8085B28C(UNK_ARGS); +// UNK_RET func_8085B384(UNK_ARGS); +// UNK_RET func_8085B3E0(UNK_ARGS); +// UNK_RET func_8085B460(UNK_ARGS); +// UNK_RET func_8085B74C(UNK_ARGS); +// UNK_RET func_8085B820(UNK_ARGS); +// UNK_RET func_8085B854(UNK_ARGS); +// UNK_RET func_8085B930(UNK_ARGS); // UNK_RET func_80862B70(UNK_ARGS); // UNK_RET func_80862CBC(UNK_ARGS); // UNK_RET func_80862EDC(UNK_ARGS); @@ -8010,6 +8977,117 @@ UNK_RET func_8019FAD8(UNK_PTR, UNK_TYPE, f32); // func_8019FAD8 // UNK_RET func_8097650C(UNK_ARGS); // UNK_RET func_80976540(UNK_ARGS); // UNK_RET func_809765A0(UNK_ARGS); +// UNK_RET func_80977210(UNK_ARGS); +// UNK_RET func_80977394(UNK_ARGS); +// UNK_RET func_809776BC(UNK_ARGS); +// UNK_RET func_809777B4(UNK_ARGS); +// UNK_RET func_80977A00(UNK_ARGS); +// UNK_RET func_80977B5C(UNK_ARGS); +// UNK_RET func_80977DB4(UNK_ARGS); +// UNK_RET func_80977E6C(UNK_ARGS); +// UNK_RET func_80977F28(UNK_ARGS); +// UNK_RET func_80978070(UNK_ARGS); +// UNK_RET func_80978138(UNK_ARGS); +// UNK_RET func_80978304(UNK_ARGS); +// UNK_RET func_80978628(UNK_ARGS); +// UNK_RET func_809788D0(UNK_ARGS); +// UNK_RET func_809789FC(UNK_ARGS); +// UNK_RET func_80978B68(UNK_ARGS); +// UNK_RET func_80978C30(UNK_ARGS); +// UNK_RET func_80978D70(UNK_ARGS); +// UNK_RET func_80978F40(UNK_ARGS); +// UNK_RET func_80979068(UNK_ARGS); +// UNK_RET func_809791B0(UNK_ARGS); +// UNK_RET func_80979228(UNK_ARGS); +// UNK_RET func_8097930C(UNK_ARGS); +// UNK_RET func_809794D4(UNK_ARGS); +// UNK_RET func_809795C0(UNK_ARGS); +// UNK_RET func_80979738(UNK_ARGS); +// UNK_RET func_8097985C(UNK_ARGS); +// UNK_RET func_80979B30(UNK_ARGS); +// UNK_RET func_80979C38(UNK_ARGS); +// UNK_RET func_80979E48(UNK_ARGS); +// UNK_RET func_80979E80(UNK_ARGS); +// UNK_RET func_8097A050(UNK_ARGS); +// UNK_RET func_8097A208(UNK_ARGS); +// UNK_RET func_8097A310(UNK_ARGS); +// UNK_RET func_8097A470(UNK_ARGS); +// UNK_RET func_8097A548(UNK_ARGS); +// UNK_RET func_8097A5F0(UNK_ARGS); +// UNK_RET func_8097A680(UNK_ARGS); +// UNK_RET func_8097A794(UNK_ARGS); +// UNK_RET func_8097A838(UNK_ARGS); +// UNK_RET func_8097AD60(UNK_ARGS); +// UNK_RET func_8097AF50(UNK_ARGS); +// UNK_RET func_8097B160(UNK_ARGS); +// UNK_RET func_8097B270(UNK_ARGS); +// UNK_RET func_8097B2E4(UNK_ARGS); +// UNK_RET func_8097B424(UNK_ARGS); +// UNK_RET func_8097B504(UNK_ARGS); +// UNK_RET func_8097B5E4(UNK_ARGS); +// UNK_RET func_8097B708(UNK_ARGS); +// UNK_RET func_8097B810(UNK_ARGS); +// UNK_RET func_8097B924(UNK_ARGS); +// UNK_RET func_8097BA58(UNK_ARGS); +// UNK_RET func_8097BAD0(UNK_ARGS); +// UNK_RET func_8097BC4C(UNK_ARGS); +// UNK_RET func_8097BDCC(UNK_ARGS); +// UNK_RET func_8097C130(UNK_ARGS); +// UNK_RET func_8097C394(UNK_ARGS); +// UNK_RET func_8097C490(UNK_ARGS); +// UNK_RET func_8097C74C(UNK_ARGS); +// UNK_RET func_8097C990(UNK_ARGS); +// UNK_RET func_8097CAE8(UNK_ARGS); +// UNK_RET func_8097CCAC(UNK_ARGS); +// UNK_RET func_8097D410(UNK_ARGS); +// UNK_RET func_8097D4E8(UNK_ARGS); +// UNK_RET func_8097D750(UNK_ARGS); +// UNK_RET func_8097D850(UNK_ARGS); +// UNK_RET func_8097D8F4(UNK_ARGS); +// UNK_RET func_8097DAEC(UNK_ARGS); +// UNK_RET func_8097DCA0(UNK_ARGS); +// UNK_RET func_8097DE30(UNK_ARGS); +// UNK_RET func_8097DE6C(UNK_ARGS); +// UNK_RET func_8097E130(UNK_ARGS); +// UNK_RET func_8097E19C(UNK_ARGS); +// UNK_RET func_8097E34C(UNK_ARGS); +// UNK_RET func_8097E368(UNK_ARGS); +// UNK_RET func_8097E384(UNK_ARGS); +// UNK_RET func_8097E3C0(UNK_ARGS); +// UNK_RET func_8097E400(UNK_ARGS); +// UNK_RET func_8097E420(UNK_ARGS); +// UNK_RET func_8097E4B0(UNK_ARGS); +// UNK_RET func_8097E4F0(UNK_ARGS); +// UNK_RET func_8097E584(UNK_ARGS); +// UNK_RET func_8097E660(UNK_ARGS); +// UNK_RET func_8097E698(UNK_ARGS); +// UNK_RET func_8097E7E0(UNK_ARGS); +// UNK_RET func_8097E9D8(UNK_ARGS); +// UNK_RET func_8097ECD0(UNK_ARGS); +// UNK_RET func_8097EE1C(UNK_ARGS); +// UNK_RET func_8097F020(UNK_ARGS); +// UNK_RET func_8097F0D0(UNK_ARGS); +// UNK_RET func_8097F2F0(UNK_ARGS); +// UNK_RET func_8097F62C(UNK_ARGS); +// UNK_RET func_8097F7EC(UNK_ARGS); +// UNK_RET func_8097F880(UNK_ARGS); +// UNK_RET func_8097F99C(UNK_ARGS); +// UNK_RET func_8097FE8C(UNK_ARGS); +// UNK_RET func_8097FF60(UNK_ARGS); +// UNK_RET func_809800CC(UNK_ARGS); +// UNK_RET func_809803BC(UNK_ARGS); +// UNK_RET func_809805D0(UNK_ARGS); +// UNK_RET func_80980714(UNK_ARGS); +// UNK_RET func_8098087C(UNK_ARGS); +// UNK_RET func_80980940(UNK_ARGS); +// UNK_RET func_80980A24(UNK_ARGS); +// UNK_RET func_80980BD4(UNK_ARGS); +// UNK_RET func_80980D50(UNK_ARGS); +// UNK_RET func_80981018(UNK_ARGS); +// UNK_RET func_809811E8(UNK_ARGS); +// UNK_RET func_809812E0(UNK_ARGS); +// UNK_RET func_809813C8(UNK_ARGS); +// UNK_RET func_80981698(UNK_ARGS); // UNK_RET func_80981760(UNK_ARGS); // UNK_RET func_8098176C(UNK_ARGS); // UNK_RET func_809817A8(UNK_ARGS); @@ -8439,6 +9517,9 @@ UNK_RET func_8019FAD8(UNK_PTR, UNK_TYPE, f32); // func_8019FAD8 // UNK_RET func_8099EFF4(UNK_ARGS); // UNK_RET func_8099F15C(UNK_ARGS); // UNK_RET func_8099F268(UNK_ARGS); +// UNK_RET func_8099F730(UNK_ARGS); +// UNK_RET func_8099F7F4(UNK_ARGS); +// UNK_RET func_8099F980(UNK_ARGS); // UNK_RET func_8099FA40(UNK_ARGS); // UNK_RET func_8099FAB0(UNK_ARGS); // UNK_RET func_8099FB20(UNK_ARGS); @@ -10045,6 +11126,10 @@ UNK_RET func_8019FAD8(UNK_PTR, UNK_TYPE, f32); // func_8019FAD8 // UNK_RET func_80A227C0(UNK_ARGS); // UNK_RET func_80A22880(UNK_ARGS); // UNK_RET func_80A228D8(UNK_ARGS); +// UNK_RET func_80A22D40(UNK_ARGS); +// UNK_RET func_80A22DB8(UNK_ARGS); +// UNK_RET func_80A22E94(UNK_ARGS); +// UNK_RET func_80A22FE4(UNK_ARGS); // UNK_RET func_80A23090(UNK_ARGS); // UNK_RET func_80A2311C(UNK_ARGS); // UNK_RET func_80A2319C(UNK_ARGS); @@ -12727,6 +13812,54 @@ UNK_RET func_8019FAD8(UNK_PTR, UNK_TYPE, f32); // func_8019FAD8 // UNK_RET func_80AC4D2C(UNK_ARGS); // UNK_RET func_80AC4E98(UNK_ARGS); // UNK_RET func_80AC4ED8(UNK_ARGS); +// UNK_RET func_80AC5070(UNK_ARGS); +// UNK_RET func_80AC50A8(UNK_ARGS); +// UNK_RET func_80AC5148(UNK_ARGS); +// UNK_RET func_80AC5154(UNK_ARGS); +// UNK_RET func_80AC5268(UNK_ARGS); +// UNK_RET func_80AC5274(UNK_ARGS); +// UNK_RET func_80AC528C(UNK_ARGS); +// UNK_RET func_80AC559C(UNK_ARGS); +// UNK_RET func_80AC57B0(UNK_ARGS); +// UNK_RET func_80AC5868(UNK_ARGS); +// UNK_RET func_80AC5894(UNK_ARGS); +// UNK_RET func_80AC58A0(UNK_ARGS); +// UNK_RET func_80AC5980(UNK_ARGS); +// UNK_RET func_80AC5BBC(UNK_ARGS); +// UNK_RET func_80AC5BC8(UNK_ARGS); +// UNK_RET func_80AC5C08(UNK_ARGS); +// UNK_RET func_80AC5C14(UNK_ARGS); +// UNK_RET func_80AC6740(UNK_ARGS); +// UNK_RET func_80AC687C(UNK_ARGS); +// UNK_RET func_80AC68A8(UNK_ARGS); +// UNK_RET func_80AC68E0(UNK_ARGS); +// UNK_RET func_80AC69F8(UNK_ARGS); +// UNK_RET func_80AC6BE4(UNK_ARGS); +// UNK_RET func_80AC6BF0(UNK_ARGS); +// UNK_RET func_80AC6C3C(UNK_ARGS); +// UNK_RET func_80AC6C48(UNK_ARGS); +// UNK_RET func_80AC8430(UNK_ARGS); +// UNK_RET func_80AC84B4(UNK_ARGS); +// UNK_RET func_80AC84E0(UNK_ARGS); +// UNK_RET func_80AC84EC(UNK_ARGS); +// UNK_RET func_80AC8544(UNK_ARGS); +// UNK_RET func_80AC85E0(UNK_ARGS); +// UNK_RET func_80AC85EC(UNK_ARGS); +// UNK_RET func_80AC862C(UNK_ARGS); +// UNK_RET func_80AC8638(UNK_ARGS); +// UNK_RET func_80AC86F0(UNK_ARGS); +// UNK_RET func_80AC8774(UNK_ARGS); +// UNK_RET func_80AC87A0(UNK_ARGS); +// UNK_RET func_80AC87AC(UNK_ARGS); +// UNK_RET func_80AC881C(UNK_ARGS); +// UNK_RET func_80AC8A50(UNK_ARGS); +// UNK_RET func_80AC8A5C(UNK_ARGS); +// UNK_RET func_80AC8A94(UNK_ARGS); +// UNK_RET func_80AC8AA0(UNK_ARGS); +// UNK_RET func_80AC8B50(UNK_ARGS); +// UNK_RET func_80AC8ECC(UNK_ARGS); +// UNK_RET func_80AC9164(UNK_ARGS); +// UNK_RET func_80AC933C(UNK_ARGS); // UNK_RET func_80AC94C0(UNK_ARGS); // UNK_RET func_80AC94FC(UNK_ARGS); // UNK_RET func_80AC964C(UNK_ARGS); diff --git a/include/structs.h b/include/structs.h index cbc33ddef4..75156d794d 100644 --- a/include/structs.h +++ b/include/structs.h @@ -172,19 +172,23 @@ typedef struct { typedef struct { /* 0x00000 */ z_GraphicsContext* unk0; - /* 0x00004 */ u8 pad0[0x87C]; + /* 0x00004 */ u8 pad0[0x70]; + /* 0x00074 */ UNK_TYPE unk74; + /* 0x00078 */ u8 pad1[0x07A0]; + /* 0x00818 */ UNK_TYPE unk818; + /* 0x0081C */ u8 pad2[0x64]; /* 0x00880 */ UNK_TYPE unk880; - /* 0x00884 */ u8 pad1[0x141C]; + /* 0x00884 */ u8 pad3[0x141C]; /* 0x01CA0 */ UNK_TYPE unk1CA0; - /* 0x01CA4 */ u8 pad2[0x28]; + /* 0x01CA4 */ u8 pad4[0x28]; /* 0x01CCC */ sGlobalContext1CCC* unk1CCC; - /* 0x01CD0 */ u8 pad3[0x15330]; + /* 0x01CD0 */ u8 pad5[0x15330]; /* 0x17000 */ u16 unk17000; - /* 0x17002 */ u8 pad4[0xD86]; + /* 0x17002 */ u8 pad6[0xD86]; /* 0x17D88 */ UNK_TYPE unk17D88; - /* 0x17D8C */ u8 pad5[0xAB4]; + /* 0x17D8C */ u8 pad7[0xAB4]; /* 0x18840 */ UNK_TYPE unk18840; - /* 0x18844 */ u8 pad6[0x40]; + /* 0x18844 */ u8 pad8[0x40]; /* 0x18884 */ UNK_TYPE unk18884; } z_GlobalContext; @@ -267,6 +271,45 @@ typedef struct { /* 0x1A4 */ u8 unk1A4; } s800A5D00; +typedef struct { + /* 0x00 */ z_Vector3D position; + /* 0x0C */ z_Vector3D velocity; + /* 0x18 */ z_Vector3D acceleration; + /* 0x24 */ void(*update)(z_GlobalContext*); + /* 0x28 */ void(*draw)(z_GlobalContext*); + /* 0x2C */ f32 unk2C; // Probaly a z_Vector3D + /* 0x30 */ f32 unk30; + /* 0x34 */ f32 unk34; + /* 0x38 */ u32 unk38; + /* 0x3C */ u32 unk3C; + /* 0x42 */ u16 unk40[13]; + /* 0x5A */ u16 flags; // bit 0: set if this entry is not considered free on a priority tie bit 1: ? bit 2: ? + /* 0x5C */ s16 life; // -1 means this entry is free + /* 0x5E */ u8 priority; // Lower value means higher priority + /* 0x5F */ u8 type; +} z_LoadedParticleEntry; + +typedef struct { + /* 0x0 */ u32 unk0; + /* 0x4 */ u32(*init)(z_GlobalContext*, u32, z_LoadedParticleEntry*, void*); +} z_ParticleOverlayInfo; + +typedef struct { + /* 0x00 */ u32 vromStart; + /* 0x04 */ u32 vromEnd; + /* 0x08 */ u32 vramStart; + /* 0x0C */ u32 vramEnd; + /* 0x10 */ u32 loadedRamAddr; + /* 0x14 */ z_ParticleOverlayInfo* overlayInfo; + /* 0x18 */ u32 unk18; // Always 0x01000000? +} z_ParticleOverlayTableEntry; + +typedef struct { + z_LoadedParticleEntry* data_table; // Name from debug assert + s32 searchIndex; + s32 size; +} z_EffectTableInfo; + // TODO everything past here should be placed in an appropiate libultra header diff --git a/include/variables.h b/include/variables.h index 885d812887..c4498019d8 100644 --- a/include/variables.h +++ b/include/variables.h @@ -173,6 +173,7 @@ //extern UNK_TYPE D_00016B5C; //extern UNK_TYPE D_00016BFA; //extern UNK_TYPE D_00016BFC; +//extern UNK_TYPE D_00016C04; //extern UNK_TYPE D_00016C06; //extern UNK_TYPE D_00016C0A; //extern UNK_TYPE D_00016C0C; @@ -200,11 +201,13 @@ //extern UNK_TYPE D_00016F1C; //extern UNK_TYPE D_00016F1E; //extern UNK_TYPE D_00016F20; +//extern UNK_TYPE D_00016F30; //extern UNK_TYPE D_00016F34; //extern UNK_TYPE D_00016F54; //extern UNK_TYPE D_00016F70; //extern UNK_TYPE D_00016F86; //extern UNK_TYPE D_00016F8E; +//extern UNK_TYPE D_00016FB4; //extern UNK_TYPE D_00016FE9; //extern UNK_TYPE D_00017000; //extern UNK_TYPE D_00017006; @@ -251,6 +254,7 @@ //extern UNK_TYPE D_000170F8; //extern UNK_TYPE D_000170F9; //extern UNK_TYPE D_000170FA; +//extern UNK_TYPE D_00017D88; //extern UNK_TYPE D_00017D90; //extern UNK_TYPE D_00017D91; //extern UNK_TYPE D_00017D93; @@ -265,21 +269,35 @@ //extern UNK_TYPE D_000186E8; //extern UNK_TYPE D_000186EC; //extern UNK_TYPE D_000186F4; +//extern UNK_TYPE D_00018700; +//extern UNK_TYPE D_00018711; //extern UNK_TYPE D_00018754; //extern UNK_TYPE D_00018758; //extern UNK_TYPE D_0001875A; //extern UNK_TYPE D_0001875C; //extern UNK_TYPE D_00018760; //extern UNK_TYPE D_00018764; +//extern UNK_TYPE D_00018768; +//extern UNK_TYPE D_0001876C; //extern UNK_TYPE D_00018770; +//extern UNK_TYPE D_00018774; //extern UNK_TYPE D_00018778; //extern UNK_TYPE D_0001877C; +//extern UNK_TYPE D_00018780; //extern UNK_TYPE D_00018784; +//extern UNK_TYPE D_00018788; +//extern UNK_TYPE D_0001878C; //extern UNK_TYPE D_00018790; //extern UNK_TYPE D_00018794; //extern UNK_TYPE D_00018798; //extern UNK_TYPE D_0001879C; //extern UNK_TYPE D_0001879E; +//extern UNK_TYPE D_000187A0; +//extern UNK_TYPE D_000187A2; +//extern UNK_TYPE D_000187A4; +//extern UNK_TYPE D_000187A6; +//extern UNK_TYPE D_000187A8; +//extern UNK_TYPE D_000187AA; //extern UNK_TYPE D_000187AC; //extern UNK_TYPE D_000187F0; //extern UNK_TYPE D_000187F4; @@ -327,7 +345,52 @@ extern u32 dmadataRomStart; // D_0001A500 //extern UNK_TYPE D_00020308; extern u32 dmadataRomEnd; // D_00020700 +//extern UNK_TYPE D_000242F3; +//extern UNK_TYPE D_00024413; +//extern UNK_TYPE D_00024414; //extern UNK_TYPE D_0002446A; +//extern UNK_TYPE D_0002446C; +//extern UNK_TYPE D_00024480; +//extern UNK_TYPE D_00024482; +//extern UNK_TYPE D_00024484; +//extern UNK_TYPE D_00024486; +//extern UNK_TYPE D_00024488; +//extern UNK_TYPE D_0002448A; +//extern UNK_TYPE D_0002448C; +//extern UNK_TYPE D_0002448E; +//extern UNK_TYPE D_00024498; +//extern UNK_TYPE D_000244A6; +//extern UNK_TYPE D_000244A8; +//extern UNK_TYPE D_000244AA; +//extern UNK_TYPE D_000244AC; +//extern UNK_TYPE D_000244AE; +//extern UNK_TYPE D_000244BA; +//extern UNK_TYPE D_000244CE; +//extern UNK_TYPE D_000244E2; +//extern UNK_TYPE D_000244E4; +//extern UNK_TYPE D_000244E6; +//extern UNK_TYPE D_000244E8; +//extern UNK_TYPE D_000244F2; +//extern UNK_TYPE D_000244F4; +//extern UNK_TYPE D_000244FA; +//extern UNK_TYPE D_000244FC; +//extern UNK_TYPE D_000244FE; +//extern UNK_TYPE D_00024500; +//extern UNK_TYPE D_00024502; +//extern UNK_TYPE D_00024504; +//extern UNK_TYPE D_00024506; +//extern UNK_TYPE D_00024508; +//extern UNK_TYPE D_0002450A; +//extern UNK_TYPE D_0002450C; +//extern UNK_TYPE D_00024510; +//extern UNK_TYPE D_00024512; +//extern UNK_TYPE D_00024514; +//extern UNK_TYPE D_00024516; +//extern UNK_TYPE D_00024518; +//extern UNK_TYPE D_0002451A; +//extern UNK_TYPE D_0002451C; +//extern UNK_TYPE D_0002451E; +//extern UNK_TYPE D_00024528; //extern UNK_TYPE D_00046AF0; //extern UNK_TYPE D_00080028; //extern UNK_TYPE D_00097F70; @@ -335,8 +398,24 @@ extern u32 dmadataRomEnd; // D_00020700 //extern UNK_TYPE D_001ABAB0; //extern UNK_TYPE D_001E3BB0; //extern UNK_TYPE D_0065D000; +//extern UNK_TYPE D_00957000; +//extern UNK_TYPE D_009ECEC0; +//extern UNK_TYPE D_009ED000; +//extern UNK_TYPE D_009F4700; +//extern UNK_TYPE D_009F5000; +//extern UNK_TYPE D_00A09AF0; +//extern UNK_TYPE D_00A0A000; +//extern UNK_TYPE D_00A0EB80; +//extern UNK_TYPE D_00A0F000; +//extern UNK_TYPE D_00A12300; +//extern UNK_TYPE D_00A13000; +//extern UNK_TYPE D_00A1BA00; +//extern UNK_TYPE D_00A1C000; +//extern UNK_TYPE D_00A1C2E0; //extern UNK_TYPE D_00A1D000; //extern UNK_TYPE D_00A1E310; +//extern UNK_TYPE D_00A27660; +//extern UNK_TYPE D_00A352F0; //extern UNK_TYPE D_00A36C10; //extern UNK_TYPE D_00A7BEE0; //extern UNK_TYPE D_00A807A0; @@ -357,11 +436,36 @@ extern UNK_TYPE D_00C7A4E0; // D_00C7A4E0 //extern UNK_TYPE D_01000000; //extern UNK_TYPE D_01000680; //extern UNK_TYPE D_01001280; +//extern UNK_TYPE D_01001800; +//extern UNK_TYPE D_01002720; +//extern UNK_TYPE D_01002800; +//extern UNK_TYPE D_01007980; +//extern UNK_TYPE D_010220B0; +//extern UNK_TYPE D_010277B0; +//extern UNK_TYPE D_0102A030; +//extern UNK_TYPE D_0102A6B0; +//extern UNK_TYPE D_0102A7B0; +//extern UNK_TYPE D_0102AAB0; +//extern UNK_TYPE D_0102B170; +//extern UNK_TYPE D_0102B3B0; +//extern UNK_TYPE D_0102B8F0; +//extern UNK_TYPE D_0102FCB0; +//extern UNK_TYPE D_010308F0; +//extern UNK_TYPE D_010310F0; +//extern UNK_TYPE D_010311F0; +//extern UNK_TYPE D_01031408; +//extern UNK_TYPE D_01031618; +//extern UNK_TYPE D_01E85000; +//extern UNK_TYPE D_01E87DC0; +//extern UNK_TYPE D_01E88000; +//extern UNK_TYPE D_01EB9730; //extern UNK_TYPE D_01EBA000; //extern UNK_TYPE D_01EBC000; //extern UNK_TYPE D_01EBD000; //extern UNK_TYPE D_01EC8B20; //extern UNK_TYPE D_01EC9000; +//extern UNK_TYPE D_01ECA000; +//extern UNK_TYPE D_01ED3B00; //extern UNK_TYPE D_01EF2000; //extern UNK_TYPE D_01EFE000; //extern UNK_TYPE D_01F0A000; @@ -373,6 +477,7 @@ extern UNK_TYPE D_00C7A4E0; // D_00C7A4E0 //extern UNK_TYPE D_02000D60; //extern UNK_TYPE D_02000E60; //extern UNK_TYPE D_02000F60; +//extern UNK_TYPE D_02001360; //extern UNK_TYPE D_02002460; //extern UNK_TYPE D_020029A0; //extern UNK_TYPE D_02002AA0; @@ -385,6 +490,7 @@ extern UNK_TYPE D_00C7A4E0; // D_00C7A4E0 //extern UNK_TYPE D_020043A0; //extern UNK_TYPE D_02004420; //extern UNK_TYPE D_020044A0; +//extern UNK_TYPE D_02004A20; //extern UNK_TYPE D_02004AA0; //extern UNK_TYPE D_02004DA0; //extern UNK_TYPE D_02004E20; @@ -401,29 +507,154 @@ extern UNK_TYPE D_00C7A4E0; // D_00C7A4E0 //extern UNK_TYPE D_04001D00; //extern UNK_TYPE D_040021A8; //extern UNK_TYPE D_040032B0; +//extern UNK_TYPE D_0400CF58; //extern UNK_TYPE D_0400CF88; +//extern UNK_TYPE D_0400CF98; //extern UNK_TYPE D_0400D0A8; +//extern UNK_TYPE D_0400D0B0; +//extern UNK_TYPE D_0400D0B8; //extern UNK_TYPE D_0400D0C8; //extern UNK_TYPE D_0400D0D0; +//extern UNK_TYPE D_0400D100; +//extern UNK_TYPE D_0400D218; +//extern UNK_TYPE D_0400D220; +//extern UNK_TYPE D_0400D228; +//extern UNK_TYPE D_0400D2D0; //extern UNK_TYPE D_0400D300; +//extern UNK_TYPE D_0400D3E8; +//extern UNK_TYPE D_0400D3F8; +//extern UNK_TYPE D_0400D420; +//extern UNK_TYPE D_0400D488; +//extern UNK_TYPE D_0400D490; +//extern UNK_TYPE D_0400D4A8; +//extern UNK_TYPE D_0400D4B0; +//extern UNK_TYPE D_0400D4D8; +//extern UNK_TYPE D_0400D4F0; +//extern UNK_TYPE D_0400D500; +//extern UNK_TYPE D_0400D520; //extern UNK_TYPE D_0400D568; +//extern UNK_TYPE D_0400D5A8; +//extern UNK_TYPE D_0400D5B0; +//extern UNK_TYPE D_0400D638; +//extern UNK_TYPE D_0400D660; +//extern UNK_TYPE D_0400D698; +//extern UNK_TYPE D_0400D728; +//extern UNK_TYPE D_0400D8B0; +//extern UNK_TYPE D_0400D9C8; +//extern UNK_TYPE D_0400D9D0; +//extern UNK_TYPE D_0400D9D8; +//extern UNK_TYPE D_0400DA60; +//extern UNK_TYPE D_0400DA68; +//extern UNK_TYPE D_0400DA70; +//extern UNK_TYPE D_0400DA88; +//extern UNK_TYPE D_0400DAA0; +//extern UNK_TYPE D_0400DAA8; +//extern UNK_TYPE D_0400DAC0; +//extern UNK_TYPE D_0400DAC8; +//extern UNK_TYPE D_0400DAD0; +//extern UNK_TYPE D_0400DAD8; +//extern UNK_TYPE D_0400DAE0; +//extern UNK_TYPE D_0400DAF0; +//extern UNK_TYPE D_0400DB10; +//extern UNK_TYPE D_0400DB18; +//extern UNK_TYPE D_0400DB30; +//extern UNK_TYPE D_0400DB68; +//extern UNK_TYPE D_0400DBB0; +//extern UNK_TYPE D_0400DBE8; +//extern UNK_TYPE D_0400DC20; +//extern UNK_TYPE D_0400DC28; +//extern UNK_TYPE D_0400DC30; +//extern UNK_TYPE D_0400DC48; +//extern UNK_TYPE D_0400DC50; +//extern UNK_TYPE D_0400DC60; +//extern UNK_TYPE D_0400DC78; +//extern UNK_TYPE D_0400DC80; +//extern UNK_TYPE D_0400DC88; +//extern UNK_TYPE D_0400DCA8; +//extern UNK_TYPE D_0400DCD0; +//extern UNK_TYPE D_0400DCD8; +//extern UNK_TYPE D_0400DCF8; +//extern UNK_TYPE D_0400DD10; +//extern UNK_TYPE D_0400DD30; +//extern UNK_TYPE D_0400DD38; +//extern UNK_TYPE D_0400DD40; +//extern UNK_TYPE D_0400DD50; +//extern UNK_TYPE D_0400DD58; +//extern UNK_TYPE D_0400DD68; +//extern UNK_TYPE D_0400DD70; +//extern UNK_TYPE D_0400DD78; +//extern UNK_TYPE D_0400DD80; +//extern UNK_TYPE D_0400DDB0; +//extern UNK_TYPE D_0400DDF0; +//extern UNK_TYPE D_0400DDF8; +//extern UNK_TYPE D_0400DE00; +//extern UNK_TYPE D_0400DE08; +//extern UNK_TYPE D_0400DE10; +//extern UNK_TYPE D_0400DE28; +//extern UNK_TYPE D_0400DE30; +//extern UNK_TYPE D_0400DE48; +//extern UNK_TYPE D_0400DE50; +//extern UNK_TYPE D_0400DE58; +//extern UNK_TYPE D_0400DE60; +//extern UNK_TYPE D_0400DEA0; //extern UNK_TYPE D_0400DEA8; +//extern UNK_TYPE D_0400DF78; +//extern UNK_TYPE D_0400DF90; +//extern UNK_TYPE D_0400DF98; +//extern UNK_TYPE D_0400DFA0; +//extern UNK_TYPE D_0400DFA8; +//extern UNK_TYPE D_0400DFB0; +//extern UNK_TYPE D_0400DFB8; +//extern UNK_TYPE D_0400DFC0; +//extern UNK_TYPE D_0400DFC8; +//extern UNK_TYPE D_0400DFD0; +//extern UNK_TYPE D_0400DFD8; +//extern UNK_TYPE D_0400DFE0; +//extern UNK_TYPE D_0400DFE8; +//extern UNK_TYPE D_0400DFF0; +//extern UNK_TYPE D_0400DFF8; +//extern UNK_TYPE D_0400E000; +//extern UNK_TYPE D_0400E008; +//extern UNK_TYPE D_0400E050; +//extern UNK_TYPE D_0400E060; +//extern UNK_TYPE D_0400E070; +//extern UNK_TYPE D_0400E080; +//extern UNK_TYPE D_0400E088; +//extern UNK_TYPE D_0400E098; +//extern UNK_TYPE D_0400E120; +//extern UNK_TYPE D_0400E150; //extern UNK_TYPE D_0400E1F0; //extern UNK_TYPE D_0400E1F8; //extern UNK_TYPE D_0400E200; +//extern UNK_TYPE D_0400E208; //extern UNK_TYPE D_0400E218; //extern UNK_TYPE D_0400E230; //extern UNK_TYPE D_0400E248; //extern UNK_TYPE D_0400E260; +//extern UNK_TYPE D_0400E270; //extern UNK_TYPE D_0400E278; +//extern UNK_TYPE D_0400E290; //extern UNK_TYPE D_0400E298; +//extern UNK_TYPE D_0400E2A0; //extern UNK_TYPE D_0400E2A8; //extern UNK_TYPE D_0400E2B0; +//extern UNK_TYPE D_0400E2B8; +//extern UNK_TYPE D_0400E2C0; //extern UNK_TYPE D_0400E2C8; //extern UNK_TYPE D_0400E2D0; //extern UNK_TYPE D_0400E2D8; //extern UNK_TYPE D_0400E2E8; //extern UNK_TYPE D_0400E2F0; +//extern UNK_TYPE D_0400E2F8; +//extern UNK_TYPE D_0400E318; +//extern UNK_TYPE D_0400E330; +//extern UNK_TYPE D_0400E348; +//extern UNK_TYPE D_0400E398; +//extern UNK_TYPE D_0400E3A0; +//extern UNK_TYPE D_0400E3A8; +//extern UNK_TYPE D_0400E3B0; +//extern UNK_TYPE D_0400E3B8; +//extern UNK_TYPE D_0400E3C0; //extern UNK_TYPE D_0400E3D8; //extern UNK_TYPE D_0400E3E0; //extern UNK_TYPE D_0400E3E8; @@ -439,6 +670,9 @@ extern UNK_TYPE D_00C7A4E0; // D_00C7A4E0 //extern UNK_TYPE D_04015DB0; //extern UNK_TYPE D_04015FA0; //extern UNK_TYPE D_04016360; +//extern UNK_TYPE D_0401A4D0; +//extern UNK_TYPE D_0401A538; +//extern UNK_TYPE D_0401A590; //extern UNK_TYPE D_0401A620; //extern UNK_TYPE D_0401ACF0; //extern UNK_TYPE D_0401ED00; @@ -478,15 +712,21 @@ extern UNK_TYPE D_00C7A4E0; // D_00C7A4E0 //extern UNK_TYPE D_0402F0EC; //extern UNK_TYPE D_04030100; //extern UNK_TYPE D_040301B0; +//extern UNK_TYPE D_04032270; +//extern UNK_TYPE D_04035710; +//extern UNK_TYPE D_040367B0; //extern UNK_TYPE D_040377B0; //extern UNK_TYPE D_04037850; //extern UNK_TYPE D_0403A0F0; +//extern UNK_TYPE D_0403C190; //extern UNK_TYPE D_0403F230; //extern UNK_TYPE D_04044300; //extern UNK_TYPE D_0404F250; +//extern UNK_TYPE D_04050550; //extern UNK_TYPE D_04050648; //extern UNK_TYPE D_040506E0; //extern UNK_TYPE D_04050D10; +//extern UNK_TYPE D_040510B0; //extern UNK_TYPE D_04051180; //extern UNK_TYPE D_04051238; //extern UNK_TYPE D_0405140C; @@ -508,6 +748,7 @@ extern UNK_TYPE D_00C7A4E0; // D_00C7A4E0 //extern UNK_TYPE D_0405FFC0; //extern UNK_TYPE D_040617C0; //extern UNK_TYPE D_040622C0; +//extern UNK_TYPE D_0406A800; //extern UNK_TYPE D_0406AB30; //extern UNK_TYPE D_0406B6A0; //extern UNK_TYPE D_0406B730; @@ -517,6 +758,9 @@ extern UNK_TYPE D_00C7A4E0; // D_00C7A4E0 //extern UNK_TYPE D_0406F9F0; //extern UNK_TYPE D_0406FAE0; //extern UNK_TYPE D_040706E0; +//extern UNK_TYPE D_04071230; +//extern UNK_TYPE D_04074330; +//extern UNK_TYPE D_04075400; //extern UNK_TYPE D_04075A40; //extern UNK_TYPE D_04075B30; //extern UNK_TYPE D_04076BC0; @@ -528,6 +772,7 @@ extern UNK_TYPE D_00C7A4E0; // D_00C7A4E0 //extern UNK_TYPE D_0407AE00; //extern UNK_TYPE D_0407AFB0; //extern UNK_TYPE D_0407D590; +//extern UNK_TYPE D_0407D650; //extern UNK_TYPE D_0407E8C0; //extern UNK_TYPE D_0407F218; //extern UNK_TYPE D_04080FC8; @@ -771,6 +1016,7 @@ extern UNK_TYPE D_060005D0; // D_060005D0 //extern UNK_TYPE D_06000A10; //extern UNK_TYPE D_06000A14; //extern UNK_TYPE D_06000A20; +//extern UNK_TYPE D_06000A38; //extern UNK_TYPE D_06000A44; //extern UNK_TYPE D_06000A48; //extern UNK_TYPE D_06000A50; @@ -809,6 +1055,7 @@ extern UNK_TYPE D_060005D0; // D_060005D0 //extern UNK_TYPE D_06000D94; //extern UNK_TYPE D_06000D9C; //extern UNK_TYPE D_06000DB0; +//extern UNK_TYPE D_06000DC0; //extern UNK_TYPE D_06000DD8; //extern UNK_TYPE D_06000DE0; //extern UNK_TYPE D_06000E00; @@ -1354,6 +1601,7 @@ extern UNK_TYPE D_06002D30; // D_06002D30 //extern UNK_TYPE D_060087B8; //extern UNK_TYPE D_06008814; //extern UNK_TYPE D_06008840; +//extern UNK_TYPE D_06008860; //extern UNK_TYPE D_06008898; //extern UNK_TYPE D_06008920; //extern UNK_TYPE D_060089D8; @@ -1388,6 +1636,7 @@ extern UNK_TYPE D_06002D30; // D_06002D30 //extern UNK_TYPE D_06009808; //extern UNK_TYPE D_06009830; //extern UNK_TYPE D_06009890; +//extern UNK_TYPE D_060098A0; //extern UNK_TYPE D_06009900; //extern UNK_TYPE D_06009928; //extern UNK_TYPE D_06009988; @@ -1477,6 +1726,7 @@ extern UNK_TYPE D_06002D30; // D_06002D30 //extern UNK_TYPE D_0600BA78; //extern UNK_TYPE D_0600BCC8; //extern UNK_TYPE D_0600BCF4; +//extern UNK_TYPE D_0600BDD8; //extern UNK_TYPE D_0600BDE0; //extern UNK_TYPE D_0600BE58; //extern UNK_TYPE D_0600BEE8; @@ -1487,6 +1737,7 @@ extern UNK_TYPE D_06002D30; // D_06002D30 //extern UNK_TYPE D_0600C384; //extern UNK_TYPE D_0600C498; //extern UNK_TYPE D_0600C538; +//extern UNK_TYPE D_0600C540; //extern UNK_TYPE D_0600C5E0; //extern UNK_TYPE D_0600C670; //extern UNK_TYPE D_0600C6D4; @@ -1643,6 +1894,7 @@ extern UNK_TYPE D_06002D30; // D_06002D30 //extern UNK_TYPE D_06012700; //extern UNK_TYPE D_06012728; //extern UNK_TYPE D_06012788; +//extern UNK_TYPE D_060127B0; //extern UNK_TYPE D_060129D0; //extern UNK_TYPE D_060129F0; //extern UNK_TYPE D_06012A80; @@ -1795,13 +2047,33 @@ extern UNK_TYPE D_06002D30; // D_06002D30 //extern UNK_TYPE D_08001F70; //extern UNK_TYPE D_080025C8; //extern UNK_TYPE D_080032B0; +//extern UNK_TYPE D_08061000; +//extern UNK_TYPE D_08062000; +//extern UNK_TYPE D_08064340; //extern UNK_TYPE D_08095AC0; +//extern UNK_TYPE D_09007500; //extern UNK_TYPE D_0A0001A0; //extern UNK_TYPE D_0A000440; //extern UNK_TYPE D_0A0004A0; //extern UNK_TYPE D_0A000D40; //extern UNK_TYPE D_0A0011F8; //extern UNK_TYPE D_0A001CD8; +//extern UNK_TYPE D_0B000000; +//extern UNK_TYPE D_0B000090; +//extern UNK_TYPE D_0B0000E0; +//extern UNK_TYPE D_0B000130; +//extern UNK_TYPE D_0B000188; +//extern UNK_TYPE D_0C000000; +//extern UNK_TYPE D_0C000800; +//extern UNK_TYPE D_0C001000; +//extern UNK_TYPE D_0C001800; +//extern UNK_TYPE D_0C006C00; +//extern UNK_TYPE D_0C006E00; +//extern UNK_TYPE D_0C014668; +//extern UNK_TYPE D_0D002000; +//extern UNK_TYPE D_0D002200; +//extern UNK_TYPE D_0D002400; +//extern UNK_TYPE D_0D003700; //extern UNK_TYPE D_0E000048; //extern UNK_TYPE D_0E000088; //extern UNK_TYPE D_0E000140; @@ -1814,6 +2086,7 @@ extern UNK_TYPE D_06002D30; // D_06002D30 //extern UNK_TYPE D_0E0002E0; //extern UNK_TYPE D_0E0002F8; //extern UNK_TYPE D_0F000000; +//extern UNK_TYPE D_11000A70; //extern UNK_TYPE D_11111111; //extern UNK_TYPE D_3CFFED40; //extern UNK_TYPE D_3E7FDDD0; @@ -1822,6 +2095,7 @@ extern UNK_TYPE D_06002D30; // D_06002D30 //extern UNK_TYPE D_3F7FCDC0; //extern UNK_TYPE D_3F7FCE80; //extern UNK_TYPE D_3F7FCEA0; +//extern UNK_TYPE D_3F7FE3F0; //extern UNK_TYPE D_3F7FEBB4; //extern UNK_TYPE D_3F800CEC; //extern UNK_TYPE D_3F806764; @@ -1849,6 +2123,7 @@ extern UNK_TYPE D_06002D30; // D_06002D30 //extern UNK_TYPE D_42B42BC9; //extern UNK_TYPE D_42EFD968; //extern UNK_TYPE D_43162BC9; +//extern UNK_TYPE D_4347E450; //extern UNK_TYPE D_4390DC8C; //extern UNK_TYPE D_4390DC90; //extern UNK_TYPE D_439B22F4; @@ -2226,7 +2501,7 @@ extern u8 D_801AE214[]; // D_801AE214 //extern UNK_TYPE D_801AE34C; //extern UNK_TYPE D_801AE374; //extern UNK_TYPE D_801AE388; -//extern UNK_TYPE D_801AE3A0; +extern z_EffectTableInfo EffectSS2Info; // D_801AE3A0 //extern UNK_TYPE D_801AE3A4; //extern UNK_TYPE D_801AE3B0; //extern UNK_TYPE D_801AE3B4; @@ -2252,7 +2527,7 @@ extern u8 D_801AE214[]; // D_801AE214 //extern UNK_TYPE D_801AE489; //extern UNK_TYPE D_801AE48C; //extern UNK_TYPE D_801AE490; -//extern UNK_TYPE D_801AE4A0; +extern z_ParticleOverlayTableEntry particleOverlayTable[]; // D_801AE4A0 //extern UNK_TYPE D_801AE4B0; //extern UNK_TYPE D_801AE4BC; //extern UNK_TYPE D_801AE8F0; @@ -2625,6 +2900,7 @@ extern u8 D_801BDB30[]; // D_801BDB30 //extern UNK_TYPE D_801BFD98; //extern UNK_TYPE D_801BFDD0; //extern UNK_TYPE D_801BFDE8; +//extern UNK_TYPE D_801BFE00; //extern UNK_TYPE D_801BFE14; //extern UNK_TYPE D_801BFF34; //extern UNK_TYPE D_801BFF3C; @@ -2647,9 +2923,11 @@ extern u8 D_801BDB30[]; // D_801BDB30 //extern UNK_TYPE D_801C02F8; //extern UNK_TYPE D_801C0340; //extern UNK_TYPE D_801C0368; +//extern UNK_TYPE D_801C03A0; //extern UNK_TYPE D_801C03E0; //extern UNK_TYPE D_801C0410; //extern UNK_TYPE D_801C0428; +//extern UNK_TYPE D_801C0490; //extern UNK_TYPE D_801C0510; //extern UNK_TYPE D_801C0538; //extern UNK_TYPE D_801C0560; @@ -2668,6 +2946,8 @@ extern u8 D_801BDB30[]; // D_801BDB30 //extern UNK_TYPE D_801C07F0; //extern UNK_TYPE D_801C0820; //extern UNK_TYPE D_801C0838; +//extern UNK_TYPE D_801C0850; +//extern UNK_TYPE D_801C0860; //extern UNK_TYPE D_801C0890; //extern UNK_TYPE D_801C08A0; //extern UNK_TYPE D_801C08A1; @@ -2810,6 +3090,8 @@ extern u8 D_801BDB30[]; // D_801BDB30 //extern UNK_TYPE D_801C1D68; //extern UNK_TYPE D_801C1D6C; //extern UNK_TYPE D_801C1D78; +//extern UNK_TYPE D_801C1D84; +//extern UNK_TYPE D_801C1D90; //extern UNK_TYPE D_801C1D94; //extern UNK_TYPE D_801C1DB0; //extern UNK_TYPE D_801C1DB2; @@ -2845,6 +3127,11 @@ extern u8 D_801BDB30[]; // D_801BDB30 //extern UNK_TYPE D_801C1E44; //extern UNK_TYPE D_801C1E48; //extern UNK_TYPE D_801C1E4A; +//extern UNK_TYPE D_801C1E6C; +//extern UNK_TYPE D_801C1F9C; +//extern UNK_TYPE D_801C1FAC; +//extern UNK_TYPE D_801C1FE0; +//extern UNK_TYPE D_801C2054; extern u8 D_801C2078[]; // D_801C2078 extern u8 D_801C2079; // D_801C2079 //extern UNK_TYPE D_801C207A; @@ -2854,6 +3141,7 @@ extern u8 D_801C207E; // D_801C207E //extern UNK_TYPE D_801C2081; //extern UNK_TYPE D_801C2082; //extern UNK_TYPE D_801C2084; +//extern UNK_TYPE D_801C2085; //extern UNK_TYPE D_801C2088; //extern UNK_TYPE D_801C208A; //extern UNK_TYPE D_801C208E; @@ -2907,6 +3195,7 @@ extern u8 D_801C207E; // D_801C207E //extern UNK_TYPE D_801C26A8; //extern UNK_TYPE D_801C2730; //extern UNK_TYPE D_801C2740; +//extern UNK_TYPE D_801C2FE8; //extern UNK_TYPE D_801C3B60; //extern UNK_TYPE D_801C3BB8; //extern UNK_TYPE D_801C3BD8; @@ -2939,12 +3228,14 @@ extern u8 D_801C207E; // D_801C207E //extern UNK_TYPE D_801C5FCC; //extern UNK_TYPE D_801C5FD0; //extern UNK_TYPE D_801C66D0; +//extern UNK_TYPE D_801C6798; //extern UNK_TYPE D_801C67B0; //extern UNK_TYPE D_801C67C8; //extern UNK_TYPE D_801C67CC; //extern UNK_TYPE D_801C67F0; //extern UNK_TYPE D_801C67F4; //extern UNK_TYPE D_801C6818; +//extern UNK_TYPE D_801C6838; //extern UNK_TYPE D_801C6840; //extern UNK_TYPE D_801C6850; //extern UNK_TYPE D_801C6870; @@ -2970,6 +3261,7 @@ extern u8 D_801C207E; // D_801C207E //extern UNK_TYPE D_801C6A8C; //extern UNK_TYPE D_801C6A90; //extern UNK_TYPE D_801C6A94; +//extern UNK_TYPE D_801C6A98; //extern UNK_TYPE D_801C6AB8; //extern UNK_TYPE D_801C6B28; //extern UNK_TYPE D_801C6B98; @@ -2984,6 +3276,7 @@ extern u8 D_801C207E; // D_801C207E //extern UNK_TYPE D_801CFC92; //extern UNK_TYPE D_801CFC98; //extern UNK_TYPE D_801CFCA4; +//extern UNK_TYPE D_801CFCAC; //extern UNK_TYPE D_801CFCB8; //extern UNK_TYPE D_801CFCD8; //extern UNK_TYPE D_801CFCE4; @@ -4497,6 +4790,7 @@ extern UNK_TYPE D_801ED940; // D_801ED940 //extern UNK_TYPE D_801EF638; //extern UNK_TYPE D_801EF66D; extern u8 D_801EF670; // D_801EF670 +//extern UNK_TYPE D_801EF674; extern u8 D_801EF677; // D_801EF677 //extern UNK_TYPE D_801EF678; //extern UNK_TYPE D_801EF67C; @@ -4516,13 +4810,20 @@ extern u8 D_801EF677; // D_801EF677 //extern UNK_TYPE D_801EF69B; //extern UNK_TYPE D_801EF69C; //extern UNK_TYPE D_801EF6A6; +//extern UNK_TYPE D_801EF6A8; +//extern UNK_TYPE D_801EF6A9; //extern UNK_TYPE D_801EF6AA; //extern UNK_TYPE D_801EF6AE; //extern UNK_TYPE D_801EF6B0; //extern UNK_TYPE D_801EF6B6; +//extern UNK_TYPE D_801EF6BA; //extern UNK_TYPE D_801EF6BC; +//extern UNK_TYPE D_801EF6BD; //extern UNK_TYPE D_801EF6BE; //extern UNK_TYPE D_801EF6BF; +//extern UNK_TYPE D_801EF6CD; +//extern UNK_TYPE D_801EF6CE; +//extern UNK_TYPE D_801EF6CF; //extern UNK_TYPE D_801EF6DC; //extern UNK_TYPE D_801EF6E0; //extern UNK_TYPE D_801EF6EA; @@ -4619,6 +4920,7 @@ extern u8 D_801EF677; // D_801EF677 //extern UNK_TYPE D_801F05C3; //extern UNK_TYPE D_801F05C4; //extern UNK_TYPE D_801F05C5; +//extern UNK_TYPE D_801F05D0; //extern UNK_TYPE D_801F05D5; //extern UNK_TYPE D_801F05D6; //extern UNK_TYPE D_801F0656; @@ -4646,10 +4948,16 @@ extern u8 D_801EF677; // D_801EF677 //extern UNK_TYPE D_801F3318; //extern UNK_TYPE D_801F331C; //extern UNK_TYPE D_801F3320; +//extern UNK_TYPE D_801F3324; +//extern UNK_TYPE D_801F3330; //extern UNK_TYPE D_801F3334; //extern UNK_TYPE D_801F3337; +//extern UNK_TYPE D_801F3364; +//extern UNK_TYPE D_801F3394; //extern UNK_TYPE D_801F3397; +//extern UNK_TYPE D_801F3424; //extern UNK_TYPE D_801F342B; +//extern UNK_TYPE D_801F342C; //extern UNK_TYPE D_801F342E; //extern UNK_TYPE D_801F3440; //extern UNK_TYPE D_801F3441; @@ -4691,9 +4999,17 @@ extern u8 D_801EF677; // D_801EF677 //extern UNK_TYPE D_801F3544; //extern UNK_TYPE D_801F3586; //extern UNK_TYPE D_801F3587; +//extern UNK_TYPE D_801F3588; +//extern UNK_TYPE D_801F3589; +//extern UNK_TYPE D_801F358A; +//extern UNK_TYPE D_801F358B; //extern UNK_TYPE D_801F358E; //extern UNK_TYPE D_801F3592; +//extern UNK_TYPE D_801F3596; //extern UNK_TYPE D_801F3598; +//extern UNK_TYPE D_801F359C; +//extern UNK_TYPE D_801F359E; +//extern UNK_TYPE D_801F35A0; //extern UNK_TYPE D_801F35A6; //extern UNK_TYPE D_801F35A8; //extern UNK_TYPE D_801F35AA; @@ -4701,11 +5017,14 @@ extern u8 D_801EF677; // D_801EF677 //extern UNK_TYPE D_801F35AF; //extern UNK_TYPE D_801F35B0; //extern UNK_TYPE D_801F35B2; +//extern UNK_TYPE D_801F35B3; +//extern UNK_TYPE D_801F35B5; //extern UNK_TYPE D_801F35B6; //extern UNK_TYPE D_801F35B8; //extern UNK_TYPE D_801F35BA; //extern UNK_TYPE D_801F35BC; //extern UNK_TYPE D_801F35C0; +//extern UNK_TYPE D_801F35C1; //extern UNK_TYPE D_801F35C2; //extern UNK_TYPE D_801F35C5; //extern UNK_TYPE D_801F35C6; @@ -4893,6 +5212,7 @@ extern UNK_TYPE D_801F8180[]; // D_801F8180 //extern UNK_TYPE D_801F8190; //extern UNK_TYPE D_801F8194; //extern UNK_TYPE D_801F8198; +//extern UNK_TYPE D_801F81A0; //extern UNK_TYPE D_801F81A4; //extern UNK_TYPE D_801F81A8; //extern UNK_TYPE D_801F81B8; @@ -5298,17 +5618,826 @@ extern UNK_TYPE D_80208EA0; // D_80208EA0 //extern UNK_TYPE D_80780000; //extern UNK_TYPE D_80784600; //extern UNK_TYPE D_807DA800; -//extern UNK_TYPE D_8080074C; -//extern UNK_TYPE D_80801B4C; -//extern UNK_TYPE D_80803F30; -//extern UNK_TYPE D_80813C98; -//extern UNK_TYPE D_80815820; -//extern UNK_TYPE D_808283D8; -//extern UNK_TYPE D_8082895C; -//extern UNK_TYPE D_80841AC4; -//extern UNK_TYPE D_808460B8; -//extern UNK_TYPE D_80846528; -//extern UNK_TYPE D_808470D4; +//extern UNK_TYPE D_80800860; +//extern UNK_TYPE D_80800868; +//extern UNK_TYPE D_80800870; +//extern UNK_TYPE D_80800880; +//extern UNK_TYPE D_80800884; +//extern UNK_TYPE D_80800888; +//extern UNK_TYPE D_80801C80; +//extern UNK_TYPE D_80802364; +//extern UNK_TYPE D_80803410; +//extern UNK_TYPE D_80803424; +//extern UNK_TYPE D_80803430; +//extern UNK_TYPE D_80803434; +//extern UNK_TYPE D_80803584; +//extern UNK_TYPE D_80803640; +//extern UNK_TYPE D_80803648; +//extern UNK_TYPE D_80803654; +//extern UNK_TYPE D_80803668; +//extern UNK_TYPE D_80803678; +//extern UNK_TYPE D_80803688; +//extern UNK_TYPE D_80803694; +//extern UNK_TYPE D_808036A0; +//extern UNK_TYPE D_808036AC; +//extern UNK_TYPE D_808036B8; +//extern UNK_TYPE D_808036C4; +//extern UNK_TYPE D_808036D0; +//extern UNK_TYPE D_808036DC; +//extern UNK_TYPE D_808036E8; +//extern UNK_TYPE D_808036F4; +//extern UNK_TYPE D_80803700; +//extern UNK_TYPE D_8080370C; +//extern UNK_TYPE D_80803710; +//extern UNK_TYPE D_8080371C; +//extern UNK_TYPE D_80803758; +//extern UNK_TYPE D_80803768; +//extern UNK_TYPE D_80803770; +//extern UNK_TYPE D_80803FC0; +//extern UNK_TYPE D_80803FC8; +//extern UNK_TYPE D_80813DF0; +//extern UNK_TYPE D_80813F30; +//extern UNK_TYPE D_80814130; +//extern UNK_TYPE D_80814170; +//extern UNK_TYPE D_808141B0; +//extern UNK_TYPE D_808141F0; +//extern UNK_TYPE D_80814240; +//extern UNK_TYPE D_8081424C; +//extern UNK_TYPE D_80814260; +//extern UNK_TYPE D_8081426C; +//extern UNK_TYPE D_80814280; +//extern UNK_TYPE D_80814304; +//extern UNK_TYPE D_80814384; +//extern UNK_TYPE D_80814404; +//extern UNK_TYPE D_80814410; +//extern UNK_TYPE D_80814428; +//extern UNK_TYPE D_80814430; +//extern UNK_TYPE D_80814434; +//extern UNK_TYPE D_80814464; +//extern UNK_TYPE D_8081448C; +//extern UNK_TYPE D_808144BC; +//extern UNK_TYPE D_808144C0; +//extern UNK_TYPE D_808144C4; +//extern UNK_TYPE D_808144C8; +//extern UNK_TYPE D_808144CC; +//extern UNK_TYPE D_808144D0; +//extern UNK_TYPE D_808144D4; +//extern UNK_TYPE D_808144D8; +//extern UNK_TYPE D_808144DC; +//extern UNK_TYPE D_808144E8; +//extern UNK_TYPE D_80814510; +//extern UNK_TYPE D_80814538; +//extern UNK_TYPE D_80814548; +//extern UNK_TYPE D_80814550; +//extern UNK_TYPE D_80814554; +//extern UNK_TYPE D_8081455C; +//extern UNK_TYPE D_80814564; +//extern UNK_TYPE D_80814568; +//extern UNK_TYPE D_8081461C; +//extern UNK_TYPE D_80814620; +//extern UNK_TYPE D_80814638; +//extern UNK_TYPE D_80814644; +//extern UNK_TYPE D_8081464C; +//extern UNK_TYPE D_80814650; +//extern UNK_TYPE D_80814654; +//extern UNK_TYPE D_8081465C; +//extern UNK_TYPE D_8081466C; +//extern UNK_TYPE D_8081468C; +//extern UNK_TYPE D_808146B4; +//extern UNK_TYPE D_808146C4; +//extern UNK_TYPE D_808146D8; +//extern UNK_TYPE D_808146EC; +//extern UNK_TYPE D_808146F8; +//extern UNK_TYPE D_80814704; +//extern UNK_TYPE D_80814720; +//extern UNK_TYPE D_80814744; +//extern UNK_TYPE D_80814764; +//extern UNK_TYPE D_80814774; +//extern UNK_TYPE D_8081477C; +//extern UNK_TYPE D_8081479C; +//extern UNK_TYPE D_808147A8; +//extern UNK_TYPE D_808147C0; +//extern UNK_TYPE D_808147C8; +//extern UNK_TYPE D_808147D0; +//extern UNK_TYPE D_808147D4; +//extern UNK_TYPE D_808147D8; +//extern UNK_TYPE D_808147E0; +//extern UNK_TYPE D_808147E4; +//extern UNK_TYPE D_808147E8; +//extern UNK_TYPE D_808147EC; +//extern UNK_TYPE D_808147F0; +//extern UNK_TYPE D_80814E80; +//extern UNK_TYPE D_80814E90; +//extern UNK_TYPE D_80815FF0; +//extern UNK_TYPE D_80816000; +//extern UNK_TYPE D_80816010; +//extern UNK_TYPE D_8082AED0; +//extern UNK_TYPE D_8082AED8; +//extern UNK_TYPE D_8082AEE0; +//extern UNK_TYPE D_8082AEE4; +//extern UNK_TYPE D_8082AEF0; +//extern UNK_TYPE D_8082AF04; +//extern UNK_TYPE D_8082AF24; +//extern UNK_TYPE D_8082AF6C; +//extern UNK_TYPE D_8082AF78; +//extern UNK_TYPE D_8082AF84; +//extern UNK_TYPE D_8082AF90; +//extern UNK_TYPE D_8082AF94; +//extern UNK_TYPE D_8082AF98; +//extern UNK_TYPE D_8082AF9C; +//extern UNK_TYPE D_8082AFA0; +//extern UNK_TYPE D_8082AFA4; +//extern UNK_TYPE D_8082AFA8; +//extern UNK_TYPE D_8082AFAC; +//extern UNK_TYPE D_8082AFB0; +//extern UNK_TYPE D_8082AFF4; +//extern UNK_TYPE D_8082B008; +//extern UNK_TYPE D_8082B028; +//extern UNK_TYPE D_8082B02C; +//extern UNK_TYPE D_8082B02E; +//extern UNK_TYPE D_8082B030; +//extern UNK_TYPE D_8082B032; +//extern UNK_TYPE D_8082B0F0; +//extern UNK_TYPE D_8082B0F4; +//extern UNK_TYPE D_8082B0F8; +//extern UNK_TYPE D_8082B328; +//extern UNK_TYPE D_8082B3AC; +//extern UNK_TYPE D_8082B3B0; +//extern UNK_TYPE D_8082B3C0; +//extern UNK_TYPE D_8082B3C4; +//extern UNK_TYPE D_8082B3C8; +//extern UNK_TYPE D_8082B3CC; +//extern UNK_TYPE D_8082B444; +//extern UNK_TYPE D_8082B454; +//extern UNK_TYPE D_8082B47C; +//extern UNK_TYPE D_8082B484; +//extern UNK_TYPE D_8082B48C; +//extern UNK_TYPE D_8082B494; +//extern UNK_TYPE D_8082B4A0; +//extern UNK_TYPE D_8082B4BC; +//extern UNK_TYPE D_8082B4C4; +//extern UNK_TYPE D_8082B4C8; +//extern UNK_TYPE D_8082B4CC; +//extern UNK_TYPE D_8082B4D0; +//extern UNK_TYPE D_8082B4D4; +//extern UNK_TYPE D_8082B4D8; +//extern UNK_TYPE D_8082B4DC; +//extern UNK_TYPE D_8082B4E0; +//extern UNK_TYPE D_8082B520; +//extern UNK_TYPE D_8082B52C; +//extern UNK_TYPE D_8082B538; +//extern UNK_TYPE D_8082B590; +//extern UNK_TYPE D_8082B59C; +//extern UNK_TYPE D_8082B5B4; +//extern UNK_TYPE D_8082B5CC; +//extern UNK_TYPE D_8082B5E0; +//extern UNK_TYPE D_8082B5F4; +//extern UNK_TYPE D_8082B600; +//extern UNK_TYPE D_8082B604; +//extern UNK_TYPE D_8082B608; +//extern UNK_TYPE D_8082B684; +//extern UNK_TYPE D_8082B6CC; +//extern UNK_TYPE D_8082B6D4; +//extern UNK_TYPE D_8082B6DC; +//extern UNK_TYPE D_8082B6E4; +//extern UNK_TYPE D_8082B6F0; +//extern UNK_TYPE D_8082B6F4; +//extern UNK_TYPE D_8082B6F8; +//extern UNK_TYPE D_8082B700; +//extern UNK_TYPE D_8082B73C; +//extern UNK_TYPE D_8082B778; +//extern UNK_TYPE D_8082B7B4; +//extern UNK_TYPE D_8082B838; +//extern UNK_TYPE D_8082B880; +//extern UNK_TYPE D_8082B884; +//extern UNK_TYPE D_8082B888; +//extern UNK_TYPE D_8082B88C; +//extern UNK_TYPE D_8082B890; +//extern UNK_TYPE D_8082B894; +//extern UNK_TYPE D_8082B898; +//extern UNK_TYPE D_8082B89C; +//extern UNK_TYPE D_8082B8A0; +//extern UNK_TYPE D_8082B8A4; +//extern UNK_TYPE D_8082B8A8; +//extern UNK_TYPE D_8082B8AC; +//extern UNK_TYPE D_8082B8B0; +//extern UNK_TYPE D_8082B8B4; +//extern UNK_TYPE D_8082B8B8; +//extern UNK_TYPE D_8082B8F8; +//extern UNK_TYPE D_8082B908; +//extern UNK_TYPE D_8082B90C; +//extern UNK_TYPE D_8082B910; +//extern UNK_TYPE D_8082B918; +//extern UNK_TYPE D_8082B91C; +//extern UNK_TYPE D_8082B920; +//extern UNK_TYPE D_8082B924; +//extern UNK_TYPE D_8082B944; +//extern UNK_TYPE D_8082B948; +//extern UNK_TYPE D_8082B990; +//extern UNK_TYPE D_8082B994; +//extern UNK_TYPE D_8082B998; +//extern UNK_TYPE D_8082B9B8; +//extern UNK_TYPE D_8082B9C8; +//extern UNK_TYPE D_8082B9CC; +//extern UNK_TYPE D_8082B9D0; +//extern UNK_TYPE D_8082B9E0; +//extern UNK_TYPE D_8082B9E4; +//extern UNK_TYPE D_8082BB68; +//extern UNK_TYPE D_8082BBC4; +//extern UNK_TYPE D_8082BC14; +//extern UNK_TYPE D_8082BC64; +//extern UNK_TYPE D_8082BCB4; +//extern UNK_TYPE D_8082BCCC; +//extern UNK_TYPE D_8082BCDC; +//extern UNK_TYPE D_8082BD08; +//extern UNK_TYPE D_8082BD34; +//extern UNK_TYPE D_8082BD5C; +//extern UNK_TYPE D_8082BD84; +//extern UNK_TYPE D_8082BDA8; +//extern UNK_TYPE D_8082BDCC; +//extern UNK_TYPE D_8082BE28; +//extern UNK_TYPE D_8082BE84; +//extern UNK_TYPE D_8082BE88; +//extern UNK_TYPE D_8082BE9C; +//extern UNK_TYPE D_8082BEA0; +//extern UNK_TYPE D_8082BEA4; +//extern UNK_TYPE D_8082BEA8; +//extern UNK_TYPE D_8082BEAC; +//extern UNK_TYPE D_8082BEB0; +//extern UNK_TYPE D_8082BEB4; +//extern UNK_TYPE D_8082BEB8; +//extern UNK_TYPE D_8082BEC0; +//extern UNK_TYPE D_8082BEC4; +//extern UNK_TYPE D_8082BED0; +//extern UNK_TYPE D_8082BED4; +//extern UNK_TYPE D_8082BEDC; +//extern UNK_TYPE D_8082BEE0; +//extern UNK_TYPE D_8082BEE4; +//extern UNK_TYPE D_8082BEE8; +//extern UNK_TYPE D_8082BEEC; +//extern UNK_TYPE D_8082BEF0; +//extern UNK_TYPE D_8082BEF4; +//extern UNK_TYPE D_8082BEF8; +//extern UNK_TYPE D_8082BEFC; +//extern UNK_TYPE D_8082BF00; +//extern UNK_TYPE D_8082BF04; +//extern UNK_TYPE D_8082BF08; +//extern UNK_TYPE D_8082BF0C; +//extern UNK_TYPE D_8082BF10; +//extern UNK_TYPE D_8082BF14; +//extern UNK_TYPE D_8082BF18; +//extern UNK_TYPE D_8082BF1C; +//extern UNK_TYPE D_8082BF20; +//extern UNK_TYPE D_8082BF24; +//extern UNK_TYPE D_8082BF28; +//extern UNK_TYPE D_8082BF2C; +//extern UNK_TYPE D_8082BF30; +//extern UNK_TYPE D_8082BF38; +//extern UNK_TYPE D_8082BF3C; +//extern UNK_TYPE D_8082BF40; +//extern UNK_TYPE D_8082BF44; +//extern UNK_TYPE D_8082BF48; +//extern UNK_TYPE D_8082BF4C; +//extern UNK_TYPE D_8082BF50; +//extern UNK_TYPE D_8082BF54; +//extern UNK_TYPE D_8082BF58; +//extern UNK_TYPE D_8082BF5C; +//extern UNK_TYPE D_8082BF64; +//extern UNK_TYPE D_8082BF68; +//extern UNK_TYPE D_8082BF70; +//extern UNK_TYPE D_8082BF74; +//extern UNK_TYPE D_8082BF84; +//extern UNK_TYPE D_8082BF88; +//extern UNK_TYPE D_8082BF8C; +//extern UNK_TYPE D_8082BF90; +//extern UNK_TYPE D_8082BF98; +//extern UNK_TYPE D_8082BF9C; +//extern UNK_TYPE D_8082BFA4; +//extern UNK_TYPE D_8082BFA8; +//extern UNK_TYPE D_8082BFB0; +//extern UNK_TYPE D_8082BFB4; +//extern UNK_TYPE D_8082BFBC; +//extern UNK_TYPE D_8082BFC0; +//extern UNK_TYPE D_8082BFC8; +//extern UNK_TYPE D_8082BFCC; +//extern UNK_TYPE D_8082BFD4; +//extern UNK_TYPE D_8082BFD8; +//extern UNK_TYPE D_8082BFE0; +//extern UNK_TYPE D_8082BFE4; +//extern UNK_TYPE D_8082BFE8; +//extern UNK_TYPE D_8082BFEC; +//extern UNK_TYPE D_8082BFF0; +//extern UNK_TYPE D_8082BFF4; +//extern UNK_TYPE D_8082BFFC; +//extern UNK_TYPE D_8082C000; +//extern UNK_TYPE D_8082C004; +//extern UNK_TYPE D_8082C008; +//extern UNK_TYPE D_8082C014; +//extern UNK_TYPE D_8082C018; +//extern UNK_TYPE D_8082C020; +//extern UNK_TYPE D_8082C024; +//extern UNK_TYPE D_8082C02C; +//extern UNK_TYPE D_8082C030; +//extern UNK_TYPE D_8082C034; +//extern UNK_TYPE D_8082C038; +//extern UNK_TYPE D_8082C03C; +//extern UNK_TYPE D_8082C040; +//extern UNK_TYPE D_8082C044; +//extern UNK_TYPE D_8082C048; +//extern UNK_TYPE D_8082C04C; +//extern UNK_TYPE D_8082C050; +//extern UNK_TYPE D_8082C054; +//extern UNK_TYPE D_8082C058; +//extern UNK_TYPE D_8082C05C; +//extern UNK_TYPE D_8082C060; +//extern UNK_TYPE D_8082C068; +//extern UNK_TYPE D_8082C06C; +//extern UNK_TYPE D_8082C074; +//extern UNK_TYPE D_8082C078; +//extern UNK_TYPE D_8082C084; +//extern UNK_TYPE D_8082C088; +//extern UNK_TYPE D_8082C090; +//extern UNK_TYPE D_8082C094; +//extern UNK_TYPE D_8082C0A0; +//extern UNK_TYPE D_8082C0A4; +//extern UNK_TYPE D_8082C0A8; +//extern UNK_TYPE D_8082C0B0; +//extern UNK_TYPE D_8082C0B8; +//extern UNK_TYPE D_8082C0BC; +//extern UNK_TYPE D_8082C0C0; +//extern UNK_TYPE D_8082C0C4; +//extern UNK_TYPE D_8082C0C8; +//extern UNK_TYPE D_8082C0CC; +//extern UNK_TYPE D_8082C0D0; +//extern UNK_TYPE D_8082C0D4; +//extern UNK_TYPE D_8082C0D8; +//extern UNK_TYPE D_8082C0DC; +//extern UNK_TYPE D_8082C0E0; +//extern UNK_TYPE D_8082C0E4; +//extern UNK_TYPE D_8082C148; +//extern UNK_TYPE D_8082C18C; +//extern UNK_TYPE D_8082DA50; +//extern UNK_TYPE D_8082DA52; +//extern UNK_TYPE D_8082DA54; +//extern UNK_TYPE D_8082DA56; +//extern UNK_TYPE D_8082DA58; +//extern UNK_TYPE D_8082DA60; +//extern UNK_TYPE D_8082DA64; +//extern UNK_TYPE D_8082DA68; +//extern UNK_TYPE D_8082DA6C; +//extern UNK_TYPE D_8082DA70; +//extern UNK_TYPE D_8082DA74; +//extern UNK_TYPE D_8082DA78; +//extern UNK_TYPE D_8082DA7C; +//extern UNK_TYPE D_8082DA80; +//extern UNK_TYPE D_8082DA82; +//extern UNK_TYPE D_8082DA84; +//extern UNK_TYPE D_8082DA86; +//extern UNK_TYPE func_8084D2FC; +//extern UNK_TYPE D_8085B9F0; +//extern UNK_TYPE D_8085BA08; +//extern UNK_TYPE D_8085BA20; +//extern UNK_TYPE D_8085BA38; +//extern UNK_TYPE D_8085BE84; +//extern UNK_TYPE D_8085BE9C; +//extern UNK_TYPE D_8085BEB4; +//extern UNK_TYPE D_8085BECC; +//extern UNK_TYPE D_8085BEE4; +//extern UNK_TYPE D_8085BEFC; +//extern UNK_TYPE D_8085BF14; +//extern UNK_TYPE D_8085BF44; +//extern UNK_TYPE D_8085BF5C; +//extern UNK_TYPE D_8085BF74; +//extern UNK_TYPE D_8085BF8C; +//extern UNK_TYPE D_8085BFA4; +//extern UNK_TYPE D_8085BFBC; +//extern UNK_TYPE D_8085BFD4; +//extern UNK_TYPE D_8085BFEC; +//extern UNK_TYPE D_8085C004; +//extern UNK_TYPE D_8085C01C; +//extern UNK_TYPE D_8085C034; +//extern UNK_TYPE D_8085C04C; +//extern UNK_TYPE D_8085C064; +//extern UNK_TYPE D_8085C07C; +//extern UNK_TYPE D_8085C094; +//extern UNK_TYPE D_8085C0C4; +//extern UNK_TYPE D_8085C0DC; +//extern UNK_TYPE D_8085C0F4; +//extern UNK_TYPE D_8085C10C; +//extern UNK_TYPE D_8085C124; +//extern UNK_TYPE D_8085C13C; +//extern UNK_TYPE D_8085C154; +//extern UNK_TYPE D_8085C16C; +//extern UNK_TYPE D_8085C184; +//extern UNK_TYPE D_8085C19C; +//extern UNK_TYPE D_8085C1B4; +//extern UNK_TYPE D_8085C1CC; +//extern UNK_TYPE D_8085C1E4; +//extern UNK_TYPE D_8085C1FC; +//extern UNK_TYPE D_8085C214; +//extern UNK_TYPE D_8085C22C; +//extern UNK_TYPE D_8085C244; +//extern UNK_TYPE D_8085C25C; +//extern UNK_TYPE D_8085C274; +//extern UNK_TYPE D_8085C28C; +//extern UNK_TYPE D_8085C2A4; +//extern UNK_TYPE D_8085C2A8; +//extern UNK_TYPE D_8085C2AC; +//extern UNK_TYPE D_8085C2EC; +//extern UNK_TYPE D_8085C318; +//extern UNK_TYPE D_8085C344; +//extern UNK_TYPE D_8085C394; +//extern UNK_TYPE D_8085C3E4; +//extern UNK_TYPE D_8085C3E8; +//extern UNK_TYPE D_8085C3EC; +//extern UNK_TYPE D_8085C3F4; +//extern UNK_TYPE D_8085C84C; +//extern UNK_TYPE D_8085C850; +//extern UNK_TYPE D_8085C938; +//extern UNK_TYPE D_8085C96C; +//extern UNK_TYPE D_8085C98C; +//extern UNK_TYPE D_8085C99C; +//extern UNK_TYPE D_8085C9F0; +//extern UNK_TYPE D_8085CC88; +//extern UNK_TYPE D_8085CD24; +//extern UNK_TYPE D_8085CD30; +//extern UNK_TYPE D_8085CE30; +//extern UNK_TYPE D_8085CE60; +//extern UNK_TYPE D_8085CF50; +//extern UNK_TYPE D_8085CF58; +//extern UNK_TYPE D_8085CF60; +//extern UNK_TYPE D_8085CF68; +//extern UNK_TYPE D_8085CF70; +//extern UNK_TYPE D_8085CF78; +//extern UNK_TYPE D_8085CF80; +//extern UNK_TYPE D_8085CF84; +//extern UNK_TYPE D_8085CF88; +//extern UNK_TYPE D_8085CFA8; +//extern UNK_TYPE D_8085CFAE; +//extern UNK_TYPE D_8085CFB8; +//extern UNK_TYPE D_8085CFBC; +//extern UNK_TYPE D_8085CFC4; +//extern UNK_TYPE D_8085CFCC; +//extern UNK_TYPE D_8085CFD4; +//extern UNK_TYPE D_8085CFDC; +//extern UNK_TYPE D_8085CFE4; +//extern UNK_TYPE D_8085CFEC; +//extern UNK_TYPE D_8085CFF8; +//extern UNK_TYPE D_8085D004; +//extern UNK_TYPE D_8085D00C; +//extern UNK_TYPE D_8085D018; +//extern UNK_TYPE D_8085D01C; +//extern UNK_TYPE D_8085D028; +//extern UNK_TYPE D_8085D034; +//extern UNK_TYPE D_8085D044; +//extern UNK_TYPE D_8085D048; +//extern UNK_TYPE D_8085D050; +//extern UNK_TYPE D_8085D054; +//extern UNK_TYPE D_8085D094; +//extern UNK_TYPE D_8085D09C; +//extern UNK_TYPE D_8085D0D4; +//extern UNK_TYPE D_8085D0E4; +//extern UNK_TYPE D_8085D0F4; +//extern UNK_TYPE D_8085D0F8; +//extern UNK_TYPE D_8085D100; +//extern UNK_TYPE D_8085D10C; +//extern UNK_TYPE D_8085D114; +//extern UNK_TYPE D_8085D118; +//extern UNK_TYPE D_8085D124; +//extern UNK_TYPE D_8085D130; +//extern UNK_TYPE D_8085D134; +//extern UNK_TYPE D_8085D13C; +//extern UNK_TYPE D_8085D148; +//extern UNK_TYPE D_8085D154; +//extern UNK_TYPE D_8085D160; +//extern UNK_TYPE D_8085D174; +//extern UNK_TYPE D_8085D17C; +//extern UNK_TYPE D_8085D190; +//extern UNK_TYPE D_8085D1A4; +//extern UNK_TYPE D_8085D1F8; +//extern UNK_TYPE D_8085D200; +//extern UNK_TYPE D_8085D224; +//extern UNK_TYPE D_8085D23C; +//extern UNK_TYPE D_8085D252; +//extern UNK_TYPE D_8085D25C; +//extern UNK_TYPE D_8085D264; +//extern UNK_TYPE D_8085D26C; +//extern UNK_TYPE D_8085D270; +//extern UNK_TYPE D_8085D27C; +//extern UNK_TYPE D_8085D284; +//extern UNK_TYPE D_8085D294; +//extern UNK_TYPE D_8085D2A4; +//extern UNK_TYPE D_8085D2B0; +//extern UNK_TYPE D_8085D2B4; +//extern UNK_TYPE D_8085D2C0; +//extern UNK_TYPE D_8085D2C4; +//extern UNK_TYPE D_8085D30C; +//extern UNK_TYPE D_8085D330; +//extern UNK_TYPE D_8085D334; +//extern UNK_TYPE D_8085D338; +//extern UNK_TYPE D_8085D33C; +//extern UNK_TYPE D_8085D340; +//extern UNK_TYPE D_8085D34C; +//extern UNK_TYPE D_8085D358; +//extern UNK_TYPE D_8085D35C; +//extern UNK_TYPE D_8085D364; +//extern UNK_TYPE D_8085D370; +//extern UNK_TYPE D_8085D37C; +//extern UNK_TYPE D_8085D380; +//extern UNK_TYPE D_8085D384; +//extern UNK_TYPE D_8085D3E0; +//extern UNK_TYPE D_8085D3F4; +//extern UNK_TYPE D_8085D3F8; +//extern UNK_TYPE D_8085D3FC; +//extern UNK_TYPE D_8085D404; +//extern UNK_TYPE D_8085D410; +//extern UNK_TYPE D_8085D41C; +//extern UNK_TYPE D_8085D540; +//extern UNK_TYPE D_8085D550; +//extern UNK_TYPE D_8085D55C; +//extern UNK_TYPE D_8085D568; +//extern UNK_TYPE D_8085D574; +//extern UNK_TYPE D_8085D580; +//extern UNK_TYPE D_8085D584; +//extern UNK_TYPE D_8085D5A0; +//extern UNK_TYPE D_8085D5B8; +//extern UNK_TYPE D_8085D5D0; +//extern UNK_TYPE D_8085D5DC; +//extern UNK_TYPE D_8085D5E0; +//extern UNK_TYPE D_8085D5E4; +//extern UNK_TYPE D_8085D5F0; +//extern UNK_TYPE D_8085D5FA; +//extern UNK_TYPE D_8085D604; +//extern UNK_TYPE D_8085D60C; +//extern UNK_TYPE D_8085D61C; +//extern UNK_TYPE D_8085D62C; +//extern UNK_TYPE D_8085D630; +//extern UNK_TYPE D_8085D634; +//extern UNK_TYPE D_8085D638; +//extern UNK_TYPE D_8085D640; +//extern UNK_TYPE D_8085D644; +//extern UNK_TYPE D_8085D650; +//extern UNK_TYPE D_8085D660; +//extern UNK_TYPE D_8085D66C; +//extern UNK_TYPE D_8085D674; +//extern UNK_TYPE D_8085D67C; +//extern UNK_TYPE D_8085D6A4; +//extern UNK_TYPE D_8085D6E0; +//extern UNK_TYPE D_8085D6E8; +//extern UNK_TYPE D_8085D708; +//extern UNK_TYPE D_8085D714; +//extern UNK_TYPE D_8085D73C; +//extern UNK_TYPE D_8085D74C; +//extern UNK_TYPE D_8085D75C; +//extern UNK_TYPE D_8085D764; +//extern UNK_TYPE D_8085D770; +//extern UNK_TYPE D_8085D77C; +//extern UNK_TYPE D_8085D788; +//extern UNK_TYPE D_8085D78C; +//extern UNK_TYPE D_8085D798; +//extern UNK_TYPE D_8085D7EC; +//extern UNK_TYPE D_8085D804; +//extern UNK_TYPE D_8085D80C; +//extern UNK_TYPE D_8085D838; +//extern UNK_TYPE D_8085D840; +//extern UNK_TYPE D_8085D848; +//extern UNK_TYPE D_8085D8F0; +//extern UNK_TYPE D_8085D904; +//extern UNK_TYPE D_8085D908; +//extern UNK_TYPE D_8085D910; +//extern UNK_TYPE D_8085D918; +//extern UNK_TYPE D_8085D924; +//extern UNK_TYPE D_8085D930; +//extern UNK_TYPE D_8085D934; +//extern UNK_TYPE D_8085D938; +//extern UNK_TYPE D_8085D93C; +//extern UNK_TYPE D_8085D940; +//extern UNK_TYPE D_8085D94C; +//extern UNK_TYPE D_8085D954; +//extern UNK_TYPE D_8085D958; +//extern UNK_TYPE D_8085D960; +//extern UNK_TYPE D_8085D96C; +//extern UNK_TYPE D_8085D978; +//extern UNK_TYPE D_8085D984; +//extern UNK_TYPE D_8085D990; +//extern UNK_TYPE D_8085DA08; +//extern UNK_TYPE D_8085DA14; +//extern UNK_TYPE D_8085DA38; +//extern UNK_TYPE D_8085DA48; +//extern UNK_TYPE D_8085DA7C; +//extern UNK_TYPE D_8085DA84; +//extern UNK_TYPE D_8085DA88; +//extern UNK_TYPE D_8085DA8C; +//extern UNK_TYPE D_8085DA90; +//extern UNK_TYPE D_8085DA94; +//extern UNK_TYPE D_8085DEF4; +//extern UNK_TYPE D_8085E354; +//extern UNK_TYPE D_8085E368; +//extern UNK_TYPE D_8085E3A4; +//extern UNK_TYPE D_8085E3A8; +//extern UNK_TYPE D_8085E3B0; +//extern UNK_TYPE D_8085E3B4; +//extern UNK_TYPE D_8085E3B8; +//extern UNK_TYPE D_8085E3BC; +//extern UNK_TYPE D_8085E3C0; +//extern UNK_TYPE D_8085E3C8; +//extern UNK_TYPE D_8085E3D0; +//extern UNK_TYPE D_8085E3D4; +//extern UNK_TYPE D_8085E3D8; +//extern UNK_TYPE D_8085E3DC; +//extern UNK_TYPE D_8085E3E0; +//extern UNK_TYPE D_8085E3E4; +//extern UNK_TYPE D_8085E3EC; +//extern UNK_TYPE D_8085E3F4; +//extern UNK_TYPE D_8085E3F8; +//extern UNK_TYPE D_8085E408; +//extern UNK_TYPE D_8085E40C; +//extern UNK_TYPE D_8085E410; +//extern UNK_TYPE D_8085E414; +//extern UNK_TYPE D_8085E418; +//extern UNK_TYPE D_8085E41C; +//extern UNK_TYPE D_8085E420; +//extern UNK_TYPE D_8085E428; +//extern UNK_TYPE D_8085E42C; +//extern UNK_TYPE D_8085E430; +//extern UNK_TYPE D_8085E434; +//extern UNK_TYPE D_8085E438; +//extern UNK_TYPE D_8085E43C; +//extern UNK_TYPE D_8085E440; +//extern UNK_TYPE D_8085E444; +//extern UNK_TYPE D_8085E44C; +//extern UNK_TYPE D_8085E454; +//extern UNK_TYPE D_8085E458; +//extern UNK_TYPE D_8085E45C; +//extern UNK_TYPE D_8085E460; +//extern UNK_TYPE D_8085E464; +//extern UNK_TYPE D_8085E468; +//extern UNK_TYPE D_8085E46C; +//extern UNK_TYPE D_8085E470; +//extern UNK_TYPE D_8085E474; +//extern UNK_TYPE D_8085E47C; +//extern UNK_TYPE D_8085E480; +//extern UNK_TYPE D_8085E488; +//extern UNK_TYPE D_8085E48C; +//extern UNK_TYPE D_8085E490; +//extern UNK_TYPE D_8085E494; +//extern UNK_TYPE D_8085E498; +//extern UNK_TYPE D_8085E49C; +//extern UNK_TYPE D_8085E4A0; +//extern UNK_TYPE D_8085E4A4; +//extern UNK_TYPE D_8085E4A8; +//extern UNK_TYPE D_8085E4B0; +//extern UNK_TYPE D_8085E4B4; +//extern UNK_TYPE D_8085E4B8; +//extern UNK_TYPE D_8085E4BC; +//extern UNK_TYPE D_8085E4C0; +//extern UNK_TYPE D_8085E4C4; +//extern UNK_TYPE D_8085E4CC; +//extern UNK_TYPE D_8085E4D0; +//extern UNK_TYPE D_8085E4D4; +//extern UNK_TYPE D_8085E4D8; +//extern UNK_TYPE D_8085E4DC; +//extern UNK_TYPE D_8085E4E0; +//extern UNK_TYPE D_8085E4E4; +//extern UNK_TYPE D_8085E4E8; +//extern UNK_TYPE D_8085E4EC; +//extern UNK_TYPE D_8085E4F0; +//extern UNK_TYPE D_8085E4F4; +//extern UNK_TYPE D_8085E4F8; +//extern UNK_TYPE D_8085E4FC; +//extern UNK_TYPE D_8085E500; +//extern UNK_TYPE D_8085E504; +//extern UNK_TYPE D_8085E508; +//extern UNK_TYPE D_8085E50C; +//extern UNK_TYPE D_8085E510; +//extern UNK_TYPE D_8085E514; +//extern UNK_TYPE D_8085E518; +//extern UNK_TYPE D_8085E51C; +//extern UNK_TYPE D_8085E520; +//extern UNK_TYPE D_8085E524; +//extern UNK_TYPE D_8085E528; +//extern UNK_TYPE D_8085E52C; +//extern UNK_TYPE D_8085E530; +//extern UNK_TYPE D_8085E534; +//extern UNK_TYPE D_8085E538; +//extern UNK_TYPE D_8085E53C; +//extern UNK_TYPE D_8085E540; +//extern UNK_TYPE D_8085E544; +//extern UNK_TYPE D_8085E548; +//extern UNK_TYPE D_8085E54C; +//extern UNK_TYPE D_8085E554; +//extern UNK_TYPE D_8085E558; +//extern UNK_TYPE D_8085E55C; +//extern UNK_TYPE D_8085E560; +//extern UNK_TYPE D_8085E564; +//extern UNK_TYPE D_8085E568; +//extern UNK_TYPE D_8085E574; +//extern UNK_TYPE D_8085E578; +//extern UNK_TYPE D_8085E57C; +//extern UNK_TYPE D_8085E584; +//extern UNK_TYPE D_8085E588; +//extern UNK_TYPE D_8085E590; +//extern UNK_TYPE D_8085E598; +//extern UNK_TYPE D_8085E59C; +//extern UNK_TYPE D_8085E5A0; +//extern UNK_TYPE D_8085E5A4; +//extern UNK_TYPE D_8085E5A8; +//extern UNK_TYPE D_8085E5AC; +//extern UNK_TYPE D_8085E5B0; +//extern UNK_TYPE D_8085E5B4; +//extern UNK_TYPE D_8085E5B8; +//extern UNK_TYPE D_8085E5BC; +//extern UNK_TYPE D_8085E5C0; +//extern UNK_TYPE D_8085E5C4; +//extern UNK_TYPE D_8085E5C8; +//extern UNK_TYPE D_8085E5CC; +//extern UNK_TYPE D_8085E5D0; +//extern UNK_TYPE D_8085E5D4; +//extern UNK_TYPE D_8085E5D8; +//extern UNK_TYPE D_8085E5DC; +//extern UNK_TYPE D_8085E5E0; +//extern UNK_TYPE D_8085E5E4; +//extern UNK_TYPE D_8085E5E8; +//extern UNK_TYPE D_8085E5F4; +//extern UNK_TYPE D_8085E5F8; +//extern UNK_TYPE D_8085E600; +//extern UNK_TYPE D_8085E604; +//extern UNK_TYPE D_8085E60C; +//extern UNK_TYPE D_8085E614; +//extern UNK_TYPE D_8085E618; +//extern UNK_TYPE D_8085E61C; +//extern UNK_TYPE D_8085E620; +//extern UNK_TYPE D_8085E624; +//extern UNK_TYPE D_8085E628; +//extern UNK_TYPE D_8085E62C; +//extern UNK_TYPE D_8085E630; +//extern UNK_TYPE D_8085E634; +//extern UNK_TYPE D_8085E638; +//extern UNK_TYPE D_8085E63C; +//extern UNK_TYPE D_8085E640; +//extern UNK_TYPE D_8085E644; +//extern UNK_TYPE D_8085E648; +//extern UNK_TYPE D_8085E650; +//extern UNK_TYPE D_8085E654; +//extern UNK_TYPE D_8085E658; +//extern UNK_TYPE D_8085E65C; +//extern UNK_TYPE D_8085E660; +//extern UNK_TYPE D_8085E664; +//extern UNK_TYPE D_8085E668; +//extern UNK_TYPE D_8085E66C; +//extern UNK_TYPE D_8085E670; +//extern UNK_TYPE D_8085E674; +//extern UNK_TYPE D_8085E678; +//extern UNK_TYPE D_8085E67C; +//extern UNK_TYPE D_8085E680; +//extern UNK_TYPE D_8085E684; +//extern UNK_TYPE D_8085E688; +//extern UNK_TYPE D_8085E68C; +//extern UNK_TYPE D_8085E690; +//extern UNK_TYPE D_8085E694; +//extern UNK_TYPE D_8085E698; +//extern UNK_TYPE D_8085E6A0; +//extern UNK_TYPE D_8085E6A8; +//extern UNK_TYPE D_8085E6AC; +//extern UNK_TYPE D_8085E6B4; +//extern UNK_TYPE D_8085E6B8; +//extern UNK_TYPE D_8085E6C0; +//extern UNK_TYPE D_8085E6C4; +//extern UNK_TYPE D_8085E6CC; +//extern UNK_TYPE D_8085E6D0; +//extern UNK_TYPE D_8085E6D4; +//extern UNK_TYPE D_8085E6D8; +//extern UNK_TYPE D_8085E6E0; +//extern UNK_TYPE D_8085E6E4; +//extern UNK_TYPE D_8085E6EC; +//extern UNK_TYPE D_8085E6F0; +//extern UNK_TYPE D_8085E6F4; +//extern UNK_TYPE D_80862AF0; +//extern UNK_TYPE D_80862AF4; +//extern UNK_TYPE D_80862AF8; +//extern UNK_TYPE D_80862AFC; +//extern UNK_TYPE D_80862B00; +//extern UNK_TYPE D_80862B02; +//extern UNK_TYPE D_80862B04; +//extern UNK_TYPE D_80862B08; +//extern UNK_TYPE D_80862B0C; +//extern UNK_TYPE D_80862B10; +//extern UNK_TYPE D_80862B14; +//extern UNK_TYPE D_80862B16; +//extern UNK_TYPE D_80862B18; +//extern UNK_TYPE D_80862B1C; +//extern UNK_TYPE D_80862B20; +//extern UNK_TYPE D_80862B24; +//extern UNK_TYPE D_80862B28; +//extern UNK_TYPE D_80862B2C; +//extern UNK_TYPE D_80862B30; +//extern UNK_TYPE D_80862B3C; +//extern UNK_TYPE D_80862B40; +//extern UNK_TYPE D_80862B44; +//extern UNK_TYPE D_80862B48; +//extern UNK_TYPE D_80862B4C; +//extern UNK_TYPE D_80862B50; +//extern UNK_TYPE D_80862B6C; extern f32 D_808637D0; // D_808637D0 //extern UNK_TYPE D_808637D4; //extern UNK_TYPE D_808637D8; @@ -7797,6 +8926,107 @@ extern f32 D_808637D0; // D_808637D0 //extern UNK_TYPE D_80977160; //extern UNK_TYPE D_80977174; //extern UNK_TYPE D_80977180; +//extern UNK_TYPE D_80977920; +//extern UNK_TYPE D_80977940; +//extern UNK_TYPE D_80977944; +//extern UNK_TYPE D_80977948; +//extern UNK_TYPE D_8097794C; +//extern UNK_TYPE D_80977950; +//extern UNK_TYPE D_80977954; +//extern UNK_TYPE D_80977958; +//extern UNK_TYPE D_8097795C; +//extern UNK_TYPE D_80977960; +//extern UNK_TYPE D_80977FD0; +//extern UNK_TYPE D_80977FD4; +//extern UNK_TYPE D_80977FD8; +//extern UNK_TYPE D_80977FDC; +//extern UNK_TYPE D_80977FE0; +//extern UNK_TYPE D_80977FE4; +//extern UNK_TYPE D_80977FEC; +//extern UNK_TYPE D_809787F8; +//extern UNK_TYPE D_80978800; +//extern UNK_TYPE D_80978820; +//extern UNK_TYPE D_80978840; +//extern UNK_TYPE D_80978844; +//extern UNK_TYPE D_80978848; +//extern UNK_TYPE D_8097884C; +//extern UNK_TYPE D_80978850; +//extern UNK_TYPE D_80978BE0; +//extern UNK_TYPE D_80979138; +//extern UNK_TYPE D_80979150; +//extern UNK_TYPE D_80979568; +//extern UNK_TYPE D_80979AB4; +//extern UNK_TYPE D_80979AD0; +//extern UNK_TYPE D_80979AD4; +//extern UNK_TYPE D_8097A000; +//extern UNK_TYPE D_8097A618; +//extern UNK_TYPE D_8097AC80; +//extern UNK_TYPE D_8097ACA0; +//extern UNK_TYPE D_8097ACA8; +//extern UNK_TYPE D_8097ACB0; +//extern UNK_TYPE D_8097ACB4; +//extern UNK_TYPE D_8097ACB8; +//extern UNK_TYPE D_8097ACBC; +//extern UNK_TYPE D_8097ACC0; +//extern UNK_TYPE D_8097B1E0; +//extern UNK_TYPE D_8097B1F0; +//extern UNK_TYPE D_8097B210; +//extern UNK_TYPE D_8097B7A0; +//extern UNK_TYPE D_8097B7A4; +//extern UNK_TYPE D_8097B7A8; +//extern UNK_TYPE D_8097B7AC; +//extern UNK_TYPE D_8097BA80; +//extern UNK_TYPE D_8097BA84; +//extern UNK_TYPE D_8097C090; +//extern UNK_TYPE D_8097C094; +//extern UNK_TYPE D_8097C098; +//extern UNK_TYPE D_8097C0A4; +//extern UNK_TYPE D_8097C0A8; +//extern UNK_TYPE D_8097C0AC; +//extern UNK_TYPE D_8097C0B0; +//extern UNK_TYPE D_8097C3D8; +//extern UNK_TYPE D_8097C440; +//extern UNK_TYPE D_8097C880; +//extern UNK_TYPE D_8097C8B0; +//extern UNK_TYPE D_8097CEC8; +//extern UNK_TYPE D_8097CF20; +//extern UNK_TYPE D_8097D3A0; +//extern UNK_TYPE D_8097D3A4; +//extern UNK_TYPE D_8097D800; +//extern UNK_TYPE D_8097D804; +//extern UNK_TYPE D_8097DC50; +//extern UNK_TYPE D_8097EAD8; +//extern UNK_TYPE D_8097EAE4; +//extern UNK_TYPE D_8097EB0C; +//extern UNK_TYPE D_8097EB14; +//extern UNK_TYPE D_8097EB30; +//extern UNK_TYPE D_8097EB3C; +//extern UNK_TYPE D_8097EB64; +//extern UNK_TYPE D_8097EB70; +//extern UNK_TYPE D_8097EB88; +//extern UNK_TYPE D_8097EB8C; +//extern UNK_TYPE D_8097EB90; +//extern UNK_TYPE D_8097EB94; +//extern UNK_TYPE D_8097EB98; +//extern UNK_TYPE D_8097F080; +//extern UNK_TYPE D_8097F084; +//extern UNK_TYPE D_8097F820; +//extern UNK_TYPE D_8097F824; +//extern UNK_TYPE D_8097FEE0; +//extern UNK_TYPE D_8097FEE4; +//extern UNK_TYPE D_8097FEE8; +//extern UNK_TYPE D_8097FEEC; +//extern UNK_TYPE D_8097FEF0; +//extern UNK_TYPE D_8097FEF4; +//extern UNK_TYPE D_80980580; +//extern UNK_TYPE D_80980584; +//extern UNK_TYPE D_809808E0; +//extern UNK_TYPE D_809808F0; +//extern UNK_TYPE D_80980CD8; +//extern UNK_TYPE D_80980D00; +//extern UNK_TYPE D_80981280; +//extern UNK_TYPE D_80981710; +//extern UNK_TYPE D_80981714; //extern UNK_TYPE D_80982F90; //extern UNK_TYPE D_80983047; //extern UNK_TYPE D_809830A7; @@ -8130,6 +9360,7 @@ extern f32 D_808637D0; // D_808637D0 //extern UNK_TYPE D_8099F610; //extern UNK_TYPE D_8099F614; //extern UNK_TYPE D_8099F618; +//extern UNK_TYPE D_8099F9F0; //extern UNK_TYPE D_8099FE30; //extern UNK_TYPE D_8099FE3C; //extern UNK_TYPE D_8099FE50; @@ -9487,6 +10718,9 @@ extern f32 D_808637D0; // D_808637D0 //extern UNK_TYPE D_80A22B54; //extern UNK_TYPE D_80A22B58; //extern UNK_TYPE D_80A22B5C; +//extern UNK_TYPE D_80A23030; +//extern UNK_TYPE D_80A23034; +//extern UNK_TYPE D_80A23038; //extern UNK_TYPE D_80A26E50; //extern UNK_TYPE D_80A26E7C; //extern UNK_TYPE D_80A26E80; @@ -11183,6 +12417,28 @@ extern f32 D_808637D0; // D_808637D0 //extern UNK_TYPE D_80AC4F60; //extern UNK_TYPE D_80AC4F64; //extern UNK_TYPE D_80AC5060; +//extern UNK_TYPE D_80AC5630; +//extern UNK_TYPE D_80AC5660; +//extern UNK_TYPE D_80AC5730; +//extern UNK_TYPE D_80AC5734; +//extern UNK_TYPE D_80AC5738; +//extern UNK_TYPE D_80AC573C; +//extern UNK_TYPE D_80AC65B0; +//extern UNK_TYPE D_80AC66D0; +//extern UNK_TYPE D_80AC8280; +//extern UNK_TYPE D_80AC8350; +//extern UNK_TYPE D_80AC8680; +//extern UNK_TYPE D_80AC8688; +//extern UNK_TYPE D_80AC8AE0; +//extern UNK_TYPE D_80AC8AE8; +//extern UNK_TYPE D_80AC93B8; +//extern UNK_TYPE D_80AC93E8; +//extern UNK_TYPE D_80AC9400; +//extern UNK_TYPE D_80AC9404; +//extern UNK_TYPE D_80AC9414; +//extern UNK_TYPE D_80AC9418; +//extern UNK_TYPE D_80AC941C; +//extern UNK_TYPE D_80AC9420; //extern UNK_TYPE D_80AC9D70; //extern UNK_TYPE D_80AC9D90; //extern UNK_TYPE D_80AC9D94; @@ -14304,6 +15560,7 @@ extern UNK_TYPE D_80BD562C; // D_80BD562C //extern UNK_TYPE D_C00032B8; //extern UNK_TYPE D_C00032BC; //extern UNK_TYPE D_C1200B34; +//extern UNK_TYPE D_FC110200; // extra variables needed for one reason or another diff --git a/src/actors/ovl_Bg_Fu_Kaiten_0x80ACB400/ovl_Bg_Fu_Kaiten_0x80ACB400.c b/src/actors/ovl_Bg_Fu_Kaiten_0x80ACB400/ovl_Bg_Fu_Kaiten_0x80ACB400.c index 3cc2baf161..bb07708efe 100644 --- a/src/actors/ovl_Bg_Fu_Kaiten_0x80ACB400/ovl_Bg_Fu_Kaiten_0x80ACB400.c +++ b/src/actors/ovl_Bg_Fu_Kaiten_0x80ACB400/ovl_Bg_Fu_Kaiten_0x80ACB400.c @@ -36,7 +36,7 @@ z_ActorInit bgBgFuKaitenInitVar = { f32 D_80ACB650 = 0.002; -// This starts with 3 NOPs, is this another section? +// Overlay info GLOBAL_ASM( .data glabel D_80ACB654 diff --git a/src/actors/ovl_Bg_Ikana_Ray_0x80BD53C0/ovl_Bg_Ikana_Ray_0x80BD53C0.c b/src/actors/ovl_Bg_Ikana_Ray_0x80BD53C0/ovl_Bg_Ikana_Ray_0x80BD53C0.c index 0529cc35f8..7a13b51c47 100644 --- a/src/actors/ovl_Bg_Ikana_Ray_0x80BD53C0/ovl_Bg_Ikana_Ray_0x80BD53C0.c +++ b/src/actors/ovl_Bg_Ikana_Ray_0x80BD53C0/ovl_Bg_Ikana_Ray_0x80BD53C0.c @@ -55,7 +55,7 @@ z_ActorCompInitEntry bgIkanaRayCompInit[] = { {0, 9, 0x058, 100} }; -// Unused? +// Overlay info GLOBAL_ASM( .data glabel D_80BD562C diff --git a/src/code/z_effect_soft_sprite.c b/src/code/z_effect_soft_sprite.c new file mode 100644 index 0000000000..92db19675e --- /dev/null +++ b/src/code/z_effect_soft_sprite.c @@ -0,0 +1,630 @@ +#include +#include + +void effect_ss_init(z_GlobalContext* ctxt, s32 numEntries) { + u32 i; + z_LoadedParticleEntry* iter; + z_ParticleOverlayTableEntry* iter2; + + EffectSS2Info.data_table = (z_LoadedParticleEntry*)func_80172AC8(&ctxt->unk74, numEntries * sizeof(z_LoadedParticleEntry)); + EffectSS2Info.searchIndex = 0; + EffectSS2Info.size = numEntries; + + for (iter = EffectSS2Info.data_table; iter < EffectSS2Info.data_table + EffectSS2Info.size; iter++) { + effect_ss_reset_entry(iter); + } + + for (i = 0, iter2 = particleOverlayTable; i != 0x27; i++) { + (iter2++)->loadedRamAddr = 0; + } +} + +void effect_ss_clear(z_GlobalContext* ctxt) { + u32 i; + z_LoadedParticleEntry* iter; + z_ParticleOverlayTableEntry* iter2; + void* addr; + + EffectSS2Info.data_table = NULL; + EffectSS2Info.searchIndex = 0; + EffectSS2Info.size = 0; + + // This code is completely useless, as data_table was juest to NULL and size to 0 + for (iter = EffectSS2Info.data_table; iter < EffectSS2Info.data_table + EffectSS2Info.size; iter++) { + effect_ss_delete(iter); + } + + // Free memory from loaded particle overlays + for (i = 0, iter2 = particleOverlayTable; i != 0x27; i++) { + addr = (void*)iter2->loadedRamAddr; + if (addr != NULL) { + func_80102CE0(addr); + } + (iter2++)->loadedRamAddr = 0; + } +} + +z_LoadedParticleEntry* effect_ss_get_table() { + return EffectSS2Info.data_table; +} + +void effect_ss_delete(z_LoadedParticleEntry* a0) { + if (a0->flags & 0x2) { + func_801A72CC((UNK_PTR)&a0->position); + } + + if (a0->flags & 0x4) { + func_801A72CC((UNK_PTR)&a0->unk2C); + } + + effect_ss_reset_entry(a0); +} + +void effect_ss_reset_entry(z_LoadedParticleEntry* particle) { + u32 i; + + particle->type = 0x27; + particle->acceleration.z = 0; + particle->acceleration.y = 0; + particle->acceleration.x = 0; + particle->velocity.z = 0; + particle->velocity.y = 0; + particle->velocity.x = 0; + particle->unk34 = 0; + particle->unk30 = 0; + particle->unk2C = 0; + particle->position.z = 0; + particle->position.y = 0; + particle->position.x = 0; + particle->life = -1; + particle->flags = 0; + particle->priority = 128; + particle->draw = NULL; + particle->update = NULL; + particle->unk38 = 0; + particle->unk3C = 0; + + for (i = 0; i != 13; i++) { + particle->unk40[i] = 0; + } +} + +// XXX Some regalloc differences and instruction ordering +#ifdef NONMATCHING + +s32 effect_ss_find_free_space(u32 priority, u32* tableEntry) { + s32 ret = 0; + s32 i; + + if (EffectSS2Info.size <= EffectSS2Info.searchIndex) { + EffectSS2Info.searchIndex = 0; + } + + // Search for a unused entry + for (i = EffectSS2Info.searchIndex;;) { + if (EffectSS2Info.data_table[i].life == -1) { + ret = 1; + break; + } + + i += 1; + + if (EffectSS2Info.size <= i) { + i = 0; + } + + if (i == EffectSS2Info.searchIndex) break; + } + + if (ret == 1) { + ret = 0; + } else { + // If the entire table is full, look for a lower priority entry instead + for (;;) { + if (priority <= EffectSS2Info.data_table[i].priority && + (priority != EffectSS2Info.data_table[i].priority || (EffectSS2Info.data_table[i].flags & 0x1) == 0)) { + ret = 0; + break; + } + + i += 1; + + if (EffectSS2Info.size <= i) { + i = 0; + } + + if (i == EffectSS2Info.searchIndex) { + ret = 1; + return ret; + } + } + + } + + *tableEntry = i; + + return ret; +} + +#else + +GLOBAL_ASM( +glabel effect_ss_find_free_space +/* 010769 0x800B0304 27BDFFF8 */ addiu $sp, $sp, -8 +/* 010770 0x800B0308 AFB00004 */ sw $s0, 0X4($sp) +/* 010771 0x800B030C 3C06801B */ lui $a2, %hi(EffectSS2Info) +/* 010772 0x800B0310 24C6E3A0 */ addiu $a2, %lo(EffectSS2Info) +/* 010773 0x800B0314 00808025 */ move $s0, $a0 +/* 010774 0x800B0318 AFA5000C */ sw $a1, 0XC($sp) +/* 010775 0x800B031C 8CC20004 */ lw $v0, 0X4($a2) +/* 010776 0x800B0320 8CC30008 */ lw $v1, 0X8($a2) +/* 010777 0x800B0324 00002825 */ move $a1, $zero +/* 010778 0x800B0328 2408FFFF */ li $t0, -1 +/* 010779 0x800B032C 0043082A */ slt $at, $v0, $v1 +/* 010780 0x800B0330 14200003 */ bnez $at, .L_800B0340 +/* 010781 0x800B0334 00000000 */ nop +/* 010782 0x800B0338 ACC00004 */ sw $zero, 0X4($a2) +/* 010783 0x800B033C 00001025 */ move $v0, $zero +.L_800B0340: +/* 010784 0x800B0340 3C06801B */ lui $a2, %hi(EffectSS2Info) +/* 010785 0x800B0344 8CC6E3A0 */ lw $a2, %lo(EffectSS2Info)($a2) +/* 010786 0x800B0348 00027080 */ sll $t6, $v0, 2 +/* 010787 0x800B034C 01C27023 */ subu $t6, $t6, $v0 +/* 010788 0x800B0350 000E7140 */ sll $t6, $t6, 5 +/* 010789 0x800B0354 00402025 */ move $a0, $v0 +/* 010790 0x800B0358 00CE3821 */ addu $a3, $a2, $t6 +.L_800B035C: +/* 010791 0x800B035C 84EF005C */ lh $t7, 0X5C($a3) +/* 010792 0x800B0360 550F0004 */ bnel $t0, $t7, .L_800B0374 +/* 010793 0x800B0364 24840001 */ addiu $a0, $a0, 1 +/* 010794 0x800B0368 1000000C */ b .L_800B039C +/* 010795 0x800B036C 24050001 */ li $a1, 1 +/* 010796 0x800B0370 24840001 */ addiu $a0, $a0, 1 +.L_800B0374: +/* 010797 0x800B0374 0083082A */ slt $at, $a0, $v1 +/* 010798 0x800B0378 14200002 */ bnez $at, .L_800B0384 +/* 010799 0x800B037C 00000000 */ nop +/* 010800 0x800B0380 00002025 */ move $a0, $zero +.L_800B0384: +/* 010801 0x800B0384 10820005 */ beq $a0, $v0, .L_800B039C +/* 010802 0x800B0388 0004C080 */ sll $t8, $a0, 2 +/* 010803 0x800B038C 0304C023 */ subu $t8, $t8, $a0 +/* 010804 0x800B0390 0018C140 */ sll $t8, $t8, 5 +/* 010805 0x800B0394 1000FFF1 */ b .L_800B035C +/* 010806 0x800B0398 00D83821 */ addu $a3, $a2, $t8 +.L_800B039C: +/* 010807 0x800B039C 24010001 */ li $at, 1 +/* 010808 0x800B03A0 14A10005 */ bne $a1, $at, .L_800B03B8 +/* 010809 0x800B03A4 00024880 */ sll $t1, $v0, 2 +/* 010810 0x800B03A8 8FB9000C */ lw $t9, 0XC($sp) +/* 010811 0x800B03AC 00001025 */ move $v0, $zero +/* 010812 0x800B03B0 1000001F */ b .L_800B0430 +/* 010813 0x800B03B4 AF240000 */ sw $a0, 0X0($t9) +.L_800B03B8: +/* 010814 0x800B03B8 01224823 */ subu $t1, $t1, $v0 +/* 010815 0x800B03BC 00094940 */ sll $t1, $t1, 5 +/* 010816 0x800B03C0 00402025 */ move $a0, $v0 +/* 010817 0x800B03C4 00C93821 */ addu $a3, $a2, $t1 +.L_800B03C8: +/* 010818 0x800B03C8 90E5005E */ lbu $a1, 0X5E($a3) +/* 010819 0x800B03CC 00B0082A */ slt $at, $a1, $s0 +/* 010820 0x800B03D0 54200008 */ bnezl $at, .L_800B03F4 +/* 010821 0x800B03D4 24840001 */ addiu $a0, $a0, 1 +/* 010822 0x800B03D8 56050013 */ bnel $s0, $a1, .L_800B0428 +/* 010823 0x800B03DC 8FAD000C */ lw $t5, 0XC($sp) +/* 010824 0x800B03E0 94EA005A */ lhu $t2, 0X5A($a3) +/* 010825 0x800B03E4 314B0001 */ andi $t3, $t2, 0X1 +/* 010826 0x800B03E8 5160000F */ beqzl $t3, .L_800B0428 +/* 010827 0x800B03EC 8FAD000C */ lw $t5, 0XC($sp) +/* 010828 0x800B03F0 24840001 */ addiu $a0, $a0, 1 +.L_800B03F4: +/* 010829 0x800B03F4 0083082A */ slt $at, $a0, $v1 +/* 010830 0x800B03F8 14200002 */ bnez $at, .L_800B0404 +/* 010831 0x800B03FC 00000000 */ nop +/* 010832 0x800B0400 00002025 */ move $a0, $zero +.L_800B0404: +/* 010833 0x800B0404 14820003 */ bne $a0, $v0, .L_800B0414 +/* 010834 0x800B0408 00046080 */ sll $t4, $a0, 2 +/* 010835 0x800B040C 10000008 */ b .L_800B0430 +/* 010836 0x800B0410 24020001 */ li $v0, 1 +.L_800B0414: +/* 010837 0x800B0414 01846023 */ subu $t4, $t4, $a0 +/* 010838 0x800B0418 000C6140 */ sll $t4, $t4, 5 +/* 010839 0x800B041C 1000FFEA */ b .L_800B03C8 +/* 010840 0x800B0420 00CC3821 */ addu $a3, $a2, $t4 +/* 010841 0x800B0424 8FAD000C */ lw $t5, 0XC($sp) +.L_800B0428: +/* 010842 0x800B0428 00001025 */ move $v0, $zero +/* 010843 0x800B042C ADA40000 */ sw $a0, 0X0($t5) +.L_800B0430: +/* 010844 0x800B0430 8FB00004 */ lw $s0, 0X4($sp) +/* 010845 0x800B0434 03E00008 */ jr $ra +/* 010846 0x800B0438 27BD0008 */ addiu $sp, $sp, 8 +) + +#endif + +void func_800B043C(z_GlobalContext* ctxt, z_LoadedParticleEntry* a1) { + u32 index; + if (func_8016A01C(ctxt) != 1) { + if (effect_ss_find_free_space(a1->priority, &index) == 0) { + EffectSS2Info.searchIndex = index + 1; + EffectSS2Info.data_table[index] = *a1; + } + } +} + +#ifdef NONMATCHING + +void effect_ss_load_particle(z_GlobalContext* ctxt, u32 type, u32 priority, void* initData) { + u32 index; + u32 initRet; + u32 overlaySize; + z_ParticleOverlayInfo* overlayInfo; + z_ParticleOverlayTableEntry* entry = &particleOverlayTable[type]; + + if (effect_ss_find_free_space(priority, &index) != 0) { + return; + } + + EffectSS2Info.searchIndex = index + 1; + if (entry->vramStart == 0) { + overlayInfo = entry->overlayInfo; + } else { + // XXX this subtraction is done earlier + overlaySize = entry->vramEnd - entry->vramStart; + if (entry->loadedRamAddr == 0) { + entry->loadedRamAddr = (u32)func_80102C88(overlaySize); + + if (entry->loadedRamAddr == 0) { + return; + } + + func_8008501C(entry->vromStart, entry->vromEnd, entry->vramStart, entry->vramEnd, entry->loadedRamAddr); + } + + // XXX this should use a0, but it doesn't + if (entry->overlayInfo != NULL) { + overlayInfo = (z_ParticleOverlayInfo*)(-(entry->vramStart - entry->loadedRamAddr) + (u32)entry->overlayInfo); + } else { + overlayInfo = NULL; + } + } + + if (overlayInfo->init != 0) { + effect_ss_delete(&EffectSS2Info.data_table[index]); + + EffectSS2Info.data_table[index].type = type; + EffectSS2Info.data_table[index].priority = priority; + + initRet = (*overlayInfo->init)(ctxt, index, &EffectSS2Info.data_table[index], initData); + + if (initRet == 0) { + effect_ss_reset_entry(&EffectSS2Info.data_table[index]); + } + } +} + +#else + +GLOBAL_ASM( +glabel effect_ss_load_particle +/* 010885 0x800B04D4 27BDFFC0 */ addiu $sp, $sp, -64 +/* 010886 0x800B04D8 AFBF001C */ sw $ra, 0X1C($sp) +/* 010887 0x800B04DC AFA40040 */ sw $a0, 0X40($sp) +/* 010888 0x800B04E0 AFA50044 */ sw $a1, 0X44($sp) +/* 010889 0x800B04E4 AFA60048 */ sw $a2, 0X48($sp) +/* 010890 0x800B04E8 AFA7004C */ sw $a3, 0X4C($sp) +/* 010891 0x800B04EC 8FA40048 */ lw $a0, 0X48($sp) +/* 010892 0x800B04F0 0C02C0C1 */ jal effect_ss_find_free_space +/* 010893 0x800B04F4 27A5003C */ addiu $a1, $sp, 60 +/* 010894 0x800B04F8 1440005C */ bnez $v0, .L_800B066C +/* 010895 0x800B04FC 8FAE003C */ lw $t6, 0X3C($sp) +/* 010896 0x800B0500 8FB80044 */ lw $t8, 0X44($sp) +/* 010897 0x800B0504 3C09801B */ lui $t1, %hi(particleOverlayTable) +/* 010898 0x800B0508 25CF0001 */ addiu $t7, $t6, 1 +/* 010899 0x800B050C 0018C8C0 */ sll $t9, $t8, 3 +/* 010900 0x800B0510 0338C823 */ subu $t9, $t9, $t8 +/* 010901 0x800B0514 3C01801B */ lui $at, %hi(D_801AE3A4) +/* 010902 0x800B0518 0019C880 */ sll $t9, $t9, 2 +/* 010903 0x800B051C 2529E4A0 */ addiu $t1, %lo(particleOverlayTable) +/* 010904 0x800B0520 AC2FE3A4 */ sw $t7, %lo(D_801AE3A4)($at) +/* 010905 0x800B0524 03291821 */ addu $v1, $t9, $t1 +/* 010906 0x800B0528 8C620008 */ lw $v0, 0X8($v1) +/* 010907 0x800B052C 8C6A000C */ lw $t2, 0XC($v1) +/* 010908 0x800B0530 14400003 */ bnez $v0, .L_800B0540 +/* 010909 0x800B0534 01422023 */ subu $a0, $t2, $v0 +/* 010910 0x800B0538 1000001B */ b .L_800B05A8 +/* 010911 0x800B053C 8C620014 */ lw $v0, 0X14($v1) +.L_800B0540: +/* 010912 0x800B0540 8C6B0010 */ lw $t3, 0X10($v1) +/* 010913 0x800B0544 5560000F */ bnezl $t3, .L_800B0584 +/* 010914 0x800B0548 8C620014 */ lw $v0, 0X14($v1) +/* 010915 0x800B054C 0C040B22 */ jal func_80102C88 +/* 010916 0x800B0550 AFA30028 */ sw $v1, 0X28($sp) +/* 010917 0x800B0554 8FA30028 */ lw $v1, 0X28($sp) +/* 010918 0x800B0558 10400044 */ beqz $v0, .L_800B066C +/* 010919 0x800B055C AC620010 */ sw $v0, 0X10($v1) +/* 010920 0x800B0560 8C640000 */ lw $a0, 0X0($v1) +/* 010921 0x800B0564 8C650004 */ lw $a1, 0X4($v1) +/* 010922 0x800B0568 8C660008 */ lw $a2, 0X8($v1) +/* 010923 0x800B056C 8C67000C */ lw $a3, 0XC($v1) +/* 010924 0x800B0570 AFA30028 */ sw $v1, 0X28($sp) +/* 010925 0x800B0574 0C021407 */ jal func_8008501C +/* 010926 0x800B0578 AFA20010 */ sw $v0, 0X10($sp) +/* 010927 0x800B057C 8FA30028 */ lw $v1, 0X28($sp) +/* 010928 0x800B0580 8C620014 */ lw $v0, 0X14($v1) +.L_800B0584: +/* 010929 0x800B0584 00002025 */ move $a0, $zero +/* 010930 0x800B0588 10400006 */ beqz $v0, .L_800B05A4 +/* 010931 0x800B058C 00000000 */ nop +/* 010932 0x800B0590 8C6D0008 */ lw $t5, 0X8($v1) +/* 010933 0x800B0594 8C6E0010 */ lw $t6, 0X10($v1) +/* 010934 0x800B0598 01AE7823 */ subu $t7, $t5, $t6 +/* 010935 0x800B059C 10000001 */ b .L_800B05A4 +/* 010936 0x800B05A0 004F2023 */ subu $a0, $v0, $t7 +.L_800B05A4: +/* 010937 0x800B05A4 00801025 */ move $v0, $a0 +.L_800B05A8: +/* 010938 0x800B05A8 8C580004 */ lw $t8, 0X4($v0) +/* 010939 0x800B05AC 8FB9003C */ lw $t9, 0X3C($sp) +/* 010940 0x800B05B0 3C0A801B */ lui $t2, %hi(EffectSS2Info) +/* 010941 0x800B05B4 1300002D */ beqz $t8, .L_800B066C +/* 010942 0x800B05B8 00194880 */ sll $t1, $t9, 2 +/* 010943 0x800B05BC 8D4AE3A0 */ lw $t2, %lo(EffectSS2Info)($t2) +/* 010944 0x800B05C0 01394823 */ subu $t1, $t1, $t9 +/* 010945 0x800B05C4 00094940 */ sll $t1, $t1, 5 +/* 010946 0x800B05C8 AFA20030 */ sw $v0, 0X30($sp) +/* 010947 0x800B05CC 0C02C084 */ jal effect_ss_delete +/* 010948 0x800B05D0 012A2021 */ addu $a0, $t1, $t2 +/* 010949 0x800B05D4 8FAD003C */ lw $t5, 0X3C($sp) +/* 010950 0x800B05D8 24030060 */ li $v1, 96 +/* 010951 0x800B05DC 3C08801B */ lui $t0, %hi(EffectSS2Info) +/* 010952 0x800B05E0 01A30019 */ multu $t5, $v1 +/* 010953 0x800B05E4 2508E3A0 */ addiu $t0, %lo(EffectSS2Info) +/* 010954 0x800B05E8 8D0C0000 */ lw $t4, 0X0($t0) +/* 010955 0x800B05EC 8FAB0044 */ lw $t3, 0X44($sp) +/* 010956 0x800B05F0 8FA20030 */ lw $v0, 0X30($sp) +/* 010957 0x800B05F4 00007012 */ mflo $t6 +/* 010958 0x800B05F8 018E7821 */ addu $t7, $t4, $t6 +/* 010959 0x800B05FC A1EB005F */ sb $t3, 0X5F($t7) +/* 010960 0x800B0600 8FA9003C */ lw $t1, 0X3C($sp) +/* 010961 0x800B0604 8D190000 */ lw $t9, 0X0($t0) +/* 010962 0x800B0608 8FB80048 */ lw $t8, 0X48($sp) +/* 010963 0x800B060C 01230019 */ multu $t1, $v1 +/* 010964 0x800B0610 00005012 */ mflo $t2 +/* 010965 0x800B0614 032A6821 */ addu $t5, $t9, $t2 +/* 010966 0x800B0618 A1B8005E */ sb $t8, 0X5E($t5) +/* 010967 0x800B061C 8FA5003C */ lw $a1, 0X3C($sp) +/* 010968 0x800B0620 8C590004 */ lw $t9, 0X4($v0) +/* 010969 0x800B0624 8D0B0000 */ lw $t3, 0X0($t0) +/* 010970 0x800B0628 00A30019 */ multu $a1, $v1 +/* 010971 0x800B062C 8FA7004C */ lw $a3, 0X4C($sp) +/* 010972 0x800B0630 8FA40040 */ lw $a0, 0X40($sp) +/* 010973 0x800B0634 00007012 */ mflo $t6 +/* 010974 0x800B0638 01CB3021 */ addu $a2, $t6, $t3 +/* 010975 0x800B063C 0320F809 */ jalr $t9 +/* 010976 0x800B0640 00000000 */ nop +/* 010977 0x800B0644 14400009 */ bnez $v0, .L_800B066C +/* 010978 0x800B0648 24030060 */ li $v1, 96 +/* 010979 0x800B064C 8FAF003C */ lw $t7, 0X3C($sp) +/* 010980 0x800B0650 3C0A801B */ lui $t2, %hi(EffectSS2Info) +/* 010981 0x800B0654 8D4AE3A0 */ lw $t2, %lo(EffectSS2Info)($t2) +/* 010982 0x800B0658 01E30019 */ multu $t7, $v1 +/* 010983 0x800B065C 00004812 */ mflo $t1 +/* 010984 0x800B0660 012A2021 */ addu $a0, $t1, $t2 +/* 010985 0x800B0664 0C02C09C */ jal effect_ss_reset_entry +/* 010986 0x800B0668 00000000 */ nop +.L_800B066C: +/* 010987 0x800B066C 8FBF001C */ lw $ra, 0X1C($sp) +/* 010988 0x800B0670 27BD0040 */ addiu $sp, $sp, 64 +/* 010989 0x800B0674 03E00008 */ jr $ra +/* 010990 0x800B0678 00000000 */ nop +) + +#endif + +// XXX regalloc is wrong +#ifdef NONMATCHING + +void effect_ss_update_particle(z_GlobalContext* ctxt, u32 index) { + z_LoadedParticleEntry* particle = &EffectSS2Info.data_table[index]; + + if (particle->update != NULL) { + particle->velocity.x += particle->acceleration.x; + particle->velocity.y += particle->acceleration.y; + particle->velocity.z += particle->acceleration.z; + + particle->position.x += particle->velocity.x; + particle->position.y += particle->velocity.y; + particle->position.z += particle->velocity.z; + + (*particle->update)(ctxt); + } +} + +#else + +GLOBAL_ASM( +glabel effect_ss_update_particle +/* 010991 0x800B067C 27BDFFE8 */ addiu $sp, $sp, -24 +/* 010992 0x800B0680 AFBF0014 */ sw $ra, 0X14($sp) +/* 010993 0x800B0684 3C0F801B */ lui $t7, %hi(EffectSS2Info) +/* 010994 0x800B0688 8DEFE3A0 */ lw $t7, %lo(EffectSS2Info)($t7) +/* 010995 0x800B068C 00057080 */ sll $t6, $a1, 2 +/* 010996 0x800B0690 01C57023 */ subu $t6, $t6, $a1 +/* 010997 0x800B0694 000E7140 */ sll $t6, $t6, 5 +/* 010998 0x800B0698 01CF3021 */ addu $a2, $t6, $t7 +/* 010999 0x800B069C 8CC20024 */ lw $v0, 0X24($a2) +/* 011000 0x800B06A0 5040001B */ beqzl $v0, .L_800B0710 +/* 011001 0x800B06A4 8FBF0014 */ lw $ra, 0X14($sp) +/* 011002 0x800B06A8 C4C4000C */ lwc1 $f4, 0XC($a2) +/* 011003 0x800B06AC C4C60018 */ lwc1 $f6, 0X18($a2) +/* 011004 0x800B06B0 C4CA0010 */ lwc1 $f10, 0X10($a2) +/* 011005 0x800B06B4 C4D0001C */ lwc1 $f16, 0X1C($a2) +/* 011006 0x800B06B8 46062200 */ add.s $f8, $f4, $f6 +/* 011007 0x800B06BC C4C60020 */ lwc1 $f6, 0X20($a2) +/* 011008 0x800B06C0 C4C40014 */ lwc1 $f4, 0X14($a2) +/* 011009 0x800B06C4 46105480 */ add.s $f18, $f10, $f16 +/* 011010 0x800B06C8 E4C8000C */ swc1 $f8, 0XC($a2) +/* 011011 0x800B06CC C4D0000C */ lwc1 $f16, 0XC($a2) +/* 011012 0x800B06D0 C4CA0000 */ lwc1 $f10, 0X0($a2) +/* 011013 0x800B06D4 46062200 */ add.s $f8, $f4, $f6 +/* 011014 0x800B06D8 E4D20010 */ swc1 $f18, 0X10($a2) +/* 011015 0x800B06DC C4C60010 */ lwc1 $f6, 0X10($a2) +/* 011016 0x800B06E0 46105480 */ add.s $f18, $f10, $f16 +/* 011017 0x800B06E4 E4C80014 */ swc1 $f8, 0X14($a2) +/* 011018 0x800B06E8 C4C40004 */ lwc1 $f4, 0X4($a2) +/* 011019 0x800B06EC C4D00014 */ lwc1 $f16, 0X14($a2) +/* 011020 0x800B06F0 C4CA0008 */ lwc1 $f10, 0X8($a2) +/* 011021 0x800B06F4 E4D20000 */ swc1 $f18, 0X0($a2) +/* 011022 0x800B06F8 46062200 */ add.s $f8, $f4, $f6 +/* 011023 0x800B06FC 46105480 */ add.s $f18, $f10, $f16 +/* 011024 0x800B0700 E4C80004 */ swc1 $f8, 0X4($a2) +/* 011025 0x800B0704 0040F809 */ jalr $v0 +/* 011026 0x800B0708 E4D20008 */ swc1 $f18, 0X8($a2) +/* 011027 0x800B070C 8FBF0014 */ lw $ra, 0X14($sp) +.L_800B0710: +/* 011028 0x800B0710 27BD0018 */ addiu $sp, $sp, 24 +/* 011029 0x800B0714 03E00008 */ jr $ra +/* 011030 0x800B0718 00000000 */ nop +) + +#endif + +void effect_ss_update_all_particles(z_GlobalContext* ctxt) { + s32 i; + + for (i = 0; i < EffectSS2Info.size; i++) { + if (EffectSS2Info.data_table[i].life > -1) { + EffectSS2Info.data_table[i].life--; + + if (EffectSS2Info.data_table[i].life < 0) { + effect_ss_delete(&EffectSS2Info.data_table[i]); + } + } + + if (EffectSS2Info.data_table[i].life > -1) { + effect_ss_update_particle(ctxt, i); + } + } +} + +// XXX regalloc is wrong +#ifdef NONMATCHING + +void effect_ss_draw_particle(z_GlobalContext* ctxt, s32 index) { + z_LoadedParticleEntry* entry = &EffectSS2Info.data_table[index]; + if (entry->draw != 0) { + (*entry->draw)(ctxt); + } +} + +#else + +GLOBAL_ASM( +glabel effect_ss_draw_particle +/* 011078 0x800B07D8 27BDFFE8 */ addiu $sp, $sp, -24 +/* 011079 0x800B07DC AFBF0014 */ sw $ra, 0X14($sp) +/* 011080 0x800B07E0 3C0F801B */ lui $t7, %hi(EffectSS2Info) +/* 011081 0x800B07E4 8DEFE3A0 */ lw $t7, %lo(EffectSS2Info)($t7) +/* 011082 0x800B07E8 00057080 */ sll $t6, $a1, 2 +/* 011083 0x800B07EC 01C57023 */ subu $t6, $t6, $a1 +/* 011084 0x800B07F0 000E7140 */ sll $t6, $t6, 5 +/* 011085 0x800B07F4 01CF3021 */ addu $a2, $t6, $t7 +/* 011086 0x800B07F8 8CC20028 */ lw $v0, 0X28($a2) +/* 011087 0x800B07FC 50400004 */ beqzl $v0, .L_800B0810 +/* 011088 0x800B0800 8FBF0014 */ lw $ra, 0X14($sp) +/* 011089 0x800B0804 0040F809 */ jalr $v0 +/* 011090 0x800B0808 00000000 */ nop +/* 011091 0x800B080C 8FBF0014 */ lw $ra, 0X14($sp) +.L_800B0810: +/* 011092 0x800B0810 27BD0018 */ addiu $sp, $sp, 24 +/* 011093 0x800B0814 03E00008 */ jr $ra +/* 011094 0x800B0818 00000000 */ nop +) + +#endif + +void effect_ss_draw_all_particles(z_GlobalContext* ctxt) { + UNK_TYPE s0; + s32 i; + + s0 = func_80102580(&ctxt->unk818, ctxt->unk0); + func_801022F0(s0, ctxt->unk818, 0, ctxt); + func_80101BC8(s0, ctxt->unk0); + + for (i = 0; i < EffectSS2Info.size; i++) { + if (EffectSS2Info.data_table[i].life > -1) { + if (EffectSS2Info.data_table[i].position.x > 32000 || + EffectSS2Info.data_table[i].position.x < -32000 || + EffectSS2Info.data_table[i].position.y > 32000 || + EffectSS2Info.data_table[i].position.y < -32000 || + EffectSS2Info.data_table[i].position.z > 32000 || + EffectSS2Info.data_table[i].position.z < -32000 + ) { + effect_ss_delete(&EffectSS2Info.data_table[i]); + } else { + effect_ss_draw_particle(ctxt, i); + } + } + } +} + +#ifdef NONMATCHING + +s16 func_800B096C(s16 a0, s16 a1, s32 a2) { + s16 ret; + + if (a2 == 0) { + ret = a1; + } else { + // XXX result of the division is put in t0 instead of t8 + ret = a0 + (s16)((a1 - a0) / (f32)a2); + } + + return ret; +} + +#else + +GLOBAL_ASM( +glabel func_800B096C +/* 011179 0x800B096C AFA40000 */ sw $a0, 0X0($sp) +/* 011180 0x800B0970 AFA50004 */ sw $a1, 0X4($sp) +/* 011181 0x800B0974 00052C00 */ sll $a1, $a1, 16 +/* 011182 0x800B0978 00042400 */ sll $a0, $a0, 16 +/* 011183 0x800B097C 00042403 */ sra $a0, $a0, 16 +/* 011184 0x800B0980 00052C03 */ sra $a1, $a1, 16 +/* 011185 0x800B0984 14C00004 */ bnez $a2, .L_800B0998 +/* 011186 0x800B0988 00A47023 */ subu $t6, $a1, $a0 +/* 011187 0x800B098C 00051C00 */ sll $v1, $a1, 16 +/* 011188 0x800B0990 1000000C */ b .L_800B09C4 +/* 011189 0x800B0994 00031C03 */ sra $v1, $v1, 16 +.L_800B0998: +/* 011190 0x800B0998 448E2000 */ mtc1 $t6, $f4 +/* 011191 0x800B099C 44864000 */ mtc1 $a2, $f8 +/* 011192 0x800B09A0 468021A0 */ cvt.s.w $f6, $f4 +/* 011193 0x800B09A4 468042A0 */ cvt.s.w $f10, $f8 +/* 011194 0x800B09A8 460A3403 */ div.s $f16, $f6, $f10 +/* 011195 0x800B09AC 4600848D */ trunc.w.s $f18, $f16 +/* 011196 0x800B09B0 44189000 */ mfc1 $t8, $f18 +/* 011197 0x800B09B4 00000000 */ nop +/* 011198 0x800B09B8 00981821 */ addu $v1, $a0, $t8 +/* 011199 0x800B09BC 00031C00 */ sll $v1, $v1, 16 +/* 011200 0x800B09C0 00031C03 */ sra $v1, $v1, 16 +.L_800B09C4: +/* 011201 0x800B09C4 00601025 */ move $v0, $v1 +/* 011202 0x800B09C8 03E00008 */ jr $ra +/* 011203 0x800B09CC 00000000 */ nop +) + +#endif + +s16 func_800B09D0(s16 a0, s16 a1, f32 a2) { + return a2 * (a1 - a0) + a0; +} + +u8 func_800B0A24(u8 a0, u8 a1, f32 a2) { + return a2 * ((f32)a1 - (f32)a0) + a0; +} diff --git a/undef.txt b/undef.txt index 83ac07c415..c6a18adcd9 100644 --- a/undef.txt +++ b/undef.txt @@ -2491,7 +2491,7 @@ D_801AE338 = 0x801AE338; D_801AE34C = 0x801AE34C; D_801AE374 = 0x801AE374; D_801AE388 = 0x801AE388; -D_801AE3A0 = 0x801AE3A0; +EffectSS2Info = 0x801AE3A0; D_801AE3A4 = 0x801AE3A4; D_801AE3B0 = 0x801AE3B0; D_801AE3B4 = 0x801AE3B4; @@ -2517,7 +2517,7 @@ D_801AE488 = 0x801AE488; D_801AE489 = 0x801AE489; D_801AE48C = 0x801AE48C; D_801AE490 = 0x801AE490; -D_801AE4A0 = 0x801AE4A0; +particleOverlayTable = 0x801AE4A0; D_801AE4B0 = 0x801AE4B0; D_801AE4BC = 0x801AE4BC; D_801AE8F0 = 0x801AE8F0; diff --git a/variables.py b/variables.py index 4ec51c5503..8cef013f6d 100644 --- a/variables.py +++ b/variables.py @@ -150,6 +150,8 @@ known_vars = { 0x801AE084:("D_801AE084","u8",True), 0x801AE194:("D_801AE194","s32",True), # length 32 0x801AE214:("D_801AE214","u8",True), # length 32 + 0x801AE3A0:("EffectSS2Info","z_EffectTableInfo",False), + 0x801AE4A0:("particleOverlayTable","z_ParticleOverlayTableEntry",True), # length 0x28 0x801AEFD0:("","s800BF9A0",False), 0x801B4610:("","UNK_TYPE",False), 0x801B9F20:("","s800E03A0",False), # actually an array of size 23?