diff --git a/include/common_structs.h b/include/common_structs.h index 3798cb5c46..13038dca22 100644 --- a/include/common_structs.h +++ b/include/common_structs.h @@ -743,7 +743,7 @@ typedef struct BattleStatus { /* 0x170 */ s8 nextEnemyIndex; /* (during enemy turn) who should go next */ /* 0x171 */ s8 numEnemyActors; /* 0x172 */ s16 activeEnemyActorID; /* (during enemy turn) enemy currently using their move */ - /* 0x174 */ struct Actor* currentTurnEnemy; + /* 0x174 */ struct Actor* currentTurnEnemy; /* 0x178 */ s8 moveCategory; ///< 0 = jump, 1 = hammer, 5 = partner, ... /* 0x179 */ char unk_179; /* 0x17A */ s16 selectedItemID; @@ -2120,7 +2120,7 @@ typedef struct struct802E4B10 { typedef struct { /* 0x00000 */ LookAt lookAt; /* 0x00020 */ char unk_20[0x10]; - /* 0x00030 */ Matrix4s camPerspMatrix[8]; // could only be length 4, unsure + /* 0x00030 */ Mtx camPerspMatrix[8]; // could only be length 4, unsure /* 0x00230 */ Gfx mainGfx[0x2080]; /* 0x10630 */ Gfx backgroundGfx[0x200]; // used by gfx_task_background /* 0x11630 */ Mtx matrixStack[0x200]; diff --git a/src/101b90_len_8f0.c b/src/101b90_len_8f0.c index 88a4b6d661..261a060e2e 100644 --- a/src/101b90_len_8f0.c +++ b/src/101b90_len_8f0.c @@ -1,8 +1,6 @@ #include "common.h" #include "sprite.h" -extern s32 spr_allocateBtlComponentsOnWorldHeap; - typedef struct UnkSpr10 { /* 0x00 */ s32 unk_00; /* 0x04 */ char unk_04[0xC]; diff --git a/src/182B30.c b/src/182B30.c index 8bdd5cfb69..0ba4880e0a 100644 --- a/src/182B30.c +++ b/src/182B30.c @@ -315,7 +315,7 @@ void func_80254C50(Actor* actor) { guMtxCatF(sp258, sp1D8, sp218); temp_s0_2 = partTable->opacity; partTable->opacity = phi_s6 - (sp29C * phi_s4); - func_802591EC(0, partTable, clamp_angle(scale + 0xB4), &sp218, 1); + func_802591EC(0, partTable, clamp_angle(scale + 180), &sp218, 1); partTable->opacity = temp_s0_2; } } @@ -752,19 +752,19 @@ INCLUDE_ASM(s32, "182B30", func_802597B0); INCLUDE_ASM(s32, "182B30", func_8025995C); -void func_80259A48(s32 arg0, ActorPart* arg1, s32 arg2, s32 arg3) { - DecorationTable* decorationTable = arg1->decorationTable; +void func_80259A48(s32 arg0, ActorPart* part, s32 arg2, s32 arg3) { + DecorationTable* decorationTable = part->decorationTable; if (decorationTable->unk_6C1 != 0) { - arg1->verticalStretch = 1; - arg1->unkOffset[0] = 0; - arg1->unkOffset[1] = 0; + part->verticalStretch = 1; + part->unkOffset[0] = 0; + part->unkOffset[1] = 0; decorationTable->unk_6C1 = 0; } if (arg0 == 0) { - func_802597B0(arg1, arg2, arg3); + func_802597B0(part, arg2, arg3); } else { - func_8025950C(arg1, arg2, arg3); + func_8025950C(part, arg2, arg3); } } diff --git a/src/26840_len_20d0.c b/src/26840_len_20d0.c index 5ef89b522f..3fbb7c67ef 100644 --- a/src/26840_len_20d0.c +++ b/src/26840_len_20d0.c @@ -1,6 +1,30 @@ #include "common.h" #include "audio.h" +void snd_SEFCmd_00_SetVolume(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_01_SetPan(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_02_SetInstrument(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_03_SetReverb(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_04(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_05(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_06(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_07(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_08(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_09_StartLoop(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_0A_EndLoop(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_0B(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_0C(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_0D(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_0E(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_0F(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_10_Jump(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_13(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_14(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_15(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_16(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_17(SoundManager* manager, SoundPlayer* player); +void snd_SEFCmd_18(SoundManager* manager, SoundPlayer* player); + void func_8004B440(SoundManager* manager, u8 arg1, u8 arg2, UnkAl19E0* arg3, u8 arg4) { u32 i; s32 c = 0x6A25E; @@ -185,30 +209,6 @@ INCLUDE_ASM(s32, "26840_len_20d0", snd_set_voice_volume); INCLUDE_ASM(s32, "26840_len_20d0", func_8004CDF8); -void snd_SEFCmd_00_SetVolume(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_01_SetPan(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_02_SetInstrument(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_03_SetReverb(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_04(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_05(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_06(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_07(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_08(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_09_StartLoop(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_0A_EndLoop(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_0B(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_0C(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_0D(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_0E(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_0F(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_10_Jump(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_13(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_14(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_15(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_16(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_17(SoundManager* manager, SoundPlayer* player); -void snd_SEFCmd_18(SoundManager* manager, SoundPlayer* player); - INCLUDE_ASM(void, "26840_len_20d0", snd_SEFCmd_00_SetVolume, SoundManager* manager, SoundPlayer* player); void snd_SEFCmd_01_SetPan(SoundManager* manager, SoundPlayer* player) { diff --git a/src/2e230_len_2190.c b/src/2e230_len_2190.c index 3b3358f1e0..a940c4f374 100644 --- a/src/2e230_len_2190.c +++ b/src/2e230_len_2190.c @@ -458,6 +458,7 @@ void snd_get_sequence_player_and_track(u32 playerIndex, s32** outCurrentTrackDat default: *outCurrentTrackData = NULL; *outPlayer = NULL; + break; } } @@ -474,6 +475,7 @@ void snd_get_sequence_player(u32 playerIndex, BGMPlayer** outPlayer) { break; default: *outPlayer = NULL; + break; } } @@ -625,7 +627,7 @@ void snd_copy_words(s32* src, s32* dst, s32 num) { num /= 4; if (num > 0) { - if ((((s32) src | (s32) dst) & 3) == 0) { + if (!(((s32) src | (s32) dst) & 3)) { s32* srcIt = src; s32* dstIt = dst; diff --git a/src/a5dd0_len_114e0.c b/src/a5dd0_len_114e0.c index 712203498b..d20135c77b 100644 --- a/src/a5dd0_len_114e0.c +++ b/src/a5dd0_len_114e0.c @@ -944,23 +944,21 @@ s32 D_8014C188[] = { 0xFFFE7960, 0x000F4240, 0x000F4240, 0x000F4240, 0x00000000, s8 D_8014C248[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; // BSS -static s32 B_801512B0[2]; -static ModelCustomGfxBuilderList* gCurrentCustomModelGfxBuildersPtr; -static s32 D_801512BC; -static s32 D_801512C0; -static s32 gEntityHeapBase; -static s32 D_801512C8; -BSS ModelList* gCurrentModels; -static s32 D_801512D0[4]; +extern s32 B_801512B0[2]; +extern ModelCustomGfxBuilderList* gCurrentCustomModelGfxBuildersPtr; +extern s32 D_801512BC; +extern s32 D_801512C0; +extern s32 gEntityHeapBase; +extern s32 D_801512C8; +extern ModelList* gCurrentModels; +extern s32 D_801512D0[4]; extern ModelNode** gCurrentModelTreeRoot; -static ModelTransformGroupList* gCurrentTransformGroups; -static s8 gMsgGlobalWaveCounter[0x4]; -static ModelCustomGfxList* gCurrentCustomModelGfxPtr; -static s32 gLastCreatedEntityIndex; -static s8 B_801512F0[0x410]; -static GameMode gMainGameState[2]; // TODO rename - - +extern ModelTransformGroupList* gCurrentTransformGroups; +extern s8 gMsgGlobalWaveCounter[0x4]; +extern ModelCustomGfxList* gCurrentCustomModelGfxPtr; +extern s32 gLastCreatedEntityIndex; +extern s8 B_801512F0[0x410]; +extern GameMode gMainGameState[2]; // TODO rename extern s32 D_80151300; extern s32 D_80151324; diff --git a/src/bss2.c b/src/bss2.c new file mode 100644 index 0000000000..766fa736dc --- /dev/null +++ b/src/bss2.c @@ -0,0 +1,148 @@ +#include "types.h" + +// This file exists to enforce the order of BSS symbols, since they were reordered in the original rom. + +#ifndef M2CTX +#define BSS __attribute__ ((section (".bss"))) +#else +#define BSS static +#endif + +BSS s32 D_8010C920; +BSS s32 D_8010C924; +BSS s32 D_8010C928; +BSS s32 D_8010C92C; +BSS s32 wPartnerNpc; +BSS s32 D_8010C934; +BSS s32 D_8010C938; +BSS s32 D_8010C93C; +BSS s32 D_8010C940; +BSS s32 gSpinHistoryBufferPos; +BSS char D_8010C948[0x4]; +BSS s32 D_8010C94C; +BSS s32 D_8010C950; +BSS s32 D_8010C954; +BSS s32 D_8010C958; +BSS s32 D_8010C95C; +BSS s32 D_8010C960; +BSS s32 D_8010C964; +BSS s8 D_8010C968; +BSS char D_8010C969; +BSS char D_8010C96A; +BSS s8 D_8010C96B; +BSS s32 D_8010C96C; +BSS s32 D_8010C970; +BSS s32 D_8010C974; +BSS s16 D_8010C978; +BSS s16 D_8010C97A; +BSS s32 D_8010C97C; +BSS s32 D_8010C980; +BSS s32 D_8010C984; +BSS char D_8010C988[0x4]; +BSS s32 D_8010C98C; +BSS s32 D_8010C990; +BSS char D_8010C994[0xC]; +BSS s32 D_8010C9A0; +BSS char D_8010C9A4[0xC]; +BSS s32 D_8010C9B0; +BSS char D_8010C9B4[0xC]; +BSS s32 D_8010C9C0; +BSS char D_8010C9C4[0x4]; +BSS s32 D_8010C9C8; +BSS char D_8010C9CC[0x32C]; +BSS s16 D_8010CCF8; +BSS s16 D_8010CCFA; +BSS s16 D_8010CCFC; +BSS s16 D_8010CCFE; +BSS s32 D_8010CD00; +BSS char D_8010CD04[0xC]; +BSS s16 D_8010CD10; +BSS s16 D_8010CD12; +BSS char D_8010CD14[0xC]; +BSS s32 D_8010CD20; +BSS char D_8010CD24[0xC]; +BSS s32 D_8010CD30; +BSS s32 D_8010CD34; +BSS s32 D_8010CD38; +BSS char D_8010CD3C[0x27C]; +BSS s32 D_8010CFB8; +BSS s32 D_8010CFBC; +BSS s32 wPartnerTetherDistance; +BSS s32 D_8010CFC4; +BSS s16 D_8010CFC8; +BSS s16 D_8010CFCA; +BSS s16 D_8010CFCC; +BSS s16 D_8010CFCE; +BSS s32 D_8010CFD0; +BSS s32 D_8010CFD4; +BSS s32 D_8010CFD8; +BSS s32 D_8010CFDC; +BSS s32 D_8010CFE0; +BSS s32 D_8010CFE4; +BSS s32 D_8010CFE8; +BSS s32 wPartner; +BSS s32 D_8010CFF0; +BSS s32 D_8010CFF4; +BSS char D_8010CFF8[0x8]; +BSS s32 D_8010D000; +BSS char D_8010D004[0x63C]; +BSS s32 D_8010D640; +BSS s32 D_8010D644; +BSS s32 D_8010D648; +BSS s32 D_8010D64C; +BSS s32 D_8010D650; +BSS s8 D_8010D654; +BSS s8 D_8010D655; +BSS s16 D_8010D656; +BSS s16 D_8010D658; +BSS s16 D_8010D65A; +BSS s32 D_8010D65C; +BSS s32 D_8010D660; +BSS s32 D_8010D664; +BSS s32 D_8010D668; +BSS s32 D_8010D66C; +BSS s32 D_8010D670; +BSS s32 D_8010D674; +BSS s32 D_8010D678; +BSS s16 D_8010D67C; +BSS s16 D_8010D67E; +BSS s16 D_8010D680; +BSS s16 D_8010D682; +BSS s16 D_8010D684; +BSS s16 D_8010D686; +BSS s16 D_8010D688; +BSS s16 D_8010D68A; +BSS s16 D_8010D68C; +BSS s8 D_8010D68E; +BSS s8 D_8010D68F; +BSS s8 D_8010D690; +BSS s8 D_8010D691; +BSS s8 D_8010D692; +BSS s8 D_8010D693; +BSS s32 D_8010D694; +BSS s8 D_8010D698; +BSS s8 D_8010D699; +BSS s16 D_8010D69A; +BSS s32 gPopupMenu; +BSS s32 D_8010D6A0; +BSS s32 D_8010D6A4; +BSS char D_8010D6A8[0x8]; +BSS char D_8010D6B0[0x1500]; +BSS char gPartnerActionStatus[0x360]; +BSS char gSpinHistoryPosY[0x18]; +BSS char gSpinHistoryPosX[0x18]; +BSS char gSpinHistoryPosZ[0x18]; +BSS char gUIStatus[0x3A]; +BSS s16 D_8010EF92; +BSS char D_8010EF94[0x8]; +BSS s8 D_8010EF9C; +BSS s8 D_8010EF9D; +BSS s8 D_8010EF9E; +BSS char D_8010EF9F; +BSS char D_8010EFA0[0x28]; +BSS s8 gPlayerStatus[0xB4]; +BSS s32 gPlayerActionState; +BSS s8 gPlayerAnimation[0x1D0]; +BSS s8 gPlayerSpinState[0x40]; +BSS s8 gPlayerData[0x428]; +BSS s8 gSpinHistoryPosAngle[0x18]; diff --git a/src/bss3.c b/src/bss3.c new file mode 100644 index 0000000000..e3fa24cb45 --- /dev/null +++ b/src/bss3.c @@ -0,0 +1,286 @@ +#include "types.h" + +// This file exists to enforce the order of BSS symbols, since they were reordered in the original rom. + +#ifndef M2CTX +#define BSS __attribute__ ((section (".bss"))) +#else +#define BSS static +#endif + +BSS s32 D_801512B0; +BSS s32 D_801512B4; +BSS s32 gCurrentCustomModelGfxBuildersPtr; +BSS s32 D_801512BC; +BSS s32 D_801512C0; +BSS s32 gEntityHeapBase; +BSS s32 D_801512C8; +BSS s32 gCurrentModels; +BSS s32 D_801512D0; +BSS s32 gAnimCount; +BSS s16 gMsgBGScrollAmtX; +BSS s16 D_801512DA; +BSS s32 D_801512DC; +BSS s32 gCurrentTransformGroups; +BSS s32 gMsgGlobalWaveCounter; +BSS s32 gCurrentCustomModelGfxPtr; +BSS s32 gLastCreatedEntityIndex; +BSS s32 D_801512F0; +BSS s32 gMsgVarImages; +BSS s32 D_801512F8; +BSS s32 gCurrentModelTreeRoot; +BSS s32 D_80151300; +BSS s32 D_80151304; +BSS s32 D_80151308; +BSS s16 gMsgBGScrollAmtY; +BSS s16 D_8015130E; +BSS s32 D_80151310; +BSS s32 D_80151314; +BSS s32 gEntityModelCount; +BSS s32 D_8015131C; +BSS char D_80151320[0x4]; +BSS s32 D_80151324; +BSS s32 D_80151328; +BSS s32 D_8015132C; +BSS s32 D_80151330; +BSS s32 gTriggerCount; +BSS s32 D_80151338; +BSS s32 D_8015133C; +BSS s32 gCurrentDoorSoundsSet; +BSS s32 D_80151344; +BSS char D_80151348[0x38]; +BSS s8 gWorldEntityList[0x78]; +BSS s8 gBattleEntityList[0x78]; +BSS s32 gCurrentEntityListPtr; +BSS char D_80151474[0x4]; +BSS s8 gWorldShadowList[0xF0]; +BSS s8 gBattleShadowList[0xF0]; +BSS s32 gCurrentShadowListPtr; +BSS s32 wStaticEntityDataSize; +BSS s32 bStaticEntityDataSize; +BSS char D_80151664[0x4]; +BSS s8 wStaticEntityData[0x74]; +BSS s32 D_801516DC; +BSS char D_8015DCE0[0x8]; +BSS s8 bStaticEntityData[0x14]; +BSS s32 D_801516FC; +BSS s8 gMainGameState[0x40]; +BSS s8 gCurrentTileDescriptor[0x30]; +BSS s8 wModelList[0x400]; +BSS s8 bModelList[0x400]; +BSS s8 wTransformGroups[0x10]; +BSS s8 bTransformGroups[0x10]; +BSS s8 wModelSpecialDls[0x80]; +BSS s8 bModelSpecialDls[0x80]; +BSS s8 wCustomModelGfxBuilders[0x80]; +BSS s8 bCustomModelGfxBuilders[0x80]; +BSS s8 D_80152190[0x40]; +BSS s8 D_801521D0[0x40]; +BSS s32 gCurrentModelLocalVtxBuffers; +BSS s32 D_80152214; +BSS s32 D_80152218; +BSS char D_8015221C[0x4]; +BSS s8 D_80152220[0x800]; +BSS s8 D_80152A20[0x800]; +BSS s8 wBgRenderType; +BSS s8 bBgRenderType; +BSS s8 D_80153222; +BSS s8 D_80153223; +BSS s16 mdl_treeIterPos; +BSS s16 D_80153226; +BSS s8 wFogSettings[0x20]; +BSS s8 bFogSettings[0x1C]; +BSS s32 gCurrentFogSettings; +BSS s8 texPannerMainU[0x40]; +BSS s8 texPannerMainV[0x40]; +BSS s8 texPannerAuxU[0x40]; +BSS s8 texPannerAuxV[0x40]; +BSS s32 mdl_nextTextureAddress; +BSS s16 mdl_currentTransformGroupChildIndex; +BSS s16 D_8015336E; +BSS s32 D_80153370; +BSS s16 D_80153374; +BSS s16 D_80153376; +BSS s8 D_80153378[0x8]; +BSS s8 D_80153380[0x20]; +BSS s8 mdl_renderTaskLists[0xC]; +BSS s32 mdl_renderTaskMode; +BSS s8 mdl_renderTaskCount[0x10]; +BSS s8 D_801533C0[0x300]; +BSS s8 D_801536C0[0x300]; +BSS s8 D_801539C0[0x40]; +BSS s8 D_80153A00[0x40]; +BSS s32 gCurrentAnimMeshListPtr; +BSS s32 gAnimModelFogEnabled; +BSS s8 gAnimModelFogR; +BSS char D_80153A49; +BSS char D_80153A4A; +BSS s8 D_80153A4B; +BSS s8 gAnimModelFogG; +BSS char D_80153A4D; +BSS char D_80153A4E; +BSS s8 D_80153A4F; +BSS s8 gAnimModelFogB; +BSS char D_80153A51; +BSS char D_80153A52; +BSS s8 D_80153A53; +BSS s8 gAnimModelFogA; +BSS char D_80153A55; +BSS char D_80153A56; +BSS s8 D_80153A57; +BSS s32 gAnimModelFogStart; +BSS s32 gAnimModelFogEnd; +BSS s8 D_80153A60[0x8]; +BSS s8 gAnimRotMtx[0x40]; +BSS s8 gAnimScaleMtx[0x40]; +BSS s8 gAnimTranslateMtx[0x40]; +BSS s8 gAnimRotScaleMtx[0x40]; +BSS s8 gAnimTreeRoot[0x8]; +BSS s8 gWorldEntityModelList[0x400]; +BSS s8 gBattleEntityModelList[0x400]; +BSS s32 gCurrentEntityModelList; +BSS s32 D_80154374; +BSS s32 entity_fog_enabled; +BSS s8 entity_fog_red; +BSS char D_8015437D; +BSS char D_8015437E; +BSS s8 D_8015437F; +BSS s8 entity_fog_green; +BSS char D_80154381; +BSS char D_80154382; +BSS s8 D_80154383; +BSS s8 entity_fog_blue; +BSS char D_80154385; +BSS char D_80154386; +BSS s8 D_80154387; +BSS s8 entity_fog_alpha; +BSS char D_80154389; +BSS char D_8015438A; +BSS s8 D_8015438B; +BSS s32 entity_fog_dist_min; +BSS s32 entity_fog_dist_max; +BSS char D_80154394[0xC]; +BSS s8 gWorldDynamicEntityList[0x40]; +BSS s8 gBattleDynamicEntityList[0x40]; +BSS s32 gCurrentDynamicEntityListPtr; +BSS char D_80154424[0xC]; +BSS s8 gMessageBuffers[0x800]; +BSS s8 gMessagePrinters[0x1008]; +BSS s8 gMessageMsgVars[0x60]; +BSS s8 D_80155C98[0x8]; +BSS s8 gMessageWindowProjMatrix[0x80]; +BSS s32 D_80155D20; +BSS char D_8015DD24[0x50]; +BSS s32 msg_drawState; +BSS char D_8015DD78[0x8]; +BSS s32 D_80155D80; +BSS s32 D_80155D84; +BSS s32 D_80155D88; +BSS s16 D_80155D8C; +BSS s16 D_80155D8E; +BSS s8 D_80155D90[0x10]; +BSS s8 D_80155DA0[0x400]; +BSS s8 D_801561A0[0x400]; +BSS s32 D_801565A0; +BSS s16 D_801565A4; +BSS s16 D_801565A6; +BSS s32 D_801565A8; +BSS char D_801565AC[0x4]; +BSS s8 D_801565B0[0x330]; +BSS s32 D_801568E0; +BSS s32 D_801568E4; +BSS s32 D_801568E8; +BSS s32 D_801568EC; +BSS s32 D_801568F0; +BSS s32 D_801568F4; +BSS s32 D_801568F8; +BSS char D_801568FC[0x4]; +BSS s32 screen_overlay_frontType; +BSS s32 screen_overlay_frontZoom; +BSS s32 screen_overlay_backType; +BSS s32 screen_overlay_backZoom; +BSS s8 D_80156910[0x10]; +BSS s8 D_80156920[0x28]; +BSS s8 D_80156948[0x8]; +BSS s32 fold_vtxBuf; +BSS s32 D_80156954; +BSS s8 D_80156958[0x8]; +BSS s8 D_80156960[0x8]; +BSS s8 D_80156968[0x8]; +BSS s8 D_80156970[0x10]; +BSS s8 fold_groupDescriptors[0x5A0]; +BSS s8 fold_gfxDataCache[0x40]; +BSS s8 D_80156F60[0x500]; +BSS s8 D_80157460[0x500]; +BSS s32 gHudElements; +BSS s32 D_80157964; +BSS s32 D_80157968; +BSS char D_8015796C[0x4]; +BSS s8 D_80157970[0x600]; +BSS s8 D_80157F70[0x600]; +BSS s32 D_80158570; +BSS s32 D_80158574; +BSS char D_80158578[0x8]; +BSS s8 D_80158580[0x600]; +BSS s8 D_80158B80[0x600]; +BSS s8 D_80159180[0x10]; +BSS s8 wTriggerList[0x100]; +BSS s8 bTriggerList[0x100]; +BSS s32 gCurrentTriggerListPtr; +BSS char D_80159394[0xC]; +BSS s8 D_801593A0[0x1FE]; +BSS s16 D_8015959E; +BSS s8 D_801595A0[0x20]; +BSS s8 D_801595C0[0xB0]; +BSS s8 D_80159670[0xB0]; +BSS s8 D_80159720[0xB0]; +BSS s8 D_801597D0[0xB0]; +BSS s8 D_80159880[0x20]; +BSS s8 D_801598A0[0x118]; +BSS s8 D_801599B8[0x118]; +BSS s32 D_80159AD0; +BSS s32 D_80159AD4; +BSS char D_80159AD8[0x8]; +BSS s16 gMusicUnkVolume; +BSS s16 gMusicTargetVolume; +BSS s16 gMusicUnkVolume2; +BSS s16 gMusicCurrentVolume; +BSS char D_80159AE8[0x8]; +BSS s8 gMusicSettings[0x18]; +BSS s8 D_80159B08[0x48]; +BSS s8 D_80159B50[0x200]; +BSS s32 gWindows; +BSS s8 D_80159D54[0xC]; +BSS s8 D_80159D60[0x110]; +BSS s8 D_80159E70[0xC]; +BSS char D_80159E7C; +BSS char D_80159E7D; +BSS char D_80159E7E; +BSS char D_80159E7F; +BSS s8 D_80159E80[0x190]; +BSS s8 D_8015A010[0x60]; +BSS s8 D_8015A070[0xC]; +BSS s8 D_8015A07C[0x164]; +BSS char D_8015A1E0; +BSS char D_8015A1E1; +BSS char D_8015A1E2; +BSS char D_8015A1E3; +BSS s8 D_8015A1E4[0xD8]; +BSS s16 D_8015A2BC; +BSS s16 D_8015A2BE; +BSS char D_8015A2C0[0x10]; +BSS s8 D_8015A2D0[0xA0]; +BSS s8 D_8015A370[0x1E0]; +BSS s8 gCollisionStatus[0x28]; +BSS s16 D_8015A578; +BSS s16 D_8015A57A; +BSS char D_8015A57C[0x14]; +BSS s8 mdl_textureHandles[0x2200]; +BSS s8 D_8015C790[0x30]; +BSS s8 D_8015C7C0[0x10]; +BSS s16 D_8015C7D0; +BSS s16 D_8015C7D2; +BSS char D_8015C7D4[0x4]; +BSS s32 D_8015C7D8; +BSS char D_8015C7DC[0x4]; +BSS s32 D_8015C7E0; diff --git a/src/hud_element.c b/src/hud_element.c index e45a67d0af..3e4ca87ad5 100644 --- a/src/hud_element.c +++ b/src/hud_element.c @@ -1,8 +1,8 @@ #include "common.h" #include "hud_element.h" +#include "nu/nusys.h" -// TODO: probably BSS -extern HudElement** hudElements; +extern HudElementList* gHudElements; s32 D_8014EFC0[] = { 0x00000000, }; s32 D_8014EFC4[] = { 0x00011000, }; @@ -11,25 +11,68 @@ HudElementAnim hud_element_defaultAnim = { he_End, }; -s32 D_8014EFCC[] = { 0x00080008, 0x00200010, 0x00100080, 0x00180018, 0x01200020, 0x00200200, 0x00300030, 0x04800040, - 0x00400800, 0x00080010, 0x00400010, 0x00080040, 0x00100018, 0x00C00010, 0x00200100, 0x00400020, - 0x04000020, 0x00100100, 0x000C000C, 0x00480030, 0x00180240, 0x00200008, 0x00800018, 0x00080060, - 0x00400010, 0x02000010, 0x00400200, 0x00C00020, 0x0C000028, 0x00280320, 0x00180010, 0x00C00020, - 0x00280280, 0x00280010, 0x01400028, 0x001801E0, 0x00200018, 0x01800014, 0x00200000, 0x00220020, - 0x00000028, 0x002803C8, 0x00000000, 0xED000000, 0x005003C0, 0xE7000000, 0x00000000, 0xE3000A11, - 0x00002CF0, 0xE2001E01, 0x00000000, 0xDF000000, 0x00000000, 0xED000000, 0x005003C0, 0xE7000000, - 0x00000000, 0xE3000A11, 0x00002CF0, 0xE2001E01, 0x00000000, 0xDF000000, 0x00000000, - }; -s32 D_8014F0C8[] = { 0xFFF40000, 0x00000000, 0x08000800, 0x000000FF, 0x00330000, 0x00000000, 0x00000800, 0x000000FF, - 0x0033003F, 0x00000000, 0x00000000, 0x000000FF, 0xFFF4003F, 0x00000000, 0x08000000, 0x000000FF, - 0xFFFFFF00, 0xFFFFFF00, - }; -s32 D_8014F110[] = { 0x00000000, 0x00000000, 0x00000000, 0x00000000 }; +Vec3s gHudElementSizes[26] = { + { 8, 8, 32 }, + { 16, 16, 128 }, + { 24, 24, 288 }, + { 32, 32, 512 }, + { 48, 48, 1152 }, + { 64, 64, 2048 }, + { 8, 16, 64 }, + { 16, 8, 64 }, + { 16, 24, 192 }, + { 16, 32, 256 }, + { 64, 32, 1024 }, + { 32, 16, 256 }, + { 12, 12, 72 }, + { 48, 24, 576 }, + { 32, 8, 128 }, + { 24, 8, 96 }, + { 64, 16, 512 }, + { 16, 64, 512 }, + { 192, 32, 3072 }, + { 40, 40, 800 }, + { 24, 16, 192 }, + { 32, 40, 640 }, + { 40, 16, 320 }, + { 40, 24, 480 }, + { 32, 24, 384 }, + { 20, 32, 0 } +}; + +s32 D_8014F062[] = { + 0x00220020, 0x00000028, 0x002803C8, 0x00000000, 0xED000000, 0x005003C0, 0xE7000000, + 0x00000000, 0xE3000A11, 0x00002CF0, 0xE2001E01, 0x00000000, 0xDF000000, 0x00000000, 0xED000000, 0x005003C0, + 0xE7000000, 0x00000000, 0xE3000A11, 0x00002CF0, 0xE2001E01, 0x00000000, 0xDF000000, 0x00000000, +}; + +s32 D_8014F0C8[] = { + 0xFFF40000, 0x00000000, 0x08000800, 0x000000FF, 0x00330000, 0x00000000, 0x00000800, 0x000000FF, + 0x0033003F, 0x00000000, 0x00000000, 0x000000FF, 0xFFF4003F, 0x00000000, 0x08000000, 0x000000FF, +}; + +Lights1 D_8014F108 = { + .a = { + .l = { + .col = { 255, 255, 255 }, + .colc = { 255, 255, 255 }, + } + }, + .l = { + { + .l = { + .col = { 0, 0, 0 }, + .colc = { 0, 0, 0 }, + .dir = { 0, 0, 0}, + } + } + } +}; extern s32 D_801512B4; // no of hud elements? extern s32 D_80159180; -extern HudElement* D_80156F60; -extern HudElement* D_80157460; +extern HudElementList D_80156F60; +extern HudElementList D_80157460; extern void* D_8015133C; extern void* D_80157968; extern void* D_801512C8; @@ -39,9 +82,9 @@ extern void* D_80157F70; extern void* D_80158574; extern void* D_80158580; extern void* D_80158B80; -extern s32 D_80157964; -extern s32 D_80158570; -extern s32 D_80151314; +extern s32* D_80157964; +extern s32* D_80158570; +extern s32* D_80151314; INCLUDE_ASM(void, "hud_element", load_hud_element, HudElement* hudElement, const HudElementAnim* anim); @@ -66,13 +109,13 @@ void init_hud_element_list(void) { D_80158570 = NULL; } - hudElements = &D_80156F60; + gHudElements = &D_80156F60; D_8015133C = &D_80157968; D_801512C8 = &D_80157970; D_801512D0 = &D_80157F70; D_80151314 = D_80157964; } else { - hudElements = &D_80157460; + gHudElements = &D_80157460; D_8015133C = &D_80158574; D_801512C8 = &D_80158580; D_801512D0 = &D_80158B80; @@ -103,41 +146,31 @@ void func_801413F8(void) { gCameras[3].flags &= ~0x6; } -#ifdef NON_EQUIVALENT s32 create_hud_element(const HudElementAnim* anim) { - HudElement *hudElement; + HudElement* hudElement; s32 id; - for (id = 0; id < 320; id++) { - if (hudElements[id] == NULL) { + for (id = 0; id < ARRAY_COUNT(*gHudElements); id++) { + if ((*gHudElements)[id] == NULL) { break; } } - ASSERT(id < 320); + ASSERT(id < ARRAY_COUNT(*gHudElements)); - hudElements[id] = hudElement = heap_malloc(sizeof(HudElement)); + (*gHudElements)[id] = hudElement = heap_malloc(sizeof(HudElement)); D_801512B4 += 1; ASSERT(hudElement != NULL); - hudElement->flags = 1; + hudElement->flags.as_word = 1; hudElement->readPos = anim; if (anim == NULL) { - hudElement->readPos = hud_element_defaultAnim; + hudElement->readPos = &hud_element_defaultAnim; } hudElement->updateTimer = 1; hudElement->drawSizePreset = -1; hudElement->tileSizePreset = -1; - hudElement->screenPosOffset.x = 0; - hudElement->screenPosOffset.y = 0; - hudElement->worldPosOffset.x = 0; - hudElement->worldPosOffset.y = 0; - hudElement->worldPosOffset.z = 0; - hudElement->opacity = 255; - hudElement->tint.r = 255; - hudElement->tint.b = 255; - hudElement->tint.g = 255; hudElement->renderPosX = 0; hudElement->renderPosY = 0; hudElement->ptrPropertyList = (s32*) anim; // TODO: what @@ -145,22 +178,56 @@ s32 create_hud_element(const HudElementAnim* anim) { hudElement->heightScale = X10(1.0f); hudElement->anim = hudElement->readPos; hudElement->uniformScale = 1.0f; + hudElement->screenPosOffset.x = 0; + hudElement->screenPosOffset.y = 0; + hudElement->worldPosOffset.x = 0; + hudElement->worldPosOffset.y = 0; + hudElement->worldPosOffset.z = 0; + hudElement->opacity = 255; + hudElement->tint.r = 255; + hudElement->tint.g = 255; + hudElement->tint.b = 255; if (gGameStatusPtr->isBattle) { - hudElement->flags |= 0x400; + hudElement->flags.as_word |= 0x400; id |= 0x800; } load_hud_element(hudElement, hudElement->readPos); - while (hud_element_update(hudElement) != 0) {} + while (hud_element_update(hudElement) != 0); return id; } -#else -INCLUDE_ASM(s32, "hud_element", create_hud_element, const HudElementAnim* anim); -#endif -INCLUDE_ASM(void, "hud_element", update_hud_elements, void); +// TODO not ideal match - should be able to put loop iterator in the loop def, but can't +void update_hud_elements(void) { + s32 i; + + for (i = 0; i < ARRAY_COUNT(*gHudElements);) { + HudElement* elem = (*gHudElements)[i]; + + if (elem != NULL && (elem->flags.as_word != 0) && !(elem->flags.as_word & 2)) { + if (elem->flags.as_word & 0x40000) { + free_hud_element(i); + i++; + } else if (elem->readPos != 0) { + elem->updateTimer--; + if (elem->updateTimer == 0) { + while (hud_element_update(elem) != 0); + } + if (elem->flags.as_word & 0x100) { + elem->unkImgScale[0] += elem->unk_20; + elem->unkImgScale[1] += elem->unk_24; + } + i++; + } else { + break; + } + } else { + i++; + } + } +} INCLUDE_ASM(s32, "hud_element", hud_element_update, HudElement* hudElement); @@ -172,25 +239,196 @@ INCLUDE_ASM(void, "hud_element", render_hud_element, HudElement* hudElement); INCLUDE_ASM(void, "hud_element", render_hud_elements_world, void); -INCLUDE_ASM(void, "hud_element", func_80143C48, s32 arg0, s32 arg1, s32 arg2); +void func_80143C48(s32 elemID, s32 arg1, s32 camID) { + Camera* camera = &gCameras[camID]; + + if (arg1 > 0) { + if (camera->flags == 0 || (camera->flags & 2)) { + return; + } + + gCurrentCamID = camID; + + gSPViewport(gMasterGfxPos++, &camera->vp); + gSPClearGeometryMode(gMasterGfxPos++, G_SHADE | G_CULL_BOTH | G_FOG | G_LIGHTING | G_TEXTURE_GEN | + G_TEXTURE_GEN_LINEAR | G_LOD | G_SHADING_SMOOTH); + gSPTexture(gMasterGfxPos++, 0, 0, 0, G_TX_RENDERTILE, G_OFF); + gDPPipelineMode(gMasterGfxPos++, G_PM_NPRIMITIVE); + gDPSetTextureLUT(gMasterGfxPos++, G_TT_NONE); + gDPSetTextureFilter(gMasterGfxPos++, G_TF_BILERP); + gDPSetCombineMode(gMasterGfxPos++, G_CC_SHADE, G_CC_SHADE); + gDPSetRenderMode(gMasterGfxPos++, G_RM_OPA_SURF, G_RM_OPA_SURF2); + gSPClipRatio(gMasterGfxPos++, FRUSTRATIO_2); + gDPPipeSync(gMasterGfxPos++); + gDPSetCycleType(gMasterGfxPos++, G_CYC_FILL); + gDPSetColorImage(gMasterGfxPos++, G_IM_FMT_RGBA, G_IM_SIZ_16b, SCREEN_WIDTH, osVirtualToPhysical(nuGfxZBuffer)); + gDPSetFillColor(gMasterGfxPos++, 0xFFFCFFFC); + gDPFillRectangle(gMasterGfxPos++, camera->viewportStartX, camera->viewportStartY, + camera->viewportStartX + camera->viewportW - 1, + camera->viewportStartY + camera->viewportH - 1); + gDPPipeSync(gMasterGfxPos++); + gDPSetColorImage(gMasterGfxPos++, G_IM_FMT_RGBA, G_IM_SIZ_16b, SCREEN_WIDTH, osVirtualToPhysical(nuGfxCfb_ptr)); + gDPPipeSync(gMasterGfxPos++); + + guOrthoF(camera->perspectiveMatrix, 0.0f, 320.0f, -240.0f, 0.0f, -1000.0f, 1000.0f, 1.0f); + guMtxF2L(camera->perspectiveMatrix, &gDisplayContext->camPerspMatrix[gCurrentCamID]); + + gSPMatrix(gMasterGfxPos++, &gDisplayContext->camPerspMatrix[gCurrentCamID], G_MTX_NOPUSH | G_MTX_LOAD | + G_MTX_PROJECTION); + gDPSetScissor(gMasterGfxPos++, G_SC_NON_INTERLACE, 12, 20, 308, 220); + gDPPipeSync(gMasterGfxPos++); + gDPSetCycleType(gMasterGfxPos++, G_CYC_1CYCLE); + gSPClearGeometryMode(gMasterGfxPos++, G_ZBUFFER | G_SHADE | G_CULL_BOTH | G_FOG | G_LIGHTING | + G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR | G_LOD | G_SHADING_SMOOTH); + gSPSetGeometryMode(gMasterGfxPos++, G_ZBUFFER | G_SHADE | G_LIGHTING | G_SHADING_SMOOTH); + gSPSetLights1(gMasterGfxPos++, D_8014F108); + gSPTexture(gMasterGfxPos++, -1, -1, 0, G_TX_RENDERTILE, G_ON); + gDPSetTextureLOD(gMasterGfxPos++, G_TL_TILE); + gDPSetTexturePersp(gMasterGfxPos++, G_TP_PERSP); + gDPSetColorDither(gMasterGfxPos++, G_CD_DISABLE); + gDPSetTextureDetail(gMasterGfxPos++, G_TD_CLAMP); + gDPSetTextureConvert(gMasterGfxPos++, G_TC_FILT); + gDPSetCombineKey(gMasterGfxPos++, G_CK_NONE); + gDPSetAlphaCompare(gMasterGfxPos++, G_AC_NONE); + } + + if (elemID >= 0) { + HudElement* elem; + + elemID &= ~0x800; + elem = (*gHudElements)[elemID]; + + if (elem != NULL) { + if (elem->flags.as_word != 0 && !(elem->flags.as_word & 2)) { + if (!(elem->flags.as_word & 0x10200000)) { + if (elem->flags.as_word & 0x10000) { + if (!(elem->flags.as_word & 0x40) && (elem->drawSizePreset >= 0) && (elem->flags.as_word & 0x80)) { + render_hud_element(elem); + } + } + } + } + } + } +} void func_80144218(s32 arg0) { - func_80143C48(arg0, 1, 3); + func_80143C48(arg0, 1, CAM_CAM3); } void func_80144238(s32 arg0) { - func_80143C48(arg0, 0, 3); + func_80143C48(arg0, 0, CAM_CAM3); } void func_80144258(s32 arg0) { - func_80143C48(arg0, 1, 1); + func_80143C48(arg0, 1, CAM_BATTLE); } void func_80144278(s32 arg0) { - func_80143C48(arg0, 0, 1); + func_80143C48(arg0, 0, CAM_BATTLE); } -INCLUDE_ASM(void, "hud_element", draw_hud_element, s32 id, s32 clipMode); +void draw_hud_element(s32 id, s32 clipMode) { + HudElement* elem = (*gHudElements)[id & ~0x800]; + s32 texSizeX, texSizeY; + s32 drawSizeX, drawSizeY; + s32 offsetX, offsetY; + s32 preset; + + if ((elem->flags.as_word != 0) && !(elem->flags.as_word & 2)) { + if (!(elem->flags.as_word & 0x10200000) && (elem->drawSizePreset >= 0)) { + if (clipMode != 1) { + if (clipMode == 0) { + gDPSetScissor(gMasterGfxPos++, G_SC_NON_INTERLACE, 12, 20, 308, 220); + } + gDPPipeSync(gMasterGfxPos++); + gDPSetCycleType(gMasterGfxPos++, G_CYC_1CYCLE); + gDPSetTexturePersp(gMasterGfxPos++, G_TP_NONE); + gDPSetTextureLOD(gMasterGfxPos++, G_TL_TILE); + gDPSetTextureDetail(gMasterGfxPos++, G_TD_CLAMP); + gDPSetTextureConvert(gMasterGfxPos++, G_TC_FILT); + gDPSetCombineKey(gMasterGfxPos++, G_CK_NONE); + gDPSetAlphaCompare(gMasterGfxPos++, G_AC_NONE); + gDPNoOp(gMasterGfxPos++); + gDPSetColorDither(gMasterGfxPos++, G_CD_DISABLE); + gDPSetAlphaDither(gMasterGfxPos++, G_AD_DISABLE); + gSPTexture(gMasterGfxPos++, -1, -1, 0, G_TX_RENDERTILE, G_ON); + } + + if (!(elem->flags.as_word & 0x100)) { + if (!(elem->flags.as_word & 0x100000)) { + preset = elem->tileSizePreset; + texSizeX = gHudElementSizes[preset].x; + texSizeY = gHudElementSizes[preset].y; + } else { + texSizeX = elem->customImageSize.x; + texSizeY = elem->customImageSize.y; + } + + if (!(elem->flags.as_word & 0x10)) { + if (!(elem->flags.as_word & 0x100000)) { + drawSizeX = gHudElementSizes[elem->drawSizePreset].x; + drawSizeY = gHudElementSizes[elem->drawSizePreset].y; + } else { + drawSizeX = elem->customDrawSize.x; + drawSizeY = elem->customDrawSize.y; + } + } else { + drawSizeX = elem->sizeX; + drawSizeY = elem->sizeY; + } + + do { + offsetX = -drawSizeX / 2; + offsetY = -drawSizeY / 2; + } while (0); // TODO required to match + + if (!(elem->flags.as_word & 0x800)) { + if (elem->flags.as_word & 0x20000000) { + draw_rect_hud_element(elem, texSizeX, texSizeY, drawSizeX, drawSizeY, offsetX, offsetY, TRUE, TRUE); + } + draw_rect_hud_element(elem, texSizeX, texSizeY, drawSizeX, drawSizeY, offsetX, offsetY, TRUE, FALSE); + } else { + if (elem->flags.as_word & 0x20000000) { + draw_rect_hud_element(elem, texSizeX, texSizeY, drawSizeX, drawSizeY, offsetX, offsetY, FALSE, TRUE); + } + draw_rect_hud_element(elem, texSizeX, texSizeY, drawSizeX, drawSizeY, offsetX, offsetY, FALSE, FALSE); + } + } else { + f32 xScaled, yScaled; + + if (!(elem->flags.as_word & 0x100000)) { + preset = elem->tileSizePreset; + texSizeX = gHudElementSizes[preset].x; + texSizeY = gHudElementSizes[preset].y; + } else { + texSizeX = elem->customImageSize.x; + texSizeY = elem->customImageSize.y; + } + + drawSizeX = elem->unkImgScale[0]; + drawSizeY = elem->unkImgScale[1]; + + offsetX = -elem->unkImgScale[0] / 2; + offsetY = -elem->unkImgScale[1] / 2; + + xScaled = (f32) drawSizeX / (f32) texSizeX; + yScaled = (f32) drawSizeY / (f32) texSizeY; + + xScaled = 1.0f / xScaled; + yScaled = 1.0f / yScaled; + + elem->widthScale = X10(xScaled); + elem->heightScale = X10(yScaled); + + if (elem->flags.as_word & 0x20000000) { + draw_rect_hud_element(elem, texSizeX, texSizeY, drawSizeX, drawSizeY, offsetX, offsetY, FALSE, TRUE); + } + draw_rect_hud_element(elem, texSizeX, texSizeY, drawSizeX, drawSizeY, offsetX, offsetY, FALSE, FALSE); + } + } + } +} void draw_hud_element_clipped(s32 id) { draw_hud_element(id, 0); @@ -205,7 +443,7 @@ void draw_hud_element_3(s32 id) { } void set_hud_element_anim(s32 id, const HudElementAnim* anim) { - HudElement* hudElement = hudElements[id & ~0x800]; + HudElement* hudElement = (*gHudElements)[id & ~0x800]; if (anim == NULL) { anim = &hud_element_defaultAnim; @@ -230,58 +468,91 @@ void set_hud_element_anim(s32 id, const HudElementAnim* anim) { } HudElementAnim* get_hud_element_anim(s32 id) { - return hudElements[id & ~0x800]->anim; + return (*gHudElements)[id & ~0x800]->anim; } HudElement* get_hud_element(s32 id) { - return hudElements[id & ~0x800]; + return (*gHudElements)[id & ~0x800]; } void free_hud_element(s32 id) { - if (hudElements[id & ~0x800]->flags.as_word & 0x10000) { + if ((*gHudElements)[id & ~0x800]->flags.as_word & 0x10000) { free_hud_element_transform(id & ~0x800); } - heap_free(hudElements[id & ~0x800]); - hudElements[id & ~0x800] = NULL; + heap_free((*gHudElements)[id & ~0x800]); + (*gHudElements)[id & ~0x800] = NULL; D_801512B4--; } void set_hud_element_render_pos(s32 id, s32 x, s32 y) { - HudElement* hudElement = hudElements[id & ~0x800]; + HudElement* hudElement = (*gHudElements)[id & ~0x800]; hudElement->renderPosX = x; hudElement->renderPosY = y; } void get_hud_element_render_pos(s32 id, s32* x, s32* y) { - HudElement* hudElement = hudElements[id & ~0x800]; + HudElement* hudElement = (*gHudElements)[id & ~0x800]; *x = hudElement->renderPosX; *y = hudElement->renderPosY; } void set_hud_element_render_depth(s32 id, s32 z) { - hudElements[id & ~0x800]->worldPosOffset.z = z; + (*gHudElements)[id & ~0x800]->worldPosOffset.z = z; } void set_hud_element_flags(s32 id, s32 flags) { - hudElements[id & ~0x800]->flags.as_word |= flags; + (*gHudElements)[id & ~0x800]->flags.as_word |= flags; } void clear_hud_element_flags(s32 id, s32 flags) { - hudElements[id & ~0x800]->flags.as_word &= ~flags; + (*gHudElements)[id & ~0x800]->flags.as_word &= ~flags; } INCLUDE_ASM(void, "hud_element", ALT_clear_hud_element_cache, void); -INCLUDE_ASM(void, "hud_element", set_hud_element_scale, s32 index, f32 scale); +void set_hud_element_scale(s32 index, f32 scale) { + HudElement* elem = (*gHudElements)[index & ~0x800]; + s32 drawSizeX; + s32 drawSizeY; + s32 imgSizeX; + s32 imgSizeY; + f32 xScaled, yScaled; + + elem->uniformScale = scale; + if (!(elem->flags.as_word & 0x100000)) { + imgSizeX = gHudElementSizes[elem->tileSizePreset].x; + imgSizeY = gHudElementSizes[elem->tileSizePreset].y; + drawSizeX = gHudElementSizes[elem->drawSizePreset].x; + drawSizeY = gHudElementSizes[elem->drawSizePreset].y; + } else { + imgSizeX = elem->customImageSize.x; + imgSizeY = elem->customImageSize.y; + drawSizeX = elem->customDrawSize.x; + drawSizeY = elem->customDrawSize.y; + } + elem->sizeX = drawSizeX * scale; + elem->sizeY = drawSizeY * scale; + elem->flags.as_word &= ~0x100; + elem->flags.as_word |= 0x800 | 0x10; + + xScaled = ((f32) drawSizeX / (f32) imgSizeX) * scale; + yScaled = ((f32) drawSizeY / (f32) imgSizeY) * scale; + + xScaled = 1.0f / xScaled; + yScaled = 1.0f / yScaled; + + elem->widthScale = X10(xScaled); + elem->heightScale = X10(yScaled); +} void set_hud_element_size(s32 id, s8 size) { - HudElement* hudElement = hudElements[id & ~0x800]; + HudElement* hudElement = (*gHudElements)[id & ~0x800]; - hudElement->widthScale = 0x400; - hudElement->heightScale = 0x400; + hudElement->widthScale = 1024; + hudElement->heightScale = 1024; hudElement->tileSizePreset = size; hudElement->drawSizePreset = size; hudElement->uniformScale = 1.0f; @@ -290,18 +561,18 @@ void set_hud_element_size(s32 id, s8 size) { } s32 func_80144E4C(s32 id) { - return hudElements[id & ~0x800]->flags.as_bitfields.f4; + return (*gHudElements)[id & ~0x800]->flags.as_bitfields.f4; } void func_80144E74(s32 id, s32 arg1) { - HudElement* hudElement = hudElements[id & ~0x800]; + HudElement* hudElement = (*gHudElements)[id & ~0x800]; hudElement->flags.as_word &= ~0xF000000; hudElement->flags.as_word |= arg1 << 24; } void set_hud_element_alpha(s32 id, s32 opacity) { - HudElement* hudElement = hudElements[id & ~0x800]; + HudElement* hudElement = (*gHudElements)[id & ~0x800]; hudElement->flags.as_word |= 0x20; hudElement->opacity = opacity; @@ -312,7 +583,7 @@ void set_hud_element_alpha(s32 id, s32 opacity) { } void set_hud_element_tint(s32 id, s32 r, s32 g, s32 b) { - HudElement* hudElement = hudElements[id & ~0x800]; + HudElement* hudElement = (*gHudElements)[id & ~0x800]; hudElement->tint.r = r; hudElement->tint.g = g; @@ -320,7 +591,7 @@ void set_hud_element_tint(s32 id, s32 r, s32 g, s32 b) { } void create_hud_element_transform_A(s32 id) { - HudElement* element = hudElements[id & ~0x800]; + HudElement* element = (*gHudElements)[id & ~0x800]; HudTransform* transform = general_heap_malloc(sizeof(*transform)); element->hudTransform = transform; @@ -342,7 +613,7 @@ void create_hud_element_transform_A(s32 id) { } void create_hud_element_transform_B(s32 id) { - HudElement* element = hudElements[id & ~0x800]; + HudElement* element = (*gHudElements)[id & ~0x800]; HudTransform* transform = general_heap_malloc(sizeof(*transform)); element->hudTransform = transform; @@ -362,7 +633,7 @@ void create_hud_element_transform_B(s32 id) { } void create_hud_element_transform_C(s32 id) { - HudElement* element = hudElements[id & ~0x800]; + HudElement* element = (*gHudElements)[id & ~0x800]; HudTransform* transform = general_heap_malloc(sizeof(*transform)); element->hudTransform = transform; @@ -382,20 +653,20 @@ void create_hud_element_transform_C(s32 id) { } void free_hud_element_transform(s32 id) { - HudElement* hudElement = hudElements[id & ~0x800]; - s32* hudTransform = hudElement->hudTransform; + HudElement* hudElement = (*gHudElements)[id & ~0x800]; + HudTransform* hudTransform = hudElement->hudTransform; if (!(hudElement->flags.as_word & 0x20000)) { - func_8013A854(*hudTransform); + func_8013A854(hudTransform->unk_00); } heap_free(hudElement->hudTransform); hudElement->hudTransform = NULL; - hudElement->flags.as_word &= ~0x40030000; + hudElement->flags.as_word &= ~(0x40000000 | 0x20000 | 0x10000); } void set_hud_element_transform_pos(s32 id, f32 x, f32 y, f32 z) { - HudElement* element = hudElements[id & ~0x800]; + HudElement* element = (*gHudElements)[id & ~0x800]; HudTransform* transform = element->hudTransform; if (element->flags.as_word & 0x10000) { @@ -406,7 +677,7 @@ void set_hud_element_transform_pos(s32 id, f32 x, f32 y, f32 z) { } void set_hud_element_transform_scale(s32 id, f32 x, f32 y, f32 z) { - HudElement* element = hudElements[id & ~0x800]; + HudElement* element = (*gHudElements)[id & ~0x800]; HudTransform* transform = element->hudTransform; if (element->flags.as_word & 0x10000) { @@ -417,7 +688,7 @@ void set_hud_element_transform_scale(s32 id, f32 x, f32 y, f32 z) { } void set_hud_element_transform_rotation(s32 id, f32 x, f32 y, f32 z) { - HudElement* element = hudElements[id & ~0x800]; + HudElement* element = (*gHudElements)[id & ~0x800]; HudTransform* transform = element->hudTransform; if (element->flags.as_word & 0x10000) { @@ -428,7 +699,7 @@ void set_hud_element_transform_rotation(s32 id, f32 x, f32 y, f32 z) { } void set_hud_element_transform_rotation_pivot(s32 id, s32 dx, s32 dy) { - HudElement* element = hudElements[id & ~0x800]; + HudElement* element = (*gHudElements)[id & ~0x800]; HudTransform* transform = element->hudTransform; if (element->flags.as_word & 0x10000) { @@ -437,13 +708,9 @@ void set_hud_element_transform_rotation_pivot(s32 id, s32 dx, s32 dy) { } } -#ifdef NON_EQUIVALENT void copy_world_hud_element_ref_to_battle(s32 worldID, s32 battleID) { - D_80157460[battleID & ~0x800].flags.as_word = D_80156F60[worldID & ~0x800].flags.as_word; + D_80157460[battleID & ~0x800] = D_80156F60[worldID & ~0x800]; } -#else -INCLUDE_ASM(void, "hud_element", copy_world_hud_element_ref_to_battle, s32 worldID, s32 battleID); -#endif void set_hud_element_nonworld_cache(void* base, s32 size) { D_8014EFC0[0] = (s32)base; diff --git a/src/hud_element.h b/src/hud_element.h index de27bebcfc..165eccb341 100644 --- a/src/hud_element.h +++ b/src/hud_element.h @@ -101,15 +101,17 @@ typedef struct HudElement { /* 0x42 */ Vec3b worldPosOffset; /* 0x45 */ s8 drawSizePreset; /* 0x46 */ s8 tileSizePreset; - /* 0x47 */ u8 updateTimer; + /* 0x47 */ s8 updateTimer; /* 0x48 */ u8 sizeX; /* screen size? */ /* 0x49 */ u8 sizeY; /* screen size? */ /* 0x4A */ u8 opacity; - /* 0x4B */ struct { s8 r; s8 g; s8 b; } tint; - /* 0x4E */ Vec2b customImageSize; - /* 0x40 */ Vec2b customDrawSize; + /* 0x4B */ Color_RGB8 tint; + /* 0x4E */ Vec2bu customImageSize; + /* 0x40 */ Vec2bu customDrawSize; } HudElement; // size = 0x54 +typedef HudElement* HudElementList[320]; + extern HudElementAnim D_80104A28[]; extern HudElementAnim D_80108558[]; extern HudElementAnim D_80108A64[]; @@ -157,10 +159,10 @@ void draw_rect_hud_element( HudElement* hudElement, s32 texSizeX, s32 texSizeY, - s32 drawSizeX, - s32 drawSizeY, - s32 offsetX, - s32 offsetY, + s16 drawSizeX, + s16 drawSizeY, + s16 offsetX, + s16 offsetY, s32 clamp, s32 dropShadow ); diff --git a/src/world/area_end/end_00/DF6A20.c b/src/world/area_end/end_00/DF6A20.c index 9541f23d8f..f552458195 100644 --- a/src/world/area_end/end_00/DF6A20.c +++ b/src/world/area_end/end_00/DF6A20.c @@ -1,5 +1,15 @@ #include "end_00.h" +typedef struct End18 { + /* 0x00 */ s32 initialAnim; + /* 0x04 */ s32** animList; + /* 0x08 */ Vec3f pos; + /* 0x14 */ f32 yaw; +} End18; // size = 0x18 + +extern s32 spr_allocateBtlComponentsOnWorldHeap; +extern End18 D_80244D74_DFB774[]; + INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_80240020_DF6A20); INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_80240270_DF6C70); @@ -42,7 +52,29 @@ ApiStatus func_80242558_DF8F58(Evt* script, s32 isInitialCall) { INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_80242580_DF8F80); -INCLUDE_ASM(s32, "world/area_end/end_00/DF6A20", func_80242680_DF9080); +ApiStatus func_80242680_DF9080(Evt* script, s32 isInitialCall) { + Bytecode* args = script->ptrReadPos; + s32 npcID = evt_get_variable(script, *args++); + End18* end18 = &D_80244D74_DFB774[npcID]; + NpcBlueprint bp; + Npc* npc; + + bp.flags = 0x100; + bp.initialAnim = end18->initialAnim; + bp.onUpdate = NULL; + bp.onRender = NULL; + + spr_allocateBtlComponentsOnWorldHeap = TRUE; + + npc = get_npc_by_index(_create_npc_standard(&bp, end18->animList)); + npc->npcID = npcID; + npc->flags &= ~NPC_FLAG_PARTICLE; + npc->pos.x = end18->pos.x; + npc->pos.y = end18->pos.y; + npc->pos.z = end18->pos.z; + set_npc_yaw(npc, end18->yaw); + return ApiStatus_DONE2; +} ApiStatus func_80242744_DF9144(Evt* script, s32 isInitialCall) { Bytecode* args = script->ptrReadPos; @@ -54,7 +86,9 @@ ApiStatus func_80242744_DF9144(Evt* script, s32 isInitialCall) { } ApiStatus func_802427A4_DF91A4(Evt* script, s32 isInitialCall) { - _heap_free(&gSpriteHeapPtr, evt_get_variable(script, *script->ptrReadPos)); + Bytecode* args = script->ptrReadPos; + + _heap_free(&gSpriteHeapPtr, evt_get_variable(script, *args++)); return ApiStatus_DONE2; } diff --git a/tools/sortsymz.py b/tools/sortsymz.py old mode 100644 new mode 100755 diff --git a/ver/us/asm/nonmatchings/hud_element/clear_hud_element_cache.s b/ver/us/asm/nonmatchings/hud_element/clear_hud_element_cache.s index 84fb9910fd..f76c64bc94 100644 --- a/ver/us/asm/nonmatchings/hud_element/clear_hud_element_cache.s +++ b/ver/us/asm/nonmatchings/hud_element/clear_hud_element_cache.s @@ -11,8 +11,8 @@ glabel clear_hud_element_cache /* D7818 80141118 00000000 */ nop /* D781C 8014111C 3C028015 */ lui $v0, %hi(D_80156F60) /* D7820 80141120 24426F60 */ addiu $v0, $v0, %lo(D_80156F60) -/* D7824 80141124 3C018015 */ lui $at, %hi(hudElements) -/* D7828 80141128 AC227960 */ sw $v0, %lo(hudElements)($at) +/* D7824 80141124 3C018015 */ lui $at, %hi(gHudElements) +/* D7828 80141128 AC227960 */ sw $v0, %lo(gHudElements)($at) /* D782C 8014112C 3C028015 */ lui $v0, %hi(D_80157968) /* D7830 80141130 24427968 */ addiu $v0, $v0, %lo(D_80157968) /* D7834 80141134 3C018015 */ lui $at, %hi(D_8015133C) @@ -28,8 +28,8 @@ glabel clear_hud_element_cache .L8014115C: /* D785C 8014115C 3C028015 */ lui $v0, %hi(D_80157460) /* D7860 80141160 24427460 */ addiu $v0, $v0, %lo(D_80157460) -/* D7864 80141164 3C018015 */ lui $at, %hi(hudElements) -/* D7868 80141168 AC227960 */ sw $v0, %lo(hudElements)($at) +/* D7864 80141164 3C018015 */ lui $at, %hi(gHudElements) +/* D7868 80141168 AC227960 */ sw $v0, %lo(gHudElements)($at) /* D786C 8014116C 3C028016 */ lui $v0, %hi(D_80158574) /* D7870 80141170 24428574 */ addiu $v0, $v0, %lo(D_80158574) /* D7874 80141174 3C018015 */ lui $at, %hi(D_8015133C) @@ -124,8 +124,8 @@ glabel clear_hud_element_cache /* D79B4 801412B4 1440FFFA */ bnez $v0, .L801412A0 /* D79B8 801412B8 24630008 */ addiu $v1, $v1, 8 .L801412BC: -/* D79BC 801412BC 3C028015 */ lui $v0, %hi(hudElements) -/* D79C0 801412C0 8C427960 */ lw $v0, %lo(hudElements)($v0) +/* D79BC 801412BC 3C028015 */ lui $v0, %hi(gHudElements) +/* D79C0 801412C0 8C427960 */ lw $v0, %lo(gHudElements)($v0) /* D79C4 801412C4 2404013F */ addiu $a0, $zero, 0x13f /* D79C8 801412C8 244204FC */ addiu $v0, $v0, 0x4fc .L801412CC: diff --git a/ver/us/asm/nonmatchings/hud_element/copy_world_hud_element_ref_to_battle.s b/ver/us/asm/nonmatchings/hud_element/copy_world_hud_element_ref_to_battle.s deleted file mode 100644 index 19b65acce0..0000000000 --- a/ver/us/asm/nonmatchings/hud_element/copy_world_hud_element_ref_to_battle.s +++ /dev/null @@ -1,17 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel copy_world_hud_element_ref_to_battle -/* DB9B4 801452B4 2402F7FF */ addiu $v0, $zero, -0x801 -/* DB9B8 801452B8 00A22824 */ and $a1, $a1, $v0 -/* DB9BC 801452BC 00822024 */ and $a0, $a0, $v0 -/* DB9C0 801452C0 00042080 */ sll $a0, $a0, 2 -/* DB9C4 801452C4 3C028015 */ lui $v0, %hi(D_80156F60) -/* DB9C8 801452C8 00441021 */ addu $v0, $v0, $a0 -/* DB9CC 801452CC 8C426F60 */ lw $v0, %lo(D_80156F60)($v0) -/* DB9D0 801452D0 00052880 */ sll $a1, $a1, 2 -/* DB9D4 801452D4 3C018015 */ lui $at, %hi(D_80157460) -/* DB9D8 801452D8 00250821 */ addu $at, $at, $a1 -/* DB9DC 801452DC AC227460 */ sw $v0, %lo(D_80157460)($at) -/* DB9E0 801452E0 03E00008 */ jr $ra -/* DB9E4 801452E4 00000000 */ nop diff --git a/ver/us/asm/nonmatchings/hud_element/create_hud_element.s b/ver/us/asm/nonmatchings/hud_element/create_hud_element.s deleted file mode 100644 index da140dc795..0000000000 --- a/ver/us/asm/nonmatchings/hud_element/create_hud_element.s +++ /dev/null @@ -1,104 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel create_hud_element -/* D7BA4 801414A4 3C038015 */ lui $v1, %hi(hudElements) -/* D7BA8 801414A8 8C637960 */ lw $v1, %lo(hudElements)($v1) -/* D7BAC 801414AC 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* D7BB0 801414B0 AFB20018 */ sw $s2, 0x18($sp) -/* D7BB4 801414B4 0080902D */ daddu $s2, $a0, $zero -/* D7BB8 801414B8 AFB10014 */ sw $s1, 0x14($sp) -/* D7BBC 801414BC 0000882D */ daddu $s1, $zero, $zero -/* D7BC0 801414C0 AFBF001C */ sw $ra, 0x1c($sp) -/* D7BC4 801414C4 AFB00010 */ sw $s0, 0x10($sp) -.L801414C8: -/* D7BC8 801414C8 8C620000 */ lw $v0, ($v1) -/* D7BCC 801414CC 10400006 */ beqz $v0, .L801414E8 -/* D7BD0 801414D0 2A220140 */ slti $v0, $s1, 0x140 -/* D7BD4 801414D4 26310001 */ addiu $s1, $s1, 1 -/* D7BD8 801414D8 2A220140 */ slti $v0, $s1, 0x140 -/* D7BDC 801414DC 1440FFFA */ bnez $v0, .L801414C8 -/* D7BE0 801414E0 24630004 */ addiu $v1, $v1, 4 -/* D7BE4 801414E4 2A220140 */ slti $v0, $s1, 0x140 -.L801414E8: -/* D7BE8 801414E8 14400003 */ bnez $v0, .L801414F8 -/* D7BEC 801414EC 00000000 */ nop -.L801414F0: -/* D7BF0 801414F0 0805053C */ j .L801414F0 -/* D7BF4 801414F4 00000000 */ nop -.L801414F8: -/* D7BF8 801414F8 0C00AB39 */ jal heap_malloc -/* D7BFC 801414FC 24040054 */ addiu $a0, $zero, 0x54 -/* D7C00 80141500 00112080 */ sll $a0, $s1, 2 -/* D7C04 80141504 3C038015 */ lui $v1, %hi(hudElements) -/* D7C08 80141508 8C637960 */ lw $v1, %lo(hudElements)($v1) -/* D7C0C 8014150C 3C058015 */ lui $a1, %hi(D_801512B4) -/* D7C10 80141510 24A512B4 */ addiu $a1, $a1, %lo(D_801512B4) -/* D7C14 80141514 00832021 */ addu $a0, $a0, $v1 -/* D7C18 80141518 8CA30000 */ lw $v1, ($a1) -/* D7C1C 8014151C 0040802D */ daddu $s0, $v0, $zero -/* D7C20 80141520 AC900000 */ sw $s0, ($a0) -/* D7C24 80141524 24630001 */ addiu $v1, $v1, 1 -/* D7C28 80141528 16000003 */ bnez $s0, .L80141538 -/* D7C2C 8014152C ACA30000 */ sw $v1, ($a1) -.L80141530: -/* D7C30 80141530 0805054C */ j .L80141530 -/* D7C34 80141534 00000000 */ nop -.L80141538: -/* D7C38 80141538 24030001 */ addiu $v1, $zero, 1 -/* D7C3C 8014153C AE030000 */ sw $v1, ($s0) -/* D7C40 80141540 16400004 */ bnez $s2, .L80141554 -/* D7C44 80141544 AE120004 */ sw $s2, 4($s0) -/* D7C48 80141548 3C028015 */ lui $v0, %hi(hud_element_defaultAnim) -/* D7C4C 8014154C 2442EFC8 */ addiu $v0, $v0, %lo(hud_element_defaultAnim) -/* D7C50 80141550 AE020004 */ sw $v0, 4($s0) -.L80141554: -/* D7C54 80141554 A2030047 */ sb $v1, 0x47($s0) -/* D7C58 80141558 8E030004 */ lw $v1, 4($s0) -/* D7C5C 8014155C 3C013F80 */ lui $at, 0x3f80 -/* D7C60 80141560 44810000 */ mtc1 $at, $f0 -/* D7C64 80141564 2402FFFF */ addiu $v0, $zero, -1 -/* D7C68 80141568 A2020045 */ sb $v0, 0x45($s0) -/* D7C6C 8014156C A2020046 */ sb $v0, 0x46($s0) -/* D7C70 80141570 240200FF */ addiu $v0, $zero, 0xff -/* D7C74 80141574 A2000040 */ sb $zero, 0x40($s0) -/* D7C78 80141578 A2000041 */ sb $zero, 0x41($s0) -/* D7C7C 8014157C A2000042 */ sb $zero, 0x42($s0) -/* D7C80 80141580 A2000043 */ sb $zero, 0x43($s0) -/* D7C84 80141584 A2000044 */ sb $zero, 0x44($s0) -/* D7C88 80141588 A202004A */ sb $v0, 0x4a($s0) -/* D7C8C 8014158C A202004B */ sb $v0, 0x4b($s0) -/* D7C90 80141590 A202004C */ sb $v0, 0x4c($s0) -/* D7C94 80141594 A202004D */ sb $v0, 0x4d($s0) -/* D7C98 80141598 3C048007 */ lui $a0, %hi(gGameStatusPtr) -/* D7C9C 8014159C 8C84419C */ lw $a0, %lo(gGameStatusPtr)($a0) -/* D7CA0 801415A0 24020400 */ addiu $v0, $zero, 0x400 -/* D7CA4 801415A4 A600003C */ sh $zero, 0x3c($s0) -/* D7CA8 801415A8 A600003E */ sh $zero, 0x3e($s0) -/* D7CAC 801415AC AE12000C */ sw $s2, 0xc($s0) -/* D7CB0 801415B0 AE020034 */ sw $v0, 0x34($s0) -/* D7CB4 801415B4 AE020038 */ sw $v0, 0x38($s0) -/* D7CB8 801415B8 AE030008 */ sw $v1, 8($s0) -/* D7CBC 801415BC E6000030 */ swc1 $f0, 0x30($s0) -/* D7CC0 801415C0 80820070 */ lb $v0, 0x70($a0) -/* D7CC4 801415C4 10400005 */ beqz $v0, .L801415DC -/* D7CC8 801415C8 00000000 */ nop -/* D7CCC 801415CC 8E020000 */ lw $v0, ($s0) -/* D7CD0 801415D0 36310800 */ ori $s1, $s1, 0x800 -/* D7CD4 801415D4 34420400 */ ori $v0, $v0, 0x400 -/* D7CD8 801415D8 AE020000 */ sw $v0, ($s0) -.L801415DC: -/* D7CDC 801415DC 8E050004 */ lw $a1, 4($s0) -/* D7CE0 801415E0 0C04FCD4 */ jal load_hud_element -/* D7CE4 801415E4 0200202D */ daddu $a0, $s0, $zero -.L801415E8: -/* D7CE8 801415E8 0C0505C1 */ jal hud_element_update -/* D7CEC 801415EC 0200202D */ daddu $a0, $s0, $zero -/* D7CF0 801415F0 1440FFFD */ bnez $v0, .L801415E8 -/* D7CF4 801415F4 0220102D */ daddu $v0, $s1, $zero -/* D7CF8 801415F8 8FBF001C */ lw $ra, 0x1c($sp) -/* D7CFC 801415FC 8FB20018 */ lw $s2, 0x18($sp) -/* D7D00 80141600 8FB10014 */ lw $s1, 0x14($sp) -/* D7D04 80141604 8FB00010 */ lw $s0, 0x10($sp) -/* D7D08 80141608 03E00008 */ jr $ra -/* D7D0C 8014160C 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/ver/us/asm/nonmatchings/hud_element/draw_hud_element.s b/ver/us/asm/nonmatchings/hud_element/draw_hud_element.s deleted file mode 100644 index 3f3dd6c799..0000000000 --- a/ver/us/asm/nonmatchings/hud_element/draw_hud_element.s +++ /dev/null @@ -1,344 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel draw_hud_element -/* DA998 80144298 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* DA99C 8014429C 2402F7FF */ addiu $v0, $zero, -0x801 -/* DA9A0 801442A0 00822024 */ and $a0, $a0, $v0 -/* DA9A4 801442A4 3C028015 */ lui $v0, %hi(hudElements) -/* DA9A8 801442A8 8C427960 */ lw $v0, %lo(hudElements)($v0) -/* DA9AC 801442AC 00042080 */ sll $a0, $a0, 2 -/* DA9B0 801442B0 AFBF0044 */ sw $ra, 0x44($sp) -/* DA9B4 801442B4 AFB60040 */ sw $s6, 0x40($sp) -/* DA9B8 801442B8 AFB5003C */ sw $s5, 0x3c($sp) -/* DA9BC 801442BC AFB40038 */ sw $s4, 0x38($sp) -/* DA9C0 801442C0 AFB30034 */ sw $s3, 0x34($sp) -/* DA9C4 801442C4 AFB20030 */ sw $s2, 0x30($sp) -/* DA9C8 801442C8 AFB1002C */ sw $s1, 0x2c($sp) -/* DA9CC 801442CC AFB00028 */ sw $s0, 0x28($sp) -/* DA9D0 801442D0 00822021 */ addu $a0, $a0, $v0 -/* DA9D4 801442D4 8C900000 */ lw $s0, ($a0) -/* DA9D8 801442D8 8E030000 */ lw $v1, ($s0) -/* DA9DC 801442DC 10600128 */ beqz $v1, .L80144780 -/* DA9E0 801442E0 30620002 */ andi $v0, $v1, 2 -/* DA9E4 801442E4 14400126 */ bnez $v0, .L80144780 -/* DA9E8 801442E8 3C021020 */ lui $v0, 0x1020 -/* DA9EC 801442EC 00621024 */ and $v0, $v1, $v0 -/* DA9F0 801442F0 14400123 */ bnez $v0, .L80144780 -/* DA9F4 801442F4 00000000 */ nop -/* DA9F8 801442F8 82020045 */ lb $v0, 0x45($s0) -/* DA9FC 801442FC 04400120 */ bltz $v0, .L80144780 -/* DAA00 80144300 24020001 */ addiu $v0, $zero, 1 -/* DAA04 80144304 10A2005E */ beq $a1, $v0, .L80144480 -/* DAA08 80144308 30620100 */ andi $v0, $v1, 0x100 -/* DAA0C 8014430C 14A0000E */ bnez $a1, .L80144348 -/* DAA10 80144310 3C06E300 */ lui $a2, 0xe300 -/* DAA14 80144314 3C06ED03 */ lui $a2, 0xed03 -/* DAA18 80144318 34C60050 */ ori $a2, $a2, 0x50 -/* DAA1C 8014431C 3C05004D */ lui $a1, 0x4d -/* DAA20 80144320 3C04800A */ lui $a0, %hi(gMasterGfxPos) -/* DAA24 80144324 2484A66C */ addiu $a0, $a0, %lo(gMasterGfxPos) -/* DAA28 80144328 8C820000 */ lw $v0, ($a0) -/* DAA2C 8014432C 34A50370 */ ori $a1, $a1, 0x370 -/* DAA30 80144330 0040182D */ daddu $v1, $v0, $zero -/* DAA34 80144334 24420008 */ addiu $v0, $v0, 8 -/* DAA38 80144338 AC820000 */ sw $v0, ($a0) -/* DAA3C 8014433C AC660000 */ sw $a2, ($v1) -/* DAA40 80144340 AC650004 */ sw $a1, 4($v1) -/* DAA44 80144344 3C06E300 */ lui $a2, 0xe300 -.L80144348: -/* DAA48 80144348 34C60A01 */ ori $a2, $a2, 0xa01 -/* DAA4C 8014434C 3C07E300 */ lui $a3, 0xe300 -/* DAA50 80144350 34E70C00 */ ori $a3, $a3, 0xc00 -/* DAA54 80144354 3C08E300 */ lui $t0, 0xe300 -/* DAA58 80144358 35080F00 */ ori $t0, $t0, 0xf00 -/* DAA5C 8014435C 3C09E300 */ lui $t1, 0xe300 -/* DAA60 80144360 35290D01 */ ori $t1, $t1, 0xd01 -/* DAA64 80144364 3C0AE300 */ lui $t2, 0xe300 -/* DAA68 80144368 354A1402 */ ori $t2, $t2, 0x1402 -/* DAA6C 8014436C 3C0BE300 */ lui $t3, 0xe300 -/* DAA70 80144370 356B1700 */ ori $t3, $t3, 0x1700 -/* DAA74 80144374 3C0CE200 */ lui $t4, 0xe200 -/* DAA78 80144378 358C1E01 */ ori $t4, $t4, 0x1e01 -/* DAA7C 8014437C 3C0DE300 */ lui $t5, 0xe300 -/* DAA80 80144380 35AD1801 */ ori $t5, $t5, 0x1801 -/* DAA84 80144384 3C0EE300 */ lui $t6, 0xe300 -/* DAA88 80144388 35CE1A01 */ ori $t6, $t6, 0x1a01 -/* DAA8C 8014438C 3C0FD700 */ lui $t7, 0xd700 -/* DAA90 80144390 3C04800A */ lui $a0, %hi(gMasterGfxPos) -/* DAA94 80144394 2484A66C */ addiu $a0, $a0, %lo(gMasterGfxPos) -/* DAA98 80144398 35EF0002 */ ori $t7, $t7, 2 -/* DAA9C 8014439C 8C820000 */ lw $v0, ($a0) -/* DAAA0 801443A0 3C03E700 */ lui $v1, 0xe700 -/* DAAA4 801443A4 0040282D */ daddu $a1, $v0, $zero -/* DAAA8 801443A8 24420008 */ addiu $v0, $v0, 8 -/* DAAAC 801443AC AC820000 */ sw $v0, ($a0) -/* DAAB0 801443B0 ACA30000 */ sw $v1, ($a1) -/* DAAB4 801443B4 24430008 */ addiu $v1, $v0, 8 -/* DAAB8 801443B8 ACA00004 */ sw $zero, 4($a1) -/* DAABC 801443BC AC830000 */ sw $v1, ($a0) -/* DAAC0 801443C0 24430010 */ addiu $v1, $v0, 0x10 -/* DAAC4 801443C4 AC460000 */ sw $a2, ($v0) -/* DAAC8 801443C8 AC400004 */ sw $zero, 4($v0) -/* DAACC 801443CC AC830000 */ sw $v1, ($a0) -/* DAAD0 801443D0 24430018 */ addiu $v1, $v0, 0x18 -/* DAAD4 801443D4 AC470008 */ sw $a3, 8($v0) -/* DAAD8 801443D8 AC40000C */ sw $zero, 0xc($v0) -/* DAADC 801443DC AC830000 */ sw $v1, ($a0) -/* DAAE0 801443E0 24430020 */ addiu $v1, $v0, 0x20 -/* DAAE4 801443E4 AC480010 */ sw $t0, 0x10($v0) -/* DAAE8 801443E8 AC400014 */ sw $zero, 0x14($v0) -/* DAAEC 801443EC AC830000 */ sw $v1, ($a0) -/* DAAF0 801443F0 24430028 */ addiu $v1, $v0, 0x28 -/* DAAF4 801443F4 AC490018 */ sw $t1, 0x18($v0) -/* DAAF8 801443F8 AC40001C */ sw $zero, 0x1c($v0) -/* DAAFC 801443FC AC830000 */ sw $v1, ($a0) -/* DAB00 80144400 24030C00 */ addiu $v1, $zero, 0xc00 -/* DAB04 80144404 AC430024 */ sw $v1, 0x24($v0) -/* DAB08 80144408 24430030 */ addiu $v1, $v0, 0x30 -/* DAB0C 8014440C AC4A0020 */ sw $t2, 0x20($v0) -/* DAB10 80144410 AC830000 */ sw $v1, ($a0) -/* DAB14 80144414 24430038 */ addiu $v1, $v0, 0x38 -/* DAB18 80144418 AC4B0028 */ sw $t3, 0x28($v0) -/* DAB1C 8014441C AC40002C */ sw $zero, 0x2c($v0) -/* DAB20 80144420 AC830000 */ sw $v1, ($a0) -/* DAB24 80144424 24430040 */ addiu $v1, $v0, 0x40 -/* DAB28 80144428 AC4C0030 */ sw $t4, 0x30($v0) -/* DAB2C 8014442C AC400034 */ sw $zero, 0x34($v0) -/* DAB30 80144430 AC830000 */ sw $v1, ($a0) -/* DAB34 80144434 24430048 */ addiu $v1, $v0, 0x48 -/* DAB38 80144438 AC400038 */ sw $zero, 0x38($v0) -/* DAB3C 8014443C AC40003C */ sw $zero, 0x3c($v0) -/* DAB40 80144440 AC830000 */ sw $v1, ($a0) -/* DAB44 80144444 240300C0 */ addiu $v1, $zero, 0xc0 -/* DAB48 80144448 AC430044 */ sw $v1, 0x44($v0) -/* DAB4C 8014444C 24430050 */ addiu $v1, $v0, 0x50 -/* DAB50 80144450 AC4D0040 */ sw $t5, 0x40($v0) -/* DAB54 80144454 AC830000 */ sw $v1, ($a0) -/* DAB58 80144458 24030030 */ addiu $v1, $zero, 0x30 -/* DAB5C 8014445C AC4E0048 */ sw $t6, 0x48($v0) -/* DAB60 80144460 AC43004C */ sw $v1, 0x4c($v0) -/* DAB64 80144464 24430058 */ addiu $v1, $v0, 0x58 -/* DAB68 80144468 AC830000 */ sw $v1, ($a0) -/* DAB6C 8014446C 2403FFFF */ addiu $v1, $zero, -1 -/* DAB70 80144470 AC4F0050 */ sw $t7, 0x50($v0) -/* DAB74 80144474 AC430054 */ sw $v1, 0x54($v0) -/* DAB78 80144478 8E030000 */ lw $v1, ($s0) -/* DAB7C 8014447C 30620100 */ andi $v0, $v1, 0x100 -.L80144480: -/* DAB80 80144480 1440005B */ bnez $v0, .L801445F0 -/* DAB84 80144484 3C020010 */ lui $v0, 0x10 -/* DAB88 80144488 00621024 */ and $v0, $v1, $v0 -/* DAB8C 8014448C 1440000B */ bnez $v0, .L801444BC -/* DAB90 80144490 00000000 */ nop -/* DAB94 80144494 82040046 */ lb $a0, 0x46($s0) -/* DAB98 80144498 3C038015 */ lui $v1, %hi(D_8014EFCC) -/* DAB9C 8014449C 2463EFCC */ addiu $v1, $v1, %lo(D_8014EFCC) -/* DABA0 801444A0 00041040 */ sll $v0, $a0, 1 -/* DABA4 801444A4 00441021 */ addu $v0, $v0, $a0 -/* DABA8 801444A8 00021040 */ sll $v0, $v0, 1 -/* DABAC 801444AC 00431021 */ addu $v0, $v0, $v1 -/* DABB0 801444B0 84560000 */ lh $s6, ($v0) -/* DABB4 801444B4 08051131 */ j .L801444C4 -/* DABB8 801444B8 84550002 */ lh $s5, 2($v0) -.L801444BC: -/* DABBC 801444BC 9216004E */ lbu $s6, 0x4e($s0) -/* DABC0 801444C0 9215004F */ lbu $s5, 0x4f($s0) -.L801444C4: -/* DABC4 801444C4 8E030000 */ lw $v1, ($s0) -/* DABC8 801444C8 30620010 */ andi $v0, $v1, 0x10 -/* DABCC 801444CC 14400013 */ bnez $v0, .L8014451C -/* DABD0 801444D0 3C020010 */ lui $v0, 0x10 -/* DABD4 801444D4 00621024 */ and $v0, $v1, $v0 -/* DABD8 801444D8 1440000C */ bnez $v0, .L8014450C -/* DABDC 801444DC 00000000 */ nop -/* DABE0 801444E0 82020045 */ lb $v0, 0x45($s0) -/* DABE4 801444E4 3C048015 */ lui $a0, %hi(D_8014EFCC) -/* DABE8 801444E8 2484EFCC */ addiu $a0, $a0, %lo(D_8014EFCC) -/* DABEC 801444EC 00021840 */ sll $v1, $v0, 1 -/* DABF0 801444F0 00621821 */ addu $v1, $v1, $v0 -/* DABF4 801444F4 00031840 */ sll $v1, $v1, 1 -/* DABF8 801444F8 00641821 */ addu $v1, $v1, $a0 -/* DABFC 801444FC 84710000 */ lh $s1, ($v1) -/* DAC00 80144500 84720002 */ lh $s2, 2($v1) -/* DAC04 80144504 0805114A */ j .L80144528 -/* DAC08 80144508 00111023 */ negu $v0, $s1 -.L8014450C: -/* DAC0C 8014450C 92110050 */ lbu $s1, 0x50($s0) -/* DAC10 80144510 92120051 */ lbu $s2, 0x51($s0) -/* DAC14 80144514 0805114A */ j .L80144528 -/* DAC18 80144518 00111023 */ negu $v0, $s1 -.L8014451C: -/* DAC1C 8014451C 92110048 */ lbu $s1, 0x48($s0) -/* DAC20 80144520 92120049 */ lbu $s2, 0x49($s0) -/* DAC24 80144524 00111023 */ negu $v0, $s1 -.L80144528: -/* DAC28 80144528 00021FC2 */ srl $v1, $v0, 0x1f -/* DAC2C 8014452C 00431021 */ addu $v0, $v0, $v1 -/* DAC30 80144530 00029843 */ sra $s3, $v0, 1 -/* DAC34 80144534 00121023 */ negu $v0, $s2 -/* DAC38 80144538 00021FC2 */ srl $v1, $v0, 0x1f -/* DAC3C 8014453C 00431021 */ addu $v0, $v0, $v1 -/* DAC40 80144540 0002A043 */ sra $s4, $v0, 1 -/* DAC44 80144544 8E030000 */ lw $v1, ($s0) -/* DAC48 80144548 30620800 */ andi $v0, $v1, 0x800 -/* DAC4C 8014454C 14400026 */ bnez $v0, .L801445E8 -/* DAC50 80144550 3C022000 */ lui $v0, 0x2000 -/* DAC54 80144554 00621024 */ and $v0, $v1, $v0 -/* DAC58 80144558 10400012 */ beqz $v0, .L801445A4 -/* DAC5C 8014455C 0200202D */ daddu $a0, $s0, $zero -/* DAC60 80144560 02C0282D */ daddu $a1, $s6, $zero -/* DAC64 80144564 02A0302D */ daddu $a2, $s5, $zero -/* DAC68 80144568 00113C00 */ sll $a3, $s1, 0x10 -/* DAC6C 8014456C 00073C03 */ sra $a3, $a3, 0x10 -/* DAC70 80144570 00121400 */ sll $v0, $s2, 0x10 -/* DAC74 80144574 00021403 */ sra $v0, $v0, 0x10 -/* DAC78 80144578 AFA20010 */ sw $v0, 0x10($sp) -/* DAC7C 8014457C 00131400 */ sll $v0, $s3, 0x10 -/* DAC80 80144580 00021403 */ sra $v0, $v0, 0x10 -/* DAC84 80144584 AFA20014 */ sw $v0, 0x14($sp) -/* DAC88 80144588 00141400 */ sll $v0, $s4, 0x10 -/* DAC8C 8014458C 00021403 */ sra $v0, $v0, 0x10 -/* DAC90 80144590 AFA20018 */ sw $v0, 0x18($sp) -/* DAC94 80144594 24020001 */ addiu $v0, $zero, 1 -/* DAC98 80144598 AFA2001C */ sw $v0, 0x1c($sp) -/* DAC9C 8014459C 0C04FDC1 */ jal draw_rect_hud_element -/* DACA0 801445A0 AFA20020 */ sw $v0, 0x20($sp) -.L801445A4: -/* DACA4 801445A4 0200202D */ daddu $a0, $s0, $zero -/* DACA8 801445A8 02C0282D */ daddu $a1, $s6, $zero -/* DACAC 801445AC 02A0302D */ daddu $a2, $s5, $zero -/* DACB0 801445B0 00113C00 */ sll $a3, $s1, 0x10 -/* DACB4 801445B4 00073C03 */ sra $a3, $a3, 0x10 -/* DACB8 801445B8 00121400 */ sll $v0, $s2, 0x10 -/* DACBC 801445BC 00021403 */ sra $v0, $v0, 0x10 -/* DACC0 801445C0 AFA20010 */ sw $v0, 0x10($sp) -/* DACC4 801445C4 00131400 */ sll $v0, $s3, 0x10 -/* DACC8 801445C8 00021403 */ sra $v0, $v0, 0x10 -/* DACCC 801445CC AFA20014 */ sw $v0, 0x14($sp) -/* DACD0 801445D0 00141400 */ sll $v0, $s4, 0x10 -/* DACD4 801445D4 00021403 */ sra $v0, $v0, 0x10 -/* DACD8 801445D8 AFA20018 */ sw $v0, 0x18($sp) -/* DACDC 801445DC 24020001 */ addiu $v0, $zero, 1 -/* DACE0 801445E0 080511DE */ j .L80144778 -/* DACE4 801445E4 AFA2001C */ sw $v0, 0x1c($sp) -.L801445E8: -/* DACE8 801445E8 080511BC */ j .L801446F0 -/* DACEC 801445EC 00621024 */ and $v0, $v1, $v0 -.L801445F0: -/* DACF0 801445F0 00621024 */ and $v0, $v1, $v0 -/* DACF4 801445F4 1440000C */ bnez $v0, .L80144628 -/* DACF8 801445F8 3C032000 */ lui $v1, 0x2000 -/* DACFC 801445FC 82040046 */ lb $a0, 0x46($s0) -/* DAD00 80144600 3C038015 */ lui $v1, %hi(D_8014EFCC) -/* DAD04 80144604 2463EFCC */ addiu $v1, $v1, %lo(D_8014EFCC) -/* DAD08 80144608 00041040 */ sll $v0, $a0, 1 -/* DAD0C 8014460C 00441021 */ addu $v0, $v0, $a0 -/* DAD10 80144610 00021040 */ sll $v0, $v0, 1 -/* DAD14 80144614 00431021 */ addu $v0, $v0, $v1 -/* DAD18 80144618 84560000 */ lh $s6, ($v0) -/* DAD1C 8014461C 84550002 */ lh $s5, 2($v0) -/* DAD20 80144620 0805118C */ j .L80144630 -/* DAD24 80144624 3C032000 */ lui $v1, 0x2000 -.L80144628: -/* DAD28 80144628 9216004E */ lbu $s6, 0x4e($s0) -/* DAD2C 8014462C 9215004F */ lbu $s5, 0x4f($s0) -.L80144630: -/* DAD30 80144630 C6000028 */ lwc1 $f0, 0x28($s0) -/* DAD34 80144634 C606002C */ lwc1 $f6, 0x2c($s0) -/* DAD38 80144638 3C013F00 */ lui $at, 0x3f00 -/* DAD3C 8014463C 44811000 */ mtc1 $at, $f2 -/* DAD40 80144640 3C013F80 */ lui $at, 0x3f80 -/* DAD44 80144644 44815000 */ mtc1 $at, $f10 -/* DAD48 80144648 46000207 */ neg.s $f8, $f0 -/* DAD4C 8014464C 46024202 */ mul.s $f8, $f8, $f2 -/* DAD50 80144650 00000000 */ nop -/* DAD54 80144654 3C014480 */ lui $at, 0x4480 -/* DAD58 80144658 44816000 */ mtc1 $at, $f12 -/* DAD5C 8014465C 8E020000 */ lw $v0, ($s0) -/* DAD60 80144660 4600038D */ trunc.w.s $f14, $f0 -/* DAD64 80144664 44117000 */ mfc1 $s1, $f14 -/* DAD68 80144668 4600338D */ trunc.w.s $f14, $f6 -/* DAD6C 8014466C 44127000 */ mfc1 $s2, $f14 -/* DAD70 80144670 46003187 */ neg.s $f6, $f6 -/* DAD74 80144674 46023182 */ mul.s $f6, $f6, $f2 -/* DAD78 80144678 00000000 */ nop -/* DAD7C 8014467C 44912000 */ mtc1 $s1, $f4 -/* DAD80 80144680 00000000 */ nop -/* DAD84 80144684 46802120 */ cvt.s.w $f4, $f4 -/* DAD88 80144688 44960000 */ mtc1 $s6, $f0 -/* DAD8C 8014468C 00000000 */ nop -/* DAD90 80144690 46800020 */ cvt.s.w $f0, $f0 -/* DAD94 80144694 46002103 */ div.s $f4, $f4, $f0 -/* DAD98 80144698 46045103 */ div.s $f4, $f10, $f4 -/* DAD9C 8014469C 460C2102 */ mul.s $f4, $f4, $f12 -/* DADA0 801446A0 00000000 */ nop -/* DADA4 801446A4 44920000 */ mtc1 $s2, $f0 -/* DADA8 801446A8 00000000 */ nop -/* DADAC 801446AC 46800020 */ cvt.s.w $f0, $f0 -/* DADB0 801446B0 44951000 */ mtc1 $s5, $f2 -/* DADB4 801446B4 00000000 */ nop -/* DADB8 801446B8 468010A0 */ cvt.s.w $f2, $f2 -/* DADBC 801446BC 46020003 */ div.s $f0, $f0, $f2 -/* DADC0 801446C0 46005003 */ div.s $f0, $f10, $f0 -/* DADC4 801446C4 460C0002 */ mul.s $f0, $f0, $f12 -/* DADC8 801446C8 00000000 */ nop -/* DADCC 801446CC 00431024 */ and $v0, $v0, $v1 -/* DADD0 801446D0 4600438D */ trunc.w.s $f14, $f8 -/* DADD4 801446D4 44137000 */ mfc1 $s3, $f14 -/* DADD8 801446D8 4600338D */ trunc.w.s $f14, $f6 -/* DADDC 801446DC 44147000 */ mfc1 $s4, $f14 -/* DADE0 801446E0 4600238D */ trunc.w.s $f14, $f4 -/* DADE4 801446E4 E60E0034 */ swc1 $f14, 0x34($s0) -/* DADE8 801446E8 4600038D */ trunc.w.s $f14, $f0 -/* DADEC 801446EC E60E0038 */ swc1 $f14, 0x38($s0) -.L801446F0: -/* DADF0 801446F0 10400012 */ beqz $v0, .L8014473C -/* DADF4 801446F4 0200202D */ daddu $a0, $s0, $zero -/* DADF8 801446F8 02C0282D */ daddu $a1, $s6, $zero -/* DADFC 801446FC 02A0302D */ daddu $a2, $s5, $zero -/* DAE00 80144700 00113C00 */ sll $a3, $s1, 0x10 -/* DAE04 80144704 00073C03 */ sra $a3, $a3, 0x10 -/* DAE08 80144708 00121400 */ sll $v0, $s2, 0x10 -/* DAE0C 8014470C 00021403 */ sra $v0, $v0, 0x10 -/* DAE10 80144710 AFA20010 */ sw $v0, 0x10($sp) -/* DAE14 80144714 00131400 */ sll $v0, $s3, 0x10 -/* DAE18 80144718 00021403 */ sra $v0, $v0, 0x10 -/* DAE1C 8014471C AFA20014 */ sw $v0, 0x14($sp) -/* DAE20 80144720 00141400 */ sll $v0, $s4, 0x10 -/* DAE24 80144724 00021403 */ sra $v0, $v0, 0x10 -/* DAE28 80144728 AFA20018 */ sw $v0, 0x18($sp) -/* DAE2C 8014472C 24020001 */ addiu $v0, $zero, 1 -/* DAE30 80144730 AFA0001C */ sw $zero, 0x1c($sp) -/* DAE34 80144734 0C04FDC1 */ jal draw_rect_hud_element -/* DAE38 80144738 AFA20020 */ sw $v0, 0x20($sp) -.L8014473C: -/* DAE3C 8014473C 0200202D */ daddu $a0, $s0, $zero -/* DAE40 80144740 02C0282D */ daddu $a1, $s6, $zero -/* DAE44 80144744 02A0302D */ daddu $a2, $s5, $zero -/* DAE48 80144748 00113C00 */ sll $a3, $s1, 0x10 -/* DAE4C 8014474C 00073C03 */ sra $a3, $a3, 0x10 -/* DAE50 80144750 00121400 */ sll $v0, $s2, 0x10 -/* DAE54 80144754 00021403 */ sra $v0, $v0, 0x10 -/* DAE58 80144758 AFA20010 */ sw $v0, 0x10($sp) -/* DAE5C 8014475C 00131400 */ sll $v0, $s3, 0x10 -/* DAE60 80144760 00021403 */ sra $v0, $v0, 0x10 -/* DAE64 80144764 AFA20014 */ sw $v0, 0x14($sp) -/* DAE68 80144768 00141400 */ sll $v0, $s4, 0x10 -/* DAE6C 8014476C 00021403 */ sra $v0, $v0, 0x10 -/* DAE70 80144770 AFA20018 */ sw $v0, 0x18($sp) -/* DAE74 80144774 AFA0001C */ sw $zero, 0x1c($sp) -.L80144778: -/* DAE78 80144778 0C04FDC1 */ jal draw_rect_hud_element -/* DAE7C 8014477C AFA00020 */ sw $zero, 0x20($sp) -.L80144780: -/* DAE80 80144780 8FBF0044 */ lw $ra, 0x44($sp) -/* DAE84 80144784 8FB60040 */ lw $s6, 0x40($sp) -/* DAE88 80144788 8FB5003C */ lw $s5, 0x3c($sp) -/* DAE8C 8014478C 8FB40038 */ lw $s4, 0x38($sp) -/* DAE90 80144790 8FB30034 */ lw $s3, 0x34($sp) -/* DAE94 80144794 8FB20030 */ lw $s2, 0x30($sp) -/* DAE98 80144798 8FB1002C */ lw $s1, 0x2c($sp) -/* DAE9C 8014479C 8FB00028 */ lw $s0, 0x28($sp) -/* DAEA0 801447A0 03E00008 */ jr $ra -/* DAEA4 801447A4 27BD0048 */ addiu $sp, $sp, 0x48 diff --git a/ver/us/asm/nonmatchings/hud_element/func_80143C48.s b/ver/us/asm/nonmatchings/hud_element/func_80143C48.s deleted file mode 100644 index e7ef3508d5..0000000000 --- a/ver/us/asm/nonmatchings/hud_element/func_80143C48.s +++ /dev/null @@ -1,378 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80143C48 -/* DA348 80143C48 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* DA34C 80143C4C AFBE0040 */ sw $fp, 0x40($sp) -/* DA350 80143C50 0080F02D */ daddu $fp, $a0, $zero -/* DA354 80143C54 AFB10024 */ sw $s1, 0x24($sp) -/* DA358 80143C58 00C0882D */ daddu $s1, $a2, $zero -/* DA35C 80143C5C 3C02800B */ lui $v0, %hi(gCameras) -/* DA360 80143C60 24421D80 */ addiu $v0, $v0, %lo(gCameras) -/* DA364 80143C64 00111880 */ sll $v1, $s1, 2 -/* DA368 80143C68 00711821 */ addu $v1, $v1, $s1 -/* DA36C 80143C6C 00031880 */ sll $v1, $v1, 2 -/* DA370 80143C70 00711823 */ subu $v1, $v1, $s1 -/* DA374 80143C74 000320C0 */ sll $a0, $v1, 3 -/* DA378 80143C78 00641821 */ addu $v1, $v1, $a0 -/* DA37C 80143C7C 000318C0 */ sll $v1, $v1, 3 -/* DA380 80143C80 AFB60038 */ sw $s6, 0x38($sp) -/* DA384 80143C84 0062B021 */ addu $s6, $v1, $v0 -/* DA388 80143C88 AFBF0044 */ sw $ra, 0x44($sp) -/* DA38C 80143C8C AFB7003C */ sw $s7, 0x3c($sp) -/* DA390 80143C90 AFB50034 */ sw $s5, 0x34($sp) -/* DA394 80143C94 AFB40030 */ sw $s4, 0x30($sp) -/* DA398 80143C98 AFB3002C */ sw $s3, 0x2c($sp) -/* DA39C 80143C9C AFB20028 */ sw $s2, 0x28($sp) -/* DA3A0 80143CA0 18A00133 */ blez $a1, .L80144170 -/* DA3A4 80143CA4 AFB00020 */ sw $s0, 0x20($sp) -/* DA3A8 80143CA8 96C20000 */ lhu $v0, ($s6) -/* DA3AC 80143CAC 1040014E */ beqz $v0, .L801441E8 -/* DA3B0 80143CB0 30420002 */ andi $v0, $v0, 2 -/* DA3B4 80143CB4 1440014C */ bnez $v0, .L801441E8 -/* DA3B8 80143CB8 3C02DC08 */ lui $v0, 0xdc08 -/* DA3BC 80143CBC 34420008 */ ori $v0, $v0, 8 -/* DA3C0 80143CC0 3C04D9C0 */ lui $a0, 0xd9c0 -/* DA3C4 80143CC4 3484F9FB */ ori $a0, $a0, 0xf9fb -/* DA3C8 80143CC8 3C05E300 */ lui $a1, 0xe300 -/* DA3CC 80143CCC 34A50800 */ ori $a1, $a1, 0x800 -/* DA3D0 80143CD0 3C06E300 */ lui $a2, 0xe300 -/* DA3D4 80143CD4 34C61001 */ ori $a2, $a2, 0x1001 -/* DA3D8 80143CD8 3C07E300 */ lui $a3, 0xe300 -/* DA3DC 80143CDC 34E71201 */ ori $a3, $a3, 0x1201 -/* DA3E0 80143CE0 3C0AFCFF */ lui $t2, 0xfcff -/* DA3E4 80143CE4 354AFFFF */ ori $t2, $t2, 0xffff -/* DA3E8 80143CE8 3C08FFFE */ lui $t0, 0xfffe -/* DA3EC 80143CEC 3508793C */ ori $t0, $t0, 0x793c -/* DA3F0 80143CF0 3C0BE200 */ lui $t3, 0xe200 -/* DA3F4 80143CF4 356B001C */ ori $t3, $t3, 0x1c -/* DA3F8 80143CF8 3C090F0A */ lui $t1, 0xf0a -/* DA3FC 80143CFC 35294000 */ ori $t1, $t1, 0x4000 -/* DA400 80143D00 3C0CDB04 */ lui $t4, 0xdb04 -/* DA404 80143D04 358C0004 */ ori $t4, $t4, 4 -/* DA408 80143D08 3C0DDB04 */ lui $t5, 0xdb04 -/* DA40C 80143D0C 35AD000C */ ori $t5, $t5, 0xc -/* DA410 80143D10 3C0EDB04 */ lui $t6, 0xdb04 -/* DA414 80143D14 35CE0014 */ ori $t6, $t6, 0x14 -/* DA418 80143D18 3C0FDB04 */ lui $t7, 0xdb04 -/* DA41C 80143D1C 35EF001C */ ori $t7, $t7, 0x1c -/* DA420 80143D20 3C14E300 */ lui $s4, 0xe300 -/* DA424 80143D24 36940A01 */ ori $s4, $s4, 0xa01 -/* DA428 80143D28 3C15FF10 */ lui $s5, 0xff10 -/* DA42C 80143D2C 36B5013F */ ori $s5, $s5, 0x13f -/* DA430 80143D30 3C12800A */ lui $s2, %hi(gMasterGfxPos) -/* DA434 80143D34 2652A66C */ addiu $s2, $s2, %lo(gMasterGfxPos) -/* DA438 80143D38 8E500000 */ lw $s0, ($s2) -/* DA43C 80143D3C 3C13E700 */ lui $s3, 0xe700 -/* DA440 80143D40 3C01800A */ lui $at, %hi(gCurrentCamID) -/* DA444 80143D44 A431A634 */ sh $s1, %lo(gCurrentCamID)($at) -/* DA448 80143D48 0200182D */ daddu $v1, $s0, $zero -/* DA44C 80143D4C 26100008 */ addiu $s0, $s0, 8 -/* DA450 80143D50 AE500000 */ sw $s0, ($s2) -/* DA454 80143D54 AC620000 */ sw $v0, ($v1) -/* DA458 80143D58 26C200A0 */ addiu $v0, $s6, 0xa0 -/* DA45C 80143D5C AC620004 */ sw $v0, 4($v1) -/* DA460 80143D60 26020008 */ addiu $v0, $s0, 8 -/* DA464 80143D64 AE420000 */ sw $v0, ($s2) -/* DA468 80143D68 26020010 */ addiu $v0, $s0, 0x10 -/* DA46C 80143D6C AE040000 */ sw $a0, ($s0) -/* DA470 80143D70 AE000004 */ sw $zero, 4($s0) -/* DA474 80143D74 AE420000 */ sw $v0, ($s2) -/* DA478 80143D78 3C02D700 */ lui $v0, 0xd700 -/* DA47C 80143D7C AE020008 */ sw $v0, 8($s0) -/* DA480 80143D80 26020018 */ addiu $v0, $s0, 0x18 -/* DA484 80143D84 AE00000C */ sw $zero, 0xc($s0) -/* DA488 80143D88 AE420000 */ sw $v0, ($s2) -/* DA48C 80143D8C 26020020 */ addiu $v0, $s0, 0x20 -/* DA490 80143D90 AE050010 */ sw $a1, 0x10($s0) -/* DA494 80143D94 AE000014 */ sw $zero, 0x14($s0) -/* DA498 80143D98 AE420000 */ sw $v0, ($s2) -/* DA49C 80143D9C 26020028 */ addiu $v0, $s0, 0x28 -/* DA4A0 80143DA0 AE060018 */ sw $a2, 0x18($s0) -/* DA4A4 80143DA4 AE00001C */ sw $zero, 0x1c($s0) -/* DA4A8 80143DA8 AE420000 */ sw $v0, ($s2) -/* DA4AC 80143DAC 24022000 */ addiu $v0, $zero, 0x2000 -/* DA4B0 80143DB0 AE020024 */ sw $v0, 0x24($s0) -/* DA4B4 80143DB4 26020030 */ addiu $v0, $s0, 0x30 -/* DA4B8 80143DB8 AE070020 */ sw $a3, 0x20($s0) -/* DA4BC 80143DBC AE420000 */ sw $v0, ($s2) -/* DA4C0 80143DC0 26020038 */ addiu $v0, $s0, 0x38 -/* DA4C4 80143DC4 AE0A0028 */ sw $t2, 0x28($s0) -/* DA4C8 80143DC8 AE08002C */ sw $t0, 0x2c($s0) -/* DA4CC 80143DCC AE420000 */ sw $v0, ($s2) -/* DA4D0 80143DD0 26020040 */ addiu $v0, $s0, 0x40 -/* DA4D4 80143DD4 24030002 */ addiu $v1, $zero, 2 -/* DA4D8 80143DD8 AE0B0030 */ sw $t3, 0x30($s0) -/* DA4DC 80143DDC AE090034 */ sw $t1, 0x34($s0) -/* DA4E0 80143DE0 AE420000 */ sw $v0, ($s2) -/* DA4E4 80143DE4 26020048 */ addiu $v0, $s0, 0x48 -/* DA4E8 80143DE8 AE0C0038 */ sw $t4, 0x38($s0) -/* DA4EC 80143DEC AE03003C */ sw $v1, 0x3c($s0) -/* DA4F0 80143DF0 AE420000 */ sw $v0, ($s2) -/* DA4F4 80143DF4 26020050 */ addiu $v0, $s0, 0x50 -/* DA4F8 80143DF8 AE030044 */ sw $v1, 0x44($s0) -/* DA4FC 80143DFC 3403FFFE */ ori $v1, $zero, 0xfffe -/* DA500 80143E00 AE0D0040 */ sw $t5, 0x40($s0) -/* DA504 80143E04 AE420000 */ sw $v0, ($s2) -/* DA508 80143E08 AE0E0048 */ sw $t6, 0x48($s0) -/* DA50C 80143E0C 3C04800A */ lui $a0, %hi(nuGfxZBuffer) -/* DA510 80143E10 8C84A5DC */ lw $a0, %lo(nuGfxZBuffer)($a0) -/* DA514 80143E14 26020058 */ addiu $v0, $s0, 0x58 -/* DA518 80143E18 AE03004C */ sw $v1, 0x4c($s0) -/* DA51C 80143E1C AE420000 */ sw $v0, ($s2) -/* DA520 80143E20 26020060 */ addiu $v0, $s0, 0x60 -/* DA524 80143E24 AE0F0050 */ sw $t7, 0x50($s0) -/* DA528 80143E28 AE030054 */ sw $v1, 0x54($s0) -/* DA52C 80143E2C AE420000 */ sw $v0, ($s2) -/* DA530 80143E30 26020068 */ addiu $v0, $s0, 0x68 -/* DA534 80143E34 AE130058 */ sw $s3, 0x58($s0) -/* DA538 80143E38 AE00005C */ sw $zero, 0x5c($s0) -/* DA53C 80143E3C AE420000 */ sw $v0, ($s2) -/* DA540 80143E40 3C020030 */ lui $v0, 0x30 -/* DA544 80143E44 AE020064 */ sw $v0, 0x64($s0) -/* DA548 80143E48 26020070 */ addiu $v0, $s0, 0x70 -/* DA54C 80143E4C AE140060 */ sw $s4, 0x60($s0) -/* DA550 80143E50 AE420000 */ sw $v0, ($s2) -/* DA554 80143E54 0C0187A4 */ jal osVirtualToPhysical -/* DA558 80143E58 AE150068 */ sw $s5, 0x68($s0) -/* DA55C 80143E5C 3C05FFFC */ lui $a1, 0xfffc -/* DA560 80143E60 8E510000 */ lw $s1, ($s2) -/* DA564 80143E64 34A5FFFC */ ori $a1, $a1, 0xfffc -/* DA568 80143E68 AE02006C */ sw $v0, 0x6c($s0) -/* DA56C 80143E6C 3C02F700 */ lui $v0, 0xf700 -/* DA570 80143E70 3C04800A */ lui $a0, %hi(nuGfxCfb_ptr) -/* DA574 80143E74 8C84A64C */ lw $a0, %lo(nuGfxCfb_ptr)($a0) -/* DA578 80143E78 0220182D */ daddu $v1, $s1, $zero -/* DA57C 80143E7C 26310008 */ addiu $s1, $s1, 8 -/* DA580 80143E80 AE510000 */ sw $s1, ($s2) -/* DA584 80143E84 AC620000 */ sw $v0, ($v1) -/* DA588 80143E88 26220008 */ addiu $v0, $s1, 8 -/* DA58C 80143E8C AC650004 */ sw $a1, 4($v1) -/* DA590 80143E90 AE420000 */ sw $v0, ($s2) -/* DA594 80143E94 86C3000E */ lh $v1, 0xe($s6) -/* DA598 80143E98 86C5000A */ lh $a1, 0xa($s6) -/* DA59C 80143E9C 26220010 */ addiu $v0, $s1, 0x10 -/* DA5A0 80143EA0 AE420000 */ sw $v0, ($s2) -/* DA5A4 80143EA4 86C20010 */ lh $v0, 0x10($s6) -/* DA5A8 80143EA8 00651821 */ addu $v1, $v1, $a1 -/* DA5AC 80143EAC 2463FFFF */ addiu $v1, $v1, -1 -/* DA5B0 80143EB0 306303FF */ andi $v1, $v1, 0x3ff -/* DA5B4 80143EB4 86C5000C */ lh $a1, 0xc($s6) -/* DA5B8 80143EB8 00031B80 */ sll $v1, $v1, 0xe -/* DA5BC 80143EBC 00451021 */ addu $v0, $v0, $a1 -/* DA5C0 80143EC0 2442FFFF */ addiu $v0, $v0, -1 -/* DA5C4 80143EC4 304203FF */ andi $v0, $v0, 0x3ff -/* DA5C8 80143EC8 00021080 */ sll $v0, $v0, 2 -/* DA5CC 80143ECC 3C05F600 */ lui $a1, 0xf600 -/* DA5D0 80143ED0 00451025 */ or $v0, $v0, $a1 -/* DA5D4 80143ED4 00621825 */ or $v1, $v1, $v0 -/* DA5D8 80143ED8 AE230000 */ sw $v1, ($s1) -/* DA5DC 80143EDC 96C2000E */ lhu $v0, 0xe($s6) -/* DA5E0 80143EE0 96C50010 */ lhu $a1, 0x10($s6) -/* DA5E4 80143EE4 26230018 */ addiu $v1, $s1, 0x18 -/* DA5E8 80143EE8 AE430000 */ sw $v1, ($s2) -/* DA5EC 80143EEC AE330008 */ sw $s3, 8($s1) -/* DA5F0 80143EF0 AE20000C */ sw $zero, 0xc($s1) -/* DA5F4 80143EF4 AE350010 */ sw $s5, 0x10($s1) -/* DA5F8 80143EF8 304203FF */ andi $v0, $v0, 0x3ff -/* DA5FC 80143EFC 00021380 */ sll $v0, $v0, 0xe -/* DA600 80143F00 30A503FF */ andi $a1, $a1, 0x3ff -/* DA604 80143F04 00052880 */ sll $a1, $a1, 2 -/* DA608 80143F08 00451025 */ or $v0, $v0, $a1 -/* DA60C 80143F0C 0C0187A4 */ jal osVirtualToPhysical -/* DA610 80143F10 AE220004 */ sw $v0, 4($s1) -/* DA614 80143F14 26D000D4 */ addiu $s0, $s6, 0xd4 -/* DA618 80143F18 8E430000 */ lw $v1, ($s2) -/* DA61C 80143F1C 44800000 */ mtc1 $zero, $f0 -/* DA620 80143F20 3C01447A */ lui $at, 0x447a -/* DA624 80143F24 44811000 */ mtc1 $at, $f2 -/* DA628 80143F28 3C013F80 */ lui $at, 0x3f80 -/* DA62C 80143F2C 44812000 */ mtc1 $at, $f4 -/* DA630 80143F30 3C0643A0 */ lui $a2, 0x43a0 -/* DA634 80143F34 3C07C370 */ lui $a3, 0xc370 -/* DA638 80143F38 0200202D */ daddu $a0, $s0, $zero -/* DA63C 80143F3C AE220014 */ sw $v0, 0x14($s1) -/* DA640 80143F40 0060102D */ daddu $v0, $v1, $zero -/* DA644 80143F44 44050000 */ mfc1 $a1, $f0 -/* DA648 80143F48 3C01C47A */ lui $at, 0xc47a -/* DA64C 80143F4C 44810000 */ mtc1 $at, $f0 -/* DA650 80143F50 24630008 */ addiu $v1, $v1, 8 -/* DA654 80143F54 AE430000 */ sw $v1, ($s2) -/* DA658 80143F58 AC530000 */ sw $s3, ($v0) -/* DA65C 80143F5C AC400004 */ sw $zero, 4($v0) -/* DA660 80143F60 E7A20018 */ swc1 $f2, 0x18($sp) -/* DA664 80143F64 E7A4001C */ swc1 $f4, 0x1c($sp) -/* DA668 80143F68 AFA50010 */ sw $a1, 0x10($sp) -/* DA66C 80143F6C 0C018E44 */ jal guOrthoF -/* DA670 80143F70 E7A00014 */ swc1 $f0, 0x14($sp) -/* DA674 80143F74 0200202D */ daddu $a0, $s0, $zero -/* DA678 80143F78 3C10800A */ lui $s0, %hi(gDisplayContext) -/* DA67C 80143F7C 2610A674 */ addiu $s0, $s0, %lo(gDisplayContext) -/* DA680 80143F80 3C05800A */ lui $a1, %hi(gCurrentCamID) -/* DA684 80143F84 84A5A634 */ lh $a1, %lo(gCurrentCamID)($a1) -/* DA688 80143F88 8E020000 */ lw $v0, ($s0) -/* DA68C 80143F8C 00052980 */ sll $a1, $a1, 6 -/* DA690 80143F90 24A50030 */ addiu $a1, $a1, 0x30 -/* DA694 80143F94 0C019D40 */ jal guMtxF2L -/* DA698 80143F98 00452821 */ addu $a1, $v0, $a1 -/* DA69C 80143F9C 3C03DA38 */ lui $v1, 0xda38 -/* DA6A0 80143FA0 34630007 */ ori $v1, $v1, 7 -/* DA6A4 80143FA4 3C07ED03 */ lui $a3, 0xed03 -/* DA6A8 80143FA8 34E70050 */ ori $a3, $a3, 0x50 -/* DA6AC 80143FAC 3C06004D */ lui $a2, 0x4d -/* DA6B0 80143FB0 34C60370 */ ori $a2, $a2, 0x370 -/* DA6B4 80143FB4 3C08D9C0 */ lui $t0, 0xd9c0 -/* DA6B8 80143FB8 3508F9FA */ ori $t0, $t0, 0xf9fa -/* DA6BC 80143FBC 3C0AD9FF */ lui $t2, 0xd9ff -/* DA6C0 80143FC0 354AFFFF */ ori $t2, $t2, 0xffff -/* DA6C4 80143FC4 3C090022 */ lui $t1, 0x22 -/* DA6C8 80143FC8 35290005 */ ori $t1, $t1, 5 -/* DA6CC 80143FCC 3C0BDC08 */ lui $t3, 0xdc08 -/* DA6D0 80143FD0 356B060A */ ori $t3, $t3, 0x60a -/* DA6D4 80143FD4 3C0CDC08 */ lui $t4, 0xdc08 -/* DA6D8 80143FD8 358C090A */ ori $t4, $t4, 0x90a -/* DA6DC 80143FDC 3C0DD700 */ lui $t5, 0xd700 -/* DA6E0 80143FE0 35AD0002 */ ori $t5, $t5, 2 -/* DA6E4 80143FE4 3C0EE300 */ lui $t6, 0xe300 -/* DA6E8 80143FE8 35CE0F00 */ ori $t6, $t6, 0xf00 -/* DA6EC 80143FEC 3C0FE300 */ lui $t7, 0xe300 -/* DA6F0 80143FF0 35EF0C00 */ ori $t7, $t7, 0xc00 -/* DA6F4 80143FF4 3C11E300 */ lui $s1, 0xe300 -/* DA6F8 80143FF8 36311801 */ ori $s1, $s1, 0x1801 -/* DA6FC 80143FFC 3C15E300 */ lui $s5, 0xe300 -/* DA700 80144000 36B50D01 */ ori $s5, $s5, 0xd01 -/* DA704 80144004 3C16E300 */ lui $s6, 0xe300 -/* DA708 80144008 36D61402 */ ori $s6, $s6, 0x1402 -/* DA70C 8014400C 3C17E300 */ lui $s7, 0xe300 -/* DA710 80144010 36F71700 */ ori $s7, $s7, 0x1700 -/* DA714 80144014 3C18E200 */ lui $t8, 0xe200 -/* DA718 80144018 37181E01 */ ori $t8, $t8, 0x1e01 -/* DA71C 8014401C 8E420000 */ lw $v0, ($s2) -/* DA720 80144020 3C04800A */ lui $a0, %hi(gCurrentCamID) -/* DA724 80144024 8484A634 */ lh $a0, %lo(gCurrentCamID)($a0) -/* DA728 80144028 0040282D */ daddu $a1, $v0, $zero -/* DA72C 8014402C 24420008 */ addiu $v0, $v0, 8 -/* DA730 80144030 00042180 */ sll $a0, $a0, 6 -/* DA734 80144034 AE420000 */ sw $v0, ($s2) -/* DA738 80144038 ACA30000 */ sw $v1, ($a1) -/* DA73C 8014403C 8E030000 */ lw $v1, ($s0) -/* DA740 80144040 24840030 */ addiu $a0, $a0, 0x30 -/* DA744 80144044 00641821 */ addu $v1, $v1, $a0 -/* DA748 80144048 ACA30004 */ sw $v1, 4($a1) -/* DA74C 8014404C 24430008 */ addiu $v1, $v0, 8 -/* DA750 80144050 AE430000 */ sw $v1, ($s2) -/* DA754 80144054 24430010 */ addiu $v1, $v0, 0x10 -/* DA758 80144058 AC470000 */ sw $a3, ($v0) -/* DA75C 8014405C AC460004 */ sw $a2, 4($v0) -/* DA760 80144060 AE430000 */ sw $v1, ($s2) -/* DA764 80144064 24430018 */ addiu $v1, $v0, 0x18 -/* DA768 80144068 AC530008 */ sw $s3, 8($v0) -/* DA76C 8014406C AC40000C */ sw $zero, 0xc($v0) -/* DA770 80144070 AE430000 */ sw $v1, ($s2) -/* DA774 80144074 24430020 */ addiu $v1, $v0, 0x20 -/* DA778 80144078 AC540010 */ sw $s4, 0x10($v0) -/* DA77C 8014407C AC400014 */ sw $zero, 0x14($v0) -/* DA780 80144080 AE430000 */ sw $v1, ($s2) -/* DA784 80144084 24430028 */ addiu $v1, $v0, 0x28 -/* DA788 80144088 AC480018 */ sw $t0, 0x18($v0) -/* DA78C 8014408C AC40001C */ sw $zero, 0x1c($v0) -/* DA790 80144090 AE430000 */ sw $v1, ($s2) -/* DA794 80144094 24430030 */ addiu $v1, $v0, 0x30 -/* DA798 80144098 AC4A0020 */ sw $t2, 0x20($v0) -/* DA79C 8014409C AC490024 */ sw $t1, 0x24($v0) -/* DA7A0 801440A0 AE430000 */ sw $v1, ($s2) -/* DA7A4 801440A4 3C03DB02 */ lui $v1, 0xdb02 -/* DA7A8 801440A8 AC430028 */ sw $v1, 0x28($v0) -/* DA7AC 801440AC 24030018 */ addiu $v1, $zero, 0x18 -/* DA7B0 801440B0 AC43002C */ sw $v1, 0x2c($v0) -/* DA7B4 801440B4 24430038 */ addiu $v1, $v0, 0x38 -/* DA7B8 801440B8 3C048015 */ lui $a0, %hi(D_8014F110) -/* DA7BC 801440BC 2484F110 */ addiu $a0, $a0, %lo(D_8014F110) -/* DA7C0 801440C0 AE430000 */ sw $v1, ($s2) -/* DA7C4 801440C4 24430040 */ addiu $v1, $v0, 0x40 -/* DA7C8 801440C8 AC440034 */ sw $a0, 0x34($v0) -/* DA7CC 801440CC 2484FFF8 */ addiu $a0, $a0, -8 -/* DA7D0 801440D0 AC4B0030 */ sw $t3, 0x30($v0) -/* DA7D4 801440D4 AE430000 */ sw $v1, ($s2) -/* DA7D8 801440D8 24430048 */ addiu $v1, $v0, 0x48 -/* DA7DC 801440DC AC4C0038 */ sw $t4, 0x38($v0) -/* DA7E0 801440E0 AC44003C */ sw $a0, 0x3c($v0) -/* DA7E4 801440E4 AE430000 */ sw $v1, ($s2) -/* DA7E8 801440E8 2403FFFF */ addiu $v1, $zero, -1 -/* DA7EC 801440EC AC430044 */ sw $v1, 0x44($v0) -/* DA7F0 801440F0 24430050 */ addiu $v1, $v0, 0x50 -/* DA7F4 801440F4 AC4D0040 */ sw $t5, 0x40($v0) -/* DA7F8 801440F8 AE430000 */ sw $v1, ($s2) -/* DA7FC 801440FC 24430058 */ addiu $v1, $v0, 0x58 -/* DA800 80144100 AC4E0048 */ sw $t6, 0x48($v0) -/* DA804 80144104 AC40004C */ sw $zero, 0x4c($v0) -/* DA808 80144108 AE430000 */ sw $v1, ($s2) -/* DA80C 8014410C 3C030008 */ lui $v1, 8 -/* DA810 80144110 AC430054 */ sw $v1, 0x54($v0) -/* DA814 80144114 24430060 */ addiu $v1, $v0, 0x60 -/* DA818 80144118 AC4F0050 */ sw $t7, 0x50($v0) -/* DA81C 8014411C AE430000 */ sw $v1, ($s2) -/* DA820 80144120 240300C0 */ addiu $v1, $zero, 0xc0 -/* DA824 80144124 AC43005C */ sw $v1, 0x5c($v0) -/* DA828 80144128 24430068 */ addiu $v1, $v0, 0x68 -/* DA82C 8014412C AC510058 */ sw $s1, 0x58($v0) -/* DA830 80144130 AE430000 */ sw $v1, ($s2) -/* DA834 80144134 24430070 */ addiu $v1, $v0, 0x70 -/* DA838 80144138 AC550060 */ sw $s5, 0x60($v0) -/* DA83C 8014413C AC400064 */ sw $zero, 0x64($v0) -/* DA840 80144140 AE430000 */ sw $v1, ($s2) -/* DA844 80144144 24030C00 */ addiu $v1, $zero, 0xc00 -/* DA848 80144148 AC43006C */ sw $v1, 0x6c($v0) -/* DA84C 8014414C 24430078 */ addiu $v1, $v0, 0x78 -/* DA850 80144150 AC560068 */ sw $s6, 0x68($v0) -/* DA854 80144154 AE430000 */ sw $v1, ($s2) -/* DA858 80144158 24430080 */ addiu $v1, $v0, 0x80 -/* DA85C 8014415C AC570070 */ sw $s7, 0x70($v0) -/* DA860 80144160 AC400074 */ sw $zero, 0x74($v0) -/* DA864 80144164 AE430000 */ sw $v1, ($s2) -/* DA868 80144168 AC580078 */ sw $t8, 0x78($v0) -/* DA86C 8014416C AC40007C */ sw $zero, 0x7c($v0) -.L80144170: -/* DA870 80144170 07C0001D */ bltz $fp, .L801441E8 -/* DA874 80144174 2402F7FF */ addiu $v0, $zero, -0x801 -/* DA878 80144178 03C2F024 */ and $fp, $fp, $v0 -/* DA87C 8014417C 3C038015 */ lui $v1, %hi(hudElements) -/* DA880 80144180 8C637960 */ lw $v1, %lo(hudElements)($v1) -/* DA884 80144184 001E1080 */ sll $v0, $fp, 2 -/* DA888 80144188 00431021 */ addu $v0, $v0, $v1 -/* DA88C 8014418C 8C440000 */ lw $a0, ($v0) -/* DA890 80144190 10800015 */ beqz $a0, .L801441E8 -/* DA894 80144194 00000000 */ nop -/* DA898 80144198 8C830000 */ lw $v1, ($a0) -/* DA89C 8014419C 10600012 */ beqz $v1, .L801441E8 -/* DA8A0 801441A0 30620002 */ andi $v0, $v1, 2 -/* DA8A4 801441A4 14400010 */ bnez $v0, .L801441E8 -/* DA8A8 801441A8 3C021020 */ lui $v0, 0x1020 -/* DA8AC 801441AC 00621024 */ and $v0, $v1, $v0 -/* DA8B0 801441B0 1440000D */ bnez $v0, .L801441E8 -/* DA8B4 801441B4 3C020001 */ lui $v0, 1 -/* DA8B8 801441B8 00621024 */ and $v0, $v1, $v0 -/* DA8BC 801441BC 1040000A */ beqz $v0, .L801441E8 -/* DA8C0 801441C0 30620040 */ andi $v0, $v1, 0x40 -/* DA8C4 801441C4 14400008 */ bnez $v0, .L801441E8 -/* DA8C8 801441C8 00000000 */ nop -/* DA8CC 801441CC 80820045 */ lb $v0, 0x45($a0) -/* DA8D0 801441D0 04400005 */ bltz $v0, .L801441E8 -/* DA8D4 801441D4 30620080 */ andi $v0, $v1, 0x80 -/* DA8D8 801441D8 10400003 */ beqz $v0, .L801441E8 -/* DA8DC 801441DC 00000000 */ nop -/* DA8E0 801441E0 0C050AFF */ jal render_hud_element -/* DA8E4 801441E4 00000000 */ nop -.L801441E8: -/* DA8E8 801441E8 8FBF0044 */ lw $ra, 0x44($sp) -/* DA8EC 801441EC 8FBE0040 */ lw $fp, 0x40($sp) -/* DA8F0 801441F0 8FB7003C */ lw $s7, 0x3c($sp) -/* DA8F4 801441F4 8FB60038 */ lw $s6, 0x38($sp) -/* DA8F8 801441F8 8FB50034 */ lw $s5, 0x34($sp) -/* DA8FC 801441FC 8FB40030 */ lw $s4, 0x30($sp) -/* DA900 80144200 8FB3002C */ lw $s3, 0x2c($sp) -/* DA904 80144204 8FB20028 */ lw $s2, 0x28($sp) -/* DA908 80144208 8FB10024 */ lw $s1, 0x24($sp) -/* DA90C 8014420C 8FB00020 */ lw $s0, 0x20($sp) -/* DA910 80144210 03E00008 */ jr $ra -/* DA914 80144214 27BD0048 */ addiu $sp, $sp, 0x48 diff --git a/ver/us/asm/nonmatchings/hud_element/hud_element_update.s b/ver/us/asm/nonmatchings/hud_element/hud_element_update.s index 4b51ace332..5448144a29 100644 --- a/ver/us/asm/nonmatchings/hud_element/hud_element_update.s +++ b/ver/us/asm/nonmatchings/hud_element/hud_element_update.s @@ -105,8 +105,8 @@ glabel hud_element_update /* D7F54 80141854 00621024 */ and $v0, $v1, $v0 /* D7F58 80141858 14400012 */ bnez $v0, .L801418A4 /* D7F5C 8014185C 00000000 */ nop -/* D7F60 80141860 3C028015 */ lui $v0, %hi(D_8014EFCC) -/* D7F64 80141864 2442EFCC */ addiu $v0, $v0, %lo(D_8014EFCC) +/* D7F60 80141860 3C028015 */ lui $v0, %hi(gHudElementSizes) +/* D7F64 80141864 2442EFCC */ addiu $v0, $v0, %lo(gHudElementSizes) /* D7F68 80141868 82650046 */ lb $a1, 0x46($s3) /* D7F6C 8014186C 82660045 */ lb $a2, 0x45($s3) /* D7F70 80141870 00051840 */ sll $v1, $a1, 1 @@ -186,8 +186,8 @@ glabel hud_element_update /* D8088 80141988 00621024 */ and $v0, $v1, $v0 /* D808C 8014198C 14400012 */ bnez $v0, .L801419D8 /* D8090 80141990 00000000 */ nop -/* D8094 80141994 3C028015 */ lui $v0, %hi(D_8014EFCC) -/* D8098 80141998 2442EFCC */ addiu $v0, $v0, %lo(D_8014EFCC) +/* D8094 80141994 3C028015 */ lui $v0, %hi(gHudElementSizes) +/* D8098 80141998 2442EFCC */ addiu $v0, $v0, %lo(gHudElementSizes) /* D809C 8014199C 82650046 */ lb $a1, 0x46($s3) /* D80A0 801419A0 82660045 */ lb $a2, 0x45($s3) /* D80A4 801419A4 00051840 */ sll $v1, $a1, 1 @@ -301,8 +301,8 @@ glabel hud_element_update /* D8228 80141B28 00621024 */ and $v0, $v1, $v0 /* D822C 80141B2C 14400012 */ bnez $v0, .L80141B78 /* D8230 80141B30 00000000 */ nop -/* D8234 80141B34 3C028015 */ lui $v0, %hi(D_8014EFCC) -/* D8238 80141B38 2442EFCC */ addiu $v0, $v0, %lo(D_8014EFCC) +/* D8234 80141B34 3C028015 */ lui $v0, %hi(gHudElementSizes) +/* D8238 80141B38 2442EFCC */ addiu $v0, $v0, %lo(gHudElementSizes) /* D823C 80141B3C 82650046 */ lb $a1, 0x46($s3) /* D8240 80141B40 82660045 */ lb $a2, 0x45($s3) /* D8244 80141B44 00051840 */ sll $v1, $a1, 1 @@ -432,8 +432,8 @@ glabel hud_element_update /* D840C 80141D0C 24020001 */ addiu $v0, $zero, 1 /* D8410 80141D10 3C013F80 */ lui $at, 0x3f80 /* D8414 80141D14 44813000 */ mtc1 $at, $f6 -/* D8418 80141D18 3C048015 */ lui $a0, %hi(D_8014EFCC) -/* D841C 80141D1C 2484EFCC */ addiu $a0, $a0, %lo(D_8014EFCC) +/* D8418 80141D18 3C048015 */ lui $a0, %hi(gHudElementSizes) +/* D841C 80141D1C 2484EFCC */ addiu $a0, $a0, %lo(gHudElementSizes) /* D8420 80141D20 AE700004 */ sw $s0, 4($s3) /* D8424 80141D24 00451804 */ sllv $v1, $a1, $v0 /* D8428 80141D28 00651821 */ addu $v1, $v1, $a1 @@ -553,8 +553,8 @@ glabel hud_element_update /* D85D0 80141ED0 14400012 */ bnez $v0, .L80141F1C /* D85D4 80141ED4 E6640030 */ swc1 $f4, 0x30($s3) /* D85D8 80141ED8 82630046 */ lb $v1, 0x46($s3) -/* D85DC 80141EDC 3C048015 */ lui $a0, %hi(D_8014EFCC) -/* D85E0 80141EE0 2484EFCC */ addiu $a0, $a0, %lo(D_8014EFCC) +/* D85DC 80141EDC 3C048015 */ lui $a0, %hi(gHudElementSizes) +/* D85E0 80141EE0 2484EFCC */ addiu $a0, $a0, %lo(gHudElementSizes) /* D85E4 80141EE4 00031040 */ sll $v0, $v1, 1 /* D85E8 80141EE8 00431021 */ addu $v0, $v0, $v1 /* D85EC 80141EEC 00021040 */ sll $v0, $v0, 1 diff --git a/ver/us/asm/nonmatchings/hud_element/load_hud_element.s b/ver/us/asm/nonmatchings/hud_element/load_hud_element.s index 4bf42dfacf..0cfc58bc0d 100644 --- a/ver/us/asm/nonmatchings/hud_element/load_hud_element.s +++ b/ver/us/asm/nonmatchings/hud_element/load_hud_element.s @@ -22,8 +22,8 @@ glabel load_hud_element /* D5A78 8013F378 120000D8 */ beqz $s0, .L8013F6DC_D5DDC /* D5A7C 8013F37C AFB10014 */ sw $s1, 0x14($sp) /* D5A80 8013F380 0000982D */ daddu $s3, $zero, $zero -/* D5A84 8013F384 3C168015 */ lui $s6, %hi(D_8014EFCC) -/* D5A88 8013F388 26D6EFCC */ addiu $s6, $s6, %lo(D_8014EFCC) +/* D5A84 8013F384 3C168015 */ lui $s6, %hi(gHudElementSizes) +/* D5A88 8013F388 26D6EFCC */ addiu $s6, $s6, %lo(gHudElementSizes) .L8013F38C_D5A8C: /* D5A8C 8013F38C 8E030000 */ lw $v1, ($s0) /* D5A90 8013F390 2C62001C */ sltiu $v0, $v1, 0x1c diff --git a/ver/us/asm/nonmatchings/hud_element/render_hud_element.s b/ver/us/asm/nonmatchings/hud_element/render_hud_element.s index d00ecda9a1..b4e472aa45 100644 --- a/ver/us/asm/nonmatchings/hud_element/render_hud_element.s +++ b/ver/us/asm/nonmatchings/hud_element/render_hud_element.s @@ -56,8 +56,8 @@ glabel render_hud_element /* D93BC 80142CBC 14400011 */ bnez $v0, .L80142D04 /* D93C0 80142CC0 00000000 */ nop /* D93C4 80142CC4 82E30046 */ lb $v1, 0x46($s7) -/* D93C8 80142CC8 3C048015 */ lui $a0, %hi(D_8014EFCC) -/* D93CC 80142CCC 2484EFCC */ addiu $a0, $a0, %lo(D_8014EFCC) +/* D93C8 80142CC8 3C048015 */ lui $a0, %hi(gHudElementSizes) +/* D93CC 80142CCC 2484EFCC */ addiu $a0, $a0, %lo(gHudElementSizes) /* D93D0 80142CD0 00031040 */ sll $v0, $v1, 1 /* D93D4 80142CD4 00431021 */ addu $v0, $v0, $v1 /* D93D8 80142CD8 00021040 */ sll $v0, $v0, 1 @@ -96,8 +96,8 @@ glabel render_hud_element /* D9450 80142D50 1440000C */ bnez $v0, .L80142D84 /* D9454 80142D54 00000000 */ nop /* D9458 80142D58 82E20046 */ lb $v0, 0x46($s7) -/* D945C 80142D5C 3C048015 */ lui $a0, %hi(D_8014EFCC) -/* D9460 80142D60 2484EFCC */ addiu $a0, $a0, %lo(D_8014EFCC) +/* D945C 80142D5C 3C048015 */ lui $a0, %hi(gHudElementSizes) +/* D9460 80142D60 2484EFCC */ addiu $a0, $a0, %lo(gHudElementSizes) /* D9464 80142D64 00021840 */ sll $v1, $v0, 1 /* D9468 80142D68 00621821 */ addu $v1, $v1, $v0 /* D946C 80142D6C 00031840 */ sll $v1, $v1, 1 diff --git a/ver/us/asm/nonmatchings/hud_element/render_hud_elements_backUI.s b/ver/us/asm/nonmatchings/hud_element/render_hud_elements_backUI.s index a223311885..43e0df258d 100644 --- a/ver/us/asm/nonmatchings/hud_element/render_hud_elements_backUI.s +++ b/ver/us/asm/nonmatchings/hud_element/render_hud_elements_backUI.s @@ -30,8 +30,8 @@ glabel render_hud_elements_backUI /* D8970 80142270 3C03800A */ lui $v1, %hi(gMasterGfxPos) /* D8974 80142274 2463A66C */ addiu $v1, $v1, %lo(gMasterGfxPos) /* D8978 80142278 8C620000 */ lw $v0, ($v1) -/* D897C 8014227C 3C058015 */ lui $a1, %hi(hudElements) -/* D8980 80142280 8CA57960 */ lw $a1, %lo(hudElements)($a1) +/* D897C 8014227C 3C058015 */ lui $a1, %hi(gHudElements) +/* D8980 80142280 8CA57960 */ lw $a1, %lo(gHudElements)($a1) /* D8984 80142284 0040202D */ daddu $a0, $v0, $zero /* D8988 80142288 24420008 */ addiu $v0, $v0, 8 /* D898C 8014228C AC620000 */ sw $v0, ($v1) @@ -70,8 +70,8 @@ glabel render_hud_elements_backUI /* D8A08 80142308 27C2FFFF */ addiu $v0, $fp, -1 /* D8A0C 8014230C 18400024 */ blez $v0, .L801423A0 /* D8A10 80142310 0000B82D */ daddu $s7, $zero, $zero -/* D8A14 80142314 3C0D8015 */ lui $t5, %hi(hudElements) -/* D8A18 80142318 25AD7960 */ addiu $t5, $t5, %lo(hudElements) +/* D8A14 80142314 3C0D8015 */ lui $t5, %hi(gHudElements) +/* D8A18 80142318 25AD7960 */ addiu $t5, $t5, %lo(gHudElements) /* D8A1C 8014231C 27AC0028 */ addiu $t4, $sp, 0x28 /* D8A20 80142320 0180582D */ daddu $t3, $t4, $zero .L80142324: @@ -116,8 +116,8 @@ glabel render_hud_elements_backUI .L801423AC: /* D8AAC 801423AC 03A21021 */ addu $v0, $sp, $v0 /* D8AB0 801423B0 8C420028 */ lw $v0, 0x28($v0) -/* D8AB4 801423B4 3C038015 */ lui $v1, %hi(hudElements) -/* D8AB8 801423B8 8C637960 */ lw $v1, %lo(hudElements)($v1) +/* D8AB4 801423B4 3C038015 */ lui $v1, %hi(gHudElements) +/* D8AB8 801423B8 8C637960 */ lw $v1, %lo(gHudElements)($v1) /* D8ABC 801423BC 00021080 */ sll $v0, $v0, 2 /* D8AC0 801423C0 00431021 */ addu $v0, $v0, $v1 /* D8AC4 801423C4 8C500000 */ lw $s0, ($v0) @@ -132,8 +132,8 @@ glabel render_hud_elements_backUI /* D8AE8 801423E8 1440000B */ bnez $v0, .L80142418 /* D8AEC 801423EC 00000000 */ nop /* D8AF0 801423F0 82030046 */ lb $v1, 0x46($s0) -/* D8AF4 801423F4 3C0E8015 */ lui $t6, %hi(D_8014EFCC) -/* D8AF8 801423F8 25CEEFCC */ addiu $t6, $t6, %lo(D_8014EFCC) +/* D8AF4 801423F4 3C0E8015 */ lui $t6, %hi(gHudElementSizes) +/* D8AF8 801423F8 25CEEFCC */ addiu $t6, $t6, %lo(gHudElementSizes) /* D8AFC 801423FC 00031040 */ sll $v0, $v1, 1 /* D8B00 80142400 00431021 */ addu $v0, $v0, $v1 /* D8B04 80142404 00021040 */ sll $v0, $v0, 1 @@ -153,8 +153,8 @@ glabel render_hud_elements_backUI /* D8B34 80142434 1440000C */ bnez $v0, .L80142468 /* D8B38 80142438 00000000 */ nop /* D8B3C 8014243C 82030045 */ lb $v1, 0x45($s0) -/* D8B40 80142440 3C0E8015 */ lui $t6, %hi(D_8014EFCC) -/* D8B44 80142444 25CEEFCC */ addiu $t6, $t6, %lo(D_8014EFCC) +/* D8B40 80142440 3C0E8015 */ lui $t6, %hi(gHudElementSizes) +/* D8B44 80142444 25CEEFCC */ addiu $t6, $t6, %lo(gHudElementSizes) /* D8B48 80142448 00031040 */ sll $v0, $v1, 1 /* D8B4C 8014244C 00431021 */ addu $v0, $v0, $v1 /* D8B50 80142450 00021040 */ sll $v0, $v0, 1 @@ -230,8 +230,8 @@ glabel render_hud_elements_backUI /* D8C50 80142550 1440000B */ bnez $v0, .L80142580 /* D8C54 80142554 00000000 */ nop /* D8C58 80142558 82030046 */ lb $v1, 0x46($s0) -/* D8C5C 8014255C 3C0E8015 */ lui $t6, %hi(D_8014EFCC) -/* D8C60 80142560 25CEEFCC */ addiu $t6, $t6, %lo(D_8014EFCC) +/* D8C5C 8014255C 3C0E8015 */ lui $t6, %hi(gHudElementSizes) +/* D8C60 80142560 25CEEFCC */ addiu $t6, $t6, %lo(gHudElementSizes) /* D8C64 80142564 00031040 */ sll $v0, $v1, 1 /* D8C68 80142568 00431021 */ addu $v0, $v0, $v1 /* D8C6C 8014256C 00021040 */ sll $v0, $v0, 1 diff --git a/ver/us/asm/nonmatchings/hud_element/render_hud_elements_frontUI.s b/ver/us/asm/nonmatchings/hud_element/render_hud_elements_frontUI.s index bb236cdb18..0466568782 100644 --- a/ver/us/asm/nonmatchings/hud_element/render_hud_elements_frontUI.s +++ b/ver/us/asm/nonmatchings/hud_element/render_hud_elements_frontUI.s @@ -21,8 +21,8 @@ glabel render_hud_elements_frontUI /* D8E5C 8014275C AFB1052C */ sw $s1, 0x52c($sp) /* D8E60 80142760 AFB00528 */ sw $s0, 0x528($sp) /* D8E64 80142764 8C620000 */ lw $v0, ($v1) -/* D8E68 80142768 3C058015 */ lui $a1, %hi(hudElements) -/* D8E6C 8014276C 8CA57960 */ lw $a1, %lo(hudElements)($a1) +/* D8E68 80142768 3C058015 */ lui $a1, %hi(gHudElements) +/* D8E6C 8014276C 8CA57960 */ lw $a1, %lo(gHudElements)($a1) /* D8E70 80142770 0040202D */ daddu $a0, $v0, $zero /* D8E74 80142774 24420008 */ addiu $v0, $v0, 8 /* D8E78 80142778 AC620000 */ sw $v0, ($v1) @@ -61,8 +61,8 @@ glabel render_hud_elements_frontUI /* D8EF4 801427F4 27C2FFFF */ addiu $v0, $fp, -1 /* D8EF8 801427F8 18400024 */ blez $v0, .L8014288C /* D8EFC 801427FC 0000B82D */ daddu $s7, $zero, $zero -/* D8F00 80142800 3C0D8015 */ lui $t5, %hi(hudElements) -/* D8F04 80142804 25AD7960 */ addiu $t5, $t5, %lo(hudElements) +/* D8F00 80142800 3C0D8015 */ lui $t5, %hi(gHudElements) +/* D8F04 80142804 25AD7960 */ addiu $t5, $t5, %lo(gHudElements) /* D8F08 80142808 27AC0028 */ addiu $t4, $sp, 0x28 /* D8F0C 8014280C 0180582D */ daddu $t3, $t4, $zero .L80142810: @@ -107,8 +107,8 @@ glabel render_hud_elements_frontUI .L80142898: /* D8F98 80142898 03A21021 */ addu $v0, $sp, $v0 /* D8F9C 8014289C 8C420028 */ lw $v0, 0x28($v0) -/* D8FA0 801428A0 3C038015 */ lui $v1, %hi(hudElements) -/* D8FA4 801428A4 8C637960 */ lw $v1, %lo(hudElements)($v1) +/* D8FA0 801428A0 3C038015 */ lui $v1, %hi(gHudElements) +/* D8FA4 801428A4 8C637960 */ lw $v1, %lo(gHudElements)($v1) /* D8FA8 801428A8 00021080 */ sll $v0, $v0, 2 /* D8FAC 801428AC 00431021 */ addu $v0, $v0, $v1 /* D8FB0 801428B0 8C500000 */ lw $s0, ($v0) @@ -120,8 +120,8 @@ glabel render_hud_elements_frontUI /* D8FC8 801428C8 1440000B */ bnez $v0, .L801428F8 /* D8FCC 801428CC 00000000 */ nop /* D8FD0 801428D0 82030046 */ lb $v1, 0x46($s0) -/* D8FD4 801428D4 3C0E8015 */ lui $t6, %hi(D_8014EFCC) -/* D8FD8 801428D8 25CEEFCC */ addiu $t6, $t6, %lo(D_8014EFCC) +/* D8FD4 801428D4 3C0E8015 */ lui $t6, %hi(gHudElementSizes) +/* D8FD8 801428D8 25CEEFCC */ addiu $t6, $t6, %lo(gHudElementSizes) /* D8FDC 801428DC 00031040 */ sll $v0, $v1, 1 /* D8FE0 801428E0 00431021 */ addu $v0, $v0, $v1 /* D8FE4 801428E4 00021040 */ sll $v0, $v0, 1 @@ -141,8 +141,8 @@ glabel render_hud_elements_frontUI /* D9014 80142914 1440000C */ bnez $v0, .L80142948 /* D9018 80142918 00000000 */ nop /* D901C 8014291C 82030045 */ lb $v1, 0x45($s0) -/* D9020 80142920 3C0E8015 */ lui $t6, %hi(D_8014EFCC) -/* D9024 80142924 25CEEFCC */ addiu $t6, $t6, %lo(D_8014EFCC) +/* D9020 80142920 3C0E8015 */ lui $t6, %hi(gHudElementSizes) +/* D9024 80142924 25CEEFCC */ addiu $t6, $t6, %lo(gHudElementSizes) /* D9028 80142928 00031040 */ sll $v0, $v1, 1 /* D902C 8014292C 00431021 */ addu $v0, $v0, $v1 /* D9030 80142930 00021040 */ sll $v0, $v0, 1 @@ -218,8 +218,8 @@ glabel render_hud_elements_frontUI /* D9130 80142A30 1440000B */ bnez $v0, .L80142A60 /* D9134 80142A34 00000000 */ nop /* D9138 80142A38 82030045 */ lb $v1, 0x45($s0) -/* D913C 80142A3C 3C0E8015 */ lui $t6, %hi(D_8014EFCC) -/* D9140 80142A40 25CEEFCC */ addiu $t6, $t6, %lo(D_8014EFCC) +/* D913C 80142A3C 3C0E8015 */ lui $t6, %hi(gHudElementSizes) +/* D9140 80142A40 25CEEFCC */ addiu $t6, $t6, %lo(gHudElementSizes) /* D9144 80142A44 00031040 */ sll $v0, $v1, 1 /* D9148 80142A48 00431021 */ addu $v0, $v0, $v1 /* D914C 80142A4C 00021040 */ sll $v0, $v0, 1 diff --git a/ver/us/asm/nonmatchings/hud_element/render_hud_elements_world.s b/ver/us/asm/nonmatchings/hud_element/render_hud_elements_world.s index c6aa0b9590..c182c05dca 100644 --- a/ver/us/asm/nonmatchings/hud_element/render_hud_elements_world.s +++ b/ver/us/asm/nonmatchings/hud_element/render_hud_elements_world.s @@ -16,8 +16,8 @@ glabel render_hud_elements_world /* D9DE0 801436E0 3C091020 */ lui $t1, 0x1020 /* D9DE4 801436E4 3C080001 */ lui $t0, 1 /* D9DE8 801436E8 3C074000 */ lui $a3, 0x4000 -/* D9DEC 801436EC 3C068015 */ lui $a2, %hi(hudElements) -/* D9DF0 801436F0 8CC67960 */ lw $a2, %lo(hudElements)($a2) +/* D9DEC 801436EC 3C068015 */ lui $a2, %hi(gHudElements) +/* D9DF0 801436F0 8CC67960 */ lw $a2, %lo(gHudElements)($a2) /* D9DF4 801436F4 27A50010 */ addiu $a1, $sp, 0x10 .L801436F8: /* D9DF8 801436F8 8CC40000 */ lw $a0, ($a2) @@ -59,8 +59,8 @@ glabel render_hud_elements_world /* D9E84 80143784 2642FFFF */ addiu $v0, $s2, -1 /* D9E88 80143788 18400024 */ blez $v0, .L8014381C /* D9E8C 8014378C 0000882D */ daddu $s1, $zero, $zero -/* D9E90 80143790 3C0C8015 */ lui $t4, %hi(hudElements) -/* D9E94 80143794 258C7960 */ addiu $t4, $t4, %lo(hudElements) +/* D9E90 80143790 3C0C8015 */ lui $t4, %hi(gHudElements) +/* D9E94 80143794 258C7960 */ addiu $t4, $t4, %lo(gHudElements) /* D9E98 80143798 27AB0010 */ addiu $t3, $sp, 0x10 /* D9E9C 8014379C 0160502D */ daddu $t2, $t3, $zero .L801437A0: @@ -150,8 +150,8 @@ glabel render_hud_elements_world /* D9FDC 801438DC 24030018 */ addiu $v1, $zero, 0x18 /* D9FE0 801438E0 AC43001C */ sw $v1, 0x1c($v0) /* D9FE4 801438E4 24430028 */ addiu $v1, $v0, 0x28 -/* D9FE8 801438E8 3C048015 */ lui $a0, %hi(D_8014F110) -/* D9FEC 801438EC 2484F110 */ addiu $a0, $a0, %lo(D_8014F110) +/* D9FE8 801438E8 3C048015 */ lui $a0, %hi(D_8014F108 + 8) +/* D9FEC 801438EC 2484F110 */ addiu $a0, $a0, %lo(D_8014F108 + 8) /* D9FF0 801438F0 ACA30000 */ sw $v1, ($a1) /* D9FF4 801438F4 24430030 */ addiu $v1, $v0, 0x30 /* D9FF8 801438F8 AC440024 */ sw $a0, 0x24($v0) @@ -178,8 +178,8 @@ glabel render_hud_elements_world .L8014394C: /* DA04C 8014394C 8E020000 */ lw $v0, ($s0) /* DA050 80143950 26100004 */ addiu $s0, $s0, 4 -/* DA054 80143954 3C038015 */ lui $v1, %hi(hudElements) -/* DA058 80143958 8C637960 */ lw $v1, %lo(hudElements)($v1) +/* DA054 80143954 3C038015 */ lui $v1, %hi(gHudElements) +/* DA058 80143958 8C637960 */ lw $v1, %lo(gHudElements)($v1) /* DA05C 8014395C 00021080 */ sll $v0, $v0, 2 /* DA060 80143960 00431021 */ addu $v0, $v0, $v1 /* DA064 80143964 8C440000 */ lw $a0, ($v0) @@ -199,8 +199,8 @@ glabel render_hud_elements_world /* DA094 80143994 3C091020 */ lui $t1, 0x1020 /* DA098 80143998 3C080001 */ lui $t0, 1 /* DA09C 8014399C 3C074000 */ lui $a3, 0x4000 -/* DA0A0 801439A0 3C068015 */ lui $a2, %hi(hudElements) -/* DA0A4 801439A4 8CC67960 */ lw $a2, %lo(hudElements)($a2) +/* DA0A0 801439A0 3C068015 */ lui $a2, %hi(gHudElements) +/* DA0A4 801439A4 8CC67960 */ lw $a2, %lo(gHudElements)($a2) /* DA0A8 801439A8 27A50010 */ addiu $a1, $sp, 0x10 .L801439AC: /* DA0AC 801439AC 8CC40000 */ lw $a0, ($a2) @@ -242,8 +242,8 @@ glabel render_hud_elements_world /* DA138 80143A38 2642FFFF */ addiu $v0, $s2, -1 /* DA13C 80143A3C 18400024 */ blez $v0, .L80143AD0 /* DA140 80143A40 0000882D */ daddu $s1, $zero, $zero -/* DA144 80143A44 3C0C8015 */ lui $t4, %hi(hudElements) -/* DA148 80143A48 258C7960 */ addiu $t4, $t4, %lo(hudElements) +/* DA144 80143A44 3C0C8015 */ lui $t4, %hi(gHudElements) +/* DA148 80143A48 258C7960 */ addiu $t4, $t4, %lo(gHudElements) /* DA14C 80143A4C 27AB0010 */ addiu $t3, $sp, 0x10 /* DA150 80143A50 0160502D */ daddu $t2, $t3, $zero .L80143A54: @@ -333,8 +333,8 @@ glabel render_hud_elements_world /* DA290 80143B90 24030018 */ addiu $v1, $zero, 0x18 /* DA294 80143B94 AC43001C */ sw $v1, 0x1c($v0) /* DA298 80143B98 24430028 */ addiu $v1, $v0, 0x28 -/* DA29C 80143B9C 3C048015 */ lui $a0, %hi(D_8014F110) -/* DA2A0 80143BA0 2484F110 */ addiu $a0, $a0, %lo(D_8014F110) +/* DA29C 80143B9C 3C048015 */ lui $a0, %hi(D_8014F108 + 8) +/* DA2A0 80143BA0 2484F110 */ addiu $a0, $a0, %lo(D_8014F108 + 8) /* DA2A4 80143BA4 ACA30000 */ sw $v1, ($a1) /* DA2A8 80143BA8 24430030 */ addiu $v1, $v0, 0x30 /* DA2AC 80143BAC AC440024 */ sw $a0, 0x24($v0) @@ -361,8 +361,8 @@ glabel render_hud_elements_world .L80143C00: /* DA300 80143C00 8E020000 */ lw $v0, ($s0) /* DA304 80143C04 26100004 */ addiu $s0, $s0, 4 -/* DA308 80143C08 3C038015 */ lui $v1, %hi(hudElements) -/* DA30C 80143C0C 8C637960 */ lw $v1, %lo(hudElements)($v1) +/* DA308 80143C08 3C038015 */ lui $v1, %hi(gHudElements) +/* DA30C 80143C0C 8C637960 */ lw $v1, %lo(gHudElements)($v1) /* DA310 80143C10 00021080 */ sll $v0, $v0, 2 /* DA314 80143C14 00431021 */ addu $v0, $v0, $v1 /* DA318 80143C18 8C440000 */ lw $a0, ($v0) diff --git a/ver/us/asm/nonmatchings/hud_element/set_hud_element_scale.s b/ver/us/asm/nonmatchings/hud_element/set_hud_element_scale.s deleted file mode 100644 index 0ad9c97ff5..0000000000 --- a/ver/us/asm/nonmatchings/hud_element/set_hud_element_scale.s +++ /dev/null @@ -1,127 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel set_hud_element_scale -/* DB320 80144C20 2402F7FF */ addiu $v0, $zero, -0x801 -/* DB324 80144C24 00822024 */ and $a0, $a0, $v0 -/* DB328 80144C28 00042080 */ sll $a0, $a0, 2 -/* DB32C 80144C2C 3C028015 */ lui $v0, %hi(hudElements) -/* DB330 80144C30 8C427960 */ lw $v0, %lo(hudElements)($v0) -/* DB334 80144C34 44853000 */ mtc1 $a1, $f6 -/* DB338 80144C38 00822021 */ addu $a0, $a0, $v0 -/* DB33C 80144C3C 8C850000 */ lw $a1, ($a0) -/* DB340 80144C40 8CA20000 */ lw $v0, ($a1) -/* DB344 80144C44 3C030010 */ lui $v1, 0x10 -/* DB348 80144C48 00431024 */ and $v0, $v0, $v1 -/* DB34C 80144C4C 14400012 */ bnez $v0, .L80144C98 -/* DB350 80144C50 E4A60030 */ swc1 $f6, 0x30($a1) -/* DB354 80144C54 80A30046 */ lb $v1, 0x46($a1) -/* DB358 80144C58 3C048015 */ lui $a0, %hi(D_8014EFCC) -/* DB35C 80144C5C 2484EFCC */ addiu $a0, $a0, %lo(D_8014EFCC) -/* DB360 80144C60 00031040 */ sll $v0, $v1, 1 -/* DB364 80144C64 00431021 */ addu $v0, $v0, $v1 -/* DB368 80144C68 00021040 */ sll $v0, $v0, 1 -/* DB36C 80144C6C 00441021 */ addu $v0, $v0, $a0 -/* DB370 80144C70 84480000 */ lh $t0, ($v0) -/* DB374 80144C74 80A30045 */ lb $v1, 0x45($a1) -/* DB378 80144C78 84490002 */ lh $t1, 2($v0) -/* DB37C 80144C7C 00031040 */ sll $v0, $v1, 1 -/* DB380 80144C80 00431021 */ addu $v0, $v0, $v1 -/* DB384 80144C84 00021040 */ sll $v0, $v0, 1 -/* DB388 80144C88 00441021 */ addu $v0, $v0, $a0 -/* DB38C 80144C8C 84440000 */ lh $a0, ($v0) -/* DB390 80144C90 0805132A */ j .L80144CA8 -/* DB394 80144C94 84460002 */ lh $a2, 2($v0) -.L80144C98: -/* DB398 80144C98 90A8004E */ lbu $t0, 0x4e($a1) -/* DB39C 80144C9C 90A9004F */ lbu $t1, 0x4f($a1) -/* DB3A0 80144CA0 90A40050 */ lbu $a0, 0x50($a1) -/* DB3A4 80144CA4 90A60051 */ lbu $a2, 0x51($a1) -.L80144CA8: -/* DB3A8 80144CA8 44840000 */ mtc1 $a0, $f0 -/* DB3AC 80144CAC 00000000 */ nop -/* DB3B0 80144CB0 46800020 */ cvt.s.w $f0, $f0 -/* DB3B4 80144CB4 46060002 */ mul.s $f0, $f0, $f6 -/* DB3B8 80144CB8 00000000 */ nop -/* DB3BC 80144CBC 3C014F00 */ lui $at, 0x4f00 -/* DB3C0 80144CC0 44811000 */ mtc1 $at, $f2 -/* DB3C4 80144CC4 00000000 */ nop -/* DB3C8 80144CC8 4600103E */ c.le.s $f2, $f0 -/* DB3CC 80144CCC 00000000 */ nop -/* DB3D0 80144CD0 45010005 */ bc1t .L80144CE8 -/* DB3D4 80144CD4 24A70048 */ addiu $a3, $a1, 0x48 -/* DB3D8 80144CD8 4600020D */ trunc.w.s $f8, $f0 -/* DB3DC 80144CDC 44034000 */ mfc1 $v1, $f8 -/* DB3E0 80144CE0 08051340 */ j .L80144D00 -/* DB3E4 80144CE4 00000000 */ nop -.L80144CE8: -/* DB3E8 80144CE8 46020001 */ sub.s $f0, $f0, $f2 -/* DB3EC 80144CEC 3C028000 */ lui $v0, 0x8000 -/* DB3F0 80144CF0 4600020D */ trunc.w.s $f8, $f0 -/* DB3F4 80144CF4 44034000 */ mfc1 $v1, $f8 -/* DB3F8 80144CF8 00000000 */ nop -/* DB3FC 80144CFC 00621825 */ or $v1, $v1, $v0 -.L80144D00: -/* DB400 80144D00 44860000 */ mtc1 $a2, $f0 -/* DB404 80144D04 00000000 */ nop -/* DB408 80144D08 46800020 */ cvt.s.w $f0, $f0 -/* DB40C 80144D0C 46060002 */ mul.s $f0, $f0, $f6 -/* DB410 80144D10 00000000 */ nop -/* DB414 80144D14 3C014F00 */ lui $at, 0x4f00 -/* DB418 80144D18 44811000 */ mtc1 $at, $f2 -/* DB41C 80144D1C A0E30000 */ sb $v1, ($a3) -/* DB420 80144D20 4600103E */ c.le.s $f2, $f0 -/* DB424 80144D24 00000000 */ nop -/* DB428 80144D28 45010005 */ bc1t .L80144D40 -/* DB42C 80144D2C 24A70049 */ addiu $a3, $a1, 0x49 -/* DB430 80144D30 4600020D */ trunc.w.s $f8, $f0 -/* DB434 80144D34 44034000 */ mfc1 $v1, $f8 -/* DB438 80144D38 08051356 */ j .L80144D58 -/* DB43C 80144D3C 00000000 */ nop -.L80144D40: -/* DB440 80144D40 46020001 */ sub.s $f0, $f0, $f2 -/* DB444 80144D44 3C028000 */ lui $v0, 0x8000 -/* DB448 80144D48 4600020D */ trunc.w.s $f8, $f0 -/* DB44C 80144D4C 44034000 */ mfc1 $v1, $f8 -/* DB450 80144D50 00000000 */ nop -/* DB454 80144D54 00621825 */ or $v1, $v1, $v0 -.L80144D58: -/* DB458 80144D58 44842000 */ mtc1 $a0, $f4 -/* DB45C 80144D5C 00000000 */ nop -/* DB460 80144D60 46802120 */ cvt.s.w $f4, $f4 -/* DB464 80144D64 44880000 */ mtc1 $t0, $f0 -/* DB468 80144D68 00000000 */ nop -/* DB46C 80144D6C 46800020 */ cvt.s.w $f0, $f0 -/* DB470 80144D70 46002103 */ div.s $f4, $f4, $f0 -/* DB474 80144D74 46062102 */ mul.s $f4, $f4, $f6 -/* DB478 80144D78 00000000 */ nop -/* DB47C 80144D7C 44861000 */ mtc1 $a2, $f2 -/* DB480 80144D80 00000000 */ nop -/* DB484 80144D84 468010A0 */ cvt.s.w $f2, $f2 -/* DB488 80144D88 44890000 */ mtc1 $t1, $f0 -/* DB48C 80144D8C 00000000 */ nop -/* DB490 80144D90 46800020 */ cvt.s.w $f0, $f0 -/* DB494 80144D94 46001083 */ div.s $f2, $f2, $f0 -/* DB498 80144D98 46061082 */ mul.s $f2, $f2, $f6 -/* DB49C 80144D9C 00000000 */ nop -/* DB4A0 80144DA0 3C013F80 */ lui $at, 0x3f80 -/* DB4A4 80144DA4 44810000 */ mtc1 $at, $f0 -/* DB4A8 80144DA8 3C014480 */ lui $at, 0x4480 -/* DB4AC 80144DAC 44813000 */ mtc1 $at, $f6 -/* DB4B0 80144DB0 46040103 */ div.s $f4, $f0, $f4 -/* DB4B4 80144DB4 46062102 */ mul.s $f4, $f4, $f6 -/* DB4B8 80144DB8 00000000 */ nop -/* DB4BC 80144DBC A0E30000 */ sb $v1, ($a3) -/* DB4C0 80144DC0 2403FEFF */ addiu $v1, $zero, -0x101 -/* DB4C4 80144DC4 8CA20000 */ lw $v0, ($a1) -/* DB4C8 80144DC8 46020083 */ div.s $f2, $f0, $f2 -/* DB4CC 80144DCC 46061082 */ mul.s $f2, $f2, $f6 -/* DB4D0 80144DD0 00000000 */ nop -/* DB4D4 80144DD4 00431024 */ and $v0, $v0, $v1 -/* DB4D8 80144DD8 34420810 */ ori $v0, $v0, 0x810 -/* DB4DC 80144DDC ACA20000 */ sw $v0, ($a1) -/* DB4E0 80144DE0 4600220D */ trunc.w.s $f8, $f4 -/* DB4E4 80144DE4 E4A80034 */ swc1 $f8, 0x34($a1) -/* DB4E8 80144DE8 4600120D */ trunc.w.s $f8, $f2 -/* DB4EC 80144DEC 03E00008 */ jr $ra -/* DB4F0 80144DF0 E4A80038 */ swc1 $f8, 0x38($a1) diff --git a/ver/us/asm/nonmatchings/hud_element/update_hud_elements.s b/ver/us/asm/nonmatchings/hud_element/update_hud_elements.s deleted file mode 100644 index ad3a1c0747..0000000000 --- a/ver/us/asm/nonmatchings/hud_element/update_hud_elements.s +++ /dev/null @@ -1,72 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel update_hud_elements -/* D7D10 80141610 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* D7D14 80141614 AFB10014 */ sw $s1, 0x14($sp) -/* D7D18 80141618 0000882D */ daddu $s1, $zero, $zero -/* D7D1C 8014161C AFB20018 */ sw $s2, 0x18($sp) -/* D7D20 80141620 3C120004 */ lui $s2, 4 -/* D7D24 80141624 AFBF001C */ sw $ra, 0x1c($sp) -/* D7D28 80141628 AFB00010 */ sw $s0, 0x10($sp) -.L8014162C: -/* D7D2C 8014162C 3C038015 */ lui $v1, %hi(hudElements) -/* D7D30 80141630 8C637960 */ lw $v1, %lo(hudElements)($v1) -/* D7D34 80141634 00111080 */ sll $v0, $s1, 2 -/* D7D38 80141638 00431021 */ addu $v0, $v0, $v1 -/* D7D3C 8014163C 8C500000 */ lw $s0, ($v0) -/* D7D40 80141640 52000027 */ beql $s0, $zero, .L801416E0 -/* D7D44 80141644 26310001 */ addiu $s1, $s1, 1 -/* D7D48 80141648 8E030000 */ lw $v1, ($s0) -/* D7D4C 8014164C 10600023 */ beqz $v1, .L801416DC -/* D7D50 80141650 30620002 */ andi $v0, $v1, 2 -/* D7D54 80141654 54400022 */ bnel $v0, $zero, .L801416E0 -/* D7D58 80141658 26310001 */ addiu $s1, $s1, 1 -/* D7D5C 8014165C 00721024 */ and $v0, $v1, $s2 -/* D7D60 80141660 10400005 */ beqz $v0, .L80141678 -/* D7D64 80141664 00000000 */ nop -/* D7D68 80141668 0C05123D */ jal free_hud_element -/* D7D6C 8014166C 0220202D */ daddu $a0, $s1, $zero -/* D7D70 80141670 080505B8 */ j .L801416E0 -/* D7D74 80141674 26310001 */ addiu $s1, $s1, 1 -.L80141678: -/* D7D78 80141678 8E020004 */ lw $v0, 4($s0) -/* D7D7C 8014167C 1040001B */ beqz $v0, .L801416EC -/* D7D80 80141680 00000000 */ nop -/* D7D84 80141684 92020047 */ lbu $v0, 0x47($s0) -/* D7D88 80141688 2442FFFF */ addiu $v0, $v0, -1 -/* D7D8C 8014168C A2020047 */ sb $v0, 0x47($s0) -/* D7D90 80141690 00021600 */ sll $v0, $v0, 0x18 -/* D7D94 80141694 14400005 */ bnez $v0, .L801416AC -/* D7D98 80141698 00000000 */ nop -.L8014169C: -/* D7D9C 8014169C 0C0505C1 */ jal hud_element_update -/* D7DA0 801416A0 0200202D */ daddu $a0, $s0, $zero -/* D7DA4 801416A4 1440FFFD */ bnez $v0, .L8014169C -/* D7DA8 801416A8 00000000 */ nop -.L801416AC: -/* D7DAC 801416AC 8E020000 */ lw $v0, ($s0) -/* D7DB0 801416B0 30420100 */ andi $v0, $v0, 0x100 -/* D7DB4 801416B4 5040000A */ beql $v0, $zero, .L801416E0 -/* D7DB8 801416B8 26310001 */ addiu $s1, $s1, 1 -/* D7DBC 801416BC C6040028 */ lwc1 $f4, 0x28($s0) -/* D7DC0 801416C0 C6000020 */ lwc1 $f0, 0x20($s0) -/* D7DC4 801416C4 C602002C */ lwc1 $f2, 0x2c($s0) -/* D7DC8 801416C8 46002100 */ add.s $f4, $f4, $f0 -/* D7DCC 801416CC C6000024 */ lwc1 $f0, 0x24($s0) -/* D7DD0 801416D0 46001080 */ add.s $f2, $f2, $f0 -/* D7DD4 801416D4 E6040028 */ swc1 $f4, 0x28($s0) -/* D7DD8 801416D8 E602002C */ swc1 $f2, 0x2c($s0) -.L801416DC: -/* D7DDC 801416DC 26310001 */ addiu $s1, $s1, 1 -.L801416E0: -/* D7DE0 801416E0 2A220140 */ slti $v0, $s1, 0x140 -/* D7DE4 801416E4 1440FFD1 */ bnez $v0, .L8014162C -/* D7DE8 801416E8 00000000 */ nop -.L801416EC: -/* D7DEC 801416EC 8FBF001C */ lw $ra, 0x1c($sp) -/* D7DF0 801416F0 8FB20018 */ lw $s2, 0x18($sp) -/* D7DF4 801416F4 8FB10014 */ lw $s1, 0x14($sp) -/* D7DF8 801416F8 8FB00010 */ lw $s0, 0x10($sp) -/* D7DFC 801416FC 03E00008 */ jr $ra -/* D7E00 80141700 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80242680_DF9080.s b/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80242680_DF9080.s deleted file mode 100644 index cdcc320607..0000000000 --- a/ver/us/asm/nonmatchings/world/area_end/end_00/DF6A20/func_80242680_DF9080.s +++ /dev/null @@ -1,53 +0,0 @@ -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches - -glabel func_80242680_DF9080 -/* DF9080 80242680 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* DF9084 80242684 AFBF0028 */ sw $ra, 0x28($sp) -/* DF9088 80242688 AFB10024 */ sw $s1, 0x24($sp) -/* DF908C 8024268C AFB00020 */ sw $s0, 0x20($sp) -/* DF9090 80242690 8C82000C */ lw $v0, 0xc($a0) -/* DF9094 80242694 0C0B1EAF */ jal evt_get_variable -/* DF9098 80242698 8C450000 */ lw $a1, ($v0) -/* DF909C 8024269C 24030100 */ addiu $v1, $zero, 0x100 -/* DF90A0 802426A0 0040882D */ daddu $s1, $v0, $zero -/* DF90A4 802426A4 3C028024 */ lui $v0, %hi(D_80244D74_DFB774) -/* DF90A8 802426A8 24424D74 */ addiu $v0, $v0, %lo(D_80244D74_DFB774) -/* DF90AC 802426AC 00118040 */ sll $s0, $s1, 1 -/* DF90B0 802426B0 02118021 */ addu $s0, $s0, $s1 -/* DF90B4 802426B4 001080C0 */ sll $s0, $s0, 3 -/* DF90B8 802426B8 02028021 */ addu $s0, $s0, $v0 -/* DF90BC 802426BC AFA30010 */ sw $v1, 0x10($sp) -/* DF90C0 802426C0 8E020000 */ lw $v0, ($s0) -/* DF90C4 802426C4 AFA00018 */ sw $zero, 0x18($sp) -/* DF90C8 802426C8 AFA0001C */ sw $zero, 0x1c($sp) -/* DF90CC 802426CC AFA20014 */ sw $v0, 0x14($sp) -/* DF90D0 802426D0 8E050004 */ lw $a1, 4($s0) -/* DF90D4 802426D4 24020001 */ addiu $v0, $zero, 1 -/* DF90D8 802426D8 3C01802E */ lui $at, %hi(spr_allocateBtlComponentsOnWorldHeap) -/* DF90DC 802426DC AC22F524 */ sw $v0, %lo(spr_allocateBtlComponentsOnWorldHeap)($at) -/* DF90E0 802426E0 0C00E219 */ jal _create_npc_standard -/* DF90E4 802426E4 27A40010 */ addiu $a0, $sp, 0x10 -/* DF90E8 802426E8 0C00E2B7 */ jal get_npc_by_index -/* DF90EC 802426EC 0040202D */ daddu $a0, $v0, $zero -/* DF90F0 802426F0 3C04FBFF */ lui $a0, 0xfbff -/* DF90F4 802426F4 8C430000 */ lw $v1, ($v0) -/* DF90F8 802426F8 3484FFFF */ ori $a0, $a0, 0xffff -/* DF90FC 802426FC A05100A4 */ sb $s1, 0xa4($v0) -/* DF9100 80242700 00641824 */ and $v1, $v1, $a0 -/* DF9104 80242704 AC430000 */ sw $v1, ($v0) -/* DF9108 80242708 C6000008 */ lwc1 $f0, 8($s0) -/* DF910C 8024270C E4400038 */ swc1 $f0, 0x38($v0) -/* DF9110 80242710 C600000C */ lwc1 $f0, 0xc($s0) -/* DF9114 80242714 E440003C */ swc1 $f0, 0x3c($v0) -/* DF9118 80242718 C6000010 */ lwc1 $f0, 0x10($s0) -/* DF911C 8024271C E4400040 */ swc1 $f0, 0x40($v0) -/* DF9120 80242720 8E050014 */ lw $a1, 0x14($s0) -/* DF9124 80242724 0C00ECD0 */ jal set_npc_yaw -/* DF9128 80242728 0040202D */ daddu $a0, $v0, $zero -/* DF912C 8024272C 8FBF0028 */ lw $ra, 0x28($sp) -/* DF9130 80242730 8FB10024 */ lw $s1, 0x24($sp) -/* DF9134 80242734 8FB00020 */ lw $s0, 0x20($sp) -/* DF9138 80242738 24020002 */ addiu $v0, $zero, 2 -/* DF913C 8024273C 03E00008 */ jr $ra -/* DF9140 80242740 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/ver/us/splat.yaml b/ver/us/splat.yaml index b6200e157e..258bc3d7ed 100644 --- a/ver/us/splat.yaml +++ b/ver/us/splat.yaml @@ -328,53 +328,12 @@ segments: - [0x71430, bin, gspF3DEX2kawase_fifo_text] - [0x72A60, bin, gspF3DEX2kawase_fifo_data] - [0x72E80, bin, n_aspMain_data] - - [0x73130, .rodata, is_debug] - - [0x73148, .rodata, main_loop] - - [0x73160, .rodata, 43F0] - - [0x73200, .rodata, curtains] - - [0x73230, .rodata, crash_screen] - - [0x735E0, .rodata, 8800] - - [0x73610, .rodata, B0E0] - - [0x73680, .rodata, camera] - - [0x73690, .rodata, state_logos] - - [0x736E8, .rodata, state_file_select] - - [0x73720, .rodata, 111f0_len_860] - - [0x73738, .rodata, state_intro] - - [0x73790, .rodata, state_title_screen] - - [0x73860, .rodata, state_demo] - - [0x73880, .rodata, npc] - - [0x739F0, .rodata, 1a1f0_len_5390] - - [0x73AB0, .rodata, status_icons] - - [0x73B10, .rodata, 23680] - - [0x73CC0, .rodata, 28910_len_5090] - - [0x73CF0, .rodata, 2e230_len_2190] - - [0x73D08, .rodata, 30450] - - [0x73D30, .rodata, 33450] - - [0x73D40, .rodata, 341d0] - - [0x73DA0, .rodata, world/world] - - [0x74EA0, .rodata, os/osSetIntMask] - - [0x74F20, .rodata, os/3c490_len_3c0] - - [0x74F40, .rodata, os/3c940_len_140] - - [0x74F50, .rodata, os/guLookAt] - - [0x74F70, .rodata, os/lookathil] - - [0x74FA0, .rodata, os/lookatref] - - [0x74FB0, .rodata, os/perspective] - - [0x74FF0, .rodata, os/3FEA0] - - [0x75170, .rodata, os/42470_len_310] - - [0x75180, .rodata, os/exceptasm] - - [0x751D0, .rodata, os/46c70_len_e00] - - [0x75240, .rodata, os/48c00_len_5c0] - - [0x75340, .rodata, os/491c0_len_f80] - - [0x75540, .rodata, os/49C70] - - [0x75640, .rodata, battle/battle] - # bss starts at 0x8009A5B0 - # 0x800 of bss until... - # - [0x75240, .bss, main_loop] - # - [0x75240, .bss, os/39cb0_len_100, 0x0] # size unknown + - [0x73130] - type: code start: 0x759B0 vram: 0x800DC500 subsegments: + - [0x759B0, c, bss2] - [0x759B0, c, 759b0_len_61b0] - [0x77480, c, 77480] - [0x7B440, c, 7B440] @@ -701,11 +660,12 @@ segments: - [0x9DE60, data] - [0xA2D40, .data, 8a860_len_3f30] - [0xA2D90, data] - - [0xA5100] # bss at 8010C920 + - [0xA5100] - type: code start: 0xA5DD0 vram: 0x8010F6D0 subsegments: + - [0xA5DD0, c, bss3] - [0xA5DD0, c, a5dd0_len_114e0] - [0xB4580, c, B4580] - [0xB72B0, c, entity] @@ -728,7 +688,6 @@ segments: - [0xE2960, .data, entity] - [0xE2980, .data, msg] - [0xE2CA0, data] - #- [0xE2DF0, .data, cd180_len_38f0] - start: 0xE2DF0 type: .data name: cd180_len_38f0 diff --git a/ver/us/symbol_addrs.txt b/ver/us/symbol_addrs.txt index 47a1eb0c93..6bee3a3524 100644 --- a/ver/us/symbol_addrs.txt +++ b/ver/us/symbol_addrs.txt @@ -3002,7 +3002,7 @@ fold_groupOffsets = 0x8014EF64; // type:data rom:0xE5664 D_8014EFC0 = 0x8014EFC0; // type:data rom:0xE56C0 D_8014EFC4 = 0x8014EFC4; // type:data rom:0xE56C4 hud_element_defaultAnim = 0x8014EFC8; // type:data rom:0xE56C8 -D_8014EFCC = 0x8014EFCC; // type:data rom:0xE56CC +gHudElementSizes = 0x8014EFCC; // type:data rom:0xE56CC D_8014F0C8 = 0x8014F0C8; // type:data rom:0xE57C8 D_8014F110 = 0x8014F110; // type:data rom:0xE5810 gCloudyFlowerFieldsBg = 0x8014F120; // type:data rom:0xE5820 @@ -20630,7 +20630,7 @@ fold_groupDescriptors = 0x80156980; // type:data fold_gfxDataCache = 0x80156F20; // type:data D_80156F60 = 0x80156F60; // type:data D_80157460 = 0x80157460; // type:data -hudElements = 0x80157960; // type:data +gHudElements = 0x80157960; // type:data D_80157964 = 0x80157964; // type:data D_80157968 = 0x80157968; // type:data D_80157970 = 0x80157970; // type:data diff --git a/ver/us/undefined_syms.txt b/ver/us/undefined_syms.txt index e7ef617581..674c13ace9 100644 --- a/ver/us/undefined_syms.txt +++ b/ver/us/undefined_syms.txt @@ -95,235 +95,8 @@ D_80000308 = 0x80000308; D_8000030C = 0x8000030C; osMemSize = 0x80000318; D_8000031C = 0x8000031C; -D_801512B0 = 0x801512B0; -D_801512B4 = 0x801512B4; D_800A08C0 = 0x800A08C0; -gCurrentCustomModelGfxBuildersPtr = 0x801512B8; -D_801512BC = 0x801512BC; -D_801512C0 = 0x801512C0; -gEntityHeapBase = 0x801512C4; -D_801512C8 = 0x801512C8; -gCurrentModels = 0x801512CC; -D_801512D0 = 0x801512D0; -gAnimCount = 0x801512D4; -gMsgBGScrollAmtX = 0x801512D8; -D_801512DA = 0x801512DA; -gCurrentTransformGroups = 0x801512E0; -gMsgGlobalWaveCounter = 0x801512E4; -gCurrentCustomModelGfxPtr = 0x801512E8; -gLastCreatedEntityIndex = 0x801512EC; -D_801512F0 = 0x801512F0; -gMsgVarImages = 0x801512F4; -D_801512F8 = 0x801512F8; -gCurrentModelTreeRoot = 0x801512FC; -D_80151300 = 0x80151300; -D_80151304 = 0x80151304; -D_80151308 = 0x80151308; -gMsgBGScrollAmtY = 0x8015130C; -D_8015130E = 0x8015130E; -D_80151310 = 0x80151310; -D_80151314 = 0x80151314; -gEntityModelCount = 0x80151318; -D_8015131C = 0x8015131C; -D_80151324 = 0x80151324; -D_80151328 = 0x80151328; -D_8015132C = 0x8015132C; -D_80151330 = 0x80151330; -gTriggerCount = 0x80151334; -D_80151338 = 0x80151338; -D_8015133C = 0x8015133C; -gCurrentDoorSoundsSet = 0x80151340; -D_80151344 = 0x80151344; -gWorldEntityList = 0x80151380; -gBattleEntityList = 0x801513F8; -gCurrentEntityListPtr = 0x80151470; -gWorldShadowList = 0x80151478; -gBattleShadowList = 0x80151568; -gCurrentShadowListPtr = 0x80151658; -wStaticEntityDataSize = 0x8015165C; -bStaticEntityDataSize = 0x80151660; -wStaticEntityData = 0x80151668; -D_801516DC = 0x801516DC; -bStaticEntityData = 0x801516E8; -D_801516FC = 0x801516FC; -gMainGameState = 0x80151700; -gCurrentTileDescriptor = 0x80151740; -wModelList = 0x80151770; -bModelList = 0x80151B70; -wTransformGroups = 0x80151F70; -bTransformGroups = 0x80151F80; -wModelSpecialDls = 0x80151F90; -bModelSpecialDls = 0x80152010; -wCustomModelGfxBuilders = 0x80152090; -bCustomModelGfxBuilders = 0x80152110; -D_80152190 = 0x80152190; -D_801521D0 = 0x801521D0; -gCurrentModelLocalVtxBuffers = 0x80152210; -D_80152214 = 0x80152214; -D_80152218 = 0x80152218; -D_80152220 = 0x80152220; -D_80152A20 = 0x80152A20; -wBgRenderType = 0x80153220; -bBgRenderType = 0x80153221; -mdl_treeIterPos = 0x80153224; -D_80153226 = 0x80153226; -wFogSettings = 0x80153228; -bFogSettings = 0x80153248; -gCurrentFogSettings = 0x80153264; -texPannerMainU = 0x80153268; -texPannerMainV = 0x801532A8; -texPannerAuxU = 0x801532E8; -texPannerAuxV = 0x80153328; -mdl_nextTextureAddress = 0x80153368; -mdl_currentTransformGroupChildIndex = 0x8015336C; -D_8015336E = 0x8015336E; -D_80153370 = 0x80153370; -D_80153374 = 0x80153374; -D_80153376 = 0x80153376; -D_80153380 = 0x80153380; -mdl_renderTaskLists = 0x801533A0; -mdl_renderTaskMode = 0x801533AC; -mdl_renderTaskCount = 0x801533B0; -D_801533C0 = 0x801533C0; -D_801536C0 = 0x801536C0; -D_801539C0 = 0x801539C0; -D_80153A00 = 0x80153A00; -gCurrentAnimMeshListPtr = 0x80153A40; -gAnimModelFogEnabled = 0x80153A44; -gAnimModelFogR = 0x80153A48; -D_80153A4B = 0x80153A4B; -gAnimModelFogG = 0x80153A4C; -D_80153A4F = 0x80153A4F; -gAnimModelFogB = 0x80153A50; -D_80153A53 = 0x80153A53; -gAnimModelFogA = 0x80153A54; -D_80153A57 = 0x80153A57; -gAnimModelFogStart = 0x80153A58; -gAnimModelFogEnd = 0x80153A5C; -D_80153A60 = 0x80153A60; -gAnimRotMtx = 0x80153A68; -gAnimScaleMtx = 0x80153AA8; -gAnimTranslateMtx = 0x80153AE8; -gAnimRotScaleMtx = 0x80153B28; -gAnimTreeRoot = 0x80153B68; -gWorldEntityModelList = 0x80153B70; -gBattleEntityModelList = 0x80153F70; -gCurrentEntityModelList = 0x80154370; -D_80154374 = 0x80154374; -entity_fog_enabled = 0x80154378; -entity_fog_red = 0x8015437C; -D_8015437F = 0x8015437F; -entity_fog_green = 0x80154380; -D_80154383 = 0x80154383; -entity_fog_blue = 0x80154384; -D_80154387 = 0x80154387; -entity_fog_alpha = 0x80154388; -D_8015438B = 0x8015438B; -entity_fog_dist_min = 0x8015438C; -entity_fog_dist_max = 0x80154390; -gWorldDynamicEntityList = 0x801543A0; -gBattleDynamicEntityList = 0x801543E0; -gCurrentDynamicEntityListPtr = 0x80154420; -gMessageBuffers = 0x80154430; -gMessagePrinters = 0x80154C30; -gMessageMsgVars = 0x80155C38; -D_80155C98 = 0x80155C98; -gMessageWindowProjMatrix = 0x80155CA0; -D_80155D20 = 0x80155D20; -msg_drawState = 0x80155D74; -D_80155D80 = 0x80155D80; -D_80155D84 = 0x80155D84; -D_80155D88 = 0x80155D88; -D_80155D8C = 0x80155D8C; -D_80155D8E = 0x80155D8E; -D_80155D90 = 0x80155D90; -D_80155DA0 = 0x80155DA0; -D_801561A0 = 0x801561A0; -D_801565A0 = 0x801565A0; -D_801565A4 = 0x801565A4; -D_801565A6 = 0x801565A6; -D_801565A8 = 0x801565A8; -D_801565B0 = 0x801565B0; -D_801568E0 = 0x801568E0; -D_801568E4 = 0x801568E4; -D_801568E8 = 0x801568E8; -D_801568EC = 0x801568EC; -D_801568F0 = 0x801568F0; -D_801568F4 = 0x801568F4; -D_801568F8 = 0x801568F8; -screen_overlay_frontType = 0x80156900; -D_80156903 = 0x80156903; -screen_overlay_frontZoom = 0x80156904; -screen_overlay_backType = 0x80156908; -screen_overlay_backZoom = 0x8015690C; -D_80156910 = 0x80156910; -D_8015690B = 0x8015690B; -D_80156920 = 0x80156920; -D_80156948 = 0x80156948; -fold_vtxBuf = 0x80156950; -D_80156954 = 0x80156954; -D_80156958 = 0x80156958; -D_80156960 = 0x80156960; -D_80156968 = 0x80156968; -D_80156970 = 0x80156970; -fold_groupDescriptors = 0x80156980; -fold_gfxDataCache = 0x80156F20; -D_80156F60 = 0x80156F60; -D_80157460 = 0x80157460; -hudElements = 0x80157960; -D_80157964 = 0x80157964; -D_80157968 = 0x80157968; -D_80157970 = 0x80157970; -D_80157F70 = 0x80157F70; -D_80158570 = 0x80158570; -D_80158574 = 0x80158574; -D_80158580 = 0x80158580; -D_80158B80 = 0x80158B80; -D_80159180 = 0x80159180; -wTriggerList = 0x80159190; -bTriggerList = 0x80159290; -gCurrentTriggerListPtr = 0x80159390; -D_801593A0 = 0x801593A0; -D_8015959E = 0x8015959E; -D_801595A0 = 0x801595A0; -D_801595C0 = 0x801595C0; -D_80159670 = 0x80159670; -D_80159720 = 0x80159720; -D_801597D0 = 0x801597D0; -D_80159880 = 0x80159880; -D_801598A0 = 0x801598A0; -D_801599B8 = 0x801599B8; -D_80159AD0 = 0x80159AD0; -D_80159AD4 = 0x80159AD4; -gMusicUnkVolume = 0x80159AE0; -gMusicTargetVolume = 0x80159AE2; -gMusicUnkVolume2 = 0x80159AE4; -gMusicCurrentVolume = 0x80159AE6; -gMusicSettings = 0x80159AF0; -D_80159B08 = 0x80159B08; -D_80159B50 = 0x80159B50; -gWindows = 0x80159D50; -D_80159D54 = 0x80159D54; -D_80159E7E = 0x80159E7E; -D_8015A010 = 0x8015A010; -D_8015A070 = 0x8015A070; -D_8015A07C = 0x8015A07C; -D_8015A1E2 = 0x8015A1E2; -D_8015A2BC = 0x8015A2BC; -D_8015A2BE = 0x8015A2BE; -D_8015A2D0 = 0x8015A2D0; -D_8015A370 = 0x8015A370; -gCollisionStatus = 0x8015A550; -D_8015A578 = 0x8015A578; -D_8015A57A = 0x8015A57A; -mdl_textureHandles = 0x8015A590; -D_8015C790 = 0x8015C790; -D_8015C7A8 = 0x8015C7A8; -D_8015C7C0 = 0x8015C7C0; -D_8015C7D0 = 0x8015C7D0; -D_8015C7D2 = 0x8015C7D2; -D_8015C7D8 = 0x8015C7D8; -D_8015C7E0 = 0x8015C7E0; + D_80164000 = 0x80164000; D_80169B16 = 0x80169B16; D_80197000 = 0x80197000; @@ -447,17 +220,11 @@ D_80245603 = 0x80245603; D_80245604 = 0x80245604; D_80245605 = 0x80245605; D_80245608 = 0x80245608; -D_8024560B = 0x8024560B; D_8024560C = 0x8024560C; -D_8024560F = 0x8024560F; D_80245610 = 0x80245610; -D_80245613 = 0x80245613; D_80245614 = 0x80245614; -D_80245617 = 0x80245617; D_80245618 = 0x80245618; -D_8024561B = 0x8024561B; D_8024561C = 0x8024561C; -D_8024561F = 0x8024561F; D_80245620 = 0x80245620; D_80245650 = 0x80245650; D_80245928 = 0x80245928; @@ -498,7 +265,6 @@ D_80247BF0 = 0x80247BF0; D_80247CA0 = 0x80247CA0; D_80247CB4 = 0x80247CB4; D_80247D00 = 0x80247D00; -D_80247DF0 = 0x80247DF0; D_80247E68 = 0x80247E68; D_80248380 = 0x80248380; D_80248388 = 0x80248388; @@ -527,7 +293,6 @@ D_8024B990 = 0x8024B990; D_8024B9B4 = 0x8024B9B4; D_8024B9B8 = 0x8024B9B8; D_8024BA90 = 0x8024BA90; -D_8024BB80 = 0x8024BB80; D_8024BDD0 = 0x8024BDD0; D_8024BDE8 = 0x8024BDE8; D_8024BDF0 = 0x8024BDF0; @@ -749,8 +514,6 @@ gStatsMenuIconIDs = 0x80270150; gBadgeMenuItemIDs = 0x80270180; gBadgeMenuCurrentPage = 0x80270280; gBadgeMenuPages = 0x80270288; -D_80270289 = 0x80270289; -D_8027028A = 0x8027028A; gBadgeMenuSelectedIndex = 0x80270378; D_8027037C = 0x8027037C; gBadgeMenuSelectedItemID = 0x80270380; @@ -912,7 +675,6 @@ D_8029FBD0 = 0x8029FBD0; D_8029FBD4 = 0x8029FBD4; gActionCommandStatus = 0x8029FBE0; D_8029FC2A = 0x8029FC2A; -D_8029FC3E = 0x8029FC3E; D_8029FC4C = 0x8029FC4C; D_802A19B0 = 0x802A19B0; D_802A19C0 = 0x802A19C0; @@ -921,7 +683,6 @@ D_802A1AC0 = 0x802A1AC0; D_802A1B40 = 0x802A1B40; D_802A1CD0 = 0x802A1CD0; D_802A1CD4 = 0x802A1CD4; -D_802A1D60 = 0x802A1D60; D_802A21F0 = 0x802A21F0; D_802A25C8 = 0x802A25C8; D_802A25E4 = 0x802A25E4; @@ -1217,6 +978,11 @@ heap_battleHead = 0x803DA800; D_802510B0 = 0x802510B0; D_8026A2B0 = 0x8026A2B0; +// BSS syms +#ifndef NON_MATCHING +// todo add more here as we find them +#endif + // effect_1 D_09000FA0 = 0x09000FA0; D_09001060 = 0x09001060; @@ -1290,129 +1056,6 @@ D_09001358 = 0x09001358; D_09001430 = 0x09001430; D_09001508 = 0x09001508; -// BSS syms -#ifndef NON_MATCHING -D_8010C920 = 0x8010C920; -D_8010C924 = 0x8010C924; -D_8010C928 = 0x8010C928; -D_8010C92C = 0x8010C92C; -wPartnerNpc = 0x8010C930; -D_8010C934 = 0x8010C934; -D_8010C938 = 0x8010C938; -D_8010C93C = 0x8010C93C; -D_8010C940 = 0x8010C940; -gSpinHistoryBufferPos = 0x8010C944; -D_8010C94C = 0x8010C94C; -D_8010C950 = 0x8010C950; -D_8010C954 = 0x8010C954; -D_8010C958 = 0x8010C958; -D_8010C95C = 0x8010C95C; -D_8010C960 = 0x8010C960; -D_8010C964 = 0x8010C964; -D_8010C968 = 0x8010C968; -D_8010C96B = 0x8010C96B; -D_8010C96C = 0x8010C96C; -D_8010C970 = 0x8010C970; -D_8010C974 = 0x8010C974; -D_8010C978 = 0x8010C978; -D_8010C97A = 0x8010C97A; -D_8010C97C = 0x8010C97C; -D_8010C980 = 0x8010C980; -D_8010C984 = 0x8010C984; -D_8010C98C = 0x8010C98C; -D_8010C990 = 0x8010C990; -D_8010C9A0 = 0x8010C9A0; -D_8010C9B0 = 0x8010C9B0; -D_8010C9C0 = 0x8010C9C0; -D_8010C9C8 = 0x8010C9C8; -D_8010CCF8 = 0x8010CCF8; -D_8010CCFA = 0x8010CCFA; -D_8010CCFC = 0x8010CCFC; -D_8010CCFE = 0x8010CCFE; -D_8010CD00 = 0x8010CD00; -D_8010CD10 = 0x8010CD10; -D_8010CD12 = 0x8010CD12; -D_8010CD20 = 0x8010CD20; -D_8010CD30 = 0x8010CD30; -D_8010CD34 = 0x8010CD34; -D_8010CD38 = 0x8010CD38; -D_8010CFB8 = 0x8010CFB8; -D_8010CFBC = 0x8010CFBC; -wPartnerTetherDistance = 0x8010CFC0; -D_8010CFC4 = 0x8010CFC4; -D_8010CFC8 = 0x8010CFC8; -D_8010CFCA = 0x8010CFCA; -D_8010CFCC = 0x8010CFCC; -D_8010CFCE = 0x8010CFCE; -D_8010CFD0 = 0x8010CFD0; -D_8010CFD4 = 0x8010CFD4; -D_8010CFD8 = 0x8010CFD8; -D_8010CFDC = 0x8010CFDC; -D_8010CFE0 = 0x8010CFE0; -D_8010CFE4 = 0x8010CFE4; -D_8010CFE8 = 0x8010CFE8; -wPartner = 0x8010CFEC; -D_8010CFF0 = 0x8010CFF0; -D_8010CFF4 = 0x8010CFF4; -D_8010D000 = 0x8010D000; -D_8010D640 = 0x8010D640; -D_8010D644 = 0x8010D644; -D_8010D648 = 0x8010D648; -D_8010D64C = 0x8010D64C; -D_8010D650 = 0x8010D650; -D_8010D654 = 0x8010D654; -D_8010D655 = 0x8010D655; -D_8010D656 = 0x8010D656; -D_8010D658 = 0x8010D658; -D_8010D65A = 0x8010D65A; -D_8010D65C = 0x8010D65C; -D_8010D660 = 0x8010D660; -D_8010D664 = 0x8010D664; -D_8010D668 = 0x8010D668; -D_8010D66C = 0x8010D66C; -D_8010D670 = 0x8010D670; -D_8010D674 = 0x8010D674; -D_8010D678 = 0x8010D678; -D_8010D67C = 0x8010D67C; -D_8010D67E = 0x8010D67E; -D_8010D680 = 0x8010D680; -D_8010D682 = 0x8010D682; -D_8010D684 = 0x8010D684; -D_8010D686 = 0x8010D686; -D_8010D688 = 0x8010D688; -D_8010D68A = 0x8010D68A; -D_8010D68C = 0x8010D68C; -D_8010D68E = 0x8010D68E; -D_8010D68F = 0x8010D68F; -D_8010D690 = 0x8010D690; -D_8010D691 = 0x8010D691; -D_8010D692 = 0x8010D692; -D_8010D693 = 0x8010D693; -D_8010D694 = 0x8010D694; -D_8010D698 = 0x8010D698; -D_8010D699 = 0x8010D699; -D_8010D69A = 0x8010D69A; -gPopupMenu = 0x8010D69C; -D_8010D6A0 = 0x8010D6A0; -D_8010D6A4 = 0x8010D6A4; -D_8010D6B0 = 0x8010D6B0; -gPartnerActionStatus = 0x8010EBB0; -gSpinHistoryPosY = 0x8010EF10; -gSpinHistoryPosX = 0x8010EF28; -gSpinHistoryPosZ = 0x8010EF40; -gUIStatus = 0x8010EF58; -D_8010EF92 = 0x8010EF92; -D_8010EF9C = 0x8010EF9C; -D_8010EF9D = 0x8010EF9D; -D_8010EF9E = 0x8010EF9E; -gPlayerStatus = 0x8010EFC8; -gPlayerActionState = 0x8010F07C; -gPlayerAnimation = 0x8010F080; -gPlayerSpinState = 0x8010F250; -gPlayerData = 0x8010F290; -gSpinHistoryPosAngle = 0x8010F6B8; -#endif - // Invalid pointers from dead code dead_atan2 = 0x8002AF70; dead_gCurrentCamID = 0x800A158C;