diff options
author | YamaArashi <shadow962@live.com> | 2016-11-01 10:08:48 -0700 |
---|---|---|
committer | YamaArashi <shadow962@live.com> | 2016-11-01 10:16:34 -0700 |
commit | 6f0e42a91aeeedd64725ce57e3dad6a38421d8e9 (patch) | |
tree | dcea69ec49430f004c17ff71b77587cafd78c69a /asm/save_failed_screen.s | |
parent | fef81187dce23adc635d7f4b7fd82298eab09ec2 (diff) |
split asm files
Diffstat (limited to 'asm/save_failed_screen.s')
-rw-r--r-- | asm/save_failed_screen.s | 707 |
1 files changed, 707 insertions, 0 deletions
diff --git a/asm/save_failed_screen.s b/asm/save_failed_screen.s new file mode 100644 index 000000000..e8042a442 --- /dev/null +++ b/asm/save_failed_screen.s @@ -0,0 +1,707 @@ + .include "asm/macros.inc" + .include "constants/constants.inc" + + .syntax unified + + .text + + thumb_func_start sub_8178F44 +sub_8178F44: @ 8178F44 + push {r4,r5,lr} + sub sp, 0x18 + adds r5, r0, 0 + adds r4, r1, 0 + adds r3, r2, 0 + lsls r3, 24 + add r0, sp, 0x14 + movs r2, 0 + strb r2, [r0] + adds r1, r0, 0 + movs r0, 0xF + strb r0, [r1, 0x1] + movs r0, 0x3 + strb r0, [r1, 0x2] + ldr r0, =0x0203bd0e + ldrb r0, [r0] + lsls r4, 27 + lsrs r4, 24 + lsrs r3, 21 + adds r3, 0x1 + lsls r3, 24 + lsrs r3, 24 + str r2, [sp] + str r2, [sp, 0x4] + str r1, [sp, 0x8] + str r2, [sp, 0xC] + str r5, [sp, 0x10] + movs r1, 0x1 + adds r2, r4, 0 + bl AddTextPrinterParametrized2 + add sp, 0x18 + pop {r4,r5} + pop {r0} + bx r0 + .pool + thumb_func_end sub_8178F44 + + thumb_func_start fullscreen_save_activate +fullscreen_save_activate: @ 8178F90 + push {r4,lr} + adds r4, r0, 0 + lsls r4, 24 + lsrs r4, 24 + ldr r0, =sub_8178FDC + bl SetMainCallback2 + ldr r0, =0x0203bcfc + strh r4, [r0] + ldr r1, =0x0203bcfe + movs r2, 0 + movs r0, 0 + strh r0, [r1] + strh r0, [r1, 0x2] + ldr r0, =0x0203bd0e + strb r2, [r0] + strb r2, [r0, 0x1] + pop {r4} + pop {r0} + bx r0 + .pool + thumb_func_end fullscreen_save_activate + + thumb_func_start sub_8178FC8 +sub_8178FC8: @ 8178FC8 + push {lr} + bl LoadOamFromSprites + bl ProcessObjectCopyRequests + bl copy_pal_bg_faded_to_pal_ram + pop {r0} + bx r0 + thumb_func_end sub_8178FC8 + + thumb_func_start sub_8178FDC +sub_8178FDC: @ 8178FDC + push {r4-r7,lr} + mov r7, r8 + push {r7} + sub sp, 0xC + ldr r0, =0x030022c0 + movs r1, 0x87 + lsls r1, 3 + adds r7, r0, r1 + ldrb r0, [r7] + cmp r0, 0 + beq _08178FF8 + cmp r0, 0x1 + bne _08178FF8 + b _0817925C +_08178FF8: + movs r0, 0 + bl SetVBlankCallback + movs r0, 0 + movs r1, 0 + bl SetGpuReg + movs r0, 0xE + movs r1, 0 + bl SetGpuReg + movs r0, 0xC + movs r1, 0 + bl SetGpuReg + movs r0, 0xA + movs r1, 0 + bl SetGpuReg + movs r0, 0x8 + movs r1, 0 + bl SetGpuReg + movs r0, 0x1C + movs r1, 0 + bl SetGpuReg + movs r0, 0x1E + movs r1, 0 + bl SetGpuReg + movs r0, 0x18 + movs r1, 0 + bl SetGpuReg + movs r0, 0x1A + movs r1, 0 + bl SetGpuReg + movs r0, 0x14 + movs r1, 0 + bl SetGpuReg + movs r0, 0x16 + movs r1, 0 + bl SetGpuReg + movs r0, 0x10 + movs r1, 0 + bl SetGpuReg + movs r0, 0x12 + movs r1, 0 + bl SetGpuReg + add r1, sp, 0x4 + movs r0, 0 + strh r0, [r1] + ldr r2, =0x040000d4 + str r1, [r2] + movs r1, 0xC0 + lsls r1, 19 + str r1, [r2, 0x4] + ldr r0, =0x8100c000 + str r0, [r2, 0x8] + ldr r0, [r2, 0x8] + movs r3, 0 + mov r8, r3 + str r3, [sp, 0x8] + add r4, sp, 0x8 + str r4, [r2] + movs r0, 0xE0 + lsls r0, 19 + str r0, [r2, 0x4] + ldr r0, =0x85000100 + str r0, [r2, 0x8] + ldr r0, [r2, 0x8] + add r0, sp, 0x4 + mov r3, r8 + strh r3, [r0] + str r0, [r2] + movs r0, 0xA0 + lsls r0, 19 + str r0, [r2, 0x4] + ldr r0, =0x81000200 + str r0, [r2, 0x8] + ldr r0, [r2, 0x8] + ldr r0, =gUnknown_085B0E04 + bl LZ77UnCompVram + ldr r0, =gUnknown_085B0A80 + ldr r1, =0x06007000 + bl LZ77UnCompVram + ldr r0, =gUnknown_085B0C0C + ldr r1, =0x06007800 + bl LZ77UnCompVram + ldr r0, =gUnknown_085EFDE4 + ldr r1, =0x06010020 + bl LZ77UnCompVram + movs r0, 0 + bl ResetBgsAndClearDma3BusyFlags + ldr r1, =gUnknown_085EFD88 + movs r0, 0 + movs r2, 0x3 + bl InitBgsFromTemplates + ldr r5, =0x0201e000 + movs r0, 0 + adds r1, r5, 0 + bl SetBgTilemapBuffer + mov r0, r8 + str r0, [sp, 0x8] + ldr r2, =0x05000200 + adds r0, r4, 0 + adds r1, r5, 0 + bl CpuSet + ldr r1, =gUnknown_0850E87C + movs r2, 0x90 + lsls r2, 1 + movs r6, 0x85 + lsls r6, 2 + movs r0, 0 + adds r3, r6, 0 + bl LoadBgTiles + ldr r0, =gUnknown_085EFD94 + bl InitWindows + ldr r0, =gUnknown_085EFD9C + bl AddWindowWithoutTileMap + ldr r4, =0x0203bd0e + strb r0, [r4] + ldrb r0, [r4] + movs r1, 0x80 + lsls r1, 4 + adds r2, r5, r1 + movs r1, 0x7 + bl SetWindowAttribute + ldr r0, =gUnknown_085EFDA4 + bl AddWindowWithoutTileMap + strb r0, [r4, 0x1] + ldrb r0, [r4, 0x1] + movs r3, 0xE8 + lsls r3, 5 + adds r5, r3 + movs r1, 0x7 + adds r2, r5, 0 + bl SetWindowAttribute + bl DeactivateAllTextPrinters + bl ResetAllObjectData + bl ResetTasks + bl sub_80A1A74 + ldr r0, =gUnknown_085B0A00 + movs r1, 0 + movs r2, 0x40 + bl gpu_pal_apply + ldr r0, =gUnknown_085EFDC4 + movs r1, 0x80 + lsls r1, 1 + movs r2, 0x20 + bl gpu_pal_apply + ldr r0, =gUnknown_0850FEFC + movs r1, 0xE0 + movs r2, 0x20 + bl gpu_pal_apply + ldr r0, =gUnknown_0860F074 + movs r1, 0xF0 + movs r2, 0x20 + bl gpu_pal_apply + ldrb r0, [r4] + movs r1, 0 + adds r2, r6, 0 + movs r3, 0xE + bl SetWindowBorderStyle + ldrb r0, [r4, 0x1] + movs r1, 0 + adds r2, r6, 0 + movs r3, 0xE + bl SetWindowBorderStyle + ldrb r0, [r4, 0x1] + movs r1, 0x11 + bl FillWindowPixelBuffer + ldrb r0, [r4] + movs r1, 0x11 + bl FillWindowPixelBuffer + ldrb r0, [r4, 0x1] + movs r1, 0x2 + bl CopyWindowToVram + ldrb r0, [r4] + movs r1, 0x1 + bl CopyWindowToVram + ldr r0, =gUnknown_085EC816 + movs r1, 0x1 + movs r2, 0 + bl sub_8178F44 + movs r0, 0x1 + negs r0, r0 + mov r1, r8 + str r1, [sp] + movs r1, 0 + movs r2, 0x10 + movs r3, 0 + bl pal_fade_maybe + movs r0, 0x1 + bl EnableInterrupts + ldr r0, =sub_8178FC8 + bl SetVBlankCallback + movs r1, 0x82 + lsls r1, 5 + movs r0, 0 + bl SetGpuReg + movs r0, 0 + bl ShowBg + movs r0, 0x2 + bl ShowBg + movs r0, 0x3 + bl ShowBg + ldrb r0, [r7] + adds r0, 0x1 + strb r0, [r7] + b _08179272 + .pool +_0817925C: + bl fade_and_return_progress_probably + lsls r0, 24 + cmp r0, 0 + bne _08179272 + ldr r0, =sub_8179288 + bl SetMainCallback2 + ldr r0, =sub_8179454 + bl SetVBlankCallback +_08179272: + add sp, 0xC + pop {r3} + mov r8, r3 + pop {r4-r7} + pop {r0} + bx r0 + .pool + thumb_func_end sub_8178FDC + + thumb_func_start sub_8179288 +sub_8179288: @ 8179288 + push {r4-r6,lr} + movs r5, 0 + ldr r0, =0x0203bcfe + movs r1, 0x1 + strh r1, [r0] + ldr r1, =0x030061fc + ldr r0, [r1] + cmp r0, 0 + beq _081792EC + adds r6, r1, 0 +_0817929C: + ldr r0, [r6] + bl sub_81795AC + lsls r0, 24 + cmp r0, 0 + bne _08179348 + ldr r4, =0x0203bd0e + ldrb r0, [r4] + movs r1, 0x11 + bl FillWindowPixelBuffer + ldr r0, =gUnknown_085EC917 + movs r1, 0x1 + movs r2, 0 + bl sub_8178F44 + ldr r0, =0x0203bcfc + ldrb r0, [r0] + bl calls_flash_erase_block_3 + ldr r0, [r6] + cmp r0, 0 + beq _081792DC + ldrb r0, [r4] + movs r1, 0x11 + bl FillWindowPixelBuffer + ldr r0, =gUnknown_085EC816 + movs r1, 0x1 + movs r2, 0 + bl sub_8178F44 +_081792DC: + adds r0, r5, 0x1 + lsls r0, 24 + lsrs r5, r0, 24 + ldr r0, [r6] + cmp r0, 0 + beq _081792EC + cmp r5, 0x2 + bls _0817929C +_081792EC: + cmp r5, 0x3 + bne _0817931C + ldr r0, =0x0203bd0e + ldrb r0, [r0] + movs r1, 0x11 + bl FillWindowPixelBuffer + ldr r0, =gUnknown_085EC86F + b _08179330 + .pool +_0817931C: + ldr r0, =0x0203bd0e + ldrb r0, [r0] + movs r1, 0x11 + bl FillWindowPixelBuffer + ldr r0, =0x03006214 + ldr r0, [r0] + cmp r0, 0 + bne _08179370 + ldr r0, =gUnknown_085EC94F +_08179330: + movs r1, 0x1 + movs r2, 0 + bl sub_8178F44 + b _0817937A + .pool +_08179348: + ldr r0, =0x0203bd0e + ldrb r0, [r0] + movs r1, 0x11 + bl FillWindowPixelBuffer + ldr r0, =gUnknown_085EC86F + movs r1, 0x1 + movs r2, 0 + bl sub_8178F44 + ldr r0, =sub_8179390 + bl SetMainCallback2 + b _08179380 + .pool +_08179370: + ldr r0, =gUnknown_085EC9A2 + movs r1, 0x1 + movs r2, 0 + bl sub_8178F44 +_0817937A: + ldr r0, =sub_81793E0 + bl SetMainCallback2 +_08179380: + pop {r4-r6} + pop {r0} + bx r0 + .pool + thumb_func_end sub_8179288 + + thumb_func_start sub_8179390 +sub_8179390: @ 8179390 + push {lr} + ldr r1, =0x0203bcfe + movs r0, 0 + strh r0, [r1] + ldr r0, =0x030022c0 + ldrh r1, [r0, 0x2E] + movs r0, 0x1 + ands r0, r1 + cmp r0, 0 + beq _081793C4 + ldr r0, =0x0203bd0e + ldrb r0, [r0] + movs r1, 0x11 + bl FillWindowPixelBuffer + ldr r0, =gUnknown_085EC8D4 + movs r1, 0x1 + movs r2, 0 + bl sub_8178F44 + ldr r0, =sub_8178FC8 + bl SetVBlankCallback + ldr r0, =sub_81793E0 + bl SetMainCallback2 +_081793C4: + pop {r0} + bx r0 + .pool + thumb_func_end sub_8179390 + + thumb_func_start sub_81793E0 +sub_81793E0: @ 81793E0 + push {lr} + sub sp, 0x4 + ldr r0, =0x0203bcfe + movs r2, 0 + strh r2, [r0] + ldr r0, =0x030022c0 + ldrh r1, [r0, 0x2E] + movs r0, 0x1 + ands r0, r1 + cmp r0, 0 + beq _08179410 + movs r0, 0x1 + negs r0, r0 + str r2, [sp] + movs r1, 0 + movs r3, 0x10 + bl pal_fade_maybe + ldr r0, =sub_8178FC8 + bl SetVBlankCallback + ldr r0, =sub_8179428 + bl SetMainCallback2 +_08179410: + add sp, 0x4 + pop {r0} + bx r0 + .pool + thumb_func_end sub_81793E0 + + thumb_func_start sub_8179428 +sub_8179428: @ 8179428 + push {r4,r5,lr} + bl fade_and_return_progress_probably + lsls r0, 24 + lsrs r4, r0, 24 + cmp r4, 0 + bne _0817944E + ldr r5, =0x03006214 + ldr r0, [r5] + cmp r0, 0 + bne _08179448 + bl Reset + b _0817944E + .pool +_08179448: + bl SetMainCallback2 + str r4, [r5] +_0817944E: + pop {r4,r5} + pop {r0} + bx r0 + thumb_func_end sub_8179428 + + thumb_func_start sub_8179454 +sub_8179454: @ 8179454 + push {r4,r5,lr} + ldr r5, =0x030022c0 + ldr r0, [r5, 0x24] + lsrs r4, r0, 3 + movs r0, 0x7 + ands r4, r0 + ldr r0, =gUnknown_085EFD80 + ldr r1, [r0, 0x4] + ldr r0, [r0] + str r0, [r5, 0x38] + str r1, [r5, 0x3C] + ldrh r1, [r5, 0x3A] + ldr r0, =0xfffffe00 + ands r0, r1 + movs r1, 0x70 + orrs r0, r1 + strh r0, [r5, 0x3A] + adds r1, r5, 0 + adds r1, 0x38 + movs r0, 0x48 + strb r0, [r1] + ldr r0, =0x0203bcfe + ldrh r0, [r0] + cmp r0, 0 + beq _081794DC + ldr r3, =gUnknown_085EFDAC + lsls r2, r4, 1 + adds r2, r4 + adds r0, r2, r3 + ldrb r4, [r0] + ldrh r1, [r5, 0x3C] + ldr r0, =0xfffffc00 + ands r0, r1 + orrs r0, r4 + strh r0, [r5, 0x3C] + adds r0, r3, 0x2 + adds r0, r2, r0 + ldrb r1, [r0] + lsls r1, 4 + adds r3, 0x1 + adds r2, r3 + ldrb r0, [r2] + lsls r0, 3 + orrs r1, r0 + adds r3, r5, 0 + adds r3, 0x3B + movs r0, 0x1F + ands r1, r0 + lsls r1, 1 + ldrb r2, [r3] + movs r0, 0x3F + negs r0, r0 + ands r0, r2 + orrs r0, r1 + strb r0, [r3] + b _081794E8 + .pool +_081794DC: + ldrh r0, [r5, 0x3C] + ldr r1, =0xfffffc00 + ands r1, r0 + movs r0, 0x1 + orrs r1, r0 + strh r1, [r5, 0x3C] +_081794E8: + ldr r0, =0x030022f8 + movs r1, 0xE0 + lsls r1, 19 + movs r2, 0x1 + bl CpuFastSet + ldr r1, =0x0203bcfe + ldrh r0, [r1, 0x2] + cmp r0, 0 + beq _08179500 + subs r0, 0x1 + strh r0, [r1, 0x2] +_08179500: + pop {r4,r5} + pop {r0} + bx r0 + .pool + thumb_func_end sub_8179454 + + thumb_func_start sub_8179514 +sub_8179514: @ 8179514 + push {r4,lr} + lsls r0, 16 + lsrs r0, 16 + ldr r4, =0x0203abbc + movs r3, 0x80 + lsls r3, 5 + movs r1, 0 + adds r2, r4, 0 + bl ReadFlash + movs r1, 0 + ldr r2, =0x000003ff +_0817952C: + ldr r0, [r4] + cmp r0, 0 + beq _08179540 + movs r0, 0x1 + b _0817954E + .pool +_08179540: + adds r0, r1, 0x1 + lsls r0, 16 + lsrs r1, r0, 16 + adds r4, 0x4 + cmp r1, r2 + bls _0817952C + movs r0, 0 +_0817954E: + pop {r4} + pop {r1} + bx r1 + thumb_func_end sub_8179514 + + thumb_func_start sub_8179554 +sub_8179554: @ 8179554 + push {r4-r7,lr} + mov r7, r8 + push {r7} + lsls r0, 16 + lsrs r6, r0, 16 + movs r0, 0 + ldr r1, =0x00000fff + mov r8, r1 + ldr r7, =0x03007854 +_08179566: + movs r4, 0 + adds r5, r0, 0x1 +_0817956A: + ldr r3, [r7] + adds r0, r6, 0 + adds r1, r4, 0 + movs r2, 0 + bl _call_via_r3 + adds r0, r4, 0x1 + lsls r0, 16 + lsrs r4, r0, 16 + cmp r4, r8 + bls _0817956A + adds r0, r6, 0 + bl sub_8179514 + lsls r0, 24 + lsrs r1, r0, 24 + lsls r0, r5, 16 + lsrs r0, 16 + cmp r1, 0 + beq _08179596 + cmp r0, 0x81 + bls _08179566 +_08179596: + adds r0, r1, 0 + pop {r3} + mov r8, r3 + pop {r4-r7} + pop {r1} + bx r1 + .pool + thumb_func_end sub_8179554 + + thumb_func_start sub_81795AC +sub_81795AC: @ 81795AC + push {r4-r6,lr} + adds r5, r0, 0 + movs r6, 0 +_081795B2: + movs r4, 0x1 + lsls r4, r6 + adds r0, r5, 0 + ands r0, r4 + cmp r0, 0 + beq _081795CC + adds r0, r6, 0 + bl sub_8179554 + lsls r0, 24 + cmp r0, 0 + bne _081795CC + bics r5, r4 +_081795CC: + adds r0, r6, 0x1 + lsls r0, 16 + lsrs r6, r0, 16 + cmp r6, 0x1F + bls _081795B2 + cmp r5, 0 + beq _081795DE + movs r0, 0x1 + b _081795E0 +_081795DE: + movs r0, 0 +_081795E0: + pop {r4-r6} + pop {r1} + bx r1 + thumb_func_end sub_81795AC + + .align 2, 0 @ Don't pad with nop. |