asm splitting

This commit is contained in:
theo
2020-05-28 20:51:59 -07:00
parent 731ce9b7a5
commit 7afbda2b4d
86 changed files with 146004 additions and 145626 deletions
+1 -1
View File
@@ -162,7 +162,7 @@ _080525C2:
adds r0, #0x38
strb r1, [r0]
adds r0, r4, #0
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
adds r0, r4, #0
movs r1, #1
bl sub_0805EA2C
+339
View File
@@ -0,0 +1,339 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0801917C
sub_0801917C: @ 0x0801917C
push {r4, r5, r6, r7, lr}
adds r4, r0, #0
ldrb r2, [r4, #0xa]
cmp r2, #0
bne _08019188
b _0801934A
_08019188:
ldr r0, [r4, #0x74]
subs r0, #1
str r0, [r4, #0x74]
cmp r0, #0
bne _0801919C
adds r0, r4, #0
bl sub_08019468
bl sub_0805E780
_0801919C:
adds r0, r4, #0
bl sub_08004274
ldr r0, [r4, #0x74]
cmp r0, #0x17
bhi _080191BA
ldrb r2, [r4, #0x18]
lsls r1, r2, #0x1e
lsrs r1, r1, #0x1e
movs r0, #1
eors r1, r0
subs r0, #5
ands r0, r2
orrs r0, r1
strb r0, [r4, #0x18]
_080191BA:
adds r0, r4, #0
bl sub_0806F69C
adds r0, r4, #0
adds r0, #0x40
ldrb r1, [r0]
movs r5, #4
adds r6, r0, #0
cmp r1, #0xe
bne _080191D0
movs r5, #1
_080191D0:
ldr r2, [r4, #0x6c]
ldr r3, [r4, #0x70]
adds r0, r4, #0
adds r1, r5, #0
bl sub_08008782
cmp r0, #0
beq _080191EE
ldrb r0, [r6]
cmp r0, #0xe
beq _080191EA
bl sub_0805E780
_080191EA:
movs r7, #1
b _080191F0
_080191EE:
movs r7, #0
_080191F0:
ldrb r0, [r6]
cmp r0, #0xe
bne _0801920E
ldrb r0, [r4, #0xe]
adds r0, #1
strb r0, [r4, #0xe]
movs r1, #7
ands r0, r1
cmp r0, #0
bne _0801920E
adds r0, r4, #0
movs r1, #0x14
movs r2, #0
bl CreateFX
_0801920E:
ldrb r0, [r4, #0xb]
cmp r0, #0
bne _0801921A
adds r0, r4, #0
bl sub_0800451C
_0801921A:
movs r1, #0x2e
ldrsh r0, [r4, r1]
ldr r2, _08019288 @ =gRoomControls
ldrh r1, [r2, #6]
subs r0, r0, r1
asrs r0, r0, #4
movs r3, #0x3f
ands r0, r3
movs r5, #0x32
ldrsh r1, [r4, r5]
ldrh r2, [r2, #8]
subs r1, r1, r2
asrs r1, r1, #4
ands r1, r3
lsls r1, r1, #6
orrs r0, r1
ldr r1, _0801928C @ =gLinkEntity
adds r1, #0x38
ldrb r1, [r1]
movs r2, #0x80
bl sub_080002F0
cmp r0, #0
bne _080192D0
cmp r7, #0
bne _080192D0
ldr r1, _08019290 @ =gUnk_08003E44
movs r0, #0x2e
ldrsh r2, [r4, r0]
movs r5, #0x32
ldrsh r3, [r4, r5]
adds r0, r4, #0
bl sub_080040D8
cmp r0, #0
beq _080192D0
movs r0, #0x1e
strb r0, [r4, #0xe]
ldrb r0, [r4, #0xc]
adds r0, #1
strb r0, [r4, #0xc]
ldrb r0, [r6]
cmp r0, #0xe
bne _08019294
adds r0, r4, #0
bl sub_08019468
adds r0, r4, #0
adds r0, #0x58
ldrb r1, [r0]
adds r1, #0xf
adds r0, r4, #0
bl sub_08004260
b _080192A2
.align 2, 0
_08019288: .4byte gRoomControls
_0801928C: .4byte gLinkEntity
_08019290: .4byte gUnk_08003E44
_08019294:
adds r0, r4, #0
adds r0, #0x58
ldrb r1, [r0]
adds r1, #2
adds r0, r4, #0
bl sub_08004260
_080192A2:
adds r0, r4, #0
bl sub_08017744
ldrb r0, [r4, #0x10]
movs r1, #0x7f
ands r1, r0
movs r0, #0
strb r1, [r4, #0x10]
strh r0, [r4, #0x24]
ldr r0, [r4, #0x2c]
cmp r0, #0
bge _080192BC
movs r0, #0
_080192BC:
str r0, [r4, #0x2c]
ldr r0, [r4, #0x30]
cmp r0, #0
bge _080192C6
movs r0, #0
_080192C6:
str r0, [r4, #0x30]
movs r0, #0xc5
lsls r0, r0, #1
bl PlaySFX
_080192D0:
adds r5, r4, #0
adds r5, #0x41
ldrb r0, [r5]
cmp r0, #0
bne _080192DC
b _08019402
_080192DC:
cmp r7, #0
beq _080192E2
b _08019402
_080192E2:
ldrb r0, [r6]
cmp r0, #0xe
bne _080192EE
adds r0, r4, #0
bl sub_08019468
_080192EE:
adds r0, r4, #0
bl sub_08017744
ldrb r1, [r5]
movs r0, #0x3f
ands r0, r1
cmp r0, #0x42
bne _08019336
ldrb r1, [r4, #0x18]
movs r0, #4
rsbs r0, r0, #0
ands r0, r1
movs r1, #1
orrs r0, r1
strb r0, [r4, #0x18]
movs r0, #3
strb r0, [r4, #0xc]
ldrb r0, [r4, #0x15]
movs r1, #0x10
eors r0, r1
strb r0, [r4, #0x15]
movs r0, #0x80
lsls r0, r0, #1
strh r0, [r4, #0x24]
movs r0, #0x80
lsls r0, r0, #8
str r0, [r4, #0x20]
ldrb r1, [r4, #0x10]
movs r0, #0x7f
ands r0, r1
strb r0, [r4, #0x10]
adds r0, r4, #0
movs r1, #6
bl sub_08004260
b _08019402
_08019336:
ldrb r0, [r4, #0xc]
adds r0, #1
strb r0, [r4, #0xc]
movs r0, #1
strb r0, [r4, #0xe]
ldrb r1, [r4, #0x18]
subs r0, #5
ands r0, r1
strb r0, [r4, #0x18]
b _08019402
_0801934A:
ldr r1, _0801938C @ =gUnk_03003F80
ldr r0, [r1, #0x2c]
cmp r0, r4
bne _0801935E
adds r0, r1, #0
adds r0, #0x21
ldrb r0, [r0]
cmp r0, #0
bne _08019368
str r0, [r1, #0x2c]
_0801935E:
adds r0, r1, #0
adds r0, #0x21
strb r2, [r0]
bl sub_0805E780
_08019368:
adds r0, r4, #0
adds r0, #0x68
ldrb r0, [r0]
cmp r0, #0xa
bne _08019398
ldr r0, _0801938C @ =gUnk_03003F80
adds r2, r0, #0
adds r2, #0x21
ldrb r0, [r2]
adds r1, r0, #0
cmp r1, #0
beq _08019398
cmp r1, #0x77
bhi _08019390
adds r0, #1
strb r0, [r2]
b _08019398
.align 2, 0
_0801938C: .4byte gUnk_03003F80
_08019390:
adds r1, r4, #0
adds r1, #0x40
movs r0, #0xe
strb r0, [r1]
_08019398:
ldr r0, _08019404 @ =gUnk_02002A40
adds r0, #0xad
ldrb r5, [r0]
ldrb r1, [r4, #0x1e]
ldr r2, [r4, #0x78]
subs r1, r1, r2
ldr r0, _08019408 @ =gLinkEntity
ldrb r0, [r0, #0x1e]
cmp r1, r0
beq _080193C2
adds r0, r0, r2
strb r0, [r4, #0x1e]
cmp r5, #0
bne _080193B8
adds r0, #0x2a
strb r0, [r4, #0x1e]
_080193B8:
ldrb r1, [r4, #0x1e]
ldrh r2, [r4, #0x12]
adds r0, r4, #0
bl sub_080042D0
_080193C2:
ldr r0, _08019408 @ =gLinkEntity
adds r0, #0x5a
ldrb r1, [r0]
movs r0, #1
ands r0, r1
cmp r0, #0
beq _080193FA
cmp r5, #0
beq _080193FA
adds r0, r4, #0
adds r0, #0x40
ldrb r2, [r0]
movs r0, #4
movs r1, #1
movs r3, #9
bl sub_08077CB8
cmp r0, #0
beq _080193FA
ldr r2, _0801940C @ =gUnk_03003F80
ldrb r1, [r2, #4]
movs r0, #0x80
orrs r0, r1
strb r0, [r2, #4]
movs r0, #1
rsbs r0, r0, #0
bl sub_08054330
_080193FA:
ldr r1, _08019408 @ =gLinkEntity
adds r0, r4, #0
bl sub_08078E84
_08019402:
pop {r4, r5, r6, r7, pc}
.align 2, 0
_08019404: .4byte gUnk_02002A40
_08019408: .4byte gLinkEntity
_0801940C: .4byte gUnk_03003F80
+122
View File
@@ -0,0 +1,122 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_08067C44
sub_08067C44: @ 0x08067C44
push {r4, r5, lr}
adds r4, r0, #0
ldr r0, _08067C6C @ =gUnk_03003F80
ldr r0, [r0, #0x30]
movs r1, #0x80
ands r0, r1
rsbs r0, r0, #0
lsrs r5, r0, #0x1f
adds r0, r4, #0
adds r0, #0x69
ldrb r0, [r0]
cmp r5, r0
beq _08067C7C
cmp r5, #0
bne _08067C70
adds r0, r4, #0
bl sub_08078778
b _08067C7C
.align 2, 0
_08067C6C: .4byte gUnk_03003F80
_08067C70:
adds r0, r4, #0
adds r0, #0x68
ldrb r1, [r0]
adds r0, r4, #0
bl sub_080787A8
_08067C7C:
adds r0, r4, #0
adds r0, #0x69
strb r5, [r0]
subs r0, #0x30
movs r1, #0
ldrsb r1, [r0, r1]
adds r5, r0, #0
cmp r1, #0
beq _08067D1C
ldr r1, _08067CB4 @ =gLinkEntity
adds r0, r4, #0
bl sub_0806FCA0
adds r2, r0, #0
adds r0, r4, #0
adds r0, #0x58
ldrb r0, [r0]
cmp r0, #0
beq _08067CA6
cmp r0, #3
beq _08067CB8
_08067CA6:
cmp r2, #2
bne _08067CDA
adds r0, r4, #0
movs r1, #2
bl sub_080042AC
b _08067CEC
.align 2, 0
_08067CB4: .4byte gLinkEntity
_08067CB8:
cmp r2, #1
bne _08067CC4
ldrb r0, [r4, #0x18]
movs r1, #0x40
orrs r0, r1
b _08067CD4
_08067CC4:
ldrb r1, [r4, #0x18]
lsls r0, r1, #0x19
lsrs r0, r0, #0x1f
cmp r0, #3
bne _08067CD6
movs r0, #0x41
rsbs r0, r0, #0
ands r0, r1
_08067CD4:
strb r0, [r4, #0x18]
_08067CD6:
cmp r2, #2
beq _08067CE4
_08067CDA:
adds r0, r4, #0
movs r1, #1
bl sub_080042AC
b _08067CEC
_08067CE4:
adds r0, r4, #0
movs r1, #2
bl sub_080042AC
_08067CEC:
movs r0, #0
ldrsb r0, [r5, r0]
cmp r0, #2
bne _08067D00
movs r0, #8
strb r0, [r4, #0xc]
adds r0, r4, #0
bl sub_0806F118
b _08067D12
_08067D00:
movs r0, #4
strb r0, [r4, #0xc]
adds r0, r4, #0
bl sub_08067790
adds r0, r4, #0
movs r1, #2
bl sub_0805E3A0
_08067D12:
movs r0, #0
strb r0, [r5]
movs r0, #0xd2
bl PlaySFX
_08067D1C:
pop {r4, r5, pc}
.align 2, 0
+47
View File
@@ -0,0 +1,47 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0806E838
sub_0806E838: @ 0x0806E838
push {r4, lr}
adds r4, r0, #0
adds r0, #0x39
movs r2, #0
ldrsb r2, [r0, r2]
cmp r2, #0
beq _0806E882
ldr r0, _0806E864 @ =gUnk_03003F80
ldr r0, [r0, #0x30]
movs r1, #0x80
ands r0, r1
cmp r0, #0
beq _0806E870
cmp r2, #2
bne _0806E868
movs r0, #3
strb r0, [r4, #0xc]
adds r0, r4, #0
bl sub_0806F118
b _0806E874
.align 2, 0
_0806E864: .4byte gUnk_03003F80
_0806E868:
adds r0, r4, #0
bl sub_0806E884
b _0806E874
_0806E870:
bl sub_080791D0
_0806E874:
movs r0, #0xd6
bl PlaySFX
adds r1, r4, #0
adds r1, #0x39
movs r0, #0
strb r0, [r1]
_0806E882:
pop {r4, pc}
+1 -1
View File
@@ -123,7 +123,7 @@ _0800407E:
ldr r4, _08004360 @ =gUnk_02021F20
_0800408C:
ldrh r0, [r4]
bl sub_080A3268
bl PlaySFX
adds r4, #2
subs r5, #1
bne _0800408C
+1 -1
View File
@@ -106,7 +106,7 @@ sub_0800449C: @ 0x0800449C
cmp r0, #0
pop {r0}
beq _080044AC
bl sub_080A3268
bl PlaySFX
_080044AC:
pop {pc}
+5 -5
View File
@@ -387,7 +387,7 @@ _0800882C:
movs r3, #0x38
ldrb r1, [r4, r3]
strb r1, [r0, r3]
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
_0800883A:
ldr r1, _080088E0 @ =gRoomControls
ldrh r0, [r1, #6]
@@ -4030,8 +4030,8 @@ gUnk_080169A4::
.byte 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0xFF, 0x00, 0xFF, 0x00, 0xFF, 0x00
.byte 0x00, 0x00, 0x01, 0x00
thumb_func_start sub_08016A04
sub_08016A04: @ 0x08016A04
thumb_func_start UpdateSpriteOrderAndFlip
UpdateSpriteOrderAndFlip: @ 0x08016A04
movs r1, #0x38
ldrb r1, [r0, r1]
lsls r1, r1, #1
@@ -4083,7 +4083,7 @@ _08016A62:
strb r3, [r4, r5]
_08016A64:
adds r0, r4, #0
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
pop {r4, r5, pc}
thumb_func_start sub_08016A6C
@@ -4123,6 +4123,6 @@ sub_08016AD2: @ 0x08016AD2
bl sub_08016A6C
push {r0}
adds r0, r4, #0
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
pop {r0, r4, pc}
+4 -4
View File
@@ -284,7 +284,7 @@ sub_08016FF4: @ 0x08016FF4
cmp r0, #0
ble _0801702E
movs r0, #0x86
bl sub_080A3268
bl PlaySFX
_0801702E:
ldr r4, _080170A8 @ =gUnk_03003F80
ldr r0, [r4, #0x30]
@@ -431,7 +431,7 @@ _08017150:
movs r0, #0
strb r0, [r2]
ldr r0, _0801716C @ =0x000001B3
bl sub_080A3268
bl PlaySFX
_0801715A:
ldr r0, _08017170 @ =gUnk_02002A40
adds r3, r0, #0
@@ -461,7 +461,7 @@ _08017188:
strb r0, [r3]
movs r0, #0xa0
lsls r0, r0, #1
bl sub_080A3268
bl PlaySFX
b _080171A4
_08017196:
movs r0, #0xf
@@ -1567,7 +1567,7 @@ sub_08017940: @ 0x08017940
adds r0, #0x38
strb r1, [r0]
adds r0, r2, #0
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
_080179CC:
movs r1, #0
ldr r0, _080179E8 @ =gLinkEntity
+1 -9230
View File
File diff suppressed because it is too large Load Diff
+6177
View File
File diff suppressed because it is too large Load Diff
+151
View File
@@ -0,0 +1,151 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0801C370
sub_0801C370: @ 0x0801C370
push {r4, r5, r6, lr}
cmp r0, #0
bne _0801C390
ldr r0, _0801C388 @ =gUnk_02002A40
adds r1, r0, #0
adds r1, #0xaa
ldrb r1, [r1]
lsrs r6, r1, #1
adds r0, #0xc0
ldrh r4, [r0]
ldr r5, _0801C38C @ =gUnk_0200AF00
b _0801C398
.align 2, 0
_0801C388: .4byte gUnk_02002A40
_0801C38C: .4byte gUnk_0200AF00
_0801C390:
ldr r0, _0801C470 @ =gUnk_0200AF00
ldrb r6, [r0, #3]
ldrh r4, [r0, #0xe]
adds r5, r0, #0
_0801C398:
movs r1, #0xcd
lsls r1, r1, #2
adds r0, r5, #0
bl sub_0801D630
strb r6, [r5, #3]
strh r4, [r5, #0xe]
ldr r0, _0801C474 @ =gUnk_02002A40
adds r0, #0xab
ldrb r0, [r0]
lsrs r0, r0, #1
strb r0, [r5, #4]
movs r0, #0xc
bl sub_0801D714
movs r0, #0x10
bl sub_0801D7EC
ldr r4, _0801C478 @ =gUnk_02034CB0
movs r1, #0x80
lsls r1, r1, #4
adds r0, r4, #0
bl sub_0801D630
ldr r1, _0801C47C @ =gLCDControls
str r4, [r1, #0x10]
ldr r0, _0801C480 @ =0x00001F0C
strh r0, [r1, #8]
ldrh r2, [r1]
movs r3, #0x80
lsls r3, r3, #1
adds r0, r3, #0
orrs r0, r2
strh r0, [r1]
ldr r1, _0801C484 @ =gUnk_03000000
ldr r2, _0801C488 @ =0x00000427
adds r0, r1, r2
movs r2, #1
strb r2, [r0]
ldr r3, _0801C48C @ =0x00000426
adds r0, r1, r3
strb r2, [r0]
ldr r0, _0801C490 @ =0x0000042E
adds r1, r1, r0
strb r2, [r1]
movs r0, #0x7f
strb r0, [r5, #0x13]
strb r0, [r5, #0x14]
strb r0, [r5, #8]
bl sub_0801C6B0
bl sub_0801C4B0
bl sub_0801C85C
bl sub_0801C99C
movs r0, #0xd0
strh r0, [r5, #0x16]
movs r0, #0xb8
strh r0, [r5, #0x18]
movs r0, #0xd8
strh r0, [r5, #0x1a]
movs r0, #0x1c
strh r0, [r5, #0x1c]
strh r0, [r5, #0x1e]
movs r0, #0xe
strh r0, [r5, #0x20]
adds r0, r5, #0
adds r0, #0x34
movs r1, #0xc0
lsls r1, r1, #2
bl sub_0801D630
movs r0, #5
movs r1, #9
bl sub_0801CA6C
movs r0, #3
movs r1, #0
bl sub_0801CA6C
movs r0, #4
movs r1, #0
bl sub_0801CA6C
movs r0, #2
movs r1, #0
bl sub_0801CA6C
movs r0, #1
movs r1, #0
bl sub_0801CA6C
movs r0, #0
movs r1, #0
bl sub_0801CA6C
movs r0, #7
movs r1, #0
bl sub_0801CA6C
movs r0, #6
movs r1, #0
bl sub_0801CA6C
pop {r4, r5, r6, pc}
.align 2, 0
_0801C470: .4byte gUnk_0200AF00
_0801C474: .4byte gUnk_02002A40
_0801C478: .4byte gUnk_02034CB0
_0801C47C: .4byte gLCDControls
_0801C480: .4byte 0x00001F0C
_0801C484: .4byte gUnk_03000000
_0801C488: .4byte 0x00000427
_0801C48C: .4byte 0x00000426
_0801C490: .4byte 0x0000042E
thumb_func_start sub_0801C494
sub_0801C494: @ 0x0801C494
ldr r1, _0801C49C @ =gLCDControls
movs r0, #1
strh r0, [r1, #0xe]
bx lr
.align 2, 0
_0801C49C: .4byte gLCDControls
thumb_func_start sub_0801C4A0
sub_0801C4A0: @ 0x0801C4A0
ldr r1, _0801C4AC @ =gUnk_0200AF00
movs r0, #0
strb r0, [r1, #2]
strb r0, [r1, #0x10]
strb r0, [r1, #0xa]
bx lr
.align 2, 0
_0801C4AC: .4byte gUnk_0200AF00
+112
View File
@@ -0,0 +1,112 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0801C5E0
sub_0801C5E0: @ 0x0801C5E0
push {r4, r5, r6, r7, lr}
adds r4, r0, #0
adds r5, r1, #0
ldr r7, _0801C650 @ =gUnk_085C4B20
cmp r2, #0
bne _0801C5F0
ldr r0, _0801C654 @ =0xFFFFFD80
adds r7, r7, r0
_0801C5F0:
ldr r0, _0801C658 @ =0x000003FF
ands r0, r4
lsls r6, r0, #5
ldr r0, _0801C65C @ =0x0600C000
adds r4, r6, r0
cmp r3, #2
beq _0801C620
cmp r3, #3
bne _0801C63C
adds r0, r5, #0
movs r1, #0x64
bl Div
adds r5, r1, #0
ldr r1, _0801C660 @ =0x040000D4
lsls r0, r0, #6
adds r0, r7, r0
str r0, [r1]
str r4, [r1, #4]
ldr r0, _0801C664 @ =0x84000010
str r0, [r1, #8]
ldr r0, [r1, #8]
ldr r0, _0801C668 @ =0x0600C040
adds r4, r6, r0
_0801C620:
adds r0, r5, #0
movs r1, #0xa
bl Div
adds r5, r1, #0
ldr r1, _0801C660 @ =0x040000D4
lsls r0, r0, #6
adds r0, r7, r0
str r0, [r1]
str r4, [r1, #4]
ldr r0, _0801C664 @ =0x84000010
str r0, [r1, #8]
ldr r0, [r1, #8]
adds r4, #0x40
_0801C63C:
ldr r1, _0801C660 @ =0x040000D4
lsls r0, r5, #6
adds r0, r7, r0
str r0, [r1]
str r4, [r1, #4]
ldr r0, _0801C664 @ =0x84000010
str r0, [r1, #8]
ldr r0, [r1, #8]
pop {r4, r5, r6, r7, pc}
.align 2, 0
_0801C650: .4byte gUnk_085C4B20
_0801C654: .4byte 0xFFFFFD80
_0801C658: .4byte 0x000003FF
_0801C65C: .4byte 0x0600C000
_0801C660: .4byte 0x040000D4
_0801C664: .4byte 0x84000010
_0801C668: .4byte 0x0600C040
thumb_func_start sub_0801C66C
sub_0801C66C: @ 0x0801C66C
push {lr}
ldr r1, _0801C6A4 @ =gUnk_0200AF00
ldrb r0, [r1, #2]
cmp r0, #0
beq _0801C6A2
movs r0, #0
strb r0, [r1, #2]
ldrb r0, [r1, #4]
movs r2, #1
cmp r0, #0x28
bls _0801C684
movs r2, #2
_0801C684:
ldr r0, _0801C6A8 @ =gUnk_02034CF0
ldr r3, _0801C6AC @ =gLCDControls
movs r1, #0
_0801C68A:
str r1, [r0]
str r1, [r0, #4]
str r1, [r0, #8]
str r1, [r0, #0xc]
str r1, [r0, #0x10]
str r1, [r0, #0x14]
adds r0, #0x40
subs r2, #1
cmp r2, #0
bgt _0801C68A
movs r0, #1
strh r0, [r3, #0xe]
_0801C6A2:
pop {pc}
.align 2, 0
_0801C6A4: .4byte gUnk_0200AF00
_0801C6A8: .4byte gUnk_02034CF0
_0801C6AC: .4byte gLCDControls
+1847
View File
File diff suppressed because it is too large Load Diff
+7 -82821
View File
File diff suppressed because it is too large Load Diff
+10454
View File
File diff suppressed because it is too large Load Diff
+1505
View File
File diff suppressed because it is too large Load Diff
+2612
View File
File diff suppressed because it is too large Load Diff
+541
View File
@@ -0,0 +1,541 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0802AE24
sub_0802AE24: @ 0x0802AE24
push {lr}
mov ip, r0
movs r2, #0
movs r3, #1
strb r3, [r0, #0xc]
movs r0, #0xf0
mov r1, ip
strb r0, [r1, #0xe]
movs r0, #0x80
lsls r0, r0, #8
str r0, [r1, #0x20]
ldr r0, _0802AE64 @ =gUnk_080CD174
str r0, [r1, #0x48]
adds r1, #0x3c
movs r0, #3
strb r0, [r1]
mov r0, ip
strb r2, [r0, #0x16]
movs r0, #2
mov r1, ip
strb r0, [r1, #0x1c]
mov r0, ip
adds r0, #0x81
strb r2, [r0]
subs r0, #6
strb r3, [r0]
mov r0, ip
movs r1, #3
bl sub_08004260
pop {pc}
.align 2, 0
_0802AE64: .4byte gUnk_080CD174
thumb_func_start sub_0802AE68
sub_0802AE68: @ 0x0802AE68
push {r4, lr}
adds r4, r0, #0
bl sub_0802B250
adds r1, r0, #0
cmp r1, #0
bne _0802AE8A
movs r0, #3
strb r0, [r4, #0xc]
adds r1, r4, #0
adds r1, #0x80
movs r0, #1
strb r0, [r1]
adds r0, r4, #0
bl sub_0802B264
b _0802AEBA
_0802AE8A:
adds r0, r1, #0
adds r0, #0x81
ldrb r0, [r0]
cmp r0, #0
beq _0802AEA8
adds r0, r1, #0
adds r1, r4, #0
bl sub_0806FA24
ldrb r1, [r4, #0x18]
movs r0, #4
rsbs r0, r0, #0
ands r0, r1
strb r0, [r4, #0x18]
b _0802AEBA
_0802AEA8:
movs r0, #3
strb r0, [r4, #0xc]
adds r1, r4, #0
adds r1, #0x80
movs r0, #1
strb r0, [r1]
adds r0, r4, #0
bl sub_0802B264
_0802AEBA:
pop {r4, pc}
thumb_func_start sub_0802AEBC
sub_0802AEBC: @ 0x0802AEBC
push {lr}
ldr r2, _0802AED0 @ =gUnk_080CD158
ldrb r1, [r0, #0xd]
lsls r1, r1, #2
adds r1, r1, r2
ldr r1, [r1]
bl _call_via_r1
pop {pc}
.align 2, 0
_0802AED0: .4byte gUnk_080CD158
thumb_func_start sub_0802AED4
sub_0802AED4: @ 0x0802AED4
push {r4, r5, lr}
adds r4, r0, #0
bl sub_08004274
adds r5, r4, #0
adds r5, #0x81
ldrb r0, [r5]
cmp r0, #1
bhi _0802AEFC
movs r1, #0xa0
lsls r1, r1, #6
adds r0, r4, #0
bl sub_080044EC
cmp r0, #1
bne _0802AF0C
ldrb r0, [r5]
adds r0, #1
strb r0, [r5]
b _0802AF0C
_0802AEFC:
adds r0, r4, #0
bl sub_0800442E
cmp r0, #0
bne _0802AF0C
adds r0, r4, #0
bl sub_08078930
_0802AF0C:
ldrb r0, [r4, #0xb]
cmp r0, #0
beq _0802AF24
adds r0, r4, #0
adds r0, #0x81
ldrb r0, [r0]
cmp r0, #0
beq _0802AF24
movs r0, #0
strb r0, [r4, #0xe]
movs r0, #1
strb r0, [r4, #0xf]
_0802AF24:
pop {r4, r5, pc}
.align 2, 0
thumb_func_start sub_0802AF28
sub_0802AF28: @ 0x0802AF28
push {r4, lr}
adds r4, r0, #0
movs r0, #1
strb r0, [r4, #0xd]
adds r0, r4, #0
bl sub_08079BD8
adds r2, r4, #0
adds r2, #0x29
ldrb r1, [r2]
movs r0, #0x39
rsbs r0, r0, #0
ands r0, r1
movs r1, #0x10
orrs r0, r1
strb r0, [r2]
adds r0, r4, #0
bl sub_08004274
pop {r4, pc}
thumb_func_start sub_0802AF50
sub_0802AF50: @ 0x0802AF50
push {lr}
bl sub_08004274
pop {pc}
thumb_func_start sub_0802AF58
sub_0802AF58: @ 0x0802AF58
push {r4, lr}
adds r4, r0, #0
bl sub_08004274
adds r4, #0x29
ldrb r1, [r4]
movs r0, #0x39
rsbs r0, r0, #0
ands r0, r1
movs r1, #0x18
orrs r0, r1
strb r0, [r4]
pop {r4, pc}
.align 2, 0
thumb_func_start sub_0802AF74
sub_0802AF74: @ 0x0802AF74
push {lr}
adds r2, r0, #0
movs r0, #0
movs r1, #3
strb r1, [r2, #0xc]
strb r0, [r2, #0xd]
ldrb r0, [r2, #0xe]
cmp r0, #0x3c
bls _0802AF8A
movs r0, #0x3c
strb r0, [r2, #0xe]
_0802AF8A:
adds r0, r2, #0
bl sub_08004274
pop {pc}
.align 2, 0
thumb_func_start sub_0802AF94
sub_0802AF94: @ 0x0802AF94
push {lr}
bl sub_0805E7BC
pop {pc}
thumb_func_start sub_0802AF9C
sub_0802AF9C: @ 0x0802AF9C
push {r4, lr}
adds r4, r0, #0
bl sub_08004274
ldrb r0, [r4, #0xe]
subs r0, #1
strb r0, [r4, #0xe]
lsls r0, r0, #0x18
cmp r0, #0
bne _0802AFC6
ldr r0, [r4, #0x50]
adds r1, r0, #0
adds r1, #0x7a
ldrb r0, [r1]
cmp r0, #0
beq _0802AFC0
subs r0, #1
strb r0, [r1]
_0802AFC0:
adds r0, r4, #0
bl sub_0805E7BC
_0802AFC6:
pop {r4, pc}
thumb_func_start sub_0802AFC8
sub_0802AFC8: @ 0x0802AFC8
push {r4, r5, r6, r7, lr}
adds r4, r0, #0
ldrb r0, [r4, #0xf]
movs r7, #8
cmp r0, #0x28
bhi _0802B022
movs r7, #4
adds r1, r4, #0
adds r1, #0x82
ldrh r2, [r1]
movs r0, #0x80
lsls r0, r0, #8
ands r0, r2
cmp r0, #0
beq _0802AFEC
adds r0, r2, #0
subs r0, #0x10
b _0802AFF0
_0802AFEC:
adds r0, r2, #0
adds r0, #0x10
_0802AFF0:
strh r0, [r1]
adds r5, r1, #0
ldrh r2, [r5]
movs r6, #0xf0
adds r3, r6, #0
ands r3, r2
subs r0, r3, #1
cmp r0, #0x7f
bls _0802B00C
movs r3, #0x80
lsls r3, r3, #8
adds r0, r3, #0
eors r0, r2
strh r0, [r5]
_0802B00C:
ldrh r0, [r1]
adds r3, r6, #0
ands r3, r0
movs r2, #0x98
lsls r2, r2, #1
subs r2, r2, r3
adds r0, r4, #0
adds r1, r2, #0
movs r3, #0
bl sub_0805EC9C
_0802B022:
ldrb r0, [r4, #0xf]
ands r0, r7
cmp r0, #0
beq _0802B03A
ldrb r0, [r4, #0x1a]
lsrs r2, r0, #4
movs r1, #0x10
rsbs r1, r1, #0
ands r1, r0
orrs r1, r2
strb r1, [r4, #0x1a]
b _0802B044
_0802B03A:
ldrb r1, [r4, #0x1a]
movs r0, #0x10
rsbs r0, r0, #0
ands r0, r1
strb r0, [r4, #0x1a]
_0802B044:
pop {r4, r5, r6, r7, pc}
.align 2, 0
thumb_func_start sub_0802B048
sub_0802B048: @ 0x0802B048
push {r4, r5, lr}
adds r4, r0, #0
adds r0, #0x7b
ldrb r0, [r0]
cmp r0, #0
beq _0802B080
ldr r0, _0802B074 @ =gRoomControls
ldrh r1, [r0, #8]
movs r3, #0x32
ldrsh r2, [r4, r3]
cmp r1, r2
bgt _0802B06A
ldrh r0, [r0, #0x20]
adds r0, r1, r0
adds r0, #0x20
cmp r0, r2
bge _0802B078
_0802B06A:
ldrb r1, [r4, #0x10]
movs r0, #0x7f
ands r0, r1
b _0802B07E
.align 2, 0
_0802B074: .4byte gRoomControls
_0802B078:
ldrb r1, [r4, #0x10]
movs r0, #0x80
orrs r0, r1
_0802B07E:
strb r0, [r4, #0x10]
_0802B080:
ldr r5, [r4, #0x50]
cmp r5, #0
beq _0802B0CA
ldrb r0, [r4, #0xc]
cmp r0, #1
bne _0802B0CA
ldrb r1, [r5, #0x19]
lsrs r1, r1, #6
lsls r1, r1, #6
ldrb r3, [r4, #0x19]
movs r2, #0x3f
adds r0, r2, #0
ands r0, r3
orrs r0, r1
strb r0, [r4, #0x19]
adds r0, r5, #0
adds r0, #0x29
ldrb r1, [r0]
lsls r1, r1, #0x1d
movs r0, #0x29
adds r0, r0, r4
mov ip, r0
lsrs r1, r1, #0x1d
ldrb r3, [r0]
movs r0, #8
rsbs r0, r0, #0
ands r0, r3
orrs r0, r1
mov r1, ip
strb r0, [r1]
ldrb r0, [r5, #0x1b]
lsrs r0, r0, #6
lsls r0, r0, #6
ldrb r1, [r4, #0x1b]
ands r2, r1
orrs r2, r0
strb r2, [r4, #0x1b]
_0802B0CA:
ldrb r2, [r4, #0xc]
cmp r2, #4
beq _0802B19E
adds r0, r4, #0
adds r0, #0x80
ldrb r0, [r0]
cmp r0, #0
beq _0802B19E
ldrb r0, [r4, #0xe]
cmp r0, #0
beq _0802B10E
subs r0, #1
strb r0, [r4, #0xe]
lsls r0, r0, #0x18
lsrs r1, r0, #0x18
cmp r1, #0
bne _0802B19E
movs r0, #0x50
strb r0, [r4, #0xf]
adds r0, r4, #0
adds r0, #0x82
strh r1, [r0]
ldrb r0, [r4, #0x19]
movs r1, #3
orrs r0, r1
strb r0, [r4, #0x19]
movs r2, #0x80
lsls r2, r2, #1
adds r0, r4, #0
adds r1, r2, #0
movs r3, #0
bl sub_0805EC9C
b _0802B19E
_0802B10E:
ldrb r0, [r4, #0xf]
cmp r0, #0
beq _0802B19E
subs r0, #1
strb r0, [r4, #0xf]
lsls r0, r0, #0x18
lsrs r1, r0, #0x18
cmp r1, #0
bne _0802B198
cmp r2, #2
bne _0802B12E
ldrb r0, [r4, #0xd]
cmp r0, #1
bne _0802B12E
ldr r0, _0802B188 @ =gUnk_03003F80
strb r1, [r0, #5]
_0802B12E:
adds r0, r4, #0
bl sub_0805EC60
movs r5, #0
movs r0, #4
strb r0, [r4, #0xc]
ldr r0, _0802B18C @ =gUnk_080CD17C
str r0, [r4, #0x48]
movs r0, #0xf
strb r0, [r4, #0xe]
ldrb r1, [r4, #0x18]
subs r0, #0x13
ands r0, r1
strb r0, [r4, #0x18]
ldrb r1, [r4, #0x10]
movs r0, #0x80
orrs r0, r1
strb r0, [r4, #0x10]
adds r0, r4, #0
adds r0, #0x7b
strb r5, [r0]
adds r0, r4, #0
bl sub_08078954
ldr r1, [r4, #0x50]
ldr r0, [r1, #4]
cmp r0, #0
beq _0802B16C
adds r0, r1, #0
adds r0, #0x81
strb r5, [r0]
_0802B16C:
adds r0, r4, #0
movs r1, #0x20
movs r2, #0
movs r3, #0
bl sub_080A2988
adds r5, r0, #0
cmp r5, #0
beq _0802B190
adds r1, r4, #0
adds r1, #0x38
movs r0, #1
strb r0, [r1]
b _0802B19E
.align 2, 0
_0802B188: .4byte gUnk_03003F80
_0802B18C: .4byte gUnk_080CD17C
_0802B190:
adds r0, r4, #0
bl sub_0805E7BC
b _0802B19E
_0802B198:
adds r0, r4, #0
bl sub_0802AFC8
_0802B19E:
pop {r4, r5, pc}
thumb_func_start sub_0802B1A0
sub_0802B1A0: @ 0x0802B1A0
push {lr}
movs r1, #0
movs r2, #1
strb r2, [r0, #0xc]
strb r1, [r0, #0xe]
movs r1, #0x4f
strb r1, [r0, #0xf]
adds r1, r0, #0
adds r1, #0x81
strb r2, [r1]
movs r1, #0
bl sub_08004260
pop {pc}
thumb_func_start sub_0802B1BC
sub_0802B1BC: @ 0x0802B1BC
push {r4, lr}
adds r4, r0, #0
ldrb r0, [r4, #0xe]
cmp r0, #0
beq _0802B1CA
subs r0, #1
strb r0, [r4, #0xe]
_0802B1CA:
adds r0, r4, #0
bl sub_0802B250
adds r1, r0, #0
cmp r1, #0
bne _0802B1E2
movs r0, #2
strb r0, [r4, #0xc]
adds r0, r4, #0
bl sub_0802B264
b _0802B200
_0802B1E2:
adds r0, r1, #0
adds r0, #0x81
ldrb r0, [r0]
cmp r0, #0
beq _0802B1F6
adds r0, r1, #0
adds r1, r4, #0
bl sub_0806FA24
b _0802B200
_0802B1F6:
movs r0, #2
strb r0, [r4, #0xc]
adds r0, r4, #0
bl sub_0802B264
_0802B200:
pop {r4, pc}
.align 2, 0
+18867
View File
File diff suppressed because it is too large Load Diff
+48291
View File
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -186,7 +186,7 @@ _0804ABA4:
strb r0, [r1, #0xe]
movs r0, #4
movs r1, #8
bl sub_08050054
bl DoFade
pop {r4, r5, pc}
.align 2, 0
_0804ABF8: .4byte gLCDControls
@@ -258,7 +258,7 @@ _0804AC86:
strb r0, [r1, #0xe]
movs r0, #7
movs r1, #0x10
bl sub_08050054
bl DoFade
_0804AC96:
pop {r4, pc}
.align 2, 0
@@ -318,7 +318,7 @@ sub_0804ACF8: @ 0x0804ACF8
bl sub_0804AD6C
bl sub_0805E5A8
movs r0, #0xf8
bl sub_080A3268
bl PlaySFX
_0804AD12:
pop {pc}
.align 2, 0
+3 -3
View File
@@ -1118,7 +1118,7 @@ sub_0804B7E8: @ 0x0804B7E8
movs r1, #0x80
lsls r1, r1, #1
movs r0, #5
bl sub_08050054
bl DoFade
ldr r2, _0804B820 @ =gLinkEntity
ldr r1, _0804B824 @ =gRoomControls
ldrh r0, [r1, #6]
@@ -1181,7 +1181,7 @@ sub_0804B86C: @ 0x0804B86C
movs r1, #0x80
lsls r1, r1, #1
movs r0, #5
bl sub_08050054
bl DoFade
ldr r2, _0804B8A4 @ =gLinkEntity
ldr r1, _0804B8A8 @ =gRoomControls
ldrh r0, [r1, #6]
@@ -1244,7 +1244,7 @@ sub_0804B8F0: @ 0x0804B8F0
movs r1, #0x80
lsls r1, r1, #1
movs r0, #5
bl sub_08050054
bl DoFade
ldr r2, _0804B928 @ =gLinkEntity
ldr r1, _0804B92C @ =gRoomControls
ldrh r0, [r1, #6]
+18 -18
View File
@@ -349,7 +349,7 @@ sub_0804BC70: @ 0x0804BC70
movs r1, #0x80
lsls r1, r1, #1
movs r0, #5
bl sub_08050054
bl DoFade
ldr r2, _0804BCB0 @ =gLinkEntity
ldr r1, _0804BCB4 @ =gRoomControls
ldrh r0, [r1, #6]
@@ -932,7 +932,7 @@ _0804BFE8:
ldrh r1, [r4, #0xc]
bl sub_08080964
ldrh r0, [r4, #0xe]
bl sub_080A3268
bl PlaySFX
pop {r3, r4, r5}
mov r8, r3
mov sb, r4
@@ -1031,7 +1031,7 @@ _0804C090:
cmp r1, r0
bne _0804C0C8
movs r0, #0x72
bl sub_080A3268
bl PlaySFX
_0804C0C8:
movs r0, #0x62
bl sub_0807CD80
@@ -3206,7 +3206,7 @@ _0804CDA0: .4byte 0x00007FFF
_0804CDA4: .4byte gUnk_080DF94C
_0804CDA8:
ldr r0, _0804CDC0 @ =0x80100000
bl sub_080A3268
bl PlaySFX
ldr r0, _0804CDC4 @ =gUnk_02033A90
movs r2, #0x86
lsls r2, r2, #4
@@ -3513,7 +3513,7 @@ _0804CF10: .4byte gLinkEntity
_0804CF14: .4byte gUnk_080E1814
_0804CF18:
ldr r0, _0804CF30 @ =0x80100000
bl sub_080A3268
bl PlaySFX
ldr r0, _0804CF34 @ =gUnk_02033A90
movs r2, #0x86
lsls r2, r2, #4
@@ -3668,7 +3668,7 @@ sub_0804CFB0: @ 0x0804CFB0
cmp r0, #0
bne _0804CFD8
ldr r0, _0804CFD4 @ =0x80100000
bl sub_080A3268
bl PlaySFX
b _0804CFEE
.align 2, 0
_0804CFD0: .4byte gUnk_030010A0
@@ -3680,7 +3680,7 @@ _0804CFD8:
cmp r0, #0
bne _0804CFEE
ldr r0, _0804D000 @ =0x80050000
bl sub_080A3268
bl PlaySFX
movs r0, #3
bl sub_08078A90
_0804CFEE:
@@ -4035,7 +4035,7 @@ sub_0804D140: @ 0x0804D140
_0804D15C: .4byte gUnk_080E49F4
_0804D160:
ldr r0, _0804D178 @ =0x80100000
bl sub_080A3268
bl PlaySFX
ldr r0, _0804D17C @ =gUnk_02033A90
movs r2, #0x86
lsls r2, r2, #4
@@ -4546,7 +4546,7 @@ _0804D3B8:
ldr r0, [r0]
str r0, [r1]
ldr r0, _0804D3F4 @ =0x80100000
bl sub_080A3268
bl PlaySFX
_0804D3EA:
pop {pc}
.align 2, 0
@@ -5189,7 +5189,7 @@ sub_0804D6C4: @ 0x0804D6C4
sub_0804D6C8: @ 0x0804D6C8
push {lr}
ldr r0, _0804D6E4 @ =0x80100000
bl sub_080A3268
bl PlaySFX
ldr r0, _0804D6E8 @ =gUnk_02033A90
movs r2, #0x86
lsls r2, r2, #4
@@ -6543,7 +6543,7 @@ _0804DE5C:
movs r1, #0x80
lsls r1, r1, #1
movs r0, #7
bl sub_08050054
bl DoFade
b _0804DECC
.align 2, 0
_0804DEB4: .4byte gUnk_02033A90
@@ -6553,7 +6553,7 @@ _0804DEC0: .4byte gUnk_030010A0
_0804DEC4:
movs r0, #6
movs r1, #0x10
bl sub_08050054
bl DoFade
_0804DECC:
movs r0, #1
pop {r4, r5, r6, pc}
@@ -7266,7 +7266,7 @@ _0804E436:
adds r0, r0, r1
bl sub_0804B3C4
ldr r0, _0804E458 @ =0x80100000
bl sub_080A3268
bl PlaySFX
pop {r4, r5, r6, pc}
.align 2, 0
_0804E448: .4byte gUnk_080F0D58
@@ -7648,7 +7648,7 @@ sub_0804E6E8: @ 0x0804E6E8
ldr r0, [r0]
str r0, [r1]
ldr r0, _0804E720 @ =0x800B0036
bl sub_080A3268
bl PlaySFX
_0804E70A:
movs r0, #0x13
bl GetProgressFlag
@@ -7684,7 +7684,7 @@ sub_0804E72C: @ 0x0804E72C
ldr r0, [r0]
str r0, [r1]
ldr r0, _0804E764 @ =0x800B0036
bl sub_080A3268
bl PlaySFX
_0804E74E:
movs r0, #0x13
bl GetProgressFlag
@@ -7786,7 +7786,7 @@ sub_0804E7DC: @ 0x0804E7DC
movs r1, #0x80
lsls r1, r1, #1
movs r0, #5
bl sub_08050054
bl DoFade
ldr r2, _0804E850 @ =gUnk_08009B30
movs r0, #0
movs r1, #6
@@ -7805,7 +7805,7 @@ _0804E818:
ldr r0, [r0]
str r0, [r1]
ldr r0, _0804E858 @ =0x800B0036
bl sub_080A3268
bl PlaySFX
_0804E838:
ldr r0, _0804E85C @ =gUnk_03003F80
ldr r0, [r0, #0x30]
@@ -9248,7 +9248,7 @@ sub_0804F23C: @ 0x0804F23C
movs r1, #0x80
lsls r1, r1, #1
movs r0, #7
bl sub_08050054
bl DoFade
_0804F252:
movs r0, #0x49
bl sub_0807CD04
+46 -46
View File
@@ -24,8 +24,8 @@ _08050050:
_08050052:
pop {pc}
thumb_func_start sub_08050054
sub_08050054: @ 0x08050054
thumb_func_start DoFade
DoFade: @ 0x08050054
push {r4, r5, lr}
adds r5, r0, #0
ldr r2, _08050078 @ =gUnk_03000FD0
@@ -150,7 +150,7 @@ _08050136:
strh r1, [r2, #0x18]
adds r0, r4, #0
adds r1, r3, #0
bl sub_08050054
bl DoFade
pop {r4, r5, r6, pc}
.align 2, 0
_0805014C: .4byte gUnk_03000FD0
@@ -438,7 +438,7 @@ sub_08050318: @ 0x08050318
ldrh r0, [r4]
cmp r0, #0
beq _08050368
bl sub_080A3268
bl PlaySFX
_08050368:
ldr r1, _08050380 @ =gLCDControls
movs r0, #1
@@ -713,10 +713,10 @@ _08050586:
ldr r0, _08050604 @ =gUnk_03001000
strb r1, [r0, #3]
movs r0, #7
bl sub_080A3268
bl PlaySFX
movs r0, #4
movs r1, #8
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_080505DC: .4byte gUnk_0200AF00
@@ -1274,7 +1274,7 @@ _08050A10:
adds r0, r5, #0
bl sub_080503BC
movs r0, #0x6a
bl sub_080A3268
bl PlaySFX
_08050A22:
adds r0, r4, r6
adds r1, r6, #0
@@ -1288,7 +1288,7 @@ _08050A22:
adds r0, r4, #0
bl sub_08050AFC
movs r0, #0x69
bl sub_080A3268
bl PlaySFX
_08050A42:
adds r0, r5, #0
adds r0, #8
@@ -1617,7 +1617,7 @@ _08050D08:
cmp r4, #0
bne _08050D12
ldr r0, _08050D28 @ =0x80080000
bl sub_080A3268
bl PlaySFX
_08050D12:
ldr r1, _08050D2C @ =gUnk_02000080
movs r0, #0xf
@@ -1625,14 +1625,14 @@ _08050D12:
movs r0, #1
bl sub_080A7114
movs r0, #0x6a
bl sub_080A3268
bl PlaySFX
b _08050D44
.align 2, 0
_08050D28: .4byte 0x80080000
_08050D2C: .4byte gUnk_02000080
_08050D30:
movs r0, #0x6c
bl sub_080A3268
bl PlaySFX
movs r0, #0
bl sub_080503BC
b _08050D44
@@ -1656,7 +1656,7 @@ _08050D50:
beq _08050D60
strb r4, [r1, #1]
movs r0, #0x69
bl sub_080A3268
bl PlaySFX
_08050D60:
pop {r4, pc}
.align 2, 0
@@ -1770,7 +1770,7 @@ _08050E22:
b _08050E62
_08050E26:
movs r0, #0x6a
bl sub_080A3268
bl PlaySFX
ldr r0, _08050E44 @ =gUnk_02000080
ldrb r0, [r0, #4]
cmp r0, r4
@@ -1792,7 +1792,7 @@ _08050E50:
ldrb r4, [r0, #4]
strb r4, [r1, #7]
movs r0, #0x6c
bl sub_080A3268
bl PlaySFX
movs r0, #0
bl sub_080503BC
_08050E62:
@@ -1811,7 +1811,7 @@ _08050E6E:
beq _08050E80
strb r4, [r1, #7]
movs r0, #0x69
bl sub_080A3268
bl PlaySFX
_08050E80:
pop {r4, pc}
.align 2, 0
@@ -1971,7 +1971,7 @@ _08050F9C:
movs r1, #0
bl sub_08050318
movs r0, #0x6a
bl sub_080A3268
bl PlaySFX
b _08050FBA
_08050FAC:
ldrb r0, [r6, #4]
@@ -1979,7 +1979,7 @@ _08050FAC:
ldrb r0, [r6, #5]
strb r0, [r1, #3]
movs r0, #0x6c
bl sub_080A3268
bl PlaySFX
_08050FBA:
adds r0, r5, #0
bl sub_080A7114
@@ -1996,7 +1996,7 @@ _08050FD0:
beq _08050FE2
strb r3, [r1, #1]
movs r0, #0x69
bl sub_080A3268
bl PlaySFX
b _08050FF4
_08050FE2:
cmp r2, r8
@@ -2005,7 +2005,7 @@ _08050FE2:
ldrb r0, [r6, #6]
bl sub_080503E4
movs r0, #0x69
bl sub_080A3268
bl PlaySFX
_08050FF4:
pop {r3}
mov r8, r3
@@ -2193,7 +2193,7 @@ _08051130:
cmp r5, #0
beq _0805114C
movs r0, #0x67
bl sub_080A3268
bl PlaySFX
_0805114C:
cmp r6, #0
beq _0805123A
@@ -2452,7 +2452,7 @@ _08051330:
strb r4, [r1, #1]
bl sub_08051458
movs r0, #0x68
bl sub_080A3268
bl PlaySFX
_0805134C:
pop {r4, r5, r6, r7, pc}
.align 2, 0
@@ -2481,7 +2481,7 @@ _0805136A:
movs r0, #0xb
strb r0, [r2, #0x10]
movs r0, #0x67
bl sub_080A3268
bl PlaySFX
_08051382:
pop {pc}
.align 2, 0
@@ -2760,7 +2760,7 @@ _08051572:
thumb_func_start sub_08051574
sub_08051574: @ 0x08051574
push {lr}
bl sub_080A3268
bl PlaySFX
ldr r0, _08051594 @ =gUnk_02002A40
ldr r3, _08051598 @ =gUnk_02019EE0
ldrb r1, [r3, #6]
@@ -2878,7 +2878,7 @@ _08051694:
movs r0, #2
bl sub_080A7114
movs r0, #0x6a
bl sub_080A3268
bl PlaySFX
b _080516C8
.align 2, 0
_080516B0: .4byte gUnk_02000080
@@ -2886,7 +2886,7 @@ _080516B4:
movs r0, #0
bl sub_080503BC
movs r0, #0x6c
bl sub_080A3268
bl PlaySFX
b _080516C8
_080516C2:
movs r4, #0
@@ -2900,7 +2900,7 @@ _080516C8:
beq _080516D8
strb r4, [r1, #1]
movs r0, #0x69
bl sub_080A3268
bl PlaySFX
_080516D8:
pop {r4, pc}
.align 2, 0
@@ -3093,13 +3093,13 @@ _0805182C:
movs r0, #2
bl sub_080A7114
movs r0, #0x6a
bl sub_080A3268
bl PlaySFX
b _08051858
_08051848:
movs r0, #4
strb r0, [r2, #7]
movs r0, #0x6c
bl sub_080A3268
bl PlaySFX
movs r0, #0
bl sub_080503BC
_08051858:
@@ -3111,7 +3111,7 @@ _08051858:
beq _0805186E
strb r0, [r1, #7]
movs r0, #0x69
bl sub_080A3268
bl PlaySFX
_0805186E:
pop {r4, pc}
.align 2, 0
@@ -3217,7 +3217,7 @@ sub_08051914: @ 0x08051914
strb r0, [r1, #3]
movs r0, #5
movs r1, #8
bl sub_08050054
bl DoFade
_0805193E:
pop {pc}
.align 2, 0
@@ -3377,8 +3377,8 @@ sub_08051A90: @ 0x08051A90
_08051AA4: .4byte gUnk_080FC9E8
_08051AA8: .4byte gUnk_03001000
thumb_func_start sub_08051AAC
sub_08051AAC: @ 0x08051AAC
thumb_func_start InitializeNewRoom
InitializeNewRoom: @ 0x08051AAC
push {lr}
bl sub_0805E5A8
ldr r1, _08051AE4 @ =gLCDControls
@@ -3397,7 +3397,7 @@ sub_08051AAC: @ 0x08051AAC
bl sub_08052CFC
movs r0, #0
bl sub_0801C370
bl sub_08051D40
bl InitializeEntities
bl sub_0801855C
pop {pc}
.align 2, 0
@@ -3446,7 +3446,7 @@ _08051B02:
ldr r0, _08051BC0 @ =0x800B0000
orrs r2, r0
adds r0, r2, #0
bl sub_080A3268
bl PlaySFX
_08051B5A:
bl sub_0805E9F4
bl sub_0805BC04
@@ -3635,14 +3635,14 @@ sub_08051D2C: @ 0x08051D2C
push {lr}
movs r0, #7
movs r1, #8
bl sub_08050054
bl DoFade
movs r0, #3
bl sub_08056010
pop {pc}
.align 2, 0
thumb_func_start sub_08051D40
sub_08051D40: @ 0x08051D40
thumb_func_start InitializeEntities
InitializeEntities: @ 0x08051D40
push {lr}
bl sub_08052EA0
bl sub_0804AF90
@@ -3660,7 +3660,7 @@ sub_08051D40: @ 0x08051D40
movs r1, #0
bl sub_0801D79C
bl LoadRoom
bl sub_080609AC
bl CreateZeldaFollower
bl sub_0804AFF4
bl sub_0805329C
bl sub_08000108
@@ -4080,7 +4080,7 @@ sub_080520D8: @ 0x080520D8
ldr r0, _08052124 @ =gUnk_03001000
strb r2, [r0, #5]
movs r0, #0xa
bl sub_080A3268
bl PlaySFX
movs r0, #4
bl sub_080500F4
ldr r0, _08052128 @ =0xFFFF0001
@@ -4141,7 +4141,7 @@ _08052158:
str r0, [r4, #4]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
b _0805219C
.align 2, 0
_08052190: .4byte gLCDControls
@@ -4244,7 +4244,7 @@ _08052248:
adds r0, r2, #0
bl sub_080A7114
movs r0, #0x6a
bl sub_080A3268
bl PlaySFX
_0805225A:
ldr r1, _08052274 @ =gUnk_02000080
ldrb r0, [r1, #3]
@@ -4255,7 +4255,7 @@ _0805225A:
adds r1, r4, #0
bl sub_08052418
movs r0, #0x69
bl sub_080A3268
bl PlaySFX
b _080522E8
.align 2, 0
_08052274: .4byte gUnk_02000080
@@ -4387,17 +4387,17 @@ _0805236A:
movs r0, #2
bl sub_080A7114
movs r0, #0x6a
bl sub_080A3268
bl PlaySFX
cmp r4, #0
bne _08052384
movs r0, #5
movs r1, #8
bl sub_08050054
bl DoFade
b _0805238C
_08052384:
movs r0, #7
movs r1, #8
bl sub_08050054
bl DoFade
_0805238C:
ldr r1, _080523A8 @ =gUnk_02000080
ldrb r0, [r1, #3]
@@ -4408,7 +4408,7 @@ _0805238C:
adds r1, r4, #0
bl sub_08052418
movs r0, #0x69
bl sub_080A3268
bl PlaySFX
b _080523CC
.align 2, 0
_080523A8: .4byte gUnk_02000080
+94 -121
View File
@@ -5,33 +5,6 @@
.syntax unified
.text
thumb_func_start sub_080526CC
sub_080526CC: @ 0x080526CC
push {lr}
ldr r3, _080526DC @ =gStats
ldrh r1, [r3, #0x18]
adds r2, r1, r0
cmp r2, #0
bge _080526E0
movs r2, #0
b _080526F0
.align 2, 0
_080526DC: .4byte gStats
_080526E0:
ldr r1, _080526F4 @ =gUnk_080FD590
ldrb r0, [r3]
lsls r0, r0, #2
adds r0, r0, r1
ldrh r0, [r0]
cmp r2, r0
ble _080526F0
adds r2, r0, #0
_080526F0:
strh r2, [r3, #0x18]
pop {pc}
.align 2, 0
_080526F4: .4byte gUnk_080FD590
thumb_func_start sub_080526F8
sub_080526F8: @ 0x080526F8
@@ -240,7 +213,7 @@ sub_08052878: @ 0x08052878
ldr r0, [r0]
str r0, [r1]
ldr r0, _08052898 @ =0x80010000
bl sub_080A3268
bl PlaySFX
pop {pc}
.align 2, 0
_08052894: .4byte gUnk_02033A90
@@ -280,9 +253,9 @@ _080528C8:
strb r2, [r1, #4]
movs r0, #5
movs r1, #8
bl sub_08050054
bl DoFade
ldr r0, _080528EC @ =0x80100000
bl sub_080A3268
bl PlaySFX
movs r0, #1
_080528E6:
pop {pc}
@@ -365,12 +338,12 @@ _0805296C: @ jump table
_08052990:
movs r0, #0xd
movs r1, #8
bl sub_08050054
bl DoFade
b _080529DC
_0805299A:
movs r0, #0xd
movs r1, #3
bl sub_08050054
bl DoFade
b _080529DC
_080529A4:
movs r0, #7
@@ -379,29 +352,29 @@ _080529A8:
movs r0, #5
_080529AA:
movs r1, #4
bl sub_08050054
bl DoFade
b _080529DC
_080529B2:
movs r0, #5
movs r1, #0x10
bl sub_08050054
bl DoFade
b _080529DC
_080529BC:
movs r1, #0x80
lsls r1, r1, #1
movs r0, #5
bl sub_08050054
bl DoFade
b _080529DC
_080529C8:
movs r1, #0x80
lsls r1, r1, #1
movs r0, #7
bl sub_08050054
bl DoFade
b _080529DC
_080529D4:
movs r0, #7
movs r1, #0x10
bl sub_08050054
bl DoFade
_080529DC:
bl sub_080528F0
ldr r0, _080529F0 @ =gUnk_03001000
@@ -534,35 +507,35 @@ _08052AD8:
_08052ADC:
movs r0, #0xc
movs r1, #3
bl sub_08050054
bl DoFade
b _08052B22
_08052AE6:
movs r0, #6
movs r1, #4
bl sub_08050054
bl DoFade
b _08052B22
_08052AF0:
movs r1, #0x80
lsls r1, r1, #1
movs r0, #5
bl sub_08050054
bl DoFade
b _08052B22
_08052AFC:
movs r1, #0x80
lsls r1, r1, #1
movs r0, #7
bl sub_08050054
bl DoFade
b _08052B22
_08052B08:
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
b _08052B22
_08052B12:
movs r0, #6
_08052B14:
movs r1, #8
bl sub_08050054
bl DoFade
b _08052B22
_08052B1C:
movs r0, #0x10
@@ -1802,7 +1775,7 @@ sub_080534AC: @ 0x080534AC
movs r1, #0
str r1, [r0]
ldr r0, _080534E0 @ =0x80100000
bl sub_080A3268
bl PlaySFX
_080534D6:
pop {r4, pc}
.align 2, 0
@@ -1937,7 +1910,7 @@ sub_080535AC: @ 0x080535AC
bl LoadRoomEntityList
movs r0, #6
movs r1, #8
bl sub_08050054
bl DoFade
pop {pc}
.align 2, 0
_080535DC: .4byte gUnk_02000080
@@ -2045,7 +2018,7 @@ sub_0805368C: @ 0x0805368C
beq _080536A6
bl sub_0805E7BC
movs r0, #0xf0
bl sub_080A3268
bl PlaySFX
_080536A6:
pop {pc}
@@ -2070,7 +2043,7 @@ sub_080536B8: @ 0x080536B8
movs r1, #0x80
lsls r1, r1, #1
movs r0, #5
bl sub_08050054
bl DoFade
pop {pc}
.align 2, 0
@@ -2119,7 +2092,7 @@ sub_0805370C: @ 0x0805370C
bl LoadRoomEntityList
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {pc}
.align 2, 0
_08053730: .4byte gUnk_02000080
@@ -2196,12 +2169,12 @@ sub_08053758: @ 0x08053758
ldr r0, _080537FC @ =0x00001DC1
strh r0, [r2, #0x20]
movs r0, #0xf
bl sub_080A3268
bl PlaySFX
bl sub_0805E5B4
movs r1, #0x80
lsls r1, r1, #1
movs r0, #5
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_080537DC: .4byte gUnk_02000080
@@ -2271,7 +2244,7 @@ sub_08053800: @ 0x08053800
strh r1, [r0]
ldrh r1, [r4, #0xa]
movs r0, #4
bl sub_08050054
bl DoFade
_0805387A:
pop {r4, r5, pc}
.align 2, 0
@@ -2333,7 +2306,7 @@ _080538E4:
strb r0, [r4, #6]
movs r0, #5
movs r1, #8
bl sub_08050054
bl DoFade
_080538F8:
pop {r4, pc}
.align 2, 0
@@ -2391,7 +2364,7 @@ _08053954:
strb r0, [r4, #6]
movs r0, #5
movs r1, #1
bl sub_08050054
bl DoFade
_08053968:
pop {r4, pc}
.align 2, 0
@@ -2415,7 +2388,7 @@ sub_08053974: @ 0x08053974
movs r1, #0x80
lsls r1, r1, #1
movs r0, #5
bl sub_08050054
bl DoFade
ldr r1, _080539B4 @ =gUnk_02000080
ldrb r0, [r1, #6]
adds r0, #1
@@ -2501,7 +2474,7 @@ sub_08053A1C: @ 0x08053A1C
strb r4, [r1, #7]
movs r0, #4
movs r1, #8
bl sub_08050054
bl DoFade
_08053A4E:
pop {r4, pc}
.align 2, 0
@@ -2530,7 +2503,7 @@ sub_08053A5C: @ 0x08053A5C
strb r0, [r1, #6]
movs r0, #5
movs r1, #8
bl sub_08050054
bl DoFade
_08053A86:
pop {pc}
.align 2, 0
@@ -2585,7 +2558,7 @@ sub_08053ACC: @ 0x08053ACC
movs r1, #0x80
lsls r1, r1, #1
movs r0, #5
bl sub_08050054
bl DoFade
pop {pc}
.align 2, 0
_08053AF4: .4byte gUnk_02000080
@@ -2618,7 +2591,7 @@ sub_08053B10: @ 0x08053B10
movs r1, #0x80
lsls r1, r1, #1
movs r0, #4
bl sub_08050054
bl DoFade
_08053B34:
pop {pc}
.align 2, 0
@@ -2636,7 +2609,7 @@ sub_08053B3C: @ 0x08053B3C
bl sub_080A71C4
movs r0, #5
adds r1, r4, #0
bl sub_08050054
bl DoFade
pop {r4, pc}
thumb_func_start sub_08053B58
@@ -2671,7 +2644,7 @@ sub_08053B74: @ 0x08053B74
movs r1, #0x80
lsls r1, r1, #1
movs r0, #5
bl sub_08050054
bl DoFade
pop {pc}
.align 2, 0
_08053BA0: .4byte gUnk_02000080
@@ -2704,7 +2677,7 @@ sub_08053BBC: @ 0x08053BBC
movs r1, #0x80
lsls r1, r1, #1
movs r0, #4
bl sub_08050054
bl DoFade
_08053BE0:
pop {pc}
.align 2, 0
@@ -2722,7 +2695,7 @@ sub_08053BE8: @ 0x08053BE8
bl sub_080A71C4
movs r0, #5
adds r1, r4, #0
bl sub_08050054
bl DoFade
pop {r4, pc}
thumb_func_start sub_08053C04
@@ -2757,9 +2730,9 @@ sub_08053C20: @ 0x08053C20
bl LoadRoomEntityList
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
movs r0, #0x33
bl sub_080A3268
bl PlaySFX
pop {pc}
.align 2, 0
_08053C50: .4byte gUnk_02000080
@@ -2776,11 +2749,11 @@ sub_08053C60: @ 0x08053C60
push {lr}
movs r0, #5
movs r1, #2
bl sub_08050054
bl DoFade
movs r0, #0xf4
bl sub_080A3268
bl PlaySFX
ldr r0, _08053C80 @ =0x80100000
bl sub_080A3268
bl PlaySFX
movs r0, #3
bl sub_08056010
pop {pc}
@@ -2860,7 +2833,7 @@ sub_08053CC8: @ 0x08053CC8
strb r5, [r0]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
ldrb r0, [r4, #5]
cmp r0, #0x1d
bne _08053D1E
@@ -3060,7 +3033,7 @@ sub_08053E74: @ 0x08053E74
bl sub_0805E450
movs r0, #4
movs r1, #8
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_08053EB0: .4byte gUnk_080FCFB8
@@ -3295,7 +3268,7 @@ _08054098:
ldrb r0, [r4, #2]
bl ModHealth
movs r0, #0x71
bl sub_080A3268
bl PlaySFX
b _0805427C
_080540A6:
ldr r0, _080540BC @ =gUnk_080FD5A8
@@ -3303,9 +3276,9 @@ _080540A6:
lsls r1, r1, #1
adds r1, r1, r0
ldrh r0, [r1]
bl sub_080526CC
bl ModRupees
movs r0, #0x6f
bl sub_080A3268
bl PlaySFX
b _0805427C
.align 2, 0
_080540BC: .4byte gUnk_080FD5A8
@@ -3377,7 +3350,7 @@ _0805412C:
movs r1, #1
bl sub_0807CAA0
ldr r0, _08054148 @ =0x00000109
bl sub_080A3268
bl PlaySFX
b _0805427C
.align 2, 0
_08054144: .4byte gUnk_02002A40
@@ -3509,7 +3482,7 @@ _08054240:
bl sub_080542C0
_0805424E:
ldr r0, _08054258 @ =0x00000103
bl sub_080A3268
bl PlaySFX
b _0805427C
.align 2, 0
_08054258: .4byte 0x00000103
@@ -4350,7 +4323,7 @@ _08054842:
adds r0, #0x38
strb r1, [r0]
adds r0, r2, #0
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
_0805486A:
adds r0, r4, #0
_0805486C:
@@ -4463,7 +4436,7 @@ _08054954:
strb r0, [r1]
movs r0, #7
movs r1, #0x10
bl sub_08050054
bl DoFade
_08054962:
pop {pc}
.align 2, 0
@@ -4835,7 +4808,7 @@ sub_08054C20: @ 0x08054C20
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_08054C50: .4byte gUnk_02000080
@@ -4854,7 +4827,7 @@ sub_08054C58: @ 0x08054C58
beq _08054C7C
movs r0, #7
movs r1, #0x10
bl sub_08050054
bl DoFade
ldr r1, _08054C84 @ =gUnk_02000080
ldrb r0, [r1, #6]
adds r0, #1
@@ -4878,9 +4851,9 @@ sub_08054C88: @ 0x08054C88
bl sub_08054974
movs r0, #6
movs r1, #0x10
bl sub_08050054
bl DoFade
movs r0, #0x73
bl sub_080A3268
bl PlaySFX
ldrb r0, [r4, #6]
adds r0, #1
strb r0, [r4, #6]
@@ -4951,7 +4924,7 @@ sub_08054D04: @ 0x08054D04
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_08054D34: .4byte gUnk_02000080
@@ -5045,7 +5018,7 @@ sub_08054DAC: @ 0x08054DAC
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_08054DF0: .4byte gUnk_02000080
@@ -5096,7 +5069,7 @@ sub_08054E1C: @ 0x08054E1C
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, r5, pc}
.align 2, 0
_08054E54: .4byte gUnk_02000080
@@ -5121,7 +5094,7 @@ sub_08054E5C: @ 0x08054E5C
strh r0, [r4, #8]
movs r0, #6
movs r1, #0x10
bl sub_08050054
bl DoFade
ldrb r0, [r4, #4]
bl sub_080553E0
ldrb r0, [r4, #4]
@@ -5216,7 +5189,7 @@ sub_08054EFC: @ 0x08054EFC
movs r0, #2
strb r0, [r1]
adds r0, r4, #0
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
adds r0, r4, #0
movs r1, #0x35
movs r2, #0
@@ -5231,7 +5204,7 @@ sub_08054EFC: @ 0x08054EFC
bl sub_0806FAD8
_08054F54:
movs r0, #0xfd
bl sub_080A3268
bl PlaySFX
pop {r4, r5, pc}
.align 2, 0
_08054F5C: .4byte gRoomControls
@@ -5308,7 +5281,7 @@ _08054FCA:
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
strh r4, [r6, #0xa]
movs r0, #0x80
lsls r0, r0, #3
@@ -5381,7 +5354,7 @@ sub_08055054: @ 0x08055054
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_08055080: .4byte gUnk_080FF128
@@ -5436,7 +5409,7 @@ sub_080550B0: @ 0x080550B0
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_080550E8: .4byte gUnk_02000080
@@ -5489,7 +5462,7 @@ _0805512A:
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_08055150: .4byte gUnk_080FF17C
@@ -5580,7 +5553,7 @@ sub_08055184: @ 0x08055184
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r3}
mov r8, r3
pop {r4, r5, r6, pc}
@@ -5630,7 +5603,7 @@ sub_0805524C: @ 0x0805524C
adds r0, #1
strb r0, [r3, #7]
movs r0, #0xf6
bl sub_080A3268
bl PlaySFX
b _080552D6
.align 2, 0
_08055270: .4byte gUnk_02000080
@@ -5679,7 +5652,7 @@ _080552B4:
adds r0, #1
strb r0, [r3, #6]
movs r0, #0x73
bl sub_080A3268
bl PlaySFX
_080552D6:
pop {r4, pc}
.align 2, 0
@@ -5739,7 +5712,7 @@ sub_08055318: @ 0x08055318
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_08055348: .4byte gUnk_02000080
@@ -5758,7 +5731,7 @@ sub_08055350: @ 0x08055350
beq _08055374
movs r0, #7
movs r1, #0x10
bl sub_08050054
bl DoFade
ldr r1, _0805537C @ =gUnk_02000080
ldrb r0, [r1, #6]
adds r0, #1
@@ -5782,9 +5755,9 @@ sub_08055380: @ 0x08055380
bl sub_08054974
movs r0, #6
movs r1, #0x10
bl sub_08050054
bl DoFade
movs r0, #0x73
bl sub_080A3268
bl PlaySFX
ldrb r0, [r4, #6]
adds r0, #1
strb r0, [r4, #6]
@@ -5882,7 +5855,7 @@ sub_08055430: @ 0x08055430
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_08055460: .4byte gUnk_02000080
@@ -5901,7 +5874,7 @@ sub_08055468: @ 0x08055468
beq _0805548C
movs r0, #7
movs r1, #0x10
bl sub_08050054
bl DoFade
ldr r1, _08055494 @ =gUnk_02000080
ldrb r0, [r1, #6]
adds r0, #1
@@ -5927,9 +5900,9 @@ sub_08055498: @ 0x08055498
bl sub_080553E0
movs r0, #6
movs r1, #0x10
bl sub_08050054
bl DoFade
movs r0, #0x73
bl sub_080A3268
bl PlaySFX
ldrb r0, [r4, #6]
adds r0, #1
strb r0, [r4, #6]
@@ -5996,7 +5969,7 @@ sub_08055518: @ 0x08055518
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_08055540: .4byte gUnk_02000080
@@ -6093,7 +6066,7 @@ sub_080555B8: @ 0x080555B8
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, r5, pc}
.align 2, 0
_08055600: .4byte gUnk_02000080
@@ -6210,7 +6183,7 @@ sub_080556AC: @ 0x080556AC
bl sub_08055B70
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_080556E4: .4byte gUnk_02000080
@@ -6271,7 +6244,7 @@ _08055734:
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_0805575C: .4byte gUnk_02000080
@@ -6358,7 +6331,7 @@ sub_080557D0: @ 0x080557D0
bl sub_08055B70
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_08055808: .4byte gUnk_02000080
@@ -6411,7 +6384,7 @@ _0805584A:
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_08055870: .4byte gUnk_080FF2C0
@@ -6463,7 +6436,7 @@ sub_080558A4: @ 0x080558A4
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_080558DC: .4byte gUnk_02000080
@@ -6514,7 +6487,7 @@ sub_08055908: @ 0x08055908
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, r5, pc}
.align 2, 0
_08055940: .4byte gUnk_02000080
@@ -6594,7 +6567,7 @@ _080559AE:
ldrb r0, [r4, #4]
bl sub_080553E0
movs r0, #0x73
bl sub_080A3268
bl PlaySFX
pop {r4, pc}
.align 2, 0
_080559D8: .4byte gUnk_02000080
@@ -6639,7 +6612,7 @@ _08055A0E:
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_08055A30: .4byte gUnk_02000080
@@ -6659,7 +6632,7 @@ sub_08055A3C: @ 0x08055A3C
beq _08055A60
movs r0, #7
movs r1, #0x10
bl sub_08050054
bl DoFade
ldr r1, _08055A68 @ =gUnk_02000080
ldrb r0, [r1, #6]
adds r0, #1
@@ -6685,9 +6658,9 @@ sub_08055A6C: @ 0x08055A6C
bl sub_080553E0
movs r0, #6
movs r1, #0x10
bl sub_08050054
bl DoFade
movs r0, #0x73
bl sub_080A3268
bl PlaySFX
ldrb r0, [r4, #6]
adds r0, #1
strb r0, [r4, #6]
@@ -6766,7 +6739,7 @@ _08055B14:
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_08055B2C: .4byte gUnk_02000080
@@ -6875,7 +6848,7 @@ sub_08055BCC: @ 0x08055BCC
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_08055BFC: .4byte gUnk_02000080
@@ -6894,7 +6867,7 @@ sub_08055C04: @ 0x08055C04
beq _08055C28
movs r0, #7
movs r1, #0x10
bl sub_08050054
bl DoFade
ldr r1, _08055C30 @ =gUnk_02000080
ldrb r0, [r1, #6]
adds r0, #1
@@ -6948,9 +6921,9 @@ _08055C6C:
_08055C8C:
movs r0, #6
movs r1, #0x10
bl sub_08050054
bl DoFade
movs r0, #0x73
bl sub_080A3268
bl PlaySFX
ldr r0, _08055CAC @ =gUnk_02000080
ldrb r1, [r0, #6]
adds r1, #1
@@ -7022,7 +6995,7 @@ sub_08055CF4: @ 0x08055CF4
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_08055D24: .4byte gUnk_02000080
@@ -7101,7 +7074,7 @@ sub_08055D9C: @ 0x08055D9C
strb r0, [r1]
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {pc}
.align 2, 0
_08055DB8: .4byte gUnk_02000080
+2 -2
View File
@@ -204,7 +204,7 @@ _0805616A:
sub_0805616C: @ 0x0805616C
push {lr}
ldr r0, _080561E8 @ =0x80040000
bl sub_080A3268
bl PlaySFX
ldr r0, _080561EC @ =gLCDControls
adds r3, r0, #0
adds r3, #0x6c
@@ -285,7 +285,7 @@ _08056204: .4byte 0x040000D4
sub_08056208: @ 0x08056208
push {lr}
ldr r0, _08056224 @ =0x80060000
bl sub_080A3268
bl PlaySFX
ldr r0, _08056228 @ =gLCDControls
adds r3, r0, #0
adds r3, #0x6d
+46 -46
View File
@@ -195,7 +195,7 @@ sub_080565B4: @ 0x080565B4
ldrb r1, [r1]
bl sub_08056F88
movs r0, #0x65
bl sub_080A3268
bl PlaySFX
_080565DA:
movs r0, #1
bl sub_08056CC0
@@ -229,7 +229,7 @@ sub_080565F8: @ 0x080565F8
movs r0, #0
bl sub_08056BDC
movs r0, #0x66
bl sub_080A3268
bl PlaySFX
_0805661C:
movs r0, #1
rsbs r0, r0, #0
@@ -547,7 +547,7 @@ _0805687A:
b _08056942
_0805688C:
ldrh r0, [r5, #0x22]
bl sub_080A3268
bl PlaySFX
b _08056942
_08056894:
ldr r1, _080568A8 @ =gUnk_02022780
@@ -779,7 +779,7 @@ _08056A30:
movs r1, #0x18
bl sub_0801D630
movs r0, #0x6a
bl sub_080A3268
bl PlaySFX
adds r1, r6, #0
adds r1, #0x89
movs r0, #1
@@ -807,7 +807,7 @@ _08056A6A:
beq _08056A90
strb r5, [r4, #3]
movs r0, #0x69
bl sub_080A3268
bl PlaySFX
movs r1, #1
b _08056A92
.align 2, 0
@@ -915,7 +915,7 @@ _08056B48:
cmp r0, #0
beq _08056B70
movs r0, #0x68
bl sub_080A3268
bl PlaySFX
adds r0, r4, #0
adds r0, #0x9a
strb r5, [r0]
@@ -2522,7 +2522,7 @@ _0805776A:
strb r0, [r4, #0xf]
movs r0, #0xa9
lsls r0, r0, #1
bl sub_080A3268
bl PlaySFX
b _080577AA
.align 2, 0
_080577A0: .4byte gUnk_02033A90
@@ -2578,7 +2578,7 @@ _080577F2:
mov r1, r8
strb r1, [r0]
adds r0, r4, #0
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
_08057808:
pop {r3}
mov r8, r3
@@ -3099,7 +3099,7 @@ sub_08057BA4: @ 0x08057BA4
adds r0, #1
strb r0, [r4, #0xf]
movs r0, #0x71
bl sub_080A3268
bl PlaySFX
b _08057C24
_08057BF6:
ldrb r0, [r4, #0xf]
@@ -3121,7 +3121,7 @@ _08057BF6:
subs r0, #1
strb r0, [r4, #0xf]
movs r0, #0x71
bl sub_080A3268
bl PlaySFX
_08057C24:
pop {r4, pc}
.align 2, 0
@@ -3171,7 +3171,7 @@ _08057C44:
adds r0, #1
strb r0, [r4, #0xf]
movs r0, #0x71
bl sub_080A3268
bl PlaySFX
b _08057C9C
_08057C88:
ldrh r1, [r4, #0x30]
@@ -3179,7 +3179,7 @@ _08057C88:
cmp r1, r0
beq _08057C96
movs r0, #0x72
bl sub_080A3268
bl PlaySFX
_08057C96:
adds r0, r4, #0
bl sub_0805E900
@@ -4453,7 +4453,7 @@ _0805867A:
strb r2, [r1]
str r3, [r0]
adds r0, r3, #0
bl sub_080A3268
bl PlaySFX
_08058692:
ldr r0, _080586A4 @ =0x00000B0F
bl sub_080186C0
@@ -4489,7 +4489,7 @@ sub_080586A8: @ 0x080586A8
adds r0, #0x20
ldrb r0, [r0]
str r0, [r1]
bl sub_080A3268
bl PlaySFX
bl sub_0801855C
_080586E0:
bl sub_0805E780
@@ -4823,7 +4823,7 @@ _08058940:
movs r0, #0x2d
strb r0, [r4, #0xf]
movs r0, #0x8c
bl sub_080A3268
bl PlaySFX
b _08058968
_08058952:
subs r0, #1
@@ -4902,7 +4902,7 @@ _080589CC:
_080589D6:
str r3, [r4, #0x2c]
movs r0, #0x8b
bl sub_080A3268
bl PlaySFX
_080589DE:
movs r0, #0x26
ldrsh r1, [r4, r0]
@@ -5138,7 +5138,7 @@ sub_08058B5C: @ 0x08058B5C
ldrh r0, [r2]
strb r0, [r1, #7]
ldr r0, _08058BC4 @ =0x00000121
bl sub_080A3268
bl PlaySFX
pop {r4, r5, pc}
.align 2, 0
_08058BB4: .4byte gUnk_030010A0
@@ -5516,7 +5516,7 @@ _08058E9E:
ldrsh r0, [r4, r1]
cmp r0, #0
beq _08058EB4
bl sub_080A3268
bl PlaySFX
_08058EB4:
ldrb r0, [r4, #0xa]
bl sub_0804B128
@@ -5583,7 +5583,7 @@ _08058EF2:
bl sub_08058F44
movs r0, #0x92
lsls r0, r0, #1
bl sub_080A3268
bl PlaySFX
bl sub_0805E780
_08058F40:
pop {r4, r5, r6, pc}
@@ -5872,7 +5872,7 @@ sub_08059124: @ 0x08059124
ldrb r1, [r4, #0xb]
bl sub_0807BA8C
movs r0, #0xcd
bl sub_080A3268
bl PlaySFX
bl sub_0805E780
b _080591C8
_08059174:
@@ -6064,7 +6064,7 @@ _080592C8:
bl sub_0805930C
movs r0, #0xb7
lsls r0, r0, #1
bl sub_080A3268
bl PlaySFX
bl sub_0805E780
_080592EA:
pop {r4, pc}
@@ -6491,7 +6491,7 @@ sub_08059608: @ 0x08059608
adds r0, r0, r2
ldr r0, [r0]
str r0, [r1]
bl sub_080A3268
bl PlaySFX
b _08059682
.align 2, 0
_08059634: .4byte gUnk_02033A90
@@ -6510,7 +6510,7 @@ _08059638:
movs r0, #0x78
strb r0, [r4]
ldr r0, _08059664 @ =0x800D0000
bl sub_080A3268
bl PlaySFX
b _08059682
.align 2, 0
_0805965C: .4byte gUnk_02033A90
@@ -6528,7 +6528,7 @@ _08059668:
movs r0, #0x78
strb r0, [r4]
ldr r0, _0805968C @ =0x800D0000
bl sub_080A3268
bl PlaySFX
_08059682:
pop {r4, pc}
.align 2, 0
@@ -8165,7 +8165,7 @@ sub_0805A370: @ 0x0805A370
movs r0, #3
strb r0, [r4, #0xc]
ldr r0, _0805A390 @ =0x80100000
bl sub_080A3268
bl PlaySFX
_0805A38A:
pop {r4, pc}
.align 2, 0
@@ -11867,7 +11867,7 @@ sub_0805BFA4: @ 0x0805BFA4
cmp r0, #0
bne _0805BFC0
movs r0, #0x72
bl sub_080A3268
bl PlaySFX
adds r0, r4, #0
bl sub_0805E900
_0805BFC0:
@@ -12998,7 +12998,7 @@ sub_0805C894: @ 0x0805C894
strb r0, [r4, #0xe]
movs r0, #0x8d
lsls r0, r0, #1
bl sub_080A3268
bl PlaySFX
_0805C8B0:
pop {r4, pc}
.align 2, 0
@@ -13035,7 +13035,7 @@ _0805C8DA:
bne _0805C8F4
movs r0, #0x8d
lsls r0, r0, #1
bl sub_080A3268
bl PlaySFX
_0805C8F4:
adds r0, r4, #0
bl sub_0805C920
@@ -14050,7 +14050,7 @@ _0805D0D8:
movs r0, #8
strb r0, [r4, #0xe]
movs r0, #0x72
bl sub_080A3268
bl PlaySFX
adds r0, r4, #0
bl sub_0805D11C
_0805D0F6:
@@ -14218,7 +14218,7 @@ sub_0805D1FC: @ 0x0805D1FC
movs r0, #3
strb r0, [r1]
adds r0, r2, #0
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
_0805D236:
adds r0, r4, #0
bl sub_0805E900
@@ -14327,13 +14327,13 @@ sub_0805D2F4: @ 0x0805D2F4
ldrsh r0, [r4, r1]
cmp r0, #0
beq _0805D314
bl sub_080A3268
bl PlaySFX
b _0805D31A
.align 2, 0
_0805D310: .4byte gUnk_03003DC0
_0805D314:
movs r0, #0x72
bl sub_080A3268
bl PlaySFX
_0805D31A:
ldrh r0, [r4, #0x3c]
cmp r0, #0
@@ -14415,7 +14415,7 @@ sub_0805D384: @ 0x0805D384
adds r1, r0, #0
_0805D3A4:
adds r0, r1, #0
bl sub_080A3268
bl PlaySFX
ldrh r0, [r4, #0x3c]
bl sub_0807CCC8
b _0805D3C6
@@ -14643,7 +14643,7 @@ _0805D574:
movs r0, #2
strb r0, [r6, #0xc]
movs r0, #0x6d
bl sub_080A3268
bl PlaySFX
b _0805D5A4
_0805D580:
ldrh r1, [r6, #0x2e]
@@ -14651,7 +14651,7 @@ _0805D580:
adds r0, r3, #0
bl sub_0807B7D8
movs r0, #0x6b
bl sub_080A3268
bl PlaySFX
ldrb r0, [r6, #0xe]
subs r0, #1
strb r0, [r6, #0xe]
@@ -14728,7 +14728,7 @@ _0805D604:
b _0805D628
_0805D622:
movs r0, #0x72
bl sub_080A3268
bl PlaySFX
_0805D628:
pop {r3, r4}
mov r8, r3
@@ -15401,7 +15401,7 @@ sub_0805DAE8: @ 0x0805DAE8
movs r0, #0x5a
strb r0, [r2, #0xe]
adds r0, #0xb0
bl sub_080A3268
bl PlaySFX
b _0805DB88
.align 2, 0
_0805DB4C: .4byte gRoomControls
@@ -15548,7 +15548,7 @@ _0805DC48:
bne _0805DC6C
movs r0, #0x93
lsls r0, r0, #1
bl sub_080A3268
bl PlaySFX
b _0805DC6C
_0805DC58:
cmp r0, #0xc7
@@ -15559,7 +15559,7 @@ _0805DC58:
bne _0805DC6C
movs r0, #0x93
lsls r0, r0, #1
bl sub_080A3268
bl PlaySFX
_0805DC6C:
pop {r4, pc}
.align 2, 0
@@ -15755,7 +15755,7 @@ _0805DDCE:
ldrh r0, [r3]
strb r0, [r2, #0xe]
ldrh r0, [r3, #2]
bl sub_080A3268
bl PlaySFX
b _0805DDE8
.align 2, 0
_0805DDE0: .4byte gUnk_08108DA8
@@ -15939,7 +15939,7 @@ _0805DF1A:
strb r0, [r2]
_0805DF3C:
movs r0, #0x32
bl sub_080A3268
bl PlaySFX
_0805DF42:
pop {r4, r5, pc}
.align 2, 0
@@ -16010,9 +16010,9 @@ _0805DFB8:
strb r0, [r2, #0xc]
movs r0, #7
movs r1, #4
bl sub_08050054
bl DoFade
movs r0, #0xf6
bl sub_080A3268
bl PlaySFX
_0805DFCA:
pop {pc}
@@ -16066,7 +16066,7 @@ sub_0805E000: @ 0x0805E000
movs r5, #1
strb r5, [r0]
adds r0, r4, #0
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
ldr r0, _0805E068 @ =gUnk_030010A0
adds r0, #0x38
ldrb r1, [r0]
@@ -16087,9 +16087,9 @@ _0805E040:
str r1, [r0]
movs r0, #6
movs r1, #4
bl sub_08050054
bl DoFade
movs r0, #0xf7
bl sub_080A3268
bl PlaySFX
_0805E062:
pop {r4, r5, r6, pc}
.align 2, 0
+7 -19508
View File
File diff suppressed because it is too large Load Diff
+4458
View File
File diff suppressed because it is too large Load Diff
+2840
View File
File diff suppressed because it is too large Load Diff
+1815
View File
File diff suppressed because it is too large Load Diff
+9215
View File
File diff suppressed because it is too large Load Diff
+216
View File
@@ -0,0 +1,216 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0806E6A8
sub_0806E6A8: @ 0x0806E6A8
push {r4, r5, lr}
adds r4, r0, #0
movs r5, #0
bl sub_08002632
ldr r1, _0806E6D4 @ =gUnk_02002A40
ldr r2, _0806E6D8 @ =0x000001C1
adds r1, r1, r2
adds r0, r0, r1
ldrb r0, [r0]
cmp r0, #0xf3
bne _0806E6C2
movs r5, #1
_0806E6C2:
ldr r0, _0806E6DC @ =gUnk_081145D0
lsls r1, r5, #1
adds r1, r1, r0
ldrh r0, [r1]
adds r1, r4, #0
bl TextboxNoOverlap
pop {r4, r5, pc}
.align 2, 0
_0806E6D4: .4byte gUnk_02002A40
_0806E6D8: .4byte 0x000001C1
_0806E6DC: .4byte gUnk_081145D0
thumb_func_start sub_0806E6E0
sub_0806E6E0: @ 0x0806E6E0
push {lr}
adds r2, r0, #0
ldrb r0, [r2, #0xc]
cmp r0, #0
bne _0806E706
adds r0, #1
strb r0, [r2, #0xc]
ldrb r1, [r2, #0x18]
movs r0, #4
rsbs r0, r0, #0
ands r0, r1
movs r1, #1
orrs r0, r1
strb r0, [r2, #0x18]
adds r0, r2, #0
movs r1, #1
bl sub_080042AC
b _0806E70C
_0806E706:
adds r0, r2, #0
bl sub_080042B8
_0806E70C:
pop {pc}
.align 2, 0
thumb_func_start sub_0806E710
sub_0806E710: @ 0x0806E710
push {r4, lr}
adds r4, r0, #0
ldr r1, _0806E72C @ =gUnk_081145D4
ldrb r0, [r4, #0xc]
lsls r0, r0, #2
adds r0, r0, r1
ldr r1, [r0]
adds r0, r4, #0
bl _call_via_r1
adds r0, r4, #0
bl sub_0806ED78
pop {r4, pc}
.align 2, 0
_0806E72C: .4byte gUnk_081145D4
thumb_func_start sub_0806E730
sub_0806E730: @ 0x0806E730
push {r4, r5, lr}
adds r4, r0, #0
ldrb r0, [r4, #0xc]
adds r0, #1
movs r5, #0
strb r0, [r4, #0xc]
adds r0, r4, #0
bl sub_0801E99C
adds r1, r4, #0
adds r1, #0x68
strb r0, [r1]
ldrb r1, [r1]
adds r0, r4, #0
bl sub_080787A8
adds r0, r4, #0
movs r1, #2
bl sub_0805E3A0
strb r5, [r4, #0xd]
adds r0, r4, #0
bl sub_0806E764
pop {r4, r5, pc}
.align 2, 0
thumb_func_start sub_0806E764
sub_0806E764: @ 0x0806E764
push {r4, r5, lr}
adds r4, r0, #0
ldrb r0, [r4, #0xd]
adds r5, r0, #0
cmp r5, #0
bne _0806E782
adds r0, #1
strb r0, [r4, #0xd]
bl sub_08000E50
movs r1, #0x1f
ands r0, r1
adds r0, #0x1e
strb r0, [r4, #0xe]
strb r5, [r4, #0x1e]
_0806E782:
ldrb r0, [r4, #0xe]
subs r0, #1
strb r0, [r4, #0xe]
lsls r0, r0, #0x18
lsrs r1, r0, #0x18
cmp r1, #0
bne _0806E7A8
movs r0, #2
strb r0, [r4, #0xc]
strb r1, [r4, #0xd]
bl sub_08000E50
movs r1, #1
ands r1, r0
cmp r1, #0
beq _0806E7A8
movs r0, #0xd6
bl sub_08004488
_0806E7A8:
adds r0, r4, #0
bl sub_0806E838
pop {r4, r5, pc}
thumb_func_start sub_0806E7B0
sub_0806E7B0: @ 0x0806E7B0
push {r4, r5, lr}
adds r4, r0, #0
ldrb r0, [r4, #0xd]
cmp r0, #0
bne _0806E7F2
adds r0, #1
strb r0, [r4, #0xd]
bl sub_08000E50
movs r5, #1
ands r0, r5
cmp r0, #0
beq _0806E7DE
ldrb r0, [r4, #0x18]
lsls r1, r0, #0x19
lsrs r1, r1, #0x1f
eors r1, r5
lsls r1, r1, #6
movs r2, #0x41
rsbs r2, r2, #0
ands r2, r0
orrs r2, r1
strb r2, [r4, #0x18]
_0806E7DE:
bl sub_08000E50
movs r1, #3
ands r0, r1
adds r0, #1
strb r0, [r4, #0xe]
movs r0, #0x80
lsls r0, r0, #9
str r0, [r4, #0x20]
strb r5, [r4, #0x1e]
_0806E7F2:
movs r1, #0xc0
lsls r1, r1, #6
adds r0, r4, #0
bl sub_08003FC4
cmp r0, #0
bne _0806E81C
ldrb r0, [r4, #0xe]
subs r0, #1
strb r0, [r4, #0xe]
lsls r0, r0, #0x18
lsrs r1, r0, #0x18
cmp r1, #0
bne _0806E816
movs r0, #1
strb r0, [r4, #0xc]
strb r1, [r4, #0xd]
b _0806E81C
_0806E816:
movs r0, #0x80
lsls r0, r0, #9
str r0, [r4, #0x20]
_0806E81C:
adds r0, r4, #0
bl sub_0806E838
pop {r4, r5, pc}
thumb_func_start sub_0806E824
sub_0806E824: @ 0x0806E824
push {r4, lr}
adds r4, r0, #0
bl sub_0806F148
cmp r0, #0
beq _0806E834
movs r0, #1
strb r0, [r4, #0xc]
_0806E834:
pop {r4, pc}
.align 2, 0
+643
View File
@@ -0,0 +1,643 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0806E884
sub_0806E884: @ 0x0806E884
push {lr}
adds r1, r0, #0
ldr r0, _0806E890 @ =0x00000DB6
bl TextboxNoOverlap
pop {pc}
.align 2, 0
_0806E890: .4byte 0x00000DB6
thumb_func_start sub_0806E894
sub_0806E894: @ 0x0806E894
push {r4, lr}
adds r4, r0, #0
ldrb r0, [r4, #0xc]
cmp r0, #0
bne _0806E8B6
adds r0, #1
strb r0, [r4, #0xc]
ldrb r1, [r4, #0x18]
movs r0, #4
rsbs r0, r0, #0
ands r0, r1
movs r1, #1
orrs r0, r1
strb r0, [r4, #0x18]
movs r0, #1
strb r0, [r4, #0x1e]
b _0806E8CA
_0806E8B6:
movs r1, #0xc0
lsls r1, r1, #6
adds r0, r4, #0
bl sub_08003FC4
cmp r0, #0
bne _0806E8CA
movs r0, #0x80
lsls r0, r0, #9
str r0, [r4, #0x20]
_0806E8CA:
pop {r4, pc}
thumb_func_start sub_0806E8CC
sub_0806E8CC: @ 0x0806E8CC
push {lr}
adds r3, r0, #0
ldr r2, _0806E8EC @ =gUnk_080B313C
ldrb r1, [r3, #0xf]
lsls r0, r1, #1
adds r0, r0, r1
lsls r0, r0, #2
adds r2, #8
adds r0, r0, r2
ldr r1, [r0]
cmp r1, #0
beq _0806E8F0
adds r0, r3, #0
bl _call_via_r1
b _0806E8F4
.align 2, 0
_0806E8EC: .4byte gUnk_080B313C
_0806E8F0:
bl sub_0805E780
_0806E8F4:
pop {pc}
.align 2, 0
thumb_func_start sub_0806E8F8
sub_0806E8F8: @ 0x0806E8F8
push {lr}
adds r3, r0, #0
ldr r2, _0806E918 @ =gUnk_080B313C
ldrb r1, [r3, #0xf]
lsls r0, r1, #1
adds r0, r0, r1
lsls r0, r0, #2
adds r2, #4
adds r0, r0, r2
ldr r1, [r0]
cmp r1, #0
beq _0806E916
adds r0, r3, #0
bl _call_via_r1
_0806E916:
pop {pc}
.align 2, 0
_0806E918: .4byte gUnk_080B313C
thumb_func_start sub_0806E91C
sub_0806E91C: @ 0x0806E91C
push {r4, r5, lr}
adds r5, r0, #0
ldrb r0, [r5, #0xc]
cmp r0, #0
bne _0806E950
adds r0, #1
strb r0, [r5, #0xc]
ldrb r1, [r5, #0x18]
movs r0, #4
rsbs r0, r0, #0
ands r0, r1
movs r1, #1
orrs r0, r1
strb r0, [r5, #0x18]
adds r1, r5, #0
adds r1, #0x68
movs r4, #0
movs r0, #1
strh r0, [r1]
adds r1, #2
ldr r0, _0806E960 @ =0x0000FFFF
strh r0, [r1]
adds r0, r5, #0
bl sub_0807DD64
strb r4, [r5, #0x1e]
_0806E950:
adds r0, r5, #0
movs r1, #0
bl sub_0807DDAC
adds r0, r5, #0
bl sub_0807DDE4
pop {r4, r5, pc}
.align 2, 0
_0806E960: .4byte 0x0000FFFF
thumb_func_start sub_0806E964
sub_0806E964: @ 0x0806E964
push {r4, r5, r6, r7, lr}
mov r7, sb
mov r6, r8
push {r6, r7}
mov sb, r0
adds r2, r1, #0
ldr r0, _0806E984 @ =gUnk_03000FF0
mov r8, r0
ldrh r1, [r0, #2]
movs r0, #2
ands r0, r1
cmp r0, #0
beq _0806E988
bl sub_08050384
b _0806EAAA
.align 2, 0
_0806E984: .4byte gUnk_03000FF0
_0806E988:
ldrb r0, [r2, #0x18]
adds r1, r0, #0
mov r6, sb
adds r6, #0x6c
mov r7, sb
adds r7, #0x68
cmp r1, #0
bne _0806E9A8
adds r0, #1
strb r0, [r2, #0x18]
strh r1, [r6]
movs r2, #0
ldrsh r1, [r7, r2]
mov r0, sb
bl sub_0806EABC
_0806E9A8:
movs r5, #0x1c
movs r0, #0x55
bl GetProgressFlag
cmp r0, #0
beq _0806E9B6
movs r5, #0x34
_0806E9B6:
movs r0, #0
ldrsh r4, [r7, r0]
mov r2, r8
ldrh r1, [r2, #2]
movs r2, #0xc0
adds r0, r2, #0
ands r0, r1
cmp r0, #0
beq _0806E9E4
movs r0, #0x40
ands r0, r1
cmp r0, #0
beq _0806E9D4
adds r4, #1
b _0806E9D6
_0806E9D4:
subs r4, #1
_0806E9D6:
cmp r4, #0
bgt _0806E9DC
adds r4, r5, #0
_0806E9DC:
cmp r4, r5
ble _0806EA0A
movs r4, #1
b _0806EA0A
_0806E9E4:
mov r0, r8
ldrh r1, [r0, #4]
adds r0, r2, #0
ands r0, r1
cmp r0, #0
beq _0806EA0A
movs r0, #0x40
ands r0, r1
cmp r0, #0
beq _0806E9FC
adds r4, #1
b _0806E9FE
_0806E9FC:
subs r4, #1
_0806E9FE:
cmp r4, #0
bgt _0806EA04
movs r4, #1
_0806EA04:
cmp r4, r5
ble _0806EA0A
adds r4, r5, #0
_0806EA0A:
movs r1, #0
ldrsh r0, [r7, r1]
cmp r4, r0
beq _0806EA28
mov r0, sb
adds r1, r4, #0
bl sub_0806EABC
ldrh r1, [r6]
movs r2, #0
ldrsh r0, [r6, r2]
cmp r0, #0
ble _0806EA28
subs r0, r1, #1
strh r0, [r6]
_0806EA28:
strh r4, [r7]
ldr r0, _0806EA74 @ =gUnk_03000FF0
ldrh r1, [r0, #2]
movs r0, #1
ands r0, r1
cmp r0, #0
beq _0806EA86
mov r5, sb
adds r5, #0x6a
lsls r0, r4, #0x10
asrs r0, r0, #0x10
movs r2, #0
ldrsh r1, [r5, r2]
cmp r0, r1
bne _0806EA4E
movs r1, #0
ldrsh r0, [r6, r1]
cmp r0, #0
bne _0806EA7C
_0806EA4E:
ldr r4, _0806EA78 @ =gUnk_081145E4
movs r2, #0
ldrsh r0, [r7, r2]
lsls r0, r0, #2
adds r0, r0, r4
movs r1, #0
ldrsh r0, [r0, r1]
bl PlaySFX
ldrh r0, [r7]
strh r0, [r5]
movs r2, #0
ldrsh r0, [r7, r2]
lsls r0, r0, #2
adds r4, #2
adds r0, r0, r4
ldrh r0, [r0]
strh r0, [r6]
b _0806EA86
.align 2, 0
_0806EA74: .4byte gUnk_03000FF0
_0806EA78: .4byte gUnk_081145E4
_0806EA7C:
ldr r0, _0806EAB4 @ =0x80010000
bl PlaySFX
movs r0, #0
strh r0, [r5]
_0806EA86:
ldrh r1, [r6]
movs r2, #0
ldrsh r0, [r6, r2]
cmp r0, #0
ble _0806EAA4
subs r0, r1, #1
movs r1, #0
strh r0, [r6]
lsls r0, r0, #0x10
cmp r0, #0
bgt _0806EAA4
mov r0, sb
adds r0, #0x6a
strh r1, [r0]
strh r1, [r6]
_0806EAA4:
ldr r1, _0806EAB8 @ =gUnk_02033280
movs r0, #0
strb r0, [r1, #6]
_0806EAAA:
pop {r3, r4}
mov r8, r3
mov sb, r4
pop {r4, r5, r6, r7, pc}
.align 2, 0
_0806EAB4: .4byte 0x80010000
_0806EAB8: .4byte gUnk_02033280
thumb_func_start sub_0806EABC
sub_0806EABC: @ 0x0806EABC
push {r4, lr}
adds r4, r1, #0
bl sub_08050384
ldr r1, _0806EAE0 @ =gUnk_020227E8
ldr r2, _0806EAE4 @ =0x00202020
adds r0, r4, #0
bl sub_08057044
ldr r0, _0806EAE8 @ =0x00003302
ldr r1, _0806EAEC @ =gUnk_081146B8
bl sub_0805F46C
ldr r1, _0806EAF0 @ =gLCDControls
movs r0, #1
strh r0, [r1, #0xe]
pop {r4, pc}
.align 2, 0
_0806EAE0: .4byte gUnk_020227E8
_0806EAE4: .4byte 0x00202020
_0806EAE8: .4byte 0x00003302
_0806EAEC: .4byte gUnk_081146B8
_0806EAF0: .4byte gLCDControls
thumb_func_start sub_0806EAF4
sub_0806EAF4: @ 0x0806EAF4
push {r4, r5, r6, r7, lr}
adds r6, r0, #0
ldrb r0, [r6, #0xc]
cmp r0, #0
bne _0806EB48
ldr r1, _0806EBA0 @ =gUnk_081146D0
adds r0, r6, #0
bl sub_0806FDEC
cmp r0, #0
beq _0806EBA8
ldrb r0, [r6, #0xc]
adds r0, #1
strb r0, [r6, #0xc]
ldrb r1, [r6, #0x18]
movs r0, #4
rsbs r0, r0, #0
ands r0, r1
movs r1, #2
orrs r0, r1
strb r0, [r6, #0x18]
ldrb r2, [r6, #0x19]
movs r1, #0x3f
adds r0, r1, #0
ands r0, r2
strb r0, [r6, #0x19]
adds r3, r6, #0
adds r3, #0x29
ldrb r2, [r3]
movs r0, #8
rsbs r0, r0, #0
ands r0, r2
strb r0, [r3]
ldrb r0, [r6, #0x1b]
ands r1, r0
movs r0, #0x40
orrs r1, r0
strb r1, [r6, #0x1b]
movs r0, #0x78
strh r0, [r6, #0x2e]
movs r0, #0x10
strh r0, [r6, #0x32]
_0806EB48:
ldr r7, [r6, #0x50]
cmp r7, #0
beq _0806EBA4
adds r0, r7, #0
adds r0, #0x68
movs r1, #0
ldrsh r4, [r0, r1]
movs r5, #0x96
lsls r5, r5, #2
adds r0, r4, #0
adds r1, r5, #0
bl __divsi3
adds r1, r6, #0
adds r1, #0x68
strh r0, [r1]
adds r0, r4, #0
adds r1, r5, #0
bl __modsi3
adds r4, r0, #0
movs r1, #0x3c
bl __divsi3
adds r1, r6, #0
adds r1, #0x6a
strh r0, [r1]
adds r0, r4, #0
movs r1, #0x3c
bl __modsi3
movs r1, #6
bl __divsi3
adds r1, r6, #0
adds r1, #0x6c
strh r0, [r1]
ldr r0, [r7, #4]
cmp r0, #0
bne _0806EBA8
bl sub_0805E780
b _0806EBA8
.align 2, 0
_0806EBA0: .4byte gUnk_081146D0
_0806EBA4:
bl sub_0805E780
_0806EBA8:
pop {r4, r5, r6, r7, pc}
.align 2, 0
thumb_func_start sub_0806EBAC
sub_0806EBAC: @ 0x0806EBAC
push {r4, lr}
adds r4, r0, #0
movs r0, #0xff
strb r0, [r4, #0x1e]
adds r0, r4, #0
adds r0, #0x68
movs r1, #0
ldrsh r2, [r0, r1]
adds r0, r4, #0
movs r1, #0
bl sub_0806FF60
adds r0, r4, #0
adds r0, #0x6a
movs r1, #0
ldrsh r2, [r0, r1]
adds r0, r4, #0
movs r1, #1
bl sub_0806FF60
adds r0, r4, #0
adds r0, #0x6c
movs r1, #0
ldrsh r2, [r0, r1]
adds r0, r4, #0
movs r1, #2
bl sub_0806FF60
adds r0, r4, #0
movs r1, #3
movs r2, #0xa
bl sub_0806FF60
movs r2, #0xc
rsbs r2, r2, #0
adds r0, r4, #0
movs r1, #0
movs r3, #0
bl sub_0806FFBC
movs r2, #4
rsbs r2, r2, #0
adds r0, r4, #0
movs r1, #1
movs r3, #0
bl sub_0806FFBC
adds r0, r4, #0
movs r1, #2
movs r2, #0xc
movs r3, #0
bl sub_0806FFBC
adds r0, r4, #0
bl sub_0807000C
pop {r4, pc}
.align 2, 0
thumb_func_start sub_0806EC20
sub_0806EC20: @ 0x0806EC20
push {r4, lr}
adds r4, r0, #0
movs r0, #0x58
movs r1, #0
movs r2, #0
bl CreateNPC
cmp r0, #0
beq _0806EC34
str r4, [r0, #0x50]
_0806EC34:
pop {r4, pc}
.align 2, 0
thumb_func_start sub_0806EC38
sub_0806EC38: @ 0x0806EC38
push {lr}
movs r0, #7
movs r1, #0x58
movs r2, #7
bl sub_0805EB00
cmp r0, #0
beq _0806EC4C
bl sub_0805E7BC
_0806EC4C:
pop {pc}
.align 2, 0
thumb_func_start sub_0806EC50
sub_0806EC50: @ 0x0806EC50
push {lr}
adds r3, r0, #0
ldrb r0, [r3, #9]
lsls r0, r0, #3
ldr r1, _0806EC74 @ =gUnk_08114AE4
adds r2, r0, r1
ldrb r1, [r2]
movs r0, #3
ands r0, r1
cmp r0, #2
bne _0806EC6E
ldrb r0, [r3, #0xa]
lsls r0, r0, #3
ldr r1, [r2, #4]
adds r2, r1, r0
_0806EC6E:
adds r0, r2, #0
pop {pc}
.align 2, 0
_0806EC74: .4byte gUnk_08114AE4
thumb_func_start sub_0806EC78
sub_0806EC78: @ 0x0806EC78
push {r4, r5, lr}
adds r4, r0, #0
ldrb r1, [r4, #0x10]
movs r0, #1
ands r0, r1
cmp r0, #0
bne _0806ED4A
adds r0, r4, #0
bl sub_0806EC50
adds r5, r0, #0
ldrb r1, [r5]
movs r0, #3
ands r0, r1
cmp r0, #0
bne _0806ECA2
ldrb r1, [r4, #0x10]
movs r0, #1
orrs r0, r1
strb r0, [r4, #0x10]
b _0806ED4A
_0806ECA2:
ldrh r0, [r5, #2]
lsls r0, r0, #0x16
lsrs r2, r0, #0x16
adds r1, r2, #0
ldrb r0, [r5, #3]
lsls r0, r0, #0x1c
lsrs r0, r0, #0x1e
cmp r0, #1
beq _0806ECC0
cmp r0, #2
bne _0806ECCA
adds r0, r4, #0
adds r0, #0x60
strh r2, [r0]
b _0806ECD0
_0806ECC0:
adds r0, r4, #0
movs r2, #0
bl sub_080AE008
b _0806ECD0
_0806ECCA:
adds r0, r4, #0
bl sub_080ADF80
_0806ECD0:
ldrh r0, [r5, #4]
lsls r0, r0, #0x16
lsrs r1, r0, #0x16
adds r0, r4, #0
bl sub_0801D040
ldrh r0, [r5, #6]
lsls r0, r0, #0x16
lsrs r0, r0, #0x16
strh r0, [r4, #0x12]
ldrb r0, [r5, #5]
movs r3, #3
movs r1, #0x30
ands r1, r0
ldrb r2, [r4, #0x18]
movs r0, #0x31
rsbs r0, r0, #0
ands r0, r2
orrs r0, r1
strb r0, [r4, #0x18]
ldrb r1, [r5, #7]
lsls r1, r1, #0x1b
movs r0, #0x29
adds r0, r0, r4
mov ip, r0
lsrs r1, r1, #0x1d
lsls r1, r1, #3
ldrb r2, [r0]
movs r0, #0x39
rsbs r0, r0, #0
ands r0, r2
orrs r0, r1
mov r1, ip
strb r0, [r1]
ldrb r1, [r5, #7]
lsrs r1, r1, #5
ands r1, r3
ldrb r2, [r4, #0x18]
movs r0, #4
rsbs r0, r0, #0
ands r0, r2
orrs r0, r1
strb r0, [r4, #0x18]
ldr r1, _0806ED4C @ =gUnk_08114EE4
ldrb r0, [r5, #1]
lsls r0, r0, #2
adds r0, r0, r1
ldr r0, [r0]
str r0, [r4, #0x48]
ldrb r1, [r4, #0x10]
movs r0, #1
orrs r0, r1
strb r0, [r4, #0x10]
movs r1, #0xff
adds r0, r4, #0
adds r0, #0x58
strb r1, [r0]
strb r1, [r4, #0x1e]
adds r0, r4, #0
bl UpdateSpriteOrderAndFlip
_0806ED4A:
pop {r4, r5, pc}
.align 2, 0
_0806ED4C: .4byte gUnk_08114EE4
+2 -2
View File
@@ -1013,7 +1013,7 @@ _0806F444:
str r0, [r5, #0x50]
_0806F4B4:
movs r0, #0xed
bl sub_080A3268
bl PlaySFX
b _0806F4D8
.align 2, 0
_0806F4BC: .4byte gLinkEntity
@@ -1026,7 +1026,7 @@ _0806F4C8:
ldr r0, [r0, #0x2c]
strb r1, [r0, #0xa]
movs r0, #0xef
bl sub_080A3268
bl PlaySFX
_0806F4D8:
movs r0, #1
b _0806F4E2
+29 -17723
View File
File diff suppressed because it is too large Load Diff
+9530
View File
File diff suppressed because it is too large Load Diff
+8000
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1807,7 +1807,7 @@ _0807C7C2:
movs r1, #1
strb r1, [r0]
ldr r0, [r4, #0x30]
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
_0807C7FC:
ldrb r1, [r4, #0xf]
movs r0, #0xfb
+18 -71
View File
@@ -3371,7 +3371,7 @@ _0807E456:
cmp r1, #0
beq _0807E474
rsbs r0, r2, #0
bl sub_080526CC
bl ModRupees
adds r0, r4, #0
adds r1, r6, #0
movs r2, #0
@@ -3865,7 +3865,7 @@ sub_0807E7B0: @ 0x0807E7B0
ldr r0, _0807E7C0 @ =gUnk_02033280
ldrb r1, [r0, #8]
movs r0, #4
bl sub_08050054
bl DoFade
pop {pc}
.align 2, 0
_0807E7C0: .4byte gUnk_02033280
@@ -3876,7 +3876,7 @@ sub_0807E7C4: @ 0x0807E7C4
ldr r0, _0807E7D4 @ =gUnk_02033280
ldrb r1, [r0, #8]
movs r0, #5
bl sub_08050054
bl DoFade
pop {pc}
.align 2, 0
_0807E7D4: .4byte gUnk_02033280
@@ -3887,7 +3887,7 @@ sub_0807E7D8: @ 0x0807E7D8
ldr r0, _0807E7E8 @ =gUnk_02033280
ldrb r1, [r0, #8]
movs r0, #6
bl sub_08050054
bl DoFade
pop {pc}
.align 2, 0
_0807E7E8: .4byte gUnk_02033280
@@ -3898,7 +3898,7 @@ sub_0807E7EC: @ 0x0807E7EC
ldr r0, _0807E7FC @ =gUnk_02033280
ldrb r1, [r0, #8]
movs r0, #7
bl sub_08050054
bl DoFade
pop {pc}
.align 2, 0
_0807E7FC: .4byte gUnk_02033280
@@ -5011,7 +5011,7 @@ sub_0807EFA0: @ 0x0807EFA0
push {lr}
ldr r0, [r1]
ldrh r0, [r0, #2]
bl sub_080A3268
bl PlaySFX
pop {pc}
thumb_func_start sub_0807EFAC
@@ -5026,13 +5026,13 @@ sub_0807EFAC: @ 0x0807EFAC
lsls r1, r1, #4
adds r0, r0, r1
ldr r0, [r0]
bl sub_080A3268
bl PlaySFX
b _0807EFD2
.align 2, 0
_0807EFC8: .4byte gUnk_02033A90
_0807EFCC:
ldrh r0, [r1, #2]
bl sub_080A3268
bl PlaySFX
_0807EFD2:
pop {pc}
@@ -5041,7 +5041,7 @@ sub_0807EFD4: @ 0x0807EFD4
push {lr}
ldr r0, [r1]
bl sub_08016998
bl sub_080A3268
bl PlaySFX
pop {pc}
.align 2, 0
@@ -5049,7 +5049,7 @@ sub_0807EFD4: @ 0x0807EFD4
sub_0807EFE4: @ 0x0807EFE4
push {lr}
ldr r0, _0807EFF0 @ =0x80100000
bl sub_080A3268
bl PlaySFX
pop {pc}
.align 2, 0
_0807EFF0: .4byte 0x80100000
@@ -5060,7 +5060,7 @@ sub_0807EFF4: @ 0x0807EFF4
ldr r0, [r1]
movs r1, #2
ldrsh r0, [r0, r1]
bl sub_080526CC
bl ModRupees
pop {pc}
.align 2, 0
@@ -5269,7 +5269,7 @@ sub_0807F158: @ 0x0807F158
adds r2, #0x38
movs r1, #1
strb r1, [r2]
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
pop {pc}
thumb_func_start sub_0807F168
@@ -5280,7 +5280,7 @@ sub_0807F168: @ 0x0807F168
adds r2, #0x38
movs r1, #1
strb r1, [r2]
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
pop {pc}
.align 2, 0
_0807F17C: .4byte gLinkEntity
@@ -5292,7 +5292,7 @@ sub_0807F180: @ 0x0807F180
adds r2, #0x38
movs r1, #2
strb r1, [r2]
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
pop {pc}
thumb_func_start sub_0807F190
@@ -5301,7 +5301,7 @@ sub_0807F190: @ 0x0807F190
movs r1, #0x80
lsls r1, r1, #1
movs r0, #4
bl sub_08050054
bl DoFade
pop {pc}
.align 2, 0
@@ -5621,7 +5621,7 @@ sub_0807F3C8: @ 0x0807F3C8
push {lr}
bl sub_0807F36C
movs r0, #0xe5
bl sub_080A3268
bl PlaySFX
pop {pc}
.align 2, 0
@@ -6230,7 +6230,7 @@ _0807F80C:
adds r0, r4, #0
bl sub_08053FE0
rsbs r0, r0, #0
bl sub_080526CC
bl ModRupees
adds r0, r4, #0
movs r1, #0
movs r2, #0
@@ -8424,7 +8424,7 @@ _0808089A:
ldrh r0, [r4, #0x10]
cmp r0, #0
beq _080808B8
bl sub_080A3268
bl PlaySFX
_080808B8:
ldr r0, _080808D4 @ =gUnk_0811E7C4
ldrh r1, [r4]
@@ -8485,56 +8485,3 @@ sub_08080910: @ 0x08080910
.align 2, 0
_08080918: .4byte gUnk_030010A0
thumb_func_start sub_0808091C
sub_0808091C: @ 0x0808091C
push {r4, lr}
adds r4, r1, #0
bl sub_08080840
ldr r0, _0808092C @ =gUnk_030010A0
strb r4, [r0, #9]
pop {r4, pc}
.align 2, 0
_0808092C: .4byte gUnk_030010A0
thumb_func_start sub_08080930
sub_08080930: @ 0x08080930
push {lr}
ldr r1, _08080948 @ =gRoomControls
movs r2, #0
movs r0, #5
strb r0, [r1, #2]
strb r2, [r1, #3]
movs r0, #2
strh r0, [r1]
strb r2, [r1, #0x10]
bl sub_0805E5A8
pop {pc}
.align 2, 0
_08080948: .4byte gRoomControls
thumb_func_start sub_0808094C
sub_0808094C: @ 0x0808094C
push {lr}
cmp r0, #2
beq _0808095C
ldr r0, _08080958 @ =gUnk_02025EB0
b _0808095E
.align 2, 0
_08080958: .4byte gUnk_02025EB0
_0808095C:
ldr r0, _08080960 @ =gUnk_0200B650
_0808095E:
pop {pc}
.align 2, 0
_08080960: .4byte gUnk_0200B650
thumb_func_start sub_08080964
sub_08080964: @ 0x08080964
ldr r2, _08080970 @ =gRoomControls
strh r0, [r2, #0x16]
movs r0, #7
ands r1, r0
strb r1, [r2, #0x14]
bx lr
.align 2, 0
_08080970: .4byte gRoomControls
+171 -11463
View File
File diff suppressed because it is too large Load Diff
+10975
View File
File diff suppressed because it is too large Load Diff
+2 -4473
View File
File diff suppressed because it is too large Load Diff
+911
View File
@@ -0,0 +1,911 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_080A3480
sub_080A3480: @ 0x080A3480
push {r4, lr}
ldr r4, _080A34A4 @ =gUnk_02021EE0
movs r0, #0xa
ldrsh r1, [r4, r0]
movs r2, #8
ldrsh r0, [r4, r2]
cmp r1, r0
beq _080A34C4
adds r0, r1, #0
movs r2, #8
ldrsh r1, [r4, r2]
bl sub_080A3518
adds r1, r0, #0
cmp r1, #0
bne _080A34A8
ldrh r0, [r4, #0xa]
b _080A34AC
.align 2, 0
_080A34A4: .4byte gUnk_02021EE0
_080A34A8:
ldrh r0, [r4, #8]
adds r0, r0, r1
_080A34AC:
strh r0, [r4, #8]
movs r1, #8
ldrsh r0, [r4, r1]
cmp r0, #0
bge _080A34BC
movs r0, #0
strh r0, [r4, #0xa]
strh r0, [r4, #8]
_080A34BC:
ldrh r0, [r4, #0x14]
bl sub_080A353C
b _080A3516
_080A34C4:
movs r2, #0x10
ldrsh r1, [r4, r2]
movs r2, #0xe
ldrsh r0, [r4, r2]
cmp r1, r0
beq _080A3516
adds r0, r1, #0
movs r2, #0xe
ldrsh r1, [r4, r2]
bl sub_080A3518
adds r1, r0, #0
cmp r1, #0
bne _080A34FC
ldrb r0, [r4, #2]
ldrh r2, [r4, #0x10]
cmp r0, #0
beq _080A34F8
cmp r2, #0
bne _080A34F8
strb r1, [r4, #2]
strh r1, [r4, #0x14]
movs r0, #0
bl m4aSongNumStop
b _080A3502
_080A34F8:
strh r2, [r4, #0xe]
b _080A3502
_080A34FC:
ldrh r0, [r4, #0xe]
adds r0, r0, r1
strh r0, [r4, #0xe]
_080A3502:
movs r1, #0xe
ldrsh r0, [r4, r1]
cmp r0, #0
bge _080A3510
movs r0, #0
strh r0, [r4, #0x10]
strh r0, [r4, #0xe]
_080A3510:
ldrh r0, [r4, #0x14]
bl sub_080A353C
_080A3516:
pop {r4, pc}
thumb_func_start sub_080A3518
sub_080A3518: @ 0x080A3518
push {lr}
adds r2, r0, #0
subs r0, r2, r1
cmp r0, #0
ble _080A352C
adds r1, #4
cmp r2, r1
ble _080A3532
movs r0, #4
b _080A353A
_080A352C:
subs r1, #4
cmp r2, r1
blt _080A3536
_080A3532:
movs r0, #0
b _080A353A
_080A3536:
movs r0, #4
rsbs r0, r0, #0
_080A353A:
pop {pc}
thumb_func_start sub_080A353C
sub_080A353C: @ 0x080A353C
push {r4, r5, lr}
adds r3, r0, #0
cmp r3, #0
beq _080A358C
subs r0, r3, #1
cmp r0, #0x62
bhi _080A3558
ldr r0, _080A3554 @ =gUnk_02021EE0
movs r1, #0xe
ldrsh r5, [r0, r1]
b _080A355E
.align 2, 0
_080A3554: .4byte gUnk_02021EE0
_080A3558:
ldr r0, _080A3590 @ =gUnk_02021EE0
movs r1, #0x12
ldrsh r5, [r0, r1]
_080A355E:
movs r1, #8
ldrsh r0, [r0, r1]
muls r0, r5, r0
lsrs r5, r0, #8
ldr r2, _080A3594 @ =gUnk_08A11C3C
ldr r1, _080A3598 @ =gUnk_08A11DBC
lsls r0, r3, #3
adds r0, r0, r1
ldrh r1, [r0, #4]
lsls r0, r1, #1
adds r0, r0, r1
lsls r0, r0, #2
adds r0, r0, r2
ldr r4, [r0]
adds r0, r4, #0
bl m4aMPlayImmInit
ldr r1, _080A359C @ =0x0000FFFF
lsls r2, r5, #0x10
lsrs r2, r2, #0x10
adds r0, r4, #0
bl m4aMPlayVolumeControl
_080A358C:
pop {r4, r5, pc}
.align 2, 0
_080A3590: .4byte gUnk_02021EE0
_080A3594: .4byte gUnk_08A11C3C
_080A3598: .4byte gUnk_08A11DBC
_080A359C: .4byte 0x0000FFFF
thumb_func_start sub_080A35A0
sub_080A35A0: @ 0x080A35A0
push {lr}
ldr r2, _080A35B0 @ =gUnk_02021EE0
movs r1, #0x80
lsls r1, r1, #1
strh r1, [r2, #0xa]
bl sub_080A353C
pop {pc}
.align 2, 0
_080A35B0: .4byte gUnk_02021EE0
thumb_func_start sub_080A35B4
sub_080A35B4: @ 0x080A35B4
push {lr}
ldr r2, _080A35C4 @ =gUnk_02021EE0
movs r1, #0
strh r1, [r2, #0xa]
bl sub_080A353C
pop {pc}
.align 2, 0
_080A35C4: .4byte gUnk_02021EE0
thumb_func_start sub_080A35C8
sub_080A35C8: @ 0x080A35C8
ldr r1, _080A35DC @ =gUnk_02021EE0
movs r0, #0x80
lsls r0, r0, #1
strh r0, [r1, #6]
strh r0, [r1, #8]
strh r0, [r1, #0xa]
strh r0, [r1, #0xc]
strh r0, [r1, #0xe]
strh r0, [r1, #0x10]
bx lr
.align 2, 0
_080A35DC: .4byte gUnk_02021EE0
thumb_func_start sub_080A35E0
sub_080A35E0: @ 0x080A35E0
push {lr}
ldr r1, _080A35FC @ =gUnk_030010A0
ldr r0, [r1]
adds r0, #1
str r0, [r1]
ldr r1, _080A3600 @ =gUnk_08127D00
ldr r0, _080A3604 @ =gUnk_03001000
ldrb r0, [r0, #3]
lsls r0, r0, #2
adds r0, r0, r1
ldr r0, [r0]
bl _call_via_r0
pop {pc}
.align 2, 0
_080A35FC: .4byte gUnk_030010A0
_080A3600: .4byte gUnk_08127D00
_080A3604: .4byte gUnk_03001000
thumb_func_start sub_080A3608
sub_080A3608: @ 0x080A3608
push {r4, r5, lr}
ldr r0, _080A3640 @ =gUnk_02002A40
movs r5, #0
movs r4, #1
strb r4, [r0, #6]
movs r0, #0x55
bl sub_0807CD04
ldr r0, _080A3644 @ =gUnk_03001000
strb r4, [r0, #3]
ldr r2, _080A3648 @ =gUnk_02000080
strb r5, [r2, #5]
movs r1, #0
movs r0, #0xb4
strh r0, [r2, #8]
movs r0, #5
strb r0, [r2, #0x16]
movs r0, #4
strb r0, [r2, #0x17]
strb r1, [r2, #0x1a]
movs r0, #0x80
lsls r0, r0, #0x12
ldrb r0, [r0, #7]
cmp r0, #1
bls _080A3650
ldr r0, _080A364C @ =gUnk_08127998
b _080A365E
.align 2, 0
_080A3640: .4byte gUnk_02002A40
_080A3644: .4byte gUnk_03001000
_080A3648: .4byte gUnk_02000080
_080A364C: .4byte gUnk_08127998
_080A3650:
cmp r0, #1
bne _080A365C
ldr r0, _080A3658 @ =gUnk_08127644
b _080A365E
.align 2, 0
_080A3658: .4byte gUnk_08127644
_080A365C:
ldr r0, _080A36B0 @ =gUnk_081272F0
_080A365E:
str r0, [r2, #0xc]
movs r0, #0
bl sub_0801DA90
movs r0, #0xb
bl sub_0801D714
movs r0, #0xc
bl sub_0801D714
movs r0, #0
movs r1, #0
bl sub_0801D79C
ldr r2, _080A36B4 @ =gLCDControls
movs r0, #0xc8
lsls r0, r0, #3
strh r0, [r2]
adds r1, r2, #0
adds r1, #0x66
ldr r0, _080A36B8 @ =0x00002442
strh r0, [r1]
adds r1, #2
movs r0, #0x80
lsls r0, r0, #5
strh r0, [r1]
ldr r0, _080A36BC @ =0x00001E4D
strh r0, [r2, #0x14]
subs r0, #0x8a
strh r0, [r2, #0x20]
bl sub_080A3210
bl sub_0805E5B4
movs r1, #0x80
lsls r1, r1, #1
movs r0, #5
bl DoFade
pop {r4, r5, pc}
.align 2, 0
_080A36B0: .4byte gUnk_081272F0
_080A36B4: .4byte gLCDControls
_080A36B8: .4byte 0x00002442
_080A36BC: .4byte 0x00001E4D
thumb_func_start sub_080A36C0
sub_080A36C0: @ 0x080A36C0
push {lr}
ldr r1, _080A36D4 @ =gUnk_08127D10
ldr r0, _080A36D8 @ =gUnk_02000080
ldrb r0, [r0, #5]
lsls r0, r0, #2
adds r0, r0, r1
ldr r0, [r0]
bl _call_via_r0
pop {pc}
.align 2, 0
_080A36D4: .4byte gUnk_08127D10
_080A36D8: .4byte gUnk_02000080
thumb_func_start sub_080A36DC
sub_080A36DC: @ 0x080A36DC
push {lr}
ldr r1, _080A36F4 @ =gUnk_02000080
ldrh r0, [r1, #8]
subs r0, #1
strh r0, [r1, #8]
lsls r0, r0, #0x10
cmp r0, #0
bne _080A36F0
bl sub_080A3954
_080A36F0:
pop {pc}
.align 2, 0
_080A36F4: .4byte gUnk_02000080
thumb_func_start sub_080A36F8
sub_080A36F8: @ 0x080A36F8
push {r4, r5, lr}
ldr r0, _080A3754 @ =gUnk_03000FD0
ldrb r0, [r0]
cmp r0, #0
bne _080A3752
ldr r5, _080A3758 @ =gUnk_02000080
movs r0, #0x10
ldrsh r4, [r5, r0]
lsls r4, r4, #1
ldr r0, _080A375C @ =gUnk_08127CEC
adds r4, r4, r0
ldrb r0, [r4]
bl sub_0801D714
ldrb r0, [r4, #1]
bl sub_0801D7EC
ldr r0, _080A3760 @ =gUnk_02021F30
movs r1, #0x80
lsls r1, r1, #4
bl sub_0801D630
ldr r1, _080A3764 @ =gLCDControls
movs r2, #0
movs r0, #1
strh r0, [r1, #0x1a]
ldrh r0, [r5, #0x12]
strh r0, [r1, #0x22]
adds r1, #0x68
movs r0, #0x80
lsls r0, r0, #5
strh r0, [r1]
strb r2, [r5, #5]
ldrb r0, [r5, #0x1a]
cmp r0, #0
bne _080A374A
movs r0, #1
strb r0, [r5, #0x1a]
movs r0, #9
bl PlaySFX
_080A374A:
movs r0, #4
movs r1, #8
bl DoFade
_080A3752:
pop {r4, r5, pc}
.align 2, 0
_080A3754: .4byte gUnk_03000FD0
_080A3758: .4byte gUnk_02000080
_080A375C: .4byte gUnk_08127CEC
_080A3760: .4byte gUnk_02021F30
_080A3764: .4byte gLCDControls
thumb_func_start sub_080A3768
sub_080A3768: @ 0x080A3768
push {r4, lr}
ldr r4, _080A377C @ =gUnk_02000080
ldrb r1, [r4, #6]
cmp r1, #1
beq _080A37C4
cmp r1, #1
bgt _080A3780
cmp r1, #0
beq _080A378A
b _080A384C
.align 2, 0
_080A377C: .4byte gUnk_02000080
_080A3780:
cmp r1, #2
beq _080A3804
cmp r1, #3
beq _080A3812
b _080A384C
_080A378A:
ldr r0, _080A37B8 @ =gUnk_02021F30
movs r1, #0x80
lsls r1, r1, #4
bl sub_0801D630
movs r1, #0x10
ldrsh r0, [r4, r1]
ldr r2, _080A37BC @ =gUnk_081272E0
ldrb r1, [r4, #0x19]
lsls r1, r1, #2
adds r1, r1, r2
ldr r1, [r1]
bl sub_0805F46C
ldr r1, _080A37C0 @ =gLCDControls
movs r2, #0
movs r0, #1
strh r0, [r1, #0x1a]
ldrb r0, [r4, #6]
adds r0, #1
strb r0, [r4, #6]
strb r2, [r4, #0x18]
b _080A385E
.align 2, 0
_080A37B8: .4byte gUnk_02021F30
_080A37BC: .4byte gUnk_081272E0
_080A37C0: .4byte gLCDControls
_080A37C4:
ldr r0, _080A37F8 @ =gUnk_03000FD0
ldrb r0, [r0]
cmp r0, #0
bne _080A385E
ldr r0, _080A37FC @ =gUnk_030010A0
ldr r0, [r0]
ands r0, r1
cmp r0, #0
bne _080A385E
ldrb r1, [r4, #0x18]
adds r1, #1
strb r1, [r4, #0x18]
lsls r0, r1, #0x18
lsrs r3, r0, #0x18
ldr r2, _080A3800 @ =gLCDControls
movs r0, #0x10
subs r0, r0, r3
lsls r0, r0, #8
orrs r0, r3
adds r2, #0x68
strh r0, [r2]
lsls r1, r1, #0x18
lsrs r1, r1, #0x18
cmp r1, #0xf
bls _080A385E
b _080A383C
.align 2, 0
_080A37F8: .4byte gUnk_03000FD0
_080A37FC: .4byte gUnk_030010A0
_080A3800: .4byte gLCDControls
_080A3804:
ldrh r0, [r4, #8]
subs r0, #1
strh r0, [r4, #8]
lsls r0, r0, #0x10
cmp r0, #0
bne _080A385E
b _080A383C
_080A3812:
ldr r0, _080A3844 @ =gUnk_030010A0
ldr r0, [r0]
movs r1, #1
ands r0, r1
cmp r0, #0
bne _080A385E
ldrb r1, [r4, #0x18]
subs r1, #1
strb r1, [r4, #0x18]
lsls r0, r1, #0x18
lsrs r3, r0, #0x18
ldr r2, _080A3848 @ =gLCDControls
movs r0, #0x10
subs r0, r0, r3
lsls r0, r0, #8
orrs r0, r3
adds r2, #0x68
strh r0, [r2]
lsls r1, r1, #0x18
cmp r1, #0
bne _080A385E
_080A383C:
ldrb r0, [r4, #6]
adds r0, #1
strb r0, [r4, #6]
b _080A385E
.align 2, 0
_080A3844: .4byte gUnk_030010A0
_080A3848: .4byte gLCDControls
_080A384C:
ldr r1, _080A3860 @ =gUnk_03000FD0
ldrb r0, [r1]
cmp r0, #0
bne _080A385E
movs r0, #1
rsbs r0, r0, #0
str r0, [r1, #4]
bl sub_080A3954
_080A385E:
pop {r4, pc}
.align 2, 0
_080A3860: .4byte gUnk_03000FD0
thumb_func_start sub_080A3864
sub_080A3864: @ 0x080A3864
push {lr}
ldr r1, _080A3884 @ =gUnk_02000080
ldrh r0, [r1, #8]
subs r0, #1
strh r0, [r1, #8]
lsls r0, r0, #0x10
cmp r0, #0
bne _080A3880
bl sub_080A3954
movs r0, #5
movs r1, #8
bl DoFade
_080A3880:
pop {pc}
.align 2, 0
_080A3884: .4byte gUnk_02000080
thumb_func_start sub_080A3888
sub_080A3888: @ 0x080A3888
push {lr}
ldr r1, _080A38A8 @ =gUnk_03000FD0
ldr r0, _080A38AC @ =0xFFFF7FFF
str r0, [r1, #4]
movs r0, #5
movs r1, #4
bl DoFade
ldr r0, _080A38B0 @ =gUnk_02000080
ldrh r0, [r0, #8]
bl sub_08050038
bl sub_080A3954
pop {pc}
.align 2, 0
_080A38A8: .4byte gUnk_03000FD0
_080A38AC: .4byte 0xFFFF7FFF
_080A38B0: .4byte gUnk_02000080
thumb_func_start sub_080A38B4
sub_080A38B4: @ 0x080A38B4
push {lr}
movs r0, #4
movs r1, #4
bl DoFade
ldr r0, _080A38CC @ =gUnk_02000080
ldrh r0, [r0, #8]
bl sub_08050038
bl sub_080A3954
pop {pc}
.align 2, 0
_080A38CC: .4byte gUnk_02000080
thumb_func_start sub_080A38D0
sub_080A38D0: @ 0x080A38D0
push {r4, r5, r6, lr}
mov r6, r8
push {r6}
ldr r0, _080A391C @ =gUnk_03000FD0
ldrb r0, [r0]
cmp r0, #0
bne _080A3914
ldr r0, _080A3920 @ =gUnk_02021F30
movs r6, #0x80
lsls r6, r6, #4
adds r1, r6, #0
bl sub_0801D630
ldr r4, _080A3924 @ =gLCDControls
movs r0, #0
mov r8, r0
movs r5, #1
strh r5, [r4, #0x1a]
ldr r0, _080A3928 @ =gUnk_020344B0
adds r1, r6, #0
bl sub_0801D630
strh r5, [r4, #0x26]
adds r4, #0x68
movs r0, #0x80
lsls r0, r0, #5
strh r0, [r4]
ldr r0, _080A392C @ =gUnk_02000080
mov r1, r8
strb r1, [r0, #5]
movs r0, #4
movs r1, #8
bl DoFade
_080A3914:
pop {r3}
mov r8, r3
pop {r4, r5, r6, pc}
.align 2, 0
_080A391C: .4byte gUnk_03000FD0
_080A3920: .4byte gUnk_02021F30
_080A3924: .4byte gLCDControls
_080A3928: .4byte gUnk_020344B0
_080A392C: .4byte gUnk_02000080
thumb_func_start sub_080A3930
sub_080A3930: @ 0x080A3930
push {lr}
ldr r0, _080A394C @ =gUnk_03000FD0
ldrb r0, [r0]
cmp r0, #0
bne _080A3948
movs r0, #7
movs r1, #8
bl DoFade
ldr r1, _080A3950 @ =gUnk_03001000
movs r0, #2
strb r0, [r1, #3]
_080A3948:
pop {pc}
.align 2, 0
_080A394C: .4byte gUnk_03000FD0
_080A3950: .4byte gUnk_03001000
thumb_func_start sub_080A3954
sub_080A3954: @ 0x080A3954
ldr r2, _080A397C @ =gUnk_02000080
ldr r1, [r2, #0xc]
ldrb r0, [r1]
movs r3, #0
strb r0, [r2, #5]
strb r3, [r2, #6]
ldrh r0, [r1, #6]
strh r0, [r2, #0x10]
ldrh r0, [r1, #4]
strh r0, [r2, #8]
ldrh r0, [r1, #8]
strh r0, [r2, #0x12]
ldrh r0, [r1, #0xa]
strh r0, [r2, #0x14]
ldrb r0, [r1, #1]
strb r0, [r2, #0x19]
adds r1, #0xc
str r1, [r2, #0xc]
bx lr
.align 2, 0
_080A397C: .4byte gUnk_02000080
thumb_func_start sub_080A3980
sub_080A3980: @ 0x080A3980
push {lr}
ldr r0, _080A3990 @ =gUnk_03000FD0
ldrb r0, [r0]
cmp r0, #0
bne _080A398E
bl sub_080560A8
_080A398E:
pop {pc}
.align 2, 0
_080A3990: .4byte gUnk_03000FD0
thumb_func_start sub_080A3994
sub_080A3994: @ 0x080A3994
push {r4, r5, lr}
ldr r0, _080A39AC @ =gUnk_02000080
ldrb r1, [r0, #6]
adds r2, r0, #0
cmp r1, #4
bls _080A39A2
b _080A3B14
_080A39A2:
lsls r0, r1, #2
ldr r1, _080A39B0 @ =_080A39B4
adds r0, r0, r1
ldr r0, [r0]
mov pc, r0
.align 2, 0
_080A39AC: .4byte gUnk_02000080
_080A39B0: .4byte _080A39B4
_080A39B4: @ jump table
.4byte _080A39C8 @ case 0
.4byte _080A3A38 @ case 1
.4byte _080A3AB8 @ case 2
.4byte _080A3AEE @ case 3
.4byte _080A3B14 @ case 4
_080A39C8:
movs r5, #1
strb r5, [r2, #6]
movs r4, #0
movs r0, #0x1e
strh r0, [r2, #8]
strb r4, [r2, #3]
movs r0, #1
bl sub_0801DA90
bl sub_080A3210
bl sub_080A4D34
movs r0, #0xa
bl sub_0801D714
movs r0, #0
movs r1, #0
bl sub_0801D79C
movs r0, #4
bl sub_0801D7EC
movs r0, #0xc0
lsls r0, r0, #0x13
movs r1, #0x20
bl sub_0801D630
movs r0, #0
movs r1, #0
bl sub_08052418
ldr r2, _080A3A2C @ =gLCDControls
ldrh r0, [r2]
movs r3, #0xc0
lsls r3, r3, #3
adds r1, r3, #0
orrs r0, r1
strh r0, [r2]
ldr r0, _080A3A30 @ =0x00001C01
strh r0, [r2, #0x14]
ldr r0, _080A3A34 @ =0x00001D05
strh r0, [r2, #0x20]
strh r5, [r2, #0x26]
movs r0, #4
movs r1, #8
bl DoFade
b _080A3B36
.align 2, 0
_080A3A2C: .4byte gLCDControls
_080A3A30: .4byte 0x00001C01
_080A3A34: .4byte 0x00001D05
_080A3A38:
ldr r0, _080A3A50 @ =gUnk_03000FD0
ldrb r0, [r0]
cmp r0, #0
beq _080A3A42
b _080A3B36
_080A3A42:
ldrh r0, [r2, #8]
cmp r0, #0
beq _080A3A54
subs r0, #1
strh r0, [r2, #8]
b _080A3B36
.align 2, 0
_080A3A50: .4byte gUnk_03000FD0
_080A3A54:
ldrb r4, [r2, #3]
ldr r0, _080A3A68 @ =gUnk_03000FF0
ldrh r0, [r0, #2]
cmp r0, #0x40
beq _080A3A72
cmp r0, #0x40
bgt _080A3A6C
cmp r0, #1
beq _080A3A7A
b _080A3A9A
.align 2, 0
_080A3A68: .4byte gUnk_03000FF0
_080A3A6C:
cmp r0, #0x80
beq _080A3A76
b _080A3A9A
_080A3A72:
movs r4, #0
b _080A3A9A
_080A3A76:
movs r4, #1
b _080A3A9A
_080A3A7A:
cmp r4, #0
beq _080A3A82
movs r0, #4
b _080A3A8C
_080A3A82:
movs r0, #8
movs r1, #0
bl sub_08050318
movs r0, #2
_080A3A8C:
ldr r1, _080A3AB4 @ =gUnk_02000080
strb r0, [r1, #6]
movs r0, #0x3c
strh r0, [r1, #8]
movs r0, #0x6a
bl PlaySFX
_080A3A9A:
ldr r1, _080A3AB4 @ =gUnk_02000080
ldrb r0, [r1, #3]
cmp r0, r4
beq _080A3B36
strb r4, [r1, #3]
movs r0, #0
adds r1, r4, #0
bl sub_08052418
movs r0, #0x69
bl PlaySFX
b _080A3B36
.align 2, 0
_080A3AB4: .4byte gUnk_02000080
_080A3AB8:
movs r0, #0
bl sub_0807CDA4
adds r1, r0, #0
ldr r4, _080A3AD8 @ =gUnk_02000080
strb r1, [r4]
movs r0, #1
rsbs r0, r0, #0
cmp r1, r0
beq _080A3ADC
cmp r1, #1
bne _080A3B36
movs r0, #4
strb r0, [r4, #6]
b _080A3B36
.align 2, 0
_080A3AD8: .4byte gUnk_02000080
_080A3ADC:
movs r0, #0x3c
strh r0, [r4, #8]
movs r0, #9
movs r1, #0
bl sub_08050318
movs r0, #3
strb r0, [r4, #6]
b _080A3B36
_080A3AEE:
adds r1, r2, #0
ldrh r0, [r1, #8]
cmp r0, #0
beq _080A3AFC
subs r0, #1
strh r0, [r1, #8]
b _080A3B36
_080A3AFC:
ldr r0, _080A3B10 @ =gUnk_03000FF0
ldrh r1, [r0, #2]
movs r0, #0xb
ands r0, r1
cmp r0, #0
beq _080A3B36
movs r0, #1
strb r0, [r2, #6]
b _080A3B36
.align 2, 0
_080A3B10: .4byte gUnk_03000FF0
_080A3B14:
ldr r2, _080A3B38 @ =gLCDControls
ldrh r1, [r2]
ldr r0, _080A3B3C @ =0x0000FDFF
ands r0, r1
movs r4, #0
strh r0, [r2]
bl sub_08050384
movs r0, #7
movs r1, #8
bl DoFade
ldr r1, _080A3B40 @ =gUnk_03001000
movs r0, #3
strb r0, [r1, #3]
ldr r0, _080A3B44 @ =gUnk_02000080
strb r4, [r0, #6]
_080A3B36:
pop {r4, r5, pc}
.align 2, 0
_080A3B38: .4byte gLCDControls
_080A3B3C: .4byte 0x0000FDFF
_080A3B40: .4byte gUnk_03001000
_080A3B44: .4byte gUnk_02000080
thumb_func_start sub_080A3B48
sub_080A3B48: @ 0x080A3B48
push {lr}
movs r1, #0
ldr r0, _080A3B6C @ =gUnk_02002A40
ldr r3, _080A3B70 @ =0x0000012B
adds r2, r0, r3
ldrb r0, [r2]
cmp r0, #0
beq _080A3B66
_080A3B58:
adds r1, #1
cmp r1, #0x12
bhi _080A3B66
adds r0, r1, r2
ldrb r0, [r0]
cmp r0, #0
bne _080A3B58
_080A3B66:
adds r0, r1, #0
pop {pc}
.align 2, 0
_080A3B6C: .4byte gUnk_02002A40
_080A3B70: .4byte 0x0000012B
thumb_func_start sub_080A3B74
sub_080A3B74: @ 0x080A3B74
ldr r0, _080A3B80 @ =gUnk_02000080
adds r0, #0x2f
movs r1, #0
strb r1, [r0]
bx lr
.align 2, 0
_080A3B80: .4byte gUnk_02000080
+3271
View File
File diff suppressed because it is too large Load Diff
+55 -55
View File
@@ -209,7 +209,7 @@ _080A56F8:
ldr r0, _080A5708 @ =gUnk_02000080
strb r3, [r0, #3]
movs r0, #0x69
bl sub_080A3268
bl PlaySFX
b _080A575E
.align 2, 0
_080A5708: .4byte gUnk_02000080
@@ -258,7 +258,7 @@ _080A5752:
adds r0, r1, #0
bl sub_080A4E84
movs r0, #0x6a
bl sub_080A3268
bl PlaySFX
_080A575E:
ldr r0, _080A5780 @ =gUnk_02000080
ldrb r1, [r0, #3]
@@ -622,13 +622,13 @@ _080A5A10:
movs r0, #2
bl sub_080A7114
movs r0, #0x6a
bl sub_080A3268
bl PlaySFX
b _080A5A52
_080A5A2E:
movs r0, #3
bl sub_080A7114
movs r0, #0x6c
bl sub_080A3268
bl PlaySFX
b _080A5A52
_080A5A3C:
ldrb r0, [r1, #3]
@@ -639,7 +639,7 @@ _080A5A3C:
adds r1, r2, #0
bl sub_08052418
movs r0, #0x69
bl sub_080A3268
bl PlaySFX
_080A5A52:
pop {pc}
@@ -812,7 +812,7 @@ _080A5B76:
adds r1, r4, #0
bl sub_08052418
movs r0, #0x69
bl sub_080A3268
bl PlaySFX
_080A5B8E:
cmp r5, #0
beq _080A5BB6
@@ -820,7 +820,7 @@ _080A5B8E:
bne _080A5BAA
movs r0, #7
movs r1, #0x20
bl sub_08050054
bl DoFade
movs r0, #0x3c
strh r0, [r6, #8]
movs r0, #2
@@ -828,7 +828,7 @@ _080A5B8E:
b _080A5BB6
_080A5BAA:
movs r0, #0x6c
bl sub_080A3268
bl PlaySFX
movs r0, #2
bl sub_080A4E84
_080A5BB6:
@@ -848,7 +848,7 @@ sub_080A5BB8: @ 0x080A5BB8
strb r0, [r1, #1]
movs r0, #6
movs r1, #8
bl sub_08050054
bl DoFade
movs r0, #2
bl sub_080A4E84
ldr r1, _080A5BEC @ =gUnk_02034490
@@ -983,7 +983,7 @@ _080A5CE6:
adds r0, r2, #0
bl sub_080A5CFC
movs r0, #0x69
bl sub_080A3268
bl PlaySFX
_080A5CFA:
pop {pc}
@@ -1551,7 +1551,7 @@ _080A6164:
beq _080A6178
strb r2, [r1, #3]
movs r0, #0x69
bl sub_080A3268
bl PlaySFX
_080A6178:
pop {pc}
.align 2, 0
@@ -1765,7 +1765,7 @@ _080A6326:
cmp r0, #0
beq _080A635A
movs r0, #0x6a
bl sub_080A3268
bl PlaySFX
movs r0, #6
bl sub_080A4E84
b _080A635A
@@ -1794,7 +1794,7 @@ _080A635A:
ldr r0, _080A6374 @ =gUnk_02000080
strb r4, [r0, #3]
movs r0, #0x69
bl sub_080A3268
bl PlaySFX
_080A6368:
ldr r0, _080A6374 @ =gUnk_02000080
ldrb r0, [r0, #3]
@@ -2059,7 +2059,7 @@ sub_080A6534: @ 0x080A6534
bl sub_080A7114
movs r0, #4
movs r1, #8
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_080A6590: .4byte gLCDControls
@@ -2093,7 +2093,7 @@ sub_080A65AC: @ 0x080A65AC
movs r0, #0x20
strb r0, [r1]
adds r0, #0xe3
bl sub_080A3268
bl PlaySFX
_080A65DA:
ldrh r0, [r4, #8]
subs r0, #1
@@ -2862,7 +2862,7 @@ _080A6BD4:
bl sub_080A7114
movs r0, #4
movs r1, #8
bl sub_08050054
bl DoFade
pop {r3}
mov r8, r3
pop {r4, r5, r6, r7, pc}
@@ -2913,7 +2913,7 @@ _080A6C50:
_080A6C58: .4byte gUnk_03000FF0
_080A6C5C:
ldr r0, _080A6C6C @ =0x00000103
bl sub_080A3268
bl PlaySFX
_080A6C62:
ldr r1, _080A6C70 @ =gUnk_02000080
ldrh r0, [r1, #8]
@@ -2963,7 +2963,7 @@ sub_080A6CA8: @ 0x080A6CA8
bl sub_080A7114
movs r0, #4
movs r1, #8
bl sub_08050054
bl DoFade
pop {pc}
.align 2, 0
_080A6CD4: .4byte gUnk_02000080
@@ -3045,7 +3045,7 @@ _080A6D58:
beq _080A6D6E
strb r0, [r1, #3]
movs r0, #0x69
bl sub_080A3268
bl PlaySFX
_080A6D6E:
pop {r4, pc}
.align 2, 0
@@ -3138,7 +3138,7 @@ sub_080A6DF8: @ 0x080A6DF8
bl sub_080A7114
movs r0, #5
movs r1, #8
bl sub_08050054
bl DoFade
b _080A6E3A
.align 2, 0
_080A6E14: .4byte gUnk_02000080
@@ -3155,7 +3155,7 @@ _080A6E18:
movs r0, #0
strb r0, [r1]
movs r0, #0x6c
bl sub_080A3268
bl PlaySFX
_080A6E3A:
pop {pc}
.align 2, 0
@@ -3581,7 +3581,7 @@ _080A716C:
strb r0, [r1, #4]
movs r0, #5
movs r1, #0x20
bl sub_08050054
bl DoFade
ldr r0, _080A71A0 @ =gUnk_02018EB0
strb r4, [r0]
strb r4, [r0, #1]
@@ -3633,7 +3633,7 @@ sub_080A71DC: @ 0x080A71DC
strb r0, [r1]
movs r0, #5
movs r1, #0x20
bl sub_08050054
bl DoFade
pop {pc}
.align 2, 0
_080A71F0: .4byte gUnk_02032EC0
@@ -3906,7 +3906,7 @@ _080A73B4:
beq _080A74A8
adds r0, r1, #0
ldrh r1, [r5, #0xa]
bl sub_08050054
bl DoFade
b _080A74AE
.align 2, 0
_080A7468: .4byte gUnk_03000FD0
@@ -4177,7 +4177,7 @@ _080A7692:
lsls r0, r0, #1
adds r0, r0, r4
ldrh r0, [r0]
bl sub_080A3268
bl PlaySFX
b _080A76C2
.align 2, 0
_080A76B0: .4byte gUnk_03003F80
@@ -4189,7 +4189,7 @@ _080A76BC:
_080A76C2:
movs r0, #0x87
lsls r0, r0, #1
bl sub_080A3268
bl PlaySFX
pop {r4, r5, pc}
thumb_func_start sub_080A76CC
@@ -4253,7 +4253,7 @@ _080A7728:
beq _080A77C4
movs r0, #0x8b
lsls r0, r0, #1
bl sub_080A3268
bl PlaySFX
b _080A77C4
.align 2, 0
_080A7740: .4byte gLinkEntity
@@ -4417,7 +4417,7 @@ _080A7868:
cmp r0, #0
beq _080A7880
movs r0, #0x77
bl sub_080A3268
bl PlaySFX
_080A7880:
ldrb r0, [r4, #0x1e]
cmp r0, #0x8a
@@ -5015,7 +5015,7 @@ _080A7CDC:
movs r1, #0x78
bl sub_0805E4E0
ldr r0, _080A7CF8 @ =0x0000011B
bl sub_080A3268
bl PlaySFX
_080A7CF4:
pop {r4, r5, r6, pc}
.align 2, 0
@@ -5202,7 +5202,7 @@ _080A7E14:
ldr r0, [r5, #4]
str r0, [r4, #0x48]
adds r0, r4, #0
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
_080A7E4A:
movs r0, #1
_080A7E4C:
@@ -7401,7 +7401,7 @@ sub_080A8E28: @ 0x080A8E28
movs r1, #0x51
bl sub_08004260
ldr r0, _080A8E84 @ =0x000001B5
bl sub_080A3268
bl PlaySFX
_080A8E6E:
ldrb r4, [r5, #0xa]
cmp r4, #2
@@ -8099,7 +8099,7 @@ _080A93BE:
strb r0, [r4, #0x10]
str r2, [r5, #0x54]
movs r0, #0xfc
bl sub_080A3268
bl PlaySFX
_080A93DA:
pop {r4, r5, pc}
@@ -8284,7 +8284,7 @@ sub_080A9518: @ 0x080A9518
movs r1, #0
bl sub_08004260
ldr r0, _080A953C @ =0x00000149
bl sub_080A3268
bl PlaySFX
pop {pc}
.align 2, 0
_080A953C: .4byte 0x00000149
@@ -8557,7 +8557,7 @@ _080A9718:
bl sub_08004260
_080A9756:
ldr r0, _080A9768 @ =0x000001B5
bl sub_080A3268
bl PlaySFX
pop {r4, r5, pc}
.align 2, 0
_080A9760: .4byte gLinkEntity
@@ -8678,7 +8678,7 @@ _080A9804:
strb r0, [r1]
_080A983C:
ldr r0, _080A98B8 @ =0x00000127
bl sub_080A3268
bl PlaySFX
adds r0, r4, #0
bl sub_080A99F0
_080A9848:
@@ -8730,7 +8730,7 @@ _080A989A:
_080A98A4:
movs r0, #0xb2
lsls r0, r0, #1
bl sub_080A3268
bl PlaySFX
ldrh r0, [r5]
cmp r0, #0
bne _080A98BC
@@ -10441,7 +10441,7 @@ sub_080AA534: @ 0x080AA534
adds r2, #0x38
movs r1, #3
strb r1, [r2]
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
pop {pc}
thumb_func_start sub_080AA544
@@ -11432,7 +11432,7 @@ _080AACB4: .4byte gUnk_03003F80
_080AACB8: .4byte gLinkEntity
_080AACBC:
ldr r0, _080AACDC @ =0x00000119
bl sub_080A3268
bl PlaySFX
ldr r0, [r4, #0x50]
adds r1, r4, #0
bl sub_0806FA24
@@ -12346,7 +12346,7 @@ sub_080AB318: @ 0x080AB318
movs r1, #0x51
bl sub_08004260
ldr r0, _080AB3E0 @ =0x000001B5
bl sub_080A3268
bl PlaySFX
adds r0, r6, #0
bl sub_080AB4F8
movs r1, #0x2e
@@ -13653,7 +13653,7 @@ sub_080ABCC4: @ 0x080ABCC4
movs r1, #0
bl sub_08004260
ldr r0, _080ABD40 @ =0x0000014B
bl sub_080A3268
bl PlaySFX
pop {r4, r5, pc}
.align 2, 0
_080ABD3C: .4byte gRoomControls
@@ -13815,7 +13815,7 @@ _080ABE56:
movs r1, #0
bl sub_08004260
ldr r0, _080ABE84 @ =0x0000012D
bl sub_080A3268
bl PlaySFX
pop {r4, r5, pc}
.align 2, 0
_080ABE84: .4byte 0x0000012D
@@ -13876,7 +13876,7 @@ _080ABEEC:
movs r1, #0
bl sub_08004260
ldr r0, _080ABF00 @ =0x00000193
bl sub_080A3268
bl PlaySFX
pop {r4, pc}
.align 2, 0
_080ABEFC: .4byte 0x0000013F
@@ -13930,7 +13930,7 @@ sub_080ABF40: @ 0x080ABF40
movs r1, #0
bl sub_08004260
ldr r0, _080ABFA4 @ =0x00000199
bl sub_080A3268
bl PlaySFX
_080ABF66:
ldrh r2, [r4, #0x36]
movs r0, #0x36
@@ -14067,7 +14067,7 @@ _080AC058:
strh r0, [r4, #0x36]
ldr r0, _080AC070 @ =0x00000149
_080AC06A:
bl sub_080A3268
bl PlaySFX
pop {r4, pc}
.align 2, 0
_080AC070: .4byte 0x00000149
@@ -14102,7 +14102,7 @@ _080AC084:
cmp r0, #0
bne _080AC0B2
ldr r0, _080AC0E8 @ =0x00000149
bl sub_080A3268
bl PlaySFX
_080AC0B2:
adds r0, r4, #0
bl sub_08004274
@@ -14126,7 +14126,7 @@ _080AC0B2:
lsls r0, r0, #1
strh r0, [r4, #0x24]
adds r0, #0x13
bl sub_080A3268
bl PlaySFX
b _080AC0F8
.align 2, 0
_080AC0E8: .4byte 0x00000149
@@ -14638,7 +14638,7 @@ _080AC4A2:
strb r1, [r0]
movs r0, #0x8b
lsls r0, r0, #1
bl sub_080A3268
bl PlaySFX
b _080AC50A
_080AC4BE:
ldrb r0, [r4, #0xf]
@@ -15257,7 +15257,7 @@ sub_080AC928: @ 0x080AC928
movs r0, #2
strb r0, [r1]
adds r0, r4, #0
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
adds r0, r4, #0
movs r1, #0
bl sub_08004260
@@ -15317,7 +15317,7 @@ _080AC964:
strb r0, [r5, #0x15]
movs r0, #0x97
lsls r0, r0, #1
bl sub_080A3268
bl PlaySFX
_080AC9C0:
pop {r4, r5, pc}
.align 2, 0
@@ -15451,7 +15451,7 @@ _080ACAB0:
_080ACAB6:
strb r0, [r4, #0x15]
movs r0, #0xd8
bl sub_080A3268
bl PlaySFX
b _080ACAC4
_080ACAC0:
bl sub_0805E780
@@ -15473,7 +15473,7 @@ sub_080ACAC8: @ 0x080ACAC8
movs r1, #7
bl sub_08004260
ldr r0, _080ACAEC @ =0x00000199
bl sub_080A3268
bl PlaySFX
pop {pc}
.align 2, 0
_080ACAE8: .4byte 0x0000FFFC
@@ -16377,10 +16377,10 @@ _080AD188:
bne _080AD196
movs r0, #0x82
lsls r0, r0, #1
bl sub_080A3268
bl PlaySFX
_080AD196:
adds r0, r4, #0
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
movs r0, #3
strb r0, [r5, #0xd]
ldrb r2, [r4, #0x19]
@@ -16418,7 +16418,7 @@ _080AD1DA:
_080AD1E0:
movs r0, #0x82
lsls r0, r0, #1
bl sub_080A3268
bl PlaySFX
ldrb r0, [r4, #0xe]
adds r0, #1
strb r0, [r4, #0xe]
@@ -16455,7 +16455,7 @@ _080AD220:
cmp r5, #0
beq _080AD244
movs r0, #0x79
bl sub_080A3268
bl PlaySFX
adds r0, r4, #0
bl sub_080AD27C
b _080AD26E
+1 -1
View File
@@ -386,7 +386,7 @@ _080ADBE0:
cmp r5, #0
beq _080ADBF2
adds r0, r5, #0
bl sub_080A3268
bl PlaySFX
_080ADBF2:
movs r0, #0xf
strb r0, [r4, #0xf]
+50
View File
@@ -0,0 +1,50 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0806924C
sub_0806924C: @ 0x0806924C
push {r4, lr}
adds r4, r0, #0
adds r0, #0x39
movs r2, #0
ldrsb r2, [r0, r2]
cmp r2, #0
beq _0806929C
ldr r0, _08069278 @ =gUnk_03003F80
ldr r0, [r0, #0x30]
movs r1, #0x80
ands r0, r1
cmp r0, #0
beq _08069284
cmp r2, #2
bne _0806927C
movs r0, #4
strb r0, [r4, #0xc]
adds r0, r4, #0
bl sub_0806F118
b _0806928E
.align 2, 0
_08069278: .4byte gUnk_03003F80
_0806927C:
adds r0, r4, #0
bl sub_080691F8
b _0806928E
_08069284:
adds r0, r4, #0
bl sub_080691F8
bl sub_080791D0
_0806928E:
movs r0, #0xd4
bl PlaySFX
adds r1, r4, #0
adds r1, #0x39
movs r0, #0
strb r0, [r1]
_0806929C:
pop {r4, pc}
.align 2, 0
+32
View File
@@ -0,0 +1,32 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0802B204
sub_0802B204: @ 0x0802B204
push {r4, r5, lr}
adds r5, r0, #0
movs r1, #0xa0
lsls r1, r1, #6
bl sub_080044EC
cmp r0, #1
bne _0802B232
movs r0, #0x22
movs r1, #1
bl CreateEnemy
adds r4, r0, #0
cmp r4, #0
beq _0802B22E
adds r0, r5, #0
adds r1, r4, #0
bl sub_0806FA24
ldr r0, [r5, #0x50]
str r0, [r4, #0x50]
_0802B22E:
bl sub_0805E780
_0802B232:
pop {r4, r5, pc}
+44
View File
@@ -0,0 +1,44 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0802ADDC
sub_0802ADDC: @ 0x0802ADDC
push {r4, r5, lr}
adds r4, r0, #0
ldrb r1, [r4, #0xa]
adds r1, #2
movs r0, #0x1b
bl CreateEnemy
adds r5, r0, #0
cmp r5, #0
beq _0802AE20
adds r0, r4, #0
bl sub_0802B234
rsbs r1, r0, #0
orrs r1, r0
lsrs r1, r1, #0x1f
strb r1, [r5, #0xb]
str r4, [r5, #0x50]
str r5, [r4, #0x54]
adds r0, r4, #0
adds r1, r5, #0
bl sub_0806FA24
adds r1, r4, #0
adds r1, #0x81
movs r0, #1
strb r0, [r1]
ldrb r0, [r4, #0xa]
cmp r0, #0
bne _0802AE20
subs r1, #7
ldrb r0, [r1]
adds r0, #1
strb r0, [r1]
_0802AE20:
pop {r4, r5, pc}
.align 2, 0
+215
View File
@@ -0,0 +1,215 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_08018FE4
sub_08018FE4: @ 0x08018FE4
push {r4, r5, r6, lr}
adds r4, r0, #0
movs r3, #1
movs r0, #1
strb r0, [r4, #0xc]
ldrb r5, [r4, #0xa]
cmp r5, #0
bne _08018FF6
b _080190FC
_08018FF6:
ldrb r1, [r4, #0x18]
subs r0, #5
ands r0, r1
orrs r0, r3
strb r0, [r4, #0x18]
ldrb r0, [r4, #0x10]
movs r1, #0x80
orrs r0, r1
strb r0, [r4, #0x10]
movs r0, #0x6a
str r0, [r4, #0x74]
ldrb r0, [r4, #0xb]
adds r1, r4, #0
adds r1, #0x40
strb r0, [r1]
movs r0, #0xa6
strh r0, [r4, #0x12]
ldrb r0, [r1]
adds r6, r1, #0
cmp r0, #0xe
bne _08019026
movs r0, #0x80
lsls r0, r0, #3
b _0801902A
_08019026:
movs r0, #0xc0
lsls r0, r0, #2
_0801902A:
strh r0, [r4, #0x24]
ldrb r0, [r4, #0x14]
lsls r0, r0, #2
strb r0, [r4, #0x15]
ldr r2, _0801905C @ =gLinkEntity
adds r0, r2, #0
adds r0, #0x3c
ldrb r0, [r0]
adds r0, #1
adds r1, r4, #0
adds r1, #0x3c
strb r0, [r1]
adds r0, r2, #0
adds r0, #0x3b
ldrb r0, [r0]
subs r1, #1
strb r0, [r1]
adds r0, r4, #0
adds r0, #0x38
ldrb r0, [r0]
adds r5, r2, #0
cmp r0, #2
bne _08019060
movs r0, #1
b _08019062
.align 2, 0
_0801905C: .4byte gLinkEntity
_08019060:
movs r0, #0
_08019062:
strb r0, [r4, #0xb]
ldrb r1, [r5, #0x1b]
lsrs r1, r1, #6
lsls r1, r1, #6
ldrb r2, [r4, #0x1b]
movs r0, #0x3f
ands r0, r2
orrs r0, r1
strb r0, [r4, #0x1b]
ldrb r0, [r4, #0x14]
lsrs r0, r0, #1
lsls r3, r0, #1
adds r3, r3, r0
lsls r3, r3, #2
ldr r0, _080190F8 @ =gUnk_080B3E40
adds r3, r3, r0
movs r0, #0
ldrsb r0, [r3, r0]
ldrh r1, [r5, #0x2e]
adds r0, r0, r1
strh r0, [r4, #0x2e]
movs r0, #1
ldrsb r0, [r3, r0]
ldrh r5, [r5, #0x32]
adds r0, r0, r5
strh r0, [r4, #0x32]
ldrb r1, [r3, #2]
movs r0, #1
ands r1, r0
lsls r1, r1, #6
ldrb r2, [r4, #0x18]
movs r0, #0x41
rsbs r0, r0, #0
ands r0, r2
orrs r0, r1
strb r0, [r4, #0x18]
ldrb r1, [r3, #3]
lsls r1, r1, #7
movs r2, #0x7f
ands r0, r2
orrs r0, r1
strb r0, [r4, #0x18]
ldrb r0, [r3, #6]
adds r5, r4, #0
adds r5, #0x58
strb r0, [r5]
movs r0, #4
ldrsb r0, [r3, r0]
str r0, [r4, #0x6c]
movs r0, #5
ldrsb r0, [r3, r0]
str r0, [r4, #0x70]
ldr r0, [r3, #8]
str r0, [r4, #0x48]
adds r0, r4, #0
bl sub_0801766C
ldrb r0, [r6]
cmp r0, #0xe
bne _080190E8
ldrb r0, [r5]
adds r0, #6
strb r0, [r5]
adds r1, r4, #0
adds r1, #0x60
movs r0, #0
strh r0, [r1]
_080190E8:
ldrb r1, [r5]
adds r0, r4, #0
bl sub_08004260
movs r0, #0xfc
bl PlaySFX
b _08019178
.align 2, 0
_080190F8: .4byte gUnk_080B3E40
_080190FC:
ldrb r1, [r4, #0x11]
movs r0, #0x10
rsbs r0, r0, #0
ands r0, r1
movs r1, #6
orrs r0, r1
strb r0, [r4, #0x11]
movs r0, #0xff
strb r0, [r4, #0x1e]
ldr r2, _08019168 @ =gUnk_080B3E40
ldrb r1, [r4, #0x14]
lsrs r1, r1, #1
lsls r0, r1, #1
adds r0, r0, r1
lsls r0, r0, #2
adds r0, r0, r2
ldrb r1, [r0, #2]
ands r1, r3
lsls r1, r1, #6
ldrb r2, [r4, #0x18]
movs r0, #0x41
rsbs r0, r0, #0
ands r0, r2
orrs r0, r1
strb r0, [r4, #0x18]
ldr r0, _0801916C @ =gUnk_03003F80
str r4, [r0, #0x2c]
adds r0, r4, #0
movs r1, #1
movs r2, #3
bl sub_080AE008
adds r0, r4, #0
bl sub_08079BD8
adds r0, r4, #0
adds r0, #0x68
ldrb r0, [r0]
cmp r0, #0xa
bne _08019170
movs r0, #0x3c
str r0, [r4, #0x78]
ldrb r1, [r4, #0xa]
movs r0, #0x43
movs r2, #1
bl CreateObject
adds r1, r0, #0
cmp r1, #0
beq _08019172
adds r0, r4, #0
bl sub_0806FA24
b _08019172
.align 2, 0
_08019168: .4byte gUnk_080B3E40
_0801916C: .4byte gUnk_03003F80
_08019170:
str r5, [r4, #0x78]
_08019172:
adds r0, r4, #0
bl sub_0801917C
_08019178:
pop {r4, r5, r6, pc}
.align 2, 0
+120
View File
@@ -0,0 +1,120 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0802999C
sub_0802999C: @ 0x0802999C
push {r4, r5, r6, r7, lr}
adds r7, r0, #0
ldr r0, _08029A90 @ =gUnk_03003DBC
ldrb r0, [r0]
cmp r0, #0x43
bhi _08029A8E
movs r0, #0x18
movs r1, #1
bl CreateEnemy
adds r4, r0, #0
str r7, [r4, #0x50]
adds r0, r7, #0
adds r1, r4, #0
movs r2, #0
movs r3, #5
bl PositionRelative
str r4, [r7, #0x54]
movs r0, #0x18
movs r1, #2
bl CreateEnemy
adds r5, r0, #0
str r7, [r5, #0x50]
adds r0, r7, #0
adds r1, r5, #0
movs r2, #0
movs r3, #4
bl PositionRelative
str r5, [r4, #0x54]
movs r0, #0x18
movs r1, #3
bl CreateEnemy
adds r4, r0, #0
str r7, [r4, #0x50]
adds r0, r7, #0
adds r1, r4, #0
movs r2, #0
movs r3, #3
bl PositionRelative
str r4, [r5, #0x54]
movs r0, #0x18
movs r1, #4
bl CreateEnemy
adds r5, r0, #0
str r7, [r5, #0x50]
adds r0, r7, #0
adds r1, r5, #0
movs r2, #0
movs r3, #2
bl PositionRelative
str r5, [r4, #0x54]
movs r0, #0x18
movs r1, #5
bl CreateEnemy
adds r6, r0, #0
str r7, [r6, #0x50]
adds r0, r7, #0
adds r1, r6, #0
movs r2, #0
movs r3, #1
bl PositionRelative
str r6, [r5, #0x54]
movs r0, #0x18
movs r1, #6
bl CreateEnemy
adds r4, r0, #0
str r7, [r4, #0x54]
str r7, [r4, #0x50]
adds r0, r7, #0
adds r1, r4, #0
movs r2, #0
movs r3, #0
bl PositionRelative
str r4, [r6, #0x54]
movs r4, #1
strb r4, [r7, #0xc]
ldrb r1, [r7, #0x10]
movs r0, #0x80
orrs r0, r1
strb r0, [r7, #0x10]
bl sub_08000E50
movs r1, #0x18
ands r0, r1
strb r0, [r7, #0x15]
movs r2, #0
movs r0, #0xa0
strh r0, [r7, #0x24]
movs r0, #0xff
strb r0, [r7, #0x14]
ldr r0, [r7, #0x30]
adds r0, #6
str r0, [r7, #0x30]
str r7, [r7, #0x50]
adds r1, r7, #0
adds r1, #0x74
movs r0, #1
rsbs r0, r0, #0
strb r0, [r1]
adds r0, r7, #0
adds r0, #0x75
strb r2, [r0]
adds r0, #2
strb r4, [r0]
adds r0, r7, #0
bl sub_08029E0C
adds r0, r7, #0
bl sub_08029EEC
_08029A8E:
pop {r4, r5, r6, r7, pc}
.align 2, 0
_08029A90: .4byte gUnk_03003DBC
+100
View File
@@ -0,0 +1,100 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_08033F3C
sub_08033F3C: @ 0x08033F3C
push {r4, r5, lr}
adds r4, r0, #0
ldr r0, _08033F64 @ =gUnk_03003DBC
ldrb r0, [r0]
cmp r0, #0x42
bhi _08033FFA
ldr r0, _08033F68 @ =gUnk_030010A0
adds r0, #0x38
ldrb r0, [r0]
cmp r0, #0
beq _08033F6C
adds r0, r4, #0
bl sub_08034420
adds r1, r4, #0
adds r1, #0x81
movs r0, #1
strb r0, [r1]
b _08033F70
.align 2, 0
_08033F64: .4byte gUnk_03003DBC
_08033F68: .4byte gUnk_030010A0
_08033F6C:
movs r0, #1
strb r0, [r4, #0xc]
_08033F70:
ldrb r1, [r4, #0x18]
movs r0, #4
rsbs r0, r0, #0
ands r0, r1
movs r1, #1
orrs r0, r1
strb r0, [r4, #0x18]
adds r3, r4, #0
adds r3, #0x6d
ldrb r0, [r3]
movs r2, #0
orrs r1, r0
strb r1, [r3]
adds r0, r4, #0
adds r0, #0x80
strb r2, [r0]
adds r0, r4, #0
movs r1, #0
bl sub_08004260
movs r0, #0x36
movs r1, #1
bl CreateEnemy
adds r5, r0, #0
str r4, [r5, #0x50]
movs r0, #0x7e
movs r1, #0
movs r2, #0
bl CreateObject
str r4, [r0, #0x50]
ldr r0, _08033FD0 @ =gUnk_030010A0
adds r0, #0x39
ldrb r1, [r0]
cmp r1, #0
bne _08033FD4
movs r0, #0xd
strb r0, [r4, #0xc]
strb r1, [r4, #0xd]
movs r0, #0xfc
strb r0, [r4, #0xe]
ldrb r1, [r4, #0x10]
movs r0, #0x7f
ands r0, r1
strb r0, [r4, #0x10]
b _08033FFA
.align 2, 0
_08033FD0: .4byte gUnk_030010A0
_08033FD4:
movs r0, #0x44
movs r1, #0
bl CreateEnemy
str r4, [r0, #0x50]
str r4, [r0, #0x78]
str r0, [r4, #0x74]
movs r0, #0x44
movs r1, #1
bl CreateEnemy
str r4, [r0, #0x50]
str r5, [r0, #0x78]
str r0, [r4, #0x78]
movs r0, #0x36
movs r1, #4
bl CreateEnemy
str r4, [r0, #0x50]
_08033FFA:
pop {r4, r5, pc}
+161
View File
@@ -0,0 +1,161 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_08023CE0
sub_08023CE0: @ 0x08023CE0
push {r4, lr}
adds r4, r0, #0
ldrb r0, [r4, #0xc]
cmp r0, #1
beq _08023D48
cmp r0, #1
bgt _08023CF4
cmp r0, #0
beq _08023CFA
b _08023DC0
_08023CF4:
cmp r0, #2
beq _08023D6E
b _08023DC0
_08023CFA:
adds r0, r4, #0
bl sub_0804A720
ldrb r1, [r4, #0xb]
cmp r1, #1
bne _08023D1C
movs r0, #2
strb r0, [r4, #0xc]
ldrb r0, [r4, #0xe]
cmp r0, #0
bne _08023D12
strb r1, [r4, #0xe]
_08023D12:
ldrb r0, [r4, #0x18]
movs r1, #3
orrs r0, r1
strb r0, [r4, #0x18]
b _08023D20
_08023D1C:
movs r0, #1
strb r0, [r4, #0xc]
_08023D20:
ldr r0, _08023D44 @ =0x0000FF80
strh r0, [r4, #0x36]
ldrb r2, [r4, #0x19]
movs r1, #0x3f
adds r0, r1, #0
ands r0, r2
movs r2, #0x40
orrs r0, r2
strb r0, [r4, #0x19]
ldrb r0, [r4, #0x1b]
ands r1, r0
orrs r1, r2
strb r1, [r4, #0x1b]
adds r0, r4, #0
movs r1, #6
bl sub_08004260
b _08023E0A
.align 2, 0
_08023D44: .4byte 0x0000FF80
_08023D48:
adds r0, r4, #0
movs r1, #1
movs r2, #0x20
bl sub_08049F64
cmp r0, #0
beq _08023E0A
movs r0, #2
strb r0, [r4, #0xc]
ldrb r0, [r4, #0xe]
cmp r0, #0
bne _08023D64
movs r0, #8
strb r0, [r4, #0xe]
_08023D64:
ldrb r0, [r4, #0x18]
movs r1, #3
orrs r0, r1
strb r0, [r4, #0x18]
b _08023E0A
_08023D6E:
ldrb r0, [r4, #0xe]
cmp r0, #0
beq _08023D94
subs r0, #1
strb r0, [r4, #0xe]
lsls r0, r0, #0x18
cmp r0, #0
bne _08023E0A
ldr r0, _08023D90 @ =0x0000012D
bl sub_08004488
adds r0, r4, #0
movs r1, #4
bl sub_08004260
b _08023E0A
.align 2, 0
_08023D90: .4byte 0x0000012D
_08023D94:
movs r1, #0xc0
lsls r1, r1, #5
adds r0, r4, #0
bl sub_08003FC4
cmp r0, #0
bne _08023E0A
movs r0, #3
strb r0, [r4, #0xc]
ldrb r1, [r4, #0x18]
subs r0, #7
ands r0, r1
movs r1, #1
orrs r0, r1
strb r0, [r4, #0x18]
movs r0, #0x84
bl sub_08004488
adds r0, r4, #0
bl UpdateSpriteOrderAndFlip
b _08023E0A
_08023DC0:
adds r0, r4, #0
bl sub_08004274
adds r2, r4, #0
adds r2, #0x5a
ldrb r1, [r2]
cmp r1, #0
beq _08023E0A
movs r0, #0x80
ands r0, r1
cmp r0, #0
beq _08023DF2
movs r0, #0x10
movs r1, #1
bl CreateEnemy
adds r1, r0, #0
cmp r1, #0
beq _08023E0A
adds r0, r4, #0
bl sub_0804A4E4
bl sub_0805E780
b _08023E0A
_08023DF2:
ldr r1, _08023E0C @ =gUnk_080CBDF4
ldrb r0, [r2]
subs r0, #1
adds r0, r0, r1
ldrb r0, [r0]
lsls r0, r0, #0x18
asrs r0, r0, #0x18
ldrh r1, [r4, #0x32]
adds r0, r0, r1
movs r1, #0
strh r0, [r4, #0x32]
strb r1, [r2]
_08023E0A:
pop {r4, pc}
.align 2, 0
_08023E0C: .4byte gUnk_080CBDF4
+47
View File
@@ -0,0 +1,47 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0806E65C
sub_0806E65C: @ 0x0806E65C
push {r4, lr}
adds r4, r0, #0
adds r0, #0x39
movs r2, #0
ldrsb r2, [r0, r2]
cmp r2, #0
beq _0806E6A6
ldr r0, _0806E688 @ =gUnk_03003F80
ldr r0, [r0, #0x30]
movs r1, #0x80
ands r0, r1
cmp r0, #0
beq _0806E694
cmp r2, #2
bne _0806E68C
movs r0, #4
strb r0, [r4, #0xc]
adds r0, r4, #0
bl sub_0806F118
b _0806E698
.align 2, 0
_0806E688: .4byte gUnk_03003F80
_0806E68C:
adds r0, r4, #0
bl sub_0806E6A8
b _0806E698
_0806E694:
bl sub_080791D0
_0806E698:
movs r0, #0xd5
bl PlaySFX
adds r1, r4, #0
adds r1, #0x39
movs r0, #0
strb r0, [r1]
_0806E6A6:
pop {r4, pc}
+128
View File
@@ -0,0 +1,128 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_08028CE8
sub_08028CE8: @ 0x08028CE8
push {r4, r5, r6, r7, lr}
adds r5, r0, #0
ldr r6, [r5, #0x7c]
ldr r0, _08028D30 @ =gTextBox
ldrb r1, [r0]
movs r0, #0x7f
ands r0, r1
cmp r0, #0
bne _08028DCC
adds r0, r5, #0
bl sub_0802915C
cmp r0, #0
beq _08028DCC
bl sub_08056338
cmp r0, #0
bne _08028DCC
ldr r0, _08028D34 @ =gUnk_02002A40
adds r0, #0xc0
ldrh r1, [r6, #2]
ldrh r0, [r0]
cmp r1, r0
bhi _08028DC0
adds r0, r5, #0
bl sub_080291DC
cmp r0, #0
beq _08028D3C
ldr r0, _08028D38 @ =0x00002904
bl TextboxTryNoOverlap
movs r0, #0
bl sub_08078A90
b _08028DCC
.align 2, 0
_08028D30: .4byte gTextBox
_08028D34: .4byte gUnk_02002A40
_08028D38: .4byte 0x00002904
_08028D3C:
ldrh r0, [r6, #2]
rsbs r0, r0, #0
bl ModRupees
ldrb r0, [r6]
lsrs r7, r0, #2
cmp r7, #1
beq _08028D9C
cmp r7, #1
bgt _08028D56
cmp r7, #0
beq _08028D5C
b _08028DCC
_08028D56:
cmp r7, #2
beq _08028DAA
b _08028DCC
_08028D5C:
ldrb r1, [r6, #9]
cmp r1, #0xff
bne _08028D70
ldr r4, _08028D98 @ =gUnk_080CC9C0
bl sub_08000E50
movs r1, #7
ands r1, r0
adds r1, r1, r4
ldrb r1, [r1]
_08028D70:
ldrb r0, [r6, #8]
movs r2, #0
bl sub_080A7C00
movs r0, #6
strb r0, [r5, #0xc]
movs r0, #4
strb r0, [r5, #0xe]
adds r0, r5, #0
adds r0, #0x81
strb r7, [r0]
adds r0, r5, #0
movs r1, #3
bl sub_080290E0
movs r0, #0x87
bl sub_0807CCB4
b _08028DE2
.align 2, 0
_08028D98: .4byte gUnk_080CC9C0
_08028D9C:
ldrb r0, [r6, #8]
ldrb r1, [r6, #9]
movs r2, #0
bl sub_080A7C00
movs r0, #4
b _08028DB6
_08028DAA:
ldrb r0, [r6, #8]
ldrb r1, [r6, #9]
movs r2, #0
bl sub_080A7C00
movs r0, #8
_08028DB6:
strb r0, [r5, #0xe]
adds r0, r5, #0
bl sub_0802922C
b _08028DE2
_08028DC0:
ldr r0, _08028DE4 @ =0x00002903
bl TextboxTryNoOverlap
movs r0, #0
bl sub_08078A90
_08028DCC:
adds r0, r5, #0
bl sub_0800445C
movs r0, #4
strb r0, [r5, #0xc]
movs r0, #0x30
strb r0, [r5, #0xe]
adds r0, r5, #0
movs r1, #0
bl sub_080290E0
_08028DE2:
pop {r4, r5, r6, r7, pc}
.align 2, 0
_08028DE4: .4byte 0x00002903
+51
View File
@@ -0,0 +1,51 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0806A028
sub_0806A028: @ 0x0806A028
push {r4, lr}
adds r4, r0, #0
adds r0, #0x39
movs r2, #0
ldrsb r2, [r0, r2]
cmp r2, #0
beq _0806A07E
ldr r0, _0806A054 @ =gUnk_03003F80
ldr r0, [r0, #0x30]
movs r1, #0x80
ands r0, r1
cmp r0, #0
beq _0806A060
cmp r2, #2
bne _0806A058
movs r0, #6
strb r0, [r4, #0xc]
adds r0, r4, #0
bl sub_0806F118
b _0806A076
.align 2, 0
_0806A054: .4byte gUnk_03003F80
_0806A058:
adds r0, r4, #0
bl sub_0806A080
b _0806A076
_0806A060:
adds r0, r4, #0
bl sub_08069FBC
adds r0, r4, #0
bl sub_0806A080
movs r0, #0xd1
bl PlaySFX
bl sub_080791D0
_0806A076:
adds r1, r4, #0
adds r1, #0x39
movs r0, #0
strb r0, [r1]
_0806A07E:
pop {r4, pc}
+204
View File
@@ -0,0 +1,204 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0801C6B0
sub_0801C6B0: @ 0x0801C6B0
push {r4, r5, r6, r7, lr}
mov r7, r8
push {r7}
ldr r2, _0801C6CC @ =gUnk_0200AF00
ldrb r1, [r2, #1]
movs r0, #0x10
ands r0, r1
cmp r0, #0
beq _0801C6D0
bl sub_0801C824
bl sub_0801C66C
b _0801C802
.align 2, 0
_0801C6CC: .4byte gUnk_0200AF00
_0801C6D0:
ldr r5, _0801C6F8 @ =gUnk_02002A40
adds r0, r5, #0
adds r0, #0xab
ldrb r0, [r0]
lsrs r4, r0, #1
ldrb r0, [r2, #4]
cmp r4, r0
beq _0801C6EA
strb r4, [r2, #4]
bl sub_0801C824
bl sub_0801C66C
_0801C6EA:
adds r1, r5, #0
adds r1, #0xaa
ldrb r0, [r1]
cmp r0, #1
beq _0801C6FC
lsrs r1, r0, #1
b _0801C6FE
.align 2, 0
_0801C6F8: .4byte gUnk_02002A40
_0801C6FC:
movs r1, #1
_0801C6FE:
cmp r1, r4
ble _0801C704
adds r1, r4, #0
_0801C704:
movs r4, #0
ldr r0, _0801C748 @ =gUnk_0200AF00
ldrb r2, [r0, #3]
adds r7, r0, #0
cmp r1, r2
beq _0801C718
movs r4, #1
cmp r1, r2
ble _0801C718
movs r4, #2
_0801C718:
cmp r4, #1
beq _0801C750
cmp r4, #2
bne _0801C756
ldrb r0, [r7, #5]
adds r1, r0, #1
strb r1, [r7, #5]
lsls r0, r0, #0x18
lsrs r1, r0, #0x18
movs r0, #1
ands r0, r1
cmp r0, #0
bne _0801C74C
movs r0, #7
ands r1, r0
cmp r1, #0
bne _0801C740
movs r0, #0x71
bl PlaySFX
_0801C740:
ldrb r0, [r7, #3]
adds r0, #1
strb r0, [r7, #3]
b _0801C75A
.align 2, 0
_0801C748: .4byte gUnk_0200AF00
_0801C74C:
movs r4, #0
b _0801C75A
_0801C750:
ldrb r0, [r7, #3]
subs r0, #1
strb r0, [r7, #3]
_0801C756:
movs r0, #0
strb r0, [r7, #5]
_0801C75A:
ldrb r0, [r7, #2]
cmp r0, #0
beq _0801C764
cmp r4, #0
beq _0801C802
_0801C764:
movs r0, #2
strb r0, [r7, #2]
ldrb r0, [r7, #3]
lsrs r3, r0, #2
cmp r3, #0xa
ble _0801C77A
movs r1, #0xa
mov r8, r1
adds r6, r3, #0
subs r6, #0xa
b _0801C77E
_0801C77A:
mov r8, r3
movs r6, #0
_0801C77E:
ldrb r0, [r7, #4]
lsrs r4, r0, #2
adds r1, r4, #0
cmp r4, #0xa
ble _0801C78A
movs r4, #0xa
_0801C78A:
adds r2, r1, #0
subs r2, #0xa
ldr r0, _0801C808 @ =gUnk_080C8F2C
mov ip, r0
cmp r2, #0
ble _0801C7B8
ldr r5, _0801C80C @ =gUnk_02034D30
ldr r1, _0801C810 @ =0x0000F010
adds r0, r1, #0
strh r0, [r5]
ldr r1, _0801C814 @ =0x040000D4
movs r0, #0xa
subs r0, r0, r6
lsls r0, r0, #1
add r0, ip
str r0, [r1]
adds r0, r5, #2
str r0, [r1, #4]
movs r0, #0x80
lsls r0, r0, #0x18
orrs r2, r0
str r2, [r1, #8]
ldr r0, [r1, #8]
_0801C7B8:
ldr r5, _0801C818 @ =gUnk_02034CF0
ldr r2, _0801C810 @ =0x0000F010
adds r0, r2, #0
strh r0, [r5]
ldr r1, _0801C814 @ =0x040000D4
movs r0, #0xa
mov r2, r8
subs r0, r0, r2
lsls r0, r0, #1
add r0, ip
str r0, [r1]
adds r0, r5, #2
str r0, [r1, #4]
movs r0, #0x80
lsls r0, r0, #0x18
orrs r4, r0
str r4, [r1, #8]
ldr r0, [r1, #8]
ldrb r0, [r7, #3]
movs r1, #3
ands r1, r0
cmp r1, #0
beq _0801C7FC
cmp r3, #9
ble _0801C7EE
subs r3, #0xa
adds r5, #0x40
_0801C7EE:
lsls r0, r3, #1
adds r0, r0, r5
adds r1, #0x11
ldr r3, _0801C81C @ =0xFFFFF000
adds r2, r3, #0
orrs r1, r2
strh r1, [r0, #2]
_0801C7FC:
ldr r1, _0801C820 @ =gLCDControls
movs r0, #1
strh r0, [r1, #0xe]
_0801C802:
pop {r3}
mov r8, r3
pop {r4, r5, r6, r7, pc}
.align 2, 0
_0801C808: .4byte gUnk_080C8F2C
_0801C80C: .4byte gUnk_02034D30
_0801C810: .4byte 0x0000F010
_0801C814: .4byte 0x040000D4
_0801C818: .4byte gUnk_02034CF0
_0801C81C: .4byte 0xFFFFF000
_0801C820: .4byte gLCDControls
+37
View File
@@ -0,0 +1,37 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_080A3B84
sub_080A3B84: @ 0x080A3B84
push {r4, r5, lr}
ldr r4, _080A3BC4 @ =gUnk_030010A0
adds r4, #0x2c
movs r5, #0
movs r0, #2
strb r0, [r4]
bl sub_080AD90C
ldr r1, _080A3BC8 @ =gUnk_081280C4
ldr r0, _080A3BCC @ =gUnk_02000080
ldrb r0, [r0, #5]
lsls r0, r0, #2
adds r0, r0, r1
ldr r0, [r0]
bl _call_via_r0
bl sub_080A3B74
bl sub_080A4054
bl sub_0801C1D4
bl sub_0801C208
bl sub_0805E5C0
bl sub_080AD9B0
bl sub_080AD918
strb r5, [r4]
pop {r4, r5, pc}
.align 2, 0
_080A3BC4: .4byte gUnk_030010A0
_080A3BC8: .4byte gUnk_081280C4
_080A3BCC: .4byte gUnk_02000080
+160
View File
@@ -0,0 +1,160 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0801C4B0
sub_0801C4B0: @ 0x0801C4B0
push {r4, r5, r6, lr}
ldr r2, _0801C4F0 @ =gUnk_0200AF00
ldrb r1, [r2, #1]
movs r0, #0x40
ands r0, r1
adds r6, r2, #0
cmp r0, #0
beq _0801C4FC
ldrb r0, [r6, #0xa]
cmp r0, #0
bne _0801C4C8
b _0801C5D0
_0801C4C8:
movs r0, #0
strb r0, [r6, #0xa]
ldr r3, _0801C4F4 @ =gUnk_02035160
strh r0, [r3]
strh r0, [r3, #2]
strh r0, [r3, #4]
strh r0, [r3, #6]
strh r0, [r3, #8]
adds r4, r3, #0
adds r4, #0x40
strh r0, [r4]
strh r0, [r4, #2]
strh r0, [r4, #4]
strh r0, [r4, #6]
strh r0, [r4, #8]
ldr r1, _0801C4F8 @ =gLCDControls
movs r0, #1
strh r0, [r1, #0xe]
b _0801C5D0
.align 2, 0
_0801C4F0: .4byte gUnk_0200AF00
_0801C4F4: .4byte gUnk_02035160
_0801C4F8: .4byte gLCDControls
_0801C4FC:
ldrb r0, [r6, #0xa]
cmp r0, #0
bne _0801C560
movs r0, #2
strb r0, [r6, #0xa]
ldr r3, _0801C54C @ =gUnk_02035160
adds r4, r3, #0
adds r4, #0x40
ldr r1, _0801C550 @ =gWalletSizes
ldr r2, _0801C554 @ =gUnk_02002A40
adds r0, r2, #0
adds r0, #0xa8
ldrb r0, [r0]
lsls r0, r0, #2
adds r0, r0, r1
ldrh r1, [r0, #2]
strh r1, [r3]
adds r0, r1, #1
strh r0, [r3, #2]
adds r0, r1, #2
strh r0, [r4]
adds r0, r1, #3
strh r0, [r4, #2]
ldr r1, _0801C558 @ =0x0000F070
strh r1, [r3, #4]
adds r0, r1, #1
strh r0, [r4, #4]
adds r0, r1, #2
strh r0, [r3, #6]
adds r0, r1, #3
strh r0, [r4, #6]
adds r0, r1, #4
strh r0, [r3, #8]
adds r0, r1, #5
strh r0, [r4, #8]
ldr r1, _0801C55C @ =gLCDControls
movs r0, #1
strh r0, [r1, #0xe]
movs r4, #1
b _0801C564
.align 2, 0
_0801C54C: .4byte gUnk_02035160
_0801C550: .4byte gWalletSizes
_0801C554: .4byte gUnk_02002A40
_0801C558: .4byte 0x0000F070
_0801C55C: .4byte gLCDControls
_0801C560:
movs r4, #0
ldr r2, _0801C580 @ =gUnk_02002A40
_0801C564:
adds r5, r6, #0
adds r0, r2, #0
adds r0, #0xc0
ldrh r1, [r5, #0xe]
adds r3, r1, #0
ldrh r0, [r0]
cmp r3, r0
beq _0801C58A
cmp r3, r0
bhs _0801C584
adds r0, r1, #1
strh r0, [r5, #0xe]
b _0801C588
.align 2, 0
_0801C580: .4byte gUnk_02002A40
_0801C584:
subs r0, r1, #1
strh r0, [r6, #0xe]
_0801C588:
movs r4, #2
_0801C58A:
cmp r4, #1
beq _0801C5A4
cmp r4, #2
bne _0801C5CC
ldr r0, _0801C5D4 @ =gUnk_0200AF00
ldrb r0, [r0, #0xc]
movs r1, #3
ands r0, r1
cmp r0, #0
bne _0801C5A4
movs r0, #0x6f
bl PlaySFX
_0801C5A4:
ldr r4, _0801C5D4 @ =gUnk_0200AF00
ldrh r3, [r4, #0xe]
movs r2, #0
ldr r1, _0801C5D8 @ =gWalletSizes
ldr r0, _0801C5DC @ =gUnk_02002A40
adds r0, #0xa8
ldrb r0, [r0]
lsls r0, r0, #2
adds r0, r0, r1
ldrh r0, [r0]
cmp r0, r3
bhi _0801C5BE
movs r2, #1
_0801C5BE:
movs r0, #0x70
adds r1, r3, #0
movs r3, #3
bl sub_0801C5E0
ldrb r0, [r4, #0xc]
adds r4, r0, #1
_0801C5CC:
ldr r0, _0801C5D4 @ =gUnk_0200AF00
strb r4, [r0, #0xc]
_0801C5D0:
pop {r4, r5, r6, pc}
.align 2, 0
_0801C5D4: .4byte gUnk_0200AF00
_0801C5D8: .4byte gWalletSizes
_0801C5DC: .4byte gUnk_02002A40
+26
View File
@@ -0,0 +1,26 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0801C344
sub_0801C344: @ 0x0801C344
push {r4, r5, lr}
ldr r4, _0801C36C @ =gUnk_0200AF00
ldrb r1, [r4, #1]
ldrb r0, [r4]
bics r0, r1
movs r5, #0
strb r0, [r4]
bl sub_0801C6B0
bl sub_0801C85C
bl sub_0801C4B0
bl sub_0801C99C
strb r5, [r4]
bl sub_0801C1D4
pop {r4, r5, pc}
.align 2, 0
_0801C36C: .4byte gUnk_0200AF00
+331
View File
@@ -0,0 +1,331 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0809D1F0
sub_0809D1F0: @ 0x0809D1F0
push {r4, r5, r6, r7, lr}
mov r7, sl
mov r6, sb
mov r5, r8
push {r5, r6, r7}
adds r5, r0, #0
ldrb r0, [r5, #0xc]
mov sb, r0
cmp r0, #0
beq _0809D224
cmp r0, #1
beq _0809D2B0
bl sub_08078B48
ldr r2, _0809D220 @ =gLinkEntity
ldrb r1, [r2, #0x18]
movs r0, #4
rsbs r0, r0, #0
ands r0, r1
strb r0, [r2, #0x18]
movs r1, #0x68
adds r1, r1, r5
mov r8, r1
b _0809D3A8
.align 2, 0
_0809D220: .4byte gLinkEntity
_0809D224:
ldrb r1, [r5, #0xe]
cmp r1, #0
beq _0809D234
movs r0, #0xff
strb r0, [r5, #0x1e]
subs r0, r1, #1
strb r0, [r5, #0xe]
b _0809D488
_0809D234:
movs r1, #1
strb r1, [r5, #0xc]
mov r2, sb
str r2, [r5, #0x20]
ldr r0, _0809D2A0 @ =0xFFEC0000
str r0, [r5, #0x34]
movs r0, #0xc0
lsls r0, r0, #1
strh r0, [r5, #0x24]
movs r0, #8
strb r0, [r5, #0x15]
adds r0, r5, #0
adds r0, #0x38
strb r1, [r0]
adds r2, r5, #0
adds r2, #0x29
ldrb r1, [r2]
movs r0, #8
rsbs r0, r0, #0
ands r0, r1
strb r0, [r2]
ldrb r2, [r5, #0x19]
movs r1, #0x3f
adds r0, r1, #0
ands r0, r2
strb r0, [r5, #0x19]
ldrb r0, [r5, #0x1b]
ands r1, r0
movs r0, #0x40
orrs r1, r0
strb r1, [r5, #0x1b]
ldr r0, _0809D2A4 @ =gRoomControls
ldrh r0, [r0, #0xa]
strh r0, [r5, #0x2e]
ldr r0, _0809D2A8 @ =gLinkEntity
ldrh r0, [r0, #0x32]
strh r0, [r5, #0x32]
mov r3, sb
str r3, [r5, #0x54]
adds r0, r5, #0
movs r1, #6
bl sub_0805E3A0
adds r0, r5, #0
movs r1, #0
bl sub_080042AC
ldr r0, _0809D2AC @ =0x00000123
bl PlaySFX
movs r0, #0x68
adds r0, r0, r5
mov r8, r0
b _0809D3A8
.align 2, 0
_0809D2A0: .4byte 0xFFEC0000
_0809D2A4: .4byte gRoomControls
_0809D2A8: .4byte gLinkEntity
_0809D2AC: .4byte 0x00000123
_0809D2B0:
ldr r6, _0809D430 @ =gLinkEntity
adds r0, r6, #0
adds r0, #0x38
ldrb r1, [r0]
adds r0, r5, #0
adds r0, #0x38
strb r1, [r0]
ldrh r0, [r5, #0x24]
adds r0, #8
strh r0, [r5, #0x24]
lsls r0, r0, #0x10
asrs r0, r0, #0x10
movs r1, #0xc0
lsls r1, r1, #2
mov sl, r1
cmp r0, sl
ble _0809D2D6
mov r2, sl
strh r2, [r5, #0x24]
_0809D2D6:
ldrb r1, [r6, #0x10]
movs r0, #0x80
ands r0, r1
movs r3, #0x68
adds r3, r3, r5
mov r8, r3
cmp r0, #0
beq _0809D3A8
ldr r0, _0809D434 @ =gTextBox
ldrb r1, [r0]
movs r0, #0x7f
ands r0, r1
cmp r0, #0
bne _0809D3A8
ldrb r0, [r6, #0xc]
cmp r0, #0x1c
beq _0809D3A8
cmp r0, #6
beq _0809D3A8
cmp r0, #9
beq _0809D3A8
ldr r7, _0809D438 @ =gUnk_03003F80
adds r0, r7, #0
adds r0, #0xa8
ldrb r0, [r0]
cmp r0, #0x18
beq _0809D3A8
cmp r0, #0xb
beq _0809D3A8
cmp r0, #8
beq _0809D3A8
bl sub_08079F8C
cmp r0, #0
beq _0809D3A8
adds r0, r5, #0
adds r1, r6, #0
movs r2, #0xe
movs r3, #0xe
bl sub_080041A0
cmp r0, #0
beq _0809D3A8
movs r1, #0x36
ldrsh r0, [r6, r1]
movs r2, #0x36
ldrsh r1, [r5, r2]
subs r0, r0, r1
subs r0, #8
lsls r0, r0, #0x10
lsrs r0, r0, #0x10
cmp r0, #0x1f
bhi _0809D3A8
adds r0, r6, #0
adds r0, #0x45
ldrb r0, [r0]
cmp r0, #0
beq _0809D3A8
movs r0, #0x95
movs r1, #0xa
movs r2, #0
bl CreateObject
adds r4, r0, #0
cmp r4, #0
beq _0809D3A8
str r4, [r5, #0x54]
movs r0, #2
strb r0, [r5, #0xc]
movs r0, #8
strb r0, [r5, #0xe]
mov r3, sl
strh r3, [r5, #0x24]
movs r0, #0xe0
lsls r0, r0, #8
mov r1, r8
strh r0, [r1]
bl sub_08079184
bl sub_08078B48
bl sub_080791D0
bl sub_08077B20
adds r0, r7, #0
adds r0, #0x26
movs r2, #0
strb r2, [r0]
strb r2, [r7, #2]
ldrb r1, [r6, #0x10]
movs r0, #0x7f
ands r0, r1
strb r0, [r6, #0x10]
ldrb r1, [r6, #0x18]
movs r0, #4
rsbs r0, r0, #0
ands r0, r1
strb r0, [r6, #0x18]
ldr r1, _0809D43C @ =gUnk_03003DC0
movs r0, #6
strb r0, [r1]
ldr r0, _0809D440 @ =gUnk_02034490
mov r3, sb
strb r3, [r0]
_0809D3A8:
adds r0, r5, #0
bl sub_0806F69C
mov r0, r8
movs r2, #0
ldrsh r1, [r0, r2]
adds r0, r5, #0
bl sub_08003FC4
adds r0, r5, #0
bl sub_080042B8
ldr r4, [r5, #0x54]
cmp r4, #0
beq _0809D454
ldr r2, _0809D430 @ =gLinkEntity
movs r3, #0x2e
ldrsh r1, [r2, r3]
movs r3, #0x2e
ldrsh r0, [r5, r3]
subs r0, #8
cmp r1, r0
bge _0809D3DA
movs r0, #0
strb r0, [r5, #0xe]
_0809D3DA:
ldrb r0, [r5, #0xe]
cmp r0, #0
bne _0809D448
ldr r2, _0809D444 @ =0xFFF80000
adds r0, r5, #0
adds r1, r4, #0
movs r3, #0
bl PositionRelative
ldrh r0, [r4, #0x36]
adds r0, #0x18
strh r0, [r4, #0x36]
adds r0, r5, #0
adds r0, #0x29
ldrb r1, [r0]
lsls r1, r1, #0x1d
adds r3, r4, #0
adds r3, #0x29
lsrs r1, r1, #0x1d
ldrb r2, [r3]
movs r0, #8
rsbs r0, r0, #0
ands r0, r2
orrs r0, r1
strb r0, [r3]
ldrb r2, [r5, #0x19]
lsrs r2, r2, #6
lsls r2, r2, #6
ldrb r3, [r4, #0x19]
movs r1, #0x3f
adds r0, r1, #0
ands r0, r3
orrs r0, r2
strb r0, [r4, #0x19]
ldrb r0, [r5, #0x1b]
lsrs r0, r0, #6
lsls r0, r0, #6
ldrb r2, [r4, #0x1b]
ands r1, r2
orrs r1, r0
strb r1, [r4, #0x1b]
b _0809D454
.align 2, 0
_0809D430: .4byte gLinkEntity
_0809D434: .4byte gTextBox
_0809D438: .4byte gUnk_03003F80
_0809D43C: .4byte gUnk_03003DC0
_0809D440: .4byte gUnk_02034490
_0809D444: .4byte 0xFFF80000
_0809D448:
subs r0, #1
strb r0, [r5, #0xe]
adds r0, r2, #0
adds r1, r4, #0
bl sub_0806FA24
_0809D454:
adds r0, r5, #0
bl sub_080040A8
cmp r0, #0
bne _0809D488
ldrb r0, [r5, #0xc]
cmp r0, #2
bne _0809D478
ldr r0, _0809D494 @ =gUnk_02002A40
ldr r1, [r0, #0x40]
movs r2, #0x80
lsls r2, r2, #0x15
orrs r1, r2
str r1, [r0, #0x40]
movs r0, #9
movs r1, #0
bl sub_080A7138
_0809D478:
ldr r4, [r5, #0x54]
cmp r4, #0
beq _0809D484
adds r0, r4, #0
bl sub_0805E79C
_0809D484:
bl sub_0805E780
_0809D488:
pop {r3, r4, r5}
mov r8, r3
mov sb, r4
mov sl, r5
pop {r4, r5, r6, r7, pc}
.align 2, 0
_0809D494: .4byte gUnk_02002A40
+65
View File
@@ -0,0 +1,65 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_08065AA4
sub_08065AA4: @ 0x08065AA4
push {r4, lr}
adds r4, r0, #0
adds r0, #0x39
movs r2, #0
ldrsb r2, [r0, r2]
cmp r2, #0
beq _08065B18
ldr r0, _08065AD0 @ =gUnk_03003F80
ldr r0, [r0, #0x30]
movs r1, #0x80
ands r0, r1
cmp r0, #0
beq _08065B00
cmp r2, #2
bne _08065AD4
movs r0, #4
strb r0, [r4, #0xc]
adds r0, r4, #0
bl sub_0806F118
b _08065AE6
.align 2, 0
_08065AD0: .4byte gUnk_03003F80
_08065AD4:
movs r0, #3
strb r0, [r4, #0xc]
adds r0, r4, #0
movs r1, #2
bl sub_0805E3A0
adds r0, r4, #0
bl sub_08065A50
_08065AE6:
ldr r1, _08065AFC @ =gLinkEntity
adds r0, r4, #0
bl sub_080045C4
bl sub_0806F5A4
adds r1, r0, #0
adds r0, r4, #0
bl sub_080042AC
b _08065B0A
.align 2, 0
_08065AFC: .4byte gLinkEntity
_08065B00:
adds r0, r4, #0
bl sub_08065A50
bl sub_080791D0
_08065B0A:
movs r0, #0xd3
bl PlaySFX
adds r1, r4, #0
adds r1, #0x39
movs r0, #0
strb r0, [r1]
_08065B18:
pop {r4, pc}
.align 2, 0
+280
View File
@@ -0,0 +1,280 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start PlaySFX
PlaySFX: @ 0x080A3268
push {r4, r5, lr}
adds r3, r0, #0
ldr r0, _080A32AC @ =gUnk_03001000
ldrb r2, [r0, #7]
cmp r2, #0
beq _080A3276
b _080A347C
_080A3276:
ldr r5, _080A32B0 @ =gUnk_02021EE0
ldr r4, _080A32B4 @ =0x0000FFFF
ands r4, r3
ldr r1, _080A32B8 @ =0xFFFF0000
ands r1, r3
ldr r0, _080A32BC @ =0x80090000
cmp r1, r0
bne _080A3288
b _080A33A0
_080A3288:
cmp r1, r0
bhi _080A3310
ldr r0, _080A32C0 @ =0x80040000
cmp r1, r0
bne _080A3294
b _080A33F4
_080A3294:
cmp r1, r0
bhi _080A32D8
ldr r0, _080A32C4 @ =0x80020000
cmp r1, r0
bne _080A32A0
b _080A3384
_080A32A0:
cmp r1, r0
bhi _080A32CC
ldr r0, _080A32C8 @ =0x80010000
cmp r1, r0
beq _080A337C
b _080A3458
.align 2, 0
_080A32AC: .4byte gUnk_03001000
_080A32B0: .4byte gUnk_02021EE0
_080A32B4: .4byte 0x0000FFFF
_080A32B8: .4byte 0xFFFF0000
_080A32BC: .4byte 0x80090000
_080A32C0: .4byte 0x80040000
_080A32C4: .4byte 0x80020000
_080A32C8: .4byte 0x80010000
_080A32CC:
ldr r0, _080A32D4 @ =0x80030000
cmp r1, r0
beq _080A338C
b _080A3458
.align 2, 0
_080A32D4: .4byte 0x80030000
_080A32D8:
ldr r0, _080A32F0 @ =0x80060000
cmp r1, r0
bne _080A32E0
b _080A340A
_080A32E0:
cmp r1, r0
bhi _080A32F8
ldr r0, _080A32F4 @ =0x80050000
cmp r1, r0
bne _080A32EC
b _080A33FE
_080A32EC:
b _080A3458
.align 2, 0
_080A32F0: .4byte 0x80060000
_080A32F4: .4byte 0x80050000
_080A32F8:
ldr r0, _080A3308 @ =0x80070000
cmp r1, r0
bne _080A3300
b _080A340E
_080A3300:
ldr r0, _080A330C @ =0x80080000
cmp r1, r0
beq _080A3398
b _080A3458
.align 2, 0
_080A3308: .4byte 0x80070000
_080A330C: .4byte 0x80080000
_080A3310:
ldr r0, _080A3330 @ =0x800D0000
cmp r1, r0
bne _080A3318
b _080A343A
_080A3318:
cmp r1, r0
bhi _080A3348
ldr r0, _080A3334 @ =0x800B0000
cmp r1, r0
bne _080A3324
b _080A3420
_080A3324:
cmp r1, r0
bhi _080A333C
ldr r0, _080A3338 @ =0x800A0000
cmp r1, r0
beq _080A33B6
b _080A3458
.align 2, 0
_080A3330: .4byte 0x800D0000
_080A3334: .4byte 0x800B0000
_080A3338: .4byte 0x800A0000
_080A333C:
ldr r0, _080A3344 @ =0x800C0000
cmp r1, r0
beq _080A33CC
b _080A3458
.align 2, 0
_080A3344: .4byte 0x800C0000
_080A3348:
ldr r0, _080A335C @ =0x800F0000
cmp r1, r0
bne _080A3350
b _080A344E
_080A3350:
cmp r1, r0
bhi _080A3364
ldr r0, _080A3360 @ =0x800E0000
cmp r1, r0
beq _080A3446
b _080A3458
.align 2, 0
_080A335C: .4byte 0x800F0000
_080A3360: .4byte 0x800E0000
_080A3364:
ldr r0, _080A3374 @ =0x80100000
cmp r1, r0
beq _080A343E
ldr r0, _080A3378 @ =0x80110000
cmp r1, r0
beq _080A3454
b _080A3458
.align 2, 0
_080A3374: .4byte 0x80100000
_080A3378: .4byte 0x80110000
_080A337C:
strh r2, [r5, #0x14]
bl m4aMPlayAllStop
b _080A347C
_080A3384:
movs r0, #0
bl sub_080A3234
b _080A347C
_080A338C:
bl sub_080A35C8
movs r0, #0x80
lsls r0, r0, #1
strh r0, [r5, #0x12]
b _080A3418
_080A3398:
ldrh r0, [r5, #0x14]
bl sub_080A35B4
b _080A347C
_080A33A0:
cmp r4, #0
bne _080A33A6
ldrh r4, [r5, #0x14]
_080A33A6:
subs r0, r4, #1
cmp r0, #0x62
bhi _080A347C
strh r4, [r5, #0x14]
adds r0, r4, #0
bl m4aSongNumStart
b _080A33C4
_080A33B6:
subs r0, r4, #1
cmp r0, #0x62
bhi _080A347C
strh r4, [r5, #0x14]
adds r0, r4, #0
bl m4aSongNumStartOrContinue
_080A33C4:
adds r0, r4, #0
bl sub_080A35A0
b _080A347C
_080A33CC:
ldr r2, _080A33EC @ =gUnk_08A11C3C
ldr r1, _080A33F0 @ =gUnk_08A11DBC
ldrh r0, [r5, #0x14]
lsls r0, r0, #3
adds r0, r0, r1
ldrh r1, [r0, #4]
lsls r0, r1, #1
adds r0, r0, r1
lsls r0, r0, #2
adds r0, r0, r2
ldr r0, [r0]
adds r1, r4, #0
bl m4aMPlayTempoControl
b _080A347C
.align 2, 0
_080A33EC: .4byte gUnk_08A11C3C
_080A33F0: .4byte gUnk_08A11DBC
_080A33F4:
bl m4aMPlayAllStop
bl m4aSoundVSyncOff
b _080A347C
_080A33FE:
ldrh r0, [r5, #0x14]
cmp r0, #0
beq _080A347C
bl m4aSongNumStop
b _080A347C
_080A340A:
bl m4aSoundVSyncOn
_080A340E:
ldrh r0, [r5, #0x14]
cmp r0, #0
beq _080A347C
bl m4aSongNumStartOrContinue
_080A3418:
ldrh r0, [r5, #0x14]
bl sub_080A353C
b _080A347C
_080A3420:
subs r0, r4, #1
cmp r0, #0x62
bhi _080A347C
strh r4, [r5, #0x14]
adds r0, r4, #0
bl m4aSongNumStartOrContinue
bl sub_080A35C8
adds r0, r4, #0
bl sub_080A353C
b _080A347C
_080A343A:
strh r2, [r5, #0x10]
b _080A347C
_080A343E:
strh r2, [r5, #0x10]
movs r0, #1
strb r0, [r5, #2]
b _080A347C
_080A3446:
movs r0, #0x80
lsls r0, r0, #1
strh r0, [r5, #0x10]
b _080A347C
_080A344E:
bl sub_080A35C8
b _080A347C
_080A3454:
strh r2, [r5, #0x14]
b _080A347C
_080A3458:
cmp r4, #0
beq _080A347C
subs r0, r4, #1
cmp r0, #0x62
bhi _080A3470
strh r4, [r5, #0x14]
adds r0, r4, #0
bl m4aSongNumStart
bl sub_080A35C8
b _080A3476
_080A3470:
adds r0, r4, #0
bl m4aSongNumStart
_080A3476:
adds r0, r4, #0
bl sub_080A353C
_080A347C:
pop {r4, r5, pc}
.align 2, 0
+63
View File
@@ -0,0 +1,63 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_08077B2C
sub_08077B2C: @ 0x08077B2C
push {r4, r5, lr}
movs r4, #0
ldr r5, _08077B88 @ =gUnk_03000B80
_08077B32:
adds r0, r5, #0
adds r1, r4, #0
bl sub_08077E78
adds r5, #0x1c
adds r4, #1
cmp r4, #2
bls _08077B32
ldr r2, _08077B8C @ =gUnk_03003F80
adds r0, r2, #0
adds r0, #0x3d
movs r3, #0
strb r3, [r0]
strb r3, [r2, #0x1c]
subs r0, #0x1c
strb r3, [r0]
strb r3, [r2, #1]
strb r3, [r2, #0xe]
strb r3, [r2, #0x1e]
strb r3, [r2, #0x1b]
strb r3, [r2, #3]
strb r3, [r2, #5]
ldr r0, [r2, #0x30]
ldr r1, _08077B90 @ =0xF7FBFFFF
ands r0, r1
str r0, [r2, #0x30]
ldr r0, _08077B94 @ =gLinkEntity
str r3, [r0, #0x70]
ldrb r1, [r2, #2]
movs r0, #0xc0
ands r0, r1
cmp r0, #0
bne _08077B76
strb r3, [r2, #2]
_08077B76:
adds r1, r2, #0
adds r1, #0xa8
ldrb r0, [r1]
cmp r0, #4
bgt _08077B86
cmp r0, #2
blt _08077B86
strb r3, [r1]
_08077B86:
pop {r4, r5, pc}
.align 2, 0
_08077B88: .4byte gUnk_03000B80
_08077B8C: .4byte gUnk_03003F80
_08077B90: .4byte 0xF7FBFFFF
_08077B94: .4byte gLinkEntity
+129
View File
@@ -0,0 +1,129 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_080731D8
sub_080731D8: @ 0x080731D8
push {r4, r5, r6, r7, lr}
adds r4, r0, #0
ldrb r1, [r4, #0x10]
movs r0, #0x7f
ands r0, r1
movs r2, #0
strb r0, [r4, #0x10]
movs r1, #0
movs r0, #0x40
strh r0, [r4, #0x24]
strb r1, [r4, #0x14]
ldrh r1, [r4, #0x2e]
movs r5, #0x10
rsbs r5, r5, #0
adds r0, r5, #0
ands r0, r1
movs r7, #8
orrs r0, r7
strh r0, [r4, #0x2e]
strh r2, [r4, #0x2c]
ldr r6, _08073214 @ =gUnk_03003F80
adds r0, r6, #0
adds r0, #0x38
ldrb r0, [r0]
cmp r0, #0
bne _08073218
movs r0, #1
strb r0, [r4, #0xd]
b _0807329A
.align 2, 0
_08073214: .4byte gUnk_03003F80
_08073218:
ldrb r0, [r4, #0x18]
movs r1, #3
orrs r0, r1
strb r0, [r4, #0x18]
movs r0, #3
strb r0, [r4, #0xd]
ldrh r0, [r4, #0x32]
adds r1, r4, #0
adds r1, #0x7e
strh r0, [r1]
ldrh r0, [r4, #0x32]
subs r0, #0x10
strh r0, [r4, #0x32]
adds r0, r4, #0
movs r1, #0x70
movs r2, #1
movs r3, #0
bl sub_080A2988
str r0, [r4, #0x54]
adds r0, r6, #0
adds r0, #0x39
ldrb r0, [r0]
cmp r0, #7
bne _08073270
ldrh r1, [r4, #0x32]
adds r0, r5, #0
ands r0, r1
adds r0, #8
strh r0, [r4, #0x32]
ldrh r1, [r4, #0x2e]
adds r0, r5, #0
ands r0, r1
strh r0, [r4, #0x2e]
strb r7, [r4, #0x15]
movs r0, #2
strb r0, [r4, #0x14]
ldr r0, _0807326C @ =0x00000187
bl PlaySFX
b _08073294
.align 2, 0
_0807326C: .4byte 0x00000187
_08073270:
ldrh r1, [r4, #0x32]
adds r0, r5, #0
ands r0, r1
adds r0, #2
strh r0, [r4, #0x32]
ldrh r1, [r4, #0x2e]
adds r0, r5, #0
ands r0, r1
adds r0, #0xf
strh r0, [r4, #0x2e]
movs r0, #0x18
strb r0, [r4, #0x15]
movs r0, #6
strb r0, [r4, #0x14]
movs r0, #0xc4
lsls r0, r0, #1
bl PlaySFX
_08073294:
adds r0, r4, #0
bl sub_08066DE4
_0807329A:
ldr r2, _080732AC @ =gUnk_03003F80
ldr r0, [r2, #0x30]
movs r1, #8
ands r0, r1
cmp r0, #0
beq _080732B4
ldr r0, _080732B0 @ =0x00000404
b _080732B8
.align 2, 0
_080732AC: .4byte gUnk_03003F80
_080732B0: .4byte 0x00000404
_080732B4:
movs r0, #0x82
lsls r0, r0, #1
_080732B8:
strh r0, [r2, #8]
ldr r1, _080732CC @ =gRoomControls
movs r0, #0
str r0, [r1, #0x30]
bl sub_0807A108
bl sub_08077B2C
pop {r4, r5, r6, r7, pc}
.align 2, 0
_080732CC: .4byte gRoomControls
+36
View File
@@ -0,0 +1,36 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_08019410
sub_08019410: @ 0x08019410
push {r4, lr}
adds r4, r0, #0
ldrb r0, [r4, #0xe]
cmp r0, #0xe
bhi _08019428
adds r0, r4, #0
adds r0, #0x58
ldrb r1, [r0]
adds r0, r4, #0
bl sub_08004260
b _0801942E
_08019428:
adds r0, r4, #0
bl sub_08004274
_0801942E:
ldrb r0, [r4, #0xe]
subs r0, #1
strb r0, [r4, #0xe]
lsls r0, r0, #0x18
lsrs r0, r0, #0x18
cmp r0, #0xff
bne _08019440
bl sub_0805E780
_08019440:
pop {r4, pc}
.align 2, 0
+38
View File
@@ -0,0 +1,38 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0801C824
sub_0801C824: @ 0x0801C824
push {lr}
ldr r1, _0801C850 @ =gUnk_0200AF00
ldrb r0, [r1, #6]
cmp r0, #0
beq _0801C84E
movs r2, #0
strb r2, [r1, #6]
ldrb r0, [r1, #4]
ldr r1, _0801C854 @ =gUnk_02034D30
cmp r0, #0x28
bls _0801C83C
adds r1, #0x40
_0801C83C:
str r2, [r1]
str r2, [r1, #4]
str r2, [r1, #8]
str r2, [r1, #0xc]
str r2, [r1, #0x10]
str r2, [r1, #0x14]
ldr r1, _0801C858 @ =gLCDControls
movs r0, #1
strh r0, [r1, #0xe]
_0801C84E:
pop {pc}
.align 2, 0
_0801C850: .4byte gUnk_0200AF00
_0801C854: .4byte gUnk_02034D30
_0801C858: .4byte gLCDControls
+1 -1
View File
@@ -28,7 +28,7 @@ sub_08055E24: @ 0x08055E24
bl sub_08055B70
movs r0, #4
movs r1, #0x10
bl sub_08050054
bl DoFade
pop {r4, pc}
.align 2, 0
_08055E5C: .4byte gUnk_02000080
+26
View File
@@ -0,0 +1,26 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_0806A080
sub_0806A080: @ 0x0806A080
push {lr}
ldrb r2, [r0, #0xb]
lsls r1, r2, #2
adds r1, r1, r2
lsls r1, r1, #4
ldr r2, _0806A09C @ =gUnk_02002A40
ldrb r2, [r2, #8]
lsls r2, r2, #3
ldr r3, _0806A0A0 @ =gUnk_08111E34
adds r2, r2, r3
adds r1, r1, r2
bl sub_0806F1AC
pop {pc}
.align 2, 0
_0806A09C: .4byte gUnk_02002A40
_0806A0A0: .4byte gUnk_08111E34
+1 -1
View File
@@ -20,7 +20,7 @@ sub_080A2838: @ 0x080A2838
cmp r0, #2
bne _080A2856
adds r0, r4, #0
bl sub_08016A04
bl UpdateSpriteOrderAndFlip
_080A2856:
pop {r4, pc}
.align 2, 0
+1 -1
View File
@@ -45,7 +45,7 @@ _080AD42C:
strh r5, [r0, #0x1a]
movs r0, #6
movs r1, #8
bl sub_08050054
bl DoFade
movs r1, #0
b _080AD45E
.align 2, 0
+4 -4
View File
@@ -121,10 +121,10 @@ _080AD524:
_080AD55A:
bl sub_080A3210
movs r0, #3
bl sub_080A3268
bl PlaySFX
movs r0, #6
movs r1, #8
bl sub_08050054
bl DoFade
b _080AD610
.align 2, 0
_080AD570: .4byte gLCDControls
@@ -174,7 +174,7 @@ _080AD5C8:
cmp r4, #2
bne _080AD5DE
movs r0, #0x6a
bl sub_080A3268
bl PlaySFX
b _080AD5E0
_080AD5DE:
movs r4, #0
@@ -182,7 +182,7 @@ _080AD5E0:
adds r0, r4, #0
bl IntroSetTransition
ldr r0, _080AD634 @ =0x80080000
bl sub_080A3268
bl PlaySFX
_080AD5EC:
bl sub_080AD644
ldr r0, _080AD638 @ =gUnk_02000080
+2 -2
View File
@@ -58,9 +58,9 @@ _080AD6F4:
str r0, [r6, #4]
movs r0, #6
movs r1, #0x10
bl sub_08050054
bl DoFade
movs r0, #0xf8
bl sub_080A3268
bl PlaySFX
b _080AD76A
.align 2, 0
_080AD718: .4byte gUnk_03000FD0
+4 -4
View File
@@ -39,7 +39,7 @@ _080AD78A:
orrs r0, r1
strh r0, [r2]
movs r0, #0xf6
bl sub_080A3268
bl PlaySFX
b _080AD82A
.align 2, 0
_080AD7AC: .4byte gUnk_03000FD0
@@ -60,7 +60,7 @@ _080AD7B4:
strb r0, [r1, #6]
movs r0, #6
movs r1, #0x10
bl sub_08050054
bl DoFade
_080AD7D6:
bl sub_080AD670
b _080AD82A
@@ -83,9 +83,9 @@ _080AD7DC:
bl CreateObject
movs r0, #6
movs r1, #0x10
bl sub_08050054
bl DoFade
movs r0, #0xf8
bl sub_080A3268
bl PlaySFX
b _080AD82A
_080AD80E:
ldr r0, _080AD82C @ =gUnk_03000FD0
+50
View File
@@ -0,0 +1,50 @@
.include "asm/macros.inc"
.include "constants/constants.inc"
.syntax unified
.text
thumb_func_start sub_08028DE8
sub_08028DE8: @ 0x08028DE8
push {r4, lr}
adds r4, r0, #0
ldr r0, _08028E08 @ =gLinkEntity
ldrb r0, [r0, #0xc]
cmp r0, #8
bne _08028E0C
adds r4, #0x81
ldrb r0, [r4]
cmp r0, #0
bne _08028E3A
movs r0, #1
bl sub_08078A90
movs r0, #1
strb r0, [r4]
b _08028E3A
.align 2, 0
_08028E08: .4byte gLinkEntity
_08028E0C:
ldr r0, _08028E3C @ =0x00002902
bl TextboxTryNoOverlap
movs r1, #0
movs r0, #4
strb r0, [r4, #0xc]
adds r0, r4, #0
adds r0, #0x81
strb r1, [r0]
movs r0, #1
strb r0, [r4, #0xe]
adds r0, r4, #0
bl sub_08028EDC
movs r0, #0
bl sub_08078A90
adds r0, r4, #0
bl sub_0800445C
adds r0, r4, #0
bl sub_08004274
_08028E3A:
pop {r4, pc}
.align 2, 0
_08028E3C: .4byte 0x00002902
+1 -1
View File
@@ -21454,7 +21454,7 @@ gUnk_080FD580:: @ 080FD580
gUnk_080FD588:: @ 080FD588
.incbin "baserom.gba", 0x0FD588, 0x0000008
gUnk_080FD590:: @ 080FD590
gWalletSizes:: @ 080FD590
.incbin "baserom.gba", 0x0FD590, 0x0000010
gUnk_080FD5A0:: @ 080FD5A0
+2 -2
View File
@@ -14,8 +14,8 @@ typedef struct {
} EntityType;
union SplitWord {
u32 WORD;
u16 LO, HI;
s32 WORD;
s16 LO, HI;
};
typedef struct {
+5 -1
View File
@@ -21,7 +21,11 @@ typedef struct {
u16 roomOriginY;
s16 roomScrollX;
s16 roomScrollY;
u8 filler[8];
u8 unk5;
u8 unk6;
u8 filler[4];
u8 screenShakeMagnitude;
u8 unk7;
u16 screenShakeTime;
u16 filler2[6];
u8 filler3[4];
+50 -1
View File
@@ -299,6 +299,17 @@ SECTIONS {
asm/code_08016DF8.o(.text);
/* C source compiled without interworking */
asm/code_08018500.o(.text);
asm/createBowEntity.o(.text);
asm/bowUse.o(.text);
asm/sub_08019410.o(.text);
asm/code_08019444.o(.text);
asm/drawUI.o(.text);
asm/code_0801C370.o(.text);
asm/drawRupees.o(.text);
asm/code_0801C5E0.o(.text);
asm/drawHealth.o(.text);
asm/sub_0801C824.o(.text);
asm/code_0801C85C.o(.text);
src/sub_0801D5EC.o(.text);
src/_dmaFill32.o(.text);
asm/sub_0801D630.o(.text);
@@ -306,6 +317,19 @@ SECTIONS {
asm/readKeyInput.o(.text);
asm/code_0801D714.o(.text);
asm/code_0801D79C.o(.text);
asm/createSluggula.o(.text);
asm/code_08023E10.o(.text);
asm/doItemTrade.o(.text);
asm/tradeSuccess.o(.text);
asm/code_08028E40.o(.text);
asm/createMadderpillar.o(.text);
asm/code_08029A94.o(.text);
asm/createBombPeahat.o(.text);
asm/code_0802AE24.o(.text);
asm/createBobomb.o(.text);
asm/code_0802B234.o(.text);
asm/createMazaal.o(.text);
asm/code_08033FFC.o(.text);
asm/sub_0804AA30.o(.text);
src/createEnemy.o(.text);
src/sub_0804AA84.o(.text); /* wip */
@@ -327,7 +351,8 @@ SECTIONS {
src/sub_08052638.o(.text);
src/bitGetters.o(.text);
src/modHealth.o(.text);
asm/code_080526CC.o(.text);
src/modRupees.o(.text);
asm/code_080526F8.o(.text);
src/sub_08055E08.o(.text);
asm/sub_08055E24.o(.text);
asm/mainLoop.o(.text);
@@ -340,6 +365,19 @@ SECTIONS {
asm/code_0805E3B0.o(.text);
asm/getEmptyEntity.o(.text);
asm/code_0805E744.o(.text);
asm/horseInteract.o(.text);
asm/code_08065B1C.o(.text);
asm/catInteract.o(.text);
asm/code_08067D20.o(.text);
asm/cowInteract.o(.text);
asm/code_080692A0.o(.text);
asm/dogInteract.o(.text);
asm/sub_0806A080.o(.text);
asm/code_0806A0A4.o(.text);
asm/cuccoInteract.o(.text);
asm/code_0806E6A8.o(.text);
asm/chickInteract.o(.text);
asm/code_0806E884.o(.text);
src/createNPC.o(.text);
asm/code_0806ED78.o(.text);
src/sub_0806F9EC.o(.text);
@@ -348,6 +386,10 @@ SECTIONS {
src/sub_0806FA30.o(.text);
src/positionRelative.o(.text);
asm/code_0806FA6C.o(.text);
asm/stairsInteract.o(.text);
asm/code_080732D0.o(.text);
asm/respawnLink.o(.text);
asm/code_08077B98.o(.text);
src/sub_0807B7D8.o(.text);
src/sub_0807B820.o(.text);
src/sub_0807B8A8.o(.text);
@@ -360,13 +402,20 @@ SECTIONS {
asm/code_0807CAA0.o(.text);
src/getProgressFlag.o(.text);
asm/code_0807CC3C.o(.text);
src/room.o(.text);
asm/code_08080974.o(.text);
asm/fastTravel.o(.text);
asm/code_0809D498.o(.text);
asm/sub_080A2838.o(.text);
asm/sub_080A285C.o(.text);
src/createObject.o(.text);
asm/sub_080A2988.o(.text);
asm/createFx.o(.text);
asm/code_080A29BC.o(.text);
asm/playSFX.o(.text);
asm/code_080A3480.o(.text);
asm/drawKinstoneMenu.o(.text);
asm/code_080A3BD0.o(.text);
src/sub_080A554C.o(.text);
asm/code_080A5574.o(.text);
src/introSetTransition.o(.text);
+2 -2
View File
@@ -12,7 +12,7 @@ typedef struct {
u16 unk7;
} TransitionStruct;
extern u32 sub_08050054(u32, u32);
extern u32 DoFade(u32, u32);
extern void sub_0801D630(u32 *, u32, u32);
extern u32 gUnk_02000080;
extern TransitionStruct gUnk_03001000;
@@ -25,5 +25,5 @@ u32 IntroSetTransition(u8 transition,u32 param_2,u32 param_3)
gUnk_02032EC0.transitionType = transition;
gUnk_03001000.functionIndex = 2;
sub_0801D630(&gUnk_02000080,48,param_3);
return sub_08050054(7,8);
return DoFade(7,8);
}
+23
View File
@@ -0,0 +1,23 @@
#include "global.h"
#include "stats.h"
extern Stats gStats;
extern u16 gWalletSizes[4];
void ModRupees(s32 rupeeDelta)
{
s32 newRupeeCount;
Stats *s = &gStats;
newRupeeCount = s->rupees + rupeeDelta;
if (newRupeeCount < 0) {
newRupeeCount = 0;
}
else {
if (newRupeeCount > gWalletSizes[s->walletType * 2]) {
newRupeeCount = gWalletSizes[s->walletType * 2];
}
}
s->rupees = newRupeeCount;
}
+2 -2
View File
@@ -1,7 +1,7 @@
#include "global.h"
#include "entity.h"
extern void sub_08016A04(Entity *);
extern void UpdateSpriteOrderAndFlip(Entity *);
void PositionRelative(Entity *source, Entity *target, s32 offsetX, s32 offsetY) { //r0, r1, r2, r3
s32 x;
@@ -15,5 +15,5 @@ void PositionRelative(Entity *source, Entity *target, s32 offsetX, s32 offsetY)
target->height = source->height; //ldr
target->collisionLayer = source->collisionLayer;
sub_08016A04(target);
UpdateSpriteOrderAndFlip(target);
}
+51
View File
@@ -0,0 +1,51 @@
#include "global.h"
#include "room.h"
extern void sub_0805E5A8();
extern RoomControls gRoomControls;
extern u32 gUnk_0200B650;
extern u32 gUnk_02025EB0;
extern u8 gUnk_030010A0[10];
extern void sub_08080840(Entity *);
extern void sub_080809D4();
void sub_0808091C(Entity *param_1,u32 param_2)
{
sub_08080840(param_1);
gUnk_030010A0[9] = param_2;
return;
}
void sub_08080930(void)
{
gRoomControls.unk3 = 5;
gRoomControls.unk4 = 0;
gRoomControls.unk2 = 2;
gRoomControls.filler[0] = 0;
sub_0805E5A8();
return;
}
u32 * sub_0808094C(u32 param_1)
{
if (param_1 == 2) {
return &gUnk_0200B650;
}
else {
return &gUnk_02025EB0;
}
}
void sub_08080964(u16 time,u32 magnitude)
{
gRoomControls.screenShakeTime = time;
gRoomControls.screenShakeMagnitude = magnitude & 7;
return;
}
+3 -3
View File
@@ -1,12 +1,12 @@
#include "global.h"
extern void sub_0801E104();
extern void sub_08050054(u32, u32);
extern void DoFade(u32, u32);
void sub_08050024()
{
sub_0801E104();
sub_08050054(5, 0x80 << 1);
DoFade(5, 0x80 << 1);
return;
}
@@ -18,7 +18,7 @@ sub_08050024: @ 0x08050024
movs r1, #0x80
lsls r1, r1, #1
movs r0, #5
bl sub_08050054
bl DoFade
pop {pc}
.align 2, 0
*/
+2 -2
View File
@@ -15,7 +15,7 @@ extern u32 gUnk_02036A40;
extern u32 gUnk_02036A38;
extern u32 gUnk_02000040;
void sub_08056360()
void sub_08056360(void)
{
if ((gTextBox.doTextBox & 127) != 0) {
@@ -80,7 +80,7 @@ void ShowTextbox(u32 index,u32 param_2,u32 *dest)
return;
}
void sub_08056418()
void sub_08056418(void)
{
sub_0801D630(&gTextBox,32);