summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2018-04-17 20:41:18 -0400
committerPikalaxALT <pikalaxalt@gmail.com>2018-04-17 20:41:18 -0400
commit3a82d934ab60ec82a89c66ebbe5024ee23334fdb (patch)
tree3da83a8732111d3939de38b713e0508f04298596
parentd42c033eb624bc096431de7f259088ed43126245 (diff)
through debug_80C5738
-rw-r--r--asm/watanabe_debug_menu.s695
-rw-r--r--src/debug/watanabe_debug_menu.c186
2 files changed, 186 insertions, 695 deletions
diff --git a/asm/watanabe_debug_menu.s b/asm/watanabe_debug_menu.s
index b8618a780..64cc54a0c 100644
--- a/asm/watanabe_debug_menu.s
+++ b/asm/watanabe_debug_menu.s
@@ -5,701 +5,6 @@
.text
- thumb_func_start debug_80C55E4
-debug_80C55E4:
- push {r4, r5, r6, r7, lr}
- mov r7, r8
- push {r7}
- lsl r0, r0, #0x18
- lsr r3, r0, #0x18
- add r6, r3, #0
- ldr r1, ._405 @ gUnknown_Debug_083F8698
- ldr r2, ._405 + 4 @ gUnknown_Debug_2038A1C
- ldr r0, [r2]
- mov ip, r0
- mov r0, #0xb4
- lsl r0, r0, #0x1
- add r0, r0, ip
- ldrb r0, [r0]
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._405 + 8 @ 0x169
- add r1, r1, ip
- ldrb r1, [r1]
- ldr r0, [r0]
- add r0, r0, r1
- ldrb r5, [r0]
- add r7, r5, #0
- ldr r1, ._405 + 12 @ gMain
- ldrh r4, [r1, #0x2e]
- mov r0, #0x1
- and r0, r0, r4
- mov r8, r2
- add r2, r1, #0
- cmp r0, #0
- beq ._403 @cond_branch
- ldr r0, ._405 + 16 @ gTasks
- lsl r1, r3, #0x2
- add r1, r1, r3
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._405 + 20 @ debug_80C53C0
- str r0, [r1]
- b ._422
-._406:
- .align 2, 0
-._405:
- .word gUnknown_Debug_083F8698
- .word gUnknown_Debug_2038A1C
- .word 0x169
- .word gMain
- .word gTasks
- .word debug_80C53C0+1
-._403:
- mov r0, #0x2
- and r0, r0, r4
- cmp r0, #0
- beq ._407 @cond_branch
- lsl r1, r5, #0x2
- mov r0, ip
- add r0, r0, #0x64
- add r0, r0, r1
- mov r1, #0xb2
- lsl r1, r1, #0x1
- add r1, r1, ip
- ldr r1, [r1]
- str r1, [r0]
- ldr r1, ._409 @ gTasks
- lsl r0, r6, #0x2
- add r0, r0, r6
- lsl r0, r0, #0x3
- add r0, r0, r1
- ldr r1, ._409 + 4 @ debug_80C53C0
- str r1, [r0]
- b ._422
-._410:
- .align 2, 0
-._409:
- .word gTasks
- .word debug_80C53C0+1
-._407:
- ldrh r1, [r2, #0x30]
- mov r0, #0x40
- and r0, r0, r1
- cmp r0, #0
- beq ._411 @cond_branch
- mov r0, #0x1
- b ._412
-._411:
- mov r0, #0x80
- and r0, r0, r1
- cmp r0, #0
- beq ._413 @cond_branch
- mov r0, #0x2
-._412:
- bl debug_80C6544
- bl debug_80C643C
- b ._422
-._413:
- ldr r0, ._419 @ gUnknown_Debug_083F8554
- lsl r1, r7, #0x3
- add r0, r0, #0x4
- add r1, r1, r0
- ldr r1, [r1]
- ldrb r0, [r1, #0x9]
- cmp r0, #0xff
- beq ._422 @cond_branch
- mov r0, #0x20
- and r0, r0, r4
- cmp r0, #0
- beq ._417 @cond_branch
- mov r0, #0xb5
- lsl r0, r0, #0x1
- add ip, ip, r0
- mov r0, ip
- ldrb r3, [r0]
- ldrb r0, [r1, #0x9]
- sub r0, r0, #0x1
- cmp r3, r0
- bge ._417 @cond_branch
- add r0, r3, #1
- mov r1, ip
- strb r0, [r1]
- bl debug_80C643C
- b ._422
-._420:
- .align 2, 0
-._419:
- .word gUnknown_Debug_083F8554
-._417:
- ldrh r1, [r2, #0x2e]
- mov r0, #0x10
- and r0, r0, r1
- cmp r0, #0
- beq ._422 @cond_branch
- mov r2, r8
- ldr r0, [r2]
- mov r2, #0xb5
- lsl r2, r2, #0x1
- add r1, r0, r2
- ldrb r0, [r1]
- cmp r0, #0
- beq ._422 @cond_branch
- sub r0, r0, #0x1
- strb r0, [r1]
- bl debug_80C643C
-._422:
- pop {r3}
- mov r8, r3
- pop {r4, r5, r6, r7}
- pop {r0}
- bx r0
-
- thumb_func_end debug_80C55E4
-
- thumb_func_start debug_80C5708
-debug_80C5708:
- push {lr}
- lsl r0, r0, #0x18
- lsr r2, r0, #0x18
- ldr r0, ._424 @ gMain
- ldrh r1, [r0, #0x2e]
- mov r0, #0x1
- and r0, r0, r1
- cmp r0, #0
- beq ._423 @cond_branch
- ldr r0, ._424 + 4 @ gTasks
- lsl r1, r2, #0x2
- add r1, r1, r2
- lsl r1, r1, #0x3
- add r1, r1, r0
- ldr r0, ._424 + 8 @ debug_80C53C0
- str r0, [r1]
-._423:
- pop {r0}
- bx r0
-._425:
- .align 2, 0
-._424:
- .word gMain
- .word gTasks
- .word debug_80C53C0+1
-
- thumb_func_end debug_80C5708
-
- thumb_func_start debug_80C5738
-debug_80C5738:
- push {r4, r5, r6, r7, lr}
- mov r7, r9
- mov r6, r8
- push {r6, r7}
- add r6, r0, #0
- lsl r1, r1, #0x18
- lsr r4, r1, #0x18
- lsl r2, r2, #0x18
- lsr r2, r2, #0x18
- mov r8, r2
- cmp r4, #0xfe
- bne ._426 @cond_branch
- ldr r1, ._428 @ gUnknown_Debug_083F850A
- mov r2, #0x7
- bl debug_80C689C
- add r0, r6, #7
- ldr r7, ._428 + 4 @ gUnknown_Debug_2038A1C
- ldr r1, [r7]
- add r1, r1, #0xf0
- ldr r1, [r1]
- mov r2, #0x3
- mov r3, #0x1
- bl debug_80C6678
- mov r4, #0x0
- strb r4, [r6, #0x13]
- strb r4, [r6, #0x14]
- add r0, r6, #0
- add r0, r0, #0x15
- ldr r1, ._428 + 8 @ gUnknown_Debug_083F8514
- mov r2, #0x7
- bl debug_80C689C
- add r0, r6, #0
- add r0, r0, #0x1c
- ldr r1, [r7]
- add r1, r1, #0xf4
- ldr r1, [r1]
- mov r2, #0x3
- mov r3, #0x1
- bl debug_80C6678
- add r0, r6, #0
- add r0, r0, #0x28
- strb r4, [r0]
- add r0, r0, #0x1
- strb r4, [r0]
- add r0, r0, #0x1
- ldr r1, ._428 + 12 @ gUnknown_Debug_083F851C
- mov r2, #0x9
- bl debug_80C689C
- add r0, r6, #0
- add r0, r0, #0x31
- ldr r1, [r7]
- add r1, r1, #0xf8
-._431:
- ldr r1, [r1]
- mov r2, #0x3
- mov r3, #0x1
- bl debug_80C6678
- b ._517
-._429:
- .align 2, 0
-._428:
- .word gUnknown_Debug_083F850A
- .word gUnknown_Debug_2038A1C
- .word gUnknown_Debug_083F8514
- .word gUnknown_Debug_083F851C
-._426:
- cmp r4, #0xfd
- bne ._430 @cond_branch
- ldr r1, ._432 @ gUnknown_Debug_083F8524
- add r0, r6, #0
- mov r2, #0x9
- bl debug_80C689C
- add r0, r6, #0
- add r0, r0, #0x9
- ldr r7, ._432 + 4 @ gUnknown_Debug_2038A1C
- ldr r1, [r7]
- add r1, r1, #0xfc
- ldr r1, [r1]
- mov r2, #0x3
- mov r3, #0x1
- bl debug_80C6678
- mov r4, #0x0
- strb r4, [r6, #0x15]
- strb r4, [r6, #0x16]
- add r0, r6, #0
- add r0, r0, #0x17
- ldr r1, ._432 + 8 @ gUnknown_Debug_083F852D
- mov r2, #0x9
- bl debug_80C689C
- add r0, r6, #0
- add r0, r0, #0x20
- ldr r1, [r7]
- mov r2, #0x80
- lsl r2, r2, #0x1
- add r1, r1, r2
- ldr r1, [r1]
- mov r2, #0x3
- mov r3, #0x1
- bl debug_80C6678
- add r0, r6, #0
- add r0, r0, #0x2c
- strb r4, [r0]
- add r0, r0, #0x1
- strb r4, [r0]
- add r0, r0, #0x1
- ldr r1, ._432 + 12 @ gUnknown_Debug_083F8537
- mov r2, #0x9
- bl debug_80C689C
- add r0, r6, #0
- add r0, r0, #0x37
- ldr r1, [r7]
- mov r3, #0x82
- lsl r3, r3, #0x1
- add r1, r1, r3
- b ._431
-._433:
- .align 2, 0
-._432:
- .word gUnknown_Debug_083F8524
- .word gUnknown_Debug_2038A1C
- .word gUnknown_Debug_083F852D
- .word gUnknown_Debug_083F8537
-._430:
- mov r1, #0x0
- lsl r5, r4, #0x3
- mov r2, #0x0
-._434:
- add r0, r6, r1
- strb r2, [r0]
- add r0, r1, #1
- lsl r0, r0, #0x10
- lsr r1, r0, #0x10
- cmp r1, #0xb
- bls ._434 @cond_branch
- ldr r0, ._437 @ gUnknown_Debug_083F8554
- add r0, r5, r0
- ldr r1, [r0]
- add r0, r6, #0
- mov r2, #0xb
- bl debug_80C689C
- mov r1, #0xc
- mov r2, #0xff
-._435:
- add r0, r6, r1
- strb r2, [r0]
- add r0, r1, #1
- lsl r0, r0, #0x10
- lsr r1, r0, #0x10
- cmp r1, #0xff
- bls ._435 @cond_branch
- ldr r0, ._437 @ gUnknown_Debug_083F8554
- add r0, r0, #0x4
- add r0, r5, r0
- ldr r0, [r0]
- ldrb r2, [r0, #0x9]
- lsl r0, r2, #0x1a
- lsr r5, r0, #0x18
- cmp r4, #0x22
- bhi ._436 @cond_branch
- lsl r0, r4, #0x2
- ldr r1, ._437 + 4 @
- add r1, r0, r1
- ldr r1, [r1]
- add r7, r0, #0
- mov pc, r1
-._438:
- .align 2, 0
-._437:
- .word gUnknown_Debug_083F8554
- .word ._439
-._439:
- .word ._440
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._445
- .word ._446
- .word ._450
- .word ._450
- .word ._450
- .word ._450
- .word ._451
- .word ._452
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._472
- .word ._473
- .word ._474
-._436:
- mov r0, #0xff
- strb r0, [r6]
- b ._517
-._440:
- add r0, r6, #0
- add r0, r0, #0xa
- ldr r1, ._477 @ gUnknown_Debug_2038A1C
- mov r9, r1
- ldr r1, [r1]
- add r1, r1, #0x64
- add r1, r1, r7
- ldr r1, [r1]
- mov r3, r8
- bl debug_80C6678
- add r1, r5, r6
- mov r0, #0x0
- strb r0, [r1, #0xa]
- mov r0, #0xfc
- strb r0, [r1, #0xb]
- mov r0, #0x1
- strb r0, [r1, #0xc]
- mov r2, r8
- strb r2, [r1, #0xd]
- add r4, r5, #0
- add r4, r4, #0xe
- add r4, r6, r4
- mov r3, r9
- ldr r0, [r3]
- add r0, r0, #0x64
- add r0, r0, r7
- ldrh r0, [r0]
- bl NationalPokedexNumToSpecies
- lsl r0, r0, #0x10
- lsr r0, r0, #0x10
- mov r1, #0xb
- mul r1, r1, r0
- ldr r0, ._477 + 4 @ gSpeciesNames
- add r1, r1, r0
- add r0, r4, #0
- mov r2, #0xa
- bl debug_80C689C
- b ._517
-._478:
- .align 2, 0
-._477:
- .word gUnknown_Debug_2038A1C
- .word gSpeciesNames
-._445:
- ldr r0, ._483 @ gUnknown_Debug_2038A1C
- ldr r0, [r0]
- add r0, r0, #0x64
- add r0, r0, r7
- ldr r0, [r0]
- cmp r0, #0x1
- beq ._479 @cond_branch
- cmp r0, #0x1
- bcc ._480 @cond_branch
- cmp r0, #0x2
- beq ._481 @cond_branch
- b ._517
-._484:
- .align 2, 0
-._483:
- .word gUnknown_Debug_2038A1C
-._480:
- add r0, r6, #0
- add r0, r0, #0xa
- ldr r1, ._486 @ gUnknown_Debug_083F8546
- b ._488
-._487:
- .align 2, 0
-._486:
- .word gUnknown_Debug_083F8546
-._479:
- add r0, r6, #0
- add r0, r0, #0xa
- ldr r1, ._489 @ gUnknown_Debug_083F8541
- b ._488
-._490:
- .align 2, 0
-._489:
- .word gUnknown_Debug_083F8541
-._481:
- add r0, r6, #0
- add r0, r0, #0xa
- ldr r1, ._492 @ gUnknown_Debug_083F8544
-._488:
- mov r2, #0x2
- bl debug_80C689C
- b ._517
-._493:
- .align 2, 0
-._492:
- .word gUnknown_Debug_083F8544
-._450:
- add r0, r6, #0
- add r0, r0, #0xa
- ldr r4, ._495 @ gUnknown_Debug_2038A1C
- ldr r1, [r4]
- add r1, r1, #0x64
- add r1, r1, r7
- ldr r1, [r1]
- mov r3, r8
- bl debug_80C6678
- add r1, r5, r6
- mov r0, #0x0
- strb r0, [r1, #0xa]
- mov r0, #0xfc
- strb r0, [r1, #0xb]
- mov r0, #0x1
- strb r0, [r1, #0xc]
- mov r0, r8
- strb r0, [r1, #0xd]
- add r0, r5, #0
- add r0, r0, #0xe
- add r0, r6, r0
- ldr r1, [r4]
- add r1, r1, #0x64
- add r1, r1, r7
- ldr r2, [r1]
- mov r1, #0xd
- mul r1, r1, r2
- ldr r2, ._495 + 4 @ gMoveNames
- add r1, r1, r2
- b ._494
-._496:
- .align 2, 0
-._495:
- .word gUnknown_Debug_2038A1C
- .word gMoveNames
-._451:
- add r0, r6, #0
- add r0, r0, #0xa
- ldr r4, ._499 @ gUnknown_Debug_2038A1C
- ldr r1, [r4]
- add r1, r1, #0x64
- add r1, r1, r7
- ldr r1, [r1]
- mov r3, r8
- bl debug_80C6678
- add r1, r5, r6
- mov r0, #0x0
- strb r0, [r1, #0xa]
- mov r0, #0xfc
- strb r0, [r1, #0xb]
- mov r0, #0x1
- strb r0, [r1, #0xc]
- mov r2, r8
- strb r2, [r1, #0xd]
- ldr r0, [r4]
- add r0, r0, #0x64
- add r0, r0, r7
- ldr r0, [r0]
- cmp r0, #0
- beq ._497 @cond_branch
- add r4, r5, #0
- add r4, r4, #0xe
- add r4, r6, r4
- lsl r0, r0, #0x10
- lsr r0, r0, #0x10
- bl ItemId_GetName
- add r1, r0, #0
- add r0, r4, #0
- b ._498
-._500:
- .align 2, 0
-._499:
- .word gUnknown_Debug_2038A1C
-._497:
- add r0, r5, #0
- add r0, r0, #0xe
- add r0, r6, r0
- ldr r1, ._502 @ gUnknown_Debug_083F8541
-._498:
- mov r2, #0x9
- bl debug_80C689C
- b ._517
-._503:
- .align 2, 0
-._502:
- .word gUnknown_Debug_083F8541
-._452:
- add r6, r6, #0xc
- ldr r4, ._505 @ gUnknown_Debug_2038A1C
- ldr r0, [r4]
- ldr r0, [r0, #0x64]
- lsl r0, r0, #0x10
- lsr r0, r0, #0x10
- bl NationalPokedexNumToSpecies
- lsl r0, r0, #0x10
- lsr r0, r0, #0x10
- ldr r1, [r4]
- add r1, r1, #0x64
- add r1, r1, r7
- ldrb r1, [r1]
- bl GetAbilityBySpecies
- lsl r0, r0, #0x18
- lsr r0, r0, #0x18
- mov r1, #0xd
- mul r1, r1, r0
- ldr r0, ._505 + 4 @ gAbilityNames
- add r1, r1, r0
- add r0, r6, #0
-._494:
- mov r2, #0xc
- bl debug_80C689C
- b ._517
-._506:
- .align 2, 0
-._505:
- .word gUnknown_Debug_2038A1C
- .word gAbilityNames
-._474:
- add r0, r6, #0
- add r0, r0, #0xa
- ldr r2, ._508 @ gUnknown_Debug_083F86E8
- ldr r1, ._508 + 4 @ gUnknown_Debug_2038A1C
- ldr r1, [r1]
- add r1, r1, #0x64
- add r1, r1, r7
- ldr r1, [r1]
- lsl r1, r1, #0x3
- add r1, r1, r2
- ldr r1, [r1]
- b ._514
-._509:
- .align 2, 0
-._508:
- .word gUnknown_Debug_083F86E8
- .word gUnknown_Debug_2038A1C
-._472:
- add r0, r6, #0
- add r0, r0, #0xc
- ldr r1, ._511 @ gUnknown_Debug_2038A1C
- ldr r1, [r1]
- add r1, r1, #0x64
- add r1, r1, r7
- ldr r1, [r1]
- mov r3, r8
- bl debug_80C6678
- b ._517
-._512:
- .align 2, 0
-._511:
- .word gUnknown_Debug_2038A1C
-._473:
- ldr r0, ._515 @ gUnknown_Debug_2038A1C
- ldr r0, [r0]
- add r0, r0, #0x64
- add r0, r0, r7
- ldr r0, [r0]
- cmp r0, #0
- beq ._513 @cond_branch
- add r0, r6, #0
- add r0, r0, #0xa
- ldr r1, ._515 + 4 @ gUnknown_Debug_083F854A
- b ._514
-._516:
- .align 2, 0
-._515:
- .word gUnknown_Debug_2038A1C
- .word gUnknown_Debug_083F854A
-._513:
- add r0, r6, #0
- add r0, r0, #0xa
- ldr r1, ._518 @ gUnknown_Debug_083F854D
-._514:
- mov r2, #0x4
- bl debug_80C689C
- b ._517
-._519:
- .align 2, 0
-._518:
- .word gUnknown_Debug_083F854D
-._446:
- add r0, r6, #0
- add r0, r0, #0xa
- ldr r2, ._520 @ gNatureNames
- ldr r1, ._520 + 4 @ gUnknown_Debug_2038A1C
- ldr r1, [r1]
- add r1, r1, #0x64
- add r1, r1, r7
- ldr r1, [r1]
- lsl r1, r1, #0x2
- add r1, r1, r2
- ldr r1, [r1]
- mov r2, #0x5
- bl debug_80C689C
-._517:
- mov r0, #0x0
- pop {r3, r4}
- mov r8, r3
- mov r9, r4
- pop {r4, r5, r6, r7}
- pop {r1}
- bx r1
-._521:
- .align 2, 0
-._520:
- .word gNatureNames
- .word gUnknown_Debug_2038A1C
-
- thumb_func_end debug_80C5738
-
thumb_func_start debug_80C5B60
debug_80C5B60:
lsl r0, r0, #0x18
diff --git a/src/debug/watanabe_debug_menu.c b/src/debug/watanabe_debug_menu.c
index 5ed067651..2b2da4951 100644
--- a/src/debug/watanabe_debug_menu.c
+++ b/src/debug/watanabe_debug_menu.c
@@ -3,6 +3,7 @@
#include "ewram.h"
#include "random.h"
#include "gba/flash_internal.h"
+#include "constants/items.h"
#include "constants/species.h"
#include "constants/songs.h"
#include "debug.h"
@@ -24,6 +25,14 @@
#include "pokemon_storage_system.h"
#include "battle.h"
#include "battle_bg.h"
+#include "item.h"
+#include "pokemon_summary_screen.h"
+
+struct WatanabeDebugMenuItemSubstruct {
+ u32 unk0;
+ u8 fill4[5];
+ u8 unk9;
+};
struct WatanabeDebugMenuItem {
const u8 * text;
@@ -31,6 +40,7 @@ struct WatanabeDebugMenuItem {
u8 type1[2];
u32 type2;
u8 type3;
+ const struct WatanabeDebugMenuItemSubstruct *type4;
} data;
};
@@ -41,6 +51,10 @@ struct WatanabeEwram18000 {
u8 unk168;
u8 unk169;
u8 unk16a;
+ u8 unk16b;
+ u8 unk16c;
+ u8 unk16d;
+ u8 unk16e[256];
};
#define eWatanabe18000 (*(struct WatanabeEwram18000 *)(gSharedMem + 0x18000))
@@ -94,13 +108,18 @@ void debug_80C5FFC(void);
void debug_80C627C(u8);
void debug_80C6384(void);
void debug_80C643C(void);
+void debug_80C6544(u8);
+void debug_80C689C(u8 *, const u8 *, u8);
+void debug_80C6678(u8 *, u32, u8, u8);
void debug_80C68CC(u16, u8, u8, u8);
void debug_80C7584(struct Sprite *);
extern const struct WatanabeDebugMenuItem gUnknown_Debug_083F8068[5];
extern const struct WatanabeDebugMenuItem gUnknown_Debug_083F80D8[10];
extern const struct WatanabeDebugMenuItem gUnknown_Debug_083F814C[9];
+extern const struct WatanabeDebugMenuItem gUnknown_Debug_083F8554[35];
extern const struct WatanabeDebugMenuItem gUnknown_Debug_083F8698[6];
+extern const struct WatanabeDebugMenuItem gUnknown_Debug_083F86E8[7];
extern const u8 gUnknown_Debug_083F7FD4[2]; // = _("▶");
extern const u8 gUnknown_Debug_083F7FD6[4]; // = {0x25, 0x20, 0x01, 0x08};
@@ -130,6 +149,17 @@ extern const u8 gUnknown_Debug_083F8233[4]; // = _("おんな");
extern const u8 gUnknown_Debug_083F8720[10];
extern const u8 gUnknown_Debug_083F872A[9];
extern const u8 gUnknown_Debug_083F8733[37]; // = _("Create POKひMON   LR:Shift  START:Add");
+extern const u8 gUnknown_Debug_083F850A[10]; // = _("{COLOR RED}HP  ");
+extern const u8 gUnknown_Debug_083F8514[8]; // = _("{COLOR RED}ATK ");
+extern const u8 gUnknown_Debug_083F851C[8]; // = _("{COLOR RED}DEF ");
+extern const u8 gUnknown_Debug_083F8524[9]; // = _("{COLOR RED}SPEED");
+extern const u8 gUnknown_Debug_083F852D[10]; // = _("{COLOR RED}SP。ATK");
+extern const u8 gUnknown_Debug_083F8537[10]; // = _("{COLOR RED}SP。DEF");
+extern const u8 gUnknown_Debug_083F8541[3]; // = _("なし");
+extern const u8 gUnknown_Debug_083F8544[2]; // = _("♂");
+extern const u8 gUnknown_Debug_083F8546[2]; // = _("♀");
+extern const u8 gUnknown_Debug_083F854A[3]; // = _("ON");
+extern const u8 gUnknown_Debug_083F854D[4]; // = _("OFF");
#define SPRITETAG_WATANABE 0x1000
@@ -1717,6 +1747,162 @@ void debug_80C53F0(u8 taskId)
}
}
+void debug_80C55E4(u8 taskId)
+{
+ u8 r7 = gUnknown_Debug_083F8698[gUnknown_Debug_2038A1C->unk168].text[gUnknown_Debug_2038A1C->unk169];
+ if (gMain.newKeys & A_BUTTON)
+ {
+ gTasks[taskId].func = debug_80C53C0;
+ }
+ else if (gMain.newKeys & B_BUTTON)
+ {
+ gUnknown_Debug_2038A1C->unk64[r7] = gUnknown_Debug_2038A1C->unk164;
+ gTasks[taskId].func = debug_80C53C0;
+ }
+ else if (gMain.newAndRepeatedKeys & DPAD_UP)
+ {
+ debug_80C6544(1);
+ debug_80C643C();
+ }
+ else if (gMain.newAndRepeatedKeys & DPAD_DOWN)
+ {
+ debug_80C6544(2);
+ debug_80C643C();
+ }
+ else if (gUnknown_Debug_083F8554[r7].data.type4->unk9 != 0xFF)
+ {
+ if (gMain.newKeys & DPAD_LEFT && gUnknown_Debug_2038A1C->unk16a < gUnknown_Debug_083F8554[r7].data.type4->unk9 - 1)
+ {
+ gUnknown_Debug_2038A1C->unk16a++;
+ debug_80C643C();
+ }
+ else if (gMain.newKeys & DPAD_RIGHT && gUnknown_Debug_2038A1C->unk16a > 0)
+ {
+ gUnknown_Debug_2038A1C->unk16a--;
+ debug_80C643C();
+ }
+ }
+}
+
+void debug_80C5708(u8 taskId)
+{
+ if (gMain.newKeys & A_BUTTON)
+ {
+ gTasks[taskId].func = debug_80C53C0;
+ }
+}
+
+u8 debug_80C5738(u8 * a0, u8 a1, u8 a2)
+{
+ u16 i;
+ u8 r5;
+ u8 r2;
+
+ if (a1 == 0xfe)
+ {
+ debug_80C689C(a0, gUnknown_Debug_083F850A, 7);
+ debug_80C6678(a0 + 7, gUnknown_Debug_2038A1C->unk64[35], 3, 1);
+ a0[19] = CHAR_SPACE;
+ a0[20] = CHAR_SPACE;
+ debug_80C689C(a0 + 21, gUnknown_Debug_083F8514, 7);
+ debug_80C6678(a0 + 28, gUnknown_Debug_2038A1C->unk64[36], 3, 1);
+ a0[40] = CHAR_SPACE;
+ a0[41] = CHAR_SPACE;
+ debug_80C689C(a0 + 42, gUnknown_Debug_083F851C, 9);
+ debug_80C6678(a0 + 49, gUnknown_Debug_2038A1C->unk64[37], 3, 1);
+ return 0;
+ }
+ if (a1 == 0xfd)
+ {
+ debug_80C689C(a0, gUnknown_Debug_083F8524, 9);
+ debug_80C6678(a0 + 9, gUnknown_Debug_2038A1C->unk64[38], 3, 1);
+ a0[21] = CHAR_SPACE;
+ a0[22] = CHAR_SPACE;
+ debug_80C689C(a0 + 23, gUnknown_Debug_083F852D, 9);
+ debug_80C6678(a0 + 32, gUnknown_Debug_2038A1C->unk64[39], 3, 1);
+ a0[44] = CHAR_SPACE;
+ a0[45] = CHAR_SPACE;
+ debug_80C689C(a0 + 46, gUnknown_Debug_083F8537, 9);
+ debug_80C6678(a0 + 55, gUnknown_Debug_2038A1C->unk64[40], 3, 1);
+ return 0;
+ }
+ for (i = 0; i < 12; i++)
+ a0[i] = CHAR_SPACE;
+ debug_80C689C(a0, gUnknown_Debug_083F8554[a1].text, 11);
+ for (i = 12; i < 256; i++)
+ a0[i] = EOS;
+ r2 = gUnknown_Debug_083F8554[a1].data.type4->unk9;
+ r5 = r2 * 4;
+ switch (a1)
+ {
+ default:
+ a0[0] = EOS;
+ break;
+ case 0:
+ debug_80C6678(a0 + 10, gUnknown_Debug_2038A1C->unk64[a1], r2, a2);
+ a0[10 + r5] = CHAR_SPACE;
+ a0[11 + r5] = EXT_CTRL_CODE_BEGIN;
+ a0[12 + r5] = 0x01;
+ a0[13 + r5] = a2;
+ debug_80C689C(a0 + 14 + r5, gSpeciesNames[NationalPokedexNumToSpecies(gUnknown_Debug_2038A1C->unk64[a1])], 10);
+ break;
+ case 5:
+ switch (gUnknown_Debug_2038A1C->unk64[a1])
+ {
+ case 0:
+ debug_80C689C(a0 + 10, gUnknown_Debug_083F8546, 2);
+ break;
+ case 1:
+ debug_80C689C(a0 + 10, gUnknown_Debug_083F8541, 2);
+ break;
+ case 2:
+ debug_80C689C(a0 + 10, gUnknown_Debug_083F8544, 2);
+ break;
+ }
+ break;
+ case 7 ... 10:
+ debug_80C6678(a0 + 10, gUnknown_Debug_2038A1C->unk64[a1], r2, a2);
+ a0[10 + r5] = CHAR_SPACE;
+ a0[11 + r5] = EXT_CTRL_CODE_BEGIN;
+ a0[12 + r5] = 0x01;
+ a0[13 + r5] = a2;
+ debug_80C689C(a0 + 14 + r5, gMoveNames[gUnknown_Debug_2038A1C->unk64[a1]], 12);
+ break;
+ case 11:
+ debug_80C6678(a0 + 10, gUnknown_Debug_2038A1C->unk64[a1], r2, a2);
+ a0[10 + r5] = CHAR_SPACE;
+ a0[11 + r5] = EXT_CTRL_CODE_BEGIN;
+ a0[12 + r5] = 0x01;
+ a0[13 + r5] = a2;
+ if (gUnknown_Debug_2038A1C->unk64[a1] != ITEM_NONE)
+ debug_80C689C(a0 + 14 + r5, ItemId_GetName(gUnknown_Debug_2038A1C->unk64[a1]), 9);
+ else
+ debug_80C689C(a0 + 14 + r5, gUnknown_Debug_083F8541, 9);
+ break;
+ case 12:
+ a0 += 12;
+ debug_80C689C(a0, gAbilityNames[GetAbilityBySpecies(NationalPokedexNumToSpecies(gUnknown_Debug_2038A1C->unk64[0]), gUnknown_Debug_2038A1C->unk64[a1])], 12);
+ break;
+ case 34:
+ debug_80C689C(a0 + 10, gUnknown_Debug_083F86E8[gUnknown_Debug_2038A1C->unk64[a1]].text, 4);
+ break;
+ case 1 ... 4:
+ case 13 ... 32:
+ debug_80C6678(a0 + 12, gUnknown_Debug_2038A1C->unk64[a1], r2, a2);
+ break;
+ case 33:
+ if (gUnknown_Debug_2038A1C->unk64[a1])
+ debug_80C689C(a0 + 10, gUnknown_Debug_083F854A, 4);
+ else
+ debug_80C689C(a0 + 10, gUnknown_Debug_083F854D, 4);
+ break;
+ case 6:
+ debug_80C689C(a0 + 10, gNatureNames[gUnknown_Debug_2038A1C->unk64[a1]], 5);
+ break;
+ }
+ return 0;
+}
+
u16 word_83F888C[] = INCBIN_U16("graphics/debug/sprite_browser.gbapal");
u8 byte_83F88EC[] = INCBIN_U8("graphics/debug/sprite_browser.4bpp");