#include "PR/os.h" #include "common.h" #include INCLUDE_ASM(const s32, "main", func_80070C60); INCLUDE_ASM(const s32, "main", AddHeap); INCLUDE_ASM(const s32, "main", func_80070F14); INCLUDE_ASM(const s32, "main", __virtual_mem_alloc); INCLUDE_ASM(const s32, "main", func_800710DC); INCLUDE_ASM(const s32, "main", func_80071288); INCLUDE_ASM(const s32, "main", func_800712C4); INCLUDE_ASM(const s32, "main", func_800713EC); INCLUDE_ASM(const s32, "main", HIsAllocatedPointer); INCLUDE_ASM(const s32, "main", func_80071634); INCLUDE_ASM(const s32, "main", func_8007163C); INCLUDE_ASM(const s32, "main", func_80071644); INCLUDE_ASM(const s32, "main", func_80071950); INCLUDE_ASM(const s32, "main", func_800719E8); INCLUDE_ASM(const s32, "main", func_80071A3C); INCLUDE_ASM(const s32, "main", func_80071A74); INCLUDE_ASM(const s32, "main", func_80071B9C); INCLUDE_ASM(const s32, "main", func_80071C04); INCLUDE_ASM(const s32, "main", func_80071E74); INCLUDE_ASM(const s32, "main", main_); INCLUDE_ASM(const s32, "main", func_80072398); INCLUDE_ASM(const s32, "main", func_80072710); INCLUDE_ASM(const s32, "main", func_80072738); INCLUDE_ASM(const s32, "main", func_800727D8); extern u8 D_800AEF9A; extern OSContPad __GLOBAL_CONTROLLER_DATA; void func_8007284C(u16 __unused) { const u16 pattern_a = CONT_A | CONT_B | CONT_L | CONT_START; const u16 pattern_b = CONT_A | CONT_B | CONT_G | CONT_START; if ((D_800AEF9A & 1) && !(D_800AEF9A & 4)) { if (D_800AEF9A & 2) { if (__GLOBAL_CONTROLLER_DATA.button == 0) { D_800AEF9A = D_800AEF9A & 0xFD; } } else if (__GLOBAL_CONTROLLER_DATA.button == pattern_a || __GLOBAL_CONTROLLER_DATA.button == pattern_b) { D_800AEF9A = D_800AEF9A | 6; } } } u8 func_800728BC(void) { s32 mask; u8 temp_s0; mask = osSetIntMask(OS_IM_NONE); temp_s0 = D_800AEF9A | 1; D_800AEF9A = temp_s0; osSetIntMask(mask); return temp_s0; } u8 func_80072900(void) { s32 mask; u8 temp_s0; mask = osSetIntMask(OS_IM_NONE); temp_s0 = D_800AEF9A & 0xFA; D_800AEF9A = temp_s0; osSetIntMask(mask); return temp_s0; } s32 func_80072944(void) { u8 temp_s0; s32 mask; mask = osSetIntMask(OS_IM_NONE); temp_s0 = D_800AEF9A; osSetIntMask(mask); return temp_s0 & 4; } INCLUDE_ASM(const s32, "main", __calls_copy_controller_data); INCLUDE_ASM(const s32, "main", func_8007307C); INCLUDE_ASM(const s32, "main", func_80073164); INCLUDE_ASM(const s32, "main", func_8007328C); INCLUDE_ASM(const s32, "main", func_8007337C); INCLUDE_ASM(const s32, "main", func_8007338C); INCLUDE_ASM(const s32, "main", func_80073398); INCLUDE_ASM(const s32, "main", func_800733F8); INCLUDE_ASM(const s32, "main", func_800737A0); INCLUDE_ASM(const s32, "main", func_8007382C); INCLUDE_ASM(const s32, "main", func_80073AE4); INCLUDE_ASM(const s32, "main", func_80073BD0); INCLUDE_ASM(const s32, "main", func_80073C48); INCLUDE_ASM(const s32, "main", func_80073CB0); INCLUDE_ASM(const s32, "main", func_80073ED8); INCLUDE_ASM(const s32, "main", func_80073F58); INCLUDE_ASM(const s32, "main", func_80073FD4); INCLUDE_ASM(const s32, "main", func_80074050); INCLUDE_ASM(const s32, "main", func_80074080); INCLUDE_ASM(const s32, "main", func_800740F0); INCLUDE_ASM(const s32, "main", func_800741A8); INCLUDE_ASM(const s32, "main", func_8007422C); INCLUDE_ASM(const s32, "main", func_800742F4); INCLUDE_ASM(const s32, "main", func_80074494);