diff options
| author | Pheenoh <pheenoh@gmail.com> | 2023-08-10 03:57:49 -0600 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-08-10 03:57:49 -0600 |
| commit | d24b09c2d9e303df68abd7f3417babfc00d83c78 (patch) | |
| tree | 52f020141957595ac866109832723941a8f7025f /libs/JSystem/J2DGraph/J2DPicture.cpp | |
| parent | 244892aeb849a9ad9801aa9828e6282d29df87f0 (diff) | |
d_file_select work + misc changes (#1873)
* setup TU
* JASResArcLoader OK
* d_a_obj_stoneMark work
* some funcs in d_a_obj_stoneMark
* many changes
* quat, d_a_obj_stone, d_a_alink, fix python script, tidy makefile
* d_file_select functions + pr cleanup
* match many dfile_select_c methods
* m_Do_main OK
* selFileWakuAnm & bookIconAnm
* selCopyFileWakuAnm & copyBookIconAnm
* dataDelEffAnm & dataCopyEffAnm
* selectDataBaseMoveAnmInitSet & selectDataBaseMoveAnm
* dataSelectIn
* _move & dataSelectInit
* match a few more
* comment
* J2DPicture::drawTexCoord
* draw_function
* dScnPly_Create + fix typing on request_of_phase_process_fn
* checkpoint
* checkpoint
* checkpoint
* checkpoint 2 (fixed)
* dFile_select_c::dataSelectAnmSet
* dFile_select_c::selectDataOpenMove
* dFile_select_c::copySelMoveAnmInitSet
* fix brightcheck issues
* rm comments, fix status update
* small mod to pr template
Diffstat (limited to 'libs/JSystem/J2DGraph/J2DPicture.cpp')
| -rw-r--r-- | libs/JSystem/J2DGraph/J2DPicture.cpp | 59 |
1 files changed, 58 insertions, 1 deletions
diff --git a/libs/JSystem/J2DGraph/J2DPicture.cpp b/libs/JSystem/J2DGraph/J2DPicture.cpp index d0b1fd80e2..489c5506bb 100644 --- a/libs/JSystem/J2DGraph/J2DPicture.cpp +++ b/libs/JSystem/J2DGraph/J2DPicture.cpp @@ -711,16 +711,73 @@ asm void J2DPicture::drawOut(JGeometry::TBox2<f32> const& param_0, /* 802FE380-802FE5D0 2F8CC0 0250+00 1/0 0/0 0/0 .text * drawTexCoord__10J2DPictureFffffssssssssPA3_A4_f */ +#ifdef NONMATCHING +// matches with literals +void J2DPicture::drawTexCoord(f32 param_0, f32 param_1, f32 param_2, f32 param_3, s16 param_4, + s16 param_5, s16 param_6, s16 param_7, s16 param_8, s16 param_9, + s16 param_10, s16 param_11, Mtx* param_12) { + + if (mTextureCount != 0) { + for (u8 i = 0; i < mTextureCount; i++) { + load(i); + } + + f32 tmp1 = param_0 + param_2; + f32 tmp2 = param_1 + param_3; + + GXSetNumTexGens(mTextureCount); + + JUtility::TColor black[4]; + + Mtx outputMtx; + + getNewColor(black); + setTevMode(); + PSMTXConcat((MtxP)param_12,mGlobalMtx,outputMtx); + + GXLoadPosMtxImm(outputMtx,0); + GXClearVtxDesc(); + GXSetVtxDesc(GX_VA_POS,GX_DIRECT); + GXSetVtxDesc(GX_VA_CLR0,GX_DIRECT); + GXSetVtxDesc(GX_VA_TEX0,GX_DIRECT); + GXSetVtxAttrFmt(GX_VTXFMT0,GX_VA_POS,GX_CLR_RGBA,GX_F32,0); + GXSetVtxAttrFmt(GX_VTXFMT0,GX_VA_TEX0,GX_CLR_RGBA,GX_RGBA4,8); + GXBegin(GX_QUADS,GX_VTXFMT0,4); + + GXPosition3f32(param_0,param_1,0.0f); + GXColor1u32(black[0]); + GXTexCoord2s16(param_4,param_5); + + GXPosition3f32(tmp1,param_1,0.0f); + GXColor1u32(black[1]); + GXTexCoord2s16(param_6,param_7); + + GXPosition3f32(tmp1,tmp2,0.0f); + GXColor1u32(black[3]); + GXTexCoord2s16(param_10,param_11); + + GXPosition3f32(param_0,tmp2,0.0f); + GXColor1u32(black[2]); + GXTexCoord2s16(param_8,param_9); + + i_GXEnd(); + + GXSetVtxAttrFmt(GX_VTXFMT0,GX_VA_TEX0,GX_CLR_RGBA,GX_RGBX8,0xf); + GXSetVtxAttrFmt(GX_VTXFMT0,GX_VA_POS,GX_CLR_RGBA,GX_RGBA4,0); + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void J2DPicture::drawTexCoord(f32 param_0, f32 param_1, f32 param_2, f32 param_3, s16 param_4, s16 param_5, s16 param_6, s16 param_7, s16 param_8, s16 param_9, - s16 param_10, s16 param_11, f32 (*param_12)[3][4]) { + s16 param_10, s16 param_11, Mtx* param_12) { nofralloc #include "asm/JSystem/J2DGraph/J2DPicture/drawTexCoord__10J2DPictureFffffssssssssPA3_A4_f.s" } #pragma pop +#endif /* 802FE5D0-802FEA60 2F8F10 0490+00 3/3 0/0 0/0 .text setTevMode__10J2DPictureFv */ #pragma push |
