diff --git a/asm/JSystem/JUtility/JUTGamePad/stopPatternedRumbleAtThePeriod__Q210JUTGamePad7CRumbleFv.s b/asm/JSystem/JUtility/JUTGamePad/stopPatternedRumbleAtThePeriod__Q210JUTGamePad7CRumbleFv.s deleted file mode 100644 index 0216551b3ed..00000000000 --- a/asm/JSystem/JUtility/JUTGamePad/stopPatternedRumbleAtThePeriod__Q210JUTGamePad7CRumbleFv.s +++ /dev/null @@ -1,10 +0,0 @@ -lbl_802E1978: -/* 802E1978 80 A3 00 0C */ lwz r5, 0xc(r3) -/* 802E197C 80 83 00 00 */ lwz r4, 0(r3) -/* 802E1980 38 05 FF FF */ addi r0, r5, -1 -/* 802E1984 7C 84 02 14 */ add r4, r4, r0 -/* 802E1988 7C 04 2B 96 */ divwu r0, r4, r5 -/* 802E198C 7C 00 29 D6 */ mullw r0, r0, r5 -/* 802E1990 7C 00 20 50 */ subf r0, r0, r4 -/* 802E1994 90 03 00 04 */ stw r0, 4(r3) -/* 802E1998 4E 80 00 20 */ blr diff --git a/libs/JSystem/JUtility/JUTGamePad.cpp b/libs/JSystem/JUtility/JUTGamePad.cpp index d15a97f7185..ef631a7283b 100644 --- a/libs/JSystem/JUtility/JUTGamePad.cpp +++ b/libs/JSystem/JUtility/JUTGamePad.cpp @@ -727,25 +727,9 @@ void JUTGamePad::CRumble::stopPatternedRumble(s16 port) { /* 802E1978-802E199C 2DC2B8 0024+00 0/0 1/1 0/0 .text * stopPatternedRumbleAtThePeriod__Q210JUTGamePad7CRumbleFv */ -// r4 += (r5 - 1) is broken to r4 += r5 and r4 += 1 -#ifdef NONMATCHING void JUTGamePad::CRumble::stopPatternedRumbleAtThePeriod() { - u32 r5 = field_0xc; - u32 r4 = field_0x0; - r4 += (r5 - 1); - u32 temp = r4 / r5; - field_0x4 = r4 - temp * r5; + field_0x4 = (field_0x0 + field_0xc - 1) % field_0xc; } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void JUTGamePad::CRumble::stopPatternedRumbleAtThePeriod() { - nofralloc -#include "asm/JSystem/JUtility/JUTGamePad/stopPatternedRumbleAtThePeriod__Q210JUTGamePad7CRumbleFv.s" -} -#pragma pop -#endif /* 802E199C-802E19D8 2DC2DC 003C+00 1/1 1/1 0/0 .text getGamePad__10JUTGamePadFi */ JUTGamePad* JUTGamePad::getGamePad(int padNo) {