mirror of
https://github.com/projectPiki/pikmin2.git
synced 2024-11-27 07:10:42 +00:00
Link GXDisplayList.c
This commit is contained in:
parent
4404740aef
commit
6bb6ca9855
@ -1,35 +0,0 @@
|
||||
.include "macros.inc"
|
||||
|
||||
.section .text, "ax" # 0x800056C0 - 0x80472F00
|
||||
.fn GXCallDisplayList, global
|
||||
/* 800E93D8 000E6318 7C 08 02 A6 */ mflr r0
|
||||
/* 800E93DC 000E631C 90 01 00 04 */ stw r0, 4(r1)
|
||||
/* 800E93E0 000E6320 94 21 FF E8 */ stwu r1, -0x18(r1)
|
||||
/* 800E93E4 000E6324 93 E1 00 14 */ stw r31, 0x14(r1)
|
||||
/* 800E93E8 000E6328 3B E4 00 00 */ addi r31, r4, 0
|
||||
/* 800E93EC 000E632C 93 C1 00 10 */ stw r30, 0x10(r1)
|
||||
/* 800E93F0 000E6330 3B C3 00 00 */ addi r30, r3, 0
|
||||
/* 800E93F4 000E6334 80 A2 92 90 */ lwz r5, __GXData@sda21(r2)
|
||||
/* 800E93F8 000E6338 80 05 05 AC */ lwz r0, 0x5ac(r5)
|
||||
/* 800E93FC 000E633C 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 800E9400 000E6340 41 82 00 08 */ beq .L_800E9408
|
||||
/* 800E9404 000E6344 4B FF C5 05 */ bl __GXSetDirtyState
|
||||
.L_800E9408:
|
||||
/* 800E9408 000E6348 80 62 92 90 */ lwz r3, __GXData@sda21(r2)
|
||||
/* 800E940C 000E634C 80 03 00 00 */ lwz r0, 0(r3)
|
||||
/* 800E9410 000E6350 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 800E9414 000E6354 40 82 00 08 */ bne .L_800E941C
|
||||
/* 800E9418 000E6358 4B FF C6 41 */ bl __GXSendFlushPrim
|
||||
.L_800E941C:
|
||||
/* 800E941C 000E635C 38 00 00 40 */ li r0, 0x40
|
||||
/* 800E9420 000E6360 3C 60 CC 01 */ lis r3, 0xCC008000@ha
|
||||
/* 800E9424 000E6364 98 03 80 00 */ stb r0, 0xCC008000@l(r3)
|
||||
/* 800E9428 000E6368 93 C3 80 00 */ stw r30, 0xCC008000@l(r3)
|
||||
/* 800E942C 000E636C 93 E3 80 00 */ stw r31, 0xCC008000@l(r3)
|
||||
/* 800E9430 000E6370 80 01 00 1C */ lwz r0, 0x1c(r1)
|
||||
/* 800E9434 000E6374 83 E1 00 14 */ lwz r31, 0x14(r1)
|
||||
/* 800E9438 000E6378 83 C1 00 10 */ lwz r30, 0x10(r1)
|
||||
/* 800E943C 000E637C 38 21 00 18 */ addi r1, r1, 0x18
|
||||
/* 800E9440 000E6380 7C 08 03 A6 */ mtlr r0
|
||||
/* 800E9444 000E6384 4E 80 00 20 */ blr
|
||||
.endfn GXCallDisplayList
|
@ -710,7 +710,7 @@ LIBS = [
|
||||
["Dolphin/gx/GXBump", True],
|
||||
"Dolphin/gx/GXTev",
|
||||
"Dolphin/gx/GXPixel",
|
||||
"Dolphin/gx/GXDisplayList",
|
||||
["Dolphin/gx/GXDisplayList", True],
|
||||
"Dolphin/gx/GXTransform",
|
||||
"Dolphin/gx/GXPerf",
|
||||
],
|
||||
|
@ -19,17 +19,15 @@
|
||||
### <section id="Dolphin">Dolphin</section>
|
||||
| File | Size (bytes) | File | Size (bytes) |
|
||||
| ---- | ---- | ---- | ---- |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/TRK_MINNOW_DOLPHIN/targsupp.c">TRK_MINNOW_DOLPHIN/targsupp.c</a> | 326 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/gx/GXDisplayList.c">gx/GXDisplayList.c</a> | 583 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/Runtime/__init_cpp_exceptions.cpp">Runtime/__init_cpp_exceptions.cpp</a> | 684 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/Runtime/global_destructor_chain.c">Runtime/global_destructor_chain.c</a> | 965 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/mtx/mtxvec.c">mtx/mtxvec.c</a> | 3122 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/TRK_MINNOW_DOLPHIN/mslsupp.c">TRK_MINNOW_DOLPHIN/mslsupp.c</a> | 4555 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/TRK_MINNOW_DOLPHIN/CircleBuffer.c">TRK_MINNOW_DOLPHIN/CircleBuffer.c</a> | 4715 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/TRK_MINNOW_DOLPHIN/serpoll.c">TRK_MINNOW_DOLPHIN/serpoll.c</a> | 4793 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c">TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c</a> | 5554 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/mtx/mtx44.c">mtx/mtx44.c</a> | 5987 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/os/OSReboot.c">os/OSReboot.c</a> | 6397 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/gx/GXGeometry.c">gx/GXGeometry.c</a> | 6983 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c">TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c</a> | 10320 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/exi/EXIUart.c">exi/EXIUart.c</a> | 10329 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/TRK_MINNOW_DOLPHIN/dolphin_trk.c">TRK_MINNOW_DOLPHIN/dolphin_trk.c</a> | 11230 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/TRK_MINNOW_DOLPHIN/support.c">TRK_MINNOW_DOLPHIN/support.c</a> | 12046 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/gx/GXTransform.c">gx/GXTransform.c</a> | 12379 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/gx/GXLight.c">gx/GXLight.c</a> | 14151 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/gx/GXTev.c">gx/GXTev.c</a> | 14624 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/gx/GXPixel.c">gx/GXPixel.c</a> | 15806 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/gx/GXPerf.c">gx/GXPerf.c</a> | 17304 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/TRK_MINNOW_DOLPHIN/targsupp.c">TRK_MINNOW_DOLPHIN/targsupp.c</a> | 326 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/Runtime/__init_cpp_exceptions.cpp">Runtime/__init_cpp_exceptions.cpp</a> | 684 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/Runtime/global_destructor_chain.c">Runtime/global_destructor_chain.c</a> | 965 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/mtx/mtxvec.c">mtx/mtxvec.c</a> | 3122 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/TRK_MINNOW_DOLPHIN/mslsupp.c">TRK_MINNOW_DOLPHIN/mslsupp.c</a> | 4555 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/TRK_MINNOW_DOLPHIN/CircleBuffer.c">TRK_MINNOW_DOLPHIN/CircleBuffer.c</a> | 4715 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/TRK_MINNOW_DOLPHIN/serpoll.c">TRK_MINNOW_DOLPHIN/serpoll.c</a> | 4793 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c">TRK_MINNOW_DOLPHIN/mpc_7xx_603e.c</a> | 5554 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/mtx/mtx44.c">mtx/mtx44.c</a> | 5987 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/os/OSReboot.c">os/OSReboot.c</a> | 6397 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/gx/GXGeometry.c">gx/GXGeometry.c</a> | 6983 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c">TRK_MINNOW_DOLPHIN/dolphin_trk_glue.c</a> | 10320 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/exi/EXIUart.c">exi/EXIUart.c</a> | 10329 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/TRK_MINNOW_DOLPHIN/dolphin_trk.c">TRK_MINNOW_DOLPHIN/dolphin_trk.c</a> | 11230 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/TRK_MINNOW_DOLPHIN/support.c">TRK_MINNOW_DOLPHIN/support.c</a> | 12046 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/gx/GXTransform.c">gx/GXTransform.c</a> | 12379 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/gx/GXLight.c">gx/GXLight.c</a> | 14151 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/Dolphin/gx/GXTev.c">gx/GXTev.c</a> | 14624 |
|
||||
|
||||
### <section id="JSystem">JSystem</section>
|
||||
| File | Size (bytes) | File | Size (bytes) |
|
||||
@ -90,7 +88,7 @@
|
||||
| ---- | ---- | ---- | ---- |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKandoU/aiTeki.cpp">aiTeki.cpp</a> | 5858 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKandoU/pelletNumber.cpp">pelletNumber.cpp</a> | 6199 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKandoU/gamePelletList.cpp">gamePelletList.cpp</a> | 8282 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKandoU/mapMgrTraceMove.cpp">mapMgrTraceMove.cpp</a> | 9030 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKandoU/cellIterator.cpp">cellIterator.cpp</a> | 9434 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKandoU/itemHole.cpp">itemHole.cpp</a> | 11716 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKandoU/cellIterator.cpp">cellIterator.cpp</a> | 9434 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKandoU/itemHole.cpp">itemHole.cpp</a> | 11712 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKandoU/itemBigFountain.cpp">itemBigFountain.cpp</a> | 12679 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKandoU/aiRescue.cpp">aiRescue.cpp</a> | 13908 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKandoU/texCaster.cpp">texCaster.cpp</a> | 13913 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKandoU/aiBreakGate.cpp">aiBreakGate.cpp</a> | 13918 |
|
||||
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKandoU/flockMgr.cpp">flockMgr.cpp</a> | 14542 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKandoU/naviWhistle.cpp">naviWhistle.cpp</a> | 16714 |
|
||||
|
@ -52,7 +52,10 @@ typedef union _ControlRegister {
|
||||
// size: 0x5B0
|
||||
// Wish we could steal names from SMG1 decomp, but GXData is bigger there.
|
||||
typedef struct _GXData {
|
||||
u16 _000[2]; // _000
|
||||
union {
|
||||
s16 s[2];
|
||||
u32 w;
|
||||
} _000; // _000
|
||||
u8 _004[4]; // _004
|
||||
ControlRegister controlRegister; // _008
|
||||
u32 _00C; // _00C, probably CPStatus
|
||||
@ -204,7 +207,7 @@ static inline void GXSetWasteFlags()
|
||||
{
|
||||
GXData* data = __GXData;
|
||||
data->_5AC |= 0x3;
|
||||
data->_000[1] = 0;
|
||||
data->_000.s[1] = 0;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////
|
||||
|
@ -24,9 +24,9 @@ void GXSetTevIndirect(GXTevStageID tevStage, GXIndTexStageID texStage, GXIndTexF
|
||||
GX_BITFIELD_SET(field, 11, 1, addPrev);
|
||||
GX_BITFIELD_SET(field, 0, 8, stage);
|
||||
|
||||
GXWGFifo.u8 = 0x61;
|
||||
GXWGFifo.s32 = field;
|
||||
__GXData->_000[1] = 0;
|
||||
GXWGFifo.u8 = 0x61;
|
||||
GXWGFifo.s32 = field;
|
||||
__GXData->_000.s[1] = 0;
|
||||
}
|
||||
|
||||
/*
|
||||
@ -89,7 +89,7 @@ void GXSetIndTexMtx(GXIndTexMtxID id, const Mtx23 mtx, s8 scale_exp)
|
||||
GXWGFifo.u8 = 0x61;
|
||||
GXWGFifo.s32 = field;
|
||||
|
||||
__GXData->_000[1] = 0;
|
||||
__GXData->_000.s[1] = 0;
|
||||
}
|
||||
|
||||
/*
|
||||
@ -136,7 +136,7 @@ void GXSetIndTexCoordScale(GXIndTexStageID stage, GXIndTexScale scaleS, GXIndTex
|
||||
break;
|
||||
}
|
||||
|
||||
__GXData->_000[1] = 0;
|
||||
__GXData->_000.s[1] = 0;
|
||||
}
|
||||
|
||||
/*
|
||||
@ -237,9 +237,9 @@ void __GXSetIndirectMask(u32 mask)
|
||||
{
|
||||
GXData* data = __GXData;
|
||||
GX_BITFIELD_SET(data->_124, 24, 8, mask);
|
||||
GXWGFifo.u8 = 0x61;
|
||||
GXWGFifo.s32 = data->_124;
|
||||
data->_000[1] = 0;
|
||||
GXWGFifo.u8 = 0x61;
|
||||
GXWGFifo.s32 = data->_124;
|
||||
data->_000.s[1] = 0;
|
||||
}
|
||||
|
||||
/*
|
||||
@ -249,7 +249,7 @@ void __GXSetIndirectMask(u32 mask)
|
||||
*/
|
||||
void __GXFlushTextureState()
|
||||
{
|
||||
GXWGFifo.u8 = 0x61;
|
||||
GXWGFifo.s32 = __GXData->_124;
|
||||
__GXData->_000[1] = 0;
|
||||
GXWGFifo.u8 = 0x61;
|
||||
GXWGFifo.s32 = __GXData->_124;
|
||||
__GXData->_000.s[1] = 0;
|
||||
}
|
||||
|
@ -1,25 +1,5 @@
|
||||
#include "Dolphin/gx.h"
|
||||
|
||||
/*
|
||||
* --INFO--
|
||||
* Address: ........
|
||||
* Size: 0000CC
|
||||
*/
|
||||
void GXBeginDisplayList(void* dl, u32 dlSize)
|
||||
{
|
||||
// UNUSED FUNCTION
|
||||
}
|
||||
|
||||
/*
|
||||
* --INFO--
|
||||
* Address: ........
|
||||
* Size: 0000C4
|
||||
*/
|
||||
u32 GXEndDisplayList(void)
|
||||
{
|
||||
// UNUSED FUNCTION
|
||||
}
|
||||
|
||||
/*
|
||||
* --INFO--
|
||||
* Address: 800E93D8
|
||||
@ -30,10 +10,10 @@ void GXCallDisplayList(void* dl, u32 byteCnt)
|
||||
if (__GXData->_5AC != 0) {
|
||||
__GXSetDirtyState();
|
||||
}
|
||||
if (__GXData->_000[0] == 0) {
|
||||
if (__GXData->_000.w == 0) {
|
||||
__GXSendFlushPrim();
|
||||
}
|
||||
GXWGFifo.u8 = 0x40;
|
||||
GXWGFifo.u32 = dl;
|
||||
GXWGFifo.u32 = (u32)dl;
|
||||
GXWGFifo.u32 = byteCnt;
|
||||
}
|
||||
|
@ -10,7 +10,7 @@ GX_FILES:=\
|
||||
$(BUILD_DIR)/src/Dolphin/gx/GXBump.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/gx/GXTev.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/gx/GXPixel.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/gx/GXDisplayList.o\
|
||||
$(BUILD_DIR)/src/Dolphin/gx/GXDisplayList.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/gx/GXTransform.o\
|
||||
$(BUILD_DIR)/asm/Dolphin/gx/GXPerf.o\
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user