From a665b351a4a2be3e754707d2b7d6bc9d63523860 Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Tue, 14 Sep 2021 22:53:36 +1000 Subject: [PATCH] Decompile filelistsTick --- src/game/game_01bea0.c | 8 +- src/game/game_107fb0.c | 10 +- src/game/game_110680.c | 325 +++++++-------------------------- src/game/pak/pak.c | 2 +- src/include/game/game_110680.h | 4 +- src/include/game/pak/pak.h | 1 + src/include/types.h | 4 +- 7 files changed, 86 insertions(+), 268 deletions(-) diff --git a/src/game/game_01bea0.c b/src/game/game_01bea0.c index 1b40227dd..0f4768315 100644 --- a/src/game/game_01bea0.c +++ b/src/game/game_01bea0.c @@ -980,7 +980,7 @@ glabel var7f1a863c /* f01cc5c: 91ce2614 */ lbu $t6,0x2614($t6) /* f01cc60: 11c0000b */ beqz $t6,.PF0f01cc90 /* f01cc64: 00000000 */ nop -/* f01cc68: 0fc44622 */ jal func0f110da8 +/* f01cc68: 0fc44622 */ jal filelistsTick /* f01cc6c: 00000000 */ nop /* f01cc70: 10000007 */ b .PF0f01cc90 /* f01cc74: 00000000 */ nop @@ -2757,7 +2757,7 @@ glabel var7f1a863c /* f01cb8c: 93182944 */ lbu $t8,%lo(var80062944)($t8) /* f01cb90: 1300000b */ beqz $t8,.L0f01cbc0 /* f01cb94: 00000000 */ nop -/* f01cb98: 0fc4436a */ jal func0f110da8 +/* f01cb98: 0fc4436a */ jal filelistsTick /* f01cb9c: 00000000 */ nop /* f01cba0: 10000007 */ b .L0f01cbc0 /* f01cba4: 00000000 */ nop @@ -4525,7 +4525,7 @@ glabel var7f1a863c /* f01c86c: 93184e54 */ lbu $t8,0x4e54($t8) /* f01c870: 1300000b */ beqz $t8,.NB0f01c8a0 /* f01c874: 00000000 */ sll $zero,$zero,0x0 -/* f01c878: 0fc42c80 */ jal func0f110da8 +/* f01c878: 0fc42c80 */ jal filelistsTick /* f01c87c: 00000000 */ sll $zero,$zero,0x0 /* f01c880: 10000007 */ beqz $zero,.NB0f01c8a0 /* f01c884: 00000000 */ sll $zero,$zero,0x0 @@ -5810,7 +5810,7 @@ glabel var7f1a863c // } // // if (var80062944) { -// func0f110da8(); +// filelistsTick(); // } // } else { // // cba8 diff --git a/src/game/game_107fb0.c b/src/game/game_107fb0.c index 3401c10c3..fc9a99e42 100644 --- a/src/game/game_107fb0.c +++ b/src/game/game_107fb0.c @@ -592,7 +592,7 @@ void filemgrEraseCorruptFile(void) for (i = 0; i < 4; i++) { if (g_FileLists[i]) { - g_FileLists[i]->outdated = true; + g_FileLists[i]->timeuntilupdate = 1; } } @@ -1103,7 +1103,7 @@ void filemgrDeleteCurrentFile(void) error = true; } - g_FileLists[g_Menus[g_MpPlayerNum].listnum]->outdated = true; + g_FileLists[g_Menus[g_MpPlayerNum].listnum]->timeuntilupdate = 1; if (error) { g_Menus[g_MpPlayerNum].unke3c = index; @@ -1895,7 +1895,7 @@ void filemgrPushSelectLocationDialog(s32 arg0, u32 filetype) g_Menus[g_MpPlayerNum].listnum = func0f110cf8(filetype); #if VERSION >= VERSION_NTSC_1_0 - func0f110da8(); + filelistsTick(); #endif menuPushDialog(&g_FilemgrSelectLocationMenuDialog); @@ -2612,7 +2612,7 @@ s32 filemgrChooseAgentListMenuHandler(s32 operation, struct menuitem *item, unio g_Menus[g_MpPlayerNum].data.filemgr.unke2c = 0; } - if (g_FileLists[0]->unk30e) { + if (g_FileLists[0]->updatedthisframe) { pass = true; } } else { @@ -2812,7 +2812,7 @@ s32 filemgrMainMenuDialog(s32 operation, struct menudialog *dialog, union handle break; #if VERSION < VERSION_NTSC_1_0 case MENUOP_TICK: - func0f110da8(); + filelistsTick(); break; #endif } diff --git a/src/game/game_110680.c b/src/game/game_110680.c index 859a4cea3..e036db0a5 100644 --- a/src/game/game_110680.c +++ b/src/game/game_110680.c @@ -25,26 +25,15 @@ u8 var800a22d0[0x5b]; s8 g_AltTitleUnlocked; u8 g_AltTitleEnabled; -s32 var800a2330[1]; -u32 var800a2334; -u32 var800a2338; -u32 var800a233c; -u32 var800a2340; +s32 var800a2330[5]; u32 var800a2344; u32 var800a2348; u32 var800a234c; struct filelist *g_FileLists[] = { NULL, NULL, NULL, NULL }; bool var80075bd0[] = { true, true, true, true }; - -u32 var80075be0 = 0; -u32 var80075be4 = 0; -u32 var80075be8 = 0; -u32 var80075bec = 0; -u32 var80075bf0 = 0; -u32 var80075bf4 = 0; -u32 var80075bf8 = 0; -u32 var80075bfc = 0; +bool var80075be0[] = { false, false, false, false }; +u32 var80075bf0 = false; void bossfileSetDefaults2(void) { @@ -271,7 +260,7 @@ void func0f110c5c(s32 listnum, u8 filetype) g_FileLists[listnum] = func00012ab0(align16(sizeof(struct filelist))); } - g_FileLists[listnum]->outdated = true; + g_FileLists[listnum]->timeuntilupdate = 1; g_FileLists[listnum]->filetype = filetype; if (var80062944 == 0) { @@ -313,247 +302,75 @@ void func0f110d90(s32 index) } #endif +void filelistsTick(void) +{ + u32 updateall; + u32 update; + s32 i; + static bool var80075bf4 = false; + + if (!var80075bf4) { + for (i = 0; i < 5; i++) { + var800a2330[i] = -1; + } + + var80075bf4 = true; + } + + i = 0; + updateall = false; + + for (; i < 5; i++) { #if VERSION >= VERSION_NTSC_1_0 -GLOBAL_ASM( -glabel func0f110da8 -/* f110da8: 27bdffd0 */ addiu $sp,$sp,-48 -/* f110dac: 3c0e8007 */ lui $t6,%hi(var80075bf4) -/* f110db0: 8dce5bf4 */ lw $t6,%lo(var80075bf4)($t6) -/* f110db4: afbf002c */ sw $ra,0x2c($sp) -/* f110db8: afb40028 */ sw $s4,0x28($sp) -/* f110dbc: afb30024 */ sw $s3,0x24($sp) -/* f110dc0: afb20020 */ sw $s2,0x20($sp) -/* f110dc4: afb1001c */ sw $s1,0x1c($sp) -/* f110dc8: 15c0000c */ bnez $t6,.L0f110dfc -/* f110dcc: afb00018 */ sw $s0,0x18($sp) -/* f110dd0: 3c10800a */ lui $s0,%hi(var800a2330) -/* f110dd4: 3c03800a */ lui $v1,%hi(var800a2344) -/* f110dd8: 24632344 */ addiu $v1,$v1,%lo(var800a2344) -/* f110ddc: 26102330 */ addiu $s0,$s0,%lo(var800a2330) -/* f110de0: 2402ffff */ addiu $v0,$zero,-1 -.L0f110de4: -/* f110de4: 26100004 */ addiu $s0,$s0,0x4 -/* f110de8: 1603fffe */ bne $s0,$v1,.L0f110de4 -/* f110dec: ae02fffc */ sw $v0,-0x4($s0) -/* f110df0: 240f0001 */ addiu $t7,$zero,0x1 -/* f110df4: 3c018007 */ lui $at,%hi(var80075bf4) -/* f110df8: ac2f5bf4 */ sw $t7,%lo(var80075bf4)($at) -.L0f110dfc: -/* f110dfc: 00009025 */ or $s2,$zero,$zero -/* f110e00: 00009825 */ or $s3,$zero,$zero -/* f110e04: 00128e00 */ sll $s1,$s2,0x18 -.L0f110e08: -/* f110e08: 0011c603 */ sra $t8,$s1,0x18 -/* f110e0c: 00182600 */ sll $a0,$t8,0x18 -/* f110e10: 0004ce03 */ sra $t9,$a0,0x18 -/* f110e14: 03202025 */ or $a0,$t9,$zero -/* f110e18: 0fc459f6 */ jal func0f1167d8 -/* f110e1c: 03008825 */ or $s1,$t8,$zero -/* f110e20: 10400010 */ beqz $v0,.L0f110e64 -/* f110e24: 00112600 */ sll $a0,$s1,0x18 -/* f110e28: 3c0a800a */ lui $t2,%hi(var800a2330) -/* f110e2c: 254a2330 */ addiu $t2,$t2,%lo(var800a2330) -/* f110e30: 00044603 */ sra $t0,$a0,0x18 -/* f110e34: 00124880 */ sll $t1,$s2,0x2 -/* f110e38: 012a8021 */ addu $s0,$t1,$t2 -/* f110e3c: 0fc45c0b */ jal func0f11702c -/* f110e40: 01002025 */ or $a0,$t0,$zero -/* f110e44: 8e0b0000 */ lw $t3,0x0($s0) -/* f110e48: 00112600 */ sll $a0,$s1,0x18 -/* f110e4c: 00046603 */ sra $t4,$a0,0x18 -/* f110e50: 104b0004 */ beq $v0,$t3,.L0f110e64 -/* f110e54: 01802025 */ or $a0,$t4,$zero -/* f110e58: 0fc45c0b */ jal func0f11702c -/* f110e5c: 24130001 */ addiu $s3,$zero,0x1 -/* f110e60: ae020000 */ sw $v0,0x0($s0) -.L0f110e64: -/* f110e64: 26520001 */ addiu $s2,$s2,0x1 -/* f110e68: 2a410005 */ slti $at,$s2,0x5 -/* f110e6c: 5420ffe6 */ bnezl $at,.L0f110e08 -/* f110e70: 00128e00 */ sll $s1,$s2,0x18 -/* f110e74: 3c108007 */ lui $s0,%hi(g_FileLists) -/* f110e78: 3c148007 */ lui $s4,%hi(g_FileLists+0x10) -/* f110e7c: 3c118007 */ lui $s1,%hi(g_FileLists+0x10) -/* f110e80: 26315bd0 */ addiu $s1,$s1,%lo(g_FileLists+0x10) -/* f110e84: 26945bd0 */ addiu $s4,$s4,%lo(g_FileLists+0x10) -/* f110e88: 26105bc0 */ addiu $s0,$s0,%lo(g_FileLists) -/* f110e8c: 24120001 */ addiu $s2,$zero,0x1 -/* f110e90: 8e040000 */ lw $a0,0x0($s0) -.L0f110e94: -/* f110e94: 5080001b */ beqzl $a0,.L0f110f04 -/* f110e98: 26100004 */ addiu $s0,$s0,0x4 -/* f110e9c: a080030e */ sb $zero,0x30e($a0) -/* f110ea0: 8e040000 */ lw $a0,0x0($s0) -/* f110ea4: 02601825 */ or $v1,$s3,$zero -/* f110ea8: 9082030c */ lbu $v0,0x30c($a0) -/* f110eac: 18400007 */ blez $v0,.L0f110ecc -/* f110eb0: 244dffff */ addiu $t5,$v0,-1 -/* f110eb4: a08d030c */ sb $t5,0x30c($a0) -/* f110eb8: 8e040000 */ lw $a0,0x0($s0) -/* f110ebc: 908e030c */ lbu $t6,0x30c($a0) -/* f110ec0: 55c00003 */ bnezl $t6,.L0f110ed0 -/* f110ec4: 908f030b */ lbu $t7,0x30b($a0) -/* f110ec8: 02401825 */ or $v1,$s2,$zero -.L0f110ecc: -/* f110ecc: 908f030b */ lbu $t7,0x30b($a0) -.L0f110ed0: -/* f110ed0: 000fc080 */ sll $t8,$t7,0x2 -/* f110ed4: 0238c821 */ addu $t9,$s1,$t8 -/* f110ed8: 8f280000 */ lw $t0,0x0($t9) -/* f110edc: 11000002 */ beqz $t0,.L0f110ee8 -/* f110ee0: 00000000 */ nop -/* f110ee4: 02401825 */ or $v1,$s2,$zero -.L0f110ee8: -/* f110ee8: 50600006 */ beqzl $v1,.L0f110f04 -/* f110eec: 26100004 */ addiu $s0,$s0,0x4 -/* f110ef0: 0fc443d3 */ jal func0f110f4c -/* f110ef4: 00000000 */ nop -/* f110ef8: 8e090000 */ lw $t1,0x0($s0) -/* f110efc: a132030e */ sb $s2,0x30e($t1) -/* f110f00: 26100004 */ addiu $s0,$s0,0x4 -.L0f110f04: -/* f110f04: 0214082b */ sltu $at,$s0,$s4 -/* f110f08: 5420ffe2 */ bnezl $at,.L0f110e94 -/* f110f0c: 8e040000 */ lw $a0,0x0($s0) -/* f110f10: 3c028007 */ lui $v0,%hi(g_FileLists+0x10) -/* f110f14: 3c038007 */ lui $v1,%hi(var80075be0) -/* f110f18: 24635be0 */ addiu $v1,$v1,%lo(var80075be0) -/* f110f1c: 24425bd0 */ addiu $v0,$v0,%lo(g_FileLists+0x10) -.L0f110f20: -/* f110f20: 24420004 */ addiu $v0,$v0,0x4 -/* f110f24: 1443fffe */ bne $v0,$v1,.L0f110f20 -/* f110f28: ac40fffc */ sw $zero,-0x4($v0) -/* f110f2c: 8fbf002c */ lw $ra,0x2c($sp) -/* f110f30: 8fb00018 */ lw $s0,0x18($sp) -/* f110f34: 8fb1001c */ lw $s1,0x1c($sp) -/* f110f38: 8fb20020 */ lw $s2,0x20($sp) -/* f110f3c: 8fb30024 */ lw $s3,0x24($sp) -/* f110f40: 8fb40028 */ lw $s4,0x28($sp) -/* f110f44: 03e00008 */ jr $ra -/* f110f48: 27bd0030 */ addiu $sp,$sp,0x30 -); + if (func0f1167d8(i) && var800a2330[i] != func0f11702c(i)) { + updateall = true; + var800a2330[i] = func0f11702c(i); + } #else -GLOBAL_ASM( -glabel func0f110da8 -/* f10b200: 27bdffd0 */ addiu $sp,$sp,-48 -/* f10b204: 3c0e8007 */ lui $t6,0x8007 -/* f10b208: 8dce7f94 */ lw $t6,0x7f94($t6) -/* f10b20c: afbf002c */ sw $ra,0x2c($sp) -/* f10b210: afb40028 */ sw $s4,0x28($sp) -/* f10b214: afb30024 */ sw $s3,0x24($sp) -/* f10b218: afb20020 */ sw $s2,0x20($sp) -/* f10b21c: afb1001c */ sw $s1,0x1c($sp) -/* f10b220: 15c0000c */ bnez $t6,.NB0f10b254 -/* f10b224: afb00018 */ sw $s0,0x18($sp) -/* f10b228: 3c10800a */ lui $s0,0x800a -/* f10b22c: 3c03800a */ lui $v1,0x800a -/* f10b230: 24636834 */ addiu $v1,$v1,0x6834 -/* f10b234: 26106820 */ addiu $s0,$s0,0x6820 -/* f10b238: 2402ffff */ addiu $v0,$zero,-1 -.NB0f10b23c: -/* f10b23c: 26100004 */ addiu $s0,$s0,0x4 -/* f10b240: 1603fffe */ bne $s0,$v1,.NB0f10b23c -/* f10b244: ae02fffc */ sw $v0,-0x4($s0) -/* f10b248: 240f0001 */ addiu $t7,$zero,0x1 -/* f10b24c: 3c018007 */ lui $at,0x8007 -/* f10b250: ac2f7f94 */ sw $t7,0x7f94($at) -.NB0f10b254: -/* f10b254: 3c10800a */ lui $s0,0x800a -/* f10b258: 26106820 */ addiu $s0,$s0,0x6820 -/* f10b25c: 00009825 */ or $s3,$zero,$zero -/* f10b260: 0000a025 */ or $s4,$zero,$zero -.NB0f10b264: -/* f10b264: 00138e00 */ sll $s1,$s3,0x18 -/* f10b268: 0011c603 */ sra $t8,$s1,0x18 -/* f10b26c: 00182600 */ sll $a0,$t8,0x18 -/* f10b270: 0004ce03 */ sra $t9,$a0,0x18 -/* f10b274: 03202025 */ or $a0,$t9,$zero -/* f10b278: 0fc444e1 */ jal func0f11702c -/* f10b27c: 03008825 */ or $s1,$t8,$zero -/* f10b280: 00112600 */ sll $a0,$s1,0x18 -/* f10b284: 00044603 */ sra $t0,$a0,0x18 -/* f10b288: 00409025 */ or $s2,$v0,$zero -/* f10b28c: 0fc44354 */ jal func0f11698c -/* f10b290: 01002025 */ or $a0,$t0,$zero -/* f10b294: 00112600 */ sll $a0,$s1,0x18 -/* f10b298: 00044e03 */ sra $t1,$a0,0x18 -/* f10b29c: 0fc442e7 */ jal func0f1167d8 -/* f10b2a0: 01202025 */ or $a0,$t1,$zero -/* f10b2a4: 10400002 */ beqz $v0,.NB0f10b2b0 -/* f10b2a8: 26730001 */ addiu $s3,$s3,0x1 -/* f10b2ac: 00009025 */ or $s2,$zero,$zero -.NB0f10b2b0: -/* f10b2b0: 8e0a0000 */ lw $t2,0x0($s0) -/* f10b2b4: 2a610005 */ slti $at,$s3,0x5 -/* f10b2b8: 124a0003 */ beq $s2,$t2,.NB0f10b2c8 -/* f10b2bc: 00000000 */ sll $zero,$zero,0x0 -/* f10b2c0: 24140001 */ addiu $s4,$zero,0x1 -/* f10b2c4: ae120000 */ sw $s2,0x0($s0) -.NB0f10b2c8: -/* f10b2c8: 1420ffe6 */ bnez $at,.NB0f10b264 -/* f10b2cc: 26100004 */ addiu $s0,$s0,0x4 -/* f10b2d0: 3c108007 */ lui $s0,0x8007 -/* f10b2d4: 3c138007 */ lui $s3,0x8007 -/* f10b2d8: 3c118007 */ lui $s1,0x8007 -/* f10b2dc: 26317f70 */ addiu $s1,$s1,0x7f70 -/* f10b2e0: 26737f70 */ addiu $s3,$s3,0x7f70 -/* f10b2e4: 26107f60 */ addiu $s0,$s0,0x7f60 -/* f10b2e8: 24120001 */ addiu $s2,$zero,0x1 -/* f10b2ec: 8e040000 */ lw $a0,0x0($s0) -.NB0f10b2f0: -/* f10b2f0: 5080001b */ beqzl $a0,.NB0f10b360 -/* f10b2f4: 26100004 */ addiu $s0,$s0,0x4 -/* f10b2f8: a080030e */ sb $zero,0x30e($a0) -/* f10b2fc: 8e040000 */ lw $a0,0x0($s0) -/* f10b300: 02801825 */ or $v1,$s4,$zero -/* f10b304: 9082030c */ lbu $v0,0x30c($a0) -/* f10b308: 18400007 */ blez $v0,.NB0f10b328 -/* f10b30c: 244bffff */ addiu $t3,$v0,-1 -/* f10b310: a08b030c */ sb $t3,0x30c($a0) -/* f10b314: 8e040000 */ lw $a0,0x0($s0) -/* f10b318: 908c030c */ lbu $t4,0x30c($a0) -/* f10b31c: 55800003 */ bnezl $t4,.NB0f10b32c -/* f10b320: 908d030b */ lbu $t5,0x30b($a0) -/* f10b324: 02401825 */ or $v1,$s2,$zero -.NB0f10b328: -/* f10b328: 908d030b */ lbu $t5,0x30b($a0) -.NB0f10b32c: -/* f10b32c: 000d7080 */ sll $t6,$t5,0x2 -/* f10b330: 022e7821 */ addu $t7,$s1,$t6 -/* f10b334: 8df80000 */ lw $t8,0x0($t7) -/* f10b338: 13000002 */ beqz $t8,.NB0f10b344 -/* f10b33c: 00000000 */ sll $zero,$zero,0x0 -/* f10b340: 02401825 */ or $v1,$s2,$zero -.NB0f10b344: -/* f10b344: 50600006 */ beqzl $v1,.NB0f10b360 -/* f10b348: 26100004 */ addiu $s0,$s0,0x4 -/* f10b34c: 0fc42cea */ jal func0f110f4c -/* f10b350: 00000000 */ sll $zero,$zero,0x0 -/* f10b354: 8e190000 */ lw $t9,0x0($s0) -/* f10b358: a332030e */ sb $s2,0x30e($t9) -/* f10b35c: 26100004 */ addiu $s0,$s0,0x4 -.NB0f10b360: -/* f10b360: 0213082b */ sltu $at,$s0,$s3 -/* f10b364: 5420ffe2 */ bnezl $at,.NB0f10b2f0 -/* f10b368: 8e040000 */ lw $a0,0x0($s0) -/* f10b36c: 3c028007 */ lui $v0,0x8007 -/* f10b370: 3c038007 */ lui $v1,0x8007 -/* f10b374: 24637f80 */ addiu $v1,$v1,0x7f80 -/* f10b378: 24427f70 */ addiu $v0,$v0,0x7f70 -.NB0f10b37c: -/* f10b37c: 24420004 */ addiu $v0,$v0,0x4 -/* f10b380: 1443fffe */ bne $v0,$v1,.NB0f10b37c -/* f10b384: ac40fffc */ sw $zero,-0x4($v0) -/* f10b388: 8fbf002c */ lw $ra,0x2c($sp) -/* f10b38c: 8fb00018 */ lw $s0,0x18($sp) -/* f10b390: 8fb1001c */ lw $s1,0x1c($sp) -/* f10b394: 8fb20020 */ lw $s2,0x20($sp) -/* f10b398: 8fb30024 */ lw $s3,0x24($sp) -/* f10b39c: 8fb40028 */ lw $s4,0x28($sp) -/* f10b3a0: 03e00008 */ jr $ra -/* f10b3a4: 27bd0030 */ addiu $sp,$sp,0x30 -); + s32 tmp = func0f11702c(i); + + func0f11698c(i); + + if (func0f1167d8(i)) { + tmp = 0; + } + + if (var800a2330[i] != tmp) { + updateall = true; + var800a2330[i] = tmp; + } #endif + } + + for (i = 0; i < 4; i++) { + if (g_FileLists[i] != NULL) { + g_FileLists[i]->updatedthisframe = false; + + update = updateall; + + if (g_FileLists[i]->timeuntilupdate > 0) { + g_FileLists[i]->timeuntilupdate--; + + if (g_FileLists[i]->timeuntilupdate == 0) { + update = true; + } + } + + if (var80075bd0[g_FileLists[i]->filetype]) { + update = true; + } + + if (update) { + filelistUpdate(g_FileLists[i]); + g_FileLists[i]->updatedthisframe = true; + } + } + } + + for (i = 0; i < 4; i++) { + var80075bd0[i] = false; + } +} const char var7f1b39c8[] = ""; const char var7f1b39cc[] = ""; @@ -572,7 +389,7 @@ const char var7f1b3a08[] = "tc != NULL"; const char var7f1b3a14[] = "gamefile.c"; GLOBAL_ASM( -glabel func0f110f4c +glabel filelistUpdate /* f110f4c: 27bdc568 */ addiu $sp,$sp,-15000 /* f110f50: 3c0e7f1b */ lui $t6,%hi(var7f1b39e8) /* f110f54: afbf003c */ sw $ra,0x3c($sp) diff --git a/src/game/pak/pak.c b/src/game/pak/pak.c index 6b5925d66..d8bc14983 100644 --- a/src/game/pak/pak.c +++ b/src/game/pak/pak.c @@ -294,7 +294,7 @@ void func0f116984(s8 arg0, u8 *arg1, u8 *arg2) func0f116bdc(arg0, arg1, arg2); } -void func0f11698c(u32 arg0) +void func0f11698c(s8 device) { // empty } diff --git a/src/include/game/game_110680.h b/src/include/game/game_110680.h index 7ea93da30..aa7d08a1e 100644 --- a/src/include/game/game_110680.h +++ b/src/include/game/game_110680.h @@ -14,8 +14,8 @@ void func0f110bf8(void); void func0f110c5c(s32 listnum, u8 filetype); s32 func0f110cf8(u8 filetype); void func0f110d90(s32 index); -void func0f110da8(void); -u32 func0f110f4c(void); +void filelistsTick(void); +void filelistUpdate(struct filelist *list); struct textureconfig *func0f111460(s32 playernum, s32 arg1, s32 arg2); #endif diff --git a/src/include/game/pak/pak.h b/src/include/game/pak/pak.h index 652b3b468..975633ccf 100644 --- a/src/include/game/pak/pak.h +++ b/src/include/game/pak/pak.h @@ -19,6 +19,7 @@ s32 pakDeleteGameNote(s8 device, u16 company_code, u32 game_code, char *game_nam s32 func0f1168c4(s8 device, struct pakdata **arg1); u32 func0f116914(s8 device); s32 func0f11693c(s8 device); +void func0f11698c(s8 device); void func0f116994(void); void func0f1169c8(s8 device, s32 arg1); bool func0f116aec(s8 device); diff --git a/src/include/types.h b/src/include/types.h index e5e3f9c90..5d2fd9f97 100644 --- a/src/include/types.h +++ b/src/include/types.h @@ -4692,9 +4692,9 @@ struct filelist { /*0x309*/ u8 unk309; /*0x30a*/ u8 unk30a; /*0x30b*/ u8 filetype; - /*0x30c*/ u8 outdated; + /*0x30c*/ u8 timeuntilupdate; /*0x30d*/ u8 unk30d; - /*0x30e*/ u8 unk30e; + /*0x30e*/ u8 updatedthisframe; }; struct challenge {