From 91cfb6a564f73f02eb57792f8a0f4aa82e1867d1 Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Tue, 16 Jan 2018 22:25:35 -0600 Subject: add debug ifdefs --- src/battle/battle_records.c | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) (limited to 'src/battle/battle_records.c') diff --git a/src/battle/battle_records.c b/src/battle/battle_records.c index 4979760d7..a03a215fd 100644 --- a/src/battle/battle_records.c +++ b/src/battle/battle_records.c @@ -8,9 +8,35 @@ #include "strings2.h" #include "trainer_card.h" +struct DebugStruct1 +{ + u16 var0; + u8 var1[10]; +}; + extern struct LinkPlayerMapObject gLinkPlayerMapObjects[4]; extern u8 gBattleOutcome; +#ifdef DEBUG +const struct DebugStruct1 gUnknown_Debug_4245CC[] = +{ + { 1, _("NUMBER1") }, + { 2, _("ナンバー2") }, + { 3, _("ナンバー3") }, + { 4, _("ナンバー4") }, + { 5, _("ナンバー5") }, + { 6, _("ナンバー6") }, + { 7, _("ナンバー7") }, +}; + +const u8 gUnknown_Debug_8424620[][4] = +{ + { 1, 1, 0, 0 }, + { 2, 1, 0, 0 }, + { 3, 1, 0, 0 }, +}; +#endif + static void InitLinkBattleRecord(struct LinkBattleRecord *record) { CpuFill16(0, record, sizeof(struct LinkBattleRecord)); @@ -240,7 +266,8 @@ static void PrintLinkBattleRecord(struct LinkBattleRecord *record, u8 y) } } -void ShowLinkBattleRecords(void) { +void ShowLinkBattleRecords(void) +{ s32 i; Menu_DrawStdWindowFrame(1, 0, 28, 18); sub_8072BD8(gOtherText_BattleResults, 0, 1, 240); -- cgit v1.2.3 From d79f440b8d4c5af26a98011719807b05745533e1 Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Wed, 17 Jan 2018 12:10:41 -0600 Subject: use 'if DEBUG' instead of 'ifdef DEBUG' --- src/battle/battle_records.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/battle/battle_records.c') diff --git a/src/battle/battle_records.c b/src/battle/battle_records.c index a03a215fd..17e2352ff 100644 --- a/src/battle/battle_records.c +++ b/src/battle/battle_records.c @@ -17,7 +17,7 @@ struct DebugStruct1 extern struct LinkPlayerMapObject gLinkPlayerMapObjects[4]; extern u8 gBattleOutcome; -#ifdef DEBUG +#if DEBUG const struct DebugStruct1 gUnknown_Debug_4245CC[] = { { 1, _("NUMBER1") }, -- cgit v1.2.3 From 9c2f7c88f0d7e57c99d548870e78185e05cc472a Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Thu, 18 Jan 2018 13:54:10 -0600 Subject: add more debug code --- src/battle/battle_records.c | 60 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) (limited to 'src/battle/battle_records.c') diff --git a/src/battle/battle_records.c b/src/battle/battle_records.c index 17e2352ff..4fce958fa 100644 --- a/src/battle/battle_records.c +++ b/src/battle/battle_records.c @@ -223,6 +223,66 @@ void UpdateLinkBattleRecords(int id) gLinkPlayers[gLinkPlayerMapObjects[id].linkPlayerId].language); } +#if DEBUG +__attribute__((naked)) +void debug_sub_81257E0(void) +{ + asm("\ + push {r4, r5, r6, r7, lr}\n\ + mov r7, r8\n\ + push {r7}\n\ + add sp, sp, #0xfffffffc\n\ + bl InitLinkBattleRecords\n\ + mov r5, #0x0\n\ + ldr r6, ._62\n\ + sub r0, r6, #2\n\ + mov r8, r0\n\ + ldr r7, ._62 + 4\n\ +._61:\n\ + ldr r0, ._62 + 8\n\ + lsl r3, r5, #0x2\n\ + add r3, r3, r0\n\ + ldrb r4, [r3]\n\ + sub r4, r4, #0x1\n\ + lsl r0, r4, #0x1\n\ + add r0, r0, r4\n\ + lsl r0, r0, #0x2\n\ + add r1, r0, r6\n\ + add r0, r0, r8\n\ + ldrh r2, [r0]\n\ + ldrb r3, [r3, #0x1]\n\ + ldr r0, ._62 + 12\n\ + lsl r4, r4, #0x2\n\ + add r4, r4, r0\n\ + ldrb r4, [r4, #0x1]\n\ + lsl r0, r4, #0x3\n\ + sub r0, r0, r4\n\ + lsl r0, r0, #0x2\n\ + add r0, r0, r7\n\ + ldrb r0, [r0, #0x1a]\n\ + str r0, [sp]\n\ + ldr r0, ._62 + 16\n\ + bl UpdateLinkBattleRecords_\n\ + add r5, r5, #0x1\n\ + cmp r5, #0x2\n\ + bls ._61 @cond_branch\n\ + add sp, sp, #0x4\n\ + pop {r3}\n\ + mov r8, r3\n\ + pop {r4, r5, r6, r7}\n\ + pop {r0}\n\ + bx r0\n\ +._63:\n\ + .align 2, 0\n\ +._62:\n\ + .word gUnknown_083F8410+0xa\n\ + .word gLinkPlayers\n\ + .word gUnknown_083F8410+0x5c\n\ + .word gLinkPlayerMapObjects\n\ + .word gSaveBlock1+0x30b8"); +} +#endif + static void PrintLinkBattleWinsLossesDraws(struct LinkBattleRecord *records) { ConvertIntToDecimalStringN_DigitWidth6(gStringVar1, GetGameStat(GAME_STAT_LINK_BATTLE_WINS), STR_CONV_MODE_RIGHT_ALIGN, 4); -- cgit v1.2.3 From e03633d6bc1e1cd155bc258edbb7783020b4bdb7 Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Tue, 23 Jan 2018 16:55:48 -0600 Subject: fix more false offsets --- src/battle/battle_records.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/battle/battle_records.c') diff --git a/src/battle/battle_records.c b/src/battle/battle_records.c index 4fce958fa..9dd1d7b53 100644 --- a/src/battle/battle_records.c +++ b/src/battle/battle_records.c @@ -275,9 +275,9 @@ void debug_sub_81257E0(void) ._63:\n\ .align 2, 0\n\ ._62:\n\ - .word gUnknown_083F8410+0xa\n\ + .word gUnknown_Debug_4245CC+2\n\ .word gLinkPlayers\n\ - .word gUnknown_083F8410+0x5c\n\ + .word gUnknown_Debug_8424620\n\ .word gLinkPlayerMapObjects\n\ .word gSaveBlock1+0x30b8"); } -- cgit v1.2.3 From fe400f60b6609d37d2b8a0c2aec75321adc3e95f Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Sat, 27 Jan 2018 17:03:40 -0600 Subject: add comments for pool loads in C files --- src/battle/battle_records.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'src/battle/battle_records.c') diff --git a/src/battle/battle_records.c b/src/battle/battle_records.c index 9dd1d7b53..1532a0b2f 100644 --- a/src/battle/battle_records.c +++ b/src/battle/battle_records.c @@ -234,12 +234,12 @@ void debug_sub_81257E0(void) add sp, sp, #0xfffffffc\n\ bl InitLinkBattleRecords\n\ mov r5, #0x0\n\ - ldr r6, ._62\n\ + ldr r6, ._62 @ gUnknown_Debug_4245CC\n\ sub r0, r6, #2\n\ mov r8, r0\n\ - ldr r7, ._62 + 4\n\ + ldr r7, ._62 + 4 @ gLinkPlayers\n\ ._61:\n\ - ldr r0, ._62 + 8\n\ + ldr r0, ._62 + 8 @ gUnknown_Debug_8424620\n\ lsl r3, r5, #0x2\n\ add r3, r3, r0\n\ ldrb r4, [r3]\n\ @@ -251,7 +251,7 @@ void debug_sub_81257E0(void) add r0, r0, r8\n\ ldrh r2, [r0]\n\ ldrb r3, [r3, #0x1]\n\ - ldr r0, ._62 + 12\n\ + ldr r0, ._62 + 12 @ gLinkPlayerMapObjects\n\ lsl r4, r4, #0x2\n\ add r4, r4, r0\n\ ldrb r4, [r4, #0x1]\n\ @@ -261,7 +261,7 @@ void debug_sub_81257E0(void) add r0, r0, r7\n\ ldrb r0, [r0, #0x1a]\n\ str r0, [sp]\n\ - ldr r0, ._62 + 16\n\ + ldr r0, ._62 + 16 @ gSaveBlock1\n\ bl UpdateLinkBattleRecords_\n\ add r5, r5, #0x1\n\ cmp r5, #0x2\n\ -- cgit v1.2.3 From 900f5739be2ea39a9f37494948fb09d5bb3969b4 Mon Sep 17 00:00:00 2001 From: Cameron Hall Date: Thu, 15 Feb 2018 21:27:31 -0600 Subject: decompile various debug functions --- src/battle/battle_records.c | 80 ++++++++++++--------------------------------- 1 file changed, 20 insertions(+), 60 deletions(-) (limited to 'src/battle/battle_records.c') diff --git a/src/battle/battle_records.c b/src/battle/battle_records.c index 1532a0b2f..8b9cf9ea0 100644 --- a/src/battle/battle_records.c +++ b/src/battle/battle_records.c @@ -29,11 +29,11 @@ const struct DebugStruct1 gUnknown_Debug_4245CC[] = { 7, _("ナンバー7") }, }; -const u8 gUnknown_Debug_8424620[][4] = +const struct {u8 unk0; u8 unk1;} gUnknown_Debug_8424620[] = { - { 1, 1, 0, 0 }, - { 2, 1, 0, 0 }, - { 3, 1, 0, 0 }, + { 1, 1 }, + { 2, 1 }, + { 3, 1 }, }; #endif @@ -64,7 +64,7 @@ static int GetLinkBattleRecordTotalBattles(struct LinkBattleRecord *record) return record->wins + record->losses + record->draws; } -static int FindLinkBattleRecord(struct LinkBattleRecord *records, u8 *name, u16 trainerId) +static int FindLinkBattleRecord(struct LinkBattleRecord *records, const u8 *name, u16 trainerId) { int i; @@ -145,7 +145,7 @@ static void UpdateLinkBattleGameStats(int battleOutcome) IncrementGameStat(stat); } -static void UpdateLinkBattleRecords_(struct LinkBattleRecord *records, u8 *name, u16 trainerId, int battleOutcome, u8 language) +static void UpdateLinkBattleRecords_(struct LinkBattleRecord *records, const u8 *name, u16 trainerId, int battleOutcome, u8 language) { int index; UpdateLinkBattleGameStats(battleOutcome); @@ -224,62 +224,22 @@ void UpdateLinkBattleRecords(int id) } #if DEBUG -__attribute__((naked)) void debug_sub_81257E0(void) { - asm("\ - push {r4, r5, r6, r7, lr}\n\ - mov r7, r8\n\ - push {r7}\n\ - add sp, sp, #0xfffffffc\n\ - bl InitLinkBattleRecords\n\ - mov r5, #0x0\n\ - ldr r6, ._62 @ gUnknown_Debug_4245CC\n\ - sub r0, r6, #2\n\ - mov r8, r0\n\ - ldr r7, ._62 + 4 @ gLinkPlayers\n\ -._61:\n\ - ldr r0, ._62 + 8 @ gUnknown_Debug_8424620\n\ - lsl r3, r5, #0x2\n\ - add r3, r3, r0\n\ - ldrb r4, [r3]\n\ - sub r4, r4, #0x1\n\ - lsl r0, r4, #0x1\n\ - add r0, r0, r4\n\ - lsl r0, r0, #0x2\n\ - add r1, r0, r6\n\ - add r0, r0, r8\n\ - ldrh r2, [r0]\n\ - ldrb r3, [r3, #0x1]\n\ - ldr r0, ._62 + 12 @ gLinkPlayerMapObjects\n\ - lsl r4, r4, #0x2\n\ - add r4, r4, r0\n\ - ldrb r4, [r4, #0x1]\n\ - lsl r0, r4, #0x3\n\ - sub r0, r0, r4\n\ - lsl r0, r0, #0x2\n\ - add r0, r0, r7\n\ - ldrb r0, [r0, #0x1a]\n\ - str r0, [sp]\n\ - ldr r0, ._62 + 16 @ gSaveBlock1\n\ - bl UpdateLinkBattleRecords_\n\ - add r5, r5, #0x1\n\ - cmp r5, #0x2\n\ - bls ._61 @cond_branch\n\ - add sp, sp, #0x4\n\ - pop {r3}\n\ - mov r8, r3\n\ - pop {r4, r5, r6, r7}\n\ - pop {r0}\n\ - bx r0\n\ -._63:\n\ - .align 2, 0\n\ -._62:\n\ - .word gUnknown_Debug_4245CC+2\n\ - .word gLinkPlayers\n\ - .word gUnknown_Debug_8424620\n\ - .word gLinkPlayerMapObjects\n\ - .word gSaveBlock1+0x30b8"); + u32 i; + + InitLinkBattleRecords(); + for (i = 0; i < 3; i++) + { + u32 id = gUnknown_Debug_8424620[i].unk0 - 1; + + UpdateLinkBattleRecords_( + gSaveBlock1.linkBattleRecords, + gUnknown_Debug_4245CC[id].var1, + gUnknown_Debug_4245CC[id].var0, + gUnknown_Debug_8424620[i].unk1, + gLinkPlayers[gLinkPlayerMapObjects[id].linkPlayerId].language); + } } #endif -- cgit v1.2.3