summaryrefslogtreecommitdiff
path: root/src/d/d_lib.cpp
diff options
context:
space:
mode:
authorPheenoh <pheenoh@gmail.com>2022-10-15 15:32:34 -0600
committerPheenoh <pheenoh@gmail.com>2022-12-20 16:28:41 -0700
commit85ad8b190d7ad140f63d98d0ce83648a910b8ff0 (patch)
tree0ed9630f3a65c50e6d01b1ff60d47b01d72513df /src/d/d_lib.cpp
parent84950e08b4a525a7d94c5726dbe6d53e6cb53cf1 (diff)
d_a_npc work
daBaseNpc_c::setBckAnm and J3DAnmTransform* daBaseNpc_c daBaseNpc_c::setBtpAnm daBaseNpc_c::attnSttsOn daBaseNpc_c::orderEvent daBaseNpc_c::setEnvTevColor daBaseNpc_c::setRoomNo daBaseNpc_c::checkEndAnm attempt CheckCreateHeap daNpcF_addIdx daNpcF_subIdx daNpcF_incIdx daNpcF_decIdx daNpcF_ActorMngr_c::initialize() daNpcF_ActorMngr_c::entry cleanup daNpcF_ActorMngr_c::entry daNpcF_ActorMngr_c::remove daNpcF_ActorMngr_c::getActorP daNpcF_MatAnm_c::calc attempt daNpcF_SPCurve_c::initialize minor fixes daNpcF_Path_c::initialize daNpcF_Path_c::setPathInfo daNpcF_Path_c::chkPassed daNpcF_Path_c::reverse daNpcF_Path_c::setNextIdx daNpcF_Path_c::getNextIdx daNpcF_Path_c::getBeforeIdx daNpcF_Path_c::getBeforePos daNpcF_Path_c::getNextPos daNpcT_MatAnm_c::initialize daNpcT_MatAnm_c::calc daNpcT_addIdx daNpcT_subIdx daNpcT_decIdx daNpcT_Path_c::hermite daNpcT_Path_c::initialize daNpcT_Path_c::setPathInfo attempt daNpcT_Path_c::setNextPathInfo daNpcT_Path_c::reverse daNpcT_Path_c::setNextIdx daNpcT_Path_c::getDstPos attempt daNpcT_DmgStagger_c::setParam Add FLOAT_LABEL where possible fopEn_enemy / fix e_wb move jasper's jsystem work over d_attention / d_demo / d_lib work remove asm clean up dolphin files / work on some rels (#212) * d_a_alldie / d_a_tboxSw / d_a_tag_gstart / d_a_tag_hstop * dolphin OS work / cleanup * dolphin GX work / cleanup * finish changing dolphin files to C * more files into C * match rest of MSL_C math functions * more dolphin files converted to C * remove asm * d_bg_w work * remove asm * d_a_alink work / kytag14 initial changes to d_a_e_yc checkpoint until virtual destructor issue is solved daNpcF_Lookat_c::adjustMoveDisAngle daBaseNpc_c::setMtx daBaseNpc_moveBgActor_c::daBaseNpc_moveBgActor_c() daNpcT_c::ctrlFaceMotion daNpcT_c::ctrlMsgAnm attempt daNpcT_c::initTalk daNpcF_clearMessageTmpBit daNpcF_getDistTableIdx daNpcF_offTmpBit daNpcF_onTmpBit daNpcF_chkTmpBit daNpcF_onEvtBit daNpcF_chkEvtBit daNpcF_c::getDistTableIdx daNpcF_chkPointInArea daNpcF_chkDoBtnEqSpeak daNpcF_getPlayerInfoFromPlayerList attempt daNpcF_pntVsLineSegmentLengthSquare2D daNpcF_c::chkPointInArea daNpcF_c::chkPointInArea daNpcF_c::getAttentionPos daNpcT_chkTmpBit daNpcT_offTmpBit daNpcT_onTmpBit daNpcT_chkEvtBit daNpcT_offEvtBit daNpcT_onEvtBit daNpcT_chkDoBtnIsSpeak daNpcT_getDistTableIdx daBaseNpc_acMngr_c::entry daNpcF_c::initTalk undo override
Diffstat (limited to 'src/d/d_lib.cpp')
-rw-r--r--src/d/d_lib.cpp54
1 files changed, 23 insertions, 31 deletions
diff --git a/src/d/d_lib.cpp b/src/d/d_lib.cpp
index b9cefd23ee..f2122d1bcf 100644
--- a/src/d/d_lib.cpp
+++ b/src/d/d_lib.cpp
@@ -357,49 +357,41 @@ asm u32 dLib_getExpandSizeFromAramArchive(JKRAramArchive* param_0, char const* p
/* ############################################################################################## */
/* 80450DD8-80450DDC 0002D8 0004+00 2/2 0/0 0/0 .sbss m_diffTime__11dLib_time_c */
-u8 dLib_time_c::m_diffTime[4];
-
-/* 80450DDC-80450DE0 0002DC 0004+00 2/2 0/0 0/0 .sbss None */
-static u8 data_80450DDC[4];
+OSTime dLib_time_c::m_diffTime;
/* 80450DE0-80450DE4 0002E0 0004+00 3/3 0/0 0/0 .sbss m_stopTime__11dLib_time_c */
-u8 dLib_time_c::m_stopTime[4];
-
-/* 80450DE4-80450DE8 0002E4 0004+00 3/3 0/0 0/0 .sbss None */
-static u8 data_80450DE4[4];
+OSTime dLib_time_c::m_stopTime;
/* 80450DE8-80450DF0 0002E8 0008+00 3/3 0/0 0/0 .sbss None */
-static u8 data_80450DE8[8];
+bool dLib_time_c::m_timeStopped;
/* 80032804-80032880 02D144 007C+00 0/0 8/8 0/0 .text getTime__11dLib_time_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void dLib_time_c::getTime() {
- nofralloc
-#include "asm/d/d_lib/getTime__11dLib_time_cFv.s"
+OSTime dLib_time_c::getTime() {
+ if (!m_timeStopped) {
+ return OSGetTime() - m_diffTime;
+ }
+
+ OSTime time = OSGetTime();
+ m_diffTime += (time - m_stopTime);
+ m_stopTime = time;
+ return time - m_diffTime;
}
-#pragma pop
/* 80032880-800328BC 02D1C0 003C+00 0/0 1/1 0/0 .text stopTime__11dLib_time_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void dLib_time_c::stopTime() {
- nofralloc
-#include "asm/d/d_lib/stopTime__11dLib_time_cFv.s"
+void dLib_time_c::stopTime() {
+ if (!m_timeStopped) {
+ m_stopTime = OSGetTime();
+ m_timeStopped = true;
+ }
}
-#pragma pop
/* 800328BC-80032918 02D1FC 005C+00 0/0 1/1 0/0 .text startTime__11dLib_time_cFv */
-#pragma push
-#pragma optimization_level 0
-#pragma optimizewithasm off
-asm void dLib_time_c::startTime() {
- nofralloc
-#include "asm/d/d_lib/startTime__11dLib_time_cFv.s"
+void dLib_time_c::startTime() {
+ if (m_timeStopped) {
+ m_diffTime += OSGetTime() - m_stopTime;
+ m_timeStopped = false;
+ }
}
-#pragma pop
/* ############################################################################################## */
/* 80450DF0-80450DF8 -00001 0008+00 0/0 4/4 0/0 .sbss None */
@@ -408,4 +400,4 @@ asm void dLib_time_c::startTime() {
/* 80450DF2 0001+00 data_80450DF2 None */
/* 80450DF3 0005+00 data_80450DF3 None */
extern u8 struct_80450DF0[8];
-u8 struct_80450DF0[8];
+u8 struct_80450DF0[8] ALIGN_DECL(8);