Attempt to decompile getEffectiveSlowMotion and decompile debugGetSlowMotion
This commit is contained in:
parent
34878f8416
commit
da8b0fc013
3
ld/pd.ld
3
ld/pd.ld
|
|
@ -9,6 +9,9 @@ SECTIONS
|
|||
_gamedataSegmentRomStart = 0x39850;
|
||||
_inflateSegmentRomStart = 0x4e850;
|
||||
_ziplistSegmentRomStart = 0x4fc40;
|
||||
_rspMicrocodeStart = 0x80059fe0;
|
||||
_rspMicrocodeStartPlusOne = 0x80059fe1;
|
||||
_rspMicrocodeEnd = 0x8005afe0;
|
||||
|
||||
_antipiracyUncloakWriteAddress = 0x7002a324;
|
||||
|
||||
|
|
|
|||
|
|
@ -6435,7 +6435,7 @@ glabel func0f023098
|
|||
.L0f024034:
|
||||
/* f024034: afa30124 */ sw $v1,0x124($sp)
|
||||
/* f024038: afa60110 */ sw $a2,0x110($sp)
|
||||
/* f02403c: 0fc47b9c */ jal func0f11ee70
|
||||
/* f02403c: 0fc47b9c */ jal debugGetSlowMotion
|
||||
/* f024040: e7b00114 */ swc1 $f16,0x114($sp)
|
||||
/* f024044: 8fa30124 */ lw $v1,0x124($sp)
|
||||
/* f024048: 8fa60110 */ lw $a2,0x110($sp)
|
||||
|
|
|
|||
|
|
@ -22646,7 +22646,7 @@ glabel func0f0abad0
|
|||
/* f0abafc: 8c680464 */ lw $t0,0x464($v1)
|
||||
/* f0abb00: 5500001b */ bnezl $t0,.L0f0abb70
|
||||
/* f0abb04: 8fbf0024 */ lw $ra,0x24($sp)
|
||||
/* f0abb08: 0fc5ae15 */ jal func0f16b854
|
||||
/* f0abb08: 0fc5ae15 */ jal getEffectiveSlowMotion
|
||||
/* f0abb0c: 00000000 */ sll $zero,$zero,0x0
|
||||
/* f0abb10: 10400003 */ beqz $v0,.L0f0abb20
|
||||
/* f0abb14: 3c048009 */ lui $a0,0x8009
|
||||
|
|
@ -22700,7 +22700,7 @@ GLOBAL_ASM(
|
|||
glabel func0f0abba8
|
||||
/* f0abba8: 27bdffe8 */ addiu $sp,$sp,-24
|
||||
/* f0abbac: afbf0014 */ sw $ra,0x14($sp)
|
||||
/* f0abbb0: 0fc5ae15 */ jal func0f16b854
|
||||
/* f0abbb0: 0fc5ae15 */ jal getEffectiveSlowMotion
|
||||
/* f0abbb4: 00000000 */ sll $zero,$zero,0x0
|
||||
/* f0abbb8: 10400005 */ beqz $v0,.L0f0abbd0
|
||||
/* f0abbbc: 00000000 */ sll $zero,$zero,0x0
|
||||
|
|
@ -22722,7 +22722,7 @@ GLOBAL_ASM(
|
|||
glabel func0f0abbe8
|
||||
/* f0abbe8: 27bdffe8 */ addiu $sp,$sp,-24
|
||||
/* f0abbec: afbf0014 */ sw $ra,0x14($sp)
|
||||
/* f0abbf0: 0fc5ae15 */ jal func0f16b854
|
||||
/* f0abbf0: 0fc5ae15 */ jal getEffectiveSlowMotion
|
||||
/* f0abbf4: 00000000 */ sll $zero,$zero,0x0
|
||||
/* f0abbf8: 10400005 */ beqz $v0,.L0f0abc10
|
||||
/* f0abbfc: 00000000 */ sll $zero,$zero,0x0
|
||||
|
|
|
|||
|
|
@ -313,10 +313,13 @@ glabel func0f11ee40
|
|||
/* f11ee6c: 00001025 */ or $v0,$zero,$zero
|
||||
);
|
||||
|
||||
u32 debugGetSlowMotion(void)
|
||||
{
|
||||
return SLOWMOTION_OFF;
|
||||
}
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel func0f11ee70
|
||||
/* f11ee70: 03e00008 */ jr $ra
|
||||
/* f11ee74: 00001025 */ or $v0,$zero,$zero
|
||||
glabel func0f11ee78
|
||||
/* f11ee78: 03e00008 */ jr $ra
|
||||
/* f11ee7c: 00001025 */ or $v0,$zero,$zero
|
||||
/* f11ee80: 03e00008 */ jr $ra
|
||||
|
|
|
|||
|
|
@ -261,7 +261,7 @@ glabel func0f167c88
|
|||
/* f167cd4: 0005782b */ sltu $t7,$zero,$a1
|
||||
/* f167cd8: 11e0000a */ beqz $t7,.L0f167d04
|
||||
/* f167cdc: 01e02825 */ or $a1,$t7,$zero
|
||||
/* f167ce0: 0fc5ae15 */ jal func0f16b854
|
||||
/* f167ce0: 0fc5ae15 */ jal getEffectiveSlowMotion
|
||||
/* f167ce4: 00000000 */ sll $zero,$zero,0x0
|
||||
/* f167ce8: 2c450001 */ sltiu $a1,$v0,0x1
|
||||
/* f167cec: 10a00005 */ beqz $a1,.L0f167d04
|
||||
|
|
@ -3308,7 +3308,7 @@ glabel func0f169374
|
|||
/* f16a900: 8e790464 */ lw $t9,0x464($s3)
|
||||
/* f16a904: 57200015 */ bnezl $t9,.L0f16a95c
|
||||
/* f16a908: 2861000f */ slti $at,$v1,0xf
|
||||
/* f16a90c: 0fc5ae15 */ jal func0f16b854
|
||||
/* f16a90c: 0fc5ae15 */ jal getEffectiveSlowMotion
|
||||
/* f16a910: 00000000 */ sll $zero,$zero,0x0
|
||||
/* f16a914: 10400003 */ beqz $v0,.L0f16a924
|
||||
/* f16a918: 3c048009 */ lui $a0,0x8009
|
||||
|
|
@ -4361,7 +4361,7 @@ glabel func0f16b810
|
|||
);
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel func0f16b854
|
||||
glabel getEffectiveSlowMotion
|
||||
/* f16b854: 27bdffd0 */ addiu $sp,$sp,-48
|
||||
/* f16b858: afbf0014 */ sw $ra,0x14($sp)
|
||||
/* f16b85c: 3c04b000 */ lui $a0,0xb000
|
||||
|
|
@ -4418,7 +4418,7 @@ glabel func0f16b854
|
|||
/* f16b918: 10000010 */ beqz $zero,.L0f16b95c
|
||||
/* f16b91c: 24020001 */ addiu $v0,$zero,0x1
|
||||
.L0f16b920:
|
||||
/* f16b920: 0fc47b9c */ jal func0f11ee70
|
||||
/* f16b920: 0fc47b9c */ jal debugGetSlowMotion
|
||||
/* f16b924: 00000000 */ sll $zero,$zero,0x0
|
||||
/* f16b928: 24010001 */ addiu $at,$zero,0x1
|
||||
/* f16b92c: 14410003 */ bne $v0,$at,.L0f16b93c
|
||||
|
|
@ -4426,7 +4426,7 @@ glabel func0f16b854
|
|||
/* f16b934: 10000009 */ beqz $zero,.L0f16b95c
|
||||
/* f16b938: 24020001 */ addiu $v0,$zero,0x1
|
||||
.L0f16b93c:
|
||||
/* f16b93c: 0fc47b9c */ jal func0f11ee70
|
||||
/* f16b93c: 0fc47b9c */ jal debugGetSlowMotion
|
||||
/* f16b940: 00000000 */ sll $zero,$zero,0x0
|
||||
/* f16b944: 24010002 */ addiu $at,$zero,0x2
|
||||
/* f16b948: 54410004 */ bnel $v0,$at,.L0f16b95c
|
||||
|
|
@ -4441,6 +4441,52 @@ glabel func0f16b854
|
|||
/* f16b968: 00000000 */ sll $zero,$zero,0x0
|
||||
);
|
||||
|
||||
// Can't match the antipiracy part
|
||||
//u32 getEffectiveSlowMotion(void)
|
||||
//{
|
||||
//#if PIRACYCHECKS
|
||||
// u32 salt = func0f16b800(0xb000de8d);
|
||||
// u32 actual;
|
||||
// u32 expected = func0f16b800(0x1741d42a);
|
||||
// func0004e650(salt, &actual);
|
||||
//
|
||||
// if (actual != expected) {
|
||||
// extern u32 _rspMicrocodeStart;
|
||||
// extern u32 _rspMicrocodeStartPlusOne;
|
||||
// u32 *ptr = &_rspMicrocodeStart;
|
||||
// u32 *end = &ptr[1024];
|
||||
//
|
||||
// if (!(end < &_rspMicrocodeStartPlusOne)) {
|
||||
// do {
|
||||
// *ptr += 8;
|
||||
// ptr++;
|
||||
// } while (ptr < end);
|
||||
// }
|
||||
// }
|
||||
//#endif
|
||||
//
|
||||
// if (g_Vars.normmplayerisrunning) {
|
||||
// if (g_MpSetup.options & MPOPTION_SLOWMOTION_ON) {
|
||||
// return SLOWMOTION_ON;
|
||||
// }
|
||||
// if (g_MpSetup.options & MPOPTION_SLOWMOTION_SMART) {
|
||||
// return SLOWMOTION_SMART;
|
||||
// }
|
||||
// } else {
|
||||
// if (cheatIsActive(CHEAT_SLOMO)) {
|
||||
// return SLOWMOTION_ON;
|
||||
// }
|
||||
// if (debugGetSlowMotion() == SLOWMOTION_ON) {
|
||||
// return SLOWMOTION_ON;
|
||||
// }
|
||||
// if (debugGetSlowMotion() == SLOWMOTION_SMART) {
|
||||
// return SLOWMOTION_SMART;
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// return SLOWMOTION_OFF;
|
||||
//}
|
||||
|
||||
GLOBAL_ASM(
|
||||
glabel func0f16b96c
|
||||
/* f16b96c: 27bdfd70 */ addiu $sp,$sp,-656
|
||||
|
|
@ -4664,7 +4710,7 @@ glabel func0f16b96c
|
|||
/* f16bc68: 100000d4 */ beqz $zero,.L0f16bfbc
|
||||
/* f16bc6c: 8e830034 */ lw $v1,0x34($s4)
|
||||
.L0f16bc70:
|
||||
/* f16bc70: 0fc5ae15 */ jal func0f16b854
|
||||
/* f16bc70: 0fc5ae15 */ jal getEffectiveSlowMotion
|
||||
/* f16bc74: 00000000 */ sll $zero,$zero,0x0
|
||||
/* f16bc78: 8e8f0040 */ lw $t7,0x40($s4)
|
||||
/* f16bc7c: 24010002 */ addiu $at,$zero,0x2
|
||||
|
|
|
|||
|
|
@ -1139,6 +1139,9 @@
|
|||
#define MPOPTION_NOAUTOAIM 0x00000008
|
||||
#define MPOPTION_NOPLAYERHIGHLIGHT 0x00000010
|
||||
#define MPOPTION_NOPICKUPHIGHLIGHT 0x00000020
|
||||
#define MPOPTION_SLOWMOTION_ON 0x00000040
|
||||
#define MPOPTION_SLOWMOTION_SMART 0x00000080
|
||||
#define MPOPTION_NOPICKUPHIGHLIGHT 0x00000020
|
||||
#define MPOPTION_FASTMOVEMENT 0x00000100
|
||||
#define MPOPTION_KILLSSCORE 0x00000400
|
||||
#define MPOPTION_HIGHLIGHTBRIEFCASE 0x00000800
|
||||
|
|
@ -1656,6 +1659,10 @@
|
|||
#define SKJUMPSTATE_TAKEOFF 0
|
||||
#define SKJUMPSTATE_AIRBORNE 1
|
||||
|
||||
#define SLOWMOTION_OFF 0
|
||||
#define SLOWMOTION_ON 1
|
||||
#define SLOWMOTION_SMART 2
|
||||
|
||||
#define SMOKETYPE_0 0
|
||||
#define SMOKETYPE_1 1
|
||||
#define SMOKETYPE_2 2
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ u32 func0f11ee08(void);
|
|||
bool func0f11ee20(void);
|
||||
u32 func0f11ee28(void);
|
||||
u32 func0f11ee40(void);
|
||||
u32 func0f11ee70(void);
|
||||
u32 debugGetSlowMotion(void);
|
||||
bool func0f11ee88(void);
|
||||
u32 func0f11ee90(void);
|
||||
bool func0f11eea8(void);
|
||||
|
|
|
|||
|
|
@ -18,9 +18,9 @@ u32 func0f168f24(void);
|
|||
u32 func0f1691c0(void);
|
||||
u32 func0f169374(void);
|
||||
u32 func0f16b0c8(void);
|
||||
u32 func0f16b800(void);
|
||||
u32 func0f16b800(u32 arg0);
|
||||
u32 func0f16b810(void);
|
||||
u32 func0f16b854(void);
|
||||
u32 getEffectiveSlowMotion(void);
|
||||
u32 func0f16b96c(void);
|
||||
u32 func0f16cb04(void);
|
||||
void func0f16cce4(void);
|
||||
|
|
|
|||
|
|
@ -5,6 +5,6 @@
|
|||
|
||||
u32 func0004e530(void);
|
||||
u32 func0004e640(void);
|
||||
u32 func0004e650(void);
|
||||
void func0004e650(u32 salt, u32 *actual);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Reference in New Issue