mirror of
https://github.com/Druthulu/BFM-decomp
synced 2026-09-29 23:24:32 -04:00
bd45f1f232
One clean whole-EXE rebuild verified the batch (gate_main), and main re-checked BYTE-IDENTICAL against config/check.us.sha before anything was credited. GsTMDfastG3GNL func_80012558 func_800140B8 func_80014C54 func_80015A74 func_80017F14 func_80018384 func_800183E0 func_800191D4 func_8001931C func_80019930 func_8001BB60 func_8001CB6C func_8001CF48 func_8001D16C func_8001D388 func_800243EC func_80028620 func_80029124 func_800298BC func_80029FE4 func_8002AA3C func_8002CC4C func_8002D320 func_8002D678 func_8002E8DC func_8002F5C8 func_80030470 func_800304C8 func_80033324 func_80034B3C func_80036FB0 func_800623A4 gfx2D_BG0_OBJ_4D8
188 lines
4.1 KiB
C
188 lines
4.1 KiB
C
#include "common.h"
|
|
|
|
INCLUDE_ASM("asm/nonmatchings/800c2_2", func_80062388);
|
|
|
|
INCLUDE_ASM("asm/nonmatchings/800c2_2", func_80062394);
|
|
|
|
__asm__(
|
|
".text\n"
|
|
".align 2\n"
|
|
".globl func_800623A4\n"
|
|
".ent\tfunc_800623A4\n"
|
|
"func_800623A4:\n"
|
|
".frame $sp,40,$31\n"
|
|
".mask 0x001F0000,-16\n"
|
|
".fmask 0,0\n"
|
|
".set\tnoreorder\n"
|
|
"addiu $sp, $sp, -40\n"
|
|
"sw $s0, 16($sp)\n"
|
|
"addu $s0, $a0, $zero\n"
|
|
"sw $s1, 20($sp)\n"
|
|
"addu $s1, $a1, $zero\n"
|
|
"sw $s2, 24($sp)\n"
|
|
"addu $s2, $a2, $zero\n"
|
|
"sw $s3, 28($sp)\n"
|
|
"sw $ra, 32($sp)\n"
|
|
"jal func_80062768\n"
|
|
"addu $s3, $a3, $zero\n"
|
|
"jal func_8005CF08\n"
|
|
"nop\n"
|
|
"jal func_800626F0\n"
|
|
"nop\n"
|
|
"jal func_8005CF18\n"
|
|
"nop\n"
|
|
"jal ChangeClearPAD\n"
|
|
"addu $a0, $zero, $zero\n"
|
|
"jal func_8006252C\n"
|
|
"nop\n"
|
|
"addu $a0, $s0, $zero\n"
|
|
"addu $a1, $s1, $zero\n"
|
|
"addu $a2, $s2, $zero\n"
|
|
"jal PAD_init2\n"
|
|
"addu $a3, $s3, $zero\n"
|
|
"addiu $v0, $zero, 1\n"
|
|
"lui $at, %hi(D_80072A24)\n"
|
|
"sw $v0, %lo(D_80072A24)($at)\n"
|
|
"lw $ra, 32($sp)\n"
|
|
"lw $s3, 28($sp)\n"
|
|
"lw $s2, 24($sp)\n"
|
|
"lw $s1, 20($sp)\n"
|
|
"lw $s0, 16($sp)\n"
|
|
"jr $ra\n"
|
|
"addiu $sp, $sp, 40\n"
|
|
".set\treorder\n"
|
|
".end\tfunc_800623A4\n"
|
|
);
|
|
|
|
|
|
__asm__(
|
|
".text\n"
|
|
".align 2\n"
|
|
".globl func_80062434\n"
|
|
".ent\tfunc_80062434\n"
|
|
"func_80062434:\n"
|
|
".frame $sp,40,$31\n"
|
|
".mask 0x001F0000,-16\n"
|
|
".fmask 0,0\n"
|
|
".set\tnoreorder\n"
|
|
"addiu $sp, $sp, -40\n"
|
|
"sw $s0, 16($sp)\n"
|
|
"addu $s0, $a0, $zero\n"
|
|
"sw $s1, 20($sp)\n"
|
|
"addu $s1, $a1, $zero\n"
|
|
"sw $s2, 24($sp)\n"
|
|
"addu $s2, $a2, $zero\n"
|
|
"sw $s3, 28($sp)\n"
|
|
"sw $ra, 32($sp)\n"
|
|
"jal func_80062768\n"
|
|
"addu $s3, $a3, $zero\n"
|
|
"jal func_8005CF08\n"
|
|
"nop\n"
|
|
"jal func_800626F0\n"
|
|
"nop\n"
|
|
"jal func_8005CF18\n"
|
|
"nop\n"
|
|
"jal ChangeClearPAD\n"
|
|
"addu $a0, $zero, $zero\n"
|
|
"jal func_8006252C\n"
|
|
"nop\n"
|
|
"addu $a0, $s0, $zero\n"
|
|
"addu $a1, $s1, $zero\n"
|
|
"addu $a2, $s2, $zero\n"
|
|
"jal InitPAD2\n"
|
|
"addu $a3, $s3, $zero\n"
|
|
"addiu $v0, $zero, 1\n"
|
|
"lui $at, %hi(D_80072A24)\n"
|
|
"sw $v0, %lo(D_80072A24)($at)\n"
|
|
"lw $ra, 32($sp)\n"
|
|
"lw $s3, 28($sp)\n"
|
|
"lw $s2, 24($sp)\n"
|
|
"lw $s1, 20($sp)\n"
|
|
"lw $s0, 16($sp)\n"
|
|
"jr $ra\n"
|
|
"addiu $sp, $sp, 40\n"
|
|
".set\treorder\n"
|
|
".end\tfunc_80062434\n"
|
|
);
|
|
|
|
INCLUDE_ASM("asm/nonmatchings/800c2_2", func_800624C4);
|
|
|
|
INCLUDE_ASM("asm/nonmatchings/800c2_2", func_800624F4);
|
|
|
|
__asm__(
|
|
".text\n"
|
|
".align\t2\n"
|
|
".globl\tfunc_8006252C\n"
|
|
".ent\tfunc_8006252C\n"
|
|
"func_8006252C:\n"
|
|
".set\tnoreorder\n"
|
|
"addiu\t$sp, $sp, -24\n"
|
|
"sw\t$ra, 20($sp)\n"
|
|
"jal\tfunc_8005CF08\n"
|
|
"sw\t$s0, 16($sp)\n"
|
|
"li\t$a0, 1\n"
|
|
"lui\t$v1, %hi(D_80078D0C)\n"
|
|
"addiu\t$v1, $v1, %lo(D_80078D0C)\n"
|
|
"addiu\t$s0, $v1, -4\n"
|
|
"lui\t$v0, %hi(func_800625DC)\n"
|
|
"addiu\t$v0, $v0, %lo(func_800625DC)\n"
|
|
"sw\t$v0, 0($v1)\n"
|
|
"lui\t$v0, %hi(func_80062644)\n"
|
|
"addiu\t$v0, $v0, %lo(func_80062644)\n"
|
|
"sw\t$v0, 4($v1)\n"
|
|
"lui\t$at, %hi(D_80078D08)\n"
|
|
"sw\t$zero, %lo(D_80078D08)($at)\n"
|
|
"lui\t$at, %hi(D_80078D14)\n"
|
|
"sw\t$zero, %lo(D_80078D14)($at)\n"
|
|
"jal\tSysDeqIntRP\n"
|
|
"addu\t$a1, $s0, $zero\n"
|
|
"li\t$a0, 1\n"
|
|
"jal\tSysEnqIntRP\n"
|
|
"addu\t$a1, $s0, $zero\n"
|
|
"jal\tfunc_8005CF18\n"
|
|
"nop\n"
|
|
"li\t$v0, 1\n"
|
|
"lw\t$ra, 20($sp)\n"
|
|
"lw\t$s0, 16($sp)\n"
|
|
"jr\t$ra\n"
|
|
"addiu\t$sp, $sp, 24\n"
|
|
".set\treorder\n"
|
|
".end\tfunc_8006252C\n"
|
|
);
|
|
|
|
INCLUDE_ASM("asm/nonmatchings/800c2_2", func_800625A4);
|
|
|
|
extern u8 *D_80072A28;
|
|
|
|
s32 func_800625DC(void) {
|
|
volatile s32 i;
|
|
s32 frame_pad[2];
|
|
|
|
(void)&frame_pad;
|
|
*(u16 *)(D_80072A28 + 10) = 0;
|
|
i = 10;
|
|
if (--i != -1) {
|
|
do {
|
|
} while (--i != -1);
|
|
}
|
|
return 0;
|
|
}
|
|
|
|
s32 func_80062644(void) {
|
|
extern s32 *D_80072A2C;
|
|
s32 *p = D_80072A2C;
|
|
|
|
if ((p[1] & 1) == 0) {
|
|
return 0;
|
|
}
|
|
if ((p[0] & 1) != 0) {
|
|
return 1;
|
|
}
|
|
if ((p[0] & 1) != 0) {
|
|
return 1;
|
|
}
|
|
return 0;
|
|
}
|
|
|
|
__asm__(".word 0x00000000\n");
|