From b58c15f46b672a2db912042dd46651c52b06f6f3 Mon Sep 17 00:00:00 2001 From: Ryan Dwyer Date: Thu, 19 Mar 2020 19:19:12 +1000 Subject: [PATCH] Decompile frMenuTextDifficultyName --- src/game/data/data_020df0.c | 17 +- src/game/game_19c990.c | 2 +- src/game/game_1a3340.c | 61 +++--- src/include/game/data/data_020df0.h | 2 +- src/include/game/game_19c990.h | 2 +- src/include/game/game_1a3340.h | 2 +- src/include/types.h | 278 ++++++++++++++++++++++++++++ 7 files changed, 316 insertions(+), 48 deletions(-) diff --git a/src/game/data/data_020df0.c b/src/game/data/data_020df0.c index 444ece471..27959ea38 100644 --- a/src/game/data/data_020df0.c +++ b/src/game/data/data_020df0.c @@ -12819,8 +12819,13 @@ u32 var80088c74 = 0x51b90000; u32 var80088c78 = 0x51c851c9; u32 var80088c7c = 0x51ca51cb; u32 var80088c80 = 0x51cc0000; -u32 var80088c84 = 0x51b751b8; -u32 var80088c88 = 0x51b90000; + +u16 g_FiringRangeDifficultyNames[] = { + L_MPMENU(439), // "Bronze" + L_MPMENU(440), // "Silver" + L_MPMENU(441), // "Gold" +}; + u32 var80088c8c = 0x00000000; u32 var80088c90 = 0x00000000; u32 var80088c94 = 0x00000000; @@ -12869,7 +12874,7 @@ struct menu_dialog g_frWeaponMenuDialog = { // 2edb0 struct menu_item menuitems_frtraininginfo[] = { - { MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(443), (u32)&func0f1a3df0, NULL }, // "Difficulty" + { MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(443), (u32)&frMenuTextDifficultyName, NULL }, // "Difficulty" { MENUITEMTYPE_LABEL, 0, 0x00000002, (u32)&func0f1a40e8, (u32)&func0f1a4144, NULL }, { MENUITEMTYPE_LABEL, 0, 0x00000002, (u32)&func0f1a4194, (u32)&func0f1a4230, NULL }, { MENUITEMTYPE_LABEL, 0, 0x00000002, (u32)&func0f1a42b8, (u32)&func0f1a431c, NULL }, @@ -12894,7 +12899,7 @@ struct menu_dialog menudialog_frtraininginfo = { // 2eea4 struct menu_item menuitems_frtraininginfo2[] = { - { MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(443), (u32)&func0f1a3df0, NULL }, // "Difficulty:" + { MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(443), (u32)&frMenuTextDifficultyName, NULL }, // "Difficulty:" { MENUITEMTYPE_LABEL, 0, 0x00000002, (u32)&func0f1a40e8, (u32)&func0f1a4144, NULL }, { MENUITEMTYPE_LABEL, 0, 0x00000002, (u32)&func0f1a4194, (u32)&func0f1a4230, NULL }, { MENUITEMTYPE_LABEL, 0, 0x00000002, (u32)&func0f1a42b8, (u32)&func0f1a431c, NULL }, @@ -12923,7 +12928,7 @@ struct menu_item menuitems_frtrainingstats[] = { { MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(450), (u32)&func0f1a3f48, NULL }, // "Score:" { MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(451), (u32)&func0f1a3ff0, NULL }, // "Targets Destroyed:" { MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL }, - { MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(452), (u32)&func0f1a3df0, NULL }, // "Difficulty:" + { MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(452), (u32)&frMenuTextDifficultyName, NULL }, // "Difficulty:" { MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(453), (u32)&func0f1a3e40, NULL }, // "Time Taken:" { MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL }, { MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(454), (u32)&func0f1a3fc0, NULL }, // "Weapon:" @@ -12950,7 +12955,7 @@ struct menu_item menuitems_frtrainingstats2[] = { { MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(450), (u32)&func0f1a3f48, NULL }, // "Score:" { MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(451), (u32)&func0f1a3ff0, NULL }, // "Targets Destroyed:" { MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL }, - { MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(452), (u32)&func0f1a3df0, NULL }, // "Difficulty:" + { MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(452), (u32)&frMenuTextDifficultyName, NULL }, // "Difficulty:" { MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(453), (u32)&func0f1a3e40, NULL }, // "Time Taken:" { MENUITEMTYPE_SEPARATOR, 0, 0x00000000, 0x00000000, 0x00000000, NULL }, { MENUITEMTYPE_LABEL, 0, 0x00000002, L_MPMENU(454), (u32)&func0f1a3fc0, NULL }, // "Weapon:" diff --git a/src/game/game_19c990.c b/src/game/game_19c990.c index 62f824ac4..66e8e5df2 100644 --- a/src/game/game_19c990.c +++ b/src/game/game_19c990.c @@ -1050,7 +1050,7 @@ glabel func0f19d5f4 ); GLOBAL_ASM( -glabel func0f19d7cc +glabel getFiringRangeData /* f19d7cc: 3c02800b */ lui $v0,%hi(var800acd20) /* f19d7d0: 03e00008 */ jr $ra /* f19d7d4: 2442cd20 */ addiu $v0,$v0,%lo(var800acd20) diff --git a/src/game/game_1a3340.c b/src/game/game_1a3340.c index 5cfc89829..01ef50342 100644 --- a/src/game/game_1a3340.c +++ b/src/game/game_1a3340.c @@ -861,7 +861,7 @@ glabel func0f1a3d98 /* f1a3db8: adc10000 */ sw $at,0x0($t6) /* f1a3dbc: 95e10008 */ lhu $at,0x8($t7) /* f1a3dc0: adc80004 */ sw $t0,0x4($t6) -/* f1a3dc4: 0fc675f3 */ jal func0f19d7cc +/* f1a3dc4: 0fc675f3 */ jal getFiringRangeData /* f1a3dc8: a5c10008 */ sh $at,0x8($t6) /* f1a3dcc: 9049045b */ lbu $t1,0x45b($v0) /* f1a3dd0: 00095040 */ sll $t2,$t1,0x1 @@ -874,35 +874,20 @@ glabel func0f1a3d98 /* f1a3dec: 00000000 */ sll $zero,$zero,0x0 ); -GLOBAL_ASM( -glabel func0f1a3df0 -/* f1a3df0: 27bdffd8 */ addiu $sp,$sp,-40 -/* f1a3df4: 3c0f8009 */ lui $t7,%hi(var80088c84) -/* f1a3df8: afbf0014 */ sw $ra,0x14($sp) -/* f1a3dfc: afa40028 */ sw $a0,0x28($sp) -/* f1a3e00: 25ef8c84 */ addiu $t7,$t7,%lo(var80088c84) -/* f1a3e04: 8de10000 */ lw $at,0x0($t7) -/* f1a3e08: 27ae0020 */ addiu $t6,$sp,0x20 -/* f1a3e0c: adc10000 */ sw $at,0x0($t6) -/* f1a3e10: 95e10004 */ lhu $at,0x4($t7) -/* f1a3e14: 0fc675f3 */ jal func0f19d7cc -/* f1a3e18: a5c10004 */ sh $at,0x4($t6) -/* f1a3e1c: 90490448 */ lbu $t1,0x448($v0) -/* f1a3e20: 00095040 */ sll $t2,$t1,0x1 -/* f1a3e24: 03aa2021 */ addu $a0,$sp,$t2 -/* f1a3e28: 0fc5b9f1 */ jal langGet -/* f1a3e2c: 94840020 */ lhu $a0,0x20($a0) -/* f1a3e30: 8fbf0014 */ lw $ra,0x14($sp) -/* f1a3e34: 27bd0028 */ addiu $sp,$sp,0x28 -/* f1a3e38: 03e00008 */ jr $ra -/* f1a3e3c: 00000000 */ sll $zero,$zero,0x0 -); +char *frMenuTextDifficultyName(struct menu_item *item) +{ + u16 names[3] = g_FiringRangeDifficultyNames; + + struct frdata *frdata = getFiringRangeData(); + + return langGet(names[frdata->difficulty]); +} GLOBAL_ASM( glabel func0f1a3e40 /* f1a3e40: 27bdffd0 */ addiu $sp,$sp,-48 /* f1a3e44: afbf001c */ sw $ra,0x1c($sp) -/* f1a3e48: 0fc675f3 */ jal func0f19d7cc +/* f1a3e48: 0fc675f3 */ jal getFiringRangeData /* f1a3e4c: afa40030 */ sw $a0,0x30($sp) /* f1a3e50: 8c4e044c */ lw $t6,0x44c($v0) /* f1a3e54: 904f0005 */ lbu $t7,0x5($v0) @@ -978,7 +963,7 @@ GLOBAL_ASM( glabel func0f1a3f48 /* f1a3f48: 27bdffe8 */ addiu $sp,$sp,-24 /* f1a3f4c: afbf0014 */ sw $ra,0x14($sp) -/* f1a3f50: 0fc675f3 */ jal func0f19d7cc +/* f1a3f50: 0fc675f3 */ jal getFiringRangeData /* f1a3f54: afa40018 */ sw $a0,0x18($sp) /* f1a3f58: 3c048007 */ lui $a0,%hi(g_StringPointer) /* f1a3f5c: 3c057f1c */ lui $a1,%hi(var7f1b97f8) @@ -993,7 +978,7 @@ glabel func0f1a3f48 /* f1a3f80: 27bd0018 */ addiu $sp,$sp,0x18 /* f1a3f84: 27bdffe8 */ addiu $sp,$sp,-24 /* f1a3f88: afbf0014 */ sw $ra,0x14($sp) -/* f1a3f8c: 0fc675f3 */ jal func0f19d7cc +/* f1a3f8c: 0fc675f3 */ jal getFiringRangeData /* f1a3f90: afa40018 */ sw $a0,0x18($sp) /* f1a3f94: 3c048007 */ lui $a0,%hi(g_StringPointer) /* f1a3f98: 3c057f1c */ lui $a1,%hi(var7f1b97fc) @@ -1028,7 +1013,7 @@ GLOBAL_ASM( glabel func0f1a3ff0 /* f1a3ff0: 27bdffe8 */ addiu $sp,$sp,-24 /* f1a3ff4: afbf0014 */ sw $ra,0x14($sp) -/* f1a3ff8: 0fc675f3 */ jal func0f19d7cc +/* f1a3ff8: 0fc675f3 */ jal getFiringRangeData /* f1a3ffc: afa40018 */ sw $a0,0x18($sp) /* f1a4000: 3c048007 */ lui $a0,%hi(g_StringPointer) /* f1a4004: 3c057f1c */ lui $a1,%hi(var7f1b9800) @@ -1047,7 +1032,7 @@ GLOBAL_ASM( glabel func0f1a402c /* f1a402c: 27bdffe0 */ addiu $sp,$sp,-32 /* f1a4030: afbf001c */ sw $ra,0x1c($sp) -/* f1a4034: 0fc675f3 */ jal func0f19d7cc +/* f1a4034: 0fc675f3 */ jal getFiringRangeData /* f1a4038: afa40020 */ sw $a0,0x20($sp) /* f1a403c: 944e0462 */ lhu $t6,0x462($v0) /* f1a4040: 944f045c */ lhu $t7,0x45c($v0) @@ -1101,7 +1086,7 @@ GLOBAL_ASM( glabel func0f1a40e8 /* f1a40e8: 27bdffe8 */ addiu $sp,$sp,-24 /* f1a40ec: afbf0014 */ sw $ra,0x14($sp) -/* f1a40f0: 0fc675f3 */ jal func0f19d7cc +/* f1a40f0: 0fc675f3 */ jal getFiringRangeData /* f1a40f4: afa40018 */ sw $a0,0x18($sp) /* f1a40f8: 944e0002 */ lhu $t6,0x2($v0) /* f1a40fc: 00001025 */ or $v0,$zero,$zero @@ -1129,7 +1114,7 @@ GLOBAL_ASM( glabel func0f1a4144 /* f1a4144: 27bdffe8 */ addiu $sp,$sp,-24 /* f1a4148: afbf0014 */ sw $ra,0x14($sp) -/* f1a414c: 0fc675f3 */ jal func0f19d7cc +/* f1a414c: 0fc675f3 */ jal getFiringRangeData /* f1a4150: afa40018 */ sw $a0,0x18($sp) /* f1a4154: 944e0002 */ lhu $t6,0x2($v0) /* f1a4158: 3c057f1c */ lui $a1,%hi(var7f1b981c) @@ -1155,7 +1140,7 @@ GLOBAL_ASM( glabel func0f1a4194 /* f1a4194: 27bdffe8 */ addiu $sp,$sp,-24 /* f1a4198: afbf0014 */ sw $ra,0x14($sp) -/* f1a419c: 0fc675f3 */ jal func0f19d7cc +/* f1a419c: 0fc675f3 */ jal getFiringRangeData /* f1a41a0: afa40018 */ sw $a0,0x18($sp) /* f1a41a4: 904e0008 */ lbu $t6,0x8($v0) /* f1a41a8: 59c0000c */ blezl $t6,.L0f1a41dc @@ -1202,7 +1187,7 @@ GLOBAL_ASM( glabel func0f1a4230 /* f1a4230: 27bdffe8 */ addiu $sp,$sp,-24 /* f1a4234: afbf0014 */ sw $ra,0x14($sp) -/* f1a4238: 0fc675f3 */ jal func0f19d7cc +/* f1a4238: 0fc675f3 */ jal getFiringRangeData /* f1a423c: afa40018 */ sw $a0,0x18($sp) /* f1a4240: 904e0008 */ lbu $t6,0x8($v0) /* f1a4244: 00401825 */ or $v1,$v0,$zero @@ -1244,7 +1229,7 @@ GLOBAL_ASM( glabel func0f1a42b8 /* f1a42b8: 27bdffe8 */ addiu $sp,$sp,-24 /* f1a42bc: afbf0014 */ sw $ra,0x14($sp) -/* f1a42c0: 0fc675f3 */ jal func0f19d7cc +/* f1a42c0: 0fc675f3 */ jal getFiringRangeData /* f1a42c4: afa40018 */ sw $a0,0x18($sp) /* f1a42c8: 904e0005 */ lbu $t6,0x5($v0) /* f1a42cc: 240100ff */ addiu $at,$zero,0xff @@ -1276,7 +1261,7 @@ GLOBAL_ASM( glabel func0f1a431c /* f1a431c: 27bdffe8 */ addiu $sp,$sp,-24 /* f1a4320: afbf0014 */ sw $ra,0x14($sp) -/* f1a4324: 0fc675f3 */ jal func0f19d7cc +/* f1a4324: 0fc675f3 */ jal getFiringRangeData /* f1a4328: afa40018 */ sw $a0,0x18($sp) /* f1a432c: 90430005 */ lbu $v1,0x5($v0) /* f1a4330: 240100ff */ addiu $at,$zero,0xff @@ -1325,7 +1310,7 @@ GLOBAL_ASM( glabel func0f1a43b8 /* f1a43b8: 27bdffe8 */ addiu $sp,$sp,-24 /* f1a43bc: afbf0014 */ sw $ra,0x14($sp) -/* f1a43c0: 0fc675f3 */ jal func0f19d7cc +/* f1a43c0: 0fc675f3 */ jal getFiringRangeData /* f1a43c4: afa40018 */ sw $a0,0x18($sp) /* f1a43c8: 904e0006 */ lbu $t6,0x6($v0) /* f1a43cc: 240100ff */ addiu $at,$zero,0xff @@ -1357,7 +1342,7 @@ GLOBAL_ASM( glabel func0f1a441c /* f1a441c: 27bdffc8 */ addiu $sp,$sp,-56 /* f1a4420: afbf0014 */ sw $ra,0x14($sp) -/* f1a4424: 0fc675f3 */ jal func0f19d7cc +/* f1a4424: 0fc675f3 */ jal getFiringRangeData /* f1a4428: afa40038 */ sw $a0,0x38($sp) /* f1a442c: 904e0006 */ lbu $t6,0x6($v0) /* f1a4430: 240100ff */ addiu $at,$zero,0xff @@ -1417,7 +1402,7 @@ glabel menuhandler001a44c0 /* f1a44e4: afae015c */ sw $t6,0x15c($sp) /* f1a44e8: 8cd00008 */ lw $s0,0x8($a2) /* f1a44ec: 25f80258 */ addiu $t8,$t7,0x258 -/* f1a44f0: 0fc675f3 */ jal func0f19d7cc +/* f1a44f0: 0fc675f3 */ jal getFiringRangeData /* f1a44f4: afb80144 */ sw $t8,0x144($sp) /* f1a44f8: afa20140 */ sw $v0,0x140($sp) /* f1a44fc: 90430465 */ lbu $v1,0x465($v0) diff --git a/src/include/game/data/data_020df0.h b/src/include/game/data/data_020df0.h index 35b158019..a004d2e0a 100644 --- a/src/include/game/data/data_020df0.h +++ b/src/include/game/data/data_020df0.h @@ -355,7 +355,7 @@ extern u32 var80088c3c; extern u32 var80088c58; extern u32 var80088c70; extern u32 var80088c78; -extern u32 var80088c84; +extern u16 g_FiringRangeDifficultyNames[3]; extern u32 var80088c8c; extern u32 var80088c90; extern u32 var80088c94; diff --git a/src/include/game/game_19c990.h b/src/include/game/game_19c990.h index ddeb14ee0..6ae50d182 100644 --- a/src/include/game/game_19c990.h +++ b/src/include/game/game_19c990.h @@ -25,7 +25,7 @@ u32 func0f19d560(void); u32 func0f19d5c0(void); u32 func0f19d5e8(void); u32 func0f19d5f4(void); -u32 func0f19d7cc(void); +struct frdata *getFiringRangeData(void); u32 func0f19d7d8(void); u32 func0f19d8a4(void); u32 func0f19d90c(void); diff --git a/src/include/game/game_1a3340.h b/src/include/game/game_1a3340.h index 20a4b9295..e90be2ee2 100644 --- a/src/include/game/game_1a3340.h +++ b/src/include/game/game_1a3340.h @@ -4,7 +4,7 @@ #include "types.h" u32 func0f1a3d98(void); -u32 func0f1a3df0(void); +char *frMenuTextDifficultyName(struct menu_item *item); u32 func0f1a3e40(void); u32 func0f1a3f48(void); u32 func0f1a3fc0(void); diff --git a/src/include/types.h b/src/include/types.h index b6394d92d..8d20972ed 100644 --- a/src/include/types.h +++ b/src/include/types.h @@ -5327,4 +5327,282 @@ struct hudmessage { /*0x1d8*/ u32 hash; }; +struct frdata { + /*0x000*/ u32 unk000; + /*0x004*/ u32 unk004; + /*0x008*/ u32 unk008; + /*0x00c*/ u32 unk00c; + /*0x010*/ u32 unk010; + /*0x014*/ u32 unk014; + /*0x018*/ u32 unk018; + /*0x01c*/ u32 unk01c; + /*0x020*/ u32 unk020; + /*0x024*/ u32 unk024; + /*0x028*/ u32 unk028; + /*0x02c*/ u32 unk02c; + /*0x030*/ u32 unk030; + /*0x034*/ u32 unk034; + /*0x038*/ u32 unk038; + /*0x03c*/ u32 unk03c; + /*0x040*/ u32 unk040; + /*0x044*/ u32 unk044; + /*0x048*/ u32 unk048; + /*0x04c*/ u32 unk04c; + /*0x050*/ u32 unk050; + /*0x054*/ u32 unk054; + /*0x058*/ u32 unk058; + /*0x05c*/ u32 unk05c; + /*0x060*/ u32 unk060; + /*0x064*/ u32 unk064; + /*0x068*/ u32 unk068; + /*0x06c*/ u32 unk06c; + /*0x070*/ u32 unk070; + /*0x074*/ u32 unk074; + /*0x078*/ u32 unk078; + /*0x07c*/ u32 unk07c; + /*0x080*/ u32 unk080; + /*0x084*/ u32 unk084; + /*0x088*/ u32 unk088; + /*0x08c*/ u32 unk08c; + /*0x090*/ u32 unk090; + /*0x094*/ u32 unk094; + /*0x098*/ u32 unk098; + /*0x09c*/ u32 unk09c; + /*0x0a0*/ u32 unk0a0; + /*0x0a4*/ u32 unk0a4; + /*0x0a8*/ u32 unk0a8; + /*0x0ac*/ u32 unk0ac; + /*0x0b0*/ u32 unk0b0; + /*0x0b4*/ u32 unk0b4; + /*0x0b8*/ u32 unk0b8; + /*0x0bc*/ u32 unk0bc; + /*0x0c0*/ u32 unk0c0; + /*0x0c4*/ u32 unk0c4; + /*0x0c8*/ u32 unk0c8; + /*0x0cc*/ u32 unk0cc; + /*0x0d0*/ u32 unk0d0; + /*0x0d4*/ u32 unk0d4; + /*0x0d8*/ u32 unk0d8; + /*0x0dc*/ u32 unk0dc; + /*0x0e0*/ u32 unk0e0; + /*0x0e4*/ u32 unk0e4; + /*0x0e8*/ u32 unk0e8; + /*0x0ec*/ u32 unk0ec; + /*0x0f0*/ u32 unk0f0; + /*0x0f4*/ u32 unk0f4; + /*0x0f8*/ u32 unk0f8; + /*0x0fc*/ u32 unk0fc; + /*0x100*/ u32 unk100; + /*0x104*/ u32 unk104; + /*0x108*/ u32 unk108; + /*0x10c*/ u32 unk10c; + /*0x110*/ u32 unk110; + /*0x114*/ u32 unk114; + /*0x118*/ u32 unk118; + /*0x11c*/ u32 unk11c; + /*0x120*/ u32 unk120; + /*0x124*/ u32 unk124; + /*0x128*/ u32 unk128; + /*0x12c*/ u32 unk12c; + /*0x130*/ u32 unk130; + /*0x134*/ u32 unk134; + /*0x138*/ u32 unk138; + /*0x13c*/ u32 unk13c; + /*0x140*/ u32 unk140; + /*0x144*/ u32 unk144; + /*0x148*/ u32 unk148; + /*0x14c*/ u32 unk14c; + /*0x150*/ u32 unk150; + /*0x154*/ u32 unk154; + /*0x158*/ u32 unk158; + /*0x15c*/ u32 unk15c; + /*0x160*/ u32 unk160; + /*0x164*/ u32 unk164; + /*0x168*/ u32 unk168; + /*0x16c*/ u32 unk16c; + /*0x170*/ u32 unk170; + /*0x174*/ u32 unk174; + /*0x178*/ u32 unk178; + /*0x17c*/ u32 unk17c; + /*0x180*/ u32 unk180; + /*0x184*/ u32 unk184; + /*0x188*/ u32 unk188; + /*0x18c*/ u32 unk18c; + /*0x190*/ u32 unk190; + /*0x194*/ u32 unk194; + /*0x198*/ u32 unk198; + /*0x19c*/ u32 unk19c; + /*0x1a0*/ u32 unk1a0; + /*0x1a4*/ u32 unk1a4; + /*0x1a8*/ u32 unk1a8; + /*0x1ac*/ u32 unk1ac; + /*0x1b0*/ u32 unk1b0; + /*0x1b4*/ u32 unk1b4; + /*0x1b8*/ u32 unk1b8; + /*0x1bc*/ u32 unk1bc; + /*0x1c0*/ u32 unk1c0; + /*0x1c4*/ u32 unk1c4; + /*0x1c8*/ u32 unk1c8; + /*0x1cc*/ u32 unk1cc; + /*0x1d0*/ u32 unk1d0; + /*0x1d4*/ u32 unk1d4; + /*0x1d8*/ u32 unk1d8; + /*0x1dc*/ u32 unk1dc; + /*0x1e0*/ u32 unk1e0; + /*0x1e4*/ u32 unk1e4; + /*0x1e8*/ u32 unk1e8; + /*0x1ec*/ u32 unk1ec; + /*0x1f0*/ u32 unk1f0; + /*0x1f4*/ u32 unk1f4; + /*0x1f8*/ u32 unk1f8; + /*0x1fc*/ u32 unk1fc; + /*0x200*/ u32 unk200; + /*0x204*/ u32 unk204; + /*0x208*/ u32 unk208; + /*0x20c*/ u32 unk20c; + /*0x210*/ u32 unk210; + /*0x214*/ u32 unk214; + /*0x218*/ u32 unk218; + /*0x21c*/ u32 unk21c; + /*0x220*/ u32 unk220; + /*0x224*/ u32 unk224; + /*0x228*/ u32 unk228; + /*0x22c*/ u32 unk22c; + /*0x230*/ u32 unk230; + /*0x234*/ u32 unk234; + /*0x238*/ u32 unk238; + /*0x23c*/ u32 unk23c; + /*0x240*/ u32 unk240; + /*0x244*/ u32 unk244; + /*0x248*/ u32 unk248; + /*0x24c*/ u32 unk24c; + /*0x250*/ u32 unk250; + /*0x254*/ u32 unk254; + /*0x258*/ u32 unk258; + /*0x25c*/ u32 unk25c; + /*0x260*/ u32 unk260; + /*0x264*/ u32 unk264; + /*0x268*/ u32 unk268; + /*0x26c*/ u32 unk26c; + /*0x270*/ u32 unk270; + /*0x274*/ u32 unk274; + /*0x278*/ u32 unk278; + /*0x27c*/ u32 unk27c; + /*0x280*/ u32 unk280; + /*0x284*/ u32 unk284; + /*0x288*/ u32 unk288; + /*0x28c*/ u32 unk28c; + /*0x290*/ u32 unk290; + /*0x294*/ u32 unk294; + /*0x298*/ u32 unk298; + /*0x29c*/ u32 unk29c; + /*0x2a0*/ u32 unk2a0; + /*0x2a4*/ u32 unk2a4; + /*0x2a8*/ u32 unk2a8; + /*0x2ac*/ u32 unk2ac; + /*0x2b0*/ u32 unk2b0; + /*0x2b4*/ u32 unk2b4; + /*0x2b8*/ u32 unk2b8; + /*0x2bc*/ u32 unk2bc; + /*0x2c0*/ u32 unk2c0; + /*0x2c4*/ u32 unk2c4; + /*0x2c8*/ u32 unk2c8; + /*0x2cc*/ u32 unk2cc; + /*0x2d0*/ u32 unk2d0; + /*0x2d4*/ u32 unk2d4; + /*0x2d8*/ u32 unk2d8; + /*0x2dc*/ u32 unk2dc; + /*0x2e0*/ u32 unk2e0; + /*0x2e4*/ u32 unk2e4; + /*0x2e8*/ u32 unk2e8; + /*0x2ec*/ u32 unk2ec; + /*0x2f0*/ u32 unk2f0; + /*0x2f4*/ u32 unk2f4; + /*0x2f8*/ u32 unk2f8; + /*0x2fc*/ u32 unk2fc; + /*0x300*/ u32 unk300; + /*0x304*/ u32 unk304; + /*0x308*/ u32 unk308; + /*0x30c*/ u32 unk30c; + /*0x310*/ u32 unk310; + /*0x314*/ u32 unk314; + /*0x318*/ u32 unk318; + /*0x31c*/ u32 unk31c; + /*0x320*/ u32 unk320; + /*0x324*/ u32 unk324; + /*0x328*/ u32 unk328; + /*0x32c*/ u32 unk32c; + /*0x330*/ u32 unk330; + /*0x334*/ u32 unk334; + /*0x338*/ u32 unk338; + /*0x33c*/ u32 unk33c; + /*0x340*/ u32 unk340; + /*0x344*/ u32 unk344; + /*0x348*/ u32 unk348; + /*0x34c*/ u32 unk34c; + /*0x350*/ u32 unk350; + /*0x354*/ u32 unk354; + /*0x358*/ u32 unk358; + /*0x35c*/ u32 unk35c; + /*0x360*/ u32 unk360; + /*0x364*/ u32 unk364; + /*0x368*/ u32 unk368; + /*0x36c*/ u32 unk36c; + /*0x370*/ u32 unk370; + /*0x374*/ u32 unk374; + /*0x378*/ u32 unk378; + /*0x37c*/ u32 unk37c; + /*0x380*/ u32 unk380; + /*0x384*/ u32 unk384; + /*0x388*/ u32 unk388; + /*0x38c*/ u32 unk38c; + /*0x390*/ u32 unk390; + /*0x394*/ u32 unk394; + /*0x398*/ u32 unk398; + /*0x39c*/ u32 unk39c; + /*0x3a0*/ u32 unk3a0; + /*0x3a4*/ u32 unk3a4; + /*0x3a8*/ u32 unk3a8; + /*0x3ac*/ u32 unk3ac; + /*0x3b0*/ u32 unk3b0; + /*0x3b4*/ u32 unk3b4; + /*0x3b8*/ u32 unk3b8; + /*0x3bc*/ u32 unk3bc; + /*0x3c0*/ u32 unk3c0; + /*0x3c4*/ u32 unk3c4; + /*0x3c8*/ u32 unk3c8; + /*0x3cc*/ u32 unk3cc; + /*0x3d0*/ u32 unk3d0; + /*0x3d4*/ u32 unk3d4; + /*0x3d8*/ u32 unk3d8; + /*0x3dc*/ u32 unk3dc; + /*0x3e0*/ u32 unk3e0; + /*0x3e4*/ u32 unk3e4; + /*0x3e8*/ u32 unk3e8; + /*0x3ec*/ u32 unk3ec; + /*0x3f0*/ u32 unk3f0; + /*0x3f4*/ u32 unk3f4; + /*0x3f8*/ u32 unk3f8; + /*0x3fc*/ u32 unk3fc; + /*0x400*/ u32 unk400; + /*0x404*/ u32 unk404; + /*0x408*/ u32 unk408; + /*0x40c*/ u32 unk40c; + /*0x410*/ u32 unk410; + /*0x414*/ u32 unk414; + /*0x418*/ u32 unk418; + /*0x41c*/ u32 unk41c; + /*0x420*/ u32 unk420; + /*0x424*/ u32 unk424; + /*0x428*/ u32 unk428; + /*0x42c*/ u32 unk42c; + /*0x430*/ u32 unk430; + /*0x434*/ u32 unk434; + /*0x438*/ u32 unk438; + /*0x43c*/ u32 unk43c; + /*0x440*/ u32 unk440; + /*0x444*/ u32 unk444; + /*0x448*/ u8 difficulty; +}; + #endif