J2DGraph debug (#3028)

* J2DGraph debug

* J2DGraph debug
This commit is contained in:
Jcw87
2026-01-11 19:00:04 -08:00
committed by GitHub
parent 6e76f12dd3
commit 2dd7e2ea62
27 changed files with 1200 additions and 931 deletions
+43 -86
View File
@@ -95,23 +95,16 @@ J2DWindow::J2DWindow(J2DPane* param_0, JSURandomInputStream* param_1, J2DMateria
mWhite = JUtility::TColor(0xffffffff);
if (local_98[0] != NULL && local_98[0]->getTevBlock() != NULL) {
if (local_98[0]->getTevBlock()->getTevStageNum() != 1) {
J2DGXColorS10* local_c8 = local_98[0]->getTevBlock()->getTevColor(0);
s16 blackr = local_c8->r;
s16 blackg = local_c8->g;
s16 blackb = local_c8->b;
s16 blacka = local_c8->a;
J2DGXColorS10* local_d0 = local_98[0]->getTevBlock()->getTevColor(1);
s16 whiter = local_d0->r;
s16 whiteg = local_d0->g;
s16 whiteb = local_d0->b;
s16 whitea = local_d0->a;
u8 tevStageNum = u8(local_98[0]->getTevBlock()->getTevStageNum());
if (tevStageNum != 1) {
J2DGXColorS10 local_c8 = *local_98[0]->getTevBlock()->getTevColor(0);
J2DGXColorS10 local_d0 = *local_98[0]->getTevBlock()->getTevColor(1);
mBlack = JUtility::TColor(
(((u8)blackr) << 24) | (((u8)blackg) << 16) | (((u8)blackb) << 8) |
((u8)blacka));
(((u8)local_c8.r) << 24) | (((u8)local_c8.g) << 16) | (((u8)local_c8.b) << 8) |
((u8)local_c8.a));
mWhite = JUtility::TColor(
(((u8)whiter) << 24) | (((u8)whiteg) << 16) | (((u8)whiteb) << 8) |
((u8)whitea));
(((u8)local_d0.r) << 24) | (((u8)local_d0.g) << 16) | (((u8)local_d0.b) << 8) |
((u8)local_d0.a));
}
}
@@ -122,14 +115,12 @@ J2DWindow::J2DWindow(J2DPane* param_0, JSURandomInputStream* param_1, J2DMateria
&field_0x10c,
};
J2DMaterial * mat;
for (u32 uVar6 = 0; uVar6 < 4; uVar6++) {
mat = local_98[uVar6];
if (mat != NULL && mat->getTevBlock() != NULL) {
JUTTexture* local_e0 = mat->getTevBlock()->getTexture(0);
if (local_98[uVar6] != NULL && local_98[uVar6]->getTevBlock() != NULL) {
JUTTexture* local_e0 = local_98[uVar6]->getTevBlock()->getTexture(0);
if (local_e0 != NULL) {
*textures[uVar6] = local_e0;
mat->getTevBlock()->setUndeleteFlag(0xfe);
local_98[uVar6]->getTevBlock()->setUndeleteFlag(0xfe);
}
}
}
@@ -224,6 +215,7 @@ void J2DWindow::private_readStream(J2DPane* param_0, JSURandomInputStream* param
r27 -= u8(14);
field_0x110 = NULL;
if (r27) {
int unused;
timg = (ResTIMG*)getPointer(param_1, 'TIMG', param_2);
if (timg) {
field_0x110 = new JUTTexture(timg, 0);
@@ -334,74 +326,39 @@ void J2DWindow::draw_private(JGeometry::TBox2<f32> const& param_0,
f32 f27 = f29 + field_0x100->getWidth();
f32 f26 = f28 + field_0x100->getHeight();
drawFrameTexture(field_0x100, f29, f28, field_0x144 & 0x80, field_0x144 & 0x40, true);
bool r24 = isField0x145Set(1);
bool r24 = field_0x145 & 1;
drawFrameTexture(field_0x104, f31, f28, field_0x144 & 0x20, field_0x144 & 0x10, r24);
u16 local_a6;
if (field_0x144 & 0x20) {
local_a6 = 0x8000;
} else {
local_a6 = 0;
}
u16 local_a8;
if (field_0x144 & 0x10) {
local_a8 = 0;
} else {
local_a8 = 0x8000;
}
u16 local_a82 = local_a8 ^ 0x8000;
drawFrameTexture(field_0x104, f27, f28, f31 - f27, field_0x104->getHeight(), local_a6,
local_a8, local_a6, local_a82, false);
bool isset2 = isField0x145Set(2);
drawFrameTexture(field_0x10c, f31, f30, field_0x144 & 2, field_0x144 & 1, isset2);
u16 local_aa;
if (field_0x144 & 2) {
local_aa = 0x8000;
} else {
local_aa = 0;
}
u16 local_ac;
if (field_0x144 & 1) {
local_ac = 0;
} else {
local_ac = 0x8000;
}
local_a82 = local_ac ^ 0x8000;
drawFrameTexture(field_0x10c, f27, f30, f31 - f27, field_0x10c->getHeight(), local_aa,
local_ac, local_aa, local_a82, false);
u16 local_ae;
if (field_0x144 & 2) {
local_ae = 0;
} else {
local_ae = 0x8000;
}
u16 local_ae2 = local_ae ^ 0x8000;
u16 local_b0;
if (field_0x144 & 1) {
local_b0 = 0x8000;
} else {
local_b0 = 0;
}
drawFrameTexture(field_0x10c, f31, f26, field_0x10c->getWidth(), f30 - f26, local_ae,
local_b0, local_ae2, local_b0, false);
bool isset4 = isField0x145Set(4);
drawFrameTexture(field_0x108, f29, f30, field_0x144 & 8, field_0x144 & 4, isset4);
u16 r29, r28, r27, r26;
r27 = field_0x144 & 0x20 ? u16(0x8000) : u16(0);
r29 = r27;
r28 = field_0x144 & 0x10 ? u16(0) : u16(0x8000);
r26 = r28 ^ 0x8000;
u16 local_b2;
if (field_0x144 & 8) {
local_b2 = 0;
} else {
local_b2 = 0x8000;
}
u16 local_b22 = local_b2 ^ 0x8000;
u16 local_b4;
if (field_0x144 & 4) {
local_b4 = 0x8000;
} else {
local_b4 = 0;
}
drawFrameTexture(field_0x108, f29, f26, field_0x108->getWidth(), f30 - f26, local_b2,
local_b4, local_b22, local_b4, false);
drawFrameTexture(field_0x104, f27, f28, f31 - f27, field_0x104->getHeight(), r29,
r28, r27, r26, false);
r24 = field_0x145 & 2;
drawFrameTexture(field_0x10c, f31, f30, field_0x144 & 2, field_0x144 & 1, r24);
r27 = field_0x144 & 2 ? u16(0x8000) : u16(0);
r29 = r27;
r28 = field_0x144 & 1 ? u16(0) : u16(0x8000);
r26 = r28 ^ 0x8000;
drawFrameTexture(field_0x10c, f27, f30, f31 - f27, field_0x10c->getHeight(), r29,
r28, r27, r26, false);
r29 = field_0x144 & 2 ? u16(0) : u16(0x8000);
r27 = r29 ^ 0x8000;
r26 = field_0x144 & 1 ? u16(0x8000) : u16(0);
r28 = r26;
drawFrameTexture(field_0x10c, f31, f26, field_0x10c->getWidth(), f30 - f26, r29,
r28, r27, r26, false);
r24 = field_0x145 & 4;
drawFrameTexture(field_0x108, f29, f30, field_0x144 & 8, field_0x144 & 4, r24);
r29 = field_0x144 & 8 ? u16(0) : u16(0x8000);
r27 = r29 ^ 0x8000;
r26 = field_0x144 & 4 ? u16(0x8000) : u16(0);
r28 = r26;
drawFrameTexture(field_0x108, f29, f26, field_0x108->getWidth(), f30 - f26, r29,
r28, r27, r26, false);
}
GXSetTevOp(GX_TEVSTAGE0, GX_PASSCLR);
GXSetTevOrder(GX_TEVSTAGE0, GX_TEXCOORD_NULL, GX_TEXMAP_NULL, GX_COLOR0A0);