d_a_sea OK on JPN

fixes #586
This commit is contained in:
LagoLunatic
2024-06-21 20:43:12 -04:00
parent fda302008e
commit 58dee066bd
2 changed files with 13 additions and 6 deletions
+1 -1
View File
@@ -454,7 +454,7 @@ config.libs = [
Object(Matching, "d/actor/d_a_player.cpp"),
Object(NonMatching, "d/actor/d_a_player_main.cpp"),
Object(Matching, "d/actor/d_a_player_npc.cpp"),
Object(NonMatching, "d/actor/d_a_sea.cpp"),
Object(Matching, "d/actor/d_a_sea.cpp"),
Object(Matching, "d/actor/d_a_spc_item01.cpp"),
Object(Matching, "d/actor/d_a_vrbox.cpp", extra_cflags=['-pragma "nosyminline on"']),
Object(Matching, "d/actor/d_a_vrbox2.cpp"),
+12 -5
View File
@@ -648,10 +648,11 @@ void daSea_packet_c::draw() {
return;
}
JUT_ASSERT(0x518, m_draw_vtx != 0); // Redundant assert
JUT_ASSERT(VERSION_SELECT(0x519, 0x518, 0x518), m_draw_vtx != 0); // Redundant assert
#if VERSION != VERSION_JPN
j3dSys.reinitGX();
#endif
cXyz* vtx = m_draw_vtx;
f32* pY = mpHeightTable;
@@ -671,7 +672,11 @@ void daSea_packet_c::draw() {
minZ += 800.0f;
}
#if VERSION == VERSION_JPN
DCFlushRange(m_draw_vtx, 0xC60C);
#else
DCStoreRange(m_draw_vtx, 0xC60C);
#endif
ResTIMG* pResTIMG = static_cast<ResTIMG*>(dComIfG_getObjectRes("Always", ALWAYS_BTI_B_SEA_TEX0AND2));
@@ -787,19 +792,19 @@ void daSea_packet_c::draw() {
GXSetTexCoordGen2(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX0, GX_TEXMTX1, GX_FALSE, GX_PTIDENTITY);
GXSetTexCoordGen2(GX_TEXCOORD2, GX_TG_MTX2x4, GX_TG_TEX0, GX_TEXMTX2, GX_FALSE, GX_PTIDENTITY);
GXSetTevOrder(GX_TEVSTAGE0,GX_TEXCOORD0,GX_TEXMAP0,GX_COLOR_NULL);
GXSetTevOrder(GX_TEVSTAGE0,GX_TEXCOORD0,GX_TEXMAP0, VERSION_SELECT(GX_COLOR_ZERO, GX_COLOR_NULL, GX_COLOR_NULL));
GXSetTevColorIn(GX_TEVSTAGE0,GX_CC_C0,GX_CC_KONST,GX_CC_TEXC,GX_CC_ZERO);
GXSetTevColorOp(GX_TEVSTAGE0,GX_TEV_ADD,GX_TB_ZERO,GX_CS_SCALE_1,true,GX_TEVREG2);
GXSetTevAlphaIn(GX_TEVSTAGE0,GX_CA_ZERO,GX_CA_KONST,GX_CA_TEXA,GX_CA_ZERO);
GXSetTevAlphaOp(GX_TEVSTAGE0,GX_TEV_ADD,GX_TB_ZERO,GX_CS_SCALE_1,true,GX_TEVPREV);
GXSetTevSwapMode(GX_TEVSTAGE0,GX_TEV_SWAP0,GX_TEV_SWAP0);
GXSetTevOrder(GX_TEVSTAGE1,GX_TEXCOORD2,GX_TEXMAP2,GX_COLOR_NULL);
GXSetTevOrder(GX_TEVSTAGE1,GX_TEXCOORD2,GX_TEXMAP2, VERSION_SELECT(GX_COLOR_ZERO, GX_COLOR_NULL, GX_COLOR_NULL));
GXSetTevColorIn(GX_TEVSTAGE1,GX_CC_C0,GX_CC_KONST,GX_CC_TEXC,GX_CC_ZERO);
GXSetTevColorOp(GX_TEVSTAGE1,GX_TEV_ADD,GX_TB_ZERO,GX_CS_SCALE_1,true,GX_TEVPREV);
GXSetTevAlphaIn(GX_TEVSTAGE1,GX_CA_APREV,GX_CA_ZERO,GX_CA_ZERO,GX_CA_ZERO);
GXSetTevAlphaOp(GX_TEVSTAGE1,GX_TEV_ADD,GX_TB_ZERO,GX_CS_SCALE_1,true,GX_TEVPREV);
GXSetTevSwapMode(GX_TEVSTAGE1,GX_TEV_SWAP0,GX_TEV_SWAP0);
GXSetTevOrder(GX_TEVSTAGE2,GX_TEXCOORD_NULL,GX_TEXMAP_NULL,GX_COLOR_NULL);
GXSetTevOrder(GX_TEVSTAGE2,GX_TEXCOORD_NULL,GX_TEXMAP_NULL, VERSION_SELECT(GX_COLOR_ZERO, GX_COLOR_NULL, GX_COLOR_NULL));
GXSetTevColorIn(GX_TEVSTAGE2,GX_CC_CPREV,GX_CC_C2,GX_CC_APREV,GX_CC_ZERO);
GXSetTevColorOp(GX_TEVSTAGE2,GX_TEV_ADD,GX_TB_ZERO,GX_CS_SCALE_1,true,GX_TEVPREV);
GXSetTevAlphaIn(GX_TEVSTAGE2,GX_CA_ZERO,GX_CA_KONST,GX_CA_APREV,GX_CA_ZERO);
@@ -1117,7 +1122,9 @@ void daSea_packet_c::draw() {
}
GXSetNumIndStages(0);
#if VERSION != VERSION_JPN
J3DShape::resetVcdVatCache();
#endif
}
/* 8015D80C-8015D87C .text daSea_Draw__FP9sea_class */