diff options
author | PikalaxALT <PikalaxALT@gmail.com> | 2020-01-12 12:13:03 -0500 |
---|---|---|
committer | PikalaxALT <PikalaxALT@gmail.com> | 2020-01-12 12:13:03 -0500 |
commit | ae41a2742ced950f37cbe1b21cdf394483ebd05b (patch) | |
tree | a91a0fb1b14cdf466d56cbc941f3ce94a018df03 /asm/battle_interface.s | |
parent | d09a3d7f1c6efc990b44b5ea240b36147d94104a (diff) |
Finish battle_interface.c decomp
Diffstat (limited to 'asm/battle_interface.s')
-rw-r--r-- | asm/battle_interface.s | 1827 |
1 files changed, 0 insertions, 1827 deletions
diff --git a/asm/battle_interface.s b/asm/battle_interface.s deleted file mode 100644 index e4c45c51c..000000000 --- a/asm/battle_interface.s +++ /dev/null @@ -1,1827 +0,0 @@ - .include "asm/macros.inc" - .include "constants/constants.inc" - - .syntax unified - - .text - - thumb_func_start UpdateStatusIconInHealthbox -UpdateStatusIconInHealthbox: @ 8049934 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - ldr r0, _08049998 @ =gSprites - mov r2, r9 - lsls r1, r2, 4 - add r1, r9 - lsls r1, 2 - adds r1, r0 - ldrh r0, [r1, 0x3A] - lsls r0, 24 - lsrs r7, r0, 24 - ldrh r0, [r1, 0x38] - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - adds r0, r7, 0 - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _080499A4 - ldr r1, _0804999C @ =gBattlerPartyIndexes - lsls r0, r7, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080499A0 @ =gPlayerParty - adds r0, r1 - movs r1, 0x37 - bl GetMonData - adds r4, r0, 0 - bl IsDoubleBattle - lsls r0, 24 - movs r3, 0x12 - mov r8, r3 - cmp r0, 0 - bne _080499C0 - movs r0, 0x1A - mov r8, r0 - b _080499C0 - .align 2, 0 -_08049998: .4byte gSprites -_0804999C: .4byte gBattlerPartyIndexes -_080499A0: .4byte gPlayerParty -_080499A4: - ldr r1, _080499E0 @ =gBattlerPartyIndexes - lsls r0, r7, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _080499E4 @ =gEnemyParty - adds r0, r1 - movs r1, 0x37 - bl GetMonData - adds r4, r0, 0 - movs r1, 0x11 - mov r8, r1 -_080499C0: - movs r0, 0x7 - ands r0, r4 - cmp r0, 0 - beq _080499E8 - movs r0, 0x1B - adds r1, r7, 0 - bl GetStatusIconForBankId - lsls r0, 24 - lsrs r0, 24 - bl GetHealthboxElementGfxPtr - adds r6, r0, 0 - movs r0, 0x2 - b _08049AF4 - .align 2, 0 -_080499E0: .4byte gBattlerPartyIndexes -_080499E4: .4byte gEnemyParty -_080499E8: - movs r0, 0x88 - ands r0, r4 - cmp r0, 0 - beq _08049A06 - movs r0, 0x15 - adds r1, r7, 0 - bl GetStatusIconForBankId - lsls r0, 24 - lsrs r0, 24 - bl GetHealthboxElementGfxPtr - adds r6, r0, 0 - movs r0, 0 - b _08049AF4 -_08049A06: - movs r0, 0x10 - ands r0, r4 - cmp r0, 0 - beq _08049A24 - movs r0, 0x21 - adds r1, r7, 0 - bl GetStatusIconForBankId - lsls r0, 24 - lsrs r0, 24 - bl GetHealthboxElementGfxPtr - adds r6, r0, 0 - movs r0, 0x4 - b _08049AF4 -_08049A24: - movs r0, 0x20 - ands r0, r4 - cmp r0, 0 - beq _08049A42 - movs r0, 0x1E - adds r1, r7, 0 - bl GetStatusIconForBankId - lsls r0, 24 - lsrs r0, 24 - bl GetHealthboxElementGfxPtr - adds r6, r0, 0 - movs r0, 0x3 - b _08049AF4 -_08049A42: - movs r0, 0x40 - ands r0, r4 - cmp r0, 0 - beq _08049A60 - movs r0, 0x18 - adds r1, r7, 0 - bl GetStatusIconForBankId - lsls r0, 24 - lsrs r0, 24 - bl GetHealthboxElementGfxPtr - adds r6, r0, 0 - movs r0, 0x1 - b _08049AF4 -_08049A60: - movs r0, 0x27 - bl GetHealthboxElementGfxPtr - adds r6, r0, 0 - movs r4, 0 - mov r2, r9 - lsls r0, r2, 4 - mov r3, r8 - lsls r3, 16 - mov r8, r3 - lsls r7, 2 - ldr r1, _08049AE0 @ =gSprites - add r0, r9 - lsls r0, 2 - adds r5, r0, r1 -_08049A7E: - ldrh r1, [r5, 0x4] - lsls r1, 22 - lsrs r1, 22 - mov r2, r8 - asrs r0, r2, 16 - adds r1, r0 - adds r1, r4 - lsls r1, 5 - ldr r3, _08049AE4 @ =0x06010000 - adds r1, r3 - adds r0, r6, 0 - ldr r2, _08049AE8 @ =0x04000008 - bl CpuSet - adds r4, 0x1 - cmp r4, 0x2 - ble _08049A7E - ldr r0, _08049AEC @ =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r0, [r0] - adds r0, r7, r0 - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08049AD4 - movs r0, 0x1 - bl GetHealthboxElementGfxPtr - ldr r2, _08049AE0 @ =gSprites - mov r3, r10 - lsls r1, r3, 4 - add r1, r10 - lsls r1, 2 - adds r1, r2 - ldrh r1, [r1, 0x4] - lsls r1, 22 - lsrs r1, 17 - ldr r2, _08049AE4 @ =0x06010000 - adds r1, r2 - ldr r2, _08049AF0 @ =0x04000010 - bl CpuSet -_08049AD4: - mov r0, r9 - movs r1, 0x1 - bl TryAddPokeballIconToHealthbox - b _08049BB6 - .align 2, 0 -_08049AE0: .4byte gSprites -_08049AE4: .4byte 0x06010000 -_08049AE8: .4byte 0x04000008 -_08049AEC: .4byte gBattleSpritesDataPtr -_08049AF0: .4byte 0x04000010 -_08049AF4: - mov r1, r9 - lsls r5, r1, 4 - add r5, r9 - lsls r5, 2 - ldr r2, _08049BC4 @ =gSprites - adds r5, r2 - ldrb r4, [r5, 0x5] - lsrs r4, 4 - lsls r4, 4 - adds r4, 0xC - adds r4, r7 - ldr r1, _08049BC8 @ =gUnknown_826055A - lsls r0, 1 - adds r0, r1 - ldrh r0, [r0] - movs r3, 0x80 - lsls r3, 1 - adds r1, r4, r3 - movs r2, 0x2 - bl FillPalette - lsls r4, 1 - ldr r0, _08049BCC @ =gPlttBufferUnfaded + 0x200 - adds r0, r4, r0 - ldr r1, _08049BD0 @ =0x05000200 - adds r4, r1 - adds r1, r4, 0 - movs r2, 0x1 - bl CpuSet - ldrh r1, [r5, 0x4] - lsls r1, 22 - lsrs r1, 22 - add r1, r8 - lsls r1, 5 - ldr r2, _08049BD4 @ =0x06010000 - mov r8, r2 - add r1, r8 - ldr r2, _08049BD8 @ =0x04000018 - adds r0, r6, 0 - bl CpuSet - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _08049B62 - adds r0, r7, 0 - bl GetBattlerSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08049BAE -_08049B62: - ldr r0, _08049BDC @ =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r1, [r0] - lsls r0, r7, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _08049BAE - movs r0, 0 - bl GetHealthboxElementGfxPtr - mov r3, r10 - lsls r4, r3, 4 - add r4, r10 - lsls r4, 2 - ldr r1, _08049BC4 @ =gSprites - adds r4, r1 - ldrh r1, [r4, 0x4] - lsls r1, 22 - lsrs r1, 17 - add r1, r8 - ldr r5, _08049BE0 @ =0x04000008 - adds r2, r5, 0 - bl CpuSet - movs r0, 0x41 - bl GetHealthboxElementGfxPtr - ldrh r1, [r4, 0x4] - lsls r1, 22 - lsrs r1, 17 - adds r1, 0x20 - add r1, r8 - adds r2, r5, 0 - bl CpuSet -_08049BAE: - mov r0, r9 - movs r1, 0 - bl TryAddPokeballIconToHealthbox -_08049BB6: - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08049BC4: .4byte gSprites -_08049BC8: .4byte gUnknown_826055A -_08049BCC: .4byte gPlttBufferUnfaded + 0x200 -_08049BD0: .4byte 0x05000200 -_08049BD4: .4byte 0x06010000 -_08049BD8: .4byte 0x04000018 -_08049BDC: .4byte gBattleSpritesDataPtr -_08049BE0: .4byte 0x04000008 - thumb_func_end UpdateStatusIconInHealthbox - - thumb_func_start GetStatusIconForBankId -GetStatusIconForBankId: @ 8049BE4 - push {lr} - lsls r0, 24 - lsls r1, 24 - lsrs r3, r1, 24 - lsrs r2, r0, 24 - adds r0, r2, 0 - subs r0, 0x15 - cmp r0, 0xC - bhi _08049CA4 - lsls r0, 2 - ldr r1, _08049C00 @ =_08049C04 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_08049C00: .4byte _08049C04 - .align 2, 0 -_08049C04: - .4byte _08049C38 - .4byte _08049CA4 - .4byte _08049CA4 - .4byte _08049C4E - .4byte _08049CA4 - .4byte _08049CA4 - .4byte _08049C64 - .4byte _08049CA4 - .4byte _08049CA4 - .4byte _08049C7A - .4byte _08049CA4 - .4byte _08049CA4 - .4byte _08049C90 -_08049C38: - movs r2, 0x15 - cmp r3, 0 - beq _08049CA4 - movs r2, 0x47 - cmp r3, 0x1 - beq _08049CA4 - movs r2, 0x65 - cmp r3, 0x2 - bne _08049CA4 - movs r2, 0x56 - b _08049CA4 -_08049C4E: - movs r2, 0x18 - cmp r3, 0 - beq _08049CA4 - movs r2, 0x4A - cmp r3, 0x1 - beq _08049CA4 - movs r2, 0x68 - cmp r3, 0x2 - bne _08049CA4 - movs r2, 0x59 - b _08049CA4 -_08049C64: - movs r2, 0x1B - cmp r3, 0 - beq _08049CA4 - movs r2, 0x4D - cmp r3, 0x1 - beq _08049CA4 - movs r2, 0x6B - cmp r3, 0x2 - bne _08049CA4 - movs r2, 0x5C - b _08049CA4 -_08049C7A: - movs r2, 0x1E - cmp r3, 0 - beq _08049CA4 - movs r2, 0x50 - cmp r3, 0x1 - beq _08049CA4 - movs r2, 0x6E - cmp r3, 0x2 - bne _08049CA4 - movs r2, 0x5F - b _08049CA4 -_08049C90: - movs r2, 0x21 - cmp r3, 0 - beq _08049CA4 - movs r2, 0x53 - cmp r3, 0x1 - beq _08049CA4 - movs r2, 0x71 - cmp r3, 0x2 - bne _08049CA4 - movs r2, 0x62 -_08049CA4: - adds r0, r2, 0 - pop {r1} - bx r1 - thumb_func_end GetStatusIconForBankId - - thumb_func_start UpdateSafariBallsTextOnHealthbox -UpdateSafariBallsTextOnHealthbox: @ 8049CAC - push {r4,r5,lr} - sub sp, 0x4 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r0, _08049D00 @ =gUnknown_83FE80C - movs r1, 0 - movs r2, 0x3 - mov r3, sp - bl AddTextPrinterAndCreateWindowOnHealthbox - adds r5, r0, 0 - ldr r1, _08049D04 @ =gSprites - lsls r0, r4, 4 - adds r0, r4 - lsls r0, 2 - adds r0, r1 - ldrh r4, [r0, 0x4] - lsls r4, 22 - lsrs r4, 17 - ldr r1, _08049D08 @ =0x06010040 - adds r0, r4, r1 - adds r1, r5, 0 - movs r2, 0x6 - bl TextIntoHealthboxObject - ldr r0, _08049D0C @ =0x06010800 - adds r4, r0 - adds r5, 0xC0 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x2 - bl TextIntoHealthboxObject - ldr r0, [sp] - bl RemoveWindowOnHealthbox - add sp, 0x4 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08049D00: .4byte gUnknown_83FE80C -_08049D04: .4byte gSprites -_08049D08: .4byte 0x06010040 -_08049D0C: .4byte 0x06010800 - thumb_func_end UpdateSafariBallsTextOnHealthbox - - thumb_func_start UpdateLeftNoOfBallsTextOnHealthbox -UpdateLeftNoOfBallsTextOnHealthbox: @ 8049D10 - push {r4,r5,lr} - sub sp, 0x14 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - ldr r1, _08049D84 @ =gText_HighlightRed_Left - mov r0, sp - bl StringCopy - ldr r1, _08049D88 @ =gNumSafariBalls - ldrb r1, [r1] - movs r2, 0 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - movs r0, 0 - mov r1, sp - movs r2, 0 - bl GetStringWidth - movs r1, 0x2F - subs r1, r0 - add r3, sp, 0x10 - mov r0, sp - movs r2, 0x3 - bl AddTextPrinterAndCreateWindowOnHealthbox - adds r5, r0, 0 - ldr r1, _08049D8C @ =gSprites - lsls r0, r4, 4 - adds r0, r4 - lsls r0, 2 - adds r0, r1 - ldrh r4, [r0, 0x4] - lsls r4, 22 - lsrs r4, 17 - ldr r1, _08049D90 @ =0x060102c0 - adds r0, r4, r1 - adds r1, r5, 0 - movs r2, 0x2 - bl sub_804A734 - ldr r0, _08049D94 @ =0x06010a00 - adds r4, r0 - adds r5, 0x40 - adds r0, r4, 0 - adds r1, r5, 0 - movs r2, 0x4 - bl sub_804A734 - ldr r0, [sp, 0x10] - bl RemoveWindowOnHealthbox - add sp, 0x14 - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_08049D84: .4byte gText_HighlightRed_Left -_08049D88: .4byte gNumSafariBalls -_08049D8C: .4byte gSprites -_08049D90: .4byte 0x060102c0 -_08049D94: .4byte 0x06010a00 - thumb_func_end UpdateLeftNoOfBallsTextOnHealthbox - - thumb_func_start UpdateHealthboxAttribute -UpdateHealthboxAttribute: @ 8049D98 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x4 - mov r8, r1 - lsls r0, 24 - lsrs r6, r0, 24 - lsls r2, 24 - lsrs r7, r2, 24 - ldr r1, _08049F44 @ =gSprites - lsls r0, r6, 4 - adds r0, r6 - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0, 0x3A] - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - cmp r7, 0 - bne _08049DD4 - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - bne _08049DD4 - mov r0, r9 - bl GetBattlerSide -_08049DD4: - ldr r1, _08049F44 @ =gSprites - lsls r0, r6, 4 - adds r0, r6 - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0, 0x3A] - lsls r0, 24 - lsrs r0, 24 - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - beq _08049DF0 - b _08049F50 -_08049DF0: - cmp r7, 0x3 - beq _08049DF8 - cmp r7, 0 - bne _08049E0C -_08049DF8: - mov r0, r8 - movs r1, 0x38 - bl GetMonData - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r6, 0 - bl UpdateLvlInHealthbox -_08049E0C: - cmp r7, 0x1 - bhi _08049E26 - mov r0, r8 - movs r1, 0x39 - bl GetMonData - adds r1, r0, 0 - lsls r1, 16 - asrs r1, 16 - adds r0, r6, 0 - movs r2, 0 - bl UpdateHpTextInHealthbox -_08049E26: - cmp r7, 0x2 - beq _08049E2E - cmp r7, 0 - bne _08049E44 -_08049E2E: - mov r0, r8 - movs r1, 0x3A - bl GetMonData - adds r1, r0, 0 - lsls r1, 16 - asrs r1, 16 - adds r0, r6, 0 - movs r2, 0x1 - bl UpdateHpTextInHealthbox -_08049E44: - cmp r7, 0x5 - beq _08049E4C - cmp r7, 0 - bne _08049E80 -_08049E4C: - movs r0, 0 - bl LoadBattleBarGfx - mov r0, r8 - movs r1, 0x3A - bl GetMonData - adds r4, r0, 0 - mov r0, r8 - movs r1, 0x39 - bl GetMonData - adds r3, r0, 0 - movs r0, 0 - str r0, [sp] - mov r0, r9 - adds r1, r6, 0 - adds r2, r4, 0 - bl SetBattleBarStruct - mov r0, r9 - adds r1, r6, 0 - movs r2, 0 - movs r3, 0 - bl MoveBattleBar -_08049E80: - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - cmp r0, 0 - bne _08049F06 - cmp r7, 0x6 - beq _08049E96 - cmp r7, 0 - bne _08049F06 -_08049E96: - movs r0, 0x3 - bl LoadBattleBarGfx - mov r0, r8 - movs r1, 0xB - bl GetMonData - adds r5, r0, 0 - lsls r5, 16 - lsrs r5, 16 - mov r0, r8 - movs r1, 0x38 - bl GetMonData - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - mov r0, r8 - movs r1, 0x19 - bl GetMonData - adds r3, r0, 0 - ldr r0, _08049F48 @ =gExperienceTables - mov r12, r0 - lsls r1, r4, 2 - ldr r2, _08049F4C @ =gBaseStats - lsls r0, r5, 3 - subs r0, r5 - lsls r0, 2 - adds r0, r2 - ldrb r2, [r0, 0x13] - movs r0, 0xCA - lsls r0, 1 - muls r0, r2 - adds r1, r0 - add r1, r12 - ldr r1, [r1] - subs r3, r1 - adds r4, 0x1 - lsls r4, 2 - adds r4, r0 - add r4, r12 - ldr r2, [r4] - subs r2, r1 - mov r0, r10 - str r0, [sp] - mov r0, r9 - adds r1, r6, 0 - bl SetBattleBarStruct - mov r0, r9 - adds r1, r6, 0 - movs r2, 0x1 - movs r3, 0 - bl MoveBattleBar -_08049F06: - cmp r7, 0x4 - beq _08049F0E - cmp r7, 0 - bne _08049F16 -_08049F0E: - adds r0, r6, 0 - mov r1, r8 - bl UpdateNickInHealthbox -_08049F16: - cmp r7, 0x9 - beq _08049F1E - cmp r7, 0 - bne _08049F24 -_08049F1E: - adds r0, r6, 0 - bl UpdateStatusIconInHealthbox -_08049F24: - cmp r7, 0xA - bne _08049F2E - adds r0, r6, 0 - bl UpdateSafariBallsTextOnHealthbox -_08049F2E: - adds r0, r7, 0 - subs r0, 0xA - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bhi _08049FC6 - adds r0, r6, 0 - bl UpdateLeftNoOfBallsTextOnHealthbox - b _08049FC6 - .align 2, 0 -_08049F44: .4byte gSprites -_08049F48: .4byte gExperienceTables -_08049F4C: .4byte gBaseStats -_08049F50: - cmp r7, 0x3 - beq _08049F58 - cmp r7, 0 - bne _08049F6C -_08049F58: - mov r0, r8 - movs r1, 0x38 - bl GetMonData - adds r1, r0, 0 - lsls r1, 24 - lsrs r1, 24 - adds r0, r6, 0 - bl UpdateLvlInHealthbox -_08049F6C: - cmp r7, 0x5 - beq _08049F74 - cmp r7, 0 - bne _08049FA8 -_08049F74: - movs r0, 0 - bl LoadBattleBarGfx - mov r0, r8 - movs r1, 0x3A - bl GetMonData - adds r4, r0, 0 - mov r0, r8 - movs r1, 0x39 - bl GetMonData - adds r3, r0, 0 - movs r0, 0 - str r0, [sp] - mov r0, r9 - adds r1, r6, 0 - adds r2, r4, 0 - bl SetBattleBarStruct - mov r0, r9 - adds r1, r6, 0 - movs r2, 0 - movs r3, 0 - bl MoveBattleBar -_08049FA8: - cmp r7, 0x4 - beq _08049FB0 - cmp r7, 0 - bne _08049FB8 -_08049FB0: - adds r0, r6, 0 - mov r1, r8 - bl UpdateNickInHealthbox -_08049FB8: - cmp r7, 0x9 - beq _08049FC0 - cmp r7, 0 - bne _08049FC6 -_08049FC0: - adds r0, r6, 0 - bl UpdateStatusIconInHealthbox -_08049FC6: - add sp, 0x4 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end UpdateHealthboxAttribute - - thumb_func_start MoveBattleBar -MoveBattleBar: @ 8049FD8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x8 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r2, 24 - lsrs r2, 24 - mov r9, r2 - cmp r2, 0 - bne _0804A024 - ldr r0, _0804A020 @ =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r0, [r0, 0xC] - mov r1, r8 - lsls r5, r1, 2 - adds r3, r5, r1 - lsls r3, 2 - adds r3, r0 - ldr r0, [r3, 0x4] - ldr r1, [r3, 0x8] - ldr r2, [r3, 0xC] - adds r3, 0x10 - movs r4, 0x6 - str r4, [sp] - movs r4, 0x1 - str r4, [sp, 0x4] - bl sub_804A2F0 - adds r4, r0, 0 - adds r7, r5, 0 - b _0804A080 - .align 2, 0 -_0804A020: .4byte gBattleSpritesDataPtr -_0804A024: - ldr r2, _0804A0D0 @ =gBattleSpritesDataPtr - mov r10, r2 - ldr r0, [r2] - ldr r2, [r0, 0xC] - mov r0, r8 - lsls r4, r0, 2 - adds r0, r4, r0 - lsls r6, r0, 2 - adds r2, r6, r2 - ldr r0, [r2, 0x8] - ldr r1, [r2, 0xC] - ldr r2, [r2, 0x4] - movs r3, 0x8 - bl GetScaledExpFraction - lsls r0, 24 - lsrs r5, r0, 24 - adds r7, r4, 0 - cmp r5, 0 - bne _0804A04E - movs r5, 0x1 -_0804A04E: - mov r1, r10 - ldr r0, [r1] - ldr r0, [r0, 0xC] - adds r4, r6, r0 - ldr r6, [r4, 0xC] - adds r0, r6, 0 - adds r1, r5, 0 - bl __divsi3 - cmp r0, 0 - bge _0804A066 - negs r0, r0 -_0804A066: - lsls r0, 16 - lsrs r5, r0, 16 - ldr r0, [r4, 0x4] - ldr r1, [r4, 0x8] - adds r3, r4, 0 - adds r3, 0x10 - movs r2, 0x8 - str r2, [sp] - str r5, [sp, 0x4] - adds r2, r6, 0 - bl sub_804A2F0 - adds r4, r0, 0 -_0804A080: - mov r2, r9 - cmp r2, 0x1 - beq _0804A09C - cmp r2, 0 - bne _0804A0A4 - ldr r0, _0804A0D0 @ =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r0, [r0] - adds r0, r7, r0 - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _0804A0A4 -_0804A09C: - mov r0, r8 - mov r1, r9 - bl sub_804A0D4 -_0804A0A4: - movs r0, 0x1 - negs r0, r0 - cmp r4, r0 - bne _0804A0BE - ldr r0, _0804A0D0 @ =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r1, [r0, 0xC] - mov r2, r8 - adds r0, r7, r2 - lsls r0, 2 - adds r0, r1 - movs r1, 0 - str r1, [r0, 0x10] -_0804A0BE: - adds r0, r4, 0 - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r1} - bx r1 - .align 2, 0 -_0804A0D0: .4byte gBattleSpritesDataPtr - thumb_func_end MoveBattleBar - - thumb_func_start sub_804A0D4 -sub_804A0D4: @ 804A0D4 - push {r4-r7,lr} - mov r7, r9 - mov r6, r8 - push {r6,r7} - sub sp, 0x10 - lsls r0, 24 - lsrs r6, r0, 24 - lsls r1, 24 - lsrs r1, 24 - cmp r1, 0 - beq _0804A0F0 - cmp r1, 0x1 - beq _0804A1D8 - b _0804A2D6 -_0804A0F0: - ldr r0, _0804A184 @ =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r0, [r0, 0xC] - lsls r5, r6, 2 - adds r3, r5, r6 - lsls r3, 2 - adds r3, r0 - ldr r0, [r3, 0x4] - ldr r1, [r3, 0x8] - ldr r2, [r3, 0xC] - adds r3, 0x10 - add r4, sp, 0x8 - str r4, [sp] - movs r4, 0x6 - str r4, [sp, 0x4] - bl sub_804A3C4 - lsls r0, 24 - lsrs r0, 24 - movs r1, 0x3 - mov r9, r1 - adds r7, r5, 0 - cmp r0, 0x18 - bhi _0804A12C - movs r2, 0x38 - mov r9, r2 - cmp r0, 0x9 - bls _0804A12C - movs r4, 0x2F - mov r9, r4 -_0804A12C: - movs r5, 0 - ldr r0, _0804A188 @ =gSprites - mov r8, r0 -_0804A132: - ldr r0, _0804A184 @ =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r1, [r0, 0xC] - adds r0, r7, r6 - lsls r0, 2 - adds r0, r1 - ldrb r1, [r0] - lsls r0, r1, 4 - adds r0, r1 - lsls r0, 2 - add r0, r8 - ldrh r0, [r0, 0x38] - lsls r0, 24 - lsrs r4, r0, 24 - cmp r5, 0x1 - bhi _0804A194 - mov r0, r9 - bl GetHealthboxElementGfxPtr - mov r1, sp - adds r1, r5 - adds r1, 0x8 - ldrb r1, [r1] - lsls r1, 5 - adds r0, r1 - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - add r1, r8 - ldrh r1, [r1, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r2, r5, 0x2 - adds r1, r2 - lsls r1, 5 - ldr r2, _0804A18C @ =0x06010000 - adds r1, r2 - ldr r2, _0804A190 @ =0x04000008 - bl CpuSet - b _0804A1C2 - .align 2, 0 -_0804A184: .4byte gBattleSpritesDataPtr -_0804A188: .4byte gSprites -_0804A18C: .4byte 0x06010000 -_0804A190: .4byte 0x04000008 -_0804A194: - mov r0, r9 - bl GetHealthboxElementGfxPtr - mov r1, sp - adds r1, r5 - adds r1, 0x8 - ldrb r1, [r1] - lsls r1, 5 - adds r0, r1 - lsls r1, r4, 4 - adds r1, r4 - lsls r1, 2 - add r1, r8 - ldrh r1, [r1, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r1, r5, r1 - lsls r1, 5 - ldr r4, _0804A1D0 @ =0x06010040 - adds r1, r4 - ldr r2, _0804A1D4 @ =0x04000008 - bl CpuSet -_0804A1C2: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x5 - bls _0804A132 - b _0804A2D6 - .align 2, 0 -_0804A1D0: .4byte 0x06010040 -_0804A1D4: .4byte 0x04000008 -_0804A1D8: - ldr r0, _0804A27C @ =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r0, [r0, 0xC] - lsls r5, r6, 2 - adds r3, r5, r6 - lsls r3, 2 - adds r3, r0 - ldr r0, [r3, 0x4] - ldr r1, [r3, 0x8] - ldr r2, [r3, 0xC] - adds r3, 0x10 - add r4, sp, 0x8 - str r4, [sp] - movs r4, 0x8 - str r4, [sp, 0x4] - bl sub_804A3C4 - ldr r1, _0804A280 @ =gBattlerPartyIndexes - lsls r0, r6, 1 - adds r0, r1 - ldrh r1, [r0] - movs r0, 0x64 - muls r0, r1 - ldr r1, _0804A284 @ =gPlayerParty - adds r0, r1 - movs r1, 0x38 - bl GetMonData - lsls r0, 24 - lsrs r0, 24 - adds r7, r5, 0 - cmp r0, 0x64 - bne _0804A230 - movs r5, 0 - movs r1, 0 -_0804A21E: - mov r0, sp - adds r0, r5 - adds r0, 0x8 - strb r1, [r0] - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x7 - bls _0804A21E -_0804A230: - movs r5, 0 - ldr r0, _0804A288 @ =gSprites - mov r8, r0 - adds r0, r7, r6 - lsls r4, r0, 2 -_0804A23A: - cmp r5, 0x3 - bhi _0804A294 - movs r0, 0xC - bl GetHealthboxElementGfxPtr - mov r1, sp - adds r1, r5 - adds r1, 0x8 - ldrb r1, [r1] - lsls r1, 5 - adds r0, r1 - ldr r1, _0804A27C @ =gBattleSpritesDataPtr - ldr r1, [r1] - ldr r1, [r1, 0xC] - adds r1, r4, r1 - ldrb r2, [r1] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - add r1, r8 - ldrh r1, [r1, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r2, r5, 0 - adds r2, 0x24 - adds r1, r2 - lsls r1, 5 - ldr r2, _0804A28C @ =0x06010000 - adds r1, r2 - ldr r2, _0804A290 @ =0x04000008 - bl CpuSet - b _0804A2CC - .align 2, 0 -_0804A27C: .4byte gBattleSpritesDataPtr -_0804A280: .4byte gBattlerPartyIndexes -_0804A284: .4byte gPlayerParty -_0804A288: .4byte gSprites -_0804A28C: .4byte 0x06010000 -_0804A290: .4byte 0x04000008 -_0804A294: - movs r0, 0xC - bl GetHealthboxElementGfxPtr - mov r1, sp - adds r1, r5 - adds r1, 0x8 - ldrb r1, [r1] - lsls r1, 5 - adds r0, r1 - ldr r1, _0804A2E4 @ =gBattleSpritesDataPtr - ldr r1, [r1] - ldr r1, [r1, 0xC] - adds r1, r4, r1 - ldrb r2, [r1] - lsls r1, r2, 4 - adds r1, r2 - lsls r1, 2 - add r1, r8 - ldrh r1, [r1, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r1, r5, r1 - lsls r1, 5 - ldr r2, _0804A2E8 @ =0x06010b80 - adds r1, r2 - ldr r2, _0804A2EC @ =0x04000008 - bl CpuSet -_0804A2CC: - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x7 - bls _0804A23A -_0804A2D6: - add sp, 0x10 - pop {r3,r4} - mov r8, r3 - mov r9, r4 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_0804A2E4: .4byte gBattleSpritesDataPtr -_0804A2E8: .4byte 0x06010b80 -_0804A2EC: .4byte 0x04000008 - thumb_func_end sub_804A0D4 - - thumb_func_start sub_804A2F0 -sub_804A2F0: @ 804A2F0 - push {r4-r7,lr} - mov r7, r8 - push {r7} - adds r7, r0, 0 - adds r4, r1, 0 - mov r8, r2 - adds r5, r3, 0 - ldr r1, [sp, 0x18] - ldr r0, [sp, 0x1C] - lsls r0, 16 - lsrs r3, r0, 16 - lsls r1, 27 - lsrs r2, r1, 24 - ldr r1, [r5] - ldr r0, _0804A31C @ =0xffff8000 - cmp r1, r0 - bne _0804A322 - cmp r7, r2 - bge _0804A320 - lsls r0, r4, 8 - str r0, [r5] - b _0804A322 - .align 2, 0 -_0804A31C: .4byte 0xffff8000 -_0804A320: - str r4, [r5] -_0804A322: - mov r0, r8 - subs r4, r0 - cmp r4, 0 - bge _0804A32E - movs r4, 0 - b _0804A334 -_0804A32E: - cmp r4, r7 - ble _0804A334 - adds r4, r7, 0 -_0804A334: - cmp r7, r2 - bge _0804A350 - ldr r0, [r5] - asrs r1, r0, 8 - adds r6, r0, 0 - cmp r4, r1 - bne _0804A35C - movs r0, 0xFF - ands r0, r6 - cmp r0, 0 - bne _0804A35C - movs r0, 0x1 - negs r0, r0 - b _0804A3B8 -_0804A350: - ldr r6, [r5] - cmp r4, r6 - bne _0804A35C - movs r0, 0x1 - negs r0, r0 - b _0804A3B8 -_0804A35C: - cmp r7, r2 - bge _0804A396 - lsls r0, r7, 8 - adds r1, r2, 0 - bl __divsi3 - mov r1, r8 - cmp r1, 0 - bge _0804A37A - adds r0, r6, r0 - str r0, [r5] - asrs r2, r0, 8 - cmp r2, r4 - blt _0804A3B6 - b _0804A38E -_0804A37A: - subs r0, r6, r0 - str r0, [r5] - asrs r2, r0, 8 - movs r1, 0xFF - ands r0, r1 - cmp r0, 0 - ble _0804A38A - adds r2, 0x1 -_0804A38A: - cmp r2, r4 - bgt _0804A3B6 -_0804A38E: - lsls r0, r4, 8 - str r0, [r5] - adds r2, r4, 0 - b _0804A3B6 -_0804A396: - mov r0, r8 - cmp r0, 0 - bge _0804A3A8 - ldr r0, [r5] - adds r0, r3 - str r0, [r5] - cmp r0, r4 - ble _0804A3B4 - b _0804A3B2 -_0804A3A8: - ldr r0, [r5] - subs r0, r3 - str r0, [r5] - cmp r0, r4 - bge _0804A3B4 -_0804A3B2: - str r4, [r5] -_0804A3B4: - ldr r2, [r5] -_0804A3B6: - adds r0, r2, 0 -_0804A3B8: - pop {r3} - mov r8, r3 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_804A2F0 - - thumb_func_start sub_804A3C4 -sub_804A3C4: @ 804A3C4 - push {r4-r7,lr} - adds r4, r0, 0 - mov r12, r3 - ldr r7, [sp, 0x14] - ldr r0, [sp, 0x18] - lsls r0, 24 - lsrs r6, r0, 24 - subs r5, r1, r2 - cmp r5, 0 - bge _0804A3DC - movs r5, 0 - b _0804A3E2 -_0804A3DC: - cmp r5, r4 - ble _0804A3E2 - adds r5, r4, 0 -_0804A3E2: - lsls r0, r6, 27 - lsrs r3, r0, 24 - movs r1, 0 - cmp r1, r6 - bcs _0804A3FC - movs r2, 0 -_0804A3EE: - adds r0, r7, r1 - strb r2, [r0] - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - cmp r1, r6 - bcc _0804A3EE -_0804A3FC: - cmp r4, r3 - bge _0804A410 - mov r1, r12 - ldr r0, [r1] - muls r0, r3 - adds r1, r4, 0 - bl __divsi3 - asrs r0, 8 - b _0804A41C -_0804A410: - mov r1, r12 - ldr r0, [r1] - muls r0, r3 - adds r1, r4, 0 - bl __divsi3 -_0804A41C: - lsls r0, 24 - lsrs r2, r0, 24 - adds r3, r2, 0 - cmp r3, 0 - bne _0804A432 - cmp r5, 0 - ble _0804A432 - movs r0, 0x1 - strb r0, [r7] - movs r3, 0x1 - b _0804A456 -_0804A432: - movs r1, 0 - movs r4, 0x8 -_0804A436: - cmp r1, r6 - bcs _0804A456 - cmp r2, 0x7 - bls _0804A452 - adds r0, r7, r1 - strb r4, [r0] - adds r0, r2, 0 - subs r0, 0x8 - lsls r0, 24 - lsrs r2, r0, 24 - adds r0, r1, 0x1 - lsls r0, 24 - lsrs r1, r0, 24 - b _0804A436 -_0804A452: - adds r0, r7, r1 - strb r2, [r0] -_0804A456: - adds r0, r3, 0 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end sub_804A3C4 - - thumb_func_start sub_804A460 -sub_804A460: @ 804A460 - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0x8 - mov r9, r0 - mov r10, r1 - adds r6, r2, 0 - mov r8, r3 - ldr r5, [sp, 0x24] - lsls r6, 24 - lsrs r6, 24 - mov r0, r8 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - lsls r5, 24 - lsrs r5, 24 - mov r1, r9 - ldr r0, [r1] - ldr r1, [r1, 0x4] - mov r3, r9 - ldr r2, [r3, 0x8] - movs r3, 0x6 - str r3, [sp] - movs r3, 0x1 - str r3, [sp, 0x4] - mov r3, r10 - bl sub_804A2F0 - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - str r5, [sp] - mov r0, r9 - mov r1, r10 - adds r2, r6, 0 - mov r3, r8 - bl sub_804A510 - lsls r4, 16 - asrs r4, 16 - adds r0, r4, 0 - add sp, 0x8 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r1} - bx r1 - thumb_func_end sub_804A460 - - thumb_func_start sub_804A4C8 -sub_804A4C8: @ 804A4C8 - push {r4,lr} - sub sp, 0x8 - adds r3, r1, 0 - ldr r4, [r0] - ldr r1, [r0, 0x4] - ldr r2, [r0, 0x8] - movs r0, 0x6 - str r0, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - adds r0, r4, 0 - bl sub_804A2F0 - lsls r0, 16 - asrs r0, 16 - add sp, 0x8 - pop {r4} - pop {r1} - bx r1 - thumb_func_end sub_804A4C8 - - thumb_func_start sub_804A4F0 -sub_804A4F0: @ 804A4F0 - push {r4,lr} - sub sp, 0x4 - ldr r4, [sp, 0xC] - lsls r2, 24 - lsrs r2, 24 - lsls r3, 24 - lsrs r3, 24 - lsls r4, 24 - lsrs r4, 24 - str r4, [sp] - bl sub_804A510 - add sp, 0x4 - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_804A4F0 - - thumb_func_start sub_804A510 -sub_804A510: @ 804A510 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x20 - adds r4, r0, 0 - adds r5, r1, 0 - ldr r0, [sp, 0x40] - lsls r2, 24 - lsrs r2, 24 - mov r9, r2 - lsls r3, 24 - lsrs r3, 24 - mov r10, r3 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - ldr r0, [r4] - ldr r1, [r4, 0x4] - ldr r2, [r4, 0x8] - add r3, sp, 0xC - str r3, [sp] - movs r3, 0x6 - str r3, [sp, 0x4] - adds r3, r5, 0 - bl sub_804A3C4 - movs r3, 0 - add r6, sp, 0x14 - adds r7, r6, 0 - ldrb r0, [r4, 0xC] - lsls r5, r0, 27 - ldr r4, [r4, 0x10] -_0804A554: - lsls r2, r3, 1 - adds r2, r7, r2 - lsrs r1, r5, 15 - mov r0, sp - adds r0, r3 - adds r0, 0xC - ldrb r0, [r0] - adds r0, r4, r0 - orrs r1, r0 - strh r1, [r2] - adds r0, r3, 0x1 - lsls r0, 24 - lsrs r3, r0, 24 - cmp r3, 0x5 - bls _0804A554 - movs r0, 0x6 - str r0, [sp] - movs r0, 0x1 - str r0, [sp, 0x4] - movs r0, 0x11 - str r0, [sp, 0x8] - mov r0, r9 - adds r1, r6, 0 - mov r2, r10 - mov r3, r8 - bl CopyToBgTilemapBufferRect_ChangePalette - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - thumb_func_end sub_804A510 - - thumb_func_start GetScaledExpFraction -GetScaledExpFraction: @ 804A59C - push {r4-r7,lr} - adds r6, r2, 0 - lsls r3, 27 - lsrs r7, r3, 24 - subs r5, r0, r1 - cmp r5, 0 - bge _0804A5AE - movs r5, 0 - b _0804A5B4 -_0804A5AE: - cmp r5, r6 - ble _0804A5B4 - adds r5, r6, 0 -_0804A5B4: - muls r0, r7 - adds r1, r6, 0 - bl __divsi3 - adds r4, r0, 0 - lsls r4, 24 - lsrs r4, 24 - adds r0, r5, 0 - muls r0, r7 - adds r1, r6, 0 - bl __divsi3 - lsls r4, 24 - asrs r4, 24 - lsls r0, 24 - asrs r0, 24 - subs r0, r4, r0 - cmp r0, 0 - bge _0804A5DC - negs r0, r0 -_0804A5DC: - lsls r0, 24 - lsrs r0, 24 - pop {r4-r7} - pop {r1} - bx r1 - thumb_func_end GetScaledExpFraction - - thumb_func_start GetScaledHPFraction -GetScaledHPFraction: @ 804A5E8 - push {r4,lr} - lsls r2, 24 - lsrs r2, 24 - lsls r0, 16 - asrs r4, r0, 16 - adds r0, r4, 0 - muls r0, r2 - lsls r1, 16 - asrs r1, 16 - bl __divsi3 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0 - bne _0804A60C - cmp r4, 0 - ble _0804A60C - movs r0, 0x1 -_0804A60C: - pop {r4} - pop {r1} - bx r1 - thumb_func_end GetScaledHPFraction - - thumb_func_start GetHPBarLevel -GetHPBarLevel: @ 804A614 - push {lr} - lsls r0, 16 - asrs r0, 16 - lsls r1, 16 - asrs r1, 16 - cmp r0, r1 - bne _0804A626 - movs r0, 0x4 - b _0804A642 -_0804A626: - movs r2, 0x30 - bl GetScaledHPFraction - lsls r0, 24 - lsrs r1, r0, 24 - movs r0, 0x3 - cmp r1, 0x18 - bhi _0804A642 - movs r0, 0x2 - cmp r1, 0x9 - bhi _0804A642 - negs r0, r1 - orrs r0, r1 - lsrs r0, 31 -_0804A642: - pop {r1} - bx r1 - thumb_func_end GetHPBarLevel - - thumb_func_start AddTextPrinterAndCreateWindowOnHealthbox -AddTextPrinterAndCreateWindowOnHealthbox: @ 804A648 - push {r4-r6,lr} - mov r6, r10 - mov r5, r9 - mov r4, r8 - push {r4-r6} - sub sp, 0x20 - mov r9, r0 - adds r6, r1, 0 - mov r8, r2 - mov r10, r3 - ldr r0, _0804A6D4 @ =gUnknown_8260564 - ldr r1, [r0, 0x4] - ldr r0, [r0] - str r0, [sp, 0x18] - str r1, [sp, 0x1C] - add r0, sp, 0x18 - bl AddWindow - adds r4, r0, 0 - lsls r4, 16 - lsrs r4, 16 - lsls r5, r4, 24 - lsrs r5, 24 - adds r0, r5, 0 - movs r1, 0x22 - bl FillWindowPixelBuffer - add r1, sp, 0x14 - movs r2, 0 - movs r0, 0x2 - strb r0, [r1] - movs r0, 0x1 - strb r0, [r1, 0x1] - movs r0, 0x3 - strb r0, [r1, 0x2] - lsls r6, 24 - lsrs r6, 24 - mov r0, r8 - lsls r0, 24 - lsrs r0, 24 - mov r8, r0 - str r2, [sp] - str r2, [sp, 0x4] - str r1, [sp, 0x8] - movs r0, 0x1 - negs r0, r0 - str r0, [sp, 0xC] - mov r0, r9 - str r0, [sp, 0x10] - adds r0, r5, 0 - movs r1, 0 - adds r2, r6, 0 - mov r3, r8 - bl AddTextPrinterParameterized4 - mov r0, r10 - str r4, [r0] - adds r0, r5, 0 - movs r1, 0x7 - bl GetWindowAttribute - add sp, 0x20 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r6} - pop {r1} - bx r1 - .align 2, 0 -_0804A6D4: .4byte gUnknown_8260564 - thumb_func_end AddTextPrinterAndCreateWindowOnHealthbox - - thumb_func_start RemoveWindowOnHealthbox -RemoveWindowOnHealthbox: @ 804A6D8 - push {lr} - lsls r0, 24 - lsrs r0, 24 - bl RemoveWindow - pop {r0} - bx r0 - thumb_func_end RemoveWindowOnHealthbox - - thumb_func_start TextIntoHealthboxObject -TextIntoHealthboxObject: @ 804A6E8 - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - adds r4, r2, 0 - movs r1, 0x80 - lsls r1, 1 - adds r0, r5, r1 - adds r1, r6, r1 - lsls r2, r4, 3 - ldr r3, _0804A72C @ =0x001fffff - ands r2, r3 - movs r3, 0x80 - lsls r3, 19 - orrs r2, r3 - bl CpuSet - cmp r4, 0 - ble _0804A724 -_0804A70C: - adds r0, r5, 0 - adds r0, 0x14 - adds r1, r6, 0 - adds r1, 0x14 - ldr r2, _0804A730 @ =0x04000003 - bl CpuSet - adds r6, 0x20 - adds r5, 0x20 - subs r4, 0x1 - cmp r4, 0 - bne _0804A70C -_0804A724: - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0804A72C: .4byte 0x001fffff -_0804A730: .4byte 0x04000003 - thumb_func_end TextIntoHealthboxObject - - thumb_func_start sub_804A734 -sub_804A734: @ 804A734 - push {r4-r6,lr} - adds r6, r0, 0 - adds r5, r1, 0 - lsls r4, r2, 3 - ldr r0, _0804A768 @ =0x001fffff - ands r4, r0 - movs r0, 0x80 - lsls r0, 19 - orrs r4, r0 - adds r0, r5, 0 - adds r1, r6, 0 - adds r2, r4, 0 - bl CpuSet - movs r0, 0x80 - lsls r0, 1 - adds r5, r0 - adds r6, r0 - adds r0, r5, 0 - adds r1, r6, 0 - adds r2, r4, 0 - bl CpuSet - pop {r4-r6} - pop {r0} - bx r0 - .align 2, 0 -_0804A768: .4byte 0x001fffff - thumb_func_end sub_804A734 - - .align 2, 0 @ Don't pad with nop. |