summaryrefslogtreecommitdiff
path: root/asm
diff options
context:
space:
mode:
Diffstat (limited to 'asm')
-rw-r--r--asm/unk_815F138.s753
1 files changed, 0 insertions, 753 deletions
diff --git a/asm/unk_815F138.s b/asm/unk_815F138.s
deleted file mode 100644
index 3a1d49e81..000000000
--- a/asm/unk_815F138.s
+++ /dev/null
@@ -1,753 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_815F138
-sub_815F138: @ 815F138
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- sub sp, 0x4
- adds r4, r0, 0
- adds r5, r1, 0
- adds r6, r2, 0
- ldr r0, [sp, 0x18]
- lsls r4, 16
- lsrs r4, 16
- lsls r5, 16
- lsrs r5, 16
- lsls r6, 16
- lsrs r6, 16
- lsls r3, 16
- lsrs r3, 16
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
- ldr r0, _0815F190 @ =sub_815F1AC
- movs r1, 0x50
- str r3, [sp]
- bl CreateTask
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0815F194 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- strh r4, [r1, 0xC]
- strh r5, [r1, 0xE]
- strh r6, [r1, 0x10]
- ldr r3, [sp]
- strh r3, [r1, 0x12]
- mov r0, r8
- strh r0, [r1, 0x14]
- add sp, 0x4
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0815F190: .4byte sub_815F1AC
-_0815F194: .4byte gTasks
- thumb_func_end sub_815F138
-
- thumb_func_start sub_815F198
-sub_815F198: @ 815F198
- push {lr}
- ldr r0, _0815F1A8 @ =sub_815F1AC
- bl FuncIsActiveTask
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .align 2, 0
-_0815F1A8: .4byte sub_815F1AC
- thumb_func_end sub_815F198
-
- thumb_func_start sub_815F1AC
-sub_815F1AC: @ 815F1AC
- push {r4-r6,lr}
- sub sp, 0xC
- lsls r0, 24
- lsrs r6, r0, 24
- lsls r0, r6, 2
- adds r0, r6
- lsls r0, 3
- ldr r1, _0815F1D0 @ =gTasks+0x8
- adds r5, r0, r1
- movs r1, 0
- ldrsh r0, [r5, r1]
- cmp r0, 0x1
- beq _0815F21C
- cmp r0, 0x1
- bgt _0815F1D4
- cmp r0, 0
- beq _0815F1DA
- b _0815F29E
- .align 2, 0
-_0815F1D0: .4byte gTasks+0x8
-_0815F1D4:
- cmp r0, 0x2
- beq _0815F260
- b _0815F29E
-_0815F1DA:
- ldrh r0, [r5, 0x4]
- ldrh r1, [r5, 0x6]
- bl sub_815F564
- ldrh r0, [r5, 0x4]
- ldrh r1, [r5, 0x6]
- movs r3, 0x8
- ldrsh r2, [r5, r3]
- movs r4, 0xA
- ldrsh r3, [r5, r4]
- ldrb r4, [r5, 0xC]
- str r4, [sp]
- bl sub_815F5BC
- lsls r0, 24
- lsrs r0, 24
- strh r0, [r5, 0xE]
- ldrh r0, [r5, 0x4]
- ldrh r1, [r5, 0x6]
- movs r3, 0x8
- ldrsh r2, [r5, r3]
- movs r4, 0xA
- ldrsh r3, [r5, r4]
- ldrb r4, [r5, 0xC]
- str r4, [sp]
- adds r4, r5, 0
- adds r4, 0x10
- str r4, [sp, 0x4]
- adds r4, 0x2
- str r4, [sp, 0x8]
- bl sub_815F610
- b _0815F252
-_0815F21C:
- ldrb r0, [r5, 0xE]
- bl sub_815F2AC
- cmp r0, 0
- bne _0815F29E
- ldrb r0, [r5, 0xE]
- ldrb r1, [r5, 0x10]
- ldrb r2, [r5, 0x12]
- bl sub_815F3E0
- movs r0, 0xE
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _0815F25C @ =gSprites
- adds r0, r4
- bl FreeSpriteOamMatrix
- movs r3, 0xE
- ldrsh r1, [r5, r3]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySprite
-_0815F252:
- ldrh r0, [r5]
- adds r0, 0x1
- strh r0, [r5]
- b _0815F29E
- .align 2, 0
-_0815F25C: .4byte gSprites
-_0815F260:
- ldrb r0, [r5, 0x10]
- bl sub_815F444
- cmp r0, 0
- bne _0815F29E
- movs r4, 0x10
- ldrsh r1, [r5, r4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- ldr r4, _0815F2A8 @ =gSprites
- adds r0, r4
- bl DestroySprite
- movs r0, 0x12
- ldrsh r1, [r5, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r4
- bl DestroySprite
- ldrh r0, [r5, 0x4]
- bl FreeSpriteTilesByTag
- ldrh r0, [r5, 0x6]
- bl FreeSpritePaletteByTag
- adds r0, r6, 0
- bl DestroyTask
-_0815F29E:
- add sp, 0xC
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0815F2A8: .4byte gSprites
- thumb_func_end sub_815F1AC
-
- thumb_func_start sub_815F2AC
-sub_815F2AC: @ 815F2AC
- push {r4,lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- ldr r0, _0815F2D0 @ =gSprites
- adds r4, r1, r0
- movs r1, 0x2E
- ldrsh r0, [r4, r1]
- cmp r0, 0x7
- bls _0815F2C6
- b _0815F3D8
-_0815F2C6:
- lsls r0, 2
- ldr r1, _0815F2D4 @ =_0815F2D8
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0815F2D0: .4byte gSprites
-_0815F2D4: .4byte _0815F2D8
- .align 2, 0
-_0815F2D8:
- .4byte _0815F2F8
- .4byte _0815F30A
- .4byte _0815F330
- .4byte _0815F340
- .4byte _0815F362
- .4byte _0815F39A
- .4byte _0815F3C0
- .4byte _0815F396
-_0815F2F8:
- movs r1, 0x80
- lsls r1, 4
- adds r0, r4, 0
- movs r2, 0x1A
- bl sub_8007FFC
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
-_0815F30A:
- movs r2, 0x32
- ldrsh r0, [r4, r2]
- cmp r0, 0
- bne _0815F318
- movs r0, 0x32
- bl PlaySE
-_0815F318:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x13
- ble _0815F3D8
- movs r0, 0
- strh r0, [r4, 0x32]
- adds r0, r4, 0
- movs r1, 0x1
- b _0815F3B6
-_0815F330:
- adds r0, r4, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _0815F3D8
- b _0815F3BA
-_0815F340:
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x3
- ble _0815F3D8
- movs r0, 0
- strh r0, [r4, 0x32]
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- strh r0, [r4, 0x2E]
- adds r0, r4, 0
- movs r1, 0x2
- bl StartSpriteAffineAnim
- b _0815F3D8
-_0815F362:
- ldrh r0, [r4, 0x22]
- subs r0, 0x4
- strh r0, [r4, 0x22]
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x7
- ble _0815F3D8
- ldrh r1, [r4, 0x36]
- movs r2, 0x36
- ldrsh r0, [r4, r2]
- cmp r0, 0x1
- bgt _0815F392
- adds r1, 0x1
- lsls r1, 24
- lsrs r1, 24
- adds r0, r4, 0
- bl StartSpriteAnim
- movs r0, 0
- strh r0, [r4, 0x32]
- b _0815F3BA
-_0815F392:
- movs r0, 0x7
- strh r0, [r4, 0x2E]
-_0815F396:
- movs r0, 0
- b _0815F3DA
-_0815F39A:
- ldrh r0, [r4, 0x22]
- adds r0, 0x4
- strh r0, [r4, 0x22]
- ldrh r0, [r4, 0x32]
- adds r0, 0x1
- strh r0, [r4, 0x32]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x7
- ble _0815F3D8
- movs r0, 0
- strh r0, [r4, 0x32]
- adds r0, r4, 0
- movs r1, 0x3
-_0815F3B6:
- bl StartSpriteAffineAnim
-_0815F3BA:
- ldrh r0, [r4, 0x2E]
- adds r0, 0x1
- b _0815F3D6
-_0815F3C0:
- adds r0, r4, 0
- adds r0, 0x3F
- ldrb r1, [r0]
- movs r0, 0x20
- ands r0, r1
- cmp r0, 0
- beq _0815F3D8
- ldrh r0, [r4, 0x36]
- adds r0, 0x1
- strh r0, [r4, 0x36]
- movs r0, 0x1
-_0815F3D6:
- strh r0, [r4, 0x2E]
-_0815F3D8:
- movs r0, 0x1
-_0815F3DA:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_815F2AC
-
- thumb_func_start sub_815F3E0
-sub_815F3E0: @ 815F3E0
- push {r4-r6,lr}
- mov r6, r8
- push {r6}
- lsls r1, 24
- lsrs r1, 24
- lsls r2, 24
- lsrs r2, 24
- ldr r0, _0815F438 @ =gSprites
- mov r8, r0
- lsls r4, r1, 4
- adds r4, r1
- lsls r4, 2
- adds r5, r4, r0
- ldr r0, _0815F43C @ =0x0000ffd8
- strh r0, [r5, 0x26]
- lsls r3, r2, 4
- adds r3, r2
- lsls r3, 2
- mov r1, r8
- adds r2, r3, r1
- strh r0, [r2, 0x26]
- adds r5, 0x3E
- ldrb r6, [r5]
- movs r1, 0x5
- negs r1, r1
- adds r0, r1, 0
- ands r0, r6
- strb r0, [r5]
- adds r2, 0x3E
- ldrb r0, [r2]
- ands r1, r0
- strb r1, [r2]
- movs r0, 0x1C
- add r8, r0
- add r4, r8
- ldr r0, _0815F440 @ =sub_815F470
- str r0, [r4]
- add r3, r8
- str r0, [r3]
- pop {r3}
- mov r8, r3
- pop {r4-r6}
- pop {r0}
- bx r0
- .align 2, 0
-_0815F438: .4byte gSprites
-_0815F43C: .4byte 0x0000ffd8
-_0815F440: .4byte sub_815F470
- thumb_func_end sub_815F3E0
-
- thumb_func_start sub_815F444
-sub_815F444: @ 815F444
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- movs r3, 0
- ldr r2, _0815F468 @ =gSprites
- lsls r1, r0, 4
- adds r1, r0
- lsls r1, 2
- adds r2, 0x1C
- adds r1, r2
- ldr r1, [r1]
- ldr r0, _0815F46C @ =sub_815F470
- cmp r1, r0
- bne _0815F462
- movs r3, 0x1
-_0815F462:
- adds r0, r3, 0
- pop {r1}
- bx r1
- .align 2, 0
-_0815F468: .4byte gSprites
-_0815F46C: .4byte sub_815F470
- thumb_func_end sub_815F444
-
- thumb_func_start sub_815F470
-sub_815F470: @ 815F470
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r5, 0
- adds r4, 0x2E
- movs r1, 0x2E
- ldrsh r0, [r5, r1]
- cmp r0, 0x4
- bhi _0815F55A
- lsls r0, 2
- ldr r1, _0815F48C @ =_0815F490
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0815F48C: .4byte _0815F490
- .align 2, 0
-_0815F490:
- .4byte _0815F4A4
- .4byte _0815F4B4
- .4byte _0815F4DC
- .4byte _0815F510
- .4byte _0815F548
-_0815F4A4:
- movs r0, 0x40
- strh r0, [r4, 0x8]
- ldrh r0, [r5, 0x26]
- lsls r0, 4
- strh r0, [r4, 0xA]
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_0815F4B4:
- ldrh r1, [r4, 0x8]
- ldrh r2, [r4, 0xA]
- adds r0, r1, r2
- strh r0, [r4, 0xA]
- adds r1, 0x1
- strh r1, [r4, 0x8]
- lsls r0, 16
- asrs r0, 20
- strh r0, [r5, 0x26]
- cmp r0, 0
- blt _0815F55A
- movs r0, 0x32
- bl PlaySE
- movs r0, 0
- strh r0, [r5, 0x26]
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
- b _0815F55A
-_0815F4DC:
- ldrh r0, [r4, 0x2]
- adds r0, 0xC
- strh r0, [r4, 0x2]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x7F
- ble _0815F4FA
- movs r0, 0x32
- bl PlaySE
- movs r0, 0
- strh r0, [r4, 0x2]
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_0815F4FA:
- ldr r0, _0815F50C @ =gSineTable
- movs r2, 0x2
- ldrsh r1, [r4, r2]
- lsls r1, 1
- adds r1, r0
- movs r2, 0
- ldrsh r0, [r1, r2]
- asrs r0, 4
- b _0815F53E
- .align 2, 0
-_0815F50C: .4byte gSineTable
-_0815F510:
- ldrh r0, [r4, 0x2]
- adds r0, 0x10
- strh r0, [r4, 0x2]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x7F
- ble _0815F52E
- movs r0, 0x32
- bl PlaySE
- movs r0, 0
- strh r0, [r4, 0x2]
- ldrh r0, [r4]
- adds r0, 0x1
- strh r0, [r4]
-_0815F52E:
- ldr r1, _0815F544 @ =gSineTable
- movs r2, 0x2
- ldrsh r0, [r4, r2]
- lsls r0, 1
- adds r0, r1
- ldrh r0, [r0]
- lsls r0, 16
- asrs r0, 21
-_0815F53E:
- negs r0, r0
- strh r0, [r5, 0x26]
- b _0815F55A
- .align 2, 0
-_0815F544: .4byte gSineTable
-_0815F548:
- ldrh r0, [r4, 0x2]
- adds r0, 0x1
- strh r0, [r4, 0x2]
- lsls r0, 16
- asrs r0, 16
- cmp r0, 0x28
- ble _0815F55A
- ldr r0, _0815F560 @ =SpriteCallbackDummy
- str r0, [r5, 0x1C]
-_0815F55A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0815F560: .4byte SpriteCallbackDummy
- thumb_func_end sub_815F470
-
- thumb_func_start sub_815F564
-sub_815F564: @ 815F564
- push {r4,lr}
- sub sp, 0x10
- lsls r1, 16
- lsrs r1, 16
- ldr r2, _0815F5AC @ =gUnknown_847A79C
- ldr r3, [r2, 0x4]
- ldr r2, [r2]
- str r2, [sp]
- str r3, [sp, 0x4]
- ldr r2, _0815F5B0 @ =gUnknown_847A7A4
- ldr r3, [r2, 0x4]
- ldr r2, [r2]
- str r2, [sp, 0x8]
- str r3, [sp, 0xC]
- lsls r0, 16
- ldr r3, _0815F5B4 @ =0x0000ffff
- ldr r2, [sp, 0x4]
- ands r2, r3
- orrs r2, r0
- str r2, [sp, 0x4]
- ldr r2, _0815F5B8 @ =0xffff0000
- add r4, sp, 0x8
- ldr r0, [r4, 0x4]
- ands r0, r2
- orrs r0, r1
- str r0, [r4, 0x4]
- mov r0, sp
- bl LoadCompressedObjectPic
- adds r0, r4, 0
- bl LoadSpritePalette
- add sp, 0x10
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0815F5AC: .4byte gUnknown_847A79C
-_0815F5B0: .4byte gUnknown_847A7A4
-_0815F5B4: .4byte 0x0000ffff
-_0815F5B8: .4byte 0xffff0000
- thumb_func_end sub_815F564
-
- thumb_func_start sub_815F5BC
-sub_815F5BC: @ 815F5BC
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- sub sp, 0x18
- mov r12, r3
- ldr r3, [sp, 0x30]
- lsls r1, 16
- lsrs r1, 16
- lsls r3, 24
- lsrs r3, 24
- mov r8, r3
- mov r5, sp
- ldr r4, _0815F60C @ =gUnknown_847A860
- ldm r4!, {r3,r6,r7}
- stm r5!, {r3,r6,r7}
- ldm r4!, {r3,r6,r7}
- stm r5!, {r3,r6,r7}
- mov r4, sp
- strh r0, [r4]
- mov r0, sp
- strh r1, [r0, 0x2]
- lsls r2, 16
- asrs r2, 16
- mov r0, r12
- lsls r6, r0, 16
- asrs r6, 16
- mov r0, sp
- adds r1, r2, 0
- adds r2, r6, 0
- mov r3, r8
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- add sp, 0x18
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0815F60C: .4byte gUnknown_847A860
- thumb_func_end sub_815F5BC
-
- thumb_func_start sub_815F610
-sub_815F610: @ 815F610
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x18
- mov r12, r3
- ldr r6, [sp, 0x38]
- ldr r3, [sp, 0x3C]
- mov r9, r3
- ldr r4, [sp, 0x40]
- mov r8, r4
- lsls r1, 16
- lsrs r1, 16
- lsls r6, 24
- lsrs r6, 24
- mov r10, r6
- mov r4, sp
- ldr r3, _0815F6D4 @ =gUnknown_847A878
- ldm r3!, {r5-r7}
- stm r4!, {r5-r7}
- ldm r3!, {r5-r7}
- stm r4!, {r5-r7}
- mov r3, sp
- strh r0, [r3]
- mov r0, sp
- strh r1, [r0, 0x2]
- lsls r2, 16
- asrs r4, r2, 16
- ldr r0, _0815F6D8 @ =0xffe00000
- adds r2, r0
- asrs r2, 16
- mov r1, r12
- lsls r5, r1, 16
- asrs r5, 16
- mov r0, sp
- adds r1, r2, 0
- adds r2, r5, 0
- mov r3, r10
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- mov r3, r9
- strh r0, [r3]
- adds r4, 0x20
- lsls r4, 16
- asrs r4, 16
- mov r0, sp
- adds r1, r4, 0
- adds r2, r5, 0
- mov r3, r10
- bl CreateSprite
- lsls r0, 24
- lsrs r0, 24
- mov r4, r8
- strh r0, [r4]
- ldr r2, _0815F6DC @ =gSprites
- mov r5, r9
- movs r6, 0
- ldrsh r1, [r5, r6]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r1, [r0]
- movs r3, 0x4
- orrs r1, r3
- strb r1, [r0]
- movs r7, 0
- ldrsh r1, [r4, r7]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- adds r0, 0x3E
- ldrb r1, [r0]
- orrs r1, r3
- strb r1, [r0]
- movs r0, 0
- ldrsh r1, [r4, r0]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0x1
- bl StartSpriteAnim
- add sp, 0x18
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0815F6D4: .4byte gUnknown_847A878
-_0815F6D8: .4byte 0xffe00000
-_0815F6DC: .4byte gSprites
- thumb_func_end sub_815F610
-
- .align 2, 0 @ Don't pad with nop.