Decompile textGetFileId

This commit is contained in:
Ryan Dwyer 2019-11-16 19:41:30 +10:00
parent ac30f2ad9b
commit 413adf5770
5 changed files with 19 additions and 30 deletions

View File

@ -110,7 +110,7 @@ glabel func0f00b320
/* f00b340: 24420004 */ addiu $v0,$v0,0x4
/* f00b344: 1443fffe */ bne $v0,$v1,.L0f00b340
/* f00b348: ac40fffc */ sw $zero,-0x4($v0)
/* f00b34c: 0fc5b9bd */ jal func0f16e6f4
/* f00b34c: 0fc5b9bd */ jal textGetFileId
/* f00b350: 24040026 */ addiu $a0,$zero,0x26
/* f00b354: 00402025 */ or $a0,$v0,$zero
/* f00b358: 0fc59c3f */ jal func0f1670fc
@ -118,31 +118,31 @@ glabel func0f00b320
/* f00b360: 3c10800b */ lui $s0,%hi(g_TextBanks)
/* f00b364: 2610aaa0 */ addiu $s0,$s0,%lo(g_TextBanks)
/* f00b368: ae020098 */ sw $v0,0x98($s0)
/* f00b36c: 0fc5b9bd */ jal func0f16e6f4
/* f00b36c: 0fc5b9bd */ jal textGetFileId
/* f00b370: 24040028 */ addiu $a0,$zero,0x28
/* f00b374: 00402025 */ or $a0,$v0,$zero
/* f00b378: 0fc59c3f */ jal func0f1670fc
/* f00b37c: 24050022 */ addiu $a1,$zero,0x22
/* f00b380: ae0200a0 */ sw $v0,0xa0($s0)
/* f00b384: 0fc5b9bd */ jal func0f16e6f4
/* f00b384: 0fc5b9bd */ jal textGetFileId
/* f00b388: 24040029 */ addiu $a0,$zero,0x29
/* f00b38c: 00402025 */ or $a0,$v0,$zero
/* f00b390: 0fc59c3f */ jal func0f1670fc
/* f00b394: 24050022 */ addiu $a1,$zero,0x22
/* f00b398: ae0200a4 */ sw $v0,0xa4($s0)
/* f00b39c: 0fc5b9bd */ jal func0f16e6f4
/* f00b39c: 0fc5b9bd */ jal textGetFileId
/* f00b3a0: 2404002a */ addiu $a0,$zero,0x2a
/* f00b3a4: 00402025 */ or $a0,$v0,$zero
/* f00b3a8: 0fc59c3f */ jal func0f1670fc
/* f00b3ac: 24050022 */ addiu $a1,$zero,0x22
/* f00b3b0: ae0200a8 */ sw $v0,0xa8($s0)
/* f00b3b4: 0fc5b9bd */ jal func0f16e6f4
/* f00b3b4: 0fc5b9bd */ jal textGetFileId
/* f00b3b8: 2404002b */ addiu $a0,$zero,0x2b
/* f00b3bc: 00402025 */ or $a0,$v0,$zero
/* f00b3c0: 0fc59c3f */ jal func0f1670fc
/* f00b3c4: 24050022 */ addiu $a1,$zero,0x22
/* f00b3c8: ae0200ac */ sw $v0,0xac($s0)
/* f00b3cc: 0fc5b9bd */ jal func0f16e6f4
/* f00b3cc: 0fc5b9bd */ jal textGetFileId
/* f00b3d0: 2404002c */ addiu $a0,$zero,0x2c
/* f00b3d4: 00402025 */ or $a0,$v0,$zero
/* f00b3d8: 0fc59c3f */ jal func0f1670fc
@ -152,7 +152,7 @@ glabel func0f00b320
/* f00b3e8: ae0200b0 */ sw $v0,0xb0($s0)
/* f00b3ec: 55c10008 */ bnel $t6,$at,.L0f00b410
/* f00b3f0: 8fbf001c */ lw $ra,0x1c($sp)
/* f00b3f4: 0fc5b9bd */ jal func0f16e6f4
/* f00b3f4: 0fc5b9bd */ jal textGetFileId
/* f00b3f8: 24040027 */ addiu $a0,$zero,0x27
/* f00b3fc: 00402025 */ or $a0,$v0,$zero
/* f00b400: 0fc59c3f */ jal func0f1670fc

View File

@ -1973,33 +1973,21 @@ glabel func0f16e6d4
/* f16e6f0: 00601025 */ or $v0,$v1,$zero
);
GLOBAL_ASM(
glabel func0f16e6f4
/* f16e6f4: 27bdffe8 */ addiu $sp,$sp,-24
/* f16e6f8: afbf0014 */ sw $ra,0x14($sp)
/* f16e6fc: 0fc5b9b5 */ jal func0f16e6d4
/* f16e700: afa40018 */ sw $a0,0x18($sp)
/* f16e704: 8fae0018 */ lw $t6,0x18($sp)
/* f16e708: 3c188008 */ lui $t8,0x8008
/* f16e70c: 8fbf0014 */ lw $ra,0x14($sp)
/* f16e710: 000e7840 */ sll $t7,$t6,0x1
/* f16e714: 030fc021 */ addu $t8,$t8,$t7
/* f16e718: 97184124 */ lhu $t8,0x4124($t8)
/* f16e71c: 27bd0018 */ addiu $sp,$sp,0x18
/* f16e720: 03e00008 */ jr $ra
/* f16e724: 00581021 */ addu $v0,$v0,$t8
);
s32 textGetFileId(s32 bank)
{
return langtable[bank] + func0f16e6d4();
}
void textSetBankSimple(s32 bank)
{
void *ptr = func0f16e6f4(bank);
g_TextBanks[bank] = func0f1670fc(ptr, 0x22);
s32 file_id = textGetFileId(bank);
g_TextBanks[bank] = func0f1670fc(file_id, 0x22);
}
void textSetBank(s32 bank, s32 arg1, s32 arg2)
{
void *ptr = func0f16e6f4(bank);
g_TextBanks[bank] = func0f167200(ptr, 0x22, arg1, arg2);
s32 file_id = textGetFileId(bank);
g_TextBanks[bank] = func0f167200(file_id, 0x22, arg1, arg2);
}
void textClearBank(s32 bank)

View File

@ -22,8 +22,8 @@ u32 func0f166eb4(void);
u32 func0f166f74(void);
u32 func0f166ff0(void);
u32 func0f167054(void);
char *func0f1670fc(void *ptr, s32 arg1);
char *func0f167200(void *ptr, s32 arg1, s32 arg2, s32 arg3);
char *func0f1670fc(s32 file_id, s32 arg1);
char *func0f167200(s32 file_id, s32 arg1, s32 arg2, s32 arg3);
u32 func0f167280(void);
u32 func0f167294(void);
u32 func0f1672a8(void);

View File

@ -43,7 +43,7 @@ u32 func0f16e138(void);
u32 func0f16e1e0(s32 arg0);
u32 func0f16e3fc(void);
u32 func0f16e6d4(void);
void *func0f16e6f4(s32 bank);
s32 textGetFileId(s32 bank);
void textSetBankSimple(s32 bank);
void textSetBank(s32 bank, s32 arg1, s32 arg2);
void textClearBank(s32 bank);

View File

@ -204,6 +204,7 @@ extern u32 var80081058;
extern struct smallsky smallskies[];
extern u32 var80082050;
extern u32 filetable[];
extern u16 langtable[];
extern u32 var80084008;
extern s32 var80084034;
extern u32 var80084038;