From ba0b4c444eb7676108f545e62f829f53bd1f88ff Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Wed, 25 Dec 2019 14:37:26 +1000 Subject: [PATCH] Decompile func0f0220ac --- src/game/chr/chr.c | 29 ++++++++--------------------- src/include/game/chr/chr.h | 6 +++--- src/include/game/game_0601b0.h | 4 ++-- 3 files changed, 13 insertions(+), 26 deletions(-) diff --git a/src/game/chr/chr.c b/src/game/chr/chr.c index c1ef9f12f..ba5146edd 100644 --- a/src/game/chr/chr.c +++ b/src/game/chr/chr.c @@ -5385,30 +5385,17 @@ glabel func0f021fa8 /* f022080: 00000000 */ sll $zero,$zero,0x0 ); -void func0f022084(struct chrdata *chr, s32 arg1) +void func0f022084(struct chrdata *chr, s16 *room) { - func0f021fa8(chr, &chr->pos->coord, arg1); + func0f021fa8(chr, &chr->pos->coord, room); } -GLOBAL_ASM( -glabel func0f0220ac -/* f0220ac: 27bdffe8 */ addiu $sp,$sp,-24 -/* f0220b0: afbf0014 */ sw $ra,0x14($sp) -/* f0220b4: afa40018 */ sw $a0,0x18($sp) -/* f0220b8: 0fc19711 */ jal func0f065c44 -/* f0220bc: 8c84001c */ lw $a0,0x1c($a0) -/* f0220c0: 8fa40018 */ lw $a0,0x18($sp) -/* f0220c4: 8c85001c */ lw $a1,0x1c($a0) -/* f0220c8: 0fc08821 */ jal func0f022084 -/* f0220cc: 24a50028 */ addiu $a1,$a1,0x28 -/* f0220d0: 8faf0018 */ lw $t7,0x18($sp) -/* f0220d4: 0fc1972c */ jal func0f065cb0 -/* f0220d8: 8de4001c */ lw $a0,0x1c($t7) -/* f0220dc: 8fbf0014 */ lw $ra,0x14($sp) -/* f0220e0: 27bd0018 */ addiu $sp,$sp,0x18 -/* f0220e4: 03e00008 */ jr $ra -/* f0220e8: 00000000 */ sll $zero,$zero,0x0 -); +void func0f0220ac(struct chrdata *chr) +{ + func0f065c44(chr->pos); + func0f022084(chr, &chr->pos->room); + func0f065cb0(chr->pos); +} GLOBAL_ASM( glabel func0f0220ec diff --git a/src/include/game/chr/chr.h b/src/include/game/chr/chr.h index 13858949d..822218653 100644 --- a/src/include/game/chr/chr.h +++ b/src/include/game/chr/chr.h @@ -57,9 +57,9 @@ u32 func0f021258(void); u32 func0f02133c(void); u32 func0f0213a0(void); u32 func0f02143c(void); -void func0f021fa8(struct chrdata *chr, struct coord *coord, s32 arg2); -void func0f022084(struct chrdata *chr, s32 arg1); -u32 func0f0220ac(struct chrdata *chr); +void func0f021fa8(struct chrdata *chr, struct coord *coord, s16 *room); +void func0f022084(struct chrdata *chr, s16 *room); +void func0f0220ac(struct chrdata *chr); u32 func0f0220ec(void); u32 func0f022214(void); void chrCloak(struct chrdata *chr, bool arg1); diff --git a/src/include/game/game_0601b0.h b/src/include/game/game_0601b0.h index 665b62c6e..98f942a94 100644 --- a/src/include/game/game_0601b0.h +++ b/src/include/game/game_0601b0.h @@ -46,8 +46,8 @@ u32 func0f0658e8(void); u32 func0f06593c(void); u32 func0f0659e4(void); u32 func0f065ae0(void); -u32 func0f065c44(struct position *pos); -u32 func0f065cb0(void); +void func0f065c44(struct position *pos); +void func0f065cb0(struct position *pos); u32 func0f065d1c(void); u32 func0f065dd8(void); u32 func0f065dfc(void);