mirror of
https://github.com/zeldaret/tmc
synced 2026-05-24 07:11:07 -04:00
Merge branch 'master' of https://github.com/zeldaret/tmc
This commit is contained in:
@@ -56,6 +56,7 @@ src/*.s
|
||||
tags
|
||||
tools/agbcc
|
||||
tools/binutils
|
||||
translations/*.bin
|
||||
types_*.taghl
|
||||
*.zip
|
||||
!calcrom.pl
|
||||
|
||||
+1
-1
@@ -37,7 +37,7 @@ To set up the repository:
|
||||
sh install.sh ../tmc
|
||||
|
||||
cd ../tmc
|
||||
make tools
|
||||
make setup
|
||||
|
||||
To build **tmc.gba**:
|
||||
|
||||
|
||||
@@ -90,7 +90,7 @@ C_OBJS := $(patsubst $(C_SUBDIR)/%.c,$(C_BUILDDIR)/%.o,$(C_SRCS))
|
||||
ASM_SRCS := $(wildcard $(ASM_SUBDIR)/*.s)
|
||||
ASM_OBJS := $(patsubst $(ASM_SUBDIR)/%.s,$(ASM_BUILDDIR)/%.o,$(ASM_SRCS))
|
||||
|
||||
DATA_ASM_SRCS := $(wildcard $(DATA_ASM_SUBDIR)/*.s)
|
||||
DATA_ASM_SRCS := $(wildcard $(DATA_ASM_SUBDIR)/*.s $(DATA_ASM_SUBDIR)/**/*.s)
|
||||
DATA_ASM_OBJS := $(patsubst $(DATA_ASM_SUBDIR)/%.s,$(DATA_ASM_BUILDDIR)/%.o,$(DATA_ASM_SRCS))
|
||||
|
||||
SONG_SRCS := $(wildcard $(SONG_SUBDIR)/*.s)
|
||||
@@ -161,6 +161,7 @@ include songs.mk
|
||||
sound/%.bin: sound/%.aif ; $(AIF) $< $@
|
||||
sound/songs/%.s: sound/songs/%.mid
|
||||
cd $(@D) && ../../$(MID) $(<F)
|
||||
translations/USA.bin: translations/USA.json ; tools/tmc_strings/tmc_strings -p --source $< --dest $@ --size 0x499E0
|
||||
|
||||
ifeq ($(NODEP),1)
|
||||
$(C_BUILDDIR)/%.o: c_dep :=
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# The Legend of Zelda: The Minish Cap
|
||||
|
||||
**Progress:** [⬛⬛⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜] 10%
|
||||
**Progress:** [⬛⬛⬛⬛⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜⬜] 20%
|
||||
|
||||
```diff
|
||||
- WARNING! -
|
||||
|
||||
+7
-7
@@ -299,7 +299,7 @@ _080303C0:
|
||||
bl sub_08030834
|
||||
movs r0, #0x95
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
b _0803042C
|
||||
.align 2, 0
|
||||
_080303D0: .4byte gUnk_080FD2F0
|
||||
@@ -450,7 +450,7 @@ _080304DE:
|
||||
strb r2, [r3]
|
||||
movs r0, #0x95
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_080304F0:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
@@ -502,7 +502,7 @@ _0803053E:
|
||||
strb r0, [r3]
|
||||
movs r0, #0x95
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_08030552:
|
||||
pop {pc}
|
||||
|
||||
@@ -597,7 +597,7 @@ _080305E4:
|
||||
cmp r0, #0
|
||||
bne _08030608
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
cmp r0, #0
|
||||
bne _0803064A
|
||||
ldrb r0, [r4, #0x15]
|
||||
@@ -624,7 +624,7 @@ _0803061E:
|
||||
cmp r3, #0
|
||||
bne _08030638
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
cmp r0, #0
|
||||
bne _0803064A
|
||||
ldrb r0, [r4, #0x15]
|
||||
@@ -1146,7 +1146,7 @@ _08030A02:
|
||||
sub_08030A04: @ 0x08030A04
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
adds r4, #0x5a
|
||||
ldrb r1, [r4]
|
||||
movs r0, #1
|
||||
@@ -1157,7 +1157,7 @@ sub_08030A04: @ 0x08030A04
|
||||
ands r0, r1
|
||||
strb r0, [r4]
|
||||
ldr r0, _08030A28 @ =0x00000101
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_08030A24:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
@@ -161,7 +161,7 @@ sub_0803E61C: @ 0x0803E61C
|
||||
cmp r0, #0
|
||||
bne _0803E654
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
cmp r0, #0
|
||||
bne _0803E654
|
||||
adds r0, r4, #0
|
||||
@@ -306,7 +306,7 @@ sub_0803E71C: @ 0x0803E71C
|
||||
movs r0, #0xf6
|
||||
strb r0, [r1]
|
||||
adds r0, #0x65
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_0803E756:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
-812
@@ -1,812 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start Beetle
|
||||
Beetle: @ 0x08021758
|
||||
push {lr}
|
||||
ldr r1, _08021764 @ =gUnk_080CB590
|
||||
bl EnemyFunctionHandler
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08021764: .4byte gUnk_080CB590
|
||||
|
||||
thumb_func_start sub_08021768
|
||||
sub_08021768: @ 0x08021768
|
||||
push {lr}
|
||||
ldr r2, _0802177C @ =gUnk_080CB5A8
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0802177C: .4byte gUnk_080CB5A8
|
||||
|
||||
thumb_func_start sub_08021780
|
||||
sub_08021780: @ 0x08021780
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, #0x41
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0x80
|
||||
beq _08021792
|
||||
cmp r0, #0x93
|
||||
beq _080217F4
|
||||
b _080217FA
|
||||
_08021792:
|
||||
ldr r0, _080217A4 @ =gPlayerState
|
||||
adds r0, #0xa8
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0x18
|
||||
bne _080217A8
|
||||
adds r0, r4, #0
|
||||
bl sub_08021768
|
||||
b _080217FA
|
||||
.align 2, 0
|
||||
_080217A4: .4byte gPlayerState
|
||||
_080217A8:
|
||||
movs r1, #0
|
||||
movs r0, #5
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0xb4
|
||||
strb r0, [r4, #0xe]
|
||||
strb r1, [r4, #0xf]
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x29
|
||||
ldrb r1, [r2]
|
||||
movs r0, #8
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
movs r1, #3
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
ldr r0, _080217EC @ =gPlayerEntity
|
||||
adds r1, r4, #0
|
||||
bl CopyPositionAndSpriteOffset
|
||||
ldr r0, _080217F0 @ =0x0000FFFF
|
||||
strh r0, [r4, #0x36]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x87
|
||||
movs r0, #1
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
movs r1, #6
|
||||
bl InitializeAnimation
|
||||
b _080217FA
|
||||
.align 2, 0
|
||||
_080217EC: .4byte gPlayerEntity
|
||||
_080217F0: .4byte 0x0000FFFF
|
||||
_080217F4:
|
||||
adds r0, r4, #0
|
||||
bl sub_08021768
|
||||
_080217FA:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x45
|
||||
ldrb r1, [r0]
|
||||
cmp r1, #0
|
||||
bne _08021808
|
||||
subs r0, #3
|
||||
strb r1, [r0]
|
||||
_08021808:
|
||||
ldr r1, _08021814 @ =gUnk_080CB590
|
||||
adds r0, r4, #0
|
||||
bl sub_0804AA30
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_08021814: .4byte gUnk_080CB590
|
||||
|
||||
thumb_func_start sub_08021818
|
||||
sub_08021818: @ 0x08021818
|
||||
push {lr}
|
||||
adds r3, r0, #0
|
||||
ldrb r0, [r3, #0xa]
|
||||
cmp r0, #0
|
||||
bne _0802182A
|
||||
adds r0, r3, #0
|
||||
bl sub_0804A7D4
|
||||
b _08021844
|
||||
_0802182A:
|
||||
ldr r2, [r3, #0x50]
|
||||
cmp r2, #0
|
||||
beq _0802183A
|
||||
ldrb r0, [r2, #0xf]
|
||||
subs r0, #1
|
||||
movs r1, #0
|
||||
strb r0, [r2, #0xf]
|
||||
str r1, [r3, #0x50]
|
||||
_0802183A:
|
||||
adds r0, r3, #0
|
||||
movs r1, #0xf0
|
||||
movs r2, #0
|
||||
bl CreateDeathFx
|
||||
_08021844:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08021848
|
||||
sub_08021848: @ 0x08021848
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0806F520
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _0802186C
|
||||
ldr r0, _08021868 @ =gUnk_080CB5C8
|
||||
ldrb r1, [r4, #0xd]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r0
|
||||
ldr r1, [r1]
|
||||
adds r0, r4, #0
|
||||
bl _call_via_r1
|
||||
b _0802187A
|
||||
.align 2, 0
|
||||
_08021868: .4byte gUnk_080CB5C8
|
||||
_0802186C:
|
||||
movs r0, #3
|
||||
strb r0, [r4, #0xc]
|
||||
strh r1, [r4, #0x36]
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
bl InitializeAnimation
|
||||
_0802187A:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0802187C
|
||||
sub_0802187C: @ 0x0802187C
|
||||
movs r1, #2
|
||||
strb r1, [r0, #0xd]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start nullsub_130
|
||||
nullsub_130: @ 0x08021884
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08021888
|
||||
sub_08021888: @ 0x08021888
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0806F3E4
|
||||
cmp r0, #0
|
||||
beq _0802189A
|
||||
adds r0, r4, #0
|
||||
bl sub_08021818
|
||||
_0802189A:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0802189C
|
||||
sub_0802189C: @ 0x0802189C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0804A720
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
strb r0, [r4, #0x1c]
|
||||
adds r0, r4, #0
|
||||
movs r1, #3
|
||||
bl InitializeAnimation
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_080218B4
|
||||
sub_080218B4: @ 0x080218B4
|
||||
push {lr}
|
||||
ldr r2, _080218C8 @ =gUnk_080CB5D4
|
||||
ldrb r1, [r0, #0xb]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_080218C8: .4byte gUnk_080CB5D4
|
||||
|
||||
thumb_func_start sub_080218CC
|
||||
sub_080218CC: @ 0x080218CC
|
||||
push {r4, r5, r6, lr}
|
||||
adds r5, r0, #0
|
||||
ldrb r0, [r5, #0xd]
|
||||
cmp r0, #0
|
||||
bne _08021916
|
||||
movs r2, #1
|
||||
movs r0, #1
|
||||
strb r0, [r5, #0xd]
|
||||
ldrb r1, [r5, #0x18]
|
||||
subs r0, #5
|
||||
ands r0, r1
|
||||
orrs r0, r2
|
||||
strb r0, [r5, #0x18]
|
||||
adds r0, r5, #0
|
||||
movs r1, #1
|
||||
bl sub_08049F84
|
||||
adds r4, r0, #0
|
||||
bl Random
|
||||
movs r1, #0x10
|
||||
eors r4, r1
|
||||
ldr r2, _08021980 @ =gUnk_080CB5DC
|
||||
movs r1, #7
|
||||
ands r1, r0
|
||||
adds r1, r1, r2
|
||||
ldrb r0, [r1]
|
||||
adds r0, r0, r4
|
||||
movs r1, #0x1f
|
||||
ands r0, r1
|
||||
strb r0, [r5, #0x15]
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #1
|
||||
strh r0, [r5, #0x24]
|
||||
movs r0, #0x90
|
||||
lsls r0, r0, #9
|
||||
str r0, [r5, #0x20]
|
||||
_08021916:
|
||||
adds r0, r5, #0
|
||||
bl GetNextFrame
|
||||
adds r2, r5, #0
|
||||
adds r2, #0x5a
|
||||
ldrb r1, [r2]
|
||||
movs r6, #1
|
||||
adds r0, r6, #0
|
||||
ands r0, r1
|
||||
adds r4, r2, #0
|
||||
cmp r0, #0
|
||||
beq _08021948
|
||||
adds r0, r5, #0
|
||||
bl sub_080AEFE0
|
||||
movs r1, #0xe0
|
||||
lsls r1, r1, #5
|
||||
adds r0, r5, #0
|
||||
bl sub_080044EC
|
||||
cmp r0, #0
|
||||
bne _08021948
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x59
|
||||
strb r6, [r0]
|
||||
_08021948:
|
||||
ldrb r1, [r4]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0802197C
|
||||
movs r0, #2
|
||||
strb r0, [r5, #0xc]
|
||||
bl Random
|
||||
movs r1, #0x38
|
||||
ands r0, r1
|
||||
adds r0, #8
|
||||
strb r0, [r5, #0xe]
|
||||
movs r0, #1
|
||||
strb r0, [r5, #0xf]
|
||||
ldrb r1, [r5, #0x10]
|
||||
movs r0, #0x80
|
||||
orrs r0, r1
|
||||
strb r0, [r5, #0x10]
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #1
|
||||
strh r0, [r5, #0x24]
|
||||
adds r0, r5, #0
|
||||
movs r1, #0
|
||||
bl InitializeAnimation
|
||||
_0802197C:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_08021980: .4byte gUnk_080CB5DC
|
||||
|
||||
thumb_func_start sub_08021984
|
||||
sub_08021984: @ 0x08021984
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xd]
|
||||
cmp r0, #0
|
||||
bne _080219C2
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xd]
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x80
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
ldrb r0, [r4, #0x18]
|
||||
movs r1, #3
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
ldr r0, _08021A08 @ =0x0000FF80
|
||||
strh r0, [r4, #0x36]
|
||||
ldrb r2, [r4, #0x19]
|
||||
movs r1, #0x3f
|
||||
adds r0, r1, #0
|
||||
ands r0, r2
|
||||
movs r2, #0x40
|
||||
orrs r0, r2
|
||||
strb r0, [r4, #0x19]
|
||||
ldrb r0, [r4, #0x1b]
|
||||
ands r1, r0
|
||||
orrs r1, r2
|
||||
strb r1, [r4, #0x1b]
|
||||
ldr r0, _08021A0C @ =0x0000012D
|
||||
bl sub_08004488
|
||||
_080219C2:
|
||||
movs r1, #0xc0
|
||||
lsls r1, r1, #5
|
||||
adds r0, r4, #0
|
||||
bl sub_08003FC4
|
||||
cmp r0, #0
|
||||
bne _08021A04
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x10
|
||||
strb r0, [r4, #0xe]
|
||||
movs r2, #1
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xf]
|
||||
ldrb r1, [r4, #0x18]
|
||||
subs r0, #5
|
||||
ands r0, r1
|
||||
orrs r0, r2
|
||||
strb r0, [r4, #0x18]
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #1
|
||||
strh r0, [r4, #0x24]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x86
|
||||
movs r0, #0x3c
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl InitializeAnimation
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_08021A04:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_08021A08: .4byte 0x0000FF80
|
||||
_08021A0C: .4byte 0x0000012D
|
||||
|
||||
thumb_func_start sub_08021A10
|
||||
sub_08021A10: @ 0x08021A10
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl GetNextFrame
|
||||
ldr r1, _08021A60 @ =gPlayerEntity
|
||||
adds r0, r4, #0
|
||||
movs r2, #0x78
|
||||
movs r3, #0x50
|
||||
bl sub_080041A0
|
||||
cmp r0, #0
|
||||
beq _08021A5E
|
||||
adds r0, r4, #0
|
||||
bl sub_08021D00
|
||||
cmp r0, #0
|
||||
bne _08021A5E
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _08021A5E
|
||||
movs r0, #3
|
||||
strb r0, [r4, #0xc]
|
||||
bl Random
|
||||
movs r1, #0x3f
|
||||
ands r0, r1
|
||||
adds r0, #0x1e
|
||||
strb r0, [r4, #0xe]
|
||||
ldrb r1, [r4, #0x15]
|
||||
adds r0, r4, #0
|
||||
bl sub_08021D44
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
bl InitializeAnimation
|
||||
_08021A5E:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_08021A60: .4byte gPlayerEntity
|
||||
|
||||
thumb_func_start sub_08021A64
|
||||
sub_08021A64: @ 0x08021A64
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_08021D00
|
||||
cmp r0, #0
|
||||
bne _08021AD4
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
movs r5, #0xff
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _08021A96
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
bl Random
|
||||
movs r1, #0x1f
|
||||
ands r0, r1
|
||||
adds r0, #0x1e
|
||||
strb r0, [r4, #0xe]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl InitializeAnimation
|
||||
_08021A96:
|
||||
ldrb r0, [r4, #0xf]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xf]
|
||||
ands r0, r5
|
||||
cmp r0, #0
|
||||
bne _08021AC8
|
||||
movs r0, #8
|
||||
strb r0, [r4, #0xf]
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
bl sub_08049F84
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0xff
|
||||
bne _08021AC2
|
||||
movs r0, #7
|
||||
strb r0, [r4, #0xc]
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
bl InitializeAnimation
|
||||
b _08021AD4
|
||||
_08021AC2:
|
||||
adds r0, r4, #0
|
||||
bl sub_08021D44
|
||||
_08021AC8:
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
_08021AD4:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08021AD8
|
||||
sub_08021AD8: @ 0x08021AD8
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl GetNextFrame
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r1, [r0]
|
||||
movs r0, #1
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _08021B3A
|
||||
ldrb r0, [r4, #0xe]
|
||||
cmp r0, #0
|
||||
beq _08021B1E
|
||||
movs r0, #0
|
||||
strb r0, [r4, #0xe]
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
bl sub_08049F84
|
||||
cmp r0, #0xff
|
||||
bne _08021B16
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #8
|
||||
strb r0, [r4, #0xe]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl InitializeAnimation
|
||||
b _08021B60
|
||||
_08021B16:
|
||||
strb r0, [r4, #0x15]
|
||||
movs r0, #0x7c
|
||||
bl sub_08004488
|
||||
_08021B1E:
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEFE0
|
||||
movs r1, #0xc0
|
||||
lsls r1, r1, #5
|
||||
adds r0, r4, #0
|
||||
bl sub_08003FC4
|
||||
cmp r0, #0
|
||||
bne _08021B3A
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x59
|
||||
movs r0, #1
|
||||
strb r0, [r1]
|
||||
_08021B3A:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _08021B60
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x14
|
||||
strb r0, [r4, #0xe]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x86
|
||||
movs r0, #0x3c
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl InitializeAnimation
|
||||
_08021B60:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08021B64
|
||||
sub_08021B64: @ 0x08021B64
|
||||
push {r4, r5, r6, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r0, _08021B88 @ =gPlayerState
|
||||
ldr r1, [r0, #0x30]
|
||||
movs r2, #4
|
||||
ands r1, r2
|
||||
adds r6, r0, #0
|
||||
cmp r1, #0
|
||||
beq _08021B8C
|
||||
movs r1, #0
|
||||
movs r0, #3
|
||||
strb r0, [r4, #0xc]
|
||||
str r1, [r4, #0x34]
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
bl InitializeAnimation
|
||||
b _08021C4E
|
||||
.align 2, 0
|
||||
_08021B88: .4byte gPlayerState
|
||||
_08021B8C:
|
||||
movs r5, #1
|
||||
adds r0, r6, #0
|
||||
adds r0, #0xa8
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0xb
|
||||
beq _08021BBA
|
||||
cmp r0, #0x14
|
||||
beq _08021BBA
|
||||
bl sub_0807953C
|
||||
cmp r0, #0
|
||||
beq _08021BAE
|
||||
ldrb r1, [r4, #0xa]
|
||||
lsls r0, r1, #1
|
||||
adds r0, r0, r1
|
||||
adds r5, r0, #0
|
||||
adds r5, #8
|
||||
_08021BAE:
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r5, r0, r5
|
||||
cmp r5, #0
|
||||
bge _08021BB8
|
||||
movs r5, #0
|
||||
_08021BB8:
|
||||
strb r5, [r4, #0xe]
|
||||
_08021BBA:
|
||||
ldr r0, [r6, #0x30]
|
||||
movs r1, #0x88
|
||||
lsls r1, r1, #1
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _08021BC8
|
||||
movs r5, #0
|
||||
_08021BC8:
|
||||
cmp r5, #0
|
||||
bne _08021C04
|
||||
movs r0, #6
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #9
|
||||
str r0, [r4, #0x20]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x87
|
||||
strb r5, [r0]
|
||||
ldr r2, _08021BEC @ =gPlayerEntity
|
||||
ldrb r1, [r2, #0x15]
|
||||
adds r0, r1, #0
|
||||
cmp r0, #0xff
|
||||
beq _08021BF0
|
||||
movs r0, #0x10
|
||||
b _08021BF6
|
||||
.align 2, 0
|
||||
_08021BEC: .4byte gPlayerEntity
|
||||
_08021BF0:
|
||||
ldrb r0, [r2, #0x14]
|
||||
lsls r0, r0, #2
|
||||
movs r1, #0x10
|
||||
_08021BF6:
|
||||
eors r0, r1
|
||||
strb r0, [r4, #0x15]
|
||||
adds r0, r4, #0
|
||||
movs r1, #5
|
||||
bl InitializeAnimation
|
||||
b _08021C4E
|
||||
_08021C04:
|
||||
ldrb r1, [r6, #0x1a]
|
||||
movs r0, #0x80
|
||||
orrs r0, r1
|
||||
strb r0, [r6, #0x1a]
|
||||
adds r1, r6, #0
|
||||
adds r1, #0x80
|
||||
ldrh r0, [r1]
|
||||
subs r0, #0x50
|
||||
strh r0, [r1]
|
||||
adds r1, #0x2a
|
||||
ldrb r0, [r1]
|
||||
adds r0, #1
|
||||
strb r0, [r1]
|
||||
ldr r0, _08021C50 @ =gPlayerEntity
|
||||
adds r1, r4, #0
|
||||
bl CopyPositionAndSpriteOffset
|
||||
ldr r2, _08021C54 @ =gUnk_080CB5E4
|
||||
ldrb r1, [r4, #0xf]
|
||||
adds r0, r1, #1
|
||||
strb r0, [r4, #0xf]
|
||||
movs r0, #0xe
|
||||
ands r0, r1
|
||||
lsrs r0, r0, #1
|
||||
adds r0, r0, r2
|
||||
ldrb r0, [r0]
|
||||
lsls r0, r0, #0x18
|
||||
asrs r0, r0, #0x18
|
||||
ldrh r1, [r4, #0x2e]
|
||||
adds r0, r0, r1
|
||||
strh r0, [r4, #0x2e]
|
||||
ldrh r0, [r4, #0x36]
|
||||
subs r0, #1
|
||||
strh r0, [r4, #0x36]
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
_08021C4E:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_08021C50: .4byte gPlayerEntity
|
||||
_08021C54: .4byte gUnk_080CB5E4
|
||||
|
||||
thumb_func_start sub_08021C58
|
||||
sub_08021C58: @ 0x08021C58
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
bl GetNextFrame
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r1, [r0]
|
||||
movs r5, #1
|
||||
adds r0, r5, #0
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _08021C8A
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEFE0
|
||||
movs r1, #0xc0
|
||||
lsls r1, r1, #5
|
||||
adds r0, r4, #0
|
||||
bl sub_08003FC4
|
||||
cmp r0, #0
|
||||
bne _08021C8A
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x59
|
||||
strb r5, [r0]
|
||||
_08021C8A:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _08021CCC
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
movs r2, #0x3c
|
||||
strb r2, [r4, #0xe]
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xf]
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x80
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
adds r3, r4, #0
|
||||
adds r3, #0x29
|
||||
ldrb r1, [r3]
|
||||
movs r0, #8
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
movs r1, #4
|
||||
orrs r0, r1
|
||||
strb r0, [r3]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x86
|
||||
strb r2, [r0]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl InitializeAnimation
|
||||
_08021CCC:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08021CD0
|
||||
sub_08021CD0: @ 0x08021CD0
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _08021CE6
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
_08021CE6:
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
bl sub_08049F84
|
||||
cmp r0, #0xff
|
||||
beq _08021CFE
|
||||
movs r0, #3
|
||||
strb r0, [r4, #0xc]
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
bl InitializeAnimation
|
||||
_08021CFE:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_08021D00
|
||||
sub_08021D00: @ 0x08021D00
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x86
|
||||
ldrb r0, [r1]
|
||||
cmp r0, #0
|
||||
beq _08021D16
|
||||
subs r0, #1
|
||||
strb r0, [r1]
|
||||
movs r0, #0
|
||||
b _08021D40
|
||||
_08021D16:
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #0x10
|
||||
bl sub_08049F64
|
||||
cmp r0, #0
|
||||
bne _08021D28
|
||||
movs r0, #0
|
||||
b _08021D40
|
||||
_08021D28:
|
||||
movs r0, #4
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #9
|
||||
str r0, [r4, #0x20]
|
||||
adds r0, r4, #0
|
||||
movs r1, #4
|
||||
bl InitializeAnimation
|
||||
movs r0, #1
|
||||
_08021D40:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08021D44
|
||||
sub_08021D44: @ 0x08021D44
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
adds r1, #4
|
||||
movs r0, #0x18
|
||||
ands r1, r0
|
||||
strb r1, [r2, #0x15]
|
||||
movs r0, #8
|
||||
ands r1, r0
|
||||
cmp r1, #0
|
||||
beq _08021D5E
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #1
|
||||
b _08021D60
|
||||
_08021D5E:
|
||||
movs r0, #0xc0
|
||||
_08021D60:
|
||||
strh r0, [r2, #0x24]
|
||||
pop {pc}
|
||||
+4
-4
@@ -91,7 +91,7 @@ sub_0806D0B0: @ 0x0806D0B0
|
||||
movs r0, #0x30
|
||||
bl LoadGfxGroup
|
||||
bl sub_0806D110
|
||||
ldr r5, _0806D0EC @ =gUnk_02002F00
|
||||
ldr r5, _0806D0EC @ =gMapDataTopSpecial
|
||||
movs r1, #0x80
|
||||
lsls r1, r1, #6
|
||||
adds r0, r5, #0
|
||||
@@ -110,7 +110,7 @@ _0806D0DA:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0806D0E8: .4byte gUnk_0200B650
|
||||
_0806D0EC: .4byte gUnk_02002F00
|
||||
_0806D0EC: .4byte gMapDataTopSpecial
|
||||
_0806D0F0: .4byte gScreen
|
||||
_0806D0F4: .4byte 0x00001D47
|
||||
|
||||
@@ -131,7 +131,7 @@ _0806D10C:
|
||||
thumb_func_start sub_0806D110
|
||||
sub_0806D110: @ 0x0806D110
|
||||
push {r4, r5, lr}
|
||||
ldr r4, _0806D134 @ =gUnk_02002F00
|
||||
ldr r4, _0806D134 @ =gMapDataTopSpecial
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #7
|
||||
adds r5, r4, r0
|
||||
@@ -147,7 +147,7 @@ sub_0806D110: @ 0x0806D110
|
||||
bl sub_0806D138
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0806D134: .4byte gUnk_02002F00
|
||||
_0806D134: .4byte gMapDataTopSpecial
|
||||
|
||||
thumb_func_start sub_0806D138
|
||||
sub_0806D138: @ 0x0806D138
|
||||
|
||||
+1
-1
@@ -98,7 +98,7 @@ sub_080997CC: @ 0x080997CC
|
||||
strb r1, [r4, #0xc]
|
||||
strb r0, [r4, #0xe]
|
||||
ldr r0, _080997F0 @ =0x000001B3
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
adds r0, r4, #0
|
||||
bl sub_080997F4
|
||||
_080997EC:
|
||||
|
||||
@@ -66,7 +66,7 @@ sub_08098F14: @ 0x08098F14
|
||||
bl SetTile
|
||||
movs r0, #0x99
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
adds r0, r5, #0
|
||||
movs r1, #0x1e
|
||||
bl sub_0805E4E0
|
||||
@@ -348,7 +348,7 @@ _08099166:
|
||||
cmp r0, #0
|
||||
bne _08099194
|
||||
ldr r0, _080991A0 @ =0x00000131
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_08099194:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
-259
@@ -1,259 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start BigVortex
|
||||
BigVortex: @ 0x08098CF4
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
ldrb r0, [r2, #0xa]
|
||||
cmp r0, #0
|
||||
bne _08098D14
|
||||
ldr r0, _08098D10 @ =gUnk_0812367C
|
||||
ldrb r1, [r2, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r0
|
||||
ldr r1, [r1]
|
||||
adds r0, r2, #0
|
||||
bl _call_via_r1
|
||||
b _08098D1A
|
||||
.align 2, 0
|
||||
_08098D10: .4byte gUnk_0812367C
|
||||
_08098D14:
|
||||
adds r0, r2, #0
|
||||
bl sub_08098E3C
|
||||
_08098D1A:
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_08098D1C
|
||||
sub_08098D1C: @ 0x08098D1C
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
movs r5, #1
|
||||
strb r5, [r4, #0xc]
|
||||
ldr r0, _08098D40 @ =0x0000FFF0
|
||||
strh r0, [r4, #0x36]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x86
|
||||
ldrh r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _08098D44
|
||||
bl CheckFlags
|
||||
cmp r0, #0
|
||||
bne _08098D44
|
||||
strb r5, [r4, #0xc]
|
||||
b _08098D5A
|
||||
.align 2, 0
|
||||
_08098D40: .4byte 0x0000FFF0
|
||||
_08098D44:
|
||||
movs r0, #3
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x18]
|
||||
subs r0, #7
|
||||
ands r0, r1
|
||||
movs r1, #1
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
adds r0, r4, #0
|
||||
bl sub_08098E88
|
||||
_08098D5A:
|
||||
adds r0, r4, #0
|
||||
movs r1, #6
|
||||
bl sub_0805E3A0
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl InitAnimationForceUpdate
|
||||
pop {r4, r5, pc}
|
||||
|
||||
thumb_func_start sub_08098D6C
|
||||
sub_08098D6C: @ 0x08098D6C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, #0x86
|
||||
ldrh r0, [r0]
|
||||
bl CheckFlags
|
||||
cmp r0, #0
|
||||
beq _08098D9A
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x2d
|
||||
strb r0, [r4, #0xe]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x43
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _08098D9A
|
||||
ldrh r0, [r1, #0x32]
|
||||
adds r0, #8
|
||||
strh r0, [r1, #0x32]
|
||||
_08098D9A:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_08098D9C
|
||||
sub_08098D9C: @ 0x08098D9C
|
||||
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 _08098DC2
|
||||
movs r0, #3
|
||||
strb r0, [r2, #0xc]
|
||||
ldrb r1, [r2, #0x18]
|
||||
subs r0, #7
|
||||
ands r0, r1
|
||||
movs r1, #1
|
||||
orrs r0, r1
|
||||
strb r0, [r2, #0x18]
|
||||
adds r0, r2, #0
|
||||
bl sub_08098E88
|
||||
_08098DC2:
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_08098DC4
|
||||
sub_08098DC4: @ 0x08098DC4
|
||||
push {r4, r5, r6, lr}
|
||||
adds r5, r0, #0
|
||||
ldr r6, _08098E2C @ =gPlayerEntity
|
||||
adds r1, r6, #0
|
||||
movs r2, #8
|
||||
movs r3, #8
|
||||
bl sub_0800419C
|
||||
cmp r0, #0
|
||||
beq _08098E24
|
||||
adds r0, r5, #0
|
||||
adds r1, r6, #0
|
||||
bl CopyPosition
|
||||
adds r0, r5, #0
|
||||
bl sub_08004542
|
||||
adds r0, r6, #0
|
||||
bl sub_08004542
|
||||
adds r0, r6, #0
|
||||
adds r0, #0x38
|
||||
movs r4, #1
|
||||
strb r4, [r0]
|
||||
adds r0, r5, #0
|
||||
adds r1, r6, #0
|
||||
bl ResolveEntityOnTop
|
||||
ldr r1, _08098E30 @ =gPlayerState
|
||||
movs r0, #0x1f
|
||||
strb r0, [r1, #0xc]
|
||||
adds r0, r1, #0
|
||||
adds r0, #0x38
|
||||
strb r4, [r0]
|
||||
ldrb r0, [r5, #0xb]
|
||||
adds r1, #0x39
|
||||
strb r0, [r1]
|
||||
movs r1, #4
|
||||
strb r1, [r5, #0xc]
|
||||
lsls r0, r0, #0x18
|
||||
lsrs r0, r0, #0x18
|
||||
cmp r0, #1
|
||||
bne _08098E20
|
||||
movs r0, #0x23
|
||||
bl SetGlobalFlag
|
||||
_08098E20:
|
||||
bl sub_08077B20
|
||||
_08098E24:
|
||||
adds r0, r5, #0
|
||||
bl UpdateAnimationSingleFrame
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_08098E2C: .4byte gPlayerEntity
|
||||
_08098E30: .4byte gPlayerState
|
||||
|
||||
thumb_func_start sub_08098E34
|
||||
sub_08098E34: @ 0x08098E34
|
||||
push {lr}
|
||||
bl UpdateAnimationSingleFrame
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_08098E3C
|
||||
sub_08098E3C: @ 0x08098E3C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xc]
|
||||
cmp r0, #0
|
||||
bne _08098E5E
|
||||
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 r1, [r4, #0xa]
|
||||
adds r0, r4, #0
|
||||
bl InitAnimationForceUpdate
|
||||
_08098E5E:
|
||||
ldrb r1, [r4, #0xa]
|
||||
movs r0, #2
|
||||
ands r0, r1
|
||||
lsls r0, r0, #0x18
|
||||
lsrs r0, r0, #0x18
|
||||
lsls r0, r0, #1
|
||||
ldr r1, _08098E84 @ =gUnk_08123690
|
||||
adds r0, r0, r1
|
||||
ldrh r1, [r0]
|
||||
ldrh r2, [r0, #2]
|
||||
adds r0, r4, #0
|
||||
movs r3, #0
|
||||
bl sub_0805EC9C
|
||||
adds r0, r4, #0
|
||||
bl UpdateAnimationSingleFrame
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_08098E84: .4byte gUnk_08123690
|
||||
|
||||
thumb_func_start sub_08098E88
|
||||
sub_08098E88: @ 0x08098E88
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
movs r0, #0x82
|
||||
movs r1, #1
|
||||
movs r2, #0
|
||||
bl CreateObject
|
||||
adds r4, r0, #0
|
||||
cmp r4, #0
|
||||
beq _08098EB0
|
||||
ldr r3, _08098ED8 @ =0xFFFF0000
|
||||
adds r0, r5, #0
|
||||
adds r1, r4, #0
|
||||
movs r2, #0
|
||||
bl PositionRelative
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x63
|
||||
movs r0, #8
|
||||
strb r0, [r1]
|
||||
_08098EB0:
|
||||
movs r0, #0x82
|
||||
movs r1, #2
|
||||
movs r2, #0
|
||||
bl CreateObject
|
||||
adds r4, r0, #0
|
||||
cmp r4, #0
|
||||
beq _08098ED4
|
||||
ldr r3, _08098EDC @ =0xFFFE0000
|
||||
adds r0, r5, #0
|
||||
adds r1, r4, #0
|
||||
movs r2, #0
|
||||
bl PositionRelative
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x63
|
||||
movs r0, #0x10
|
||||
strb r0, [r1]
|
||||
_08098ED4:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_08098ED8: .4byte 0xFFFF0000
|
||||
_08098EDC: .4byte 0xFFFE0000
|
||||
-363
@@ -6,369 +6,6 @@
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start Bird
|
||||
Bird: @ 0x0809CF24
|
||||
push {lr}
|
||||
ldr r2, _0809CF38 @ =gUnk_08123EC0
|
||||
ldrb r1, [r0, #0xa]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0809CF38: .4byte gUnk_08123EC0
|
||||
|
||||
thumb_func_start sub_0809CF3C
|
||||
sub_0809CF3C: @ 0x0809CF3C
|
||||
push {lr}
|
||||
ldr r2, _0809CF50 @ =gUnk_08123EEC
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0809CF50: .4byte gUnk_08123EEC
|
||||
|
||||
thumb_func_start sub_0809CF54
|
||||
sub_0809CF54: @ 0x0809CF54
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
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]
|
||||
movs r0, #0x31
|
||||
strb r0, [r4, #0xe]
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xf]
|
||||
ldr r0, _0809CFDC @ =0xFFFE8000
|
||||
str r0, [r4, #0x20]
|
||||
ldr r0, _0809CFE0 @ =0xFFC74000
|
||||
str r0, [r4, #0x34]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x68
|
||||
movs r0, #0xf8
|
||||
lsls r0, r0, #8
|
||||
strh r0, [r1]
|
||||
movs r0, #0xa0
|
||||
lsls r0, r0, #2
|
||||
strh r0, [r4, #0x24]
|
||||
movs r0, #8
|
||||
strb r0, [r4, #0x15]
|
||||
subs r1, #0x30
|
||||
movs r0, #2
|
||||
strb r0, [r1]
|
||||
ldr r0, _0809CFE4 @ =gRoomControls
|
||||
ldrh r0, [r0, #0xa]
|
||||
strh r0, [r4, #0x2e]
|
||||
ldr r0, _0809CFE8 @ =0x00000123
|
||||
bl PlaySFX
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl InitAnimationForceUpdate
|
||||
movs r0, #0x95
|
||||
movs r1, #1
|
||||
movs r2, #0
|
||||
bl CreateObject
|
||||
adds r5, r0, #0
|
||||
cmp r5, #0
|
||||
beq _0809CFD8
|
||||
str r4, [r5, #0x50]
|
||||
movs r3, #0x80
|
||||
lsls r3, r3, #0xc
|
||||
adds r0, r4, #0
|
||||
adds r1, r5, #0
|
||||
movs r2, #0
|
||||
bl PositionRelative
|
||||
adds r0, r4, #0
|
||||
adds r1, r5, #0
|
||||
bl ResolveEntityOnTop
|
||||
_0809CFD8:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0809CFDC: .4byte 0xFFFE8000
|
||||
_0809CFE0: .4byte 0xFFC74000
|
||||
_0809CFE4: .4byte gRoomControls
|
||||
_0809CFE8: .4byte 0x00000123
|
||||
|
||||
thumb_func_start sub_0809CFEC
|
||||
sub_0809CFEC: @ 0x0809CFEC
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0806F69C
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x68
|
||||
movs r2, #0
|
||||
ldrsh r1, [r0, r2]
|
||||
adds r0, r4, #0
|
||||
bl sub_08003FC4
|
||||
ldrb r0, [r4, #0xe]
|
||||
cmp r0, #0
|
||||
beq _0809D018
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
lsrs r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _0809D026
|
||||
strb r0, [r4, #0xf]
|
||||
b _0809D026
|
||||
_0809D018:
|
||||
adds r0, r4, #0
|
||||
bl sub_080040A8
|
||||
cmp r0, #0
|
||||
bne _0809D026
|
||||
bl DeleteThisEntity
|
||||
_0809D026:
|
||||
adds r0, r4, #0
|
||||
bl UpdateAnimationSingleFrame
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0809D030
|
||||
sub_0809D030: @ 0x0809D030
|
||||
push {lr}
|
||||
ldr r2, _0809D044 @ =gUnk_08123EF4
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0809D044: .4byte gUnk_08123EF4
|
||||
|
||||
thumb_func_start sub_0809D048
|
||||
sub_0809D048: @ 0x0809D048
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xc]
|
||||
adds r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x38
|
||||
movs r0, #1
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x17
|
||||
bl InitAnimationForceUpdate
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0809D06C
|
||||
sub_0809D06C: @ 0x0809D06C
|
||||
push {lr}
|
||||
ldr r2, _0809D080 @ =gUnk_08123EFC
|
||||
ldrb r1, [r0, #0xd]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0809D080: .4byte gUnk_08123EFC
|
||||
|
||||
thumb_func_start sub_0809D084
|
||||
sub_0809D084: @ 0x0809D084
|
||||
push {lr}
|
||||
adds r1, r0, #0
|
||||
ldr r0, [r1, #0x50]
|
||||
cmp r0, #0
|
||||
beq _0809D0A8
|
||||
ldrb r2, [r0, #0xf]
|
||||
cmp r2, #0
|
||||
beq _0809D0A0
|
||||
movs r3, #0x80
|
||||
lsls r3, r3, #0xc
|
||||
movs r2, #0
|
||||
bl PositionRelative
|
||||
b _0809D0A8
|
||||
_0809D0A0:
|
||||
ldrb r0, [r1, #0xd]
|
||||
adds r0, #1
|
||||
strb r0, [r1, #0xd]
|
||||
str r2, [r1, #0x20]
|
||||
_0809D0A8:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0809D0AC
|
||||
sub_0809D0AC: @ 0x0809D0AC
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #0xc0
|
||||
lsls r1, r1, #5
|
||||
bl sub_080044EC
|
||||
cmp r0, #1
|
||||
bhi _0809D0F0
|
||||
movs r2, #0
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xa]
|
||||
movs r1, #1
|
||||
strb r1, [r4, #0xc]
|
||||
str r2, [r4, #0x34]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x38
|
||||
strb r1, [r0]
|
||||
movs r0, #0x45
|
||||
bl SetLocalFlag
|
||||
movs r0, #0x72
|
||||
bl PlaySFX
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x11
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _0809D0F0
|
||||
adds r0, r4, #0
|
||||
bl sub_0806FAD8
|
||||
_0809D0F0:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0809D0F4
|
||||
sub_0809D0F4: @ 0x0809D0F4
|
||||
push {lr}
|
||||
ldr r2, _0809D108 @ =gUnk_08123F04
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0809D108: .4byte gUnk_08123F04
|
||||
|
||||
thumb_func_start sub_0809D10C
|
||||
sub_0809D10C: @ 0x0809D10C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xc]
|
||||
adds r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x38
|
||||
movs r0, #1
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x17
|
||||
bl InitAnimationForceUpdate
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0809D130
|
||||
sub_0809D130: @ 0x0809D130
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
ldr r0, _0809D148 @ =gPlayerState
|
||||
ldr r0, [r0, #0x30]
|
||||
movs r1, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0809D14C
|
||||
adds r0, r2, #0
|
||||
bl sub_0800445C
|
||||
b _0809D170
|
||||
.align 2, 0
|
||||
_0809D148: .4byte gPlayerState
|
||||
_0809D14C:
|
||||
adds r0, r2, #0
|
||||
bl sub_08017850
|
||||
cmp r0, #0
|
||||
beq _0809D170
|
||||
movs r0, #0x17
|
||||
movs r1, #0
|
||||
movs r2, #0
|
||||
bl CreateItemEntity
|
||||
ldr r0, _0809D174 @ =gUnk_02002A40
|
||||
ldr r1, [r0, #0x40]
|
||||
movs r2, #0x80
|
||||
lsls r2, r2, #0x15
|
||||
orrs r1, r2
|
||||
str r1, [r0, #0x40]
|
||||
bl DeleteThisEntity
|
||||
_0809D170:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0809D174: .4byte gUnk_02002A40
|
||||
|
||||
thumb_func_start sub_0809D178
|
||||
sub_0809D178: @ 0x0809D178
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xc]
|
||||
cmp r0, #0
|
||||
bne _0809D19C
|
||||
adds r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x38
|
||||
movs r0, #2
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x5a
|
||||
movs r0, #0x80
|
||||
strb r0, [r1]
|
||||
_0809D19C:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0809D1E8
|
||||
bl Random
|
||||
movs r1, #3
|
||||
ands r1, r0
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
bl Random
|
||||
movs r1, #0xf
|
||||
ands r0, r1
|
||||
adds r0, #0x10
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x59
|
||||
strb r0, [r1]
|
||||
ldrb r1, [r4, #0x18]
|
||||
movs r0, #0x41
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
bl Random
|
||||
movs r1, #1
|
||||
ands r1, r0
|
||||
cmp r1, #0
|
||||
beq _0809D1EE
|
||||
ldrb r0, [r4, #0x18]
|
||||
movs r1, #0x40
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
b _0809D1EE
|
||||
_0809D1E8:
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
_0809D1EE:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0809D1F0
|
||||
sub_0809D1F0: @ 0x0809D1F0
|
||||
push {r4, r5, r6, r7, lr}
|
||||
|
||||
+1
-1
@@ -233,7 +233,7 @@ _08082FF0:
|
||||
bl sub_080832D8
|
||||
_08083088:
|
||||
ldr r0, _08083090 @ =0x0000010F
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_0808308E:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
|
||||
-784
@@ -1,784 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start Bobomb
|
||||
Bobomb: @ 0x0802C660
|
||||
push {lr}
|
||||
ldr r1, _0802C66C @ =gUnk_080CD5D4
|
||||
bl EnemyFunctionHandler
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0802C66C: .4byte gUnk_080CD5D4
|
||||
|
||||
thumb_func_start sub_0802C670
|
||||
sub_0802C670: @ 0x0802C670
|
||||
push {lr}
|
||||
ldr r2, _0802C684 @ =gUnk_080CD5EC
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0802C684: .4byte gUnk_080CD5EC
|
||||
|
||||
thumb_func_start sub_0802C688
|
||||
sub_0802C688: @ 0x0802C688
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, #0x41
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _0802C69A
|
||||
b _0802C79E
|
||||
_0802C69A:
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
cmp r0, #0x16
|
||||
bhi _0802C740
|
||||
lsls r0, r0, #2
|
||||
ldr r1, _0802C6AC @ =_0802C6B0
|
||||
adds r0, r0, r1
|
||||
ldr r0, [r0]
|
||||
mov pc, r0
|
||||
.align 2, 0
|
||||
_0802C6AC: .4byte _0802C6B0
|
||||
_0802C6B0: @ jump table
|
||||
.4byte _0802C70C @ case 0
|
||||
.4byte _0802C70C @ case 1
|
||||
.4byte _0802C740 @ case 2
|
||||
.4byte _0802C740 @ case 3
|
||||
.4byte _0802C740 @ case 4
|
||||
.4byte _0802C740 @ case 5
|
||||
.4byte _0802C740 @ case 6
|
||||
.4byte _0802C740 @ case 7
|
||||
.4byte _0802C740 @ case 8
|
||||
.4byte _0802C740 @ case 9
|
||||
.4byte _0802C740 @ case 10
|
||||
.4byte _0802C740 @ case 11
|
||||
.4byte _0802C740 @ case 12
|
||||
.4byte _0802C740 @ case 13
|
||||
.4byte _0802C72C @ case 14
|
||||
.4byte _0802C740 @ case 15
|
||||
.4byte _0802C740 @ case 16
|
||||
.4byte _0802C740 @ case 17
|
||||
.4byte _0802C740 @ case 18
|
||||
.4byte _0802C740 @ case 19
|
||||
.4byte _0802C72C @ case 20
|
||||
.4byte _0802C72C @ case 21
|
||||
.4byte _0802C72C @ case 22
|
||||
_0802C70C:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x82
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _0802C7A6
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x42
|
||||
movs r0, #0
|
||||
strb r0, [r1]
|
||||
ldr r0, _0802C728 @ =gPlayerEntity
|
||||
adds r0, #0x42
|
||||
movs r1, #4
|
||||
strb r1, [r0]
|
||||
b _0802C7A6
|
||||
.align 2, 0
|
||||
_0802C728: .4byte gPlayerEntity
|
||||
_0802C72C:
|
||||
movs r1, #0
|
||||
movs r0, #3
|
||||
strb r0, [r4, #0xc]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x42
|
||||
strb r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl sub_0802CBC4
|
||||
b _0802C7A6
|
||||
_0802C740:
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x82
|
||||
ldrb r0, [r2]
|
||||
adds r0, #1
|
||||
strb r0, [r2]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x80
|
||||
movs r0, #0x1c
|
||||
strb r0, [r1]
|
||||
ldrb r0, [r2]
|
||||
cmp r0, #1
|
||||
beq _0802C75E
|
||||
cmp r0, #2
|
||||
beq _0802C770
|
||||
b _0802C79E
|
||||
_0802C75E:
|
||||
adds r0, r4, #0
|
||||
bl sub_0802CB68
|
||||
ldr r0, _0802C76C @ =0x0000014D
|
||||
bl sub_08004488
|
||||
b _0802C79E
|
||||
.align 2, 0
|
||||
_0802C76C: .4byte 0x0000014D
|
||||
_0802C770:
|
||||
movs r0, #3
|
||||
strb r0, [r4, #0xc]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x3f
|
||||
movs r0, #0x6e
|
||||
strb r0, [r1]
|
||||
movs r1, #1
|
||||
strb r1, [r4, #0xf]
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #9
|
||||
str r0, [r4, #0x20]
|
||||
movs r0, #0
|
||||
strh r0, [r4, #0x24]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x81
|
||||
strb r1, [r0]
|
||||
ldrb r1, [r4, #0x15]
|
||||
lsrs r1, r1, #4
|
||||
movs r0, #6
|
||||
orrs r1, r0
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
_0802C79E:
|
||||
ldr r1, _0802C7A8 @ =gUnk_080CD5D4
|
||||
adds r0, r4, #0
|
||||
bl sub_0804AA30
|
||||
_0802C7A6:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0802C7A8: .4byte gUnk_080CD5D4
|
||||
|
||||
thumb_func_start sub_0802C7AC
|
||||
sub_0802C7AC: @ 0x0802C7AC
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xd]
|
||||
cmp r0, #2
|
||||
bhi _0802C7F6
|
||||
adds r0, r4, #0
|
||||
bl sub_0806F520
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
bne _0802C7F6
|
||||
strb r1, [r4, #0xd]
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xf]
|
||||
strh r1, [r4, #0x36]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x82
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #2
|
||||
beq _0802C7E2
|
||||
movs r1, #0x80
|
||||
cmp r0, #0
|
||||
beq _0802C7E0
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #2
|
||||
adds r1, r0, #0
|
||||
_0802C7E0:
|
||||
strh r1, [r4, #0x24]
|
||||
_0802C7E2:
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #9
|
||||
str r0, [r4, #0x20]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x83
|
||||
movs r1, #0
|
||||
strb r1, [r0]
|
||||
subs r0, #2
|
||||
strb r1, [r0]
|
||||
b _0802C816
|
||||
_0802C7F6:
|
||||
ldr r0, _0802C818 @ =0x0000FFFF
|
||||
strh r0, [r4, #0x36]
|
||||
ldr r1, _0802C81C @ =gUnk_080CD600
|
||||
ldrb r0, [r4, #0xd]
|
||||
lsls r0, r0, #2
|
||||
adds r0, r0, r1
|
||||
ldr r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl _call_via_r1
|
||||
ldrb r0, [r4, #0xe]
|
||||
cmp r0, #0
|
||||
beq _0802C816
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
_0802C816:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0802C818: .4byte 0x0000FFFF
|
||||
_0802C81C: .4byte gUnk_080CD600
|
||||
|
||||
thumb_func_start sub_0802C820
|
||||
sub_0802C820: @ 0x0802C820
|
||||
movs r1, #1
|
||||
strb r1, [r0, #0xd]
|
||||
movs r1, #0x3c
|
||||
strb r1, [r0, #0x1d]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802C82C
|
||||
sub_0802C82C: @ 0x0802C82C
|
||||
push {lr}
|
||||
bl sub_0806F4E8
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0802C834
|
||||
sub_0802C834: @ 0x0802C834
|
||||
push {lr}
|
||||
bl sub_0806F3E4
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0802C83C
|
||||
sub_0802C83C: @ 0x0802C83C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x82
|
||||
ldrb r0, [r1]
|
||||
cmp r0, #0
|
||||
beq _0802C88C
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _0802C884
|
||||
movs r0, #3
|
||||
strb r0, [r4, #0xc]
|
||||
ldr r0, _0802C86C @ =gPlayerEntity
|
||||
ldrb r0, [r0, #0x14]
|
||||
movs r1, #6
|
||||
ands r1, r0
|
||||
cmp r1, #2
|
||||
beq _0802C870
|
||||
cmp r1, #6
|
||||
beq _0802C876
|
||||
b _0802C87C
|
||||
.align 2, 0
|
||||
_0802C86C: .4byte gPlayerEntity
|
||||
_0802C870:
|
||||
ldrh r0, [r4, #0x2e]
|
||||
subs r0, #6
|
||||
b _0802C87A
|
||||
_0802C876:
|
||||
ldrh r0, [r4, #0x2e]
|
||||
adds r0, #6
|
||||
_0802C87A:
|
||||
strh r0, [r4, #0x2e]
|
||||
_0802C87C:
|
||||
adds r0, r4, #0
|
||||
bl sub_0802CBC4
|
||||
b _0802C8B2
|
||||
_0802C884:
|
||||
adds r0, r4, #0
|
||||
bl sub_0802CC18
|
||||
b _0802C8A2
|
||||
_0802C88C:
|
||||
movs r0, #2
|
||||
strb r0, [r1]
|
||||
movs r0, #0x78
|
||||
strb r0, [r4, #0xe]
|
||||
ldrb r1, [r4, #0x15]
|
||||
lsrs r1, r1, #4
|
||||
movs r0, #6
|
||||
orrs r1, r0
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
_0802C8A2:
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x3f
|
||||
movs r0, #0x6e
|
||||
strb r0, [r1]
|
||||
_0802C8B2:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start nullsub_149
|
||||
nullsub_149: @ 0x0802C8B4
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802C8B8
|
||||
sub_0802C8B8: @ 0x0802C8B8
|
||||
push {lr}
|
||||
movs r1, #3
|
||||
strb r1, [r0, #0xc]
|
||||
bl sub_0802CBC4
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0802C8C4
|
||||
sub_0802C8C4: @ 0x0802C8C4
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0804A7D4
|
||||
ldrb r1, [r4, #0x18]
|
||||
movs r0, #4
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0802C8D8
|
||||
sub_0802C8D8: @ 0x0802C8D8
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
movs r4, #0
|
||||
movs r0, #1
|
||||
strb r0, [r5, #0xc]
|
||||
movs r0, #0x3c
|
||||
strb r0, [r5, #0xe]
|
||||
strb r4, [r5, #0xf]
|
||||
bl Random
|
||||
movs r1, #0x18
|
||||
ands r0, r1
|
||||
movs r1, #4
|
||||
orrs r0, r1
|
||||
strb r0, [r5, #0x15]
|
||||
strb r4, [r5, #0x16]
|
||||
movs r0, #0x12
|
||||
strb r0, [r5, #0x1c]
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x82
|
||||
strb r4, [r0]
|
||||
adds r0, #1
|
||||
strb r4, [r0]
|
||||
subs r0, #3
|
||||
strb r4, [r0]
|
||||
adds r0, #1
|
||||
strb r4, [r0]
|
||||
ldrb r1, [r5, #0x15]
|
||||
lsrs r1, r1, #4
|
||||
adds r0, r5, #0
|
||||
bl InitializeAnimation
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802C91C
|
||||
sub_0802C91C: @ 0x0802C91C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl GetNextFrame
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x82
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _0802C97A
|
||||
ldrh r0, [r4, #0x2a]
|
||||
cmp r0, #0
|
||||
beq _0802C950
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
bl sub_0800417E
|
||||
ldrb r1, [r4, #0x15]
|
||||
lsrs r1, r1, #4
|
||||
movs r0, #2
|
||||
orrs r1, r0
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
_0802C950:
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r1, r0, #1
|
||||
strb r1, [r4, #0xe]
|
||||
lsls r0, r1, #0x18
|
||||
cmp r0, #0
|
||||
bne _0802C964
|
||||
adds r0, r4, #0
|
||||
bl sub_0802CBC4
|
||||
b _0802C9B4
|
||||
_0802C964:
|
||||
movs r0, #0xf
|
||||
ands r1, r0
|
||||
cmp r1, #8
|
||||
bne _0802C972
|
||||
adds r0, r4, #0
|
||||
bl sub_080A29FC
|
||||
_0802C972:
|
||||
adds r0, r4, #0
|
||||
bl sub_0802CC18
|
||||
b _0802C9B4
|
||||
_0802C97A:
|
||||
ldrh r0, [r4, #0x2a]
|
||||
cmp r0, #0
|
||||
beq _0802C992
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
bl sub_0800417E
|
||||
ldrb r1, [r4, #0x15]
|
||||
lsrs r1, r1, #4
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
_0802C992:
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _0802C9B4
|
||||
movs r0, #0x3c
|
||||
strb r0, [r4, #0xe]
|
||||
ldrb r1, [r4, #0x15]
|
||||
adds r1, #8
|
||||
movs r0, #0x1c
|
||||
ands r1, r0
|
||||
strb r1, [r4, #0x15]
|
||||
lsrs r1, r1, #4
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
_0802C9B4:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802C9B8
|
||||
sub_0802C9B8: @ 0x0802C9B8
|
||||
push {lr}
|
||||
ldr r2, _0802C9CC @ =gUnk_080CD618
|
||||
ldrb r1, [r0, #0xd]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0802C9CC: .4byte gUnk_080CD618
|
||||
|
||||
thumb_func_start sub_0802C9D0
|
||||
sub_0802C9D0: @ 0x0802C9D0
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r2, #1
|
||||
strb r2, [r4, #0xd]
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
adds r3, r4, #0
|
||||
adds r3, #0x29
|
||||
ldrb r1, [r3]
|
||||
movs r0, #0x39
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
strb r0, [r3]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x83
|
||||
strb r2, [r0]
|
||||
adds r0, r4, #0
|
||||
bl sub_0802CC18
|
||||
ldrb r1, [r4, #0x15]
|
||||
lsrs r1, r1, #4
|
||||
movs r0, #6
|
||||
orrs r1, r0
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0802CA10
|
||||
sub_0802CA10: @ 0x0802CA10
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r0, _0802CA30 @ =gPlayerState
|
||||
ldrb r0, [r0, #5]
|
||||
cmp r0, #5
|
||||
beq _0802CA42
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _0802CA34
|
||||
adds r0, r4, #0
|
||||
bl sub_0802CBC4
|
||||
b _0802CA66
|
||||
.align 2, 0
|
||||
_0802CA30: .4byte gPlayerState
|
||||
_0802CA34:
|
||||
adds r0, r4, #0
|
||||
bl sub_0802CC18
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
b _0802CA66
|
||||
_0802CA42:
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x83
|
||||
movs r0, #2
|
||||
strb r0, [r1]
|
||||
ldr r0, _0802CA68 @ =gPlayerEntity
|
||||
ldrb r0, [r0, #0x14]
|
||||
lsls r0, r0, #2
|
||||
movs r1, #4
|
||||
orrs r0, r1
|
||||
movs r1, #0x1c
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x15]
|
||||
adds r0, r4, #0
|
||||
bl sub_0802CC18
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
_0802CA66:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0802CA68: .4byte gPlayerEntity
|
||||
|
||||
thumb_func_start sub_0802CA6C
|
||||
sub_0802CA6C: @ 0x0802CA6C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _0802CA84
|
||||
adds r0, r4, #0
|
||||
bl sub_0802CBC4
|
||||
b _0802CA90
|
||||
_0802CA84:
|
||||
adds r0, r4, #0
|
||||
bl sub_0802CC18
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
_0802CA90:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802CA94
|
||||
sub_0802CA94: @ 0x0802CA94
|
||||
push {lr}
|
||||
adds r3, r0, #0
|
||||
movs r2, #0
|
||||
movs r0, #3
|
||||
strb r0, [r3, #0xc]
|
||||
ldrb r1, [r3, #0x10]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
strb r0, [r3, #0x10]
|
||||
movs r0, #1
|
||||
strb r0, [r3, #0xf]
|
||||
movs r0, #0x29
|
||||
adds r0, r0, r3
|
||||
mov ip, r0
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x39
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
movs r1, #8
|
||||
orrs r0, r1
|
||||
mov r1, ip
|
||||
strb r0, [r1]
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #9
|
||||
str r0, [r3, #0x20]
|
||||
movs r0, #0
|
||||
strh r2, [r3, #0x24]
|
||||
adds r1, r3, #0
|
||||
adds r1, #0x83
|
||||
strb r0, [r1]
|
||||
subs r1, #2
|
||||
strb r0, [r1]
|
||||
ldr r0, _0802CAF4 @ =gPlayerEntity
|
||||
ldrb r1, [r0, #0x14]
|
||||
lsls r1, r1, #2
|
||||
movs r0, #4
|
||||
orrs r1, r0
|
||||
movs r0, #0x1c
|
||||
ands r1, r0
|
||||
strb r1, [r3, #0x15]
|
||||
lsrs r1, r1, #4
|
||||
movs r0, #6
|
||||
orrs r1, r0
|
||||
adds r0, r3, #0
|
||||
bl InitializeAnimation
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0802CAF4: .4byte gPlayerEntity
|
||||
|
||||
thumb_func_start sub_0802CAF8
|
||||
sub_0802CAF8: @ 0x0802CAF8
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _0802CB10
|
||||
adds r0, r4, #0
|
||||
bl sub_0802CBC4
|
||||
b _0802CB62
|
||||
_0802CB10:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x81
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _0802CB30
|
||||
movs r1, #0xa0
|
||||
lsls r1, r1, #6
|
||||
adds r0, r4, #0
|
||||
bl sub_080044EC
|
||||
cmp r0, #1
|
||||
bne _0802CB30
|
||||
movs r0, #0x82
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
_0802CB30:
|
||||
adds r0, r4, #0
|
||||
bl sub_0802CC18
|
||||
adds r0, r4, #0
|
||||
bl sub_08078930
|
||||
ldrb r0, [r4, #0xf]
|
||||
cmp r0, #0
|
||||
beq _0802CB5C
|
||||
movs r1, #0x36
|
||||
ldrsh r0, [r4, r1]
|
||||
cmp r0, #0
|
||||
bne _0802CB5C
|
||||
strb r0, [r4, #0xf]
|
||||
ldrb r0, [r4, #0x10]
|
||||
movs r1, #0x80
|
||||
orrs r1, r0
|
||||
strb r1, [r4, #0x10]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x3f
|
||||
movs r0, #0x6e
|
||||
strb r0, [r1]
|
||||
_0802CB5C:
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
_0802CB62:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start nullsub_150
|
||||
nullsub_150: @ 0x0802CB64
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802CB68
|
||||
sub_0802CB68: @ 0x0802CB68
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
movs r4, #0
|
||||
movs r1, #0
|
||||
movs r0, #1
|
||||
strb r0, [r5, #0xc]
|
||||
strb r1, [r5, #0xd]
|
||||
bl Random
|
||||
adds r2, r0, #0
|
||||
movs r0, #0x18
|
||||
ands r2, r0
|
||||
movs r0, #4
|
||||
orrs r2, r0
|
||||
orrs r2, r4
|
||||
strb r2, [r5, #0x15]
|
||||
ldrb r0, [r5, #0x10]
|
||||
movs r1, #0x80
|
||||
orrs r0, r1
|
||||
strb r0, [r5, #0x10]
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x82
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _0802CBB2
|
||||
movs r0, #0xc8
|
||||
strb r0, [r5, #0xe]
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #2
|
||||
strh r0, [r5, #0x24]
|
||||
lsrs r1, r2, #4
|
||||
movs r0, #2
|
||||
orrs r1, r0
|
||||
adds r0, r5, #0
|
||||
bl InitializeAnimation
|
||||
b _0802CBC2
|
||||
_0802CBB2:
|
||||
movs r0, #0x3c
|
||||
strb r0, [r5, #0xe]
|
||||
movs r0, #0x80
|
||||
strh r0, [r5, #0x24]
|
||||
lsrs r1, r2, #4
|
||||
adds r0, r5, #0
|
||||
bl InitializeAnimation
|
||||
_0802CBC2:
|
||||
pop {r4, r5, pc}
|
||||
|
||||
thumb_func_start sub_0802CBC4
|
||||
sub_0802CBC4: @ 0x0802CBC4
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r2, #0
|
||||
movs r0, #4
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x18]
|
||||
subs r0, #8
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x45
|
||||
strb r2, [r0]
|
||||
adds r0, #0x3e
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _0802CBF0
|
||||
bl sub_08079184
|
||||
_0802CBF0:
|
||||
adds r0, r4, #0
|
||||
bl sub_08078954
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x20
|
||||
movs r2, #0
|
||||
movs r3, #0
|
||||
bl CreateObjectWithParent
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0
|
||||
beq _0802CC14
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x38
|
||||
ldrb r1, [r0]
|
||||
adds r0, r2, #0
|
||||
adds r0, #0x38
|
||||
strb r1, [r0]
|
||||
_0802CC14:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802CC18
|
||||
sub_0802CC18: @ 0x0802CC18
|
||||
push {lr}
|
||||
adds r1, r0, #0
|
||||
adds r1, #0x80
|
||||
ldrb r0, [r1]
|
||||
subs r0, #1
|
||||
strb r0, [r1]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _0802CC34
|
||||
movs r0, #0x1c
|
||||
strb r0, [r1]
|
||||
ldr r0, _0802CC38 @ =0x0000014D
|
||||
bl sub_08004488
|
||||
_0802CC34:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0802CC38: .4byte 0x0000014D
|
||||
+2
-2
@@ -76,7 +76,7 @@ _0808B2F4:
|
||||
ldrb r2, [r2]
|
||||
bl SetTile
|
||||
ldr r0, _0808B320 @ =0x000001A5
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_0808B31C:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
@@ -130,7 +130,7 @@ _0808B36C:
|
||||
adds r0, r4, #0
|
||||
bl sub_0808B3AC
|
||||
ldr r0, _0808B388 @ =0x000001A5
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_0808B384:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
-1319
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -190,7 +190,7 @@ _0809B4C0:
|
||||
lsls r0, r0, #2
|
||||
strb r0, [r1, #0x15]
|
||||
ldr r0, _0809B518 @ =0x0000010F
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
b _0809B520
|
||||
.align 2, 0
|
||||
_0809B510: .4byte gPlayerState
|
||||
|
||||
+1
-1
@@ -358,7 +358,7 @@ _0808C470:
|
||||
strh r0, [r1, #0x32]
|
||||
_0808C494:
|
||||
ldr r0, _0808C4A0 @ =0x0000010B
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_0808C49A:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
+1
-1
@@ -675,7 +675,7 @@ sub_0803C6DC: @ 0x0803C6DC
|
||||
strh r0, [r4, #0x24]
|
||||
_0803C6EA:
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
pop {r4, pc}
|
||||
|
||||
-1281
File diff suppressed because it is too large
Load Diff
@@ -85,7 +85,7 @@ _08045C16:
|
||||
movs r1, #0xff
|
||||
strb r1, [r0]
|
||||
ldr r0, _08045C34 @ =0x000001BB
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
bl sub_0805E3A0
|
||||
@@ -480,7 +480,7 @@ _08045F00:
|
||||
adds r0, r4, #0
|
||||
bl sub_080954AC
|
||||
ldr r0, _08045F34 @ =0x0000018D
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
b _08045F4E
|
||||
.align 2, 0
|
||||
_08045F34: .4byte 0x0000018D
|
||||
@@ -698,7 +698,7 @@ _080460AE:
|
||||
bge _0804608A
|
||||
movs r0, #0xb7
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
ldr r0, _08046120 @ =0x000007A2
|
||||
movs r1, #1
|
||||
bl sub_0807BA8C
|
||||
@@ -725,7 +725,7 @@ _080460AE:
|
||||
bl CopyPosition
|
||||
movs r0, #0xc2
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_08046102:
|
||||
ldr r1, [r7, #0x54]
|
||||
cmp r1, #0
|
||||
|
||||
-745
@@ -1,745 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start Button
|
||||
Button: @ 0x08081AC8
|
||||
push {lr}
|
||||
ldr r2, _08081ADC @ =gUnk_0811EE38
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08081ADC: .4byte gUnk_0811EE38
|
||||
|
||||
thumb_func_start sub_08081AE0
|
||||
sub_08081AE0: @ 0x08081AE0
|
||||
push {r4, r5, r6, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
ldrb r1, [r4, #0x11]
|
||||
movs r0, #0x10
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
movs r1, #3
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x11]
|
||||
ldrh r0, [r4, #0x32]
|
||||
adds r0, #1
|
||||
strh r0, [r4, #0x32]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x84
|
||||
ldrh r1, [r0]
|
||||
cmp r1, #0
|
||||
beq _08081B0E
|
||||
subs r0, #0x4c
|
||||
strb r1, [r0]
|
||||
_08081B0E:
|
||||
movs r0, #0x2e
|
||||
ldrsh r1, [r4, r0]
|
||||
ldr r2, _08081B6C @ =gRoomControls
|
||||
ldrh r0, [r2, #6]
|
||||
subs r1, r1, r0
|
||||
asrs r1, r1, #4
|
||||
movs r3, #0x3f
|
||||
ands r1, r3
|
||||
movs r5, #0x32
|
||||
ldrsh r0, [r4, r5]
|
||||
ldrh r2, [r2, #8]
|
||||
subs r0, r0, r2
|
||||
asrs r0, r0, #4
|
||||
ands r0, r3
|
||||
lsls r0, r0, #6
|
||||
orrs r1, r0
|
||||
adds r5, r4, #0
|
||||
adds r5, #0x74
|
||||
strh r1, [r5]
|
||||
ldrh r0, [r5]
|
||||
adds r6, r4, #0
|
||||
adds r6, #0x38
|
||||
ldrb r1, [r6]
|
||||
bl GetTileType
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x72
|
||||
strh r0, [r1]
|
||||
ldrb r0, [r4, #0xa]
|
||||
cmp r0, #0
|
||||
bne _08081B70
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x86
|
||||
ldrh r0, [r0]
|
||||
bl CheckFlags
|
||||
cmp r0, #0
|
||||
beq _08081B70
|
||||
movs r0, #5
|
||||
strb r0, [r4, #0xc]
|
||||
ldrh r1, [r5]
|
||||
ldrb r2, [r6]
|
||||
movs r0, #0x7a
|
||||
bl SetTileType
|
||||
b _08081B82
|
||||
.align 2, 0
|
||||
_08081B6C: .4byte gRoomControls
|
||||
_08081B70:
|
||||
adds r0, r4, #0
|
||||
bl sub_08081E3C
|
||||
cmp r0, #0
|
||||
beq _08081B7E
|
||||
movs r0, #2
|
||||
b _08081B80
|
||||
_08081B7E:
|
||||
movs r0, #1
|
||||
_08081B80:
|
||||
strb r0, [r4, #0xc]
|
||||
_08081B82:
|
||||
pop {r4, r5, r6, pc}
|
||||
|
||||
thumb_func_start sub_08081B84
|
||||
sub_08081B84: @ 0x08081B84
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_08081E3C
|
||||
cmp r0, #0
|
||||
beq _08081BAA
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x74
|
||||
ldrh r0, [r0]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x38
|
||||
ldrb r1, [r1]
|
||||
bl GetTileType
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x72
|
||||
strh r0, [r1]
|
||||
_08081BAA:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_08081BAC
|
||||
sub_08081BAC: @ 0x08081BAC
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_08081CB0
|
||||
cmp r0, #0
|
||||
beq _08081BDC
|
||||
movs r0, #0
|
||||
strb r0, [r4, #0xd]
|
||||
movs r0, #0xa
|
||||
strb r0, [r4, #0xe]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0xa
|
||||
bl sub_0805E4E0
|
||||
adds r0, r4, #0
|
||||
bl sub_08081FF8
|
||||
ldrb r0, [r4, #0xa]
|
||||
cmp r0, #1
|
||||
bne _08081BD8
|
||||
movs r0, #3
|
||||
b _08081BDA
|
||||
_08081BD8:
|
||||
movs r0, #5
|
||||
_08081BDA:
|
||||
strb r0, [r4, #0xc]
|
||||
_08081BDC:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08081BE0
|
||||
sub_08081BE0: @ 0x08081BE0
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #0x78
|
||||
bl sub_08081F7C
|
||||
cmp r0, #0
|
||||
beq _08081C2C
|
||||
adds r0, r4, #0
|
||||
bl sub_08081D28
|
||||
cmp r0, #0
|
||||
bne _08081C26
|
||||
movs r0, #4
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xf]
|
||||
ldr r1, _08081C1C @ =gPlayerState
|
||||
ldrb r0, [r1, #5]
|
||||
cmp r0, #2
|
||||
beq _08081C16
|
||||
adds r0, r1, #0
|
||||
adds r0, #0x35
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _08081C20
|
||||
_08081C16:
|
||||
movs r0, #0x18
|
||||
strb r0, [r4, #0xe]
|
||||
b _08081C2C
|
||||
.align 2, 0
|
||||
_08081C1C: .4byte gPlayerState
|
||||
_08081C20:
|
||||
movs r0, #8
|
||||
strb r0, [r4, #0xe]
|
||||
b _08081C2C
|
||||
_08081C26:
|
||||
adds r0, r4, #0
|
||||
bl sub_08081E6C
|
||||
_08081C2C:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08081C30
|
||||
sub_08081C30: @ 0x08081C30
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xe]
|
||||
cmp r0, #0
|
||||
beq _08081C70
|
||||
subs r0, #1
|
||||
movs r5, #0
|
||||
strb r0, [r4, #0xe]
|
||||
ldrb r0, [r4, #0xf]
|
||||
cmp r0, #0
|
||||
beq _08081C5A
|
||||
strb r5, [r4, #0xf]
|
||||
ldr r0, _08081C6C @ =0x00004035
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x74
|
||||
ldrh r1, [r1]
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x38
|
||||
ldrb r2, [r2]
|
||||
bl SetTile
|
||||
_08081C5A:
|
||||
adds r0, r4, #0
|
||||
bl sub_08081CB0
|
||||
cmp r0, #0
|
||||
beq _08081C96
|
||||
movs r0, #3
|
||||
strb r0, [r4, #0xc]
|
||||
strb r5, [r4, #0xe]
|
||||
b _08081C96
|
||||
.align 2, 0
|
||||
_08081C6C: .4byte 0x00004035
|
||||
_08081C70:
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x86
|
||||
ldrh r0, [r0]
|
||||
bl ClearFlag
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x74
|
||||
ldrh r1, [r0]
|
||||
subs r0, #0x3c
|
||||
ldrb r2, [r0]
|
||||
movs r0, #0x77
|
||||
bl SetTileType
|
||||
movs r0, #0x86
|
||||
lsls r0, r0, #1
|
||||
bl PlaySFX
|
||||
_08081C96:
|
||||
pop {r4, r5, pc}
|
||||
|
||||
thumb_func_start sub_08081C98
|
||||
sub_08081C98: @ 0x08081C98
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #0x7a
|
||||
bl sub_08081F7C
|
||||
cmp r0, #0
|
||||
beq _08081CAC
|
||||
adds r0, r4, #0
|
||||
bl sub_08081E6C
|
||||
_08081CAC:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08081CB0
|
||||
sub_08081CB0: @ 0x08081CB0
|
||||
push {r4, r5, r6, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_08081D74
|
||||
cmp r0, #0
|
||||
beq _08081CEC
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x70
|
||||
ldr r0, _08081CE4 @ =0x0000FFFF
|
||||
strh r0, [r1]
|
||||
adds r5, r4, #0
|
||||
adds r5, #0x74
|
||||
ldrh r0, [r5]
|
||||
adds r4, #0x38
|
||||
ldrb r1, [r4]
|
||||
bl GetTileType
|
||||
ldr r1, _08081CE8 @ =0x00004035
|
||||
cmp r0, r1
|
||||
bne _08081D1C
|
||||
ldrh r1, [r5]
|
||||
ldrb r2, [r4]
|
||||
movs r0, #0x78
|
||||
bl sub_0807B7D8
|
||||
b _08081D1C
|
||||
.align 2, 0
|
||||
_08081CE4: .4byte 0x0000FFFF
|
||||
_08081CE8: .4byte 0x00004035
|
||||
_08081CEC:
|
||||
adds r6, r4, #0
|
||||
adds r6, #0x74
|
||||
ldrh r0, [r6]
|
||||
adds r5, r4, #0
|
||||
adds r5, #0x38
|
||||
ldrb r1, [r5]
|
||||
bl GetTileType
|
||||
lsls r0, r0, #0x10
|
||||
lsrs r1, r0, #0x10
|
||||
cmp r1, #0x77
|
||||
beq _08081D24
|
||||
cmp r1, #0x79
|
||||
beq _08081D24
|
||||
ldr r0, _08081D20 @ =0x00004035
|
||||
cmp r1, r0
|
||||
beq _08081D24
|
||||
ldrh r0, [r6]
|
||||
ldrb r1, [r5]
|
||||
bl sub_080001DA
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x70
|
||||
strh r0, [r1]
|
||||
_08081D1C:
|
||||
movs r0, #1
|
||||
b _08081D26
|
||||
.align 2, 0
|
||||
_08081D20: .4byte 0x00004035
|
||||
_08081D24:
|
||||
movs r0, #0
|
||||
_08081D26:
|
||||
pop {r4, r5, r6, pc}
|
||||
|
||||
thumb_func_start sub_08081D28
|
||||
sub_08081D28: @ 0x08081D28
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_08081D74
|
||||
cmp r0, #0
|
||||
beq _08081D44
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x70
|
||||
ldr r0, _08081D40 @ =0x0000FFFF
|
||||
strh r0, [r1]
|
||||
movs r0, #1
|
||||
b _08081D72
|
||||
.align 2, 0
|
||||
_08081D40: .4byte 0x0000FFFF
|
||||
_08081D44:
|
||||
adds r5, r4, #0
|
||||
adds r5, #0x70
|
||||
ldrh r1, [r5]
|
||||
ldr r0, _08081D6C @ =0x0000FFFF
|
||||
cmp r1, r0
|
||||
beq _08081D70
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x74
|
||||
ldrh r0, [r0]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x38
|
||||
ldrb r1, [r1]
|
||||
bl sub_080001DA
|
||||
ldrh r5, [r5]
|
||||
cmp r0, r5
|
||||
bne _08081D70
|
||||
movs r0, #1
|
||||
b _08081D72
|
||||
.align 2, 0
|
||||
_08081D6C: .4byte 0x0000FFFF
|
||||
_08081D70:
|
||||
movs r0, #0
|
||||
_08081D72:
|
||||
pop {r4, r5, pc}
|
||||
|
||||
thumb_func_start sub_08081D74
|
||||
sub_08081D74: @ 0x08081D74
|
||||
push {r4, r5, r6, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, #0x74
|
||||
ldrh r0, [r0]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x38
|
||||
ldrb r1, [r1]
|
||||
bl sub_080002E0
|
||||
cmp r0, #0xf
|
||||
bne _08081D8E
|
||||
movs r0, #0
|
||||
b _08081E0A
|
||||
_08081D8E:
|
||||
movs r6, #0
|
||||
adds r0, r4, #0
|
||||
bl sub_08081E0C
|
||||
cmp r0, #0
|
||||
beq _08081DB4
|
||||
ldr r0, _08081DAC @ =gPlayerState
|
||||
ldr r0, [r0, #0x30]
|
||||
movs r1, #0x90
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _08081E06
|
||||
ldr r6, _08081DB0 @ =gPlayerEntity
|
||||
b _08081E06
|
||||
.align 2, 0
|
||||
_08081DAC: .4byte gPlayerState
|
||||
_08081DB0: .4byte gPlayerEntity
|
||||
_08081DB4:
|
||||
ldr r0, _08081DD8 @ =gPlayerState
|
||||
ldr r0, [r0, #0x30]
|
||||
movs r1, #0x80
|
||||
lsls r1, r1, #0xf
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _08081E06
|
||||
ldr r5, _08081DDC @ =gUnk_03004040
|
||||
ldr r1, [r5]
|
||||
adds r0, r4, #0
|
||||
movs r2, #5
|
||||
movs r3, #6
|
||||
bl sub_080041A0
|
||||
cmp r0, #0
|
||||
beq _08081DE0
|
||||
ldr r6, [r5]
|
||||
b _08081E06
|
||||
.align 2, 0
|
||||
_08081DD8: .4byte gPlayerState
|
||||
_08081DDC: .4byte gUnk_03004040
|
||||
_08081DE0:
|
||||
ldr r1, [r5, #4]
|
||||
adds r0, r4, #0
|
||||
movs r2, #5
|
||||
movs r3, #6
|
||||
bl sub_080041A0
|
||||
cmp r0, #0
|
||||
beq _08081DF4
|
||||
ldr r6, [r5, #4]
|
||||
b _08081E06
|
||||
_08081DF4:
|
||||
ldr r1, [r5, #8]
|
||||
adds r0, r4, #0
|
||||
movs r2, #5
|
||||
movs r3, #6
|
||||
bl sub_080041A0
|
||||
cmp r0, #0
|
||||
beq _08081E06
|
||||
ldr r6, [r5, #8]
|
||||
_08081E06:
|
||||
str r6, [r4, #0x54]
|
||||
adds r0, r6, #0
|
||||
_08081E0A:
|
||||
pop {r4, r5, r6, pc}
|
||||
|
||||
thumb_func_start sub_08081E0C
|
||||
sub_08081E0C: @ 0x08081E0C
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r5, _08081E28 @ =gPlayerEntity
|
||||
movs r1, #0x36
|
||||
ldrsh r0, [r5, r1]
|
||||
cmp r0, #0
|
||||
bne _08081E22
|
||||
bl sub_08079F8C
|
||||
cmp r0, #0
|
||||
bne _08081E2C
|
||||
_08081E22:
|
||||
movs r0, #0
|
||||
b _08081E38
|
||||
.align 2, 0
|
||||
_08081E28: .4byte gPlayerEntity
|
||||
_08081E2C:
|
||||
adds r0, r4, #0
|
||||
adds r1, r5, #0
|
||||
movs r2, #5
|
||||
movs r3, #6
|
||||
bl sub_080041A0
|
||||
_08081E38:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08081E3C
|
||||
sub_08081E3C: @ 0x08081E3C
|
||||
push {lr}
|
||||
adds r1, r0, #0
|
||||
adds r1, #0x74
|
||||
ldrh r2, [r1]
|
||||
adds r0, #0x38
|
||||
ldrb r1, [r0]
|
||||
adds r0, r2, #0
|
||||
bl GetTileType
|
||||
adds r2, r0, #0
|
||||
ldr r1, _08081E64 @ =gUnk_0811EE50
|
||||
_08081E52:
|
||||
ldrh r0, [r1]
|
||||
cmp r0, r2
|
||||
beq _08081E68
|
||||
adds r1, #2
|
||||
ldrh r0, [r1]
|
||||
cmp r0, #0
|
||||
bne _08081E52
|
||||
movs r0, #0
|
||||
b _08081E6A
|
||||
.align 2, 0
|
||||
_08081E64: .4byte gUnk_0811EE50
|
||||
_08081E68:
|
||||
movs r0, #1
|
||||
_08081E6A:
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_08081E6C
|
||||
sub_08081E6C: @ 0x08081E6C
|
||||
push {r4, r5, r6, r7, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, #0x74
|
||||
ldrh r6, [r0]
|
||||
subs r0, #0x3c
|
||||
ldrb r5, [r0]
|
||||
adds r0, r6, #0
|
||||
adds r1, r5, #0
|
||||
bl GetTileType
|
||||
adds r7, r0, #0
|
||||
ldr r0, _08081EEC @ =0x00003FFF
|
||||
cmp r7, r0
|
||||
bls _08081EE8
|
||||
adds r0, r5, #0
|
||||
bl GetLayerByIndex
|
||||
adds r1, r0, #0
|
||||
ldrb r0, [r4, #0xa]
|
||||
movs r4, #0x78
|
||||
cmp r0, #0
|
||||
bne _08081E9A
|
||||
movs r4, #0x7a
|
||||
_08081E9A:
|
||||
ldr r0, _08081EF0 @ =0x00007004
|
||||
adds r3, r1, r0
|
||||
lsls r0, r4, #1
|
||||
ldr r2, _08081EF4 @ =0x00006004
|
||||
adds r1, r1, r2
|
||||
adds r1, r1, r0
|
||||
ldrh r0, [r1]
|
||||
lsls r0, r0, #3
|
||||
adds r3, r3, r0
|
||||
ldr r2, _08081EF8 @ =gUnk_02019EE0
|
||||
cmp r5, #2
|
||||
bne _08081EB4
|
||||
ldr r2, _08081EFC @ =gUnk_02002F00
|
||||
_08081EB4:
|
||||
movs r0, #0x3f
|
||||
ands r0, r6
|
||||
lsls r0, r0, #1
|
||||
movs r1, #0xfc
|
||||
lsls r1, r1, #4
|
||||
ands r1, r6
|
||||
lsls r1, r1, #2
|
||||
adds r0, r0, r1
|
||||
lsls r0, r0, #1
|
||||
adds r2, r2, r0
|
||||
adds r0, r2, #0
|
||||
adds r1, r3, #0
|
||||
bl sub_08081F00
|
||||
cmp r0, #0
|
||||
bne _08081EE8
|
||||
adds r0, r4, #0
|
||||
adds r1, r6, #0
|
||||
adds r2, r5, #0
|
||||
bl SetTileType
|
||||
adds r0, r7, #0
|
||||
adds r1, r6, #0
|
||||
adds r2, r5, #0
|
||||
bl SetTile
|
||||
_08081EE8:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_08081EEC: .4byte 0x00003FFF
|
||||
_08081EF0: .4byte 0x00007004
|
||||
_08081EF4: .4byte 0x00006004
|
||||
_08081EF8: .4byte gUnk_02019EE0
|
||||
_08081EFC: .4byte gUnk_02002F00
|
||||
|
||||
thumb_func_start sub_08081F00
|
||||
sub_08081F00: @ 0x08081F00
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
adds r3, r1, #0
|
||||
ldr r1, [r2]
|
||||
ldr r0, [r3]
|
||||
cmp r1, r0
|
||||
bne _08081F20
|
||||
movs r1, #0x80
|
||||
lsls r1, r1, #1
|
||||
adds r0, r2, r1
|
||||
ldr r1, [r0]
|
||||
ldr r0, [r3, #4]
|
||||
cmp r1, r0
|
||||
bne _08081F20
|
||||
movs r0, #1
|
||||
b _08081F22
|
||||
_08081F20:
|
||||
movs r0, #0
|
||||
_08081F22:
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_08081F24
|
||||
sub_08081F24: @ 0x08081F24
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #0x11
|
||||
movs r2, #0x40
|
||||
bl CreateFx
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0
|
||||
beq _08081F50
|
||||
ldrb r1, [r2, #0x11]
|
||||
movs r0, #0x10
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
movs r1, #3
|
||||
orrs r0, r1
|
||||
strb r0, [r2, #0x11]
|
||||
ldrh r0, [r2, #0x2e]
|
||||
adds r0, #7
|
||||
strh r0, [r2, #0x2e]
|
||||
ldrh r0, [r2, #0x32]
|
||||
adds r0, #5
|
||||
strh r0, [r2, #0x32]
|
||||
_08081F50:
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x11
|
||||
movs r2, #0x40
|
||||
bl CreateFx
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0
|
||||
beq _08081F7A
|
||||
ldrb r1, [r2, #0x11]
|
||||
movs r0, #0x10
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
movs r1, #3
|
||||
orrs r0, r1
|
||||
strb r0, [r2, #0x11]
|
||||
ldrh r0, [r2, #0x2e]
|
||||
subs r0, #7
|
||||
strh r0, [r2, #0x2e]
|
||||
ldrh r0, [r2, #0x32]
|
||||
adds r0, #5
|
||||
strh r0, [r2, #0x32]
|
||||
_08081F7A:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_08081F7C
|
||||
sub_08081F7C: @ 0x08081F7C
|
||||
push {r4, r5, r6, r7, lr}
|
||||
adds r4, r0, #0
|
||||
adds r7, r1, #0
|
||||
ldrb r0, [r4, #0xe]
|
||||
cmp r0, #0
|
||||
beq _08081FF4
|
||||
subs r1, r0, #1
|
||||
strb r1, [r4, #0xe]
|
||||
lsls r0, r1, #0x18
|
||||
lsrs r0, r0, #0x18
|
||||
cmp r0, #6
|
||||
bls _08081FA4
|
||||
ldr r0, [r4, #0x54]
|
||||
cmp r0, #0
|
||||
beq _08081FF4
|
||||
adds r1, r0, #0
|
||||
adds r1, #0x63
|
||||
movs r0, #0xfc
|
||||
strb r0, [r1]
|
||||
b _08081FF4
|
||||
_08081FA4:
|
||||
lsls r0, r1, #0x18
|
||||
lsrs r0, r0, #0x18
|
||||
cmp r0, #6
|
||||
bne _08081FF4
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x86
|
||||
ldrh r0, [r0]
|
||||
bl SetFlag
|
||||
adds r6, r4, #0
|
||||
adds r6, #0x74
|
||||
ldrh r1, [r6]
|
||||
adds r5, r4, #0
|
||||
adds r5, #0x38
|
||||
ldrb r2, [r5]
|
||||
adds r0, r7, #0
|
||||
bl SetTileType
|
||||
adds r0, r4, #0
|
||||
bl sub_08081F24
|
||||
movs r0, #0x86
|
||||
lsls r0, r0, #1
|
||||
bl PlaySFX
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x70
|
||||
ldrh r1, [r2]
|
||||
ldr r0, _08081FF0 @ =0x0000FFFF
|
||||
cmp r1, r0
|
||||
beq _08081FEC
|
||||
adds r0, r1, #0
|
||||
ldrh r1, [r6]
|
||||
ldrb r2, [r5]
|
||||
bl SetTile
|
||||
_08081FEC:
|
||||
movs r0, #0
|
||||
b _08081FF6
|
||||
.align 2, 0
|
||||
_08081FF0: .4byte 0x0000FFFF
|
||||
_08081FF4:
|
||||
movs r0, #1
|
||||
_08081FF6:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
|
||||
thumb_func_start sub_08081FF8
|
||||
sub_08081FF8: @ 0x08081FF8
|
||||
push {r4, r5, r6, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r1, [r4, #0x54]
|
||||
ldr r0, _08082038 @ =gPlayerEntity
|
||||
cmp r1, r0
|
||||
bne _08082036
|
||||
adds r0, r1, #0
|
||||
adds r1, r4, #0
|
||||
bl GetFacingDirection
|
||||
adds r6, r0, #0
|
||||
ldr r0, [r4, #0x54]
|
||||
movs r1, #0x80
|
||||
lsls r1, r1, #2
|
||||
adds r2, r6, #0
|
||||
bl sub_080044AE
|
||||
movs r5, #0
|
||||
ldr r4, _0808203C @ =gUnk_03004040
|
||||
_0808201E:
|
||||
ldr r0, [r4]
|
||||
cmp r0, #0
|
||||
beq _0808202E
|
||||
movs r1, #0x80
|
||||
lsls r1, r1, #2
|
||||
adds r2, r6, #0
|
||||
bl sub_080044AE
|
||||
_0808202E:
|
||||
adds r4, #4
|
||||
adds r5, #1
|
||||
cmp r5, #2
|
||||
bls _0808201E
|
||||
_08082036:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_08082038: .4byte gPlayerEntity
|
||||
_0808203C: .4byte gUnk_03004040
|
||||
+1
-1
@@ -288,7 +288,7 @@ _08064710:
|
||||
orrs r0, r1
|
||||
str r0, [r5, #8]
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
movs r0, #0x2e
|
||||
ldrsh r1, [r4, r0]
|
||||
adds r2, r4, #0
|
||||
|
||||
@@ -260,7 +260,7 @@ _08067560:
|
||||
ble _0806753A
|
||||
movs r0, #0xa6
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
movs r0, #0x28
|
||||
movs r1, #4
|
||||
bl sub_08080964
|
||||
|
||||
-159
@@ -1,159 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start Chaser
|
||||
Chaser: @ 0x0802B4D8
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
bl sub_080012DC
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _0802B4FC
|
||||
ldr r0, _0802B4F8 @ =gUnk_080012C8
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r0
|
||||
ldr r1, [r1]
|
||||
adds r0, r5, #0
|
||||
bl _call_via_r1
|
||||
b _0802B510
|
||||
.align 2, 0
|
||||
_0802B4F8: .4byte gUnk_080012C8
|
||||
_0802B4FC:
|
||||
ldr r4, _0802B514 @ =gUnk_080CD27C
|
||||
adds r0, r5, #0
|
||||
bl GetNextFunction
|
||||
lsls r0, r0, #2
|
||||
adds r0, r0, r4
|
||||
ldr r1, [r0]
|
||||
adds r0, r5, #0
|
||||
bl _call_via_r1
|
||||
_0802B510:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0802B514: .4byte gUnk_080CD27C
|
||||
|
||||
thumb_func_start sub_0802B518
|
||||
sub_0802B518: @ 0x0802B518
|
||||
push {lr}
|
||||
ldr r2, _0802B52C @ =gUnk_080CD298
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0802B52C: .4byte gUnk_080CD298
|
||||
|
||||
thumb_func_start sub_0802B530
|
||||
sub_0802B530: @ 0x0802B530
|
||||
push {lr}
|
||||
movs r1, #1
|
||||
strb r1, [r0, #0xc]
|
||||
movs r1, #0
|
||||
bl InitializeAnimation
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802B540
|
||||
sub_0802B540: @ 0x0802B540
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xe]
|
||||
cmp r0, #0
|
||||
beq _0802B550
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
b _0802B56A
|
||||
_0802B550:
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #0xc
|
||||
bl sub_0804A024
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0xff
|
||||
beq _0802B56A
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x40
|
||||
strh r0, [r4, #0x24]
|
||||
strb r1, [r4, #0x15]
|
||||
_0802B56A:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0802B56C
|
||||
sub_0802B56C: @ 0x0802B56C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl GetNextFrame
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x41
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0802B586
|
||||
movs r0, #0x40
|
||||
strh r0, [r4, #0x24]
|
||||
_0802B586:
|
||||
adds r0, r4, #0
|
||||
bl sub_080AF038
|
||||
cmp r0, #0
|
||||
beq _0802B5B8
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x58
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #1
|
||||
beq _0802B5A2
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
bl InitializeAnimation
|
||||
_0802B5A2:
|
||||
ldrh r2, [r4, #0x24]
|
||||
movs r0, #0x24
|
||||
ldrsh r1, [r4, r0]
|
||||
ldr r0, _0802B5B4 @ =0x0000021F
|
||||
cmp r1, r0
|
||||
bgt _0802B5C4
|
||||
adds r0, r2, #4
|
||||
strh r0, [r4, #0x24]
|
||||
b _0802B5C4
|
||||
.align 2, 0
|
||||
_0802B5B4: .4byte 0x0000021F
|
||||
_0802B5B8:
|
||||
movs r0, #3
|
||||
strb r0, [r4, #0xc]
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
bl InitializeAnimation
|
||||
_0802B5C4:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802B5C8
|
||||
sub_0802B5C8: @ 0x0802B5C8
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl GetNextFrame
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0802B5EE
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x1e
|
||||
strb r0, [r4, #0xe]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl InitializeAnimation
|
||||
_0802B5EE:
|
||||
pop {r4, pc}
|
||||
+2
-2
@@ -532,7 +532,7 @@ _0808424C:
|
||||
movs r0, #0x72
|
||||
bl PlaySFX
|
||||
adds r0, r4, #0
|
||||
bl sub_080A29BC
|
||||
bl CreateDust
|
||||
_08084258:
|
||||
movs r0, #3
|
||||
strb r0, [r4, #0xc]
|
||||
@@ -596,7 +596,7 @@ _080842BA:
|
||||
ldrb r1, [r1]
|
||||
bl sub_0807BA8C
|
||||
adds r0, r4, #0
|
||||
bl sub_080A29BC
|
||||
bl CreateDust
|
||||
_080842D4:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
+4
-4
@@ -1204,7 +1204,7 @@ sub_08051458: @ 0x08051458
|
||||
ldr r1, _0805147C @ =gUnk_02022030
|
||||
movs r2, #0x80
|
||||
lsls r2, r2, #3
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08051474: .4byte gMenu
|
||||
@@ -1364,7 +1364,7 @@ sub_08051574: @ 0x08051574
|
||||
muls r1, r2, r1
|
||||
adds r3, #0xc
|
||||
adds r1, r1, r3
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
bl sub_0805070C
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
@@ -1742,7 +1742,7 @@ sub_08051874: @ 0x08051874
|
||||
adds r3, r4, #0
|
||||
adds r3, #0xc
|
||||
adds r1, r1, r3
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
movs r0, #0
|
||||
bl sub_080503BC
|
||||
b _080518DE
|
||||
@@ -1895,7 +1895,7 @@ sub_080519B0: @ 0x080519B0
|
||||
adds r1, r4, #0
|
||||
adds r1, #0xc
|
||||
movs r2, #0x20
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
movs r0, #4
|
||||
strb r0, [r4, #9]
|
||||
bl sub_08053518
|
||||
|
||||
-1867
File diff suppressed because it is too large
Load Diff
+4
-4
@@ -1374,7 +1374,7 @@ _0802670A:
|
||||
bl PlaySFX
|
||||
_08026726:
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
_0802672C:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x76
|
||||
@@ -1556,7 +1556,7 @@ sub_0802686C: @ 0x0802686C
|
||||
cmp r5, #0
|
||||
beq _08026888
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
b _080268BE
|
||||
_08026888:
|
||||
movs r0, #0x10
|
||||
@@ -2654,7 +2654,7 @@ _080270D4:
|
||||
ldrb r0, [r0, #0xc]
|
||||
strb r0, [r5, #0x15]
|
||||
adds r0, r5, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
_080270E0:
|
||||
adds r0, r6, #0
|
||||
adds r0, #0x85
|
||||
@@ -2714,7 +2714,7 @@ _08027110:
|
||||
b _080271FE
|
||||
_0802714A:
|
||||
adds r0, r5, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
b _080271FE
|
||||
_08027152:
|
||||
adds r0, r6, #0
|
||||
|
||||
+3
-3
@@ -376,7 +376,7 @@ sub_080386B8: @ 0x080386B8
|
||||
strb r0, [r2]
|
||||
movs r0, #0x92
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x70
|
||||
bl sub_0801D2B4
|
||||
@@ -459,7 +459,7 @@ sub_08038754: @ 0x08038754
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
ldr r0, _080387C0 @ =0x0000012B
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x71
|
||||
bl sub_0801D2B4
|
||||
@@ -593,7 +593,7 @@ _08038890:
|
||||
cmp r0, #0
|
||||
bne _080388A8
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
b _080388B2
|
||||
_080388A8:
|
||||
subs r0, #1
|
||||
|
||||
+14
-14
@@ -26,7 +26,7 @@ _08000126:
|
||||
ldr r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _08000136
|
||||
ldr r0, _080001FC @ =gUnk_02002F00
|
||||
ldr r0, _080001FC @ =gMapDataTopSpecial
|
||||
ldr r1, _08000200 @ =gUnk_020344F0
|
||||
bl _call_via_r4
|
||||
_08000136:
|
||||
@@ -126,7 +126,7 @@ _080001EC: .4byte gUnk_02025EB0
|
||||
_080001F0: .4byte gUnk_02019EE0
|
||||
_080001F4: .4byte gUnk_02021F70
|
||||
_080001F8: .4byte gUnk_0200B650
|
||||
_080001FC: .4byte gUnk_02002F00
|
||||
_080001FC: .4byte gMapDataTopSpecial
|
||||
_08000200: .4byte gUnk_020344F0
|
||||
_08000204: .4byte gUnk_08000248
|
||||
_08000208: .4byte gUnk_08000228
|
||||
@@ -138,15 +138,15 @@ _0800021C: .4byte gUnk_080B3E80
|
||||
_08000220: .4byte gUnk_08000278
|
||||
_08000224: .4byte gUnk_08000228
|
||||
gUnk_08000228::
|
||||
.4byte gUnk_02025EB4
|
||||
.4byte gMapDataBottom
|
||||
gUnk_0800022C::
|
||||
.4byte gUnk_0202AEB4
|
||||
.4byte gUnk_02025EB4
|
||||
.4byte gUnk_0202AEB4
|
||||
.4byte gUnk_0200B654
|
||||
.4byte gUnk_02010654
|
||||
.4byte gUnk_02025EB4
|
||||
.4byte gUnk_0202AEB4
|
||||
.4byte gMetatileTypesBottom
|
||||
.4byte gMapDataBottom
|
||||
.4byte gMetatileTypesBottom
|
||||
.4byte gMapDataTop
|
||||
.4byte gMetatileTypesTop
|
||||
.4byte gMapDataBottom
|
||||
.4byte gMetatileTypesBottom
|
||||
gUnk_08000248::
|
||||
.4byte gUnk_02027EB4
|
||||
.4byte gUnk_02027EB4
|
||||
@@ -154,13 +154,13 @@ gUnk_08000248::
|
||||
.4byte gUnk_02027EB4
|
||||
gUnk_08000258::
|
||||
.4byte gUnk_02028EB4
|
||||
.4byte gUnk_0202AEB4
|
||||
.4byte gMetatileTypesBottom
|
||||
.4byte gUnk_02028EB4
|
||||
.4byte gUnk_0202AEB4
|
||||
.4byte gMetatileTypesBottom
|
||||
.4byte gUnk_0200E654
|
||||
.4byte gUnk_02010654
|
||||
.4byte gMetatileTypesTop
|
||||
.4byte gUnk_02028EB4
|
||||
.4byte gUnk_0202AEB4
|
||||
.4byte gMetatileTypesBottom
|
||||
gUnk_08000278::
|
||||
.4byte gUnk_02030EB4
|
||||
.4byte gUnk_02030EB4
|
||||
|
||||
+2
-2
@@ -85,8 +85,8 @@ sub_08004484: @ 0x08004484
|
||||
ldr r2, _080044DC @ =gUnk_03005FF0
|
||||
bx r2
|
||||
|
||||
thumb_func_start sub_08004488
|
||||
sub_08004488: @ 0x08004488
|
||||
thumb_func_start EnqueueSFX
|
||||
EnqueueSFX: @ 0x08004488
|
||||
ldr r1, _080044E0 @ =gUnk_02024048
|
||||
ldrb r2, [r1]
|
||||
cmp r2, #8
|
||||
|
||||
+1
-1
@@ -769,7 +769,7 @@ sub_08008B22: @ 0x08008B22
|
||||
sub_08008B2E: @ 0x08008B2E
|
||||
push {r0, lr}
|
||||
adds r0, r2, #0
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
pop {r0, pc}
|
||||
.align 2, 0
|
||||
_08008B38: .4byte 0x00000180
|
||||
|
||||
+2
-2
@@ -398,7 +398,7 @@ _080170E8:
|
||||
cmp r0, #0
|
||||
bne _08017112
|
||||
ldr r0, _08017138 @ =0x0000011F
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_08017112:
|
||||
ldr r0, _0801712C @ =gUnk_02002A40
|
||||
adds r2, r0, #0
|
||||
@@ -469,7 +469,7 @@ _08017196:
|
||||
cmp r1, #0
|
||||
bne _080171A4
|
||||
adds r0, r5, #0
|
||||
bl sub_080A2B80
|
||||
bl CreateSparkle
|
||||
_080171A4:
|
||||
ldr r0, _080171B8 @ =gUnk_02002A40
|
||||
adds r3, r0, #0
|
||||
|
||||
+1
-1
@@ -884,7 +884,7 @@ sub_08018BB4: @ 0x08018BB4
|
||||
mov r5, sp
|
||||
mov r1, sp
|
||||
movs r2, #8
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
lsls r0, r4, #2
|
||||
adds r0, r0, r4
|
||||
lsls r0, r0, #2
|
||||
|
||||
+5
-5
@@ -495,7 +495,7 @@ _08019810:
|
||||
_0801981A:
|
||||
adds r0, r1, #0
|
||||
adds r1, r3, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
b _0801982E
|
||||
_08019824:
|
||||
ldrh r0, [r4]
|
||||
@@ -3508,7 +3508,7 @@ _0801AED0:
|
||||
ldr r0, [r1]
|
||||
cmp r0, #0
|
||||
beq _0801AF10
|
||||
ldr r0, _0801AF08 @ =gUnk_02002F00
|
||||
ldr r0, _0801AF08 @ =gMapDataTopSpecial
|
||||
bl sub_0801AB08
|
||||
b _0801AF10
|
||||
.align 2, 0
|
||||
@@ -3522,7 +3522,7 @@ _0801AEF8: .4byte 0x00000888
|
||||
_0801AEFC: .4byte gUnk_02025EB0
|
||||
_0801AF00: .4byte gUnk_02019EE0
|
||||
_0801AF04: .4byte gUnk_0200B650
|
||||
_0801AF08: .4byte gUnk_02002F00
|
||||
_0801AF08: .4byte gMapDataTopSpecial
|
||||
_0801AF0C:
|
||||
bl sub_0807C4F8
|
||||
_0801AF10:
|
||||
@@ -3815,7 +3815,7 @@ _0801B114:
|
||||
adds r1, r3, r0
|
||||
lsls r2, r2, #5
|
||||
adds r0, r5, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
_0801B122:
|
||||
ldr r0, [r4]
|
||||
cmp r0, #0
|
||||
@@ -4328,7 +4328,7 @@ _0801B4AC:
|
||||
cmp r0, #0
|
||||
bne _0801B4C0
|
||||
movs r0, #0xfb
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_0801B4C0:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
+1
-1
@@ -730,7 +730,7 @@ _0801D4C8:
|
||||
adds r1, r7, #0
|
||||
movs r2, #0x20
|
||||
str r3, [sp]
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
adds r6, #0x20
|
||||
adds r4, #4
|
||||
adds r7, #0x20
|
||||
|
||||
+10
-10
@@ -491,7 +491,7 @@ _0801DC26:
|
||||
ldr r3, [sp]
|
||||
cmp r0, #0
|
||||
bne _0801DCA6
|
||||
ldr r0, _0801DC88 @ =gUnk_0811E214
|
||||
ldr r0, _0801DC88 @ =gAreaRoomHeaders
|
||||
ldrb r2, [r6]
|
||||
lsls r2, r2, #2
|
||||
adds r2, r2, r0
|
||||
@@ -526,7 +526,7 @@ _0801DC26:
|
||||
b _0801DC9E
|
||||
.align 2, 0
|
||||
_0801DC84: .4byte 0x000007FF
|
||||
_0801DC88: .4byte gUnk_0811E214
|
||||
_0801DC88: .4byte gAreaRoomHeaders
|
||||
_0801DC8C:
|
||||
ldrh r0, [r2]
|
||||
ands r0, r7
|
||||
@@ -562,7 +562,7 @@ _0801DCAE:
|
||||
bl CheckGlobalFlag
|
||||
cmp r0, #0
|
||||
bne _0801DD16
|
||||
ldr r0, _0801DD50 @ =gUnk_0811E214
|
||||
ldr r0, _0801DD50 @ =gAreaRoomHeaders
|
||||
ldrb r2, [r6]
|
||||
lsls r2, r2, #2
|
||||
adds r2, r2, r0
|
||||
@@ -632,12 +632,12 @@ _0801DD42:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_0801DD4C: .4byte gArea
|
||||
_0801DD50: .4byte gUnk_0811E214
|
||||
_0801DD50: .4byte gAreaRoomHeaders
|
||||
_0801DD54: .4byte gScreenTransition
|
||||
|
||||
thumb_func_start sub_0801DD58
|
||||
sub_0801DD58: @ 0x0801DD58
|
||||
ldr r2, _0801DD7C @ =gUnk_0811E214
|
||||
ldr r2, _0801DD7C @ =gAreaRoomHeaders
|
||||
lsls r0, r0, #2
|
||||
adds r0, r0, r2
|
||||
lsls r2, r1, #2
|
||||
@@ -656,7 +656,7 @@ sub_0801DD58: @ 0x0801DD58
|
||||
strh r0, [r1, #6]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_0801DD7C: .4byte gUnk_0811E214
|
||||
_0801DD7C: .4byte gAreaRoomHeaders
|
||||
_0801DD80: .4byte gArea
|
||||
_0801DD84: .4byte 0x0000085C
|
||||
|
||||
@@ -770,7 +770,7 @@ _0801DE46:
|
||||
ldr r0, _0801DF04 @ =0x84000100
|
||||
str r0, [r2, #8]
|
||||
ldr r0, [r2, #8]
|
||||
ldr r0, _0801DF08 @ =gUnk_0811E214
|
||||
ldr r0, _0801DF08 @ =gAreaRoomHeaders
|
||||
ldrb r2, [r4]
|
||||
lsls r2, r2, #2
|
||||
adds r2, r2, r0
|
||||
@@ -850,7 +850,7 @@ _0801DEF8: .4byte 0x040000D4
|
||||
_0801DEFC: .4byte gUnk_08324AE4
|
||||
_0801DF00: .4byte gUnk_02019EE0
|
||||
_0801DF04: .4byte 0x84000100
|
||||
_0801DF08: .4byte gUnk_0811E214
|
||||
_0801DF08: .4byte gAreaRoomHeaders
|
||||
_0801DF0C: .4byte 0x000007FF
|
||||
|
||||
thumb_func_start sub_0801DF10
|
||||
@@ -2142,11 +2142,11 @@ _0801E86C:
|
||||
adds r0, r6, #0
|
||||
adds r1, r7, #0
|
||||
adds r2, r4, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
mov r0, r8
|
||||
mov r1, sb
|
||||
adds r2, r4, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
_0801E890:
|
||||
movs r3, #1
|
||||
add sb, r3
|
||||
|
||||
+4
-4
@@ -312,8 +312,8 @@ _08049F60:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08049F64
|
||||
sub_08049F64: @ 0x08049F64
|
||||
thumb_func_start PlayerInRange
|
||||
PlayerInRange: @ 0x08049F64
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, r1, #0
|
||||
@@ -1109,7 +1109,7 @@ sub_0804A4E4: @ 0x0804A4E4
|
||||
beq _0804A550
|
||||
adds r0, r5, #0
|
||||
adds r1, r6, #0
|
||||
bl sub_08058800
|
||||
bl ReplaceMonitoredEntity
|
||||
_0804A550:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
@@ -1776,4 +1776,4 @@ sub_0804AA1C: @ 0x0804AA1C
|
||||
str r0, [r2, #0x68]
|
||||
_0804AA2C:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
.align 2, 0
|
||||
|
||||
+1
-1
@@ -45,7 +45,7 @@ _0804ABA4:
|
||||
lsls r2, r2, #2
|
||||
adds r1, r0, r2
|
||||
movs r2, #0x20
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldr r2, _0804AC14 @ =gUsedPalettes
|
||||
ldr r0, [r2]
|
||||
movs r1, #0x80
|
||||
|
||||
+1
-1
@@ -50,7 +50,7 @@ _0804AEF6:
|
||||
_0804AF00:
|
||||
adds r0, r6, #0
|
||||
movs r2, #0x10
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
|
||||
|
||||
+2
-2
@@ -173,7 +173,7 @@ sub_0804B260: @ 0x0804B260
|
||||
adds r0, r0, r1
|
||||
ldr r1, _0804B278 @ =gUnk_02034398
|
||||
movs r2, #0x20
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0804B274: .4byte gUnk_080015BC
|
||||
@@ -211,7 +211,7 @@ _0804B2A4:
|
||||
adds r0, r2, #0
|
||||
adds r1, r4, #0
|
||||
movs r2, #8
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldrb r1, [r4, #6]
|
||||
movs r0, #1
|
||||
ands r0, r1
|
||||
|
||||
+28
-28
@@ -161,7 +161,7 @@ sub_080527FC: @ 0x080527FC
|
||||
ldr r1, _08052834 @ =gPaletteBuffer
|
||||
movs r2, #0x80
|
||||
lsls r2, r2, #3
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldr r1, _08052838 @ =gUsedPalettes
|
||||
movs r0, #1
|
||||
rsbs r0, r0, #0
|
||||
@@ -742,7 +742,7 @@ _08052CA0: .4byte gPlayerEntity
|
||||
thumb_func_start sub_08052CA4
|
||||
sub_08052CA4: @ 0x08052CA4
|
||||
push {r4, lr}
|
||||
ldr r4, _08052CC8 @ =gUnk_0811E214
|
||||
ldr r4, _08052CC8 @ =gAreaRoomHeaders
|
||||
lsls r0, r0, #2
|
||||
adds r0, r0, r4
|
||||
lsls r4, r1, #2
|
||||
@@ -759,13 +759,13 @@ sub_08052CA4: @ 0x08052CA4
|
||||
strh r0, [r4, #0x22]
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_08052CC8: .4byte gUnk_0811E214
|
||||
_08052CC8: .4byte gAreaRoomHeaders
|
||||
_08052CCC: .4byte gScreenTransition
|
||||
|
||||
thumb_func_start sub_08052CD0
|
||||
sub_08052CD0: @ 0x08052CD0
|
||||
push {r4, lr}
|
||||
ldr r4, _08052CF4 @ =gUnk_0811E214
|
||||
ldr r4, _08052CF4 @ =gAreaRoomHeaders
|
||||
lsls r0, r0, #2
|
||||
adds r0, r0, r4
|
||||
lsls r4, r1, #2
|
||||
@@ -782,7 +782,7 @@ sub_08052CD0: @ 0x08052CD0
|
||||
strh r0, [r4, #0x1e]
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_08052CF4: .4byte gUnk_0811E214
|
||||
_08052CF4: .4byte gAreaRoomHeaders
|
||||
_08052CF8: .4byte gScreenTransition
|
||||
|
||||
thumb_func_start sub_08052CFC
|
||||
@@ -871,7 +871,7 @@ _08052DA4: .4byte 0x0000088C
|
||||
thumb_func_start sub_08052DA8
|
||||
sub_08052DA8: @ 0x08052DA8
|
||||
push {r4, r5, r6, r7, lr}
|
||||
ldr r1, _08052DF8 @ =gUnk_0811E214
|
||||
ldr r1, _08052DF8 @ =gAreaRoomHeaders
|
||||
ldr r0, _08052DFC @ =gRoomControls
|
||||
ldrb r0, [r0, #4]
|
||||
lsls r0, r0, #2
|
||||
@@ -911,7 +911,7 @@ _08052DE8:
|
||||
str r0, [r1]
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_08052DF8: .4byte gUnk_0811E214
|
||||
_08052DF8: .4byte gAreaRoomHeaders
|
||||
_08052DFC: .4byte gRoomControls
|
||||
_08052E00: .4byte gUnk_02033ACC
|
||||
_08052E04: .4byte 0x0000FFFF
|
||||
@@ -930,7 +930,7 @@ sub_08052E10: @ 0x08052E10
|
||||
strh r0, [r5]
|
||||
ldrh r0, [r1, #6]
|
||||
strh r0, [r5, #2]
|
||||
ldr r4, _08052E74 @ =gUnk_0810246C
|
||||
ldr r4, _08052E74 @ =gAreaTilesets
|
||||
lsls r2, r2, #2
|
||||
adds r4, r2, r4
|
||||
ldrh r0, [r1, #8]
|
||||
@@ -939,14 +939,14 @@ sub_08052E10: @ 0x08052E10
|
||||
adds r0, r0, r1
|
||||
ldr r0, [r0]
|
||||
str r0, [r5, #8]
|
||||
ldr r0, _08052E78 @ =gUnk_08107988
|
||||
ldr r0, _08052E78 @ =gAreaRoomMaps
|
||||
adds r0, r2, r0
|
||||
ldr r0, [r0]
|
||||
lsls r3, r3, #2
|
||||
adds r0, r3, r0
|
||||
ldr r0, [r0]
|
||||
str r0, [r5, #0xc]
|
||||
ldr r0, _08052E7C @ =gUnk_0810309C
|
||||
ldr r0, _08052E7C @ =gAreaMetatiles
|
||||
adds r0, r2, r0
|
||||
ldr r0, [r0]
|
||||
str r0, [r5, #0x10]
|
||||
@@ -960,7 +960,7 @@ sub_08052E10: @ 0x08052E10
|
||||
adds r0, r3, r0
|
||||
ldr r0, [r0]
|
||||
str r0, [r5, #0x18]
|
||||
ldr r0, _08052E88 @ =gUnk_080D50FC
|
||||
ldr r0, _08052E88 @ =gAreaEntities
|
||||
adds r2, r2, r0
|
||||
ldr r0, [r2]
|
||||
cmp r0, #0
|
||||
@@ -971,12 +971,12 @@ sub_08052E10: @ 0x08052E10
|
||||
_08052E70:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_08052E74: .4byte gUnk_0810246C
|
||||
_08052E78: .4byte gUnk_08107988
|
||||
_08052E7C: .4byte gUnk_0810309C
|
||||
_08052E74: .4byte gAreaTilesets
|
||||
_08052E78: .4byte gAreaRoomMaps
|
||||
_08052E7C: .4byte gAreaMetatiles
|
||||
_08052E80: .4byte gUnk_080B755C
|
||||
_08052E84: .4byte gUnk_0813A7F0
|
||||
_08052E88: .4byte gUnk_080D50FC
|
||||
_08052E88: .4byte gAreaEntities
|
||||
|
||||
thumb_func_start sub_08052E8C
|
||||
sub_08052E8C: @ 0x08052E8C
|
||||
@@ -1180,7 +1180,7 @@ sub_08052FF4: @ 0x08052FF4
|
||||
movs r1, #0x20
|
||||
bl _DmaZero
|
||||
str r5, [r5, #0x20]
|
||||
ldr r0, _08053078 @ =gUnk_0811E214
|
||||
ldr r0, _08053078 @ =gAreaRoomHeaders
|
||||
lsls r6, r6, #2
|
||||
adds r0, r6, r0
|
||||
lsls r2, r4, #2
|
||||
@@ -1196,7 +1196,7 @@ sub_08052FF4: @ 0x08052FF4
|
||||
strh r1, [r5]
|
||||
ldrh r1, [r0, #6]
|
||||
strh r1, [r5, #2]
|
||||
ldr r1, _0805307C @ =gUnk_0810246C
|
||||
ldr r1, _0805307C @ =gAreaTilesets
|
||||
adds r1, r6, r1
|
||||
ldrh r0, [r0, #8]
|
||||
ldr r1, [r1]
|
||||
@@ -1204,13 +1204,13 @@ sub_08052FF4: @ 0x08052FF4
|
||||
adds r0, r0, r1
|
||||
ldr r0, [r0]
|
||||
str r0, [r5, #8]
|
||||
ldr r0, _08053080 @ =gUnk_08107988
|
||||
ldr r0, _08053080 @ =gAreaRoomMaps
|
||||
adds r0, r6, r0
|
||||
ldr r0, [r0]
|
||||
adds r2, r2, r0
|
||||
ldr r0, [r2]
|
||||
str r0, [r5, #0xc]
|
||||
ldr r0, _08053084 @ =gUnk_0810309C
|
||||
ldr r0, _08053084 @ =gAreaMetatiles
|
||||
adds r0, r6, r0
|
||||
ldr r0, [r0]
|
||||
str r0, [r5, #0x10]
|
||||
@@ -1223,10 +1223,10 @@ sub_08052FF4: @ 0x08052FF4
|
||||
_0805306C: .4byte gRoomControls
|
||||
_08053070: .4byte gScreen
|
||||
_08053074: .4byte gUnk_020342CC
|
||||
_08053078: .4byte gUnk_0811E214
|
||||
_0805307C: .4byte gUnk_0810246C
|
||||
_08053080: .4byte gUnk_08107988
|
||||
_08053084: .4byte gUnk_0810309C
|
||||
_08053078: .4byte gAreaRoomHeaders
|
||||
_0805307C: .4byte gAreaTilesets
|
||||
_08053080: .4byte gAreaRoomMaps
|
||||
_08053084: .4byte gAreaMetatiles
|
||||
_08053088: .4byte gUnk_080B755C
|
||||
|
||||
thumb_func_start sub_0805308C
|
||||
@@ -1258,7 +1258,7 @@ sub_080530B0: @ 0x080530B0
|
||||
ldr r0, _080530C0 @ =gUnk_080FCAF8
|
||||
ldr r1, _080530C4 @ =gUnk_030010EC
|
||||
movs r2, #0x20
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_080530C0: .4byte gUnk_080FCAF8
|
||||
@@ -1431,7 +1431,7 @@ sub_080531F8: @ 0x080531F8
|
||||
ldr r1, _08053248 @ =gUnk_02002AC8
|
||||
adds r0, r5, #0
|
||||
movs r2, #0x20
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
bl CheckIsDungeon
|
||||
cmp r0, #0
|
||||
beq _08053238
|
||||
@@ -1483,7 +1483,7 @@ sub_08053250: @ 0x08053250
|
||||
adds r0, #0xc
|
||||
ldr r1, _08053298 @ =gUnk_02002AC8
|
||||
movs r2, #0x20
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0805328C: .4byte gScreenTransition
|
||||
@@ -1533,7 +1533,7 @@ _080532E0:
|
||||
|
||||
thumb_func_start sub_080532E4
|
||||
sub_080532E4: @ 0x080532E4
|
||||
ldr r0, _08053318 @ =gUnk_0811E214
|
||||
ldr r0, _08053318 @ =gAreaRoomHeaders
|
||||
movs r1, #0xb0
|
||||
lsls r1, r1, #1
|
||||
adds r0, r0, r1
|
||||
@@ -1560,7 +1560,7 @@ sub_080532E4: @ 0x080532E4
|
||||
strh r0, [r1, #0x1e]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_08053318: .4byte gUnk_0811E214
|
||||
_08053318: .4byte gAreaRoomHeaders
|
||||
_0805331C: .4byte gScreenTransition
|
||||
|
||||
thumb_func_start sub_08053320
|
||||
|
||||
+1
-1
@@ -32,7 +32,7 @@ _080560E4:
|
||||
lsls r4, r4, #0x12
|
||||
adds r1, r4, #0
|
||||
movs r2, #0x10
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
adds r0, r4, #0
|
||||
bl sub_0807CF10
|
||||
_080560F8:
|
||||
|
||||
+1
-1
@@ -102,7 +102,7 @@ sub_080564EC: @ 0x080564EC
|
||||
ldr r0, _080565A4 @ =gTextBox
|
||||
adds r1, r4, #0
|
||||
movs r2, #0x20
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldrb r0, [r4, #2]
|
||||
cmp r0, #0x63
|
||||
bne _08056520
|
||||
|
||||
+3
-3
@@ -966,7 +966,7 @@ sub_0805F324: @ 0x0805F324
|
||||
adds r7, r1, #0
|
||||
mov r1, sp
|
||||
movs r2, #0x30
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
movs r0, #0
|
||||
str r0, [sp, #0x34]
|
||||
movs r1, #0
|
||||
@@ -1142,7 +1142,7 @@ _0805F486:
|
||||
adds r0, r5, #0
|
||||
adds r1, r4, #0
|
||||
movs r2, #0x18
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
mov r0, sp
|
||||
adds r1, r6, #0
|
||||
bl sub_0805F440
|
||||
@@ -1372,7 +1372,7 @@ _0805F63A:
|
||||
ldr r0, [r4, #8]
|
||||
ldr r1, [r4, #4]
|
||||
adds r2, r5, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldr r0, [r4, #4]
|
||||
adds r0, r0, r5
|
||||
str r0, [r4, #4]
|
||||
|
||||
+1
-1
@@ -542,7 +542,7 @@ _08070BC8:
|
||||
cmp r0, #0
|
||||
bne _08070BE4
|
||||
adds r0, r5, #0
|
||||
bl sub_080A2A64
|
||||
bl CreateWaterTrace
|
||||
_08070BE4:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
|
||||
+4
-4
@@ -3691,14 +3691,14 @@ _08074E54:
|
||||
movs r1, #8
|
||||
movs r2, #0x18
|
||||
rsbs r2, r2, #0
|
||||
bl sub_080A2CFC
|
||||
bl CreateSpeechBubbleExclamationMark
|
||||
b _08074EF0
|
||||
_08074E62:
|
||||
adds r0, r4, #0
|
||||
movs r1, #8
|
||||
movs r2, #0x18
|
||||
rsbs r2, r2, #0
|
||||
bl sub_080A2D0C
|
||||
bl CreateSpeechBubbleQuestionMark
|
||||
b _08074EF0
|
||||
_08074E70:
|
||||
ldrb r0, [r4, #0x18]
|
||||
@@ -4261,7 +4261,7 @@ _08075270:
|
||||
movs r2, #0x1c
|
||||
rsbs r2, r2, #0
|
||||
adds r0, r4, #0
|
||||
bl sub_080A2D1C
|
||||
bl CreateSpeechBubbleSleep
|
||||
str r0, [r4, #0x6c]
|
||||
cmp r0, #0
|
||||
beq _0807528C
|
||||
@@ -4280,7 +4280,7 @@ sub_0807529C: @ 0x0807529C
|
||||
movs r2, #0x20
|
||||
rsbs r2, r2, #0
|
||||
movs r1, #8
|
||||
bl sub_080A2D0C
|
||||
bl CreateSpeechBubbleQuestionMark
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
|
||||
+4
-4
@@ -5117,7 +5117,7 @@ _0807AECC:
|
||||
cmp r0, #0
|
||||
bne _0807AEDE
|
||||
adds r0, r4, #0
|
||||
bl sub_080A2A64
|
||||
bl CreateWaterTrace
|
||||
_0807AEDE:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
@@ -5517,7 +5517,7 @@ sub_0807B1A8: @ 0x0807B1A8
|
||||
cmp r0, #0
|
||||
bne _0807B1D0
|
||||
adds r0, r4, #0
|
||||
bl sub_080A2B80
|
||||
bl CreateSparkle
|
||||
_0807B1D0:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
@@ -5774,7 +5774,7 @@ _0807B3BC: .4byte gUnk_080B37A0
|
||||
_0807B3C0: .4byte gUnk_02019EE0
|
||||
_0807B3C4:
|
||||
lsls r1, r1, #1
|
||||
ldr r0, _0807B400 @ =gUnk_02002F00
|
||||
ldr r0, _0807B400 @ =gMapDataTopSpecial
|
||||
_0807B3C8:
|
||||
adds r3, r1, r0
|
||||
mov r1, ip
|
||||
@@ -5805,7 +5805,7 @@ _0807B3C8:
|
||||
strb r0, [r1]
|
||||
b _0807B430
|
||||
.align 2, 0
|
||||
_0807B400: .4byte gUnk_02002F00
|
||||
_0807B400: .4byte gMapDataTopSpecial
|
||||
_0807B404: .4byte 0x00007004
|
||||
_0807B408: .4byte gRoomControls
|
||||
_0807B40C: .4byte gUnk_02000070
|
||||
|
||||
+62
-62
@@ -70,7 +70,7 @@ _0807BA38: .4byte gRoomControls
|
||||
_0807BA3C: .4byte gUnk_02019EE0
|
||||
_0807BA40:
|
||||
lsls r1, r1, #1
|
||||
ldr r0, _0807BA7C @ =gUnk_02002F00
|
||||
ldr r0, _0807BA7C @ =gMapDataTopSpecial
|
||||
_0807BA44:
|
||||
adds r3, r1, r0
|
||||
lsls r0, r7, #3
|
||||
@@ -101,7 +101,7 @@ _0807BA44:
|
||||
_0807BA78:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_0807BA7C: .4byte gUnk_02002F00
|
||||
_0807BA7C: .4byte gMapDataTopSpecial
|
||||
_0807BA80: .4byte 0x00007004
|
||||
_0807BA84: .4byte gRoomControls
|
||||
_0807BA88: .4byte gUnk_02000070
|
||||
@@ -172,7 +172,7 @@ _0807BB14: .4byte gRoomControls
|
||||
_0807BB18: .4byte gUnk_02019EE0
|
||||
_0807BB1C:
|
||||
lsls r1, r1, #1
|
||||
ldr r0, _0807BB58 @ =gUnk_02002F00
|
||||
ldr r0, _0807BB58 @ =gMapDataTopSpecial
|
||||
_0807BB20:
|
||||
adds r3, r1, r0
|
||||
lsls r0, r6, #3
|
||||
@@ -203,7 +203,7 @@ _0807BB20:
|
||||
_0807BB54:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_0807BB58: .4byte gUnk_02002F00
|
||||
_0807BB58: .4byte gMapDataTopSpecial
|
||||
_0807BB5C: .4byte 0x00007004
|
||||
_0807BB60: .4byte gRoomControls
|
||||
_0807BB64: .4byte gUnk_02000070
|
||||
@@ -286,9 +286,9 @@ sub_0807BBE4: @ 0x0807BBE4
|
||||
mov r6, sb
|
||||
mov r5, r8
|
||||
push {r5, r6, r7}
|
||||
ldr r0, _0807BC28 @ =gUnk_0202AEB4
|
||||
ldr r0, _0807BC28 @ =gMetatileTypesBottom
|
||||
mov sl, r0
|
||||
ldr r0, _0807BC2C @ =gUnk_02010654
|
||||
ldr r0, _0807BC2C @ =gMetatileTypesTop
|
||||
mov sb, r0
|
||||
ldr r5, _0807BC30 @ =0xFFFFB000
|
||||
add r5, sl
|
||||
@@ -316,8 +316,8 @@ _0807BC14:
|
||||
add r0, ip
|
||||
b _0807BC4C
|
||||
.align 2, 0
|
||||
_0807BC28: .4byte gUnk_0202AEB4
|
||||
_0807BC2C: .4byte gUnk_02010654
|
||||
_0807BC28: .4byte gMetatileTypesBottom
|
||||
_0807BC2C: .4byte gMetatileTypesTop
|
||||
_0807BC30: .4byte 0xFFFFB000
|
||||
_0807BC34: .4byte 0xFFFFD000
|
||||
_0807BC38: .4byte 0x00003FFF
|
||||
@@ -815,7 +815,7 @@ sub_0807BFD0: @ 0x0807BFD0
|
||||
bl sub_0801B170
|
||||
bl sub_0807BFA8
|
||||
ldr r7, _0807C0B8 @ =0x0000FFFF
|
||||
ldr r6, _0807C0BC @ =gUnk_0202AEB4
|
||||
ldr r6, _0807C0BC @ =gMetatileTypesBottom
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #5
|
||||
mov r8, r0
|
||||
@@ -825,7 +825,7 @@ sub_0807BFD0: @ 0x0807BFD0
|
||||
bl _DmaFill16
|
||||
movs r5, #0
|
||||
strh r5, [r6]
|
||||
ldr r4, _0807C0C0 @ =gUnk_02010654
|
||||
ldr r4, _0807C0C0 @ =gMetatileTypesTop
|
||||
adds r0, r7, #0
|
||||
adds r1, r4, #0
|
||||
mov r2, r8
|
||||
@@ -853,7 +853,7 @@ _0807C01C:
|
||||
lsls r2, r2, #2
|
||||
adds r1, r1, r2
|
||||
movs r2, #0x20
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldr r2, _0807C0D4 @ =gUsedPalettes
|
||||
ldr r0, [r2]
|
||||
movs r1, #0x80
|
||||
@@ -894,7 +894,7 @@ _0807C078:
|
||||
ble _0807C066
|
||||
movs r2, #0x80
|
||||
lsls r2, r2, #5
|
||||
ldr r5, _0807C0C0 @ =gUnk_02010654
|
||||
ldr r5, _0807C0C0 @ =gMetatileTypesTop
|
||||
adds r6, r5, r2
|
||||
ldr r4, _0807C0B8 @ =0x0000FFFF
|
||||
adds r0, r4, #0
|
||||
@@ -922,8 +922,8 @@ _0807C0A8:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_0807C0B8: .4byte 0x0000FFFF
|
||||
_0807C0BC: .4byte gUnk_0202AEB4
|
||||
_0807C0C0: .4byte gUnk_02010654
|
||||
_0807C0BC: .4byte gMetatileTypesBottom
|
||||
_0807C0C0: .4byte gMetatileTypesTop
|
||||
_0807C0C4: .4byte gRoomControls
|
||||
_0807C0C8: .4byte gArea
|
||||
_0807C0CC: .4byte 0x0000085C
|
||||
@@ -943,7 +943,7 @@ sub_0807C0DC: @ 0x0807C0DC
|
||||
movs r0, #0xfc
|
||||
ands r0, r1
|
||||
strb r0, [r7, #0xf]
|
||||
ldr r5, _0807C15C @ =gUnk_0200B654
|
||||
ldr r5, _0807C15C @ =gMapDataTop
|
||||
movs r6, #0x80
|
||||
lsls r6, r6, #6
|
||||
adds r0, r5, #0
|
||||
@@ -958,7 +958,7 @@ sub_0807C0DC: @ 0x0807C0DC
|
||||
lsls r4, r4, #8
|
||||
adds r1, r4, #0
|
||||
bl _DmaZero
|
||||
ldr r0, _0807C164 @ =gUnk_02002F00
|
||||
ldr r0, _0807C164 @ =gMapDataTopSpecial
|
||||
adds r1, r4, #0
|
||||
bl _DmaZero
|
||||
ldr r0, _0807C168 @ =gArea
|
||||
@@ -989,9 +989,9 @@ sub_0807C0DC: @ 0x0807C0DC
|
||||
b _0807C184
|
||||
.align 2, 0
|
||||
_0807C158: .4byte gRoomControls
|
||||
_0807C15C: .4byte gUnk_0200B654
|
||||
_0807C15C: .4byte gMapDataTop
|
||||
_0807C160: .4byte gUnk_02019EE0
|
||||
_0807C164: .4byte gUnk_02002F00
|
||||
_0807C164: .4byte gMapDataTopSpecial
|
||||
_0807C168: .4byte gArea
|
||||
_0807C16C: .4byte 0x0000085C
|
||||
_0807C170: .4byte gUnk_02025EB0
|
||||
@@ -1008,29 +1008,29 @@ _0807C184:
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0
|
||||
bne _0807C1BC
|
||||
ldr r0, _0807C1B4 @ =gUnk_02025EB4
|
||||
ldr r0, _0807C1B4 @ =gMapDataBottom
|
||||
movs r2, #0xc0
|
||||
lsls r2, r2, #6
|
||||
adds r1, r0, r2
|
||||
movs r4, #0x80
|
||||
lsls r4, r4, #6
|
||||
adds r2, r4, #0
|
||||
bl sub_0801D66C
|
||||
ldr r0, _0807C1B8 @ =gUnk_0200B654
|
||||
bl _DmaCopy
|
||||
ldr r0, _0807C1B8 @ =gMapDataTop
|
||||
movs r3, #0xc0
|
||||
lsls r3, r3, #6
|
||||
adds r1, r0, r3
|
||||
adds r2, r4, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
b _0807C26C
|
||||
.align 2, 0
|
||||
_0807C1B0: .4byte gScreenTransition
|
||||
_0807C1B4: .4byte gUnk_02025EB4
|
||||
_0807C1B8: .4byte gUnk_0200B654
|
||||
_0807C1B4: .4byte gMapDataBottom
|
||||
_0807C1B8: .4byte gMapDataTop
|
||||
_0807C1BC:
|
||||
cmp r0, #2
|
||||
bne _0807C26C
|
||||
ldr r4, _0807C278 @ =gUnk_02025EB4
|
||||
ldr r4, _0807C278 @ =gMapDataBottom
|
||||
movs r0, #0xb0
|
||||
lsls r0, r0, #8
|
||||
adds r0, r0, r4
|
||||
@@ -1040,35 +1040,35 @@ _0807C1BC:
|
||||
adds r0, r4, #0
|
||||
mov r1, r8
|
||||
adds r2, r5, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
movs r1, #0xc0
|
||||
lsls r1, r1, #6
|
||||
adds r6, r4, r1
|
||||
adds r0, r6, #0
|
||||
adds r1, r4, #0
|
||||
adds r2, r5, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
mov r0, r8
|
||||
adds r1, r6, #0
|
||||
adds r2, r5, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
adds r6, r4, r5
|
||||
adds r0, r6, #0
|
||||
mov r1, r8
|
||||
adds r2, r5, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
movs r2, #0x80
|
||||
lsls r2, r2, #7
|
||||
adds r4, r4, r2
|
||||
adds r0, r4, #0
|
||||
adds r1, r6, #0
|
||||
adds r2, r5, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
mov r0, r8
|
||||
adds r1, r4, #0
|
||||
adds r2, r5, #0
|
||||
bl sub_0801D66C
|
||||
ldr r4, _0807C27C @ =gUnk_0200B654
|
||||
bl _DmaCopy
|
||||
ldr r4, _0807C27C @ =gMapDataTop
|
||||
movs r3, #0xb0
|
||||
lsls r3, r3, #8
|
||||
adds r3, r3, r4
|
||||
@@ -1076,34 +1076,34 @@ _0807C1BC:
|
||||
adds r0, r4, #0
|
||||
mov r1, r8
|
||||
adds r2, r5, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #6
|
||||
adds r6, r4, r0
|
||||
adds r0, r6, #0
|
||||
adds r1, r4, #0
|
||||
adds r2, r5, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
mov r0, r8
|
||||
adds r1, r6, #0
|
||||
adds r2, r5, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
adds r6, r4, r5
|
||||
adds r0, r6, #0
|
||||
mov r1, r8
|
||||
adds r2, r5, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
movs r1, #0x80
|
||||
lsls r1, r1, #7
|
||||
adds r4, r4, r1
|
||||
adds r0, r4, #0
|
||||
adds r1, r6, #0
|
||||
adds r2, r5, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
mov r0, r8
|
||||
adds r1, r4, #0
|
||||
adds r2, r5, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
_0807C26C:
|
||||
mov r2, sb
|
||||
cmp r2, #0
|
||||
@@ -1111,8 +1111,8 @@ _0807C26C:
|
||||
bl sub_0807BBE4
|
||||
b _0807C2A0
|
||||
.align 2, 0
|
||||
_0807C278: .4byte gUnk_02025EB4
|
||||
_0807C27C: .4byte gUnk_0200B654
|
||||
_0807C278: .4byte gMapDataBottom
|
||||
_0807C27C: .4byte gMapDataTop
|
||||
_0807C280:
|
||||
ldr r0, _0807C2CC @ =gUnk_02027EB4
|
||||
ldrh r1, [r7, #0x1e]
|
||||
@@ -1141,7 +1141,7 @@ _0807C2A0:
|
||||
ldr r0, _0807C2DC @ =gUnk_02019EE0
|
||||
adds r1, r4, #0
|
||||
bl sub_0801AB08
|
||||
ldr r0, _0807C2E0 @ =gUnk_02002F00
|
||||
ldr r0, _0807C2E0 @ =gMapDataTopSpecial
|
||||
adds r1, r5, #0
|
||||
bl sub_0801AB08
|
||||
b _0807C326
|
||||
@@ -1151,7 +1151,7 @@ _0807C2D0: .4byte gUnk_0200D654
|
||||
_0807C2D4: .4byte gUnk_02025EB0
|
||||
_0807C2D8: .4byte gUnk_0200B650
|
||||
_0807C2DC: .4byte gUnk_02019EE0
|
||||
_0807C2E0: .4byte gUnk_02002F00
|
||||
_0807C2E0: .4byte gMapDataTopSpecial
|
||||
_0807C2E4:
|
||||
ldr r4, _0807C34C @ =gUnk_02019EE0
|
||||
movs r0, #0x80
|
||||
@@ -1161,19 +1161,19 @@ _0807C2E4:
|
||||
adds r0, r4, #0
|
||||
adds r1, r5, #0
|
||||
adds r2, r6, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
adds r0, r4, #0
|
||||
adds r1, r5, #0
|
||||
bl sub_0807C5F4
|
||||
adds r0, r5, #0
|
||||
adds r1, r6, #0
|
||||
bl _DmaZero
|
||||
ldr r4, _0807C350 @ =gUnk_02002F00
|
||||
ldr r4, _0807C350 @ =gMapDataTopSpecial
|
||||
adds r5, r4, r6
|
||||
adds r0, r4, #0
|
||||
adds r1, r5, #0
|
||||
adds r2, r6, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
adds r0, r4, #0
|
||||
adds r1, r5, #0
|
||||
bl sub_0807C5F4
|
||||
@@ -1204,7 +1204,7 @@ _0807C33A:
|
||||
mov pc, r0
|
||||
.align 2, 0
|
||||
_0807C34C: .4byte gUnk_02019EE0
|
||||
_0807C350: .4byte gUnk_02002F00
|
||||
_0807C350: .4byte gMapDataTopSpecial
|
||||
_0807C354: .4byte _0807C358
|
||||
_0807C358: @ jump table
|
||||
.4byte _0807C3BC @ case 0
|
||||
@@ -1323,8 +1323,8 @@ sub_0807C460: @ 0x0807C460
|
||||
mov r5, r8
|
||||
push {r5, r6, r7}
|
||||
sub sp, #8
|
||||
ldr r7, _0807C4E8 @ =gUnk_02025EB4
|
||||
ldr r6, _0807C4EC @ =gUnk_0200B654
|
||||
ldr r7, _0807C4E8 @ =gMapDataBottom
|
||||
ldr r6, _0807C4EC @ =gMapDataTop
|
||||
ldr r0, _0807C4F0 @ =gRoomControls
|
||||
ldrh r1, [r0, #0x1e]
|
||||
lsrs r3, r1, #4
|
||||
@@ -1390,8 +1390,8 @@ _0807C4DC:
|
||||
mov sl, r5
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_0807C4E8: .4byte gUnk_02025EB4
|
||||
_0807C4EC: .4byte gUnk_0200B654
|
||||
_0807C4E8: .4byte gMapDataBottom
|
||||
_0807C4EC: .4byte gMapDataTop
|
||||
_0807C4F0: .4byte gRoomControls
|
||||
_0807C4F4: .4byte 0x00003FFF
|
||||
|
||||
@@ -1407,7 +1407,7 @@ sub_0807C4F8: @ 0x0807C4F8
|
||||
lsls r4, r4, #8
|
||||
adds r1, r4, #0
|
||||
bl _DmaZero
|
||||
ldr r0, _0807C59C @ =gUnk_02002F00
|
||||
ldr r0, _0807C59C @ =gMapDataTopSpecial
|
||||
adds r1, r4, #0
|
||||
bl _DmaZero
|
||||
ldr r5, _0807C5A0 @ =gUnk_02022830
|
||||
@@ -1423,7 +1423,7 @@ _0807C524:
|
||||
ldr r0, _0807C598 @ =gUnk_02019EE0
|
||||
cmp r1, r0
|
||||
beq _0807C534
|
||||
ldr r0, _0807C59C @ =gUnk_02002F00
|
||||
ldr r0, _0807C59C @ =gMapDataTopSpecial
|
||||
cmp r1, r0
|
||||
bne _0807C54A
|
||||
_0807C534:
|
||||
@@ -1449,19 +1449,19 @@ _0807C54A:
|
||||
adds r0, r4, #0
|
||||
adds r1, r5, #0
|
||||
adds r2, r6, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
adds r0, r4, #0
|
||||
adds r1, r5, #0
|
||||
bl sub_0807C5F4
|
||||
adds r0, r5, #0
|
||||
adds r1, r6, #0
|
||||
bl _DmaZero
|
||||
ldr r4, _0807C59C @ =gUnk_02002F00
|
||||
ldr r4, _0807C59C @ =gMapDataTopSpecial
|
||||
adds r5, r4, r6
|
||||
adds r0, r4, #0
|
||||
adds r1, r5, #0
|
||||
adds r2, r6, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
adds r0, r4, #0
|
||||
adds r1, r5, #0
|
||||
bl sub_0807C5F4
|
||||
@@ -1473,7 +1473,7 @@ _0807C592:
|
||||
.align 2, 0
|
||||
_0807C594: .4byte gRoomControls
|
||||
_0807C598: .4byte gUnk_02019EE0
|
||||
_0807C59C: .4byte gUnk_02002F00
|
||||
_0807C59C: .4byte gMapDataTopSpecial
|
||||
_0807C5A0: .4byte gUnk_02022830
|
||||
_0807C5A4: .4byte gArea
|
||||
_0807C5A8: .4byte 0x0000085C
|
||||
@@ -1863,25 +1863,25 @@ sub_0807C860: @ 0x0807C860
|
||||
adds r0, #0x2d
|
||||
movs r1, #1
|
||||
strb r1, [r0]
|
||||
ldr r0, _0807C890 @ =gUnk_02025EB4
|
||||
ldr r0, _0807C890 @ =gMapDataBottom
|
||||
movs r2, #0xc0
|
||||
lsls r2, r2, #6
|
||||
adds r1, r0, r2
|
||||
movs r4, #0x80
|
||||
lsls r4, r4, #6
|
||||
adds r2, r4, #0
|
||||
bl sub_0801D66C
|
||||
ldr r0, _0807C894 @ =gUnk_0200B654
|
||||
bl _DmaCopy
|
||||
ldr r0, _0807C894 @ =gMapDataTop
|
||||
movs r2, #0xc0
|
||||
lsls r2, r2, #6
|
||||
adds r1, r0, r2
|
||||
adds r2, r4, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0807C88C: .4byte gScreenTransition
|
||||
_0807C890: .4byte gUnk_02025EB4
|
||||
_0807C894: .4byte gUnk_0200B654
|
||||
_0807C890: .4byte gMapDataBottom
|
||||
_0807C894: .4byte gMapDataTop
|
||||
|
||||
thumb_func_start sub_0807C898
|
||||
sub_0807C898: @ 0x0807C898
|
||||
|
||||
+24
-24
@@ -1806,14 +1806,14 @@ _0807DC82:
|
||||
movs r1, #8
|
||||
movs r2, #0x18
|
||||
rsbs r2, r2, #0
|
||||
bl sub_080A2CFC
|
||||
bl CreateSpeechBubbleExclamationMark
|
||||
b _0807DD40
|
||||
_0807DC90:
|
||||
adds r0, r5, #0
|
||||
movs r1, #8
|
||||
movs r2, #0x18
|
||||
rsbs r2, r2, #0
|
||||
bl sub_080A2D0C
|
||||
bl CreateSpeechBubbleQuestionMark
|
||||
b _0807DD40
|
||||
_0807DC9E:
|
||||
adds r0, r6, #0
|
||||
@@ -5183,7 +5183,7 @@ sub_0807F3F8: @ 0x0807F3F8
|
||||
movs r2, #0x18
|
||||
rsbs r2, r2, #0
|
||||
movs r1, #8
|
||||
bl sub_080A2CFC
|
||||
bl CreateSpeechBubbleExclamationMark
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0807F408: .4byte gPlayerEntity
|
||||
@@ -5195,7 +5195,7 @@ sub_0807F40C: @ 0x0807F40C
|
||||
movs r2, #0x18
|
||||
rsbs r2, r2, #0
|
||||
movs r1, #8
|
||||
bl sub_080A2D0C
|
||||
bl CreateSpeechBubbleQuestionMark
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0807F41C: .4byte gPlayerEntity
|
||||
@@ -5936,7 +5936,7 @@ sub_0807F93C: @ 0x0807F93C
|
||||
movs r3, #0xff
|
||||
ands r1, r3
|
||||
ands r2, r3
|
||||
bl sub_080A2D1C
|
||||
bl CreateSpeechBubbleSleep
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
@@ -6843,14 +6843,14 @@ sub_0807FFE4: @ 0x0807FFE4
|
||||
ldr r0, [r0]
|
||||
ldr r0, [r0]
|
||||
bl sub_080197D4
|
||||
ldr r4, _08080038 @ =gUnk_0200B654
|
||||
ldr r4, _08080038 @ =gMapDataTop
|
||||
ldrh r1, [r5, #0x1e]
|
||||
lsrs r1, r1, #4
|
||||
ldrh r2, [r5, #0x20]
|
||||
lsrs r2, r2, #4
|
||||
adds r0, r4, #0
|
||||
bl sub_0807C8B0
|
||||
ldr r0, _0808003C @ =gUnk_02002F00
|
||||
ldr r0, _0808003C @ =gMapDataTopSpecial
|
||||
subs r4, #4
|
||||
adds r1, r4, #0
|
||||
bl sub_0801AB08
|
||||
@@ -6859,8 +6859,8 @@ sub_0807FFE4: @ 0x0807FFE4
|
||||
_0808002C: .4byte gUnk_0200B640
|
||||
_08080030: .4byte gUnk_08109194
|
||||
_08080034: .4byte gUnk_03004030
|
||||
_08080038: .4byte gUnk_0200B654
|
||||
_0808003C: .4byte gUnk_02002F00
|
||||
_08080038: .4byte gMapDataTop
|
||||
_0808003C: .4byte gMapDataTopSpecial
|
||||
|
||||
thumb_func_start sub_08080040
|
||||
sub_08080040: @ 0x08080040
|
||||
@@ -6970,7 +6970,7 @@ sub_08080108: @ 0x08080108
|
||||
push {r4, r5, r6, lr}
|
||||
movs r1, #4
|
||||
strb r1, [r0, #3]
|
||||
ldr r5, _08080178 @ =gUnk_02025EB4
|
||||
ldr r5, _08080178 @ =gMapDataBottom
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #6
|
||||
adds r1, r5, r0
|
||||
@@ -6978,14 +6978,14 @@ sub_08080108: @ 0x08080108
|
||||
lsls r6, r6, #6
|
||||
adds r0, r5, #0
|
||||
adds r2, r6, #0
|
||||
bl sub_0801D66C
|
||||
ldr r4, _0808017C @ =gUnk_0200B654
|
||||
bl _DmaCopy
|
||||
ldr r4, _0808017C @ =gMapDataTop
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #6
|
||||
adds r1, r4, r0
|
||||
adds r0, r4, #0
|
||||
adds r2, r6, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
bl sub_08080368
|
||||
ldr r1, _08080180 @ =gUnk_02034480
|
||||
ldr r0, _08080184 @ =gUnk_0200B640
|
||||
@@ -6995,7 +6995,7 @@ sub_08080108: @ 0x08080108
|
||||
ldr r1, _0808018C @ =gUnk_020246B0
|
||||
movs r2, #0xc0
|
||||
lsls r2, r2, #5
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
subs r5, #4
|
||||
adds r0, r5, #0
|
||||
bl sub_08080B60
|
||||
@@ -7008,19 +7008,19 @@ sub_08080108: @ 0x08080108
|
||||
ldr r0, _08080190 @ =gUnk_02019EE0
|
||||
adds r1, r5, #0
|
||||
bl sub_0801AB08
|
||||
ldr r0, _08080194 @ =gUnk_02002F00
|
||||
ldr r0, _08080194 @ =gMapDataTopSpecial
|
||||
adds r1, r4, #0
|
||||
bl sub_0801AB08
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_08080178: .4byte gUnk_02025EB4
|
||||
_0808017C: .4byte gUnk_0200B654
|
||||
_08080178: .4byte gMapDataBottom
|
||||
_0808017C: .4byte gMapDataTop
|
||||
_08080180: .4byte gUnk_02034480
|
||||
_08080184: .4byte gUnk_0200B640
|
||||
_08080188: .4byte gUnk_02022830
|
||||
_0808018C: .4byte gUnk_020246B0
|
||||
_08080190: .4byte gUnk_02019EE0
|
||||
_08080194: .4byte gUnk_02002F00
|
||||
_08080194: .4byte gMapDataTopSpecial
|
||||
|
||||
thumb_func_start sub_08080198
|
||||
sub_08080198: @ 0x08080198
|
||||
@@ -7169,11 +7169,11 @@ _080802A2:
|
||||
ldr r0, [sp]
|
||||
cmp r8, r0
|
||||
bhs _08080328
|
||||
ldr r4, _0808034C @ =gUnk_0200B654
|
||||
ldr r4, _0808034C @ =gMapDataTop
|
||||
add r4, sb
|
||||
ldr r7, _08080350 @ =gUnk_0200E654
|
||||
add r7, sb
|
||||
ldr r3, _08080354 @ =gUnk_02025EB4
|
||||
ldr r3, _08080354 @ =gMapDataBottom
|
||||
add r3, sb
|
||||
ldr r6, _08080358 @ =gUnk_02028EB4
|
||||
add r6, sb
|
||||
@@ -7253,9 +7253,9 @@ _08080336:
|
||||
.align 2, 0
|
||||
_08080344: .4byte gUnk_02022830
|
||||
_08080348: .4byte gRoomControls
|
||||
_0808034C: .4byte gUnk_0200B654
|
||||
_0808034C: .4byte gMapDataTop
|
||||
_08080350: .4byte gUnk_0200E654
|
||||
_08080354: .4byte gUnk_02025EB4
|
||||
_08080354: .4byte gMapDataBottom
|
||||
_08080358: .4byte gUnk_02028EB4
|
||||
_0808035C: .4byte 0x00003FFF
|
||||
_08080360: .4byte 0x000005FF
|
||||
@@ -7673,7 +7673,7 @@ sub_08080668: @ 0x08080668
|
||||
lsls r4, r4, #8
|
||||
adds r1, r4, #0
|
||||
bl _DmaZero
|
||||
ldr r0, _080806B8 @ =gUnk_02002F00
|
||||
ldr r0, _080806B8 @ =gMapDataTopSpecial
|
||||
adds r1, r4, #0
|
||||
bl _DmaZero
|
||||
pop {r4, r5, pc}
|
||||
@@ -7683,7 +7683,7 @@ _080806A8: .4byte gUnk_03004030
|
||||
_080806AC: .4byte 0x0000FFFF
|
||||
_080806B0: .4byte gUnk_02034480
|
||||
_080806B4: .4byte gUnk_02019EE0
|
||||
_080806B8: .4byte gUnk_02002F00
|
||||
_080806B8: .4byte gMapDataTopSpecial
|
||||
|
||||
thumb_func_start sub_080806BC
|
||||
sub_080806BC: @ 0x080806BC
|
||||
|
||||
Executable
+436
@@ -0,0 +1,436 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_08080A40
|
||||
sub_08080A40: @ 0x08080A40
|
||||
push {r4, r5, r6, r7, lr}
|
||||
ldr r7, _08080A70 @ =gRoomControls
|
||||
ldr r1, [r7, #0x30]
|
||||
ldr r0, _08080A74 @ =gPlayerEntity
|
||||
adds r2, r7, #0
|
||||
cmp r1, r0
|
||||
beq _08080A50
|
||||
b _08080B5C
|
||||
_08080A50:
|
||||
ldr r0, _08080A78 @ =gPlayerState
|
||||
ldrb r0, [r0, #2]
|
||||
cmp r0, #0
|
||||
beq _08080A5A
|
||||
b _08080B5C
|
||||
_08080A5A:
|
||||
ldrb r0, [r1, #0xc]
|
||||
subs r0, #1
|
||||
cmp r0, #0x1c
|
||||
bls _08080A64
|
||||
b _08080B5C
|
||||
_08080A64:
|
||||
lsls r0, r0, #2
|
||||
ldr r1, _08080A7C @ =_08080A80
|
||||
adds r0, r0, r1
|
||||
ldr r0, [r0]
|
||||
mov pc, r0
|
||||
.align 2, 0
|
||||
_08080A70: .4byte gRoomControls
|
||||
_08080A74: .4byte gPlayerEntity
|
||||
_08080A78: .4byte gPlayerState
|
||||
_08080A7C: .4byte _08080A80
|
||||
_08080A80: @ jump table
|
||||
.4byte _08080AFA @ case 0
|
||||
.4byte _08080B5C @ case 1
|
||||
.4byte _08080B5C @ case 2
|
||||
.4byte _08080B5C @ case 3
|
||||
.4byte _08080B5C @ case 4
|
||||
.4byte _08080B5C @ case 5
|
||||
.4byte _08080B5C @ case 6
|
||||
.4byte _08080B5C @ case 7
|
||||
.4byte _08080AFA @ case 8
|
||||
.4byte _08080B5C @ case 9
|
||||
.4byte _08080B5C @ case 10
|
||||
.4byte _08080B5C @ case 11
|
||||
.4byte _08080B5C @ case 12
|
||||
.4byte _08080B5C @ case 13
|
||||
.4byte _08080AF4 @ case 14
|
||||
.4byte _08080B5C @ case 15
|
||||
.4byte _08080B5C @ case 16
|
||||
.4byte _08080B5C @ case 17
|
||||
.4byte _08080B5C @ case 18
|
||||
.4byte _08080B5C @ case 19
|
||||
.4byte _08080B5C @ case 20
|
||||
.4byte _08080B5C @ case 21
|
||||
.4byte _08080B5C @ case 22
|
||||
.4byte _08080AFA @ case 23
|
||||
.4byte _08080B5C @ case 24
|
||||
.4byte _08080B5C @ case 25
|
||||
.4byte _08080B5C @ case 26
|
||||
.4byte _08080B5C @ case 27
|
||||
.4byte _08080AFA @ case 28
|
||||
_08080AF4:
|
||||
ldrb r0, [r2, #4]
|
||||
cmp r0, #0x48
|
||||
beq _08080B5C
|
||||
_08080AFA:
|
||||
ldr r3, [r7, #0x30]
|
||||
movs r0, #0x32
|
||||
ldrsh r1, [r3, r0]
|
||||
ldrh r0, [r7, #8]
|
||||
subs r6, r1, r0
|
||||
movs r0, #0x2e
|
||||
ldrsh r1, [r3, r0]
|
||||
ldrh r0, [r7, #6]
|
||||
subs r5, r1, r0
|
||||
asrs r0, r5, #4
|
||||
movs r2, #0x3f
|
||||
ands r0, r2
|
||||
asrs r1, r6, #4
|
||||
ands r1, r2
|
||||
lsls r1, r1, #6
|
||||
orrs r0, r1
|
||||
adds r3, #0x38
|
||||
ldrb r1, [r3]
|
||||
bl sub_080002C8
|
||||
adds r4, r0, #0
|
||||
ldr r0, [r7, #0x30]
|
||||
adds r0, #0x38
|
||||
ldrb r2, [r0]
|
||||
adds r0, r5, #0
|
||||
adds r1, r6, #0
|
||||
bl sub_080002A8
|
||||
ldr r1, _08080B48 @ =gScreenTransition
|
||||
strh r0, [r1, #0xa]
|
||||
cmp r4, #0x3f
|
||||
beq _08080B50
|
||||
cmp r4, #0x3f
|
||||
bhi _08080B4C
|
||||
cmp r4, #0x29
|
||||
bhi _08080B5C
|
||||
cmp r4, #0x28
|
||||
blo _08080B5C
|
||||
b _08080B50
|
||||
.align 2, 0
|
||||
_08080B48: .4byte gScreenTransition
|
||||
_08080B4C:
|
||||
cmp r4, #0xf1
|
||||
bne _08080B5C
|
||||
_08080B50:
|
||||
adds r0, r5, #0
|
||||
adds r1, r6, #0
|
||||
movs r2, #0xff
|
||||
movs r3, #0xa
|
||||
bl sub_080806BC
|
||||
_08080B5C:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08080B60
|
||||
sub_08080B60: @ 0x08080B60
|
||||
push {r4, r5, r6, r7, lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
ldr r1, _08080B90 @ =0x00005004
|
||||
adds r4, r0, r1
|
||||
ldr r2, _08080B94 @ =gUnk_080B37A0
|
||||
mov r8, r2
|
||||
movs r3, #0
|
||||
ldr r1, _08080B98 @ =0x00003FFF
|
||||
mov ip, r1
|
||||
ldr r7, _08080B9C @ =gUnk_080B7910
|
||||
ldr r2, _08080BA0 @ =0x0000B004
|
||||
adds r1, r0, r2
|
||||
adds r2, r0, #4
|
||||
ldr r6, _08080BA4 @ =0xFFFFC000
|
||||
ldr r5, _08080BA8 @ =0x00000FFF
|
||||
_08080B80:
|
||||
ldrh r0, [r2]
|
||||
cmp r0, ip
|
||||
bhi _08080BAC
|
||||
lsls r0, r0, #1
|
||||
adds r0, r0, r4
|
||||
ldrh r0, [r0]
|
||||
add r0, r8
|
||||
b _08080BB0
|
||||
.align 2, 0
|
||||
_08080B90: .4byte 0x00005004
|
||||
_08080B94: .4byte gUnk_080B37A0
|
||||
_08080B98: .4byte 0x00003FFF
|
||||
_08080B9C: .4byte gUnk_080B7910
|
||||
_08080BA0: .4byte 0x0000B004
|
||||
_08080BA4: .4byte 0xFFFFC000
|
||||
_08080BA8: .4byte 0x00000FFF
|
||||
_08080BAC:
|
||||
adds r0, r0, r6
|
||||
adds r0, r0, r7
|
||||
_08080BB0:
|
||||
ldrb r0, [r0]
|
||||
strb r0, [r1]
|
||||
adds r1, #1
|
||||
adds r2, #2
|
||||
adds r3, #1
|
||||
cmp r3, r5
|
||||
bls _08080B80
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
|
||||
thumb_func_start sub_08080BC4
|
||||
sub_08080BC4: @ 0x08080BC4
|
||||
push {r4, r5, r6, lr}
|
||||
ldr r3, _08080C40 @ =gRoomControls
|
||||
movs r0, #0xa
|
||||
ldrsh r1, [r3, r0]
|
||||
ldrh r0, [r3, #6]
|
||||
subs r5, r1, r0
|
||||
movs r2, #0xf
|
||||
ands r5, r2
|
||||
movs r1, #0xc
|
||||
ldrsh r0, [r3, r1]
|
||||
ldrh r1, [r3, #8]
|
||||
subs r0, r0, r1
|
||||
ands r0, r2
|
||||
adds r6, r0, #0
|
||||
adds r6, #8
|
||||
ldrh r2, [r3, #0x16]
|
||||
adds r4, r2, #0
|
||||
cmp r4, #0
|
||||
beq _08080C50
|
||||
subs r2, #1
|
||||
strh r2, [r3, #0x16]
|
||||
ldrb r0, [r3, #0x14]
|
||||
lsls r0, r0, #4
|
||||
movs r1, #0xe
|
||||
ands r2, r1
|
||||
adds r0, r0, r2
|
||||
ldr r1, _08080C44 @ =gUnk_080169A4
|
||||
adds r2, r0, r1
|
||||
ldr r4, _08080C48 @ =gUnk_02025EB0
|
||||
ldr r1, [r4]
|
||||
cmp r1, #0
|
||||
beq _08080C16
|
||||
movs r0, #0
|
||||
ldrsb r0, [r2, r0]
|
||||
adds r0, r0, r5
|
||||
strh r0, [r1, #2]
|
||||
ldr r1, [r4]
|
||||
movs r0, #1
|
||||
ldrsb r0, [r2, r0]
|
||||
adds r0, r0, r6
|
||||
strh r0, [r1, #4]
|
||||
_08080C16:
|
||||
ldr r4, _08080C4C @ =gUnk_0200B650
|
||||
ldr r1, [r4]
|
||||
cmp r1, #0
|
||||
beq _08080C30
|
||||
movs r0, #0
|
||||
ldrsb r0, [r2, r0]
|
||||
adds r0, r0, r5
|
||||
strh r0, [r1, #2]
|
||||
ldr r1, [r4]
|
||||
movs r0, #1
|
||||
ldrsb r0, [r2, r0]
|
||||
adds r0, r0, r6
|
||||
strh r0, [r1, #4]
|
||||
_08080C30:
|
||||
ldrb r1, [r2]
|
||||
adds r0, r3, #0
|
||||
adds r0, #0x24
|
||||
strb r1, [r0]
|
||||
ldrb r1, [r2, #1]
|
||||
adds r0, #1
|
||||
strb r1, [r0]
|
||||
b _08080C76
|
||||
.align 2, 0
|
||||
_08080C40: .4byte gRoomControls
|
||||
_08080C44: .4byte gUnk_080169A4
|
||||
_08080C48: .4byte gUnk_02025EB0
|
||||
_08080C4C: .4byte gUnk_0200B650
|
||||
_08080C50:
|
||||
ldr r0, _08080C78 @ =gUnk_02025EB0
|
||||
ldr r1, [r0]
|
||||
cmp r1, #0
|
||||
beq _08080C5E
|
||||
strh r5, [r1, #2]
|
||||
ldr r0, [r0]
|
||||
strh r6, [r0, #4]
|
||||
_08080C5E:
|
||||
ldr r0, _08080C7C @ =gUnk_0200B650
|
||||
ldr r1, [r0]
|
||||
cmp r1, #0
|
||||
beq _08080C6C
|
||||
strh r5, [r1, #2]
|
||||
ldr r0, [r0]
|
||||
strh r6, [r0, #4]
|
||||
_08080C6C:
|
||||
adds r0, r3, #0
|
||||
adds r0, #0x24
|
||||
strb r4, [r0]
|
||||
adds r0, #1
|
||||
strb r4, [r0]
|
||||
_08080C76:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_08080C78: .4byte gUnk_02025EB0
|
||||
_08080C7C: .4byte gUnk_0200B650
|
||||
|
||||
thumb_func_start sub_08080C80
|
||||
sub_08080C80: @ 0x08080C80
|
||||
push {r4, lr}
|
||||
bl sub_080197D4
|
||||
ldr r0, _08080CA8 @ =gMapDataBottom
|
||||
ldr r4, _08080CAC @ =gRoomControls
|
||||
ldrh r1, [r4, #0x1e]
|
||||
lsrs r1, r1, #4
|
||||
ldrh r2, [r4, #0x20]
|
||||
lsrs r2, r2, #4
|
||||
bl sub_0807C8B0
|
||||
ldr r0, _08080CB0 @ =gMapDataTop
|
||||
ldrh r1, [r4, #0x1e]
|
||||
lsrs r1, r1, #4
|
||||
ldrh r2, [r4, #0x20]
|
||||
lsrs r2, r2, #4
|
||||
bl sub_0807C8B0
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_08080CA8: .4byte gMapDataBottom
|
||||
_08080CAC: .4byte gRoomControls
|
||||
_08080CB0: .4byte gMapDataTop
|
||||
|
||||
thumb_func_start sub_08080CB4
|
||||
sub_08080CB4: @ 0x08080CB4
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x58
|
||||
ldrb r0, [r4, #0xa]
|
||||
ldrb r1, [r1]
|
||||
cmp r0, r1
|
||||
beq _08080CF0
|
||||
adds r1, r0, #0
|
||||
adds r0, r4, #0
|
||||
bl InitAnimationForceUpdate
|
||||
ldrb r0, [r4, #0xa]
|
||||
cmp r0, #0x5c
|
||||
beq _08080CD4
|
||||
b _08080E00
|
||||
_08080CD4:
|
||||
ldrb r0, [r4, #0xb]
|
||||
lsls r0, r0, #3
|
||||
ldr r1, _08080CEC @ =gUnk_080C9CBC
|
||||
adds r0, r0, r1
|
||||
ldrb r0, [r0]
|
||||
movs r1, #0xf
|
||||
ands r1, r0
|
||||
lsls r0, r0, #4
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x1a]
|
||||
b _08080E00
|
||||
.align 2, 0
|
||||
_08080CEC: .4byte gUnk_080C9CBC
|
||||
_08080CF0:
|
||||
adds r0, r4, #0
|
||||
bl UpdateAnimationSingleFrame
|
||||
ldrb r0, [r4, #0x18]
|
||||
lsls r0, r0, #0x1e
|
||||
cmp r0, #0
|
||||
bne _08080D00
|
||||
b _08080E00
|
||||
_08080D00:
|
||||
ldrb r0, [r4, #0xa]
|
||||
subs r0, #0x40
|
||||
cmp r0, #0x22
|
||||
bhi _08080E00
|
||||
lsls r0, r0, #2
|
||||
ldr r1, _08080D14 @ =_08080D18
|
||||
adds r0, r0, r1
|
||||
ldr r0, [r0]
|
||||
mov pc, r0
|
||||
.align 2, 0
|
||||
_08080D14: .4byte _08080D18
|
||||
_08080D18: @ jump table
|
||||
.4byte _08080DEE @ case 0
|
||||
.4byte _08080DEE @ case 1
|
||||
.4byte _08080DEE @ case 2
|
||||
.4byte _08080DEE @ case 3
|
||||
.4byte _08080E00 @ case 4
|
||||
.4byte _08080E00 @ case 5
|
||||
.4byte _08080E00 @ case 6
|
||||
.4byte _08080E00 @ case 7
|
||||
.4byte _08080E00 @ case 8
|
||||
.4byte _08080E00 @ case 9
|
||||
.4byte _08080E00 @ case 10
|
||||
.4byte _08080E00 @ case 11
|
||||
.4byte _08080E00 @ case 12
|
||||
.4byte _08080E00 @ case 13
|
||||
.4byte _08080E00 @ case 14
|
||||
.4byte _08080E00 @ case 15
|
||||
.4byte _08080E00 @ case 16
|
||||
.4byte _08080E00 @ case 17
|
||||
.4byte _08080E00 @ case 18
|
||||
.4byte _08080E00 @ case 19
|
||||
.4byte _08080E00 @ case 20
|
||||
.4byte _08080E00 @ case 21
|
||||
.4byte _08080E00 @ case 22
|
||||
.4byte _08080E00 @ case 23
|
||||
.4byte _08080E00 @ case 24
|
||||
.4byte _08080E00 @ case 25
|
||||
.4byte _08080E00 @ case 26
|
||||
.4byte _08080E00 @ case 27
|
||||
.4byte _08080DEE @ case 28
|
||||
.4byte _08080E00 @ case 29
|
||||
.4byte _08080E00 @ case 30
|
||||
.4byte _08080E00 @ case 31
|
||||
.4byte _08080DA4 @ case 32
|
||||
.4byte _08080E00 @ case 33
|
||||
.4byte _08080DEE @ case 34
|
||||
_08080DA4:
|
||||
adds r5, r4, #0
|
||||
adds r5, #0x6a
|
||||
ldrb r0, [r5]
|
||||
cmp r0, #0
|
||||
beq _08080DB4
|
||||
subs r0, #1
|
||||
strb r0, [r5]
|
||||
b _08080E00
|
||||
_08080DB4:
|
||||
bl Random
|
||||
movs r1, #0x1f
|
||||
ands r0, r1
|
||||
adds r0, #0xa
|
||||
strb r0, [r5]
|
||||
adds r0, r4, #0
|
||||
movs r1, #7
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _08080E00
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x62
|
||||
ldrb r0, [r0]
|
||||
adds r2, r1, #0
|
||||
adds r2, #0x62
|
||||
strb r0, [r2]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x63
|
||||
ldrb r0, [r0]
|
||||
adds r2, #1
|
||||
strb r0, [r2]
|
||||
adds r0, r4, #0
|
||||
bl ResolveEntityOnTop
|
||||
b _08080E00
|
||||
_08080DEE:
|
||||
ldr r0, _08080E04 @ =gScreenTransition
|
||||
ldr r0, [r0]
|
||||
movs r1, #0xf
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _08080E00
|
||||
adds r0, r4, #0
|
||||
bl CreateSparkle
|
||||
_08080E00:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_08080E04: .4byte gScreenTransition
|
||||
+14
-14
@@ -9,7 +9,7 @@
|
||||
sub_080A2A84: @ 0x080A2A84
|
||||
push {r4, r5, r6, r7, lr}
|
||||
adds r5, r1, #0
|
||||
bl sub_080A2A64
|
||||
bl CreateWaterTrace
|
||||
adds r6, r0, #0
|
||||
cmp r6, #0
|
||||
beq _080A2AD2
|
||||
@@ -132,8 +132,8 @@ _080A2B74:
|
||||
.align 2, 0
|
||||
_080A2B7C: .4byte gSineTable
|
||||
|
||||
thumb_func_start sub_080A2B80
|
||||
sub_080A2B80: @ 0x080A2B80
|
||||
thumb_func_start CreateSparkle
|
||||
CreateSparkle: @ 0x080A2B80
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
movs r0, #0xf
|
||||
@@ -331,38 +331,38 @@ _080A2CF8:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_080A2CFC
|
||||
sub_080A2CFC: @ 0x080A2CFC
|
||||
thumb_func_start CreateSpeechBubbleExclamationMark
|
||||
CreateSpeechBubbleExclamationMark: @ 0x080A2CFC
|
||||
push {r4, lr}
|
||||
adds r4, r1, #0
|
||||
adds r3, r2, #0
|
||||
movs r1, #0
|
||||
adds r2, r4, #0
|
||||
bl sub_080A2D2C
|
||||
bl CreateSpeechBubble
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_080A2D0C
|
||||
sub_080A2D0C: @ 0x080A2D0C
|
||||
thumb_func_start CreateSpeechBubbleQuestionMark
|
||||
CreateSpeechBubbleQuestionMark: @ 0x080A2D0C
|
||||
push {r4, lr}
|
||||
adds r4, r1, #0
|
||||
adds r3, r2, #0
|
||||
movs r1, #1
|
||||
adds r2, r4, #0
|
||||
bl sub_080A2D2C
|
||||
bl CreateSpeechBubble
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_080A2D1C
|
||||
sub_080A2D1C: @ 0x080A2D1C
|
||||
thumb_func_start CreateSpeechBubbleSleep
|
||||
CreateSpeechBubbleSleep: @ 0x080A2D1C
|
||||
push {r4, lr}
|
||||
adds r4, r1, #0
|
||||
adds r3, r2, #0
|
||||
movs r1, #2
|
||||
adds r2, r4, #0
|
||||
bl sub_080A2D2C
|
||||
bl CreateSpeechBubble
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_080A2D2C
|
||||
sub_080A2D2C: @ 0x080A2D2C
|
||||
thumb_func_start CreateSpeechBubble
|
||||
CreateSpeechBubble: @ 0x080A2D2C
|
||||
push {r4, r5, r6, r7, lr}
|
||||
adds r5, r0, #0
|
||||
adds r4, r1, #0
|
||||
|
||||
+4
-4
@@ -1130,7 +1130,7 @@ sub_080A44E0: @ 0x080A44E0
|
||||
adds r5, r5, r1
|
||||
adds r1, r5, #0
|
||||
mov r2, r8
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
adds r0, r6, #0
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
@@ -1980,12 +1980,12 @@ sub_080A4BA0: @ 0x080A4BA0
|
||||
ldr r0, _080A4C08 @ =gUnk_0812816C
|
||||
mov r1, sp
|
||||
movs r2, #0x18
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldr r0, _080A4C0C @ =gUnk_08128184
|
||||
add r4, sp, #0x48
|
||||
adds r1, r4, #0
|
||||
movs r2, #0xc
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
lsls r1, r6, #1
|
||||
adds r1, r1, r6
|
||||
lsls r2, r1, #9
|
||||
@@ -2127,7 +2127,7 @@ sub_080A4CBC: @ 0x080A4CBC
|
||||
ldr r1, _080A4D14 @ =0x0600E000
|
||||
adds r0, r4, #0
|
||||
adds r2, r5, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
adds r0, r6, #0
|
||||
bl sub_080A4948
|
||||
cmp r0, #0
|
||||
|
||||
+40
-40
@@ -867,7 +867,7 @@ sub_080A5BF0: @ 0x080A5BF0
|
||||
adds r0, r4, #2
|
||||
adds r1, r4, #0
|
||||
movs r2, #0xe
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
strh r5, [r4, #0xe]
|
||||
ldr r2, _080A5C40 @ =gUsedPalettes
|
||||
ldr r0, [r2]
|
||||
@@ -2632,7 +2632,7 @@ _080A6A26:
|
||||
bne _080A6A30
|
||||
movs r2, #9
|
||||
_080A6A30:
|
||||
ldr r1, _080A6A40 @ =gUnk_0811E214
|
||||
ldr r1, _080A6A40 @ =gAreaRoomHeaders
|
||||
lsls r0, r2, #2
|
||||
adds r0, r0, r1
|
||||
ldr r0, [r0]
|
||||
@@ -2640,7 +2640,7 @@ _080A6A30:
|
||||
subs r6, r6, r0
|
||||
b _080A6A48
|
||||
.align 2, 0
|
||||
_080A6A40: .4byte gUnk_0811E214
|
||||
_080A6A40: .4byte gAreaRoomHeaders
|
||||
_080A6A44:
|
||||
ldr r0, _080A6A78 @ =0xFFFFFEF8
|
||||
adds r7, r7, r0
|
||||
@@ -3233,7 +3233,7 @@ sub_080A6EE0: @ 0x080A6EE0
|
||||
adds r1, r1, r0
|
||||
ldrh r3, [r1, #6]
|
||||
ldrh r4, [r1, #8]
|
||||
ldr r0, _080A6F38 @ =gUnk_0811E214
|
||||
ldr r0, _080A6F38 @ =gAreaRoomHeaders
|
||||
ldrb r2, [r1, #0xb]
|
||||
lsls r2, r2, #2
|
||||
adds r2, r2, r0
|
||||
@@ -3267,7 +3267,7 @@ sub_080A6EE0: @ 0x080A6EE0
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_080A6F34: .4byte gUnk_08128024
|
||||
_080A6F38: .4byte gUnk_0811E214
|
||||
_080A6F38: .4byte gAreaRoomHeaders
|
||||
_080A6F3C: .4byte gUnk_03001010
|
||||
|
||||
thumb_func_start sub_080A6F40
|
||||
@@ -3420,7 +3420,7 @@ sub_080A7040: @ 0x080A7040
|
||||
movs r2, #0x80
|
||||
lsls r2, r2, #4
|
||||
adds r0, r4, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldr r1, _080A70A0 @ =gUnk_08128D70
|
||||
lsls r0, r5, #3
|
||||
adds r4, r0, r1
|
||||
@@ -3679,42 +3679,42 @@ sub_080A7250: @ 0x080A7250
|
||||
ldr r0, _080A72EC @ =gScreen
|
||||
ldr r1, _080A72F0 @ =gUnk_03001020
|
||||
movs r2, #0x7c
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldr r0, _080A72F4 @ =gPaletteBuffer
|
||||
ldr r1, _080A72F8 @ =gUnk_02024090
|
||||
movs r2, #0x80
|
||||
lsls r2, r2, #3
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldr r0, _080A72FC @ =gUnk_02024490
|
||||
ldr r4, _080A7300 @ =gUnk_02032F14
|
||||
movs r2, #0x85
|
||||
lsls r2, r2, #2
|
||||
adds r1, r4, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldr r0, _080A7304 @ =gUnk_02001A00
|
||||
movs r2, #0x85
|
||||
lsls r2, r2, #2
|
||||
adds r1, r4, r2
|
||||
movs r2, #0x40
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldr r0, _080A7308 @ =gRoomControls
|
||||
adds r1, r4, #0
|
||||
subs r1, #0x38
|
||||
movs r2, #0x38
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldr r0, _080A730C @ =gUnk_03000420
|
||||
movs r2, #0x95
|
||||
lsls r2, r2, #2
|
||||
adds r1, r4, r2
|
||||
movs r2, #0x80
|
||||
lsls r2, r2, #1
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldr r0, _080A7310 @ =gUnk_02033280
|
||||
movs r2, #0xd5
|
||||
lsls r2, r2, #2
|
||||
adds r1, r4, r2
|
||||
movs r2, #0xc
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
bl sub_0805E958
|
||||
adds r1, r4, #0
|
||||
subs r1, #0x54
|
||||
@@ -3838,36 +3838,36 @@ _080A73B4:
|
||||
adds r0, r5, r1
|
||||
ldr r1, _080A7480 @ =gUnk_02033280
|
||||
movs r2, #0xc
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
movs r1, #0xaa
|
||||
lsls r1, r1, #2
|
||||
adds r0, r5, r1
|
||||
ldr r1, _080A7484 @ =gUnk_03000420
|
||||
movs r2, #0x80
|
||||
lsls r2, r2, #1
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
movs r1, #0x9a
|
||||
lsls r1, r1, #2
|
||||
adds r0, r5, r1
|
||||
ldr r1, _080A7488 @ =gUnk_02001A00
|
||||
movs r2, #0x40
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x54
|
||||
ldr r1, _080A748C @ =gUnk_02024490
|
||||
movs r2, #0x85
|
||||
lsls r2, r2, #2
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x1c
|
||||
ldr r4, _080A7490 @ =gRoomControls
|
||||
adds r1, r4, #0
|
||||
movs r2, #0x38
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldr r0, _080A7494 @ =gUnk_03001020
|
||||
ldr r1, _080A7498 @ =gScreen
|
||||
movs r2, #0x7c
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldrb r0, [r4, #4]
|
||||
bl sub_08052D58
|
||||
ldr r4, _080A749C @ =gArea
|
||||
@@ -6061,7 +6061,7 @@ sub_080A8470: @ 0x080A8470
|
||||
cmp r0, #0x68
|
||||
bne _080A848E
|
||||
movs r0, #0x86
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_080A848E:
|
||||
adds r0, r4, #0
|
||||
bl DeleteEntity
|
||||
@@ -6115,7 +6115,7 @@ sub_080A84C8: @ 0x080A84C8
|
||||
strb r0, [r1]
|
||||
_080A84F0:
|
||||
ldr r0, _080A8500 @ =0x0000018D
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x18
|
||||
bl InitializeAnimation
|
||||
@@ -6328,7 +6328,7 @@ sub_080A8680: @ 0x080A8680
|
||||
strb r1, [r0, #0xf]
|
||||
movs r0, #0x8c
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_080A86A0
|
||||
@@ -6344,7 +6344,7 @@ sub_080A86A0: @ 0x080A86A0
|
||||
strh r3, [r0, #0x24]
|
||||
movs r0, #0xc7
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_080A86BC
|
||||
@@ -6810,7 +6810,7 @@ _080A8A16:
|
||||
movs r1, #1
|
||||
bl InitializeAnimation
|
||||
movs r0, #0x84
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
movs r0, #3
|
||||
strb r0, [r5, #0xc]
|
||||
b _080A8A44
|
||||
@@ -6893,7 +6893,7 @@ _080A8AAA:
|
||||
adds r0, r2, #0
|
||||
bl InitializeAnimation
|
||||
ldr r0, _080A8AC4 @ =0x0000015F
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_080A8AC2:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
@@ -7053,7 +7053,7 @@ _080A8BDA:
|
||||
bl InitializeAnimation
|
||||
movs r0, #0xaf
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_080A8BF4:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
@@ -7198,7 +7198,7 @@ _080A8CEE:
|
||||
bl InitializeAnimation
|
||||
movs r0, #0xb0
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_080A8D08:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
@@ -8110,7 +8110,7 @@ sub_080A93DC: @ 0x080A93DC
|
||||
bl InitializeAnimation
|
||||
movs r0, #0xc5
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
adds r0, r4, #0
|
||||
bl sub_0806F69C
|
||||
b _080A9424
|
||||
@@ -8153,7 +8153,7 @@ sub_080A9448: @ 0x080A9448
|
||||
cmp r0, #0
|
||||
bne _080A9464
|
||||
adds r0, r4, #0
|
||||
bl sub_080A29BC
|
||||
bl CreateDust
|
||||
bl DeleteThisEntity
|
||||
b _080A9486
|
||||
_080A9464:
|
||||
@@ -8199,7 +8199,7 @@ sub_080A9488: @ 0x080A9488
|
||||
lsrs r0, r0, #3
|
||||
strb r0, [r4, #0x14]
|
||||
movs r0, #0x74
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
ldrb r1, [r4, #0x14]
|
||||
adds r0, r4, #0
|
||||
bl sub_080A94C0
|
||||
@@ -9728,7 +9728,7 @@ sub_080A9FD0: @ 0x080A9FD0
|
||||
ands r0, r1
|
||||
strb r0, [r2]
|
||||
ldr r0, _080AA038 @ =0x0000015D
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_080A9FF2:
|
||||
movs r0, #0x2e
|
||||
ldrsh r1, [r5, r0]
|
||||
@@ -9906,7 +9906,7 @@ _080AA136:
|
||||
bl DeleteThisEntity
|
||||
_080AA14E:
|
||||
movs r0, #0xf2
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
movs r4, #1
|
||||
strb r4, [r6, #0xc]
|
||||
movs r0, #0xff
|
||||
@@ -10572,7 +10572,7 @@ sub_080AA654: @ 0x080AA654
|
||||
ldr r0, _080AA688 @ =gUnk_0812A004
|
||||
adds r1, r4, #0
|
||||
movs r2, #0x10
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
movs r1, #0x3f
|
||||
adds r0, r5, #0
|
||||
ands r0, r1
|
||||
@@ -10715,7 +10715,7 @@ _080AA774:
|
||||
adds r0, r4, #0
|
||||
bl InitAnimationForceUpdate
|
||||
ldr r0, _080AA788 @ =0x00000101
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_080AA784:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
@@ -10780,7 +10780,7 @@ _080AA7DA:
|
||||
strb r0, [r5]
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_080AA806:
|
||||
ldrb r1, [r5]
|
||||
movs r0, #0x80
|
||||
@@ -10989,7 +10989,7 @@ _080AA920:
|
||||
strh r0, [r7, #0x32]
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_080AA99A:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
@@ -13118,7 +13118,7 @@ sub_080AB950: @ 0x080AB950
|
||||
cmp r0, #0
|
||||
bne _080AB99C
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
ldrb r0, [r4, #0x15]
|
||||
lsrs r0, r0, #3
|
||||
ldr r1, _080AB994 @ =gUnk_0812A6C4
|
||||
@@ -13189,7 +13189,7 @@ sub_080AB9DC: @ 0x080AB9DC
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x68
|
||||
movs r2, #0x1c
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldrh r1, [r4, #0x2e]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x84
|
||||
@@ -13507,7 +13507,7 @@ _080ABC2A:
|
||||
bl ModHealth
|
||||
_080ABC32:
|
||||
adds r0, r4, #0
|
||||
bl sub_080A29BC
|
||||
bl CreateDust
|
||||
bl DeleteThisEntity
|
||||
b _080ABC52
|
||||
_080ABC3E:
|
||||
@@ -15575,7 +15575,7 @@ sub_080ACB90: @ 0x080ACB90
|
||||
movs r2, #0x40
|
||||
bl CreateFx
|
||||
ldr r0, _080ACBC8 @ =0x00000119
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
bl DeleteThisEntity
|
||||
_080ACBC6:
|
||||
pop {r4, pc}
|
||||
|
||||
+2
-2
@@ -3036,8 +3036,8 @@ _080AEF7E:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_080AEF88
|
||||
sub_080AEF88: @ 0x080AEF88
|
||||
thumb_func_start ProcessMovement
|
||||
ProcessMovement: @ 0x080AEF88
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r1, [r4, #0x15]
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
.text
|
||||
.syntax unified
|
||||
|
||||
thumb_func_start CreateFx
|
||||
CreateFx: @ 0x080A29AC
|
||||
push {r4, lr}
|
||||
adds r4, r1, #0
|
||||
adds r3, r2, #0
|
||||
movs r1, #0xf
|
||||
adds r2, r4, #0
|
||||
bl CreateObjectWithParent
|
||||
pop {r4, pc}
|
||||
@@ -603,7 +603,7 @@ sub_08096780: @ 0x08096780
|
||||
strb r0, [r5, #0xc]
|
||||
strb r1, [r5, #0xd]
|
||||
adds r0, r5, #0
|
||||
bl sub_080A29BC
|
||||
bl CreateDust
|
||||
b _080967E0
|
||||
.align 2, 0
|
||||
_080967D4: .4byte gUnk_0812319C
|
||||
|
||||
+1
-1
@@ -93,7 +93,7 @@ _0806E52C:
|
||||
lsls r1, r1, #1
|
||||
adds r1, r1, r4
|
||||
ldrh r0, [r1]
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_0806E552:
|
||||
adds r0, r5, #0
|
||||
bl sub_0806E65C
|
||||
|
||||
+6
-6
@@ -194,7 +194,7 @@ sub_08038DD8: @ 0x08038DD8
|
||||
movs r1, #4
|
||||
bl InitializeAnimation
|
||||
ldr r0, _08038E14 @ =0x000001D9
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08038E10: .4byte gUnk_080CF7BC
|
||||
@@ -238,7 +238,7 @@ sub_08038E18: @ 0x08038E18
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x15]
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_08038E70:
|
||||
@@ -304,7 +304,7 @@ sub_08038ED0: @ 0x08038ED0
|
||||
sub_08038EE0: @ 0x08038EE0
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
adds r0, r4, #0
|
||||
@@ -362,7 +362,7 @@ sub_08038F44: @ 0x08038F44
|
||||
adds r0, r4, #0
|
||||
bl sub_080390F8
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
movs r1, #0xc0
|
||||
lsls r1, r1, #5
|
||||
adds r0, r4, #0
|
||||
@@ -519,7 +519,7 @@ _0803906C:
|
||||
movs r1, #0xeb
|
||||
lsls r1, r1, #1
|
||||
adds r0, r5, r1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
b _080390BC
|
||||
_080390AA:
|
||||
movs r0, #4
|
||||
@@ -743,7 +743,7 @@ sub_08039218: @ 0x08039218
|
||||
bl InitializeAnimation
|
||||
_0803924C:
|
||||
ldr r0, _0803925C @ =0x000001D9
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08039254: .4byte gUnk_080CF824
|
||||
|
||||
+1
-1
@@ -81,7 +81,7 @@ _0806E782:
|
||||
cmp r1, #0
|
||||
beq _0806E7A8
|
||||
movs r0, #0xd6
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_0806E7A8:
|
||||
adds r0, r4, #0
|
||||
bl sub_0806E838
|
||||
|
||||
@@ -1,346 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start CuccoChickAggr
|
||||
CuccoChickAggr: @ 0x08022918
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
ldr r4, _08022930 @ =gUnk_080CBB64
|
||||
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
|
||||
_08022930: .4byte gUnk_080CBB64
|
||||
|
||||
thumb_func_start sub_08022934
|
||||
sub_08022934: @ 0x08022934
|
||||
push {lr}
|
||||
ldr r2, _08022948 @ =gUnk_080CBB7C
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08022948: .4byte gUnk_080CBB7C
|
||||
|
||||
thumb_func_start sub_0802294C
|
||||
sub_0802294C: @ 0x0802294C
|
||||
push {lr}
|
||||
ldr r1, _08022958 @ =gUnk_080CBB64
|
||||
bl sub_0804AA30
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08022958: .4byte gUnk_080CBB64
|
||||
|
||||
thumb_func_start nullsub_132
|
||||
nullsub_132: @ 0x0802295C
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08022960
|
||||
sub_08022960: @ 0x08022960
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0804A720
|
||||
adds r0, r4, #0
|
||||
bl sub_08022A88
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_08022970
|
||||
sub_08022970: @ 0x08022970
|
||||
push {lr}
|
||||
adds r1, r0, #0
|
||||
ldrb r0, [r1, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r1, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _08022986
|
||||
adds r0, r1, #0
|
||||
bl sub_08022AA4
|
||||
_08022986:
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_08022988
|
||||
sub_08022988: @ 0x08022988
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #0x36
|
||||
ldrsh r0, [r4, r1]
|
||||
cmp r0, #0
|
||||
bne _080229A6
|
||||
adds r0, r4, #0
|
||||
bl sub_08022B20
|
||||
cmp r0, #0
|
||||
beq _080229A6
|
||||
adds r0, r4, #0
|
||||
bl sub_08022B0C
|
||||
b _080229F6
|
||||
_080229A6:
|
||||
ldrb r0, [r4, #0xf]
|
||||
cmp r0, #0
|
||||
beq _080229C6
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xf]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _080229F6
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0x1e]
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #9
|
||||
str r0, [r4, #0x20]
|
||||
movs r0, #0xd6
|
||||
bl sub_08004488
|
||||
_080229C6:
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
movs r1, #0x80
|
||||
lsls r1, r1, #6
|
||||
adds r0, r4, #0
|
||||
bl sub_08003FC4
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
bne _080229F6
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _080229F0
|
||||
adds r0, r4, #0
|
||||
bl sub_08022A88
|
||||
b _080229F6
|
||||
_080229F0:
|
||||
movs r0, #4
|
||||
strb r0, [r4, #0xf]
|
||||
strb r1, [r4, #0x1e]
|
||||
_080229F6:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_080229F8
|
||||
sub_080229F8: @ 0x080229F8
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #0xa0
|
||||
lsls r1, r1, #6
|
||||
bl sub_08003FC4
|
||||
cmp r0, #0
|
||||
bne _08022A3C
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
lsrs r1, r0, #0x18
|
||||
cmp r1, #0
|
||||
bne _08022A30
|
||||
movs r0, #4
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #6
|
||||
strb r0, [r4, #0xe]
|
||||
movs r0, #8
|
||||
strb r0, [r4, #0xf]
|
||||
strb r1, [r4, #0x1e]
|
||||
movs r0, #0xc0
|
||||
strh r0, [r4, #0x24]
|
||||
adds r0, r4, #0
|
||||
bl sub_08022B44
|
||||
b _08022A3C
|
||||
_08022A30:
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #9
|
||||
str r0, [r4, #0x20]
|
||||
movs r0, #0xd6
|
||||
bl sub_08004488
|
||||
_08022A3C:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08022A40
|
||||
sub_08022A40: @ 0x08022A40
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xf]
|
||||
cmp r0, #0
|
||||
beq _08022A58
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xf]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _08022A86
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0x1e]
|
||||
_08022A58:
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
movs r1, #0x80
|
||||
lsls r1, r1, #6
|
||||
adds r0, r4, #0
|
||||
bl sub_08003FC4
|
||||
cmp r0, #0
|
||||
bne _08022A86
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _08022A80
|
||||
adds r0, r4, #0
|
||||
bl sub_08022A88
|
||||
b _08022A86
|
||||
_08022A80:
|
||||
adds r0, r4, #0
|
||||
bl sub_08022B44
|
||||
_08022A86:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_08022A88
|
||||
sub_08022A88: @ 0x08022A88
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
movs r5, #0
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
bl Random
|
||||
movs r1, #0xf
|
||||
ands r0, r1
|
||||
adds r0, #8
|
||||
strb r0, [r4, #0xe]
|
||||
strb r5, [r4, #0x1e]
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08022AA4
|
||||
sub_08022AA4: @ 0x08022AA4
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
bl Random
|
||||
adds r5, r0, #0
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
movs r1, #3
|
||||
adds r0, r5, #0
|
||||
ands r0, r1
|
||||
adds r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xf]
|
||||
movs r0, #0x80
|
||||
strh r0, [r4, #0x24]
|
||||
adds r0, r4, #0
|
||||
bl sub_08049FA0
|
||||
cmp r0, #0
|
||||
bne _08022AE0
|
||||
lsrs r0, r5, #8
|
||||
movs r1, #3
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _08022AE0
|
||||
adds r0, r4, #0
|
||||
bl sub_08049EE4
|
||||
b _08022AE6
|
||||
_08022AE0:
|
||||
lsrs r0, r5, #0x10
|
||||
movs r1, #0x1f
|
||||
ands r0, r1
|
||||
_08022AE6:
|
||||
strb r0, [r4, #0x15]
|
||||
ldrb r1, [r4, #0x15]
|
||||
movs r0, #0xf
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _08022B08
|
||||
lsrs r1, r1, #4
|
||||
movs r0, #1
|
||||
eors r1, r0
|
||||
ands r1, r0
|
||||
lsls r1, r1, #6
|
||||
ldrb r2, [r4, #0x18]
|
||||
movs r0, #0x41
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r2
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
_08022B08:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08022B0C
|
||||
sub_08022B0C: @ 0x08022B0C
|
||||
push {lr}
|
||||
movs r1, #3
|
||||
strb r1, [r0, #0xc]
|
||||
strb r1, [r0, #0xe]
|
||||
movs r1, #8
|
||||
strb r1, [r0, #0xf]
|
||||
bl sub_08022B44
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08022B20
|
||||
sub_08022B20: @ 0x08022B20
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r0, #2
|
||||
bl sub_08049DF4
|
||||
cmp r0, #0
|
||||
beq _08022B40
|
||||
ldr r1, _08022B3C @ =gPlayerEntity
|
||||
adds r0, r4, #0
|
||||
movs r2, #0x24
|
||||
movs r3, #0x24
|
||||
bl sub_080041A0
|
||||
b _08022B42
|
||||
.align 2, 0
|
||||
_08022B3C: .4byte gPlayerEntity
|
||||
_08022B40:
|
||||
movs r0, #0
|
||||
_08022B42:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_08022B44
|
||||
sub_08022B44: @ 0x08022B44
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #8
|
||||
str r0, [r4, #0x20]
|
||||
ldr r1, _08022B84 @ =gPlayerEntity
|
||||
adds r0, r4, #0
|
||||
bl GetFacingDirection
|
||||
adds r1, r0, #0
|
||||
strb r1, [r4, #0x15]
|
||||
movs r0, #0xf
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _08022B7A
|
||||
lsls r1, r1, #0x18
|
||||
lsrs r1, r1, #0x1c
|
||||
movs r0, #1
|
||||
eors r1, r0
|
||||
ands r1, r0
|
||||
lsls r1, r1, #6
|
||||
ldrb r2, [r4, #0x18]
|
||||
movs r0, #0x41
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r2
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
_08022B7A:
|
||||
movs r0, #0xd6
|
||||
bl sub_08004488
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_08022B84: .4byte gPlayerEntity
|
||||
-1549
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -125,7 +125,7 @@ _08081702:
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0xff
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_0808170C:
|
||||
adds r0, r4, #0
|
||||
movs r1, #3
|
||||
|
||||
@@ -303,7 +303,7 @@ sub_08069D54: @ 0x08069D54
|
||||
adds r0, r4, #0
|
||||
bl UpdateAnimationSingleFrame
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
ldrh r1, [r4, #0x2a]
|
||||
movs r0, #0x2e
|
||||
ldrsh r2, [r4, r0]
|
||||
@@ -473,9 +473,9 @@ _08069EA0:
|
||||
adds r0, r4, #0
|
||||
bl sub_080788E0
|
||||
movs r0, #0xd1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
movs r0, #0xcd
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_08069EC8:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
|
||||
-343
@@ -1,343 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start DoorMimic
|
||||
DoorMimic: @ 0x08021FA8
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r5, _08021FD4 @ =gUnk_080CB734
|
||||
bl GetNextFunction
|
||||
lsls r0, r0, #2
|
||||
adds r0, r0, r5
|
||||
ldr r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl _call_via_r1
|
||||
ldr r1, _08021FD8 @ =gUnk_080CB8A4
|
||||
ldrb r0, [r4, #0xb]
|
||||
lsls r0, r0, #2
|
||||
adds r0, r0, r1
|
||||
ldrb r1, [r4, #0x1e]
|
||||
ldr r0, [r0]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r0
|
||||
ldr r0, [r1]
|
||||
str r0, [r4, #0x48]
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_08021FD4: .4byte gUnk_080CB734
|
||||
_08021FD8: .4byte gUnk_080CB8A4
|
||||
|
||||
thumb_func_start sub_08021FDC
|
||||
sub_08021FDC: @ 0x08021FDC
|
||||
push {lr}
|
||||
ldr r2, _08021FF0 @ =gUnk_080CB74C
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08021FF0: .4byte gUnk_080CB74C
|
||||
|
||||
thumb_func_start sub_08021FF4
|
||||
sub_08021FF4: @ 0x08021FF4
|
||||
push {lr}
|
||||
ldr r1, _08022000 @ =gUnk_080CB734
|
||||
bl sub_0804AA30
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08022000: .4byte gUnk_080CB734
|
||||
|
||||
thumb_func_start sub_08022004
|
||||
sub_08022004: @ 0x08022004
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, #0x7c
|
||||
ldrh r0, [r0]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x7e
|
||||
ldrh r1, [r1]
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x38
|
||||
ldrb r2, [r2]
|
||||
bl SetTile
|
||||
adds r0, r4, #0
|
||||
movs r1, #5
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
adds r0, r4, #0
|
||||
bl sub_08049CF4
|
||||
bl DeleteThisEntity
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08022034
|
||||
sub_08022034: @ 0x08022034
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0xa]
|
||||
movs r0, #3
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0xb]
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x29
|
||||
ldrb r1, [r2]
|
||||
movs r0, #8
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
movs r1, #5
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
ldr r2, _08022098 @ =gUnk_080CB764
|
||||
ldrb r0, [r4, #0xb]
|
||||
lsls r0, r0, #1
|
||||
adds r0, r0, r2
|
||||
ldrb r0, [r0]
|
||||
lsls r0, r0, #0x18
|
||||
asrs r0, r0, #0x18
|
||||
ldrh r1, [r4, #0x2e]
|
||||
adds r0, r0, r1
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x78
|
||||
strh r0, [r1]
|
||||
ldrb r0, [r4, #0xb]
|
||||
lsls r0, r0, #1
|
||||
adds r0, #1
|
||||
adds r0, r0, r2
|
||||
ldrb r0, [r0]
|
||||
lsls r0, r0, #0x18
|
||||
asrs r0, r0, #0x18
|
||||
ldrh r1, [r4, #0x32]
|
||||
adds r0, r0, r1
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x7a
|
||||
strh r0, [r1]
|
||||
ldrb r1, [r4, #0xb]
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
adds r0, r4, #0
|
||||
bl sub_080221C0
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_08022098: .4byte gUnk_080CB764
|
||||
|
||||
thumb_func_start sub_0802209C
|
||||
sub_0802209C: @ 0x0802209C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xe]
|
||||
cmp r0, #0
|
||||
bne _080220D2
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x78
|
||||
ldrh r0, [r0]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x7a
|
||||
ldrh r1, [r1]
|
||||
movs r2, #0x10
|
||||
movs r3, #0x10
|
||||
bl sub_0806FBFC
|
||||
cmp r0, #0
|
||||
beq _080220D6
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x12
|
||||
strb r0, [r4, #0xe]
|
||||
ldrb r1, [r4, #0xb]
|
||||
adds r1, #4
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
b _080220D6
|
||||
_080220D2:
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
_080220D6:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_080220D8
|
||||
sub_080220D8: @ 0x080220D8
|
||||
push {lr}
|
||||
adds r1, r0, #0
|
||||
ldrb r0, [r1, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r1, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _080220EC
|
||||
movs r0, #3
|
||||
strb r0, [r1, #0xc]
|
||||
_080220EC:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_080220F0
|
||||
sub_080220F0: @ 0x080220F0
|
||||
push {r4, r5, r6, lr}
|
||||
adds r5, r0, #0
|
||||
bl GetNextFrame
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _08022160
|
||||
movs r1, #0
|
||||
movs r0, #4
|
||||
strb r0, [r5, #0xc]
|
||||
movs r0, #0x78
|
||||
strb r0, [r5, #0xe]
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x44
|
||||
strb r1, [r0]
|
||||
ldrb r1, [r5, #0xb]
|
||||
lsls r0, r1, #1
|
||||
adds r0, r0, r1
|
||||
lsls r0, r0, #2
|
||||
ldr r1, _0802215C @ =gUnk_080CB76C
|
||||
adds r4, r0, r1
|
||||
movs r6, #0
|
||||
_08022124:
|
||||
adds r0, r5, #0
|
||||
movs r1, #0x11
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _08022148
|
||||
movs r0, #0
|
||||
ldrsb r0, [r4, r0]
|
||||
ldrh r2, [r1, #0x2e]
|
||||
adds r0, r0, r2
|
||||
strh r0, [r1, #0x2e]
|
||||
movs r0, #1
|
||||
ldrsb r0, [r4, r0]
|
||||
ldrh r2, [r1, #0x32]
|
||||
adds r0, r0, r2
|
||||
strh r0, [r1, #0x32]
|
||||
_08022148:
|
||||
adds r6, #1
|
||||
adds r4, #2
|
||||
cmp r6, #5
|
||||
bls _08022124
|
||||
movs r0, #0x82
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
b _08022170
|
||||
.align 2, 0
|
||||
_0802215C: .4byte gUnk_080CB76C
|
||||
_08022160:
|
||||
movs r0, #1
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _08022170
|
||||
adds r1, r5, #0
|
||||
adds r1, #0x44
|
||||
movs r0, #4
|
||||
strb r0, [r1]
|
||||
_08022170:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08022174
|
||||
sub_08022174: @ 0x08022174
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0800445C
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _08022196
|
||||
movs r0, #5
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0xb]
|
||||
adds r1, #8
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
_08022196:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_08022198
|
||||
sub_08022198: @ 0x08022198
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0800445C
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r1, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _080221BC
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x5a
|
||||
strb r0, [r4, #0xe]
|
||||
_080221BC:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_080221C0
|
||||
sub_080221C0: @ 0x080221C0
|
||||
push {r4, r5, r6, lr}
|
||||
adds r6, r0, #0
|
||||
movs r0, #0x2e
|
||||
ldrsh r4, [r6, r0]
|
||||
ldr r1, _08022220 @ =gRoomControls
|
||||
ldrh r0, [r1, #6]
|
||||
subs r4, r4, r0
|
||||
asrs r4, r4, #4
|
||||
movs r2, #0x3f
|
||||
ands r4, r2
|
||||
movs r3, #0x32
|
||||
ldrsh r0, [r6, r3]
|
||||
ldrh r1, [r1, #8]
|
||||
subs r0, r0, r1
|
||||
asrs r0, r0, #4
|
||||
ands r0, r2
|
||||
lsls r0, r0, #6
|
||||
orrs r4, r0
|
||||
ldr r1, _08022224 @ =gUnk_080B4488
|
||||
ldrb r0, [r6, #0xb]
|
||||
lsls r0, r0, #1
|
||||
adds r0, r0, r1
|
||||
movs r1, #0
|
||||
ldrsh r0, [r0, r1]
|
||||
adds r4, r4, r0
|
||||
adds r0, r6, #0
|
||||
adds r0, #0x7e
|
||||
strh r4, [r0]
|
||||
adds r5, r6, #0
|
||||
adds r5, #0x38
|
||||
ldrb r1, [r5]
|
||||
adds r0, r4, #0
|
||||
bl sub_080001DA
|
||||
adds r1, r6, #0
|
||||
adds r1, #0x7c
|
||||
strh r0, [r1]
|
||||
ldr r1, _08022228 @ =gUnk_080CB79C
|
||||
ldrb r0, [r6, #0xb]
|
||||
lsls r0, r0, #1
|
||||
adds r0, r0, r1
|
||||
ldrh r0, [r0]
|
||||
ldrb r2, [r5]
|
||||
adds r1, r4, #0
|
||||
bl SetTile
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_08022220: .4byte gRoomControls
|
||||
_08022224: .4byte gUnk_080B4488
|
||||
_08022228: .4byte gUnk_080CB79C
|
||||
+1
-1
@@ -146,7 +146,7 @@ _080441F2:
|
||||
beq _0804429A
|
||||
adds r0, r6, #0
|
||||
adds r2, r5, #0
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x28
|
||||
movs r0, #0xff
|
||||
|
||||
+2
-115
@@ -6,119 +6,6 @@
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start Enemy4D
|
||||
Enemy4D: @ 0x0803EAEC
|
||||
push {lr}
|
||||
ldr r1, _0803EAF8 @ =gUnk_080D0880
|
||||
bl EnemyFunctionHandler
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0803EAF8: .4byte gUnk_080D0880
|
||||
|
||||
thumb_func_start sub_0803EAFC
|
||||
sub_0803EAFC: @ 0x0803EAFC
|
||||
push {lr}
|
||||
ldr r2, _0803EB10 @ =gUnk_080D0898
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0803EB10: .4byte gUnk_080D0898
|
||||
|
||||
thumb_func_start sub_0803EB14
|
||||
sub_0803EB14: @ 0x0803EB14
|
||||
push {lr}
|
||||
ldr r1, _0803EB20 @ =gUnk_080D0880
|
||||
bl sub_0804AA30
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0803EB20: .4byte gUnk_080D0880
|
||||
|
||||
thumb_func_start sub_0803EB24
|
||||
sub_0803EB24: @ 0x0803EB24
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_08001324
|
||||
|
||||
thumb_func_start sub_0803EB2C
|
||||
sub_0803EB2C: @ 0x0803EB2C
|
||||
adds r0, r4, #0
|
||||
bl sub_0803EAFC
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0803EB34
|
||||
sub_0803EB34: @ 0x0803EB34
|
||||
push {lr}
|
||||
movs r1, #0xff
|
||||
movs r2, #0x57
|
||||
bl CreateDeathFx
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start nullsub_21
|
||||
nullsub_21: @ 0x0803EB40
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0803EB44
|
||||
sub_0803EB44: @ 0x0803EB44
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0804A720
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x19
|
||||
movs r2, #0
|
||||
bl sub_0804A98C
|
||||
cmp r0, #0
|
||||
beq _0803EBB2
|
||||
str r4, [r0, #0x50]
|
||||
str r0, [r4, #0x54]
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x80
|
||||
movs r2, #0
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
ldrb r1, [r4, #0x18]
|
||||
movs r0, #4
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
movs r1, #1
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0x14]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x7b
|
||||
strb r2, [r0]
|
||||
adds r0, #1
|
||||
strb r2, [r0]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x7e
|
||||
movs r0, #0x28
|
||||
strb r0, [r1]
|
||||
adds r1, #1
|
||||
movs r0, #0xfe
|
||||
strb r0, [r1]
|
||||
ldrh r1, [r4, #0x2e]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x80
|
||||
strh r1, [r0]
|
||||
ldrh r0, [r4, #0x32]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x82
|
||||
strh r0, [r1]
|
||||
ldrb r1, [r4, #0x14]
|
||||
lsls r1, r1, #2
|
||||
adds r0, r4, #0
|
||||
bl InitAnimationForceUpdate
|
||||
adds r0, r4, #0
|
||||
bl sub_0803EE8C
|
||||
_0803EBB2:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0803EBB4
|
||||
sub_0803EBB4: @ 0x0803EBB4
|
||||
push {r4, lr}
|
||||
@@ -285,7 +172,7 @@ _0803ECD8:
|
||||
movs r1, #0x10
|
||||
bl sub_0803E94C
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
_0803ED02:
|
||||
pop {r4, r5, r6, pc}
|
||||
|
||||
@@ -347,7 +234,7 @@ sub_0803ED40: @ 0x0803ED40
|
||||
movs r0, #0xf6
|
||||
strb r0, [r1]
|
||||
adds r0, #0x65
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_0803ED74:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
-100
@@ -1,100 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start EnemyE
|
||||
EnemyE: @ 0x08022FA4
|
||||
push {lr}
|
||||
ldr r1, _08022FB0 @ =gUnk_080CBBC8
|
||||
bl EnemyFunctionHandler
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08022FB0: .4byte gUnk_080CBBC8
|
||||
|
||||
thumb_func_start sub_08022FB4
|
||||
sub_08022FB4: @ 0x08022FB4
|
||||
push {lr}
|
||||
ldr r2, _08022FC8 @ =gUnk_080CBBDC
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08022FC8: .4byte gUnk_080CBBDC
|
||||
|
||||
thumb_func_start nullsub_133
|
||||
nullsub_133: @ 0x08022FCC
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08022FD0
|
||||
sub_08022FD0: @ 0x08022FD0
|
||||
push {lr}
|
||||
movs r3, #1
|
||||
movs r1, #1
|
||||
strb r1, [r0, #0xc]
|
||||
ldrb r2, [r0, #0x18]
|
||||
subs r1, #5
|
||||
ands r1, r2
|
||||
orrs r1, r3
|
||||
strb r1, [r0, #0x18]
|
||||
movs r1, #0
|
||||
bl sub_08023000
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08022FEC
|
||||
sub_08022FEC: @ 0x08022FEC
|
||||
push {lr}
|
||||
movs r1, #0x80
|
||||
bl sub_08023000
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08022FF8
|
||||
sub_08022FF8: @ 0x08022FF8
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08022FFC
|
||||
sub_08022FFC: @ 0x08022FFC
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08023000
|
||||
sub_08023000: @ 0x08023000
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
cmp r1, #0x80
|
||||
bne _0802300E
|
||||
bl UpdateAnimationSingleFrame
|
||||
b _08023014
|
||||
_0802300E:
|
||||
adds r0, r4, #0
|
||||
bl InitAnimationForceUpdate
|
||||
_08023014:
|
||||
movs r2, #0x80
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5b
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0x40
|
||||
bne _08023022
|
||||
rsbs r2, r2, #0
|
||||
_08023022:
|
||||
ldrb r0, [r4, #0x19]
|
||||
movs r1, #3
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x19]
|
||||
adds r0, r4, #0
|
||||
adds r1, r2, #0
|
||||
movs r2, #0x80
|
||||
movs r3, #0
|
||||
bl sub_0805EC9C
|
||||
pop {r4, pc}
|
||||
+1
-1
@@ -109,7 +109,7 @@ _08088728:
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
ldr r0, _0808875C @ =0x00000111
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x86
|
||||
ldrh r0, [r0]
|
||||
|
||||
+6
-6
@@ -105,7 +105,7 @@ _08030AC0:
|
||||
movs r0, #0x86
|
||||
lsls r0, r0, #1
|
||||
_08030AE0:
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
adds r0, r4, #0
|
||||
bl sub_08031344
|
||||
b _08030B0E
|
||||
@@ -124,7 +124,7 @@ _08030AFA:
|
||||
movs r0, #0xf
|
||||
strb r0, [r1]
|
||||
movs r0, #0xfe
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
adds r0, r4, #0
|
||||
bl sub_08031344
|
||||
_08030B0E:
|
||||
@@ -563,7 +563,7 @@ sub_08030E3C: @ 0x08030E3C
|
||||
lsls r1, r1, #9
|
||||
str r1, [r0, #0x20]
|
||||
ldr r0, _08030E54 @ =0x00000157
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08030E54: .4byte 0x00000157
|
||||
@@ -589,7 +589,7 @@ sub_08030E70: @ 0x08030E70
|
||||
bl sub_08030E80
|
||||
movs r0, #0xac
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_08030E80
|
||||
@@ -1171,7 +1171,7 @@ _080312E2:
|
||||
cmp r0, #0
|
||||
bne _0803131C
|
||||
adds r0, r6, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
cmp r0, #0
|
||||
bne _0803131C
|
||||
adds r2, r6, #0
|
||||
@@ -1192,7 +1192,7 @@ _08031310:
|
||||
b _0803131C
|
||||
_08031316:
|
||||
adds r0, r6, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
_0803131C:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
|
||||
+1
-1
@@ -188,7 +188,7 @@ sub_0808D7B4: @ 0x0808D7B4
|
||||
bl sub_0805E3A0
|
||||
movs r0, #0x9b
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
ldrb r0, [r4, #0xb]
|
||||
cmp r0, #2
|
||||
beq _0808D834
|
||||
|
||||
@@ -1,579 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start FallingBoulder
|
||||
FallingBoulder: @ 0x0802C228
|
||||
push {lr}
|
||||
ldr r1, _0802C234 @ =gUnk_080CD540
|
||||
bl EnemyFunctionHandler
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0802C234: .4byte gUnk_080CD540
|
||||
|
||||
thumb_func_start sub_0802C238
|
||||
sub_0802C238: @ 0x0802C238
|
||||
push {lr}
|
||||
ldr r2, _0802C24C @ =gUnk_080CD558
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0802C24C: .4byte gUnk_080CD558
|
||||
|
||||
thumb_func_start sub_0802C250
|
||||
sub_0802C250: @ 0x0802C250
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802C254
|
||||
sub_0802C254: @ 0x0802C254
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802C258
|
||||
sub_0802C258: @ 0x0802C258
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0804A720
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #0xa
|
||||
str r0, [r4, #0x20]
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xe]
|
||||
bl Random
|
||||
adds r2, r0, #0
|
||||
movs r0, #0x70
|
||||
ands r2, r0
|
||||
adds r3, r4, #0
|
||||
adds r3, #0x7a
|
||||
movs r1, #0
|
||||
strh r2, [r3]
|
||||
ldrb r0, [r4, #0xa]
|
||||
cmp r0, #1
|
||||
beq _0802C288
|
||||
cmp r0, #2
|
||||
beq _0802C290
|
||||
b _0802C29C
|
||||
_0802C288:
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #1
|
||||
adds r1, r0, #0
|
||||
b _0802C296
|
||||
_0802C290:
|
||||
movs r5, #0x80
|
||||
lsls r5, r5, #2
|
||||
adds r1, r5, #0
|
||||
_0802C296:
|
||||
adds r0, r2, #0
|
||||
orrs r0, r1
|
||||
strh r0, [r3]
|
||||
_0802C29C:
|
||||
ldrh r1, [r4, #0x2e]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x80
|
||||
movs r2, #0
|
||||
strh r1, [r0]
|
||||
ldrh r0, [r4, #0x32]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x82
|
||||
strh r0, [r1]
|
||||
ldr r0, _0802C310 @ =0x0000FFF0
|
||||
strh r0, [r4, #0x36]
|
||||
subs r1, #0x4a
|
||||
movs r0, #3
|
||||
strb r0, [r1]
|
||||
ldrb r1, [r4, #0x19]
|
||||
movs r0, #0x3f
|
||||
ands r0, r1
|
||||
movs r1, #0x40
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x19]
|
||||
adds r3, r4, #0
|
||||
adds r3, #0x29
|
||||
ldrb r1, [r3]
|
||||
movs r0, #8
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
movs r1, #2
|
||||
orrs r0, r1
|
||||
strb r0, [r3]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x7c
|
||||
strh r2, [r0]
|
||||
movs r0, #0x2e
|
||||
ldrsh r1, [r4, r0]
|
||||
ldr r2, _0802C314 @ =gRoomControls
|
||||
ldrh r0, [r2, #6]
|
||||
subs r1, r1, r0
|
||||
asrs r1, r1, #4
|
||||
movs r3, #0x3f
|
||||
ands r1, r3
|
||||
movs r5, #0x32
|
||||
ldrsh r0, [r4, r5]
|
||||
ldrh r2, [r2, #8]
|
||||
subs r0, r0, r2
|
||||
asrs r0, r0, #4
|
||||
ands r0, r3
|
||||
lsls r0, r0, #6
|
||||
orrs r1, r0
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x7e
|
||||
strh r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl sub_0802C62C
|
||||
adds r0, r4, #0
|
||||
bl sub_0802C4B0
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0802C310: .4byte 0x0000FFF0
|
||||
_0802C314: .4byte gRoomControls
|
||||
|
||||
thumb_func_start sub_0802C318
|
||||
sub_0802C318: @ 0x0802C318
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
adds r1, r2, #0
|
||||
adds r1, #0x7a
|
||||
ldrh r0, [r1]
|
||||
subs r0, #1
|
||||
strh r0, [r1]
|
||||
lsls r0, r0, #0x10
|
||||
cmp r0, #0
|
||||
bne _0802C330
|
||||
movs r0, #2
|
||||
strb r0, [r2, #0xc]
|
||||
_0802C330:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802C334
|
||||
sub_0802C334: @ 0x0802C334
|
||||
push {r4, r5, r6, r7, lr}
|
||||
adds r4, r0, #0
|
||||
adds r3, r4, #0
|
||||
adds r3, #0x7c
|
||||
ldrh r0, [r3]
|
||||
cmp r0, #0
|
||||
bne _0802C36A
|
||||
ldr r0, _0802C3C4 @ =gRoomControls
|
||||
ldrh r1, [r0, #8]
|
||||
ldr r2, _0802C3C8 @ =gPlayerEntity
|
||||
cmp r2, #0
|
||||
bne _0802C34E
|
||||
b _0802C4AA
|
||||
_0802C34E:
|
||||
movs r5, #0x32
|
||||
ldrsh r0, [r2, r5]
|
||||
subs r0, r0, r1
|
||||
cmp r0, #0x38
|
||||
bhi _0802C35A
|
||||
b _0802C4AA
|
||||
_0802C35A:
|
||||
movs r0, #1
|
||||
strh r0, [r3]
|
||||
ldrb r1, [r4, #0x18]
|
||||
subs r0, #5
|
||||
ands r0, r1
|
||||
movs r1, #1
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
_0802C36A:
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
movs r0, #0x2e
|
||||
ldrsh r1, [r4, r0]
|
||||
ldr r2, _0802C3C4 @ =gRoomControls
|
||||
ldrh r0, [r2, #6]
|
||||
subs r1, r1, r0
|
||||
asrs r1, r1, #4
|
||||
movs r3, #0x3f
|
||||
ands r1, r3
|
||||
movs r5, #0x32
|
||||
ldrsh r0, [r4, r5]
|
||||
ldrh r2, [r2, #8]
|
||||
subs r0, r0, r2
|
||||
asrs r0, r0, #4
|
||||
ands r0, r3
|
||||
lsls r0, r0, #6
|
||||
orrs r1, r0
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x7e
|
||||
strh r1, [r0]
|
||||
adds r0, #6
|
||||
ldr r1, [r0]
|
||||
adds r0, r4, #0
|
||||
bl sub_080044EC
|
||||
cmp r0, #1
|
||||
bne _0802C3CC
|
||||
movs r0, #0xa6
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x80
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x7a
|
||||
movs r0, #0xc
|
||||
strh r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl sub_0802C4B0
|
||||
b _0802C48C
|
||||
.align 2, 0
|
||||
_0802C3C4: .4byte gRoomControls
|
||||
_0802C3C8: .4byte gPlayerEntity
|
||||
_0802C3CC:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x7a
|
||||
ldrh r1, [r0]
|
||||
adds r7, r0, #0
|
||||
cmp r1, #0
|
||||
beq _0802C442
|
||||
subs r0, r1, #1
|
||||
strh r0, [r7]
|
||||
lsls r0, r0, #0x10
|
||||
lsrs r0, r0, #0x10
|
||||
cmp r0, #0
|
||||
beq _0802C3EA
|
||||
cmp r0, #8
|
||||
beq _0802C3F4
|
||||
b _0802C442
|
||||
_0802C3EA:
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
b _0802C442
|
||||
_0802C3F4:
|
||||
ldrb r0, [r4, #0xb]
|
||||
cmp r0, #0
|
||||
beq _0802C442
|
||||
adds r0, r4, #0
|
||||
bl sub_08049FA0
|
||||
cmp r0, #0
|
||||
bne _0802C442
|
||||
movs r6, #0
|
||||
movs r5, #1
|
||||
_0802C408:
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x15
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
adds r2, r0, #0
|
||||
cmp r2, #0
|
||||
beq _0802C420
|
||||
ldrh r0, [r2, #0x2e]
|
||||
adds r0, #0xc
|
||||
subs r0, r0, r6
|
||||
strh r0, [r2, #0x2e]
|
||||
_0802C420:
|
||||
adds r6, #0x18
|
||||
subs r5, #1
|
||||
cmp r5, #0
|
||||
bge _0802C408
|
||||
adds r0, r4, #0
|
||||
bl sub_0802C62C
|
||||
bl Random
|
||||
movs r1, #0xff
|
||||
ands r0, r1
|
||||
movs r2, #0x80
|
||||
lsls r2, r2, #1
|
||||
adds r1, r2, #0
|
||||
orrs r0, r1
|
||||
strh r0, [r7]
|
||||
b _0802C4AA
|
||||
_0802C442:
|
||||
ldr r0, _0802C45C @ =gRoomControls
|
||||
ldrh r1, [r0, #8]
|
||||
ldrh r0, [r0, #0x20]
|
||||
adds r1, r1, r0
|
||||
movs r5, #0x32
|
||||
ldrsh r0, [r4, r5]
|
||||
subs r5, r1, r0
|
||||
cmp r5, #4
|
||||
ble _0802C460
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEFB4
|
||||
b _0802C48C
|
||||
.align 2, 0
|
||||
_0802C45C: .4byte gRoomControls
|
||||
_0802C460:
|
||||
adds r0, r4, #0
|
||||
bl sub_0806F69C
|
||||
movs r1, #0x36
|
||||
ldrsh r0, [r4, r1]
|
||||
subs r0, r0, r5
|
||||
cmp r0, #0x38
|
||||
ble _0802C48C
|
||||
adds r0, r4, #0
|
||||
bl sub_0802C62C
|
||||
bl Random
|
||||
movs r1, #0x7f
|
||||
ands r0, r1
|
||||
movs r1, #0x80
|
||||
orrs r0, r1
|
||||
strh r0, [r7]
|
||||
ldrb r0, [r4, #0xa]
|
||||
cmp r0, #3
|
||||
bne _0802C48C
|
||||
strb r0, [r4, #0xc]
|
||||
_0802C48C:
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x38
|
||||
movs r0, #3
|
||||
strb r0, [r1]
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x29
|
||||
ldrb r1, [r2]
|
||||
subs r0, #0xb
|
||||
ands r0, r1
|
||||
movs r1, #1
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
adds r0, r4, #0
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_0802C4AA:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
|
||||
thumb_func_start nullsub_148
|
||||
nullsub_148: @ 0x0802C4AC
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802C4B0
|
||||
sub_0802C4B0: @ 0x0802C4B0
|
||||
push {r4, r5, r6, lr}
|
||||
adds r5, r0, #0
|
||||
adds r0, #0x7e
|
||||
ldrh r0, [r0]
|
||||
adds r1, r5, #0
|
||||
adds r1, #0x38
|
||||
ldrb r1, [r1]
|
||||
bl sub_080001DA
|
||||
adds r1, r0, #0
|
||||
ldr r0, _0802C4D8 @ =0x000001AB
|
||||
cmp r1, r0
|
||||
blo _0802C4E4
|
||||
adds r0, #4
|
||||
cmp r1, r0
|
||||
bls _0802C4DC
|
||||
adds r0, #0x15
|
||||
cmp r1, r0
|
||||
beq _0802C4E0
|
||||
b _0802C4E4
|
||||
.align 2, 0
|
||||
_0802C4D8: .4byte 0x000001AB
|
||||
_0802C4DC:
|
||||
movs r6, #8
|
||||
b _0802C4E6
|
||||
_0802C4E0:
|
||||
movs r6, #4
|
||||
b _0802C4E6
|
||||
_0802C4E4:
|
||||
movs r6, #0
|
||||
_0802C4E6:
|
||||
bl Random
|
||||
adds r4, r0, #0
|
||||
movs r0, #7
|
||||
ands r4, r0
|
||||
movs r0, #4
|
||||
ands r0, r4
|
||||
cmp r0, #0
|
||||
beq _0802C518
|
||||
movs r0, #3
|
||||
ands r4, r0
|
||||
cmp r4, #0
|
||||
beq _0802C50C
|
||||
ldr r0, _0802C508 @ =gUnk_080CD568
|
||||
movs r1, #2
|
||||
orrs r1, r6
|
||||
b _0802C532
|
||||
.align 2, 0
|
||||
_0802C508: .4byte gUnk_080CD568
|
||||
_0802C50C:
|
||||
ldr r0, _0802C514 @ =gUnk_080CD568
|
||||
lsls r1, r6, #1
|
||||
b _0802C534
|
||||
.align 2, 0
|
||||
_0802C514: .4byte gUnk_080CD568
|
||||
_0802C518:
|
||||
movs r2, #3
|
||||
ands r4, r2
|
||||
cmp r4, #0
|
||||
beq _0802C52C
|
||||
ldr r0, _0802C528 @ =gUnk_080CD568
|
||||
movs r1, #1
|
||||
orrs r1, r6
|
||||
b _0802C532
|
||||
.align 2, 0
|
||||
_0802C528: .4byte gUnk_080CD568
|
||||
_0802C52C:
|
||||
ldr r0, _0802C570 @ =gUnk_080CD568
|
||||
adds r1, r6, #0
|
||||
orrs r1, r2
|
||||
_0802C532:
|
||||
lsls r1, r1, #1
|
||||
_0802C534:
|
||||
adds r1, r1, r0
|
||||
ldrh r0, [r1]
|
||||
strh r0, [r5, #0x24]
|
||||
bl Random
|
||||
adds r4, r0, #0
|
||||
movs r0, #7
|
||||
ands r4, r0
|
||||
movs r0, #4
|
||||
ands r0, r4
|
||||
cmp r0, #0
|
||||
beq _0802C584
|
||||
ldrb r0, [r5, #0xe]
|
||||
cmp r0, #0
|
||||
beq _0802C55E
|
||||
movs r0, #0
|
||||
strb r0, [r5, #0xe]
|
||||
adds r0, r5, #0
|
||||
movs r1, #0
|
||||
bl InitializeAnimation
|
||||
_0802C55E:
|
||||
movs r0, #3
|
||||
ands r4, r0
|
||||
cmp r4, #0
|
||||
beq _0802C578
|
||||
ldr r0, _0802C574 @ =gUnk_080CD580
|
||||
movs r1, #1
|
||||
orrs r1, r6
|
||||
b _0802C5B2
|
||||
.align 2, 0
|
||||
_0802C570: .4byte gUnk_080CD568
|
||||
_0802C574: .4byte gUnk_080CD580
|
||||
_0802C578:
|
||||
ldr r0, _0802C580 @ =gUnk_080CD580
|
||||
adds r0, r6, r0
|
||||
ldrb r0, [r0]
|
||||
b _0802C5B6
|
||||
.align 2, 0
|
||||
_0802C580: .4byte gUnk_080CD580
|
||||
_0802C584:
|
||||
ldrb r0, [r5, #0xe]
|
||||
cmp r0, #1
|
||||
beq _0802C596
|
||||
movs r0, #1
|
||||
strb r0, [r5, #0xe]
|
||||
adds r0, r5, #0
|
||||
movs r1, #1
|
||||
bl InitializeAnimation
|
||||
_0802C596:
|
||||
movs r2, #3
|
||||
ands r4, r2
|
||||
cmp r4, #0
|
||||
beq _0802C5AC
|
||||
ldr r0, _0802C5A8 @ =gUnk_080CD580
|
||||
movs r1, #2
|
||||
orrs r1, r6
|
||||
b _0802C5B2
|
||||
.align 2, 0
|
||||
_0802C5A8: .4byte gUnk_080CD580
|
||||
_0802C5AC:
|
||||
ldr r0, _0802C5E4 @ =gUnk_080CD580
|
||||
adds r1, r6, #0
|
||||
orrs r1, r2
|
||||
_0802C5B2:
|
||||
adds r1, r1, r0
|
||||
ldrb r0, [r1]
|
||||
_0802C5B6:
|
||||
strb r0, [r5, #0x15]
|
||||
bl Random
|
||||
adds r4, r0, #0
|
||||
movs r0, #7
|
||||
ands r4, r0
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #0xa
|
||||
str r0, [r5, #0x20]
|
||||
movs r0, #4
|
||||
ands r0, r4
|
||||
cmp r0, #0
|
||||
beq _0802C5FC
|
||||
movs r0, #3
|
||||
ands r4, r0
|
||||
cmp r4, #0
|
||||
beq _0802C5EC
|
||||
adds r2, r5, #0
|
||||
adds r2, #0x84
|
||||
ldr r1, _0802C5E8 @ =gUnk_080CD58C
|
||||
movs r0, #1
|
||||
orrs r6, r0
|
||||
b _0802C61A
|
||||
.align 2, 0
|
||||
_0802C5E4: .4byte gUnk_080CD580
|
||||
_0802C5E8: .4byte gUnk_080CD58C
|
||||
_0802C5EC:
|
||||
adds r2, r5, #0
|
||||
adds r2, #0x84
|
||||
ldr r1, _0802C5F8 @ =gUnk_080CD58C
|
||||
orrs r6, r0
|
||||
b _0802C61A
|
||||
.align 2, 0
|
||||
_0802C5F8: .4byte gUnk_080CD58C
|
||||
_0802C5FC:
|
||||
movs r0, #3
|
||||
ands r4, r0
|
||||
cmp r4, #0
|
||||
beq _0802C614
|
||||
adds r2, r5, #0
|
||||
adds r2, #0x84
|
||||
ldr r1, _0802C610 @ =gUnk_080CD58C
|
||||
movs r0, #2
|
||||
orrs r6, r0
|
||||
b _0802C61A
|
||||
.align 2, 0
|
||||
_0802C610: .4byte gUnk_080CD58C
|
||||
_0802C614:
|
||||
adds r2, r5, #0
|
||||
adds r2, #0x84
|
||||
ldr r1, _0802C628 @ =gUnk_080CD58C
|
||||
_0802C61A:
|
||||
lsls r0, r6, #1
|
||||
adds r0, r0, r1
|
||||
movs r1, #0
|
||||
ldrsh r0, [r0, r1]
|
||||
str r0, [r2]
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
_0802C628: .4byte gUnk_080CD58C
|
||||
|
||||
thumb_func_start sub_0802C62C
|
||||
sub_0802C62C: @ 0x0802C62C
|
||||
adds r3, r0, #0
|
||||
movs r2, #0
|
||||
movs r0, #1
|
||||
strb r0, [r3, #0xc]
|
||||
adds r0, r3, #0
|
||||
adds r0, #0x82
|
||||
ldrh r0, [r0]
|
||||
strh r0, [r3, #0x32]
|
||||
adds r0, r3, #0
|
||||
adds r0, #0x80
|
||||
ldrh r0, [r0]
|
||||
strh r0, [r3, #0x2e]
|
||||
ldrb r1, [r3, #0x18]
|
||||
movs r0, #4
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
strb r0, [r3, #0x18]
|
||||
ldrb r1, [r3, #0x10]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
strb r0, [r3, #0x10]
|
||||
adds r0, r3, #0
|
||||
adds r0, #0x7c
|
||||
strh r2, [r0]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
@@ -347,7 +347,7 @@ sub_0809F0E4: @ 0x0809F0E4
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
ldr r0, _0809F124 @ =0x00000183
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
ldrb r0, [r5, #0xa]
|
||||
movs r1, #2
|
||||
eors r1, r0
|
||||
|
||||
@@ -266,7 +266,7 @@ _08087D60:
|
||||
bl PositionRelative
|
||||
_08087DAA:
|
||||
ldr r0, _08087DB8 @ =0x00000111
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_08087DB0:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
@@ -1,283 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start FireballGuy
|
||||
FireballGuy: @ 0x08045394
|
||||
push {lr}
|
||||
ldr r1, _080453A0 @ =gUnk_080D17E8
|
||||
bl EnemyFunctionHandler
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_080453A0: .4byte gUnk_080D17E8
|
||||
|
||||
thumb_func_start sub_080453A4
|
||||
sub_080453A4: @ 0x080453A4
|
||||
push {lr}
|
||||
ldr r2, _080453B8 @ =gUnk_080D1800
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_080453B8: .4byte gUnk_080D1800
|
||||
|
||||
thumb_func_start sub_080453BC
|
||||
sub_080453BC: @ 0x080453BC
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
adds r0, #0x45
|
||||
ldrb r1, [r0]
|
||||
cmp r1, #0
|
||||
beq _080453D6
|
||||
adds r0, #0x3f
|
||||
ldrb r0, [r0]
|
||||
cmp r0, r1
|
||||
beq _080453D6
|
||||
movs r0, #2
|
||||
strb r0, [r2, #0xc]
|
||||
b _080453DE
|
||||
_080453D6:
|
||||
ldr r1, _080453E0 @ =gUnk_080D17E8
|
||||
adds r0, r2, #0
|
||||
bl sub_0804AA30
|
||||
_080453DE:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_080453E0: .4byte gUnk_080D17E8
|
||||
|
||||
thumb_func_start nullsub_172
|
||||
nullsub_172: @ 0x080453E4
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_080453E8
|
||||
sub_080453E8: @ 0x080453E8
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #0
|
||||
movs r2, #1
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
strb r1, [r4, #0xe]
|
||||
ldrb r1, [r4, #0x18]
|
||||
subs r0, #5
|
||||
ands r0, r1
|
||||
orrs r0, r2
|
||||
strb r0, [r4, #0x18]
|
||||
movs r0, #0x80
|
||||
strh r0, [r4, #0x24]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x45
|
||||
ldrb r1, [r0]
|
||||
adds r0, #0x3f
|
||||
strb r1, [r0]
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x3c
|
||||
ldrb r1, [r2]
|
||||
movs r0, #0x10
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
adds r0, r4, #0
|
||||
bl sub_0804A720
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl InitializeAnimation
|
||||
adds r0, r4, #0
|
||||
bl sub_08045524
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_08045430
|
||||
sub_08045430: @ 0x08045430
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_080AEFE0
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
movs r1, #0xc0
|
||||
lsls r1, r1, #5
|
||||
adds r0, r4, #0
|
||||
bl sub_08003FC4
|
||||
cmp r0, #0
|
||||
bne _08045452
|
||||
adds r0, r4, #0
|
||||
bl sub_08045524
|
||||
_08045452:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_08045454
|
||||
sub_08045454: @ 0x08045454
|
||||
push {r4, r5, r6, r7, lr}
|
||||
mov r7, sb
|
||||
mov r6, r8
|
||||
push {r6, r7}
|
||||
sub sp, #0x10
|
||||
mov r8, r0
|
||||
ldr r1, _08045518 @ =gUnk_080D180C
|
||||
ldrb r0, [r0, #0xa]
|
||||
adds r0, r0, r1
|
||||
ldrb r7, [r0]
|
||||
movs r0, #0x48
|
||||
subs r0, r0, r7
|
||||
ldr r1, _0804551C @ =gEntCount
|
||||
ldrb r1, [r1]
|
||||
cmp r0, r1
|
||||
ble _0804550C
|
||||
cmp r7, #0
|
||||
beq _0804548E
|
||||
mov r4, sp
|
||||
adds r5, r7, #0
|
||||
_0804547C:
|
||||
mov r0, r8
|
||||
ldrb r1, [r0, #0xa]
|
||||
movs r0, #0x59
|
||||
bl CreateEnemy
|
||||
stm r4!, {r0}
|
||||
subs r5, #1
|
||||
cmp r5, #0
|
||||
bne _0804547C
|
||||
_0804548E:
|
||||
ldr r2, _08045520 @ =gUnk_080D1810
|
||||
mov sb, r2
|
||||
movs r5, #0
|
||||
cmp r5, r7
|
||||
bge _080454EE
|
||||
_08045498:
|
||||
lsls r0, r5, #2
|
||||
add r0, sp
|
||||
ldr r6, [r0]
|
||||
adds r4, r5, #1
|
||||
adds r0, r4, #0
|
||||
adds r1, r7, #0
|
||||
bl __modsi3
|
||||
lsls r0, r0, #2
|
||||
add r0, sp
|
||||
ldr r0, [r0]
|
||||
str r0, [r6, #0x54]
|
||||
adds r0, r5, r7
|
||||
subs r0, #1
|
||||
adds r1, r7, #0
|
||||
bl __modsi3
|
||||
lsls r0, r0, #2
|
||||
add r0, sp
|
||||
ldr r0, [r0]
|
||||
str r0, [r6, #0x50]
|
||||
movs r1, #0
|
||||
movs r0, #1
|
||||
strb r0, [r6, #0xb]
|
||||
strh r1, [r6, #0x36]
|
||||
adds r1, r6, #0
|
||||
adds r1, #0x3d
|
||||
movs r0, #0xf0
|
||||
strb r0, [r1]
|
||||
mov r0, sb
|
||||
movs r2, #0
|
||||
ldrsb r2, [r0, r2]
|
||||
movs r3, #1
|
||||
ldrsb r3, [r0, r3]
|
||||
mov r0, r8
|
||||
adds r1, r6, #0
|
||||
bl sub_08045178
|
||||
movs r2, #2
|
||||
add sb, r2
|
||||
adds r5, r4, #0
|
||||
cmp r5, r7
|
||||
blt _08045498
|
||||
_080454EE:
|
||||
mov r0, r8
|
||||
movs r1, #2
|
||||
movs r2, #0
|
||||
bl CreateFx
|
||||
adds r6, r0, #0
|
||||
cmp r6, #0
|
||||
beq _08045506
|
||||
mov r0, r8
|
||||
adds r1, r6, #0
|
||||
bl CopyPosition
|
||||
_08045506:
|
||||
mov r0, r8
|
||||
bl DeleteEntity
|
||||
_0804550C:
|
||||
add sp, #0x10
|
||||
pop {r3, r4}
|
||||
mov r8, r3
|
||||
mov sb, r4
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_08045518: .4byte gUnk_080D180C
|
||||
_0804551C: .4byte gEntCount
|
||||
_08045520: .4byte gUnk_080D1810
|
||||
|
||||
thumb_func_start sub_08045524
|
||||
sub_08045524: @ 0x08045524
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
movs r0, #0xe0
|
||||
lsls r0, r0, #9
|
||||
str r0, [r5, #0x20]
|
||||
adds r0, r5, #0
|
||||
movs r1, #1
|
||||
movs r2, #8
|
||||
bl sub_0804A024
|
||||
adds r4, r0, #0
|
||||
cmp r4, #0xff
|
||||
beq _08045556
|
||||
bl Random
|
||||
movs r1, #3
|
||||
ands r1, r0
|
||||
cmp r1, #0
|
||||
bne _08045556
|
||||
bl Random
|
||||
movs r1, #3
|
||||
ands r0, r1
|
||||
strb r0, [r5, #0xe]
|
||||
b _08045596
|
||||
_08045556:
|
||||
ldrb r0, [r5, #0xe]
|
||||
cmp r0, #0
|
||||
beq _08045562
|
||||
subs r0, #1
|
||||
strb r0, [r5, #0xe]
|
||||
b _080455A8
|
||||
_08045562:
|
||||
bl Random
|
||||
movs r1, #3
|
||||
ands r0, r1
|
||||
strb r0, [r5, #0xe]
|
||||
adds r0, r5, #0
|
||||
bl sub_08049FA0
|
||||
cmp r0, #0
|
||||
bne _0804559E
|
||||
bl Random
|
||||
movs r1, #3
|
||||
ands r1, r0
|
||||
cmp r1, #0
|
||||
beq _0804559E
|
||||
adds r0, r5, #0
|
||||
bl sub_08049EE4
|
||||
adds r4, r0, #0
|
||||
bl Random
|
||||
movs r1, #8
|
||||
ands r0, r1
|
||||
adds r0, #0xfc
|
||||
adds r4, r4, r0
|
||||
_08045596:
|
||||
movs r0, #0x18
|
||||
ands r4, r0
|
||||
strb r4, [r5, #0x15]
|
||||
b _080455A8
|
||||
_0804559E:
|
||||
bl Random
|
||||
movs r1, #0x18
|
||||
ands r0, r1
|
||||
strb r0, [r5, #0x15]
|
||||
_080455A8:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
@@ -1,39 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start FloatingBlock
|
||||
FloatingBlock: @ 0x080A0554
|
||||
push {lr}
|
||||
adds r3, r0, #0
|
||||
ldrb r0, [r3, #0xc]
|
||||
cmp r0, #0
|
||||
bne _080A0588
|
||||
movs r2, #1
|
||||
strb r2, [r3, #0xc]
|
||||
ldrb r0, [r3, #0xa]
|
||||
strb r0, [r3, #0x1e]
|
||||
movs r0, #0x29
|
||||
adds r0, r0, r3
|
||||
mov ip, r0
|
||||
ldrb r1, [r0]
|
||||
movs r0, #8
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
movs r1, #6
|
||||
orrs r0, r1
|
||||
mov r1, ip
|
||||
strb r0, [r1]
|
||||
adds r0, r3, #0
|
||||
adds r0, #0x38
|
||||
strb r2, [r0]
|
||||
adds r0, r3, #0
|
||||
bl UpdateSpriteForCollisionLayer
|
||||
_080A0588:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
+1
-1
@@ -342,7 +342,7 @@ _080372CC:
|
||||
adds r0, r5, #0
|
||||
movs r1, #1
|
||||
movs r2, #0x40
|
||||
bl sub_08049F64
|
||||
bl PlayerInRange
|
||||
cmp r0, #0
|
||||
beq _080372E2
|
||||
movs r0, #2
|
||||
|
||||
@@ -96,7 +96,7 @@ sub_0809BF1C: @ 0x0809BF1C
|
||||
lsls r0, r0, #1
|
||||
strh r0, [r1]
|
||||
adds r0, #0x73
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_0809BF6C:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
@@ -129,7 +129,7 @@ _0809BFA0:
|
||||
cmp r1, #0
|
||||
bne _0809BFAE
|
||||
ldr r0, _0809C09C @ =0x000001B3
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_0809BFAE:
|
||||
ldrh r0, [r5]
|
||||
cmp r0, #0x77
|
||||
|
||||
+3
-3
@@ -196,7 +196,7 @@ _080375D2:
|
||||
adds r0, r4, #0
|
||||
bl UpdateAnimationSingleFrame
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
cmp r0, #0
|
||||
bne _080375F4
|
||||
ldrb r0, [r4, #0xf]
|
||||
@@ -263,7 +263,7 @@ _08037652:
|
||||
adds r0, r4, #0
|
||||
bl UpdateAnimationSingleFrame
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
cmp r0, #0
|
||||
bne _0803767C
|
||||
ldrb r0, [r4, #0xf]
|
||||
@@ -316,7 +316,7 @@ _080376B6:
|
||||
movs r0, #0x27
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
_080376CC:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
+1
-1
@@ -857,7 +857,7 @@ _0802D6C4:
|
||||
rsbs r2, r2, #0
|
||||
adds r0, r5, #0
|
||||
movs r1, #0xc
|
||||
bl sub_080A2CFC
|
||||
bl CreateSpeechBubbleExclamationMark
|
||||
_0802D6D8:
|
||||
strb r6, [r5, #0x14]
|
||||
b _0802D6EC
|
||||
|
||||
@@ -84,7 +84,7 @@ _080640E8:
|
||||
bl InitializeAnimation
|
||||
_0806410A:
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
movs r0, #0x2e
|
||||
ldrsh r1, [r4, r0]
|
||||
adds r2, r4, #0
|
||||
@@ -213,7 +213,7 @@ _080641E6:
|
||||
movs r0, #0x32
|
||||
ldrsh r4, [r5, r0]
|
||||
adds r0, r5, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
movs r1, #0x32
|
||||
ldrsh r0, [r5, r1]
|
||||
adds r6, r5, #0
|
||||
@@ -234,7 +234,7 @@ _080641E6:
|
||||
cmp r0, #0
|
||||
bne _08064222
|
||||
adds r0, r5, #0
|
||||
bl sub_080A29FC
|
||||
bl CreateDustSmall
|
||||
_08064222:
|
||||
adds r4, r5, #0
|
||||
adds r4, #0x71
|
||||
@@ -299,7 +299,7 @@ _0806428C:
|
||||
cmp r0, #0
|
||||
bne _080642AC
|
||||
adds r0, r5, #0
|
||||
bl sub_080A29FC
|
||||
bl CreateDustSmall
|
||||
_080642AC:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
@@ -358,7 +358,7 @@ _08064306:
|
||||
movs r0, #0x2e
|
||||
ldrsh r4, [r5, r0]
|
||||
adds r0, r5, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
movs r1, #0x2e
|
||||
ldrsh r0, [r5, r1]
|
||||
adds r6, r5, #0
|
||||
@@ -379,7 +379,7 @@ _08064306:
|
||||
cmp r0, #0
|
||||
bne _08064342
|
||||
adds r0, r5, #0
|
||||
bl sub_080A29FC
|
||||
bl CreateDustSmall
|
||||
_08064342:
|
||||
adds r4, r5, #0
|
||||
adds r4, #0x71
|
||||
@@ -444,7 +444,7 @@ _080643AC:
|
||||
cmp r0, #0
|
||||
bne _080643CC
|
||||
adds r0, r5, #0
|
||||
bl sub_080A29FC
|
||||
bl CreateDustSmall
|
||||
_080643CC:
|
||||
pop {r4, r5, r6, pc}
|
||||
.align 2, 0
|
||||
|
||||
+8
-8
@@ -113,7 +113,7 @@ sub_0804614C: @ 0x0804614C
|
||||
lsls r4, r4, #8
|
||||
adds r1, r4, #0
|
||||
bl _DmaZero
|
||||
ldr r0, _08046250 @ =gUnk_02002F00
|
||||
ldr r0, _08046250 @ =gMapDataTopSpecial
|
||||
adds r1, r4, #0
|
||||
bl _DmaZero
|
||||
adds r0, r6, #0
|
||||
@@ -135,7 +135,7 @@ _08046244:
|
||||
.align 2, 0
|
||||
_08046248: .4byte gEntCount
|
||||
_0804624C: .4byte gUnk_02019EE0
|
||||
_08046250: .4byte gUnk_02002F00
|
||||
_08046250: .4byte gMapDataTopSpecial
|
||||
_08046254: .4byte gPlayerEntity
|
||||
_08046258: .4byte sub_08046498
|
||||
|
||||
@@ -446,7 +446,7 @@ sub_08046498: @ 0x08046498
|
||||
lsls r4, r4, #8
|
||||
adds r1, r4, #0
|
||||
bl _DmaZero
|
||||
ldr r0, _080464BC @ =gUnk_02002F00
|
||||
ldr r0, _080464BC @ =gMapDataTopSpecial
|
||||
adds r1, r4, #0
|
||||
bl _DmaZero
|
||||
adds r0, r5, #0
|
||||
@@ -454,7 +454,7 @@ sub_08046498: @ 0x08046498
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_080464B8: .4byte gUnk_02019EE0
|
||||
_080464BC: .4byte gUnk_02002F00
|
||||
_080464BC: .4byte gMapDataTopSpecial
|
||||
|
||||
thumb_func_start sub_080464C0
|
||||
sub_080464C0: @ 0x080464C0
|
||||
@@ -475,7 +475,7 @@ _080464DE:
|
||||
adds r0, r4, #0
|
||||
adds r1, r5, #0
|
||||
movs r2, #0x40
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #1
|
||||
adds r5, r5, r0
|
||||
@@ -505,7 +505,7 @@ sub_08046518: @ 0x08046518
|
||||
mov r5, r8
|
||||
push {r5, r6, r7}
|
||||
sub sp, #8
|
||||
ldr r1, _080465AC @ =gUnk_02010654
|
||||
ldr r1, _080465AC @ =gMetatileTypesTop
|
||||
ldr r2, _080465B0 @ =0xFFFFBCB0
|
||||
adds r0, r1, r2
|
||||
ldr r3, _080465B4 @ =0xFFFFECB0
|
||||
@@ -541,7 +541,7 @@ _08046560:
|
||||
strh r0, [r4]
|
||||
ldrh r0, [r3]
|
||||
lsls r0, r0, #1
|
||||
ldr r7, _080465AC @ =gUnk_02010654
|
||||
ldr r7, _080465AC @ =gMetatileTypesTop
|
||||
adds r0, r0, r7
|
||||
ldrh r1, [r0]
|
||||
ldr r0, [sp, #4]
|
||||
@@ -575,7 +575,7 @@ _08046560:
|
||||
mov sl, r5
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_080465AC: .4byte gUnk_02010654
|
||||
_080465AC: .4byte gMetatileTypesTop
|
||||
_080465B0: .4byte 0xFFFFBCB0
|
||||
_080465B4: .4byte 0xFFFFECB0
|
||||
_080465B8: .4byte 0x00006658
|
||||
|
||||
-936
@@ -1,936 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start Helmasaur
|
||||
Helmasaur: @ 0x0802BB6C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xa]
|
||||
cmp r0, #0
|
||||
bne _0802BB94
|
||||
ldr r1, _0802BB90 @ =gUnk_080CD3E4
|
||||
adds r0, r4, #0
|
||||
bl EnemyFunctionHandler
|
||||
movs r3, #0x10
|
||||
rsbs r3, r3, #0
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
movs r2, #1
|
||||
bl SetChildOffset
|
||||
b _0802BBA4
|
||||
.align 2, 0
|
||||
_0802BB90: .4byte gUnk_080CD3E4
|
||||
_0802BB94:
|
||||
ldr r0, _0802BBA8 @ =gUnk_080CD3FC
|
||||
ldrb r1, [r4, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r0
|
||||
ldr r1, [r1]
|
||||
adds r0, r4, #0
|
||||
bl _call_via_r1
|
||||
_0802BBA4:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0802BBA8: .4byte gUnk_080CD3FC
|
||||
|
||||
thumb_func_start sub_0802BBAC
|
||||
sub_0802BBAC: @ 0x0802BBAC
|
||||
push {lr}
|
||||
ldr r2, _0802BBC0 @ =gUnk_080CD408
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0802BBC0: .4byte gUnk_080CD408
|
||||
|
||||
thumb_func_start sub_0802BBC4
|
||||
sub_0802BBC4: @ 0x0802BBC4
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, #0x3f
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0x19
|
||||
beq _0802BBFE
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x41
|
||||
ldrb r0, [r0]
|
||||
movs r1, #0x7f
|
||||
ands r1, r0
|
||||
cmp r1, #0
|
||||
beq _0802BBEA
|
||||
cmp r1, #0
|
||||
blt _0802BBFE
|
||||
cmp r1, #3
|
||||
bgt _0802BBFE
|
||||
cmp r1, #2
|
||||
blt _0802BBFE
|
||||
_0802BBEA:
|
||||
ldrb r0, [r4, #0xc]
|
||||
cmp r0, #4
|
||||
bne _0802BBFE
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x42
|
||||
movs r0, #0
|
||||
strb r0, [r1]
|
||||
adds r0, r4, #0
|
||||
bl sub_0802C218
|
||||
_0802BBFE:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x43
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _0802BC10
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x1c
|
||||
bl sub_0804A9FC
|
||||
_0802BC10:
|
||||
ldr r1, _0802BC1C @ =gUnk_080CD3E4
|
||||
adds r0, r4, #0
|
||||
bl sub_0804AA30
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0802BC1C: .4byte gUnk_080CD3E4
|
||||
|
||||
thumb_func_start sub_0802BC20
|
||||
sub_0802BC20: @ 0x0802BC20
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, #0x3f
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0x19
|
||||
beq _0802BC4C
|
||||
adds r0, r4, #0
|
||||
bl sub_0806F520
|
||||
cmp r0, #0
|
||||
beq _0802BC6C
|
||||
ldr r0, _0802BC48 @ =gUnk_080CD42C
|
||||
ldrb r1, [r4, #0xd]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r0
|
||||
ldr r1, [r1]
|
||||
adds r0, r4, #0
|
||||
bl _call_via_r1
|
||||
b _0802BC6C
|
||||
.align 2, 0
|
||||
_0802BC48: .4byte gUnk_080CD42C
|
||||
_0802BC4C:
|
||||
ldrb r0, [r4, #0xd]
|
||||
cmp r0, #2
|
||||
bhi _0802BC5C
|
||||
adds r0, r4, #0
|
||||
bl sub_0806F520
|
||||
cmp r0, #0
|
||||
beq _0802BC6C
|
||||
_0802BC5C:
|
||||
ldr r0, _0802BC70 @ =gUnk_080CD438
|
||||
ldrb r1, [r4, #0xd]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r0
|
||||
ldr r1, [r1]
|
||||
adds r0, r4, #0
|
||||
bl _call_via_r1
|
||||
_0802BC6C:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0802BC70: .4byte gUnk_080CD438
|
||||
|
||||
thumb_func_start sub_0802BC74
|
||||
sub_0802BC74: @ 0x0802BC74
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0802C1C0
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xd]
|
||||
movs r0, #0x3c
|
||||
strb r0, [r4, #0x1d]
|
||||
ldr r0, _0802BC9C @ =gPlayerEntity
|
||||
ldrb r0, [r0, #0x14]
|
||||
lsrs r0, r0, #1
|
||||
movs r1, #2
|
||||
eors r0, r1
|
||||
strb r0, [r4, #0x14]
|
||||
ldrb r1, [r4, #0x14]
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0802BC9C: .4byte gPlayerEntity
|
||||
|
||||
thumb_func_start sub_0802BCA0
|
||||
sub_0802BCA0: @ 0x0802BCA0
|
||||
push {lr}
|
||||
bl sub_0806F4E8
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0802BCA8
|
||||
sub_0802BCA8: @ 0x0802BCA8
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x3f
|
||||
ldrb r0, [r1]
|
||||
cmp r0, #0x19
|
||||
beq _0802BCFA
|
||||
movs r0, #7
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x5a
|
||||
strb r0, [r4, #0xe]
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #9
|
||||
str r0, [r4, #0x20]
|
||||
movs r0, #0x19
|
||||
strb r0, [r1]
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x3a
|
||||
ldrb r1, [r2]
|
||||
movs r0, #0xfb
|
||||
ands r0, r1
|
||||
strb r0, [r2]
|
||||
movs r0, #0x12
|
||||
strb r0, [r4, #0x1c]
|
||||
movs r0, #0x20
|
||||
movs r1, #1
|
||||
bl CreateEnemy
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _0802BCF0
|
||||
ldrb r0, [r4, #0x14]
|
||||
strb r0, [r1, #0x14]
|
||||
adds r0, r4, #0
|
||||
bl CopyPosition
|
||||
_0802BCF0:
|
||||
ldrb r1, [r4, #0x14]
|
||||
adds r1, #4
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
_0802BCFA:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0802BCFC
|
||||
sub_0802BCFC: @ 0x0802BCFC
|
||||
movs r1, #1
|
||||
strb r1, [r0, #0xd]
|
||||
movs r1, #0x3c
|
||||
strb r1, [r0, #0x1d]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802BD08
|
||||
sub_0802BD08: @ 0x0802BD08
|
||||
push {lr}
|
||||
bl sub_0806F3E4
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0802BD10
|
||||
sub_0802BD10: @ 0x0802BD10
|
||||
push {lr}
|
||||
ldrb r2, [r0, #0x10]
|
||||
movs r1, #0x7f
|
||||
ands r1, r2
|
||||
strb r1, [r0, #0x10]
|
||||
movs r1, #2
|
||||
bl UpdateAnimationVariableFrames
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start nullsub_145
|
||||
nullsub_145: @ 0x0802BD24
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802BD28
|
||||
sub_0802BD28: @ 0x0802BD28
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
ldrb r3, [r2, #0x10]
|
||||
movs r0, #0x80
|
||||
ands r0, r3
|
||||
lsls r0, r0, #0x18
|
||||
lsrs r1, r0, #0x18
|
||||
cmp r1, #0
|
||||
beq _0802BD4C
|
||||
movs r0, #0x80
|
||||
orrs r0, r3
|
||||
strb r0, [r2, #0x10]
|
||||
adds r2, #0x3a
|
||||
ldrb r1, [r2]
|
||||
movs r0, #0xfb
|
||||
ands r0, r1
|
||||
strb r0, [r2]
|
||||
b _0802BD52
|
||||
_0802BD4C:
|
||||
adds r0, r2, #0
|
||||
adds r0, #0x45
|
||||
strb r1, [r0]
|
||||
_0802BD52:
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0802BD54
|
||||
sub_0802BD54: @ 0x0802BD54
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0804A720
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
bl Random
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x78
|
||||
strb r0, [r1]
|
||||
movs r0, #0x3c
|
||||
strb r0, [r4, #0x1d]
|
||||
adds r1, #1
|
||||
movs r0, #0xff
|
||||
strb r0, [r1]
|
||||
bl Random
|
||||
movs r1, #0x18
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x15]
|
||||
lsrs r0, r0, #3
|
||||
strb r0, [r4, #0x14]
|
||||
ldrb r1, [r4, #0x14]
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0802BD8C
|
||||
sub_0802BD8C: @ 0x0802BD8C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xe]
|
||||
cmp r0, #0
|
||||
beq _0802BD9C
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
b _0802BDDE
|
||||
_0802BD9C:
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
bl sub_08049FDC
|
||||
cmp r0, #0
|
||||
beq _0802BDCA
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
movs r2, #0x10
|
||||
bl sub_0804A024
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0xff
|
||||
beq _0802BDCA
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x79
|
||||
ldrb r0, [r0]
|
||||
cmp r1, r0
|
||||
beq _0802BDCA
|
||||
adds r0, r4, #0
|
||||
bl sub_0802C058
|
||||
b _0802BDDE
|
||||
_0802BDCA:
|
||||
adds r0, r4, #0
|
||||
bl sub_0802C020
|
||||
adds r1, r0, #0
|
||||
ldrb r0, [r4, #0x15]
|
||||
cmp r1, r0
|
||||
beq _0802BDDE
|
||||
adds r0, r4, #0
|
||||
bl sub_0802C058
|
||||
_0802BDDE:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0802BDE0
|
||||
sub_0802BDE0: @ 0x0802BDE0
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0802C06C
|
||||
cmp r0, #0
|
||||
beq _0802BDFE
|
||||
movs r0, #3
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x3c
|
||||
strb r0, [r4, #0xe]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x79
|
||||
movs r0, #0xff
|
||||
strb r0, [r1]
|
||||
b _0802BE16
|
||||
_0802BDFE:
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
bl Random
|
||||
movs r1, #0xf
|
||||
ands r0, r1
|
||||
adds r0, #0xf
|
||||
strb r0, [r4, #0xe]
|
||||
ldrb r1, [r4, #0x15]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x79
|
||||
strb r1, [r0]
|
||||
_0802BE16:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0802BE18
|
||||
sub_0802BE18: @ 0x0802BE18
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #2
|
||||
bl UpdateAnimationVariableFrames
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _0802BE3E
|
||||
movs r0, #4
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x1e
|
||||
strb r0, [r4, #0xe]
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #2
|
||||
strh r0, [r4, #0x24]
|
||||
b _0802BE44
|
||||
_0802BE3E:
|
||||
adds r0, r4, #0
|
||||
bl sub_0802C18C
|
||||
_0802BE44:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802BE48
|
||||
sub_0802BE48: @ 0x0802BE48
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_080AEFE0
|
||||
cmp r0, #0
|
||||
bne _0802BE64
|
||||
adds r0, r4, #0
|
||||
bl sub_0802C218
|
||||
movs r0, #8
|
||||
movs r1, #0
|
||||
bl sub_08080964
|
||||
b _0802BE7E
|
||||
_0802BE64:
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
adds r0, r4, #0
|
||||
bl sub_0802C1CC
|
||||
adds r0, r4, #0
|
||||
bl sub_0802C0E8
|
||||
cmp r0, #0
|
||||
beq _0802BE7E
|
||||
movs r0, #5
|
||||
strb r0, [r4, #0xc]
|
||||
_0802BE7E:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0802BE80
|
||||
sub_0802BE80: @ 0x0802BE80
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrh r0, [r4, #0x24]
|
||||
subs r0, #0x20
|
||||
strh r0, [r4, #0x24]
|
||||
lsls r0, r0, #0x10
|
||||
asrs r0, r0, #0x10
|
||||
cmp r0, #0xff
|
||||
ble _0802BE98
|
||||
adds r0, r4, #0
|
||||
bl sub_0802C1CC
|
||||
_0802BE98:
|
||||
movs r1, #0x24
|
||||
ldrsh r0, [r4, r1]
|
||||
cmp r0, #0
|
||||
ble _0802BEAE
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEFE0
|
||||
adds r0, r4, #0
|
||||
bl sub_0802C18C
|
||||
b _0802BEBA
|
||||
_0802BEAE:
|
||||
adds r0, r4, #0
|
||||
bl sub_0802C1C0
|
||||
ldrb r0, [r4, #0xe]
|
||||
adds r0, #0x1e
|
||||
strb r0, [r4, #0xe]
|
||||
_0802BEBA:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0802BEBC
|
||||
sub_0802BEBC: @ 0x0802BEBC
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
ldrb r0, [r5, #0x15]
|
||||
movs r4, #0x10
|
||||
eors r0, r4
|
||||
strb r0, [r5, #0x15]
|
||||
adds r0, r5, #0
|
||||
bl sub_080AEFE0
|
||||
ldrb r0, [r5, #0x15]
|
||||
eors r0, r4
|
||||
strb r0, [r5, #0x15]
|
||||
movs r1, #0x80
|
||||
lsls r1, r1, #6
|
||||
adds r0, r5, #0
|
||||
bl sub_080044EC
|
||||
cmp r0, #0
|
||||
bne _0802BEE8
|
||||
adds r0, r5, #0
|
||||
bl sub_0802C1C0
|
||||
_0802BEE8:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802BEEC
|
||||
sub_0802BEEC: @ 0x0802BEEC
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xe]
|
||||
cmp r0, #0
|
||||
beq _0802BF1E
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
movs r1, #0xff
|
||||
ands r0, r1
|
||||
movs r1, #0x1f
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _0802BF3A
|
||||
ldrb r0, [r4, #0x14]
|
||||
movs r1, #2
|
||||
eors r0, r1
|
||||
strb r0, [r4, #0x14]
|
||||
lsls r0, r0, #3
|
||||
strb r0, [r4, #0x15]
|
||||
ldrb r1, [r4, #0x14]
|
||||
adds r1, #4
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
b _0802BF3A
|
||||
_0802BF1E:
|
||||
movs r1, #0xe0
|
||||
lsls r1, r1, #5
|
||||
adds r0, r4, #0
|
||||
bl sub_08003FC4
|
||||
cmp r0, #0
|
||||
bne _0802BF3A
|
||||
movs r0, #8
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x1e
|
||||
strb r0, [r4, #0xe]
|
||||
movs r0, #0x90
|
||||
lsls r0, r0, #1
|
||||
strh r0, [r4, #0x24]
|
||||
_0802BF3A:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0802BF3C
|
||||
sub_0802BF3C: @ 0x0802BF3C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_080AEF88
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _0802BF76
|
||||
movs r0, #0x1e
|
||||
strb r0, [r4, #0xe]
|
||||
adds r0, r4, #0
|
||||
bl sub_0802C020
|
||||
strb r0, [r4, #0x15]
|
||||
lsls r0, r0, #0x18
|
||||
lsrs r0, r0, #0x1b
|
||||
ldrb r1, [r4, #0x14]
|
||||
cmp r0, r1
|
||||
beq _0802BF76
|
||||
strb r0, [r4, #0x14]
|
||||
adds r1, r0, #4
|
||||
adds r0, r4, #0
|
||||
bl InitializeAnimation
|
||||
_0802BF76:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0802BF78
|
||||
sub_0802BF78: @ 0x0802BF78
|
||||
push {lr}
|
||||
movs r2, #1
|
||||
strb r2, [r0, #0xc]
|
||||
adds r3, r0, #0
|
||||
adds r3, #0x3b
|
||||
movs r1, #4
|
||||
strb r1, [r3]
|
||||
strb r2, [r0, #0x1c]
|
||||
ldrb r1, [r0, #0x14]
|
||||
lsls r1, r1, #3
|
||||
strb r1, [r0, #0x15]
|
||||
ldrb r1, [r0, #0x14]
|
||||
adds r1, #8
|
||||
bl InitializeAnimation
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0802BF98
|
||||
sub_0802BF98: @ 0x0802BF98
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0806F520
|
||||
cmp r0, #0
|
||||
beq _0802BFBC
|
||||
ldr r0, _0802BFB8 @ =gUnk_080CD450
|
||||
ldrb r1, [r4, #0xd]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r0
|
||||
ldr r1, [r1]
|
||||
adds r0, r4, #0
|
||||
bl _call_via_r1
|
||||
b _0802BFCC
|
||||
.align 2, 0
|
||||
_0802BFB8: .4byte gUnk_080CD450
|
||||
_0802BFBC:
|
||||
movs r0, #2
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x1e
|
||||
strb r0, [r4, #0xe]
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
_0802BFCC:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802BFD0
|
||||
sub_0802BFD0: @ 0x0802BFD0
|
||||
movs r1, #2
|
||||
strb r1, [r0, #0xd]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802BFD8
|
||||
sub_0802BFD8: @ 0x0802BFD8
|
||||
push {lr}
|
||||
bl sub_0806F4E8
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0802BFE0
|
||||
sub_0802BFE0: @ 0x0802BFE0
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0806F3E4
|
||||
cmp r0, #0
|
||||
beq _0802BFF2
|
||||
adds r0, r4, #0
|
||||
bl DeleteEntity
|
||||
_0802BFF2:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0802BFF4
|
||||
sub_0802BFF4: @ 0x0802BFF4
|
||||
push {lr}
|
||||
adds r3, r0, #0
|
||||
ldrb r2, [r3, #0x18]
|
||||
lsls r1, r2, #0x1e
|
||||
lsrs r1, r1, #0x1e
|
||||
movs r0, #1
|
||||
eors r1, r0
|
||||
subs r0, #5
|
||||
ands r0, r2
|
||||
orrs r0, r1
|
||||
strb r0, [r3, #0x18]
|
||||
ldrb r0, [r3, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r3, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _0802C01C
|
||||
adds r0, r3, #0
|
||||
bl DeleteEntity
|
||||
_0802C01C:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802C020
|
||||
sub_0802C020: @ 0x0802C020
|
||||
push {r4, r5, r6, lr}
|
||||
adds r5, r0, #0
|
||||
bl Random
|
||||
adds r4, r0, #0
|
||||
adds r0, r5, #0
|
||||
bl sub_08049FA0
|
||||
cmp r0, #0
|
||||
bne _0802C03E
|
||||
movs r6, #1
|
||||
adds r0, r4, #0
|
||||
ands r0, r6
|
||||
cmp r0, #0
|
||||
beq _0802C044
|
||||
_0802C03E:
|
||||
movs r0, #0x18
|
||||
ands r0, r4
|
||||
b _0802C056
|
||||
_0802C044:
|
||||
adds r0, r5, #0
|
||||
bl sub_08049EE4
|
||||
lsrs r1, r4, #0x10
|
||||
ands r1, r6
|
||||
lsls r1, r1, #2
|
||||
adds r0, r0, r1
|
||||
movs r1, #0x18
|
||||
ands r0, r1
|
||||
_0802C056:
|
||||
pop {r4, r5, r6, pc}
|
||||
|
||||
thumb_func_start sub_0802C058
|
||||
sub_0802C058: @ 0x0802C058
|
||||
push {lr}
|
||||
movs r2, #2
|
||||
strb r2, [r0, #0xc]
|
||||
strb r1, [r0, #0x15]
|
||||
lsrs r1, r1, #3
|
||||
strb r1, [r0, #0x14]
|
||||
ldrb r1, [r0, #0x14]
|
||||
bl InitializeAnimation
|
||||
pop {pc}
|
||||
|
||||
thumb_func_start sub_0802C06C
|
||||
sub_0802C06C: @ 0x0802C06C
|
||||
push {r4, r5, r6, r7, lr}
|
||||
mov r7, sb
|
||||
mov r6, r8
|
||||
push {r6, r7}
|
||||
movs r1, #0x2e
|
||||
ldrsh r2, [r0, r1]
|
||||
ldr r3, [r0, #0x48]
|
||||
movs r1, #0
|
||||
ldrsb r1, [r3, r1]
|
||||
adds r6, r2, r1
|
||||
movs r1, #0x32
|
||||
ldrsh r2, [r0, r1]
|
||||
movs r1, #1
|
||||
ldrsb r1, [r3, r1]
|
||||
adds r5, r2, r1
|
||||
ldr r3, _0802C0CC @ =gUnk_080CD45C
|
||||
ldrb r1, [r0, #0x15]
|
||||
lsrs r1, r1, #2
|
||||
adds r2, r1, r3
|
||||
ldrb r2, [r2]
|
||||
lsls r2, r2, #0x18
|
||||
asrs r2, r2, #0x18
|
||||
mov sb, r2
|
||||
adds r1, #1
|
||||
adds r1, r1, r3
|
||||
ldrb r1, [r1]
|
||||
lsls r1, r1, #0x18
|
||||
asrs r1, r1, #0x18
|
||||
mov r8, r1
|
||||
adds r0, #0x38
|
||||
ldrb r0, [r0]
|
||||
ldr r7, _0802C0D0 @ =gUnk_02027EB4
|
||||
cmp r0, #2
|
||||
bne _0802C0B2
|
||||
ldr r7, _0802C0D4 @ =gUnk_0200D654
|
||||
_0802C0B2:
|
||||
movs r4, #0
|
||||
_0802C0B4:
|
||||
add r6, sb
|
||||
add r5, r8
|
||||
adds r0, r7, #0
|
||||
adds r1, r6, #0
|
||||
adds r2, r5, #0
|
||||
movs r3, #0
|
||||
bl sub_080AE4CC
|
||||
cmp r0, #0
|
||||
beq _0802C0D8
|
||||
movs r0, #0
|
||||
b _0802C0E0
|
||||
.align 2, 0
|
||||
_0802C0CC: .4byte gUnk_080CD45C
|
||||
_0802C0D0: .4byte gUnk_02027EB4
|
||||
_0802C0D4: .4byte gUnk_0200D654
|
||||
_0802C0D8:
|
||||
adds r4, #1
|
||||
cmp r4, #7
|
||||
bls _0802C0B4
|
||||
movs r0, #1
|
||||
_0802C0E0:
|
||||
pop {r3, r4}
|
||||
mov r8, r3
|
||||
mov sb, r4
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
|
||||
thumb_func_start sub_0802C0E8
|
||||
sub_0802C0E8: @ 0x0802C0E8
|
||||
push {r4, r5, r6, r7, lr}
|
||||
adds r5, r0, #0
|
||||
ldrb r0, [r5, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r5, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _0802C0FC
|
||||
movs r0, #1
|
||||
b _0802C178
|
||||
_0802C0FC:
|
||||
ldrb r3, [r5, #0x15]
|
||||
lsrs r3, r3, #2
|
||||
ldr r0, _0802C17C @ =gUnk_080CD45C
|
||||
adds r3, r3, r0
|
||||
movs r0, #0x2e
|
||||
ldrsh r2, [r5, r0]
|
||||
ldr r4, [r5, #0x48]
|
||||
movs r0, #0
|
||||
ldrsb r0, [r4, r0]
|
||||
adds r2, r2, r0
|
||||
movs r1, #0
|
||||
ldrsb r1, [r3, r1]
|
||||
lsls r0, r1, #1
|
||||
adds r0, r0, r1
|
||||
lsls r0, r0, #1
|
||||
adds r6, r2, r0
|
||||
movs r0, #0x32
|
||||
ldrsh r2, [r5, r0]
|
||||
movs r0, #1
|
||||
ldrsb r0, [r4, r0]
|
||||
adds r2, r2, r0
|
||||
movs r1, #1
|
||||
ldrsb r1, [r3, r1]
|
||||
lsls r0, r1, #1
|
||||
adds r0, r0, r1
|
||||
lsls r0, r0, #1
|
||||
adds r4, r2, r0
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x38
|
||||
ldrb r0, [r0]
|
||||
ldr r7, _0802C180 @ =gUnk_02027EB4
|
||||
cmp r0, #2
|
||||
bne _0802C140
|
||||
ldr r7, _0802C184 @ =gUnk_0200D654
|
||||
_0802C140:
|
||||
movs r5, #0
|
||||
ldr r1, _0802C188 @ =gRoomControls
|
||||
ldrh r0, [r1, #6]
|
||||
subs r0, r6, r0
|
||||
asrs r0, r0, #4
|
||||
movs r2, #0x3f
|
||||
ands r0, r2
|
||||
ldrh r1, [r1, #8]
|
||||
subs r1, r4, r1
|
||||
asrs r1, r1, #4
|
||||
ands r1, r2
|
||||
lsls r1, r1, #6
|
||||
orrs r0, r1
|
||||
movs r1, #9
|
||||
bl sub_0806FC24
|
||||
cmp r0, #0
|
||||
bne _0802C176
|
||||
adds r0, r7, #0
|
||||
adds r1, r6, #0
|
||||
adds r2, r4, #0
|
||||
movs r3, #0
|
||||
bl sub_080AE4CC
|
||||
rsbs r1, r0, #0
|
||||
orrs r1, r0
|
||||
lsrs r5, r1, #0x1f
|
||||
_0802C176:
|
||||
adds r0, r5, #0
|
||||
_0802C178:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_0802C17C: .4byte gUnk_080CD45C
|
||||
_0802C180: .4byte gUnk_02027EB4
|
||||
_0802C184: .4byte gUnk_0200D654
|
||||
_0802C188: .4byte gRoomControls
|
||||
|
||||
thumb_func_start sub_0802C18C
|
||||
sub_0802C18C: @ 0x0802C18C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, #0x78
|
||||
ldrb r1, [r0]
|
||||
subs r1, #1
|
||||
strb r1, [r0]
|
||||
movs r0, #7
|
||||
ands r1, r0
|
||||
cmp r1, #0
|
||||
bne _0802C1BC
|
||||
movs r0, #0xf
|
||||
movs r1, #0x11
|
||||
movs r2, #0x40
|
||||
bl CreateObject
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _0802C1BC
|
||||
movs r3, #0x80
|
||||
lsls r3, r3, #9
|
||||
adds r0, r4, #0
|
||||
movs r2, #0
|
||||
bl PositionRelative
|
||||
_0802C1BC:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802C1C0
|
||||
sub_0802C1C0: @ 0x0802C1C0
|
||||
movs r1, #1
|
||||
strb r1, [r0, #0xc]
|
||||
movs r1, #0x1e
|
||||
strb r1, [r0, #0xe]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802C1CC
|
||||
sub_0802C1CC: @ 0x0802C1CC
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
ldrb r4, [r5, #0x14]
|
||||
lsls r4, r4, #2
|
||||
ldr r0, _0802C214 @ =gUnk_080CD464
|
||||
adds r4, r4, r0
|
||||
movs r0, #0x2e
|
||||
ldrsh r2, [r5, r0]
|
||||
movs r0, #0
|
||||
ldrsb r0, [r4, r0]
|
||||
adds r2, r2, r0
|
||||
movs r0, #0x32
|
||||
ldrsh r3, [r5, r0]
|
||||
movs r0, #1
|
||||
ldrsb r0, [r4, r0]
|
||||
adds r3, r3, r0
|
||||
adds r0, r5, #0
|
||||
movs r1, #9
|
||||
bl sub_08008796
|
||||
movs r0, #0x2e
|
||||
ldrsh r2, [r5, r0]
|
||||
movs r0, #2
|
||||
ldrsb r0, [r4, r0]
|
||||
adds r2, r2, r0
|
||||
movs r0, #0x32
|
||||
ldrsh r3, [r5, r0]
|
||||
movs r0, #3
|
||||
ldrsb r0, [r4, r0]
|
||||
adds r3, r3, r0
|
||||
adds r0, r5, #0
|
||||
movs r1, #9
|
||||
bl sub_08008796
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0802C214: .4byte gUnk_080CD464
|
||||
|
||||
thumb_func_start sub_0802C218
|
||||
sub_0802C218: @ 0x0802C218
|
||||
movs r1, #6
|
||||
strb r1, [r0, #0xc]
|
||||
movs r1, #0xe0
|
||||
strh r1, [r0, #0x24]
|
||||
movs r1, #0xc0
|
||||
lsls r1, r1, #9
|
||||
str r1, [r0, #0x20]
|
||||
bx lr
|
||||
@@ -5,161 +5,3 @@
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start HiddenLadderDown
|
||||
HiddenLadderDown: @ 0x08091EF4
|
||||
push {lr}
|
||||
adds r2, r0, #0
|
||||
ldrb r0, [r2, #0xc]
|
||||
cmp r0, #1
|
||||
bhi _08091F0E
|
||||
ldr r0, _08091F10 @ =gUnk_08122604
|
||||
ldrb r1, [r2, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r0
|
||||
ldr r1, [r1]
|
||||
adds r0, r2, #0
|
||||
bl _call_via_r1
|
||||
_08091F0E:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08091F10: .4byte gUnk_08122604
|
||||
|
||||
thumb_func_start sub_08091F14
|
||||
sub_08091F14: @ 0x08091F14
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
movs r2, #0
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
adds r3, r4, #0
|
||||
adds r3, #0x29
|
||||
ldrb r0, [r3]
|
||||
movs r1, #7
|
||||
orrs r0, r1
|
||||
strb r0, [r3]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x58
|
||||
strb r2, [r0]
|
||||
movs r0, #0x2e
|
||||
ldrsh r1, [r4, r0]
|
||||
ldr r2, _08091FEC @ =gRoomControls
|
||||
ldrh r0, [r2, #6]
|
||||
subs r1, r1, r0
|
||||
asrs r1, r1, #4
|
||||
movs r3, #0x3f
|
||||
ands r1, r3
|
||||
movs r5, #0x32
|
||||
ldrsh r0, [r4, r5]
|
||||
ldrh r2, [r2, #8]
|
||||
subs r0, r0, r2
|
||||
asrs r0, r0, #4
|
||||
ands r0, r3
|
||||
lsls r0, r0, #6
|
||||
orrs r1, r0
|
||||
adds r5, r4, #0
|
||||
adds r5, #0x70
|
||||
strh r1, [r5]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x86
|
||||
ldrh r0, [r0]
|
||||
bl CheckFlags
|
||||
cmp r0, #0
|
||||
beq _08091FEA
|
||||
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, #0xd1
|
||||
lsls r0, r0, #1
|
||||
ldrh r1, [r5]
|
||||
subs r1, #0x41
|
||||
adds r4, #0x38
|
||||
ldrb r2, [r4]
|
||||
bl SetTileType
|
||||
ldr r0, _08091FF0 @ =0x000001A3
|
||||
ldrh r1, [r5]
|
||||
subs r1, #0x40
|
||||
ldrb r2, [r4]
|
||||
bl SetTileType
|
||||
movs r0, #0xd2
|
||||
lsls r0, r0, #1
|
||||
ldrh r1, [r5]
|
||||
subs r1, #0x3f
|
||||
ldrb r2, [r4]
|
||||
bl SetTileType
|
||||
ldr r0, _08091FF4 @ =0x000001A5
|
||||
ldrh r1, [r5]
|
||||
subs r1, #1
|
||||
ldrb r2, [r4]
|
||||
bl SetTileType
|
||||
movs r0, #0xd3
|
||||
lsls r0, r0, #1
|
||||
ldrh r1, [r5]
|
||||
ldrb r2, [r4]
|
||||
bl SetTileType
|
||||
ldr r0, _08091FF8 @ =0x000001A7
|
||||
ldrh r1, [r5]
|
||||
adds r1, #1
|
||||
ldrb r2, [r4]
|
||||
bl SetTileType
|
||||
movs r0, #0xd4
|
||||
lsls r0, r0, #1
|
||||
ldrh r1, [r5]
|
||||
adds r1, #0x3f
|
||||
ldrb r2, [r4]
|
||||
bl SetTileType
|
||||
ldr r0, _08091FFC @ =0x000001A9
|
||||
ldrh r1, [r5]
|
||||
adds r1, #0x40
|
||||
ldrb r2, [r4]
|
||||
bl SetTileType
|
||||
movs r0, #0xd5
|
||||
lsls r0, r0, #1
|
||||
ldrh r1, [r5]
|
||||
adds r1, #0x41
|
||||
ldrb r2, [r4]
|
||||
bl SetTileType
|
||||
_08091FEA:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_08091FEC: .4byte gRoomControls
|
||||
_08091FF0: .4byte 0x000001A3
|
||||
_08091FF4: .4byte 0x000001A5
|
||||
_08091FF8: .4byte 0x000001A7
|
||||
_08091FFC: .4byte 0x000001A9
|
||||
|
||||
thumb_func_start sub_08092000
|
||||
sub_08092000: @ 0x08092000
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, #0x70
|
||||
ldrh r0, [r0]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x38
|
||||
ldrb r1, [r1]
|
||||
bl GetTileType
|
||||
movs r1, #0xd3
|
||||
lsls r1, r1, #1
|
||||
cmp r0, r1
|
||||
bne _08092034
|
||||
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]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x86
|
||||
ldrh r0, [r0]
|
||||
bl SetFlag
|
||||
_08092034:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
-1593
File diff suppressed because it is too large
Load Diff
@@ -1173,7 +1173,7 @@ _080629B4:
|
||||
strh r1, [r0]
|
||||
_080629D2:
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
bl ProcessMovement
|
||||
movs r3, #0x2e
|
||||
ldrsh r1, [r4, r3]
|
||||
adds r2, r4, #0
|
||||
|
||||
+4
-4
@@ -73,7 +73,7 @@ sub_0809229C: @ 0x0809229C
|
||||
bl InitAnimationForceUpdate
|
||||
movs r0, #0xbf
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
ldr r0, [r4, #0x54]
|
||||
movs r1, #3
|
||||
bl InitializeAnimation
|
||||
@@ -281,7 +281,7 @@ _08092434:
|
||||
movs r1, #2
|
||||
bl InitializeAnimation
|
||||
ldr r0, _08092468 @ =0x0000017B
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_08092462:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
@@ -335,7 +335,7 @@ _080924B8:
|
||||
strb r0, [r3]
|
||||
movs r0, #0xbe
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
b _080924DC
|
||||
_080924CC:
|
||||
movs r0, #2
|
||||
@@ -344,7 +344,7 @@ _080924CC:
|
||||
beq _080924DC
|
||||
strb r2, [r3]
|
||||
ldr r0, _080924E0 @ =0x0000017D
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_080924DC:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
-652
@@ -1,652 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
|
||||
thumb_func_start LikeLike
|
||||
LikeLike: @ 0x08027D6C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r1, _08027D88 @ =gUnk_080CC6FC
|
||||
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
|
||||
_08027D88: .4byte gUnk_080CC6FC
|
||||
|
||||
thumb_func_start sub_08027D8C
|
||||
sub_08027D8C: @ 0x08027D8C
|
||||
push {lr}
|
||||
ldr r2, _08027DA0 @ =gUnk_080CC714
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08027DA0: .4byte gUnk_080CC714
|
||||
|
||||
thumb_func_start sub_08027DA4
|
||||
sub_08027DA4: @ 0x08027DA4
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x3f
|
||||
ldrb r0, [r2]
|
||||
cmp r0, #1
|
||||
bne _08027DC4
|
||||
movs r0, #3
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
movs r0, #0x8c
|
||||
strb r0, [r2]
|
||||
b _08027E0E
|
||||
_08027DC4:
|
||||
ldrb r0, [r4, #0xc]
|
||||
cmp r0, #7
|
||||
bne _08027DD2
|
||||
adds r0, r4, #0
|
||||
bl sub_0802810C
|
||||
b _08027E0E
|
||||
_08027DD2:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x41
|
||||
ldrb r2, [r0]
|
||||
movs r0, #0x80
|
||||
ands r0, r2
|
||||
cmp r0, #0
|
||||
beq _08027E0E
|
||||
movs r1, #0x7f
|
||||
ands r1, r2
|
||||
cmp r1, #0
|
||||
bne _08027E0E
|
||||
movs r0, #7
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x5f
|
||||
strb r0, [r4, #0xe]
|
||||
strb r1, [r4, #0xf]
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x3b
|
||||
ldrb r1, [r2]
|
||||
movs r0, #0xfc
|
||||
ands r0, r1
|
||||
strb r0, [r2]
|
||||
ldr r0, _08027E38 @ =gPlayerEntity
|
||||
adds r0, #0x29
|
||||
ldrb r0, [r0]
|
||||
lsls r0, r0, #0x1a
|
||||
lsrs r0, r0, #0x1d
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x83
|
||||
strb r0, [r1]
|
||||
_08027E0E:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x45
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0
|
||||
bne _08027E1C
|
||||
movs r0, #0x20
|
||||
strb r0, [r4, #0xe]
|
||||
_08027E1C:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x43
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0
|
||||
beq _08027E2E
|
||||
adds r0, r4, #0
|
||||
movs r1, #0x1c
|
||||
bl sub_0804A9FC
|
||||
_08027E2E:
|
||||
ldr r1, _08027E3C @ =gUnk_080CC6FC
|
||||
adds r0, r4, #0
|
||||
bl sub_0804AA30
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_08027E38: .4byte gPlayerEntity
|
||||
_08027E3C: .4byte gUnk_080CC6FC
|
||||
|
||||
thumb_func_start sub_08027E40
|
||||
sub_08027E40: @ 0x08027E40
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
ldrb r0, [r4, #0xe]
|
||||
cmp r0, #2
|
||||
bne _08027E62
|
||||
adds r5, r4, #0
|
||||
adds r5, #0x80
|
||||
ldrb r0, [r5]
|
||||
cmp r0, #0xff
|
||||
beq _08027E62
|
||||
adds r0, r4, #0
|
||||
movs r1, #3
|
||||
bl sub_0805E3A0
|
||||
ldrb r0, [r5]
|
||||
bl sub_08028224
|
||||
_08027E62:
|
||||
adds r0, r4, #0
|
||||
bl sub_0804A7D4
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start nullsub_139
|
||||
nullsub_139: @ 0x08027E6C
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08027E70
|
||||
sub_08027E70: @ 0x08027E70
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0804A720
|
||||
ldrb r3, [r4, #0xa]
|
||||
cmp r3, #1
|
||||
beq _08027EA6
|
||||
cmp r3, #1
|
||||
bgt _08027E88
|
||||
cmp r3, #0
|
||||
beq _08027E8E
|
||||
b _08027EE4
|
||||
_08027E88:
|
||||
cmp r3, #2
|
||||
beq _08027EC4
|
||||
b _08027EE4
|
||||
_08027E8E:
|
||||
movs r0, #3
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x18]
|
||||
subs r0, #7
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
strb r3, [r4, #0xe]
|
||||
b _08027EE4
|
||||
_08027EA6:
|
||||
movs r2, #1
|
||||
strb r3, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x18]
|
||||
movs r0, #4
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
orrs r0, r2
|
||||
strb r0, [r4, #0x18]
|
||||
movs r0, #8
|
||||
strb r0, [r4, #0xe]
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
bl InitializeAnimation
|
||||
b _08027EE4
|
||||
_08027EC4:
|
||||
movs r3, #0
|
||||
movs r2, #1
|
||||
strb r2, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x18]
|
||||
movs r0, #4
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
strb r3, [r4, #0xe]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x3f
|
||||
strb r2, [r0]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl InitializeAnimation
|
||||
_08027EE4:
|
||||
movs r0, #0
|
||||
strb r0, [r4, #0x15]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x82
|
||||
strb r0, [r1]
|
||||
strb r0, [r4, #0x14]
|
||||
adds r1, #1
|
||||
strb r0, [r1]
|
||||
subs r1, #3
|
||||
movs r0, #0xff
|
||||
strb r0, [r1]
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_08027EFC
|
||||
sub_08027EFC: @ 0x08027EFC
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
adds r0, #0x3f
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #1
|
||||
beq _08027F7C
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
bl sub_08049FDC
|
||||
cmp r0, #0
|
||||
beq _08027F68
|
||||
adds r0, r4, #0
|
||||
bl sub_08049FA0
|
||||
cmp r0, #0
|
||||
bne _08027F32
|
||||
bl Random
|
||||
movs r1, #0x30
|
||||
ands r1, r0
|
||||
cmp r1, #0
|
||||
beq _08027F32
|
||||
adds r0, r4, #0
|
||||
bl sub_08049EE4
|
||||
b _08027F38
|
||||
_08027F32:
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x82
|
||||
ldrb r0, [r0]
|
||||
_08027F38:
|
||||
strb r0, [r4, #0x15]
|
||||
ldrb r0, [r4, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r4, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _08027F5A
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
bl sub_08049F84
|
||||
strb r0, [r4, #0x15]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x82
|
||||
strb r0, [r1]
|
||||
movs r0, #8
|
||||
strb r0, [r4, #0xe]
|
||||
_08027F5A:
|
||||
adds r0, r4, #0
|
||||
bl sub_080AEF88
|
||||
adds r0, r4, #0
|
||||
bl GetNextFrame
|
||||
b _08027F7C
|
||||
_08027F68:
|
||||
movs r0, #6
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x7f
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
adds r0, r4, #0
|
||||
movs r1, #2
|
||||
bl InitializeAnimation
|
||||
_08027F7C:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start nullsub_12
|
||||
nullsub_12: @ 0x08027F80
|
||||
bx lr
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08027F84
|
||||
sub_08027F84: @ 0x08027F84
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #1
|
||||
bl sub_08049FDC
|
||||
cmp r0, #0
|
||||
beq _08027FB0
|
||||
movs r0, #5
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x18]
|
||||
subs r0, #9
|
||||
ands r0, r1
|
||||
movs r1, #1
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
adds r0, r4, #0
|
||||
movs r1, #0
|
||||
bl InitializeAnimation
|
||||
adds r0, r4, #0
|
||||
bl sub_080A29BC
|
||||
_08027FB0:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08027FB4
|
||||
sub_08027FB4: @ 0x08027FB4
|
||||
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 _08027FD6
|
||||
movs r1, #1
|
||||
movs r0, #1
|
||||
strb r0, [r2, #0xc]
|
||||
strb r0, [r2, #0xe]
|
||||
adds r3, r2, #0
|
||||
adds r3, #0x3b
|
||||
ldrb r0, [r3]
|
||||
orrs r0, r1
|
||||
strb r0, [r3]
|
||||
_08027FD6:
|
||||
adds r0, r2, #0
|
||||
bl GetNextFrame
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_08027FE0
|
||||
sub_08027FE0: @ 0x08027FE0
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl GetNextFrame
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r1, [r0]
|
||||
movs r2, #1
|
||||
adds r0, r2, #0
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _08028028
|
||||
strb r2, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x10]
|
||||
movs r0, #0x80
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
bl sub_08049F84
|
||||
strb r0, [r4, #0x15]
|
||||
movs r2, #8
|
||||
movs r0, #8
|
||||
strb r0, [r4, #0xe]
|
||||
adds r3, r4, #0
|
||||
adds r3, #0x29
|
||||
ldrb r1, [r3]
|
||||
subs r0, #0x41
|
||||
ands r0, r1
|
||||
orrs r0, r2
|
||||
strb r0, [r3]
|
||||
adds r0, r4, #0
|
||||
movs r1, #1
|
||||
bl InitializeAnimation
|
||||
_08028028:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0802802C
|
||||
sub_0802802C: @ 0x0802802C
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl GetNextFrame
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x5a
|
||||
ldrb r1, [r0]
|
||||
movs r0, #1
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
beq _0802805A
|
||||
movs r2, #0
|
||||
movs r0, #3
|
||||
strb r0, [r4, #0xc]
|
||||
ldrb r1, [r4, #0x18]
|
||||
subs r0, #7
|
||||
ands r0, r1
|
||||
strb r0, [r4, #0x18]
|
||||
strb r2, [r4, #0x15]
|
||||
strb r2, [r4, #0xe]
|
||||
adds r0, r4, #0
|
||||
bl sub_080A29BC
|
||||
_0802805A:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_0802805C
|
||||
sub_0802805C: @ 0x0802805C
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
movs r1, #2
|
||||
bl UpdateAnimationVariableFrames
|
||||
bl sub_0807953C
|
||||
cmp r0, #0
|
||||
beq _0802807E
|
||||
bl Random
|
||||
ldrb r2, [r5, #0xf]
|
||||
adds r2, #1
|
||||
movs r1, #1
|
||||
ands r1, r0
|
||||
adds r2, r2, r1
|
||||
strb r2, [r5, #0xf]
|
||||
_0802807E:
|
||||
ldrb r0, [r5, #0xf]
|
||||
cmp r0, #0x18
|
||||
bhi _0802808E
|
||||
ldr r0, _08028098 @ =gUnk_02002A40
|
||||
adds r0, #0xaa
|
||||
ldrb r0, [r0]
|
||||
cmp r0, #0
|
||||
bne _0802809C
|
||||
_0802808E:
|
||||
adds r0, r5, #0
|
||||
bl sub_0802810C
|
||||
b _08028102
|
||||
.align 2, 0
|
||||
_08028098: .4byte gUnk_02002A40
|
||||
_0802809C:
|
||||
bl ResetPlayer
|
||||
ldr r2, _08028104 @ =gPlayerState
|
||||
ldrb r1, [r2, #0x1a]
|
||||
movs r0, #0x80
|
||||
orrs r0, r1
|
||||
strb r0, [r2, #0x1a]
|
||||
ldr r4, _08028108 @ =gPlayerEntity
|
||||
movs r3, #0x80
|
||||
lsls r3, r3, #9
|
||||
adds r0, r5, #0
|
||||
adds r1, r4, #0
|
||||
movs r2, #0
|
||||
bl PositionRelative
|
||||
ldrh r0, [r5, #0x12]
|
||||
ldrb r1, [r5, #0x1e]
|
||||
bl GetSpriteSubEntryOffsetDataPointer
|
||||
ldrb r1, [r0]
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x62
|
||||
strb r1, [r2]
|
||||
ldrb r0, [r0, #1]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x63
|
||||
strb r0, [r1]
|
||||
adds r4, #0x29
|
||||
ldrb r1, [r4]
|
||||
movs r0, #0x39
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r1
|
||||
strb r0, [r4]
|
||||
ldrb r0, [r5, #0xe]
|
||||
subs r0, #1
|
||||
strb r0, [r5, #0xe]
|
||||
lsls r0, r0, #0x18
|
||||
cmp r0, #0
|
||||
bne _080280F0
|
||||
adds r0, r5, #0
|
||||
bl sub_080281A0
|
||||
_080280F0:
|
||||
ldrb r1, [r5, #0xe]
|
||||
movs r0, #3
|
||||
ands r0, r1
|
||||
cmp r0, #0
|
||||
bne _08028102
|
||||
movs r0, #0x82
|
||||
lsls r0, r0, #1
|
||||
bl sub_08004488
|
||||
_08028102:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_08028104: .4byte gPlayerState
|
||||
_08028108: .4byte gPlayerEntity
|
||||
|
||||
thumb_func_start sub_0802810C
|
||||
sub_0802810C: @ 0x0802810C
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
ldr r2, _08028198 @ =gPlayerState
|
||||
movs r1, #0
|
||||
movs r0, #0x41
|
||||
strb r0, [r2, #2]
|
||||
strb r1, [r2, #0xa]
|
||||
ldr r0, [r2, #0x30]
|
||||
subs r1, #0x11
|
||||
ands r0, r1
|
||||
str r0, [r2, #0x30]
|
||||
ldr r0, _0802819C @ =gPlayerEntity
|
||||
mov ip, r0
|
||||
ldrb r0, [r0, #0x10]
|
||||
movs r1, #0x80
|
||||
orrs r0, r1
|
||||
mov r1, ip
|
||||
strb r0, [r1, #0x10]
|
||||
movs r0, #0xc0
|
||||
lsls r0, r0, #9
|
||||
str r0, [r1, #0x20]
|
||||
adds r1, #0x3d
|
||||
movs r0, #0xc4
|
||||
strb r0, [r1]
|
||||
movs r3, #0
|
||||
mov r2, ip
|
||||
ldrb r0, [r2, #0x14]
|
||||
lsls r0, r0, #2
|
||||
strb r0, [r2, #0x15]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x83
|
||||
ldrb r0, [r0]
|
||||
mov r5, ip
|
||||
adds r5, #0x29
|
||||
movs r1, #7
|
||||
ands r1, r0
|
||||
lsls r1, r1, #3
|
||||
ldrb r2, [r5]
|
||||
movs r0, #0x39
|
||||
rsbs r0, r0, #0
|
||||
ands r0, r2
|
||||
orrs r0, r1
|
||||
strb r0, [r5]
|
||||
mov r1, ip
|
||||
adds r1, #0x63
|
||||
movs r0, #0
|
||||
ldrsb r0, [r1, r0]
|
||||
mov r2, ip
|
||||
strh r0, [r2, #0x36]
|
||||
strb r3, [r1]
|
||||
movs r0, #4
|
||||
strb r0, [r4, #0xc]
|
||||
movs r0, #0x50
|
||||
strb r0, [r4, #0xe]
|
||||
strb r3, [r4, #0xf]
|
||||
adds r2, r4, #0
|
||||
adds r2, #0x3b
|
||||
ldrb r1, [r2]
|
||||
movs r0, #2
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x3d
|
||||
movs r0, #0
|
||||
ldrsb r0, [r1, r0]
|
||||
cmp r0, #0
|
||||
bne _08028196
|
||||
movs r0, #0xee
|
||||
strb r0, [r1]
|
||||
_08028196:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_08028198: .4byte gPlayerState
|
||||
_0802819C: .4byte gPlayerEntity
|
||||
|
||||
thumb_func_start sub_080281A0
|
||||
sub_080281A0: @ 0x080281A0
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
movs r0, #0x19
|
||||
strb r0, [r4, #0xf]
|
||||
movs r0, #0xe
|
||||
bl sub_080281E0
|
||||
cmp r0, #0
|
||||
beq _080281BA
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x80
|
||||
movs r1, #0xe
|
||||
b _080281CA
|
||||
_080281BA:
|
||||
movs r0, #0xd
|
||||
bl sub_080281E0
|
||||
cmp r0, #0
|
||||
beq _080281D6
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x80
|
||||
movs r1, #0xd
|
||||
_080281CA:
|
||||
strb r1, [r0]
|
||||
movs r0, #0xaf
|
||||
lsls r0, r0, #3
|
||||
bl TextboxNoOverlapFollow
|
||||
b _080281DE
|
||||
_080281D6:
|
||||
movs r0, #1
|
||||
rsbs r0, r0, #0
|
||||
bl ModHealth
|
||||
_080281DE:
|
||||
pop {r4, pc}
|
||||
|
||||
thumb_func_start sub_080281E0
|
||||
sub_080281E0: @ 0x080281E0
|
||||
push {r4, r5, r6, r7, lr}
|
||||
adds r7, r0, #0
|
||||
movs r4, #0
|
||||
bl GetInventoryValue
|
||||
cmp r0, #1
|
||||
bne _0802821A
|
||||
ldr r6, _08028220 @ =gUnk_02002A40
|
||||
adds r5, r6, #0
|
||||
adds r5, #0xb4
|
||||
ldrb r0, [r5]
|
||||
bl sub_080544B4
|
||||
cmp r0, #0
|
||||
beq _08028200
|
||||
strb r4, [r5]
|
||||
_08028200:
|
||||
adds r5, r6, #0
|
||||
adds r5, #0xb5
|
||||
ldrb r0, [r5]
|
||||
bl sub_080544B4
|
||||
cmp r0, #0
|
||||
beq _08028210
|
||||
strb r4, [r5]
|
||||
_08028210:
|
||||
adds r0, r7, #0
|
||||
movs r1, #0
|
||||
bl sub_0807CAA0
|
||||
movs r4, #1
|
||||
_0802821A:
|
||||
adds r0, r4, #0
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_08028220: .4byte gUnk_02002A40
|
||||
|
||||
thumb_func_start sub_08028224
|
||||
sub_08028224: @ 0x08028224
|
||||
push {lr}
|
||||
movs r1, #0
|
||||
movs r2, #1
|
||||
bl sub_080A7C18
|
||||
ldr r0, _08028238 @ =0x00000579
|
||||
bl TextboxNoOverlapFollow
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_08028238: .4byte 0x00000579
|
||||
+2
-2
@@ -232,7 +232,7 @@ sub_080834B4: @ 0x080834B4
|
||||
ldrb r2, [r2]
|
||||
bl SetTile
|
||||
ldr r0, _080834E8 @ =0x0000010B
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_080834E6:
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
@@ -323,7 +323,7 @@ _0808357A:
|
||||
adds r0, r4, #0
|
||||
bl sub_08083814
|
||||
ldr r0, _08083590 @ =0x0000010B
|
||||
bl sub_08004488
|
||||
bl EnqueueSFX
|
||||
_0808358C:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
.include "asm/macros/asm.inc"
|
||||
.include "asm/macros/function.inc"
|
||||
.include "asm/macros/m4a.inc"
|
||||
.include "asm/macros/map.inc"
|
||||
.include "asm/macros/entity.inc"
|
||||
|
||||
Executable
+79
@@ -0,0 +1,79 @@
|
||||
.ifndef GUARD_ASM_MACROS_ENTITY_INC
|
||||
.set GUARD_ASM_MACROS_ENTITY_INC, 1
|
||||
|
||||
.set ENTITY_TYPE_ENEMY, 0x3
|
||||
.set ENTITY_TYPE_SIGN, 0x5
|
||||
.set ENTITY_TYPE_OBJECT, 0x6
|
||||
|
||||
.set OBJECT_ITEM, 0x0
|
||||
.set OBJECT_MINISH_LILYPAD, 0x73
|
||||
|
||||
.set ENEMY_OCTOROK, 0x0
|
||||
.set ENEMY_CHUCHU, 0x1
|
||||
.set ENEMY_TREE_ITEM, 0x65
|
||||
|
||||
.macro object_minish_lilypad x, y, room_property, collision=0
|
||||
.byte ENTITY_TYPE_OBJECT | ((\collision) << 4)
|
||||
.byte 0x0F
|
||||
.byte OBJECT_MINISH_LILYPAD
|
||||
.byte 0x00
|
||||
.byte \room_property
|
||||
.byte 0x00, 0x00, 0x00
|
||||
.2byte \x, \y
|
||||
.2byte 0x0, 0x0
|
||||
.endm
|
||||
|
||||
.macro object_item x, y, item, flag, collision=0
|
||||
.byte ENTITY_TYPE_OBJECT | ((\collision) << 4)
|
||||
.byte 0x0F
|
||||
.byte OBJECT_ITEM
|
||||
.byte \item
|
||||
.byte 0x00
|
||||
.byte 0x04 @ stationary item
|
||||
.byte 0x00, 0x00
|
||||
.2byte \x, \y
|
||||
.2byte 0x0, \flag
|
||||
.endm
|
||||
|
||||
.macro enemy_octorok x, y, bound_x, bound_y, bound_tile_width, bound_tile_height, collision=0
|
||||
.byte ENTITY_TYPE_ENEMY | ((\collision) << 4)
|
||||
.byte 0x0F
|
||||
.byte ENEMY_OCTOROK
|
||||
.byte 0x00, 0x00, 0x00
|
||||
.byte \bound_tile_width, \bound_tile_height
|
||||
.2byte \x, \y
|
||||
.2byte \bound_x, \bound_y
|
||||
.endm
|
||||
|
||||
.macro enemy_chuchu x, y, bound_x, bound_y, bound_tile_width, bound_tile_height, collision=0
|
||||
.byte ENTITY_TYPE_ENEMY | ((\collision) << 4)
|
||||
.byte 0x0F
|
||||
.byte ENEMY_CHUCHU
|
||||
.byte 0x00, 0x00, 0x00
|
||||
.byte \bound_tile_width, \bound_tile_height
|
||||
.2byte \x, \y
|
||||
.2byte \bound_x, \bound_y
|
||||
.endm
|
||||
|
||||
.macro enemy_tree_item x, y, unknown, collision=0
|
||||
.byte ENTITY_TYPE_ENEMY | ((\collision) << 4)
|
||||
.byte 0x0F
|
||||
.byte ENEMY_TREE_ITEM
|
||||
.byte \unknown, 0x00, 0x00, 0x00, 0x00
|
||||
.2byte \x, \y
|
||||
.2byte 0x00, 0x00
|
||||
.endm
|
||||
|
||||
.macro entity_list_end
|
||||
.byte 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.endm
|
||||
|
||||
.macro chest type, id, item, subnum, tileset_id
|
||||
.2byte (\map_x) << 4
|
||||
.2byte (\map_y) << 4
|
||||
.2byte \pixel_width
|
||||
.2byte \pixel_height
|
||||
.2byte \tileset_id
|
||||
.endm
|
||||
|
||||
.endif @ GUARD_ASM_MACROS_ENTITY_INC
|
||||
Executable
+64
@@ -0,0 +1,64 @@
|
||||
.ifndef GUARD_ASM_MACROS_MAP_INC
|
||||
.set GUARD_ASM_MACROS_MAP_INC, 1
|
||||
|
||||
.macro room_header map_x, map_y, pixel_width, pixel_height, tileset_id
|
||||
.2byte (\map_x) << 4
|
||||
.2byte (\map_y) << 4
|
||||
.2byte \pixel_width
|
||||
.2byte \pixel_height
|
||||
.2byte \tileset_id
|
||||
.endm
|
||||
|
||||
.macro map_data src_offset, dest, size, compressed, terminator=0
|
||||
.4byte (!(\terminator) << 0x1F) | (\src_offset)
|
||||
.4byte \dest
|
||||
.4byte (\compressed << 0x1F) | (\size)
|
||||
.endm
|
||||
|
||||
.macro tileset_tiles src_offset, dest, size, compressed, terminator=0
|
||||
map_data \src_offset, \dest, \size, \compressed, \terminator
|
||||
.endm
|
||||
|
||||
.macro tileset_palette_set id, terminator=0
|
||||
.4byte (!(\terminator) << 0x1F) | (\id)
|
||||
.4byte 0x0
|
||||
.4byte 0x0
|
||||
.endm
|
||||
|
||||
.macro metatiles_bottom src_offset, size, compressed, terminator=0
|
||||
map_data \src_offset, gMetatilesBottom, \size, \compressed, \terminator
|
||||
.endm
|
||||
|
||||
.macro metatiles_top src_offset, size, compressed, terminator=0
|
||||
map_data \src_offset, gMetatilesTop, \size, \compressed, \terminator
|
||||
.endm
|
||||
|
||||
.macro metatile_types_bottom src_offset, size, compressed, terminator=0
|
||||
map_data \src_offset, gMetatileTypesBottom, \size, \compressed, \terminator
|
||||
.endm
|
||||
|
||||
.macro metatile_types_top src_offset, size, compressed, terminator=0
|
||||
map_data \src_offset, gMetatileTypesTop, \size, \compressed, \terminator
|
||||
.endm
|
||||
|
||||
.macro map_bottom src_offset, size, compressed, terminator=0
|
||||
map_data \src_offset, gMapDataBottom, \size, \compressed, \terminator
|
||||
.endm
|
||||
|
||||
.macro map_top src_offset, size, compressed, terminator=0
|
||||
map_data \src_offset, gMapDataTop, \size, \compressed, \terminator
|
||||
.endm
|
||||
|
||||
.macro map_top_special src_offset, size, compressed, terminator=0
|
||||
map_data \src_offset, gMapDataTopSpecial, \size, \compressed, \terminator
|
||||
.endm
|
||||
|
||||
.macro map_unknown src_offset, size, compressed, terminator=0
|
||||
map_data \src_offset, gUnk_02027EB4, \size, \compressed, \terminator
|
||||
.endm
|
||||
|
||||
.macro map_unknown_2 src_offset, size, compressed, terminator=0
|
||||
map_data \src_offset, gUnk_02019EE0, \size, \compressed, \terminator
|
||||
.endm
|
||||
|
||||
.endif @ GUARD_ASM_MACROS_MAP_INC
|
||||
-1292
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -440,7 +440,7 @@ _080598AA:
|
||||
lsls r2, r2, #2
|
||||
adds r1, r0, r2
|
||||
movs r2, #0x20
|
||||
bl sub_0801D66C
|
||||
bl _DmaCopy
|
||||
ldr r2, _080598F0 @ =gUsedPalettes
|
||||
ldr r0, [r2]
|
||||
ldr r1, _080598F4 @ =0x00207FFC
|
||||
|
||||
-1187
File diff suppressed because it is too large
Load Diff
-473
@@ -1,473 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_0805B030
|
||||
sub_0805B030: @ 0x0805B030
|
||||
push {lr}
|
||||
ldr r2, _0805B044 @ =gUnk_08108668
|
||||
ldrb r1, [r0, #0xc]
|
||||
lsls r1, r1, #2
|
||||
adds r1, r1, r2
|
||||
ldr r1, [r1]
|
||||
bl _call_via_r1
|
||||
pop {pc}
|
||||
.align 2, 0
|
||||
_0805B044: .4byte gUnk_08108668
|
||||
|
||||
thumb_func_start sub_0805B048
|
||||
sub_0805B048: @ 0x0805B048
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
movs r1, #6
|
||||
bl sub_0805E3A0
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x20
|
||||
movs r1, #0x20
|
||||
bl _DmaZero
|
||||
movs r0, #1
|
||||
strb r0, [r4, #0xc]
|
||||
ldr r2, _0805B08C @ =gRoomControls
|
||||
ldrb r0, [r2, #5]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x3f
|
||||
strb r0, [r1]
|
||||
ldrb r1, [r4, #0xa]
|
||||
lsls r0, r1, #2
|
||||
adds r0, r0, r1
|
||||
lsls r0, r0, #2
|
||||
ldr r1, _0805B090 @ =gUnk_08108764
|
||||
adds r5, r0, r1
|
||||
ldrb r0, [r5, #0xa]
|
||||
cmp r0, #0
|
||||
bne _0805B094
|
||||
ldrh r0, [r2, #6]
|
||||
strh r0, [r4, #0x20]
|
||||
ldrh r0, [r2, #8]
|
||||
strh r0, [r4, #0x22]
|
||||
ldrh r0, [r2, #0x1e]
|
||||
strh r0, [r4, #0x24]
|
||||
ldrh r0, [r2, #0x20]
|
||||
b _0805B0B2
|
||||
.align 2, 0
|
||||
_0805B08C: .4byte gRoomControls
|
||||
_0805B090: .4byte gUnk_08108764
|
||||
_0805B094:
|
||||
ldrb r0, [r5, #8]
|
||||
lsls r0, r0, #4
|
||||
ldrh r1, [r2, #6]
|
||||
adds r0, r0, r1
|
||||
strh r0, [r4, #0x20]
|
||||
ldrb r0, [r5, #9]
|
||||
lsls r0, r0, #4
|
||||
ldrh r2, [r2, #8]
|
||||
adds r0, r0, r2
|
||||
strh r0, [r4, #0x22]
|
||||
ldrb r0, [r5, #0xa]
|
||||
lsls r0, r0, #4
|
||||
strh r0, [r4, #0x24]
|
||||
ldrb r0, [r5, #0xb]
|
||||
lsls r0, r0, #4
|
||||
_0805B0B2:
|
||||
strh r0, [r4, #0x26]
|
||||
ldr r1, [r5, #0xc]
|
||||
rsbs r0, r1, #0
|
||||
orrs r0, r1
|
||||
lsrs r0, r0, #0x1f
|
||||
strb r0, [r4, #0xb]
|
||||
cmp r0, #0
|
||||
beq _0805B0FC
|
||||
ldrb r0, [r4, #0x10]
|
||||
movs r1, #0x20
|
||||
orrs r0, r1
|
||||
strb r0, [r4, #0x10]
|
||||
ldr r0, [r5, #0xc]
|
||||
ldrh r0, [r0, #4]
|
||||
strh r0, [r4, #0x34]
|
||||
ldr r0, [r5, #0xc]
|
||||
ldrh r0, [r0, #6]
|
||||
strh r0, [r4, #0x36]
|
||||
ldr r0, [r5, #0xc]
|
||||
ldrh r0, [r0, #8]
|
||||
strh r0, [r4, #0x30]
|
||||
ldr r0, [r5, #0xc]
|
||||
ldrh r0, [r0, #0xa]
|
||||
strh r0, [r4, #0x32]
|
||||
bl sub_0805BC4C
|
||||
adds r0, r4, #0
|
||||
bl sub_0805B2B0
|
||||
adds r0, r4, #0
|
||||
bl sub_0805B328
|
||||
ldr r1, _0805B160 @ =sub_0805B328
|
||||
adds r0, r4, #0
|
||||
movs r2, #0
|
||||
bl sub_08052D74
|
||||
_0805B0FC:
|
||||
ldr r0, [r5, #0x10]
|
||||
cmp r0, #0
|
||||
beq _0805B15E
|
||||
ldrb r1, [r0]
|
||||
ldrb r2, [r0, #1]
|
||||
movs r0, #0x28
|
||||
bl CreateObject
|
||||
adds r3, r0, #0
|
||||
cmp r3, #0
|
||||
beq _0805B128
|
||||
ldr r1, [r5, #0x10]
|
||||
ldr r2, _0805B164 @ =gRoomControls
|
||||
ldrh r0, [r2, #6]
|
||||
ldrh r1, [r1, #4]
|
||||
adds r0, r0, r1
|
||||
strh r0, [r3, #0x2e]
|
||||
ldr r1, [r5, #0x10]
|
||||
ldrh r0, [r2, #8]
|
||||
ldrh r1, [r1, #6]
|
||||
adds r0, r0, r1
|
||||
strh r0, [r3, #0x32]
|
||||
_0805B128:
|
||||
ldrb r0, [r4, #0xa]
|
||||
cmp r0, #0xa
|
||||
bne _0805B15E
|
||||
movs r0, #0x4b
|
||||
bl CheckLocalFlag
|
||||
cmp r0, #0
|
||||
bne _0805B15E
|
||||
movs r0, #0x28
|
||||
movs r1, #3
|
||||
movs r2, #3
|
||||
bl CreateObject
|
||||
adds r3, r0, #0
|
||||
cmp r3, #0
|
||||
beq _0805B15E
|
||||
ldr r1, [r5, #0x10]
|
||||
ldr r2, _0805B164 @ =gRoomControls
|
||||
ldrh r0, [r2, #6]
|
||||
ldrh r1, [r1, #4]
|
||||
adds r0, r0, r1
|
||||
strh r0, [r3, #0x2e]
|
||||
ldr r1, [r5, #0x10]
|
||||
ldrh r0, [r2, #8]
|
||||
ldrh r1, [r1, #6]
|
||||
adds r0, r0, r1
|
||||
strh r0, [r3, #0x32]
|
||||
_0805B15E:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0805B160: .4byte sub_0805B328
|
||||
_0805B164: .4byte gRoomControls
|
||||
|
||||
thumb_func_start sub_0805B168
|
||||
sub_0805B168: @ 0x0805B168
|
||||
push {r4, r5, lr}
|
||||
adds r4, r0, #0
|
||||
bl sub_0805B1CC
|
||||
adds r5, r0, #0
|
||||
cmp r5, #0
|
||||
beq _0805B182
|
||||
adds r0, r4, #0
|
||||
bl sub_0805B210
|
||||
bl DeleteThisEntity
|
||||
b _0805B1C0
|
||||
_0805B182:
|
||||
adds r0, r4, #0
|
||||
bl sub_0805B2B0
|
||||
ldr r1, _0805B194 @ =gRoomControls
|
||||
ldrh r0, [r1]
|
||||
cmp r0, #1
|
||||
bne _0805B198
|
||||
strb r0, [r4, #0xd]
|
||||
b _0805B1C0
|
||||
.align 2, 0
|
||||
_0805B194: .4byte gRoomControls
|
||||
_0805B198:
|
||||
ldrb r0, [r4, #0xd]
|
||||
cmp r0, #0
|
||||
beq _0805B1C0
|
||||
strb r5, [r4, #0xd]
|
||||
adds r0, r4, #0
|
||||
adds r0, #0x3f
|
||||
ldrb r0, [r0]
|
||||
ldrb r1, [r1, #5]
|
||||
cmp r0, r1
|
||||
beq _0805B1C0
|
||||
ldrb r0, [r4, #0xb]
|
||||
cmp r0, #0
|
||||
beq _0805B1BC
|
||||
ldr r2, _0805B1C4 @ =gScreen
|
||||
ldrh r1, [r2]
|
||||
ldr r0, _0805B1C8 @ =0x0000F7FF
|
||||
ands r0, r1
|
||||
strh r0, [r2]
|
||||
_0805B1BC:
|
||||
bl DeleteThisEntity
|
||||
_0805B1C0:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0805B1C4: .4byte gScreen
|
||||
_0805B1C8: .4byte 0x0000F7FF
|
||||
|
||||
thumb_func_start sub_0805B1CC
|
||||
sub_0805B1CC: @ 0x0805B1CC
|
||||
push {r4, r5, lr}
|
||||
movs r5, #0
|
||||
movs r1, #0x20
|
||||
ldrsh r4, [r0, r1]
|
||||
movs r2, #0x22
|
||||
ldrsh r1, [r0, r2]
|
||||
ldrh r2, [r0, #0x24]
|
||||
ldrh r3, [r0, #0x26]
|
||||
adds r0, r4, #0
|
||||
bl sub_0806FBFC
|
||||
cmp r0, #0
|
||||
beq _0805B20C
|
||||
ldr r2, _0805B1FC @ =gPlayerState
|
||||
ldr r1, [r2, #0x30]
|
||||
movs r0, #5
|
||||
ands r0, r1
|
||||
cmp r0, #5
|
||||
bne _0805B200
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #8
|
||||
orrs r1, r0
|
||||
str r1, [r2, #0x30]
|
||||
b _0805B20C
|
||||
.align 2, 0
|
||||
_0805B1FC: .4byte gPlayerState
|
||||
_0805B200:
|
||||
movs r0, #0x80
|
||||
lsls r0, r0, #8
|
||||
ands r1, r0
|
||||
cmp r1, #0
|
||||
beq _0805B20C
|
||||
movs r5, #1
|
||||
_0805B20C:
|
||||
adds r0, r5, #0
|
||||
pop {r4, r5, pc}
|
||||
|
||||
thumb_func_start sub_0805B210
|
||||
sub_0805B210: @ 0x0805B210
|
||||
push {r4, r5, lr}
|
||||
ldr r2, _0805B248 @ =gScreenTransition
|
||||
movs r1, #1
|
||||
strb r1, [r2, #8]
|
||||
strb r1, [r2, #9]
|
||||
movs r1, #4
|
||||
strb r1, [r2, #0xe]
|
||||
ldrb r1, [r0, #0xa]
|
||||
lsls r0, r1, #2
|
||||
adds r0, r0, r1
|
||||
lsls r0, r0, #2
|
||||
ldr r1, _0805B24C @ =gUnk_08108764
|
||||
adds r4, r0, r1
|
||||
ldrb r0, [r4, #1]
|
||||
strb r0, [r2, #0xc]
|
||||
ldrb r0, [r4, #2]
|
||||
strb r0, [r2, #0xd]
|
||||
ldrb r0, [r4, #3]
|
||||
strb r0, [r2, #0x14]
|
||||
ldr r0, _0805B250 @ =gPlayerState
|
||||
ldr r0, [r0, #0x30]
|
||||
movs r1, #0x80
|
||||
ands r0, r1
|
||||
adds r5, r2, #0
|
||||
cmp r0, #0
|
||||
beq _0805B254
|
||||
movs r0, #6
|
||||
b _0805B256
|
||||
.align 2, 0
|
||||
_0805B248: .4byte gScreenTransition
|
||||
_0805B24C: .4byte gUnk_08108764
|
||||
_0805B250: .4byte gPlayerState
|
||||
_0805B254:
|
||||
movs r0, #2
|
||||
_0805B256:
|
||||
strb r0, [r5, #0xf]
|
||||
ldrb r0, [r4]
|
||||
cmp r0, #1
|
||||
beq _0805B278
|
||||
cmp r0, #1
|
||||
bgt _0805B268
|
||||
cmp r0, #0
|
||||
beq _0805B26E
|
||||
b _0805B2AC
|
||||
_0805B268:
|
||||
cmp r0, #2
|
||||
beq _0805B2A0
|
||||
b _0805B2AC
|
||||
_0805B26E:
|
||||
ldrh r0, [r4, #4]
|
||||
strh r0, [r5, #0x10]
|
||||
ldrh r0, [r4, #6]
|
||||
strh r0, [r5, #0x12]
|
||||
b _0805B2AC
|
||||
_0805B278:
|
||||
ldr r2, _0805B298 @ =gPlayerEntity
|
||||
ldr r3, _0805B29C @ =gRoomControls
|
||||
ldrh r0, [r2, #0x2e]
|
||||
ldrh r1, [r3, #6]
|
||||
subs r0, r0, r1
|
||||
ldrh r1, [r4, #4]
|
||||
adds r0, r0, r1
|
||||
strh r0, [r5, #0x10]
|
||||
ldrh r0, [r2, #0x32]
|
||||
ldrh r1, [r3, #8]
|
||||
subs r0, r0, r1
|
||||
ldrh r4, [r4, #6]
|
||||
adds r0, r0, r4
|
||||
strh r0, [r5, #0x12]
|
||||
b _0805B2AC
|
||||
.align 2, 0
|
||||
_0805B298: .4byte gPlayerEntity
|
||||
_0805B29C: .4byte gRoomControls
|
||||
_0805B2A0:
|
||||
ldrh r0, [r4, #4]
|
||||
strh r0, [r5, #0x10]
|
||||
ldrh r0, [r4, #6]
|
||||
strh r0, [r5, #0x12]
|
||||
movs r0, #6
|
||||
strb r0, [r5, #0xf]
|
||||
_0805B2AC:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
|
||||
thumb_func_start sub_0805B2B0
|
||||
sub_0805B2B0: @ 0x0805B2B0
|
||||
push {r4, r5, r6, r7, lr}
|
||||
adds r5, r0, #0
|
||||
ldrb r0, [r5, #0xb]
|
||||
cmp r0, #0
|
||||
beq _0805B31E
|
||||
ldrh r1, [r5, #0x30]
|
||||
ldr r6, _0805B320 @ =gRoomControls
|
||||
movs r2, #0xa
|
||||
ldrsh r0, [r6, r2]
|
||||
subs r1, r1, r0
|
||||
cmp r1, #0
|
||||
bge _0805B2CA
|
||||
adds r1, #3
|
||||
_0805B2CA:
|
||||
asrs r4, r1, #2
|
||||
ldrh r1, [r5, #0x32]
|
||||
movs r7, #0xc
|
||||
ldrsh r0, [r6, r7]
|
||||
subs r1, r1, r0
|
||||
cmp r1, #0
|
||||
bge _0805B2DA
|
||||
adds r1, #3
|
||||
_0805B2DA:
|
||||
asrs r3, r1, #2
|
||||
movs r0, #0xc
|
||||
rsbs r0, r0, #0
|
||||
cmp r4, r0
|
||||
bge _0805B2E6
|
||||
adds r4, r0, #0
|
||||
_0805B2E6:
|
||||
cmp r4, #0xc
|
||||
ble _0805B2EC
|
||||
movs r4, #0xc
|
||||
_0805B2EC:
|
||||
cmp r3, r0
|
||||
bge _0805B2F2
|
||||
adds r3, r0, #0
|
||||
_0805B2F2:
|
||||
cmp r3, #0xc
|
||||
ble _0805B2F8
|
||||
movs r3, #0xc
|
||||
_0805B2F8:
|
||||
ldr r2, _0805B324 @ =gScreen
|
||||
ldrh r1, [r2]
|
||||
movs r7, #0x80
|
||||
lsls r7, r7, #4
|
||||
adds r0, r7, #0
|
||||
orrs r0, r1
|
||||
strh r0, [r2]
|
||||
ldrh r0, [r5, #0x34]
|
||||
ldrh r1, [r6, #0xa]
|
||||
adds r0, r0, r1
|
||||
adds r0, r0, r4
|
||||
strh r0, [r6, #0x2a]
|
||||
strh r0, [r2, #0x2e]
|
||||
ldrh r0, [r5, #0x36]
|
||||
ldrh r7, [r6, #0xc]
|
||||
adds r0, r0, r7
|
||||
adds r0, r0, r3
|
||||
strh r0, [r6, #0x2e]
|
||||
strh r0, [r2, #0x30]
|
||||
_0805B31E:
|
||||
pop {r4, r5, r6, r7, pc}
|
||||
.align 2, 0
|
||||
_0805B320: .4byte gRoomControls
|
||||
_0805B324: .4byte gScreen
|
||||
|
||||
thumb_func_start sub_0805B328
|
||||
sub_0805B328: @ 0x0805B328
|
||||
push {r4, lr}
|
||||
adds r1, r0, #0
|
||||
ldrb r0, [r1, #0xb]
|
||||
cmp r0, #0
|
||||
beq _0805B372
|
||||
ldrb r1, [r1, #0xa]
|
||||
lsls r0, r1, #2
|
||||
adds r0, r0, r1
|
||||
lsls r0, r0, #2
|
||||
ldr r1, _0805B374 @ =gUnk_08108764
|
||||
adds r0, r0, r1
|
||||
ldr r0, [r0, #0xc]
|
||||
ldr r0, [r0]
|
||||
ldr r1, _0805B378 @ =gGlobalGfxAndPalettes
|
||||
adds r0, r0, r1
|
||||
ldr r1, _0805B37C @ =0x0600F000
|
||||
movs r4, #0x80
|
||||
lsls r4, r4, #4
|
||||
adds r2, r4, #0
|
||||
bl LoadAssetAsync
|
||||
ldr r1, _0805B380 @ =gScreen
|
||||
ldr r0, _0805B384 @ =0x00001E07
|
||||
strh r0, [r1, #0x2c]
|
||||
ldrh r0, [r1]
|
||||
orrs r4, r0
|
||||
strh r4, [r1]
|
||||
ldr r2, _0805B388 @ =gRoomControls
|
||||
ldrh r0, [r2, #0x2a]
|
||||
strh r0, [r1, #0x2e]
|
||||
ldrh r0, [r2, #0x2e]
|
||||
strh r0, [r1, #0x30]
|
||||
adds r1, #0x66
|
||||
ldrh r2, [r1]
|
||||
ldr r0, _0805B38C @ =0x0000FFF7
|
||||
ands r0, r2
|
||||
strh r0, [r1]
|
||||
_0805B372:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
_0805B374: .4byte gUnk_08108764
|
||||
_0805B378: .4byte gGlobalGfxAndPalettes
|
||||
_0805B37C: .4byte 0x0600F000
|
||||
_0805B380: .4byte gScreen
|
||||
_0805B384: .4byte 0x00001E07
|
||||
_0805B388: .4byte gRoomControls
|
||||
_0805B38C: .4byte 0x0000FFF7
|
||||
|
||||
thumb_func_start sub_0805B390
|
||||
sub_0805B390: @ 0x0805B390
|
||||
push {r4, lr}
|
||||
adds r4, r0, #0
|
||||
bl GetEmptyManager
|
||||
adds r1, r0, #0
|
||||
cmp r1, #0
|
||||
beq _0805B3B0
|
||||
movs r0, #9
|
||||
strb r0, [r1, #8]
|
||||
movs r0, #0x1a
|
||||
strb r0, [r1, #9]
|
||||
strb r4, [r1, #0xa]
|
||||
adds r0, r1, #0
|
||||
movs r1, #6
|
||||
bl AppendEntityToList
|
||||
_0805B3B0:
|
||||
pop {r4, pc}
|
||||
.align 2, 0
|
||||
+4
-4
@@ -29,7 +29,7 @@ sub_0805754C: @ 0x0805754C
|
||||
_08057570:
|
||||
asrs r0, r0, #6
|
||||
lsls r0, r0, #9
|
||||
ldr r5, _080575C4 @ =gUnk_02002F00
|
||||
ldr r5, _080575C4 @ =gMapDataTopSpecial
|
||||
adds r1, r0, r5
|
||||
str r1, [r4, #0x34]
|
||||
ldr r0, [r2, #0x38]
|
||||
@@ -71,7 +71,7 @@ _080575BA:
|
||||
.align 2, 0
|
||||
_080575BC: .4byte gRoomControls
|
||||
_080575C0: .4byte gScreen
|
||||
_080575C4: .4byte gUnk_02002F00
|
||||
_080575C4: .4byte gMapDataTopSpecial
|
||||
|
||||
thumb_func_start sub_080575C8
|
||||
sub_080575C8: @ 0x080575C8
|
||||
@@ -107,7 +107,7 @@ sub_080575C8: @ 0x080575C8
|
||||
_08057604:
|
||||
asrs r0, r0, #6
|
||||
lsls r0, r0, #9
|
||||
ldr r4, _08057674 @ =gUnk_02002F00
|
||||
ldr r4, _08057674 @ =gMapDataTopSpecial
|
||||
adds r0, r0, r4
|
||||
str r0, [r2, #0x34]
|
||||
ldr r0, _08057678 @ =0x00001D49
|
||||
@@ -158,7 +158,7 @@ _08057664: .4byte gUnk_0200B650
|
||||
_08057668: .4byte gRoomVars
|
||||
_0805766C: .4byte gRoomControls
|
||||
_08057670: .4byte gScreen
|
||||
_08057674: .4byte gUnk_02002F00
|
||||
_08057674: .4byte gMapDataTopSpecial
|
||||
_08057678: .4byte 0x00001D49
|
||||
_0805767C: .4byte 0x00001E49
|
||||
_08057680: .4byte 0x00003C48
|
||||
|
||||
@@ -1,74 +0,0 @@
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.include "constants/constants.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_0805B7A0
|
||||
sub_0805B7A0: @ 0x0805B7A0
|
||||
push {r4, r5, lr}
|
||||
adds r5, r0, #0
|
||||
ldrb r0, [r5, #0xe]
|
||||
ldrb r1, [r5, #0xa]
|
||||
ldrb r2, [r5, #0xb]
|
||||
bl CreateObject
|
||||
adds r4, r0, #0
|
||||
cmp r4, #0
|
||||
beq _0805B81A
|
||||
ldrh r0, [r5, #0x3e]
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x86
|
||||
strh r0, [r1]
|
||||
ldrh r0, [r5, #0x3e]
|
||||
bl CheckFlags
|
||||
cmp r0, #0
|
||||
beq _0805B7EC
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x36
|
||||
ldrb r1, [r0]
|
||||
adds r0, #1
|
||||
ldrb r2, [r0]
|
||||
movs r0, #0xf
|
||||
ands r0, r2
|
||||
lsls r0, r0, #8
|
||||
orrs r1, r0
|
||||
strh r1, [r4, #0x2e]
|
||||
ldrh r1, [r5, #0x3c]
|
||||
ldr r0, _0805B7E8 @ =0x00000FFF
|
||||
ands r0, r1
|
||||
strh r0, [r4, #0x32]
|
||||
ldrh r0, [r5, #0x3c]
|
||||
lsrs r0, r0, #0xc
|
||||
b _0805B7FC
|
||||
.align 2, 0
|
||||
_0805B7E8: .4byte 0x00000FFF
|
||||
_0805B7EC:
|
||||
ldrh r0, [r5, #0x38]
|
||||
strh r0, [r4, #0x2e]
|
||||
ldrh r0, [r5, #0x3a]
|
||||
strh r0, [r4, #0x32]
|
||||
adds r0, r5, #0
|
||||
adds r0, #0x37
|
||||
ldrb r0, [r0]
|
||||
lsrs r0, r0, #4
|
||||
_0805B7FC:
|
||||
adds r1, r4, #0
|
||||
adds r1, #0x38
|
||||
strb r0, [r1]
|
||||
ldr r0, _0805B81C @ =gRoomControls
|
||||
ldrh r1, [r0, #6]
|
||||
ldrh r2, [r4, #0x2e]
|
||||
adds r1, r1, r2
|
||||
strh r1, [r4, #0x2e]
|
||||
ldrh r0, [r0, #8]
|
||||
ldrh r1, [r4, #0x32]
|
||||
adds r0, r0, r1
|
||||
strh r0, [r4, #0x32]
|
||||
adds r0, r5, #0
|
||||
bl DeleteManager
|
||||
_0805B81A:
|
||||
pop {r4, r5, pc}
|
||||
.align 2, 0
|
||||
_0805B81C: .4byte gRoomControls
|
||||
+1
-1
@@ -188,7 +188,7 @@ sub_0805BDB4: @ 0x0805BDB4
|
||||
movs r2, #0x3a
|
||||
ldrsh r1, [r4, r2]
|
||||
ldrb r2, [r4, #0xb]
|
||||
bl sub_080A29C8
|
||||
bl CreateDustAt
|
||||
ldrh r0, [r4, #0x3e]
|
||||
bl ClearFlag
|
||||
ldrh r0, [r4, #0x20]
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user