summaryrefslogtreecommitdiff
path: root/asm/electric.s
diff options
context:
space:
mode:
Diffstat (limited to 'asm/electric.s')
-rw-r--r--asm/electric.s95
1 files changed, 95 insertions, 0 deletions
diff --git a/asm/electric.s b/asm/electric.s
index fa92c096a..138f6d14a 100644
--- a/asm/electric.s
+++ b/asm/electric.s
@@ -2672,4 +2672,99 @@ _080AF052:
bx r0
thumb_func_end sub_80AEFA0
+ thumb_func_start sub_80AF058
+sub_80AF058: @ 80AF058
+ push {r4,r5,lr}
+ adds r4, r0, 0
+ lsls r1, 24
+ lsrs r5, r1, 24
+ ldr r0, _080AF0B4 @ =gUnknown_83E5F38
+ movs r2, 0x22
+ ldrsh r1, [r4, r2]
+ movs r3, 0x24
+ ldrsh r2, [r4, r3]
+ ldrh r3, [r4, 0x20]
+ lsls r3, 24
+ lsrs r3, 24
+ bl CreateSprite
+ lsls r0, 24
+ lsrs r1, r0, 24
+ cmp r1, 0x40
+ beq _080AF09C
+ ldr r3, _080AF0B8 @ =gSprites
+ lsls r0, r1, 4
+ adds r0, r1
+ lsls r0, 2
+ adds r1, r3, 0
+ adds r1, 0x1C
+ adds r1, r0, r1
+ ldr r2, _080AF0BC @ =sub_80AF0C8
+ str r2, [r1]
+ adds r0, r3
+ strh r5, [r0, 0x3A]
+ movs r1, 0xA
+ strh r1, [r0, 0x3C]
+ ldrh r0, [r4, 0x1C]
+ adds r0, 0x1
+ strh r0, [r4, 0x1C]
+_080AF09C:
+ ldrh r2, [r4, 0x24]
+ movs r0, 0x24
+ ldrsh r1, [r4, r0]
+ movs r3, 0x26
+ ldrsh r0, [r4, r3]
+ cmp r1, r0
+ bge _080AF0C0
+ adds r0, r2, 0
+ adds r0, 0x20
+ strh r0, [r4, 0x24]
+ movs r0, 0
+ b _080AF0C2
+ .align 2, 0
+_080AF0B4: .4byte gUnknown_83E5F38
+_080AF0B8: .4byte gSprites
+_080AF0BC: .4byte sub_80AF0C8
+_080AF0C0:
+ movs r0, 0x1
+_080AF0C2:
+ pop {r4,r5}
+ pop {r1}
+ bx r1
+ thumb_func_end sub_80AF058
+
+ thumb_func_start sub_80AF0C8
+sub_80AF0C8: @ 80AF0C8
+ push {r4,lr}
+ adds r4, r0, 0
+ adds r0, 0x3F
+ ldrb r1, [r0]
+ movs r0, 0x10
+ ands r0, r1
+ cmp r0, 0
+ beq _080AF0FC
+ ldr r3, _080AF104 @ =gTasks
+ movs r0, 0x3C
+ ldrsh r1, [r4, r0]
+ lsls r1, 1
+ movs r0, 0x3A
+ ldrsh r2, [r4, r0]
+ lsls r0, r2, 2
+ adds r0, r2
+ lsls r0, 3
+ adds r1, r0
+ adds r3, 0x8
+ adds r1, r3
+ ldrh r0, [r1]
+ subs r0, 0x1
+ strh r0, [r1]
+ adds r0, r4, 0
+ bl DestroySprite
+_080AF0FC:
+ pop {r4}
+ pop {r0}
+ bx r0
+ .align 2, 0
+_080AF104: .4byte gTasks
+ thumb_func_end sub_80AF0C8
+
.align 2, 0 @ Don't pad with nop.