match JUTGamePad

This commit is contained in:
LagoLunatic
2023-12-05 15:30:54 -05:00
parent e487b46850
commit 2a16e36f46
4 changed files with 38 additions and 19 deletions
-3
View File
@@ -368,10 +368,8 @@ static void dummy3() {
/* 802CB380-802CB4C4 .text appendConsole__17JUTConsoleManagerFP10JUTConsole */
void JUTConsoleManager::appendConsole(JUTConsole* console) {
/* Nonmatching */
JUT_ASSERT(0x3bf, sManager != 0 && console != 0);
// need to figure out how TLinkList works
JUT_ASSERT(0x3c2, soLink_.Find( console ) == soLink_.end());
soLink_.Push_back(console);
@@ -382,7 +380,6 @@ void JUTConsoleManager::appendConsole(JUTConsole* console) {
/* 802CB4C4-802CB674 .text removeConsole__17JUTConsoleManagerFP10JUTConsole */
void JUTConsoleManager::removeConsole(JUTConsole* console) {
/* Nonmatching */
JUT_ASSERT(0x3d6, sManager != 0 && console != 0);
JUT_ASSERT(0x3d9, soLink_.Find( console ) != soLink_.end());
+17 -7
View File
@@ -397,14 +397,9 @@ void JUTGamePad::CRumble::stopMotorHard(int portNo) {
}
}
inline u8 getNumBit(u8* arr, u32 bitNo) {
u8 bit = (arr[bitNo >> 3] & (0x80 >> (bitNo & 7)));
return bit;
}
/* 802C45A4-802C46CC .text update__Q210JUTGamePad7CRumbleFs */
void JUTGamePad::CRumble::update(s16 portNo) {
if (!isEnabledPort(portNo)) {
if (!isEnabled(channel_mask[portNo])) {
mFrame = 0;
mLength = 0;
mData = NULL;
@@ -424,7 +419,8 @@ void JUTGamePad::CRumble::update(s16 portNo) {
}
return;
} else {
u8 numBit = getNumBit(mData, mFrame % mFrameCount);
u32 bitNo = mFrame % mFrameCount;
u8 numBit = (mData[bitNo >> 3] & (0x80 >> (bitNo & 7)));
if (numBit != 0 && mStatus[portNo] == 0) {
startMotor(portNo);
} else if (numBit == 0 && mStatus[portNo] != 0) {
@@ -522,3 +518,17 @@ bool JUTGamePad::recalibrate(u32 mask) {
return PADRecalibrate((PADMask)mask);
}
static void dummy() {
OSReport("JUTGamePad.cpp");
OSReport("getDataSizePerFrame() > 0");
OSReport("Halt");
OSReport("mBuffer");
OSReport("(u32)mBuffer <= (u32)dataEnd && (u32)dataEnd <= (u32)mBufferEnd");
OSReport("part != 0");
OSReport("getBuffer() == getDataEnd() || part == mPart");
OSReport("JUTGamePad.h");
OSReport("size > 0");
OSReport("mBuffer && isValidData( mCurrent )");
OSReport("mBuffer && isValidBuffer( mCurrent )");
}