diff options
Diffstat (limited to 'asm')
-rw-r--r-- | asm/dark.s | 1071 |
1 files changed, 0 insertions, 1071 deletions
diff --git a/asm/dark.s b/asm/dark.s index 9f6ad3278..572780621 100644 --- a/asm/dark.s +++ b/asm/dark.s @@ -7,1077 +7,6 @@ @ dark - thumb_func_start sub_80DFF1C -sub_80DFF1C: @ 80DFF1C - push {r4,r5,lr} - adds r4, r0, 0 - ldr r5, _080DFF50 @ =gBattleAnimArgs - ldrh r0, [r5] - ldrh r1, [r4, 0x20] - adds r0, r1 - strh r0, [r4, 0x20] - ldrh r0, [r5, 0x2] - ldrh r1, [r4, 0x22] - adds r0, r1 - strh r0, [r4, 0x22] - ldrb r1, [r5, 0x4] - adds r0, r4, 0 - bl StartSpriteAffineAnim - ldrh r0, [r5, 0x6] - strh r0, [r4, 0x2E] - ldrh r0, [r5, 0x8] - strh r0, [r4, 0x30] - ldrh r0, [r5, 0xA] - strh r0, [r4, 0x32] - ldr r0, _080DFF54 @ =sub_80DFF58 - str r0, [r4, 0x1C] - pop {r4,r5} - pop {r0} - bx r0 - .align 2, 0 -_080DFF50: .4byte gBattleAnimArgs -_080DFF54: .4byte sub_80DFF58 - thumb_func_end sub_80DFF1C - - thumb_func_start sub_80DFF58 -sub_80DFF58: @ 80DFF58 - push {lr} - adds r2, r0, 0 - ldrh r0, [r2, 0x2E] - ldrh r1, [r2, 0x36] - adds r0, r1 - strh r0, [r2, 0x36] - ldrh r1, [r2, 0x30] - ldrh r3, [r2, 0x38] - adds r1, r3 - strh r1, [r2, 0x38] - lsls r0, 16 - asrs r0, 24 - strh r0, [r2, 0x24] - lsls r1, 16 - asrs r1, 24 - strh r1, [r2, 0x26] - ldrh r0, [r2, 0x34] - adds r0, 0x1 - strh r0, [r2, 0x34] - lsls r0, 16 - asrs r0, 16 - movs r3, 0x32 - ldrsh r1, [r2, r3] - cmp r0, r1 - bne _080DFF8E - ldr r0, _080DFF94 @ =sub_80DFF98 - str r0, [r2, 0x1C] -_080DFF8E: - pop {r0} - bx r0 - .align 2, 0 -_080DFF94: .4byte sub_80DFF98 - thumb_func_end sub_80DFF58 - - thumb_func_start sub_80DFF98 -sub_80DFF98: @ 80DFF98 - push {lr} - adds r3, r0, 0 - ldrh r1, [r3, 0x36] - ldrh r0, [r3, 0x2E] - subs r1, r0 - strh r1, [r3, 0x36] - ldrh r0, [r3, 0x38] - ldrh r2, [r3, 0x30] - subs r0, r2 - strh r0, [r3, 0x38] - lsls r1, 16 - asrs r1, 24 - strh r1, [r3, 0x24] - lsls r0, 16 - asrs r0, 24 - strh r0, [r3, 0x26] - ldrh r0, [r3, 0x34] - subs r0, 0x1 - strh r0, [r3, 0x34] - lsls r0, 16 - cmp r0, 0 - bne _080DFFCA - adds r0, r3, 0 - bl move_anim_8074EE0 -_080DFFCA: - pop {r0} - bx r0 - thumb_func_end sub_80DFF98 - - thumb_func_start sub_80DFFD0 -sub_80DFFD0: @ 80DFFD0 - push {r4-r7,lr} - adds r4, r0, 0 - ldr r0, _080DFFE4 @ =gBattleAnimArgs - movs r2, 0 - ldrsh r1, [r0, r2] - adds r3, r0, 0 - cmp r1, 0 - bne _080DFFEC - ldr r0, _080DFFE8 @ =gAnimBankAttacker - b _080DFFEE - .align 2, 0 -_080DFFE4: .4byte gBattleAnimArgs -_080DFFE8: .4byte gAnimBankAttacker -_080DFFEC: - ldr r0, _080E001C @ =gAnimBankTarget -_080DFFEE: - ldrb r5, [r0] - movs r6, 0x14 - ldrh r2, [r4, 0x4] - lsls r1, r2, 22 - lsrs r1, 22 - adds r1, 0x4 - ldr r7, _080E0020 @ =0x000003ff - adds r0, r7, 0 - ands r1, r0 - ldr r0, _080E0024 @ =0xfffffc00 - ands r0, r2 - orrs r0, r1 - strh r0, [r4, 0x4] - movs r1, 0x2 - ldrsh r0, [r3, r1] - cmp r0, 0x1 - beq _080E004C - cmp r0, 0x1 - bgt _080E0028 - cmp r0, 0 - beq _080E0032 - b _080E00A0 - .align 2, 0 -_080E001C: .4byte gAnimBankTarget -_080E0020: .4byte 0x000003ff -_080E0024: .4byte 0xfffffc00 -_080E0028: - cmp r0, 0x2 - beq _080E0066 - cmp r0, 0x3 - beq _080E007E - b _080E00A0 -_080E0032: - adds r0, r5, 0 - movs r1, 0x5 - bl sub_807A100 - subs r0, 0x8 - strh r0, [r4, 0x20] - adds r0, r5, 0 - movs r1, 0x2 - bl sub_807A100 - adds r0, 0x8 - strh r0, [r4, 0x22] - b _080E00A0 -_080E004C: - adds r0, r5, 0 - movs r1, 0x5 - bl sub_807A100 - subs r0, 0xE - strh r0, [r4, 0x20] - adds r0, r5, 0 - movs r1, 0x2 - bl sub_807A100 - adds r0, 0x10 - strh r0, [r4, 0x22] - b _080E00A0 -_080E0066: - adds r0, r5, 0 - movs r1, 0x4 - bl sub_807A100 - adds r0, 0x8 - strh r0, [r4, 0x20] - adds r0, r5, 0 - movs r1, 0x2 - bl sub_807A100 - adds r0, 0x8 - b _080E0094 -_080E007E: - adds r0, r5, 0 - movs r1, 0x4 - bl sub_807A100 - adds r0, 0xE - strh r0, [r4, 0x20] - adds r0, r5, 0 - movs r1, 0x2 - bl sub_807A100 - adds r0, 0x10 -_080E0094: - strh r0, [r4, 0x22] - adds r0, r4, 0 - movs r1, 0x1 - bl StartSpriteAffineAnim - movs r6, 0xEC -_080E00A0: - movs r0, 0x20 - strh r0, [r4, 0x2E] - lsls r0, r6, 24 - asrs r0, 24 - ldrh r2, [r4, 0x20] - adds r0, r2 - strh r0, [r4, 0x32] - ldrh r0, [r4, 0x22] - adds r0, 0xC - strh r0, [r4, 0x36] - ldr r0, _080E00C8 @ =0x0000fff4 - strh r0, [r4, 0x38] - adds r0, r4, 0 - bl sub_80786EC - ldr r0, _080E00CC @ =sub_80E00D0 - str r0, [r4, 0x1C] - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080E00C8: .4byte 0x0000fff4 -_080E00CC: .4byte sub_80E00D0 - thumb_func_end sub_80DFFD0 - - thumb_func_start sub_80E00D0 -sub_80E00D0: @ 80E00D0 - push {r4,lr} - adds r4, r0, 0 - bl sub_8078718 - lsls r0, 24 - cmp r0, 0 - beq _080E00E4 - adds r0, r4, 0 - bl move_anim_8074EE0 -_080E00E4: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80E00D0 - - thumb_func_start sub_80E00EC -sub_80E00EC: @ 80E00EC - push {r4-r7,lr} - sub sp, 0x18 - lsls r0, 24 - lsrs r0, 24 - lsls r1, r0, 2 - adds r1, r0 - lsls r1, 3 - ldr r0, _080E0150 @ =gTasks - adds r5, r1, r0 - ldr r4, _080E0154 @ =gAnimBankAttacker - ldrb r0, [r4] - movs r1, 0x1 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - adds r0, 0x1F - movs r6, 0 - strh r0, [r5, 0x16] - ldrb r0, [r4] - movs r1, 0x2 - bl sub_807A100 - subs r0, 0x7 - strh r0, [r5, 0x14] - ldrh r1, [r5, 0x16] - strh r1, [r5, 0x12] - strh r0, [r5, 0x10] - subs r1, r0 - lsls r1, 8 - strh r1, [r5, 0x22] - ldrb r0, [r4] - movs r1, 0 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - adds r1, r0, 0 - subs r1, 0x20 - strh r1, [r5, 0x24] - adds r0, 0x20 - strh r0, [r5, 0x26] - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080E015C - ldr r0, _080E0158 @ =0x0000fff4 - b _080E015E - .align 2, 0 -_080E0150: .4byte gTasks -_080E0154: .4byte gAnimBankAttacker -_080E0158: .4byte 0x0000fff4 -_080E015C: - ldr r0, _080E01A8 @ =0x0000ffc0 -_080E015E: - strh r0, [r5, 0x18] - ldr r0, _080E01AC @ =gAnimBankAttacker - ldrb r0, [r0] - bl GetBankIdentity_permutated - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0xE] - cmp r0, 0x1 - bne _080E01C4 - add r4, sp, 0xC - adds r0, r4, 0 - bl sub_8078914 - ldr r0, _080E01B0 @ =gBattle_BG1_Y - ldrh r0, [r0] - strh r0, [r5, 0x1C] - ldr r1, _080E01B4 @ =REG_BLDCNT - ldr r2, _080E01B8 @ =0x00003f42 - adds r0, r2, 0 - strh r0, [r1] - ldrb r1, [r4, 0x8] - lsls r1, 4 - movs r0, 0 - movs r2, 0x20 - bl FillPalette - ldr r0, _080E01BC @ =REG_BG1VOFS - str r0, [sp] - movs r7, 0x2 - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080E01F4 - ldr r1, _080E01C0 @ =gBattle_BG2_X - b _080E01EE - .align 2, 0 -_080E01A8: .4byte 0x0000ffc0 -_080E01AC: .4byte gAnimBankAttacker -_080E01B0: .4byte gBattle_BG1_Y -_080E01B4: .4byte REG_BLDCNT -_080E01B8: .4byte 0x00003f42 -_080E01BC: .4byte REG_BG1VOFS -_080E01C0: .4byte gBattle_BG2_X -_080E01C4: - ldr r0, _080E0278 @ =gBattle_BG2_Y - ldrh r0, [r0] - strh r0, [r5, 0x1C] - ldr r1, _080E027C @ =REG_BLDCNT - ldr r2, _080E0280 @ =0x00003f44 - adds r0, r2, 0 - strh r0, [r1] - movs r0, 0 - movs r1, 0x90 - movs r2, 0x20 - bl FillPalette - ldr r0, _080E0284 @ =REG_BG2VOFS - str r0, [sp] - movs r7, 0x4 - bl IsContest - lsls r0, 24 - cmp r0, 0 - bne _080E01F4 - ldr r1, _080E0288 @ =gBattle_BG1_X -_080E01EE: - ldrh r0, [r1] - adds r0, 0xF0 - strh r0, [r1] -_080E01F4: - ldr r0, _080E028C @ =0xa2600001 - str r0, [sp, 0x4] - mov r2, sp - movs r1, 0 - movs r0, 0x1 - strb r0, [r2, 0x8] - mov r0, sp - strb r1, [r0, 0x9] - strh r1, [r5, 0x1E] - movs r0, 0x10 - strh r0, [r5, 0x20] - strh r1, [r5, 0x8] - strh r1, [r5, 0xA] - strh r1, [r5, 0xC] - movs r0, 0x3 - bl sub_80E08CC - movs r3, 0 - ldr r4, _080E0290 @ =gScanlineEffectRegBuffers - movs r0, 0xF0 - lsls r0, 3 - adds r6, r4, r0 -_080E0220: - lsls r1, r3, 1 - adds r2, r1, r4 - ldrh r0, [r5, 0x1C] - strh r0, [r2] - adds r1, r6 - ldrh r0, [r5, 0x1C] - strh r0, [r1] - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x6F - bls _080E0220 - ldr r0, [sp] - ldr r1, [sp, 0x4] - ldr r2, [sp, 0x8] - bl ScanlineEffect_SetParams - ldr r1, _080E0294 @ =REG_WINOUT - movs r0, 0x3F - eors r7, r0 - movs r2, 0xFC - lsls r2, 6 - adds r0, r2, 0 - orrs r7, r0 - strh r7, [r1] - subs r1, 0x2 - adds r2, 0x3F - adds r0, r2, 0 - strh r0, [r1] - ldr r2, _080E0298 @ =gBattle_WIN0H - ldrh r0, [r5, 0x24] - lsls r0, 8 - ldrh r1, [r5, 0x26] - orrs r0, r1 - strh r0, [r2] - ldr r1, _080E029C @ =gBattle_WIN0V - movs r0, 0xA0 - strh r0, [r1] - ldr r0, _080E02A0 @ =sub_80E02A4 - str r0, [r5] - add sp, 0x18 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080E0278: .4byte gBattle_BG2_Y -_080E027C: .4byte REG_BLDCNT -_080E0280: .4byte 0x00003f44 -_080E0284: .4byte REG_BG2VOFS -_080E0288: .4byte gBattle_BG1_X -_080E028C: .4byte 0xa2600001 -_080E0290: .4byte gScanlineEffectRegBuffers -_080E0294: .4byte REG_WINOUT -_080E0298: .4byte gBattle_WIN0H -_080E029C: .4byte gBattle_WIN0V -_080E02A0: .4byte sub_80E02A4 - thumb_func_end sub_80E00EC - - thumb_func_start sub_80E02A4 -sub_80E02A4: @ 80E02A4 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, _080E02C8 @ =gTasks - adds r4, r0, r1 - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r0, 0x4 - bls _080E02BE - b _080E03B6 -_080E02BE: - lsls r0, 2 - ldr r1, _080E02CC @ =_080E02D0 - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080E02C8: .4byte gTasks -_080E02CC: .4byte _080E02D0 - .align 2, 0 -_080E02D0: - .4byte _080E02E4 - .4byte _080E0344 - .4byte _080E035E - .4byte _080E039C - .4byte _080E03B0 -_080E02E4: - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - ble _080E03B6 - movs r0, 0 - strh r0, [r4, 0xA] - ldrh r0, [r4, 0xC] - adds r0, 0x1 - strh r0, [r4, 0xC] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080E0314 - ldrh r1, [r4, 0x1E] - movs r2, 0x1E - ldrsh r0, [r4, r2] - cmp r0, 0xC - beq _080E0322 - adds r0, r1, 0x1 - strh r0, [r4, 0x1E] - b _080E0322 -_080E0314: - ldrh r1, [r4, 0x20] - movs r2, 0x20 - ldrsh r0, [r4, r2] - cmp r0, 0x8 - beq _080E0322 - subs r0, r1, 0x1 - strh r0, [r4, 0x20] -_080E0322: - ldr r2, _080E0340 @ =REG_BLDALPHA - ldrh r0, [r4, 0x20] - lsls r0, 8 - ldrh r1, [r4, 0x1E] - orrs r0, r1 - strh r0, [r2] - movs r1, 0x1E - ldrsh r0, [r4, r1] - cmp r0, 0xC - bne _080E03B6 - movs r2, 0x20 - ldrsh r0, [r4, r2] - cmp r0, 0x8 - bne _080E03B6 - b _080E03A2 - .align 2, 0 -_080E0340: .4byte REG_BLDALPHA -_080E0344: - ldrh r0, [r4, 0x10] - subs r0, 0x8 - strh r0, [r4, 0x10] - adds r0, r4, 0 - bl sub_80E079C - movs r0, 0x10 - ldrsh r1, [r4, r0] - movs r2, 0x18 - ldrsh r0, [r4, r2] - cmp r1, r0 - bge _080E03B6 - b _080E03A2 -_080E035E: - ldrh r0, [r4, 0x10] - subs r0, 0x8 - strh r0, [r4, 0x10] - adds r0, r4, 0 - bl sub_80E079C - ldrh r1, [r4, 0x24] - adds r1, 0x4 - strh r1, [r4, 0x24] - ldrh r0, [r4, 0x26] - subs r2, r0, 0x4 - strh r2, [r4, 0x26] - lsls r1, 16 - lsls r0, r2, 16 - cmp r1, r0 - blt _080E0380 - strh r2, [r4, 0x24] -_080E0380: - ldr r3, _080E0398 @ =gBattle_WIN0H - ldrh r2, [r4, 0x24] - lsls r0, r2, 8 - ldrh r1, [r4, 0x26] - orrs r0, r1 - strh r0, [r3] - lsls r2, 16 - lsls r1, 16 - cmp r2, r1 - bne _080E03B6 - b _080E03A2 - .align 2, 0 -_080E0398: .4byte gBattle_WIN0H -_080E039C: - ldr r1, _080E03AC @ =gScanlineEffect - movs r0, 0x3 - strb r0, [r1, 0x15] -_080E03A2: - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _080E03B6 - .align 2, 0 -_080E03AC: .4byte gScanlineEffect -_080E03B0: - adds r0, r2, 0 - bl DestroyAnimVisualTask -_080E03B6: - pop {r4} - pop {r0} - bx r0 - thumb_func_end sub_80E02A4 - - thumb_func_start sub_80E03BC -sub_80E03BC: @ 80E03BC - push {r4-r7,lr} - sub sp, 0x18 - lsls r0, 24 - lsrs r4, r0, 24 - lsls r0, r4, 2 - adds r0, r4 - lsls r0, 3 - ldr r1, _080E03E4 @ =gTasks - adds r5, r0, r1 - movs r1, 0x8 - ldrsh r0, [r5, r1] - cmp r0, 0x4 - bls _080E03D8 - b _080E05F2 -_080E03D8: - lsls r0, 2 - ldr r1, _080E03E8 @ =_080E03EC - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080E03E4: .4byte gTasks -_080E03E8: .4byte _080E03EC - .align 2, 0 -_080E03EC: - .4byte _080E0400 - .4byte _080E048C - .4byte _080E04D0 - .4byte _080E053C - .4byte _080E05A4 -_080E0400: - bl IsContest - lsls r0, 24 - lsrs r0, 24 - cmp r0, 0x1 - bne _080E043C - ldr r0, _080E042C @ =gBattle_WIN0H - movs r1, 0 - strh r1, [r0] - ldr r0, _080E0430 @ =gBattle_WIN0V - strh r1, [r0] - ldr r0, _080E0434 @ =REG_WININ - ldr r2, _080E0438 @ =0x00003f3f - adds r1, r2, 0 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - adds r0, r4, 0 - bl DestroyAnimVisualTask - b _080E05F2 - .align 2, 0 -_080E042C: .4byte gBattle_WIN0H -_080E0430: .4byte gBattle_WIN0V -_080E0434: .4byte REG_WININ -_080E0438: .4byte 0x00003f3f -_080E043C: - ldr r0, _080E045C @ =gAnimBankTarget - ldrb r0, [r0] - bl GetBankIdentity_permutated - lsls r0, 24 - lsrs r0, 24 - strh r0, [r5, 0xE] - cmp r0, 0x1 - bne _080E046C - ldr r1, _080E0460 @ =REG_BLDCNT - ldr r2, _080E0464 @ =0x00003f42 - adds r0, r2, 0 - strh r0, [r1] - ldr r1, _080E0468 @ =gBattle_BG2_X - b _080E0476 - .align 2, 0 -_080E045C: .4byte gAnimBankTarget -_080E0460: .4byte REG_BLDCNT -_080E0464: .4byte 0x00003f42 -_080E0468: .4byte gBattle_BG2_X -_080E046C: - ldr r1, _080E0480 @ =REG_BLDCNT - ldr r2, _080E0484 @ =0x00003f44 - adds r0, r2, 0 - strh r0, [r1] - ldr r1, _080E0488 @ =gBattle_BG1_X -_080E0476: - ldrh r0, [r1] - adds r0, 0xF0 - strh r0, [r1] - b _080E0590 - .align 2, 0 -_080E0480: .4byte REG_BLDCNT -_080E0484: .4byte 0x00003f44 -_080E0488: .4byte gBattle_BG1_X -_080E048C: - movs r1, 0xE - ldrsh r0, [r5, r1] - cmp r0, 0x1 - bne _080E04B4 - mov r0, sp - bl sub_8078914 - ldr r0, _080E04B0 @ =gBattle_BG1_Y - ldrh r0, [r0] - strh r0, [r5, 0x1C] - mov r0, sp - ldrb r1, [r0, 0x8] - lsls r1, 4 - movs r0, 0 - movs r2, 0x20 - bl FillPalette - b _080E04C4 - .align 2, 0 -_080E04B0: .4byte gBattle_BG1_Y -_080E04B4: - ldr r0, _080E04CC @ =gBattle_BG2_Y - ldrh r0, [r0] - strh r0, [r5, 0x1C] - movs r0, 0 - movs r1, 0x90 - movs r2, 0x20 - bl FillPalette -_080E04C4: - movs r0, 0x3 - bl sub_80E08CC - b _080E0590 - .align 2, 0 -_080E04CC: .4byte gBattle_BG2_Y -_080E04D0: - ldr r4, _080E051C @ =gAnimBankTarget - ldrb r0, [r4] - movs r1, 0x1 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - adds r0, 0x1F - movs r6, 0 - strh r0, [r5, 0x16] - ldrb r0, [r4] - movs r1, 0x2 - bl sub_807A100 - subs r0, 0x7 - strh r0, [r5, 0x14] - ldrh r1, [r5, 0x16] - subs r1, r0 - lsls r1, 8 - strh r1, [r5, 0x22] - ldrb r0, [r4] - movs r1, 0 - bl GetBankPosition - lsls r0, 24 - lsrs r0, 24 - subs r1, r0, 0x4 - strh r1, [r5, 0x24] - adds r0, 0x4 - strh r0, [r5, 0x26] - ldrb r0, [r4] - bl GetBankSide - lsls r0, 24 - cmp r0, 0 - bne _080E0524 - ldr r0, _080E0520 @ =0x0000fff4 - b _080E0526 - .align 2, 0 -_080E051C: .4byte gAnimBankTarget -_080E0520: .4byte 0x0000fff4 -_080E0524: - ldr r0, _080E0538 @ =0x0000ffc0 -_080E0526: - strh r0, [r5, 0x18] - ldrh r0, [r5, 0x18] - strh r0, [r5, 0x10] - strh r0, [r5, 0x12] - movs r0, 0xC - strh r0, [r5, 0x1E] - movs r0, 0x8 - strh r0, [r5, 0x20] - b _080E0590 - .align 2, 0 -_080E0538: .4byte 0x0000ffc0 -_080E053C: - movs r2, 0xE - ldrsh r0, [r5, r2] - cmp r0, 0x1 - bne _080E054C - ldr r0, _080E0548 @ =REG_BG1VOFS - b _080E054E - .align 2, 0 -_080E0548: .4byte REG_BG1VOFS -_080E054C: - ldr r0, _080E0598 @ =REG_BG2VOFS -_080E054E: - str r0, [sp, 0xC] - movs r3, 0 - add r4, sp, 0xC - ldr r6, _080E059C @ =gScanlineEffectRegBuffers - movs r0, 0xF0 - lsls r0, 3 - adds r7, r6, r0 -_080E055C: - lsls r1, r3, 1 - adds r2, r1, r6 - ldrh r0, [r5, 0x1C] - adds r0, 0x9F - subs r0, r3 - strh r0, [r2] - adds r1, r7 - ldrh r0, [r5, 0x1C] - adds r0, 0x9F - subs r0, r3 - strh r0, [r1] - adds r0, r3, 0x1 - lsls r0, 16 - lsrs r3, r0, 16 - cmp r3, 0x6F - bls _080E055C - ldr r1, _080E05A0 @ =0xa2600001 - str r1, [r4, 0x4] - movs r2, 0 - movs r0, 0x1 - strb r0, [r4, 0x8] - strb r2, [r4, 0x9] - ldr r0, [sp, 0xC] - ldr r2, [r4, 0x8] - bl ScanlineEffect_SetParams -_080E0590: - ldrh r0, [r5, 0x8] - adds r0, 0x1 - strh r0, [r5, 0x8] - b _080E05F2 - .align 2, 0 -_080E0598: .4byte REG_BG2VOFS -_080E059C: .4byte gScanlineEffectRegBuffers -_080E05A0: .4byte 0xa2600001 -_080E05A4: - movs r1, 0xE - ldrsh r0, [r5, r1] - cmp r0, 0x1 - bne _080E05BC - ldr r1, _080E05B4 @ =REG_WINOUT - ldr r2, _080E05B8 @ =0x00003f3d - b _080E05C0 - .align 2, 0 -_080E05B4: .4byte REG_WINOUT -_080E05B8: .4byte 0x00003f3d -_080E05BC: - ldr r1, _080E05FC @ =REG_WINOUT - ldr r2, _080E0600 @ =0x00003f3b -_080E05C0: - adds r0, r2, 0 - strh r0, [r1] - ldr r1, _080E0604 @ =REG_WININ - ldr r2, _080E0608 @ =0x00003f3f - adds r0, r2, 0 - strh r0, [r1] - ldr r2, _080E060C @ =gBattle_WIN0H - ldrh r0, [r5, 0x24] - lsls r0, 8 - ldrh r1, [r5, 0x26] - orrs r0, r1 - strh r0, [r2] - ldr r1, _080E0610 @ =gBattle_WIN0V - movs r0, 0xA0 - strh r0, [r1] - movs r0, 0 - strh r0, [r5, 0x8] - strh r0, [r5, 0xA] - strh r0, [r5, 0xC] - ldr r1, _080E0614 @ =REG_BLDALPHA - ldr r2, _080E0618 @ =0x0000080c - adds r0, r2, 0 - strh r0, [r1] - ldr r0, _080E061C @ =sub_80E0620 - str r0, [r5] -_080E05F2: - add sp, 0x18 - pop {r4-r7} - pop {r0} - bx r0 - .align 2, 0 -_080E05FC: .4byte REG_WINOUT -_080E0600: .4byte 0x00003f3b -_080E0604: .4byte REG_WININ -_080E0608: .4byte 0x00003f3f -_080E060C: .4byte gBattle_WIN0H -_080E0610: .4byte gBattle_WIN0V -_080E0614: .4byte REG_BLDALPHA -_080E0618: .4byte 0x0000080c -_080E061C: .4byte sub_80E0620 - thumb_func_end sub_80E03BC - - thumb_func_start sub_80E0620 -sub_80E0620: @ 80E0620 - push {r4,lr} - lsls r0, 24 - lsrs r2, r0, 24 - lsls r0, r2, 2 - adds r0, r2 - lsls r0, 3 - ldr r1, _080E0644 @ =gTasks - adds r4, r0, r1 - movs r1, 0x8 - ldrsh r0, [r4, r1] - cmp r0, 0x4 - bls _080E063A - b _080E0784 -_080E063A: - lsls r0, 2 - ldr r1, _080E0648 @ =_080E064C - adds r0, r1 - ldr r0, [r0] - mov pc, r0 - .align 2, 0 -_080E0644: .4byte gTasks -_080E0648: .4byte _080E064C - .align 2, 0 -_080E064C: - .4byte _080E0660 - .4byte _080E068C - .4byte _080E06F4 - .4byte _080E0754 - .4byte _080E0768 -_080E0660: - ldrh r0, [r4, 0x12] - adds r0, 0x8 - strh r0, [r4, 0x12] - lsls r0, 16 - asrs r0, 16 - ldrh r2, [r4, 0x16] - movs r3, 0x16 - ldrsh r1, [r4, r3] - cmp r0, r1 - blt _080E0676 - strh r2, [r4, 0x12] -_080E0676: - adds r0, r4, 0 - bl sub_80E079C - movs r0, 0x12 - ldrsh r1, [r4, r0] - movs r2, 0x16 - ldrsh r0, [r4, r2] - cmp r1, r0 - beq _080E068A - b _080E0784 -_080E068A: - b _080E075A -_080E068C: - movs r3, 0x26 - ldrsh r0, [r4, r3] - movs r2, 0x24 - ldrsh r1, [r4, r2] - subs r0, r1 - cmp r0, 0x3F - bgt _080E06A8 - ldrh r0, [r4, 0x24] - subs r0, 0x4 - strh r0, [r4, 0x24] - ldrh r0, [r4, 0x26] - adds r0, 0x4 - strh r0, [r4, 0x26] - b _080E06AC -_080E06A8: - movs r0, 0x1 - strh r0, [r4, 0xA] -_080E06AC: - ldr r2, _080E06F0 @ =gBattle_WIN0H - ldrh r0, [r4, 0x24] - lsls r0, 8 - ldrh r1, [r4, 0x26] - orrs r0, r1 - strh r0, [r2] - ldrh r0, [r4, 0x10] - adds r0, 0x8 - strh r0, [r4, 0x10] - lsls r0, 16 - asrs r0, 16 - ldrh r2, [r4, 0x14] - movs r3, 0x14 - ldrsh r1, [r4, r3] - cmp r0, r1 - blt _080E06CE - strh r2, [r4, 0x10] -_080E06CE: - adds r0, r4, 0 - bl sub_80E079C - movs r0, 0x10 - ldrsh r1, [r4, r0] - movs r2, 0x14 - ldrsh r0, [r4, r2] - cmp r1, r0 - bne _080E0784 - movs r3, 0xA - ldrsh r0, [r4, r3] - cmp r0, 0 - beq _080E0784 - movs r0, 0 - strh r0, [r4, 0xA] - b _080E075A - .align 2, 0 -_080E06F0: .4byte gBattle_WIN0H -_080E06F4: - ldrh r0, [r4, 0xA] - adds r0, 0x1 - strh r0, [r4, 0xA] - lsls r0, 16 - asrs r0, 16 - cmp r0, 0x1 - ble _080E0784 - movs r0, 0 - strh r0, [r4, 0xA] - ldrh r0, [r4, 0xC] - adds r0, 0x1 - strh r0, [r4, 0xC] - movs r1, 0x1 - ands r0, r1 - cmp r0, 0 - beq _080E0724 - ldrh r1, [r4, 0x1E] - movs r2, 0x1E - ldrsh r0, [r4, r2] - cmp r0, 0 - beq _080E0732 - subs r0, r1, 0x1 - strh r0, [r4, 0x1E] - b _080E0732 -_080E0724: - ldrh r1, [r4, 0x20] - movs r3, 0x20 - ldrsh r0, [r4, r3] - cmp r0, 0xF - bgt _080E0732 - adds r0, r1, 0x1 - strh r0, [r4, 0x20] -_080E0732: - ldr r2, _080E0750 @ =REG_BLDALPHA - ldrh r0, [r4, 0x20] - lsls r0, 8 - ldrh r1, [r4, 0x1E] - orrs r0, r1 - strh r0, [r2] - movs r1, 0x1E - ldrsh r0, [r4, r1] - cmp r0, 0 - bne _080E0784 - movs r2, 0x20 - ldrsh r0, [r4, r2] - cmp r0, 0x10 - bne _080E0784 - b _080E075A - .align 2, 0 -_080E0750: .4byte REG_BLDALPHA -_080E0754: - ldr r1, _080E0764 @ =gScanlineEffect - movs r0, 0x3 - strb r0, [r1, 0x15] -_080E075A: - ldrh r0, [r4, 0x8] - adds r0, 0x1 - strh r0, [r4, 0x8] - b _080E0784 - .align 2, 0 -_080E0764: .4byte gScanlineEffect -_080E0768: - ldr r0, _080E078C @ =gBattle_WIN0H - movs r1, 0 - strh r1, [r0] - ldr r0, _080E0790 @ =gBattle_WIN0V - strh r1, [r0] - ldr r0, _080E0794 @ =REG_WININ - ldr r3, _080E0798 @ =0x00003f3f - adds r1, r3, 0 - strh r1, [r0] - adds r0, 0x2 - strh r1, [r0] - adds r0, r2, 0 - bl DestroyAnimVisualTask -_080E0784: - pop {r4} - pop {r0} - bx r0 - .align 2, 0 -_080E078C: .4byte gBattle_WIN0H -_080E0790: .4byte gBattle_WIN0V -_080E0794: .4byte REG_WININ -_080E0798: .4byte 0x00003f3f - thumb_func_end sub_80E0620 - thumb_func_start sub_80E079C sub_80E079C: @ 80E079C push {r4-r7,lr} |