Decompile gfxReplaceGbiCommands

This commit is contained in:
Ryan Dwyer
2022-02-06 20:30:23 +10:00
parent f675dce7e5
commit 7d4f0692e7
4 changed files with 250 additions and 291 deletions
+12 -12
View File
@@ -9907,7 +9907,7 @@ glabel roomLoad
/* f15e370: 24050001 */ addiu $a1,$zero,0x1
/* f15e374: 01f95821 */ addu $t3,$t7,$t9
/* f15e378: 8d6c0014 */ lw $t4,0x14($t3)
/* f15e37c: 0fc595ca */ jal func0f165728
/* f15e37c: 0fc595ca */ jal gfxReplaceGbiCommandsRecursively
/* f15e380: 8d840008 */ lw $a0,0x8($t4)
/* f15e384: 3c0d800a */ lui $t5,%hi(g_Rooms)
/* f15e388: 8dad4928 */ lw $t5,%lo(g_Rooms)($t5)
@@ -9915,7 +9915,7 @@ glabel roomLoad
/* f15e390: 24050005 */ addiu $a1,$zero,0x5
/* f15e394: 01aec021 */ addu $t8,$t5,$t6
/* f15e398: 8f0f0014 */ lw $t7,0x14($t8)
/* f15e39c: 0fc595ca */ jal func0f165728
/* f15e39c: 0fc595ca */ jal gfxReplaceGbiCommandsRecursively
/* f15e3a0: 8de4000c */ lw $a0,0xc($t7)
/* f15e3a4: 10000014 */ b .L0f15e3f8
/* f15e3a8: 00000000 */ nop
@@ -9929,7 +9929,7 @@ glabel roomLoad
/* f15e3c4: 24050006 */ addiu $a1,$zero,0x6
/* f15e3c8: 016c6821 */ addu $t5,$t3,$t4
/* f15e3cc: 8dae0014 */ lw $t6,0x14($t5)
/* f15e3d0: 0fc595ca */ jal func0f165728
/* f15e3d0: 0fc595ca */ jal gfxReplaceGbiCommandsRecursively
/* f15e3d4: 8dc40008 */ lw $a0,0x8($t6)
/* f15e3d8: 3c18800a */ lui $t8,%hi(g_Rooms)
/* f15e3dc: 8f184928 */ lw $t8,%lo(g_Rooms)($t8)
@@ -9937,7 +9937,7 @@ glabel roomLoad
/* f15e3e4: 24050007 */ addiu $a1,$zero,0x7
/* f15e3e8: 030fc821 */ addu $t9,$t8,$t7
/* f15e3ec: 8f2b0014 */ lw $t3,0x14($t9)
/* f15e3f0: 0fc595ca */ jal func0f165728
/* f15e3f0: 0fc595ca */ jal gfxReplaceGbiCommandsRecursively
/* f15e3f4: 8d64000c */ lw $a0,0xc($t3)
.L0f15e3f8:
/* f15e3f8: 0fc57be7 */ jal func0f15ef9c
@@ -10496,7 +10496,7 @@ glabel roomLoad
/* f158b68: 24050001 */ addiu $a1,$zero,0x1
/* f158b6c: 01aec021 */ addu $t8,$t5,$t6
/* f158b70: 8f0f0014 */ lw $t7,0x14($t8)
/* f158b74: 0fc57fca */ jal func0f165728
/* f158b74: 0fc57fca */ jal gfxReplaceGbiCommandsRecursively
/* f158b78: 8de40008 */ lw $a0,0x8($t7)
/* f158b7c: 3c19800b */ lui $t9,0x800b
/* f158b80: 8f3990a8 */ lw $t9,-0x6f58($t9)
@@ -10504,7 +10504,7 @@ glabel roomLoad
/* f158b88: 24050005 */ addiu $a1,$zero,0x5
/* f158b8c: 032b6021 */ addu $t4,$t9,$t3
/* f158b90: 8d8d0014 */ lw $t5,0x14($t4)
/* f158b94: 0fc57fca */ jal func0f165728
/* f158b94: 0fc57fca */ jal gfxReplaceGbiCommandsRecursively
/* f158b98: 8da4000c */ lw $a0,0xc($t5)
/* f158b9c: 10000014 */ beqz $zero,.NB0f158bf0
/* f158ba0: 00000000 */ sll $zero,$zero,0x0
@@ -10518,7 +10518,7 @@ glabel roomLoad
/* f158bbc: 24050006 */ addiu $a1,$zero,0x6
/* f158bc0: 030fc821 */ addu $t9,$t8,$t7
/* f158bc4: 8f2b0014 */ lw $t3,0x14($t9)
/* f158bc8: 0fc57fca */ jal func0f165728
/* f158bc8: 0fc57fca */ jal gfxReplaceGbiCommandsRecursively
/* f158bcc: 8d640008 */ lw $a0,0x8($t3)
/* f158bd0: 3c0c800b */ lui $t4,0x800b
/* f158bd4: 8d8c90a8 */ lw $t4,-0x6f58($t4)
@@ -10526,7 +10526,7 @@ glabel roomLoad
/* f158bdc: 24050007 */ addiu $a1,$zero,0x7
/* f158be0: 018d7021 */ addu $t6,$t4,$t5
/* f158be4: 8dd80014 */ lw $t8,0x14($t6)
/* f158be8: 0fc57fca */ jal func0f165728
/* f158be8: 0fc57fca */ jal gfxReplaceGbiCommandsRecursively
/* f158bec: 8f04000c */ lw $a0,0xc($t8)
.NB0f158bf0:
/* f158bf0: 0fc565e7 */ jal func0f15ef9c
@@ -10775,11 +10775,11 @@ const char var7f1b1a60nb[] = "bg.c";
// }
//
// if (g_FogDisabled) {
// func0f165728(g_Rooms[roomnum].gfxdata->unk08, 1);
// func0f165728(g_Rooms[roomnum].gfxdata->unk0c, 5);
// gfxReplaceGbiCommandsRecursively(g_Rooms[roomnum].gfxdata->unk08, 1);
// gfxReplaceGbiCommandsRecursively(g_Rooms[roomnum].gfxdata->unk0c, 5);
// } else if (var800a65e4 == 0) {
// func0f165728(g_Rooms[roomnum].gfxdata->unk08, 6);
// func0f165728(g_Rooms[roomnum].gfxdata->unk0c, 7);
// gfxReplaceGbiCommandsRecursively(g_Rooms[roomnum].gfxdata->unk08, 6);
// gfxReplaceGbiCommandsRecursively(g_Rooms[roomnum].gfxdata->unk0c, 7);
// }
//
// func0f15ef9c(roomnum);
+236 -272
View File
@@ -8,300 +8,264 @@
#include "data.h"
#include "types.h"
struct twowords twowords_26a40[] = {
{ 0xfc26a004, 0x1f1093ff },
{ 0xfc232dff, 0xfffffe38 },
{ 0x00000000, 0x00000000 },
Gfx gbi_26a40[] = {
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEIA2),
gsDPSetCombineLERP(TEXEL1, 0, SCALE, 0, TEXEL1, 0, PRIM_LOD_FRAC, 0, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED),
0,
};
struct twowords twowords_26a58[] = {
{ 0xb900031d, 0x0c192078 },
{ 0xb900031d, 0xc8112078 },
{ 0xb900031d, 0x0c182078 },
{ 0xb900031d, 0xc8102078 },
{ 0xb900031d, 0x0c192d58 },
{ 0xb900031d, 0xc8112d58 },
{ 0xb900031d, 0x0c184dd8 },
{ 0xb900031d, 0xc8104dd8 },
{ 0xb900031d, 0x0c1849d8 },
{ 0xb900031d, 0xc81049d8 },
{ 0xb900031d, 0x0c193078 },
{ 0xb900031d, 0xc8113078 },
{ 0xb900031d, 0x0c192048 },
{ 0xb900031d, 0xc8112048 },
{ 0xb900031d, 0x0c182048 },
{ 0xb900031d, 0xc8102048 },
{ 0xfc26a004, 0x1f1093ff },
{ 0xfc26a004, 0x1f1493ff },
{ 0xfc121824, 0xff33ffff },
{ 0xfc121a24, 0xff37ffff },
{ 0xfc26a004, 0x1ffc93fc },
{ 0xfc26a004, 0x1ffc93fd },
{ 0xfc127e24, 0xfffff9fc },
{ 0xfc127e24, 0xfffffbfd },
{ 0xfc26a004, 0x1f1093ff },
{ 0xfc26a004, 0x1f1493ff },
{ 0xfc121824, 0xff33ffff },
{ 0xfc121a24, 0xff37ffff },
{ 0xfc26a004, 0x1ffc93fc },
{ 0xfc26a004, 0x1ffc93fd },
{ 0xfc127e24, 0xfffff9fc },
{ 0xfc127e24, 0xfffffbfd },
{ 0xfcffffff, 0xfffe7838 },
{ 0xfcffffff, 0xfffe7a38 },
{ 0xfcffffff, 0xfffe793c },
{ 0xfcffffff, 0xfffe7b3d },
{ 0xfc26e404, 0x1f10ffff },
{ 0xfc26e404, 0x1f14ffff },
{ 0x00000000, 0x00000000 },
Gfx gbi_26a58[] = {
gsDPSetRenderMode(G_RM_PASS, G_RM_AA_ZB_OPA_SURF2),
gsDPSetRenderMode(G_RM_FOG_SHADE_A, G_RM_AA_ZB_OPA_SURF2),
gsDPSetRenderMode(G_RM_PASS, G_RM_AA_ZB_OPA_TERR2),
gsDPSetRenderMode(G_RM_FOG_SHADE_A, G_RM_AA_ZB_OPA_TERR2),
gsDPSetRenderMode(G_RM_PASS, G_RM_AA_ZB_OPA_DECAL2),
gsDPSetRenderMode(G_RM_FOG_SHADE_A, G_RM_AA_ZB_OPA_DECAL2),
gsDPSetRenderMode(G_RM_PASS, G_RM_AA_ZB_XLU_DECAL2),
gsDPSetRenderMode(G_RM_FOG_SHADE_A, G_RM_AA_ZB_XLU_DECAL2),
gsDPSetRenderMode(G_RM_PASS, G_RM_AA_ZB_XLU_SURF2),
gsDPSetRenderMode(G_RM_FOG_SHADE_A, G_RM_AA_ZB_XLU_SURF2),
gsDPSetRenderMode(G_RM_PASS, G_RM_AA_ZB_TEX_EDGE2),
gsDPSetRenderMode(G_RM_FOG_SHADE_A, G_RM_AA_ZB_TEX_EDGE2),
gsDPSetRenderMode(G_RM_PASS, G_RM_AA_OPA_SURF2),
gsDPSetRenderMode(G_RM_FOG_SHADE_A, G_RM_AA_OPA_SURF2),
gsDPSetRenderMode(G_RM_PASS, G_RM_AA_OPA_TERR2),
gsDPSetRenderMode(G_RM_FOG_SHADE_A, G_RM_AA_OPA_TERR2),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEIA2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SHADE, 0, COMBINED, 0, ENVIRONMENT, 0),
gsDPSetCombineMode(G_CC_MODULATEIA, G_CC_MODULATEIA),
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0, TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEI2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineMode(G_CC_MODULATEI, G_CC_MODULATEI),
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEIA2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SHADE, 0, COMBINED, 0, ENVIRONMENT, 0),
gsDPSetCombineMode(G_CC_MODULATEIA, G_CC_MODULATEIA),
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0, TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEI2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineMode(G_CC_MODULATEI, G_CC_MODULATEI),
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineMode(G_CC_SHADE, G_CC_PASS2),
gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SHADE, 0, COMBINED, 0, SHADE, 0),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SHADE, 0, COMBINED, 0, ENVIRONMENT, 0),
0,
};
struct twowords twowords_26b90[] = {
{ 0xb900031d, 0x0c184dd8 },
{ 0xb900031d, 0xc8104dd8 },
{ 0xb900031d, 0x0c1849d8 },
{ 0xb900031d, 0xc81049d8 },
{ 0xb900031d, 0x0c193078 },
{ 0xb900031d, 0xc8113078 },
{ 0xfc26a004, 0x1f1093ff },
{ 0xfc26a004, 0x1f1493ff },
{ 0xfc121824, 0xff33ffff },
{ 0xfc121a24, 0xff37ffff },
{ 0xfc26a004, 0x1ffc93fc },
{ 0xfc26a004, 0x1ffc93fd },
{ 0xfc127e24, 0xfffff9fc },
{ 0xfc127e24, 0xfffffbfd },
{ 0xfc26a004, 0x1f1093ff },
{ 0xfc26a004, 0x1f1493ff },
{ 0xfc121824, 0xff33ffff },
{ 0xfc121a24, 0xff37ffff },
{ 0xfc26a004, 0x1ffc93fc },
{ 0xfc26a004, 0x1ffc93fd },
{ 0xfc127e24, 0xfffff9fc },
{ 0xfc127e24, 0xfffffbfd },
{ 0xfcffffff, 0xfffe7838 },
{ 0xfcffffff, 0xfffe7a38 },
{ 0xfcffffff, 0xfffe793c },
{ 0xfcffffff, 0xfffe7b3d },
{ 0xfc26e404, 0x1f10ffff },
{ 0xfc26e404, 0x1f14ffff },
{ 0x00000000, 0x00000000 },
Gfx gbi_26b90[] = {
gsDPSetRenderMode(G_RM_PASS, G_RM_AA_ZB_XLU_DECAL2),
gsDPSetRenderMode(G_RM_FOG_SHADE_A, G_RM_AA_ZB_XLU_DECAL2),
gsDPSetRenderMode(G_RM_PASS, G_RM_AA_ZB_XLU_SURF2),
gsDPSetRenderMode(G_RM_FOG_SHADE_A, G_RM_AA_ZB_XLU_SURF2),
gsDPSetRenderMode(G_RM_PASS, G_RM_AA_ZB_TEX_EDGE2),
gsDPSetRenderMode(G_RM_FOG_SHADE_A, G_RM_AA_ZB_TEX_EDGE2),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEIA2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SHADE, 0, COMBINED, 0, ENVIRONMENT, 0),
gsDPSetCombineMode(G_CC_MODULATEIA, G_CC_MODULATEIA),
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0, TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEI2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineMode(G_CC_MODULATEI, G_CC_MODULATEI),
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEIA2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SHADE, 0, COMBINED, 0, ENVIRONMENT, 0),
gsDPSetCombineMode(G_CC_MODULATEIA, G_CC_MODULATEIA),
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0, TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEI2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineMode(G_CC_MODULATEI, G_CC_MODULATEI),
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineMode(G_CC_SHADE, G_CC_PASS2),
gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SHADE, 0, COMBINED, 0, SHADE, 0),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SHADE, 0, COMBINED, 0, ENVIRONMENT, 0),
0,
};
struct twowords twowords_26c78[] = {
{ 0xfc26a004, 0x1f1093ff },
{ 0xfc26a004, 0x1f1493ff },
{ 0xfc121824, 0xff33ffff },
{ 0xfc121a24, 0xff37ffff },
{ 0xfc26a004, 0x1ffc93fc },
{ 0xfc26a004, 0x1ffc93fd },
{ 0xfc127e24, 0xfffff9fc },
{ 0xfc127e24, 0xfffffbfd },
{ 0xfc26a004, 0x1f1093ff },
{ 0xfc26a004, 0x1f1493ff },
{ 0xfc121824, 0xff33ffff },
{ 0xfc121a24, 0xff37ffff },
{ 0xfc26a004, 0x1ffc93fc },
{ 0xfc26a004, 0x1ffc93fd },
{ 0xfc127e24, 0xfffff9fc },
{ 0xfc127e24, 0xfffffbfd },
{ 0xfcffffff, 0xfffe7838 },
{ 0xfcffffff, 0xfffe7a38 },
{ 0xfcffffff, 0xfffe793c },
{ 0xfcffffff, 0xfffe7b3d },
{ 0x00000000, 0x00000000 },
Gfx gbi_26c78[] = {
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEIA2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SHADE, 0, COMBINED, 0, ENVIRONMENT, 0),
gsDPSetCombineMode(G_CC_MODULATEIA, G_CC_MODULATEIA),
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0, TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEI2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineMode(G_CC_MODULATEI, G_CC_MODULATEI),
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEIA2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SHADE, 0, COMBINED, 0, ENVIRONMENT, 0),
gsDPSetCombineMode(G_CC_MODULATEIA, G_CC_MODULATEIA),
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0, TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEI2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineMode(G_CC_MODULATEI, G_CC_MODULATEI),
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineMode(G_CC_SHADE, G_CC_PASS2),
gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT),
0,
};
struct twowords twowords_26d20[] = {
{ 0xfc26a004, 0x1f1093ff },
{ 0xfc26a004, 0x1f1493ff },
{ 0xfc121824, 0xff33ffff },
{ 0xfc121a24, 0xff37ffff },
{ 0xfc26a004, 0x1ffc93fc },
{ 0xfc26a004, 0x1ffc93fd },
{ 0xfc127e24, 0xfffff9fc },
{ 0xfc127e24, 0xfffffbfd },
{ 0xfc26a004, 0x1f1093ff },
{ 0xfc26a004, 0x1f1493ff },
{ 0xfc121824, 0xff33ffff },
{ 0xfc121a24, 0xff37ffff },
{ 0xfc26a004, 0x1ffc93fc },
{ 0xfc26a004, 0x1ffc93fd },
{ 0xfc127e24, 0xfffff9fc },
{ 0xfc127e24, 0xfffffbfd },
{ 0xfcffffff, 0xfffe7838 },
{ 0xfcffffff, 0xfffe7a38 },
{ 0xfcffffff, 0xfffe793c },
{ 0xfcffffff, 0xfffe7b3d },
{ 0x00000000, 0x00000000 },
Gfx gbi_26d20[] = {
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEIA2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SHADE, 0, COMBINED, 0, ENVIRONMENT, 0),
gsDPSetCombineMode(G_CC_MODULATEIA, G_CC_MODULATEIA),
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0, TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEI2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineMode(G_CC_MODULATEI, G_CC_MODULATEI),
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEIA2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SHADE, 0, COMBINED, 0, ENVIRONMENT, 0),
gsDPSetCombineMode(G_CC_MODULATEIA, G_CC_MODULATEIA),
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0, TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEI2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineMode(G_CC_MODULATEI, G_CC_MODULATEI),
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT, TEXEL0, 0, SHADE, 0, 0, 0, 0, ENVIRONMENT),
gsDPSetCombineMode(G_CC_SHADE, G_CC_PASS2),
gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT),
0,
};
struct twowords twowords_26dc8[] = {
{ 0xb900031d, 0x005049d8 },
{ 0xb900031d, 0x00553078 },
{ 0xb900031d, 0x0c1849d8 },
{ 0xb900031d, 0x0c193078 },
{ 0x00000000, 0x00000000 },
Gfx gbi_26dc8[] = {
gsDPSetRenderMode(G_RM_AA_ZB_XLU_SURF, G_RM_AA_ZB_XLU_SURF2),
gsDPSetRenderMode(G_RM_AA_ZB_TEX_EDGE, G_RM_AA_ZB_TEX_EDGE2),
gsDPSetRenderMode(G_RM_PASS, G_RM_AA_ZB_XLU_SURF2),
gsDPSetRenderMode(G_RM_PASS, G_RM_AA_ZB_TEX_EDGE2),
0,
};
struct twowords twowords_26df0[] = {
{ 0xb900031d, 0x00552078 },
{ 0xb900031d, 0x00502078 },
{ 0xb900031d, 0x0c192078 },
{ 0xb900031d, 0x0c182078 },
{ 0x00000000, 0x00000000 },
Gfx gbi_26df0[] = {
gsDPSetRenderMode(G_RM_AA_ZB_OPA_SURF, G_RM_AA_ZB_OPA_SURF2),
gsDPSetRenderMode(G_RM_AA_ZB_OPA_TERR, G_RM_AA_ZB_OPA_TERR2),
gsDPSetRenderMode(G_RM_PASS, G_RM_AA_ZB_OPA_SURF2),
gsDPSetRenderMode(G_RM_PASS, G_RM_AA_ZB_OPA_TERR2),
0,
};
struct twowords twowords_26e18[] = {
{ 0xb900031d, 0x0c1849d8 },
{ 0xb900031d, 0x0c184b50 },
{ 0x00000000, 0x00000000 },
Gfx gbi_26e18[] = {
gsDPSetRenderMode(G_RM_PASS, G_RM_AA_ZB_XLU_SURF2),
gsDPSetRenderMode(G_RM_PASS, G_RM_ZB_CLD_SURF2),
0,
};
struct twowords twowords_26e30[] = {
{ 0xba001402, 0x00000000 },
{ 0xba001402, 0x00100000 },
{ 0xb900031d, 0x00502048 },
{ 0xb900031d, 0x08d02048 },
{ 0xfc127e24, 0xfffff9fc },
{ 0xfc127fff, 0xfffff838 },
{ 0x00000000, 0x00000000 },
Gfx gbi_26e30[] = {
gsDPSetCycleType(G_CYC_1CYCLE),
gsDPSetCycleType(G_CYC_2CYCLE),
gsDPSetRenderMode(G_RM_AA_OPA_TERR, G_RM_AA_OPA_TERR2),
gsDPSetRenderMode(GBL_c1(G_BL_CLR_IN, G_BL_A_SHADE, G_BL_CLR_FOG, G_BL_1MA), G_RM_AA_OPA_TERR2),
gsDPSetCombineMode(G_CC_MODULATEI, G_CC_MODULATEI),
gsDPSetCombineMode(G_CC_MODULATEI, G_CC_PASS2),
0,
};
struct twowords twowords_26e68[] = {
{ 0xfc127e24, 0xfffff9fc },
{ 0xfc137e26, 0xfffff9fc },
{ 0xfc121824, 0xff33ffff },
{ 0xfc131826, 0xff33ffff },
{ 0xfc127e24, 0xfffff9fc },
{ 0xfc137e26, 0xfffff9fc },
{ 0xfc121824, 0xff33ffff },
{ 0xfc131826, 0xff33ffff },
{ 0xfcffffff, 0xfffe793c },
{ 0xfc637ec6, 0xfffff9fc },
{ 0xfc26a004, 0x1ffc93fc },
{ 0xfc26a006, 0x1ffc93fc },
{ 0xfc26a004, 0x1f1093ff },
{ 0xfc26a006, 0x1f1093ff },
{ 0xfc26a004, 0x1ffc93fc },
{ 0xfc26a006, 0x1ffc93fc },
{ 0xfc26a004, 0x1f1093ff },
{ 0xfc26a006, 0x1f1093ff },
{ 0xfc26e404, 0x1ffcfffc },
{ 0xfc26e406, 0x1ffcfffc },
{ 0xfc26e404, 0x1f10ffff },
{ 0xfc26e406, 0x1f10ffff },
{ 0xfc26e404, 0x1ffcfffc },
{ 0xfc26e406, 0x1ffcfffc },
{ 0xfc26e404, 0x1f10ffff },
{ 0xfc26e406, 0x1f10ffff },
{ 0xfcffffff, 0xfffe7838 },
{ 0xfc637fff, 0xfffff838 },
{ 0x00000000, 0x00000000 },
Gfx gbi_26e68[] = {
gsDPSetCombineMode(G_CC_MODULATEI, G_CC_MODULATEI),
gsDPSetCombineLERP(TEXEL0, 0, SCALE, 0, 0, 0, 0, SHADE, TEXEL0, 0, SCALE, 0, 0, 0, 0, SHADE),
gsDPSetCombineMode(G_CC_MODULATEIA, G_CC_MODULATEIA),
gsDPSetCombineLERP(TEXEL0, 0, SCALE, 0, TEXEL0, 0, SHADE, 0, TEXEL0, 0, SCALE, 0, TEXEL0, 0, SHADE, 0),
gsDPSetCombineMode(G_CC_MODULATEI, G_CC_MODULATEI),
gsDPSetCombineLERP(TEXEL0, 0, SCALE, 0, 0, 0, 0, SHADE, TEXEL0, 0, SCALE, 0, 0, 0, 0, SHADE),
gsDPSetCombineMode(G_CC_MODULATEIA, G_CC_MODULATEIA),
gsDPSetCombineLERP(TEXEL0, 0, SCALE, 0, TEXEL0, 0, SHADE, 0, TEXEL0, 0, SCALE, 0, TEXEL0, 0, SHADE, 0),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsDPSetCombineLERP(1, 0, SCALE, 0, 0, 0, 0, SHADE, 1, 0, SCALE, 0, 0, 0, 0, SHADE),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEI2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SCALE, 0, 0, 0, 0, SHADE),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEIA2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SCALE, 0, COMBINED, 0, SHADE, 0),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEI2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SCALE, 0, 0, 0, 0, SHADE),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEIA2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SCALE, 0, COMBINED, 0, SHADE, 0),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SHADE, 0, 0, 0, 0, SHADE),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SCALE, 0, 0, 0, 0, SHADE),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SHADE, 0, COMBINED, 0, SHADE, 0),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SCALE, 0, COMBINED, 0, SHADE, 0),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SHADE, 0, 0, 0, 0, SHADE),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SCALE, 0, 0, 0, 0, SHADE),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SHADE, 0, COMBINED, 0, SHADE, 0),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SCALE, 0, COMBINED, 0, SHADE, 0),
gsDPSetCombineMode(G_CC_SHADE, G_CC_PASS2),
gsDPSetCombineLERP(1, 0, SCALE, 0, 0, 0, 0, SHADE, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED),
0,
};
struct twowords twowords_26f50[] = {
{ 0xfc137e26, 0xfffff9fc },
{ 0xfc127e24, 0xfffff9fc },
{ 0xfc131826, 0xff33ffff },
{ 0xfc121824, 0xff33ffff },
{ 0xfc137e26, 0xfffff9fc },
{ 0xfc127e24, 0xfffff9fc },
{ 0xfc131826, 0xff33ffff },
{ 0xfc121824, 0xff33ffff },
{ 0xfc637ec6, 0xfffff9fc },
{ 0xfcffffff, 0xfffe793c },
{ 0xfc26a006, 0x1ffc93fc },
{ 0xfc26a004, 0x1ffc93fc },
{ 0xfc26a006, 0x1f1093ff },
{ 0xfc26a004, 0x1f1093ff },
{ 0xfc26a006, 0x1ffc93fc },
{ 0xfc26a004, 0x1ffc93fc },
{ 0xfc26a006, 0x1f1093ff },
{ 0xfc26a004, 0x1f1093ff },
{ 0xfc26e406, 0x1ffcfffc },
{ 0xfc26e404, 0x1ffcfffc },
{ 0xfc26e406, 0x1f10ffff },
{ 0xfc26e404, 0x1f10ffff },
{ 0xfc26e406, 0x1ffcfffc },
{ 0xfc26e404, 0x1ffcfffc },
{ 0xfc26e406, 0x1f10ffff },
{ 0xfc26e404, 0x1f10ffff },
{ 0xfc637fff, 0xfffff838 },
{ 0xfcffffff, 0xfffe7838 },
{ 0x00000000, 0x00000000 },
Gfx gbi_26f50[] = {
gsDPSetCombineLERP(TEXEL0, 0, SCALE, 0, 0, 0, 0, SHADE, TEXEL0, 0, SCALE, 0, 0, 0, 0, SHADE),
gsDPSetCombineMode(G_CC_MODULATEI, G_CC_MODULATEI),
gsDPSetCombineLERP(TEXEL0, 0, SCALE, 0, TEXEL0, 0, SHADE, 0, TEXEL0, 0, SCALE, 0, TEXEL0, 0, SHADE, 0),
gsDPSetCombineMode(G_CC_MODULATEIA, G_CC_MODULATEIA),
gsDPSetCombineLERP(TEXEL0, 0, SCALE, 0, 0, 0, 0, SHADE, TEXEL0, 0, SCALE, 0, 0, 0, 0, SHADE),
gsDPSetCombineMode(G_CC_MODULATEI, G_CC_MODULATEI),
gsDPSetCombineLERP(TEXEL0, 0, SCALE, 0, TEXEL0, 0, SHADE, 0, TEXEL0, 0, SCALE, 0, TEXEL0, 0, SHADE, 0),
gsDPSetCombineMode(G_CC_MODULATEIA, G_CC_MODULATEIA),
gsDPSetCombineLERP(1, 0, SCALE, 0, 0, 0, 0, SHADE, 1, 0, SCALE, 0, 0, 0, 0, SHADE),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SCALE, 0, 0, 0, 0, SHADE),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEI2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SCALE, 0, COMBINED, 0, SHADE, 0),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEIA2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SCALE, 0, 0, 0, 0, SHADE),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEI2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, COMBINED, 0, SCALE, 0, COMBINED, 0, SHADE, 0),
gsDPSetCombineMode(G_CC_TRILERP, G_CC_MODULATEIA2),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SCALE, 0, 0, 0, 0, SHADE),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SHADE, 0, 0, 0, 0, SHADE),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SCALE, 0, COMBINED, 0, SHADE, 0),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SHADE, 0, COMBINED, 0, SHADE, 0),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SCALE, 0, 0, 0, 0, SHADE),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SHADE, 0, 0, 0, 0, SHADE),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SCALE, 0, COMBINED, 0, SHADE, 0),
gsDPSetCombineLERP(TEXEL1, TEXEL0, LOD_FRACTION, TEXEL0, 1, 0, TEXEL1, 0, COMBINED, 0, SHADE, 0, COMBINED, 0, SHADE, 0),
gsDPSetCombineLERP(1, 0, SCALE, 0, 0, 0, 0, SHADE, 0, 0, 0, COMBINED, 0, 0, 0, COMBINED),
gsDPSetCombineMode(G_CC_SHADE, G_CC_PASS2),
0,
};
u32 var80081018 = (u32) &twowords_26a40;
u32 var8008101c = (u32) &twowords_26a58;
u32 var80081020 = (u32) &twowords_26dc8;
u32 var80081024 = (u32) &twowords_26df0;
u32 var80081028 = (u32) &twowords_26e18;
u32 var8008102c = (u32) &twowords_26b90;
u32 var80081030 = (u32) &twowords_26c78;
u32 var80081034 = (u32) &twowords_26d20;
u32 var80081038 = (u32) &twowords_26e30;
u32 var8008103c = (u32) &twowords_26e68;
u32 var80081040 = (u32) &twowords_26f50;
Gfx *var80081018[] = {
gbi_26a40,
gbi_26a58,
gbi_26dc8,
gbi_26df0,
gbi_26e18,
gbi_26b90,
gbi_26c78,
gbi_26d20,
gbi_26e30,
gbi_26e68,
gbi_26f50,
};
GLOBAL_ASM(
glabel func0f165670
/* f165670: 10a00004 */ beqz $a1,.L0f165684
/* f165674: 00801025 */ or $v0,$a0,$zero
/* f165678: 0045082b */ sltu $at,$v0,$a1
/* f16567c: 14200006 */ bnez $at,.L0f165698
/* f165680: 00000000 */ nop
.L0f165684:
/* f165684: 14a00026 */ bnez $a1,.L0f165720
/* f165688: 00000000 */ nop
/* f16568c: 808e0000 */ lb $t6,0x0($a0)
/* f165690: 2407ffb8 */ addiu $a3,$zero,-72
/* f165694: 10ee0022 */ beq $a3,$t6,.L0f165720
.L0f165698:
/* f165698: 3c088008 */ lui $t0,%hi(var80081018)
/* f16569c: 25081018 */ addiu $t0,$t0,%lo(var80081018)
/* f1656a0: 00067880 */ sll $t7,$a2,0x2
/* f1656a4: 010fc021 */ addu $t8,$t0,$t7
/* f1656a8: 8f030000 */ lw $v1,0x0($t8)
/* f1656ac: 2407ffb8 */ addiu $a3,$zero,-72
/* f1656b0: 8c640000 */ lw $a0,0x0($v1)
/* f1656b4: 10800010 */ beqz $a0,.L0f1656f8
/* f1656b8: 00000000 */ nop
/* f1656bc: 8c590000 */ lw $t9,0x0($v0)
.L0f1656c0:
/* f1656c0: 5724000a */ bnel $t9,$a0,.L0f1656ec
/* f1656c4: 8c640010 */ lw $a0,0x10($v1)
/* f1656c8: 8c490004 */ lw $t1,0x4($v0)
/* f1656cc: 8c6a0004 */ lw $t2,0x4($v1)
/* f1656d0: 552a0006 */ bnel $t1,$t2,.L0f1656ec
/* f1656d4: 8c640010 */ lw $a0,0x10($v1)
/* f1656d8: 8c610008 */ lw $at,0x8($v1)
/* f1656dc: ac410000 */ sw $at,0x0($v0)
/* f1656e0: 8c6c000c */ lw $t4,0xc($v1)
/* f1656e4: ac4c0004 */ sw $t4,0x4($v0)
/* f1656e8: 8c640010 */ lw $a0,0x10($v1)
.L0f1656ec:
/* f1656ec: 24630010 */ addiu $v1,$v1,0x10
/* f1656f0: 5480fff3 */ bnezl $a0,.L0f1656c0
/* f1656f4: 8c590000 */ lw $t9,0x0($v0)
.L0f1656f8:
/* f1656f8: 10a00004 */ beqz $a1,.L0f16570c
/* f1656fc: 24420008 */ addiu $v0,$v0,0x8
/* f165700: 0045082b */ sltu $at,$v0,$a1
/* f165704: 1420ffe4 */ bnez $at,.L0f165698
/* f165708: 00000000 */ nop
.L0f16570c:
/* f16570c: 14a00004 */ bnez $a1,.L0f165720
/* f165710: 00000000 */ nop
/* f165714: 804d0000 */ lb $t5,0x0($v0)
/* f165718: 14edffdf */ bne $a3,$t5,.L0f165698
/* f16571c: 00000000 */ nop
.L0f165720:
/* f165720: 03e00008 */ jr $ra
/* f165724: 00000000 */ nop
);
void gfxReplaceGbiCommands(Gfx *startgdl, Gfx *endgdl, s32 type)
{
Gfx *gdl = startgdl;
void func0f165728(struct roomgfxdata18 *arg0, s32 arg1)
while ((endgdl && gdl < endgdl) || (!endgdl && *(s8 *)gdl != G_ENDDL)) {
Gfx *src = var80081018[type];
while (src->words.w0 != 0) {
if (src->words.w0 == gdl->words.w0 && src->words.w1 == gdl->words.w1) {
*gdl = src[1];
}
src += 2;
}
gdl++;
}
}
void gfxReplaceGbiCommandsRecursively(struct roomgfxdata18 *arg0, s32 type)
{
if (arg0->unk00 == 1);
@@ -312,11 +276,11 @@ void func0f165728(struct roomgfxdata18 *arg0, s32 arg1)
switch (arg0->unk00) {
case 0:
func0f165670(arg0->gdl, 0, arg1);
gfxReplaceGbiCommands(arg0->gdl, NULL, type);
arg0 = arg0->next;
break;
case 1:
func0f165728((struct roomgfxdata18 *)arg0->gdl, arg1);
gfxReplaceGbiCommandsRecursively((struct roomgfxdata18 *)arg0->gdl, type);
arg0 = arg0->next;
break;
default:
+2 -2
View File
@@ -4,7 +4,7 @@
#include "data.h"
#include "types.h"
void func0f165670(Gfx *gdl, s32 arg1, s32 arg2);
void func0f165728(struct roomgfxdata18 *arg0, s32 arg1);
void gfxReplaceGbiCommands(Gfx *gdl, Gfx *endgdl, s32 type);
void gfxReplaceGbiCommandsRecursively(struct roomgfxdata18 *arg0, s32 type);
#endif
-5
View File
@@ -3575,11 +3575,6 @@ struct menudialogdef {
struct menudialogdef *nextsibling;
};
struct twowords {
u32 unk00;
u32 unk04;
};
struct surfacetype {
u16 *sounds;
u8 *unk04;