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:
Tyler McGavran
2021-11-23 04:47:54 -05:00
committed by GitHub
parent bed14f61c3
commit a2dc62ccf8
328 changed files with 41811 additions and 2150 deletions
+582 -21
View File
@@ -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