summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/code_2.s4
-rw-r--r--asm/debug_menu.s1428
-rw-r--r--asm/debug_menu_1.s686
-rw-r--r--asm/other_menus.s1309
-rw-r--r--asm/rescue_password_menu.s52
-rw-r--r--asm/unk_menu_203B360.s76
-rw-r--r--asm/unk_menu_203B364.s364
-rw-r--r--asm/wonder_mail_1.s366
8 files changed, 1155 insertions, 3130 deletions
diff --git a/asm/code_2.s b/asm/code_2.s
index 626681a..30f2b05 100644
--- a/asm/code_2.s
+++ b/asm/code_2.s
@@ -106,8 +106,8 @@ _080006B8:
pop {r0}
bx r0
.align 2, 0
-_08000708: .4byte gUnknown_80B69F8
-_0800070C: .4byte gUnknown_80B6A28
+_08000708: .4byte gLoadScreenBackgroundFileNames
+_0800070C: .4byte gLoadScreenBackgroundPaletteFileNames
_08000710: .4byte 0x00005b20
_08000714: .4byte gTitleMenuFileArchive
_08000718: .4byte gTitlePaletteFile
diff --git a/asm/debug_menu.s b/asm/debug_menu.s
index 60e049e..04f78e4 100644
--- a/asm/debug_menu.s
+++ b/asm/debug_menu.s
@@ -82,1432 +82,4 @@ _0803A454: .4byte 0x00001006
_0803A458: .4byte 0x0000012b
thumb_func_end sub_803A3BC
- thumb_func_start sub_803A45C
-sub_803A45C:
- push {r4,lr}
- bl ResetUnusedInputStruct
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r4, _0803A488
- movs r0, 0x9C
- lsls r0, 1
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r4]
- movs r0, 0
- bl sub_803A504
- movs r0, 0x1
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0803A488: .4byte gUnknown_203B3F0
- thumb_func_end sub_803A45C
-
- thumb_func_start sub_803A48C
-sub_803A48C:
- push {lr}
- ldr r0, _0803A4A4
- ldr r0, [r0]
- ldr r0, [r0]
- cmp r0, 0x5
- bhi _0803A4E0
- lsls r0, 2
- ldr r1, _0803A4A8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0803A4A4: .4byte gUnknown_203B3F0
-_0803A4A8: .4byte _0803A4AC
- .align 2, 0
-_0803A4AC:
- .4byte _0803A4C4
- .4byte _0803A4C4
- .4byte _0803A4CA
- .4byte _0803A4D0
- .4byte _0803A4D6
- .4byte _0803A4DC
-_0803A4C4:
- bl sub_803A740
- b _0803A4E0
-_0803A4CA:
- bl sub_803A7B0
- b _0803A4E0
-_0803A4D0:
- bl sub_803A810
- b _0803A4E0
-_0803A4D6:
- bl sub_803A86C
- b _0803A4E0
-_0803A4DC:
- movs r0, 0x3
- b _0803A4E2
-_0803A4E0:
- movs r0, 0
-_0803A4E2:
- pop {r1}
- bx r1
- thumb_func_end sub_803A48C
-
- thumb_func_start sub_803A4E8
-sub_803A4E8:
- push {r4,lr}
- ldr r4, _0803A500
- ldr r0, [r4]
- cmp r0, 0
- beq _0803A4FA
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0803A4FA:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0803A500: .4byte gUnknown_203B3F0
- thumb_func_end sub_803A4E8
-
- thumb_func_start sub_803A504
-sub_803A504:
- push {lr}
- ldr r1, _0803A518
- ldr r1, [r1]
- str r0, [r1]
- bl sub_803A51C
- bl sub_803A5A0
- pop {r0}
- bx r0
- .align 2, 0
-_0803A518: .4byte gUnknown_203B3F0
- thumb_func_end sub_803A504
-
- thumb_func_start sub_803A51C
-sub_803A51C:
- push {r4-r7,lr}
- ldr r4, _0803A53C
- ldr r0, [r4]
- adds r0, 0xD8
- bl sub_8006518
- ldr r1, [r4]
- ldr r0, [r1]
- cmp r0, 0x2
- beq _0803A544
- cmp r0, 0x3
- bne _0803A55C
- adds r1, 0xF0
- ldr r0, _0803A540
- b _0803A54C
- .align 2, 0
-_0803A53C: .4byte gUnknown_203B3F0
-_0803A540: .4byte gUnknown_80E7E64
-_0803A544:
- movs r0, 0x84
- lsls r0, 1
- adds r1, r0
- ldr r0, _0803A558
-_0803A54C:
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- b _0803A57E
- .align 2, 0
-_0803A558: .4byte gUnknown_80E7E4C
-_0803A55C:
- mov r12, r4
- ldr r4, _0803A598
- movs r3, 0
- movs r2, 0x3
-_0803A564:
- mov r0, r12
- ldr r1, [r0]
- adds r1, r3
- adds r1, 0xD8
- adds r0, r4, 0
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- adds r3, 0x18
- subs r2, 0x1
- cmp r2, 0
- bge _0803A564
-_0803A57E:
- bl ResetUnusedInputStruct
- ldr r0, _0803A59C
- ldr r0, [r0]
- adds r0, 0xD8
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0803A598: .4byte gUnknown_80E7E34
-_0803A59C: .4byte gUnknown_203B3F0
- thumb_func_end sub_803A51C
-
- thumb_func_start sub_803A5A0
-sub_803A5A0:
- push {lr}
- sub sp, 0xC
- ldr r1, _0803A5BC
- ldr r0, [r1]
- ldr r0, [r0]
- adds r2, r1, 0
- cmp r0, 0x5
- bhi _0803A68A
- lsls r0, 2
- ldr r1, _0803A5C0
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0803A5BC: .4byte gUnknown_203B3F0
-_0803A5C0: .4byte _0803A5C4
- .align 2, 0
-_0803A5C4:
- .4byte _0803A5DC
- .4byte _0803A5EA
- .4byte _0803A5F2
- .4byte _0803A61C
- .4byte _0803A678
- .4byte _0803A68A
-_0803A5DC:
- movs r0, 0x2
- movs r1, 0x3
- movs r2, 0
- movs r3, 0xA
- bl sub_801C8C4
- b _0803A68A
-_0803A5EA:
- movs r0, 0x1
- bl sub_801CB5C
- b _0803A68A
-_0803A5F2:
- bl sub_801CCD8
- bl sub_803A6F0
- ldr r0, _0803A618
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0x4C
- adds r1, r2, 0
- adds r1, 0xC
- ldr r2, [r2, 0x8]
- str r2, [sp]
- movs r2, 0x2
- str r2, [sp, 0x4]
- movs r2, 0
- movs r3, 0
- bl sub_8012D60
- b _0803A68A
- .align 2, 0
-_0803A618: .4byte gUnknown_203B3F0
-_0803A61C:
- ldr r3, [r2]
- adds r1, r3, 0
- adds r1, 0xAC
- movs r0, 0x3
- str r0, [r1]
- subs r1, 0x8
- movs r0, 0
- str r0, [r1]
- adds r1, 0x4
- ldr r0, _0803A670
- str r0, [r1]
- adds r2, r3, 0
- adds r2, 0xA0
- ldr r0, _0803A674
- ldr r1, [r0]
- ldrb r0, [r3, 0x4]
- lsls r0, 1
- adds r1, 0x50
- adds r1, r0
- ldrh r0, [r1]
- str r0, [r2]
- adds r1, r3, 0
- adds r1, 0xB0
- movs r0, 0x1
- str r0, [r1]
- adds r1, 0x4
- adds r0, r3, 0
- adds r0, 0xF0
- str r0, [r1]
- adds r1, 0x4
- movs r0, 0x2C
- str r0, [r1]
- adds r1, 0x4
- movs r0, 0x12
- str r0, [r1]
- adds r0, r3, 0
- adds r0, 0x9C
- bl sub_8013AA0
- bl sub_803A690
- b _0803A68A
- .align 2, 0
-_0803A670: .4byte 0x000003e7
-_0803A674: .4byte gUnknown_203B460
-_0803A678:
- ldr r0, [r2]
- ldrb r1, [r0, 0x4]
- add r0, sp, 0x8
- movs r2, 0
- bl sub_8090A8C
- add r0, sp, 0x8
- bl sub_801B3C0
-_0803A68A:
- add sp, 0xC
- pop {r0}
- bx r0
- thumb_func_end sub_803A5A0
-
- thumb_func_start sub_803A690
-sub_803A690:
- push {r4,lr}
- sub sp, 0x4
- ldr r4, _0803A6E8
- ldr r0, [r4]
- adds r0, 0xB0
- ldr r0, [r0]
- bl sub_8008C54
- ldr r0, [r4]
- adds r0, 0xB0
- ldr r0, [r0]
- bl sub_80073B8
- ldr r2, _0803A6EC
- ldr r0, [r4]
- adds r0, 0xB0
- ldr r3, [r0]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x4
- movs r1, 0
- bl xxx_call_draw_string
- ldr r0, [r4]
- adds r0, 0x9C
- bl sub_8013C68
- ldr r0, [r4]
- adds r0, 0xB0
- ldr r0, [r0]
- bl sub_80073E0
- bl sub_801CCD8
- ldr r0, [r4]
- adds r0, 0x4C
- movs r1, 0
- bl sub_8012EA4
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0803A6E8: .4byte gUnknown_203B3F0
-_0803A6EC: .4byte gUnknown_80E7E7C
- thumb_func_end sub_803A690
-
- thumb_func_start sub_803A6F0
-sub_803A6F0:
- push {r4,lr}
- ldr r4, _0803A734
- ldr r1, [r4]
- ldr r0, _0803A738
- str r0, [r1, 0xC]
- movs r0, 0x2
- str r0, [r1, 0x10]
- str r0, [r1, 0x8]
- ldrb r0, [r1, 0x4]
- bl sub_8091524
- lsls r0, 24
- cmp r0, 0
- bne _0803A718
- ldr r0, [r4]
- movs r1, 0x1
- negs r1, r1
- str r1, [r0, 0x10]
- movs r1, 0x3
- str r1, [r0, 0x8]
-_0803A718:
- ldr r1, [r4]
- movs r2, 0x1
- ldr r0, _0803A73C
- ldr r0, [r0]
- str r0, [r1, 0x14]
- movs r0, 0x3
- str r0, [r1, 0x18]
- movs r0, 0
- str r0, [r1, 0x1C]
- str r2, [r1, 0x20]
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0803A734: .4byte gUnknown_203B3F0
-_0803A738: .4byte gUnknown_80E7E7C
-_0803A73C: .4byte gUnknown_80D4970
- thumb_func_end sub_803A6F0
-
- thumb_func_start sub_803A740
-sub_803A740:
- push {lr}
- movs r0, 0x1
- bl sub_801CA08
- cmp r0, 0x4
- bhi _0803A7AA
- lsls r0, 2
- ldr r1, _0803A758
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0803A758: .4byte _0803A75C
- .align 2, 0
-_0803A75C:
- .4byte _0803A7AA
- .4byte _0803A7AA
- .4byte _0803A7A0
- .4byte _0803A770
- .4byte _0803A788
-_0803A770:
- bl sub_801CB24
- ldr r1, _0803A784
- ldr r1, [r1]
- strb r0, [r1, 0x4]
- movs r0, 0x2
- bl sub_803A504
- b _0803A7AA
- .align 2, 0
-_0803A784: .4byte gUnknown_203B3F0
-_0803A788:
- bl sub_801CB24
- ldr r1, _0803A79C
- ldr r1, [r1]
- strb r0, [r1, 0x4]
- movs r0, 0x4
- bl sub_803A504
- b _0803A7AA
- .align 2, 0
-_0803A79C: .4byte gUnknown_203B3F0
-_0803A7A0:
- bl sub_801CBB8
- movs r0, 0x5
- bl sub_803A504
-_0803A7AA:
- pop {r0}
- bx r0
- thumb_func_end sub_803A740
-
- thumb_func_start sub_803A7B0
-sub_803A7B0:
- push {r4,lr}
- sub sp, 0x4
- movs r0, 0
- str r0, [sp]
- bl sub_801CA08
- ldr r4, _0803A7E8
- ldr r0, [r4]
- adds r0, 0x4C
- bl sub_8012FD8
- lsls r0, 24
- cmp r0, 0
- bne _0803A7D6
- ldr r0, [r4]
- adds r0, 0x4C
- mov r1, sp
- bl sub_8013114
-_0803A7D6:
- ldr r0, [sp]
- cmp r0, 0x2
- beq _0803A7F2
- cmp r0, 0x2
- bgt _0803A7EC
- cmp r0, 0x1
- beq _0803A802
- b _0803A808
- .align 2, 0
-_0803A7E8: .4byte gUnknown_203B3F0
-_0803A7EC:
- cmp r0, 0x3
- beq _0803A7FA
- b _0803A808
-_0803A7F2:
- movs r0, 0x3
- bl sub_803A504
- b _0803A808
-_0803A7FA:
- movs r0, 0x4
- bl sub_803A504
- b _0803A808
-_0803A802:
- movs r0, 0x1
- bl sub_803A504
-_0803A808:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_803A7B0
-
- thumb_func_start sub_803A810
-sub_803A810:
- push {r4,lr}
- movs r0, 0
- bl sub_801CA08
- ldr r4, _0803A838
- ldr r0, [r4]
- adds r0, 0x4C
- bl sub_8012FD8
- ldr r0, [r4]
- adds r0, 0x9C
- bl sub_8013BBC
- cmp r0, 0x2
- beq _0803A854
- cmp r0, 0x2
- bhi _0803A83C
- cmp r0, 0x1
- beq _0803A860
- b _0803A864
- .align 2, 0
-_0803A838: .4byte gUnknown_203B3F0
-_0803A83C:
- cmp r0, 0x3
- bne _0803A864
- ldr r0, _0803A85C
- ldr r2, [r0]
- ldr r1, [r4]
- ldrb r0, [r1, 0x4]
- lsls r0, 1
- adds r2, 0x50
- adds r2, r0
- adds r1, 0x9C
- ldr r0, [r1]
- strh r0, [r2]
-_0803A854:
- movs r0, 0x1
- bl sub_803A504
- b _0803A864
- .align 2, 0
-_0803A85C: .4byte gUnknown_203B460
-_0803A860:
- bl sub_803A690
-_0803A864:
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_803A810
-
- thumb_func_start sub_803A86C
-sub_803A86C:
- push {lr}
- bl sub_801B410
- cmp r0, 0x1
- bls _0803A884
- cmp r0, 0x3
- bhi _0803A884
- bl sub_801B450
- movs r0, 0x1
- bl sub_803A504
-_0803A884:
- pop {r0}
- bx r0
- thumb_func_end sub_803A86C
-
- thumb_func_start sub_803A888
-sub_803A888:
- push {r4,lr}
- bl ResetUnusedInputStruct
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r4, _0803A8B4
- movs r0, 0xFC
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r4]
- movs r0, 0
- bl sub_803A924
- movs r0, 0x1
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0803A8B4: .4byte gUnknown_203B3F4
- thumb_func_end sub_803A888
-
- thumb_func_start sub_803A8B8
-sub_803A8B8:
- push {lr}
- ldr r0, _0803A8D0
- ldr r0, [r0]
- ldr r0, [r0]
- cmp r0, 0x4
- bhi _0803A902
- lsls r0, 2
- ldr r1, _0803A8D4
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0803A8D0: .4byte gUnknown_203B3F4
-_0803A8D4: .4byte _0803A8D8
- .align 2, 0
-_0803A8D8:
- .4byte _0803A8EC
- .4byte _0803A8EC
- .4byte _0803A8F2
- .4byte _0803A8F8
- .4byte _0803A8FE
-_0803A8EC:
- bl sub_803AAC4
- b _0803A902
-_0803A8F2:
- bl sub_803AB34
- b _0803A902
-_0803A8F8:
- bl sub_803ABAC
- b _0803A902
-_0803A8FE:
- movs r0, 0x3
- b _0803A904
-_0803A902:
- movs r0, 0
-_0803A904:
- pop {r1}
- bx r1
- thumb_func_end sub_803A8B8
-
- thumb_func_start sub_803A908
-sub_803A908:
- push {r4,lr}
- ldr r4, _0803A920
- ldr r0, [r4]
- cmp r0, 0
- beq _0803A91A
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0803A91A:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0803A920: .4byte gUnknown_203B3F4
- thumb_func_end sub_803A908
-
- thumb_func_start sub_803A924
-sub_803A924:
- push {lr}
- ldr r1, _0803A938
- ldr r1, [r1]
- str r0, [r1]
- bl sub_803A93C
- bl sub_803A9AC
- pop {r0}
- bx r0
- .align 2, 0
-_0803A938: .4byte gUnknown_203B3F4
- thumb_func_end sub_803A924
-
- thumb_func_start sub_803A93C
-sub_803A93C:
- push {r4-r7,lr}
- ldr r4, _0803A960
- ldr r0, [r4]
- adds r0, 0x9C
- bl sub_8006518
- ldr r1, [r4]
- ldr r0, [r1]
- cmp r0, 0x2
- bne _0803A968
- adds r1, 0xCC
- ldr r0, _0803A964
- ldm r0!, {r2-r4}
- stm r1!, {r2-r4}
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- b _0803A98A
- .align 2, 0
-_0803A960: .4byte gUnknown_203B3F4
-_0803A964: .4byte gUnknown_80E7EA4
-_0803A968:
- mov r12, r4
- ldr r4, _0803A9A4
- movs r3, 0
- movs r2, 0x3
-_0803A970:
- mov r0, r12
- ldr r1, [r0]
- adds r1, r3
- adds r1, 0x9C
- adds r0, r4, 0
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- adds r3, 0x18
- subs r2, 0x1
- cmp r2, 0
- bge _0803A970
-_0803A98A:
- bl ResetUnusedInputStruct
- ldr r0, _0803A9A8
- ldr r0, [r0]
- adds r0, 0x9C
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0803A9A4: .4byte gUnknown_80E7E8C
-_0803A9A8: .4byte gUnknown_203B3F4
- thumb_func_end sub_803A93C
-
- thumb_func_start sub_803A9AC
-sub_803A9AC:
- push {lr}
- sub sp, 0x8
- ldr r1, _0803A9C8
- ldr r0, [r1]
- ldr r0, [r0]
- adds r2, r1, 0
- cmp r0, 0x4
- bhi _0803AA2C
- lsls r0, 2
- ldr r1, _0803A9CC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0803A9C8: .4byte gUnknown_203B3F4
-_0803A9CC: .4byte _0803A9D0
- .align 2, 0
-_0803A9D0:
- .4byte _0803A9E4
- .4byte _0803A9EE
- .4byte _0803A9F6
- .4byte _0803AA20
- .4byte _0803AA2C
-_0803A9E4:
- movs r0, 0
- movs r1, 0x3
- bl sub_80211AC
- b _0803AA2C
-_0803A9EE:
- movs r0, 0x1
- bl sub_8021354
- b _0803AA2C
-_0803A9F6:
- bl sub_8021494
- bl sub_803AA34
- ldr r0, _0803AA1C
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0x4C
- adds r1, r2, 0
- adds r1, 0xC
- ldr r2, [r2, 0x8]
- str r2, [sp]
- movs r2, 0x2
- str r2, [sp, 0x4]
- movs r2, 0
- movs r3, 0
- bl sub_8012D60
- b _0803AA2C
- .align 2, 0
-_0803AA1C: .4byte gUnknown_203B3F4
-_0803AA20:
- ldr r0, [r2]
- ldrb r0, [r0, 0x4]
- movs r1, 0x1
- movs r2, 0
- bl sub_8021774
-_0803AA2C:
- add sp, 0x8
- pop {r0}
- bx r0
- thumb_func_end sub_803A9AC
-
- thumb_func_start sub_803AA34
-sub_803AA34:
- push {r4,r5,lr}
- movs r4, 0
- ldr r0, _0803AA64
- ldr r1, [r0]
- ldr r2, _0803AA68
- ldr r3, [r2]
- ldrb r0, [r3, 0x4]
- adds r1, r0
- ldrb r0, [r1]
- adds r5, r2, 0
- cmp r0, 0
- beq _0803AA7A
- ldr r0, _0803AA6C
- str r0, [r3, 0xC]
- bl sub_803ABC8
- lsls r0, 24
- cmp r0, 0
- beq _0803AA70
- ldr r1, [r5]
- movs r0, 0x3
- str r0, [r1, 0x10]
- b _0803AA82
- .align 2, 0
-_0803AA64: .4byte gFriendAreas
-_0803AA68: .4byte gUnknown_203B3F4
-_0803AA6C: .4byte gUnknown_80E7EBC
-_0803AA70:
- ldr r1, [r5]
- movs r0, 0x1
- negs r0, r0
- str r0, [r1, 0x10]
- b _0803AA82
-_0803AA7A:
- ldr r0, _0803AABC
- str r0, [r3, 0xC]
- movs r0, 0x2
- str r0, [r3, 0x10]
-_0803AA82:
- adds r4, 0x1
- ldr r5, [r5]
- mov r12, r5
- lsls r1, r4, 3
- mov r3, r12
- adds r3, 0xC
- adds r2, r3, r1
- ldr r0, _0803AAC0
- ldr r0, [r0]
- str r0, [r2]
- mov r2, r12
- adds r2, 0x10
- adds r1, r2, r1
- movs r0, 0x4
- str r0, [r1]
- adds r4, 0x1
- lsls r1, r4, 3
- adds r3, r1
- movs r0, 0
- str r0, [r3]
- adds r2, r1
- movs r0, 0x1
- str r0, [r2]
- mov r1, r12
- ldr r0, [r1, 0x10]
- str r0, [r1, 0x8]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0803AABC: .4byte gUnknown_80E7EC4
-_0803AAC0: .4byte gUnknown_80D4970
- thumb_func_end sub_803AA34
-
- thumb_func_start sub_803AAC4
-sub_803AAC4:
- push {lr}
- movs r0, 0x1
- bl sub_8021274
- cmp r0, 0x4
- bhi _0803AB2E
- lsls r0, 2
- ldr r1, _0803AADC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0803AADC: .4byte _0803AAE0
- .align 2, 0
-_0803AAE0:
- .4byte _0803AB2E
- .4byte _0803AB2E
- .4byte _0803AB24
- .4byte _0803AAF4
- .4byte _0803AB0C
-_0803AAF4:
- bl sub_802132C
- ldr r1, _0803AB08
- ldr r1, [r1]
- strb r0, [r1, 0x4]
- movs r0, 0x2
- bl sub_803A924
- b _0803AB2E
- .align 2, 0
-_0803AB08: .4byte gUnknown_203B3F4
-_0803AB0C:
- bl sub_802132C
- ldr r1, _0803AB20
- ldr r1, [r1]
- strb r0, [r1, 0x4]
- movs r0, 0x3
- bl sub_803A924
- b _0803AB2E
- .align 2, 0
-_0803AB20: .4byte gUnknown_203B3F4
-_0803AB24:
- bl sub_80213A0
- movs r0, 0x4
- bl sub_803A924
-_0803AB2E:
- pop {r0}
- bx r0
- thumb_func_end sub_803AAC4
-
- thumb_func_start sub_803AB34
-sub_803AB34:
- push {r4,lr}
- sub sp, 0x4
- movs r0, 0
- str r0, [sp]
- bl sub_8021274
- ldr r4, _0803AB6C
- ldr r0, [r4]
- adds r0, 0x4C
- bl sub_8012FD8
- lsls r0, 24
- cmp r0, 0
- bne _0803AB5A
- ldr r0, [r4]
- adds r0, 0x4C
- mov r1, sp
- bl sub_8013114
-_0803AB5A:
- ldr r0, [sp]
- cmp r0, 0x2
- beq _0803AB7A
- cmp r0, 0x2
- bgt _0803AB70
- cmp r0, 0x1
- beq _0803AB9E
- b _0803ABA4
- .align 2, 0
-_0803AB6C: .4byte gUnknown_203B3F4
-_0803AB70:
- cmp r0, 0x3
- beq _0803AB84
- cmp r0, 0x4
- beq _0803AB96
- b _0803ABA4
-_0803AB7A:
- ldr r0, [r4]
- ldrb r0, [r0, 0x4]
- bl UnlockFriendArea
- b _0803AB8E
-_0803AB84:
- ldr r0, [r4]
- ldrb r0, [r0, 0x4]
- movs r1, 0x1
- bl sub_809249C
-_0803AB8E:
- movs r0, 0x1
- bl sub_803A924
- b _0803ABA4
-_0803AB96:
- movs r0, 0x3
- bl sub_803A924
- b _0803ABA4
-_0803AB9E:
- movs r0, 0x1
- bl sub_803A924
-_0803ABA4:
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- thumb_func_end sub_803AB34
-
- thumb_func_start sub_803ABAC
-sub_803ABAC:
- push {lr}
- bl sub_80217EC
- cmp r0, 0x1
- bls _0803ABC4
- cmp r0, 0x3
- bhi _0803ABC4
- bl sub_8021830
- movs r0, 0x1
- bl sub_803A924
-_0803ABC4:
- pop {r0}
- bx r0
- thumb_func_end sub_803ABAC
-
- thumb_func_start sub_803ABC8
-sub_803ABC8:
- push {r4-r6,lr}
- movs r5, 0
- movs r6, 0x1
-_0803ABCE:
- ldr r2, _0803AC08
- movs r0, 0x58
- adds r1, r5, 0
- muls r1, r0
- ldr r0, [r2]
- adds r2, r0, r1
- ldrh r1, [r2]
- adds r0, r6, 0
- ands r0, r1
- cmp r0, 0
- beq _0803AC10
- lsrs r0, r1, 1
- ands r0, r6
- cmp r0, 0
- beq _0803AC10
- ldr r0, _0803AC0C
- ldr r4, [r0]
- movs r1, 0x8
- ldrsh r0, [r2, r1]
- bl GetFriendArea
- ldrb r1, [r4, 0x4]
- lsls r0, 24
- lsrs r0, 24
- cmp r1, r0
- bne _0803AC10
- movs r0, 0
- b _0803AC1C
- .align 2, 0
-_0803AC08: .4byte gUnknown_203B45C
-_0803AC0C: .4byte gUnknown_203B3F4
-_0803AC10:
- adds r5, 0x1
- movs r0, 0xCE
- lsls r0, 1
- cmp r5, r0
- ble _0803ABCE
- movs r0, 0x1
-_0803AC1C:
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_803ABC8
-
- thumb_func_start sub_803AC24
-sub_803AC24:
- push {r4,lr}
- ldr r4, _0803AC44
- movs r0, 0xA0
- lsls r0, 1
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r4]
- movs r0, 0
- bl sub_803ACD0
- movs r0, 0x1
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_0803AC44: .4byte gUnknown_203B3F8
- thumb_func_end sub_803AC24
-
- thumb_func_start sub_803AC48
-sub_803AC48:
- push {lr}
- ldr r0, _0803AC60
- ldr r0, [r0]
- ldr r0, [r0]
- cmp r0, 0x7
- bhi _0803ACA8
- lsls r0, 2
- ldr r1, _0803AC64
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0803AC60: .4byte gUnknown_203B3F8
-_0803AC64: .4byte _0803AC68
- .align 2, 0
-_0803AC68:
- .4byte _0803AC88
- .4byte _0803AC90
- .4byte _0803AC90
- .4byte _0803AC96
- .4byte _0803ACA8
- .4byte _0803AC9C
- .4byte _0803ACA2
- .4byte _0803ACA8
-_0803AC88:
- movs r0, 0x1
- bl sub_803ACD0
- b _0803ACAC
-_0803AC90:
- bl sub_803AF38
- b _0803ACAC
-_0803AC96:
- bl sub_803AF88
- b _0803ACAC
-_0803AC9C:
- bl sub_803AFE8
- b _0803ACAC
-_0803ACA2:
- bl sub_803B034
- b _0803ACAC
-_0803ACA8:
- movs r0, 0x3
- b _0803ACAE
-_0803ACAC:
- movs r0, 0
-_0803ACAE:
- pop {r1}
- bx r1
- thumb_func_end sub_803AC48
-
- thumb_func_start sub_803ACB4
-sub_803ACB4:
- push {r4,lr}
- ldr r4, _0803ACCC
- ldr r0, [r4]
- cmp r0, 0
- beq _0803ACC6
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_0803ACC6:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0803ACCC: .4byte gUnknown_203B3F8
- thumb_func_end sub_803ACB4
-
- thumb_func_start sub_803ACD0
-sub_803ACD0:
- push {lr}
- ldr r1, _0803ACE4
- ldr r1, [r1]
- str r0, [r1]
- bl sub_803ACE8
- bl sub_803AD88
- pop {r0}
- bx r0
- .align 2, 0
-_0803ACE4: .4byte gUnknown_203B3F8
- thumb_func_end sub_803ACD0
-
- thumb_func_start sub_803ACE8
-sub_803ACE8:
- push {r4-r7,lr}
- ldr r4, _0803AD08
- ldr r0, [r4]
- adds r0, 0xE0
- bl sub_8006518
- ldr r1, [r4]
- ldr r0, [r1]
- cmp r0, 0x3
- beq _0803AD10
- cmp r0, 0x5
- beq _0803AD38
- movs r2, 0
- ldr r3, _0803AD0C
- b _0803AD50
- .align 2, 0
-_0803AD08: .4byte gUnknown_203B3F8
-_0803AD0C: .4byte gUnknown_80E7ED4
-_0803AD10:
- bl sub_803AEB0
- ldr r2, [r4]
- movs r0, 0x88
- lsls r0, 1
- adds r2, r0
- ldr r1, _0803AD34
- ldm r1!, {r3,r5,r6}
- stm r2!, {r3,r5,r6}
- ldm r1!, {r3,r5,r7}
- stm r2!, {r3,r5,r7}
- ldr r1, [r4]
- adds r0, r1, r0
- adds r1, 0x90
- bl sub_8012CAC
- b _0803AD6C
- .align 2, 0
-_0803AD34: .4byte gUnknown_80E7EEC
-_0803AD38:
- movs r6, 0x94
- lsls r6, 1
- adds r1, r6
- ldr r0, _0803AD4C
- ldm r0!, {r2,r3,r7}
- stm r1!, {r2,r3,r7}
- ldm r0!, {r4-r6}
- stm r1!, {r4-r6}
- b _0803AD6C
- .align 2, 0
-_0803AD4C: .4byte gUnknown_80E7F04
-_0803AD50:
- ldr r0, [r4]
- lsls r1, r2, 1
- adds r1, r2
- lsls r1, 3
- adds r0, r1
- adds r0, 0xE0
- adds r1, r3, 0
- ldm r1!, {r5-r7}
- stm r0!, {r5-r7}
- ldm r1!, {r5-r7}
- stm r0!, {r5-r7}
- adds r2, 0x1
- cmp r2, 0x3
- ble _0803AD50
-_0803AD6C:
- bl ResetUnusedInputStruct
- ldr r0, _0803AD84
- ldr r0, [r0]
- adds r0, 0xE0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0803AD84: .4byte gUnknown_203B3F8
- thumb_func_end sub_803ACE8
-
- thumb_func_start sub_803AD88
-sub_803AD88:
- push {lr}
- sub sp, 0x8
- ldr r1, _0803ADA4
- ldr r0, [r1]
- ldr r0, [r0]
- adds r2, r1, 0
- cmp r0, 0x7
- bhi _0803AE50
- lsls r0, 2
- ldr r1, _0803ADA8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0803ADA4: .4byte gUnknown_203B3F8
-_0803ADA8: .4byte _0803ADAC
- .align 2, 0
-_0803ADAC:
- .4byte _0803AE50
- .4byte _0803ADCC
- .4byte _0803ADDA
- .4byte _0803ADE2
- .4byte _0803AE50
- .4byte _0803AE0C
- .4byte _0803AE44
- .4byte _0803AE50
-_0803ADCC:
- movs r0, 0x1
- movs r1, 0
- movs r2, 0
- movs r3, 0xA
- bl sub_8023868
- b _0803AE50
-_0803ADDA:
- movs r0, 0x1
- bl sub_8023B7C
- b _0803AE50
-_0803ADE2:
- bl sub_8023DA4
- ldr r0, _0803AE08
- ldr r2, [r0]
- adds r0, r2, 0
- adds r0, 0x10
- adds r1, r2, 0
- adds r1, 0x90
- adds r3, r2, 0
- adds r3, 0xD0
- ldr r2, [r2, 0xC]
- str r2, [sp]
- movs r2, 0x2
- str r2, [sp, 0x4]
- movs r2, 0
- bl sub_8012D60
- b _0803AE50
- .align 2, 0
-_0803AE08: .4byte gUnknown_203B3F8
-_0803AE0C:
- ldr r2, [r2]
- movs r1, 0x3
- str r1, [r2, 0x70]
- movs r0, 0x1
- str r0, [r2, 0x68]
- movs r0, 0x64
- str r0, [r2, 0x6C]
- ldr r0, [r2, 0x8]
- ldrb r0, [r0, 0x3]
- str r0, [r2, 0x64]
- str r1, [r2, 0x74]
- movs r1, 0x94
- lsls r1, 1
- adds r0, r2, r1
- str r0, [r2, 0x78]
- movs r0, 0x2C
- str r0, [r2, 0x7C]
- adds r1, r2, 0
- adds r1, 0x80
- movs r0, 0x12
- str r0, [r1]
- adds r0, r2, 0
- adds r0, 0x60
- bl sub_8013AA0
- bl sub_803AE58
- b _0803AE50
-_0803AE44:
- ldr r0, [r2]
- ldr r1, [r0, 0x8]
- adds r1, 0x4C
- movs r0, 0x2
- bl sub_801602C
-_0803AE50:
- add sp, 0x8
- pop {r0}
- bx r0
- thumb_func_end sub_803AD88
-
- thumb_func_start sub_803AE58
-sub_803AE58:
- push {r4,lr}
- sub sp, 0x4
- ldr r4, _0803AEA8
- ldr r0, [r4]
- ldr r0, [r0, 0x74]
- bl sub_8008C54
- ldr r0, [r4]
- ldr r0, [r0, 0x74]
- bl sub_80073B8
- ldr r2, _0803AEAC
- ldr r0, [r4]
- ldr r3, [r0, 0x74]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x4
- movs r1, 0
- bl xxx_call_draw_string
- ldr r0, [r4]
- adds r0, 0x60
- bl sub_8013C68
- ldr r0, [r4]
- ldr r0, [r0, 0x74]
- bl sub_80073E0
- bl sub_8023DA4
- ldr r0, [r4]
- adds r0, 0x10
- movs r1, 0
- bl sub_8012EA4
- add sp, 0x4
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0803AEA8: .4byte gUnknown_203B3F8
-_0803AEAC: .4byte gUnknown_80E7F1C
- thumb_func_end sub_803AE58
-
- thumb_func_start sub_803AEB0
-sub_803AEB0:
- push {r4-r6,lr}
- ldr r4, _0803AEFC
- ldr r0, [r4]
- adds r0, 0xD0
- movs r1, 0
- movs r2, 0x10
- bl MemoryFill16
- ldr r4, [r4]
- movs r3, 0
- adds r1, r4, 0
- adds r1, 0x90
- ldr r0, _0803AF00
- str r0, [r1]
- adds r5, r4, 0
- adds r5, 0x94
- movs r0, 0x4
- str r0, [r5]
- movs r2, 0x1
- adds r1, 0x8
- ldr r0, _0803AF04
- str r0, [r1]
- adds r1, 0x4
- movs r0, 0x5
- str r0, [r1]
- movs r6, 0x2
- adds r0, r4, 0
- adds r0, 0xA0
- str r3, [r0]
- adds r0, 0x4
- str r2, [r0]
- adds r0, 0x2C
- ldrh r0, [r0]
- cmp r0, 0
- bne _0803AF08
- ldr r0, [r5]
- str r0, [r4, 0xC]
- b _0803AF2C
- .align 2, 0
-_0803AEFC: .4byte gUnknown_203B3F8
-_0803AF00: .4byte gUnknown_80E7F24
-_0803AF04: .4byte gUnknown_80E7F2C
-_0803AF08:
- adds r3, 0x1
- cmp r3, r6
- bge _0803AF2C
- ldr r0, _0803AF34
- ldr r2, [r0]
- lsls r1, r3, 1
- adds r0, r2, 0
- adds r0, 0xD0
- adds r0, r1
- ldrh r0, [r0]
- cmp r0, 0
- bne _0803AF08
- lsls r0, r3, 3
- adds r1, r2, 0
- adds r1, 0x94
- adds r1, r0
- ldr r0, [r1]
- str r0, [r2, 0xC]
-_0803AF2C:
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0803AF34: .4byte gUnknown_203B3F8
- thumb_func_end sub_803AEB0
-
- thumb_func_start sub_803AF38
-sub_803AF38:
- push {lr}
- movs r0, 0x1
- bl sub_8023A94
- cmp r0, 0x2
- beq _0803AF78
- cmp r0, 0x2
- bcc _0803AF82
- cmp r0, 0x3
- bne _0803AF82
- bl sub_8023B44
- ldr r1, _0803AF70
- ldr r1, [r1]
- strh r0, [r1, 0x4]
- ldr r3, _0803AF74
- movs r0, 0x4
- ldrsh r2, [r1, r0]
- movs r0, 0x58
- muls r2, r0
- ldr r0, [r3]
- adds r0, r2
- str r0, [r1, 0x8]
- movs r0, 0x3
- bl sub_803ACD0
- b _0803AF82
- .align 2, 0
-_0803AF70: .4byte gUnknown_203B3F8
-_0803AF74: .4byte gUnknown_203B45C
-_0803AF78:
- bl sub_8023C60
- movs r0, 0x7
- bl sub_803ACD0
-_0803AF82:
- pop {r0}
- bx r0
- thumb_func_end sub_803AF38
-
.align 2,0
diff --git a/asm/debug_menu_1.s b/asm/debug_menu_1.s
new file mode 100644
index 0000000..12b27d9
--- /dev/null
+++ b/asm/debug_menu_1.s
@@ -0,0 +1,686 @@
+ .include "constants/gba_constants.inc"
+ .include "asm/macros.inc"
+
+ .syntax unified
+
+ .text
+
+ thumb_func_start sub_803AA34
+sub_803AA34:
+ push {r4,r5,lr}
+ movs r4, 0
+ ldr r0, _0803AA64
+ ldr r1, [r0]
+ ldr r2, _0803AA68
+ ldr r3, [r2]
+ ldrb r0, [r3, 0x4]
+ adds r1, r0
+ ldrb r0, [r1]
+ adds r5, r2, 0
+ cmp r0, 0
+ beq _0803AA7A
+ ldr r0, _0803AA6C
+ str r0, [r3, 0xC]
+ bl sub_803ABC8
+ lsls r0, 24
+ cmp r0, 0
+ beq _0803AA70
+ ldr r1, [r5]
+ movs r0, 0x3
+ str r0, [r1, 0x10]
+ b _0803AA82
+ .align 2, 0
+_0803AA64: .4byte gFriendAreas
+_0803AA68: .4byte gUnknown_203B3F4
+_0803AA6C: .4byte gDebug_CloseText
+_0803AA70:
+ ldr r1, [r5]
+ movs r0, 0x1
+ negs r0, r0
+ str r0, [r1, 0x10]
+ b _0803AA82
+_0803AA7A:
+ ldr r0, _0803AABC
+ str r0, [r3, 0xC]
+ movs r0, 0x2
+ str r0, [r3, 0x10]
+_0803AA82:
+ adds r4, 0x1
+ ldr r5, [r5]
+ mov r12, r5
+ lsls r1, r4, 3
+ mov r3, r12
+ adds r3, 0xC
+ adds r2, r3, r1
+ ldr r0, _0803AAC0
+ ldr r0, [r0]
+ str r0, [r2]
+ mov r2, r12
+ adds r2, 0x10
+ adds r1, r2, r1
+ movs r0, 0x4
+ str r0, [r1]
+ adds r4, 0x1
+ lsls r1, r4, 3
+ adds r3, r1
+ movs r0, 0
+ str r0, [r3]
+ adds r2, r1
+ movs r0, 0x1
+ str r0, [r2]
+ mov r1, r12
+ ldr r0, [r1, 0x10]
+ str r0, [r1, 0x8]
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_0803AABC: .4byte gDebug_OpenText
+_0803AAC0: .4byte gUnknown_80D4970
+ thumb_func_end sub_803AA34
+
+ thumb_func_start sub_803AAC4
+sub_803AAC4:
+ push {lr}
+ movs r0, 0x1
+ bl sub_8021274
+ cmp r0, 0x4
+ bhi _0803AB2E
+ lsls r0, 2
+ ldr r1, _0803AADC
+ adds r0, r1
+ ldr r0, [r0]
+ mov pc, r0
+ .align 2, 0
+_0803AADC: .4byte _0803AAE0
+ .align 2, 0
+_0803AAE0:
+ .4byte _0803AB2E
+ .4byte _0803AB2E
+ .4byte _0803AB24
+ .4byte _0803AAF4
+ .4byte _0803AB0C
+_0803AAF4:
+ bl sub_802132C
+ ldr r1, _0803AB08
+ ldr r1, [r1]
+ strb r0, [r1, 0x4]
+ movs r0, 0x2
+ bl sub_803A924
+ b _0803AB2E
+ .align 2, 0
+_0803AB08: .4byte gUnknown_203B3F4
+_0803AB0C:
+ bl sub_802132C
+ ldr r1, _0803AB20
+ ldr r1, [r1]
+ strb r0, [r1, 0x4]
+ movs r0, 0x3
+ bl sub_803A924
+ b _0803AB2E
+ .align 2, 0
+_0803AB20: .4byte gUnknown_203B3F4
+_0803AB24:
+ bl sub_80213A0
+ movs r0, 0x4
+ bl sub_803A924
+_0803AB2E:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_803AAC4
+
+ thumb_func_start sub_803AB34
+sub_803AB34:
+ push {r4,lr}
+ sub sp, 0x4
+ movs r0, 0
+ str r0, [sp]
+ bl sub_8021274
+ ldr r4, _0803AB6C
+ ldr r0, [r4]
+ adds r0, 0x4C
+ bl sub_8012FD8
+ lsls r0, 24
+ cmp r0, 0
+ bne _0803AB5A
+ ldr r0, [r4]
+ adds r0, 0x4C
+ mov r1, sp
+ bl sub_8013114
+_0803AB5A:
+ ldr r0, [sp]
+ cmp r0, 0x2
+ beq _0803AB7A
+ cmp r0, 0x2
+ bgt _0803AB70
+ cmp r0, 0x1
+ beq _0803AB9E
+ b _0803ABA4
+ .align 2, 0
+_0803AB6C: .4byte gUnknown_203B3F4
+_0803AB70:
+ cmp r0, 0x3
+ beq _0803AB84
+ cmp r0, 0x4
+ beq _0803AB96
+ b _0803ABA4
+_0803AB7A:
+ ldr r0, [r4]
+ ldrb r0, [r0, 0x4]
+ bl UnlockFriendArea
+ b _0803AB8E
+_0803AB84:
+ ldr r0, [r4]
+ ldrb r0, [r0, 0x4]
+ movs r1, 0x1
+ bl sub_809249C
+_0803AB8E:
+ movs r0, 0x1
+ bl sub_803A924
+ b _0803ABA4
+_0803AB96:
+ movs r0, 0x3
+ bl sub_803A924
+ b _0803ABA4
+_0803AB9E:
+ movs r0, 0x1
+ bl sub_803A924
+_0803ABA4:
+ add sp, 0x4
+ pop {r4}
+ pop {r0}
+ bx r0
+ thumb_func_end sub_803AB34
+
+ thumb_func_start sub_803ABAC
+sub_803ABAC:
+ push {lr}
+ bl sub_80217EC
+ cmp r0, 0x1
+ bls _0803ABC4
+ cmp r0, 0x3
+ bhi _0803ABC4
+ bl sub_8021830
+ movs r0, 0x1
+ bl sub_803A924
+_0803ABC4:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_803ABAC
+
+ thumb_func_start sub_803ABC8
+sub_803ABC8:
+ push {r4-r6,lr}
+ movs r5, 0
+ movs r6, 0x1
+_0803ABCE:
+ ldr r2, _0803AC08
+ movs r0, 0x58
+ adds r1, r5, 0
+ muls r1, r0
+ ldr r0, [r2]
+ adds r2, r0, r1
+ ldrh r1, [r2]
+ adds r0, r6, 0
+ ands r0, r1
+ cmp r0, 0
+ beq _0803AC10
+ lsrs r0, r1, 1
+ ands r0, r6
+ cmp r0, 0
+ beq _0803AC10
+ ldr r0, _0803AC0C
+ ldr r4, [r0]
+ movs r1, 0x8
+ ldrsh r0, [r2, r1]
+ bl GetFriendArea
+ ldrb r1, [r4, 0x4]
+ lsls r0, 24
+ lsrs r0, 24
+ cmp r1, r0
+ bne _0803AC10
+ movs r0, 0
+ b _0803AC1C
+ .align 2, 0
+_0803AC08: .4byte gUnknown_203B45C
+_0803AC0C: .4byte gUnknown_203B3F4
+_0803AC10:
+ adds r5, 0x1
+ movs r0, 0xCE
+ lsls r0, 1
+ cmp r5, r0
+ ble _0803ABCE
+ movs r0, 0x1
+_0803AC1C:
+ pop {r4-r6}
+ pop {r1}
+ bx r1
+ thumb_func_end sub_803ABC8
+
+ thumb_func_start sub_803AC24
+sub_803AC24:
+ push {r4,lr}
+ ldr r4, _0803AC44
+ movs r0, 0xA0
+ lsls r0, 1
+ movs r1, 0x8
+ bl MemoryAlloc
+ str r0, [r4]
+ movs r0, 0
+ bl sub_803ACD0
+ movs r0, 0x1
+ pop {r4}
+ pop {r1}
+ bx r1
+ .align 2, 0
+_0803AC44: .4byte gUnknown_203B3F8
+ thumb_func_end sub_803AC24
+
+ thumb_func_start sub_803AC48
+sub_803AC48:
+ push {lr}
+ ldr r0, _0803AC60
+ ldr r0, [r0]
+ ldr r0, [r0]
+ cmp r0, 0x7
+ bhi _0803ACA8
+ lsls r0, 2
+ ldr r1, _0803AC64
+ adds r0, r1
+ ldr r0, [r0]
+ mov pc, r0
+ .align 2, 0
+_0803AC60: .4byte gUnknown_203B3F8
+_0803AC64: .4byte _0803AC68
+ .align 2, 0
+_0803AC68:
+ .4byte _0803AC88
+ .4byte _0803AC90
+ .4byte _0803AC90
+ .4byte _0803AC96
+ .4byte _0803ACA8
+ .4byte _0803AC9C
+ .4byte _0803ACA2
+ .4byte _0803ACA8
+_0803AC88:
+ movs r0, 0x1
+ bl sub_803ACD0
+ b _0803ACAC
+_0803AC90:
+ bl sub_803AF38
+ b _0803ACAC
+_0803AC96:
+ bl sub_803AF88
+ b _0803ACAC
+_0803AC9C:
+ bl sub_803AFE8
+ b _0803ACAC
+_0803ACA2:
+ bl sub_803B034
+ b _0803ACAC
+_0803ACA8:
+ movs r0, 0x3
+ b _0803ACAE
+_0803ACAC:
+ movs r0, 0
+_0803ACAE:
+ pop {r1}
+ bx r1
+ thumb_func_end sub_803AC48
+
+ thumb_func_start sub_803ACB4
+sub_803ACB4:
+ push {r4,lr}
+ ldr r4, _0803ACCC
+ ldr r0, [r4]
+ cmp r0, 0
+ beq _0803ACC6
+ bl MemoryFree
+ movs r0, 0
+ str r0, [r4]
+_0803ACC6:
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_0803ACCC: .4byte gUnknown_203B3F8
+ thumb_func_end sub_803ACB4
+
+ thumb_func_start sub_803ACD0
+sub_803ACD0:
+ push {lr}
+ ldr r1, _0803ACE4
+ ldr r1, [r1]
+ str r0, [r1]
+ bl sub_803ACE8
+ bl sub_803AD88
+ pop {r0}
+ bx r0
+ .align 2, 0
+_0803ACE4: .4byte gUnknown_203B3F8
+ thumb_func_end sub_803ACD0
+
+ thumb_func_start sub_803ACE8
+sub_803ACE8:
+ push {r4-r7,lr}
+ ldr r4, _0803AD08
+ ldr r0, [r4]
+ adds r0, 0xE0
+ bl sub_8006518
+ ldr r1, [r4]
+ ldr r0, [r1]
+ cmp r0, 0x3
+ beq _0803AD10
+ cmp r0, 0x5
+ beq _0803AD38
+ movs r2, 0
+ ldr r3, _0803AD0C
+ b _0803AD50
+ .align 2, 0
+_0803AD08: .4byte gUnknown_203B3F8
+_0803AD0C: .4byte gUnknown_80E7ED4
+_0803AD10:
+ bl sub_803AEB0
+ ldr r2, [r4]
+ movs r0, 0x88
+ lsls r0, 1
+ adds r2, r0
+ ldr r1, _0803AD34
+ ldm r1!, {r3,r5,r6}
+ stm r2!, {r3,r5,r6}
+ ldm r1!, {r3,r5,r7}
+ stm r2!, {r3,r5,r7}
+ ldr r1, [r4]
+ adds r0, r1, r0
+ adds r1, 0x90
+ bl sub_8012CAC
+ b _0803AD6C
+ .align 2, 0
+_0803AD34: .4byte gUnknown_80E7EEC
+_0803AD38:
+ movs r6, 0x94
+ lsls r6, 1
+ adds r1, r6
+ ldr r0, _0803AD4C
+ ldm r0!, {r2,r3,r7}
+ stm r1!, {r2,r3,r7}
+ ldm r0!, {r4-r6}
+ stm r1!, {r4-r6}
+ b _0803AD6C
+ .align 2, 0
+_0803AD4C: .4byte gUnknown_80E7F04
+_0803AD50:
+ ldr r0, [r4]
+ lsls r1, r2, 1
+ adds r1, r2
+ lsls r1, 3
+ adds r0, r1
+ adds r0, 0xE0
+ adds r1, r3, 0
+ ldm r1!, {r5-r7}
+ stm r0!, {r5-r7}
+ ldm r1!, {r5-r7}
+ stm r0!, {r5-r7}
+ adds r2, 0x1
+ cmp r2, 0x3
+ ble _0803AD50
+_0803AD6C:
+ bl ResetUnusedInputStruct
+ ldr r0, _0803AD84
+ ldr r0, [r0]
+ adds r0, 0xE0
+ movs r1, 0x1
+ movs r2, 0x1
+ bl sub_800641C
+ pop {r4-r7}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_0803AD84: .4byte gUnknown_203B3F8
+ thumb_func_end sub_803ACE8
+
+ thumb_func_start sub_803AD88
+sub_803AD88:
+ push {lr}
+ sub sp, 0x8
+ ldr r1, _0803ADA4
+ ldr r0, [r1]
+ ldr r0, [r0]
+ adds r2, r1, 0
+ cmp r0, 0x7
+ bhi _0803AE50
+ lsls r0, 2
+ ldr r1, _0803ADA8
+ adds r0, r1
+ ldr r0, [r0]
+ mov pc, r0
+ .align 2, 0
+_0803ADA4: .4byte gUnknown_203B3F8
+_0803ADA8: .4byte _0803ADAC
+ .align 2, 0
+_0803ADAC:
+ .4byte _0803AE50
+ .4byte _0803ADCC
+ .4byte _0803ADDA
+ .4byte _0803ADE2
+ .4byte _0803AE50
+ .4byte _0803AE0C
+ .4byte _0803AE44
+ .4byte _0803AE50
+_0803ADCC:
+ movs r0, 0x1
+ movs r1, 0
+ movs r2, 0
+ movs r3, 0xA
+ bl sub_8023868
+ b _0803AE50
+_0803ADDA:
+ movs r0, 0x1
+ bl sub_8023B7C
+ b _0803AE50
+_0803ADE2:
+ bl sub_8023DA4
+ ldr r0, _0803AE08
+ ldr r2, [r0]
+ adds r0, r2, 0
+ adds r0, 0x10
+ adds r1, r2, 0
+ adds r1, 0x90
+ adds r3, r2, 0
+ adds r3, 0xD0
+ ldr r2, [r2, 0xC]
+ str r2, [sp]
+ movs r2, 0x2
+ str r2, [sp, 0x4]
+ movs r2, 0
+ bl sub_8012D60
+ b _0803AE50
+ .align 2, 0
+_0803AE08: .4byte gUnknown_203B3F8
+_0803AE0C:
+ ldr r2, [r2]
+ movs r1, 0x3
+ str r1, [r2, 0x70]
+ movs r0, 0x1
+ str r0, [r2, 0x68]
+ movs r0, 0x64
+ str r0, [r2, 0x6C]
+ ldr r0, [r2, 0x8]
+ ldrb r0, [r0, 0x3]
+ str r0, [r2, 0x64]
+ str r1, [r2, 0x74]
+ movs r1, 0x94
+ lsls r1, 1
+ adds r0, r2, r1
+ str r0, [r2, 0x78]
+ movs r0, 0x2C
+ str r0, [r2, 0x7C]
+ adds r1, r2, 0
+ adds r1, 0x80
+ movs r0, 0x12
+ str r0, [r1]
+ adds r0, r2, 0
+ adds r0, 0x60
+ bl sub_8013AA0
+ bl sub_803AE58
+ b _0803AE50
+_0803AE44:
+ ldr r0, [r2]
+ ldr r1, [r0, 0x8]
+ adds r1, 0x4C
+ movs r0, 0x2
+ bl sub_801602C
+_0803AE50:
+ add sp, 0x8
+ pop {r0}
+ bx r0
+ thumb_func_end sub_803AD88
+
+ thumb_func_start sub_803AE58
+sub_803AE58:
+ push {r4,lr}
+ sub sp, 0x4
+ ldr r4, _0803AEA8
+ ldr r0, [r4]
+ ldr r0, [r0, 0x74]
+ bl sub_8008C54
+ ldr r0, [r4]
+ ldr r0, [r0, 0x74]
+ bl sub_80073B8
+ ldr r2, _0803AEAC
+ ldr r0, [r4]
+ ldr r3, [r0, 0x74]
+ movs r0, 0
+ str r0, [sp]
+ movs r0, 0x4
+ movs r1, 0
+ bl xxx_call_draw_string
+ ldr r0, [r4]
+ adds r0, 0x60
+ bl sub_8013C68
+ ldr r0, [r4]
+ ldr r0, [r0, 0x74]
+ bl sub_80073E0
+ bl sub_8023DA4
+ ldr r0, [r4]
+ adds r0, 0x10
+ movs r1, 0
+ bl sub_8012EA4
+ add sp, 0x4
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_0803AEA8: .4byte gUnknown_203B3F8
+_0803AEAC: .4byte gDebug_NumberText2
+ thumb_func_end sub_803AE58
+
+ thumb_func_start sub_803AEB0
+sub_803AEB0:
+ push {r4-r6,lr}
+ ldr r4, _0803AEFC
+ ldr r0, [r4]
+ adds r0, 0xD0
+ movs r1, 0
+ movs r2, 0x10
+ bl MemoryFill16
+ ldr r4, [r4]
+ movs r3, 0
+ adds r1, r4, 0
+ adds r1, 0x90
+ ldr r0, _0803AF00
+ str r0, [r1]
+ adds r5, r4, 0
+ adds r5, 0x94
+ movs r0, 0x4
+ str r0, [r5]
+ movs r2, 0x1
+ adds r1, 0x8
+ ldr r0, _0803AF04
+ str r0, [r1]
+ adds r1, 0x4
+ movs r0, 0x5
+ str r0, [r1]
+ movs r6, 0x2
+ adds r0, r4, 0
+ adds r0, 0xA0
+ str r3, [r0]
+ adds r0, 0x4
+ str r2, [r0]
+ adds r0, 0x2C
+ ldrh r0, [r0]
+ cmp r0, 0
+ bne _0803AF08
+ ldr r0, [r5]
+ str r0, [r4, 0xC]
+ b _0803AF2C
+ .align 2, 0
+_0803AEFC: .4byte gUnknown_203B3F8
+_0803AF00: .4byte gDebug_LevelText
+_0803AF04: .4byte gUnknown_80E7F2C
+_0803AF08:
+ adds r3, 0x1
+ cmp r3, r6
+ bge _0803AF2C
+ ldr r0, _0803AF34
+ ldr r2, [r0]
+ lsls r1, r3, 1
+ adds r0, r2, 0
+ adds r0, 0xD0
+ adds r0, r1
+ ldrh r0, [r0]
+ cmp r0, 0
+ bne _0803AF08
+ lsls r0, r3, 3
+ adds r1, r2, 0
+ adds r1, 0x94
+ adds r1, r0
+ ldr r0, [r1]
+ str r0, [r2, 0xC]
+_0803AF2C:
+ pop {r4-r6}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_0803AF34: .4byte gUnknown_203B3F8
+ thumb_func_end sub_803AEB0
+
+ thumb_func_start sub_803AF38
+sub_803AF38:
+ push {lr}
+ movs r0, 0x1
+ bl sub_8023A94
+ cmp r0, 0x2
+ beq _0803AF78
+ cmp r0, 0x2
+ bcc _0803AF82
+ cmp r0, 0x3
+ bne _0803AF82
+ bl sub_8023B44
+ ldr r1, _0803AF70
+ ldr r1, [r1]
+ strh r0, [r1, 0x4]
+ ldr r3, _0803AF74
+ movs r0, 0x4
+ ldrsh r2, [r1, r0]
+ movs r0, 0x58
+ muls r2, r0
+ ldr r0, [r3]
+ adds r0, r2
+ str r0, [r1, 0x8]
+ movs r0, 0x3
+ bl sub_803ACD0
+ b _0803AF82
+ .align 2, 0
+_0803AF70: .4byte gUnknown_203B3F8
+_0803AF74: .4byte gUnknown_203B45C
+_0803AF78:
+ bl sub_8023C60
+ movs r0, 0x7
+ bl sub_803ACD0
+_0803AF82:
+ pop {r0}
+ bx r0
+ thumb_func_end sub_803AF38
+
+ .align 2,0
diff --git a/asm/other_menus.s b/asm/other_menus.s
index 39b5771..7168a67 100644
--- a/asm/other_menus.s
+++ b/asm/other_menus.s
@@ -5,497 +5,6 @@
.text
- thumb_func_start sub_8036FDC
-sub_8036FDC:
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x10
- adds r6, r0, 0
- bl ResetUnusedInputStruct
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- movs r0, 0
- bl ResetSprites
- ldr r5, _080370C0
- ldr r0, [r5]
- cmp r0, 0
- bne _08037016
- ldr r4, _080370C4
- adds r0, r4, 0
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r5]
- movs r1, 0
- adds r2, r4, 0
- bl MemoryFill8
-_08037016:
- ldr r0, [r5]
- str r6, [r0]
- movs r1, 0
- str r1, [r0, 0x4]
- str r1, [r0, 0x8]
- movs r3, 0
- adds r7, r5, 0
- movs r6, 0xE0
- lsls r6, 1
- movs r4, 0
- movs r5, 0xDE
- lsls r5, 1
-_0803702E:
- ldr r0, [r7]
- lsls r2, r3, 3
- adds r1, r0, r6
- adds r1, r2
- str r4, [r1]
- adds r0, r2
- adds r0, r5
- strb r4, [r0]
- adds r3, 0x1
- cmp r3, 0x1
- ble _0803702E
- ldr r0, _080370C0
- mov r12, r0
- movs r5, 0xAE
- lsls r5, 1
- mov r8, r5
- ldr r4, _080370C8
- movs r3, 0
- movs r2, 0x3
-_08037054:
- mov r6, r12
- ldr r1, [r6]
- adds r1, r3
- add r1, r8
- adds r0, r4, 0
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- adds r3, 0x18
- subs r2, 0x1
- cmp r2, 0
- bge _08037054
- movs r6, 0
- bl ResetUnusedInputStruct
- ldr r5, _080370C0
- ldr r0, [r5]
- movs r4, 0xAE
- lsls r4, 1
- adds r0, r4
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r1, [r5]
- adds r0, r1, 0
- adds r0, 0x1C
- adds r1, r4
- ldr r3, _080370CC
- ldr r2, _080370D0
- str r2, [sp]
- str r6, [sp, 0x4]
- movs r2, 0x6
- str r2, [sp, 0x8]
- str r6, [sp, 0xC]
- movs r2, 0
- bl SetMenuItems
- ldr r0, [r5]
- adds r0, 0x1C
- movs r1, 0
- movs r2, 0x1
- bl sub_8035CF4
- bl sub_80376CC
- add sp, 0x10
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080370C0: .4byte gUnknown_203B35C
-_080370C4: .4byte 0x00000504
-_080370C8: .4byte gUnknown_80E653C
-_080370CC: .4byte gUnknown_80E6CD0
-_080370D0: .4byte gUnknown_80E6CE8
- thumb_func_end sub_8036FDC
-
- thumb_func_start sub_80370D4
-sub_80370D4:
- push {r4,lr}
- ldr r4, _080370EC
- ldr r0, [r4]
- cmp r0, 0
- beq _080370E6
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_080370E6:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080370EC: .4byte gUnknown_203B35C
- thumb_func_end sub_80370D4
-
- thumb_func_start sub_80370F0
-sub_80370F0:
- push {r4,r5,lr}
- sub sp, 0x4
- movs r0, 0x4
- str r0, [sp]
- ldr r5, _08037110
- ldr r4, _08037114
- ldr r1, [r4]
- ldr r0, [r1, 0x8]
- cmp r0, 0x1
- beq _08037148
- cmp r0, 0x1
- bcc _08037118
- cmp r0, 0x2
- beq _08037158
- b _080371A8
- .align 2, 0
-_08037110: .4byte 0x0000ffdc
-_08037114: .4byte gUnknown_203B35C
-_08037118:
- adds r0, r1, 0
- adds r0, 0x1C
- bl sub_80130A8
- lsls r0, 24
- cmp r0, 0
- bne _08037130
- ldr r0, [r4]
- adds r0, 0x1C
- mov r1, sp
- bl sub_8013114
-_08037130:
- ldr r0, [sp]
- cmp r0, 0x4
- bne _0803713C
- bl sub_8037748
- b _080371A8
-_0803713C:
- ldr r1, [r4]
- movs r0, 0x1
- str r0, [r1, 0x8]
- bl sub_8037900
- b _080371A8
-_08037148:
- bl sub_80376CC
- ldr r1, [r4]
- movs r0, 0x2
- str r0, [r1, 0x8]
- bl sub_80371B8
- b _080371A8
-_08037158:
- ldr r0, [r1]
- cmp r0, 0x1
- bhi _08037172
- ldr r0, [r1, 0x4]
- cmp r0, 0
- bne _08037172
- movs r0, 0
- bl sub_8037C10
- cmp r0, 0
- bne _08037172
- movs r0, 0x29
- b _080371AA
-_08037172:
- ldr r4, _080371B4
- ldr r0, [r4]
- adds r0, 0x1C
- bl sub_80130A8
- lsls r0, 24
- cmp r0, 0
- bne _0803718C
- ldr r0, [r4]
- adds r0, 0x1C
- mov r1, sp
- bl sub_8013114
-_0803718C:
- ldr r0, [sp]
- cmp r0, 0x4
- beq _080371A4
- movs r0, 0x3
- bl PlayMenuSoundEffect
- bl sub_8037798
- adds r5, r0, 0
- ldr r1, [r4]
- movs r0, 0x4
- str r0, [r1, 0x8]
-_080371A4:
- bl sub_8037748
-_080371A8:
- adds r0, r5, 0
-_080371AA:
- add sp, 0x4
- pop {r4,r5}
- pop {r1}
- bx r1
- .align 2, 0
-_080371B4: .4byte gUnknown_203B35C
- thumb_func_end sub_80370F0
-
- thumb_func_start sub_80371B8
-sub_80371B8:
- push {r4-r7,lr}
- sub sp, 0x10
- movs r6, 0
- movs r5, 0
- bl sub_8037400
- ldr r7, _0803721C
- ldr r1, [r7]
- ldr r0, [r1]
- cmp r0, 0x1
- bhi _08037228
- ldr r0, [r1, 0x4]
- cmp r0, 0
- bne _08037228
- movs r0, 0
- bl sub_8037C10
- cmp r0, 0
- bne _080371E0
- b _080373AC
-_080371E0:
- bl sub_80376CC
- ldr r0, [r7]
- movs r4, 0xAE
- lsls r4, 1
- adds r0, r4
- movs r1, 0
- bl sub_8035CC0
- ldr r1, [r7]
- adds r0, r1, 0
- adds r0, 0x1C
- adds r1, r4
- ldr r3, _08037220
- ldr r2, _08037224
- str r2, [sp]
- str r6, [sp, 0x4]
- movs r2, 0x6
- str r2, [sp, 0x8]
- str r6, [sp, 0xC]
- movs r2, 0
- bl SetMenuItems
- ldr r0, [r7]
- adds r0, 0x1C
- movs r1, 0
- movs r2, 0x1
- bl sub_8035CF4
- b _080373AC
- .align 2, 0
-_0803721C: .4byte gUnknown_203B35C
-_08037220: .4byte gUnknown_80E6C50
-_08037224: .4byte gUnknown_80E6C68
-_08037228:
- bl sub_80376CC
- ldr r4, _08037250
- ldr r0, [r4]
- movs r1, 0xAE
- lsls r1, 1
- adds r0, r1
- movs r1, 0
- bl sub_8035CC0
- ldr r0, [r4]
- ldr r0, [r0, 0x4]
- cmp r0, 0xF
- bls _08037246
- b _0803734C
-_08037246:
- lsls r0, 2
- ldr r1, _08037254
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08037250: .4byte gUnknown_203B35C
-_08037254: .4byte _08037258
- .align 2, 0
-_08037258:
- .4byte _08037298
- .4byte _080372D8
- .4byte _080372B8
- .4byte _080372A8
- .4byte _080372C8
- .4byte _080372D8
- .4byte _080372E8
- .4byte _080372F8
- .4byte _0803734C
- .4byte _08037308
- .4byte _0803734C
- .4byte _08037318
- .4byte _0803734C
- .4byte _08037328
- .4byte _08037338
- .4byte _08037348
-_08037298:
- ldr r6, _080372A0
- ldr r5, _080372A4
- b _0803734C
- .align 2, 0
-_080372A0: .4byte gUnknown_80E66BC
-_080372A4: .4byte gUnknown_80E66D4
-_080372A8:
- ldr r6, _080372B0
- ldr r5, _080372B4
- b _0803734C
- .align 2, 0
-_080372B0: .4byte gUnknown_80E6D54
-_080372B4: .4byte gUnknown_80E6D6C
-_080372B8:
- ldr r6, _080372C0
- ldr r5, _080372C4
- b _0803734C
- .align 2, 0
-_080372C0: .4byte gUnknown_80E6DDC
-_080372C4: .4byte gUnknown_80E6DF4
-_080372C8:
- ldr r6, _080372D0
- ldr r5, _080372D4
- b _0803734C
- .align 2, 0
-_080372D0: .4byte gUnknown_80E67D4
-_080372D4: .4byte gUnknown_80E67EC
-_080372D8:
- ldr r6, _080372E0
- ldr r5, _080372E4
- b _0803734C
- .align 2, 0
-_080372E0: .4byte gUnknown_80E6748
-_080372E4: .4byte gUnknown_80E6760
-_080372E8:
- ldr r6, _080372F0
- ldr r5, _080372F4
- b _0803734C
- .align 2, 0
-_080372F0: .4byte gUnknown_80E689C
-_080372F4: .4byte gUnknown_80E68B4
-_080372F8:
- ldr r6, _08037300
- ldr r5, _08037304
- b _0803734C
- .align 2, 0
-_08037300: .4byte gUnknown_80E6938
-_08037304: .4byte gUnknown_80E6950
-_08037308:
- ldr r6, _08037310
- ldr r5, _08037314
- b _0803734C
- .align 2, 0
-_08037310: .4byte gUnknown_80E69B0
-_08037314: .4byte gUnknown_80E69C8
-_08037318:
- ldr r6, _08037320
- ldr r5, _08037324
- b _0803734C
- .align 2, 0
-_08037320: .4byte gUnknown_80E6A10
-_08037324: .4byte gUnknown_80E6A28
-_08037328:
- ldr r6, _08037330
- ldr r5, _08037334
- b _0803734C
- .align 2, 0
-_08037330: .4byte gUnknown_80E6A74
-_08037334: .4byte gUnknown_80E6A8C
-_08037338:
- ldr r6, _08037340
- ldr r5, _08037344
- b _0803734C
- .align 2, 0
-_08037340: .4byte gUnknown_80E6B78
-_08037344: .4byte gUnknown_80E6B90
-_08037348:
- ldr r6, _080373B4
- ldr r5, _080373B8
-_0803734C:
- ldr r4, _080373BC
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0x1C
- movs r2, 0xAE
- lsls r2, 1
- adds r1, r2
- str r5, [sp]
- movs r3, 0
- str r3, [sp, 0x4]
- movs r2, 0x6
- str r2, [sp, 0x8]
- str r3, [sp, 0xC]
- movs r2, 0
- adds r3, r6, 0
- bl SetMenuItems
- ldr r0, [r4]
- adds r0, 0x1C
- movs r1, 0
- movs r2, 0x1
- bl sub_8035CF4
- ldr r4, [r4]
- ldr r0, [r4, 0x4]
- cmp r0, 0
- beq _080373AC
- ldr r0, [r4]
- cmp r0, 0
- bne _080373AC
- bl sub_8035D94
- adds r2, r0, 0
- ldrb r0, [r2]
- cmp r0, 0
- beq _080373AC
- ldr r3, [r2, 0x4]
- cmp r3, 0
- beq _080373AC
- ldr r0, _080373C0
- ldr r1, [r0]
- ldrb r0, [r2]
- lsls r0, 1
- adds r1, 0x50
- adds r1, r0
- ldrh r0, [r1]
- adds r0, r3
- strh r0, [r1]
-_080373AC:
- add sp, 0x10
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080373B4: .4byte gUnknown_80E6BF4
-_080373B8: .4byte gUnknown_80E6C0C
-_080373BC: .4byte gUnknown_203B35C
-_080373C0: .4byte gUnknown_203B460
- thumb_func_end sub_80371B8
-
- thumb_func_start sub_80373C4
-sub_80373C4:
- push {lr}
- movs r0, 0
- movs r1, 0
- bl sub_8005838
- bl sub_80060EC
- bl sub_800CB20
- bl LoadBufferedInputs
- bl TransferBGPaletteBuffer
- bl xxx_call_update_bg_vram
- bl sub_8009908
- bl xxx_call_update_bg_sound_input
- movs r0, 0
- bl ResetSprites
- pop {r0}
- bx r0
- thumb_func_end sub_80373C4
-
- thumb_func_start sub_80373F4
-sub_80373F4:
- ldr r0, _080373FC
- ldr r0, [r0]
- bx lr
- .align 2, 0
-_080373FC: .4byte gUnknown_203B35C
- thumb_func_end sub_80373F4
-
thumb_func_start sub_8037400
sub_8037400:
push {r4-r6,lr}
@@ -1938,7 +1447,7 @@ _08037F5E:
stm r2!, {r3-r5}
movs r1, 0x6
strb r1, [r0]
- bl sub_8035D4C
+ bl GetMainMenu
cmp r0, 0
beq _08037F96
adds r1, r0, 0
@@ -2349,820 +1858,4 @@ _08038298:
bx r1
thumb_func_end sub_80381F4
- thumb_func_start CreateAdventureLogMenu
-CreateAdventureLogMenu:
- push {lr}
- movs r0, 0
- bl CreateAdventureLogScreen
- pop {r0}
- bx r0
- thumb_func_end CreateAdventureLogMenu
-
- thumb_func_start CleanAdventureLogMenu
-CleanAdventureLogMenu:
- push {lr}
- bl ResetUnusedInputStruct
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r0}
- bx r0
- thumb_func_end CleanAdventureLogMenu
-
- thumb_func_start UpdateAdventureLogMenu
-UpdateAdventureLogMenu:
- push {r4,lr}
- ldr r4, _080382E0
- movs r0, 0x1
- bl HandleAdventureLogInput
- cmp r0, 0x1
- bls _080382D8
- cmp r0, 0x3
- bhi _080382D8
- bl sub_803203C
- movs r4, 0x1
-_080382D8:
- adds r0, r4, 0
- pop {r4}
- pop {r1}
- bx r1
- .align 2, 0
-_080382E0: .4byte 0x0000ffdc
- thumb_func_end UpdateAdventureLogMenu
-
- thumb_func_start sub_80382E4
-sub_80382E4:
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x10
- mov r8, r0
- ldr r5, _08038398
- ldr r0, [r5]
- cmp r0, 0
- bne _0803830E
- movs r4, 0xDA
- lsls r4, 1
- adds r0, r4, 0
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r5]
- movs r1, 0
- adds r2, r4, 0
- bl MemoryFill8
-_0803830E:
- mov r12, r5
- movs r0, 0xA4
- lsls r0, 1
- mov r9, r0
- ldr r4, _0803839C
- movs r3, 0
- movs r2, 0x3
-_0803831C:
- mov r5, r12
- ldr r1, [r5]
- adds r1, r3
- add r1, r9
- adds r0, r4, 0
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- adds r3, 0x18
- subs r2, 0x1
- cmp r2, 0
- bge _0803831C
- bl ResetUnusedInputStruct
- ldr r5, _08038398
- ldr r0, [r5]
- movs r6, 0xA4
- lsls r6, 1
- adds r0, r6
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- mov r7, r8
- cmp r7, 0x25
- bne _08038370
- ldr r1, [r5]
- adds r0, r1, 0
- adds r0, 0x8
- adds r1, r6
- ldr r3, _080383A0
- ldr r2, _080383A4
- str r2, [sp]
- movs r4, 0
- str r4, [sp, 0x4]
- movs r2, 0x4
- str r2, [sp, 0x8]
- str r4, [sp, 0xC]
- movs r2, 0
- bl SetMenuItems
-_08038370:
- ldr r0, [r5]
- adds r0, 0x8
- movs r1, 0
- movs r2, 0x1
- bl sub_8035CF4
- ldr r1, [r5]
- mov r0, r8
- str r0, [r1]
- movs r0, 0
- str r0, [r1, 0x4]
- bl sub_8038440
- add sp, 0x10
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08038398: .4byte gUnknown_203B360
-_0803839C: .4byte gUnknown_80E6E7C
-_080383A0: .4byte gUnknown_80E6E94
-_080383A4: .4byte gUnknown_80E6EAC
- thumb_func_end sub_80382E4
-
- thumb_func_start sub_80383A8
-sub_80383A8:
- push {r4,lr}
- bl ResetUnusedInputStruct
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r4, _080383D0
- ldr r0, [r4]
- cmp r0, 0
- beq _080383C8
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_080383C8:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080383D0: .4byte gUnknown_203B360
- thumb_func_end sub_80383A8
-
- thumb_func_start sub_80383D4
-sub_80383D4:
- push {r4-r6,lr}
- sub sp, 0x4
- movs r0, 0x2
- str r0, [sp]
- ldr r6, _08038410
- ldr r4, _08038414
- ldr r0, [r4]
- ldr r5, [r0, 0x4]
- cmp r5, 0
- bne _08038434
- adds r0, 0x8
- bl sub_80130A8
- lsls r0, 24
- cmp r0, 0
- bne _080383FE
- ldr r0, [r4]
- adds r0, 0x8
- mov r1, sp
- bl sub_8013114
-_080383FE:
- ldr r0, [sp]
- cmp r0, 0x2
- beq _0803842C
- cmp r0, 0x2
- bhi _08038418
- cmp r0, 0x1
- beq _0803841C
- b _08038430
- .align 2, 0
-_08038410: .4byte 0x0000ffdc
-_08038414: .4byte gUnknown_203B360
-_08038418:
- cmp r0, 0x3
- bne _08038430
-_0803841C:
- ldr r0, _08038428
- ldr r1, [r0]
- movs r0, 0
- str r0, [r1, 0x4]
- movs r6, 0x1
- b _08038430
- .align 2, 0
-_08038428: .4byte gUnknown_203B360
-_0803842C:
- ldr r0, [r4]
- str r5, [r0, 0x4]
-_08038430:
- bl sub_80384D0
-_08038434:
- adds r0, r6, 0
- add sp, 0x4
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_80383D4
-
- thumb_func_start sub_8038440
-sub_8038440:
- push {r4,r5,lr}
- movs r5, 0
- ldr r0, _080384B0
- ldr r0, [r0]
- mov r12, r0
- movs r3, 0xD4
- lsls r3, 1
- add r3, r12
- ldrh r1, [r3]
- ldr r0, _080384B4
- ands r0, r1
- ldr r1, _080384B8
- ands r0, r1
- ldr r4, _080384BC
- ands r0, r4
- ldr r1, _080384C0
- ands r0, r1
- ldr r1, _080384C4
- ands r0, r1
- movs r2, 0x80
- lsls r2, 7
- ldr r1, _080384C8
- ands r0, r1
- orrs r0, r2
- strh r0, [r3]
- movs r2, 0xFC
- lsls r2, 2
- ldrh r1, [r3, 0x4]
- movs r0, 0xFC
- lsls r0, 8
- ands r0, r1
- orrs r0, r2
- ands r0, r4
- movs r2, 0xF
- movs r4, 0xF0
- lsls r4, 8
- ldr r1, _080384CC
- ands r0, r1
- orrs r0, r4
- strh r0, [r3, 0x4]
- movs r0, 0x70
- strh r0, [r3, 0x2]
- movs r1, 0xE0
- lsls r1, 3
- ldrh r0, [r3, 0x6]
- ands r2, r0
- orrs r2, r1
- strh r2, [r3, 0x6]
- movs r0, 0xD8
- lsls r0, 1
- add r0, r12
- str r5, [r0]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080384B0: .4byte gUnknown_203B360
-_080384B4: .4byte 0x0000feff
-_080384B8: .4byte 0x0000fdff
-_080384BC: .4byte 0x0000f3ff
-_080384C0: .4byte 0x0000efff
-_080384C4: .4byte 0x0000dfff
-_080384C8: .4byte 0x00003fff
-_080384CC: .4byte 0x00000fff
- thumb_func_end sub_8038440
-
- thumb_func_start sub_80384D0
-sub_80384D0:
- push {r4,r5,lr}
- ldr r5, _08038508
- ldr r2, [r5]
- movs r4, 0xD8
- lsls r4, 1
- adds r0, r2, r4
- ldr r0, [r0]
- movs r1, 0x8
- ands r0, r1
- cmp r0, 0
- beq _080384F6
- movs r1, 0xD4
- lsls r1, 1
- adds r0, r2, r1
- subs r1, 0xA8
- movs r2, 0
- movs r3, 0
- bl AddSprite
-_080384F6:
- ldr r1, [r5]
- adds r1, r4
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_08038508: .4byte gUnknown_203B360
- thumb_func_end sub_80384D0
-
- thumb_func_start sub_803850C
-sub_803850C:
- push {r4-r7,lr}
- mov r7, r9
- mov r6, r8
- push {r6,r7}
- sub sp, 0x10
- mov r8, r0
- ldr r5, _0803859C
- ldr r0, [r5]
- cmp r0, 0
- bne _08038536
- movs r4, 0xDA
- lsls r4, 1
- adds r0, r4, 0
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r5]
- movs r1, 0
- adds r2, r4, 0
- bl MemoryFill8
-_08038536:
- mov r12, r5
- movs r0, 0xA4
- lsls r0, 1
- mov r9, r0
- ldr r4, _080385A0
- movs r3, 0
- movs r2, 0x3
-_08038544:
- mov r5, r12
- ldr r1, [r5]
- adds r1, r3
- add r1, r9
- adds r0, r4, 0
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- ldm r0!, {r5-r7}
- stm r1!, {r5-r7}
- adds r3, 0x18
- subs r2, 0x1
- cmp r2, 0
- bge _08038544
- bl ResetUnusedInputStruct
- ldr r4, _0803859C
- ldr r0, [r4]
- movs r6, 0xA4
- lsls r6, 1
- adds r0, r6
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- mov r7, r8
- cmp r7, 0x2E
- bne _080385AC
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0x8
- adds r1, r6
- ldr r3, _080385A4
- ldr r2, _080385A8
- str r2, [sp]
- movs r4, 0
- str r4, [sp, 0x4]
- movs r2, 0x6
- str r2, [sp, 0x8]
- str r4, [sp, 0xC]
- movs r2, 0
- bl SetMenuItems
- b _080385CE
- .align 2, 0
-_0803859C: .4byte gUnknown_203B364
-_080385A0: .4byte gUnknown_80E6F20
-_080385A4: .4byte gUnknown_80E6F38
-_080385A8: .4byte gUnknown_80E7090
-_080385AC:
- ldr r1, [r4]
- adds r0, r1, 0
- adds r0, 0x8
- movs r2, 0xA4
- lsls r2, 1
- adds r1, r2
- ldr r3, _080385F8
- ldr r2, _080385FC
- str r2, [sp]
- movs r4, 0
- str r4, [sp, 0x4]
- movs r2, 0x6
- str r2, [sp, 0x8]
- str r4, [sp, 0xC]
- movs r2, 0
- bl SetMenuItems
-_080385CE:
- ldr r4, _08038600
- ldr r0, [r4]
- adds r0, 0x8
- movs r1, 0
- movs r2, 0x1
- bl sub_8035CF4
- ldr r1, [r4]
- movs r0, 0
- str r0, [r1, 0x4]
- mov r5, r8
- str r5, [r1]
- bl sub_8038830
- add sp, 0x10
- pop {r3,r4}
- mov r8, r3
- mov r9, r4
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_080385F8: .4byte gUnknown_80E6F38
-_080385FC: .4byte gUnknown_80E6F50
-_08038600: .4byte gUnknown_203B364
- thumb_func_end sub_803850C
-
- thumb_func_start sub_8038604
-sub_8038604:
- push {r4,lr}
- bl ResetUnusedInputStruct
- movs r0, 0
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r4, _0803862C
- ldr r0, [r4]
- cmp r0, 0
- beq _08038624
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_08038624:
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0803862C: .4byte gUnknown_203B364
- thumb_func_end sub_8038604
-
- thumb_func_start sub_8038630
-sub_8038630:
- push {r4-r6,lr}
- sub sp, 0x18
- ldr r5, _080386A8
- movs r0, 0x3
- str r0, [sp, 0x14]
- ldr r6, _080386AC
- ldr r0, [r6]
- ldr r4, [r0, 0x4]
- cmp r4, 0x1
- bne _08038646
- b _08038798
-_08038646:
- cmp r4, 0x1
- bcc _0803864C
- b _08038824
-_0803864C:
- adds r0, 0x8
- bl sub_8012FD8
- movs r5, 0
- str r5, [sp, 0x10]
- bl sub_80140F8
- bl sub_8011C1C
- adds r1, r0, 0
- add r0, sp, 0x10
- bl sub_801203C
- adds r4, r0, 0
- bl sub_8014114
- cmp r4, 0
- beq _080386B8
- cmp r4, 0x1
- beq _08038738
- ldr r0, [r6]
- movs r4, 0xA4
- lsls r4, 1
- adds r0, r4
- movs r1, 0
- bl sub_8035CC0
- ldr r1, [r6]
- ldr r0, [r1]
- cmp r0, 0x2E
- bne _08038750
- adds r0, r1, 0
- adds r0, 0x8
- adds r1, r4
- ldr r3, _080386B0
- ldr r2, _080386B4
- str r2, [sp]
- str r5, [sp, 0x4]
- movs r2, 0x6
- str r2, [sp, 0x8]
- str r5, [sp, 0xC]
- movs r2, 0
- bl SetMenuItems
- b _0803876E
- .align 2, 0
-_080386A8: .4byte 0x0000ffdc
-_080386AC: .4byte gUnknown_203B364
-_080386B0: .4byte gUnknown_80E6F38
-_080386B4: .4byte gUnknown_80E7114
-_080386B8:
- ldr r0, [r6]
- movs r1, 0xA4
- lsls r1, 1
- adds r0, r1
- movs r1, 0
- bl sub_8035CC0
- ldr r1, [r6]
- ldr r0, [r1]
- cmp r0, 0x2E
- bne _080386F8
- adds r0, r1, 0
- adds r0, 0x8
- movs r2, 0xA4
- lsls r2, 1
- adds r1, r2
- ldr r3, _080386F0
- ldr r2, _080386F4
- str r2, [sp]
- str r5, [sp, 0x4]
- movs r2, 0x6
- str r2, [sp, 0x8]
- str r5, [sp, 0xC]
- movs r2, 0
- bl SetMenuItems
- b _08038716
- .align 2, 0
-_080386F0: .4byte gUnknown_80E6F38
-_080386F4: .4byte gUnknown_80E70CC
-_080386F8:
- adds r0, r1, 0
- adds r0, 0x8
- movs r2, 0xA4
- lsls r2, 1
- adds r1, r2
- ldr r3, _08038728
- ldr r2, _0803872C
- str r2, [sp]
- str r5, [sp, 0x4]
- movs r2, 0x6
- str r2, [sp, 0x8]
- str r5, [sp, 0xC]
- movs r2, 0
- bl SetMenuItems
-_08038716:
- ldr r4, _08038730
- ldr r1, [r4]
- ldr r0, [r1]
- cmp r0, 0x2D
- bne _08038734
- movs r0, 0x1
- str r0, [r1, 0x4]
- movs r0, 0x13
- b _08038826
- .align 2, 0
-_08038728: .4byte gUnknown_80E6F38
-_0803872C: .4byte gUnknown_80E6FBC
-_08038730: .4byte gUnknown_203B364
-_08038734:
- adds r0, r1, 0
- b _08038772
-_08038738:
- ldr r0, _0803874C
- movs r1, 0
- movs r2, 0
- movs r3, 0
- bl sub_80141B4
- ldr r1, [r6]
- movs r0, 0x5
- b _08038780
- .align 2, 0
-_0803874C: .4byte gUnknown_80E7178
-_08038750:
- adds r0, r1, 0
- adds r0, 0x8
- movs r2, 0xA4
- lsls r2, 1
- adds r1, r2
- ldr r3, _08038788
- ldr r2, _0803878C
- str r2, [sp]
- str r5, [sp, 0x4]
- movs r2, 0x6
- str r2, [sp, 0x8]
- str r5, [sp, 0xC]
- movs r2, 0
- bl SetMenuItems
-_0803876E:
- ldr r4, _08038790
- ldr r0, [r4]
-_08038772:
- adds r0, 0x8
- movs r1, 0
- movs r2, 0x1
- bl sub_8035CF4
- ldr r1, [r4]
- movs r0, 0x1
-_08038780:
- str r0, [r1, 0x4]
- ldr r5, _08038794
- b _08038824
- .align 2, 0
-_08038788: .4byte gUnknown_80E6F38
-_0803878C: .4byte gUnknown_80E701C
-_08038790: .4byte gUnknown_203B364
-_08038794: .4byte 0x0000ffdc
-_08038798:
- adds r0, 0x8
- bl sub_80130A8
- lsls r0, 24
- cmp r0, 0
- bne _080387AE
- ldr r0, [r6]
- adds r0, 0x8
- add r1, sp, 0x14
- bl sub_8013114
-_080387AE:
- ldr r0, [sp, 0x14]
- cmp r0, 0x3
- beq _0803881C
- cmp r0, 0x3
- bhi _080387BE
- cmp r0, 0x2
- beq _080387C2
- b _08038820
-_080387BE:
- cmp r0, 0x4
- bne _08038820
-_080387C2:
- ldr r4, _080387D8
- ldr r1, [r4]
- ldr r0, [r1]
- cmp r0, 0x29
- beq _080387D0
- cmp r0, 0x2E
- bne _080387DC
-_080387D0:
- movs r0, 0x1
- str r0, [r1, 0x4]
- movs r5, 0x1
- b _08038820
- .align 2, 0
-_080387D8: .4byte gUnknown_203B364
-_080387DC:
- cmp r0, 0x2D
- bne _080387E8
- movs r0, 0x1
- str r0, [r1, 0x4]
- movs r5, 0x13
- b _08038820
-_080387E8:
- cmp r0, 0x2C
- bne _080387F4
- movs r0, 0x1
- str r0, [r1, 0x4]
- movs r5, 0x1F
- b _08038820
-_080387F4:
- bl sub_8035D4C
- adds r0, 0x3A
- ldrb r0, [r0]
- cmp r0, 0
- beq _0803880A
- ldr r1, [r4]
- movs r0, 0x1
- str r0, [r1, 0x4]
- movs r5, 0x35
- b _08038820
-_0803880A:
- ldr r0, [r4]
- movs r1, 0x1
- str r1, [r0, 0x4]
- ldr r0, [r0]
- movs r5, 0xB
- cmp r0, 0x2B
- bne _08038820
- movs r5, 0xD
- b _08038820
-_0803881C:
- ldr r0, [r6]
- str r4, [r0, 0x4]
-_08038820:
- bl sub_80388C4
-_08038824:
- adds r0, r5, 0
-_08038826:
- add sp, 0x18
- pop {r4-r6}
- pop {r1}
- bx r1
- thumb_func_end sub_8038630
-
- thumb_func_start sub_8038830
-sub_8038830:
- push {r4,r5,lr}
- movs r5, 0
- ldr r0, _080388A4
- ldr r0, [r0]
- mov r12, r0
- movs r3, 0xD4
- lsls r3, 1
- add r3, r12
- ldrh r1, [r3]
- ldr r0, _080388A8
- ands r0, r1
- ldr r1, _080388AC
- ands r0, r1
- ldr r4, _080388B0
- ands r0, r4
- ldr r1, _080388B4
- ands r0, r1
- ldr r1, _080388B8
- ands r0, r1
- movs r2, 0x80
- lsls r2, 7
- ldr r1, _080388BC
- ands r0, r1
- orrs r0, r2
- strh r0, [r3]
- movs r2, 0xFC
- lsls r2, 2
- ldrh r1, [r3, 0x4]
- movs r0, 0xFC
- lsls r0, 8
- ands r0, r1
- orrs r0, r2
- ands r0, r4
- movs r2, 0xF
- movs r4, 0xF0
- lsls r4, 8
- ldr r1, _080388C0
- ands r0, r1
- orrs r0, r4
- strh r0, [r3, 0x4]
- movs r0, 0x70
- strh r0, [r3, 0x2]
- movs r1, 0xD0
- lsls r1, 3
- ldrh r0, [r3, 0x6]
- ands r2, r0
- orrs r2, r1
- strh r2, [r3, 0x6]
- movs r0, 0xD8
- lsls r0, 1
- add r0, r12
- str r5, [r0]
- movs r0, 0
- bl ResetSprites
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080388A4: .4byte gUnknown_203B364
-_080388A8: .4byte 0x0000feff
-_080388AC: .4byte 0x0000fdff
-_080388B0: .4byte 0x0000f3ff
-_080388B4: .4byte 0x0000efff
-_080388B8: .4byte 0x0000dfff
-_080388BC: .4byte 0x00003fff
-_080388C0: .4byte 0x00000fff
- thumb_func_end sub_8038830
-
- thumb_func_start sub_80388C4
-sub_80388C4:
- push {r4,r5,lr}
- ldr r5, _080388FC
- ldr r2, [r5]
- movs r4, 0xD8
- lsls r4, 1
- adds r0, r2, r4
- ldr r0, [r0]
- movs r1, 0x8
- ands r0, r1
- cmp r0, 0
- beq _080388EA
- movs r1, 0xD4
- lsls r1, 1
- adds r0, r2, r1
- subs r1, 0xA8
- movs r2, 0
- movs r3, 0
- bl AddSprite
-_080388EA:
- ldr r1, [r5]
- adds r1, r4
- ldr r0, [r1]
- adds r0, 0x1
- str r0, [r1]
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_080388FC: .4byte gUnknown_203B364
- thumb_func_end sub_80388C4
-
.align 2,0
diff --git a/asm/rescue_password_menu.s b/asm/rescue_password_menu.s
index b11a26b..4f85be7 100644
--- a/asm/rescue_password_menu.s
+++ b/asm/rescue_password_menu.s
@@ -100,7 +100,7 @@ _080389A0:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_080389B8: .4byte gUnknown_203B370
+_080389B8: .4byte gRescuePasswordMenu
_080389BC: .4byte gUnknown_80E71E4
_080389C0: .4byte gUnknown_203B368
_080389C4: .4byte gUnknown_203B36C
@@ -163,7 +163,7 @@ _08038A36:
bx r0
.align 2, 0
_08038A54: .4byte gUnknown_202EC50
-_08038A58: .4byte gUnknown_203B370
+_08038A58: .4byte gRescuePasswordMenu
thumb_func_end CreateRescuePasswordMenu
thumb_func_start CleanRescuePasswordMenu
@@ -189,7 +189,7 @@ _08038A86:
pop {r0}
bx r0
.align 2, 0
-_08038A8C: .4byte gUnknown_203B370
+_08038A8C: .4byte gRescuePasswordMenu
thumb_func_end CleanRescuePasswordMenu
thumb_func_start UpdateRescuePasswordMenu
@@ -214,7 +214,7 @@ _08038AA8:
mov pc, r0
.align 2, 0
_08038AB4: .4byte 0x0000ffdc
-_08038AB8: .4byte gUnknown_203B370
+_08038AB8: .4byte gRescuePasswordMenu
_08038ABC: .4byte _08038AC0
.align 2, 0
_08038AC0:
@@ -277,7 +277,7 @@ _08038B38:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_08038B44: .4byte gUnknown_203B370
+_08038B44: .4byte gRescuePasswordMenu
_08038B48: .4byte gUnknown_202EC50
_08038B4C: .4byte _08038B50
.align 2, 0
@@ -328,7 +328,7 @@ _08038BA8:
bl sub_80951BC
b _08038DB0
.align 2, 0
-_08038BCC: .4byte gUnknown_203B370
+_08038BCC: .4byte gRescuePasswordMenu
_08038BD0: .4byte 0x0000ffdc
_08038BD4:
movs r0, 0x13
@@ -362,7 +362,7 @@ _08038BDC:
bl MemoryFill8
b _08038DB0
.align 2, 0
-_08038C18: .4byte gUnknown_203B370
+_08038C18: .4byte gRescuePasswordMenu
_08038C1C: .4byte 0x0000ffdc
_08038C20: .4byte gUnknown_203B484
_08038C24:
@@ -396,13 +396,13 @@ _08038C2C:
stm r2!, {r3,r4,r6}
movs r1, 0x6
strb r1, [r0]
- bl sub_8035D4C
+ bl GetMainMenu
adds r0, 0x3A
movs r1, 0x1
strb r1, [r0]
b _08038DB0
.align 2, 0
-_08038C70: .4byte gUnknown_203B370
+_08038C70: .4byte gRescuePasswordMenu
_08038C74: .4byte 0x0000ffdc
_08038C78:
bl sub_8031DCC
@@ -438,7 +438,7 @@ _08038CB0:
ldr r5, _08038CB8
b _08038DB0
.align 2, 0
-_08038CB4: .4byte gUnknown_203B370
+_08038CB4: .4byte gRescuePasswordMenu
_08038CB8: .4byte 0x0000ffdc
_08038CBC:
bl sub_8031E00
@@ -488,7 +488,7 @@ _08038CEE:
b _08038C84
.align 2, 0
_08038D1C: .4byte gUnknown_202EC50
-_08038D20: .4byte gUnknown_203B370
+_08038D20: .4byte gRescuePasswordMenu
_08038D24:
ldr r1, [r6]
movs r0, 0x8
@@ -547,7 +547,7 @@ _08038D66:
b _08038DB0
.align 2, 0
_08038D9C: .4byte gUnknown_202EC50
-_08038DA0: .4byte gUnknown_203B370
+_08038DA0: .4byte gRescuePasswordMenu
_08038DA4:
ldr r1, [r6]
movs r0, 0x9
@@ -592,7 +592,7 @@ _08038DEE:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_08038DF8: .4byte gUnknown_203B370
+_08038DF8: .4byte gRescuePasswordMenu
_08038DFC: .4byte _08038E00
.align 2, 0
_08038E00:
@@ -623,7 +623,7 @@ _08038E3C:
ldr r2, _08038E58
b _08038F2E
.align 2, 0
-_08038E50: .4byte gUnknown_203B370
+_08038E50: .4byte gRescuePasswordMenu
_08038E54: .4byte gUnknown_80E71FC
_08038E58: .4byte gUnknown_80E7214
_08038E5C:
@@ -638,7 +638,7 @@ _08038E5C:
ldr r2, _08038E78
b _08038F2E
.align 2, 0
-_08038E70: .4byte gUnknown_203B370
+_08038E70: .4byte gRescuePasswordMenu
_08038E74: .4byte gUnknown_80E72EC
_08038E78: .4byte gUnknown_80E7304
_08038E7C:
@@ -653,7 +653,7 @@ _08038E7C:
ldr r2, _08038E98
b _08038F2E
.align 2, 0
-_08038E90: .4byte gUnknown_203B370
+_08038E90: .4byte gRescuePasswordMenu
_08038E94: .4byte gUnknown_80E7344
_08038E98: .4byte gUnknown_80E735C
_08038E9C:
@@ -668,7 +668,7 @@ _08038E9C:
ldr r2, _08038EB8
b _08038F2E
.align 2, 0
-_08038EB0: .4byte gUnknown_203B370
+_08038EB0: .4byte gRescuePasswordMenu
_08038EB4: .4byte gUnknown_80E7588
_08038EB8: .4byte gUnknown_80E75A0
_08038EBC:
@@ -683,7 +683,7 @@ _08038EBC:
ldr r2, _08038ED8
b _08038F2E
.align 2, 0
-_08038ED0: .4byte gUnknown_203B370
+_08038ED0: .4byte gRescuePasswordMenu
_08038ED4: .4byte gUnknown_80E73AC
_08038ED8: .4byte gUnknown_80E73C4
_08038EDC:
@@ -698,7 +698,7 @@ _08038EDC:
ldr r2, _08038EF8
b _08038F2E
.align 2, 0
-_08038EF0: .4byte gUnknown_203B370
+_08038EF0: .4byte gRescuePasswordMenu
_08038EF4: .4byte gUnknown_80E7408
_08038EF8: .4byte gUnknown_80E7420
_08038EFC:
@@ -713,7 +713,7 @@ _08038EFC:
ldr r2, _08038F18
b _08038F2E
.align 2, 0
-_08038F10: .4byte gUnknown_203B370
+_08038F10: .4byte gRescuePasswordMenu
_08038F14: .4byte gUnknown_80E7468
_08038F18: .4byte gUnknown_80E7480
_08038F1C:
@@ -737,7 +737,7 @@ _08038F2E:
bl SetMenuItems
b _08038F74
.align 2, 0
-_08038F44: .4byte gUnknown_203B370
+_08038F44: .4byte gRescuePasswordMenu
_08038F48: .4byte gUnknown_80E74C8
_08038F4C: .4byte gUnknown_80E74E0
_08038F50:
@@ -770,7 +770,7 @@ _08038F74:
pop {r0}
bx r0
.align 2, 0
-_08038F8C: .4byte gUnknown_203B370
+_08038F8C: .4byte gRescuePasswordMenu
_08038F90: .4byte gUnknown_80E752C
_08038F94: .4byte gUnknown_80E7544
thumb_func_end sub_8038DC0
@@ -817,7 +817,7 @@ sub_8038F98:
pop {r0}
bx r0
.align 2, 0
-_08038FF4: .4byte gUnknown_203B370
+_08038FF4: .4byte gRescuePasswordMenu
_08038FF8: .4byte gUnknown_80E7278
_08038FFC: .4byte gUnknown_80E7290
thumb_func_end sub_8038F98
@@ -838,7 +838,7 @@ sub_8039000:
ldr r0, [r0]
mov pc, r0
.align 2, 0
-_0803901C: .4byte gUnknown_203B370
+_0803901C: .4byte gRescuePasswordMenu
_08039020: .4byte _08039024
.align 2, 0
_08039024:
@@ -1075,7 +1075,7 @@ sub_8039174:
pop {r0}
bx r0
.align 2, 0
-_080391D8: .4byte gUnknown_203B370
+_080391D8: .4byte gRescuePasswordMenu
_080391DC: .4byte 0x0000feff
_080391E0: .4byte 0x0000fdff
_080391E4: .4byte 0x0000f3ff
@@ -1131,7 +1131,7 @@ _0803923C:
pop {r0}
bx r0
.align 2, 0
-_08039250: .4byte gUnknown_203B370
+_08039250: .4byte gRescuePasswordMenu
thumb_func_end sub_80391F8
.align 2,0
diff --git a/asm/unk_menu_203B360.s b/asm/unk_menu_203B360.s
new file mode 100644
index 0000000..5ac6b47
--- /dev/null
+++ b/asm/unk_menu_203B360.s
@@ -0,0 +1,76 @@
+ .include "constants/gba_constants.inc"
+ .include "asm/macros.inc"
+
+ .syntax unified
+
+ .text
+
+ thumb_func_start sub_8038440
+sub_8038440:
+ push {r4,r5,lr}
+ movs r5, 0
+ ldr r0, _080384B0
+ ldr r0, [r0]
+ mov r12, r0
+ movs r3, 0xD4
+ lsls r3, 1
+ add r3, r12
+ ldrh r1, [r3]
+ ldr r0, _080384B4
+ ands r0, r1
+ ldr r1, _080384B8
+ ands r0, r1
+ ldr r4, _080384BC
+ ands r0, r4
+ ldr r1, _080384C0
+ ands r0, r1
+ ldr r1, _080384C4
+ ands r0, r1
+ movs r2, 0x80
+ lsls r2, 7
+ ldr r1, _080384C8
+ ands r0, r1
+ orrs r0, r2
+ strh r0, [r3]
+ movs r2, 0xFC
+ lsls r2, 2
+ ldrh r1, [r3, 0x4]
+ movs r0, 0xFC
+ lsls r0, 8
+ ands r0, r1
+ orrs r0, r2
+ ands r0, r4
+ movs r2, 0xF
+ movs r4, 0xF0
+ lsls r4, 8
+ ldr r1, _080384CC
+ ands r0, r1
+ orrs r0, r4
+ strh r0, [r3, 0x4]
+ movs r0, 0x70
+ strh r0, [r3, 0x2]
+ movs r1, 0xE0
+ lsls r1, 3
+ ldrh r0, [r3, 0x6]
+ ands r2, r0
+ orrs r2, r1
+ strh r2, [r3, 0x6]
+ movs r0, 0xD8
+ lsls r0, 1
+ add r0, r12
+ str r5, [r0]
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080384B0: .4byte gUnknown_203B360
+_080384B4: .4byte 0x0000feff
+_080384B8: .4byte 0x0000fdff
+_080384BC: .4byte 0x0000f3ff
+_080384C0: .4byte 0x0000efff
+_080384C4: .4byte 0x0000dfff
+_080384C8: .4byte 0x00003fff
+_080384CC: .4byte 0x00000fff
+ thumb_func_end sub_8038440
+
+ .align 2,0
diff --git a/asm/unk_menu_203B364.s b/asm/unk_menu_203B364.s
new file mode 100644
index 0000000..d1a1cd4
--- /dev/null
+++ b/asm/unk_menu_203B364.s
@@ -0,0 +1,364 @@
+ .include "constants/gba_constants.inc"
+ .include "asm/macros.inc"
+
+ .syntax unified
+
+ .text
+
+ thumb_func_start sub_8038630
+sub_8038630:
+ push {r4-r6,lr}
+ sub sp, 0x18
+ ldr r5, _080386A8
+ movs r0, 0x3
+ str r0, [sp, 0x14]
+ ldr r6, _080386AC
+ ldr r0, [r6]
+ ldr r4, [r0, 0x4]
+ cmp r4, 0x1
+ bne _08038646
+ b _08038798
+_08038646:
+ cmp r4, 0x1
+ bcc _0803864C
+ b _08038824
+_0803864C:
+ adds r0, 0x8
+ bl sub_8012FD8
+ movs r5, 0
+ str r5, [sp, 0x10]
+ bl sub_80140F8
+ bl sub_8011C1C
+ adds r1, r0, 0
+ add r0, sp, 0x10
+ bl sub_801203C
+ adds r4, r0, 0
+ bl sub_8014114
+ cmp r4, 0
+ beq _080386B8
+ cmp r4, 0x1
+ beq _08038738
+ ldr r0, [r6]
+ movs r4, 0xA4
+ lsls r4, 1
+ adds r0, r4
+ movs r1, 0
+ bl sub_8035CC0
+ ldr r1, [r6]
+ ldr r0, [r1]
+ cmp r0, 0x2E
+ bne _08038750
+ adds r0, r1, 0
+ adds r0, 0x8
+ adds r1, r4
+ ldr r3, _080386B0
+ ldr r2, _080386B4
+ str r2, [sp]
+ str r5, [sp, 0x4]
+ movs r2, 0x6
+ str r2, [sp, 0x8]
+ str r5, [sp, 0xC]
+ movs r2, 0
+ bl SetMenuItems
+ b _0803876E
+ .align 2, 0
+_080386A8: .4byte 0x0000ffdc
+_080386AC: .4byte gUnknown_203B364
+_080386B0: .4byte gUnknown_80E6F38
+_080386B4: .4byte gUnknown_80E7114
+_080386B8:
+ ldr r0, [r6]
+ movs r1, 0xA4
+ lsls r1, 1
+ adds r0, r1
+ movs r1, 0
+ bl sub_8035CC0
+ ldr r1, [r6]
+ ldr r0, [r1]
+ cmp r0, 0x2E
+ bne _080386F8
+ adds r0, r1, 0
+ adds r0, 0x8
+ movs r2, 0xA4
+ lsls r2, 1
+ adds r1, r2
+ ldr r3, _080386F0
+ ldr r2, _080386F4
+ str r2, [sp]
+ str r5, [sp, 0x4]
+ movs r2, 0x6
+ str r2, [sp, 0x8]
+ str r5, [sp, 0xC]
+ movs r2, 0
+ bl SetMenuItems
+ b _08038716
+ .align 2, 0
+_080386F0: .4byte gUnknown_80E6F38
+_080386F4: .4byte gUnknown_80E70CC
+_080386F8:
+ adds r0, r1, 0
+ adds r0, 0x8
+ movs r2, 0xA4
+ lsls r2, 1
+ adds r1, r2
+ ldr r3, _08038728
+ ldr r2, _0803872C
+ str r2, [sp]
+ str r5, [sp, 0x4]
+ movs r2, 0x6
+ str r2, [sp, 0x8]
+ str r5, [sp, 0xC]
+ movs r2, 0
+ bl SetMenuItems
+_08038716:
+ ldr r4, _08038730
+ ldr r1, [r4]
+ ldr r0, [r1]
+ cmp r0, 0x2D
+ bne _08038734
+ movs r0, 0x1
+ str r0, [r1, 0x4]
+ movs r0, 0x13
+ b _08038826
+ .align 2, 0
+_08038728: .4byte gUnknown_80E6F38
+_0803872C: .4byte gUnknown_80E6FBC
+_08038730: .4byte gUnknown_203B364
+_08038734:
+ adds r0, r1, 0
+ b _08038772
+_08038738:
+ ldr r0, _0803874C
+ movs r1, 0
+ movs r2, 0
+ movs r3, 0
+ bl sub_80141B4
+ ldr r1, [r6]
+ movs r0, 0x5
+ b _08038780
+ .align 2, 0
+_0803874C: .4byte gUnknown_80E7178
+_08038750:
+ adds r0, r1, 0
+ adds r0, 0x8
+ movs r2, 0xA4
+ lsls r2, 1
+ adds r1, r2
+ ldr r3, _08038788
+ ldr r2, _0803878C
+ str r2, [sp]
+ str r5, [sp, 0x4]
+ movs r2, 0x6
+ str r2, [sp, 0x8]
+ str r5, [sp, 0xC]
+ movs r2, 0
+ bl SetMenuItems
+_0803876E:
+ ldr r4, _08038790
+ ldr r0, [r4]
+_08038772:
+ adds r0, 0x8
+ movs r1, 0
+ movs r2, 0x1
+ bl sub_8035CF4
+ ldr r1, [r4]
+ movs r0, 0x1
+_08038780:
+ str r0, [r1, 0x4]
+ ldr r5, _08038794
+ b _08038824
+ .align 2, 0
+_08038788: .4byte gUnknown_80E6F38
+_0803878C: .4byte gUnknown_80E701C
+_08038790: .4byte gUnknown_203B364
+_08038794: .4byte 0x0000ffdc
+_08038798:
+ adds r0, 0x8
+ bl sub_80130A8
+ lsls r0, 24
+ cmp r0, 0
+ bne _080387AE
+ ldr r0, [r6]
+ adds r0, 0x8
+ add r1, sp, 0x14
+ bl sub_8013114
+_080387AE:
+ ldr r0, [sp, 0x14]
+ cmp r0, 0x3
+ beq _0803881C
+ cmp r0, 0x3
+ bhi _080387BE
+ cmp r0, 0x2
+ beq _080387C2
+ b _08038820
+_080387BE:
+ cmp r0, 0x4
+ bne _08038820
+_080387C2:
+ ldr r4, _080387D8
+ ldr r1, [r4]
+ ldr r0, [r1]
+ cmp r0, 0x29
+ beq _080387D0
+ cmp r0, 0x2E
+ bne _080387DC
+_080387D0:
+ movs r0, 0x1
+ str r0, [r1, 0x4]
+ movs r5, 0x1
+ b _08038820
+ .align 2, 0
+_080387D8: .4byte gUnknown_203B364
+_080387DC:
+ cmp r0, 0x2D
+ bne _080387E8
+ movs r0, 0x1
+ str r0, [r1, 0x4]
+ movs r5, 0x13
+ b _08038820
+_080387E8:
+ cmp r0, 0x2C
+ bne _080387F4
+ movs r0, 0x1
+ str r0, [r1, 0x4]
+ movs r5, 0x1F
+ b _08038820
+_080387F4:
+ bl GetMainMenu
+ adds r0, 0x3A
+ ldrb r0, [r0]
+ cmp r0, 0
+ beq _0803880A
+ ldr r1, [r4]
+ movs r0, 0x1
+ str r0, [r1, 0x4]
+ movs r5, 0x35
+ b _08038820
+_0803880A:
+ ldr r0, [r4]
+ movs r1, 0x1
+ str r1, [r0, 0x4]
+ ldr r0, [r0]
+ movs r5, 0xB
+ cmp r0, 0x2B
+ bne _08038820
+ movs r5, 0xD
+ b _08038820
+_0803881C:
+ ldr r0, [r6]
+ str r4, [r0, 0x4]
+_08038820:
+ bl sub_80388C4
+_08038824:
+ adds r0, r5, 0
+_08038826:
+ add sp, 0x18
+ pop {r4-r6}
+ pop {r1}
+ bx r1
+ thumb_func_end sub_8038630
+
+ thumb_func_start sub_8038830
+sub_8038830:
+ push {r4,r5,lr}
+ movs r5, 0
+ ldr r0, _080388A4
+ ldr r0, [r0]
+ mov r12, r0
+ movs r3, 0xD4
+ lsls r3, 1
+ add r3, r12
+ ldrh r1, [r3]
+ ldr r0, _080388A8
+ ands r0, r1
+ ldr r1, _080388AC
+ ands r0, r1
+ ldr r4, _080388B0
+ ands r0, r4
+ ldr r1, _080388B4
+ ands r0, r1
+ ldr r1, _080388B8
+ ands r0, r1
+ movs r2, 0x80
+ lsls r2, 7
+ ldr r1, _080388BC
+ ands r0, r1
+ orrs r0, r2
+ strh r0, [r3]
+ movs r2, 0xFC
+ lsls r2, 2
+ ldrh r1, [r3, 0x4]
+ movs r0, 0xFC
+ lsls r0, 8
+ ands r0, r1
+ orrs r0, r2
+ ands r0, r4
+ movs r2, 0xF
+ movs r4, 0xF0
+ lsls r4, 8
+ ldr r1, _080388C0
+ ands r0, r1
+ orrs r0, r4
+ strh r0, [r3, 0x4]
+ movs r0, 0x70
+ strh r0, [r3, 0x2]
+ movs r1, 0xD0
+ lsls r1, 3
+ ldrh r0, [r3, 0x6]
+ ands r2, r0
+ orrs r2, r1
+ strh r2, [r3, 0x6]
+ movs r0, 0xD8
+ lsls r0, 1
+ add r0, r12
+ str r5, [r0]
+ movs r0, 0
+ bl ResetSprites
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080388A4: .4byte gUnknown_203B364
+_080388A8: .4byte 0x0000feff
+_080388AC: .4byte 0x0000fdff
+_080388B0: .4byte 0x0000f3ff
+_080388B4: .4byte 0x0000efff
+_080388B8: .4byte 0x0000dfff
+_080388BC: .4byte 0x00003fff
+_080388C0: .4byte 0x00000fff
+ thumb_func_end sub_8038830
+
+ thumb_func_start sub_80388C4
+sub_80388C4:
+ push {r4,r5,lr}
+ ldr r5, _080388FC
+ ldr r2, [r5]
+ movs r4, 0xD8
+ lsls r4, 1
+ adds r0, r2, r4
+ ldr r0, [r0]
+ movs r1, 0x8
+ ands r0, r1
+ cmp r0, 0
+ beq _080388EA
+ movs r1, 0xD4
+ lsls r1, 1
+ adds r0, r2, r1
+ subs r1, 0xA8
+ movs r2, 0
+ movs r3, 0
+ bl AddSprite
+_080388EA:
+ ldr r1, [r5]
+ adds r1, r4
+ ldr r0, [r1]
+ adds r0, 0x1
+ str r0, [r1]
+ pop {r4,r5}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080388FC: .4byte gUnknown_203B364
+ thumb_func_end sub_80388C4
+
+ .align 2,0
diff --git a/asm/wonder_mail_1.s b/asm/wonder_mail_1.s
index e5d1c87..c0407c9 100644
--- a/asm/wonder_mail_1.s
+++ b/asm/wonder_mail_1.s
@@ -15555,371 +15555,5 @@ _08031F00:
_08031F5C: .4byte gUnknown_203B334
thumb_func_end sub_8031E74
- thumb_func_start CreateAdventureLogScreen
-CreateAdventureLogScreen:
- push {r4-r6,lr}
- adds r5, r0, 0
- ldr r4, _08031FD0
- movs r0, 0xA0
- movs r1, 0x8
- bl MemoryAlloc
- str r0, [r4]
- str r5, [r0, 0x34]
- lsls r1, r5, 1
- adds r1, r5
- lsls r1, 3
- adds r1, 0x3C
- adds r1, r0, r1
- str r1, [r0, 0x38]
- adds r0, 0x3C
- bl sub_8006518
- ldr r1, [r4]
- ldr r2, [r1, 0x34]
- lsls r0, r2, 1
- adds r0, r2
- lsls r0, 3
- adds r1, r0
- adds r1, 0x3C
- ldr r0, _08031FD4
- ldm r0!, {r2,r3,r6}
- stm r1!, {r2,r3,r6}
- ldm r0!, {r2,r3,r6}
- stm r1!, {r2,r3,r6}
- ldr r0, [r4]
- ldr r1, [r0, 0x38]
- adds r0, 0x9C
- str r0, [r1, 0x14]
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x3C
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- movs r1, 0x20
- movs r2, 0x8
- adds r3, r5, 0
- bl sub_8013818
- bl sub_8032084
- bl DisplayAdventureLog
- movs r0, 0x1
- pop {r4-r6}
- pop {r1}
- bx r1
- .align 2, 0
-_08031FD0: .4byte gUnknown_203B338
-_08031FD4: .4byte gUnknown_80E2008
- thumb_func_end CreateAdventureLogScreen
-
- thumb_func_start HandleAdventureLogInput
-HandleAdventureLogInput:
- push {r4,lr}
- lsls r0, 24
- cmp r0, 0
- bne _08031FF0
- ldr r0, _08031FEC
- ldr r0, [r0]
- bl sub_8013660
- movs r0, 0
- b _08032034
- .align 2, 0
-_08031FEC: .4byte gUnknown_203B338
-_08031FF0:
- ldr r4, _0803200C
- ldr r0, [r4]
- bl GetKeyPress
- cmp r0, 0x1
- beq _08032010
- cmp r0, 0x2
- bne _0803201A
- movs r0, 0x1
- bl PlayMenuSoundEffect
- movs r0, 0x2
- b _08032034
- .align 2, 0
-_0803200C: .4byte gUnknown_203B338
-_08032010:
- movs r0, 0
- bl PlayMenuSoundEffect
- movs r0, 0x3
- b _08032034
-_0803201A:
- ldr r0, [r4]
- bl sub_8013938
- lsls r0, 24
- cmp r0, 0
- bne _0803202A
- movs r0, 0
- b _08032034
-_0803202A:
- bl sub_8032084
- bl DisplayAdventureLog
- movs r0, 0x1
-_08032034:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end HandleAdventureLogInput
-
- thumb_func_start sub_803203C
-sub_803203C:
- push {r4,r5,lr}
- ldr r4, _0803207C
- ldr r2, [r4]
- cmp r2, 0
- beq _08032076
- ldr r0, [r2, 0x34]
- lsls r1, r0, 1
- adds r1, r0
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x3C
- ldr r0, _08032080
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- ldm r0!, {r2,r3,r5}
- stm r1!, {r2,r3,r5}
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x3C
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- ldr r0, [r4]
- bl MemoryFree
- movs r0, 0
- str r0, [r4]
-_08032076:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0803207C: .4byte gUnknown_203B338
-_08032080: .4byte gUnknown_80E1FF0
- thumb_func_end sub_803203C
-
- thumb_func_start sub_8032084
-sub_8032084:
- push {r4,lr}
- ldr r4, _080320F4
- ldr r0, [r4]
- ldrh r1, [r0, 0x20]
- adds r0, 0x9C
- movs r2, 0
- strb r1, [r0]
- ldr r0, [r4]
- ldrh r1, [r0, 0x1E]
- adds r0, 0x9D
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0x9E
- movs r1, 0xB
- strb r1, [r0]
- ldr r0, [r4]
- adds r0, 0x9F
- strb r2, [r0]
- ldr r0, [r4]
- movs r1, 0x1A
- ldrsh r0, [r0, r1]
- movs r1, 0xC
- bl sub_80095E4
- adds r0, 0x2
- lsls r0, 16
- ldr r2, [r4]
- ldr r3, [r2, 0x34]
- lsls r1, r3, 1
- adds r1, r3
- lsls r1, 3
- adds r1, r2, r1
- adds r1, 0x4A
- asrs r3, r0, 16
- lsrs r0, 16
- strh r0, [r1]
- ldr r1, [r2, 0x34]
- lsls r0, r1, 1
- adds r0, r1
- lsls r0, 3
- adds r2, r0
- adds r3, 0x2
- adds r2, 0x4C
- strh r3, [r2]
- bl ResetUnusedInputStruct
- ldr r0, [r4]
- adds r0, 0x3C
- movs r1, 0x1
- movs r2, 0x1
- bl sub_800641C
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_080320F4: .4byte gUnknown_203B338
- thumb_func_end sub_8032084
-
- thumb_func_start DisplayAdventureLog
-DisplayAdventureLog:
- push {r4-r7,lr}
- sub sp, 0x8
- ldr r5, _08032158
- ldr r0, [r5]
- ldr r0, [r0, 0x34]
- bl sub_8008C54
- ldr r0, [r5]
- ldr r0, [r0, 0x34]
- bl sub_80073B8
- ldr r0, [r5]
- movs r1, 0x1E
- ldrsh r4, [r0, r1]
- lsls r4, 3
- adds r6, r4, 0
- adds r6, 0xA
- ldr r2, _0803215C
- ldr r3, [r0, 0x34]
- movs r0, 0
- str r0, [sp]
- adds r0, r6, 0
- movs r1, 0
- bl xxx_call_draw_string
- adds r4, 0x4
- ldr r1, [r5]
- adds r0, r1, 0
- adds r0, 0x9E
- ldrb r0, [r0]
- lsls r0, 3
- adds r6, r4, r0
- movs r0, 0x1E
- ldrsh r2, [r1, r0]
- adds r2, 0x1
- movs r0, 0x7
- str r0, [sp]
- ldr r0, [r1, 0x34]
- str r0, [sp, 0x4]
- adds r0, r6, 0
- movs r1, 0
- movs r3, 0x1
- bl sub_8012BC4
- movs r7, 0
- ldr r0, [r5]
- b _0803223A
- .align 2, 0
-_08032158: .4byte gUnknown_203B338
-_0803215C: .4byte gUnknown_80E2020
-_08032160:
- ldr r5, _08032194
- ldr r0, [r5]
- movs r2, 0x1E
- ldrsh r1, [r0, r2]
- movs r2, 0x1C
- ldrsh r0, [r0, r2]
- muls r0, r1
- adds r0, r7
- lsls r0, 24
- lsrs r6, r0, 24
- adds r0, r6, 0
- bl sub_8097710
- lsls r0, 24
- lsrs r4, r0, 24
- cmp r4, 0
- beq _0803221C
- subs r0, r6, 0x7
- cmp r0, 0x5
- bhi _080321EC
- lsls r0, 2
- ldr r1, _08032198
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_08032194: .4byte gUnknown_203B338
-_08032198: .4byte _0803219C
- .align 2, 0
-_0803219C:
- .4byte _080321BA
- .4byte _080321C6
- .4byte _080321D4
- .4byte _080321E0
- .4byte _080321C0
- .4byte _080321B4
-_080321B4:
- bl sub_80978B8
- b _080321E4
-_080321BA:
- bl sub_8097880
- b _080321E4
-_080321C0:
- bl sub_8097838
- b _080321E4
-_080321C6:
- bl sub_80977B8
- ldr r1, _080321D0
- b _080321EA
- .align 2, 0
-_080321D0: .4byte gUnknown_202DE30
-_080321D4:
- bl sub_80977F8
- ldr r1, _080321DC
- b _080321EA
- .align 2, 0
-_080321DC: .4byte gUnknown_202DE30
-_080321E0:
- bl sub_8097870
-_080321E4:
- ldr r1, _08032214
- lsls r0, 16
- asrs r0, 16
-_080321EA:
- str r0, [r1]
-_080321EC:
- ldr r4, _08032218
- ldr r0, [r4]
- adds r1, r7, 0
- bl sub_8013800
- adds r5, r0, 0
- adds r0, r6, 0
- bl GetAdventureLogLine
- adds r2, r0, 0
- ldr r0, [r4]
- ldr r3, [r0, 0x34]
- movs r0, 0
- str r0, [sp]
- movs r0, 0x8
- adds r1, r5, 0
- bl sub_8014FF0
- b _08032234
- .align 2, 0
-_08032214: .4byte gUnknown_202DE30
-_08032218: .4byte gUnknown_203B338
-_0803221C:
- ldr r0, [r5]
- adds r1, r7, 0
- bl sub_8013800
- adds r1, r0, 0
- ldr r2, _08032254
- ldr r0, [r5]
- ldr r3, [r0, 0x34]
- str r4, [sp]
- movs r0, 0x8
- bl xxx_call_draw_string
-_08032234:
- adds r7, 0x1
- ldr r0, _08032258
- ldr r0, [r0]
-_0803223A:
- movs r1, 0x1A
- ldrsh r0, [r0, r1]
- cmp r7, r0
- blt _08032160
- ldr r0, _08032258
- ldr r0, [r0]
- ldr r0, [r0, 0x34]
- bl sub_80073E0
- add sp, 0x8
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_08032254: .4byte gUnknown_80E2030
-_08032258: .4byte gUnknown_203B338
- thumb_func_end DisplayAdventureLog
.align 2,0