mirror of
https://github.com/n64decomp/mk64
synced 2026-06-30 18:41:40 -04:00
Jump Table Related Disassembly (#60)
* Part 1, Commit 1 of 24 audio/effects Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 2 of 24 audio/external Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 3 of 24 audio/heap Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 4 of 24 audio/port_eu Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 5 of 24 audio/seqplayer Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 6 of 24 code_80005FD0 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 7 of 24 code_8001C4D0 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 8 of 24 code_80027D00 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 9 of 24 code_800393C0 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 10 of 24 code_8003DC40 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 11 of 24 code_800431B0 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 12 of 24 code_80057C60 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 13 of 24 code_8006E9C0 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 14 of 24 code_80071F00 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 15 of 24 code_80086E70 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 16 of 24 code_8008C1D0 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 17 of 24 code_80091750 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 18 of 24 code_800AF9B0 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 19 of 24 code_8028DF00 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 20 of 24 code_80290C20 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 21 of 24 code_802B0210 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 22 of 24 code_actors Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 23 of 24 memory Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 1, Commit 24 of 24 os/__osException Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 1 of 20 audio/effects.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 2 of 20 audio/external.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 3 of 24 audio/heap.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 4 of 20 audio/port_eu.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 5 of 20 audio/seqplayer.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 6 of 20 code_80005FD0.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 7 of 20 code_8001C4D0.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 8 of 20 code_80027D00.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 9 of 20 code_8003DC40.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 10 of 20 code_800431B0.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 11 of 20 code_80057C60.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 12 of 20 code_8006E9C0.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 13 of 20 code_80071F00.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 14 of 20 code_80086E70.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 15 of 20 code_80091750.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 16 of 20 code_800AF9B0.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 17 of 20 code_80290C20.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 18 of 20 code_802B0210.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 19 of 20 code_80296A50.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 2, Commit 20 of 20 memory.c Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 3, Commit 1 of 4 code_8008C1D0 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 3, Commit 2 of 4 code_8028DF00 Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 3, Commit 3 of 4 math_util Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Part 3, Commit 4 of 4 crash_screen Signed-off-by: Taggerung <tyler.taggerung@gmail.com> * Recreated disassemblies with a context file Signed-off-by: Taggerung <tyler.taggerung@gmail.com>
This commit is contained in:
+582
-21
@@ -789,29 +789,197 @@ GLOBAL_ASM("asm/non_matchings/memory/func_802A8F14.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
/*
|
||||
Failed to decompile function func_802A8F80:
|
||||
//generated by mips_to_c commit bd0364fa19633bd6201f8007e2d0a7ed87825909
|
||||
static ? D_802B8D58; /* unable to generate initializer */
|
||||
|
||||
Unable to determine jump table for jr instruction at func_802A8F80.s line 24.
|
||||
void func_802A8F80(s32 arg0, s32 arg1, s8 arg2) {
|
||||
s32 sp58;
|
||||
s32 sp48;
|
||||
s32 sp44;
|
||||
s32 sp40;
|
||||
s32 temp_a1;
|
||||
s32 temp_t5;
|
||||
s32 temp_t8;
|
||||
s32 temp_t9;
|
||||
u8 temp_a0;
|
||||
u8 temp_a0_2;
|
||||
s32 phi_v1;
|
||||
s32 phi_v0;
|
||||
|
||||
There must be a read of a variable in the same block as
|
||||
the instruction, which has a name starting with "jtbl"/"jpt_".
|
||||
*/
|
||||
sp58.unk0 = D_802B8D58.unk0;
|
||||
sp58.unk4 = D_802B8D58.unk4;
|
||||
phi_v0 = 0;
|
||||
phi_v0 = 0;
|
||||
switch (arg2) {
|
||||
case 26:
|
||||
sp44 = 0x20;
|
||||
sp40 = 0;
|
||||
phi_v1 = 0x20;
|
||||
block_9:
|
||||
sp48 = phi_v1;
|
||||
break;
|
||||
case 44:
|
||||
sp44 = 0x20;
|
||||
sp40 = 0;
|
||||
phi_v1 = 0x20;
|
||||
phi_v0 = 0x100;
|
||||
goto block_9;
|
||||
case 27:
|
||||
sp44 = 0x20;
|
||||
sp40 = 0;
|
||||
phi_v1 = 0x40;
|
||||
goto block_9;
|
||||
case 28:
|
||||
sp44 = 0x40;
|
||||
sp40 = 0;
|
||||
phi_v1 = 0x20;
|
||||
goto block_9;
|
||||
case 29:
|
||||
sp44 = 0x20;
|
||||
sp40 = 3;
|
||||
phi_v1 = 0x20;
|
||||
goto block_9;
|
||||
case 30:
|
||||
sp44 = 0x20;
|
||||
sp40 = 3;
|
||||
phi_v1 = 0x40;
|
||||
goto block_9;
|
||||
case 31:
|
||||
sp44 = 0x40;
|
||||
sp40 = 3;
|
||||
phi_v1 = 0x20;
|
||||
goto block_9;
|
||||
}
|
||||
temp_a1 = D_802BA274;
|
||||
temp_a0 = *(temp_a1 + arg1);
|
||||
temp_t9 = temp_a1 + 1;
|
||||
D_802BA274 = temp_t9;
|
||||
temp_a0_2 = *(temp_t9 + arg1);
|
||||
D_802BA274 = temp_t9 + 1;
|
||||
*(arg0 + (D_802BA270 * 8)) = sp58;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = sp5C;
|
||||
D_802BA270 += 1;
|
||||
*(arg0 + (D_802BA270 * 8)) = (sp40 << 0x15) | 0xF5000000 | 0x100000 | ((((sp48 * 2) + 7) >> 3) << 9) | phi_v0;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = ((temp_a0_2 & 0xF) << 0x12) | (((temp_a0_2 & 0xF0) >> 4) << 0xE) | ((temp_a0 & 0xF) << 8) | (((temp_a0 & 0xF0) >> 4) * 0x10);
|
||||
temp_t5 = D_802BA270 + 1;
|
||||
temp_t8 = temp_t5 * 8;
|
||||
D_802BA270 = temp_t5;
|
||||
*(arg0 + temp_t8) = 0xF2000000;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = ((sp48 - 1) << 0xE) | ((sp44 - 1) * 4);
|
||||
D_802BA270 += 1;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A8F80.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
/*
|
||||
Failed to decompile function func_802A91E4:
|
||||
//generated by mips_to_c commit bd0364fa19633bd6201f8007e2d0a7ed87825909
|
||||
static ? D_802B8D60; /* unable to generate initializer */
|
||||
static ? D_802B8D68; /* unable to generate initializer */
|
||||
|
||||
Unable to determine jump table for jr instruction at func_802A91E4.s line 27.
|
||||
void func_802A91E4(s32 arg0, s32 arg1, s8 arg2) {
|
||||
s32 sp48;
|
||||
s32 sp40;
|
||||
s32 sp2C;
|
||||
s32 sp28;
|
||||
s32 sp24;
|
||||
s32 temp_t1;
|
||||
s32 temp_t6;
|
||||
s32 temp_t6_2;
|
||||
s32 temp_t8;
|
||||
s32 temp_t9;
|
||||
s32 temp_t9_2;
|
||||
s32 temp_v1;
|
||||
u32 temp_t2;
|
||||
u32 temp_t6_3;
|
||||
u8 temp_a2;
|
||||
u8 temp_a3;
|
||||
s32 phi_v0;
|
||||
u32 phi_v0_2;
|
||||
u32 phi_a2;
|
||||
u32 phi_v1;
|
||||
|
||||
There must be a read of a variable in the same block as
|
||||
the instruction, which has a name starting with "jtbl"/"jpt_".
|
||||
*/
|
||||
sp48.unk0 = D_802B8D60.unk0;
|
||||
sp48.unk4 = D_802B8D60.unk4;
|
||||
sp40.unk0 = D_802B8D68.unk0;
|
||||
sp40.unk4 = D_802B8D68.unk4;
|
||||
switch (arg2) {
|
||||
case 32:
|
||||
sp28 = 0x20;
|
||||
sp24 = 0;
|
||||
phi_v0 = 0x20;
|
||||
block_8:
|
||||
sp2C = phi_v0;
|
||||
break;
|
||||
case 33:
|
||||
sp28 = 0x20;
|
||||
sp24 = 0;
|
||||
phi_v0 = 0x40;
|
||||
goto block_8;
|
||||
case 34:
|
||||
sp28 = 0x40;
|
||||
sp24 = 0;
|
||||
phi_v0 = 0x20;
|
||||
goto block_8;
|
||||
case 35:
|
||||
sp28 = 0x20;
|
||||
sp24 = 3;
|
||||
phi_v0 = 0x20;
|
||||
goto block_8;
|
||||
case 36:
|
||||
sp28 = 0x20;
|
||||
sp24 = 3;
|
||||
phi_v0 = 0x40;
|
||||
goto block_8;
|
||||
case 37:
|
||||
sp28 = 0x40;
|
||||
sp24 = 3;
|
||||
phi_v0 = 0x20;
|
||||
goto block_8;
|
||||
}
|
||||
temp_v1 = D_802BA274;
|
||||
temp_a2 = *(arg1 + temp_v1);
|
||||
temp_t9 = temp_v1 + 1;
|
||||
D_802BA274 = temp_t9;
|
||||
temp_t8 = temp_t9 + 1;
|
||||
D_802BA274 = temp_t8;
|
||||
temp_a3 = *(temp_t8 + arg1);
|
||||
D_802BA274 = temp_t8 + 1;
|
||||
temp_t6 = sp24 << 0x15;
|
||||
*(arg0 + (D_802BA270 * 8)) = temp_t6 | 0xFD000000 | 0x100000;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = (temp_a2 << 0xB) + 0x5000000;
|
||||
temp_t9_2 = D_802BA270 + 1;
|
||||
D_802BA270 = temp_t9_2;
|
||||
*(arg0 + (temp_t9_2 * 8)) = sp48;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = sp4C;
|
||||
D_802BA270 += 1;
|
||||
*(arg0 + (D_802BA270 * 8)) = temp_t6 | 0xF5000000 | 0x100000 | (temp_a3 & 0xF);
|
||||
temp_t1 = ((temp_a3 & 0xF0) >> 4) << 0x18;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = temp_t1;
|
||||
temp_t6_2 = D_802BA270 + 1;
|
||||
D_802BA270 = temp_t6_2;
|
||||
*(arg0 + (temp_t6_2 * 8)) = sp40;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = sp44;
|
||||
temp_t6_3 = (sp2C * 2) >> 3;
|
||||
D_802BA270 += 1;
|
||||
temp_t2 = (sp2C * sp28) - 1;
|
||||
phi_v1 = 0x7FF;
|
||||
if (temp_t2 < 0x7FF) {
|
||||
phi_v1 = temp_t2;
|
||||
}
|
||||
if (temp_t6_3 == 0) {
|
||||
phi_v0_2 = 1;
|
||||
} else {
|
||||
phi_v0_2 = temp_t6_3;
|
||||
}
|
||||
phi_a2 = temp_t6_3;
|
||||
if (temp_t6_3 == 0) {
|
||||
phi_a2 = 1;
|
||||
}
|
||||
*(arg0 + (D_802BA270 * 8)) = 0xF3000000;
|
||||
(arg0 + (D_802BA270 * 8))->unk4 = ((phi_v0_2 + 0x7FF) / phi_a2) | temp_t1 | (phi_v1 << 0xC);
|
||||
D_802BA270 += 1;
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/func_802A91E4.s")
|
||||
#endif
|
||||
@@ -1069,15 +1237,408 @@ GLOBAL_ASM("asm/non_matchings/memory/func_802A99A4.s")
|
||||
#endif
|
||||
|
||||
#ifdef MIPS_TO_C
|
||||
//generated by mips_to_c commit 3c3b0cede1a99430bfd3edf8d385802b94f91307
|
||||
/*
|
||||
Failed to decompile function display_list_unpack:
|
||||
//generated by mips_to_c commit bd0364fa19633bd6201f8007e2d0a7ed87825909
|
||||
? func_802A884C(s32, s32, s8, s32 *); /* extern */
|
||||
? func_802A8940(s32, s32, s8, s32 *); /* extern */
|
||||
? func_802A89C0(s32, s32, s8, s32 *); /* extern */
|
||||
? func_802A8A04(s32, s32, s8, s32 *); /* extern */
|
||||
? func_802A8A70(s32, s32, s8, s32 *); /* extern */
|
||||
? func_802A8ADC(s32, s32, s8, s32 *); /* extern */
|
||||
? func_802A8B48(s32, s32, s32, s32 *); /* extern */
|
||||
? func_802A8BB4(s32, s32, s32, s32 *); /* extern */
|
||||
? func_802A8C20(s32, s32, s32, s32 *); /* extern */
|
||||
? func_802A8C8C(s32, s32, s32, s32 *); /* extern */
|
||||
? func_802A8CF8(s32, s32, s32, s32 *); /* extern */
|
||||
? func_802A8D64(s32, s32, s32, s32 *); /* extern */
|
||||
? func_802A8DD0(s32, s32, s32, s32 *); /* extern */
|
||||
? func_802A8E3C(s32, s32, s32, s32 *); /* extern */
|
||||
? func_802A8EA8(s32, s32, s32, s32 *); /* extern */
|
||||
? func_802A8F14(s32, s32, s32, s32 *); /* extern */
|
||||
? func_802A8F80(s32, s32, s8, s32 *); /* extern */
|
||||
? func_802A91E4(s32, s32, s8, s32 *); /* extern */
|
||||
? func_802A94D8(s32, s32, s8, s32 *); /* extern */
|
||||
? func_802A9544(s32, s32, s8, s32 *); /* extern */
|
||||
? func_802A95B0(s32, s32, s8, s32 *); /* extern */
|
||||
? func_802A9674(s32, s32, s8, s32 *); /* extern */
|
||||
? func_802A9714(s32, s32, s8, s32 *); /* extern */
|
||||
? func_802A980C(s32, s32, s8, s32 *); /* extern */
|
||||
? func_802A99A4(s32, s32, s8, s32 *); /* extern */
|
||||
? set_segment_base_addr(?, s32); /* extern */
|
||||
|
||||
Unable to determine jump table for jr instruction at display_list_unpack.s line 52.
|
||||
void display_list_unpack(u32 arg0, s32 arg1, s32 arg2) {
|
||||
s32 sp2C;
|
||||
s32 temp_s0;
|
||||
s32 temp_s1;
|
||||
s32 temp_v1;
|
||||
u8 temp_a0;
|
||||
s32 *phi_a3;
|
||||
|
||||
There must be a read of a variable in the same block as
|
||||
the instruction, which has a name starting with "jtbl"/"jpt_".
|
||||
*/
|
||||
temp_s0 = gSegmentTable[arg0 >> 0x18] + (arg0 & 0xFFFFFF) + 0x80000000;
|
||||
temp_s1 = gHeapEndPtr - (((arg1 + 0xF) & ~0xF) + 8);
|
||||
gHeapEndPtr = temp_s1;
|
||||
D_802BA270 = 0;
|
||||
sp2C = temp_s1;
|
||||
D_802BA274 = 0;
|
||||
phi_a3 = &D_802BA274;
|
||||
loop_1:
|
||||
temp_v1 = *phi_a3;
|
||||
temp_a0 = *(temp_v1 + temp_s0);
|
||||
*phi_a3 = temp_v1 + 1;
|
||||
if (temp_a0 != 0xFF) {
|
||||
switch (temp_a0) {
|
||||
case 0x0:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x1:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x2:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x3:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x4:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x5:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x6:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x7:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x8:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x9:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0xA:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0xB:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0xC:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0xD:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0xE:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0xF:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x10:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x11:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x12:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x13:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x14:
|
||||
func_802A884C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x15:
|
||||
func_802A8B48(temp_s1, temp_s0, arg2, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x16:
|
||||
func_802A8BB4(temp_s1, temp_s0, arg2, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x17:
|
||||
func_802A8C20(temp_s1, temp_s0, arg2, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x2E:
|
||||
func_802A8C8C(temp_s1, temp_s0, arg2, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x53:
|
||||
func_802A8CF8(temp_s1, temp_s0, arg2, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x18:
|
||||
func_802A8D64(temp_s1, temp_s0, arg2, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x19:
|
||||
func_802A8DD0(temp_s1, temp_s0, arg2, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x2F:
|
||||
func_802A8E3C(temp_s1, temp_s0, arg2, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x54:
|
||||
func_802A8EA8(temp_s1, temp_s0, arg2, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x55:
|
||||
func_802A8F14(temp_s1, temp_s0, arg2, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x1A:
|
||||
func_802A8F80(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x2C:
|
||||
func_802A8F80(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x1B:
|
||||
func_802A8F80(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x1C:
|
||||
func_802A8F80(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x1D:
|
||||
func_802A8F80(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x1E:
|
||||
func_802A8F80(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x1F:
|
||||
func_802A8F80(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x20:
|
||||
func_802A91E4(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x21:
|
||||
func_802A91E4(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x22:
|
||||
func_802A91E4(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x23:
|
||||
func_802A91E4(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x24:
|
||||
func_802A91E4(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x25:
|
||||
func_802A91E4(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x26:
|
||||
func_802A94D8(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x27:
|
||||
func_802A9544(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x28:
|
||||
func_802A95B0(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x33:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x34:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x35:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x36:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x37:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x38:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x39:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x3A:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x3B:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x3C:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x3D:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x3E:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x3F:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x40:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x41:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x42:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x43:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x44:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x45:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x46:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x47:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x48:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x49:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x4A:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x4B:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x4C:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x4D:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x4E:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x4F:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x50:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x51:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x52:
|
||||
func_802A9674(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x29:
|
||||
func_802A9714(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x58:
|
||||
func_802A980C(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x30:
|
||||
func_802A99A4(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x2D:
|
||||
func_802A8ADC(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x2A:
|
||||
func_802A89C0(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x56:
|
||||
func_802A8A04(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x57:
|
||||
func_802A8A70(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
case 0x2B:
|
||||
func_802A8940(temp_s1, temp_s0, temp_a0, phi_a3);
|
||||
phi_a3 = &D_802BA274;
|
||||
break;
|
||||
}
|
||||
goto loop_1;
|
||||
}
|
||||
set_segment_base_addr(7, sp2C);
|
||||
}
|
||||
#else
|
||||
GLOBAL_ASM("asm/non_matchings/memory/display_list_unpack.s")
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user