diff --git a/config/RMCP01/module/splits.txt b/config/RMCP01/module/splits.txt index af8db11..975f64e 100644 --- a/config/RMCP01/module/splits.txt +++ b/config/RMCP01/module/splits.txt @@ -30,7 +30,7 @@ system/KPadController.cpp: .ctors start:0x8088F400 end:0x8088F404 .rodata start:0x8088FCC0 end:0x8088FCD8 -KPadDirector.o: +system/KPadDirector.cpp: .text start:0x805230E0 end:0x80524AC4 .ctors start:0x8088F404 end:0x8088F408 diff --git a/configure.py b/configure.py index c6cee54..cef5b56 100755 --- a/configure.py +++ b/configure.py @@ -776,6 +776,7 @@ def MatchingFor(*versions): Object(NonMatching, "system/CourseMap.cpp"), Object(Matching, "system/DvdArchive.cpp"), Object(NonMatching, "system/GhostFile.cpp"), + Object(NonMatching, "system/KPadDirector.cpp"), Object(NonMatching, "system/KPadController.cpp"), Object(Matching, "system/LocalizedArchive.cpp"), Object(Matching, "system/MultiDvdArchive.cpp"), diff --git a/src/system/KPadDirector.cpp b/src/system/KPadDirector.cpp index d8a72f2..cabbabb 100644 --- a/src/system/KPadDirector.cpp +++ b/src/system/KPadDirector.cpp @@ -1 +1,26 @@ #include "KPadDirector.hpp" + +namespace System { + +void KPadDirector::resetPlayersActivityStatus() { + for (u8 i = 0; i < 4; i++) { + mPlayers[i].mInactivityFrames = 0; + mPlayers[i].mDisconnectedFrames = 0; + } +} + +void KPadDirector::resetMasterController() { + mMaster.setController(&mDummyController, nullptr); +} + +void KPadDirector::resetPlayerController(u8 playerIdx) { + mPlayers[playerIdx].setController(&mDummyController, nullptr); +} + +void KPadDirector::resetPlayerControllers() { + for (u8 i = 0; i < 4; i++) { + mPlayers[i].setController(&mDummyController, nullptr); + } +} + +} // namespace System