d_name / d_s_name (#194)

* d_name

* scnname
This commit is contained in:
TakaRikka
2022-04-28 13:58:43 -07:00
committed by GitHub
parent 07c5152e5a
commit d91b1294bb
91 changed files with 1742 additions and 4182 deletions
+1 -2
View File
@@ -247,8 +247,7 @@ J3DDrawPacket::J3DDrawPacket() {
}
/* 803127B0-8031280C 30D0F0 005C+00 3/2 0/0 0/0 .text __dt__13J3DDrawPacketFv */
J3DDrawPacket::~J3DDrawPacket() {
}
J3DDrawPacket::~J3DDrawPacket() {}
/* 8031280C-80312898 30D14C 008C+00 1/1 1/1 0/0 .text newDisplayList__13J3DDrawPacketFUl
*/
+58 -64
View File
@@ -72,34 +72,34 @@ enum {
kVcdVatDLSize = 0xC0,
};
void J3DShape::initialize() {
mMaterial = NULL;
mIndex = -1;
mMtxGroupNum = 0;
mFlags = 0;
mRadius = 0.0f;
mMin.x = 0.0f;
mMin.y = 0.0f;
mMin.z = 0.0f;
mMax.x = 0.0f;
mMax.y = 0.0f;
mMax.z = 0.0f;
mVtxDesc = NULL;
mShapeMtx = NULL;
mShapeDraw = NULL;
mVertexData = NULL;
mDrawMtxData = NULL;
mScaleFlagArray = NULL;
mDrawMtx = NULL;
mNrmMtx = NULL;
mCurrentViewNo = &j3dDefaultViewNo;
mHasNBT = false;
mHasPNMTXIdx = false;
void J3DShape::initialize() {
mMaterial = NULL;
mIndex = -1;
mMtxGroupNum = 0;
mFlags = 0;
mRadius = 0.0f;
mMin.x = 0.0f;
mMin.y = 0.0f;
mMin.z = 0.0f;
mMax.x = 0.0f;
mMax.y = 0.0f;
mMax.z = 0.0f;
mVtxDesc = NULL;
mShapeMtx = NULL;
mShapeDraw = NULL;
mVertexData = NULL;
mDrawMtxData = NULL;
mScaleFlagArray = NULL;
mDrawMtx = NULL;
mNrmMtx = NULL;
mCurrentViewNo = &j3dDefaultViewNo;
mHasNBT = false;
mHasPNMTXIdx = false;
}
/* 80314BB8-80314CBC 30F4F8 0104+00 0/0 1/1 0/0 .text addTexMtxIndexInDL__8J3DShapeF7_GXAttrUl */
void J3DShape::addTexMtxIndexInDL(GXAttr attr, u32 valueBase) {
u32 kSize[] = { 0, 1, 1, 2 };
u32 kSize[] = {0, 1, 1, 2};
s32 pnmtxidxOffs = -1;
s32 attrOffs = -1;
@@ -200,8 +200,8 @@ void J3DShape::loadVtxArray() const {
/* 80314F5C-80314F98 30F89C 003C+00 0/0 1/1 0/0 .text isSameVcdVatCmd__8J3DShapeFP8J3DShape */
bool J3DShape::isSameVcdVatCmd(J3DShape* other) {
u8 *a = other->mVcdVatCmd;
u8 *b = mVcdVatCmd;
u8* a = other->mVcdVatCmd;
u8* b = mVcdVatCmd;
for (u32 i = 0; i < kVcdVatDLSize; i++)
if (a[i] != b[i])
return false;
@@ -210,7 +210,7 @@ bool J3DShape::isSameVcdVatCmd(J3DShape* other) {
/* 80314F98-80315260 30F8D8 02C8+00 1/1 0/0 0/0 .text makeVtxArrayCmd__8J3DShapeFv */
void J3DShape::makeVtxArrayCmd() {
GXVtxAttrFmtList *vtxAttr = mVertexData->getVtxAttrFmtList();
GXVtxAttrFmtList* vtxAttr = mVertexData->getVtxAttrFmtList();
u8 stride[0x0C];
void* array[0x0C];
@@ -221,35 +221,30 @@ void J3DShape::makeVtxArrayCmd() {
for (; vtxAttr->mAttrib != GX_VA_NULL; vtxAttr++) {
switch (vtxAttr->mAttrib) {
case GX_VA_POS:
{
if (vtxAttr->mCompType == GX_F32)
stride[vtxAttr->mAttrib - GX_VA_POS] = 0x0C;
else
stride[vtxAttr->mAttrib - GX_VA_POS] = 0x06;
array[vtxAttr->mAttrib - GX_VA_POS] = mVertexData->getVtxPosArray();
mVertexData->setVtxPosFrac(vtxAttr->mCompShift);
mVertexData->setVtxPosType((GXCompType) vtxAttr->mCompType);
}
break;
case GX_VA_NRM:
{
if (vtxAttr->mCompType == GX_F32)
stride[vtxAttr->mAttrib - GX_VA_POS] = 0x0C;
else
stride[vtxAttr->mAttrib - GX_VA_POS] = 0x06;
array[vtxAttr->mAttrib - GX_VA_POS] = mVertexData->getVtxNrmArray();
mVertexData->setVtxNrmFrac(vtxAttr->mCompShift);
mVertexData->setVtxNrmType((GXCompType) vtxAttr->mCompType);
}
break;
case GX_VA_POS: {
if (vtxAttr->mCompType == GX_F32)
stride[vtxAttr->mAttrib - GX_VA_POS] = 0x0C;
else
stride[vtxAttr->mAttrib - GX_VA_POS] = 0x06;
array[vtxAttr->mAttrib - GX_VA_POS] = mVertexData->getVtxPosArray();
mVertexData->setVtxPosFrac(vtxAttr->mCompShift);
mVertexData->setVtxPosType((GXCompType)vtxAttr->mCompType);
} break;
case GX_VA_NRM: {
if (vtxAttr->mCompType == GX_F32)
stride[vtxAttr->mAttrib - GX_VA_POS] = 0x0C;
else
stride[vtxAttr->mAttrib - GX_VA_POS] = 0x06;
array[vtxAttr->mAttrib - GX_VA_POS] = mVertexData->getVtxNrmArray();
mVertexData->setVtxNrmFrac(vtxAttr->mCompShift);
mVertexData->setVtxNrmType((GXCompType)vtxAttr->mCompType);
} break;
case GX_VA_CLR0:
case GX_VA_CLR1:
{
stride[vtxAttr->mAttrib - GX_VA_POS] = 0x04;
array[vtxAttr->mAttrib - GX_VA_POS] = mVertexData->getVtxColorArray(vtxAttr->mAttrib - GX_VA_CLR0);
}
break;
case GX_VA_CLR1: {
stride[vtxAttr->mAttrib - GX_VA_POS] = 0x04;
array[vtxAttr->mAttrib - GX_VA_POS] =
mVertexData->getVtxColorArray(vtxAttr->mAttrib - GX_VA_CLR0);
} break;
case GX_VA_TEX0:
case GX_VA_TEX1:
case GX_VA_TEX2:
@@ -257,15 +252,14 @@ void J3DShape::makeVtxArrayCmd() {
case GX_VA_TEX4:
case GX_VA_TEX5:
case GX_VA_TEX6:
case GX_VA_TEX7:
{
if (vtxAttr->mCompType == GX_F32)
stride[vtxAttr->mAttrib - GX_VA_POS] = 0x08;
else
stride[vtxAttr->mAttrib - GX_VA_POS] = 0x04;
array[vtxAttr->mAttrib - GX_VA_POS] = mVertexData->getVtxTexCoordArray(vtxAttr->mAttrib - GX_VA_TEX0);
}
break;
case GX_VA_TEX7: {
if (vtxAttr->mCompType == GX_F32)
stride[vtxAttr->mAttrib - GX_VA_POS] = 0x08;
else
stride[vtxAttr->mAttrib - GX_VA_POS] = 0x04;
array[vtxAttr->mAttrib - GX_VA_POS] =
mVertexData->getVtxTexCoordArray(vtxAttr->mAttrib - GX_VA_TEX0);
} break;
default:
break;
}
+4 -4
View File
@@ -5,11 +5,11 @@
#include "JSystem/J3DGraphBase/J3DShapeDraw.h"
#include "JSystem/JKernel/JKRHeap.h"
#include "dol2asm.h"
#include "dolphin/os/OSCache.h"
#include "dolphin/gx/GX.h"
#include "dolphin/types.h"
#include "MSL_C/MSL_Common/Src/string.h"
#include "dol2asm.h"
#include "dolphin/gx/GX.h"
#include "dolphin/os/OSCache.h"
#include "dolphin/types.h"
//
// External References:
+1 -2
View File
@@ -778,8 +778,7 @@ u32 J3DShapeMtxConcatView::getType() const {
}
/* 80314798-803147E0 30F0D8 0048+00 1/0 0/0 0/0 .text __dt__11J3DShapeMtxFv */
J3DShapeMtx::~J3DShapeMtx() {
}
J3DShapeMtx::~J3DShapeMtx() {}
/* 803147E0-803147EC 30F120 000C+00 1/0 0/0 0/0 .text getType__11J3DShapeMtxCFv */
u32 J3DShapeMtx::getType() const {
+32 -18
View File
@@ -6,9 +6,9 @@
#include "JSystem/J3DGraphBase/J3DSys.h"
#include "dol2asm.h"
#include "dolphin/types.h"
#include "dolphin/gx/GXPixel.h"
#include "dolphin/os/OS.h"
#include "dolphin/types.h"
#include "JSystem/J3DGraphBase/J3DTevs.h"
@@ -102,8 +102,13 @@ void J3DSys::loadNrmMtxIndx(int addr, u16 indx) const {
/* 8030FF0C-803100BC 30A84C 01B0+00 1/1 0/0 0/0 .text setTexCacheRegion__6J3DSysF15_GXTexCacheSize
*/
void J3DSys::setTexCacheRegion(GXTexCacheSize size) {
const u32 kSize[] = { 0x00008000, 0x00020000, 0x00080000, 0x00000000, };
const u32 kRegionNum[] = { 8, 4, 1, 0 };
const u32 kSize[] = {
0x00008000,
0x00020000,
0x00080000,
0x00000000,
};
const u32 kRegionNum[] = {8, 4, 1, 0};
u32 regionNum = kRegionNum[size];
mTexCacheRegionNum = regionNum;
@@ -111,17 +116,23 @@ void J3DSys::setTexCacheRegion(GXTexCacheSize size) {
if (!!(mFlags & 0x80000000)) {
for (u32 i = 0; i < regionNum; i++) {
if (!!(i & 1)) {
GXInitTexCacheRegion(&mTexCacheRegion[i], GX_FALSE, i * kSize[size] + 0x80000, size, i * kSize[size], size);
J3DFifoLoadTexCached((GXTexMapID) i, i * kSize[size] + 0x80000, size, i * kSize[size], size);
GXInitTexCacheRegion(&mTexCacheRegion[i], GX_FALSE, i * kSize[size] + 0x80000, size,
i * kSize[size], size);
J3DFifoLoadTexCached((GXTexMapID)i, i * kSize[size] + 0x80000, size,
i * kSize[size], size);
} else {
GXInitTexCacheRegion(&mTexCacheRegion[i], GX_FALSE, i * kSize[size], size, i * kSize[size] + 0x80000, size);
J3DFifoLoadTexCached((GXTexMapID) i, i * kSize[size], size, i * kSize[size] + 0x80000, size);
GXInitTexCacheRegion(&mTexCacheRegion[i], GX_FALSE, i * kSize[size], size,
i * kSize[size] + 0x80000, size);
J3DFifoLoadTexCached((GXTexMapID)i, i * kSize[size], size,
i * kSize[size] + 0x80000, size);
}
}
} else {
for (u32 i = 0; i < regionNum; i++) {
GXInitTexCacheRegion(&mTexCacheRegion[i], GX_FALSE, i * kSize[size], size, i * kSize[size] + 0x80000, size);
J3DFifoLoadTexCached((GXTexMapID) i, i * kSize[size], size, i * kSize[size] + 0x80000, size);
GXInitTexCacheRegion(&mTexCacheRegion[i], GX_FALSE, i * kSize[size], size,
i * kSize[size] + 0x80000, size);
J3DFifoLoadTexCached((GXTexMapID)i, i * kSize[size], size, i * kSize[size] + 0x80000,
size);
}
}
}
@@ -133,9 +144,7 @@ SECTION_DATA static u8 NullTexData[16] = {
/* 803CD8B0-803CD8E0 02A9D0 0030+00 1/1 0/0 0/0 .data j3dIdentityMtx */
SECTION_DATA static Mtx j3dIdentityMtx = {
1.0f, 0.0f, 0.0f, 0.0f,
0.0f, 1.0f, 0.0f, 0.0f,
0.0f, 0.0f, 1.0f, 0.0f,
1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f,
};
/* 803100BC-8031073C 30A9FC 0680+00 0/0 3/3 0/0 .text drawInit__6J3DSysFv */
@@ -188,8 +197,8 @@ void J3DSys::drawInit() {
GXLoadTexMtxImm(j3dIdentityMtx, GX_TEXMTX0 + i * 3, GX_MTX3x4);
Mtx23 indTexMtx = {
{ 0.5f, 0.0f, 0.0f },
{ 0.0f, 0.5f, 0.0f },
{0.5f, 0.0f, 0.0f},
{0.0f, 0.5f, 0.0f},
};
u8 i;
@@ -206,7 +215,9 @@ void J3DSys::drawInit() {
GXSetChanCtrl(GX_COLOR1A1, GX_FALSE, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_CLAMP, GX_AF_NONE);
for (i = 0; i < GX_MAX_TEXMAP; i++)
GXSetTexCoordGen2((GXTexCoordID)i, (GXTexGenType) j3dDefaultTexCoordInfo[i].mTexGenType, (GXTexGenSrc) j3dDefaultTexCoordInfo[i].mTexGenSrc, j3dDefaultTexCoordInfo[i].mTexGenMtx, GX_FALSE, GX_PTIDENTITY);
GXSetTexCoordGen2((GXTexCoordID)i, (GXTexGenType)j3dDefaultTexCoordInfo[i].mTexGenType,
(GXTexGenSrc)j3dDefaultTexCoordInfo[i].mTexGenSrc,
j3dDefaultTexCoordInfo[i].mTexGenMtx, GX_FALSE, GX_PTIDENTITY);
for (i = 0; i < GX_MAX_INDTEXSTAGE; i++)
GXSetIndTexCoordScale((GXIndTexStageID)i, GX_ITS_1, GX_ITS_1);
@@ -219,9 +230,11 @@ void J3DSys::drawInit() {
for (i = 0; i < GX_MAX_TEVSTAGE; i++) {
GXSetTevColorIn((GXTevStageID)i, GX_CC_RASC, GX_CC_ZERO, GX_CC_ZERO, GX_CC_ZERO);
GXSetTevColorOp((GXTevStageID)i, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
GXSetTevColorOp((GXTevStageID)i, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE,
GX_TEVPREV);
GXSetTevAlphaIn((GXTevStageID)i, GX_CA_RASA, GX_CA_ZERO, GX_CA_ZERO, GX_CA_ZERO);
GXSetTevAlphaOp((GXTevStageID)i, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE, GX_TEVPREV);
GXSetTevAlphaOp((GXTevStageID)i, GX_TEV_ADD, GX_TB_ZERO, GX_CS_SCALE_1, GX_TRUE,
GX_TEVPREV);
}
for (i = 0; i < GX_MAX_TEVSTAGE; i++)
@@ -233,7 +246,8 @@ void J3DSys::drawInit() {
GXSetTevSwapModeTable(GX_TEV_SWAP3, GX_CH_BLUE, GX_CH_BLUE, GX_CH_BLUE, GX_CH_ALPHA);
for (i = 0; i < GX_MAX_TEVSTAGE; i++)
GXSetTevIndirect((GXTevStageID)i, GX_INDTEXSTAGE0, GX_ITF_8, GX_ITB_NONE, GX_ITM_OFF, GX_ITW_OFF, GX_ITW_OFF, GX_FALSE, GX_FALSE, GX_ITBA_OFF);
GXSetTevIndirect((GXTevStageID)i, GX_INDTEXSTAGE0, GX_ITF_8, GX_ITB_NONE, GX_ITM_OFF,
GX_ITW_OFF, GX_ITW_OFF, GX_FALSE, GX_FALSE, GX_ITBA_OFF);
OSInitFastCast();
setTexCacheRegion(GX_TEXCACHE_32K);
+8 -12
View File
@@ -252,7 +252,7 @@ asm void loadTexNo(u32 param_0, u16 const& param_1) {
/* 8032413C-80324160 31EA7C 0024+00 0/0 2/2 0/0 .text patchTexNo_PtrToIdx__FUlRCUs */
void patchTexNo_PtrToIdx(u32 texID, u16 const& idx) {
J3DGDSetTexImgPtrRaw((GXTexMapID) texID, idx);
J3DGDSetTexImgPtrRaw((GXTexMapID)texID, idx);
}
/* 80324160-80324194 31EAA0 0034+00 0/0 2/2 0/0 .text loadNBTScale__FR11J3DNBTScale */
@@ -277,14 +277,10 @@ COMPILER_STRIP_GATE(0x803A1EC8, &j3dDefaultLightInfo);
/* 803A1EFC-803A1F1C 02E55C 0020+00 0/0 5/5 0/0 .rodata j3dDefaultTexCoordInfo */
SECTION_RODATA extern J3DDefaultTexCoordInfo const j3dDefaultTexCoordInfo[8] = {
{ GX_MTX2x4, GX_TG_TEX0, GX_IDENTITY, 0 },
{ GX_MTX2x4, GX_TG_TEX1, GX_IDENTITY, 0 },
{ GX_MTX2x4, GX_TG_TEX2, GX_IDENTITY, 0 },
{ GX_MTX2x4, GX_TG_TEX3, GX_IDENTITY, 0 },
{ GX_MTX2x4, GX_TG_TEX4, GX_IDENTITY, 0 },
{ GX_MTX2x4, GX_TG_TEX5, GX_IDENTITY, 0 },
{ GX_MTX2x4, GX_TG_TEX6, GX_IDENTITY, 0 },
{ GX_MTX2x4, GX_TG_TEX7, GX_IDENTITY, 0 },
{GX_MTX2x4, GX_TG_TEX0, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX1, GX_IDENTITY, 0},
{GX_MTX2x4, GX_TG_TEX2, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX3, GX_IDENTITY, 0},
{GX_MTX2x4, GX_TG_TEX4, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX5, GX_IDENTITY, 0},
{GX_MTX2x4, GX_TG_TEX6, GX_IDENTITY, 0}, {GX_MTX2x4, GX_TG_TEX7, GX_IDENTITY, 0},
};
COMPILER_STRIP_GATE(0x803A1EFC, &j3dDefaultTexCoordInfo);
@@ -456,7 +452,7 @@ static asm void J3DGDLoadPostTexMtxImm(f32 (*param_0)[4], u32 param_1) {
/* ############################################################################################## */
/* 804563C0-804563C4 0049C0 0004+00 0/0 4/4 0/0 .sdata2 j3dDefaultColInfo */
SECTION_SDATA2 extern GXColor j3dDefaultColInfo = { 0xFF, 0xFF, 0xFF, 0xFF };
SECTION_SDATA2 extern GXColor j3dDefaultColInfo = {0xFF, 0xFF, 0xFF, 0xFF};
/* 804563C4-804563C8 0049C4 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultAmbInfo */
SECTION_SDATA2 extern u32 j3dDefaultAmbInfo = 0x32323232;
@@ -471,7 +467,7 @@ SECTION_SDATA2 extern u32 j3dDefaultTevOrderInfoNull = 0xFFFFFF00;
SECTION_SDATA2 extern u32 j3dDefaultIndTexOrderNull = 0xFFFF0000;
/* 804563D4-804563D8 0049D4 0004+00 0/0 5/5 0/0 .sdata2 j3dDefaultTevColor */
SECTION_SDATA2 extern GXColorS10 j3dDefaultTevColor = { 0xFF, 0xFF, 0xFF, 0xFF };
SECTION_SDATA2 extern GXColorS10 j3dDefaultTevColor = {0xFF, 0xFF, 0xFF, 0xFF};
/* 804563DC-804563E0 0049DC 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultIndTexCoordScaleInfo */
SECTION_SDATA2 extern u8 j3dDefaultIndTexCoordScaleInfo[4] = {
@@ -482,7 +478,7 @@ SECTION_SDATA2 extern u8 j3dDefaultIndTexCoordScaleInfo[4] = {
};
/* 804563E0-804563E4 0049E0 0004+00 0/0 5/5 0/0 .sdata2 j3dDefaultTevKColor */
SECTION_SDATA2 extern GXColor j3dDefaultTevKColor = { 0xFF, 0xFF, 0xFF, 0xFF };
SECTION_SDATA2 extern GXColor j3dDefaultTevKColor = {0xFF, 0xFF, 0xFF, 0xFF};
/* 804563E4-804563E8 0049E4 0004+00 0/0 2/2 0/0 .sdata2 j3dDefaultTevSwapMode */
SECTION_SDATA2 extern u8 j3dDefaultTevSwapMode[4] = {
+10 -8
View File
@@ -14,23 +14,25 @@ void J3DTexture::loadGX(u16 idx, GXTexMapID texMapID) const {
if (!timg->palettesEnabled) {
GXInitTexObj(&texObj, ((u8*)timg) + timg->texDataOffset, timg->width, timg->height,
(GXTexFmt)timg->format, (GXTexWrapMode)timg->wrapS, (GXTexWrapMode)timg->wrapT,
(GXBool)timg->mipmapEnabled);
(GXTexFmt)timg->format, (GXTexWrapMode)timg->wrapS, (GXTexWrapMode)timg->wrapT,
(GXBool)timg->mipmapEnabled);
} else {
GXTlutObj tlutObj;
GXInitTexObjCI(&texObj, ((u8*)timg) + timg->texDataOffset, timg->width, timg->height,
(GXCITexFmt)timg->format, (GXTexWrapMode)timg->wrapS, (GXTexWrapMode)timg->wrapT,
(GXBool)timg->mipmapEnabled, (u32)texMapID);
GXInitTlutObj(&tlutObj, ((u8*)timg) + timg->paletteOffset, (GXTlutFmt)timg->paletteFormat, timg->paletteCount);
(GXCITexFmt)timg->format, (GXTexWrapMode)timg->wrapS,
(GXTexWrapMode)timg->wrapT, (GXBool)timg->mipmapEnabled, (u32)texMapID);
GXInitTlutObj(&tlutObj, ((u8*)timg) + timg->paletteOffset, (GXTlutFmt)timg->paletteFormat,
timg->paletteCount);
GXLoadTlut(&tlutObj, texMapID);
}
const f32 kLODClampScale = 1.0f / 8.0f;
const f32 kLODBiasScale = 1.0f / 100.0f;
GXInitTexObjLOD(&texObj, (GXTexFilter) timg->minFilter, (GXTexFilter) timg->magFilter,
timg->minLOD * kLODClampScale, timg->maxLOD * kLODClampScale, timg->LODBias * kLODBiasScale,
(GXBool) timg->biasClamp, (GXBool) timg->doEdgeLOD, (GXAnisotropy) timg->maxAnisotropy);
GXInitTexObjLOD(&texObj, (GXTexFilter)timg->minFilter, (GXTexFilter)timg->magFilter,
timg->minLOD * kLODClampScale, timg->maxLOD * kLODClampScale,
timg->LODBias * kLODBiasScale, (GXBool)timg->biasClamp, (GXBool)timg->doEdgeLOD,
(GXAnisotropy)timg->maxAnisotropy);
GXLoadTexObj(&texObj, texMapID);
}