mirror of
https://github.com/zeldaret/tmc
synced 2026-05-23 23:05:38 -04:00
@@ -36,6 +36,15 @@
|
||||
*.swp
|
||||
*.til
|
||||
*.code-workspace
|
||||
*.ss1
|
||||
*.ss2
|
||||
*.ss3
|
||||
*.ss4
|
||||
*.ss5
|
||||
*.ss6
|
||||
*.ss7
|
||||
*.ss8
|
||||
*.ss9
|
||||
.fuse_hidden*
|
||||
.idea/
|
||||
Thumbs.db
|
||||
|
||||
+2
-2
@@ -220,7 +220,7 @@ void sub_08086284(Entity *r4) {
|
||||
|
||||
gUnk_08120668[r4->action](r4);
|
||||
r4->bitfield = 0;
|
||||
sub_0805EC9C(r4, *((u16 *)&r4->heldObjectPtr + 1), r4->itemCooldown, 0);
|
||||
sub_0805EC9C(r4, *((u16 *)&r4->heldObjectPtr + 1), r4->field_0x7a, 0);
|
||||
return;
|
||||
}
|
||||
```
|
||||
@@ -268,7 +268,7 @@ extern void (*gUnk_08120668[])(Entity *);
|
||||
void sub_08086284(Entity *r4) {
|
||||
gUnk_08120668[r4->action](r4);
|
||||
r4->bitfield = 0;
|
||||
sub_0805EC9C(r4, *((u16 *)&r4->heldObjectPtr + 1), r4->itemCooldown, 0);
|
||||
sub_0805EC9C(r4, *((u16 *)&r4->heldObjectPtr + 1), r4->field_0x7a, 0);
|
||||
return;
|
||||
}
|
||||
```
|
||||
|
||||
@@ -69,6 +69,7 @@ FIX := tools/gbafix/gbafix
|
||||
# Secondary expansion is required for dependency variables in object rules.
|
||||
.SECONDEXPANSION:
|
||||
|
||||
|
||||
$(shell mkdir -p $(C_BUILDDIR) $(ASM_BUILDDIR) $(DATA_ASM_BUILDDIR) $(SONG_BUILDDIR) $(MID_BUILDDIR))
|
||||
|
||||
infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst __SPACE__, ,$(line))))
|
||||
@@ -83,7 +84,7 @@ endif
|
||||
|
||||
#$(C_BUILDDIR)/need_interworking_file_name.o: CFLAGS += -mthumb-interwork
|
||||
|
||||
C_SRCS := $(wildcard $(C_SUBDIR)/*.c)
|
||||
C_SRCS := $(wildcard $(C_SUBDIR)/*.c $(C_SUBDIR)/*/*.c)
|
||||
C_OBJS := $(patsubst $(C_SUBDIR)/%.c,$(C_BUILDDIR)/%.o,$(C_SRCS))
|
||||
|
||||
ASM_SRCS := $(wildcard $(ASM_SUBDIR)/*.s)
|
||||
@@ -101,6 +102,10 @@ MID_OBJS := $(patsubst $(MID_SUBDIR)/%.mid,$(MID_BUILDDIR)/%.o,$(MID_SRCS))
|
||||
OBJS := $(C_OBJS) $(ASM_OBJS) $(DATA_ASM_OBJS) $(SONG_OBJS) $(MID_OBJS)
|
||||
OBJS_REL := $(patsubst $(OBJ_DIR)/%,%,$(OBJS))
|
||||
|
||||
SUBDIRS := $(sort $(dir $(OBJS)))
|
||||
|
||||
$(shell mkdir -p $(SUBDIRS))
|
||||
|
||||
TOOLDIRS := $(filter-out tools/agbcc tools/binutils,$(wildcard tools/*))
|
||||
TOOLBASE = $(TOOLDIRS:tools/%=%)
|
||||
TOOLS = $(foreach tool,$(TOOLBASE),tools/$(tool)/$(tool)$(EXE))
|
||||
|
||||
+3
-3
@@ -1061,7 +1061,7 @@ _08032018:
|
||||
ldr r0, _0803205C @ =gUnk_020000B0
|
||||
ldr r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
bl sub_08004596
|
||||
@@ -1149,7 +1149,7 @@ _080320D4:
|
||||
strb r0, [r6]
|
||||
adds r0, r4, #0
|
||||
adds r1, r5, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r4, #0x15]
|
||||
adds r0, r4, #0
|
||||
bl sub_080322E8
|
||||
@@ -1159,7 +1159,7 @@ _080320D4:
|
||||
_0803210E:
|
||||
adds r0, r4, #0
|
||||
adds r1, r5, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r4, #0x15]
|
||||
adds r0, r4, #0
|
||||
bl sub_080322E8
|
||||
|
||||
+1
-1
@@ -49,7 +49,7 @@ _0806C2FA:
|
||||
strb r0, [r2]
|
||||
ldr r1, _0806C334 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5A4
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x58
|
||||
|
||||
+1
-1
@@ -163,7 +163,7 @@ _080302BA:
|
||||
ldrb r0, [r4, #0xb]
|
||||
cmp r0, #0
|
||||
beq _080302C6
|
||||
bl sub_0804B128
|
||||
bl GetCurrentRoomProperty
|
||||
str r0, [r4, #0x7c]
|
||||
_080302C6:
|
||||
adds r0, r4, #0
|
||||
|
||||
+1
-1
@@ -26,7 +26,7 @@ sub_0809CC74: @ 0x0809CC74
|
||||
adds r5, r0, #0
|
||||
movs r4, #1
|
||||
strb r4, [r5, #0xc]
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
ldrb r0, [r5, #0xa]
|
||||
cmp r0, #0
|
||||
bne _0809CCD4
|
||||
|
||||
@@ -479,7 +479,7 @@ sub_0803E86C: @ 0x0803E86C
|
||||
ldr r0, _0803E8C4 @ =gUnk_020000B0
|
||||
ldr r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r0, #4
|
||||
movs r1, #0x18
|
||||
ands r0, r1
|
||||
@@ -669,7 +669,7 @@ sub_0803E9D4: @ 0x0803E9D4
|
||||
ldr r0, _0803EA0C @ =gUnk_020000B0
|
||||
ldr r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r0, #4
|
||||
movs r1, #0x18
|
||||
ands r0, r1
|
||||
|
||||
+1
-1
@@ -147,7 +147,7 @@ sub_08063390: @ 0x08063390
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
adds r0, r4, #0
|
||||
bl sub_0806EDC4
|
||||
bl GetAnimationState
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
|
||||
+1
-1
@@ -364,7 +364,7 @@ _080219C2:
|
||||
movs r1, #0
|
||||
bl InitializeAnimation
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_08021A04:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
+1
-1
@@ -44,7 +44,7 @@ sub_08097D90: @ 0x08097D90
|
||||
ands r0, r1
|
||||
strb r0, [r2]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl InitAnimationForceUpdate
|
||||
|
||||
+1
-1
@@ -509,7 +509,7 @@ _08088DEC:
|
||||
_08088E1E:
|
||||
strb r1, [r4, #0xb]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
b _08088E6E
|
||||
_08088E28:
|
||||
ldrb r0, [r4, #0xb]
|
||||
|
||||
+4
-4
@@ -74,7 +74,7 @@ sub_0809CF54: @ 0x0809CF54
|
||||
ldr r0, _0809CFE8 @ =0x00000123
|
||||
bl PlaySFX
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl InitAnimationForceUpdate
|
||||
@@ -162,7 +162,7 @@ sub_0809D048: @ 0x0809D048
|
||||
movs r0, #1
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x17
|
||||
bl InitAnimationForceUpdate
|
||||
@@ -266,7 +266,7 @@ sub_0809D10C: @ 0x0809D10C
|
||||
movs r0, #1
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x17
|
||||
bl InitAnimationForceUpdate
|
||||
@@ -323,7 +323,7 @@ sub_0809D178: @ 0x0809D178
|
||||
movs r0, #2
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x5a
|
||||
movs r0, #0x80
|
||||
|
||||
+1
-1
@@ -33,7 +33,7 @@ sub_08082EB4: @ 0x08082EB4
|
||||
bl sub_080AE068
|
||||
ldr r1, _08082EE4 @ =0x000001C1
|
||||
adds r0, r4, #0
|
||||
bl sub_080ADF80
|
||||
bl LoadFixedGFX
|
||||
cmp r0, #0
|
||||
bne _08082EE8
|
||||
ldrb r1, [r4, #0x18]
|
||||
|
||||
+1
-1
@@ -41,7 +41,7 @@ sub_080333D4: @ 0x080333D4
|
||||
ldrb r0, [r4, #0xa]
|
||||
cmp r0, #0
|
||||
beq _0803340E
|
||||
bl sub_0804B128
|
||||
bl GetCurrentRoomProperty
|
||||
str r0, [r4, #0x54]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x54
|
||||
|
||||
+1
-1
@@ -71,7 +71,7 @@ _0809B420:
|
||||
strb r0, [r4, #0xb]
|
||||
_0809B424:
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
ldrb r1, [r4, #0xa]
|
||||
adds r1, #0x39
|
||||
adds r0, r4, #0
|
||||
|
||||
+1
-1
@@ -498,7 +498,7 @@ _0803C598:
|
||||
beq _0803C5C0
|
||||
adds r0, r5, #0
|
||||
adds r1, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r0, #4
|
||||
movs r1, #0x18
|
||||
ands r0, r1
|
||||
|
||||
+2
-2
@@ -109,7 +109,7 @@ _080635D0:
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
adds r0, r4, #0
|
||||
bl sub_0806EDC4
|
||||
bl GetAnimationState
|
||||
adds r1, r0, #0
|
||||
adds r1, #4
|
||||
adds r0, r4, #0
|
||||
@@ -194,7 +194,7 @@ _08063662:
|
||||
strb r0, [r1]
|
||||
ldr r1, _080636A0 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5A4
|
||||
adds r1, r0, #0
|
||||
adds r1, #4
|
||||
|
||||
+2
-2
@@ -805,7 +805,7 @@ _08028F2C:
|
||||
adds r0, r5, #0
|
||||
bl sub_0804AA1C
|
||||
adds r0, r5, #0
|
||||
bl sub_0806EDC4
|
||||
bl GetAnimationState
|
||||
lsls r0, r0, #3
|
||||
strb r0, [r5, #0x15]
|
||||
adds r0, r5, #0
|
||||
@@ -989,7 +989,7 @@ sub_08029078: @ 0x08029078
|
||||
strb r0, [r2]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x72
|
||||
bl sub_080ADF80
|
||||
bl LoadFixedGFX
|
||||
cmp r0, #0
|
||||
bne _080290AE
|
||||
adds r0, r4, #0
|
||||
|
||||
+1
-1
@@ -716,7 +716,7 @@ sub_08081FF8: @ 0x08081FF8
|
||||
bne _08082036
|
||||
adds r0, r1, #0
|
||||
adds r1, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r6, r0, #0
|
||||
ldr r0, [r4, #0x54]
|
||||
movs r1, #0x80
|
||||
|
||||
-177
@@ -6,183 +6,6 @@
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start Carpenter
|
||||
Carpenter: @ 0x08067158
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, #0x84
|
||||
ldr r0, [r0]
|
||||
cmp r0, #0
|
||||
bne _08067168
|
||||
bl DeleteThisEntity
|
||||
_08067168:
|
||||
ldrb r5, [r4, #0xc]
|
||||
cmp r5, #1
|
||||
beq _080671A8
|
||||
cmp r5, #1
|
||||
bgt _08067178
|
||||
cmp r5, #0
|
||||
beq _0806717E
|
||||
b _08067224
|
||||
_08067178:
|
||||
cmp r5, #2
|
||||
beq _0806720A
|
||||
b _08067224
|
||||
_0806717E:
|
||||
ldrb r1, [r4, #0xa]
|
||||
lsls r1, r1, #4
|
||||
ldr r0, _080671EC @ =gUnk_08110CA8
|
||||
adds r1, r1, r0
|
||||
adds r0, r4, #0
|
||||
bl LoadExtraSpriteData
|
||||
cmp r0, #0
|
||||
beq _08067224
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x69
|
||||
strb r5, [r0]
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
bl sub_0805E3A0
|
||||
adds r0, r4, #0
|
||||
bl sub_0807DD64
|
||||
_080671A8:
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x39
|
||||
movs r1, #0
|
||||
ldrsb r1, [r2, r1]
|
||||
cmp r1, #2
|
||||
bne _080671F4
|
||||
movs r0, #0
|
||||
strb r1, [r4, #0xc]
|
||||
strb r0, [r2]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x58
|
||||
ldrb r0, [r0]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x69
|
||||
strb r0, [r1]
|
||||
ldr r1, _080671F0 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl sub_0806F5A4
|
||||
adds r1, r0, #0
|
||||
ldrb r0, [r4, #0xa]
|
||||
lsls r0, r0, #3
|
||||
adds r0, #4
|
||||
adds r1, r1, r0
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
adds r0, r4, #0
|
||||
bl sub_0806F118
|
||||
b _08067224
|
||||
.align 2, 0
|
||||
_080671EC: .4byte gUnk_08110CA8
|
||||
_080671F0: .4byte gLinkEntity
|
||||
_080671F4:
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl sub_0807DDAC
|
||||
adds r0, r4, #0
|
||||
bl sub_0807DDE4
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
b _08067224
|
||||
_0806720A:
|
||||
adds r0, r4, #0
|
||||
bl UpdateFuseInteraction
|
||||
cmp r0, #0
|
||||
beq _08067224
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x69
|
||||
ldrb r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
_08067224:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start Carpenter_Head
|
||||
Carpenter_Head: @ 0x08067228
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xa]
|
||||
cmp r0, #1
|
||||
bhi _0806727E
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r2, [r0]
|
||||
movs r0, #0x81
|
||||
rsbs r0, r0, #0
|
||||
ands r2, r0
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl SetExtraSpriteFrame
|
||||
ldrb r2, [r4, #0x1e]
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
bl SetExtraSpriteFrame
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5b
|
||||
ldrb r0, [r0]
|
||||
movs r2, #0x3f
|
||||
ands r2, r0
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
bl SetExtraSpriteFrame
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #0
|
||||
bl SetSpriteSubEntryOffsetData1
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #2
|
||||
bl SetSpriteSubEntryOffsetData2
|
||||
adds r0, r4, #0
|
||||
bl sub_0807000C
|
||||
b _080672AC
|
||||
_0806727E:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r2, [r0]
|
||||
movs r0, #0x81
|
||||
rsbs r0, r0, #0
|
||||
ands r2, r0
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl SetExtraSpriteFrame
|
||||
ldrb r2, [r4, #0x1e]
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
bl SetExtraSpriteFrame
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #0
|
||||
bl SetSpriteSubEntryOffsetData1
|
||||
adds r0, r4, #0
|
||||
bl sub_0807000C
|
||||
_080672AC:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_080672B0
|
||||
sub_080672B0: @ 0x080672B0
|
||||
push {lr}
|
||||
ldrb r2, [r0, #0x14]
|
||||
lsrs r2, r2, #1
|
||||
ldr r1, [r1, #4]
|
||||
adds r1, r1, r2
|
||||
ldrb r2, [r0, #0xa]
|
||||
lsls r2, r2, #3
|
||||
adds r1, r1, r2
|
||||
bl InitializeAnimation
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_080672C8
|
||||
sub_080672C8: @ 0x080672C8
|
||||
push {r4, r5, lr}
|
||||
|
||||
+1
-1
@@ -144,7 +144,7 @@ _080645EA:
|
||||
strb r1, [r2]
|
||||
ldr r1, _08064628 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5A4
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
|
||||
@@ -302,7 +302,7 @@ _080675BC:
|
||||
adds r1, r1, r0
|
||||
ldr r1, [r1]
|
||||
adds r0, r2, #0
|
||||
bl sub_080ADF80
|
||||
bl LoadFixedGFX
|
||||
_080675CC:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
@@ -0,0 +1,372 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start CellOverwriteSet
|
||||
CellOverwriteSet: @ 0x0801BEF8
|
||||
push {r4, r5, r6, r7, lr}
|
||||
mov r7, sl
|
||||
mov r6, sb
|
||||
mov r5, r8
|
||||
push {r5, r6, r7}
|
||||
mov r8, r0
|
||||
ldr r7, _0801BFF0 @ =gLinkEntity
|
||||
ldrb r0, [r0, #0xc]
|
||||
cmp r0, #0
|
||||
bne _0801BF62
|
||||
movs r1, #0x2e
|
||||
ldrsh r0, [r7, r1]
|
||||
ldr r5, _0801BFF4 @ =gUnk_080B7B6C
|
||||
ldrb r1, [r7, #0x14]
|
||||
movs r2, #0xe
|
||||
ands r2, r1
|
||||
adds r1, r2, r5
|
||||
ldrb r1, [r1]
|
||||
lsls r1, r1, #0x18
|
||||
asrs r1, r1, #0x18
|
||||
adds r0, r0, r1
|
||||
ldr r4, _0801BFF8 @ =gRoomControls
|
||||
ldrh r1, [r4, #6]
|
||||
subs r0, r0, r1
|
||||
asrs r0, r0, #4
|
||||
movs r3, #0x3f
|
||||
ands r0, r3
|
||||
movs r6, #0x32
|
||||
ldrsh r1, [r7, r6]
|
||||
adds r2, #1
|
||||
adds r2, r2, r5
|
||||
ldrb r2, [r2]
|
||||
lsls r2, r2, #0x18
|
||||
asrs r2, r2, #0x18
|
||||
adds r1, r1, r2
|
||||
ldrh r2, [r4, #8]
|
||||
subs r1, r1, r2
|
||||
asrs r1, r1, #4
|
||||
ands r1, r3
|
||||
lsls r1, r1, #6
|
||||
orrs r0, r1
|
||||
mov r1, r8
|
||||
adds r1, #0x38
|
||||
ldrb r1, [r1]
|
||||
bl GetTileType
|
||||
mov r1, r8
|
||||
adds r1, #0x6c
|
||||
strh r0, [r1]
|
||||
mov r1, r8
|
||||
ldrb r0, [r1, #0xc]
|
||||
adds r0, #1
|
||||
strb r0, [r1, #0xc]
|
||||
_0801BF62:
|
||||
ldr r2, _0801BFFC @ =gLinkState
|
||||
mov sb, r2
|
||||
ldrb r1, [r2, #0x1a]
|
||||
movs r0, #0x80
|
||||
orrs r0, r1
|
||||
strb r0, [r2, #0x1a]
|
||||
ldr r6, _0801C000 @ =gUnk_03000FF0
|
||||
ldrh r1, [r6]
|
||||
movs r3, #0x80
|
||||
lsls r3, r3, #1
|
||||
mov sl, r3
|
||||
movs r0, #1
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0801C074
|
||||
ldrh r1, [r6, #2]
|
||||
mov r0, sl
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0801BFDA
|
||||
movs r4, #0x2e
|
||||
ldrsh r0, [r7, r4]
|
||||
ldr r5, _0801BFF4 @ =gUnk_080B7B6C
|
||||
mov sb, r5
|
||||
ldrb r1, [r7, #0x14]
|
||||
movs r2, #0xe
|
||||
ands r2, r1
|
||||
adds r1, r2, r5
|
||||
ldrb r1, [r1]
|
||||
lsls r1, r1, #0x18
|
||||
asrs r1, r1, #0x18
|
||||
adds r0, r0, r1
|
||||
ldr r4, _0801BFF8 @ =gRoomControls
|
||||
ldrh r1, [r4, #6]
|
||||
subs r0, r0, r1
|
||||
asrs r0, r0, #4
|
||||
movs r3, #0x3f
|
||||
ands r0, r3
|
||||
movs r5, #0x32
|
||||
ldrsh r1, [r7, r5]
|
||||
adds r2, #1
|
||||
add r2, sb
|
||||
ldrb r2, [r2]
|
||||
lsls r2, r2, #0x18
|
||||
asrs r2, r2, #0x18
|
||||
adds r1, r1, r2
|
||||
ldrh r2, [r4, #8]
|
||||
subs r1, r1, r2
|
||||
asrs r1, r1, #4
|
||||
ands r1, r3
|
||||
lsls r1, r1, #6
|
||||
orrs r0, r1
|
||||
mov r1, r8
|
||||
adds r1, #0x38
|
||||
ldrb r1, [r1]
|
||||
bl GetTileType
|
||||
mov r1, r8
|
||||
adds r1, #0x6c
|
||||
strh r0, [r1]
|
||||
_0801BFDA:
|
||||
ldrh r3, [r6]
|
||||
mov r0, sl
|
||||
ands r0, r3
|
||||
adds r4, r3, #0
|
||||
cmp r0, #0
|
||||
beq _0801C004
|
||||
adds r1, r7, #0
|
||||
adds r1, #0x3d
|
||||
movs r0, #2
|
||||
strb r0, [r1]
|
||||
b _0801C0D4
|
||||
.align 2, 0
|
||||
_0801BFF0: .4byte gLinkEntity
|
||||
_0801BFF4: .4byte gUnk_080B7B6C
|
||||
_0801BFF8: .4byte gRoomControls
|
||||
_0801BFFC: .4byte gLinkState
|
||||
_0801C000: .4byte gUnk_03000FF0
|
||||
_0801C004:
|
||||
ldrh r2, [r6, #2]
|
||||
movs r6, #0x10
|
||||
adds r0, r6, #0
|
||||
ands r0, r2
|
||||
cmp r0, #0
|
||||
beq _0801C01A
|
||||
mov r1, r8
|
||||
adds r1, #0x6c
|
||||
ldrh r0, [r1]
|
||||
subs r0, #1
|
||||
strh r0, [r1]
|
||||
_0801C01A:
|
||||
movs r5, #0x20
|
||||
adds r0, r5, #0
|
||||
ands r0, r2
|
||||
cmp r0, #0
|
||||
beq _0801C02E
|
||||
mov r1, r8
|
||||
adds r1, #0x6c
|
||||
ldrh r0, [r1]
|
||||
adds r0, #1
|
||||
strh r0, [r1]
|
||||
_0801C02E:
|
||||
movs r0, #0x30
|
||||
ands r0, r4
|
||||
cmp r0, #0
|
||||
beq _0801C06E
|
||||
mov r1, r8
|
||||
ldrb r0, [r1, #0xf]
|
||||
adds r0, #1
|
||||
strb r0, [r1, #0xf]
|
||||
lsls r0, r0, #0x18
|
||||
lsrs r0, r0, #0x18
|
||||
cmp r0, #0x1e
|
||||
bls _0801C0D4
|
||||
movs r0, #0x1e
|
||||
strb r0, [r1, #0xf]
|
||||
adds r0, r6, #0
|
||||
ands r0, r4
|
||||
cmp r0, #0
|
||||
beq _0801C05A
|
||||
adds r1, #0x6c
|
||||
ldrh r0, [r1]
|
||||
subs r0, #1
|
||||
strh r0, [r1]
|
||||
_0801C05A:
|
||||
adds r0, r5, #0
|
||||
ands r0, r3
|
||||
cmp r0, #0
|
||||
beq _0801C0D4
|
||||
mov r1, r8
|
||||
adds r1, #0x6c
|
||||
ldrh r0, [r1]
|
||||
adds r0, #1
|
||||
strh r0, [r1]
|
||||
b _0801C0D4
|
||||
_0801C06E:
|
||||
mov r2, r8
|
||||
strb r0, [r2, #0xf]
|
||||
b _0801C0D4
|
||||
_0801C074:
|
||||
mov r0, r8
|
||||
adds r0, #0x6c
|
||||
ldrh r0, [r0]
|
||||
movs r3, #0x2e
|
||||
ldrsh r1, [r7, r3]
|
||||
ldr r4, _0801C1C8 @ =gUnk_080B7B6C
|
||||
mov sl, r4
|
||||
ldrb r2, [r7, #0x14]
|
||||
movs r3, #0xe
|
||||
ands r3, r2
|
||||
adds r2, r3, r4
|
||||
ldrb r2, [r2]
|
||||
lsls r2, r2, #0x18
|
||||
asrs r2, r2, #0x18
|
||||
adds r1, r1, r2
|
||||
ldr r5, _0801C1CC @ =gRoomControls
|
||||
ldrh r2, [r5, #6]
|
||||
subs r1, r1, r2
|
||||
asrs r1, r1, #4
|
||||
movs r4, #0x3f
|
||||
ands r1, r4
|
||||
movs r6, #0x32
|
||||
ldrsh r2, [r7, r6]
|
||||
adds r3, #1
|
||||
add r3, sl
|
||||
ldrb r3, [r3]
|
||||
lsls r3, r3, #0x18
|
||||
asrs r3, r3, #0x18
|
||||
adds r2, r2, r3
|
||||
ldrh r3, [r5, #8]
|
||||
subs r2, r2, r3
|
||||
asrs r2, r2, #4
|
||||
ands r2, r4
|
||||
lsls r2, r2, #6
|
||||
orrs r1, r2
|
||||
mov r2, r8
|
||||
adds r2, #0x38
|
||||
ldrb r2, [r2]
|
||||
bl sub_0807B7D8
|
||||
mov r0, sb
|
||||
ldrb r1, [r0, #0x1a]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
mov r1, sb
|
||||
strb r0, [r1, #0x1a]
|
||||
bl DeleteThisEntity
|
||||
_0801C0D4:
|
||||
ldr r0, _0801C1D0 @ =gUnk_03000FF0
|
||||
ldrh r1, [r0]
|
||||
movs r0, #2
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0801C1BE
|
||||
movs r2, #0x6c
|
||||
add r2, r8
|
||||
mov sb, r2
|
||||
ldrh r0, [r2]
|
||||
movs r3, #0x2e
|
||||
ldrsh r1, [r7, r3]
|
||||
ldr r6, _0801C1C8 @ =gUnk_080B7B6C
|
||||
movs r2, #0
|
||||
ldrsb r2, [r6, r2]
|
||||
adds r1, r1, r2
|
||||
ldr r5, _0801C1CC @ =gRoomControls
|
||||
ldrh r2, [r5, #6]
|
||||
subs r1, r1, r2
|
||||
asrs r1, r1, #4
|
||||
movs r4, #0x3f
|
||||
ands r1, r4
|
||||
movs r3, #0x32
|
||||
ldrsh r2, [r7, r3]
|
||||
movs r3, #1
|
||||
ldrsb r3, [r6, r3]
|
||||
adds r2, r2, r3
|
||||
ldrh r3, [r5, #8]
|
||||
subs r2, r2, r3
|
||||
asrs r2, r2, #4
|
||||
ands r2, r4
|
||||
lsls r2, r2, #6
|
||||
orrs r1, r2
|
||||
movs r2, #0x38
|
||||
add r8, r2
|
||||
mov r3, r8
|
||||
ldrb r2, [r3]
|
||||
bl sub_0807B7D8
|
||||
mov r1, sb
|
||||
ldrh r0, [r1]
|
||||
movs r2, #0x2e
|
||||
ldrsh r1, [r7, r2]
|
||||
movs r2, #2
|
||||
ldrsb r2, [r6, r2]
|
||||
adds r1, r1, r2
|
||||
ldrh r2, [r5, #6]
|
||||
subs r1, r1, r2
|
||||
asrs r1, r1, #4
|
||||
ands r1, r4
|
||||
movs r3, #0x32
|
||||
ldrsh r2, [r7, r3]
|
||||
movs r3, #3
|
||||
ldrsb r3, [r6, r3]
|
||||
adds r2, r2, r3
|
||||
ldrh r3, [r5, #8]
|
||||
subs r2, r2, r3
|
||||
asrs r2, r2, #4
|
||||
ands r2, r4
|
||||
lsls r2, r2, #6
|
||||
orrs r1, r2
|
||||
mov r3, r8
|
||||
ldrb r2, [r3]
|
||||
bl sub_0807B7D8
|
||||
mov r1, sb
|
||||
ldrh r0, [r1]
|
||||
movs r2, #0x2e
|
||||
ldrsh r1, [r7, r2]
|
||||
movs r2, #4
|
||||
ldrsb r2, [r6, r2]
|
||||
adds r1, r1, r2
|
||||
ldrh r2, [r5, #6]
|
||||
subs r1, r1, r2
|
||||
asrs r1, r1, #4
|
||||
ands r1, r4
|
||||
movs r3, #0x32
|
||||
ldrsh r2, [r7, r3]
|
||||
movs r3, #5
|
||||
ldrsb r3, [r6, r3]
|
||||
adds r2, r2, r3
|
||||
ldrh r3, [r5, #8]
|
||||
subs r2, r2, r3
|
||||
asrs r2, r2, #4
|
||||
ands r2, r4
|
||||
lsls r2, r2, #6
|
||||
orrs r1, r2
|
||||
mov r3, r8
|
||||
ldrb r2, [r3]
|
||||
bl sub_0807B7D8
|
||||
mov r1, sb
|
||||
ldrh r0, [r1]
|
||||
movs r2, #0x2e
|
||||
ldrsh r1, [r7, r2]
|
||||
movs r2, #6
|
||||
ldrsb r2, [r6, r2]
|
||||
adds r1, r1, r2
|
||||
ldrh r2, [r5, #6]
|
||||
subs r1, r1, r2
|
||||
asrs r1, r1, #4
|
||||
ands r1, r4
|
||||
movs r3, #0x32
|
||||
ldrsh r2, [r7, r3]
|
||||
movs r3, #7
|
||||
ldrsb r3, [r6, r3]
|
||||
adds r2, r2, r3
|
||||
ldrh r3, [r5, #8]
|
||||
subs r2, r2, r3
|
||||
asrs r2, r2, #4
|
||||
ands r2, r4
|
||||
lsls r2, r2, #6
|
||||
orrs r1, r2
|
||||
mov r4, r8
|
||||
ldrb r2, [r4]
|
||||
bl sub_0807B7D8
|
||||
_0801C1BE:
|
||||
pop {r3, r4, r5}
|
||||
mov r8, r3
|
||||
mov sb, r4
|
||||
mov sl, r5
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_0801C1C8: .4byte gUnk_080B7B6C
|
||||
_0801C1CC: .4byte gRoomControls
|
||||
_0801C1D0: .4byte gUnk_03000FF0
|
||||
+1
-1
@@ -291,7 +291,7 @@ sub_08084074: @ 0x08084074
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r0, #3
|
||||
bl sub_0804B128
|
||||
bl GetCurrentRoomProperty
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _080840A4
|
||||
|
||||
+1
-1
@@ -1475,7 +1475,7 @@ _0801F91C:
|
||||
ldr r0, _0801F93C @ =gUnk_020000B0
|
||||
ldr r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r4, #0x15]
|
||||
_0801F92C:
|
||||
adds r0, r4, #0
|
||||
|
||||
+5
-5
@@ -1223,7 +1223,7 @@ _0802659C:
|
||||
strb r0, [r4]
|
||||
ldr r1, _080265E4 @ =gLinkEntity
|
||||
adds r0, r5, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r5, #0x15]
|
||||
ldr r0, [r7]
|
||||
ldrb r0, [r0, #4]
|
||||
@@ -1374,7 +1374,7 @@ _080266D6:
|
||||
bne _080266EC
|
||||
ldr r1, _08026704 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r4, #0x15]
|
||||
_080266EC:
|
||||
adds r0, r4, #0
|
||||
@@ -1551,7 +1551,7 @@ _08026820:
|
||||
_08026830:
|
||||
ldr r1, _08026868 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r4, #0x15]
|
||||
movs r0, #4
|
||||
strb r0, [r4, #0xd]
|
||||
@@ -1944,7 +1944,7 @@ _08026B2C:
|
||||
strh r0, [r4, #0x2e]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x3e
|
||||
bl sub_080ADF80
|
||||
bl LoadFixedGFX
|
||||
ldrb r0, [r6, #0xb]
|
||||
cmp r0, #0
|
||||
bne _08026B46
|
||||
@@ -4338,7 +4338,7 @@ sub_08027D20: @ 0x08027D20
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x3e
|
||||
bl sub_080ADF80
|
||||
bl LoadFixedGFX
|
||||
ldrb r0, [r5, #0xb]
|
||||
cmp r0, #0
|
||||
bne _08027D5E
|
||||
|
||||
+2
-2
@@ -231,7 +231,7 @@ sub_0800132C: @ 0x0800132C
|
||||
cmp r2, #0x11
|
||||
blo _08001352
|
||||
_0800134E:
|
||||
ldr r3, _08001378 @ =sub_080045C4
|
||||
ldr r3, _08001378 @ =GetFacingDirection
|
||||
bx r3
|
||||
_08001352:
|
||||
movs r0, #0xff
|
||||
@@ -245,7 +245,7 @@ _08001368: .4byte gUnk_080012C8
|
||||
_0800136C: .4byte gUnk_080012C8
|
||||
_08001370: .4byte sub_080AF18C
|
||||
_08001374: .4byte sub_080AF1BC
|
||||
_08001378: .4byte sub_080045C4
|
||||
_08001378: .4byte GetFacingDirection
|
||||
|
||||
gUnk_0800137C:: @ 0800137C
|
||||
.incbin "baserom.gba", 0x00137C, 0x0000004
|
||||
|
||||
+2
-2
@@ -269,8 +269,8 @@ sub_080045B4: @ 0x080045B4
|
||||
ldr r3, _08004690 @ =gUnk_030060F0
|
||||
bx r3
|
||||
|
||||
thumb_func_start sub_080045C4
|
||||
sub_080045C4: @ 0x080045C4
|
||||
thumb_func_start GetFacingDirection
|
||||
GetFacingDirection: @ 0x080045C4
|
||||
push {r4, r5}
|
||||
movs r4, #0x32
|
||||
movs r5, #0x2e
|
||||
|
||||
+5
-5
@@ -387,7 +387,7 @@ _0800882C:
|
||||
movs r3, #0x38
|
||||
ldrb r1, [r4, r3]
|
||||
strb r1, [r0, r3]
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_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 UpdateSpriteOrderAndFlip
|
||||
UpdateSpriteOrderAndFlip: @ 0x08016A04
|
||||
thumb_func_start UpdateSpriteForCollisionLayer
|
||||
UpdateSpriteForCollisionLayer: @ 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 UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
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 UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
pop {r0, r4, pc}
|
||||
|
||||
|
||||
+3
-3
@@ -694,7 +694,7 @@ _08017352:
|
||||
bl sub_0805E3B0
|
||||
cmp r0, #0
|
||||
bne _08017398
|
||||
ldr r1, _08017390 @ =gUnk_080B2CE8
|
||||
ldr r1, _08017390 @ =gPlayerItemFunctions
|
||||
ldrb r0, [r4, #9]
|
||||
lsls r0, r0, #2
|
||||
adds r0, r0, r1
|
||||
@@ -719,7 +719,7 @@ _08017352:
|
||||
subs r0, #1
|
||||
b _08017396
|
||||
.align 2, 0
|
||||
_08017390: .4byte gUnk_080B2CE8
|
||||
_08017390: .4byte gPlayerItemFunctions
|
||||
_08017394:
|
||||
adds r0, #1
|
||||
_08017396:
|
||||
@@ -1567,7 +1567,7 @@ sub_08017940: @ 0x08017940
|
||||
adds r0, #0x38
|
||||
strb r1, [r0]
|
||||
adds r0, r2, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_080179CC:
|
||||
movs r1, #0
|
||||
ldr r0, _080179E8 @ =gLinkEntity
|
||||
|
||||
@@ -924,501 +924,3 @@ _08018C10:
|
||||
.align 2, 0
|
||||
_08018C14: .4byte gUnk_080FEAC8
|
||||
_08018C18: .4byte gUnk_080FE320
|
||||
|
||||
thumb_func_start sub_08018C1C
|
||||
sub_08018C1C: @ 0x08018C1C
|
||||
push {r4, r5, r6, r7, lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
adds r5, r0, #0
|
||||
ldr r6, _08018C54 @ =0x00000185
|
||||
movs r0, #0
|
||||
_08018C28:
|
||||
movs r4, #0
|
||||
movs r1, #0x40
|
||||
adds r1, r1, r5
|
||||
mov r8, r1
|
||||
adds r7, r0, #1
|
||||
_08018C32:
|
||||
adds r0, r6, #0
|
||||
adds r6, #1
|
||||
adds r1, r5, r4
|
||||
movs r2, #1
|
||||
bl SetTileType
|
||||
adds r4, #1
|
||||
cmp r4, #4
|
||||
bls _08018C32
|
||||
mov r5, r8
|
||||
adds r0, r7, #0
|
||||
cmp r0, #3
|
||||
bls _08018C28
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_08018C54: .4byte 0x00000185
|
||||
|
||||
thumb_func_start sub_08018C58
|
||||
sub_08018C58: @ 0x08018C58
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
movs r5, #0
|
||||
_08018C5E:
|
||||
movs r1, #0x98
|
||||
lsls r1, r1, #2
|
||||
adds r0, r5, r1
|
||||
adds r1, r4, #0
|
||||
movs r2, #1
|
||||
bl SetTileType
|
||||
ldr r1, _08018C84 @ =0x00000261
|
||||
adds r0, r5, r1
|
||||
adds r1, r4, #1
|
||||
movs r2, #1
|
||||
bl SetTileType
|
||||
adds r5, #2
|
||||
adds r4, #0x40
|
||||
cmp r5, #5
|
||||
bls _08018C5E
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_08018C84: .4byte 0x00000261
|
||||
|
||||
thumb_func_start sub_08018C88
|
||||
sub_08018C88: @ 0x08018C88
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
adds r0, #0x45
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _08018CB4
|
||||
adds r1, r2, #0
|
||||
adds r1, #0x3d
|
||||
movs r0, #0
|
||||
strb r0, [r1]
|
||||
ldr r1, _08018CB0 @ =gUnk_080B3DD0
|
||||
ldrb r0, [r2, #0xc]
|
||||
lsls r0, r0, #2
|
||||
adds r0, r0, r1
|
||||
ldr r1, [r0]
|
||||
adds r0, r2, #0
|
||||
bl _call_via_r1
|
||||
b _08018CB8
|
||||
.align 2, 0
|
||||
_08018CB0: .4byte gUnk_080B3DD0
|
||||
_08018CB4:
|
||||
bl DeleteThisEntity
|
||||
_08018CB8:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08018CBC
|
||||
sub_08018CBC: @ 0x08018CBC
|
||||
push {r4, r5, r6, r7, lr}
|
||||
adds r4, r0, #0
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x84
|
||||
ldr r5, _08018D50 @ =gLinkEntity
|
||||
ldr r0, [r5, #0x2c]
|
||||
str r0, [r4, #0x2c]
|
||||
str r0, [r1]
|
||||
subs r1, #4
|
||||
ldr r0, [r5, #0x30]
|
||||
str r0, [r4, #0x30]
|
||||
str r0, [r1]
|
||||
ldrb r1, [r5, #0x14]
|
||||
movs r0, #0xe
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x14]
|
||||
lsls r0, r0, #2
|
||||
strb r0, [r4, #0x15]
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #3
|
||||
strh r0, [r4, #0x24]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x3f
|
||||
movs r0, #0x96
|
||||
strb r0, [r1]
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x3c
|
||||
ldrb r0, [r0]
|
||||
adds r0, #1
|
||||
movs r2, #0x80
|
||||
rsbs r2, r2, #0
|
||||
adds r1, r2, #0
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x3c
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x3b
|
||||
ldrb r0, [r0]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x3b
|
||||
strb r0, [r1]
|
||||
ldr r6, [r4, #0x54]
|
||||
cmp r6, #0
|
||||
beq _08018D58
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
movs r0, #0x56
|
||||
strb r0, [r4, #0xe]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x40
|
||||
movs r0, #0x1c
|
||||
strb r0, [r1]
|
||||
adds r1, #4
|
||||
movs r0, #6
|
||||
strb r0, [r1]
|
||||
ldr r0, _08018D54 @ =gUnk_080B3E18
|
||||
str r0, [r4, #0x48]
|
||||
ldr r0, [r4, #0x54]
|
||||
adds r0, #0x62
|
||||
movs r1, #0
|
||||
strb r1, [r0]
|
||||
ldr r2, [r4, #0x54]
|
||||
ldrb r1, [r2, #0x18]
|
||||
movs r0, #4
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
strb r0, [r2, #0x18]
|
||||
b _08018DD2
|
||||
.align 2, 0
|
||||
_08018D50: .4byte gLinkEntity
|
||||
_08018D54: .4byte gUnk_080B3E18
|
||||
_08018D58:
|
||||
ldr r7, _08018DDC @ =gLinkState
|
||||
ldrb r0, [r7, #0x1c]
|
||||
cmp r0, #0
|
||||
bne _08018D64
|
||||
bl DeleteThisEntity
|
||||
_08018D64:
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x18]
|
||||
subs r0, #6
|
||||
ands r0, r1
|
||||
movs r1, #1
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
movs r0, #0xa6
|
||||
strh r0, [r4, #0x12]
|
||||
movs r0, #0x33
|
||||
strb r0, [r4, #0x1a]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x60
|
||||
strh r6, [r0]
|
||||
ldrb r0, [r7, #0x1d]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xa]
|
||||
ldr r1, _08018DE0 @ =gUnk_080B3DE0
|
||||
ldrb r0, [r4, #0xa]
|
||||
lsls r0, r0, #1
|
||||
adds r0, r0, r1
|
||||
ldrb r0, [r0]
|
||||
strb r0, [r4, #0xe]
|
||||
ldrb r0, [r4, #0xa]
|
||||
lsls r0, r0, #1
|
||||
adds r0, #1
|
||||
adds r0, r0, r1
|
||||
ldrb r1, [r0]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x44
|
||||
strb r1, [r0]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x40
|
||||
movs r0, #0x1b
|
||||
strb r0, [r1]
|
||||
ldr r1, _08018DE4 @ =gUnk_080B3DE8
|
||||
ldrb r0, [r4, #0xa]
|
||||
lsls r0, r0, #2
|
||||
adds r0, r0, r1
|
||||
ldr r0, [r0]
|
||||
str r0, [r4, #0x48]
|
||||
str r4, [r5, #0x70]
|
||||
adds r0, r5, #0
|
||||
bl sub_08078CD0
|
||||
str r6, [r5, #0x70]
|
||||
ldrb r1, [r4, #0xa]
|
||||
adds r1, #0xa
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
adds r0, r4, #0
|
||||
bl sub_08018FA0
|
||||
_08018DD2:
|
||||
adds r0, r4, #0
|
||||
bl sub_0801766C
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_08018DDC: .4byte gLinkState
|
||||
_08018DE0: .4byte gUnk_080B3DE0
|
||||
_08018DE4: .4byte gUnk_080B3DE8
|
||||
|
||||
thumb_func_start sub_08018DE8
|
||||
sub_08018DE8: @ 0x08018DE8
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r0, [r4, #0x54]
|
||||
adds r0, #0x3a
|
||||
ldrb r1, [r0]
|
||||
movs r5, #4
|
||||
adds r0, r5, #0
|
||||
ands r0, r1
|
||||
lsls r0, r0, #0x18
|
||||
lsrs r1, r0, #0x18
|
||||
cmp r1, #0
|
||||
bne _08018E08
|
||||
ldr r0, _08018E18 @ =gLinkState
|
||||
strb r1, [r0, #0x1c]
|
||||
bl DeleteThisEntity
|
||||
_08018E08:
|
||||
ldr r0, _08018E18 @ =gLinkState
|
||||
ldrb r0, [r0, #0x1c]
|
||||
cmp r0, #0
|
||||
beq _08018E1C
|
||||
cmp r0, #5
|
||||
beq _08018E24
|
||||
b _08018E5A
|
||||
.align 2, 0
|
||||
_08018E18: .4byte gLinkState
|
||||
_08018E1C:
|
||||
adds r0, r4, #0
|
||||
bl sub_08018F6C
|
||||
b _08018E5A
|
||||
_08018E24:
|
||||
ldr r0, [r4, #0x54]
|
||||
strb r5, [r0, #0xd]
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x80
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
movs r2, #2
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
adds r3, r4, #0
|
||||
adds r3, #0x29
|
||||
ldrb r1, [r3]
|
||||
subs r0, #0xa
|
||||
ands r0, r1
|
||||
orrs r0, r2
|
||||
strb r0, [r3]
|
||||
ldr r2, [r4, #0x54]
|
||||
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, r4, #0
|
||||
bl sub_08018FA0
|
||||
_08018E5A:
|
||||
ldr r0, _08018E64 @ =gLinkEntity
|
||||
bl sub_08078CD0
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_08018E64: .4byte gLinkEntity
|
||||
|
||||
thumb_func_start sub_08018E68
|
||||
sub_08018E68: @ 0x08018E68
|
||||
push {r4, r5, r6, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r0, [r4, #0x54]
|
||||
cmp r0, #0
|
||||
bne _08018E82
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
adds r0, r4, #0
|
||||
movs r1, #5
|
||||
bl sub_08008790
|
||||
b _08018EA8
|
||||
_08018E82:
|
||||
adds r0, #0x3a
|
||||
ldrb r1, [r0]
|
||||
movs r0, #4
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _08018E92
|
||||
bl DeleteThisEntity
|
||||
_08018E92:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x41
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _08018EA8
|
||||
adds r0, r4, #0
|
||||
bl sub_08018F6C
|
||||
b _08018F62
|
||||
_08018EA8:
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
lsrs r0, r0, #0x18
|
||||
cmp r0, #0xff
|
||||
beq _08018F46
|
||||
adds r0, r4, #0
|
||||
bl sub_0806F69C
|
||||
ldrb r0, [r4, #0x15]
|
||||
cmp r0, #8
|
||||
beq _08018EEA
|
||||
cmp r0, #8
|
||||
bgt _08018ECC
|
||||
cmp r0, #0
|
||||
beq _08018ED6
|
||||
b _08018EEE
|
||||
_08018ECC:
|
||||
cmp r0, #0x10
|
||||
beq _08018EDE
|
||||
cmp r0, #0x18
|
||||
beq _08018EE4
|
||||
b _08018EEE
|
||||
_08018ED6:
|
||||
movs r6, #0
|
||||
movs r5, #4
|
||||
rsbs r5, r5, #0
|
||||
b _08018EEE
|
||||
_08018EDE:
|
||||
movs r6, #0
|
||||
movs r5, #4
|
||||
b _08018EEE
|
||||
_08018EE4:
|
||||
movs r6, #4
|
||||
rsbs r6, r6, #0
|
||||
b _08018EEC
|
||||
_08018EEA:
|
||||
movs r6, #4
|
||||
_08018EEC:
|
||||
movs r5, #0
|
||||
_08018EEE:
|
||||
ldr r1, [r4, #0x54]
|
||||
cmp r1, #0
|
||||
beq _08018F00
|
||||
ldrb r0, [r4, #0x15]
|
||||
strb r0, [r1, #0x15]
|
||||
ldr r1, [r4, #0x54]
|
||||
adds r0, r4, #0
|
||||
bl CopyPosition
|
||||
_08018F00:
|
||||
ldrb r0, [r4, #0xb]
|
||||
cmp r0, #0
|
||||
bne _08018F0C
|
||||
adds r0, r4, #0
|
||||
bl sub_0800451C
|
||||
_08018F0C:
|
||||
adds r0, r4, #0
|
||||
adds r1, r6, #0
|
||||
adds r2, r5, #0
|
||||
bl sub_0800029C
|
||||
ldr r1, _08018F64 @ =gUnk_080B3DF4
|
||||
bl sub_08007DD6
|
||||
cmp r0, #0
|
||||
bne _08018F62
|
||||
adds r0, r4, #0
|
||||
adds r1, r6, #0
|
||||
adds r2, r5, #0
|
||||
bl sub_080002B4
|
||||
cmp r0, #0x74
|
||||
beq _08018F62
|
||||
ldr r1, _08018F68 @ =gUnk_08003E44
|
||||
movs r0, #0x2e
|
||||
ldrsh r2, [r4, r0]
|
||||
adds r2, r2, r6
|
||||
movs r0, #0x32
|
||||
ldrsh r3, [r4, r0]
|
||||
adds r3, r3, r5
|
||||
adds r0, r4, #0
|
||||
bl sub_080040D8
|
||||
cmp r0, #0
|
||||
beq _08018F62
|
||||
_08018F46:
|
||||
ldr r0, [r4, #0x54]
|
||||
cmp r0, #0
|
||||
bne _08018F56
|
||||
ldrb r1, [r4, #0xa]
|
||||
adds r1, #0xd
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
_08018F56:
|
||||
ldrb r0, [r4, #0xc]
|
||||
adds r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
adds r0, r4, #0
|
||||
bl sub_08018F6C
|
||||
_08018F62:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_08018F64: .4byte gUnk_080B3DF4
|
||||
_08018F68: .4byte gUnk_08003E44
|
||||
|
||||
thumb_func_start sub_08018F6C
|
||||
sub_08018F6C: @ 0x08018F6C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r1, [r4, #0x54]
|
||||
cmp r1, #0
|
||||
beq _08018F8A
|
||||
movs r0, #5
|
||||
strb r0, [r1, #0xd]
|
||||
ldr r2, [r4, #0x54]
|
||||
ldrb r1, [r2, #0x18]
|
||||
subs r0, #9
|
||||
ands r0, r1
|
||||
movs r1, #1
|
||||
orrs r0, r1
|
||||
strb r0, [r2, #0x18]
|
||||
b _08018F9A
|
||||
_08018F8A:
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _08018F9E
|
||||
_08018F9A:
|
||||
bl DeleteThisEntity
|
||||
_08018F9E:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_08018FA0
|
||||
sub_08018FA0: @ 0x08018FA0
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
ldr r0, _08018FC8 @ =gLinkEntity
|
||||
adds r0, #0x38
|
||||
ldrb r0, [r0]
|
||||
adds r1, r2, #0
|
||||
adds r1, #0x38
|
||||
strb r0, [r1]
|
||||
lsls r0, r0, #0x18
|
||||
lsrs r0, r0, #0x18
|
||||
cmp r0, #2
|
||||
bne _08018FBC
|
||||
movs r0, #1
|
||||
strb r0, [r2, #0xb]
|
||||
_08018FBC:
|
||||
ldrb r0, [r2, #0xa]
|
||||
adds r0, #0xea
|
||||
bl PlaySFX
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08018FC8: .4byte gLinkEntity
|
||||
|
||||
thumb_func_start sub_08018FCC
|
||||
sub_08018FCC: @ 0x08018FCC
|
||||
push {lr}
|
||||
ldr r2, _08018FE0 @ =gUnk_080B3E30
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08018FE0: .4byte gUnk_080B3E30
|
||||
|
||||
+7
-561
@@ -39,8 +39,8 @@ sub_08019468: @ 0x08019468
|
||||
_0801947E:
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_08019480
|
||||
sub_08019480: @ 0x08019480
|
||||
thumb_func_start SwordBeam
|
||||
SwordBeam: @ 0x08019480
|
||||
push {lr}
|
||||
ldr r2, _08019494 @ =gUnk_080B43F4
|
||||
ldrb r1, [r0, #0xc]
|
||||
@@ -3472,7 +3472,7 @@ _0801AE70:
|
||||
bl sub_0805BB74
|
||||
_0801AE8C:
|
||||
movs r0, #5
|
||||
bl sub_0804B128
|
||||
bl GetCurrentRoomProperty
|
||||
cmp r0, #0
|
||||
beq _0801AE9A
|
||||
bl _call_via_r0
|
||||
@@ -4742,7 +4742,7 @@ _0801B7D4:
|
||||
ldr r4, _0801B800 @ =gLinkEntity
|
||||
adds r0, r5, #0
|
||||
adds r1, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r5, #0x15]
|
||||
adds r0, r5, #0
|
||||
bl sub_0806F69C
|
||||
@@ -5027,8 +5027,8 @@ sub_0801B9F0: @ 0x0801B9F0
|
||||
bl sub_08017744
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0801BA00
|
||||
sub_0801BA00: @ 0x0801BA00
|
||||
thumb_func_start SwordSpin
|
||||
SwordSpin: @ 0x0801BA00
|
||||
push {lr}
|
||||
ldr r2, _0801BA14 @ =gUnk_080B7870
|
||||
ldrb r1, [r0, #0xc]
|
||||
@@ -5620,558 +5620,4 @@ _0801BEEE:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0801BEF0: .4byte gLinkEntity
|
||||
_0801BEF4: .4byte gUnk_080B7878
|
||||
|
||||
thumb_func_start sub_0801BEF8
|
||||
sub_0801BEF8: @ 0x0801BEF8
|
||||
push {r4, r5, r6, r7, lr}
|
||||
mov r7, sl
|
||||
mov r6, sb
|
||||
mov r5, r8
|
||||
push {r5, r6, r7}
|
||||
mov r8, r0
|
||||
ldr r7, _0801BFF0 @ =gLinkEntity
|
||||
ldrb r0, [r0, #0xc]
|
||||
cmp r0, #0
|
||||
bne _0801BF62
|
||||
movs r1, #0x2e
|
||||
ldrsh r0, [r7, r1]
|
||||
ldr r5, _0801BFF4 @ =gUnk_080B7B6C
|
||||
ldrb r1, [r7, #0x14]
|
||||
movs r2, #0xe
|
||||
ands r2, r1
|
||||
adds r1, r2, r5
|
||||
ldrb r1, [r1]
|
||||
lsls r1, r1, #0x18
|
||||
asrs r1, r1, #0x18
|
||||
adds r0, r0, r1
|
||||
ldr r4, _0801BFF8 @ =gRoomControls
|
||||
ldrh r1, [r4, #6]
|
||||
subs r0, r0, r1
|
||||
asrs r0, r0, #4
|
||||
movs r3, #0x3f
|
||||
ands r0, r3
|
||||
movs r6, #0x32
|
||||
ldrsh r1, [r7, r6]
|
||||
adds r2, #1
|
||||
adds r2, r2, r5
|
||||
ldrb r2, [r2]
|
||||
lsls r2, r2, #0x18
|
||||
asrs r2, r2, #0x18
|
||||
adds r1, r1, r2
|
||||
ldrh r2, [r4, #8]
|
||||
subs r1, r1, r2
|
||||
asrs r1, r1, #4
|
||||
ands r1, r3
|
||||
lsls r1, r1, #6
|
||||
orrs r0, r1
|
||||
mov r1, r8
|
||||
adds r1, #0x38
|
||||
ldrb r1, [r1]
|
||||
bl GetTileType
|
||||
mov r1, r8
|
||||
adds r1, #0x6c
|
||||
strh r0, [r1]
|
||||
mov r1, r8
|
||||
ldrb r0, [r1, #0xc]
|
||||
adds r0, #1
|
||||
strb r0, [r1, #0xc]
|
||||
_0801BF62:
|
||||
ldr r2, _0801BFFC @ =gLinkState
|
||||
mov sb, r2
|
||||
ldrb r1, [r2, #0x1a]
|
||||
movs r0, #0x80
|
||||
orrs r0, r1
|
||||
strb r0, [r2, #0x1a]
|
||||
ldr r6, _0801C000 @ =gUnk_03000FF0
|
||||
ldrh r1, [r6]
|
||||
movs r3, #0x80
|
||||
lsls r3, r3, #1
|
||||
mov sl, r3
|
||||
movs r0, #1
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0801C074
|
||||
ldrh r1, [r6, #2]
|
||||
mov r0, sl
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0801BFDA
|
||||
movs r4, #0x2e
|
||||
ldrsh r0, [r7, r4]
|
||||
ldr r5, _0801BFF4 @ =gUnk_080B7B6C
|
||||
mov sb, r5
|
||||
ldrb r1, [r7, #0x14]
|
||||
movs r2, #0xe
|
||||
ands r2, r1
|
||||
adds r1, r2, r5
|
||||
ldrb r1, [r1]
|
||||
lsls r1, r1, #0x18
|
||||
asrs r1, r1, #0x18
|
||||
adds r0, r0, r1
|
||||
ldr r4, _0801BFF8 @ =gRoomControls
|
||||
ldrh r1, [r4, #6]
|
||||
subs r0, r0, r1
|
||||
asrs r0, r0, #4
|
||||
movs r3, #0x3f
|
||||
ands r0, r3
|
||||
movs r5, #0x32
|
||||
ldrsh r1, [r7, r5]
|
||||
adds r2, #1
|
||||
add r2, sb
|
||||
ldrb r2, [r2]
|
||||
lsls r2, r2, #0x18
|
||||
asrs r2, r2, #0x18
|
||||
adds r1, r1, r2
|
||||
ldrh r2, [r4, #8]
|
||||
subs r1, r1, r2
|
||||
asrs r1, r1, #4
|
||||
ands r1, r3
|
||||
lsls r1, r1, #6
|
||||
orrs r0, r1
|
||||
mov r1, r8
|
||||
adds r1, #0x38
|
||||
ldrb r1, [r1]
|
||||
bl GetTileType
|
||||
mov r1, r8
|
||||
adds r1, #0x6c
|
||||
strh r0, [r1]
|
||||
_0801BFDA:
|
||||
ldrh r3, [r6]
|
||||
mov r0, sl
|
||||
ands r0, r3
|
||||
adds r4, r3, #0
|
||||
cmp r0, #0
|
||||
beq _0801C004
|
||||
adds r1, r7, #0
|
||||
adds r1, #0x3d
|
||||
movs r0, #2
|
||||
strb r0, [r1]
|
||||
b _0801C0D4
|
||||
.align 2, 0
|
||||
_0801BFF0: .4byte gLinkEntity
|
||||
_0801BFF4: .4byte gUnk_080B7B6C
|
||||
_0801BFF8: .4byte gRoomControls
|
||||
_0801BFFC: .4byte gLinkState
|
||||
_0801C000: .4byte gUnk_03000FF0
|
||||
_0801C004:
|
||||
ldrh r2, [r6, #2]
|
||||
movs r6, #0x10
|
||||
adds r0, r6, #0
|
||||
ands r0, r2
|
||||
cmp r0, #0
|
||||
beq _0801C01A
|
||||
mov r1, r8
|
||||
adds r1, #0x6c
|
||||
ldrh r0, [r1]
|
||||
subs r0, #1
|
||||
strh r0, [r1]
|
||||
_0801C01A:
|
||||
movs r5, #0x20
|
||||
adds r0, r5, #0
|
||||
ands r0, r2
|
||||
cmp r0, #0
|
||||
beq _0801C02E
|
||||
mov r1, r8
|
||||
adds r1, #0x6c
|
||||
ldrh r0, [r1]
|
||||
adds r0, #1
|
||||
strh r0, [r1]
|
||||
_0801C02E:
|
||||
movs r0, #0x30
|
||||
ands r0, r4
|
||||
cmp r0, #0
|
||||
beq _0801C06E
|
||||
mov r1, r8
|
||||
ldrb r0, [r1, #0xf]
|
||||
adds r0, #1
|
||||
strb r0, [r1, #0xf]
|
||||
lsls r0, r0, #0x18
|
||||
lsrs r0, r0, #0x18
|
||||
cmp r0, #0x1e
|
||||
bls _0801C0D4
|
||||
movs r0, #0x1e
|
||||
strb r0, [r1, #0xf]
|
||||
adds r0, r6, #0
|
||||
ands r0, r4
|
||||
cmp r0, #0
|
||||
beq _0801C05A
|
||||
adds r1, #0x6c
|
||||
ldrh r0, [r1]
|
||||
subs r0, #1
|
||||
strh r0, [r1]
|
||||
_0801C05A:
|
||||
adds r0, r5, #0
|
||||
ands r0, r3
|
||||
cmp r0, #0
|
||||
beq _0801C0D4
|
||||
mov r1, r8
|
||||
adds r1, #0x6c
|
||||
ldrh r0, [r1]
|
||||
adds r0, #1
|
||||
strh r0, [r1]
|
||||
b _0801C0D4
|
||||
_0801C06E:
|
||||
mov r2, r8
|
||||
strb r0, [r2, #0xf]
|
||||
b _0801C0D4
|
||||
_0801C074:
|
||||
mov r0, r8
|
||||
adds r0, #0x6c
|
||||
ldrh r0, [r0]
|
||||
movs r3, #0x2e
|
||||
ldrsh r1, [r7, r3]
|
||||
ldr r4, _0801C1C8 @ =gUnk_080B7B6C
|
||||
mov sl, r4
|
||||
ldrb r2, [r7, #0x14]
|
||||
movs r3, #0xe
|
||||
ands r3, r2
|
||||
adds r2, r3, r4
|
||||
ldrb r2, [r2]
|
||||
lsls r2, r2, #0x18
|
||||
asrs r2, r2, #0x18
|
||||
adds r1, r1, r2
|
||||
ldr r5, _0801C1CC @ =gRoomControls
|
||||
ldrh r2, [r5, #6]
|
||||
subs r1, r1, r2
|
||||
asrs r1, r1, #4
|
||||
movs r4, #0x3f
|
||||
ands r1, r4
|
||||
movs r6, #0x32
|
||||
ldrsh r2, [r7, r6]
|
||||
adds r3, #1
|
||||
add r3, sl
|
||||
ldrb r3, [r3]
|
||||
lsls r3, r3, #0x18
|
||||
asrs r3, r3, #0x18
|
||||
adds r2, r2, r3
|
||||
ldrh r3, [r5, #8]
|
||||
subs r2, r2, r3
|
||||
asrs r2, r2, #4
|
||||
ands r2, r4
|
||||
lsls r2, r2, #6
|
||||
orrs r1, r2
|
||||
mov r2, r8
|
||||
adds r2, #0x38
|
||||
ldrb r2, [r2]
|
||||
bl sub_0807B7D8
|
||||
mov r0, sb
|
||||
ldrb r1, [r0, #0x1a]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
mov r1, sb
|
||||
strb r0, [r1, #0x1a]
|
||||
bl DeleteThisEntity
|
||||
_0801C0D4:
|
||||
ldr r0, _0801C1D0 @ =gUnk_03000FF0
|
||||
ldrh r1, [r0]
|
||||
movs r0, #2
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0801C1BE
|
||||
movs r2, #0x6c
|
||||
add r2, r8
|
||||
mov sb, r2
|
||||
ldrh r0, [r2]
|
||||
movs r3, #0x2e
|
||||
ldrsh r1, [r7, r3]
|
||||
ldr r6, _0801C1C8 @ =gUnk_080B7B6C
|
||||
movs r2, #0
|
||||
ldrsb r2, [r6, r2]
|
||||
adds r1, r1, r2
|
||||
ldr r5, _0801C1CC @ =gRoomControls
|
||||
ldrh r2, [r5, #6]
|
||||
subs r1, r1, r2
|
||||
asrs r1, r1, #4
|
||||
movs r4, #0x3f
|
||||
ands r1, r4
|
||||
movs r3, #0x32
|
||||
ldrsh r2, [r7, r3]
|
||||
movs r3, #1
|
||||
ldrsb r3, [r6, r3]
|
||||
adds r2, r2, r3
|
||||
ldrh r3, [r5, #8]
|
||||
subs r2, r2, r3
|
||||
asrs r2, r2, #4
|
||||
ands r2, r4
|
||||
lsls r2, r2, #6
|
||||
orrs r1, r2
|
||||
movs r2, #0x38
|
||||
add r8, r2
|
||||
mov r3, r8
|
||||
ldrb r2, [r3]
|
||||
bl sub_0807B7D8
|
||||
mov r1, sb
|
||||
ldrh r0, [r1]
|
||||
movs r2, #0x2e
|
||||
ldrsh r1, [r7, r2]
|
||||
movs r2, #2
|
||||
ldrsb r2, [r6, r2]
|
||||
adds r1, r1, r2
|
||||
ldrh r2, [r5, #6]
|
||||
subs r1, r1, r2
|
||||
asrs r1, r1, #4
|
||||
ands r1, r4
|
||||
movs r3, #0x32
|
||||
ldrsh r2, [r7, r3]
|
||||
movs r3, #3
|
||||
ldrsb r3, [r6, r3]
|
||||
adds r2, r2, r3
|
||||
ldrh r3, [r5, #8]
|
||||
subs r2, r2, r3
|
||||
asrs r2, r2, #4
|
||||
ands r2, r4
|
||||
lsls r2, r2, #6
|
||||
orrs r1, r2
|
||||
mov r3, r8
|
||||
ldrb r2, [r3]
|
||||
bl sub_0807B7D8
|
||||
mov r1, sb
|
||||
ldrh r0, [r1]
|
||||
movs r2, #0x2e
|
||||
ldrsh r1, [r7, r2]
|
||||
movs r2, #4
|
||||
ldrsb r2, [r6, r2]
|
||||
adds r1, r1, r2
|
||||
ldrh r2, [r5, #6]
|
||||
subs r1, r1, r2
|
||||
asrs r1, r1, #4
|
||||
ands r1, r4
|
||||
movs r3, #0x32
|
||||
ldrsh r2, [r7, r3]
|
||||
movs r3, #5
|
||||
ldrsb r3, [r6, r3]
|
||||
adds r2, r2, r3
|
||||
ldrh r3, [r5, #8]
|
||||
subs r2, r2, r3
|
||||
asrs r2, r2, #4
|
||||
ands r2, r4
|
||||
lsls r2, r2, #6
|
||||
orrs r1, r2
|
||||
mov r3, r8
|
||||
ldrb r2, [r3]
|
||||
bl sub_0807B7D8
|
||||
mov r1, sb
|
||||
ldrh r0, [r1]
|
||||
movs r2, #0x2e
|
||||
ldrsh r1, [r7, r2]
|
||||
movs r2, #6
|
||||
ldrsb r2, [r6, r2]
|
||||
adds r1, r1, r2
|
||||
ldrh r2, [r5, #6]
|
||||
subs r1, r1, r2
|
||||
asrs r1, r1, #4
|
||||
ands r1, r4
|
||||
movs r3, #0x32
|
||||
ldrsh r2, [r7, r3]
|
||||
movs r3, #7
|
||||
ldrsb r3, [r6, r3]
|
||||
adds r2, r2, r3
|
||||
ldrh r3, [r5, #8]
|
||||
subs r2, r2, r3
|
||||
asrs r2, r2, #4
|
||||
ands r2, r4
|
||||
lsls r2, r2, #6
|
||||
orrs r1, r2
|
||||
mov r4, r8
|
||||
ldrb r2, [r4]
|
||||
bl sub_0807B7D8
|
||||
_0801C1BE:
|
||||
pop {r3, r4, r5}
|
||||
mov r8, r3
|
||||
mov sb, r4
|
||||
mov sl, r5
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_0801C1C8: .4byte gUnk_080B7B6C
|
||||
_0801C1CC: .4byte gRoomControls
|
||||
_0801C1D0: .4byte gUnk_03000FF0
|
||||
|
||||
thumb_func_start sub_0801C1D4
|
||||
sub_0801C1D4: @ 0x0801C1D4
|
||||
push {r4, lr}
|
||||
movs r4, #0
|
||||
_0801C1D8:
|
||||
lsls r1, r4, #5
|
||||
ldr r0, _0801C200 @ =gUnk_0200AF34
|
||||
adds r2, r1, r0
|
||||
ldrb r1, [r2]
|
||||
movs r0, #1
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0801C1F8
|
||||
ldrb r0, [r2, #1]
|
||||
lsls r0, r0, #4
|
||||
ldr r1, _0801C204 @ =gUnk_080C8F8C
|
||||
adds r0, r0, r1
|
||||
ldr r1, [r0, #8]
|
||||
adds r0, r2, #0
|
||||
bl _call_via_r1
|
||||
_0801C1F8:
|
||||
adds r4, #1
|
||||
cmp r4, #0x17
|
||||
bls _0801C1D8
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0801C200: .4byte gUnk_0200AF34
|
||||
_0801C204: .4byte gUnk_080C8F8C
|
||||
|
||||
thumb_func_start sub_0801C208
|
||||
sub_0801C208: @ 0x0801C208
|
||||
push {r4, r5, lr}
|
||||
movs r5, #0
|
||||
ldr r4, _0801C250 @ =gUnk_03001010
|
||||
_0801C20E:
|
||||
lsls r1, r5, #5
|
||||
ldr r0, _0801C254 @ =gUnk_0200AF34
|
||||
adds r3, r1, r0
|
||||
ldrb r1, [r3]
|
||||
movs r0, #3
|
||||
ands r0, r1
|
||||
cmp r0, #3
|
||||
bne _0801C248
|
||||
ldrh r0, [r3, #0xc]
|
||||
strh r0, [r4]
|
||||
ldrh r0, [r3, #0xe]
|
||||
strh r0, [r4, #2]
|
||||
ldrb r2, [r3, #1]
|
||||
lsls r2, r2, #4
|
||||
ldr r0, _0801C258 @ =gUnk_080C8F8C
|
||||
adds r2, r2, r0
|
||||
ldrh r0, [r2]
|
||||
strh r0, [r4, #4]
|
||||
ldrh r0, [r2, #2]
|
||||
strh r0, [r4, #6]
|
||||
ldrb r0, [r3, #0x18]
|
||||
lsls r0, r0, #0xc
|
||||
ldrh r1, [r3, #0x1a]
|
||||
orrs r0, r1
|
||||
strh r0, [r4, #8]
|
||||
ldrh r0, [r2, #6]
|
||||
ldrb r1, [r3, #0x10]
|
||||
bl sub_080ADA14
|
||||
_0801C248:
|
||||
adds r5, #1
|
||||
cmp r5, #0x17
|
||||
bls _0801C20E
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0801C250: .4byte gUnk_03001010
|
||||
_0801C254: .4byte gUnk_0200AF34
|
||||
_0801C258: .4byte gUnk_080C8F8C
|
||||
|
||||
thumb_func_start sub_0801C25C
|
||||
sub_0801C25C: @ 0x0801C25C
|
||||
push {r4, r5, r6, r7, lr}
|
||||
movs r4, #0
|
||||
ldr r5, _0801C2E4 @ =gUnk_0200AF34
|
||||
adds r6, r5, #0
|
||||
subs r6, #0x34
|
||||
movs r7, #0xd
|
||||
rsbs r7, r7, #0
|
||||
ldr r3, _0801C2E8 @ =0x040000D4
|
||||
_0801C26C:
|
||||
lsls r0, r4, #5
|
||||
adds r2, r0, r5
|
||||
ldrb r1, [r2]
|
||||
movs r0, #3
|
||||
ands r0, r1
|
||||
cmp r0, #3
|
||||
bne _0801C2A8
|
||||
lsls r0, r1, #0x1c
|
||||
lsrs r0, r0, #0x1e
|
||||
cmp r0, #1
|
||||
bne _0801C2A8
|
||||
adds r0, r7, #0
|
||||
ands r0, r1
|
||||
movs r1, #8
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
ldr r0, [r2, #0x1c]
|
||||
str r0, [r3]
|
||||
ldrh r0, [r2, #0x1a]
|
||||
lsls r0, r0, #5
|
||||
ldr r1, _0801C2EC @ =0x06010000
|
||||
adds r0, r0, r1
|
||||
str r0, [r3, #4]
|
||||
ldrb r0, [r2, #0x19]
|
||||
lsls r0, r0, #3
|
||||
movs r1, #0x84
|
||||
lsls r1, r1, #0x18
|
||||
orrs r0, r1
|
||||
str r0, [r3, #8]
|
||||
ldr r0, [r3, #8]
|
||||
_0801C2A8:
|
||||
adds r4, #1
|
||||
cmp r4, #0x17
|
||||
ble _0801C26C
|
||||
adds r2, r6, #0
|
||||
ldrb r3, [r2, #0x13]
|
||||
movs r0, #0x13
|
||||
ldrsb r0, [r2, r0]
|
||||
cmp r0, #0
|
||||
bge _0801C2C8
|
||||
movs r1, #0x7f
|
||||
ands r1, r3
|
||||
strb r1, [r2, #0x13]
|
||||
movs r0, #0x8d
|
||||
lsls r0, r0, #1
|
||||
bl sub_0801C2F0
|
||||
_0801C2C8:
|
||||
ldrb r2, [r6, #0x14]
|
||||
movs r0, #0x14
|
||||
ldrsb r0, [r6, r0]
|
||||
cmp r0, #0
|
||||
bge _0801C2E0
|
||||
movs r1, #0x7f
|
||||
ands r1, r2
|
||||
strb r1, [r6, #0x14]
|
||||
movs r0, #0x93
|
||||
lsls r0, r0, #1
|
||||
bl sub_0801C2F0
|
||||
_0801C2E0:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_0801C2E4: .4byte gUnk_0200AF34
|
||||
_0801C2E8: .4byte 0x040000D4
|
||||
_0801C2EC: .4byte 0x06010000
|
||||
|
||||
thumb_func_start sub_0801C2F0
|
||||
sub_0801C2F0: @ 0x0801C2F0
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, r1, #0
|
||||
lsls r5, r4, #5
|
||||
ldr r1, _0801C330 @ =0x06010000
|
||||
adds r4, r5, r1
|
||||
movs r1, #0xa
|
||||
bl Div
|
||||
cmp r0, #9
|
||||
bls _0801C308
|
||||
movs r0, #9
|
||||
_0801C308:
|
||||
ldr r2, _0801C334 @ =0x040000D4
|
||||
lsls r0, r0, #5
|
||||
ldr r3, _0801C338 @ =gUnk_085C4620
|
||||
adds r0, r0, r3
|
||||
str r0, [r2]
|
||||
str r4, [r2, #4]
|
||||
ldr r4, _0801C33C @ =0x84000008
|
||||
str r4, [r2, #8]
|
||||
ldr r0, [r2, #8]
|
||||
adds r1, #0xa
|
||||
lsls r1, r1, #5
|
||||
adds r1, r1, r3
|
||||
str r1, [r2]
|
||||
ldr r1, _0801C340 @ =0x06010020
|
||||
adds r0, r5, r1
|
||||
str r0, [r2, #4]
|
||||
str r4, [r2, #8]
|
||||
ldr r0, [r2, #8]
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0801C330: .4byte 0x06010000
|
||||
_0801C334: .4byte 0x040000D4
|
||||
_0801C338: .4byte gUnk_085C4620
|
||||
_0801C33C: .4byte 0x84000008
|
||||
_0801C340: .4byte 0x06010020
|
||||
_0801BEF4: .4byte gUnk_080B7878
|
||||
@@ -0,0 +1,196 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_0801C1D4
|
||||
sub_0801C1D4: @ 0x0801C1D4
|
||||
push {r4, lr}
|
||||
movs r4, #0
|
||||
_0801C1D8:
|
||||
lsls r1, r4, #5
|
||||
ldr r0, _0801C200 @ =gUnk_0200AF34
|
||||
adds r2, r1, r0
|
||||
ldrb r1, [r2]
|
||||
movs r0, #1
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0801C1F8
|
||||
ldrb r0, [r2, #1]
|
||||
lsls r0, r0, #4
|
||||
ldr r1, _0801C204 @ =gUnk_080C8F8C
|
||||
adds r0, r0, r1
|
||||
ldr r1, [r0, #8]
|
||||
adds r0, r2, #0
|
||||
bl _call_via_r1
|
||||
_0801C1F8:
|
||||
adds r4, #1
|
||||
cmp r4, #0x17
|
||||
bls _0801C1D8
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0801C200: .4byte gUnk_0200AF34
|
||||
_0801C204: .4byte gUnk_080C8F8C
|
||||
|
||||
thumb_func_start sub_0801C208
|
||||
sub_0801C208: @ 0x0801C208
|
||||
push {r4, r5, lr}
|
||||
movs r5, #0
|
||||
ldr r4, _0801C250 @ =gUnk_03001010
|
||||
_0801C20E:
|
||||
lsls r1, r5, #5
|
||||
ldr r0, _0801C254 @ =gUnk_0200AF34
|
||||
adds r3, r1, r0
|
||||
ldrb r1, [r3]
|
||||
movs r0, #3
|
||||
ands r0, r1
|
||||
cmp r0, #3
|
||||
bne _0801C248
|
||||
ldrh r0, [r3, #0xc]
|
||||
strh r0, [r4]
|
||||
ldrh r0, [r3, #0xe]
|
||||
strh r0, [r4, #2]
|
||||
ldrb r2, [r3, #1]
|
||||
lsls r2, r2, #4
|
||||
ldr r0, _0801C258 @ =gUnk_080C8F8C
|
||||
adds r2, r2, r0
|
||||
ldrh r0, [r2]
|
||||
strh r0, [r4, #4]
|
||||
ldrh r0, [r2, #2]
|
||||
strh r0, [r4, #6]
|
||||
ldrb r0, [r3, #0x18]
|
||||
lsls r0, r0, #0xc
|
||||
ldrh r1, [r3, #0x1a]
|
||||
orrs r0, r1
|
||||
strh r0, [r4, #8]
|
||||
ldrh r0, [r2, #6]
|
||||
ldrb r1, [r3, #0x10]
|
||||
bl sub_080ADA14
|
||||
_0801C248:
|
||||
adds r5, #1
|
||||
cmp r5, #0x17
|
||||
bls _0801C20E
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0801C250: .4byte gUnk_03001010
|
||||
_0801C254: .4byte gUnk_0200AF34
|
||||
_0801C258: .4byte gUnk_080C8F8C
|
||||
|
||||
thumb_func_start sub_0801C25C
|
||||
sub_0801C25C: @ 0x0801C25C
|
||||
push {r4, r5, r6, r7, lr}
|
||||
movs r4, #0
|
||||
ldr r5, _0801C2E4 @ =gUnk_0200AF34
|
||||
adds r6, r5, #0
|
||||
subs r6, #0x34
|
||||
movs r7, #0xd
|
||||
rsbs r7, r7, #0
|
||||
ldr r3, _0801C2E8 @ =0x040000D4
|
||||
_0801C26C:
|
||||
lsls r0, r4, #5
|
||||
adds r2, r0, r5
|
||||
ldrb r1, [r2]
|
||||
movs r0, #3
|
||||
ands r0, r1
|
||||
cmp r0, #3
|
||||
bne _0801C2A8
|
||||
lsls r0, r1, #0x1c
|
||||
lsrs r0, r0, #0x1e
|
||||
cmp r0, #1
|
||||
bne _0801C2A8
|
||||
adds r0, r7, #0
|
||||
ands r0, r1
|
||||
movs r1, #8
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
ldr r0, [r2, #0x1c]
|
||||
str r0, [r3]
|
||||
ldrh r0, [r2, #0x1a]
|
||||
lsls r0, r0, #5
|
||||
ldr r1, _0801C2EC @ =0x06010000
|
||||
adds r0, r0, r1
|
||||
str r0, [r3, #4]
|
||||
ldrb r0, [r2, #0x19]
|
||||
lsls r0, r0, #3
|
||||
movs r1, #0x84
|
||||
lsls r1, r1, #0x18
|
||||
orrs r0, r1
|
||||
str r0, [r3, #8]
|
||||
ldr r0, [r3, #8]
|
||||
_0801C2A8:
|
||||
adds r4, #1
|
||||
cmp r4, #0x17
|
||||
ble _0801C26C
|
||||
adds r2, r6, #0
|
||||
ldrb r3, [r2, #0x13]
|
||||
movs r0, #0x13
|
||||
ldrsb r0, [r2, r0]
|
||||
cmp r0, #0
|
||||
bge _0801C2C8
|
||||
movs r1, #0x7f
|
||||
ands r1, r3
|
||||
strb r1, [r2, #0x13]
|
||||
movs r0, #0x8d
|
||||
lsls r0, r0, #1
|
||||
bl sub_0801C2F0
|
||||
_0801C2C8:
|
||||
ldrb r2, [r6, #0x14]
|
||||
movs r0, #0x14
|
||||
ldrsb r0, [r6, r0]
|
||||
cmp r0, #0
|
||||
bge _0801C2E0
|
||||
movs r1, #0x7f
|
||||
ands r1, r2
|
||||
strb r1, [r6, #0x14]
|
||||
movs r0, #0x93
|
||||
lsls r0, r0, #1
|
||||
bl sub_0801C2F0
|
||||
_0801C2E0:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_0801C2E4: .4byte gUnk_0200AF34
|
||||
_0801C2E8: .4byte 0x040000D4
|
||||
_0801C2EC: .4byte 0x06010000
|
||||
|
||||
thumb_func_start sub_0801C2F0
|
||||
sub_0801C2F0: @ 0x0801C2F0
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, r1, #0
|
||||
lsls r5, r4, #5
|
||||
ldr r1, _0801C330 @ =0x06010000
|
||||
adds r4, r5, r1
|
||||
movs r1, #0xa
|
||||
bl Div
|
||||
cmp r0, #9
|
||||
bls _0801C308
|
||||
movs r0, #9
|
||||
_0801C308:
|
||||
ldr r2, _0801C334 @ =0x040000D4
|
||||
lsls r0, r0, #5
|
||||
ldr r3, _0801C338 @ =gUnk_085C4620
|
||||
adds r0, r0, r3
|
||||
str r0, [r2]
|
||||
str r4, [r2, #4]
|
||||
ldr r4, _0801C33C @ =0x84000008
|
||||
str r4, [r2, #8]
|
||||
ldr r0, [r2, #8]
|
||||
adds r1, #0xa
|
||||
lsls r1, r1, #5
|
||||
adds r1, r1, r3
|
||||
str r1, [r2]
|
||||
ldr r1, _0801C340 @ =0x06010020
|
||||
adds r0, r5, r1
|
||||
str r0, [r2, #4]
|
||||
str r4, [r2, #8]
|
||||
ldr r0, [r2, #8]
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0801C330: .4byte 0x06010000
|
||||
_0801C334: .4byte 0x040000D4
|
||||
_0801C338: .4byte gUnk_085C4620
|
||||
_0801C33C: .4byte 0x84000008
|
||||
_0801C340: .4byte 0x06010020
|
||||
+3
-3
@@ -393,7 +393,7 @@ sub_08049F84: @ 0x08049F84
|
||||
cmp r1, #0
|
||||
beq _08049F9C
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
b _08049F9E
|
||||
_08049F9C:
|
||||
movs r0, #0xff
|
||||
@@ -1290,7 +1290,7 @@ _0804A612:
|
||||
strb r0, [r1]
|
||||
_0804A638:
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r5, r4, #0
|
||||
adds r5, #0x6d
|
||||
ldrb r1, [r5]
|
||||
@@ -1394,7 +1394,7 @@ _0804A6E8:
|
||||
_0804A702:
|
||||
ldrh r1, [r5]
|
||||
adds r0, r4, #0
|
||||
bl sub_080ADF80
|
||||
bl LoadFixedGFX
|
||||
_0804A70A:
|
||||
cmp r0, #0
|
||||
bne _0804A712
|
||||
|
||||
+1
-1
@@ -169,7 +169,7 @@ sub_0804AFDC: @ 0x0804AFDC
|
||||
push {r4, lr}
|
||||
movs r4, #1
|
||||
movs r0, #6
|
||||
bl sub_0804B128
|
||||
bl GetCurrentRoomProperty
|
||||
cmp r0, #0
|
||||
beq _0804AFF0
|
||||
bl _call_via_r0
|
||||
|
||||
+2
-2
@@ -120,8 +120,8 @@ _0804B120:
|
||||
.align 2, 0
|
||||
_0804B124: .4byte gUnk_080D50FC
|
||||
|
||||
thumb_func_start sub_0804B128
|
||||
sub_0804B128: @ 0x0804B128
|
||||
thumb_func_start GetCurrentRoomProperty
|
||||
GetCurrentRoomProperty: @ 0x0804B128
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
ldr r0, _0804B138 @ =gUnk_02017654
|
||||
|
||||
+2
-2
@@ -685,7 +685,7 @@ _08054842:
|
||||
adds r0, #0x38
|
||||
strb r1, [r0]
|
||||
adds r0, r2, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_0805486A:
|
||||
adds r0, r4, #0
|
||||
_0805486C:
|
||||
@@ -1551,7 +1551,7 @@ sub_08054EFC: @ 0x08054EFC
|
||||
movs r0, #2
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x35
|
||||
movs r2, #0
|
||||
|
||||
+2
-2
@@ -434,8 +434,8 @@ _08056324:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08056328
|
||||
sub_08056328: @ 0x08056328
|
||||
thumb_func_start NulledItem
|
||||
NulledItem: @ 0x08056328
|
||||
push {lr}
|
||||
bl DeleteThisEntity
|
||||
pop {pc}
|
||||
|
||||
+2
-2
@@ -103,7 +103,7 @@ _0806ECC0:
|
||||
b _0806ECD0
|
||||
_0806ECCA:
|
||||
adds r0, r4, #0
|
||||
bl sub_080ADF80
|
||||
bl LoadFixedGFX
|
||||
_0806ECD0:
|
||||
ldrh r0, [r5, #4]
|
||||
lsls r0, r0, #0x16
|
||||
@@ -163,7 +163,7 @@ _0806ECD0:
|
||||
strb r1, [r0]
|
||||
strb r1, [r4, #0x1e]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_0806ED4A:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
+7
-7
@@ -40,7 +40,7 @@ sub_0806ED9C: @ 0x0806ED9C
|
||||
cmp r0, #0
|
||||
beq _0806EDBC
|
||||
adds r0, r5, #0
|
||||
bl sub_0806EDC4
|
||||
bl GetAnimationState
|
||||
adds r6, r0, #0
|
||||
_0806EDBC:
|
||||
adds r0, r6, #0
|
||||
@@ -48,11 +48,11 @@ _0806EDBC:
|
||||
.align 2, 0
|
||||
_0806EDC0: .4byte gLinkEntity
|
||||
|
||||
thumb_func_start sub_0806EDC4
|
||||
sub_0806EDC4: @ 0x0806EDC4
|
||||
thumb_func_start GetAnimationState
|
||||
GetAnimationState: @ 0x0806EDC4
|
||||
push {lr}
|
||||
ldr r1, _0806EDD4 @ =gLinkEntity
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5A4
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
@@ -74,7 +74,7 @@ sub_0806EDD8: @ 0x0806EDD8
|
||||
beq _0806EDFC
|
||||
adds r0, r5, #0
|
||||
adds r1, r6, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r7, r0, #0
|
||||
_0806EDFC:
|
||||
adds r0, r7, #0
|
||||
@@ -129,7 +129,7 @@ _0806EE4C:
|
||||
strh r0, [r1]
|
||||
ldr r1, _0806EE6C @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5A4
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x3e
|
||||
@@ -979,7 +979,7 @@ _0806F444:
|
||||
ldrh r4, [r3]
|
||||
adds r0, r5, #0
|
||||
mov r1, sp
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r2, r0, #0
|
||||
adds r0, r5, #0
|
||||
adds r1, r4, #0
|
||||
|
||||
+2
-2
@@ -242,14 +242,14 @@ _0806FC9C:
|
||||
thumb_func_start sub_0806FCA0
|
||||
sub_0806FCA0: @ 0x0806FCA0
|
||||
push {lr}
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5A4
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0806FCAC
|
||||
sub_0806FCAC: @ 0x0806FCAC
|
||||
push {lr}
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5B0
|
||||
pop {pc}
|
||||
|
||||
|
||||
+3
-3
@@ -3241,7 +3241,7 @@ sub_08071F80: @ 0x08071F80
|
||||
cmp r5, #0
|
||||
bne _08071FB8
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
ldr r0, _08071FB4 @ =gLinkState
|
||||
strb r5, [r0, #2]
|
||||
ldrb r0, [r0, #0x14]
|
||||
@@ -3537,7 +3537,7 @@ _080721AC:
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
bl sub_080791BC
|
||||
_080721DE:
|
||||
pop {r4, pc}
|
||||
@@ -3774,7 +3774,7 @@ sub_08072354: @ 0x08072354
|
||||
ands r0, r1
|
||||
str r0, [r2, #0x30]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r0, r4, #0
|
||||
movs r1, #0xc
|
||||
movs r2, #0
|
||||
|
||||
+3
-3
@@ -3153,7 +3153,7 @@ sub_08074A48: @ 0x08074A48
|
||||
movs r0, #1
|
||||
strb r0, [r1, #0xe]
|
||||
adds r0, r1, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
ldrh r1, [r5, #0x22]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x38
|
||||
@@ -4331,8 +4331,8 @@ sub_080752E8: @ 0x080752E8
|
||||
.align 2, 0
|
||||
_080752FC: .4byte gItemFunctions
|
||||
|
||||
thumb_func_start CellOverwriteSet
|
||||
CellOverwriteSet: @ 0x08075300
|
||||
thumb_func_start DebugItem
|
||||
DebugItem: @ 0x08075300
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
adds r5, r1, #0
|
||||
|
||||
+1
-1
@@ -3397,7 +3397,7 @@ _080794F4:
|
||||
bne _080794F4
|
||||
_08079514:
|
||||
ldr r0, _0807951C @ =gLinkEntity
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0807951C: .4byte gLinkEntity
|
||||
|
||||
+1
-1
@@ -1807,7 +1807,7 @@ _0807C7C2:
|
||||
movs r1, #1
|
||||
strb r1, [r0]
|
||||
ldr r0, [r4, #0x30]
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_0807C7FC:
|
||||
ldrb r1, [r4, #0xf]
|
||||
movs r0, #0xfb
|
||||
|
||||
+7
-7
@@ -3013,7 +3013,7 @@ sub_0807E30C: @ 0x0807E30C
|
||||
beq _0807E348
|
||||
adds r0, r5, #0
|
||||
adds r1, r6, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5B0
|
||||
strb r0, [r5, #0x14]
|
||||
_0807E348:
|
||||
@@ -3032,7 +3032,7 @@ _0807E348:
|
||||
str r0, [r4, #0x14]
|
||||
ldr r1, _0807E378 @ =gLinkEntity
|
||||
adds r0, r5, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5B0
|
||||
strb r0, [r5, #0x14]
|
||||
b _0807E37E
|
||||
@@ -4213,7 +4213,7 @@ sub_0807EB74: @ 0x0807EB74
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r1, _0807EB88 @ =gLinkEntity
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5B0
|
||||
strb r0, [r4, #0x14]
|
||||
pop {r4, pc}
|
||||
@@ -4226,7 +4226,7 @@ sub_0807EB8C: @ 0x0807EB8C
|
||||
adds r1, r0, #0
|
||||
ldr r4, _0807EBA4 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5B0
|
||||
movs r1, #0xfe
|
||||
ands r0, r1
|
||||
@@ -5065,7 +5065,7 @@ sub_0807F158: @ 0x0807F158
|
||||
adds r2, #0x38
|
||||
movs r1, #1
|
||||
strb r1, [r2]
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0807F168
|
||||
@@ -5076,7 +5076,7 @@ sub_0807F168: @ 0x0807F168
|
||||
adds r2, #0x38
|
||||
movs r1, #1
|
||||
strb r1, [r2]
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0807F17C: .4byte gLinkEntity
|
||||
@@ -5088,7 +5088,7 @@ sub_0807F180: @ 0x0807F180
|
||||
adds r2, #0x38
|
||||
movs r1, #2
|
||||
strb r1, [r2]
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0807F190
|
||||
|
||||
@@ -4,125 +4,6 @@
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_080A29BC
|
||||
sub_080A29BC: @ 0x080A29BC
|
||||
push {lr}
|
||||
movs r1, #2
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_080A29C8
|
||||
sub_080A29C8: @ 0x080A29C8
|
||||
push {r4, r5, r6, lr}
|
||||
adds r4, r0, #0
|
||||
adds r5, r1, #0
|
||||
adds r6, r2, #0
|
||||
movs r0, #0xf
|
||||
movs r1, #2
|
||||
movs r2, #0
|
||||
bl CreateObject
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0
|
||||
beq _080A29F4
|
||||
ldr r1, _080A29F8 @ =gRoomControls
|
||||
ldrh r0, [r1, #6]
|
||||
adds r0, r0, r4
|
||||
strh r0, [r2, #0x2e]
|
||||
ldrh r0, [r1, #8]
|
||||
adds r0, r0, r5
|
||||
strh r0, [r2, #0x32]
|
||||
adds r0, r2, #0
|
||||
adds r0, #0x38
|
||||
strb r6, [r0]
|
||||
_080A29F4:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_080A29F8: .4byte gRoomControls
|
||||
|
||||
thumb_func_start sub_080A29FC
|
||||
sub_080A29FC: @ 0x080A29FC
|
||||
push {lr}
|
||||
movs r1, #0x11
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_080A2A08
|
||||
sub_080A2A08: @ 0x080A2A08
|
||||
push {lr}
|
||||
movs r1, #6
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_080A2A14
|
||||
sub_080A2A14: @ 0x080A2A14
|
||||
push {lr}
|
||||
movs r1, #0xb
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_080A2A20
|
||||
sub_080A2A20: @ 0x080A2A20
|
||||
push {r4, lr}
|
||||
adds r4, r1, #0
|
||||
adds r3, r2, #0
|
||||
movs r1, #0
|
||||
adds r2, r4, #0
|
||||
bl CreateObjectWithParent
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _080A2A38
|
||||
movs r0, #5
|
||||
strb r0, [r1, #0xe]
|
||||
_080A2A38:
|
||||
adds r0, r1, #0
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_080A2A3C
|
||||
sub_080A2A3C: @ 0x080A2A3C
|
||||
push {r4, r5, r6, lr}
|
||||
adds r4, r1, #0
|
||||
adds r5, r2, #0
|
||||
adds r6, r3, #0
|
||||
movs r1, #0
|
||||
adds r2, r4, #0
|
||||
adds r3, r5, #0
|
||||
bl CreateObjectWithParent
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _080A2A5E
|
||||
movs r0, #5
|
||||
strb r0, [r1, #0xe]
|
||||
adds r0, r1, #0
|
||||
adds r0, #0x86
|
||||
strh r6, [r0]
|
||||
_080A2A5E:
|
||||
adds r0, r1, #0
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_080A2A64
|
||||
sub_080A2A64: @ 0x080A2A64
|
||||
push {lr}
|
||||
movs r1, #0x20
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0
|
||||
beq _080A2A80
|
||||
adds r3, r2, #0
|
||||
adds r3, #0x29
|
||||
ldrb r0, [r3]
|
||||
movs r1, #7
|
||||
orrs r0, r1
|
||||
strb r0, [r3]
|
||||
_080A2A80:
|
||||
adds r0, r2, #0
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_080A2A84
|
||||
sub_080A2A84: @ 0x080A2A84
|
||||
|
||||
+15
-15
@@ -5029,7 +5029,7 @@ sub_080A7CFC: @ 0x080A7CFC
|
||||
lsls r4, r4, #3
|
||||
movs r6, #0
|
||||
movs r0, #3
|
||||
bl sub_0804B128
|
||||
bl GetCurrentRoomProperty
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _080A7D38
|
||||
@@ -5202,7 +5202,7 @@ _080A7E14:
|
||||
ldr r0, [r5, #4]
|
||||
str r0, [r4, #0x48]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_080A7E4A:
|
||||
movs r0, #1
|
||||
_080A7E4C:
|
||||
@@ -5247,7 +5247,7 @@ _080A7E78:
|
||||
_080A7E92:
|
||||
ldrh r1, [r5]
|
||||
adds r0, r4, #0
|
||||
bl sub_080ADF80
|
||||
bl LoadFixedGFX
|
||||
_080A7E9A:
|
||||
cmp r0, #0
|
||||
bne _080A7EA2
|
||||
@@ -7600,7 +7600,7 @@ _080A8FE8:
|
||||
strb r0, [r4, #0xf]
|
||||
ldr r1, _080A9048 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
bl sub_08004596
|
||||
@@ -10132,7 +10132,7 @@ sub_080AA2E0: @ 0x080AA2E0
|
||||
beq _080AA31C
|
||||
adds r0, r5, #0
|
||||
adds r1, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
ldrb r1, [r5, #0x14]
|
||||
lsls r1, r1, #2
|
||||
adds r0, #4
|
||||
@@ -10441,7 +10441,7 @@ sub_080AA534: @ 0x080AA534
|
||||
adds r2, #0x38
|
||||
movs r1, #3
|
||||
strb r1, [r2]
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_080AA544
|
||||
@@ -11638,7 +11638,7 @@ _080AADE0:
|
||||
strb r0, [r2]
|
||||
ldr r1, _080AAE60 @ =gLinkEntity
|
||||
adds r0, r5, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r5, #0x15]
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x86
|
||||
@@ -11706,7 +11706,7 @@ _080AAEA2:
|
||||
strb r0, [r4, #0xf]
|
||||
ldr r1, _080AAECC @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
bl sub_08004596
|
||||
@@ -13924,7 +13924,7 @@ sub_080ABF40: @ 0x080ABF40
|
||||
strb r0, [r4, #0xc]
|
||||
ldr r1, _080ABFA0 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r4, #0x15]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
@@ -14120,7 +14120,7 @@ _080AC0B2:
|
||||
strb r0, [r4, #0xc]
|
||||
ldr r1, _080AC0EC @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r4, #0x15]
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #1
|
||||
@@ -14185,7 +14185,7 @@ _080AC13A:
|
||||
bne _080AC160
|
||||
ldr r1, _080AC164 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
bl sub_08004596
|
||||
@@ -14223,7 +14223,7 @@ sub_080AC168: @ 0x080AC168
|
||||
strb r0, [r4, #0xf]
|
||||
ldr r1, _080AC1C8 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r1, r0, #0
|
||||
ldr r0, [r4, #0x50]
|
||||
adds r0, #0x84
|
||||
@@ -15257,7 +15257,7 @@ sub_080AC928: @ 0x080AC928
|
||||
movs r0, #2
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl InitializeAnimation
|
||||
@@ -15313,7 +15313,7 @@ _080AC964:
|
||||
strb r0, [r5, #0x10]
|
||||
ldr r1, _080AC9C8 @ =gLinkEntity
|
||||
adds r0, r5, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r5, #0x15]
|
||||
movs r0, #0x97
|
||||
lsls r0, r0, #1
|
||||
@@ -16380,7 +16380,7 @@ _080AD188:
|
||||
bl PlaySFX
|
||||
_080AD196:
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
movs r0, #3
|
||||
strb r0, [r5, #0xd]
|
||||
ldrb r2, [r4, #0x19]
|
||||
|
||||
+2
-2
@@ -867,8 +867,8 @@ _080ADF7C:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_080ADF80
|
||||
sub_080ADF80: @ 0x080ADF80
|
||||
thumb_func_start LoadFixedGFX
|
||||
LoadFixedGFX: @ 0x080ADF80
|
||||
push {r4, r5, r6, r7, lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
|
||||
@@ -5,6 +5,19 @@
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_08018FCC
|
||||
sub_08018FCC: @ 0x08018FCC
|
||||
push {lr}
|
||||
ldr r2, _08018FE0 @ =gUnk_080B3E30
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08018FE0: .4byte gUnk_080B3E30
|
||||
|
||||
thumb_func_start sub_08018FE4
|
||||
sub_08018FE4: @ 0x08018FE4
|
||||
|
||||
+2
-2
@@ -220,7 +220,7 @@ sub_08032928: @ 0x08032928
|
||||
adds r1, #0x7a
|
||||
strh r0, [r1]
|
||||
adds r0, r6, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r0, r6, #0
|
||||
bl sub_08032AF4
|
||||
pop {r4, r5, r6, pc}
|
||||
@@ -368,7 +368,7 @@ sub_08032A48: @ 0x08032A48
|
||||
movs r0, #3
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r0, r4, #0
|
||||
bl sub_08032AF4
|
||||
_08032AAE:
|
||||
|
||||
+4
-4
@@ -240,7 +240,7 @@ sub_08038E18: @ 0x08038E18
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_08038E70:
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
@@ -357,7 +357,7 @@ sub_08038F44: @ 0x08038F44
|
||||
adds r4, r0, #0
|
||||
ldr r0, _08038F8C @ =gLinkEntity
|
||||
adds r1, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r4, #0x15]
|
||||
adds r0, r4, #0
|
||||
bl sub_080390F8
|
||||
@@ -422,7 +422,7 @@ _08038FB8:
|
||||
bne _08038FE0
|
||||
ldr r1, _08038FF8 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
bl sub_08004596
|
||||
@@ -614,7 +614,7 @@ sub_08039140: @ 0x08039140
|
||||
strb r0, [r4, #0xe]
|
||||
ldr r1, _08039174 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r4, #0x15]
|
||||
ldr r0, _08039178 @ =0x0000FFFC
|
||||
strh r0, [r4, #0x36]
|
||||
|
||||
@@ -319,7 +319,7 @@ sub_08022B44: @ 0x08022B44
|
||||
str r0, [r4, #0x20]
|
||||
ldr r1, _08022B84 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r1, r0, #0
|
||||
strb r1, [r4, #0x15]
|
||||
movs r0, #0xf
|
||||
|
||||
-245
@@ -1,245 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start Dampe
|
||||
Dampe: @ 0x0806BDAC
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xc]
|
||||
cmp r0, #1
|
||||
beq _0806BDE6
|
||||
cmp r0, #1
|
||||
bgt _0806BDC0
|
||||
cmp r0, #0
|
||||
beq _0806BDC6
|
||||
b _0806BE3A
|
||||
_0806BDC0:
|
||||
cmp r0, #2
|
||||
beq _0806BE26
|
||||
b _0806BE3A
|
||||
_0806BDC6:
|
||||
movs r2, #1
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x18]
|
||||
subs r0, #5
|
||||
ands r0, r1
|
||||
orrs r0, r2
|
||||
strb r0, [r4, #0x18]
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
bl sub_0805E3A0
|
||||
adds r0, r4, #0
|
||||
bl sub_0807DD50
|
||||
b _0806BE3A
|
||||
_0806BDE6:
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x39
|
||||
movs r1, #0
|
||||
ldrsb r1, [r2, r1]
|
||||
cmp r1, #2
|
||||
bne _0806BE1C
|
||||
movs r0, #0
|
||||
strb r1, [r4, #0xc]
|
||||
strb r0, [r2]
|
||||
ldr r1, _0806BE18 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl sub_0806F5A4
|
||||
adds r1, r0, #0
|
||||
adds r1, #4
|
||||
adds r0, r4, #0
|
||||
bl InitAnimationForceUpdate
|
||||
adds r0, r4, #0
|
||||
bl sub_0806F118
|
||||
b _0806BE3A
|
||||
.align 2, 0
|
||||
_0806BE18: .4byte gLinkEntity
|
||||
_0806BE1C:
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl sub_0807DD94
|
||||
b _0806BE3A
|
||||
_0806BE26:
|
||||
adds r0, r4, #0
|
||||
bl UpdateAnimationSingleFrame
|
||||
adds r0, r4, #0
|
||||
bl UpdateFuseInteraction
|
||||
cmp r0, #0
|
||||
beq _0806BE3A
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
_0806BE3A:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0806BE3C
|
||||
sub_0806BE3C: @ 0x0806BE3C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0801E99C
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x68
|
||||
strb r0, [r1]
|
||||
ldrb r1, [r1]
|
||||
adds r0, r4, #0
|
||||
bl sub_08078784
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start Dampe_Fusion
|
||||
Dampe_Fusion: @ 0x0806BE54
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
ldrb r0, [r2, #0xc]
|
||||
cmp r0, #0
|
||||
bne _0806BE7A
|
||||
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, #2
|
||||
bl InitAnimationForceUpdate
|
||||
b _0806BE80
|
||||
_0806BE7A:
|
||||
adds r0, r2, #0
|
||||
bl UpdateAnimationSingleFrame
|
||||
_0806BE80:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0806BE84
|
||||
sub_0806BE84: @ 0x0806BE84
|
||||
push {r4, r5, r6, lr}
|
||||
adds r6, r0, #0
|
||||
adds r4, r1, #0
|
||||
movs r0, #0
|
||||
str r0, [r4, #0x14]
|
||||
movs r5, #1
|
||||
movs r0, #0x69
|
||||
bl CheckLocalFlag
|
||||
cmp r0, #0
|
||||
bne _0806BEA6
|
||||
movs r5, #0
|
||||
movs r0, #0x69
|
||||
bl SetLocalFlag
|
||||
movs r0, #1
|
||||
str r0, [r4, #0x14]
|
||||
_0806BEA6:
|
||||
movs r0, #0x3c
|
||||
bl GetInventoryValue
|
||||
cmp r0, #1
|
||||
bls _0806BEB2
|
||||
movs r5, #2
|
||||
_0806BEB2:
|
||||
ldr r0, _0806BEC4 @ =gUnk_08113344
|
||||
lsls r1, r5, #1
|
||||
adds r1, r1, r0
|
||||
ldrh r0, [r1]
|
||||
adds r1, r6, #0
|
||||
bl TextboxNoOverlap
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_0806BEC4: .4byte gUnk_08113344
|
||||
|
||||
thumb_func_start sub_0806BEC8
|
||||
sub_0806BEC8: @ 0x0806BEC8
|
||||
push {r4, r5, r6, lr}
|
||||
adds r6, r0, #0
|
||||
adds r5, r1, #0
|
||||
movs r4, #0
|
||||
str r4, [r5, #0x14]
|
||||
movs r0, #0x3c
|
||||
bl GetInventoryValue
|
||||
cmp r0, #1
|
||||
bne _0806BEE2
|
||||
movs r4, #1
|
||||
str r4, [r5, #0x14]
|
||||
b _0806BEE8
|
||||
_0806BEE2:
|
||||
cmp r0, #1
|
||||
bls _0806BEE8
|
||||
movs r4, #2
|
||||
_0806BEE8:
|
||||
ldr r0, _0806BEF8 @ =gUnk_0811334A
|
||||
lsls r1, r4, #1
|
||||
adds r1, r1, r0
|
||||
ldrh r0, [r1]
|
||||
adds r1, r6, #0
|
||||
bl TextboxNoOverlap
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_0806BEF8: .4byte gUnk_0811334A
|
||||
|
||||
thumb_func_start sub_0806BEFC
|
||||
sub_0806BEFC: @ 0x0806BEFC
|
||||
push {lr}
|
||||
movs r0, #0xbf
|
||||
lsls r0, r0, #1
|
||||
ldr r1, _0806BF2C @ =0x0000058E
|
||||
movs r2, #1
|
||||
bl SetTileType
|
||||
ldr r0, _0806BF30 @ =0x0000017F
|
||||
ldr r1, _0806BF34 @ =0x0000058F
|
||||
movs r2, #1
|
||||
bl SetTileType
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #1
|
||||
ldr r1, _0806BF38 @ =0x000005CE
|
||||
movs r2, #1
|
||||
bl SetTileType
|
||||
ldr r0, _0806BF3C @ =0x00000181
|
||||
ldr r1, _0806BF40 @ =0x000005CF
|
||||
movs r2, #1
|
||||
bl SetTileType
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0806BF2C: .4byte 0x0000058E
|
||||
_0806BF30: .4byte 0x0000017F
|
||||
_0806BF34: .4byte 0x0000058F
|
||||
_0806BF38: .4byte 0x000005CE
|
||||
_0806BF3C: .4byte 0x00000181
|
||||
_0806BF40: .4byte 0x000005CF
|
||||
|
||||
thumb_func_start sub_0806BF44
|
||||
sub_0806BF44: @ 0x0806BF44
|
||||
push {r4, r5, lr}
|
||||
adds r2, r0, #0
|
||||
adds r4, r1, #0
|
||||
movs r0, #0
|
||||
str r0, [r4, #0x14]
|
||||
movs r1, #0x2e
|
||||
ldrsh r0, [r2, r1]
|
||||
ldr r3, _0806BF78 @ =gRoomControls
|
||||
movs r5, #0xa
|
||||
ldrsh r1, [r3, r5]
|
||||
subs r0, r0, r1
|
||||
adds r0, #0x10
|
||||
ldr r1, _0806BF7C @ =0x0000010F
|
||||
cmp r0, r1
|
||||
bhi _0806BF76
|
||||
movs r1, #0x32
|
||||
ldrsh r0, [r2, r1]
|
||||
movs r2, #0xc
|
||||
ldrsh r1, [r3, r2]
|
||||
subs r0, r0, r1
|
||||
adds r0, #0x18
|
||||
cmp r0, #0xcf
|
||||
bhi _0806BF76
|
||||
movs r0, #1
|
||||
str r0, [r4, #0x14]
|
||||
_0806BF76:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0806BF78: .4byte gRoomControls
|
||||
_0806BF7C: .4byte 0x0000010F
|
||||
+4
-4
@@ -433,7 +433,7 @@ sub_08020E98: @ 0x08020E98
|
||||
bne _08020ECA
|
||||
ldr r0, [r5]
|
||||
adds r1, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r4, #0x15]
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
@@ -471,7 +471,7 @@ _08020EF6:
|
||||
_08020F08: .4byte gUnk_020000B0
|
||||
_08020F0C:
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r4, #0x15]
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
@@ -1177,7 +1177,7 @@ sub_08021424: @ 0x08021424
|
||||
ldr r0, _08021450 @ =gUnk_020000B0
|
||||
ldr r1, [r0]
|
||||
adds r0, r5, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r1, r0, #0
|
||||
ldrb r0, [r5, #0x14]
|
||||
bl sub_08021274
|
||||
@@ -1293,7 +1293,7 @@ sub_080214FC: @ 0x080214FC
|
||||
ldr r0, _08021538 @ =gUnk_020000B0
|
||||
ldr r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r2, r0, #0
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
|
||||
+1
-1
@@ -42,7 +42,7 @@ sub_08081634: @ 0x08081634
|
||||
adds r0, #0x38
|
||||
strb r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
ldrb r0, [r4, #0x19]
|
||||
movs r1, #3
|
||||
orrs r0, r1
|
||||
|
||||
@@ -54,7 +54,7 @@ _080647C2:
|
||||
strb r1, [r0]
|
||||
ldr r1, _080647FC @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5A4
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
|
||||
@@ -171,7 +171,7 @@ sub_08069C40: @ 0x08069C40
|
||||
_08069C68: .4byte gLinkState
|
||||
_08069C6C:
|
||||
adds r0, r4, #0
|
||||
bl sub_0806EDC4
|
||||
bl GetAnimationState
|
||||
strb r0, [r4, #0x14]
|
||||
adds r0, r4, #0
|
||||
bl sub_08069D00
|
||||
@@ -212,7 +212,7 @@ sub_08069CB8: @ 0x08069CB8
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r1, _08069CF8 @ =gLinkEntity
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
ldr r2, _08069CFC @ =gUnk_08111DB0
|
||||
ldrb r1, [r4, #0x14]
|
||||
lsls r1, r1, #5
|
||||
@@ -426,7 +426,7 @@ sub_08069E44: @ 0x08069E44
|
||||
sub_08069E50: @ 0x08069E50
|
||||
push {r4, r5, r6, r7, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0806EDC4
|
||||
bl GetAnimationState
|
||||
strb r0, [r4, #0x14]
|
||||
adds r5, r4, #0
|
||||
adds r5, #0x6b
|
||||
|
||||
+1
-1
@@ -291,7 +291,7 @@ _0803D08A:
|
||||
ldr r0, _0803D0A8 @ =gUnk_020000B0
|
||||
ldr r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r5, #0x15]
|
||||
b _0803D0AE
|
||||
.align 2, 0
|
||||
|
||||
+2
-2
@@ -134,7 +134,7 @@ sub_0803EBB4: @ 0x0803EBB4
|
||||
ldr r0, _0803EC10 @ =gUnk_020000B0
|
||||
ldr r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r0, #4
|
||||
movs r1, #0x18
|
||||
ands r0, r1
|
||||
@@ -649,7 +649,7 @@ sub_0803EF74: @ 0x0803EF74
|
||||
beq _0803EFA8
|
||||
adds r0, r4, #0
|
||||
adds r1, r5, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
ldrb r1, [r4, #0x15]
|
||||
subs r1, r1, r0
|
||||
adds r1, #2
|
||||
|
||||
+2
-2
@@ -440,7 +440,7 @@ sub_08040E3C: @ 0x08040E3C
|
||||
bne _08040E86
|
||||
strb r5, [r4, #0xc]
|
||||
ldrb r0, [r4, #0xe]
|
||||
bl sub_0804B128
|
||||
bl GetCurrentRoomProperty
|
||||
str r0, [r4, #0x54]
|
||||
b _08040E8C
|
||||
_08040E86:
|
||||
@@ -627,7 +627,7 @@ _08040FB2:
|
||||
ldr r0, _08041008 @ =gUnk_020000B0
|
||||
ldr r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
bl sub_08004596
|
||||
|
||||
+2
-2
@@ -570,7 +570,7 @@ _0804948C:
|
||||
strb r0, [r1]
|
||||
str r4, [r2, #0x50]
|
||||
adds r0, r2, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_080494B2:
|
||||
adds r0, r4, #0
|
||||
bl sub_08049944
|
||||
@@ -1414,7 +1414,7 @@ sub_08049AB0: @ 0x08049AB0
|
||||
movs r0, #2
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_08049B18:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
@@ -340,7 +340,7 @@ _0802C48C:
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_0802C4AA:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
|
||||
|
||||
@@ -6,171 +6,6 @@
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start Fan
|
||||
Fan: @ 0x0809ED18
|
||||
push {lr}
|
||||
ldr r2, _0809ED2C @ =gUnk_081243D4
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0809ED2C: .4byte gUnk_081243D4
|
||||
|
||||
thumb_func_start sub_0809ED30
|
||||
sub_0809ED30: @ 0x0809ED30
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xa]
|
||||
movs r1, #2
|
||||
eors r0, r1
|
||||
lsls r0, r0, #3
|
||||
strb r0, [r4, #0x15]
|
||||
adds r0, r4, #0
|
||||
bl sub_0809EE34
|
||||
adds r0, r4, #0
|
||||
bl sub_0809EFB0
|
||||
ldrb r1, [r4, #0xa]
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0809ED54
|
||||
sub_0809ED54: @ 0x0809ED54
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x84
|
||||
ldrh r0, [r1]
|
||||
cmp r0, #0
|
||||
beq _0809ED6A
|
||||
bl CheckFlags
|
||||
cmp r0, #0
|
||||
beq _0809ED86
|
||||
_0809ED6A:
|
||||
ldrb r0, [r4, #0xb]
|
||||
cmp r0, #1
|
||||
bne _0809ED80
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x74
|
||||
ldrh r0, [r1]
|
||||
subs r0, #1
|
||||
strh r0, [r1]
|
||||
lsls r0, r0, #0x10
|
||||
cmp r0, #0
|
||||
bne _0809ED86
|
||||
_0809ED80:
|
||||
adds r0, r4, #0
|
||||
bl sub_0809EE08
|
||||
_0809ED86:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0809ED88
|
||||
sub_0809ED88: @ 0x0809ED88
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0809F08C
|
||||
adds r0, r4, #0
|
||||
bl sub_0809EE44
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x86
|
||||
ldrh r2, [r0]
|
||||
cmp r2, #0
|
||||
beq _0809EDC6
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x84
|
||||
ldrh r0, [r1]
|
||||
cmp r0, r2
|
||||
bne _0809EDB4
|
||||
bl CheckFlags
|
||||
cmp r0, #0
|
||||
bne _0809EDE2
|
||||
b _0809EDBE
|
||||
_0809EDB4:
|
||||
ldrh r0, [r1]
|
||||
bl CheckFlags
|
||||
cmp r0, #0
|
||||
beq _0809EDE2
|
||||
_0809EDBE:
|
||||
adds r0, r4, #0
|
||||
bl sub_0809EE24
|
||||
b _0809EDE2
|
||||
_0809EDC6:
|
||||
ldrb r0, [r4, #0xb]
|
||||
cmp r0, #1
|
||||
bne _0809EDE2
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x74
|
||||
ldrh r0, [r1]
|
||||
subs r0, #1
|
||||
strh r0, [r1]
|
||||
lsls r0, r0, #0x10
|
||||
cmp r0, #0
|
||||
bne _0809EDE2
|
||||
adds r0, r4, #0
|
||||
bl sub_0809EE24
|
||||
_0809EDE2:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0809EDE4
|
||||
sub_0809EDE4: @ 0x0809EDE4
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0809F08C
|
||||
adds r0, r4, #0
|
||||
bl sub_0809EE44
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0809EE06
|
||||
adds r0, r4, #0
|
||||
bl sub_0809EE34
|
||||
_0809EE06:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0809EE08
|
||||
sub_0809EE08: @ 0x0809EE08
|
||||
push {lr}
|
||||
movs r1, #2
|
||||
strb r1, [r0, #0xc]
|
||||
adds r1, r0, #0
|
||||
adds r1, #0x7f
|
||||
ldrb r1, [r1]
|
||||
lsls r1, r1, #2
|
||||
adds r2, r0, #0
|
||||
adds r2, #0x74
|
||||
strh r1, [r2]
|
||||
ldrb r1, [r0, #0xa]
|
||||
bl InitializeAnimation
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0809EE24
|
||||
sub_0809EE24: @ 0x0809EE24
|
||||
push {lr}
|
||||
movs r1, #3
|
||||
strb r1, [r0, #0xc]
|
||||
ldrb r1, [r0, #0xa]
|
||||
adds r1, #4
|
||||
bl InitializeAnimation
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0809EE34
|
||||
sub_0809EE34: @ 0x0809EE34
|
||||
movs r1, #1
|
||||
strb r1, [r0, #0xc]
|
||||
ldrb r1, [r0, #0xe]
|
||||
lsls r1, r1, #2
|
||||
adds r0, #0x74
|
||||
strh r1, [r0]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0809EE44
|
||||
sub_0809EE44: @ 0x0809EE44
|
||||
push {r4, r5, r6, r7, lr}
|
||||
|
||||
+1
-1
@@ -54,7 +54,7 @@ _080649C2:
|
||||
strb r1, [r0]
|
||||
ldr r1, _080649FC @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5A4
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
|
||||
-144
@@ -6,150 +6,6 @@
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_0805FE10
|
||||
sub_0805FE10: @ 0x0805FE10
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r2, #1
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x18]
|
||||
subs r0, #5
|
||||
ands r0, r1
|
||||
orrs r0, r2
|
||||
strb r0, [r4, #0x18]
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
bl sub_0805E3A0
|
||||
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_08078784
|
||||
adds r0, r4, #0
|
||||
bl sub_0807DD50
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0805FE48
|
||||
sub_0805FE48: @ 0x0805FE48
|
||||
push {r4, r5, r6, r7, lr}
|
||||
adds r5, r0, #0
|
||||
adds r2, r5, #0
|
||||
adds r2, #0x39
|
||||
movs r1, #0
|
||||
ldrsb r1, [r2, r1]
|
||||
cmp r1, #2
|
||||
bne _0805FE80
|
||||
movs r0, #0
|
||||
strb r1, [r5, #0xc]
|
||||
strb r0, [r2]
|
||||
ldr r1, _0805FE7C @ =gLinkEntity
|
||||
adds r0, r5, #0
|
||||
bl sub_080045C4
|
||||
bl sub_0806F5A4
|
||||
adds r1, r0, #0
|
||||
adds r0, r5, #0
|
||||
bl InitAnimationForceUpdate
|
||||
adds r0, r5, #0
|
||||
bl sub_0806F118
|
||||
b _0805FF14
|
||||
.align 2, 0
|
||||
_0805FE7C: .4byte gLinkEntity
|
||||
_0805FE80:
|
||||
adds r4, r5, #0
|
||||
adds r4, #0x84
|
||||
ldr r1, [r4]
|
||||
adds r0, r5, #0
|
||||
bl ExecuteScriptCommandSet
|
||||
ldr r1, [r4]
|
||||
adds r0, r5, #0
|
||||
bl sub_0805FF2C
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x80
|
||||
ldrh r3, [r0]
|
||||
adds r7, r0, #0
|
||||
adds r6, r5, #0
|
||||
adds r6, #0x82
|
||||
cmp r3, #7
|
||||
bhi _0805FEC6
|
||||
ldrh r1, [r6]
|
||||
movs r0, #1
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0805FEBA
|
||||
movs r1, #0xfc
|
||||
ands r1, r3
|
||||
ldrb r0, [r5, #0xf]
|
||||
lsrs r0, r0, #1
|
||||
adds r3, r1, r0
|
||||
b _0805FEC6
|
||||
_0805FEBA:
|
||||
movs r0, #0xfc
|
||||
ands r0, r3
|
||||
ldrb r2, [r5, #0x14]
|
||||
lsrs r1, r2, #1
|
||||
adds r3, r0, r1
|
||||
strb r2, [r5, #0xf]
|
||||
_0805FEC6:
|
||||
adds r4, r5, #0
|
||||
adds r4, #0x58
|
||||
ldrb r0, [r4]
|
||||
cmp r3, r0
|
||||
beq _0805FED8
|
||||
adds r0, r5, #0
|
||||
adds r1, r3, #0
|
||||
bl InitAnimationForceUpdate
|
||||
_0805FED8:
|
||||
adds r0, r5, #0
|
||||
bl UpdateAnimationSingleFrame
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0805FF02
|
||||
ldrb r0, [r4]
|
||||
cmp r0, #8
|
||||
beq _0805FEFE
|
||||
cmp r0, #8
|
||||
blt _0805FF02
|
||||
cmp r0, #0xc
|
||||
bgt _0805FF02
|
||||
cmp r0, #0xa
|
||||
blt _0805FF02
|
||||
_0805FEFE:
|
||||
movs r0, #0
|
||||
strh r0, [r7]
|
||||
_0805FF02:
|
||||
ldrh r1, [r6]
|
||||
mvns r0, r1
|
||||
adds r0, #1
|
||||
ands r1, r0
|
||||
cmp r1, #2
|
||||
bne _0805FF14
|
||||
adds r0, r5, #0
|
||||
bl sub_0806ED78
|
||||
_0805FF14:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0805FF18
|
||||
sub_0805FF18: @ 0x0805FF18
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl UpdateFuseInteraction
|
||||
cmp r0, #0
|
||||
beq _0805FF28
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
_0805FF28:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0805FF2C
|
||||
sub_0805FF2C: @ 0x0805FF2C
|
||||
push {r4, r5, r6, lr}
|
||||
|
||||
+1
-1
@@ -33,7 +33,7 @@ FloatingBlock: @ 0x080A0554
|
||||
adds r0, #0x38
|
||||
strb r2, [r0]
|
||||
adds r0, r3, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_080A0588:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
@@ -44,7 +44,7 @@ sub_080860D8: @ 0x080860D8
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
ldrb r0, [r4, #0xb]
|
||||
bl sub_0804B128
|
||||
bl GetCurrentRoomProperty
|
||||
str r0, [r4, #0x54]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x54
|
||||
|
||||
+1
-1
@@ -448,7 +448,7 @@ sub_0803737C: @ 0x0803737C
|
||||
strb r0, [r4, #0xe]
|
||||
ldr r1, _080373AC @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r4, #0x15]
|
||||
_080373A6:
|
||||
pop {r4, pc}
|
||||
|
||||
+1
-1
@@ -639,7 +639,7 @@ sub_0803A048: @ 0x0803A048
|
||||
strb r0, [r4, #0xe]
|
||||
ldr r1, _0803A07C @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r4, #0x15]
|
||||
_0803A076:
|
||||
pop {r4, pc}
|
||||
|
||||
@@ -1,561 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start ForestMinish
|
||||
ForestMinish: @ 0x0805FFD8
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r5, [r4, #0xc]
|
||||
cmp r5, #1
|
||||
beq _08060044
|
||||
cmp r5, #1
|
||||
bgt _0805FFEC
|
||||
cmp r5, #0
|
||||
beq _0805FFF2
|
||||
b _0806008C
|
||||
_0805FFEC:
|
||||
cmp r5, #2
|
||||
beq _0806007E
|
||||
b _0806008C
|
||||
_0805FFF2:
|
||||
ldr r1, _0806003C @ =gUnk_0810A348
|
||||
adds r0, r4, #0
|
||||
bl LoadExtraSpriteData
|
||||
cmp r0, #0
|
||||
beq _0806008C
|
||||
movs r2, #1
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x18]
|
||||
subs r0, #5
|
||||
ands r0, r1
|
||||
orrs r0, r2
|
||||
strb r0, [r4, #0x18]
|
||||
ldrb r0, [r4, #0xe]
|
||||
lsls r0, r0, #1
|
||||
strb r0, [r4, #0x14]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x69
|
||||
strb r0, [r1]
|
||||
strb r5, [r4, #0xe]
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
bl sub_0805E3A0
|
||||
ldr r1, _08060040 @ =gUnk_08109D18
|
||||
ldrb r0, [r4, #0xb]
|
||||
lsls r0, r0, #2
|
||||
adds r0, r0, r1
|
||||
ldr r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl StartCutscene
|
||||
adds r0, r4, #0
|
||||
bl sub_0807DD50
|
||||
b _0806008C
|
||||
.align 2, 0
|
||||
_0806003C: .4byte gUnk_0810A348
|
||||
_08060040: .4byte gUnk_08109D18
|
||||
_08060044:
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x39
|
||||
movs r1, #0
|
||||
ldrsb r1, [r2, r1]
|
||||
cmp r1, #2
|
||||
bne _0806005E
|
||||
movs r0, #0
|
||||
strb r1, [r4, #0xc]
|
||||
strb r0, [r2]
|
||||
adds r0, r4, #0
|
||||
bl sub_0806F118
|
||||
b _0806008C
|
||||
_0806005E:
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl sub_0807DDAC
|
||||
adds r0, r4, #0
|
||||
bl sub_0807DDE4
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x59
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0xf0
|
||||
beq _0806008C
|
||||
adds r0, r4, #0
|
||||
bl sub_080600F0
|
||||
b _0806008C
|
||||
_0806007E:
|
||||
adds r0, r4, #0
|
||||
bl UpdateFuseInteraction
|
||||
cmp r0, #0
|
||||
beq _0806008C
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
_0806008C:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08060090
|
||||
sub_08060090: @ 0x08060090
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0801E99C
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x68
|
||||
strb r0, [r1]
|
||||
ldrb r1, [r1]
|
||||
adds r0, r4, #0
|
||||
bl sub_08078784
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start ForestMinish_Head
|
||||
ForestMinish_Head: @ 0x080600A8
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r2, [r0]
|
||||
cmp r2, #0xff
|
||||
beq _080600BA
|
||||
movs r0, #0x81
|
||||
rsbs r0, r0, #0
|
||||
ands r2, r0
|
||||
_080600BA:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5b
|
||||
ldrb r1, [r0]
|
||||
movs r0, #1
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _080600CA
|
||||
movs r2, #0xff
|
||||
_080600CA:
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl SetExtraSpriteFrame
|
||||
ldrb r2, [r4, #0x1e]
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
bl SetExtraSpriteFrame
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #0
|
||||
bl SetSpriteSubEntryOffsetData1
|
||||
adds r0, r4, #0
|
||||
bl sub_0807000C
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_080600F0
|
||||
sub_080600F0: @ 0x080600F0
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, #0x80
|
||||
ldrh r3, [r0]
|
||||
cmp r3, #7
|
||||
bhi _08060120
|
||||
adds r0, #2
|
||||
ldrh r1, [r0]
|
||||
movs r0, #1
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _08060114
|
||||
movs r1, #0xfc
|
||||
ands r1, r3
|
||||
ldrb r0, [r4, #0xf]
|
||||
lsrs r0, r0, #1
|
||||
adds r3, r1, r0
|
||||
b _08060120
|
||||
_08060114:
|
||||
movs r0, #0xfc
|
||||
ands r0, r3
|
||||
ldrb r2, [r4, #0x14]
|
||||
lsrs r1, r2, #1
|
||||
adds r3, r0, r1
|
||||
strb r2, [r4, #0xf]
|
||||
_08060120:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x58
|
||||
ldrb r0, [r0]
|
||||
cmp r3, r0
|
||||
beq _08060132
|
||||
adds r0, r4, #0
|
||||
adds r1, r3, #0
|
||||
bl InitAnimationForceUpdate
|
||||
_08060132:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x82
|
||||
ldrh r1, [r0]
|
||||
movs r0, #4
|
||||
ands r0, r1
|
||||
movs r1, #1
|
||||
cmp r0, #0
|
||||
beq _08060144
|
||||
movs r1, #2
|
||||
_08060144:
|
||||
adds r0, r4, #0
|
||||
bl sub_080042BA
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0806014C
|
||||
sub_0806014C: @ 0x0806014C
|
||||
push {lr}
|
||||
movs r1, #0
|
||||
strb r1, [r0, #0xe]
|
||||
bl sub_08060158
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_08060158
|
||||
sub_08060158: @ 0x08060158
|
||||
push {r4, r5, r6, r7, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xe]
|
||||
adds r7, r0, #0
|
||||
cmp r7, #0
|
||||
beq _0806016A
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
b _080601CC
|
||||
_0806016A:
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xe]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x20
|
||||
movs r2, #0x20
|
||||
bl sub_0806EDD8
|
||||
adds r3, r0, #0
|
||||
cmp r3, #0
|
||||
bge _08060188
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x69
|
||||
ldrb r0, [r0]
|
||||
strb r0, [r4, #0x14]
|
||||
lsls r3, r0, #2
|
||||
_08060188:
|
||||
ldrb r0, [r4, #0x14]
|
||||
lsrs r0, r0, #1
|
||||
lsls r0, r0, #5
|
||||
asrs r1, r3, #1
|
||||
lsls r1, r1, #1
|
||||
ldr r2, _080601D0 @ =gUnk_08109C98
|
||||
adds r1, r1, r2
|
||||
adds r0, r0, r1
|
||||
ldrb r6, [r0]
|
||||
ldrb r5, [r0, #1]
|
||||
movs r0, #0x80
|
||||
ands r0, r5
|
||||
cmp r0, #0
|
||||
beq _080601AC
|
||||
adds r0, r3, #0
|
||||
bl sub_0806F5B0
|
||||
strb r0, [r4, #0x14]
|
||||
_080601AC:
|
||||
movs r0, #0x7f
|
||||
ands r5, r0
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
strb r6, [r0]
|
||||
strb r5, [r4, #0x1e]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x5b
|
||||
movs r0, #1
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x58
|
||||
strb r7, [r0]
|
||||
subs r1, #2
|
||||
movs r0, #0xf0
|
||||
strb r0, [r1]
|
||||
_080601CC:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_080601D0: .4byte gUnk_08109C98
|
||||
|
||||
thumb_func_start sub_080601D4
|
||||
sub_080601D4: @ 0x080601D4
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r0, #4
|
||||
bl CheckGlobalFlag
|
||||
cmp r0, #0
|
||||
bne _080601E6
|
||||
movs r1, #2
|
||||
b _080601F2
|
||||
_080601E6:
|
||||
movs r0, #0x17
|
||||
bl CheckKinstoneFused
|
||||
rsbs r1, r0, #0
|
||||
orrs r1, r0
|
||||
lsrs r1, r1, #0x1f
|
||||
_080601F2:
|
||||
ldr r0, _08060204 @ =gUnk_0810A354
|
||||
lsls r1, r1, #1
|
||||
adds r1, r1, r0
|
||||
ldrh r0, [r1]
|
||||
adds r1, r4, #0
|
||||
bl TextboxNoOverlap
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_08060204: .4byte gUnk_0810A354
|
||||
|
||||
thumb_func_start sub_08060208
|
||||
sub_08060208: @ 0x08060208
|
||||
push {lr}
|
||||
ldrb r1, [r0, #0xb]
|
||||
lsls r1, r1, #5
|
||||
ldr r2, _08060218 @ =gUnk_08109DC8
|
||||
adds r1, r1, r2
|
||||
bl ShowNPCDialogue
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08060218: .4byte gUnk_08109DC8
|
||||
|
||||
thumb_func_start sub_0806021C
|
||||
sub_0806021C: @ 0x0806021C
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
movs r0, #0x5b
|
||||
bl GetInventoryValue
|
||||
rsbs r1, r0, #0
|
||||
orrs r1, r0
|
||||
lsrs r4, r1, #0x1f
|
||||
movs r0, #0x40
|
||||
bl GetInventoryValue
|
||||
cmp r0, #0
|
||||
beq _08060238
|
||||
movs r4, #2
|
||||
_08060238:
|
||||
movs r0, #0x13
|
||||
bl GetInventoryValue
|
||||
cmp r0, #0
|
||||
beq _08060244
|
||||
movs r4, #3
|
||||
_08060244:
|
||||
ldrb r1, [r5, #0xb]
|
||||
lsls r1, r1, #5
|
||||
lsls r0, r4, #3
|
||||
ldr r2, _08060258 @ =gUnk_08109DC8
|
||||
adds r0, r0, r2
|
||||
adds r1, r1, r0
|
||||
adds r0, r5, #0
|
||||
bl ShowNPCDialogue
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_08060258: .4byte gUnk_08109DC8
|
||||
|
||||
thumb_func_start sub_0806025C
|
||||
sub_0806025C: @ 0x0806025C
|
||||
push {lr}
|
||||
ldrb r1, [r0, #0xb]
|
||||
lsls r1, r1, #5
|
||||
ldr r2, _0806026C @ =gUnk_08109DC8
|
||||
adds r1, r1, r2
|
||||
bl ShowNPCDialogue
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0806026C: .4byte gUnk_08109DC8
|
||||
|
||||
thumb_func_start sub_08060270
|
||||
sub_08060270: @ 0x08060270
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
movs r0, #0x46
|
||||
bl GetInventoryValue
|
||||
cmp r0, #0
|
||||
bne _08060294
|
||||
movs r4, #1
|
||||
movs r0, #0x29
|
||||
bl CheckGlobalFlag
|
||||
cmp r0, #0
|
||||
bne _080602A8
|
||||
movs r4, #0
|
||||
movs r0, #0x29
|
||||
bl SetGlobalFlag
|
||||
b _080602A8
|
||||
_08060294:
|
||||
movs r4, #3
|
||||
movs r0, #0x76
|
||||
bl CheckLocalFlag
|
||||
cmp r0, #0
|
||||
bne _080602A8
|
||||
movs r4, #2
|
||||
movs r0, #0x76
|
||||
bl SetLocalFlag
|
||||
_080602A8:
|
||||
ldr r0, _080602B8 @ =gUnk_0810A35A
|
||||
lsls r1, r4, #1
|
||||
adds r1, r1, r0
|
||||
ldrh r0, [r1]
|
||||
adds r1, r5, #0
|
||||
bl TextboxNoOverlap
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_080602B8: .4byte gUnk_0810A35A
|
||||
|
||||
thumb_func_start sub_080602BC
|
||||
sub_080602BC: @ 0x080602BC
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r0, #0x48
|
||||
bl GetInventoryValue
|
||||
cmp r0, #0
|
||||
beq _080602D6
|
||||
bl Random
|
||||
movs r1, #1
|
||||
ands r1, r0
|
||||
adds r2, r1, #2
|
||||
b _080602F0
|
||||
_080602D6:
|
||||
ldr r0, _08060300 @ =gUnk_02002A40
|
||||
adds r2, r0, #0
|
||||
adds r2, #0xac
|
||||
ldr r1, _08060304 @ =gBombBagSizes
|
||||
adds r0, #0xae
|
||||
ldrb r0, [r0]
|
||||
adds r0, r0, r1
|
||||
ldrb r1, [r2]
|
||||
movs r2, #0
|
||||
ldrb r0, [r0]
|
||||
cmp r1, r0
|
||||
bhs _080602F0
|
||||
movs r2, #1
|
||||
_080602F0:
|
||||
ldr r0, _08060308 @ =gUnk_0810A362
|
||||
lsls r1, r2, #1
|
||||
adds r1, r1, r0
|
||||
ldrh r0, [r1]
|
||||
adds r1, r4, #0
|
||||
bl TextboxNoOverlap
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_08060300: .4byte gUnk_02002A40
|
||||
_08060304: .4byte gBombBagSizes
|
||||
_08060308: .4byte gUnk_0810A362
|
||||
|
||||
thumb_func_start sub_0806030C
|
||||
sub_0806030C: @ 0x0806030C
|
||||
push {lr}
|
||||
ldr r0, [r1, #4]
|
||||
bl ModBombs
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08060318
|
||||
sub_08060318: @ 0x08060318
|
||||
push {r4, r5, lr}
|
||||
movs r5, #2
|
||||
_0806031C:
|
||||
movs r0, #8
|
||||
movs r1, #2
|
||||
movs r2, #2
|
||||
bl sub_0805EB00
|
||||
adds r4, r0, #0
|
||||
cmp r4, #0
|
||||
beq _08060336
|
||||
bl sub_080A29BC
|
||||
adds r0, r4, #0
|
||||
bl DeleteEntity
|
||||
_08060336:
|
||||
subs r5, #1
|
||||
cmp r5, #0
|
||||
bge _0806031C
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08060340
|
||||
sub_08060340: @ 0x08060340
|
||||
ldr r0, _08060350 @ =gUnk_02002A40
|
||||
movs r2, #0x92
|
||||
lsls r2, r2, #3
|
||||
adds r1, r0, r2
|
||||
ldr r0, [r0, #0x50]
|
||||
str r0, [r1]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_08060350: .4byte gUnk_02002A40
|
||||
|
||||
thumb_func_start sub_08060354
|
||||
sub_08060354: @ 0x08060354
|
||||
push {r4, lr}
|
||||
ldr r0, _08060378 @ =gUnk_02002A40
|
||||
movs r2, #0x92
|
||||
lsls r2, r2, #3
|
||||
adds r1, r0, r2
|
||||
ldr r2, [r0, #0x50]
|
||||
ldr r0, [r1]
|
||||
subs r4, r2, r0
|
||||
movs r0, #0x3b
|
||||
bl CheckGlobalFlag
|
||||
cmp r0, #0
|
||||
bne _08060380
|
||||
cmp r4, #4
|
||||
ble _080603B0
|
||||
ldr r0, _0806037C @ =0x00008444
|
||||
b _080603B2
|
||||
.align 2, 0
|
||||
_08060378: .4byte gUnk_02002A40
|
||||
_0806037C: .4byte 0x00008444
|
||||
_08060380:
|
||||
movs r0, #0x3c
|
||||
bl CheckGlobalFlag
|
||||
cmp r0, #0
|
||||
bne _08060398
|
||||
cmp r4, #9
|
||||
ble _080603B0
|
||||
ldr r0, _08060394 @ =0x00008444
|
||||
b _080603B2
|
||||
.align 2, 0
|
||||
_08060394: .4byte 0x00008444
|
||||
_08060398:
|
||||
movs r0, #0x3d
|
||||
bl CheckGlobalFlag
|
||||
cmp r0, #0
|
||||
bne _080603B0
|
||||
cmp r4, #0xe
|
||||
ble _080603B0
|
||||
ldr r0, _080603AC @ =0x00008444
|
||||
b _080603B2
|
||||
.align 2, 0
|
||||
_080603AC: .4byte 0x00008444
|
||||
_080603B0:
|
||||
movs r0, #0
|
||||
_080603B2:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start ForestMinish_Fusion
|
||||
ForestMinish_Fusion: @ 0x080603B4
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xc]
|
||||
cmp r0, #0
|
||||
bne _080603F4
|
||||
ldr r1, _080603F0 @ =gUnk_0810A348
|
||||
adds r0, r4, #0
|
||||
bl LoadExtraSpriteData
|
||||
cmp r0, #0
|
||||
beq _080603FA
|
||||
ldrb r0, [r4, #0xc]
|
||||
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]
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
bl sub_0805E3A0
|
||||
adds r0, r4, #0
|
||||
movs r1, #6
|
||||
bl InitializeAnimation
|
||||
b _080603FA
|
||||
.align 2, 0
|
||||
_080603F0: .4byte gUnk_0810A348
|
||||
_080603F4:
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
_080603FA:
|
||||
pop {r4, pc}
|
||||
+3
-3
@@ -95,7 +95,7 @@ _08090640:
|
||||
movs r0, #2
|
||||
strb r0, [r1]
|
||||
adds r0, r7, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
b _080906E6
|
||||
_08090650:
|
||||
ldrh r1, [r7, #0x32]
|
||||
@@ -657,7 +657,7 @@ _08090B14:
|
||||
movs r0, #1
|
||||
strb r0, [r3]
|
||||
adds r0, r2, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_08090B2C:
|
||||
adds r0, r5, #0
|
||||
bl GetTileTypeByEntity
|
||||
@@ -1095,7 +1095,7 @@ sub_08090E64: @ 0x08090E64
|
||||
movs r0, #2
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_08090EA0:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
-128
@@ -1,128 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start Gentari
|
||||
Gentari: @ 0x0805FD24
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xc]
|
||||
cmp r0, #1
|
||||
beq _0805FD72
|
||||
cmp r0, #1
|
||||
bgt _0805FD38
|
||||
cmp r0, #0
|
||||
beq _0805FD3E
|
||||
b _0805FDBC
|
||||
_0805FD38:
|
||||
cmp r0, #2
|
||||
beq _0805FDAE
|
||||
b _0805FDBC
|
||||
_0805FD3E:
|
||||
movs r2, #1
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x18]
|
||||
subs r0, #5
|
||||
ands r0, r1
|
||||
orrs r0, r2
|
||||
strb r0, [r4, #0x18]
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
bl sub_0805E3A0
|
||||
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_08078784
|
||||
adds r0, r4, #0
|
||||
bl sub_0807DD50
|
||||
b _0805FDBC
|
||||
_0805FD72:
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x39
|
||||
movs r1, #0
|
||||
ldrsb r1, [r2, r1]
|
||||
cmp r1, #2
|
||||
bne _0805FDA4
|
||||
movs r0, #0
|
||||
strb r1, [r4, #0xc]
|
||||
strb r0, [r2]
|
||||
ldr r1, _0805FDA0 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl sub_0806F5A4
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
bl InitAnimationForceUpdate
|
||||
adds r0, r4, #0
|
||||
bl sub_0806F118
|
||||
b _0805FDBC
|
||||
.align 2, 0
|
||||
_0805FDA0: .4byte gLinkEntity
|
||||
_0805FDA4:
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl sub_0807DD94
|
||||
b _0805FDBC
|
||||
_0805FDAE:
|
||||
adds r0, r4, #0
|
||||
bl UpdateFuseInteraction
|
||||
cmp r0, #0
|
||||
beq _0805FDBC
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
_0805FDBC:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start Gentari_Fusion
|
||||
Gentari_Fusion: @ 0x0805FDC0
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xc]
|
||||
cmp r0, #0
|
||||
bne _0805FDEE
|
||||
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]
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
bl sub_0805E3A0
|
||||
adds r0, r4, #0
|
||||
movs r1, #0xa
|
||||
bl InitAnimationForceUpdate
|
||||
b _0805FDF4
|
||||
_0805FDEE:
|
||||
adds r0, r4, #0
|
||||
bl UpdateAnimationSingleFrame
|
||||
_0805FDF4:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start Festari
|
||||
Festari: @ 0x0805FDF8
|
||||
push {lr}
|
||||
ldr r2, _0805FE0C @ =gUnk_08109BBC
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0805FE0C: .4byte gUnk_08109BBC
|
||||
@@ -62,7 +62,7 @@ _0809207A:
|
||||
adds r0, #2
|
||||
strh r0, [r6, #0x2e]
|
||||
adds r0, r6, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
movs r0, #0x2e
|
||||
ldrsh r2, [r6, r0]
|
||||
ldr r3, _08092130 @ =gRoomControls
|
||||
@@ -248,7 +248,7 @@ sub_080921F0: @ 0x080921F0
|
||||
orrs r0, r1
|
||||
strb r0, [r3]
|
||||
adds r0, r2, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_08092212:
|
||||
pop {pc}
|
||||
|
||||
@@ -271,7 +271,7 @@ sub_08092214: @ 0x08092214
|
||||
orrs r0, r1
|
||||
strb r0, [r3]
|
||||
adds r0, r2, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_0809223A:
|
||||
pop {pc}
|
||||
|
||||
@@ -290,5 +290,5 @@ sub_0809223C: @ 0x0809223C
|
||||
movs r2, #3
|
||||
orrs r1, r2
|
||||
strb r1, [r3]
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
pop {pc}
|
||||
|
||||
+2
-2
@@ -414,7 +414,7 @@ _0803F2D8:
|
||||
ldr r0, _0803F304 @ =gUnk_020000B0
|
||||
ldr r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
b _0803F310
|
||||
.align 2, 0
|
||||
_0803F304: .4byte gUnk_020000B0
|
||||
@@ -536,7 +536,7 @@ _0803F3C4:
|
||||
ldr r0, _0803F410 @ =gUnk_020000B0
|
||||
ldr r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
bl sub_08004596
|
||||
|
||||
+1
-1
@@ -104,7 +104,7 @@ _08065C42:
|
||||
strb r0, [r2]
|
||||
ldr r1, _08065C70 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5A4
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
|
||||
+1
-1
@@ -27,7 +27,7 @@ GiantRock: @ 0x08090FB8
|
||||
movs r0, #2
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x29
|
||||
ldrb r1, [r2]
|
||||
|
||||
+2
-2
@@ -511,7 +511,7 @@ sub_08037810: @ 0x08037810
|
||||
beq _080378AC
|
||||
ldr r1, [r6]
|
||||
adds r0, r5, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
ldrb r1, [r5, #0x15]
|
||||
subs r0, r0, r1
|
||||
adds r0, #6
|
||||
@@ -530,7 +530,7 @@ sub_08037810: @ 0x08037810
|
||||
strh r0, [r5, #0x24]
|
||||
ldr r1, [r6]
|
||||
adds r0, r5, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r0, #4
|
||||
ands r0, r4
|
||||
strb r0, [r5, #0x15]
|
||||
|
||||
+1
-1
@@ -55,7 +55,7 @@ _0806C182:
|
||||
strb r0, [r2]
|
||||
ldr r1, _0806C1B0 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5A4
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
|
||||
+4
-4
@@ -1478,7 +1478,7 @@ sub_0802DB84: @ 0x0802DB84
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
ldr r1, _0802DBB0 @ =gLinkEntity
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r5, #0x15]
|
||||
adds r1, r5, #0
|
||||
adds r1, #0x84
|
||||
@@ -1561,7 +1561,7 @@ sub_0802DC1C: @ 0x0802DC1C
|
||||
push {r4, r5, r6, lr}
|
||||
adds r5, r0, #0
|
||||
ldr r1, _0802DC40 @ =gLinkEntity
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r3, r0, #0
|
||||
adds r1, r5, #0
|
||||
adds r1, #0x84
|
||||
@@ -1672,7 +1672,7 @@ sub_0802DCE0: @ 0x0802DCE0
|
||||
beq _0802DD44
|
||||
ldr r1, _0802DD1C @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
strb r0, [r4, #0x15]
|
||||
ldr r2, [r5]
|
||||
ldrb r1, [r2, #0x15]
|
||||
@@ -2565,7 +2565,7 @@ _0802E3A4:
|
||||
ldr r5, [r0]
|
||||
ldr r1, _0802E408 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5A4
|
||||
lsls r0, r0, #3
|
||||
movs r2, #0
|
||||
|
||||
+1
-1
@@ -205,7 +205,7 @@ _0806CC40:
|
||||
strb r0, [r1]
|
||||
ldr r1, _0806CC7C @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5A4
|
||||
adds r1, r0, #0
|
||||
adds r1, #8
|
||||
|
||||
+2
-472
@@ -6,476 +6,6 @@
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start Guard
|
||||
Guard: @ 0x08063CF8
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
ldrb r1, [r2, #0x10]
|
||||
movs r0, #2
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _08063D1C
|
||||
ldr r0, _08063D18 @ =gUnk_0810F544
|
||||
ldrb r1, [r2, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r0
|
||||
ldr r1, [r1]
|
||||
adds r0, r2, #0
|
||||
bl _call_via_r1
|
||||
b _08063D22
|
||||
.align 2, 0
|
||||
_08063D18: .4byte gUnk_0810F544
|
||||
_08063D1C:
|
||||
adds r0, r2, #0
|
||||
bl sub_08063D24
|
||||
_08063D22:
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_08063D24
|
||||
sub_08063D24: @ 0x08063D24
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r1, _08063D40 @ =gUnk_0810F550
|
||||
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
|
||||
_08063D40: .4byte gUnk_0810F550
|
||||
|
||||
thumb_func_start sub_08063D44
|
||||
sub_08063D44: @ 0x08063D44
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r0, _08063DA0 @ =gUnk_03003DBC
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0x46
|
||||
bhi _08063DC6
|
||||
ldrb r0, [r4, #9]
|
||||
movs r1, #0x15
|
||||
eors r0, r1
|
||||
rsbs r1, r0, #0
|
||||
orrs r1, r0
|
||||
lsrs r1, r1, #0x1f
|
||||
lsls r1, r1, #4
|
||||
ldr r0, _08063DA4 @ =gUnk_0810F524
|
||||
adds r1, r1, r0
|
||||
adds r0, r4, #0
|
||||
bl LoadExtraSpriteData
|
||||
cmp r0, #0
|
||||
beq _08063DC6
|
||||
adds r0, r4, #0
|
||||
movs r1, #4
|
||||
bl InitializeAnimation
|
||||
ldr r0, _08063DA8 @ =gUnk_0810F6BC
|
||||
ldrb r1, [r4, #0xa]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r0
|
||||
ldr r1, [r1]
|
||||
adds r0, r4, #0
|
||||
movs r2, #0
|
||||
bl sub_0806EE04
|
||||
ldrb r0, [r4, #0xa]
|
||||
cmp r0, #0
|
||||
blt _08063DB6
|
||||
cmp r0, #3
|
||||
bgt _08063DAC
|
||||
movs r0, #0xc
|
||||
bl sub_080A7EE0
|
||||
str r4, [r0, #0x50]
|
||||
movs r1, #0x3c
|
||||
strb r1, [r0, #0xf]
|
||||
b _08063DB6
|
||||
.align 2, 0
|
||||
_08063DA0: .4byte gUnk_03003DBC
|
||||
_08063DA4: .4byte gUnk_0810F524
|
||||
_08063DA8: .4byte gUnk_0810F6BC
|
||||
_08063DAC:
|
||||
cmp r0, #5
|
||||
bgt _08063DB6
|
||||
adds r0, r4, #0
|
||||
bl sub_08078778
|
||||
_08063DB6:
|
||||
ldrb r0, [r4, #0xc]
|
||||
adds r0, #1
|
||||
movs r1, #0
|
||||
strb r0, [r4, #0xc]
|
||||
strb r1, [r4, #0xa]
|
||||
adds r0, r4, #0
|
||||
bl sub_08063DC8
|
||||
_08063DC6:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_08063DC8
|
||||
sub_08063DC8: @ 0x08063DC8
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xa]
|
||||
cmp r0, #0xff
|
||||
bne _08063DF8
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x1e
|
||||
strb r0, [r4, #0xe]
|
||||
ldr r1, _08063DF4 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl sub_0806F5A4
|
||||
strb r0, [r4, #0x14]
|
||||
ldrb r1, [r4, #0x14]
|
||||
adds r1, #4
|
||||
adds r0, r4, #0
|
||||
bl InitAnimationForceUpdate
|
||||
b _08063E4C
|
||||
.align 2, 0
|
||||
_08063DF4: .4byte gLinkEntity
|
||||
_08063DF8:
|
||||
adds r0, r4, #0
|
||||
bl sub_0806EE20
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x3e
|
||||
ldrb r0, [r0]
|
||||
ldrb r1, [r4, #0x14]
|
||||
cmp r0, r1
|
||||
beq _08063E18
|
||||
strb r0, [r4, #0x14]
|
||||
ldrb r1, [r4, #0x14]
|
||||
adds r1, #4
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
b _08063E1E
|
||||
_08063E18:
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
_08063E1E:
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x39
|
||||
movs r0, #0
|
||||
ldrsb r0, [r2, r0]
|
||||
cmp r0, #0
|
||||
beq _08063E4C
|
||||
movs r1, #0
|
||||
movs r0, #3
|
||||
strb r0, [r4, #0xc]
|
||||
strb r1, [r2]
|
||||
ldr r1, _08063E50 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl sub_0806F5A4
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
adds r0, r4, #0
|
||||
bl sub_08064428
|
||||
_08063E4C:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_08063E50: .4byte gLinkEntity
|
||||
|
||||
thumb_func_start sub_08063E54
|
||||
sub_08063E54: @ 0x08063E54
|
||||
push {lr}
|
||||
ldrb r1, [r0, #0xe]
|
||||
subs r1, #1
|
||||
strb r1, [r0, #0xe]
|
||||
lsls r1, r1, #0x18
|
||||
cmp r1, #0
|
||||
bne _08063E68
|
||||
movs r0, #0xf
|
||||
bl SetRoomFlag
|
||||
_08063E68:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08063E6C
|
||||
sub_08063E6C: @ 0x08063E6C
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
ldr r0, _08063E8C @ =gTextBox
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _08063E8A
|
||||
movs r0, #1
|
||||
strb r0, [r2, #0xc]
|
||||
ldrb r1, [r2, #0x14]
|
||||
adds r1, #4
|
||||
adds r0, r2, #0
|
||||
bl InitializeAnimation
|
||||
_08063E8A:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08063E8C: .4byte gTextBox
|
||||
|
||||
thumb_func_start sub_08063E90
|
||||
sub_08063E90: @ 0x08063E90
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #9]
|
||||
movs r1, #0x15
|
||||
eors r0, r1
|
||||
rsbs r1, r0, #0
|
||||
orrs r1, r0
|
||||
lsrs r1, r1, #0x1f
|
||||
lsls r1, r1, #4
|
||||
ldr r0, _08063EC8 @ =gUnk_0810F524
|
||||
adds r1, r1, r0
|
||||
adds r0, r4, #0
|
||||
bl LoadExtraSpriteData
|
||||
cmp r0, #0
|
||||
beq _08063F1E
|
||||
ldrb r0, [r4, #0xc]
|
||||
adds r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0xe]
|
||||
cmp r1, #0
|
||||
beq _08063ECC
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x70
|
||||
movs r0, #8
|
||||
strb r0, [r1]
|
||||
b _08063ED2
|
||||
.align 2, 0
|
||||
_08063EC8: .4byte gUnk_0810F524
|
||||
_08063ECC:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x70
|
||||
strb r1, [r0]
|
||||
_08063ED2:
|
||||
movs r0, #0
|
||||
strb r0, [r4, #0xe]
|
||||
adds r0, r4, #0
|
||||
bl sub_0805ACC0
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0
|
||||
bne _08063EF2
|
||||
ldrh r0, [r4, #0x2e]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x68
|
||||
strh r0, [r1]
|
||||
ldrh r0, [r4, #0x32]
|
||||
adds r1, #2
|
||||
strh r0, [r1]
|
||||
b _08063EFE
|
||||
_08063EF2:
|
||||
lsrs r1, r2, #0x10
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x68
|
||||
strh r1, [r0]
|
||||
adds r0, #2
|
||||
strh r2, [r0]
|
||||
_08063EFE:
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x71
|
||||
movs r0, #0
|
||||
strb r0, [r1]
|
||||
subs r1, #0x39
|
||||
movs r0, #1
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
adds r0, r4, #0
|
||||
bl sub_0807DD64
|
||||
adds r0, r4, #0
|
||||
bl sub_08063F20
|
||||
_08063F1E:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_08063F20
|
||||
sub_08063F20: @ 0x08063F20
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #0
|
||||
bl sub_0807DDAC
|
||||
adds r0, r4, #0
|
||||
bl sub_0807DDE4
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x39
|
||||
movs r0, #0
|
||||
ldrsb r0, [r2, r0]
|
||||
cmp r0, #0
|
||||
beq _08063F72
|
||||
ldrb r0, [r4, #0xc]
|
||||
adds r0, #1
|
||||
movs r1, #0
|
||||
strb r0, [r4, #0xc]
|
||||
strb r1, [r2]
|
||||
ldr r1, _08063F74 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl sub_0806F5A4
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x70
|
||||
ldrb r0, [r0]
|
||||
lsls r0, r0, #0x18
|
||||
asrs r0, r0, #0x18
|
||||
adds r1, r1, r0
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
adds r0, r4, #0
|
||||
bl sub_08064428
|
||||
_08063F72:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_08063F74: .4byte gLinkEntity
|
||||
|
||||
thumb_func_start sub_08063F78
|
||||
sub_08063F78: @ 0x08063F78
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
ldr r0, _08063FA8 @ =gTextBox
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _08063FA6
|
||||
ldrb r0, [r2, #0xc]
|
||||
subs r0, #1
|
||||
strb r0, [r2, #0xc]
|
||||
ldrb r1, [r2, #0x14]
|
||||
lsrs r1, r1, #1
|
||||
adds r0, r2, #0
|
||||
adds r0, #0x70
|
||||
ldrb r0, [r0]
|
||||
lsls r0, r0, #0x18
|
||||
asrs r0, r0, #0x18
|
||||
adds r0, #4
|
||||
adds r1, r1, r0
|
||||
adds r0, r2, #0
|
||||
bl InitializeAnimation
|
||||
_08063FA6:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08063FA8: .4byte gTextBox
|
||||
|
||||
thumb_func_start Guard_Head
|
||||
Guard_Head: @ 0x08063FAC
|
||||
push {r4, r5, r6, lr}
|
||||
adds r6, r0, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x3f
|
||||
adds r2, r0, #0
|
||||
ands r2, r1
|
||||
ldrb r3, [r6, #0x1e]
|
||||
adds r5, r0, #0
|
||||
ands r5, r3
|
||||
adds r1, r6, #0
|
||||
adds r1, #0x5b
|
||||
ldrb r1, [r1]
|
||||
adds r4, r0, #0
|
||||
ands r4, r1
|
||||
ldrb r0, [r6, #9]
|
||||
cmp r0, #0x15
|
||||
bne _08063FEC
|
||||
movs r0, #0x40
|
||||
ands r0, r3
|
||||
cmp r0, #0
|
||||
beq _08063FE2
|
||||
adds r5, #0x21
|
||||
movs r2, #1
|
||||
rsbs r2, r2, #0
|
||||
movs r4, #0
|
||||
b _08063FF6
|
||||
_08063FE2:
|
||||
adds r2, #0x19
|
||||
cmp r4, #0
|
||||
beq _08063FF6
|
||||
adds r4, #0x1f
|
||||
b _08063FF6
|
||||
_08063FEC:
|
||||
adds r2, #0x46
|
||||
adds r5, #0x2d
|
||||
cmp r4, #0
|
||||
beq _08063FF6
|
||||
adds r4, #0x4c
|
||||
_08063FF6:
|
||||
subs r4, #1
|
||||
adds r0, r6, #0
|
||||
movs r1, #0
|
||||
bl SetExtraSpriteFrame
|
||||
adds r0, r6, #0
|
||||
movs r1, #1
|
||||
adds r2, r5, #0
|
||||
bl SetExtraSpriteFrame
|
||||
adds r0, r6, #0
|
||||
movs r1, #2
|
||||
adds r2, r4, #0
|
||||
bl SetExtraSpriteFrame
|
||||
adds r0, r6, #0
|
||||
movs r1, #1
|
||||
movs r2, #0
|
||||
bl SetSpriteSubEntryOffsetData1
|
||||
adds r0, r6, #0
|
||||
movs r1, #1
|
||||
movs r2, #2
|
||||
bl SetSpriteSubEntryOffsetData2
|
||||
adds r0, r6, #0
|
||||
bl sub_0807000C
|
||||
pop {r4, r5, r6, pc}
|
||||
|
||||
thumb_func_start sub_08064030
|
||||
sub_08064030: @ 0x08064030
|
||||
ldr r0, _08064040 @ =gRoomVars
|
||||
ldr r2, [r0, #0x68]
|
||||
rsbs r0, r2, #0
|
||||
orrs r0, r2
|
||||
lsrs r0, r0, #0x1f
|
||||
str r0, [r1, #0x14]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_08064040: .4byte gRoomVars
|
||||
|
||||
thumb_func_start sub_08064044
|
||||
sub_08064044: @ 0x08064044
|
||||
ldr r1, _0806404C @ =gUnk_030010A0
|
||||
movs r0, #1
|
||||
strb r0, [r1, #8]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_0806404C: .4byte gUnk_030010A0
|
||||
|
||||
thumb_func_start sub_08064050
|
||||
sub_08064050: @ 0x08064050
|
||||
push {lr}
|
||||
adds r2, r1, #0
|
||||
movs r1, #0
|
||||
str r1, [r2, #4]
|
||||
ldrb r0, [r0, #0xb]
|
||||
cmp r0, #0x12
|
||||
beq _08064072
|
||||
cmp r0, #0x12
|
||||
bgt _08064068
|
||||
cmp r0, #0x11
|
||||
beq _0806406E
|
||||
b _0806407A
|
||||
_08064068:
|
||||
cmp r0, #0x13
|
||||
beq _08064076
|
||||
b _0806407A
|
||||
_0806406E:
|
||||
movs r0, #1
|
||||
b _08064078
|
||||
_08064072:
|
||||
movs r0, #2
|
||||
b _08064078
|
||||
_08064076:
|
||||
movs r0, #3
|
||||
_08064078:
|
||||
str r0, [r2, #4]
|
||||
_0806407A:
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0806407C
|
||||
sub_0806407C: @ 0x0806407C
|
||||
push {r4, r5, r6, lr}
|
||||
@@ -737,7 +267,7 @@ _08064256:
|
||||
bne _0806428C
|
||||
ldr r1, _080642B0 @ =gLinkEntity
|
||||
adds r0, r5, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5B0
|
||||
strb r0, [r5, #0x14]
|
||||
lsls r0, r0, #0x18
|
||||
@@ -882,7 +412,7 @@ _08064376:
|
||||
bne _080643AC
|
||||
ldr r1, _080643D0 @ =gLinkEntity
|
||||
adds r0, r5, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5B0
|
||||
strb r0, [r5, #0x14]
|
||||
lsls r0, r0, #0x18
|
||||
|
||||
+1
-1
@@ -315,7 +315,7 @@ sub_0804882C: @ 0x0804882C
|
||||
movs r0, #2
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x7a
|
||||
ldrb r0, [r0]
|
||||
|
||||
+2
-2
@@ -125,7 +125,7 @@ sub_0804614C: @ 0x0804614C
|
||||
adds r1, r0, #0
|
||||
adds r1, #0x38
|
||||
strb r5, [r1]
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
ldr r1, _08046258 @ =sub_08046498
|
||||
adds r0, r6, #0
|
||||
movs r2, #0
|
||||
@@ -846,7 +846,7 @@ _0804674C:
|
||||
movs r0, #1
|
||||
strb r0, [r1]
|
||||
adds r0, r2, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_080467CC:
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x7c
|
||||
|
||||
+3
-3
@@ -997,7 +997,7 @@ _08046F12:
|
||||
strb r0, [r1]
|
||||
str r4, [r2, #0x50]
|
||||
adds r0, r2, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_08046F58:
|
||||
adds r0, r4, #0
|
||||
bl sub_08047E48
|
||||
@@ -1052,7 +1052,7 @@ _08046F82:
|
||||
strb r0, [r1]
|
||||
str r4, [r2, #0x50]
|
||||
adds r0, r2, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_08046FC8:
|
||||
ldr r0, [r4, #0x64]
|
||||
ldr r0, [r0]
|
||||
@@ -2751,7 +2751,7 @@ sub_08047BF0: @ 0x08047BF0
|
||||
movs r0, #1
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_08047C74:
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x76
|
||||
|
||||
@@ -43,7 +43,7 @@ _080866FE:
|
||||
adds r0, r6, #0
|
||||
adds r0, #0x6c
|
||||
ldrb r0, [r0]
|
||||
bl sub_0804B128
|
||||
bl GetCurrentRoomProperty
|
||||
adds r5, r0, #0
|
||||
movs r0, #0
|
||||
mov r8, r0
|
||||
@@ -108,7 +108,7 @@ _08086718:
|
||||
ldrb r0, [r5, #5]
|
||||
strb r0, [r4, #0xd]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
ldr r0, [r6, #0x68]
|
||||
orrs r0, r7
|
||||
str r0, [r6, #0x68]
|
||||
|
||||
+1
-1
@@ -59,7 +59,7 @@ _0806E34C:
|
||||
strb r0, [r1]
|
||||
ldr r1, _0806E3B0 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5A4
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
|
||||
@@ -162,7 +162,7 @@ _080525C2:
|
||||
adds r0, #0x38
|
||||
strb r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
bl sub_0805EA2C
|
||||
|
||||
+194
@@ -0,0 +1,194 @@
|
||||
.include "asm/macros.inc"
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_08018E68
|
||||
sub_08018E68: @ 0x08018E68
|
||||
push {r4, r5, r6, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r0, [r4, #0x54]
|
||||
cmp r0, #0
|
||||
bne _08018E82
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
adds r0, r4, #0
|
||||
movs r1, #5
|
||||
bl sub_08008790
|
||||
b _08018EA8
|
||||
_08018E82:
|
||||
adds r0, #0x3a
|
||||
ldrb r1, [r0]
|
||||
movs r0, #4
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _08018E92
|
||||
bl DeleteThisEntity
|
||||
_08018E92:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x41
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _08018EA8
|
||||
adds r0, r4, #0
|
||||
bl sub_08018F6C
|
||||
b _08018F62
|
||||
_08018EA8:
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
lsrs r0, r0, #0x18
|
||||
cmp r0, #0xff
|
||||
beq _08018F46
|
||||
adds r0, r4, #0
|
||||
bl sub_0806F69C
|
||||
ldrb r0, [r4, #0x15]
|
||||
cmp r0, #8
|
||||
beq _08018EEA
|
||||
cmp r0, #8
|
||||
bgt _08018ECC
|
||||
cmp r0, #0
|
||||
beq _08018ED6
|
||||
b _08018EEE
|
||||
_08018ECC:
|
||||
cmp r0, #0x10
|
||||
beq _08018EDE
|
||||
cmp r0, #0x18
|
||||
beq _08018EE4
|
||||
b _08018EEE
|
||||
_08018ED6:
|
||||
movs r6, #0
|
||||
movs r5, #4
|
||||
rsbs r5, r5, #0
|
||||
b _08018EEE
|
||||
_08018EDE:
|
||||
movs r6, #0
|
||||
movs r5, #4
|
||||
b _08018EEE
|
||||
_08018EE4:
|
||||
movs r6, #4
|
||||
rsbs r6, r6, #0
|
||||
b _08018EEC
|
||||
_08018EEA:
|
||||
movs r6, #4
|
||||
_08018EEC:
|
||||
movs r5, #0
|
||||
_08018EEE:
|
||||
ldr r1, [r4, #0x54]
|
||||
cmp r1, #0
|
||||
beq _08018F00
|
||||
ldrb r0, [r4, #0x15]
|
||||
strb r0, [r1, #0x15]
|
||||
ldr r1, [r4, #0x54]
|
||||
adds r0, r4, #0
|
||||
bl CopyPosition
|
||||
_08018F00:
|
||||
ldrb r0, [r4, #0xb]
|
||||
cmp r0, #0
|
||||
bne _08018F0C
|
||||
adds r0, r4, #0
|
||||
bl sub_0800451C
|
||||
_08018F0C:
|
||||
adds r0, r4, #0
|
||||
adds r1, r6, #0
|
||||
adds r2, r5, #0
|
||||
bl sub_0800029C
|
||||
ldr r1, _08018F64 @ =gUnk_080B3DF4
|
||||
bl sub_08007DD6
|
||||
cmp r0, #0
|
||||
bne _08018F62
|
||||
adds r0, r4, #0
|
||||
adds r1, r6, #0
|
||||
adds r2, r5, #0
|
||||
bl sub_080002B4
|
||||
cmp r0, #0x74
|
||||
beq _08018F62
|
||||
ldr r1, _08018F68 @ =gUnk_08003E44
|
||||
movs r0, #0x2e
|
||||
ldrsh r2, [r4, r0]
|
||||
adds r2, r2, r6
|
||||
movs r0, #0x32
|
||||
ldrsh r3, [r4, r0]
|
||||
adds r3, r3, r5
|
||||
adds r0, r4, #0
|
||||
bl sub_080040D8
|
||||
cmp r0, #0
|
||||
beq _08018F62
|
||||
_08018F46:
|
||||
ldr r0, [r4, #0x54]
|
||||
cmp r0, #0
|
||||
bne _08018F56
|
||||
ldrb r1, [r4, #0xa]
|
||||
adds r1, #0xd
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
_08018F56:
|
||||
ldrb r0, [r4, #0xc]
|
||||
adds r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
adds r0, r4, #0
|
||||
bl sub_08018F6C
|
||||
_08018F62:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_08018F64: .4byte gUnk_080B3DF4
|
||||
_08018F68: .4byte gUnk_08003E44
|
||||
|
||||
thumb_func_start sub_08018F6C
|
||||
sub_08018F6C: @ 0x08018F6C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r1, [r4, #0x54]
|
||||
cmp r1, #0
|
||||
beq _08018F8A
|
||||
movs r0, #5
|
||||
strb r0, [r1, #0xd]
|
||||
ldr r2, [r4, #0x54]
|
||||
ldrb r1, [r2, #0x18]
|
||||
subs r0, #9
|
||||
ands r0, r1
|
||||
movs r1, #1
|
||||
orrs r0, r1
|
||||
strb r0, [r2, #0x18]
|
||||
b _08018F9A
|
||||
_08018F8A:
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _08018F9E
|
||||
_08018F9A:
|
||||
bl DeleteThisEntity
|
||||
_08018F9E:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_08018FA0
|
||||
sub_08018FA0: @ 0x08018FA0
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
ldr r0, _08018FC8 @ =gLinkEntity
|
||||
adds r0, #0x38
|
||||
ldrb r0, [r0]
|
||||
adds r1, r2, #0
|
||||
adds r1, #0x38
|
||||
strb r0, [r1]
|
||||
lsls r0, r0, #0x18
|
||||
lsrs r0, r0, #0x18
|
||||
cmp r0, #2
|
||||
bne _08018FBC
|
||||
movs r0, #1
|
||||
strb r0, [r2, #0xb]
|
||||
_08018FBC:
|
||||
ldrb r0, [r2, #0xa]
|
||||
adds r0, #0xea
|
||||
bl PlaySFX
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08018FC8: .4byte gLinkEntity
|
||||
+1
-1
@@ -288,7 +288,7 @@ _080819D4:
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
adds r0, r5, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r0, r5, #0
|
||||
bl sub_08081A5C
|
||||
pop {r4, r5, r6, pc}
|
||||
|
||||
+2
-2
@@ -1473,7 +1473,7 @@ _08081522:
|
||||
ldrb r0, [r4, #0xa]
|
||||
bl sub_0808148C
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_08081532:
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEFE0
|
||||
@@ -1510,7 +1510,7 @@ sub_0808153C: @ 0x0808153C
|
||||
ldrb r0, [r4, #0xa]
|
||||
bl sub_0808148C
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
b _08081596
|
||||
_0808157E:
|
||||
movs r1, #0xa0
|
||||
|
||||
+1
-1
@@ -54,7 +54,7 @@ _080A08F6:
|
||||
movs r0, #1
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
|
||||
+1
-1
@@ -319,7 +319,7 @@ sub_080325E8: @ 0x080325E8
|
||||
beq _0803264C
|
||||
ldr r1, [r5]
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
adds r3, r4, #0
|
||||
adds r3, #0x5a
|
||||
ldrb r2, [r3]
|
||||
|
||||
@@ -76,7 +76,7 @@ sub_08062130: @ 0x08062130
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
adds r0, r4, #0
|
||||
bl sub_0806EDC4
|
||||
bl GetAnimationState
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
bl InitAnimationForceUpdate
|
||||
@@ -265,7 +265,7 @@ _0806229A:
|
||||
bhi _080622F2
|
||||
ldr r1, _080622C8 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5A4
|
||||
ldrb r1, [r5]
|
||||
movs r2, #4
|
||||
|
||||
+1
-1
@@ -26,7 +26,7 @@ KingDaltus: @ 0x080665E4
|
||||
strb r1, [r4, #0xc]
|
||||
ldr r1, _08066630 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
bl GetFacingDirection
|
||||
bl sub_0806F5A4
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
|
||||
@@ -29,7 +29,7 @@ sub_08093FCC: @ 0x08093FCC
|
||||
adds r2, #0x38
|
||||
movs r1, #2
|
||||
strb r1, [r2]
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_08093FE0
|
||||
@@ -54,7 +54,7 @@ _08094002:
|
||||
movs r0, #1
|
||||
strb r0, [r3]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x29
|
||||
ldrb r1, [r2]
|
||||
@@ -76,7 +76,7 @@ _08094024:
|
||||
movs r0, #2
|
||||
strb r0, [r3]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x29
|
||||
ldrb r1, [r2]
|
||||
|
||||
-748
@@ -1,748 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start Lakitu
|
||||
Lakitu: @ 0x0803C738
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r1, _0803C754 @ =gUnk_080D0110
|
||||
bl EnemyFunctionHandler
|
||||
movs r3, #0x10
|
||||
rsbs r3, r3, #0
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
movs r2, #1
|
||||
bl SetChildOffset
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0803C754: .4byte gUnk_080D0110
|
||||
|
||||
thumb_func_start sub_0803C758
|
||||
sub_0803C758: @ 0x0803C758
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xc]
|
||||
cmp r0, #0
|
||||
beq _0803C76C
|
||||
cmp r0, #7
|
||||
beq _0803C76C
|
||||
adds r0, r4, #0
|
||||
bl sub_0803CAD0
|
||||
_0803C76C:
|
||||
ldr r0, _0803C780 @ =gUnk_080D0128
|
||||
ldrb r1, [r4, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r0
|
||||
ldr r1, [r1]
|
||||
adds r0, r4, #0
|
||||
bl _call_via_r1
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0803C780: .4byte gUnk_080D0128
|
||||
|
||||
thumb_func_start sub_0803C784
|
||||
sub_0803C784: @ 0x0803C784
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, #0x41
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
cmp r0, #0x1d
|
||||
bne _0803C7A2
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #0xa
|
||||
str r0, [r4, #0x20]
|
||||
adds r0, r4, #0
|
||||
bl sub_0803CBAC
|
||||
b _0803C7FA
|
||||
_0803C7A2:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x3f
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0x43
|
||||
bne _0803C7FA
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0
|
||||
beq _0803C7FA
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x3e
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x10
|
||||
eors r0, r1
|
||||
lsls r1, r0, #3
|
||||
ldr r3, _0803C818 @ =gSineTable
|
||||
lsls r0, r0, #4
|
||||
adds r0, r0, r3
|
||||
movs r5, #0
|
||||
ldrsh r0, [r0, r5]
|
||||
cmp r0, #0
|
||||
bge _0803C7D8
|
||||
adds r0, #0x1f
|
||||
_0803C7D8:
|
||||
asrs r0, r0, #5
|
||||
ldrh r5, [r2, #0x2e]
|
||||
adds r0, r0, r5
|
||||
strh r0, [r2, #0x2e]
|
||||
adds r0, r1, #0
|
||||
adds r0, #0x40
|
||||
lsls r0, r0, #1
|
||||
adds r0, r0, r3
|
||||
movs r1, #0
|
||||
ldrsh r0, [r0, r1]
|
||||
cmp r0, #0
|
||||
bge _0803C7F2
|
||||
adds r0, #0x1f
|
||||
_0803C7F2:
|
||||
asrs r1, r0, #5
|
||||
ldrh r0, [r2, #0x32]
|
||||
subs r0, r0, r1
|
||||
strh r0, [r2, #0x32]
|
||||
_0803C7FA:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x43
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _0803C80C
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x1c
|
||||
bl sub_0804A9FC
|
||||
_0803C80C:
|
||||
ldr r1, _0803C81C @ =gUnk_080D0110
|
||||
adds r0, r4, #0
|
||||
bl sub_0804AA30
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0803C818: .4byte gSineTable
|
||||
_0803C81C: .4byte gUnk_080D0110
|
||||
|
||||
thumb_func_start sub_0803C820
|
||||
sub_0803C820: @ 0x0803C820
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0806F520
|
||||
cmp r0, #0
|
||||
beq _0803C83C
|
||||
ldr r0, _0803C840 @ =gUnk_080D0148
|
||||
ldrb r1, [r4, #0xd]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r0
|
||||
ldr r1, [r1]
|
||||
adds r0, r4, #0
|
||||
bl _call_via_r1
|
||||
_0803C83C:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0803C840: .4byte gUnk_080D0148
|
||||
|
||||
thumb_func_start sub_0803C844
|
||||
sub_0803C844: @ 0x0803C844
|
||||
movs r1, #1
|
||||
strb r1, [r0, #0xd]
|
||||
movs r1, #0x3c
|
||||
strb r1, [r0, #0x1d]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0803C850
|
||||
sub_0803C850: @ 0x0803C850
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
ldr r0, [r2, #0x54]
|
||||
cmp r0, #0
|
||||
beq _0803C864
|
||||
adds r1, r2, #0
|
||||
adds r1, #0x62
|
||||
ldrb r1, [r1]
|
||||
adds r0, #0x62
|
||||
strb r1, [r0]
|
||||
_0803C864:
|
||||
adds r0, r2, #0
|
||||
bl sub_0806F4E8
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0803C86C
|
||||
sub_0803C86C: @ 0x0803C86C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0803CBAC
|
||||
movs r0, #0
|
||||
str r0, [r4, #0x54]
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0803C87C
|
||||
sub_0803C87C: @ 0x0803C87C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #0x11
|
||||
movs r2, #0
|
||||
bl sub_0804A98C
|
||||
cmp r0, #0
|
||||
beq _0803C8B4
|
||||
str r4, [r0, #0x50]
|
||||
str r0, [r4, #0x54]
|
||||
adds r0, r4, #0
|
||||
bl sub_0804A720
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
ldr r0, _0803C8B8 @ =0x0000FFFE
|
||||
strh r0, [r4, #0x36]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x63
|
||||
movs r0, #0xff
|
||||
strb r0, [r1]
|
||||
ldrh r1, [r4, #0x2e]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x74
|
||||
strh r1, [r0]
|
||||
ldrh r1, [r4, #0x32]
|
||||
adds r0, #2
|
||||
strh r1, [r0]
|
||||
_0803C8B4:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0803C8B8: .4byte 0x0000FFFE
|
||||
|
||||
thumb_func_start sub_0803C8BC
|
||||
sub_0803C8BC: @ 0x0803C8BC
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #0
|
||||
bl sub_0803CA84
|
||||
adds r0, r4, #0
|
||||
bl sub_0803CA4C
|
||||
cmp r0, #0
|
||||
beq _0803C8E0
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x18]
|
||||
subs r0, #6
|
||||
ands r0, r1
|
||||
movs r1, #1
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
_0803C8E0:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0803C8E4
|
||||
sub_0803C8E4: @ 0x0803C8E4
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl UpdateAnimationSingleFrame
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0803C914
|
||||
movs r0, #3
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x3c
|
||||
strb r0, [r4, #0xe]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x3f
|
||||
movs r0, #0x42
|
||||
strb r0, [r1]
|
||||
ldrb r1, [r4, #0x14]
|
||||
adds r1, #4
|
||||
adds r0, r4, #0
|
||||
bl InitAnimationForceUpdate
|
||||
_0803C914:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0803C918
|
||||
sub_0803C918: @ 0x0803C918
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0803CB04
|
||||
cmp r0, #0
|
||||
bne _0803C94E
|
||||
adds r0, r4, #0
|
||||
bl sub_0803CA4C
|
||||
cmp r0, #0
|
||||
bne _0803C946
|
||||
movs r0, #4
|
||||
strb r0, [r4, #0xc]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x3f
|
||||
movs r0, #0x43
|
||||
strb r0, [r1]
|
||||
ldrb r1, [r4, #0x14]
|
||||
adds r1, #0xc
|
||||
adds r0, r4, #0
|
||||
bl InitAnimationForceUpdate
|
||||
b _0803C94E
|
||||
_0803C946:
|
||||
adds r0, r4, #0
|
||||
movs r1, #4
|
||||
bl sub_0803CA84
|
||||
_0803C94E:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0803C950
|
||||
sub_0803C950: @ 0x0803C950
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl UpdateAnimationSingleFrame
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0803C97A
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x18]
|
||||
subs r0, #5
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
ldrb r1, [r4, #0x14]
|
||||
adds r0, r4, #0
|
||||
bl InitAnimationForceUpdate
|
||||
_0803C97A:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0803C97C
|
||||
sub_0803C97C: @ 0x0803C97C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl UpdateAnimationSingleFrame
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0803C9D2
|
||||
adds r0, r4, #0
|
||||
bl sub_0803CB64
|
||||
movs r0, #6
|
||||
strb r0, [r4, #0xc]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x3f
|
||||
movs r0, #0x42
|
||||
strb r0, [r1]
|
||||
bl Random
|
||||
movs r1, #1
|
||||
ands r0, r1
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x79
|
||||
cmp r0, #0
|
||||
beq _0803C9C2
|
||||
ldrb r0, [r2]
|
||||
cmp r0, #0
|
||||
bne _0803C9C2
|
||||
movs r0, #0xf
|
||||
strb r0, [r4, #0xe]
|
||||
strb r1, [r2]
|
||||
b _0803C9D2
|
||||
_0803C9C2:
|
||||
movs r1, #0
|
||||
movs r0, #0x1e
|
||||
strb r0, [r4, #0xe]
|
||||
strb r1, [r2]
|
||||
ldr r0, [r4, #0x54]
|
||||
ldrb r1, [r4, #0x14]
|
||||
bl InitAnimationForceUpdate
|
||||
_0803C9D2:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0803C9D4
|
||||
sub_0803C9D4: @ 0x0803C9D4
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
ldrb r0, [r2, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r2, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _0803CA08
|
||||
adds r0, r2, #0
|
||||
adds r0, #0x79
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #1
|
||||
bne _0803C9F6
|
||||
adds r0, r2, #0
|
||||
bl sub_0803CB34
|
||||
b _0803CA08
|
||||
_0803C9F6:
|
||||
movs r0, #3
|
||||
strb r0, [r2, #0xc]
|
||||
movs r0, #0xb4
|
||||
strb r0, [r2, #0xe]
|
||||
ldrb r1, [r2, #0x14]
|
||||
adds r1, #4
|
||||
adds r0, r2, #0
|
||||
bl InitAnimationForceUpdate
|
||||
_0803CA08:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0803CA0C
|
||||
sub_0803CA0C: @ 0x0803CA0C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #0xc0
|
||||
lsls r1, r1, #5
|
||||
bl sub_08003FC4
|
||||
cmp r0, #0
|
||||
bne _0803CA3E
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x58
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0x13
|
||||
bhi _0803CA3E
|
||||
ldrb r1, [r4, #0x14]
|
||||
adds r1, #0x14
|
||||
adds r0, r4, #0
|
||||
bl InitAnimationForceUpdate
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x29
|
||||
ldrb r1, [r2]
|
||||
movs r0, #0x39
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
strb r0, [r2]
|
||||
_0803CA3E:
|
||||
adds r0, r4, #0
|
||||
bl UpdateAnimationSingleFrame
|
||||
adds r0, r4, #0
|
||||
bl sub_0803CC08
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0803CA4C
|
||||
sub_0803CA4C: @ 0x0803CA4C
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
ldr r4, _0803CA7C @ =gLinkEntity
|
||||
movs r0, #0x2e
|
||||
ldrsh r1, [r4, r0]
|
||||
movs r0, #0x32
|
||||
ldrsh r2, [r4, r0]
|
||||
adds r0, r5, #0
|
||||
movs r3, #0x28
|
||||
bl sub_0806FCB8
|
||||
cmp r0, #0
|
||||
bne _0803CA80
|
||||
adds r0, r5, #0
|
||||
adds r1, r4, #0
|
||||
movs r2, #0x70
|
||||
movs r3, #0x50
|
||||
bl sub_080041A0
|
||||
cmp r0, #0
|
||||
beq _0803CA80
|
||||
movs r0, #1
|
||||
b _0803CA82
|
||||
.align 2, 0
|
||||
_0803CA7C: .4byte gLinkEntity
|
||||
_0803CA80:
|
||||
movs r0, #0
|
||||
_0803CA82:
|
||||
pop {r4, r5, pc}
|
||||
|
||||
thumb_func_start sub_0803CA84
|
||||
sub_0803CA84: @ 0x0803CA84
|
||||
push {r4, r5, r6, lr}
|
||||
adds r5, r0, #0
|
||||
adds r6, r1, #0
|
||||
ldr r1, _0803CACC @ =gLinkEntity
|
||||
bl sub_080045C4
|
||||
adds r4, r0, #0
|
||||
subs r0, r4, #3
|
||||
movs r1, #7
|
||||
ands r0, r1
|
||||
cmp r0, #2
|
||||
bhi _0803CAAA
|
||||
ldrb r0, [r5, #0x14]
|
||||
lsrs r1, r4, #3
|
||||
subs r0, r0, r1
|
||||
movs r1, #3
|
||||
ands r0, r1
|
||||
cmp r0, #1
|
||||
bls _0803CACA
|
||||
_0803CAAA:
|
||||
adds r0, r4, #4
|
||||
movs r1, #0x18
|
||||
ands r0, r1
|
||||
lsrs r4, r0, #3
|
||||
ldrb r0, [r5, #0x14]
|
||||
cmp r4, r0
|
||||
beq _0803CACA
|
||||
strb r4, [r5, #0x14]
|
||||
adds r1, r4, r6
|
||||
adds r0, r5, #0
|
||||
bl InitAnimationForceUpdate
|
||||
ldr r0, [r5, #0x54]
|
||||
adds r1, r4, #0
|
||||
bl InitAnimationForceUpdate
|
||||
_0803CACA:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_0803CACC: .4byte gLinkEntity
|
||||
|
||||
thumb_func_start sub_0803CAD0
|
||||
sub_0803CAD0: @ 0x0803CAD0
|
||||
push {r4, r5, r6, lr}
|
||||
adds r4, r0, #0
|
||||
adds r6, r4, #0
|
||||
adds r6, #0x74
|
||||
ldrh r1, [r6]
|
||||
adds r5, r4, #0
|
||||
adds r5, #0x76
|
||||
ldrh r2, [r5]
|
||||
movs r3, #1
|
||||
bl sub_0806FCB8
|
||||
cmp r0, #0
|
||||
bne _0803CB02
|
||||
movs r1, #0x2e
|
||||
ldrsh r0, [r4, r1]
|
||||
movs r2, #0x32
|
||||
ldrsh r1, [r4, r2]
|
||||
ldrh r2, [r6]
|
||||
ldrh r3, [r5]
|
||||
bl sub_080045D4
|
||||
strb r0, [r4, #0x15]
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEFE0
|
||||
_0803CB02:
|
||||
pop {r4, r5, r6, pc}
|
||||
|
||||
thumb_func_start sub_0803CB04
|
||||
sub_0803CB04: @ 0x0803CB04
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
lsrs r5, r0, #0x18
|
||||
cmp r5, #0
|
||||
beq _0803CB1A
|
||||
movs r0, #0
|
||||
b _0803CB32
|
||||
_0803CB1A:
|
||||
adds r0, r4, #0
|
||||
bl sub_0803CB34
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x79
|
||||
strb r5, [r0]
|
||||
ldr r0, [r4, #0x54]
|
||||
ldrb r1, [r4, #0x14]
|
||||
adds r1, #4
|
||||
bl InitAnimationForceUpdate
|
||||
movs r0, #1
|
||||
_0803CB32:
|
||||
pop {r4, r5, pc}
|
||||
|
||||
thumb_func_start sub_0803CB34
|
||||
sub_0803CB34: @ 0x0803CB34
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r0, #5
|
||||
strb r0, [r4, #0xc]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x3f
|
||||
movs r0, #0xa6
|
||||
strb r0, [r1]
|
||||
ldr r1, _0803CB60 @ =gLinkEntity
|
||||
adds r0, r4, #0
|
||||
bl sub_080045C4
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x78
|
||||
strb r0, [r1]
|
||||
ldrb r1, [r4, #0x14]
|
||||
adds r1, #8
|
||||
adds r0, r4, #0
|
||||
bl InitAnimationForceUpdate
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0803CB60: .4byte gLinkEntity
|
||||
|
||||
thumb_func_start sub_0803CB64
|
||||
sub_0803CB64: @ 0x0803CB64
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #0x12
|
||||
movs r2, #0
|
||||
bl sub_0804A98C
|
||||
adds r5, r0, #0
|
||||
cmp r5, #0
|
||||
beq _0803CBA0
|
||||
ldrb r1, [r4, #0x14]
|
||||
lsls r1, r1, #1
|
||||
ldr r0, _0803CBA4 @ =gUnk_080D0154
|
||||
adds r1, r1, r0
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x78
|
||||
ldrb r0, [r0]
|
||||
strb r0, [r5, #0x15]
|
||||
movs r2, #0
|
||||
ldrsb r2, [r1, r2]
|
||||
lsls r2, r2, #0x10
|
||||
movs r3, #1
|
||||
ldrsb r3, [r1, r3]
|
||||
lsls r3, r3, #0x10
|
||||
adds r0, r4, #0
|
||||
adds r1, r5, #0
|
||||
bl PositionRelative
|
||||
ldr r0, _0803CBA8 @ =0x00000193
|
||||
bl sub_08004488
|
||||
_0803CBA0:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0803CBA4: .4byte gUnk_080D0154
|
||||
_0803CBA8: .4byte 0x00000193
|
||||
|
||||
thumb_func_start sub_0803CBAC
|
||||
sub_0803CBAC: @ 0x0803CBAC
|
||||
push {lr}
|
||||
adds r3, r0, #0
|
||||
ldr r2, [r3, #0x54]
|
||||
cmp r2, #0
|
||||
beq _0803CBC6
|
||||
ldrb r1, [r2, #0x10]
|
||||
movs r0, #0x80
|
||||
orrs r0, r1
|
||||
strb r0, [r2, #0x10]
|
||||
adds r1, r2, #0
|
||||
adds r1, #0x3f
|
||||
movs r0, #0x43
|
||||
strb r0, [r1]
|
||||
_0803CBC6:
|
||||
movs r0, #7
|
||||
strb r0, [r3, #0xc]
|
||||
ldrb r1, [r3, #0x18]
|
||||
subs r0, #0xb
|
||||
ands r0, r1
|
||||
movs r1, #1
|
||||
orrs r0, r1
|
||||
strb r0, [r3, #0x18]
|
||||
adds r2, r3, #0
|
||||
adds r2, #0x29
|
||||
ldrb r1, [r2]
|
||||
movs r0, #0x39
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
movs r1, #8
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
adds r2, #0x12
|
||||
ldrb r1, [r2]
|
||||
movs r0, #0x7b
|
||||
ands r0, r1
|
||||
strb r0, [r2]
|
||||
adds r1, r3, #0
|
||||
adds r1, #0x3f
|
||||
movs r0, #0x42
|
||||
strb r0, [r1]
|
||||
ldrb r1, [r3, #0x14]
|
||||
adds r1, #0x10
|
||||
adds r0, r3, #0
|
||||
bl InitAnimationForceUpdate
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0803CC08
|
||||
sub_0803CC08: @ 0x0803CC08
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r5, [r4, #0x54]
|
||||
cmp r5, #0
|
||||
beq _0803CCB4
|
||||
movs r1, #0x36
|
||||
ldrsh r0, [r5, r1]
|
||||
movs r2, #0x36
|
||||
ldrsh r1, [r4, r2]
|
||||
subs r0, r0, r1
|
||||
cmp r0, #2
|
||||
bhi _0803CCB4
|
||||
ldr r0, [r4, #0x20]
|
||||
cmp r0, #0
|
||||
bge _0803CCB4
|
||||
movs r0, #0x2e
|
||||
ldrsh r1, [r5, r0]
|
||||
movs r0, #0x32
|
||||
ldrsh r2, [r5, r0]
|
||||
adds r0, r4, #0
|
||||
movs r3, #6
|
||||
bl sub_0806FCB8
|
||||
cmp r0, #0
|
||||
beq _0803CCB4
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _0803CC56
|
||||
ldrh r0, [r1, #0x2e]
|
||||
adds r0, #6
|
||||
strh r0, [r1, #0x2e]
|
||||
ldrh r0, [r1, #0x32]
|
||||
adds r0, #6
|
||||
strh r0, [r1, #0x32]
|
||||
_0803CC56:
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _0803CC72
|
||||
ldrh r0, [r1, #0x2e]
|
||||
subs r0, #6
|
||||
strh r0, [r1, #0x2e]
|
||||
ldrh r0, [r1, #0x32]
|
||||
adds r0, #6
|
||||
strh r0, [r1, #0x32]
|
||||
_0803CC72:
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _0803CC8E
|
||||
ldrh r0, [r1, #0x2e]
|
||||
adds r0, #6
|
||||
strh r0, [r1, #0x2e]
|
||||
ldrh r0, [r1, #0x32]
|
||||
subs r0, #6
|
||||
strh r0, [r1, #0x32]
|
||||
_0803CC8E:
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _0803CCAA
|
||||
ldrh r0, [r1, #0x2e]
|
||||
subs r0, #6
|
||||
strh r0, [r1, #0x2e]
|
||||
ldrh r0, [r1, #0x32]
|
||||
subs r0, #6
|
||||
strh r0, [r1, #0x32]
|
||||
_0803CCAA:
|
||||
movs r0, #0
|
||||
str r0, [r4, #0x54]
|
||||
adds r0, r5, #0
|
||||
bl DeleteEntity
|
||||
_0803CCB4:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
@@ -1,254 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start LakituCloud
|
||||
LakituCloud: @ 0x0803CCB8
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
ldr r4, _0803CCD0 @ =gUnk_080D0418
|
||||
bl GetNextFunction
|
||||
lsls r0, r0, #2
|
||||
adds r0, r0, r4
|
||||
ldr r1, [r0]
|
||||
adds r0, r5, #0
|
||||
bl _call_via_r1
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0803CCD0: .4byte gUnk_080D0418
|
||||
|
||||
thumb_func_start sub_0803CCD4
|
||||
sub_0803CCD4: @ 0x0803CCD4
|
||||
push {lr}
|
||||
ldr r2, _0803CCE8 @ =gUnk_080D0430
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0803CCE8: .4byte gUnk_080D0430
|
||||
|
||||
thumb_func_start sub_0803CCEC
|
||||
sub_0803CCEC: @ 0x0803CCEC
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
adds r2, #0x42
|
||||
movs r1, #0
|
||||
strb r1, [r2]
|
||||
bl sub_0803CCD4
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0803CCFC
|
||||
sub_0803CCFC: @ 0x0803CCFC
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0806F520
|
||||
cmp r0, #0
|
||||
bne _0803CD16
|
||||
ldrb r0, [r4, #0xd]
|
||||
cmp r0, #2
|
||||
bne _0803CD26
|
||||
adds r0, r4, #0
|
||||
bl sub_0803CE3C
|
||||
b _0803CD26
|
||||
_0803CD16:
|
||||
ldr r0, _0803CD28 @ =gUnk_080D043C
|
||||
ldrb r1, [r4, #0xd]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r0
|
||||
ldr r1, [r1]
|
||||
adds r0, r4, #0
|
||||
bl _call_via_r1
|
||||
_0803CD26:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0803CD28: .4byte gUnk_080D043C
|
||||
|
||||
thumb_func_start sub_0803CD2C
|
||||
sub_0803CD2C: @ 0x0803CD2C
|
||||
movs r1, #1
|
||||
strb r1, [r0, #0xd]
|
||||
movs r1, #0x3c
|
||||
strb r1, [r0, #0x1d]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0803CD38
|
||||
sub_0803CD38: @ 0x0803CD38
|
||||
push {lr}
|
||||
bl sub_0806F4E8
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0803CD40
|
||||
sub_0803CD40: @ 0x0803CD40
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0806F3E4
|
||||
cmp r0, #0
|
||||
beq _0803CD66
|
||||
movs r0, #2
|
||||
rsbs r0, r0, #0
|
||||
bl ModHealth
|
||||
ldr r0, _0803CD68 @ =gLinkEntity
|
||||
movs r1, #0x7a
|
||||
bl sub_0800449C
|
||||
bl sub_08079D84
|
||||
adds r0, r4, #0
|
||||
bl sub_0803CE3C
|
||||
_0803CD66:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0803CD68: .4byte gLinkEntity
|
||||
|
||||
thumb_func_start sub_0803CD6C
|
||||
sub_0803CD6C: @ 0x0803CD6C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
ldr r0, _0803CDA4 @ =0x0000FFFE
|
||||
strh r0, [r4, #0x36]
|
||||
ldrb r0, [r4, #0xa]
|
||||
bl sub_0804B128
|
||||
str r0, [r4, #0x54]
|
||||
str r0, [r4, #0x50]
|
||||
ldrh r1, [r4, #0x2e]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x78
|
||||
strh r1, [r0]
|
||||
ldrh r0, [r4, #0x32]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x7a
|
||||
strh r0, [r1]
|
||||
adds r0, r4, #0
|
||||
movs r1, #4
|
||||
bl InitAnimationForceUpdate
|
||||
adds r0, r4, #0
|
||||
bl sub_0803CE14
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0803CDA4: .4byte 0x0000FFFE
|
||||
|
||||
thumb_func_start sub_0803CDA8
|
||||
sub_0803CDA8: @ 0x0803CDA8
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl UpdateAnimationSingleFrame
|
||||
ldrb r1, [r4, #0x15]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _0803CDC0
|
||||
adds r0, r4, #0
|
||||
bl sub_0806F69C
|
||||
_0803CDC0:
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x74
|
||||
ldrh r0, [r1]
|
||||
subs r0, #1
|
||||
strh r0, [r1]
|
||||
lsls r0, r0, #0x10
|
||||
cmp r0, #0
|
||||
bne _0803CDD6
|
||||
adds r0, r4, #0
|
||||
bl sub_0803CE14
|
||||
_0803CDD6:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0803CDD8
|
||||
sub_0803CDD8: @ 0x0803CDD8
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r1, [r4, #0x18]
|
||||
lsls r0, r1, #0x1e
|
||||
lsrs r0, r0, #0x1e
|
||||
movs r2, #1
|
||||
eors r0, r2
|
||||
movs r5, #4
|
||||
rsbs r5, r5, #0
|
||||
adds r3, r5, #0
|
||||
ands r3, r1
|
||||
orrs r3, r0
|
||||
strb r3, [r4, #0x18]
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _0803CE10
|
||||
movs r0, #1
|
||||
strb r2, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r2, #0x80
|
||||
orrs r1, r2
|
||||
strb r1, [r4, #0x10]
|
||||
ands r3, r5
|
||||
orrs r3, r0
|
||||
strb r3, [r4, #0x18]
|
||||
_0803CE10:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0803CE14
|
||||
sub_0803CE14: @ 0x0803CE14
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x54
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x74
|
||||
bl sub_080A2CC0
|
||||
ldrb r1, [r4, #0x15]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _0803CE38
|
||||
lsrs r1, r1, #3
|
||||
adds r1, #4
|
||||
adds r0, r4, #0
|
||||
bl InitAnimationForceUpdate
|
||||
_0803CE38:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0803CE3C
|
||||
sub_0803CE3C: @ 0x0803CE3C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #2
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x3c
|
||||
strb r0, [r4, #0xe]
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x3a
|
||||
ldrb r1, [r2]
|
||||
movs r0, #0xfb
|
||||
ands r0, r1
|
||||
strb r0, [r2]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x78
|
||||
ldrh r0, [r0]
|
||||
strh r0, [r4, #0x2e]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x7a
|
||||
ldrh r0, [r0]
|
||||
strh r0, [r4, #0x32]
|
||||
ldr r0, [r4, #0x50]
|
||||
str r0, [r4, #0x54]
|
||||
adds r0, r4, #0
|
||||
bl sub_0803CE14
|
||||
pop {r4, pc}
|
||||
+3
-3
@@ -66,7 +66,7 @@ sub_0809229C: @ 0x0809229C
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
ldr r0, [r4, #0x54]
|
||||
ldrb r1, [r0, #0x14]
|
||||
adds r0, r4, #0
|
||||
@@ -460,7 +460,7 @@ sub_080925A4: @ 0x080925A4
|
||||
push {r4, r5, r6, r7, lr}
|
||||
adds r6, r0, #0
|
||||
ldrb r0, [r6, #0xb]
|
||||
bl sub_0804B128
|
||||
bl GetCurrentRoomProperty
|
||||
adds r5, r0, #0
|
||||
ldrb r0, [r5, #9]
|
||||
cmp r0, #0xff
|
||||
@@ -502,7 +502,7 @@ _080925B8:
|
||||
ldr r0, [r5]
|
||||
str r0, [r4, #0x78]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteOrderAndFlip
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x78
|
||||
adds r2, r4, #0
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user