From 18b993bd115e25b1a40d3a60dea79fedd4ff2172 Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Thu, 26 Dec 2019 12:10:42 +1000 Subject: [PATCH] Decompile cheatIsEnabled --- src/game/chr/chr.c | 20 +++++------ src/game/chr/chraicommands.c | 8 ++--- src/game/game_000920.c | 4 +-- src/game/game_00b820.c | 4 +-- src/game/game_00c490.c | 4 +-- src/game/game_011110.c | 46 ++++++++++++------------- src/game/game_066310.c | 12 +++---- src/game/game_097a50.c | 8 ++--- src/game/game_0b0420.c | 2 +- src/game/game_0b28d0.c | 14 ++++---- src/game/game_0c37d0.c | 8 ++--- src/game/game_0c79f0.c | 4 +-- src/game/game_106d40.c | 61 ++++++++++++++-------------------- src/game/game_111600.c | 4 +-- src/game/game_11ecf0.c | 2 +- src/game/game_1668e0.c | 2 +- src/game/game_187770.c | 2 +- src/gvars/gvars.c | 4 +-- src/include/constants.h | 2 ++ src/include/game/game_106d40.h | 2 +- src/include/gvars/gvars.h | 4 +-- 21 files changed, 104 insertions(+), 113 deletions(-) diff --git a/src/game/chr/chr.c b/src/game/chr/chr.c index bbdf8b6eb..5032f287d 100644 --- a/src/game/chr/chr.c +++ b/src/game/chr/chr.c @@ -3604,7 +3604,7 @@ glabel func0f020668 /* f02071c: 44812000 */ mtc1 $at,$f4 /* f020720: 24040015 */ addiu $a0,$zero,0x15 /* f020724: ae1900d8 */ sw $t9,0xd8($s0) -/* f020728: 0fc41b99 */ jal func0f106e64 +/* f020728: 0fc41b99 */ jal cheatIsEnabled /* f02072c: e60400dc */ swc1 $f4,0xdc($s0) /* f020730: 10400005 */ beqz $v0,.L0f020748 /* f020734: 8fa60024 */ lw $a2,0x24($sp) @@ -3998,7 +3998,7 @@ glabel func0f020cc8 /* f020d0c: 0fc082c5 */ jal func0f020b14 /* f020d10: afae0014 */ sw $t6,0x14($sp) /* f020d14: 00408025 */ or $s0,$v0,$zero -/* f020d18: 0fc41b99 */ jal func0f106e64 +/* f020d18: 0fc41b99 */ jal cheatIsEnabled /* f020d1c: 2404000c */ addiu $a0,$zero,0xc /* f020d20: 10400003 */ beqz $v0,.L0f020d30 /* f020d24: 3c054100 */ lui $a1,0x4100 @@ -4744,7 +4744,7 @@ glabel func0f02143c /* f021774: afa70158 */ sw $a3,0x158($sp) /* f021778: afa8014c */ sw $t0,0x14c($sp) /* f02177c: afa90144 */ sw $t1,0x144($sp) -/* f021780: 0fc41b99 */ jal func0f106e64 +/* f021780: 0fc41b99 */ jal cheatIsEnabled /* f021784: afaa0148 */ sw $t2,0x148($sp) /* f021788: 8fa50150 */ lw $a1,0x150($sp) /* f02178c: 8fa70158 */ lw $a3,0x158($sp) @@ -7387,7 +7387,7 @@ glabel func0f023098 /* f023d74: 01416825 */ or $t5,$t2,$at /* f023d78: ae0d0014 */ sw $t5,0x14($s0) .L0f023d7c: -/* f023d7c: 0fc41b99 */ jal func0f106e64 +/* f023d7c: 0fc41b99 */ jal cheatIsEnabled /* f023d80: 24040007 */ addiu $a0,$zero,0x7 /* f023d84: 10400004 */ beqz $v0,.L0f023d98 /* f023d88: 3c013ea0 */ lui $at,0x3ea0 @@ -9609,7 +9609,7 @@ glabel func0f025288 /* f025d78: 00000000 */ sll $zero,$zero,0x0 /* f025d7c: afa30058 */ sw $v1,0x58($sp) .L0f025d80: -/* f025d80: 0fc41b99 */ jal func0f106e64 +/* f025d80: 0fc41b99 */ jal cheatIsEnabled /* f025d84: e7a20050 */ swc1 $f2,0x50($sp) /* f025d88: 8fa30058 */ lw $v1,0x58($sp) /* f025d8c: 10400005 */ beqz $v0,.L0f025da4 @@ -17514,7 +17514,7 @@ glabel func0f02ce8c /* f02ced4: e7a80044 */ swc1 $f8,0x44($sp) /* f02ced8: 24040007 */ addiu $a0,$zero,0x7 /* f02cedc: afa2001c */ sw $v0,0x1c($sp) -/* f02cee0: 0fc41b99 */ jal func0f106e64 +/* f02cee0: 0fc41b99 */ jal cheatIsEnabled /* f02cee4: e7aa0040 */ swc1 $f10,0x40($sp) /* f02cee8: 10400005 */ beqz $v0,.L0f02cf00 /* f02ceec: c7b00044 */ lwc1 $f16,0x44($sp) @@ -17672,7 +17672,7 @@ glabel func0f02ce8c .L0f02d130: /* f02d130: 15800013 */ bnez $t4,.L0f02d180 /* f02d134: 00000000 */ sll $zero,$zero,0x0 -/* f02d138: 0fc41b99 */ jal func0f106e64 +/* f02d138: 0fc41b99 */ jal cheatIsEnabled /* f02d13c: 2404000b */ addiu $a0,$zero,0xb /* f02d140: 10400005 */ beqz $v0,.L0f02d158 /* f02d144: c7a40044 */ lwc1 $f4,0x44($sp) @@ -17681,7 +17681,7 @@ glabel func0f02ce8c /* f02d150: 46062282 */ mul.s $f10,$f4,$f6 /* f02d154: e7aa0044 */ swc1 $f10,0x44($sp) .L0f02d158: -/* f02d158: 0fc41b99 */ jal func0f106e64 +/* f02d158: 0fc41b99 */ jal cheatIsEnabled /* f02d15c: 24040007 */ addiu $a0,$zero,0x7 /* f02d160: 10400033 */ beqz $v0,.L0f02d230 /* f02d164: c7b00044 */ lwc1 $f16,0x44($sp) @@ -17692,7 +17692,7 @@ glabel func0f02ce8c /* f02d178: 1000002d */ beqz $zero,.L0f02d230 /* f02d17c: e7b20044 */ swc1 $f18,0x44($sp) .L0f02d180: -/* f02d180: 0fc41b99 */ jal func0f106e64 +/* f02d180: 0fc41b99 */ jal cheatIsEnabled /* f02d184: 2404000a */ addiu $a0,$zero,0xa /* f02d188: 10400029 */ beqz $v0,.L0f02d230 /* f02d18c: c7a40044 */ lwc1 $f4,0x44($sp) @@ -18292,7 +18292,7 @@ glabel func0f02d4fc /* f02d9e0: accf0114 */ sw $t7,0x114($a2) /* f02d9e4: 8e19001c */ lw $t9,0x1c($s0) /* f02d9e8: acd90118 */ sw $t9,0x118($a2) -/* f02d9ec: 0fc41b99 */ jal func0f106e64 +/* f02d9ec: 0fc41b99 */ jal cheatIsEnabled /* f02d9f0: afa6005c */ sw $a2,0x5c($sp) /* f02d9f4: 10400007 */ beqz $v0,.L0f02da14 /* f02d9f8: 8fa6005c */ lw $a2,0x5c($sp) diff --git a/src/game/chr/chraicommands.c b/src/game/chr/chraicommands.c index 3b9bf1447..c154779d1 100644 --- a/src/game/chr/chraicommands.c +++ b/src/game/chr/chraicommands.c @@ -4486,7 +4486,7 @@ bool aiSetViewDistance(void) { u8 *cmd = g_Vars.ailist + g_Vars.aioffset; - if (!func0f106e64(21)) { + if (!cheatIsEnabled(CHEAT_PERFECTDARKNESS)) { g_Vars.chrdata->visionrange = cmd[2]; } @@ -4688,7 +4688,7 @@ glabel ai010e /* f053b64: 2404000c */ addiu $a0,$zero,0xc /* f053b68: 468021a0 */ cvt.s.w $f6,$f4 /* f053b6c: 46083002 */ mul.s $f0,$f6,$f8 -/* f053b70: 0fc41b99 */ jal func0f106e64 +/* f053b70: 0fc41b99 */ jal cheatIsEnabled /* f053b74: e7a00018 */ swc1 $f0,0x18($sp) /* f053b78: 10400009 */ beqz $v0,.L0f053ba0 /* f053b7c: c7a00018 */ lwc1 $f0,0x18($sp) @@ -5920,7 +5920,7 @@ glabel ai00c8 /* f055884: 11a0005e */ beqz $t5,.L0f055a00 /* f055888: 00000000 */ sll $zero,$zero,0x0 /* f05588c: afa70020 */ sw $a3,0x20($sp) -/* f055890: 0fc41b99 */ jal func0f106e64 +/* f055890: 0fc41b99 */ jal cheatIsEnabled /* f055894: afa80024 */ sw $t0,0x24($sp) /* f055898: 8fa5001c */ lw $a1,0x1c($sp) /* f05589c: 10400012 */ beqz $v0,.L0f0558e8 @@ -5944,7 +5944,7 @@ glabel ai00c8 /* f0558e4: 8fa80024 */ lw $t0,0x24($sp) .L0f0558e8: /* f0558e8: 24040012 */ addiu $a0,$zero,0x12 -/* f0558ec: 0fc41b99 */ jal func0f106e64 +/* f0558ec: 0fc41b99 */ jal cheatIsEnabled /* f0558f0: afa70020 */ sw $a3,0x20($sp) /* f0558f4: 8fa5001c */ lw $a1,0x1c($sp) /* f0558f8: 10400036 */ beqz $v0,.L0f0559d4 diff --git a/src/game/game_000920.c b/src/game/game_000920.c index f5d7b3127..b84e75ed2 100644 --- a/src/game/game_000920.c +++ b/src/game/game_000920.c @@ -2604,7 +2604,7 @@ glabel func0f002c28 /* f002c3c: afa5001c */ sw $a1,0x1c($sp) /* f002c40: a3a70027 */ sb $a3,0x27($sp) /* f002c44: a3a60023 */ sb $a2,0x23($sp) -/* f002c48: 0fc41b99 */ jal func0f106e64 +/* f002c48: 0fc41b99 */ jal cheatIsEnabled /* f002c4c: 24040015 */ addiu $a0,$zero,0x15 /* f002c50: 8fa5001c */ lw $a1,0x1c($sp) /* f002c54: 93a60023 */ lbu $a2,0x23($sp) @@ -3414,7 +3414,7 @@ glabel func0f0037ac /* f0037dc: f7b40020 */ sdc1 $f20,0x20($sp) /* f0037e0: afa000d0 */ sw $zero,0xd0($sp) /* f0037e4: afa000c8 */ sw $zero,0xc8($sp) -/* f0037e8: 0fc41b99 */ jal func0f106e64 +/* f0037e8: 0fc41b99 */ jal cheatIsEnabled /* f0037ec: 24040015 */ addiu $a0,$zero,0x15 /* f0037f0: 10400003 */ beqz $v0,.L0f003800 /* f0037f4: 00000000 */ sll $zero,$zero,0x0 diff --git a/src/game/game_00b820.c b/src/game/game_00b820.c index 0c23b2447..3da92e1cd 100644 --- a/src/game/game_00b820.c +++ b/src/game/game_00b820.c @@ -112,7 +112,7 @@ glabel func0f00b820 /* f00b978: 90480000 */ lbu $t0,0x0($v0) /* f00b97c: 00008825 */ or $s1,$zero,$zero .L0f00b980: -/* f00b980: 0fc41b99 */ jal func0f106e64 +/* f00b980: 0fc41b99 */ jal cheatIsEnabled /* f00b984: 24040010 */ addiu $a0,$zero,0x10 /* f00b988: 10400005 */ beqz $v0,.L0f00b9a0 /* f00b98c: 3c148006 */ lui $s4,%hi(var80062c14) @@ -170,7 +170,7 @@ glabel func0f00b820 /* f00ba40: 26520004 */ addiu $s2,$s2,0x4 /* f00ba44: 00008825 */ or $s1,$zero,$zero .L0f00ba48: -/* f00ba48: 0fc41b99 */ jal func0f106e64 +/* f00ba48: 0fc41b99 */ jal cheatIsEnabled /* f00ba4c: 24040010 */ addiu $a0,$zero,0x10 /* f00ba50: 10400006 */ beqz $v0,.L0f00ba6c /* f00ba54: 3c148006 */ lui $s4,%hi(var80062c58) diff --git a/src/game/game_00c490.c b/src/game/game_00c490.c index 4342f4ff8..88604bb35 100644 --- a/src/game/game_00c490.c +++ b/src/game/game_00c490.c @@ -1505,7 +1505,7 @@ glabel func0f00d670 /* f00d6bc: 24040014 */ addiu $a0,$zero,0x14 /* f00d6c0: 5320008d */ beqzl $t9,.L0f00d8f8 /* f00d6c4: 8fbf0014 */ lw $ra,0x14($sp) -/* f00d6c8: 0fc41b99 */ jal func0f106e64 +/* f00d6c8: 0fc41b99 */ jal cheatIsEnabled /* f00d6cc: afa60030 */ sw $a2,0x30($sp) /* f00d6d0: 10400011 */ beqz $v0,.L0f00d718 /* f00d6d4: 8fa60030 */ lw $a2,0x30($sp) @@ -1527,7 +1527,7 @@ glabel func0f00d670 /* f00d714: 8fbf0014 */ lw $ra,0x14($sp) .L0f00d718: /* f00d718: 24040012 */ addiu $a0,$zero,0x12 -/* f00d71c: 0fc41b99 */ jal func0f106e64 +/* f00d71c: 0fc41b99 */ jal cheatIsEnabled /* f00d720: afa60030 */ sw $a2,0x30($sp) /* f00d724: 10400023 */ beqz $v0,.L0f00d7b4 /* f00d728: 8fa60030 */ lw $a2,0x30($sp) diff --git a/src/game/game_011110.c b/src/game/game_011110.c index a63675729..604dd6113 100644 --- a/src/game/game_011110.c +++ b/src/game/game_011110.c @@ -866,7 +866,7 @@ glabel func0f0118f4 .L0f011c98: /* f011c98: 0fc44762 */ jal func0f111d88 /* f011c9c: 24040001 */ addiu $a0,$zero,0x1 -/* f011ca0: 0fc41b99 */ jal func0f106e64 +/* f011ca0: 0fc41b99 */ jal cheatIsEnabled /* f011ca4: 24040008 */ addiu $a0,$zero,0x8 /* f011ca8: 10400006 */ beqz $v0,.L0f011cc4 /* f011cac: 00000000 */ sll $zero,$zero,0x0 @@ -876,7 +876,7 @@ glabel func0f0118f4 /* f011cbc: 0fc2a58a */ jal func0f0a9628 /* f011cc0: 24050050 */ addiu $a1,$zero,0x50 .L0f011cc4: -/* f011cc4: 0fc41b99 */ jal func0f106e64 +/* f011cc4: 0fc41b99 */ jal cheatIsEnabled /* f011cc8: 24040009 */ addiu $a0,$zero,0x9 /* f011ccc: 10400006 */ beqz $v0,.L0f011ce8 /* f011cd0: 00000000 */ sll $zero,$zero,0x0 @@ -886,7 +886,7 @@ glabel func0f0118f4 /* f011ce0: 0fc2a58a */ jal func0f0a9628 /* f011ce4: 24050050 */ addiu $a1,$zero,0x50 .L0f011ce8: -/* f011ce8: 0fc41b99 */ jal func0f106e64 +/* f011ce8: 0fc41b99 */ jal cheatIsEnabled /* f011cec: 24040001 */ addiu $a0,$zero,0x1 /* f011cf0: 10400006 */ beqz $v0,.L0f011d0c /* f011cf4: 00000000 */ sll $zero,$zero,0x0 @@ -896,21 +896,21 @@ glabel func0f0118f4 /* f011d04: 0fc2a58a */ jal func0f0a9628 /* f011d08: 24051c20 */ addiu $a1,$zero,0x1c20 .L0f011d0c: -/* f011d0c: 0fc41b99 */ jal func0f106e64 +/* f011d0c: 0fc41b99 */ jal cheatIsEnabled /* f011d10: 24040015 */ addiu $a0,$zero,0x15 /* f011d14: 10400003 */ beqz $v0,.L0f011d24 /* f011d18: 00000000 */ sll $zero,$zero,0x0 /* f011d1c: 0fc44762 */ jal func0f111d88 /* f011d20: 2404002d */ addiu $a0,$zero,0x2d .L0f011d24: -/* f011d24: 0fc41b99 */ jal func0f106e64 +/* f011d24: 0fc41b99 */ jal cheatIsEnabled /* f011d28: 2404001a */ addiu $a0,$zero,0x1a /* f011d2c: 10400003 */ beqz $v0,.L0f011d3c /* f011d30: 00000000 */ sll $zero,$zero,0x0 /* f011d34: 0fc44762 */ jal func0f111d88 /* f011d38: 24040037 */ addiu $a0,$zero,0x37 .L0f011d3c: -/* f011d3c: 0fc41b99 */ jal func0f106e64 +/* f011d3c: 0fc41b99 */ jal cheatIsEnabled /* f011d40: 2404001b */ addiu $a0,$zero,0x1b /* f011d44: 10400006 */ beqz $v0,.L0f011d60 /* f011d48: 00000000 */ sll $zero,$zero,0x0 @@ -920,7 +920,7 @@ glabel func0f0118f4 /* f011d58: 0fc2a58a */ jal func0f0a9628 /* f011d5c: 2405000a */ addiu $a1,$zero,0xa .L0f011d60: -/* f011d60: 0fc41b99 */ jal func0f106e64 +/* f011d60: 0fc41b99 */ jal cheatIsEnabled /* f011d64: 2404001c */ addiu $a0,$zero,0x1c /* f011d68: 10400006 */ beqz $v0,.L0f011d84 /* f011d6c: 00000000 */ sll $zero,$zero,0x0 @@ -930,14 +930,14 @@ glabel func0f0118f4 /* f011d7c: 0fc2a58a */ jal func0f0a9628 /* f011d80: 240500c8 */ addiu $a1,$zero,0xc8 .L0f011d84: -/* f011d84: 0fc41b99 */ jal func0f106e64 +/* f011d84: 0fc41b99 */ jal cheatIsEnabled /* f011d88: 2404001d */ addiu $a0,$zero,0x1d /* f011d8c: 10400003 */ beqz $v0,.L0f011d9c /* f011d90: 00000000 */ sll $zero,$zero,0x0 /* f011d94: 0fc44762 */ jal func0f111d88 /* f011d98: 2404002f */ addiu $a0,$zero,0x2f .L0f011d9c: -/* f011d9c: 0fc41b99 */ jal func0f106e64 +/* f011d9c: 0fc41b99 */ jal cheatIsEnabled /* f011da0: 2404001e */ addiu $a0,$zero,0x1e /* f011da4: 10400009 */ beqz $v0,.L0f011dcc /* f011da8: 00000000 */ sll $zero,$zero,0x0 @@ -950,7 +950,7 @@ glabel func0f0118f4 /* f011dc4: 0fc2a58a */ jal func0f0a9628 /* f011dc8: 24050014 */ addiu $a1,$zero,0x14 .L0f011dcc: -/* f011dcc: 0fc41b99 */ jal func0f106e64 +/* f011dcc: 0fc41b99 */ jal cheatIsEnabled /* f011dd0: 2404001f */ addiu $a0,$zero,0x1f /* f011dd4: 10400006 */ beqz $v0,.L0f011df0 /* f011dd8: 00000000 */ sll $zero,$zero,0x0 @@ -960,7 +960,7 @@ glabel func0f0118f4 /* f011de8: 0fc2a58a */ jal func0f0a9628 /* f011dec: 240500c8 */ addiu $a1,$zero,0xc8 .L0f011df0: -/* f011df0: 0fc41b99 */ jal func0f106e64 +/* f011df0: 0fc41b99 */ jal cheatIsEnabled /* f011df4: 24040020 */ addiu $a0,$zero,0x20 /* f011df8: 10400006 */ beqz $v0,.L0f011e14 /* f011dfc: 00000000 */ sll $zero,$zero,0x0 @@ -970,25 +970,25 @@ glabel func0f0118f4 /* f011e0c: 0fc2a58a */ jal func0f0a9628 /* f011e10: 240500c8 */ addiu $a1,$zero,0xc8 .L0f011e14: -/* f011e14: 0fc41b99 */ jal func0f106e64 +/* f011e14: 0fc41b99 */ jal cheatIsEnabled /* f011e18: 24040021 */ addiu $a0,$zero,0x21 /* f011e1c: 54400005 */ bnezl $v0,.L0f011e34 /* f011e20: 24040016 */ addiu $a0,$zero,0x16 -/* f011e24: 0fc41b99 */ jal func0f106e64 +/* f011e24: 0fc41b99 */ jal cheatIsEnabled /* f011e28: 24040003 */ addiu $a0,$zero,0x3 /* f011e2c: 10400009 */ beqz $v0,.L0f011e54 /* f011e30: 24040016 */ addiu $a0,$zero,0x16 .L0f011e34: /* f011e34: 0fc2a58a */ jal func0f0a9628 /* f011e38: 24050004 */ addiu $a1,$zero,0x4 -/* f011e3c: 0fc41b99 */ jal func0f106e64 +/* f011e3c: 0fc41b99 */ jal cheatIsEnabled /* f011e40: 24040021 */ addiu $a0,$zero,0x21 /* f011e44: 10400003 */ beqz $v0,.L0f011e54 /* f011e48: 00000000 */ sll $zero,$zero,0x0 /* f011e4c: 0fc44762 */ jal func0f111d88 /* f011e50: 2404002c */ addiu $a0,$zero,0x2c .L0f011e54: -/* f011e54: 0fc41b99 */ jal func0f106e64 +/* f011e54: 0fc41b99 */ jal cheatIsEnabled /* f011e58: 24040022 */ addiu $a0,$zero,0x22 /* f011e5c: 10400006 */ beqz $v0,.L0f011e78 /* f011e60: 00000000 */ sll $zero,$zero,0x0 @@ -998,7 +998,7 @@ glabel func0f0118f4 /* f011e70: 0fc2a58a */ jal func0f0a9628 /* f011e74: 240500c8 */ addiu $a1,$zero,0xc8 .L0f011e78: -/* f011e78: 0fc41b99 */ jal func0f106e64 +/* f011e78: 0fc41b99 */ jal cheatIsEnabled /* f011e7c: 24040023 */ addiu $a0,$zero,0x23 /* f011e80: 10400006 */ beqz $v0,.L0f011e9c /* f011e84: 00000000 */ sll $zero,$zero,0x0 @@ -1008,7 +1008,7 @@ glabel func0f0118f4 /* f011e94: 0fc2a58a */ jal func0f0a9628 /* f011e98: 240500c8 */ addiu $a1,$zero,0xc8 .L0f011e9c: -/* f011e9c: 0fc41b99 */ jal func0f106e64 +/* f011e9c: 0fc41b99 */ jal cheatIsEnabled /* f011ea0: 24040024 */ addiu $a0,$zero,0x24 /* f011ea4: 10400006 */ beqz $v0,.L0f011ec0 /* f011ea8: 00000000 */ sll $zero,$zero,0x0 @@ -1018,7 +1018,7 @@ glabel func0f0118f4 /* f011eb8: 0fc2a58a */ jal func0f0a9628 /* f011ebc: 240500c8 */ addiu $a1,$zero,0xc8 .L0f011ec0: -/* f011ec0: 0fc41b99 */ jal func0f106e64 +/* f011ec0: 0fc41b99 */ jal cheatIsEnabled /* f011ec4: 24040025 */ addiu $a0,$zero,0x25 /* f011ec8: 10400006 */ beqz $v0,.L0f011ee4 /* f011ecc: 00000000 */ sll $zero,$zero,0x0 @@ -1028,7 +1028,7 @@ glabel func0f0118f4 /* f011edc: 0fc2a58a */ jal func0f0a9628 /* f011ee0: 240500c8 */ addiu $a1,$zero,0xc8 .L0f011ee4: -/* f011ee4: 0fc41b99 */ jal func0f106e64 +/* f011ee4: 0fc41b99 */ jal cheatIsEnabled /* f011ee8: 24040026 */ addiu $a0,$zero,0x26 /* f011eec: 10400006 */ beqz $v0,.L0f011f08 /* f011ef0: 00000000 */ sll $zero,$zero,0x0 @@ -1038,7 +1038,7 @@ glabel func0f0118f4 /* f011f00: 0fc2a58a */ jal func0f0a9628 /* f011f04: 240500c8 */ addiu $a1,$zero,0xc8 .L0f011f08: -/* f011f08: 0fc41b99 */ jal func0f106e64 +/* f011f08: 0fc41b99 */ jal cheatIsEnabled /* f011f0c: 24040027 */ addiu $a0,$zero,0x27 /* f011f10: 10400006 */ beqz $v0,.L0f011f2c /* f011f14: 00000000 */ sll $zero,$zero,0x0 @@ -1048,7 +1048,7 @@ glabel func0f0118f4 /* f011f24: 0fc2a58a */ jal func0f0a9628 /* f011f28: 240500c8 */ addiu $a1,$zero,0xc8 .L0f011f2c: -/* f011f2c: 0fc41b99 */ jal func0f106e64 +/* f011f2c: 0fc41b99 */ jal cheatIsEnabled /* f011f30: 24040028 */ addiu $a0,$zero,0x28 /* f011f34: 10400006 */ beqz $v0,.L0f011f50 /* f011f38: 00000000 */ sll $zero,$zero,0x0 @@ -1058,7 +1058,7 @@ glabel func0f0118f4 /* f011f48: 0fc2a58a */ jal func0f0a9628 /* f011f4c: 240500c8 */ addiu $a1,$zero,0xc8 .L0f011f50: -/* f011f50: 0fc41b99 */ jal func0f106e64 +/* f011f50: 0fc41b99 */ jal cheatIsEnabled /* f011f54: 24040029 */ addiu $a0,$zero,0x29 /* f011f58: 50400007 */ beqzl $v0,.L0f011f78 /* f011f5c: 8fa90080 */ lw $t1,0x80($sp) @@ -1445,7 +1445,7 @@ glabel func0f012450 /* f0124d0: 8cab0318 */ lw $t3,0x318($a1) /* f0124d4: 55600009 */ bnezl $t3,.L0f0124fc /* f0124d8: 8cad0284 */ lw $t5,0x284($a1) -/* f0124dc: 0fc41b99 */ jal func0f106e64 +/* f0124dc: 0fc41b99 */ jal cheatIsEnabled /* f0124e0: 24040003 */ addiu $a0,$zero,0x3 /* f0124e4: 3c05800a */ lui $a1,%hi(g_Vars) /* f0124e8: 24a59fc0 */ addiu $a1,$a1,%lo(g_Vars) diff --git a/src/game/game_066310.c b/src/game/game_066310.c index 1561b5eb7..0e91cea27 100644 --- a/src/game/game_066310.c +++ b/src/game/game_066310.c @@ -4827,7 +4827,7 @@ glabel func0f069144 /* f069250: 33191000 */ andi $t9,$t8,0x1000 /* f069254: 53200006 */ beqzl $t9,.L0f069270 /* f069258: 8fa40070 */ lw $a0,0x70($sp) -/* f06925c: 0fc41b99 */ jal func0f106e64 +/* f06925c: 0fc41b99 */ jal cheatIsEnabled /* f069260: 24040015 */ addiu $a0,$zero,0x15 /* f069264: 50400065 */ beqzl $v0,.L0f0693fc /* f069268: 920a0002 */ lbu $t2,0x2($s0) @@ -40632,12 +40632,12 @@ glabel func0f089014 /* f089258: 10400136 */ beqz $v0,.L0f089734 /* f08925c: 8fa70080 */ lw $a3,0x80($sp) /* f089260: 24040004 */ addiu $a0,$zero,0x4 -/* f089264: 0fc41b99 */ jal func0f106e64 +/* f089264: 0fc41b99 */ jal cheatIsEnabled /* f089268: afa70080 */ sw $a3,0x80($sp) /* f08926c: 14400006 */ bnez $v0,.L0f089288 /* f089270: 8fa70080 */ lw $a3,0x80($sp) /* f089274: 24040005 */ addiu $a0,$zero,0x5 -/* f089278: 0fc41b99 */ jal func0f106e64 +/* f089278: 0fc41b99 */ jal cheatIsEnabled /* f08927c: afa70080 */ sw $a3,0x80($sp) /* f089280: 10400003 */ beqz $v0,.L0f089290 /* f089284: 8fa70080 */ lw $a3,0x80($sp) @@ -41021,7 +41021,7 @@ glabel func0f089014 /* f0897cc: afa80050 */ sw $t0,0x50($sp) /* f0897d0: e7a2004c */ swc1 $f2,0x4c($sp) /* f0897d4: e7ac0044 */ swc1 $f12,0x44($sp) -/* f0897d8: 0fc41b99 */ jal func0f106e64 +/* f0897d8: 0fc41b99 */ jal cheatIsEnabled /* f0897dc: e7ae0048 */ swc1 $f14,0x48($sp) /* f0897e0: 0002182b */ sltu $v1,$zero,$v0 /* f0897e4: 8fa80050 */ lw $t0,0x50($sp) @@ -41033,7 +41033,7 @@ glabel func0f089014 /* f0897fc: afa80050 */ sw $t0,0x50($sp) /* f089800: e7a2004c */ swc1 $f2,0x4c($sp) /* f089804: e7ac0044 */ swc1 $f12,0x44($sp) -/* f089808: 0fc41b99 */ jal func0f106e64 +/* f089808: 0fc41b99 */ jal cheatIsEnabled /* f08980c: e7ae0048 */ swc1 $f14,0x48($sp) /* f089810: 8fa80050 */ lw $t0,0x50($sp) /* f089814: c7a2004c */ lwc1 $f2,0x4c($sp) @@ -43172,7 +43172,7 @@ glabel func0f08b27c /* f08b52c: a20200a9 */ sb $v0,0xa9($s0) .L0f08b530: /* f08b530: 24040013 */ addiu $a0,$zero,0x13 -/* f08b534: 0fc41b99 */ jal func0f106e64 +/* f08b534: 0fc41b99 */ jal cheatIsEnabled /* f08b538: afa60034 */ sw $a2,0x34($sp) /* f08b53c: 10400004 */ beqz $v0,.L0f08b550 /* f08b540: 8fa60034 */ lw $a2,0x34($sp) diff --git a/src/game/game_097a50.c b/src/game/game_097a50.c index e57ba34a2..8c4238a45 100644 --- a/src/game/game_097a50.c +++ b/src/game/game_097a50.c @@ -5180,7 +5180,7 @@ glabel func0f09b500 /* f09b784: 240b0002 */ addiu $t3,$zero,0x2 /* f09b788: ae0b0608 */ sw $t3,0x608($s0) .L0f09b78c: -/* f09b78c: 0fc41b99 */ jal func0f106e64 +/* f09b78c: 0fc41b99 */ jal cheatIsEnabled /* f09b790: 00002025 */ or $a0,$zero,$zero /* f09b794: 10400002 */ beqz $v0,.L0f09b7a0 /* f09b798: 240c0002 */ addiu $t4,$zero,0x2 @@ -5199,7 +5199,7 @@ glabel func0f09b500 /* f09b7c4: 10000013 */ beqz $zero,.L0f09b814 /* f09b7c8: 24020001 */ addiu $v0,$zero,0x1 .L0f09b7cc: -/* f09b7cc: 0fc41b99 */ jal func0f106e64 +/* f09b7cc: 0fc41b99 */ jal cheatIsEnabled /* f09b7d0: 00002025 */ or $a0,$zero,$zero /* f09b7d4: 50400008 */ beqzl $v0,.L0f09b7f8 /* f09b7d8: 8e0e0614 */ lw $t6,0x614($s0) @@ -20488,7 +20488,7 @@ glabel func0f0a8d34 /* f0a9158: 24040001 */ addiu $a0,$zero,0x1 /* f0a915c: 0fc273a3 */ jal func0f09ce8c /* f0a9160: 00000000 */ sll $zero,$zero,0x0 -/* f0a9164: 0fc41b99 */ jal func0f106e64 +/* f0a9164: 0fc41b99 */ jal cheatIsEnabled /* f0a9168: 24040005 */ addiu $a0,$zero,0x5 /* f0a916c: 10400025 */ beqz $v0,.L0f0a9204 /* f0a9170: 3c02800a */ lui $v0,0x800a @@ -20532,7 +20532,7 @@ glabel func0f0a8d34 /* f0a91fc: 10000007 */ beqz $zero,.L0f0a921c /* f0a9200: 00000000 */ sll $zero,$zero,0x0 .L0f0a9204: -/* f0a9204: 0fc41b99 */ jal func0f106e64 +/* f0a9204: 0fc41b99 */ jal cheatIsEnabled /* f0a9208: 24040004 */ addiu $a0,$zero,0x4 /* f0a920c: 10400003 */ beqz $v0,.L0f0a921c /* f0a9210: 00000000 */ sll $zero,$zero,0x0 diff --git a/src/game/game_0b0420.c b/src/game/game_0b0420.c index 2575e8ea9..4d7f12c8b 100644 --- a/src/game/game_0b0420.c +++ b/src/game/game_0b0420.c @@ -2167,7 +2167,7 @@ glabel func0f0b1f58 /* f0b1f90: 1000001e */ beqz $zero,.L0f0b200c /* f0b1f94: 24020007 */ addiu $v0,$zero,0x7 .L0f0b1f98: -/* f0b1f98: 0fc41b99 */ jal func0f106e64 +/* f0b1f98: 0fc41b99 */ jal cheatIsEnabled /* f0b1f9c: 2404000f */ addiu $a0,$zero,0xf /* f0b1fa0: 10400003 */ beqz $v0,.L0f0b1fb0 /* f0b1fa4: 3c18800a */ lui $t8,0x800a diff --git a/src/game/game_0b28d0.c b/src/game/game_0b28d0.c index d6217f751..30249133d 100644 --- a/src/game/game_0b28d0.c +++ b/src/game/game_0b28d0.c @@ -6555,7 +6555,7 @@ glabel func0f0b802c /* f0b80a8: 44806000 */ mtc1 $zero,$f12 /* f0b80ac: 0fc30884 */ jal func0f0c2210 /* f0b80b0: 00000000 */ sll $zero,$zero,0x0 -/* f0b80b4: 0fc41b99 */ jal func0f106e64 +/* f0b80b4: 0fc41b99 */ jal cheatIsEnabled /* f0b80b8: 2404000d */ addiu $a0,$zero,0xd /* f0b80bc: 10400004 */ beqz $v0,.L0f0b80d0 /* f0b80c0: 3c013f80 */ lui $at,0x3f80 @@ -6563,7 +6563,7 @@ glabel func0f0b802c /* f0b80c8: 0fc30884 */ jal func0f0c2210 /* f0b80cc: 00000000 */ sll $zero,$zero,0x0 .L0f0b80d0: -/* f0b80d0: 0fc41b99 */ jal func0f106e64 +/* f0b80d0: 0fc41b99 */ jal cheatIsEnabled /* f0b80d4: 2404000e */ addiu $a0,$zero,0xe /* f0b80d8: 10400008 */ beqz $v0,.L0f0b80fc /* f0b80dc: 3c013f80 */ lui $at,0x3f80 @@ -7117,7 +7117,7 @@ glabel func0f0b872c /* f0b8898: 24040011 */ addiu $a0,$zero,0x11 /* f0b889c: afa20018 */ sw $v0,0x18($sp) /* f0b88a0: afa70024 */ sw $a3,0x24($sp) -/* f0b88a4: 0fc41b99 */ jal func0f106e64 +/* f0b88a4: 0fc41b99 */ jal cheatIsEnabled /* f0b88a8: afa8001c */ sw $t0,0x1c($sp) /* f0b88ac: 3c03800a */ lui $v1,%hi(g_Vars) /* f0b88b0: 24639fc0 */ addiu $v1,$v1,%lo(g_Vars) @@ -14189,7 +14189,7 @@ glabel func0f0bd904 /* f0bee90: 0fc22eb4 */ jal func0f08bad0 /* f0bee94: 00003825 */ or $a3,$zero,$zero .L0f0bee98: -/* f0bee98: 0fc41b99 */ jal func0f106e64 +/* f0bee98: 0fc41b99 */ jal cheatIsEnabled /* f0bee9c: 24040016 */ addiu $a0,$zero,0x16 /* f0beea0: 10400058 */ beqz $v0,.L0f0bf004 /* f0beea4: 00000000 */ sll $zero,$zero,0x0 @@ -14285,7 +14285,7 @@ glabel func0f0bd904 /* f0beffc: 0fc08166 */ jal chrSetMaxDamage /* f0bf000: 02002025 */ or $a0,$s0,$zero .L0f0bf004: -/* f0bf004: 0fc41b99 */ jal func0f106e64 +/* f0bf004: 0fc41b99 */ jal cheatIsEnabled /* f0bf008: 24040018 */ addiu $a0,$zero,0x18 /* f0bf00c: 1040005e */ beqz $v0,.L0f0bf188 /* f0bf010: 00000000 */ sll $zero,$zero,0x0 @@ -14387,7 +14387,7 @@ glabel func0f0bd904 /* f0bf180: 0fc22eb4 */ jal func0f08bad0 /* f0bf184: 00003825 */ or $a3,$zero,$zero .L0f0bf188: -/* f0bf188: 0fc41b99 */ jal func0f106e64 +/* f0bf188: 0fc41b99 */ jal cheatIsEnabled /* f0bf18c: 24040017 */ addiu $a0,$zero,0x17 /* f0bf190: 10400062 */ beqz $v0,.L0f0bf31c /* f0bf194: 00000000 */ sll $zero,$zero,0x0 @@ -14493,7 +14493,7 @@ glabel func0f0bd904 /* f0bf314: 0fc22eb4 */ jal func0f08bad0 /* f0bf318: 3c071000 */ lui $a3,0x1000 .L0f0bf31c: -/* f0bf31c: 0fc41b99 */ jal func0f106e64 +/* f0bf31c: 0fc41b99 */ jal cheatIsEnabled /* f0bf320: 24040019 */ addiu $a0,$zero,0x19 /* f0bf324: 5040005d */ beqzl $v0,.L0f0bf49c /* f0bf328: 8fae0058 */ lw $t6,0x58($sp) diff --git a/src/game/game_0c37d0.c b/src/game/game_0c37d0.c index ee71616d2..e4af9895b 100644 --- a/src/game/game_0c37d0.c +++ b/src/game/game_0c37d0.c @@ -2909,7 +2909,7 @@ glabel func0f0c6080 /* f0c6108: 00000000 */ sll $zero,$zero,0x0 /* f0c610c: ac5919ac */ sw $t9,0x19ac($v0) .L0f0c6110: -/* f0c6110: 0fc41b99 */ jal func0f106e64 +/* f0c6110: 0fc41b99 */ jal cheatIsEnabled /* f0c6114: 2404000a */ addiu $a0,$zero,0xa /* f0c6118: 3c01428a */ lui $at,0x428a /* f0c611c: 44811000 */ mtc1 $at,$f2 @@ -3591,7 +3591,7 @@ glabel func0f0c69b8 /* f0c6a84: 46080002 */ mul.s $f0,$f0,$f8 /* f0c6a88: 00000000 */ sll $zero,$zero,0x0 .L0f0c6a8c: -/* f0c6a8c: 0fc41b99 */ jal func0f106e64 +/* f0c6a8c: 0fc41b99 */ jal cheatIsEnabled /* f0c6a90: e7a000c0 */ swc1 $f0,0xc0($sp) /* f0c6a94: 3c08800a */ lui $t0,%hi(g_Vars) /* f0c6a98: 10400006 */ beqz $v0,.L0f0c6ab4 @@ -3927,7 +3927,7 @@ glabel func0f0c69b8 /* f0c6f60: 460a3202 */ mul.s $f8,$f6,$f10 /* f0c6f64: 46044180 */ add.s $f6,$f8,$f4 /* f0c6f68: 46003082 */ mul.s $f2,$f6,$f0 -/* f0c6f6c: 0fc41b99 */ jal func0f106e64 +/* f0c6f6c: 0fc41b99 */ jal cheatIsEnabled /* f0c6f70: e7a200e0 */ swc1 $f2,0xe0($sp) /* f0c6f74: 3c08800a */ lui $t0,%hi(g_Vars) /* f0c6f78: 25089fc0 */ addiu $t0,$t0,%lo(g_Vars) @@ -3956,7 +3956,7 @@ glabel func0f0c69b8 /* f0c6fd0: c46003c0 */ lwc1 $f0,0x3c0($v1) /* f0c6fd4: c46203c8 */ lwc1 $f2,0x3c8($v1) /* f0c6fd8: e7a000dc */ swc1 $f0,0xdc($sp) -/* f0c6fdc: 0fc41b99 */ jal func0f106e64 +/* f0c6fdc: 0fc41b99 */ jal cheatIsEnabled /* f0c6fe0: e7a200d8 */ swc1 $f2,0xd8($sp) /* f0c6fe4: 3c08800a */ lui $t0,%hi(g_Vars) /* f0c6fe8: 25089fc0 */ addiu $t0,$t0,%lo(g_Vars) diff --git a/src/game/game_0c79f0.c b/src/game/game_0c79f0.c index 3ec804ec3..c7a97fb64 100644 --- a/src/game/game_0c79f0.c +++ b/src/game/game_0c79f0.c @@ -5317,7 +5317,7 @@ glabel func0f0cc19c /* f0cc264: 46043200 */ add.s $f8,$f6,$f4 /* f0cc268: e4480380 */ swc1 $f8,0x380($v0) .L0f0cc26c: -/* f0cc26c: 0fc41b99 */ jal func0f106e64 +/* f0cc26c: 0fc41b99 */ jal cheatIsEnabled /* f0cc270: 2404000a */ addiu $a0,$zero,0xa /* f0cc274: 3c05800a */ lui $a1,%hi(g_Vars) /* f0cc278: 10400040 */ beqz $v0,.L0f0cc37c @@ -8183,7 +8183,7 @@ glabel func0f0ce924 /* f0ceb48: c44003c0 */ lwc1 $f0,0x3c0($v0) /* f0ceb4c: c44203c8 */ lwc1 $f2,0x3c8($v0) /* f0ceb50: e7a00084 */ swc1 $f0,0x84($sp) -/* f0ceb54: 0fc41b99 */ jal func0f106e64 +/* f0ceb54: 0fc41b99 */ jal cheatIsEnabled /* f0ceb58: e7a20080 */ swc1 $f2,0x80($sp) /* f0ceb5c: 3c08800a */ lui $t0,%hi(g_Vars) /* f0ceb60: 25089fc0 */ addiu $t0,$t0,%lo(g_Vars) diff --git a/src/game/game_106d40.c b/src/game/game_106d40.c index 55aaa91ad..cdc975ff4 100644 --- a/src/game/game_106d40.c +++ b/src/game/game_106d40.c @@ -107,25 +107,14 @@ glabel func0f106d40 /* f106e60: 00000000 */ sll $zero,$zero,0x0 ); -GLOBAL_ASM( -glabel func0f106e64 -/* f106e64: 28810020 */ slti $at,$a0,0x20 -/* f106e68: 10200007 */ beqz $at,.L0f106e88 -/* f106e6c: 3c09800a */ lui $t1,0x800a -/* f106e70: 3c18800a */ lui $t8,0x800a -/* f106e74: 8f1821d0 */ lw $t8,0x21d0($t8) -/* f106e78: 240e0001 */ addiu $t6,$zero,0x1 -/* f106e7c: 008e7804 */ sllv $t7,$t6,$a0 -/* f106e80: 03e00008 */ jr $ra -/* f106e84: 01f81024 */ and $v0,$t7,$t8 -.L0f106e88: -/* f106e88: 8d2921d4 */ lw $t1,0x21d4($t1) -/* f106e8c: 24190001 */ addiu $t9,$zero,0x1 -/* f106e90: 00994004 */ sllv $t0,$t9,$a0 -/* f106e94: 01091024 */ and $v0,$t0,$t1 -/* f106e98: 03e00008 */ jr $ra -/* f106e9c: 00000000 */ sll $zero,$zero,0x0 -); +bool cheatIsEnabled(s32 cheat_id) +{ + if (cheat_id < 32) { + return g_CheatsEnabledBank0 & (1 << cheat_id); + } + + return g_CheatsEnabledBank1 & (1 << cheat_id); +} GLOBAL_ASM( glabel func0f106ea0 @@ -335,8 +324,8 @@ glabel func0f106ea0 /* f10715c: 8fa40024 */ lw $a0,0x24($sp) /* f107160: 8faf0028 */ lw $t7,0x28($sp) .L0f107164: -/* f107164: 3c02800a */ lui $v0,%hi(var800a21d0) -/* f107168: 244221d0 */ addiu $v0,$v0,%lo(var800a21d0) +/* f107164: 3c02800a */ lui $v0,%hi(g_CheatsEnabledBank0) +/* f107168: 244221d0 */ addiu $v0,$v0,%lo(g_CheatsEnabledBank0) /* f10716c: 29e10020 */ slti $at,$t7,0x20 /* f107170: 10200007 */ beqz $at,.L0f107190 /* f107174: 00000000 */ sll $zero,$zero,0x0 @@ -347,9 +336,9 @@ glabel func0f106ea0 /* f107188: 10000009 */ beqz $zero,.L0f1071b0 /* f10718c: ac4b0000 */ sw $t3,0x0($v0) .L0f107190: -/* f107190: 3c02800a */ lui $v0,%hi(var800a21d4) +/* f107190: 3c02800a */ lui $v0,%hi(g_CheatsEnabledBank1) /* f107194: 8fac0028 */ lw $t4,0x28($sp) -/* f107198: 244221d4 */ addiu $v0,$v0,%lo(var800a21d4) +/* f107198: 244221d4 */ addiu $v0,$v0,%lo(g_CheatsEnabledBank1) /* f10719c: 8c580000 */ lw $t8,0x0($v0) /* f1071a0: 240d0001 */ addiu $t5,$zero,0x1 /* f1071a4: 018d7004 */ sllv $t6,$t5,$t4 @@ -571,8 +560,8 @@ glabel func0f1071c4 /* f107480: 8fa40024 */ lw $a0,0x24($sp) /* f107484: 8faf0028 */ lw $t7,0x28($sp) .L0f107488: -/* f107488: 3c02800a */ lui $v0,%hi(var800a21d0) -/* f10748c: 244221d0 */ addiu $v0,$v0,%lo(var800a21d0) +/* f107488: 3c02800a */ lui $v0,%hi(g_CheatsEnabledBank0) +/* f10748c: 244221d0 */ addiu $v0,$v0,%lo(g_CheatsEnabledBank0) /* f107490: 29e10020 */ slti $at,$t7,0x20 /* f107494: 10200007 */ beqz $at,.L0f1074b4 /* f107498: 24180001 */ addiu $t8,$zero,0x1 @@ -584,8 +573,8 @@ glabel func0f1071c4 /* f1074b0: ac4c0000 */ sw $t4,0x0($v0) .L0f1074b4: /* f1074b4: 8fad0028 */ lw $t5,0x28($sp) -/* f1074b8: 3c02800a */ lui $v0,%hi(var800a21d4) -/* f1074bc: 244221d4 */ addiu $v0,$v0,%lo(var800a21d4) +/* f1074b8: 3c02800a */ lui $v0,%hi(g_CheatsEnabledBank1) +/* f1074bc: 244221d4 */ addiu $v0,$v0,%lo(g_CheatsEnabledBank1) /* f1074c0: 8c590000 */ lw $t9,0x0($v0) /* f1074c4: 240e0001 */ addiu $t6,$zero,0x1 /* f1074c8: 01aec004 */ sllv $t8,$t6,$t5 @@ -629,14 +618,14 @@ glabel func0f107510 /* f10753c: afb00018 */ sw $s0,0x18($sp) /* f107540: 3c0f800a */ lui $t7,0x800a /* f107544: 8def21d8 */ lw $t7,0x21d8($t7) -/* f107548: 3c12800a */ lui $s2,%hi(var800a21d0) -/* f10754c: 265221d0 */ addiu $s2,$s2,%lo(var800a21d0) +/* f107548: 3c12800a */ lui $s2,%hi(g_CheatsEnabledBank0) +/* f10754c: 265221d0 */ addiu $s2,$s2,%lo(g_CheatsEnabledBank0) /* f107550: 8c590298 */ lw $t9,0x298($v0) /* f107554: 3c18800a */ lui $t8,0x800a /* f107558: ae4f0000 */ sw $t7,0x0($s2) /* f10755c: 8f1821dc */ lw $t8,0x21dc($t8) -/* f107560: 3c13800a */ lui $s3,%hi(var800a21d4) -/* f107564: 267321d4 */ addiu $s3,$s3,%lo(var800a21d4) +/* f107560: 3c13800a */ lui $s3,%hi(g_CheatsEnabledBank1) +/* f107564: 267321d4 */ addiu $s3,$s3,%lo(g_CheatsEnabledBank1) /* f107568: 07210007 */ bgez $t9,.L0f107588 /* f10756c: ae780000 */ sw $t8,0x0($s3) /* f107570: 8c48029c */ lw $t0,0x29c($v0) @@ -658,10 +647,10 @@ glabel func0f107510 /* f1075a8: 10000007 */ beqz $zero,.L0f1075c8 /* f1075ac: ae6d0000 */ sw $t5,0x0($s3) .L0f1075b0: -/* f1075b0: 3c12800a */ lui $s2,%hi(var800a21d0) -/* f1075b4: 3c13800a */ lui $s3,%hi(var800a21d4) -/* f1075b8: 267321d4 */ addiu $s3,$s3,%lo(var800a21d4) -/* f1075bc: 265221d0 */ addiu $s2,$s2,%lo(var800a21d0) +/* f1075b0: 3c12800a */ lui $s2,%hi(g_CheatsEnabledBank0) +/* f1075b4: 3c13800a */ lui $s3,%hi(g_CheatsEnabledBank1) +/* f1075b8: 267321d4 */ addiu $s3,$s3,%lo(g_CheatsEnabledBank1) +/* f1075bc: 265221d0 */ addiu $s2,$s2,%lo(g_CheatsEnabledBank0) /* f1075c0: ae400000 */ sw $zero,0x0($s2) /* f1075c4: ae600000 */ sw $zero,0x0($s3) .L0f1075c8: @@ -711,7 +700,7 @@ glabel func0f107510 /* f107664: 016c6824 */ and $t5,$t3,$t4 /* f107668: ae6d0000 */ sw $t5,0x0($s3) .L0f10766c: -/* f10766c: 0fc41b99 */ jal func0f106e64 +/* f10766c: 0fc41b99 */ jal cheatIsEnabled /* f107670: 02002025 */ or $a0,$s0,$zero /* f107674: 50400004 */ beqzl $v0,.L0f107688 /* f107678: 26100001 */ addiu $s0,$s0,0x1 diff --git a/src/game/game_111600.c b/src/game/game_111600.c index 71c234988..444177524 100644 --- a/src/game/game_111600.c +++ b/src/game/game_111600.c @@ -789,7 +789,7 @@ glabel func0f111fcc /* f111fcc: 27bdffe8 */ addiu $sp,$sp,-24 /* f111fd0: afbf0014 */ sw $ra,0x14($sp) /* f111fd4: afa40018 */ sw $a0,0x18($sp) -/* f111fd8: 0fc41b99 */ jal func0f106e64 +/* f111fd8: 0fc41b99 */ jal cheatIsEnabled /* f111fdc: 24040015 */ addiu $a0,$zero,0x15 /* f111fe0: 1040000e */ beqz $v0,.L0f11201c /* f111fe4: 8fa30018 */ lw $v1,0x18($sp) @@ -890,7 +890,7 @@ glabel func0f1120f0 /* f112128: 9050005c */ lbu $s0,0x5c($v0) /* f11212c: afa0002c */ sw $zero,0x2c($sp) /* f112130: afa20028 */ sw $v0,0x28($sp) -/* f112134: 0fc41b99 */ jal func0f106e64 +/* f112134: 0fc41b99 */ jal cheatIsEnabled /* f112138: afa20024 */ sw $v0,0x24($sp) /* f11213c: 10400006 */ beqz $v0,.L0f112158 /* f112140: 8fa7002c */ lw $a3,0x2c($sp) diff --git a/src/game/game_11ecf0.c b/src/game/game_11ecf0.c index 83cc308ed..ca47ec55e 100644 --- a/src/game/game_11ecf0.c +++ b/src/game/game_11ecf0.c @@ -10406,7 +10406,7 @@ glabel func0f127ae4 /* f128534: af201874 */ sw $zero,0x1874($t9) /* f128538: 8c6f0064 */ lw $t7,0x64($v1) /* f12853c: e5e018f4 */ swc1 $f0,0x18f4($t7) -/* f128540: 0fc41b99 */ jal func0f106e64 +/* f128540: 0fc41b99 */ jal cheatIsEnabled /* f128544: afa3001c */ sw $v1,0x1c($sp) /* f128548: 8fa3001c */ lw $v1,0x1c($sp) /* f12854c: 24040007 */ addiu $a0,$zero,0x7 diff --git a/src/game/game_1668e0.c b/src/game/game_1668e0.c index c1de4fc35..e16a3b76f 100644 --- a/src/game/game_1668e0.c +++ b/src/game/game_1668e0.c @@ -5865,7 +5865,7 @@ glabel func0f16b854 /* f16b900: 10000016 */ beqz $zero,.L0f16b95c /* f16b904: 24020002 */ addiu $v0,$zero,0x2 .L0f16b908: -/* f16b908: 0fc41b99 */ jal func0f106e64 +/* f16b908: 0fc41b99 */ jal cheatIsEnabled /* f16b90c: 24040006 */ addiu $a0,$zero,0x6 /* f16b910: 10400003 */ beqz $v0,.L0f16b920 /* f16b914: 00000000 */ sll $zero,$zero,0x0 diff --git a/src/game/game_187770.c b/src/game/game_187770.c index 8f42b862d..6587dac76 100644 --- a/src/game/game_187770.c +++ b/src/game/game_187770.c @@ -10206,7 +10206,7 @@ glabel func0f190060 /* f1900ec: 31f80040 */ andi $t8,$t7,0x40 /* f1900f0: 5700000a */ bnezl $t8,.L0f19011c /* f1900f4: c6040008 */ lwc1 $f4,0x8($s0) -/* f1900f8: 0fc41b99 */ jal func0f106e64 +/* f1900f8: 0fc41b99 */ jal cheatIsEnabled /* f1900fc: 2404001a */ addiu $a0,$zero,0x1a /* f190100: 50400046 */ beqzl $v0,.L0f19021c /* f190104: 8e100020 */ lw $s0,0x20($s0) diff --git a/src/gvars/gvars.c b/src/gvars/gvars.c index f8108cbb3..1432a2ba5 100644 --- a/src/gvars/gvars.c +++ b/src/gvars/gvars.c @@ -21299,8 +21299,8 @@ u32 var800a21c0 = 0; u32 var800a21c4 = 0; u32 var800a21c8 = 0; u32 var800a21cc = 0; -u32 var800a21d0 = 0; -u32 var800a21d4 = 0; +u32 g_CheatsEnabledBank0 = 0; +u32 g_CheatsEnabledBank1 = 0; u32 var800a21d8 = 0; u32 var800a21dc = 0; u32 var800a21e0 = 0; diff --git a/src/include/constants.h b/src/include/constants.h index 139d60939..b37df4c7c 100644 --- a/src/include/constants.h +++ b/src/include/constants.h @@ -96,6 +96,8 @@ #define CHANNEL_9 9 #define CHANNEL_10 10 +#define CHEAT_PERFECTDARKNESS 21 + #define CHR_P1P2_OPPOSITE 0xf1 #define CHR_P1P2 0xf2 #define CHR_ANY 0xf3 // Only supported by if_chr_activated_object command diff --git a/src/include/game/game_106d40.h b/src/include/game/game_106d40.h index 9011f4b49..882be30ea 100644 --- a/src/include/game/game_106d40.h +++ b/src/include/game/game_106d40.h @@ -4,7 +4,7 @@ #include "types.h" u32 func0f106d40(void); -u32 func0f106e64(u32 arg0); +bool cheatIsEnabled(s32 cheat_id); u32 func0f106ea0(void); u32 func0f1071c4(void); u32 func0f1074ec(void); diff --git a/src/include/gvars/gvars.h b/src/include/gvars/gvars.h index d28c76472..41a91361b 100644 --- a/src/include/gvars/gvars.h +++ b/src/include/gvars/gvars.h @@ -692,8 +692,8 @@ extern u32 var800a21b0; extern u32 var800a21b4; extern u32 var800a21b8; extern u32 var800a21c0; -extern u32 var800a21d0; -extern u32 var800a21d4; +extern u32 g_CheatsEnabledBank0; +extern u32 g_CheatsEnabledBank1; extern u32 var800a21d8; extern u32 var800a21dc; extern u32 var800a21e0;