diff options
author | Marcus Huderle <huderlem@gmail.com> | 2017-09-24 13:05:06 -0700 |
---|---|---|
committer | Marcus Huderle <huderlem@gmail.com> | 2017-09-25 20:31:21 -0700 |
commit | 31748e93d8be0b5e8410c2f11b5719d60c2162db (patch) | |
tree | 0cde5adac38aad6b6a96c3b737aeecfdc5ae667f /asm/party_menu.s | |
parent | c3792f2bd4c6ee3fecea548f45b2a54a9b468ab1 (diff) |
More party_menu decomp
Diffstat (limited to 'asm/party_menu.s')
-rw-r--r-- | asm/party_menu.s | 1997 |
1 files changed, 1 insertions, 1996 deletions
diff --git a/asm/party_menu.s b/asm/party_menu.s index 2dfba003b..2c400dd09 100644 --- a/asm/party_menu.s +++ b/asm/party_menu.s @@ -547,7 +547,7 @@ _0806B344: lsls r1, 2 adds r4, r0, r1 ldrb r0, [r4] - bl sub_806D718 + bl LoadPartyMenuGraphics lsls r0, 24 lsrs r0, 24 cmp r0, 0x1 @@ -3655,1999 +3655,4 @@ _0806CAF4: .4byte gUnknown_083769A8 _0806CAF8: .4byte 0x0001a261 thumb_func_end sub_806CA60 - thumb_func_start sub_806CAFC -sub_806CAFC: @ 806CAFC - push {r4,r5,lr} - lsls r0, 24 - lsrs r0, 24 - ldr r4, _0806CB48 @ =0x02001000 - ldrb r3, [r4, 0x1] - lsls r2, r3, 4 - adds r2, r3 - lsls r2, 2 - ldr r3, _0806CB4C @ =gSprites - adds r5, r2, r3 - ldrb r2, [r4, 0x2] - lsls r4, r2, 4 - adds r4, r2 - lsls r4, 2 - adds r4, r3 - lsls r1, 24 - asrs r1, 24 - bl sub_806BF74 - ldrh r2, [r5, 0x2E] - movs r0, 0x2E - ldrsh r1, [r5, r0] - movs r3, 0x2E - ldrsh r0, [r4, r3] - cmp r1, r0 - beq _0806CB54 - adds r0, r1, 0 - lsls r0, 1 - ldr r1, _0806CB50 @ =gUnknown_083769A8 - adds r0, r1 - lsls r1, r2, 24 - lsrs r1, 24 - movs r2, 0x6 - movs r3, 0x1 - bl sub_806BF24 - b _0806CB6A - .align 2, 0 -_0806CB48: .4byte 0x02001000 -_0806CB4C: .4byte gSprites -_0806CB50: .4byte gUnknown_083769A8 -_0806CB54: - movs r3, 0x2E - ldrsh r0, [r5, r3] - lsls r0, 1 - ldr r1, _0806CB70 @ =gUnknown_083769A8 - adds r0, r1 - lsls r1, r2, 24 - lsrs r1, 24 - movs r2, 0x6 - movs r3, 0 - bl sub_806BF24 -_0806CB6A: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806CB70: .4byte gUnknown_083769A8 - thumb_func_end sub_806CAFC - - thumb_func_start sub_806CB74 -sub_806CB74: @ 806CB74 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - ldr r0, _0806CB8C @ =gMain - ldrh r0, [r0, 0x30] - cmp r0, 0x20 - beq _0806CBBC - cmp r0, 0x20 - bgt _0806CB90 - cmp r0, 0x10 - beq _0806CBD0 - b _0806CBDA - .align 2, 0 -_0806CB8C: .4byte gMain -_0806CB90: - cmp r0, 0x40 - beq _0806CB9A - cmp r0, 0x80 - beq _0806CBAC - b _0806CBDA -_0806CB9A: - ldr r0, _0806CBA8 @ =0x02001000 - ldrb r0, [r0] - movs r1, 0x1 - negs r1, r1 - bl sub_806CAFC - b _0806CBDA - .align 2, 0 -_0806CBA8: .4byte 0x02001000 -_0806CBAC: - ldr r0, _0806CBB8 @ =0x02001000 - ldrb r0, [r0] - movs r1, 0x1 - bl sub_806CAFC - b _0806CBDA - .align 2, 0 -_0806CBB8: .4byte 0x02001000 -_0806CBBC: - ldr r0, _0806CBCC @ =0x02001000 - ldrb r0, [r0] - movs r1, 0x2 - negs r1, r1 - bl sub_806CAFC - b _0806CBDA - .align 2, 0 -_0806CBCC: .4byte 0x02001000 -_0806CBD0: - ldr r0, _0806CC04 @ =0x02001000 - ldrb r0, [r0] - movs r1, 0x2 - bl sub_806CAFC -_0806CBDA: - ldr r0, _0806CC08 @ =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0806CC10 - movs r0, 0x5 - bl PlaySE - ldr r1, _0806CC0C @ =gTasks - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806CC04 @ =0x02001000 - ldr r1, [r1, 0xC] - str r1, [r0] - adds r0, r4, 0 - bl _call_via_r1 - b _0806CC24 - .align 2, 0 -_0806CC04: .4byte 0x02001000 -_0806CC08: .4byte gMain -_0806CC0C: .4byte gTasks -_0806CC10: - lsls r0, r1, 16 - lsrs r0, 16 - cmp r0, 0x2 - bne _0806CC24 - movs r0, 0x5 - bl PlaySE - adds r0, r4, 0 - bl sub_806CD44 -_0806CC24: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_806CB74 - - thumb_func_start sub_806CC2C -sub_806CC2C: @ 806CC2C - push {r4,r5,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r5, _0806CC68 @ =0x02001000 - ldrb r1, [r5, 0x1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r1, _0806CC6C @ =gSprites - adds r0, r1 - bl DestroySprite - movs r0, 0 - movs r1, 0 - bl sub_806D538 - ldr r0, _0806CC70 @ =0x0001a261 - adds r1, r5, r0 - movs r0, 0x2 - strb r0, [r1] - ldrb r0, [r5] - bl SwitchTaskToFollowupFunc - adds r0, r4, 0 - bl DestroyTask - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806CC68: .4byte 0x02001000 -_0806CC6C: .4byte gSprites -_0806CC70: .4byte 0x0001a261 - thumb_func_end sub_806CC2C - - thumb_func_start sub_806CC74 -sub_806CC74: @ 806CC74 - push {r4-r6,lr} - mov r6, r8 - push {r6} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _0806CCD8 @ =gSprites - mov r8, r0 - ldr r6, _0806CCDC @ =0x02001000 - ldrb r0, [r6, 0x2] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - add r1, r8 - movs r2, 0x2E - ldrsh r0, [r1, r2] - lsls r0, 1 - ldr r5, _0806CCE0 @ =gUnknown_083769A8 - adds r0, r5 - ldrh r1, [r1, 0x2E] - lsls r1, 24 - lsrs r1, 24 - movs r2, 0x3 - movs r3, 0x1 - bl sub_806BF24 - ldrb r0, [r6, 0x1] - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - add r1, r8 - movs r2, 0x2E - ldrsh r0, [r1, r2] - lsls r0, 1 - adds r0, r5 - ldrh r1, [r1, 0x2E] - lsls r1, 24 - lsrs r1, 24 - movs r2, 0x3 - movs r3, 0 - bl sub_806BF24 - adds r0, r4, 0 - bl sub_806CC2C - pop {r3} - mov r8, r3 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806CCD8: .4byte gSprites -_0806CCDC: .4byte 0x02001000 -_0806CCE0: .4byte gUnknown_083769A8 - thumb_func_end sub_806CC74 - - thumb_func_start sub_806CCE4 -sub_806CCE4: @ 806CCE4 - push {r4,r5,lr} - ldr r3, _0806CD38 @ =gSprites - ldr r2, _0806CD3C @ =0x02001000 - ldrb r1, [r2, 0x1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrh r0, [r0, 0x2E] - lsls r0, 24 - lsrs r4, r0, 24 - ldrb r1, [r2, 0x2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r3 - ldrh r0, [r0, 0x2E] - lsls r0, 24 - lsrs r5, r0, 24 - cmp r4, 0x5 - bhi _0806CD1E - lsls r0, r4, 1 - ldr r1, _0806CD40 @ =gUnknown_083769A8 - adds r0, r1 - adds r1, r4, 0 - movs r2, 0x3 - movs r3, 0 - bl sub_806BF24 -_0806CD1E: - cmp r5, 0x5 - bhi _0806CD32 - lsls r0, r5, 1 - ldr r1, _0806CD40 @ =gUnknown_083769A8 - adds r0, r1 - adds r1, r5, 0 - movs r2, 0x3 - movs r3, 0x1 - bl sub_806BF24 -_0806CD32: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806CD38: .4byte gSprites -_0806CD3C: .4byte 0x02001000 -_0806CD40: .4byte gUnknown_083769A8 - thumb_func_end sub_806CCE4 - - thumb_func_start sub_806CD44 -sub_806CD44: @ 806CD44 - push {r4,lr} - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - bl sub_806CCE4 - adds r0, r4, 0 - bl sub_806CC2C - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_806CD44 - - thumb_func_start sub_806CD5C -sub_806CD5C: @ 806CD5C - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r2, _0806CDA8 @ =gSprites - ldr r6, _0806CDAC @ =0x02001000 - ldrb r1, [r6, 0x1] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r0, [r0, 0x2E] - lsls r0, 24 - lsrs r5, r0, 24 - mov r9, r5 - ldrb r1, [r6, 0x2] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldrh r0, [r0, 0x2E] - lsls r0, 24 - lsrs r4, r0, 24 - adds r7, r4, 0 - cmp r5, r4 - beq _0806CD9E - cmp r5, 0x7 - beq _0806CD9E - cmp r4, 0x7 - bne _0806CDB0 -_0806CD9E: - mov r0, r8 - bl sub_806CD44 - b _0806CED2 - .align 2, 0 -_0806CDA8: .4byte gSprites -_0806CDAC: .4byte 0x02001000 -_0806CDB0: - adds r0, r5, 0 - bl sub_806D5B8 - adds r0, r4, 0 - bl sub_806D5B8 - cmp r5, r4 - bls _0806CDC6 - strb r4, [r6, 0x5] - strb r5, [r6, 0x6] - b _0806CDCC -_0806CDC6: - mov r0, r9 - strb r0, [r6, 0x5] - strb r7, [r6, 0x6] -_0806CDCC: - ldr r4, _0806CE1C @ =0x02001000 - ldrb r0, [r4] - ldrb r1, [r4, 0x5] - bl GetMonIconSpriteId_maybe - strb r0, [r4, 0x3] - ldrb r0, [r4] - ldrb r1, [r4, 0x6] - bl GetMonIconSpriteId_maybe - strb r0, [r4, 0x4] - ldrb r3, [r4, 0x5] - cmp r3, 0 - bne _0806CE34 - ldr r2, _0806CE20 @ =gSprites - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, _0806CE24 @ =0x0000fff8 - strh r1, [r0, 0x2E] - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - ldr r1, _0806CE28 @ =0x0000ff58 - strh r1, [r0, 0x32] - strh r3, [r4, 0x8] - movs r0, 0xB - strh r0, [r4, 0xA] - ldr r1, _0806CE2C @ =gTasks - mov r3, r8 - lsls r0, r3, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806CE30 @ =sub_806D014 - b _0806CE66 - .align 2, 0 -_0806CE1C: .4byte 0x02001000 -_0806CE20: .4byte gSprites -_0806CE24: .4byte 0x0000fff8 -_0806CE28: .4byte 0x0000ff58 -_0806CE2C: .4byte gTasks -_0806CE30: .4byte sub_806D014 -_0806CE34: - ldr r2, _0806CEE0 @ =gSprites - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0x8 - strh r1, [r0, 0x2E] - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r2 - movs r1, 0xA8 - strh r1, [r0, 0x32] - movs r0, 0xB - strh r0, [r4, 0x8] - strh r0, [r4, 0xA] - ldr r1, _0806CEE4 @ =gTasks - mov r3, r8 - lsls r0, r3, 2 - add r0, r8 - lsls r0, 3 - adds r0, r1 - ldr r1, _0806CEE8 @ =sub_806D118 -_0806CE66: - str r1, [r0] - ldr r0, _0806CEEC @ =0x0001a261 - adds r1, r4, r0 - movs r0, 0x1 - strb r0, [r1] - adds r6, r2, 0 - ldr r4, _0806CEF0 @ =0x02001000 - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r5, r6, 0 - adds r5, 0x1C - adds r0, r5 - ldr r2, _0806CEF4 @ =sub_806D37C - str r2, [r0] - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - movs r1, 0x8 - strh r1, [r0, 0x2E] - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r6 - movs r1, 0xA8 - strh r1, [r0, 0x32] - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - str r2, [r0] - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r1, r0, r5 - adds r0, r6 - ldr r1, [r1] - bl _call_via_r1 - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r5, r0, r5 - adds r0, r6 - ldr r1, [r5] - bl _call_via_r1 -_0806CED2: - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806CEE0: .4byte gSprites -_0806CEE4: .4byte gTasks -_0806CEE8: .4byte sub_806D118 -_0806CEEC: .4byte 0x0001a261 -_0806CEF0: .4byte 0x02001000 -_0806CEF4: .4byte sub_806D37C - thumb_func_end sub_806CD5C - - thumb_func_start sub_806CEF8 -sub_806CEF8: @ 806CEF8 - ldrh r3, [r0] - ldrh r2, [r1] - strh r2, [r0] - strh r3, [r1] - bx lr - thumb_func_end sub_806CEF8 - - thumb_func_start sub_806CF04 -sub_806CF04: @ 806CF04 - push {r4,r5,lr} - ldr r4, _0806CF94 @ =0x02001000 - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - ldr r5, _0806CF98 @ =gSprites + 0x20 - adds r0, r5 - ldrb r2, [r4, 0x4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r5 - bl sub_806CEF8 - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r3, r5, 0x2 - adds r0, r3 - ldrb r2, [r4, 0x4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r3 - bl sub_806CEF8 - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r3, r5, 0x4 - adds r0, r3 - ldrb r2, [r4, 0x4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r3 - bl sub_806CEF8 - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r3, r5, 0 - adds r3, 0xE - adds r0, r3 - ldrb r2, [r4, 0x4] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r3 - bl sub_806CEF8 - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - subs r5, 0x4 - adds r0, r5 - ldr r2, _0806CF9C @ =sub_806D37C - str r2, [r0] - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - str r2, [r0] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806CF94: .4byte 0x02001000 -_0806CF98: .4byte gSprites + 0x20 -_0806CF9C: .4byte sub_806D37C - thumb_func_end sub_806CF04 - - thumb_func_start sub_806CFA0 -sub_806CFA0: @ 806CFA0 - push {r4-r6,lr} - lsls r4, r1, 24 - lsrs r4, 24 - ldr r5, _0806CFDC @ =0x02001000 - ldrb r1, [r5, 0x6] - subs r1, 0x1 - lsls r0, r1, 1 - adds r0, r1 - adds r0, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - movs r1, 0x8 - ldrsh r0, [r5, r1] - movs r1, 0x3 - bl sub_806BA34 - movs r1, 0xA - ldrsh r0, [r5, r1] - adds r1, r6, 0 - bl sub_806BB3C - cmp r4, 0 - bne _0806CFE0 - ldrh r0, [r5, 0x8] - subs r0, 0x1 - strh r0, [r5, 0x8] - ldrh r0, [r5, 0xA] - adds r0, 0x1 - b _0806CFEA - .align 2, 0 -_0806CFDC: .4byte 0x02001000 -_0806CFE0: - ldrh r0, [r5, 0x8] - adds r0, 0x1 - strh r0, [r5, 0x8] - ldrh r0, [r5, 0xA] - subs r0, 0x1 -_0806CFEA: - strh r0, [r5, 0xA] - ldr r4, _0806D010 @ =0x02001000 - movs r1, 0x8 - ldrsh r0, [r4, r1] - movs r1, 0x3 - movs r2, 0xA - bl sub_806B9A4 - movs r1, 0xA - ldrsh r0, [r4, r1] - adds r1, r6, 0 - movs r2, 0 - movs r3, 0xA - bl sub_806BA94 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806D010: .4byte 0x02001000 - thumb_func_end sub_806CFA0 - - thumb_func_start sub_806D014 -sub_806D014: @ 806D014 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - movs r1, 0 - bl sub_806CFA0 - ldr r2, _0806D050 @ =0x02001000 - movs r0, 0x8 - ldrsh r1, [r2, r0] - movs r0, 0xD - negs r0, r0 - cmp r1, r0 - bge _0806D04A - movs r1, 0xA - ldrsh r0, [r2, r1] - cmp r0, 0x20 - ble _0806D04A - bl sub_806CF04 - ldr r0, _0806D054 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0806D058 @ =sub_806D05C - str r0, [r1] -_0806D04A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806D050: .4byte 0x02001000 -_0806D054: .4byte gTasks -_0806D058: .4byte sub_806D05C - thumb_func_end sub_806D014 - - thumb_func_start sub_806D05C -sub_806D05C: @ 806D05C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806CFA0 - ldr r0, _0806D08C @ =0x02001000 - ldr r1, [r0, 0x8] - movs r0, 0xB0 - lsls r0, 12 - cmp r1, r0 - bne _0806D084 - ldr r0, _0806D090 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0806D094 @ =sub_806D198 - str r0, [r1] -_0806D084: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806D08C: .4byte 0x02001000 -_0806D090: .4byte gTasks -_0806D094: .4byte sub_806D198 - thumb_func_end sub_806D05C - - thumb_func_start sub_806D098 -sub_806D098: @ 806D098 - push {r4-r7,lr} - lsls r4, r1, 24 - lsrs r4, 24 - ldr r5, _0806D0E0 @ =0x02001000 - ldrb r1, [r5, 0x5] - subs r1, 0x1 - lsls r0, r1, 1 - adds r0, r1 - adds r0, 0x1 - lsls r0, 24 - lsrs r7, r0, 24 - ldrb r1, [r5, 0x6] - subs r1, 0x1 - lsls r0, r1, 1 - adds r0, r1 - adds r0, 0x1 - lsls r0, 24 - lsrs r6, r0, 24 - movs r1, 0x8 - ldrsh r0, [r5, r1] - adds r1, r7, 0 - bl sub_806BB3C - movs r1, 0xA - ldrsh r0, [r5, r1] - adds r1, r6, 0 - bl sub_806BB3C - cmp r4, 0 - bne _0806D0E4 - ldrh r0, [r5, 0x8] - adds r0, 0x1 - strh r0, [r5, 0x8] - ldrh r0, [r5, 0xA] - adds r0, 0x1 - b _0806D0EE - .align 2, 0 -_0806D0E0: .4byte 0x02001000 -_0806D0E4: - ldrh r0, [r5, 0x8] - subs r0, 0x1 - strh r0, [r5, 0x8] - ldrh r0, [r5, 0xA] - subs r0, 0x1 -_0806D0EE: - strh r0, [r5, 0xA] - ldr r4, _0806D114 @ =0x02001000 - movs r1, 0x8 - ldrsh r0, [r4, r1] - adds r1, r7, 0 - movs r2, 0 - movs r3, 0xA - bl sub_806BA94 - movs r1, 0xA - ldrsh r0, [r4, r1] - adds r1, r6, 0 - movs r2, 0 - movs r3, 0xA - bl sub_806BA94 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806D114: .4byte 0x02001000 - thumb_func_end sub_806D098 - - thumb_func_start sub_806D118 -sub_806D118: @ 806D118 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - movs r1, 0 - bl sub_806D098 - ldr r1, _0806D150 @ =0x02001000 - movs r2, 0x8 - ldrsh r0, [r1, r2] - cmp r0, 0x20 - ble _0806D14A - movs r2, 0xA - ldrsh r0, [r1, r2] - cmp r0, 0x20 - ble _0806D14A - bl sub_806CF04 - ldr r0, _0806D154 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0806D158 @ =sub_806D15C - str r0, [r1] -_0806D14A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806D150: .4byte 0x02001000 -_0806D154: .4byte gTasks -_0806D158: .4byte sub_806D15C - thumb_func_end sub_806D118 - - thumb_func_start sub_806D15C -sub_806D15C: @ 806D15C - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - adds r0, r4, 0 - movs r1, 0x1 - bl sub_806D098 - ldr r0, _0806D188 @ =0x02001000 - ldr r1, [r0, 0x8] - ldr r0, _0806D18C @ =0x000b000b - cmp r1, r0 - bne _0806D182 - ldr r0, _0806D190 @ =gTasks - lsls r1, r4, 2 - adds r1, r4 - lsls r1, 3 - adds r1, r0 - ldr r0, _0806D194 @ =sub_806D198 - str r0, [r1] -_0806D182: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806D188: .4byte 0x02001000 -_0806D18C: .4byte 0x000b000b -_0806D190: .4byte gTasks -_0806D194: .4byte sub_806D198 - thumb_func_end sub_806D15C - - thumb_func_start sub_806D198 -sub_806D198: @ 806D198 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - mov r10, r0 - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - ldr r4, _0806D364 @ =0x02001000 - ldrb r0, [r4] - ldrb r1, [r4, 0x5] - ldrb r2, [r4, 0x4] - bl SetMonIconSpriteId_maybe - ldrb r0, [r4] - ldrb r1, [r4, 0x6] - ldrb r2, [r4, 0x3] - bl SetMonIconSpriteId_maybe - bl IsDoubleBattle - ldr r5, _0806D368 @ =gSprites - ldrb r1, [r4, 0x3] - lsls r3, r1, 4 - adds r3, r1 - lsls r3, 2 - adds r3, r5 - ldr r6, _0806D36C @ =gUnknown_08376678 - ldrb r2, [r4, 0x6] - lsls r2, 2 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r2, r1 - adds r2, r6 - ldrb r0, [r2] - movs r1, 0 - mov r8, r1 - strh r0, [r3, 0x20] - bl IsDoubleBattle - ldrb r1, [r4, 0x3] - lsls r3, r1, 4 - adds r3, r1 - lsls r3, 2 - adds r3, r5 - ldrb r2, [r4, 0x6] - lsls r2, 2 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r2, r1 - adds r2, r6 - ldrb r0, [r2, 0x1] - strh r0, [r3, 0x22] - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - mov r1, r8 - strh r1, [r0, 0x24] - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - mov r1, r8 - strh r1, [r0, 0x26] - ldrb r1, [r4, 0x3] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - movs r1, 0x1C - adds r1, r5 - mov r9, r1 - add r0, r9 - ldr r7, _0806D370 @ =UpdateMonIconFrame_806DA38 - str r7, [r0] - bl IsDoubleBattle - ldrb r1, [r4, 0x4] - lsls r3, r1, 4 - adds r3, r1 - lsls r3, 2 - adds r3, r5 - ldrb r2, [r4, 0x5] - lsls r2, 2 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r2, r1 - adds r2, r6 - ldrb r0, [r2] - strh r0, [r3, 0x20] - bl IsDoubleBattle - ldrb r1, [r4, 0x4] - lsls r3, r1, 4 - adds r3, r1 - lsls r3, 2 - adds r3, r5 - ldrb r2, [r4, 0x5] - lsls r2, 2 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r2, r1 - adds r2, r6 - ldrb r0, [r2, 0x1] - strh r0, [r3, 0x22] - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - mov r1, r8 - strh r1, [r0, 0x24] - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - adds r0, r5 - mov r1, r8 - strh r1, [r0, 0x26] - ldrb r1, [r4, 0x4] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - add r0, r9 - str r7, [r0] - ldrb r0, [r4] - ldrb r2, [r4, 0x2] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - adds r1, r5 - ldrh r1, [r1, 0x2E] - lsls r1, 24 - lsrs r1, 24 - bl GetMonIconSpriteId_maybe - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - add r1, r9 - ldr r0, _0806D374 @ =UpdateMonIconFrame_806DA0C - str r0, [r1] - ldrb r0, [r4, 0x5] - movs r6, 0x64 - muls r0, r6 - ldr r5, _0806D378 @ =gPlayerParty - adds r0, r5 - ldrb r1, [r4, 0x6] - muls r1, r6 - adds r1, r5 - bl SwapPokemon - ldrb r0, [r4, 0x5] - adds r1, r0, 0 - muls r1, r6 - adds r1, r5 - bl PartyMenuPrintMonLevelOrStatus - ldrb r0, [r4, 0x5] - adds r1, r0, 0 - muls r1, r6 - adds r1, r5 - bl TryPrintPartyMenuMonNickname - ldrb r0, [r4, 0x5] - adds r1, r0, 0 - muls r1, r6 - adds r1, r5 - bl PartyMenuTryPrintHP - ldrb r0, [r4, 0x5] - adds r1, r0, 0 - muls r1, r6 - adds r1, r5 - bl nullsub_12 - ldrb r0, [r4, 0x6] - adds r1, r0, 0 - muls r1, r6 - adds r1, r5 - bl PartyMenuPrintMonLevelOrStatus - ldrb r0, [r4, 0x6] - adds r1, r0, 0 - muls r1, r6 - adds r1, r5 - bl TryPrintPartyMenuMonNickname - ldrb r0, [r4, 0x6] - adds r1, r0, 0 - muls r1, r6 - adds r1, r5 - bl PartyMenuTryPrintHP - ldrb r0, [r4, 0x6] - adds r1, r0, 0 - muls r1, r6 - adds r1, r5 - bl nullsub_12 - bl PartyMenuDrawHPBars - mov r0, r10 - bl sub_806CC74 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806D364: .4byte 0x02001000 -_0806D368: .4byte gSprites -_0806D36C: .4byte gUnknown_08376678 -_0806D370: .4byte UpdateMonIconFrame_806DA38 -_0806D374: .4byte UpdateMonIconFrame_806DA0C -_0806D378: .4byte gPlayerParty - thumb_func_end sub_806D198 - - thumb_func_start sub_806D37C -sub_806D37C: @ 806D37C - push {r4,lr} - adds r4, r0, 0 - bl UpdateMonIconFrame - ldrh r2, [r4, 0x24] - movs r0, 0x24 - ldrsh r1, [r4, r0] - movs r3, 0x32 - ldrsh r0, [r4, r3] - cmp r1, r0 - bne _0806D3A8 - movs r1, 0x2E - ldrsh r0, [r4, r1] - negs r0, r0 - movs r1, 0 - strh r0, [r4, 0x2E] - strh r1, [r4, 0x32] - ldr r0, _0806D3A4 @ =UpdateMonIconFrame_806DA38 - str r0, [r4, 0x1C] - b _0806D3AE - .align 2, 0 -_0806D3A4: .4byte UpdateMonIconFrame_806DA38 -_0806D3A8: - ldrh r0, [r4, 0x2E] - adds r0, r2, r0 - strh r0, [r4, 0x24] -_0806D3AE: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_806D37C - - thumb_func_start sub_806D3B4 -sub_806D3B4: @ 806D3B4 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r4, r1, 0 - lsls r0, 24 - lsrs r7, r0, 24 - lsls r4, 16 - lsrs r4, 16 - lsls r2, 16 - lsrs r2, 16 - mov r8, r2 - ldr r6, _0806D438 @ =gUnknown_083769C0 - ldr r1, _0806D43C @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r5, r0, r1 - ldrh r0, [r5, 0x8] - ldrb r1, [r6, 0x2] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - ldrb r1, [r6, 0x3] - bl sub_806BA34 - ldrh r0, [r5, 0x8] - ldrb r1, [r6, 0x8] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - ldrb r1, [r6, 0x9] - bl sub_806BB3C - ldrh r0, [r5, 0x8] - ldrb r1, [r6, 0xA] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - ldrb r1, [r6, 0xB] - bl sub_806BB3C - ldrh r1, [r5, 0x8] - subs r1, 0x1 - strh r1, [r5, 0x8] - ldrb r0, [r6, 0x2] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - ldrb r1, [r6, 0x3] - movs r2, 0x4 - bl sub_806B9A4 - cmp r4, 0 - beq _0806D440 - ldrh r0, [r5, 0x8] - ldrb r1, [r6, 0x8] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - ldrb r1, [r6, 0x9] - movs r2, 0 - movs r3, 0x4 - bl sub_806BA94 - b _0806D454 - .align 2, 0 -_0806D438: .4byte gUnknown_083769C0 -_0806D43C: .4byte gTasks -_0806D440: - ldrh r0, [r5, 0x8] - ldrb r1, [r6, 0x8] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - ldrb r1, [r6, 0x9] - movs r2, 0x1 - movs r3, 0x4 - bl sub_806BA94 -_0806D454: - mov r0, r8 - cmp r0, 0 - beq _0806D480 - ldr r1, _0806D47C @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldrh r0, [r0, 0x8] - ldrb r1, [r6, 0xA] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - ldrb r1, [r6, 0xB] - movs r2, 0 - movs r3, 0x4 - bl sub_806BA94 - b _0806D49E - .align 2, 0 -_0806D47C: .4byte gTasks -_0806D480: - ldr r1, _0806D4A8 @ =gTasks - lsls r0, r7, 2 - adds r0, r7 - lsls r0, 3 - adds r0, r1 - ldrh r0, [r0, 0x8] - ldrb r1, [r6, 0xA] - adds r0, r1 - lsls r0, 16 - asrs r0, 16 - ldrb r1, [r6, 0xB] - movs r2, 0x1 - movs r3, 0x4 - bl sub_806BA94 -_0806D49E: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806D4A8: .4byte gTasks - thumb_func_end sub_806D3B4 - - thumb_func_start sub_806D4AC -sub_806D4AC: @ 806D4AC - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - lsls r1, 16 - lsls r2, 24 - lsrs r2, 24 - cmp r1, 0 - beq _0806D4F6 - adds r1, r2, 0x3 - lsls r1, 24 - lsrs r1, 24 - adds r0, r5, 0 - bl GetMonIconSpriteId_maybe - lsls r0, 24 - lsrs r0, 24 - ldr r2, _0806D4FC @ =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r4, r1, r2 - ldr r0, _0806D500 @ =0x0000fff8 - strh r0, [r4, 0x2E] - ldr r3, _0806D504 @ =gTasks - lsls r0, r5, 2 - adds r0, r5 - lsls r0, 3 - adds r0, r3 - movs r3, 0x8 - ldrsh r0, [r0, r3] - lsls r0, 3 - negs r0, r0 - strh r0, [r4, 0x32] - adds r2, 0x1C - adds r1, r2 - ldr r0, _0806D508 @ =sub_806D37C - str r0, [r1] -_0806D4F6: - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806D4FC: .4byte gSprites -_0806D500: .4byte 0x0000fff8 -_0806D504: .4byte gTasks -_0806D508: .4byte sub_806D37C - thumb_func_end sub_806D4AC - - thumb_func_start sub_806D50C -sub_806D50C: @ 806D50C - push {lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - bl GetMonIconSpriteId_maybe - ldr r2, _0806D534 @ =gSprites - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 4 - adds r1, r0 - lsls r1, 2 - adds r1, r2 - ldrh r0, [r1, 0x20] - adds r0, 0xF0 - strh r0, [r1, 0x20] - pop {r0} - bx r0 - .align 2, 0 -_0806D534: .4byte gSprites - thumb_func_end sub_806D50C - - thumb_func_start sub_806D538 -sub_806D538: @ 806D538 - push {r4,lr} - lsls r0, 24 - lsrs r4, r0, 24 - lsls r1, 24 - lsrs r1, 24 - adds r0, r1, 0 - cmp r4, 0xFF - beq _0806D59A - cmp r1, 0x1 - beq _0806D568 - cmp r1, 0x1 - bgt _0806D556 - cmp r1, 0 - beq _0806D560 - b _0806D58A -_0806D556: - cmp r0, 0x2 - beq _0806D570 - cmp r0, 0x3 - beq _0806D57E - b _0806D58A -_0806D560: - movs r0, 0 - movs r1, 0x10 - movs r2, 0x17 - b _0806D576 -_0806D568: - movs r0, 0 - movs r1, 0x10 - movs r2, 0x13 - b _0806D576 -_0806D570: - movs r0, 0 - movs r1, 0x10 - movs r2, 0x16 -_0806D576: - movs r3, 0x13 - bl MenuDrawTextWindow - b _0806D58A -_0806D57E: - movs r0, 0 - movs r1, 0x10 - movs r2, 0x12 - movs r3, 0x13 - bl MenuDrawTextWindow -_0806D58A: - ldr r0, _0806D5A0 @ =gUnknown_08376624 - lsls r1, r4, 2 - adds r1, r0 - ldr r0, [r1] - movs r1, 0x1 - movs r2, 0x11 - bl MenuPrint -_0806D59A: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806D5A0: .4byte gUnknown_08376624 - thumb_func_end sub_806D538 - - thumb_func_start sub_806D5A4 -sub_806D5A4: @ 806D5A4 - push {lr} - movs r0, 0 - movs r1, 0x10 - movs r2, 0x1D - movs r3, 0x13 - bl MenuZeroFillWindowRect - pop {r0} - bx r0 - thumb_func_end sub_806D5A4 - - thumb_func_start sub_806D5B8 -sub_806D5B8: @ 806D5B8 - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0x8 - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r6, _0806D658 @ =gUnknown_08376948 - bl IsDoubleBattle - lsls r4, r5, 2 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r4, r1 - adds r1, r6 - ldrb r1, [r1] - mov r10, r1 - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r4, r1 - adds r1, r6 - ldrb r1, [r1, 0x1] - mov r9, r1 - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r4, r1 - adds r1, r6 - ldrb r1, [r1, 0x2] - mov r8, r1 - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r4, r1 - adds r4, r6 - ldrb r1, [r4, 0x3] - ldr r0, _0806D65C @ =gUnknown_03004210 - str r1, [sp] - mov r1, r10 - mov r2, r9 - mov r3, r8 - bl ZeroFillWindowRect - movs r0, 0 - str r0, [sp, 0x4] - lsls r5, 10 - ldr r0, _0806D660 @ =0x06014000 - adds r5, r0 - ldr r2, _0806D664 @ =0x01000100 - add r0, sp, 0x4 - adds r1, r5, 0 - bl CpuFastSet - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806D658: .4byte gUnknown_08376948 -_0806D65C: .4byte gUnknown_03004210 -_0806D660: .4byte 0x06014000 -_0806D664: .4byte 0x01000100 - thumb_func_end sub_806D5B8 - - thumb_func_start sub_806D668 -sub_806D668: @ 806D668 - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0x8 - adds r5, r0, 0 - lsls r5, 24 - lsrs r5, 24 - ldr r6, _0806D708 @ =gUnknown_08376978 - bl IsDoubleBattle - lsls r4, r5, 2 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r4, r1 - adds r1, r6 - ldrb r1, [r1] - mov r10, r1 - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r4, r1 - adds r1, r6 - ldrb r1, [r1, 0x1] - mov r9, r1 - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r1, r4, r1 - adds r1, r6 - ldrb r1, [r1, 0x2] - mov r8, r1 - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 3 - adds r4, r1 - adds r4, r6 - ldrb r1, [r4, 0x3] - ldr r0, _0806D70C @ =gUnknown_03004210 - str r1, [sp] - mov r1, r10 - mov r2, r9 - mov r3, r8 - bl ZeroFillWindowRect - movs r0, 0 - str r0, [sp, 0x4] - lsls r5, 10 - ldr r0, _0806D710 @ =0x06014300 - adds r5, r0 - ldr r2, _0806D714 @ =0x01000040 - add r0, sp, 0x4 - adds r1, r5, 0 - bl CpuFastSet - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806D708: .4byte gUnknown_08376978 -_0806D70C: .4byte gUnknown_03004210 -_0806D710: .4byte 0x06014300 -_0806D714: .4byte 0x01000040 - thumb_func_end sub_806D668 - - thumb_func_start sub_806D718 -sub_806D718: @ 806D718 - push {r4,r5,lr} - sub sp, 0x4 - lsls r0, 24 - lsrs r4, r0, 24 - ldr r1, _0806D7C4 @ =0x00007fff - mov r0, sp - strh r1, [r0] - movs r5, 0 - cmp r4, 0x1 - bhi _0806D736 - ldr r0, _0806D7C8 @ =gPartyMenuMisc_Gfx - movs r1, 0xC0 - lsls r1, 19 - bl LZDecompressVram -_0806D736: - cmp r4, 0x2 - beq _0806D73E - cmp r4, 0 - bne _0806D746 -_0806D73E: - ldr r0, _0806D7CC @ =gPartyMenuMisc_Tilemap - ldr r1, _0806D7D0 @ =0x06003800 - bl LZDecompressVram -_0806D746: - cmp r4, 0x3 - beq _0806D74E - cmp r4, 0 - bne _0806D75A -_0806D74E: - ldr r0, _0806D7D4 @ =gPartyMenuMisc_Pal - movs r2, 0xB0 - lsls r2, 1 - movs r1, 0 - bl LoadCompressedPalette -_0806D75A: - cmp r4, 0x4 - beq _0806D762 - cmp r4, 0 - bne _0806D776 -_0806D762: - mov r0, sp - movs r1, 0 - movs r2, 0x2 - bl LoadPalette - ldr r0, _0806D7D8 @ =gFontDefaultPalette - movs r1, 0xF0 - movs r2, 0x20 - bl LoadPalette -_0806D776: - cmp r4, 0x5 - beq _0806D77E - cmp r4, 0 - bne _0806D786 -_0806D77E: - ldr r0, _0806D7DC @ =gPartyMenuHpBar_Gfx - ldr r1, _0806D7E0 @ =0x06006000 - bl LZDecompressVram -_0806D786: - cmp r4, 0x6 - beq _0806D78E - cmp r4, 0 - bne _0806D796 -_0806D78E: - ldr r0, _0806D7E4 @ =gPartyMenuOrderText_Gfx - ldr r1, _0806D7E8 @ =0x06006180 - bl LZDecompressVram -_0806D796: - cmp r4, 0x7 - beq _0806D79E - cmp r4, 0 - bne _0806D7A6 -_0806D79E: - ldr r0, _0806D7EC @ =gStatusGfx_Icons - ldr r1, _0806D7F0 @ =0x06007180 - bl LZDecompressVram -_0806D7A6: - cmp r4, 0x8 - beq _0806D7AE - cmp r4, 0 - bne _0806D7BA -_0806D7AE: - ldr r0, _0806D7F4 @ =gStatusPal_Icons - movs r1, 0xB0 - movs r2, 0x20 - bl LoadCompressedPalette - movs r5, 0x1 -_0806D7BA: - adds r0, r5, 0 - add sp, 0x4 - pop {r4,r5} - pop {r1} - bx r1 - .align 2, 0 -_0806D7C4: .4byte 0x00007fff -_0806D7C8: .4byte gPartyMenuMisc_Gfx -_0806D7CC: .4byte gPartyMenuMisc_Tilemap -_0806D7D0: .4byte 0x06003800 -_0806D7D4: .4byte gPartyMenuMisc_Pal -_0806D7D8: .4byte gFontDefaultPalette -_0806D7DC: .4byte gPartyMenuHpBar_Gfx -_0806D7E0: .4byte 0x06006000 -_0806D7E4: .4byte gPartyMenuOrderText_Gfx -_0806D7E8: .4byte 0x06006180 -_0806D7EC: .4byte gStatusGfx_Icons -_0806D7F0: .4byte 0x06007180 -_0806D7F4: .4byte gStatusPal_Icons - thumb_func_end sub_806D718 - - thumb_func_start SetMonIconAnimByHP -SetMonIconAnimByHP: @ 806D7F8 - push {r4-r6,lr} - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 16 - lsls r2, 16 - lsrs r5, r1, 16 - asrs r1, 16 - lsrs r4, r2, 16 - asrs r2, 16 - adds r0, r1, 0 - adds r1, r2, 0 - bl GetHPBarLevel - lsls r0, 24 - lsrs r0, 24 - movs r2, 0 - cmp r5, r4 - beq _0806D830 - movs r2, 0x1 - cmp r0, 0x3 - beq _0806D830 - movs r2, 0x2 - cmp r0, 0x2 - beq _0806D830 - movs r2, 0x4 - cmp r0, 0x1 - bne _0806D830 - movs r2, 0x3 -_0806D830: - lsls r0, r6, 4 - adds r0, r6 - lsls r0, 2 - ldr r1, _0806D848 @ =gSprites - adds r0, r1 - adds r1, r2, 0 - bl sub_809D824 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806D848: .4byte gSprites - thumb_func_end SetMonIconAnimByHP - - thumb_func_start SetMonIconAnim -SetMonIconAnim: @ 806D84C - push {r4-r6,lr} - adds r5, r0, 0 - adds r6, r1, 0 - lsls r5, 24 - lsrs r5, 24 - adds r0, r6, 0 - movs r1, 0x39 - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - adds r0, r6, 0 - movs r1, 0x3A - bl GetMonData - adds r2, r0, 0 - lsls r2, 16 - lsrs r2, 16 - adds r0, r5, 0 - adds r1, r4, 0 - bl SetMonIconAnimByHP - pop {r4-r6} - pop {r0} - bx r0 - thumb_func_end SetMonIconAnim - - thumb_func_start CreatePartyMenuMonIcon -CreatePartyMenuMonIcon: @ 806D880 - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0x8 - adds r6, r0, 0 - adds r5, r1, 0 - mov r8, r3 - lsls r6, 24 - lsrs r6, 24 - lsls r5, 24 - lsrs r5, 24 - lsls r2, 24 - lsrs r2, 24 - ldr r3, _0806D904 @ =gUnknown_08376678 - lsls r1, r5, 2 - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, r3 - ldrb r0, [r1] - mov r9, r0 - ldrb r1, [r1, 0x1] - mov r10, r1 - mov r0, r8 - movs r1, 0x41 - bl GetMonData - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - mov r0, r8 - movs r1, 0 - bl GetMonData - ldr r1, _0806D908 @ =sub_809D62C - movs r2, 0x5 - str r2, [sp] - str r0, [sp, 0x4] - adds r0, r4, 0 - mov r2, r9 - mov r3, r10 - bl CreateMonIcon - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl SetMonIconSpriteId_maybe - adds r0, r4, 0 - mov r1, r8 - bl SetMonIconAnim - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0806D904: .4byte gUnknown_08376678 -_0806D908: .4byte sub_809D62C - thumb_func_end CreatePartyMenuMonIcon - - thumb_func_start TryCreatePartyMenuMonIcon -TryCreatePartyMenuMonIcon: @ 806D90C - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r4, r2, 0 - lsls r0, 24 - lsrs r6, r0, 24 - mov r8, r6 - lsls r1, 24 - lsrs r5, r1, 24 - adds r7, r5, 0 - adds r0, r4, 0 - movs r1, 0xB - bl GetMonData - cmp r0, 0 - beq _0806D95A - bl IsLinkDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _0806D946 - adds r0, r6, 0 - adds r1, r5, 0 - movs r2, 0x2 - adds r3, r4, 0 - bl CreatePartyMenuMonIcon - b _0806D95A -_0806D946: - bl IsDoubleBattle - adds r2, r0, 0 - lsls r2, 24 - lsrs r2, 24 - mov r0, r8 - adds r1, r7, 0 - adds r3, r4, 0 - bl CreatePartyMenuMonIcon -_0806D95A: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end TryCreatePartyMenuMonIcon - - thumb_func_start unref_sub_806D964 -unref_sub_806D964: @ 806D964 - push {r4,r5,lr} - lsls r0, 24 - lsrs r5, r0, 24 - movs r4, 0 - b _0806D986 -_0806D96E: - movs r0, 0x64 - adds r2, r4, 0 - muls r2, r0 - ldr r0, _0806D994 @ =gPlayerParty - adds r2, r0 - adds r0, r5, 0 - adds r1, r4, 0 - bl TryCreatePartyMenuMonIcon - adds r0, r4, 0x1 - lsls r0, 24 - lsrs r4, r0, 24 -_0806D986: - ldr r0, _0806D998 @ =gPlayerPartyCount - ldrb r0, [r0] - cmp r4, r0 - bcc _0806D96E - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_0806D994: .4byte gPlayerParty -_0806D998: .4byte gPlayerPartyCount - thumb_func_end unref_sub_806D964 - - thumb_func_start CreateMonIcon_806D99C -CreateMonIcon_806D99C: @ 806D99C - push {r4-r7,lr} - mov r7, r8 - push {r7} - sub sp, 0x8 - adds r6, r0, 0 - adds r5, r1, 0 - mov r8, r3 - lsls r6, 24 - lsrs r6, 24 - lsls r5, 24 - lsrs r5, 24 - lsls r2, 24 - lsrs r2, 24 - ldr r3, _0806DA04 @ =gUnknown_08376678 - lsls r1, r5, 2 - lsls r0, r2, 1 - adds r0, r2 - lsls r0, 3 - adds r1, r0 - adds r1, r3 - ldrb r2, [r1] - ldrb r3, [r1, 0x1] - mov r1, r8 - ldrh r0, [r1] - ldr r1, _0806DA08 @ =sub_809D62C - movs r4, 0x5 - str r4, [sp] - mov r7, r8 - ldr r4, [r7, 0x18] - str r4, [sp, 0x4] - bl CreateMonIcon - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r6, 0 - adds r1, r5, 0 - adds r2, r4, 0 - bl SetMonIconSpriteId_maybe - ldrh r1, [r7, 0x10] - ldrh r2, [r7, 0x12] - adds r0, r4, 0 - bl SetMonIconAnimByHP - add sp, 0x8 - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0806DA04: .4byte gUnknown_08376678 -_0806DA08: .4byte sub_809D62C - thumb_func_end CreateMonIcon_806D99C - - thumb_func_start UpdateMonIconFrame_806DA0C -UpdateMonIconFrame_806DA0C: @ 806DA0C - push {r4,lr} - adds r4, r0, 0 - bl UpdateMonIconFrame - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - beq _0806DA32 - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _0806DA30 - ldr r0, _0806DA2C @ =0x0000fffd - strh r0, [r4, 0x26] - b _0806DA32 - .align 2, 0 -_0806DA2C: .4byte 0x0000fffd -_0806DA30: - strh r1, [r4, 0x26] -_0806DA32: - pop {r4} - pop {r0} - bx r0 - thumb_func_end UpdateMonIconFrame_806DA0C - - thumb_func_start UpdateMonIconFrame_806DA38 -UpdateMonIconFrame_806DA38: @ 806DA38 - push {lr} - bl UpdateMonIconFrame - pop {r0} - bx r0 - thumb_func_end UpdateMonIconFrame_806DA38 - - thumb_func_start UpdateMonIconFrame_806DA44 -UpdateMonIconFrame_806DA44: @ 806DA44 - push {r4,lr} - lsls r0, 24 - lsrs r0, 24 - lsls r1, 24 - lsrs r1, 24 - lsls r2, 24 - lsrs r4, r2, 24 - cmp r1, 0x5 - bhi _0806DA8E - bl GetMonIconSpriteId_maybe - lsls r0, 24 - lsrs r0, 24 - ldr r3, _0806DA7C @ =gSprites - lsls r1, r0, 4 - adds r1, r0 - lsls r2, r1, 2 - adds r1, r2, r3 - movs r0, 0 - strh r0, [r1, 0x26] - strh r0, [r1, 0x2E] - cmp r4, 0 - bne _0806DA84 - adds r0, r3, 0 - adds r0, 0x1C - adds r0, r2, r0 - ldr r1, _0806DA80 @ =UpdateMonIconFrame_806DA38 - b _0806DA8C - .align 2, 0 -_0806DA7C: .4byte gSprites -_0806DA80: .4byte UpdateMonIconFrame_806DA38 -_0806DA84: - adds r0, r3, 0 - adds r0, 0x1C - adds r0, r2, r0 - ldr r1, _0806DA94 @ =UpdateMonIconFrame_806DA0C -_0806DA8C: - str r1, [r0] -_0806DA8E: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_0806DA94: .4byte UpdateMonIconFrame_806DA0C - thumb_func_end UpdateMonIconFrame_806DA44 - .align 2, 0 @ Don't pad with nop. |