diff --git a/src/ov_SC03_107/ov_SC03_107_jr_801789AC.c b/src/ov_SC03_107/ov_SC03_107_jr_801789AC.c index d5f370d543..eedf9e6a45 100644 --- a/src/ov_SC03_107/ov_SC03_107_jr_801789AC.c +++ b/src/ov_SC03_107/ov_SC03_107_jr_801789AC.c @@ -7778,7 +7778,41 @@ INCLUDE_ASM("asm/ov_SC03_107/nonmatchings/ov_SC03_107_jr_801789AC", func_80180D9 INCLUDE_ASM("asm/ov_SC03_107/nonmatchings/ov_SC03_107_jr_801789AC", func_80180E18); -INCLUDE_ASM("asm/ov_SC03_107/nonmatchings/ov_SC03_107_jr_801789AC", func_80180EB8); + +extern int func_8012C658(int arg0, int arg1, int arg2); +extern void func_8017F6E8(int a0); + +void func_80180EB8(int a0) +{ + short cnt; + int v1; + + *(short *)(a0 + 0x2) = 2; + cnt = *(unsigned short *)(a0 + 0x70) + 1; + *(unsigned short *)(a0 + 0x70) = cnt; + + if (cnt < 7) { + v1 = func_8012C658(0x1EA, cnt, a0); + if (v1 != 0) { + *(unsigned short *)(v1 + 0xFE) = *(unsigned short *)(a0 + 0x36); + *(unsigned short *)(v1 + 0x108) = (*(unsigned short *)(a0 + 0x70) - 1) << 9; + } + } + + cnt = *(short *)(a0 + 0x70); + if (cnt >= 8) { + if (cnt < 14) { + v1 = func_8012C658(0x1EA, cnt, a0); + if (v1 != 0) { + *(unsigned short *)(v1 + 0xFE) = *(unsigned short *)(a0 + 0x36); + } + } + } + + *(unsigned short *)(a0 + 0x70) = *(unsigned short *)(a0 + 0x70) - 1; + func_8017F6E8(a0); +} + INCLUDE_ASM("asm/ov_SC03_107/nonmatchings/ov_SC03_107_jr_801789AC", func_80180F88); diff --git a/src/ov_SC03_111/ov_SC03_111_jr_8017EC58.c b/src/ov_SC03_111/ov_SC03_111_jr_8017EC58.c index c5376804b8..738df2dc8c 100644 --- a/src/ov_SC03_111/ov_SC03_111_jr_8017EC58.c +++ b/src/ov_SC03_111/ov_SC03_111_jr_8017EC58.c @@ -5081,7 +5081,41 @@ INCLUDE_ASM("asm/ov_SC03_111/nonmatchings/ov_SC03_111_jr_8017EC58", func_80183B4 INCLUDE_ASM("asm/ov_SC03_111/nonmatchings/ov_SC03_111_jr_8017EC58", func_80183BC0); -INCLUDE_ASM("asm/ov_SC03_111/nonmatchings/ov_SC03_111_jr_8017EC58", func_80183C60); + +extern int func_8012C658(int arg0, int arg1, int arg2); +extern void func_80182490(int a0); + +void func_80183C60(int a0) +{ + short cnt; + int v1; + + *(short *)(a0 + 0x2) = 2; + cnt = *(unsigned short *)(a0 + 0x70) + 1; + *(unsigned short *)(a0 + 0x70) = cnt; + + if (cnt < 7) { + v1 = func_8012C658(0x1EA, cnt, a0); + if (v1 != 0) { + *(unsigned short *)(v1 + 0xFE) = *(unsigned short *)(a0 + 0x36); + *(unsigned short *)(v1 + 0x108) = (*(unsigned short *)(a0 + 0x70) - 1) << 9; + } + } + + cnt = *(short *)(a0 + 0x70); + if (cnt >= 8) { + if (cnt < 14) { + v1 = func_8012C658(0x1EA, cnt, a0); + if (v1 != 0) { + *(unsigned short *)(v1 + 0xFE) = *(unsigned short *)(a0 + 0x36); + } + } + } + + *(unsigned short *)(a0 + 0x70) = *(unsigned short *)(a0 + 0x70) - 1; + func_80182490(a0); +} + INCLUDE_ASM("asm/ov_SC03_111/nonmatchings/ov_SC03_111_jr_8017EC58", func_80183D30); diff --git a/src/ov_SC03_112/ov_SC03_112_jr_80183AE0.c b/src/ov_SC03_112/ov_SC03_112_jr_80183AE0.c index 836d1a62c4..bf8985ec0c 100644 --- a/src/ov_SC03_112/ov_SC03_112_jr_80183AE0.c +++ b/src/ov_SC03_112/ov_SC03_112_jr_80183AE0.c @@ -3276,7 +3276,41 @@ INCLUDE_ASM("asm/ov_SC03_112/nonmatchings/ov_SC03_112_jr_80183AE0", func_80184A5 INCLUDE_ASM("asm/ov_SC03_112/nonmatchings/ov_SC03_112_jr_80183AE0", func_80184AD4); -INCLUDE_ASM("asm/ov_SC03_112/nonmatchings/ov_SC03_112_jr_80183AE0", func_80184B74); + +extern int func_8012C658(int arg0, int arg1, int arg2); +extern void func_801833A4(int a0); + +void func_80184B74(int a0) +{ + short cnt; + int v1; + + *(short *)(a0 + 0x2) = 2; + cnt = *(unsigned short *)(a0 + 0x70) + 1; + *(unsigned short *)(a0 + 0x70) = cnt; + + if (cnt < 7) { + v1 = func_8012C658(0x1EA, cnt, a0); + if (v1 != 0) { + *(unsigned short *)(v1 + 0xFE) = *(unsigned short *)(a0 + 0x36); + *(unsigned short *)(v1 + 0x108) = (*(unsigned short *)(a0 + 0x70) - 1) << 9; + } + } + + cnt = *(short *)(a0 + 0x70); + if (cnt >= 8) { + if (cnt < 14) { + v1 = func_8012C658(0x1EA, cnt, a0); + if (v1 != 0) { + *(unsigned short *)(v1 + 0xFE) = *(unsigned short *)(a0 + 0x36); + } + } + } + + *(unsigned short *)(a0 + 0x70) = *(unsigned short *)(a0 + 0x70) - 1; + func_801833A4(a0); +} + INCLUDE_ASM("asm/ov_SC03_112/nonmatchings/ov_SC03_112_jr_80183AE0", func_80184C44); diff --git a/src/ov_SC03_113/ov_SC03_113_jr_8017C294.c b/src/ov_SC03_113/ov_SC03_113_jr_8017C294.c index e7181a808d..dc380c3251 100644 --- a/src/ov_SC03_113/ov_SC03_113_jr_8017C294.c +++ b/src/ov_SC03_113/ov_SC03_113_jr_8017C294.c @@ -6241,7 +6241,41 @@ INCLUDE_ASM("asm/ov_SC03_113/nonmatchings/ov_SC03_113_jr_8017C294", func_801827D INCLUDE_ASM("asm/ov_SC03_113/nonmatchings/ov_SC03_113_jr_8017C294", func_80182858); -INCLUDE_ASM("asm/ov_SC03_113/nonmatchings/ov_SC03_113_jr_8017C294", func_801828F8); + +extern int func_8012C658(int arg0, int arg1, int arg2); +extern void func_80181128(int a0); + +void func_801828F8(int a0) +{ + short cnt; + int v1; + + *(short *)(a0 + 0x2) = 2; + cnt = *(unsigned short *)(a0 + 0x70) + 1; + *(unsigned short *)(a0 + 0x70) = cnt; + + if (cnt < 7) { + v1 = func_8012C658(0x1EA, cnt, a0); + if (v1 != 0) { + *(unsigned short *)(v1 + 0xFE) = *(unsigned short *)(a0 + 0x36); + *(unsigned short *)(v1 + 0x108) = (*(unsigned short *)(a0 + 0x70) - 1) << 9; + } + } + + cnt = *(short *)(a0 + 0x70); + if (cnt >= 8) { + if (cnt < 14) { + v1 = func_8012C658(0x1EA, cnt, a0); + if (v1 != 0) { + *(unsigned short *)(v1 + 0xFE) = *(unsigned short *)(a0 + 0x36); + } + } + } + + *(unsigned short *)(a0 + 0x70) = *(unsigned short *)(a0 + 0x70) - 1; + func_80181128(a0); +} + INCLUDE_ASM("asm/ov_SC03_113/nonmatchings/ov_SC03_113_jr_8017C294", func_801829C8); diff --git a/src/ov_SC03_117/ov_SC03_117_jr_80181C80.c b/src/ov_SC03_117/ov_SC03_117_jr_80181C80.c index 57d057a08f..efafdb9901 100644 --- a/src/ov_SC03_117/ov_SC03_117_jr_80181C80.c +++ b/src/ov_SC03_117/ov_SC03_117_jr_80181C80.c @@ -3864,7 +3864,41 @@ INCLUDE_ASM("asm/ov_SC03_117/nonmatchings/ov_SC03_117_jr_80181C80", func_80183AD INCLUDE_ASM("asm/ov_SC03_117/nonmatchings/ov_SC03_117_jr_80181C80", func_80183B5C); -INCLUDE_ASM("asm/ov_SC03_117/nonmatchings/ov_SC03_117_jr_80181C80", func_80183BFC); + +extern int func_8012C658(int arg0, int arg1, int arg2); +extern void func_8018242C(int a0); + +void func_80183BFC(int a0) +{ + short cnt; + int v1; + + *(short *)(a0 + 0x2) = 2; + cnt = *(unsigned short *)(a0 + 0x70) + 1; + *(unsigned short *)(a0 + 0x70) = cnt; + + if (cnt < 7) { + v1 = func_8012C658(0x1EA, cnt, a0); + if (v1 != 0) { + *(unsigned short *)(v1 + 0xFE) = *(unsigned short *)(a0 + 0x36); + *(unsigned short *)(v1 + 0x108) = (*(unsigned short *)(a0 + 0x70) - 1) << 9; + } + } + + cnt = *(short *)(a0 + 0x70); + if (cnt >= 8) { + if (cnt < 14) { + v1 = func_8012C658(0x1EA, cnt, a0); + if (v1 != 0) { + *(unsigned short *)(v1 + 0xFE) = *(unsigned short *)(a0 + 0x36); + } + } + } + + *(unsigned short *)(a0 + 0x70) = *(unsigned short *)(a0 + 0x70) - 1; + func_8018242C(a0); +} + INCLUDE_ASM("asm/ov_SC03_117/nonmatchings/ov_SC03_117_jr_80181C80", func_80183CCC); diff --git a/src/ov_SC03_119/ov_SC03_119_jr_801863CC.c b/src/ov_SC03_119/ov_SC03_119_jr_801863CC.c index 2b06635fe1..12b816798a 100644 --- a/src/ov_SC03_119/ov_SC03_119_jr_801863CC.c +++ b/src/ov_SC03_119/ov_SC03_119_jr_801863CC.c @@ -3895,7 +3895,41 @@ INCLUDE_ASM("asm/ov_SC03_119/nonmatchings/ov_SC03_119_jr_801863CC", func_8018822 INCLUDE_ASM("asm/ov_SC03_119/nonmatchings/ov_SC03_119_jr_801863CC", func_801882A8); -INCLUDE_ASM("asm/ov_SC03_119/nonmatchings/ov_SC03_119_jr_801863CC", func_80188348); + +extern int func_8012C658(int arg0, int arg1, int arg2); +extern void func_80186B78(int a0); + +void func_80188348(int a0) +{ + short cnt; + int v1; + + *(short *)(a0 + 0x2) = 2; + cnt = *(unsigned short *)(a0 + 0x70) + 1; + *(unsigned short *)(a0 + 0x70) = cnt; + + if (cnt < 7) { + v1 = func_8012C658(0x1EA, cnt, a0); + if (v1 != 0) { + *(unsigned short *)(v1 + 0xFE) = *(unsigned short *)(a0 + 0x36); + *(unsigned short *)(v1 + 0x108) = (*(unsigned short *)(a0 + 0x70) - 1) << 9; + } + } + + cnt = *(short *)(a0 + 0x70); + if (cnt >= 8) { + if (cnt < 14) { + v1 = func_8012C658(0x1EA, cnt, a0); + if (v1 != 0) { + *(unsigned short *)(v1 + 0xFE) = *(unsigned short *)(a0 + 0x36); + } + } + } + + *(unsigned short *)(a0 + 0x70) = *(unsigned short *)(a0 + 0x70) - 1; + func_80186B78(a0); +} + INCLUDE_ASM("asm/ov_SC03_119/nonmatchings/ov_SC03_119_jr_801863CC", func_80188418); diff --git a/src/ov_SC05_004/ov_SC05_004_jr_8017F210.c b/src/ov_SC05_004/ov_SC05_004_jr_8017F210.c index fda8fdeab5..94f5692c75 100644 --- a/src/ov_SC05_004/ov_SC05_004_jr_8017F210.c +++ b/src/ov_SC05_004/ov_SC05_004_jr_8017F210.c @@ -3824,7 +3824,41 @@ INCLUDE_ASM("asm/ov_SC05_004/nonmatchings/ov_SC05_004_jr_8017F210", func_8018106 INCLUDE_ASM("asm/ov_SC05_004/nonmatchings/ov_SC05_004_jr_8017F210", func_801810EC); -INCLUDE_ASM("asm/ov_SC05_004/nonmatchings/ov_SC05_004_jr_8017F210", func_8018118C); + +extern int func_8012C658(int arg0, int arg1, int arg2); +extern void func_8017F9BC(int a0); + +void func_8018118C(int a0) +{ + short cnt; + int v1; + + *(short *)(a0 + 0x2) = 2; + cnt = *(unsigned short *)(a0 + 0x70) + 1; + *(unsigned short *)(a0 + 0x70) = cnt; + + if (cnt < 7) { + v1 = func_8012C658(0x1EA, cnt, a0); + if (v1 != 0) { + *(unsigned short *)(v1 + 0xFE) = *(unsigned short *)(a0 + 0x36); + *(unsigned short *)(v1 + 0x108) = (*(unsigned short *)(a0 + 0x70) - 1) << 9; + } + } + + cnt = *(short *)(a0 + 0x70); + if (cnt >= 8) { + if (cnt < 14) { + v1 = func_8012C658(0x1EA, cnt, a0); + if (v1 != 0) { + *(unsigned short *)(v1 + 0xFE) = *(unsigned short *)(a0 + 0x36); + } + } + } + + *(unsigned short *)(a0 + 0x70) = *(unsigned short *)(a0 + 0x70) - 1; + func_8017F9BC(a0); +} + INCLUDE_ASM("asm/ov_SC05_004/nonmatchings/ov_SC05_004_jr_8017F210", func_8018125C);