20.8032%
2
Makefile
@ -464,7 +464,7 @@ build/us/src/global_asm/code_137630.c.o: OPT_FLAGS = -g
|
||||
build/us/src/global_asm/code_137C10.c.o: OPT_FLAGS = -g
|
||||
build/us/src/global_asm/code_13A7A0.c.o: OPT_FLAGS = -g
|
||||
build/us/src/global_asm/code_13C920.c.o: OPT_FLAGS = -g
|
||||
# build/us/src/global_asm/code_13CB50.c.0: OPT_FLAGS = -g
|
||||
build/us/src/global_asm/code_13CB50.c.o: OPT_FLAGS = -g
|
||||
build/us/src/global_asm/code_13CE70.c.o: OPT_FLAGS = -g
|
||||
build/us/src/global_asm/code_13D0B0.c.o: OPT_FLAGS = -g
|
||||
build/us/src/global_asm/code_13D020.c.o: OPT_FLAGS = -g
|
||||
|
@ -69,7 +69,7 @@ us,.code,arcade_barrel_stack_update,60,yes
|
||||
us,.code,func_80026518,360,yes
|
||||
us,.code,func_80026050,572,yes
|
||||
us,.code,func_80024A50,180,no
|
||||
us,.code,func_800274E0,264,no
|
||||
us,.code,func_800274E0,264,yes
|
||||
us,.code,func_8002E158,636,no
|
||||
us,.code,arcade_pulley_update,196,yes
|
||||
us,.code,func_8002549C,268,yes
|
||||
|
|
@ -1,5 +1,5 @@
|
||||
version,section,function,length,matching
|
||||
us,boot,func_80005A70,16,no
|
||||
us,boot,func_80005A70,12,yes
|
||||
us,boot,func_800058BC,92,no
|
||||
us,boot,osDestroyThread,260,yes
|
||||
us,boot,guSprite2DInit,80,no
|
||||
|
|
@ -234,7 +234,7 @@ us,.code,func_806EFD50,172,yes
|
||||
us,.code,func_80678814,8,yes
|
||||
us,.code,func_8060F54C,484,no
|
||||
us,.code,func_806F007C,64,yes
|
||||
us,.code,func_80725DC0,276,no
|
||||
us,.code,func_80725DC0,276,yes
|
||||
us,.code,func_806FB714,412,no
|
||||
us,.code,func_80654418,444,no
|
||||
us,.code,func_8072B324,12,yes
|
||||
@ -298,7 +298,7 @@ us,.code,func_8064B9E0,276,no
|
||||
us,.code,func_806F0D68,736,no
|
||||
us,.code,func_8060C430,536,no
|
||||
us,.code,func_806C6B50,80,yes
|
||||
us,.code,func_80726DEC,116,no
|
||||
us,.code,func_80726DEC,116,yes
|
||||
us,.code,func_8072E22C,132,yes
|
||||
us,.code,func_807324D0,100,yes
|
||||
us,.code,func_8070D82C,148,no
|
||||
@ -962,7 +962,7 @@ us,.code,func_80676A70,72,yes
|
||||
us,.code,func_806B3E7C,192,yes
|
||||
us,.code,func_80713270,108,yes
|
||||
us,.code,func_8071C818,252,no
|
||||
us,.code,func_80737E50,64,no
|
||||
us,.code,func_80737E50,64,yes
|
||||
us,.code,func_80658930,472,no
|
||||
us,.code,func_8060FAE4,1292,no
|
||||
us,.code,func_8060D7A8,1172,yes
|
||||
@ -1066,7 +1066,6 @@ us,.code,func_8062D1A8,56,yes
|
||||
us,.code,func_806B7EA0,1348,no
|
||||
us,.code,func_8068D264,1636,no
|
||||
us,.code,func_806C151C,204,yes
|
||||
us,.code,func_80737F38,8,yes
|
||||
us,.code,func_80676208,24,yes
|
||||
us,.code,func_80739098,500,no
|
||||
us,.code,func_80601484,152,yes
|
||||
@ -1160,7 +1159,6 @@ us,.code,func_8068A508,604,no
|
||||
us,.code,func_805FF670,400,no
|
||||
us,.code,func_80732894,152,yes
|
||||
us,.code,func_8060B140,752,no
|
||||
us,.code,func_80737E9C,8,yes
|
||||
us,.code,func_80601780,52,yes
|
||||
us,.code,func_806614D0,80,yes
|
||||
us,.code,func_806896F0,32,yes
|
||||
@ -1225,7 +1223,7 @@ us,.code,func_806CDD24,1104,no
|
||||
us,.code,func_80649F64,92,yes
|
||||
us,.code,func_8061130C,64,yes
|
||||
us,.code,func_806883F4,56,yes
|
||||
us,.code,func_807248B0,228,no
|
||||
us,.code,func_807248B0,228,yes
|
||||
us,.code,func_80630588,328,yes
|
||||
us,.code,func_80717B64,388,no
|
||||
us,.code,func_80634CC8,76,yes
|
||||
@ -1532,7 +1530,7 @@ us,.code,func_806A7B70,36,yes
|
||||
us,.code,func_806B54BC,1488,yes
|
||||
us,.code,func_80659574,60,no
|
||||
us,.code,func_806534E0,420,no
|
||||
us,.code,func_80724994,140,no
|
||||
us,.code,func_80724994,140,yes
|
||||
us,.code,func_8064AB1C,268,no
|
||||
us,.code,func_8068B81C,20,yes
|
||||
us,.code,func_8066E5CC,44,yes
|
||||
@ -2109,7 +2107,7 @@ us,.code,func_806CEB44,192,yes
|
||||
us,.code,func_80703CF8,984,no
|
||||
us,.code,func_807149C8,52,yes
|
||||
us,.code,func_8064B514,96,no
|
||||
us,.code,func_80726E60,128,no
|
||||
us,.code,func_80726E60,128,yes
|
||||
us,.code,func_80737CF4,312,yes
|
||||
us,.code,func_806E709C,404,yes
|
||||
us,.code,setFlag,288,yes
|
||||
@ -2673,7 +2671,7 @@ us,.code,func_805FF378,352,yes
|
||||
us,.code,func_8064B4AC,104,no
|
||||
us,.code,func_806C43A8,108,yes
|
||||
us,.code,func_806BB32C,212,yes
|
||||
us,.code,func_80737EA4,104,no
|
||||
us,.code,func_80737EA4,104,yes
|
||||
us,.code,func_806A6230,132,yes
|
||||
us,.code,func_8066F274,396,yes
|
||||
us,.code,func_80642E34,400,no
|
||||
@ -2935,7 +2933,7 @@ us,.code,func_80600B10,172,no
|
||||
us,.code,func_80634E10,148,yes
|
||||
us,.code,func_806C7228,8,yes
|
||||
us,.code,func_80645D14,556,no
|
||||
us,.code,func_80737F40,152,no
|
||||
us,.code,func_80737F40,152,yes
|
||||
us,.code,func_80605510,744,no
|
||||
us,.code,func_806FD9FC,144,no
|
||||
us,.code,func_8071B44C,212,no
|
||||
@ -2953,7 +2951,7 @@ us,.code,func_8070F2FC,628,no
|
||||
us,.code,func_80600BBC,172,no
|
||||
us,.code,func_806D8070,56,yes
|
||||
us,.code,func_80671D64,156,no
|
||||
us,.code,func_80737E90,12,no
|
||||
us,.code,func_80737E90,20,yes
|
||||
us,.code,func_806EA600,40,yes
|
||||
us,.code,func_8063643C,12,yes
|
||||
us,.code,func_80600674,732,no
|
||||
@ -3060,7 +3058,7 @@ us,.code,func_805FF168,32,yes
|
||||
us,.code,func_8069D018,64,yes
|
||||
us,.code,func_8063D468,44,yes
|
||||
us,.code,func_8067ABC0,120,yes
|
||||
us,.code,func_80737F0C,44,no
|
||||
us,.code,func_80737F0C,52,yes
|
||||
us,.code,setIntroStoryPlaying,16,yes
|
||||
us,.code,func_8069CD9C,440,no
|
||||
us,.code,func_806E2C74,80,no
|
||||
|
|
@ -234,7 +234,7 @@ us,.code,func_806EFD50,172,yes
|
||||
us,.code,func_80678814,8,yes
|
||||
us,.code,func_8060F54C,484,no
|
||||
us,.code,func_806F007C,64,yes
|
||||
us,.code,func_80725DC0,276,no
|
||||
us,.code,func_80725DC0,276,yes
|
||||
us,.code,func_806FB714,412,no
|
||||
us,.code,func_80654418,444,no
|
||||
us,.code,func_8072B324,12,yes
|
||||
@ -298,7 +298,7 @@ us,.code,func_8064B9E0,276,no
|
||||
us,.code,func_806F0D68,736,no
|
||||
us,.code,func_8060C430,536,no
|
||||
us,.code,func_806C6B50,80,yes
|
||||
us,.code,func_80726DEC,116,no
|
||||
us,.code,func_80726DEC,116,yes
|
||||
us,.code,func_8072E22C,132,yes
|
||||
us,.code,func_807324D0,100,yes
|
||||
us,.code,func_8070D82C,148,no
|
||||
@ -962,7 +962,7 @@ us,.code,func_80676A70,72,yes
|
||||
us,.code,func_806B3E7C,192,yes
|
||||
us,.code,func_80713270,108,yes
|
||||
us,.code,func_8071C818,252,no
|
||||
us,.code,func_80737E50,64,no
|
||||
us,.code,func_80737E50,64,yes
|
||||
us,.code,func_80658930,472,no
|
||||
us,.code,func_8060FAE4,1292,no
|
||||
us,.code,func_8060D7A8,1172,yes
|
||||
@ -1066,7 +1066,6 @@ us,.code,func_8062D1A8,56,yes
|
||||
us,.code,func_806B7EA0,1348,no
|
||||
us,.code,func_8068D264,1636,no
|
||||
us,.code,func_806C151C,204,yes
|
||||
us,.code,func_80737F38,8,yes
|
||||
us,.code,func_80676208,24,yes
|
||||
us,.code,func_80739098,500,no
|
||||
us,.code,func_80601484,152,yes
|
||||
@ -1160,7 +1159,6 @@ us,.code,func_8068A508,604,no
|
||||
us,.code,func_805FF670,400,no
|
||||
us,.code,func_80732894,152,yes
|
||||
us,.code,func_8060B140,752,no
|
||||
us,.code,func_80737E9C,8,yes
|
||||
us,.code,func_80601780,52,yes
|
||||
us,.code,func_806614D0,80,yes
|
||||
us,.code,func_806896F0,32,yes
|
||||
@ -1225,7 +1223,7 @@ us,.code,func_806CDD24,1104,no
|
||||
us,.code,func_80649F64,92,yes
|
||||
us,.code,func_8061130C,64,yes
|
||||
us,.code,func_806883F4,56,yes
|
||||
us,.code,func_807248B0,228,no
|
||||
us,.code,func_807248B0,228,yes
|
||||
us,.code,func_80630588,328,yes
|
||||
us,.code,func_80717B64,388,no
|
||||
us,.code,func_80634CC8,76,yes
|
||||
@ -1532,7 +1530,7 @@ us,.code,func_806A7B70,36,yes
|
||||
us,.code,func_806B54BC,1488,yes
|
||||
us,.code,func_80659574,60,no
|
||||
us,.code,func_806534E0,420,no
|
||||
us,.code,func_80724994,140,no
|
||||
us,.code,func_80724994,140,yes
|
||||
us,.code,func_8064AB1C,268,no
|
||||
us,.code,func_8068B81C,20,yes
|
||||
us,.code,func_8066E5CC,44,yes
|
||||
@ -2109,7 +2107,7 @@ us,.code,func_806CEB44,192,yes
|
||||
us,.code,func_80703CF8,984,no
|
||||
us,.code,func_807149C8,52,yes
|
||||
us,.code,func_8064B514,96,no
|
||||
us,.code,func_80726E60,128,no
|
||||
us,.code,func_80726E60,128,yes
|
||||
us,.code,func_80737CF4,312,yes
|
||||
us,.code,func_806E709C,404,yes
|
||||
us,.code,setFlag,288,yes
|
||||
@ -2673,7 +2671,7 @@ us,.code,func_805FF378,352,yes
|
||||
us,.code,func_8064B4AC,104,no
|
||||
us,.code,func_806C43A8,108,yes
|
||||
us,.code,func_806BB32C,212,yes
|
||||
us,.code,func_80737EA4,104,no
|
||||
us,.code,func_80737EA4,104,yes
|
||||
us,.code,func_806A6230,132,yes
|
||||
us,.code,func_8066F274,396,yes
|
||||
us,.code,func_80642E34,400,no
|
||||
@ -2935,7 +2933,7 @@ us,.code,func_80600B10,172,no
|
||||
us,.code,func_80634E10,148,yes
|
||||
us,.code,func_806C7228,8,yes
|
||||
us,.code,func_80645D14,556,no
|
||||
us,.code,func_80737F40,152,no
|
||||
us,.code,func_80737F40,152,yes
|
||||
us,.code,func_80605510,744,no
|
||||
us,.code,func_806FD9FC,144,no
|
||||
us,.code,func_8071B44C,212,no
|
||||
@ -2953,7 +2951,7 @@ us,.code,func_8070F2FC,628,no
|
||||
us,.code,func_80600BBC,172,no
|
||||
us,.code,func_806D8070,56,yes
|
||||
us,.code,func_80671D64,156,no
|
||||
us,.code,func_80737E90,12,no
|
||||
us,.code,func_80737E90,20,yes
|
||||
us,.code,func_806EA600,40,yes
|
||||
us,.code,func_8063643C,12,yes
|
||||
us,.code,func_80600674,732,no
|
||||
@ -3060,7 +3058,7 @@ us,.code,func_805FF168,32,yes
|
||||
us,.code,func_8069D018,64,yes
|
||||
us,.code,func_8063D468,44,yes
|
||||
us,.code,func_8067ABC0,120,yes
|
||||
us,.code,func_80737F0C,44,no
|
||||
us,.code,func_80737F0C,52,yes
|
||||
us,.code,setIntroStoryPlaying,16,yes
|
||||
us,.code,func_8069CD9C,440,no
|
||||
us,.code,func_806E2C74,80,no
|
||||
@ -3754,7 +3752,7 @@ us,.code,arcade_barrel_stack_update,60,yes
|
||||
us,.code,func_80026518,360,yes
|
||||
us,.code,func_80026050,572,yes
|
||||
us,.code,func_80024A50,180,no
|
||||
us,.code,func_800274E0,264,no
|
||||
us,.code,func_800274E0,264,yes
|
||||
us,.code,func_8002E158,636,no
|
||||
us,.code,arcade_pulley_update,196,yes
|
||||
us,.code,func_8002549C,268,yes
|
||||
@ -3973,7 +3971,7 @@ us,.code,func_80033784,424,no
|
||||
us,.code,func_80028680,56,yes
|
||||
us,.code,func_80027770,200,yes
|
||||
version,section,function,length,matching
|
||||
us,boot,func_80005A70,16,no
|
||||
us,boot,func_80005A70,12,yes
|
||||
us,boot,func_800058BC,92,no
|
||||
us,boot,osDestroyThread,260,yes
|
||||
us,boot,guSprite2DInit,80,no
|
||||
|
|
@ -9,7 +9,7 @@
|
||||
</mask>
|
||||
<g mask="url(#anybadge_1)">
|
||||
<path fill="#555" d="M0 0h51v20H0z"/>
|
||||
<path fill="#b4c000" d="M51 0h67v20H51z"/>
|
||||
<path fill="#b2c000" d="M51 0h67v20H51z"/>
|
||||
<path fill="url(#b)" d="M0 0h118v20H0z"/>
|
||||
</g>
|
||||
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
|
||||
@ -17,7 +17,7 @@
|
||||
<text x="25.5" y="14">arcade</text>
|
||||
</g>
|
||||
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
|
||||
<text x="85.5" y="15" fill="#010101" fill-opacity=".3">53.0956%</text>
|
||||
<text x="84.5" y="14">53.0956%</text>
|
||||
<text x="85.5" y="15" fill="#010101" fill-opacity=".3">53.5517%</text>
|
||||
<text x="84.5" y="14">53.5517%</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
@ -17,7 +17,7 @@
|
||||
<text x="35.5" y="14">dk64_boot</text>
|
||||
</g>
|
||||
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
|
||||
<text x="105.5" y="15" fill="#010101" fill-opacity=".3">32.4921%</text>
|
||||
<text x="104.5" y="14">32.4921%</text>
|
||||
<text x="105.5" y="15" fill="#010101" fill-opacity=".3">32.5209%</text>
|
||||
<text x="104.5" y="14">32.5209%</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
@ -17,7 +17,7 @@
|
||||
<text x="38.5" y="14">global_asm</text>
|
||||
</g>
|
||||
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
|
||||
<text x="111.5" y="15" fill="#010101" fill-opacity=".3">20.7584%</text>
|
||||
<text x="110.5" y="14">20.7584%</text>
|
||||
<text x="111.5" y="15" fill="#010101" fill-opacity=".3">20.8611%</text>
|
||||
<text x="110.5" y="14">20.8611%</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
@ -17,7 +17,7 @@
|
||||
<text x="66.0" y="14">Donkey Kong 64 (US)</text>
|
||||
</g>
|
||||
<g fill="#fff" text-anchor="middle" font-family="DejaVu Sans,Verdana,Geneva,sans-serif" font-size="11">
|
||||
<text x="166.5" y="15" fill="#010101" fill-opacity=".3">20.7095%</text>
|
||||
<text x="165.5" y="14">20.7095%</text>
|
||||
<text x="166.5" y="15" fill="#010101" fill-opacity=".3">20.8032%</text>
|
||||
<text x="165.5" y="14">20.8032%</text>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
@ -948,7 +948,16 @@ void func_800268AC(Gfx **gpp) {
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/arcade/code_0/func_80026EF4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/arcade/code_0/func_800274E0.s")
|
||||
void func_800274E0(s32 *arg0, u8 arg1, u8 arg2, s16 arg3) {
|
||||
u8 i;
|
||||
s32 sp40;
|
||||
|
||||
sp40 = *arg0;
|
||||
for (i = arg1; i < arg2; i++) {
|
||||
func_8070F2FC(&sp40, (i << 5) + 0xC0, ((arg3 * 0.875) + 8.0) * 4.0);
|
||||
}
|
||||
*arg0 = sp40;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/arcade/code_0/func_800275E8.s")
|
||||
|
||||
@ -3130,7 +3139,6 @@ void func_80030734(u8 arg0) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (temp_s0->unk1C++ == 0x42) {
|
||||
temp_s0->unk18 = ARCADE_OBJ_14_POINTS_TEXT;
|
||||
temp_v0 = func_80024644() & 3;
|
||||
|
@ -22,4 +22,8 @@
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/dk64_boot/dk64_boot_63B0/func_80005A44.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/dk64_boot/dk64_boot_63B0/func_80005A70.s")
|
||||
s32 D_800100F4;
|
||||
|
||||
s32 func_80005A70(void) {
|
||||
return D_800100F4;
|
||||
}
|
||||
|
@ -1,11 +1,31 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
|
||||
void func_807248B0(Actor *arg0, f32 arg1) {
|
||||
LedgeInfo *temp_v0;
|
||||
|
||||
arg0->animation_state->scale_x = arg1;
|
||||
arg0->animation_state->scale_y = arg1;
|
||||
arg0->animation_state->scale_z = arg1;
|
||||
temp_v0 = arg0->ledge_info_pointer;
|
||||
if (temp_v0 != NULL) {
|
||||
arg0->unk15E = (temp_v0->unkC * arg1) * 0.5;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_1295B0/func_807248B0.s")
|
||||
void func_80724994(u8 arg0, s16 arg1, s16 arg2, s16 arg3, s16 arg4) {
|
||||
s16 *sp24;
|
||||
Actor *sp20;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_1295B0/func_80724994.s")
|
||||
sp24 = malloc(8);
|
||||
func_8061134C(sp24);
|
||||
sp24[0] = arg1;
|
||||
sp24[1] = arg2;
|
||||
sp24[2] = arg3;
|
||||
sp24[3] = arg4;
|
||||
func_8072E7DC(0xB, &sp20);
|
||||
func_8067AB20(NULL, sp20, 0x01000000, arg0, sp24, 0);
|
||||
}
|
||||
|
||||
s32 func_80724A20(void) {
|
||||
s16 i;
|
||||
@ -98,12 +118,22 @@ u8 func_80725B38(s16 arg0, s16 arg1, s16 arg2, s16 arg3, s16 arg4, s16 arg5) {
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_1295B0/func_80725BA4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_1295B0/func_80725DC0.s")
|
||||
void func_8061F2B8(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32 *, f32 *, f32 *);
|
||||
|
||||
u8 func_80725DC0(s16 arg0, s16 arg1, s16 arg2, s16 arg3, s16 arg4, s16 arg5, s16 arg6) {
|
||||
f32 sp4C;
|
||||
f32 sp48;
|
||||
f32 sp44;
|
||||
|
||||
func_8061F2B8(arg4, 0.0f, arg5, arg0, 0.0f, arg1, arg2, 0.0f, arg3, &sp4C, &sp48, &sp44);
|
||||
return ((sp4C - arg4) * (sp4C - arg4) + (sp44 - arg5) * (sp44 - arg5)) < (arg6 * arg6);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_1295B0/func_80725ED4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_1295B0/func_80726164.s")
|
||||
|
||||
// arg0 Actor
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_1295B0/func_807264B0.s")
|
||||
|
||||
typedef struct global_asm_struct_8 {
|
||||
@ -125,7 +155,7 @@ void func_807266E8(Actor *arg0, GlobalASMStruct8 *arg1) {
|
||||
// Jumptable, references the cutscene model mapping table at D_8075570C
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_1295B0/func_80726744.s")
|
||||
|
||||
u8 func_80726DEC(u8, s32);
|
||||
u8 func_80726DEC(u8, u8);
|
||||
|
||||
u8 func_80726D7C(u8 arg0) {
|
||||
return func_80726DEC(arg0, 5) || func_80726DEC(arg0, 6);
|
||||
@ -135,9 +165,36 @@ u8 func_80726DC0(u8 arg0) {
|
||||
return func_80726DEC(arg0, 7);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_1295B0/func_80726DEC.s")
|
||||
u8 func_80726DEC(u8 arg0, u8 arg1) {
|
||||
s16 i;
|
||||
EnemySpawner *var_v1;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_1295B0/func_80726E60.s")
|
||||
var_v1 = D_80755694->firstSpawner;
|
||||
for (i = 0; i < D_80755694->count; i++) {
|
||||
if (var_v1->spawn_trigger == arg0) {
|
||||
return (var_v1->spawn_state == arg1);
|
||||
}
|
||||
var_v1++;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void func_80726E60(u16 arg0, u8 arg1) {
|
||||
Actor *temp_v1;
|
||||
EnemySpawner *var_v0;
|
||||
s16 i;
|
||||
|
||||
var_v0 = D_80755694->firstSpawner;
|
||||
for (i = 0; i < D_80755694->count; i++) {
|
||||
if (var_v0->spawn_state == 5) {
|
||||
temp_v1 = var_v0->tied_actor;
|
||||
if (temp_v1->interactable & arg0) {
|
||||
temp_v1->control_state = arg1;
|
||||
}
|
||||
}
|
||||
var_v0++;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_1295B0/func_80726EE0.s")
|
||||
|
||||
|
@ -50,7 +50,6 @@ u8 isFlagSet(s16 flagIndex, u8 flagType) { // TODO: Can we use the FlagTypes enu
|
||||
return flagBlock[flagByte] >> (s16)(flagIndex - flagByte * 8) & 1;
|
||||
}
|
||||
|
||||
// Doable
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_135D30/func_807311C4.s")
|
||||
|
||||
typedef struct {
|
||||
@ -65,19 +64,17 @@ void func_807311C4(s16, s32);
|
||||
|
||||
/*
|
||||
void func_807311C4(s16 arg0, s32 arg1) {
|
||||
u32 i;
|
||||
s32 i;
|
||||
s32 chosenFlag;
|
||||
|
||||
chosenFlag = -1;
|
||||
i = 0;
|
||||
do {
|
||||
for (i = 0; i < 0x21 && chosenFlag == -1; i++) {
|
||||
if (arg0 >= D_80756024[i].unk0 && D_80756024[i].unk2 >= arg0) {
|
||||
if (func_80731AA8(D_80756024[i].unk0, (D_80756024[i].unk2 - D_80756024[i].unk0) + 1, FLAG_TYPE_PERMANENT) == D_80756024[i].unk4) {
|
||||
chosenFlag = D_80756024[i].unk6;
|
||||
}
|
||||
}
|
||||
i++;
|
||||
} while (i < 0x21 && chosenFlag == -1);
|
||||
}
|
||||
|
||||
if (chosenFlag >= 0) {
|
||||
setFlag(chosenFlag, TRUE, FLAG_TYPE_GLOBAL);
|
||||
|
@ -21,8 +21,66 @@
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_137C10/func_80735958.s")
|
||||
|
||||
typedef struct {
|
||||
s32 unk0;
|
||||
s32 unk4;
|
||||
f32 unk8;
|
||||
} Struct80735958_unk18;
|
||||
|
||||
typedef struct {
|
||||
s32 unk0;
|
||||
s32 unk4;
|
||||
s32 unk8;
|
||||
s32 unkC;
|
||||
s32 unk10;
|
||||
s32 unk14;
|
||||
Struct80735958_unk18* unk18;
|
||||
s32 unk1C;
|
||||
s32 unk20;
|
||||
s32 unk24;
|
||||
} Struct80735958;
|
||||
|
||||
/*
|
||||
// TODO: Float regalloc lol
|
||||
void func_80735958(Struct80735958 *arg0, f32 arg1) {
|
||||
if (arg0->unk18 != NULL) {
|
||||
arg0->unk24 = arg1 * arg0->unk18->unk8;
|
||||
} else {
|
||||
arg0->unk24 = 0x1E8;
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_137C10/func_807359A0.s")
|
||||
|
||||
typedef struct {
|
||||
u8 unk0[0x18 - 0x0];
|
||||
s32 unk18;
|
||||
u8 unk1C[0x24 - 0x1C];
|
||||
s32 unk24;
|
||||
s32 unk28;
|
||||
s32 unk2C;
|
||||
u8 unk30[0x48 - 0x30];
|
||||
s32 unk48;
|
||||
} Struct807359A0;
|
||||
|
||||
/*
|
||||
// TODO: Very close, branch nonsense
|
||||
void func_807359A0(Struct807359A0 *arg0) {
|
||||
s32 pad[3];
|
||||
s16 pad2;
|
||||
s16 sp20;
|
||||
s32 sp1C;
|
||||
|
||||
if (arg0->unk2C == 1 && !arg0->unk18) {
|
||||
if (!func_8073D060(arg0->unk18, &sp1C)) {
|
||||
sp20 = 0;
|
||||
alEvtqPostEvent(&arg0->unk48, &sp20, arg0->unk24 * sp1C);
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
u8 unk0[0x88 - 0x0];
|
||||
u8 unk88;
|
||||
|
@ -1,36 +1,106 @@
|
||||
#include <ultra64.h>
|
||||
#include "functions.h"
|
||||
|
||||
typedef struct {
|
||||
u8 unk0[0x48 - 0x0];
|
||||
s32 unk48;
|
||||
} Struct80737E50;
|
||||
|
||||
void func_80737E50(Struct80737E50 *arg0) {
|
||||
s32 pad[3];
|
||||
s16 pad2;
|
||||
s16 sp18; // TODO: ALEvent struct
|
||||
|
||||
// Audio stuff, weird stack things going on
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_13CB50/func_80737E50.s")
|
||||
|
||||
// struct s32 into 0x84
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_13CB50/func_80737E90.s")
|
||||
|
||||
void func_80737E9C(void) {
|
||||
|
||||
sp18 = 0xF;
|
||||
alEvtqPostEvent(&arg0->unk48, &sp18, 0);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_13CB50/func_80737EA4.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_13CB50/func_80737F0C.s")
|
||||
|
||||
void func_80737F38(void) {
|
||||
typedef struct {
|
||||
u8 unk0[0x84 - 0x0];
|
||||
s32 unk84;
|
||||
} Struct80737E90;
|
||||
|
||||
void func_80737E90(Struct80737E90 *arg0, s32 arg1) {
|
||||
arg0->unk84 = arg1;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_13CB50/func_80737F40.s")
|
||||
typedef struct {
|
||||
u8 unk0;
|
||||
u8 unk1;
|
||||
u8 unk2;
|
||||
u8 unk3;
|
||||
} Struct80737EA4_unk20_unkC;
|
||||
|
||||
// TODO: WTF?
|
||||
typedef struct {
|
||||
union {
|
||||
s16 unk0[2];
|
||||
Struct80737EA4_unk20_unkC *unkC;
|
||||
};
|
||||
} Struct80737EA4_unk20;
|
||||
|
||||
typedef struct {
|
||||
s32 unk0;
|
||||
s32 unk4;
|
||||
s32 unk8;
|
||||
s32 unkC;
|
||||
s32 unk10;
|
||||
s32 unk14;
|
||||
s32 unk18;
|
||||
s32 unk1C;
|
||||
Struct80737EA4_unk20 *unk20;
|
||||
} Struct80737EA4;
|
||||
|
||||
void func_80737EA4(Struct80737EA4 *arg0, u8 arg1, u8 arg2) {
|
||||
Struct80737EA4_unk20_unkC *sp4;
|
||||
|
||||
if (arg1 < arg0->unk20[0].unk0[0]) { // TODO: Wtf?
|
||||
sp4 = arg0->unk20[arg1 + 3].unkC; // TODO: Wtf?
|
||||
if (sp4 != NULL) {
|
||||
sp4->unk3 = (arg2 * 2) | (sp4->unk3 & 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
typedef struct {
|
||||
u8 unk0[0xD - 0x0];
|
||||
u8 unkD;
|
||||
u8 unkE;
|
||||
u8 unkF;
|
||||
u8 unk10;
|
||||
u8 unk11[0x34 - 0x11];
|
||||
} Struct80737F0C_unk60;
|
||||
|
||||
typedef struct {
|
||||
u8 unk0[0x30 - 0x0];
|
||||
u16 unk30;
|
||||
u16 unk32;
|
||||
u8 unk34;
|
||||
u8 unk38[0x60 - 0x35];
|
||||
Struct80737F0C_unk60 *unk60;
|
||||
} Struct80737F0C;
|
||||
|
||||
void func_80737F0C(Struct80737F0C *arg0, s32 arg1, u8 arg2) {
|
||||
arg0->unk60[arg1].unk10 = arg2;
|
||||
}
|
||||
|
||||
void func_80737F40(Struct80737F0C *arg0) {
|
||||
s32 i;
|
||||
|
||||
arg0->unk30 = 0xFFFF;
|
||||
for (i = 0; i < arg0->unk34; i++) {
|
||||
arg0->unk60[i].unkE = 0xFF;
|
||||
arg0->unk60[i].unkD = 0xFF;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/nonmatchings/global_asm/code_13CB50/func_80737FD8.s")
|
||||
|
||||
/*
|
||||
void func_807382A0(s32, s32, u8, u8);
|
||||
void func_807382A0(s32, s32, s32, s32, s32);
|
||||
|
||||
// TODO: Wtf
|
||||
void func_80737FD8(s32 arg0, s32 arg1, s32 arg2) {
|
||||
func_807382A0(arg0, 0, arg1 | 0xB0, 0xFF);
|
||||
void func_80737FD8(s32 arg0, s32 arg1) {
|
||||
func_807382A0(arg0, 0, arg1 | 0xB0, 0xFF, 0);
|
||||
}
|
||||
*/
|
||||
|
||||
|