From 44967252cba9e801dbfa522bec6f1340a1d4a0ed Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Wed, 1 Jan 2020 12:45:08 +1000 Subject: [PATCH] Decompile setNumPlayers and getNumPlayers --- src/game/game_015470.c | 20 ++++++++++---------- src/include/game/game_015470.h | 2 +- src/include/setup/setup_000000.h | 1 + src/library/library_0d520.c | 8 ++++---- src/setup/setup_000000.c | 2 +- 5 files changed, 17 insertions(+), 16 deletions(-) diff --git a/src/game/game_015470.c b/src/game/game_015470.c index f29cbed04..19a05fb6d 100644 --- a/src/game/game_015470.c +++ b/src/game/game_015470.c @@ -5599,18 +5599,18 @@ glabel func0f019d38 /* f01a344: 27bd01a0 */ addiu $sp,$sp,0x1a0 ); -GLOBAL_ASM( -glabel func0f01a348 -/* f01a348: 3c028006 */ lui $v0,0x8006 -/* f01a34c: 03e00008 */ jr $ra -/* f01a350: 8c422924 */ lw $v0,0x2924($v0) -); +s32 getNumPlayers(void) +{ + return g_NumPlayers; +} + +void setNumPlayers(s32 numplayers) +{ + g_NumPlayers = numplayers; +} GLOBAL_ASM( -glabel setNumPlayers -/* f01a354: 3c018006 */ lui $at,0x8006 -/* f01a358: 03e00008 */ jr $ra -/* f01a35c: ac242924 */ sw $a0,0x2924($at) +glabel func0f01a360 /* f01a360: 000471c0 */ sll $t6,$a0,0x7 /* f01a364: 3c0f800a */ lui $t7,0x800a /* f01a368: 01ee7821 */ addu $t7,$t7,$t6 diff --git a/src/include/game/game_015470.h b/src/include/game/game_015470.h index 85fe01463..aa57a0894 100644 --- a/src/include/game/game_015470.h +++ b/src/include/game/game_015470.h @@ -36,7 +36,7 @@ u32 func0f019b74(void); u32 func0f019ba0(void); u32 func0f019d0c(void); u32 func0f019d38(void); -u32 func0f01a348(void); +s32 getNumPlayers(void); void setNumPlayers(s32 numplayers); u32 func0f01a3b8(void); u32 func0f01a494(void); diff --git a/src/include/setup/setup_000000.h b/src/include/setup/setup_000000.h index f3c44a786..2479dc693 100644 --- a/src/include/setup/setup_000000.h +++ b/src/include/setup/setup_000000.h @@ -279,6 +279,7 @@ extern u32 var800628bc; extern u32 var800628c8; extern u32 var800628d4; extern u32 var80062914; +extern s32 g_NumPlayers; extern u8 var80062940; extern u32 var80062944; extern u32 var80062948; diff --git a/src/library/library_0d520.c b/src/library/library_0d520.c index cac5052ed..3bb0e1c86 100644 --- a/src/library/library_0d520.c +++ b/src/library/library_0d520.c @@ -722,7 +722,7 @@ glabel func0000db3c /* dd24: 2921005a */ slti $at,$t1,0x5a /* dd28: 1020001e */ beqz $at,.L0000dda4 /* dd2c: 00000000 */ sll $zero,$zero,0x0 -/* dd30: 0fc068d2 */ jal func0f01a348 +/* dd30: 0fc068d2 */ jal getNumPlayers /* dd34: afa5005c */ sw $a1,0x5c($sp) /* dd38: 28410002 */ slti $at,$v0,0x2 /* dd3c: 14200019 */ bnez $at,.L0000dda4 @@ -787,7 +787,7 @@ glabel func0000db3c /* de08: 29e1005a */ slti $at,$t7,0x5a /* de0c: 1020001e */ beqz $at,.L0000de88 /* de10: 00000000 */ sll $zero,$zero,0x0 -/* de14: 0fc068d2 */ jal func0f01a348 +/* de14: 0fc068d2 */ jal getNumPlayers /* de18: afa5005c */ sw $a1,0x5c($sp) /* de1c: 28410002 */ slti $at,$v0,0x2 /* de20: 14200019 */ bnez $at,.L0000de88 @@ -909,12 +909,12 @@ glabel func0000db3c /* dfc8: 10000001 */ beqz $zero,.L0000dfd0 /* dfcc: 00408825 */ or $s1,$v0,$zero .L0000dfd0: -/* dfd0: 0fc068d2 */ jal func0f01a348 +/* dfd0: 0fc068d2 */ jal getNumPlayers /* dfd4: 00000000 */ sll $zero,$zero,0x0 /* dfd8: 28410002 */ slti $at,$v0,0x2 /* dfdc: 54200005 */ bnezl $at,.L0000dff4 /* dfe0: 2a210002 */ slti $at,$s1,0x2 -/* dfe4: 0fc068d2 */ jal func0f01a348 +/* dfe4: 0fc068d2 */ jal getNumPlayers /* dfe8: 00000000 */ sll $zero,$zero,0x0 /* dfec: 00408825 */ or $s1,$v0,$zero .L0000dff0: diff --git a/src/setup/setup_000000.c b/src/setup/setup_000000.c index 476a16069..dd59f634f 100644 --- a/src/setup/setup_000000.c +++ b/src/setup/setup_000000.c @@ -8270,7 +8270,7 @@ u32 var80062914 = 0x00000000; u32 var80062918 = 0x00000000; u32 var8006291c = 0x00000000; u32 var80062920 = 0x00000000; -u32 var80062924 = 0x00000000; +s32 g_NumPlayers = 0; u32 var80062928 = 0x00000000; u32 var8006292c = 0x00000001; u32 var80062930 = 0x00000001;