summaryrefslogtreecommitdiff
path: root/libs/JSystem/J3DGraphBase/J3DShapeDraw.cpp
diff options
context:
space:
mode:
authorTakaRikka <38417346+TakaRikka@users.noreply.github.com>2024-10-10 07:29:58 -0700
committerGitHub <noreply@github.com>2024-10-10 08:29:58 -0600
commit12eb254d769d84743b5cc6cd5424057c57eaf0ad (patch)
tree4509be332b2ccfc6fe939f47740d68f7746eca3e /libs/JSystem/J3DGraphBase/J3DShapeDraw.cpp
parent2fd702c0ac170a789af879b8b92a82d4dcc9080c (diff)
switch to dtk setup (#2203)
* switch to dtk setup * some cleanup / fixes * cleanup d_a_alink literals * Restore doxygen, update CI & README.md (#1) * Fix build image ref (#2) --------- Co-authored-by: Luke Street <luke@street.dev>
Diffstat (limited to 'libs/JSystem/J3DGraphBase/J3DShapeDraw.cpp')
-rw-r--r--libs/JSystem/J3DGraphBase/J3DShapeDraw.cpp105
1 files changed, 0 insertions, 105 deletions
diff --git a/libs/JSystem/J3DGraphBase/J3DShapeDraw.cpp b/libs/JSystem/J3DGraphBase/J3DShapeDraw.cpp
deleted file mode 100644
index a371507f05..0000000000
--- a/libs/JSystem/J3DGraphBase/J3DShapeDraw.cpp
+++ /dev/null
@@ -1,105 +0,0 @@
-//
-// Generated By: dol2asm
-// Translation Unit: J3DShapeDraw
-//
-
-#include "JSystem/J3DGraphBase/J3DShapeDraw.h"
-#include "string.h"
-#include "dolphin/gx.h"
-#include "dolphin/os/OSCache.h"
-#include "global.h"
-
-//
-// External References:
-//
-
-extern "C" void countVertex__12J3DShapeDrawFUl();
-extern "C" void* __nwa__FUli();
-extern "C" void __dl__FPv();
-extern "C" void _savegpr_18();
-extern "C" void _restgpr_18();
-
-/* 80314924-80314974 30F264 0050+00 1/1 0/0 0/0 .text countVertex__12J3DShapeDrawFUl */
-u32 J3DShapeDraw::countVertex(u32 stride) {
- u32 count = 0;
- u32 dlStart = (u32)getDisplayList();
- for (u8* dl = (u8*)dlStart; ((u32)dl - dlStart) < getDisplayListSize();) {
- if (*dl != GX_TRIANGLEFAN && *dl != GX_TRIANGLESTRIP)
- break;
- u16 vtxNum = *((u16*)(dl + 1));
- count += vtxNum;
- dl += stride * vtxNum;
- dl += 3;
- }
- return count;
-}
-
-#ifdef NONMATCHING
-/* 80314974-80314ABC 30F2B4 0148+00 0/0 1/1 0/0 .text addTexMtxIndexInDL__12J3DShapeDrawFUlUlUl */
-void J3DShapeDraw::addTexMtxIndexInDL(u32 stride, u32 attrOffs, u32 valueBase) {
- u32 byteNum = countVertex(stride);
- u32 newSize = ALIGN_NEXT(mDisplayListSize + byteNum, 0x20);
- u8* newDLStart = new (0x20) u8[newSize];
- u8* oldDLStart = getDisplayList();
- u8* oldDL = oldDLStart;
- u8* newDL = newDLStart;
- for (; (oldDL - oldDLStart) < mDisplayListSize;) {
- // Copy command
- u8 h = *oldDL;
- *newDL++ = h;
-
- if (h != GX_TRIANGLEFAN && h != GX_TRIANGLESTRIP)
- break;
-
- // Copy count
- // regalloc (I suspect there's a way to shove this in a u16 temp without an mr)
- u32 vtxNum = *((u16*)(oldDL + 1));
- *((u16*)newDL) = vtxNum;
- newDL += 2;
-
- for (s32 i = 0; i < (u16)vtxNum; i++) {
- // mul arg swap
- u8* oldDLVtx = (&oldDL[stride * i + 3]);
- u8 pnmtxidx = *oldDLVtx;
- memcpy(newDL, oldDLVtx, attrOffs);
- u8* newDL1 = &newDL[attrOffs];
- *newDL1++ = valueBase + pnmtxidx;
- memcpy(newDL1, oldDLVtx + attrOffs, stride - attrOffs);
- newDL = newDL1 + (stride - attrOffs);
- }
-
- oldDL += stride * vtxNum;
- oldDL += 3;
- }
-
- u32 realSize = ALIGN_NEXT((u32)newDL - (u32)newDLStart, 0x20);
- for (; (newDL - newDLStart) < newSize; newDL++)
- *newDL = 0;
- mDisplayListSize = realSize;
- mDisplayList = newDLStart;
- DCStoreRange(newDLStart, mDisplayListSize);
-}
-#else
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void J3DShapeDraw::addTexMtxIndexInDL(u32 param_0, u32 param_1, u32 param_2) {
- nofralloc
-#include "asm/JSystem/J3DGraphBase/J3DShapeDraw/addTexMtxIndexInDL__12J3DShapeDrawFUlUlUl.s"
-}
-#pragma pop
-#endif
-
-/* 80314ABC-80314AD4 30F3FC 0018+00 0/0 1/1 0/0 .text __ct__12J3DShapeDrawFPCUcUl */
-J3DShapeDraw::J3DShapeDraw(u8 const* displayList, u32 displayListSize) {
- mDisplayList = (void*)displayList;
- mDisplayListSize = displayListSize;
-}
-
-/* 80314AD4-80314B00 30F414 002C+00 0/0 3/3 0/0 .text draw__12J3DShapeDrawCFv */
-void J3DShapeDraw::draw() const {
- GXCallDisplayList(mDisplayList, mDisplayListSize);
-}
-
-/* 80314B00-80314B48 30F440 0048+00 1/0 0/0 0/0 .text __dt__12J3DShapeDrawFv */
-J3DShapeDraw::~J3DShapeDraw() {}