diff options
author | Seth Barberee <seth.barberee@gmail.com> | 2022-03-25 09:39:44 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-03-25 09:39:44 -0700 |
commit | 9f98e08fb99112eedd56873b5557c5e4e757dbba (patch) | |
tree | 439b1bce980e4452fcc92999eb62df354ef9b790 /asm | |
parent | a0264b99956cc67dd13704b758dc1f2f4c1480ca (diff) | |
parent | 57f540b320ae8439fe4b42c6149641b877c7ea73 (diff) |
Save work
Diffstat (limited to 'asm')
-rw-r--r-- | asm/code_8031D70.s | 266 | ||||
-rw-r--r-- | asm/code_803B050.s | 2 | ||||
-rw-r--r-- | asm/code_806CD90.s | 4 | ||||
-rw-r--r-- | asm/code_808417C.s | 8 | ||||
-rw-r--r-- | asm/code_809447C.s | 2 | ||||
-rw-r--r-- | asm/code_8095014.s | 484 | ||||
-rw-r--r-- | asm/code_80958E8.s | 690 | ||||
-rw-r--r-- | asm/code_8097318.s | 207 | ||||
-rw-r--r-- | asm/code_8097670.s | 471 | ||||
-rw-r--r-- | asm/code_8097DD0.s | 213 | ||||
-rw-r--r-- | asm/dungeon.s (renamed from asm/code_809017C.s) | 29 | ||||
-rw-r--r-- | asm/dungeon_2.s (renamed from asm/code_8090208.s) | 104 | ||||
-rw-r--r-- | asm/friend_area_action_menu.s | 262 | ||||
-rw-r--r-- | asm/friend_list_menu.s | 6 | ||||
-rw-r--r-- | asm/kangaskhan_storage_1.s | 4 | ||||
-rw-r--r-- | asm/kecleon_items.s | 476 | ||||
-rw-r--r-- | asm/makuhita_dojo.s | 2 | ||||
-rw-r--r-- | asm/pokemon_3.s | 2 | ||||
-rw-r--r-- | asm/wonder_mail_2.s | 10 | ||||
-rw-r--r-- | asm/wonder_mail_3.s | 2 | ||||
-rw-r--r-- | asm/wonder_mail_5.s | 571 |
21 files changed, 714 insertions, 3101 deletions
diff --git a/asm/code_8031D70.s b/asm/code_8031D70.s new file mode 100644 index 0000000..b889571 --- /dev/null +++ b/asm/code_8031D70.s @@ -0,0 +1,266 @@ + #include "asm/constants/gba_constants.inc" + #include "asm/macros.inc" + + .syntax unified + + .text + + thumb_func_start sub_8031D70 +sub_8031D70: + push {r4-r6,lr} + adds r6, r0, 0 + adds r4, r1, 0 + ldr r5, _08031DC4 + movs r0, 0x7C + movs r1, 0x8 + bl MemoryAlloc + str r0, [r5] + stm r0!, {r6} + bl sub_801317C + ldr r0, [r5] + str r4, [r0, 0x10] + lsls r1, r4, 1 + adds r1, r4 + lsls r1, 3 + adds r1, 0x18 + adds r1, r0, r1 + str r1, [r0, 0x14] + adds r0, 0x18 + bl sub_8006518 + ldr r1, [r5] + ldr r2, [r1, 0x10] + lsls r0, r2, 1 + adds r0, r2 + lsls r0, 3 + adds r1, r0 + adds r1, 0x18 + ldr r0, _08031DC8 + ldm r0!, {r2-r4} + stm r1!, {r2-r4} + ldm r0!, {r2-r4} + stm r1!, {r2-r4} + bl sub_8031E00 + movs r0, 0x1 + pop {r4-r6} + pop {r1} + bx r1 + .align 2, 0 +_08031DC4: .4byte gUnknown_203B334 +_08031DC8: .4byte gUnknown_80E1FC4 + thumb_func_end sub_8031D70 + + thumb_func_start sub_8031DCC +sub_8031DCC: + push {lr} + ldr r0, _08031DEC + ldr r1, [r0] + adds r0, r1, 0x4 + ldr r1, [r1, 0x10] + bl sub_8012A64 + cmp r0, 0x1 + beq _08031DF0 + cmp r0, 0x2 + bne _08031DFA + movs r0, 0x1 + bl PlayMenuSoundEffect + movs r0, 0x2 + b _08031DFC + .align 2, 0 +_08031DEC: .4byte gUnknown_203B334 +_08031DF0: + movs r0, 0 + bl PlayMenuSoundEffect + movs r0, 0x3 + b _08031DFC +_08031DFA: + movs r0, 0 +_08031DFC: + pop {r1} + bx r1 + thumb_func_end sub_8031DCC + + thumb_func_start sub_8031E00 +sub_8031E00: + push {lr} + bl sub_8031E58 + bl sub_8031E74 + pop {r0} + bx r0 + thumb_func_end sub_8031E00 + + thumb_func_start sub_8031E10 +sub_8031E10: + push {r4,r5,lr} + ldr r4, _08031E50 + ldr r2, [r4] + cmp r2, 0 + beq _08031E4A + ldr r0, [r2, 0x10] + lsls r1, r0, 1 + adds r1, r0 + lsls r1, 3 + adds r1, r2, r1 + adds r1, 0x18 + ldr r0, _08031E54 + 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, 0x18 + movs r1, 0x1 + movs r2, 0x1 + bl sub_800641C + ldr r0, [r4] + bl MemoryFree + movs r0, 0 + str r0, [r4] +_08031E4A: + pop {r4,r5} + pop {r0} + bx r0 + .align 2, 0 +_08031E50: .4byte gUnknown_203B334 +_08031E54: .4byte gUnknown_80E1FA8 + thumb_func_end sub_8031E10 + + thumb_func_start sub_8031E58 +sub_8031E58: + push {lr} + bl ResetUnusedInputStruct + ldr r0, _08031E70 + ldr r0, [r0] + adds r0, 0x18 + movs r1, 0x1 + movs r2, 0x1 + bl sub_800641C + pop {r0} + bx r0 + .align 2, 0 +_08031E70: .4byte gUnknown_203B334 + thumb_func_end sub_8031E58 + + thumb_func_start sub_8031E74 +sub_8031E74: + push {r4-r7,lr} + mov r7, r8 + push {r7} + sub sp, 0x3C + ldr r3, _08031EC0 + ldr r5, _08031EC4 + ldr r2, [r5] + ldr r1, [r2] + lsls r0, r1, 1 + adds r0, r1 + lsls r0, 4 + ldr r4, [r3] + adds r4, r0 + ldr r0, [r2, 0x10] + bl sub_80073B8 + ldr r2, _08031EC8 + ldr r0, [r5] + ldr r3, [r0, 0x10] + movs r0, 0 + str r0, [sp] + movs r0, 0x14 + movs r1, 0 + bl xxx_call_draw_string + add r0, sp, 0x4 + adds r1, r4, 0 + bl sub_803D2C0 + movs r7, 0 + mov r8, r5 +_08031EB2: + cmp r7, 0x4 + ble _08031ED0 + cmp r7, 0xC + bgt _08031ECC + movs r6, 0x6 + movs r5, 0x16 + b _08031F00 + .align 2, 0 +_08031EC0: .4byte gUnknown_203B480 +_08031EC4: .4byte gUnknown_203B334 +_08031EC8: .4byte gUnknown_80E1FDC +_08031ECC: + cmp r7, 0x11 + bgt _08031ED6 +_08031ED0: + movs r6, 0x7 + movs r5, 0x15 + b _08031F00 +_08031ED6: + cmp r7, 0x16 + ble _08031EE8 + cmp r7, 0x1E + bgt _08031EE4 + movs r6, 0x6 + movs r5, 0x25 + b _08031F00 +_08031EE4: + cmp r7, 0x23 + bgt _08031EEE +_08031EE8: + movs r6, 0x7 + movs r5, 0x24 + b _08031F00 +_08031EEE: + cmp r7, 0x28 + ble _08031EFC + cmp r7, 0x30 + bgt _08031EFC + movs r6, 0x6 + movs r5, 0x34 + b _08031F00 +_08031EFC: + movs r6, 0x7 + movs r5, 0x33 +_08031F00: + adds r0, r7, 0 + movs r1, 0x12 + bl __modsi3 + movs r1, 0xB + adds r4, r0, 0 + muls r4, r1 + adds r4, 0x6 + mov r0, sp + adds r0, r7 + adds r0, 0x4 + ldrb r2, [r0] + mov r1, r8 + ldr r0, [r1] + ldr r0, [r0, 0x10] + str r0, [sp] + adds r0, r4, 0 + adds r1, r5, 0 + adds r3, r6, 0 + bl sub_8012C60 + mov r1, r8 + ldr r0, [r1] + ldr r0, [r0, 0x10] + adds r2, r5, 0 + adds r2, 0xA + movs r1, 0x5 + str r1, [sp] + adds r1, r4, 0 + movs r3, 0xA + bl sub_80078A4 + adds r7, 0x1 + cmp r7, 0x35 + ble _08031EB2 + ldr r0, _08031F5C + ldr r0, [r0] + ldr r0, [r0, 0x10] + bl sub_80073E0 + add sp, 0x3C + pop {r3} + mov r8, r3 + pop {r4-r7} + pop {r0} + bx r0 + .align 2, 0 +_08031F5C: .4byte gUnknown_203B334 + thumb_func_end sub_8031E74 + + .align 2,0 diff --git a/asm/code_803B050.s b/asm/code_803B050.s index 1dcdaab..2fc580b 100644 --- a/asm/code_803B050.s +++ b/asm/code_803B050.s @@ -949,7 +949,7 @@ _0803B75C: .4byte gMedichamMission _0803B760: ldr r1, [r7, 0x8] add r0, sp, 0x4 - bl sub_8090208 + bl PrintYellowDungeonNametoBuffer b _0803B850 _0803B76A: ldr r4, _0803B780 diff --git a/asm/code_806CD90.s b/asm/code_806CD90.s index 34b2572..c304730 100644 --- a/asm/code_806CD90.s +++ b/asm/code_806CD90.s @@ -2225,7 +2225,7 @@ _0806E040: ldr r1, _0806E0C0 adds r0, r1 ldrb r0, [r0] - bl sub_809033C + bl GetDungeonUnk1 lsls r0, 24 cmp r0, 0 beq _0806E066 @@ -2969,4 +2969,4 @@ _0806E64C: .4byte 0x00000177 _0806E650: .4byte gUnknown_8106F0C thumb_func_end sub_806E100 - .align 2, 0
\ No newline at end of file + .align 2, 0 diff --git a/asm/code_808417C.s b/asm/code_808417C.s index 03b4f3b..05c90be 100644 --- a/asm/code_808417C.s +++ b/asm/code_808417C.s @@ -213,7 +213,7 @@ sub_80842F0: _08084320: lsls r0, r6, 24 lsrs r0, 24 - bl sub_8096AB4 + bl GetJobSlotInfo adds r4, r0, 0 ldrb r0, [r4] cmp r0, 0x6 @@ -300,7 +300,7 @@ sub_80843BC: _080843C6: lsls r0, r4, 24 lsrs r0, 24 - bl sub_8096AB4 + bl GetJobSlotInfo adds r3, r0, 0 ldrb r0, [r3] cmp r0, 0x6 @@ -353,7 +353,7 @@ sub_8084424: _08084428: lsls r0, r4, 24 lsrs r0, 24 - bl sub_8096AB4 + bl GetJobSlotInfo adds r1, r0, 0 ldrb r0, [r1] cmp r0, 0x8 @@ -760,7 +760,7 @@ sub_8084778: _08084784: lsls r0, r4, 24 lsrs r0, 24 - bl sub_8096AB4 + bl GetJobSlotInfo adds r1, r0, 0 ldrb r0, [r1] cmp r0, 0x6 diff --git a/asm/code_809447C.s b/asm/code_809447C.s index 281962b..3d03a7a 100644 --- a/asm/code_809447C.s +++ b/asm/code_809447C.s @@ -26,7 +26,7 @@ sub_8094558: adds r1, r6, 0 adds r1, 0x18 adds r0, r4, 0 - bl sub_8090208 + bl PrintYellowDungeonNametoBuffer ldr r0, _080945D4 ldr r2, [r0] str r5, [sp] diff --git a/asm/code_8095014.s b/asm/code_8095014.s index 228811d..d5e9a35 100644 --- a/asm/code_8095014.s +++ b/asm/code_8095014.s @@ -452,488 +452,4 @@ sub_8095494: _080954B0: .4byte gUnknown_203B480 thumb_func_end sub_8095494 - thumb_func_start sub_80954B4 -sub_80954B4: - push {lr} - movs r0, 0x3 - bl sub_8095324 - cmp r0, 0 - bne _080954C4 - movs r0, 0 - b _080954C6 -_080954C4: - movs r0, 0x1 -_080954C6: - pop {r1} - bx r1 - thumb_func_end sub_80954B4 - - thumb_func_start sub_80954CC -sub_80954CC: - push {r4-r6,lr} - sub sp, 0x10 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl xxx_init_struct_8094924_restore_809485C - ldr r6, _08095618 - movs r5, 0 - movs r4, 0x1F -_080954E2: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_8095774 - adds r5, 0x30 - subs r4, 0x1 - cmp r4, 0 - bge _080954E2 - ldr r4, _0809561C - ldr r1, [r4] - mov r0, sp - movs r2, 0x20 - bl RestoreIntegerBits - ldr r5, [r4] - adds r4, r5, 0x4 - adds r0, r4, 0 - movs r1, 0 - movs r2, 0x58 - bl memset - mov r0, sp - adds r1, r4, 0 - movs r2, 0x2 - bl RestoreIntegerBits - adds r1, r5, 0x6 - mov r0, sp - movs r2, 0x1 - bl RestoreIntegerBits - adds r1, r5, 0x7 - mov r0, sp - movs r2, 0x7 - bl RestoreIntegerBits - adds r4, 0x4 - mov r0, sp - adds r1, r4, 0 - bl xxx_restore_poke_sub_4_8090314 - adds r1, r5, 0 - adds r1, 0xC - mov r0, sp - movs r2, 0x9 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x10 - mov r0, sp - bl xxx_restore_poke_sub_c_808F410 - adds r1, r5, 0 - adds r1, 0x14 - mov r0, sp - bl xxx_restore_poke_sub_c_808F410 - adds r1, r5, 0 - adds r1, 0x18 - mov r0, sp - movs r2, 0xA - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x1A - mov r0, sp - movs r2, 0xA - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x1C - mov r0, sp - movs r2, 0x8 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x1D - mov r0, sp - movs r2, 0x8 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x1E - mov r0, sp - movs r2, 0x8 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x1F - mov r0, sp - movs r2, 0x8 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x20 - mov r0, sp - movs r2, 0x18 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x24 - mov r0, sp - movs r2, 0x18 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x28 - mov r0, sp - movs r2, 0x4 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x2C - mov r0, sp - bl RestoreHeldItem - adds r1, r5, 0 - adds r1, 0x30 - mov r0, sp - bl RestorePokemonMoves - adds r1, r5, 0 - adds r1, 0x50 - mov r0, sp - movs r2, 0x50 - bl RestoreIntegerBits - ldr r4, _08095620 - ldr r1, [r4] - mov r0, sp - movs r2, 0x20 - bl RestoreIntegerBits - adds r6, r4, 0 - movs r5, 0x4 - movs r4, 0x1F -_080955F4: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - movs r2, 0x20 - bl RestoreIntegerBits - adds r5, 0x4 - subs r4, 0x1 - cmp r4, 0 - bge _080955F4 - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x10 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08095618: .4byte gUnknown_203B480 -_0809561C: .4byte gUnknown_203B484 -_08095620: .4byte gUnknown_203B48C - thumb_func_end sub_80954CC - - thumb_func_start sub_8095624 -sub_8095624: - push {r4-r6,lr} - sub sp, 0x10 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl xxx_init_struct_8094924_save_809486C - ldr r6, _08095768 - movs r5, 0 - movs r4, 0x1F -_0809563A: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_8095824 - adds r5, 0x30 - subs r4, 0x1 - cmp r4, 0 - bge _0809563A - ldr r4, _0809576C - ldr r1, [r4] - mov r0, sp - movs r2, 0x20 - bl SaveIntegerBits - ldr r5, [r4] - adds r4, r5, 0x4 - mov r0, sp - adds r1, r4, 0 - movs r2, 0x2 - bl SaveIntegerBits - adds r1, r5, 0x6 - mov r0, sp - movs r2, 0x1 - bl SaveIntegerBits - adds r1, r5, 0x7 - mov r0, sp - movs r2, 0x7 - bl SaveIntegerBits - adds r4, 0x4 - mov r0, sp - adds r1, r4, 0 - bl xxx_save_poke_sub_4_80902F4 - adds r1, r5, 0 - adds r1, 0xC - mov r0, sp - movs r2, 0x9 - bl SaveIntegerBits - adds r1, r5, 0 - adds r1, 0x10 - mov r0, sp - bl xxx_save_poke_sub_c_808F41C - adds r1, r5, 0 - adds r1, 0x14 - mov r0, sp - bl xxx_save_poke_sub_c_808F41C - adds r1, r5, 0 - adds r1, 0x18 - mov r0, sp - movs r2, 0xA - bl SaveIntegerBits - adds r1, r5, 0 - adds r1, 0x1A - mov r0, sp - movs r2, 0xA - bl SaveIntegerBits - adds r1, r5, 0 - adds r1, 0x1C - mov r0, sp - movs r2, 0x8 - bl SaveIntegerBits - adds r1, r5, 0 - adds r1, 0x1D - mov r0, sp - movs r2, 0x8 - bl SaveIntegerBits - adds r1, r5, 0 - adds r1, 0x1E - mov r0, sp - movs r2, 0x8 - bl SaveIntegerBits - adds r1, r5, 0 - adds r1, 0x1F - mov r0, sp - movs r2, 0x8 - bl SaveIntegerBits - adds r1, r5, 0 - adds r1, 0x20 - mov r0, sp - movs r2, 0x18 - bl SaveIntegerBits - adds r1, r5, 0 - adds r1, 0x24 - mov r0, sp - movs r2, 0x18 - bl SaveIntegerBits - adds r1, r5, 0 - adds r1, 0x28 - mov r0, sp - movs r2, 0x4 - bl SaveIntegerBits - adds r1, r5, 0 - adds r1, 0x2C - mov r0, sp - bl SaveHeldItem - adds r1, r5, 0 - adds r1, 0x30 - mov r0, sp - bl SavePokemonMoves - adds r1, r5, 0 - adds r1, 0x50 - mov r0, sp - movs r2, 0x50 - bl SaveIntegerBits - ldr r4, _08095770 - ldr r1, [r4] - mov r0, sp - movs r2, 0x20 - bl SaveIntegerBits - adds r6, r4, 0 - movs r5, 0x4 - movs r4, 0x1F -_08095742: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - movs r2, 0x20 - bl SaveIntegerBits - adds r5, 0x4 - subs r4, 0x1 - cmp r4, 0 - bge _08095742 - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x10 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08095768: .4byte gUnknown_203B480 -_0809576C: .4byte gUnknown_203B484 -_08095770: .4byte gUnknown_203B48C - thumb_func_end sub_8095624 - - thumb_func_start sub_8095774 -sub_8095774: - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - bl RestoreIntegerBits - adds r1, r5, 0x4 - adds r0, r4, 0 - bl xxx_restore_poke_sub_4_8090314 - adds r1, r5, 0 - adds r1, 0x8 - adds r0, r4, 0 - movs r2, 0x18 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0xC - adds r0, r4, 0 - movs r2, 0x9 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x10 - adds r0, r4, 0 - movs r2, 0x20 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x14 - adds r0, r4, 0 - movs r2, 0x50 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x20 - adds r0, r4, 0 - movs r2, 0x8 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x21 - adds r0, r4, 0 - movs r2, 0x8 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x22 - adds r0, r4, 0 - movs r2, 0x8 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x24 - adds r0, r4, 0 - movs r2, 0x20 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x28 - adds r0, r4, 0 - movs r2, 0x20 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x2C - adds r0, r4, 0 - movs r2, 0x8 - bl RestoreIntegerBits - adds r0, r4, 0 - mov r1, sp - movs r2, 0x1 - bl RestoreIntegerBits - mov r0, sp - ldrb r1, [r0] - movs r0, 0x1 - ands r0, r1 - adds r1, r5, 0 - adds r1, 0x2D - strb r0, [r1] - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8095774 - - thumb_func_start sub_8095824 -sub_8095824: - push {r4-r6,lr} - sub sp, 0x4 - adds r5, r0, 0 - adds r4, r1, 0 - movs r1, 0xFF - mov r0, sp - strb r1, [r0] - mov r6, sp - adds r6, 0x1 - movs r0, 0 - strb r0, [r6] - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x4 - bl SaveIntegerBits - adds r1, r4, 0x4 - adds r0, r5, 0 - bl xxx_save_poke_sub_4_80902F4 - adds r1, r4, 0 - adds r1, 0x8 - adds r0, r5, 0 - movs r2, 0x18 - bl SaveIntegerBits - adds r1, r4, 0 - adds r1, 0xC - adds r0, r5, 0 - movs r2, 0x9 - bl SaveIntegerBits - adds r1, r4, 0 - adds r1, 0x10 - adds r0, r5, 0 - movs r2, 0x20 - bl SaveIntegerBits - adds r1, r4, 0 - adds r1, 0x14 - adds r0, r5, 0 - movs r2, 0x50 - bl SaveIntegerBits - adds r1, r4, 0 - adds r1, 0x20 - adds r0, r5, 0 - movs r2, 0x8 - bl SaveIntegerBits - adds r1, r4, 0 - adds r1, 0x21 - adds r0, r5, 0 - movs r2, 0x8 - bl SaveIntegerBits - adds r1, r4, 0 - adds r1, 0x22 - adds r0, r5, 0 - movs r2, 0x8 - bl SaveIntegerBits - adds r1, r4, 0 - adds r1, 0x24 - adds r0, r5, 0 - movs r2, 0x20 - bl SaveIntegerBits - adds r1, r4, 0 - adds r1, 0x28 - adds r0, r5, 0 - movs r2, 0x20 - bl SaveIntegerBits - adds r1, r4, 0 - adds r1, 0x2C - adds r0, r5, 0 - movs r2, 0x8 - bl SaveIntegerBits - adds r0, r4, 0 - adds r0, 0x2D - ldrb r0, [r0] - mov r1, sp - cmp r0, 0 - bne _080958D2 - adds r1, r6, 0 -_080958D2: - adds r0, r5, 0 - movs r2, 0x1 - bl SaveIntegerBits - add sp, 0x4 - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_8095824 - - thumb_func_start sub_80958E4 -sub_80958E4: - str r1, [r0] - bx lr - thumb_func_end sub_80958E4 - - .align 2,0 diff --git a/asm/code_80958E8.s b/asm/code_80958E8.s index b73e519..904f41c 100644 --- a/asm/code_80958E8.s +++ b/asm/code_80958E8.s @@ -2019,7 +2019,7 @@ sub_80969D0: _080969DA: lsls r0, r4, 24 lsrs r0, 24 - bl sub_8096AB4 + bl GetJobSlotInfo adds r1, r0, 0 ldrb r0, [r1, 0x4] cmp r0, r6 @@ -2054,7 +2054,7 @@ sub_8096A08: _08096A14: lsls r0, r4, 24 lsrs r0, 24 - bl sub_8096AB4 + bl GetJobSlotInfo adds r2, r0, 0 ldrb r0, [r2, 0x4] cmp r0, r5 @@ -2139,8 +2139,8 @@ _08096AAE: bx r1 thumb_func_end sub_8096A78 - thumb_func_start sub_8096AB4 -sub_8096AB4: + thumb_func_start GetJobSlotInfo +GetJobSlotInfo: lsls r0, 24 lsrs r0, 24 ldr r2, _08096AC8 @@ -2153,7 +2153,7 @@ sub_8096AB4: bx lr .align 2, 0 _08096AC8: .4byte gUnknown_203B490 - thumb_func_end sub_8096AB4 + thumb_func_end GetJobSlotInfo thumb_func_start IsJobSlotEmpty IsJobSlotEmpty: @@ -2191,7 +2191,7 @@ sub_8096AF8: lsrs r0, 24 lsls r4, 24 lsrs r4, 24 - bl sub_8096AB4 + bl GetJobSlotInfo adds r3, r0, 0 movs r1, 0 strb r1, [r5] @@ -2275,7 +2275,7 @@ sub_8096B98: _08096BA0: lsls r0, r4, 24 lsrs r0, 24 - bl sub_8096AB4 + bl GetJobSlotInfo adds r1, r0, 0 ldrb r0, [r1] cmp r0, 0x6 @@ -2816,680 +2816,4 @@ _08096EFE: _08096F4C: .4byte gUnknown_203B490 thumb_func_end sub_8096EEC - thumb_func_start sub_8096F50 -sub_8096F50: - push {r4-r7,lr} - adds r4, r0, 0 - bl sub_8096EB0 - mov r12, r0 - movs r5, 0 - ldr r0, _08096F8C - ldr r7, [r0] - ldrb r6, [r4, 0x4] - movs r3, 0 -_08096F64: - movs r1, 0x8C - lsls r1, 2 - adds r0, r3, r1 - adds r2, r7, r0 - ldrb r0, [r2] - cmp r0, r6 - bne _08096F90 - ldrb r0, [r2, 0x1] - ldrb r1, [r4, 0x5] - cmp r0, r1 - bne _08096F90 - ldr r1, [r2, 0x4] - ldr r0, [r4, 0x8] - cmp r1, r0 - bne _08096F90 - ldr r0, [r2, 0x8] - cmp r0, r12 - bne _08096F90 - movs r0, 0x1 - b _08096F9A - .align 2, 0 -_08096F8C: .4byte gUnknown_203B490 -_08096F90: - adds r3, 0xC - adds r5, 0x1 - cmp r5, 0xF - ble _08096F64 - movs r0, 0 -_08096F9A: - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8096F50 - - thumb_func_start sub_8096FA0 -sub_8096FA0: - push {r4-r7,lr} - sub sp, 0x14 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl xxx_init_struct_8094924_restore_809485C - add r7, sp, 0x10 - ldr r6, _08097020 - movs r5, 0 - movs r4, 0x3 -_08096FB8: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_80971EC - adds r5, 0x14 - subs r4, 0x1 - cmp r4, 0 - bge _08096FB8 - ldr r6, _08097020 - movs r5, 0x50 - movs r4, 0x7 -_08096FD0: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_80971EC - adds r5, 0x14 - subs r4, 0x1 - cmp r4, 0 - bge _08096FD0 - ldr r6, _08097020 - movs r5, 0xF0 - movs r4, 0x7 -_08096FE8: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_80971EC - adds r5, 0x14 - subs r4, 0x1 - cmp r4, 0 - bge _08096FE8 - movs r4, 0 - movs r6, 0x1 - ldr r5, _08097020 -_08097000: - mov r0, sp - adds r1, r7, 0 - movs r2, 0x1 - bl RestoreIntegerBits - ldr r1, [sp, 0x10] - ands r1, r6 - cmp r1, 0 - beq _08097024 - ldr r0, [r5] - movs r1, 0xBC - lsls r1, 2 - adds r0, r1 - adds r0, r4 - strb r6, [r0] - b _08097030 - .align 2, 0 -_08097020: .4byte gUnknown_203B490 -_08097024: - ldr r0, [r5] - movs r2, 0xBC - lsls r2, 2 - adds r0, r2 - adds r0, r4 - strb r1, [r0] -_08097030: - adds r4, 0x1 - cmp r4, 0x37 - ble _08097000 - mov r0, sp - adds r1, r7, 0 - movs r2, 0x1 - bl RestoreIntegerBits - ldr r1, [sp, 0x10] - movs r2, 0x1 - ands r1, r2 - cmp r1, 0 - beq _0809705C - ldr r0, _08097058 - ldr r0, [r0] - movs r1, 0xCA - lsls r1, 2 - adds r0, r1 - strb r2, [r0] - b _08097068 - .align 2, 0 -_08097058: .4byte gUnknown_203B490 -_0809705C: - ldr r0, _080970D4 - ldr r0, [r0] - movs r2, 0xCA - lsls r2, 2 - adds r0, r2 - strb r1, [r0] -_08097068: - ldr r4, _080970D4 - ldr r1, [r4] - movs r0, 0xC8 - lsls r0, 1 - adds r1, r0 - movs r2, 0xA0 - lsls r2, 1 - mov r0, sp - bl RestoreIntegerBits - ldr r1, [r4] - movs r2, 0xDC - lsls r2, 1 - adds r1, r2 - movs r2, 0xF0 - lsls r2, 2 - mov r0, sp - bl RestoreIntegerBits - adds r6, r4, 0 - movs r5, 0x8C - lsls r5, 2 - movs r4, 0xF -_08097096: - ldr r1, [r6] - adds r1, r5 - adds r1, 0x8 - mov r0, sp - movs r2, 0x20 - bl RestoreIntegerBits - ldr r1, [r6] - adds r1, r5 - adds r1, 0x4 - mov r0, sp - movs r2, 0x18 - bl RestoreIntegerBits - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl xxx_restore_poke_sub_4_8090314 - adds r5, 0xC - subs r4, 0x1 - cmp r4, 0 - bge _08097096 - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x14 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080970D4: .4byte gUnknown_203B490 - thumb_func_end sub_8096FA0 - - thumb_func_start sub_80970D8 -sub_80970D8: - push {r4-r7,lr} - sub sp, 0x14 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl xxx_init_struct_8094924_save_809486C - add r7, sp, 0x10 - ldr r6, _080971E8 - movs r5, 0 - movs r4, 0x3 -_080970F0: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_8097270 - adds r5, 0x14 - subs r4, 0x1 - cmp r4, 0 - bge _080970F0 - ldr r6, _080971E8 - movs r5, 0x50 - movs r4, 0x7 -_08097108: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_8097270 - adds r5, 0x14 - subs r4, 0x1 - cmp r4, 0 - bge _08097108 - ldr r6, _080971E8 - movs r5, 0xF0 - movs r4, 0x7 -_08097120: - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl sub_8097270 - adds r5, 0x14 - subs r4, 0x1 - cmp r4, 0 - bge _08097120 - movs r4, 0 -_08097134: - ldr r0, _080971E8 - ldr r0, [r0] - movs r1, 0xBC - lsls r1, 2 - adds r0, r1 - adds r0, r4 - ldrb r0, [r0] - cmp r0, 0 - beq _0809714A - movs r0, 0x1 - negs r0, r0 -_0809714A: - str r0, [sp, 0x10] - mov r0, sp - adds r1, r7, 0 - movs r2, 0x1 - bl SaveIntegerBits - adds r4, 0x1 - cmp r4, 0x37 - ble _08097134 - ldr r0, _080971E8 - ldr r0, [r0] - movs r1, 0xCA - lsls r1, 2 - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - beq _08097170 - movs r0, 0x1 - negs r0, r0 -_08097170: - str r0, [sp, 0x10] - mov r0, sp - adds r1, r7, 0 - movs r2, 0x1 - bl SaveIntegerBits - ldr r4, _080971E8 - ldr r1, [r4] - movs r0, 0xC8 - lsls r0, 1 - adds r1, r0 - movs r2, 0xA0 - lsls r2, 1 - mov r0, sp - bl SaveIntegerBits - ldr r1, [r4] - movs r0, 0xDC - lsls r0, 1 - adds r1, r0 - movs r2, 0xF0 - lsls r2, 2 - mov r0, sp - bl SaveIntegerBits - adds r6, r4, 0 - movs r5, 0x8C - lsls r5, 2 - movs r4, 0xF -_080971AA: - ldr r1, [r6] - adds r1, r5 - adds r1, 0x8 - mov r0, sp - movs r2, 0x20 - bl SaveIntegerBits - ldr r1, [r6] - adds r1, r5 - adds r1, 0x4 - mov r0, sp - movs r2, 0x18 - bl SaveIntegerBits - ldr r1, [r6] - adds r1, r5 - mov r0, sp - bl xxx_save_poke_sub_4_80902F4 - adds r5, 0xC - subs r4, 0x1 - cmp r4, 0 - bge _080971AA - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x14 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_080971E8: .4byte gUnknown_203B490 - thumb_func_end sub_80970D8 - - thumb_func_start sub_80971EC -sub_80971EC: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - bl RestoreIntegerBits - adds r1, r5, 0x1 - adds r0, r4, 0 - movs r2, 0x3 - bl RestoreIntegerBits - adds r1, r5, 0x2 - adds r0, r4, 0 - movs r2, 0x4 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0xC - adds r0, r4, 0 - movs r2, 0x9 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0xE - adds r0, r4, 0 - movs r2, 0x9 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x10 - adds r0, r4, 0 - movs r2, 0x8 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x11 - adds r0, r4, 0 - movs r2, 0x4 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x12 - adds r0, r4, 0 - movs r2, 0x8 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x13 - adds r0, r4, 0 - movs r2, 0x6 - bl RestoreIntegerBits - adds r1, r5, 0 - adds r1, 0x8 - adds r0, r4, 0 - movs r2, 0x18 - bl RestoreIntegerBits - adds r1, r5, 0x4 - adds r0, r4, 0 - bl xxx_restore_poke_sub_4_8090314 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80971EC - - thumb_func_start sub_8097270 -sub_8097270: - push {r4,r5,lr} - adds r4, r0, 0 - adds r5, r1, 0 - movs r2, 0x4 - bl SaveIntegerBits - adds r1, r5, 0x1 - adds r0, r4, 0 - movs r2, 0x3 - bl SaveIntegerBits - adds r1, r5, 0x2 - adds r0, r4, 0 - movs r2, 0x4 - bl SaveIntegerBits - adds r1, r5, 0 - adds r1, 0xC - adds r0, r4, 0 - movs r2, 0x9 - bl SaveIntegerBits - adds r1, r5, 0 - adds r1, 0xE - adds r0, r4, 0 - movs r2, 0x9 - bl SaveIntegerBits - adds r1, r5, 0 - adds r1, 0x10 - adds r0, r4, 0 - movs r2, 0x8 - bl SaveIntegerBits - adds r1, r5, 0 - adds r1, 0x11 - adds r0, r4, 0 - movs r2, 0x4 - bl SaveIntegerBits - adds r1, r5, 0 - adds r1, 0x12 - adds r0, r4, 0 - movs r2, 0x8 - bl SaveIntegerBits - adds r1, r5, 0 - adds r1, 0x13 - adds r0, r4, 0 - movs r2, 0x6 - bl SaveIntegerBits - adds r1, r5, 0 - adds r1, 0x8 - adds r0, r4, 0 - movs r2, 0x18 - bl SaveIntegerBits - adds r1, r5, 0x4 - adds r0, r4, 0 - bl xxx_save_poke_sub_4_80902F4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8097270 - - thumb_func_start sub_80972F4 -sub_80972F4: - push {lr} - movs r0, 0 - movs r1, 0x2B - bl sub_80015C0 - movs r0, 0 - movs r1, 0x2C - bl sub_80015C0 - movs r0, 0 - movs r1, 0x2D - bl sub_80015C0 - pop {r0} - bx r0 - thumb_func_end sub_80972F4 - - thumb_func_start nullsub_128 -nullsub_128: - bx lr - thumb_func_end nullsub_128 - - thumb_func_start sub_8097318 -sub_8097318: - push {lr} - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xD - bne _08097326 - movs r0, 0 - b _08097338 -_08097326: - lsls r2, r0, 16 - lsrs r2, 16 - movs r0, 0 - movs r1, 0x2B - bl sub_8001784 - cmp r0, 0 - beq _08097338 - movs r0, 0x1 -_08097338: - pop {r1} - bx r1 - thumb_func_end sub_8097318 - - thumb_func_start sub_809733C -sub_809733C: - push {r4-r6,lr} - lsls r0, 16 - asrs r4, r0, 16 - lsls r1, 24 - lsrs r6, r1, 24 - cmp r4, 0xD - beq _0809737C - lsls r0, r4, 16 - lsrs r5, r0, 16 - movs r0, 0 - movs r1, 0x2C - adds r2, r5, 0 - bl sub_8001784 - cmp r0, 0 - bne _0809737C - movs r0, 0 - movs r1, 0x2B - adds r2, r5, 0 - adds r3, r6, 0 - bl sub_800199C - cmp r6, 0 - beq _0809737C - cmp r4, 0xE - blt _0809737C - cmp r4, 0xF - ble _08097378 - cmp r4, 0x1C - bne _0809737C -_08097378: - bl sub_809674C -_0809737C: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_809733C - - thumb_func_start sub_8097384 -sub_8097384: - push {lr} - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xD - bne _08097392 - movs r0, 0 - b _080973A4 -_08097392: - lsls r2, r0, 16 - lsrs r2, 16 - movs r0, 0 - movs r1, 0x2C - bl sub_8001784 - cmp r0, 0 - beq _080973A4 - movs r0, 0x1 -_080973A4: - pop {r1} - bx r1 - thumb_func_end sub_8097384 - - thumb_func_start sub_80973A8 -sub_80973A8: - push {r4-r6,lr} - lsls r0, 16 - asrs r0, 16 - lsls r1, 24 - lsrs r6, r1, 24 - cmp r0, 0xD - beq _080973EE - lsls r5, r0, 16 - cmp r6, 0 - beq _080973E2 - bl sub_80A26B8 - lsls r0, 16 - asrs r4, r0, 16 - lsrs r2, r5, 16 - movs r0, 0 - movs r1, 0x2B - movs r3, 0 - bl sub_800199C - movs r0, 0x1 - negs r0, r0 - cmp r4, r0 - beq _080973E2 - movs r0, 0 - movs r1, 0x12 - adds r2, r4, 0 - bl sub_80018D8 -_080973E2: - lsrs r2, r5, 16 - movs r0, 0 - movs r1, 0x2C - adds r3, r6, 0 - bl sub_800199C -_080973EE: - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end sub_80973A8 - - thumb_func_start sub_80973F4 -sub_80973F4: - push {lr} - lsls r0, 16 - asrs r0, 16 - cmp r0, 0xD - bne _08097402 - movs r0, 0 - b _08097414 -_08097402: - lsls r2, r0, 16 - lsrs r2, 16 - movs r0, 0 - movs r1, 0x2D - bl sub_8001784 - cmp r0, 0 - beq _08097414 - movs r0, 0x1 -_08097414: - pop {r1} - bx r1 - thumb_func_end sub_80973F4 - - thumb_func_start sub_8097418 -sub_8097418: - push {r4-r7,lr} - lsls r0, 16 - asrs r5, r0, 16 - lsls r1, 24 - lsrs r7, r1, 24 - cmp r5, 0xD - beq _08097470 - lsls r6, r5, 16 - cmp r7, 0 - beq _08097464 - lsrs r2, r6, 16 - movs r0, 0 - movs r1, 0x2C - movs r3, 0 - bl sub_800199C - cmp r5, 0x1E - bgt _08097464 - lsls r0, r5, 3 - ldr r1, _08097478 - adds r4, r0, r1 - ldrb r0, [r4, 0x4] - cmp r0, 0xFF - beq _0809744C - bl sub_8097FA8 -_0809744C: - ldrb r0, [r4, 0x5] - cmp r0, 0xFF - beq _08097456 - bl sub_8097FA8 -_08097456: - cmp r5, 0x9 - bne _08097460 - movs r0, 0x1F - bl sub_8097FA8 -_08097460: - bl sub_8097FF8 -_08097464: - lsrs r2, r6, 16 - movs r0, 0 - movs r1, 0x2D - adds r3, r7, 0 - bl sub_800199C -_08097470: - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08097478: .4byte gStoryMissionText - thumb_func_end sub_8097418 - .align 2,0 diff --git a/asm/code_8097318.s b/asm/code_8097318.s new file mode 100644 index 0000000..d8acc07 --- /dev/null +++ b/asm/code_8097318.s @@ -0,0 +1,207 @@ + #include "asm/constants/gba_constants.inc" + #include "asm/macros.inc" + + .syntax unified + + .text + + thumb_func_start sub_8097318 +sub_8097318: + push {lr} + lsls r0, 16 + asrs r0, 16 + cmp r0, 0xD + bne _08097326 + movs r0, 0 + b _08097338 +_08097326: + lsls r2, r0, 16 + lsrs r2, 16 + movs r0, 0 + movs r1, 0x2B + bl sub_8001784 + cmp r0, 0 + beq _08097338 + movs r0, 0x1 +_08097338: + pop {r1} + bx r1 + thumb_func_end sub_8097318 + + thumb_func_start sub_809733C +sub_809733C: + push {r4-r6,lr} + lsls r0, 16 + asrs r4, r0, 16 + lsls r1, 24 + lsrs r6, r1, 24 + cmp r4, 0xD + beq _0809737C + lsls r0, r4, 16 + lsrs r5, r0, 16 + movs r0, 0 + movs r1, 0x2C + adds r2, r5, 0 + bl sub_8001784 + cmp r0, 0 + bne _0809737C + movs r0, 0 + movs r1, 0x2B + adds r2, r5, 0 + adds r3, r6, 0 + bl sub_800199C + cmp r6, 0 + beq _0809737C + cmp r4, 0xE + blt _0809737C + cmp r4, 0xF + ble _08097378 + cmp r4, 0x1C + bne _0809737C +_08097378: + bl sub_809674C +_0809737C: + pop {r4-r6} + pop {r0} + bx r0 + thumb_func_end sub_809733C + + thumb_func_start sub_8097384 +sub_8097384: + push {lr} + lsls r0, 16 + asrs r0, 16 + cmp r0, 0xD + bne _08097392 + movs r0, 0 + b _080973A4 +_08097392: + lsls r2, r0, 16 + lsrs r2, 16 + movs r0, 0 + movs r1, 0x2C + bl sub_8001784 + cmp r0, 0 + beq _080973A4 + movs r0, 0x1 +_080973A4: + pop {r1} + bx r1 + thumb_func_end sub_8097384 + + thumb_func_start sub_80973A8 +sub_80973A8: + push {r4-r6,lr} + lsls r0, 16 + asrs r0, 16 + lsls r1, 24 + lsrs r6, r1, 24 + cmp r0, 0xD + beq _080973EE + lsls r5, r0, 16 + cmp r6, 0 + beq _080973E2 + bl sub_80A26B8 + lsls r0, 16 + asrs r4, r0, 16 + lsrs r2, r5, 16 + movs r0, 0 + movs r1, 0x2B + movs r3, 0 + bl sub_800199C + movs r0, 0x1 + negs r0, r0 + cmp r4, r0 + beq _080973E2 + movs r0, 0 + movs r1, 0x12 + adds r2, r4, 0 + bl sub_80018D8 +_080973E2: + lsrs r2, r5, 16 + movs r0, 0 + movs r1, 0x2C + adds r3, r6, 0 + bl sub_800199C +_080973EE: + pop {r4-r6} + pop {r0} + bx r0 + thumb_func_end sub_80973A8 + + thumb_func_start sub_80973F4 +sub_80973F4: + push {lr} + lsls r0, 16 + asrs r0, 16 + cmp r0, 0xD + bne _08097402 + movs r0, 0 + b _08097414 +_08097402: + lsls r2, r0, 16 + lsrs r2, 16 + movs r0, 0 + movs r1, 0x2D + bl sub_8001784 + cmp r0, 0 + beq _08097414 + movs r0, 0x1 +_08097414: + pop {r1} + bx r1 + thumb_func_end sub_80973F4 + + thumb_func_start sub_8097418 +sub_8097418: + push {r4-r7,lr} + lsls r0, 16 + asrs r5, r0, 16 + lsls r1, 24 + lsrs r7, r1, 24 + cmp r5, 0xD + beq _08097470 + lsls r6, r5, 16 + cmp r7, 0 + beq _08097464 + lsrs r2, r6, 16 + movs r0, 0 + movs r1, 0x2C + movs r3, 0 + bl sub_800199C + cmp r5, 0x1E + bgt _08097464 + lsls r0, r5, 3 + ldr r1, _08097478 + adds r4, r0, r1 + ldrb r0, [r4, 0x4] + cmp r0, 0xFF + beq _0809744C + bl sub_8097FA8 +_0809744C: + ldrb r0, [r4, 0x5] + cmp r0, 0xFF + beq _08097456 + bl sub_8097FA8 +_08097456: + cmp r5, 0x9 + bne _08097460 + movs r0, 0x1F + bl sub_8097FA8 +_08097460: + bl sub_8097FF8 +_08097464: + lsrs r2, r6, 16 + movs r0, 0 + movs r1, 0x2D + adds r3, r7, 0 + bl sub_800199C +_08097470: + pop {r4-r7} + pop {r0} + bx r0 + .align 2, 0 +_08097478: .4byte gStoryMissionText + thumb_func_end sub_8097418 + + .align 2,0 diff --git a/asm/code_8097670.s b/asm/code_8097670.s index c4d68ec..d6d224f 100644 --- a/asm/code_8097670.s +++ b/asm/code_8097670.s @@ -5,76 +5,6 @@ .text - thumb_func_start sub_80978C8 -sub_80978C8: - push {lr} - lsls r0, 16 - asrs r0, 16 - bl GetBaseSpeciesNoUnown - lsls r0, 16 - asrs r3, r0, 16 - ldr r0, _080978FC - ldr r2, [r0] - adds r0, r3, 0 - cmp r3, 0 - bge _080978E2 - adds r0, 0x1F -_080978E2: - asrs r0, 5 - lsls r1, r0, 2 - adds r2, 0x54 - adds r2, r1 - lsls r0, 5 - subs r0, r3, r0 - movs r1, 0x1 - lsls r1, r0 - ldr r0, [r2] - orrs r0, r1 - str r0, [r2] - pop {r0} - bx r0 - .align 2, 0 -_080978FC: .4byte gUnknown_203B494 - thumb_func_end sub_80978C8 - - thumb_func_start sub_8097900 -sub_8097900: - push {lr} - lsls r0, 16 - asrs r0, 16 - bl GetBaseSpeciesNoUnown - lsls r0, 16 - asrs r3, r0, 16 - ldr r0, _08097938 - ldr r2, [r0] - adds r0, r3, 0 - cmp r3, 0 - bge _0809791A - adds r0, 0x1F -_0809791A: - asrs r0, 5 - lsls r1, r0, 2 - adds r2, 0x1C - adds r2, r1 - lsls r0, 5 - subs r0, r3, r0 - movs r1, 0x1 - lsls r1, r0 - ldr r0, [r2] - ands r0, r1 - cmp r0, 0 - bne _0809793C - movs r0, 0 - b _0809793E - .align 2, 0 -_08097938: .4byte gUnknown_203B494 -_0809793C: - movs r0, 0x1 -_0809793E: - pop {r1} - bx r1 - thumb_func_end sub_8097900 - thumb_func_start sub_8097944 sub_8097944: push {r4-r7,lr} @@ -453,405 +383,4 @@ _08097C10: .4byte 0x00000163 _08097C14: .4byte gUnknown_203B494 thumb_func_end sub_8097944 - thumb_func_start sub_8097C18 -sub_8097C18: - push {r4-r6,lr} - adds r5, r0, 0 - bl sub_8097944 - ldr r4, _08097CBC - ldr r1, [r4] - adds r1, 0x4 - adds r0, r5, 0 - movs r2, 0x11 - bl SaveIntegerBits - ldr r1, [r4] - adds r1, 0x8 - adds r0, r5, 0 - movs r2, 0x11 - bl SaveIntegerBits - ldr r1, [r4] - adds r1, 0xC - adds r0, r5, 0 - movs r2, 0x11 - bl SaveIntegerBits - ldr r1, [r4] - adds r0, r5, 0 - movs r2, 0x20 - bl SaveIntegerBits - ldr r1, [r4] - adds r1, 0x14 - adds r0, r5, 0 - movs r2, 0xE - bl SaveIntegerBits - ldr r1, [r4] - adds r1, 0x16 - adds r0, r5, 0 - movs r2, 0xE - bl SaveIntegerBits - ldr r1, [r4] - adds r1, 0x18 - adds r0, r5, 0 - movs r2, 0x9 - bl SaveIntegerBits - ldr r1, [r4] - adds r1, 0xC0 - adds r0, r5, 0 - movs r2, 0x11 - bl SaveIntegerBits - ldr r1, [r4] - adds r1, 0x1C - movs r6, 0xE0 - lsls r6, 1 - adds r0, r5, 0 - adds r2, r6, 0 - bl SaveIntegerBits - ldr r1, [r4] - adds r1, 0x54 - adds r0, r5, 0 - adds r2, r6, 0 - bl SaveIntegerBits - ldr r1, [r4] - adds r1, 0x8C - movs r2, 0xD0 - lsls r2, 1 - adds r0, r5, 0 - bl SaveIntegerBits - ldr r1, [r4] - adds r1, 0x10 - adds r0, r5, 0 - bl xxx_save_poke_sub_4_80902F4 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08097CBC: .4byte gUnknown_203B494 - thumb_func_end sub_8097C18 - - thumb_func_start sub_8097CC0 -sub_8097CC0: - push {r4-r6,lr} - adds r5, r0, 0 - ldr r4, _08097D5C - ldr r1, [r4] - adds r1, 0x4 - movs r2, 0x11 - bl RestoreIntegerBits - ldr r1, [r4] - adds r1, 0x8 - adds r0, r5, 0 - movs r2, 0x11 - bl RestoreIntegerBits - ldr r1, [r4] - adds r1, 0xC - adds r0, r5, 0 - movs r2, 0x11 - bl RestoreIntegerBits - ldr r1, [r4] - adds r0, r5, 0 - movs r2, 0x20 - bl RestoreIntegerBits - ldr r1, [r4] - adds r1, 0x14 - adds r0, r5, 0 - movs r2, 0xE - bl RestoreIntegerBits - ldr r1, [r4] - adds r1, 0x16 - adds r0, r5, 0 - movs r2, 0xE - bl RestoreIntegerBits - ldr r1, [r4] - adds r1, 0x18 - adds r0, r5, 0 - movs r2, 0x9 - bl RestoreIntegerBits - ldr r1, [r4] - adds r1, 0xC0 - adds r0, r5, 0 - movs r2, 0x11 - bl RestoreIntegerBits - ldr r1, [r4] - adds r1, 0x1C - movs r6, 0xE0 - lsls r6, 1 - adds r0, r5, 0 - adds r2, r6, 0 - bl RestoreIntegerBits - ldr r1, [r4] - adds r1, 0x54 - adds r0, r5, 0 - adds r2, r6, 0 - bl RestoreIntegerBits - ldr r1, [r4] - adds r1, 0x8C - movs r2, 0xD0 - lsls r2, 1 - adds r0, r5, 0 - bl RestoreIntegerBits - ldr r1, [r4] - adds r1, 0x10 - adds r0, r5, 0 - bl xxx_restore_poke_sub_4_8090314 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_08097D5C: .4byte gUnknown_203B494 - thumb_func_end sub_8097CC0 - - thumb_func_start sub_8097D60 -sub_8097D60: - push {lr} - sub sp, 0x10 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl xxx_init_struct_8094924_save_809486C - mov r0, sp - bl WriteGameOptions - mov r0, sp - bl WritePlayTime - mov r0, sp - bl sub_8097C18 - mov r0, sp - bl WriteExclusivePokemon - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x10 - pop {r1} - bx r1 - thumb_func_end sub_8097D60 - - thumb_func_start sub_8097D98 -sub_8097D98: - push {lr} - sub sp, 0x10 - adds r3, r0, 0 - adds r2, r1, 0 - mov r0, sp - adds r1, r3, 0 - bl xxx_init_struct_8094924_restore_809485C - mov r0, sp - bl ReadGameOptions - mov r0, sp - bl ReadPlayTime - mov r0, sp - bl sub_8097CC0 - mov r0, sp - bl ReadExclusivePokemon - mov r0, sp - bl nullsub_102 - ldr r0, [sp, 0x8] - add sp, 0x10 - pop {r1} - bx r1 - thumb_func_end sub_8097D98 - - thumb_func_start sub_8097DD0 -sub_8097DD0: - push {lr} - adds r2, r0, 0 - adds r3, r1, 0 - ldr r1, [r2] - ldr r0, [r3] - cmp r1, r0 - bne _08097DEA - ldr r1, [r2, 0x4] - ldr r0, [r3, 0x4] - cmp r1, r0 - bne _08097DEA - movs r0, 0x1 - b _08097DEC -_08097DEA: - movs r0, 0 -_08097DEC: - pop {r1} - bx r1 - thumb_func_end sub_8097DD0 - - thumb_func_start sub_8097DF0 -sub_8097DF0: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x1F8 - mov r8, r0 - str r1, [sp, 0x1F0] - movs r0, 0 - mov r9, r0 - movs r7, 0 - ldr r1, _08097E3C - ldr r0, [r1] - cmp r0, 0 - beq _08097E6E -_08097E0E: - movs r4, 0 - lsls r5, r7, 3 - lsls r1, r7, 2 - mov r10, r1 - adds r6, r7, 0x1 - ldr r2, _08097E3C - adds r3, r5, r2 - add r1, sp, 0x18C -_08097E1E: - ldr r0, [r3] - adds r0, r4 - ldrb r2, [r0] - cmp r2, 0x23 - bne _08097E40 - ldrb r0, [r0, 0x1] - cmp r0, 0x72 - bne _08097E40 - strb r2, [r1] - adds r1, 0x1 - strb r0, [r1] - adds r1, 0x1 - movs r0, 0 - strb r0, [r1] - b _08097E50 - .align 2, 0 -_08097E3C: .4byte gStatusDescriptions -_08097E40: - ldr r0, [r3] - adds r0, r4 - ldrb r0, [r0] - strb r0, [r1] - adds r1, 0x1 - adds r4, 0x1 - cmp r4, 0x63 - ble _08097E1E -_08097E50: - add r0, sp, 0x18C - bl strlen - mov r1, sp - add r1, r10 - str r0, [r1] - adds r7, r6, 0 - cmp r6, 0x62 - bgt _08097E6E - lsls r0, r6, 3 - ldr r1, _08097EB4 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - bne _08097E0E -_08097E6E: - mov r2, r8 - ldrb r0, [r2] - cmp r0, 0 - beq _08097F2C - ldr r3, _08097EB4 -_08097E78: - cmp r0, 0x23 - bne _08097F08 - movs r7, 0 - adds r1, r3, 0 - ldr r0, [r1] - cmp r0, 0 - beq _08097F20 - mov r2, r9 - lsls r0, r2, 2 - ldr r2, [sp, 0x1F0] - adds r0, r2 - mov r10, r0 -_08097E90: - lsls r4, r7, 3 - adds r0, r4, r1 - ldr r0, [r0] - lsls r1, r7, 2 - add r1, sp - ldr r2, [r1] - mov r1, r8 - str r3, [sp, 0x1F4] - bl sub_800B2D4 - lsls r0, 24 - adds r5, r4, 0 - adds r6, r7, 0x1 - ldr r3, [sp, 0x1F4] - cmp r0, 0 - bne _08097EF0 - movs r4, 0 - b _08097EBA - .align 2, 0 -_08097EB4: .4byte gStatusDescriptions -_08097EB8: - adds r4, 0x1 -_08097EBA: - cmp r4, r9 - bge _08097ED6 - adds r0, r5, r3 - lsls r1, r4, 2 - ldr r2, [sp, 0x1F0] - adds r1, r2 - ldr r1, [r1] - str r3, [sp, 0x1F4] - bl sub_8097DD0 - lsls r0, 24 - ldr r3, [sp, 0x1F4] - cmp r0, 0 - beq _08097EB8 -_08097ED6: - cmp r4, r9 - bne _08097EF0 - mov r0, r9 - cmp r0, 0x3 - bgt _08097EF0 - adds r0, r5, r3 - mov r1, r10 - adds r1, 0x4 - mov r10, r1 - subs r1, 0x4 - stm r1!, {r0} - movs r2, 0x1 - add r9, r2 -_08097EF0: - adds r7, r6, 0 - cmp r6, 0x62 - bgt _08097F20 - ldr r1, _08097F04 - lsls r0, r6, 3 - adds r0, r1 - ldr r0, [r0] - cmp r0, 0 - bne _08097E90 - b _08097F20 - .align 2, 0 -_08097F04: .4byte gStatusDescriptions -_08097F08: - mov r0, r8 - ldrb r1, [r0] - adds r0, r1, 0 - adds r0, 0x7F - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x3 - bls _08097F1C - cmp r1, 0x87 - bne _08097F20 -_08097F1C: - movs r1, 0x1 - add r8, r1 -_08097F20: - movs r2, 0x1 - add r8, r2 - mov r1, r8 - ldrb r0, [r1] - cmp r0, 0 - bne _08097E78 -_08097F2C: - mov r0, r9 - add sp, 0x1F8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_8097DF0 - .align 2,0 diff --git a/asm/code_8097DD0.s b/asm/code_8097DD0.s new file mode 100644 index 0000000..36f15d9 --- /dev/null +++ b/asm/code_8097DD0.s @@ -0,0 +1,213 @@ + #include "asm/constants/gba_constants.inc" + #include "asm/macros.inc" + + .syntax unified + + .text + + thumb_func_start sub_8097DD0 +sub_8097DD0: + push {lr} + adds r2, r0, 0 + adds r3, r1, 0 + ldr r1, [r2] + ldr r0, [r3] + cmp r1, r0 + bne _08097DEA + ldr r1, [r2, 0x4] + ldr r0, [r3, 0x4] + cmp r1, r0 + bne _08097DEA + movs r0, 0x1 + b _08097DEC +_08097DEA: + movs r0, 0 +_08097DEC: + pop {r1} + bx r1 + thumb_func_end sub_8097DD0 + + thumb_func_start sub_8097DF0 +sub_8097DF0: + push {r4-r7,lr} + mov r7, r10 + mov r6, r9 + mov r5, r8 + push {r5-r7} + sub sp, 0x1F8 + mov r8, r0 + str r1, [sp, 0x1F0] + movs r0, 0 + mov r9, r0 + movs r7, 0 + ldr r1, _08097E3C + ldr r0, [r1] + cmp r0, 0 + beq _08097E6E +_08097E0E: + movs r4, 0 + lsls r5, r7, 3 + lsls r1, r7, 2 + mov r10, r1 + adds r6, r7, 0x1 + ldr r2, _08097E3C + adds r3, r5, r2 + add r1, sp, 0x18C +_08097E1E: + ldr r0, [r3] + adds r0, r4 + ldrb r2, [r0] + cmp r2, 0x23 + bne _08097E40 + ldrb r0, [r0, 0x1] + cmp r0, 0x72 + bne _08097E40 + strb r2, [r1] + adds r1, 0x1 + strb r0, [r1] + adds r1, 0x1 + movs r0, 0 + strb r0, [r1] + b _08097E50 + .align 2, 0 +_08097E3C: .4byte gStatusDescriptions +_08097E40: + ldr r0, [r3] + adds r0, r4 + ldrb r0, [r0] + strb r0, [r1] + adds r1, 0x1 + adds r4, 0x1 + cmp r4, 0x63 + ble _08097E1E +_08097E50: + add r0, sp, 0x18C + bl strlen + mov r1, sp + add r1, r10 + str r0, [r1] + adds r7, r6, 0 + cmp r6, 0x62 + bgt _08097E6E + lsls r0, r6, 3 + ldr r1, _08097EB4 + adds r0, r1 + ldr r0, [r0] + cmp r0, 0 + bne _08097E0E +_08097E6E: + mov r2, r8 + ldrb r0, [r2] + cmp r0, 0 + beq _08097F2C + ldr r3, _08097EB4 +_08097E78: + cmp r0, 0x23 + bne _08097F08 + movs r7, 0 + adds r1, r3, 0 + ldr r0, [r1] + cmp r0, 0 + beq _08097F20 + mov r2, r9 + lsls r0, r2, 2 + ldr r2, [sp, 0x1F0] + adds r0, r2 + mov r10, r0 +_08097E90: + lsls r4, r7, 3 + adds r0, r4, r1 + ldr r0, [r0] + lsls r1, r7, 2 + add r1, sp + ldr r2, [r1] + mov r1, r8 + str r3, [sp, 0x1F4] + bl sub_800B2D4 + lsls r0, 24 + adds r5, r4, 0 + adds r6, r7, 0x1 + ldr r3, [sp, 0x1F4] + cmp r0, 0 + bne _08097EF0 + movs r4, 0 + b _08097EBA + .align 2, 0 +_08097EB4: .4byte gStatusDescriptions +_08097EB8: + adds r4, 0x1 +_08097EBA: + cmp r4, r9 + bge _08097ED6 + adds r0, r5, r3 + lsls r1, r4, 2 + ldr r2, [sp, 0x1F0] + adds r1, r2 + ldr r1, [r1] + str r3, [sp, 0x1F4] + bl sub_8097DD0 + lsls r0, 24 + ldr r3, [sp, 0x1F4] + cmp r0, 0 + beq _08097EB8 +_08097ED6: + cmp r4, r9 + bne _08097EF0 + mov r0, r9 + cmp r0, 0x3 + bgt _08097EF0 + adds r0, r5, r3 + mov r1, r10 + adds r1, 0x4 + mov r10, r1 + subs r1, 0x4 + stm r1!, {r0} + movs r2, 0x1 + add r9, r2 +_08097EF0: + adds r7, r6, 0 + cmp r6, 0x62 + bgt _08097F20 + ldr r1, _08097F04 + lsls r0, r6, 3 + adds r0, r1 + ldr r0, [r0] + cmp r0, 0 + bne _08097E90 + b _08097F20 + .align 2, 0 +_08097F04: .4byte gStatusDescriptions +_08097F08: + mov r0, r8 + ldrb r1, [r0] + adds r0, r1, 0 + adds r0, 0x7F + lsls r0, 24 + lsrs r0, 24 + cmp r0, 0x3 + bls _08097F1C + cmp r1, 0x87 + bne _08097F20 +_08097F1C: + movs r1, 0x1 + add r8, r1 +_08097F20: + movs r2, 0x1 + add r8, r2 + mov r1, r8 + ldrb r0, [r1] + cmp r0, 0 + bne _08097E78 +_08097F2C: + mov r0, r9 + add sp, 0x1F8 + pop {r3-r5} + mov r8, r3 + mov r9, r4 + mov r10, r5 + pop {r4-r7} + pop {r1} + bx r1 + thumb_func_end sub_8097DF0 + + .align 2,0 diff --git a/asm/code_809017C.s b/asm/dungeon.s index fefed28..2e786f9 100644 --- a/asm/code_809017C.s +++ b/asm/dungeon.s @@ -57,33 +57,4 @@ _080901D0: .4byte 0x000003e6 _080901D4: .4byte gUnknown_8107828 thumb_func_end sub_809017C - thumb_func_start sub_80901D8 -sub_80901D8: - push {lr} - adds r3, r0, 0 - adds r2, r1, 0 - ldrb r0, [r2] - subs r0, 0x4B - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x16 - bhi _080901FE - movs r0, 0x34 - strb r0, [r3] - ldrb r1, [r2] - subs r1, 0x4B - lsls r0, r1, 1 - adds r0, r1 - ldrb r2, [r2, 0x1] - adds r0, r2 - strb r0, [r3, 0x1] - b _08090202 -_080901FE: - ldr r0, [r2] - str r0, [r3] -_08090202: - pop {r0} - bx r0 - thumb_func_end sub_80901D8 - .align 2, 0 @ Don't pad with nop. diff --git a/asm/code_8090208.s b/asm/dungeon_2.s index 5b097fe..2086666 100644 --- a/asm/code_8090208.s +++ b/asm/dungeon_2.s @@ -5,110 +5,6 @@ .text - thumb_func_start sub_8090298 -sub_8090298: - push {lr} - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - subs r0, 0x4B - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x16 - bhi _080902AE - movs r0, 0x4 - b _080902C2 -_080902AE: - cmp r1, 0x3E - bhi _080902C0 - ldr r0, _080902BC - adds r0, r1, r0 - ldrb r0, [r0] - b _080902C2 - .align 2, 0 -_080902BC: .4byte gUnknown_81077A8 -_080902C0: - movs r0, 0x1 -_080902C2: - pop {r1} - bx r1 - thumb_func_end sub_8090298 - - thumb_func_start sub_80902C8 -sub_80902C8: - push {lr} - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - subs r0, 0x4B - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x16 - bls _080902EC - cmp r1, 0x3E - bhi _080902EC - ldr r0, _080902E8 - adds r0, r1, r0 - ldrb r0, [r0] - b _080902EE - .align 2, 0 -_080902E8: .4byte gUnknown_81077E8 -_080902EC: - movs r0, 0 -_080902EE: - pop {r1} - bx r1 - thumb_func_end sub_80902C8 - - thumb_func_start xxx_save_poke_sub_4_80902F4 -xxx_save_poke_sub_4_80902F4: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r2, 0x7 - bl SaveIntegerBits - adds r4, 0x1 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x7 - bl SaveIntegerBits - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end xxx_save_poke_sub_4_80902F4 - - thumb_func_start xxx_restore_poke_sub_4_8090314 -xxx_restore_poke_sub_4_8090314: - push {r4,r5,lr} - adds r5, r0, 0 - adds r4, r1, 0 - movs r0, 0 - strb r0, [r4] - strb r0, [r4, 0x1] - adds r0, r5, 0 - movs r2, 0x7 - bl RestoreIntegerBits - adds r4, 0x1 - adds r0, r5, 0 - adds r1, r4, 0 - movs r2, 0x7 - bl RestoreIntegerBits - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end xxx_restore_poke_sub_4_8090314 - - thumb_func_start sub_809033C -sub_809033C: - lsls r0, 24 - ldr r1, _08090348 - lsrs r0, 20 - adds r0, r1 - ldrb r0, [r0, 0x1] - bx lr - .align 2, 0 -_08090348: .4byte gDungeons - thumb_func_end sub_809033C thumb_func_start sub_809034C sub_809034C: diff --git a/asm/friend_area_action_menu.s b/asm/friend_area_action_menu.s index 75d3dd2..0defc5d 100644 --- a/asm/friend_area_action_menu.s +++ b/asm/friend_area_action_menu.s @@ -472,266 +472,4 @@ _080277F4: .4byte gUnknown_80D4920 _080277F8: .4byte gUnknown_80D4928 thumb_func_end sub_8027794 - thumb_func_start sub_80277FC -sub_80277FC: - push {r4,lr} - movs r0, 0x1 - bl sub_8023A94 - cmp r0, 0x4 - bhi _080278AE - lsls r0, 2 - ldr r1, _08027814 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08027814: .4byte _08027818 - .align 2, 0 -_08027818: - .4byte _080278AE - .4byte _080278AE - .4byte _080278A4 - .4byte _0802782C - .4byte _08027868 -_0802782C: - bl sub_8023B44 - ldr r4, _08027860 - ldr r1, [r4] - strh r0, [r1, 0x8] - ldr r3, _08027864 - movs r0, 0x8 - ldrsh r2, [r1, r0] - movs r0, 0x58 - muls r2, r0 - ldr r0, [r3] - adds r0, r2 - str r0, [r1, 0x18] - ldrb r0, [r0, 0x2] - strb r0, [r1, 0x1C] - ldr r1, [r4] - movs r2, 0x8 - ldrsh r0, [r1, r2] - adds r1, 0x14 - bl PeekPokemonItem - movs r0, 0x3 - bl SetFriendAreaActionMenuState - b _080278AE - .align 2, 0 -_08027860: .4byte gUnknown_203B2BC -_08027864: .4byte gRecruitedPokemonRef -_08027868: - bl sub_8023B44 - ldr r4, _0802789C - ldr r1, [r4] - strh r0, [r1, 0x8] - ldr r3, _080278A0 - movs r0, 0x8 - ldrsh r2, [r1, r0] - movs r0, 0x58 - muls r2, r0 - ldr r0, [r3] - adds r0, r2 - str r0, [r1, 0x18] - ldrb r0, [r0, 0x2] - strb r0, [r1, 0x1C] - ldr r1, [r4] - movs r2, 0x8 - ldrsh r0, [r1, r2] - adds r1, 0x14 - bl PeekPokemonItem - movs r0, 0x4 - bl SetFriendAreaActionMenuState - b _080278AE - .align 2, 0 -_0802789C: .4byte gUnknown_203B2BC -_080278A0: .4byte gRecruitedPokemonRef -_080278A4: - bl sub_8023C60 - movs r0, 0x11 - bl SetFriendAreaActionMenuState -_080278AE: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80277FC - - thumb_func_start sub_80278B4 -sub_80278B4: - push {r4,lr} - sub sp, 0x4 - movs r0, 0 - str r0, [sp] - bl sub_8023A94 - ldr r4, _080278F8 - ldr r0, [r4] - adds r0, 0x7C - bl sub_8012FD8 - lsls r0, 24 - cmp r0, 0 - bne _080278E4 - ldr r0, [r4] - adds r0, 0x7C - mov r1, sp - bl sub_8013114 - ldr r1, [sp] - cmp r1, 0x1 - beq _080278E4 - ldr r0, [r4] - str r1, [r0, 0x70] -_080278E4: - ldr r0, [sp] - subs r0, 0x1 - cmp r0, 0xB - bls _080278EE - b _08027A36 -_080278EE: - lsls r0, 2 - ldr r1, _080278FC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080278F8: .4byte gUnknown_203B2BC -_080278FC: .4byte _08027900 - .align 2, 0 -_08027900: - .4byte _08027A30 - .4byte _08027A36 - .4byte _08027A36 - .4byte _08027A20 - .4byte _08027A28 - .4byte _08027930 - .4byte _0802796C - .4byte _0802798C - .4byte _080279C0 - .4byte _080279D0 - .4byte _080279D8 - .4byte _080279C8 -_08027930: - ldr r4, _08027964 - ldr r0, [r4] - movs r1, 0x8 - ldrsh r0, [r0, r1] - bl sub_808D750 - lsls r0, 24 - cmp r0, 0 - beq _0802795E - ldr r0, [r4] - movs r2, 0x8 - ldrsh r1, [r0, r2] - movs r0, 0x58 - muls r1, r0 - ldr r0, _08027968 - ldr r0, [r0] - adds r1, r0 - ldrh r2, [r1] - movs r0, 0x2 - orrs r0, r2 - strh r0, [r1] - bl nullsub_104 -_0802795E: - bl sub_808ED00 - b _08027A0E - .align 2, 0 -_08027964: .4byte gUnknown_203B2BC -_08027968: .4byte gRecruitedPokemonRef -_0802796C: - ldr r0, _08027984 - ldr r0, [r0] - ldr r2, [r0, 0x18] - ldrh r1, [r2] - ldr r0, _08027988 - ands r0, r1 - strh r0, [r2] - bl nullsub_104 - bl sub_808ED00 - b _08027A0E - .align 2, 0 -_08027984: .4byte gUnknown_203B2BC -_08027988: .4byte 0x0000fffd -_0802798C: - ldr r2, _080279B8 - ldr r0, _080279BC - ldr r0, [r0] - movs r3, 0x8 - ldrsh r1, [r0, r3] - movs r0, 0x58 - muls r1, r0 - ldr r0, [r2] - adds r4, r0, r1 - bl GetPlayerPokemonStruct - ldrb r1, [r4, 0x2] - cmp r1, 0 - bne _080279B2 - strb r1, [r0, 0x2] - movs r0, 0x1 - strb r0, [r4, 0x2] - bl nullsub_104 -_080279B2: - bl sub_808ED00 - b _08027A0E - .align 2, 0 -_080279B8: .4byte gRecruitedPokemonRef -_080279BC: .4byte gUnknown_203B2BC -_080279C0: - movs r0, 0x8 - bl SetFriendAreaActionMenuState - b _08027A36 -_080279C8: - movs r0, 0xE - bl SetFriendAreaActionMenuState - b _08027A36 -_080279D0: - movs r0, 0xA - bl SetFriendAreaActionMenuState - b _08027A36 -_080279D8: - ldr r0, _08027A18 - bl PlaySound - ldr r4, _08027A1C - ldr r1, [r4] - ldrb r0, [r1, 0x14] - cmp r0, 0 - beq _080279F0 - adds r0, r1, 0 - adds r0, 0x14 - bl sub_8091274 -_080279F0: - bl FillInventoryGaps - ldr r0, [r4] - movs r1, 0 - strb r1, [r0, 0x14] - ldr r0, [r4] - strb r1, [r0, 0x15] - ldr r1, [r4] - movs r2, 0x8 - ldrsh r0, [r1, r2] - adds r1, 0x14 - bl GivePokemonItem - bl nullsub_104 -_08027A0E: - movs r0, 0x2 - bl SetFriendAreaActionMenuState - b _08027A36 - .align 2, 0 -_08027A18: .4byte 0x0000014d -_08027A1C: .4byte gUnknown_203B2BC -_08027A20: - movs r0, 0x4 - bl SetFriendAreaActionMenuState - b _08027A36 -_08027A28: - movs r0, 0x5 - bl SetFriendAreaActionMenuState - b _08027A36 -_08027A30: - movs r0, 0x2 - bl SetFriendAreaActionMenuState -_08027A36: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80278B4 - .align 2,0 diff --git a/asm/friend_list_menu.s b/asm/friend_list_menu.s index 98a68a4..8ce78db 100644 --- a/asm/friend_list_menu.s +++ b/asm/friend_list_menu.s @@ -1032,7 +1032,7 @@ _08025B28: beq _08025B40 adds r0, r1, 0 adds r0, 0x18 - bl sub_8091274 + bl AddHeldItemToInventory _08025B40: bl FillInventoryGaps ldr r0, [r4] @@ -1259,7 +1259,7 @@ _08025CF8: beq _08025D24 adds r0, r1, 0 adds r0, 0x18 - bl sub_8091274 + bl AddHeldItemToInventory movs r6, 0x9 _08025D24: add r4, sp, 0x10 @@ -2858,7 +2858,7 @@ _08026A10: beq _08026A28 adds r0, r1, 0 adds r0, 0x14 - bl sub_8091274 + bl AddHeldItemToInventory _08026A28: bl FillInventoryGaps ldr r0, [r4] diff --git a/asm/kangaskhan_storage_1.s b/asm/kangaskhan_storage_1.s index 9890fe4..63990e9 100644 --- a/asm/kangaskhan_storage_1.s +++ b/asm/kangaskhan_storage_1.s @@ -470,7 +470,7 @@ _0801794C: orrs r0, r1 str r0, [sp, 0x4] add r0, sp, 0x4 - bl sub_8091274 + bl AddHeldItemToInventory movs r0, 0x1D bl UpdateKangaskhanStorageState b _080179A2 @@ -638,7 +638,7 @@ _08017AB0: ldrh r2, [r3] subs r2, r1 strh r2, [r3] - bl sub_8091274 + bl AddHeldItemToInventory _08017ACE: adds r5, 0x1 cmp r5, 0xEF diff --git a/asm/kecleon_items.s b/asm/kecleon_items.s index 87f2bdd..2d0fb02 100644 --- a/asm/kecleon_items.s +++ b/asm/kecleon_items.s @@ -1051,480 +1051,4 @@ _08019728: .4byte gUnknown_80D4920 _0801972C: .4byte gUnknown_80D4928 thumb_func_end sub_8019700 - thumb_func_start sub_8019730 -sub_8019730: - push {lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - beq _08019740 - b _0801984A -_08019740: - ldr r1, [sp] - cmp r1, 0x1 - beq _0801974C - ldr r0, _08019760 - ldr r0, [r0] - str r1, [r0, 0x28] -_0801974C: - ldr r0, [sp] - subs r0, 0x1 - cmp r0, 0x6 - bls _08019756 - b _0801984A -_08019756: - lsls r0, 2 - ldr r1, _08019764 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08019760: .4byte gUnknown_203B210 -_08019764: .4byte _08019768 - .align 2, 0 -_08019768: - .4byte _08019844 - .4byte _08019784 - .4byte _080197AC - .4byte _080197E4 - .4byte _0801984A - .4byte _0801984A - .4byte _0801983C -_08019784: - bl sub_8019D8C - cmp r0, 0 - bne _08019794 - movs r0, 0x5 - bl UpdateKecleonStoreState - b _0801984A -_08019794: - bl GetNumberOfFilledInventorySlots - cmp r0, 0x13 - ble _080197A4 - movs r0, 0xA - bl UpdateKecleonStoreState - b _0801984A -_080197A4: - movs r0, 0xF - bl UpdateKecleonStoreState - b _0801984A -_080197AC: - bl GetNumberOfFilledInventorySlots - cmp r0, 0 - beq _080197EC - ldr r0, _080197D8 - ldr r0, [r0] - ldr r0, [r0, 0x14] - cmp r0, 0 - beq _080197FE - ldr r0, _080197DC - ldr r0, [r0] - movs r1, 0x98 - lsls r1, 2 - adds r0, r1 - ldr r1, [r0] - ldr r0, _080197E0 - cmp r1, r0 - bgt _08019822 - movs r0, 0x17 - bl UpdateKecleonStoreState - b _0801984A - .align 2, 0 -_080197D8: .4byte gUnknown_203B210 -_080197DC: .4byte gTeamInventory_203B460 -_080197E0: .4byte 0x0001869e -_080197E4: - bl GetNumberOfFilledInventorySlots - cmp r0, 0 - bne _080197F4 -_080197EC: - movs r0, 0x9 - bl UpdateKecleonStoreState - b _0801984A -_080197F4: - ldr r0, _08019808 - ldr r1, [r0] - ldr r0, [r1, 0x14] - cmp r0, 0 - bne _0801980C -_080197FE: - movs r0, 0x8 - bl UpdateKecleonStoreState - b _0801984A - .align 2, 0 -_08019808: .4byte gUnknown_203B210 -_0801980C: - ldr r0, _0801982C - ldr r0, [r0] - movs r2, 0x98 - lsls r2, 2 - adds r0, r2 - ldr r1, [r1, 0x18] - ldr r0, [r0] - adds r1, r0 - ldr r0, _08019830 - cmp r1, r0 - ble _08019834 -_08019822: - movs r0, 0x7 - bl UpdateKecleonStoreState - b _0801984A - .align 2, 0 -_0801982C: .4byte gTeamInventory_203B460 -_08019830: .4byte 0x0001869f -_08019834: - movs r0, 0x1F - bl UpdateKecleonStoreState - b _0801984A -_0801983C: - movs r0, 0x2 - bl UpdateKecleonStoreState - b _0801984A -_08019844: - movs r0, 0x3 - bl UpdateKecleonStoreState -_0801984A: - add sp, 0x4 - pop {r0} - bx r0 - thumb_func_end sub_8019730 - - thumb_func_start sub_8019850 -sub_8019850: - push {r4,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080198DE - ldr r0, [sp] - cmp r0, 0x5 - beq _08019874 - cmp r0, 0x5 - bgt _0801986E - cmp r0, 0x1 - beq _080198D8 - b _080198DE -_0801986E: - cmp r0, 0x6 - beq _080198D8 - b _080198DE -_08019874: - ldr r4, _080198A8 - ldr r0, [r4] - ldr r0, [r0, 0x10] - negs r0, r0 - bl AddToTeamMoney - ldr r1, [r4] - ldrb r0, [r1, 0x4] - cmp r0, 0 - beq _080198AC - adds r0, r1, 0 - adds r0, 0x20 - ldrb r0, [r0] - bl xxx_get_inv_unk230_at_809185C - bl sub_8091274 - ldr r0, [r4] - adds r0, 0x20 - ldrb r0, [r0] - bl xxx_init_unk230_substruct - bl xxx_fill_unk230_gaps - b _080198C8 - .align 2, 0 -_080198A8: .4byte gUnknown_203B210 -_080198AC: - adds r0, r1, 0 - adds r0, 0x21 - ldrb r0, [r0] - bl xxx_get_unk250_at_8091A90 - bl sub_8091274 - ldr r0, [r4] - adds r0, 0x21 - ldrb r0, [r0] - bl xxx_init_inv_unk250_at_8091A74 - bl xxx_fill_inv_unk250_gaps_8091AA8 -_080198C8: - movs r0, 0xA6 - lsls r0, 1 - bl PlaySound - movs r0, 0x11 - bl UpdateKecleonStoreState - b _080198DE -_080198D8: - movs r0, 0x10 - bl UpdateKecleonStoreState -_080198DE: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_8019850 - - thumb_func_start sub_80198E8 -sub_80198E8: - push {r4,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _0801993A - ldr r0, [sp] - cmp r0, 0x5 - beq _0801990C - cmp r0, 0x5 - bgt _08019906 - cmp r0, 0x1 - beq _08019934 - b _0801993A -_08019906: - cmp r0, 0x6 - beq _08019934 - b _0801993A -_0801990C: - ldr r4, _08019930 - ldr r0, [r4] - ldr r0, [r0, 0x10] - bl AddToTeamMoney - ldr r0, [r4] - ldr r0, [r0, 0x24] - bl ShiftItemsDownFrom - movs r0, 0xA6 - lsls r0, 1 - bl PlaySound - movs r0, 0x19 - bl UpdateKecleonStoreState - b _0801993A - .align 2, 0 -_08019930: .4byte gUnknown_203B210 -_08019934: - movs r0, 0x18 - bl UpdateKecleonStoreState -_0801993A: - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80198E8 - - thumb_func_start sub_8019944 -sub_8019944: - push {r4,r5,lr} - sub sp, 0x4 - mov r0, sp - bl sub_80144A4 - cmp r0, 0 - bne _080199C2 - ldr r0, [sp] - cmp r0, 0x5 - beq _08019968 - cmp r0, 0x5 - bgt _08019962 - cmp r0, 0x1 - beq _080199BC - b _080199C2 -_08019962: - cmp r0, 0x6 - beq _080199BC - b _080199C2 -_08019968: - movs r4, 0 - ldr r5, _080199B4 -_0801996C: - lsls r1, r4, 2 - ldr r0, [r5] - adds r2, r0, r1 - ldrb r1, [r2] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0801998E - ldrb r0, [r2, 0x2] - bl CanSellItem - lsls r0, 24 - cmp r0, 0 - beq _0801998E - adds r0, r4, 0 - bl ClearItemSlotAt -_0801998E: - adds r4, 0x1 - cmp r4, 0x13 - ble _0801996C - bl FillInventoryGaps - ldr r0, _080199B8 - ldr r0, [r0] - ldr r0, [r0, 0x18] - bl AddToTeamMoney - movs r0, 0xA6 - lsls r0, 1 - bl PlaySound - movs r0, 0x20 - bl UpdateKecleonStoreState - b _080199C2 - .align 2, 0 -_080199B4: .4byte gTeamInventory_203B460 -_080199B8: .4byte gUnknown_203B210 -_080199BC: - movs r0, 0x1 - bl UpdateKecleonStoreState -_080199C2: - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_8019944 - - thumb_func_start sub_80199CC -sub_80199CC: - push {r4,r5,lr} - ldr r0, _080199E0 - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _080199E4 - movs r0, 0x1 - bl sub_8019EDC - b _080199EA - .align 2, 0 -_080199E0: .4byte gUnknown_203B210 -_080199E4: - movs r0, 0x1 - bl sub_801A2A8 -_080199EA: - cmp r0, 0x2 - beq _08019AD4 - cmp r0, 0x2 - bhi _080199FA - cmp r0, 0x1 - bne _080199F8 - b _08019AF4 -_080199F8: - b _08019B00 -_080199FA: - cmp r0, 0x3 - beq _08019A04 - cmp r0, 0x4 - beq _08019A6C - b _08019B00 -_08019A04: - ldr r4, _08019A24 - ldr r0, [r4] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _08019A28 - bl sub_8019FB0 - ldr r1, [r4] - adds r1, 0x20 - strb r0, [r1] - ldr r0, [r4] - adds r0, 0x20 - ldrb r0, [r0] - bl xxx_get_inv_unk230_at_809185C - b _08019A3C - .align 2, 0 -_08019A24: .4byte gUnknown_203B210 -_08019A28: - bl sub_801A37C - ldr r1, [r4] - adds r1, 0x21 - strb r0, [r1] - ldr r0, [r4] - adds r0, 0x21 - ldrb r0, [r0] - bl xxx_get_unk250_at_8091A90 -_08019A3C: - adds r5, r0, 0 - ldr r4, _08019A68 - ldr r0, [r4] - adds r0, 0x1C - ldrb r1, [r5] - movs r2, 0 - bl xxx_init_itemslot_8090A8C - ldr r1, [r4] - ldrb r0, [r5, 0x1] - strb r0, [r1, 0x1D] - ldr r0, [r4] - adds r0, 0x1C - bl GetStackBuyPrice - ldr r1, [r4] - str r0, [r1, 0x10] - movs r0, 0x14 - bl UpdateKecleonStoreState - b _08019B00 - .align 2, 0 -_08019A68: .4byte gUnknown_203B210 -_08019A6C: - ldr r4, _08019A8C - ldr r0, [r4] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _08019A90 - bl sub_8019FB0 - ldr r1, [r4] - adds r1, 0x20 - strb r0, [r1] - ldr r0, [r4] - adds r0, 0x20 - ldrb r0, [r0] - bl xxx_get_inv_unk230_at_809185C - b _08019AA4 - .align 2, 0 -_08019A8C: .4byte gUnknown_203B210 -_08019A90: - bl sub_801A37C - ldr r1, [r4] - adds r1, 0x21 - strb r0, [r1] - ldr r0, [r4] - adds r0, 0x21 - ldrb r0, [r0] - bl xxx_get_unk250_at_8091A90 -_08019AA4: - adds r5, r0, 0 - ldr r4, _08019AD0 - ldr r0, [r4] - adds r0, 0x1C - ldrb r1, [r5] - movs r2, 0 - bl xxx_init_itemslot_8090A8C - ldr r1, [r4] - ldrb r0, [r5, 0x1] - strb r0, [r1, 0x1D] - ldr r0, [r4] - adds r0, 0x1C - bl GetStackBuyPrice - ldr r1, [r4] - str r0, [r1, 0x10] - movs r0, 0x15 - bl UpdateKecleonStoreState - b _08019B00 - .align 2, 0 -_08019AD0: .4byte gUnknown_203B210 -_08019AD4: - ldr r0, _08019AE4 - ldr r0, [r0] - ldrb r0, [r0, 0x4] - cmp r0, 0 - beq _08019AE8 - bl sub_801A010 - b _08019AEC - .align 2, 0 -_08019AE4: .4byte gUnknown_203B210 -_08019AE8: - bl sub_801A3DC -_08019AEC: - movs r0, 0x1 - bl UpdateKecleonStoreState - b _08019B00 -_08019AF4: - movs r0, 0 - bl sub_801AD34 - movs r0, 0x1 - bl DrawTeamMoneyBox -_08019B00: - pop {r4,r5} - pop {r0} - bx r0 - thumb_func_end sub_80199CC - .align 2,0 diff --git a/asm/makuhita_dojo.s b/asm/makuhita_dojo.s index 7d7680e..e19ef0c 100644 --- a/asm/makuhita_dojo.s +++ b/asm/makuhita_dojo.s @@ -135,7 +135,7 @@ _08030074: str r1, [sp, 0x14] ldr r0, _080300BC add r1, sp, 0x14 - bl sub_8090208 + bl PrintYellowDungeonNametoBuffer ldr r2, _080300C0 ldr r3, [r5] ldr r1, [r3, 0x4] diff --git a/asm/pokemon_3.s b/asm/pokemon_3.s index 43173ec..99129d1 100644 --- a/asm/pokemon_3.s +++ b/asm/pokemon_3.s @@ -1252,7 +1252,7 @@ _0808FDB0: mov r1, r10 adds r1, 0x1C adds r0, r4, 0 - bl sub_8090208 + bl PrintYellowDungeonNametoBuffer ldr r0, _0808FF0C ldr r2, [r0] str r5, [sp] diff --git a/asm/wonder_mail_2.s b/asm/wonder_mail_2.s index 19e314f..96e0130 100644 --- a/asm/wonder_mail_2.s +++ b/asm/wonder_mail_2.s @@ -1098,7 +1098,7 @@ _0802C7B4: adds r0, r5 adds r1, r0 ldrb r0, [r1] - bl sub_8096AB4 + bl GetJobSlotInfo adds r4, r0, 0 ldr r0, [r6] ldr r1, [r0, 0x3C] @@ -1459,7 +1459,7 @@ _0802CA7C: .4byte gUnknown_203B2F0 _0802CA80: ldr r0, [r4] ldrb r0, [r0, 0xC] - bl sub_8096AB4 + bl GetJobSlotInfo ldr r1, [r4] adds r1, 0x10 bl sub_803B35C @@ -1482,7 +1482,7 @@ sub_802CAA4: ldr r5, _0802CAC8 ldr r0, [r5] ldrb r0, [r0, 0xC] - bl sub_8096AB4 + bl GetJobSlotInfo adds r4, r0, 0 ldr r2, [r5] ldr r0, [r2] @@ -1759,7 +1759,7 @@ _0802CCD8: ldr r0, _0802CCF0 ldr r0, [r0] ldrb r0, [r0, 0xC] - bl sub_8096AB4 + bl GetJobSlotInfo movs r1, 0x6 b _0802CD06 .align 2, 0 @@ -1771,7 +1771,7 @@ _0802CCF4: ldr r0, _0802CD14 ldr r0, [r0] ldrb r0, [r0, 0xC] - bl sub_8096AB4 + bl GetJobSlotInfo movs r1, 0x5 _0802CD06: strb r1, [r0] diff --git a/asm/wonder_mail_3.s b/asm/wonder_mail_3.s index 043c1e7..0f14aa9 100644 --- a/asm/wonder_mail_3.s +++ b/asm/wonder_mail_3.s @@ -662,7 +662,7 @@ sub_802DAA8: ldr r4, _0802DAD0 ldr r0, [r4] ldrb r0, [r0, 0x10] - bl sub_8096AB4 + bl GetJobSlotInfo adds r1, r0, 0 ldr r4, [r4] ldrb r0, [r4, 0x9] diff --git a/asm/wonder_mail_5.s b/asm/wonder_mail_5.s deleted file mode 100644 index aa081ae..0000000 --- a/asm/wonder_mail_5.s +++ /dev/null @@ -1,571 +0,0 @@ - #include "asm/constants/gba_constants.inc" - #include "asm/macros.inc" - - .syntax unified - - .text - - - thumb_func_start sub_8031AE8 -sub_8031AE8: - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0xDC - ldr r7, _08031B24 - ldr r0, [r7] - ldr r0, [r0, 0x10] - bl sub_80073B8 - ldr r2, _08031B28 - ldr r0, [r7] - ldr r3, [r0, 0x10] - movs r6, 0 - str r6, [sp] - movs r0, 0xA - movs r1, 0 - bl xxx_call_draw_string - ldr r1, [r7] - ldrb r0, [r1, 0xC] - cmp r0, 0x1 - beq _08031B2C - cmp r0, 0x1 - bgt _08031B1E - b _08031CD4 -_08031B1E: - cmp r0, 0x2 - beq _08031B94 - b _08031CD4 - .align 2, 0 -_08031B24: .4byte gUnknown_203B330 -_08031B28: .4byte gUnknown_80E1F30 -_08031B2C: - add r4, sp, 0x68 - adds r0, r4, 0 - bl sub_8099394 - ldrb r0, [r4] - bl sub_8095228 - adds r5, r0, 0 - ldr r0, [r7] - ldr r3, [r0, 0x10] - movs r0, 0xA - movs r1, 0x10 - movs r2, 0x3 - bl sub_803B6B0 - ldr r1, _08031B8C - ldrb r2, [r5, 0x5] - add r0, sp, 0x4 - bl sprintf_2 - ldr r0, [r7] - ldr r3, [r0, 0x10] - str r6, [sp] - movs r0, 0x15 - movs r1, 0x10 - add r2, sp, 0x4 - bl xxx_call_draw_string - ldr r4, _08031B90 - movs r1, 0xC - ldrsh r0, [r5, r1] - bl GetMonSpecies - adds r2, r0, 0 - add r0, sp, 0x4 - adds r1, r4, 0 - bl sprintf_2 - ldr r0, [r7] - ldr r3, [r0, 0x10] - str r6, [sp] - movs r0, 0x28 - movs r1, 0x10 - add r2, sp, 0x4 - bl xxx_call_draw_string - b _08031D4E - .align 2, 0 -_08031B8C: .4byte gUnknown_80E1F3C -_08031B90: .4byte gUnknown_80E1F40 -_08031B94: - ldrb r0, [r1, 0xD] - bl sub_80969D0 - adds r1, r0, 0 - cmp r1, 0 - bne _08031BB0 - ldr r2, _08031BAC - ldr r0, [r7] - ldr r3, [r0, 0x10] - str r1, [sp] - b _08031D2C - .align 2, 0 -_08031BAC: .4byte gUnknown_80E1F54 -_08031BB0: - movs r6, 0x10 - movs r2, 0 - mov r10, r2 - mov r8, r2 - ldr r0, _08031C28 - mov r9, r0 - mov r1, sp - adds r1, 0x6C - str r1, [sp, 0xD8] -_08031BC2: - mov r2, r10 - lsls r0, r2, 24 - lsrs r0, 24 - bl sub_8096AB4 - adds r4, r0, 0 - ldr r1, [r7] - ldrb r0, [r4, 0x4] - ldrb r2, [r1, 0xD] - cmp r0, r2 - bne _08031CC2 - ldrb r0, [r4] - cmp r0, 0 - beq _08031CC2 - cmp r0, 0x5 - beq _08031CC2 - cmp r0, 0x7 - beq _08031CC2 - ldr r3, [r1, 0x10] - movs r0, 0xA - adds r1, r6, 0 - movs r2, 0x3 - bl sub_803B6B0 - ldrb r0, [r4, 0x1] - add r5, sp, 0x6C - cmp r0, 0x3 - beq _08031C16 - ldrb r2, [r4, 0x5] - ldr r0, [sp, 0xD8] - ldr r1, _08031C2C - bl sprintf_2 - ldr r0, [r7] - ldr r3, [r0, 0x10] - mov r0, r8 - str r0, [sp] - movs r0, 0x15 - adds r1, r6, 0 - ldr r2, [sp, 0xD8] - bl xxx_call_draw_string -_08031C16: - ldrb r0, [r4, 0x1] - cmp r0, 0x3 - beq _08031C58 - cmp r0, 0x3 - bgt _08031C30 - cmp r0, 0x2 - beq _08031C70 - b _08031C9C - .align 2, 0 -_08031C28: .4byte gUnknown_202DE58 -_08031C2C: .4byte gUnknown_80E1F3C -_08031C30: - cmp r0, 0x4 - bne _08031C9C - ldrb r1, [r4, 0x10] - mov r0, r9 - movs r2, 0 - bl sub_8090DC4 - adds r0, r5, 0 - ldr r1, _08031C54 - mov r2, r9 - bl sprintf_2 - ldr r0, [r7] - ldr r3, [r0, 0x10] - mov r1, r8 - str r1, [sp] - b _08031C8A - .align 2, 0 -_08031C54: .4byte gUnknown_80E1F60 -_08031C58: - ldrb r1, [r4, 0x10] - mov r0, r9 - movs r2, 0 - bl sub_8090DC4 - adds r0, r5, 0 - ldr r1, _08031C6C - mov r2, r9 - b _08031C7E - .align 2, 0 -_08031C6C: .4byte gUnknown_80E1F70 -_08031C70: - movs r1, 0xE - ldrsh r0, [r4, r1] - bl GetMonSpecies - adds r2, r0, 0 - adds r0, r5, 0 - ldr r1, _08031C98 -_08031C7E: - bl sprintf_2 - ldr r0, [r7] - ldr r3, [r0, 0x10] - mov r2, r8 - str r2, [sp] -_08031C8A: - movs r0, 0x28 - adds r1, r6, 0 - adds r2, r5, 0 - bl xxx_call_draw_string - b _08031CC0 - .align 2, 0 -_08031C98: .4byte gUnknown_80E1F80 -_08031C9C: - movs r1, 0xE - ldrsh r0, [r4, r1] - bl GetMonSpecies - adds r2, r0, 0 - adds r0, r5, 0 - ldr r1, _08031CD0 - bl sprintf_2 - ldr r0, [r7] - ldr r3, [r0, 0x10] - mov r2, r8 - str r2, [sp] - movs r0, 0x28 - adds r1, r6, 0 - adds r2, r5, 0 - bl xxx_call_draw_string -_08031CC0: - adds r6, 0xC -_08031CC2: - movs r0, 0x1 - add r10, r0 - mov r1, r10 - cmp r1, 0x7 - bgt _08031CCE - b _08031BC2 -_08031CCE: - b _08031D4E - .align 2, 0 -_08031CD0: .4byte gUnknown_80E1F40 -_08031CD4: - add r0, sp, 0xD0 - mov r4, sp - adds r4, 0xD2 - adds r1, r4, 0 - bl sub_80992E0 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0 - beq _08031D04 - movs r2, 0 - ldrsh r0, [r4, r2] - bl GetCurrentMissionText - adds r2, r0, 0 - ldr r0, _08031D00 - ldr r0, [r0] - ldr r3, [r0, 0x10] - movs r0, 0 - str r0, [sp] - b _08031D2C - .align 2, 0 -_08031D00: .4byte gUnknown_203B330 -_08031D04: - add r4, sp, 0xD4 - adds r0, r4, 0 - bl sub_8099360 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, 0 - beq _08031D3C - ldrb r0, [r4] - bl sub_80A2688 - lsls r0, 16 - asrs r0, 16 - bl sub_80975DC - adds r2, r0, 0 - ldr r0, _08031D38 - ldr r0, [r0] - ldr r3, [r0, 0x10] - str r5, [sp] -_08031D2C: - movs r0, 0xA - movs r1, 0x10 - bl xxx_call_draw_string - b _08031D4E - .align 2, 0 -_08031D38: .4byte gUnknown_203B330 -_08031D3C: - ldr r2, _08031D68 - ldr r0, _08031D6C - ldr r0, [r0] - ldr r3, [r0, 0x10] - str r1, [sp] - movs r0, 0xA - movs r1, 0x10 - bl xxx_call_draw_string -_08031D4E: - ldr r0, _08031D6C - ldr r0, [r0] - ldr r0, [r0, 0x10] - bl sub_80073E0 - add sp, 0xDC - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08031D68: .4byte gUnknown_80E1F94 -_08031D6C: .4byte gUnknown_203B330 - thumb_func_end sub_8031AE8 - - thumb_func_start sub_8031D70 -sub_8031D70: - push {r4-r6,lr} - adds r6, r0, 0 - adds r4, r1, 0 - ldr r5, _08031DC4 - movs r0, 0x7C - movs r1, 0x8 - bl MemoryAlloc - str r0, [r5] - stm r0!, {r6} - bl sub_801317C - ldr r0, [r5] - str r4, [r0, 0x10] - lsls r1, r4, 1 - adds r1, r4 - lsls r1, 3 - adds r1, 0x18 - adds r1, r0, r1 - str r1, [r0, 0x14] - adds r0, 0x18 - bl sub_8006518 - ldr r1, [r5] - ldr r2, [r1, 0x10] - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, 0x18 - ldr r0, _08031DC8 - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - ldm r0!, {r2-r4} - stm r1!, {r2-r4} - bl sub_8031E00 - movs r0, 0x1 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_08031DC4: .4byte gUnknown_203B334 -_08031DC8: .4byte gUnknown_80E1FC4 - thumb_func_end sub_8031D70 - - thumb_func_start sub_8031DCC -sub_8031DCC: - push {lr} - ldr r0, _08031DEC - ldr r1, [r0] - adds r0, r1, 0x4 - ldr r1, [r1, 0x10] - bl sub_8012A64 - cmp r0, 0x1 - beq _08031DF0 - cmp r0, 0x2 - bne _08031DFA - movs r0, 0x1 - bl PlayMenuSoundEffect - movs r0, 0x2 - b _08031DFC - .align 2, 0 -_08031DEC: .4byte gUnknown_203B334 -_08031DF0: - movs r0, 0 - bl PlayMenuSoundEffect - movs r0, 0x3 - b _08031DFC -_08031DFA: - movs r0, 0 -_08031DFC: - pop {r1} - bx r1 - thumb_func_end sub_8031DCC - - thumb_func_start sub_8031E00 -sub_8031E00: - push {lr} - bl sub_8031E58 - bl sub_8031E74 - pop {r0} - bx r0 - thumb_func_end sub_8031E00 - - thumb_func_start sub_8031E10 -sub_8031E10: - push {r4,r5,lr} - ldr r4, _08031E50 - ldr r2, [r4] - cmp r2, 0 - beq _08031E4A - ldr r0, [r2, 0x10] - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r2, r1 - adds r1, 0x18 - ldr r0, _08031E54 - 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, 0x18 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - ldr r0, [r4] - bl MemoryFree - movs r0, 0 - str r0, [r4] -_08031E4A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08031E50: .4byte gUnknown_203B334 -_08031E54: .4byte gUnknown_80E1FA8 - thumb_func_end sub_8031E10 - - thumb_func_start sub_8031E58 -sub_8031E58: - push {lr} - bl ResetUnusedInputStruct - ldr r0, _08031E70 - ldr r0, [r0] - adds r0, 0x18 - movs r1, 0x1 - movs r2, 0x1 - bl sub_800641C - pop {r0} - bx r0 - .align 2, 0 -_08031E70: .4byte gUnknown_203B334 - thumb_func_end sub_8031E58 - - thumb_func_start sub_8031E74 -sub_8031E74: - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x3C - ldr r3, _08031EC0 - ldr r5, _08031EC4 - ldr r2, [r5] - ldr r1, [r2] - lsls r0, r1, 1 - adds r0, r1 - lsls r0, 4 - ldr r4, [r3] - adds r4, r0 - ldr r0, [r2, 0x10] - bl sub_80073B8 - ldr r2, _08031EC8 - ldr r0, [r5] - ldr r3, [r0, 0x10] - movs r0, 0 - str r0, [sp] - movs r0, 0x14 - movs r1, 0 - bl xxx_call_draw_string - add r0, sp, 0x4 - adds r1, r4, 0 - bl sub_803D2C0 - movs r7, 0 - mov r8, r5 -_08031EB2: - cmp r7, 0x4 - ble _08031ED0 - cmp r7, 0xC - bgt _08031ECC - movs r6, 0x6 - movs r5, 0x16 - b _08031F00 - .align 2, 0 -_08031EC0: .4byte gUnknown_203B480 -_08031EC4: .4byte gUnknown_203B334 -_08031EC8: .4byte gUnknown_80E1FDC -_08031ECC: - cmp r7, 0x11 - bgt _08031ED6 -_08031ED0: - movs r6, 0x7 - movs r5, 0x15 - b _08031F00 -_08031ED6: - cmp r7, 0x16 - ble _08031EE8 - cmp r7, 0x1E - bgt _08031EE4 - movs r6, 0x6 - movs r5, 0x25 - b _08031F00 -_08031EE4: - cmp r7, 0x23 - bgt _08031EEE -_08031EE8: - movs r6, 0x7 - movs r5, 0x24 - b _08031F00 -_08031EEE: - cmp r7, 0x28 - ble _08031EFC - cmp r7, 0x30 - bgt _08031EFC - movs r6, 0x6 - movs r5, 0x34 - b _08031F00 -_08031EFC: - movs r6, 0x7 - movs r5, 0x33 -_08031F00: - adds r0, r7, 0 - movs r1, 0x12 - bl __modsi3 - movs r1, 0xB - adds r4, r0, 0 - muls r4, r1 - adds r4, 0x6 - mov r0, sp - adds r0, r7 - adds r0, 0x4 - ldrb r2, [r0] - mov r1, r8 - ldr r0, [r1] - ldr r0, [r0, 0x10] - str r0, [sp] - adds r0, r4, 0 - adds r1, r5, 0 - adds r3, r6, 0 - bl sub_8012C60 - mov r1, r8 - ldr r0, [r1] - ldr r0, [r0, 0x10] - adds r2, r5, 0 - adds r2, 0xA - movs r1, 0x5 - str r1, [sp] - adds r1, r4, 0 - movs r3, 0xA - bl sub_80078A4 - adds r7, 0x1 - cmp r7, 0x35 - ble _08031EB2 - ldr r0, _08031F5C - ldr r0, [r0] - ldr r0, [r0, 0x10] - bl sub_80073E0 - add sp, 0x3C - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08031F5C: .4byte gUnknown_203B334 - thumb_func_end sub_8031E74 - - .align 2,0 |