diff --git a/docs/decompiling.md b/docs/decompiling.md index 0efc9483f..eee8695e8 100644 --- a/docs/decompiling.md +++ b/docs/decompiling.md @@ -241,7 +241,7 @@ void daWall_c::set_se() { ``` This is much closer to how it would have looked when written by the original devs. -(The `JA_SE` value there is part of an enum of sound effects - if you search through the decomp for decompiled actors that call `fopAcM_seStart`, you will see this enum being when that inline is called.) +(The `JA_SE` value there is part of an enum of sound effects - if you search through the decomp for decompiled actors that call `fopAcM_seStart`, you will see this enum being used when that inline is called.) However, there's an important caveat to keep in mind when reading the debug maps: Each inline only appears **once per map**, even if it was called multiple times. We got lucky in this example, because `fopAcM_seStart` was only called once in the entire file. But if it had been called multiple times and it already appeared higher up in the tree, nothing would have appeared underneath `set_se` when we had looked at it. diff --git a/include/dolphin/gx/GXAttr.h b/include/dolphin/gx/GXAttr.h index 8481b6686..dfc954fcf 100644 --- a/include/dolphin/gx/GXAttr.h +++ b/include/dolphin/gx/GXAttr.h @@ -27,7 +27,7 @@ void GXClearVtxDesc(void); void GXSetVtxAttrFmt(GXVtxFmt fmt, GXAttr attr, GXCompCnt cnt, GXCompType type, u8 frac); void GXSetVtxAttrFmtv(GXVtxFmt fmt, GXVtxAttrFmtList* list); void __GXSetVAT(void); -void GXSetArray(GXAttr attr, void* base, u8); +void GXSetArray(GXAttr attr, void* basePtr, u8 stride); void GXInvalidateVtxCache(void); void GXSetTexCoordGen2(GXTexCoordID dst, GXTexGenType type, GXTexGenSrc src, u32 mtx, GXBool renormalize, u32 pt_mtx); diff --git a/src/JSystem/J3DGraphAnimator/J3DCluster.cpp b/src/JSystem/J3DGraphAnimator/J3DCluster.cpp index 3ca20f1db..f8b334791 100644 --- a/src/JSystem/J3DGraphAnimator/J3DCluster.cpp +++ b/src/JSystem/J3DGraphAnimator/J3DCluster.cpp @@ -432,6 +432,10 @@ void J3DSkinDeform::calcNrmMtx(J3DModel* model) { } } +#ifdef DEBUG +#pragma push +#pragma optimization_level 1 +#endif /* 802F4850-802F4974 .text deformVtxPos_F32__13J3DSkinDeformCFP8J3DModel */ void J3DSkinDeform::deformVtxPos_F32(J3DModel* model) const { /* Nonmatching */ @@ -452,6 +456,9 @@ void J3DSkinDeform::deformVtxPos_F32(J3DModel* model) const { DCStoreRange(model->getVertexBuffer()->getTransformedVtxPos(0), model->getModelData()->getVtxNum() * sizeof(Vec)); model->setCurrentVtxPos(transformedVtxPos); } +#ifdef DEBUG +#pragma pop +#endif /* 802F4974-802F4AB4 .text deformVtxPos_S16__13J3DSkinDeformCFP8J3DModel */ void J3DSkinDeform::deformVtxPos_S16(J3DModel* model) const { diff --git a/src/PowerPC_EABI_Support/MSL/MSL_C++/MSL_Common/Include/algorithm.h b/src/PowerPC_EABI_Support/MSL/MSL_C++/MSL_Common/Include/algorithm.h index 448ddc0fb..adde83897 100644 --- a/src/PowerPC_EABI_Support/MSL/MSL_C++/MSL_Common/Include/algorithm.h +++ b/src/PowerPC_EABI_Support/MSL/MSL_C++/MSL_Common/Include/algorithm.h @@ -1,6 +1,7 @@ #ifndef MSL_ALGORITHM_H_ #define MSL_ALGORITHM_H_ +#include #include namespace std { diff --git a/src/PowerPC_EABI_Support/Runtime/Src/runtime.c b/src/PowerPC_EABI_Support/Runtime/Src/runtime.c index e0dd805da..2b81f1a65 100644 --- a/src/PowerPC_EABI_Support/Runtime/Src/runtime.c +++ b/src/PowerPC_EABI_Support/Runtime/Src/runtime.c @@ -107,10 +107,6 @@ static const u32 __constants[] = { 0x00000000, 0x00000000, 0x41F00000, 0x00000000, 0x41E00000, 0x00000000, }; -/** - * @note Address: 0x800C1B4C - * @note Size: 0x5C - */ ASM u32 __cvt_fp2unsigned(register f64 d) { #ifdef __MWERKS__ // clang-format off @@ -142,10 +138,6 @@ ASM u32 __cvt_fp2unsigned(register f64 d) #endif // clang-format on } -/** - * @note Address: 0x800C1BA8 - * @note Size: 0x4C - */ ASM static void __save_fpr(void) { #ifdef __MWERKS__ // clang-format off nofralloc @@ -175,10 +167,6 @@ ASM static void __save_fpr(void) { #endif // clang-format on } -/** - * @note Address: 0x800C1BF4 - * @note Size: 0x4C - */ ASM static void __restore_fpr(void) { #ifdef __MWERKS__ // clang-format off nofralloc @@ -208,10 +196,6 @@ ASM static void __restore_fpr(void) { #endif // clang-format on } -/** - * @note Address: 0x800C1C40 - * @note Size: 0x4C - */ ASM static void __save_gpr(void) { #ifdef __MWERKS__ // clang-format off nofralloc @@ -253,10 +237,6 @@ ASM static void __save_gpr(void) { #endif // clang-format on } -/** - * @note Address: 0x800C1C8C - * @note Size: 0x4C - */ ASM static void __restore_gpr(void) { #ifdef __MWERKS__ // clang-format off nofralloc @@ -298,10 +278,6 @@ ASM static void __restore_gpr(void) { #endif // clang-format on } -/** - * @note Address: 0x800C1CD8 - * @note Size: 0xEC - */ ASM void __div2u(void) { #ifdef __MWERKS__ // clang-format off nofralloc @@ -376,10 +352,6 @@ lab9: #endif // clang-format on } -/** - * @note Address: 0x800C1DC4 - * @note Size: 0x138 - */ ASM void __div2i(void) { #ifdef __MWERKS__ // clang-format off nofralloc @@ -479,10 +451,6 @@ func_end: #endif // clang-format on } -/** - * @note Address: 0x800C1EFC - * @note Size: 0xE4 - */ ASM void __mod2u(void) { #ifdef __MWERKS__ // clang-format off nofralloc @@ -555,10 +523,6 @@ lab9: #endif // clang-format on } -/** - * @note Address: 0x800C1FE0 - * @note Size: 0x10C - */ ASM void __mod2i(void) { #ifdef __MWERKS__ // clang-format off nofralloc @@ -645,10 +609,6 @@ no_adjust: #endif // clang-format on } -/** - * @note Address: 0x800C20EC - * @note Size: 0x24 - */ ASM void __shl2i(void) { #ifdef __MWERKS__ // clang-format off nofralloc @@ -664,10 +624,6 @@ ASM void __shl2i(void) { #endif // clang-format on } -/** - * @note Address: 0x800C2110 - * @note Size: 0x24 - */ ASM void __shr2u(void) { #ifdef __MWERKS__ // clang-format off nofralloc @@ -683,10 +639,6 @@ ASM void __shr2u(void) { #endif // clang-format on } -/** - * @note Address: 0x800C2134 - * @note Size: 0x28 - */ ASM void __shr2i(void) { #ifdef __MWERKS__ // clang-format off nofralloc @@ -704,10 +656,6 @@ around: #endif // clang-format on } -/** - * @note Address: 0x800C21F8 - * @note Size: 0xCC - */ ASM void __cvt_dbl_usll(void) { #ifdef __MWERKS__ // clang-format off