diff options
Diffstat (limited to 'asm/battle_interface.s')
-rw-r--r-- | asm/battle_interface.s | 744 |
1 files changed, 0 insertions, 744 deletions
diff --git a/asm/battle_interface.s b/asm/battle_interface.s index 43a8a8391..f277fbf17 100644 --- a/asm/battle_interface.s +++ b/asm/battle_interface.s @@ -5,750 +5,6 @@ .text - thumb_func_start UpdateHpTextInHealthbox -UpdateHpTextInHealthbox: @ 8048440 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x30 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - lsls r1, 16 - lsrs r1, 16 - mov r10, r1 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - ldr r1, _080484B4 @ =gSprites - lsls r0, 4 - add r0, r9 - lsls r0, 2 - adds r4, r0, r1 - ldrh r0, [r4, 0x3A] - lsls r0, 24 - lsrs r0, 24 - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _08048514 - bl IsDoubleBattle - lsls r0, 24 - cmp r0, 0 - bne _08048514 - mov r0, r8 - cmp r0, 0 - beq _080484BC - mov r2, r10 - lsls r1, r2, 16 - asrs r1, 16 - add r0, sp, 0x10 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - add r3, sp, 0x2C - add r0, sp, 0x10 - movs r1, 0 - movs r2, 0x5 - bl AddTextPrinterAndCreateWindowOnHealthbox - adds r5, r0, 0 - ldrh r0, [r4, 0x4] - lsls r0, 22 - lsrs r0, 17 - ldr r1, _080484B8 @ =0x06010a40 - adds r0, r1 - adds r1, r5, 0 - b _080484FE - .align 2, 0 -_080484B4: .4byte gSprites -_080484B8: .4byte 0x06010a40 -_080484BC: - mov r2, r10 - lsls r1, r2, 16 - asrs r1, 16 - add r0, sp, 0x10 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - movs r1, 0xBA - strb r1, [r0] - movs r1, 0xFF - strb r1, [r0, 0x1] - add r3, sp, 0x2C - add r0, sp, 0x10 - movs r1, 0x4 - movs r2, 0x5 - bl AddTextPrinterAndCreateWindowOnHealthbox - adds r5, r0, 0 - ldrh r4, [r4, 0x4] - lsls r4, 22 - lsrs r4, 17 - ldr r1, _0804850C @ =0x060102e0 - adds r0, r4, r1 - adds r1, r5, 0 - movs r2, 0x1 - bl TextIntoHealthboxObject - ldr r2, _08048510 @ =0x06010a00 - adds r4, r2 - adds r1, r5, 0 - adds r1, 0x20 - adds r0, r4, 0 -_080484FE: - movs r2, 0x2 - bl TextIntoHealthboxObject - ldr r0, [sp, 0x2C] - bl RemoveWindowOnHealthbox - b _080485F8 - .align 2, 0 -_0804850C: .4byte 0x060102e0 -_08048510: .4byte 0x06010a00 -_08048514: - add r5, sp, 0x18 - ldr r1, _0804855C @ =gUnknown_826052C - adds r0, r5, 0 - movs r2, 0x14 - bl memcpy - ldr r1, _08048560 @ =gSprites - mov r0, r9 - lsls r4, r0, 4 - adds r0, r4, r0 - lsls r0, 2 - adds r7, r0, r1 - ldrh r0, [r7, 0x3A] - lsls r0, 24 - lsrs r6, r0, 24 - bl IsDoubleBattle - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - beq _0804854C - adds r0, r6, 0 - bl GetBattlerSide - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _08048564 -_0804854C: - mov r2, r10 - lsls r1, r2, 16 - asrs r1, 16 - mov r0, r9 - mov r2, r8 - bl UpdateHpTextInHealthboxInDoubles - b _080485F8 - .align 2, 0 -_0804855C: .4byte gUnknown_826052C -_08048560: .4byte gSprites -_08048564: - ldrh r0, [r7, 0x3A] - lsls r0, 24 - lsrs r0, 24 - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _08048580 - movs r6, 0x59 - mov r0, r8 - cmp r0, 0 - bne _0804858A - movs r6, 0x1D - b _0804858A -_08048580: - movs r6, 0x30 - mov r1, r8 - cmp r1, 0 - bne _0804858A - movs r6, 0x14 -_0804858A: - mov r0, sp - adds r0, 0x1E - mov r2, r10 - lsls r1, r2, 16 - asrs r1, 16 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - ldr r0, _08048608 @ =gMonSpritesGfxPtr - ldr r0, [r0] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - ldr r0, [r0] - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - str r1, [sp, 0x8] - str r1, [sp, 0xC] - adds r2, r5, 0 - movs r3, 0 - bl RenderTextFont9 - movs r5, 0 - ldr r1, _0804860C @ =gSprites - mov r2, r9 - adds r0, r4, r2 - lsls r0, 2 - adds r4, r0, r1 -_080485C6: - ldr r0, _08048608 @ =gMonSpritesGfxPtr - ldr r0, [r0] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - lsls r1, r5, 6 - adds r1, 0x20 - ldr r0, [r0] - adds r0, r1 - ldrh r1, [r4, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r1, r6 - adds r1, r5 - lsls r1, 5 - ldr r2, _08048610 @ =0x06010000 - adds r1, r2 - ldr r2, _08048614 @ =0x04000008 - bl CpuSet - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - cmp r5, 0x2 - bls _080485C6 -_080485F8: - add sp, 0x30 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08048608: .4byte gMonSpritesGfxPtr -_0804860C: .4byte gSprites -_08048610: .4byte 0x06010000 -_08048614: .4byte 0x04000008 - thumb_func_end UpdateHpTextInHealthbox - - thumb_func_start UpdateHpTextInHealthboxInDoubles -UpdateHpTextInHealthboxInDoubles: @ 8048618 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x28 - lsls r0, 24 - lsrs r0, 24 - mov r9, r0 - lsls r1, 16 - lsrs r4, r1, 16 - lsls r2, 24 - lsrs r2, 24 - mov r8, r2 - ldr r1, _080486F8 @ =gUnknown_8260542 - add r0, sp, 0x10 - movs r2, 0x14 - bl memcpy - ldr r5, _080486FC @ =gSprites - mov r1, r9 - lsls r0, r1, 4 - add r0, r9 - lsls r0, 2 - adds r2, r0, r5 - ldrh r0, [r2, 0x3A] - lsls r0, 24 - lsrs r0, 24 - mov r10, r0 - ldr r0, _08048700 @ =gBattleSpritesDataPtr - ldr r0, [r0] - ldr r1, [r0] - mov r3, r10 - lsls r0, r3, 2 - adds r0, r1 - ldrb r1, [r0] - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - bne _0804866A - b _080487DC -_0804866A: - movs r6, 0x4 - mov r1, r8 - negs r0, r1 - orrs r0, r1 - asrs r0, 31 - ands r6, r0 - ldrh r0, [r2, 0x38] - lsls r0, 24 - lsrs r7, r0, 24 - mov r0, sp - adds r0, 0x16 - lsls r1, r4, 16 - asrs r1, 16 - movs r2, 0x1 - movs r3, 0x3 - bl ConvertIntToDecimalStringN - mov r2, r8 - cmp r2, 0 - bne _08048698 - ldr r1, _08048704 @ =gUnknown_8260540 - bl StringCopy -_08048698: - ldr r0, _08048708 @ =gMonSpritesGfxPtr - ldr r0, [r0] - movs r3, 0xBA - lsls r3, 1 - adds r0, r3 - ldr r0, [r0] - movs r1, 0 - str r1, [sp] - str r1, [sp, 0x4] - str r1, [sp, 0x8] - str r1, [sp, 0xC] - add r2, sp, 0x10 - movs r3, 0 - bl RenderTextFont9 - adds r4, r6, 0 - adds r0, r4, 0x3 - cmp r4, r0 - bge _08048748 - lsls r0, r7, 4 - adds r0, r7 - lsls r0, 2 - adds r5, r0, r5 -_080486C6: - cmp r4, 0x2 - bhi _08048714 - ldr r0, _08048708 @ =gMonSpritesGfxPtr - ldr r0, [r0] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - subs r1, r4, r6 - lsls r1, 6 - adds r1, 0x20 - ldr r0, [r0] - adds r0, r1 - ldrh r1, [r5, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r4, 0x1 - adds r1, r4 - lsls r1, 5 - ldr r2, _0804870C @ =0x06010000 - adds r1, r2 - ldr r2, _08048710 @ =0x04000008 - bl CpuSet - b _0804873E - .align 2, 0 -_080486F8: .4byte gUnknown_8260542 -_080486FC: .4byte gSprites -_08048700: .4byte gBattleSpritesDataPtr -_08048704: .4byte gUnknown_8260540 -_08048708: .4byte gMonSpritesGfxPtr -_0804870C: .4byte 0x06010000 -_08048710: .4byte 0x04000008 -_08048714: - ldr r0, _08048790 @ =gMonSpritesGfxPtr - ldr r0, [r0] - movs r3, 0xBA - lsls r3, 1 - adds r0, r3 - subs r1, r4, r6 - lsls r1, 6 - adds r1, 0x20 - ldr r0, [r0] - adds r0, r1 - ldrh r1, [r5, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r1, r4, r1 - lsls r1, 5 - ldr r2, _08048794 @ =0x06010020 - adds r1, r2 - ldr r2, _08048798 @ =0x04000008 - bl CpuSet - adds r4, 0x1 -_0804873E: - lsls r0, r4, 24 - lsrs r4, r0, 24 - adds r0, r6, 0x3 - cmp r4, r0 - blt _080486C6 -_08048748: - mov r3, r8 - cmp r3, 0 - bne _080487A8 - ldr r0, _08048790 @ =gMonSpritesGfxPtr - ldr r0, [r0] - movs r1, 0xBA - lsls r1, 1 - adds r0, r1 - ldr r0, [r0] - adds r0, 0xE0 - ldr r1, _0804879C @ =gSprites - lsls r4, r7, 4 - adds r4, r7 - lsls r4, 2 - adds r4, r1 - ldrh r1, [r4, 0x4] - lsls r1, 22 - lsrs r1, 17 - adds r1, 0x80 - ldr r5, _080487A0 @ =0x06010000 - adds r1, r5 - ldr r2, _08048798 @ =0x04000008 - bl CpuSet - mov r2, r8 - str r2, [sp, 0x24] - add r0, sp, 0x24 - ldrh r1, [r4, 0x4] - lsls r1, 22 - lsrs r1, 17 - adds r1, r5 - ldr r2, _080487A4 @ =0x05000008 - bl CpuSet - b _080487DC - .align 2, 0 -_08048790: .4byte gMonSpritesGfxPtr -_08048794: .4byte 0x06010020 -_08048798: .4byte 0x04000008 -_0804879C: .4byte gSprites -_080487A0: .4byte 0x06010000 -_080487A4: .4byte 0x05000008 -_080487A8: - mov r0, r10 - bl GetBattlerSide - lsls r0, 24 - cmp r0, 0 - bne _080487DC - movs r0, 0x74 - bl GetHealthboxElementGfxPtr - ldr r2, _080487EC @ =gSprites - mov r3, r9 - lsls r1, r3, 4 - add r1, r9 - lsls r1, 2 - adds r1, r2 - ldrh r1, [r1, 0x4] - lsls r1, 22 - lsrs r1, 17 - movs r2, 0xD0 - lsls r2, 3 - adds r1, r2 - ldr r2, _080487F0 @ =0x06010000 - adds r1, r2 - ldr r2, _080487F4 @ =0x04000008 - bl CpuSet -_080487DC: - add sp, 0x28 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080487EC: .4byte gSprites -_080487F0: .4byte 0x06010000 -_080487F4: .4byte 0x04000008 - thumb_func_end UpdateHpTextInHealthboxInDoubles - - thumb_func_start PrintSafariMonInfo -PrintSafariMonInfo: @ 80487F8 - push {r4-r7,lr} - mov r7, r10 - mov r6, r9 - mov r5, r8 - push {r5-r7} - sub sp, 0x30 - adds r4, r1, 0 - lsls r0, 24 - lsrs r0, 24 - str r0, [sp, 0x24] - ldr r1, _080488AC @ =gUnknown_826052C - add r0, sp, 0x10 - movs r2, 0x14 - bl memcpy - ldr r1, _080488B0 @ =gSprites - ldr r2, [sp, 0x24] - lsls r0, r2, 4 - adds r0, r2 - lsls r0, 2 - adds r0, r1 - ldrh r0, [r0, 0x3A] - lsls r0, 24 - lsrs r0, 24 - bl GetBattlerPosition - ldr r1, _080488B4 @ =gMonSpritesGfxPtr - ldr r2, [r1] - movs r3, 0xBA - lsls r3, 1 - adds r2, r3 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 1 - adds r1, r0 - lsls r1, 7 - movs r0, 0xA4 - lsls r0, 3 - adds r1, r0 - ldr r0, [r2] - adds r6, r0, r1 - movs r1, 0x5 - mov r8, r1 - adds r0, r4, 0 - bl GetNature - lsls r0, 24 - mov r4, sp - adds r4, 0x16 - ldr r1, _080488B8 @ =gNatureNames - lsrs r0, 22 - adds r0, r1 - ldr r1, [r0] - adds r0, r4, 0 - bl StringCopy - movs r0, 0 - str r0, [sp] - str r0, [sp, 0x4] - str r0, [sp, 0x8] - str r0, [sp, 0xC] - adds r0, r6, 0 - movs r1, 0 - add r2, sp, 0x10 - movs r3, 0 - bl RenderTextFont9 - movs r7, 0x6 - movs r5, 0 - mov r2, sp - adds r2, 0x19 - str r2, [sp, 0x28] -_08048888: - mov r0, sp - adds r0, r7 - adds r0, 0x10 - ldrb r1, [r0] - adds r0, r1, 0 - subs r0, 0x37 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - bls _080488A8 - adds r0, r1, 0 - adds r0, 0x79 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x13 - bhi _080488BC -_080488A8: - movs r0, 0x2C - b _080488DA - .align 2, 0 -_080488AC: .4byte gUnknown_826052C -_080488B0: .4byte gSprites -_080488B4: .4byte gMonSpritesGfxPtr -_080488B8: .4byte gNatureNames -_080488BC: - adds r0, r1, 0 - subs r0, 0x4B - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bls _080488D4 - adds r0, r1, 0 - adds r0, 0x65 - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x4 - bhi _080488D8 -_080488D4: - movs r0, 0x2D - b _080488DA -_080488D8: - movs r0, 0x2B -_080488DA: - bl GetHealthboxElementGfxPtr - lsls r1, r5, 6 - adds r1, r6, r1 - ldr r2, _080489F8 @ =0x04000008 - bl CpuSet - adds r0, r5, 0x1 - lsls r0, 24 - lsrs r5, r0, 24 - adds r7, 0x1 - cmp r5, r8 - bcc _08048888 - movs r7, 0x1 - ldr r3, [sp, 0x24] - lsls r3, 4 - str r3, [sp, 0x2C] - movs r0, 0x1 - add r0, r8 - mov r9, r0 - cmp r7, r9 - bge _08048966 - ldr r1, _080489FC @ =gSprites - ldr r2, _080489F8 @ =0x04000008 - mov r10, r2 - ldr r2, [sp, 0x24] - adds r0, r3, r2 - lsls r0, 2 - adds r0, r1 - mov r8, r0 -_08048916: - mov r3, r8 - ldrh r0, [r3, 0x4] - lsls r0, 22 - lsrs r0, 22 - adds r5, r7, 0 - cmp r7, 0 - bge _08048926 - adds r5, r7, 0x7 -_08048926: - asrs r5, 3 - lsls r4, r5, 3 - subs r4, r7, r4 - adds r0, r4 - lsls r5, 6 - adds r0, r5 - lsls r0, 5 - ldr r2, _08048A00 @ =0x06010000 - adds r1, r0, r2 - adds r0, r6, 0 - mov r2, r10 - bl CpuSet - adds r6, 0x20 - mov r3, r8 - ldrh r0, [r3, 0x4] - lsls r0, 22 - lsrs r0, 22 - adds r4, 0x8 - adds r0, r4 - adds r0, r5 - lsls r0, 5 - ldr r2, _08048A00 @ =0x06010000 - adds r1, r0, r2 - adds r0, r6, 0 - mov r2, r10 - bl CpuSet - adds r6, 0x20 - adds r7, 0x1 - cmp r7, r9 - blt _08048916 -_08048966: - ldr r6, _080489FC @ =gSprites - ldr r3, [sp, 0x2C] - ldr r1, [sp, 0x24] - adds r0, r3, r1 - lsls r0, 2 - adds r0, r6 - ldrh r4, [r0, 0x38] - lsls r4, 24 - lsrs r4, 24 - ldr r5, _08048A04 @ =gBattleStruct - ldr r0, [r5] - adds r0, 0x7C - ldrb r1, [r0] - mov r0, sp - adds r0, 0x16 - movs r2, 0x1 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - ldr r0, [r5] - adds r0, 0x7B - ldrb r1, [r0] - ldr r0, [sp, 0x28] - movs r2, 0x1 - movs r3, 0x2 - bl ConvertIntToDecimalStringN - add r0, sp, 0x10 - movs r1, 0 - strb r1, [r0, 0x5] - adds r2, r0, 0 - movs r0, 0xBA - strb r0, [r2, 0x8] - ldr r5, _08048A08 @ =gMonSpritesGfxPtr - ldr r0, [r5] - movs r2, 0xBA - lsls r2, 1 - adds r0, r2 - ldr r0, [r0] - str r1, [sp] - str r1, [sp, 0x4] - str r1, [sp, 0x8] - str r1, [sp, 0xC] - add r2, sp, 0x10 - movs r3, 0 - bl RenderTextFont9 - movs r7, 0 - lsls r0, r4, 4 - adds r0, r4 - lsls r0, 2 - adds r6, r0, r6 - movs r4, 0x20 -_080489D0: - cmp r7, 0x1 - bgt _08048A0C - ldr r0, [r5] - movs r3, 0xBA - lsls r3, 1 - adds r0, r3 - ldr r0, [r0] - adds r0, r4 - ldrh r1, [r6, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r2, r7, 0x2 - adds r1, r2 - lsls r1, 5 - ldr r2, _08048A00 @ =0x06010000 - adds r1, r2 - ldr r2, _080489F8 @ =0x04000008 - bl CpuSet - b _08048A2C - .align 2, 0 -_080489F8: .4byte 0x04000008 -_080489FC: .4byte gSprites -_08048A00: .4byte 0x06010000 -_08048A04: .4byte gBattleStruct -_08048A08: .4byte gMonSpritesGfxPtr -_08048A0C: - ldr r0, [r5] - movs r3, 0xBA - lsls r3, 1 - adds r0, r3 - ldr r0, [r0] - adds r0, r4 - ldrh r1, [r6, 0x4] - lsls r1, 22 - lsrs r1, 22 - adds r1, r7, r1 - lsls r1, 5 - ldr r2, _08048A44 @ =0x060100c0 - adds r1, r2 - ldr r2, _08048A48 @ =0x04000008 - bl CpuSet -_08048A2C: - adds r4, 0x40 - adds r7, 0x1 - cmp r7, 0x4 - ble _080489D0 - add sp, 0x30 - pop {r3-r5} - mov r8, r3 - mov r9, r4 - mov r10, r5 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_08048A44: .4byte 0x060100c0 -_08048A48: .4byte 0x04000008 - thumb_func_end PrintSafariMonInfo - thumb_func_start SwapHpBarsWithHpText SwapHpBarsWithHpText: @ 8048A4C push {r4-r7,lr} |