mirror of
https://github.com/pret/pokeruby.git
synced 2026-10-02 07:39:55 -04:00
Merge branch 'master' into secret_base
This commit is contained in:
@@ -38,3 +38,4 @@ Thumbs.db
|
||||
build/
|
||||
.idea/
|
||||
*.DS_Store
|
||||
*.pl
|
||||
|
||||
@@ -55,5 +55,6 @@ matrix:
|
||||
script:
|
||||
- ./build_tools.sh
|
||||
- make -j2 compare_ruby_de
|
||||
- make -j2 compare_sapphire_de
|
||||
allow_failures:
|
||||
- env: _="Formatting"
|
||||
|
||||
@@ -26,7 +26,7 @@ RAMSCRGEN := tools/ramscrgen/ramscrgen
|
||||
|
||||
REVISION := 0
|
||||
|
||||
VERSIONS := ruby sapphire ruby_rev1 sapphire_rev1 ruby_rev2 sapphire_rev2 ruby_de
|
||||
VERSIONS := ruby sapphire ruby_rev1 sapphire_rev1 ruby_rev2 sapphire_rev2 ruby_de sapphire_de
|
||||
|
||||
# Clear the default suffixes.
|
||||
.SUFFIXES:
|
||||
@@ -40,9 +40,9 @@ VERSIONS := ruby sapphire ruby_rev1 sapphire_rev1 ruby_rev2 sapphire_rev2 ruby_d
|
||||
$(VERSIONS) $(VERSIONS:%=compare_%)
|
||||
|
||||
|
||||
$(shell mkdir -p build/ $(VERSIONS:%=build/%/{,src,asm,data}))
|
||||
$(shell mkdir -p build/ $(VERSIONS:%=build/%/{,asm,data,src{,/battle,/field,/debug,/scene,/pokemon,/engine,/libs}}))
|
||||
|
||||
C_SRCS := $(wildcard src/*.c)
|
||||
C_SRCS := $(wildcard src/*/*.c) $(wildcard src/*.c)
|
||||
ASM_SRCS := $(wildcard asm/*.s)
|
||||
DATA_ASM_SRCS := $(wildcard data/*.s)
|
||||
|
||||
@@ -83,6 +83,7 @@ include override.mk
|
||||
%.4bpp: %.png ; $(GFX) $< $@
|
||||
%.8bpp: %.png ; $(GFX) $< $@
|
||||
%.gbapal: %.pal ; $(GFX) $< $@
|
||||
%.gbapal: %.png ; $(GFX) $< $@
|
||||
%.lz: % ; $(GFX) $< $@
|
||||
%.rl: % ; $(GFX) $< $@
|
||||
sound/direct_sound_samples/cry_%.bin: sound/direct_sound_samples/cry_%.aif ; $(AIF) $< $@ --compress
|
||||
@@ -90,17 +91,17 @@ sound/direct_sound_samples/cry_%.bin: sound/direct_sound_samples/cry_%.aif ; $(A
|
||||
sound/songs/%.s: sound/songs/%.mid
|
||||
cd $(@D) && ../../$(MID) $(<F)
|
||||
|
||||
%src/libc.o: CC1 := tools/agbcc/bin/old_agbcc
|
||||
%src/libc.o: CFLAGS := -O2
|
||||
%src/libs/libc.o: CC1 := tools/agbcc/bin/old_agbcc
|
||||
%src/libs/libc.o: CFLAGS := -O2
|
||||
|
||||
%src/siirtc.o: CFLAGS := -mthumb-interwork
|
||||
%src/libs/siirtc.o: CFLAGS := -mthumb-interwork
|
||||
|
||||
%src/agb_flash.o: CFLAGS := -O -mthumb-interwork
|
||||
%src/agb_flash_1m.o: CFLAGS := -O -mthumb-interwork
|
||||
%src/agb_flash_mx.o: CFLAGS := -O -mthumb-interwork
|
||||
%src/libs/agb_flash.o: CFLAGS := -O -mthumb-interwork
|
||||
%src/libs/agb_flash_1m.o: CFLAGS := -O -mthumb-interwork
|
||||
%src/libs/agb_flash_mx.o: CFLAGS := -O -mthumb-interwork
|
||||
|
||||
%src/m4a_2.o: CC1 := tools/agbcc/bin/old_agbcc
|
||||
%src/m4a_4.o: CC1 := tools/agbcc/bin/old_agbcc
|
||||
%src/libs/m4a_2.o: CC1 := tools/agbcc/bin/old_agbcc
|
||||
%src/libs/m4a_4.o: CC1 := tools/agbcc/bin/old_agbcc
|
||||
|
||||
$(SONG_OBJS): %.o: %.s
|
||||
$(AS) $(ASFLAGS) -I sound -o $@ $<
|
||||
@@ -113,7 +114,8 @@ $1_ASM_OBJS := $$(ASM_SRCS:%.s=build/$1/%.o)
|
||||
$1_DATA_ASM_OBJS := $$(DATA_ASM_SRCS:%.s=build/$1/%.o)
|
||||
|
||||
ifeq ($$(NODEP),)
|
||||
build/$1/src/%.o: c_dep = $$(shell $$(SCANINC) src/$$(*F).c)
|
||||
build/$1/src/%.o: c_path = $$(*D)/$$(*F).c
|
||||
build/$1/src/%.o: c_dep = $$(shell $$(SCANINC) -I include $$(wildcard $$(c_path:build/$1/=)))
|
||||
build/$1/asm/%.o: asm_dep = $$(shell $$(SCANINC) asm/$$(*F).s)
|
||||
build/$1/data/%.o: asm_dep = $$(shell $$(SCANINC) data/$$(*F).s)
|
||||
endif
|
||||
@@ -178,3 +180,4 @@ $(eval $(call VERSION_RULES,sapphire,SAPPHIRE,0,ENGLISH))
|
||||
$(eval $(call VERSION_RULES,sapphire_rev1,SAPPHIRE,1,ENGLISH))
|
||||
$(eval $(call VERSION_RULES,sapphire_rev2,SAPPHIRE,2,ENGLISH))
|
||||
$(eval $(call VERSION_RULES,ruby_de,RUBY,0,GERMAN))
|
||||
$(eval $(call VERSION_RULES,sapphire_de,SAPPHIRE,0,GERMAN))
|
||||
|
||||
@@ -9,8 +9,24 @@ It builds the following roms:
|
||||
|
||||
To set up the repository, see [INSTALL.md](INSTALL.md).
|
||||
|
||||
### irc: [freenode#pret][irc]
|
||||
## See also
|
||||
|
||||
* Disassembly of [**Pokémon Red/Blue**][pokered]
|
||||
* Disassembly of [**Pokémon Yellow**][pokeyellow]
|
||||
* Disassembly of [**Pokémon Crystal**][pokecrystal]
|
||||
* Disassembly of [**Pokémon Pinball**][pokepinball]
|
||||
* Disassembly of [**Pokémon TCG**][poketcg]
|
||||
* Disassembly of [**Pokémon Emerald**][pokeemerald]
|
||||
* Discord: [**pret**][Discord]
|
||||
* irc: **irc.freenode.net** [**#pret**][irc]
|
||||
|
||||
[pokered]: https://github.com/pret/pokered
|
||||
[pokeyellow]: https://github.com/pret/pokeyellow
|
||||
[pokecrystal]: https://github.com/pret/pokecrystal
|
||||
[pokepinball]: https://github.com/pret/pokepinball
|
||||
[poketcg]: https://github.com/pret/poketcg
|
||||
[pokeemerald]: https://github.com/pret/pokeemerald
|
||||
[Discord]: https://discord.gg/cJxDDVP
|
||||
[irc]: https://kiwiirc.com/client/irc.freenode.net/?#pret
|
||||
[travis]: https://travis-ci.org/pret/pokeruby
|
||||
[travis-badge]: https://travis-ci.org/pret/pokeruby.svg?branch=master
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1361,7 +1361,7 @@ _080C2B14:
|
||||
adds r0, r6, 0
|
||||
ldr r1, [sp, 0xC]
|
||||
adds r2, r4, 0
|
||||
bl sub_80409C8
|
||||
bl GetMonSpritePalStructFromOtIdPersonality
|
||||
adds r4, r0, 0
|
||||
bl LoadCompressedObjectPalette
|
||||
adds r0, r6, 0
|
||||
@@ -1601,7 +1601,7 @@ _080C2D42:
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
movs r1, 0x2
|
||||
bl GetNationalPokedexFlag
|
||||
bl GetSetPokedexFlag
|
||||
adds r5, 0x40
|
||||
subs r4, 0x1
|
||||
cmp r4, 0
|
||||
|
||||
+3
-104
@@ -4212,7 +4212,7 @@ _080E812C:
|
||||
mov r2, r8
|
||||
strb r2, [r0]
|
||||
adds r0, 0x1
|
||||
ldr r1, _080E81A4 @ =0x083e7686
|
||||
ldr r1, _080E81A4 @ =gBerryMasterWifePhrases + 0x2
|
||||
adds r4, r1
|
||||
ldrh r1, [r4]
|
||||
movs r2, 0
|
||||
@@ -4246,7 +4246,7 @@ _080E818A:
|
||||
_080E8198: .4byte 0x0200b19a
|
||||
_080E819C: .4byte 0xffff5e66
|
||||
_080E81A0: .4byte gBerryMasterWifePhrases
|
||||
_080E81A4: .4byte 0x083e7686
|
||||
_080E81A4: .4byte gBerryMasterWifePhrases + 0x2
|
||||
_080E81A8:
|
||||
lsls r0, r4, 16
|
||||
lsrs r5, r0, 16
|
||||
@@ -9984,7 +9984,7 @@ _080EAE50:
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
movs r1, 0
|
||||
bl GetNationalPokedexFlag
|
||||
bl GetSetPokedexFlag
|
||||
b _080EAE7C
|
||||
_080EAE62:
|
||||
ldr r0, _080EAE74 @ =gUnknown_083DB694
|
||||
@@ -10801,105 +10801,4 @@ _080EB45A:
|
||||
bx r1
|
||||
thumb_func_end de_sub_80EB748
|
||||
|
||||
thumb_func_start sub_80EB3FC
|
||||
sub_80EB3FC: @ 80EB4B4
|
||||
push {r4-r7,lr}
|
||||
adds r5, r0, 0
|
||||
lsls r6, r1, 16
|
||||
lsrs r4, r6, 16
|
||||
adds r7, r4, 0
|
||||
adds r0, r4, 0
|
||||
bl sub_80EB37C
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080EB4D8
|
||||
ldr r1, _080EB4D4 @ =gOtherText_ThreeQuestions
|
||||
adds r0, r5, 0
|
||||
bl StringCopy
|
||||
b _080EB55E
|
||||
.align 2, 0
|
||||
_080EB4D4: .4byte gOtherText_ThreeQuestions
|
||||
_080EB4D8:
|
||||
ldr r0, _080EB4F4 @ =0x0000ffff
|
||||
cmp r4, r0
|
||||
beq _080EB558
|
||||
lsrs r1, r6, 25
|
||||
ldr r2, _080EB4F8 @ =0x000001ff
|
||||
ands r2, r7
|
||||
cmp r1, 0x13
|
||||
bgt _080EB4FC
|
||||
cmp r1, 0x12
|
||||
bge _080EB510
|
||||
cmp r1, 0
|
||||
beq _080EB500
|
||||
b _080EB520
|
||||
.align 2, 0
|
||||
_080EB4F4: .4byte 0x0000ffff
|
||||
_080EB4F8: .4byte 0x000001ff
|
||||
_080EB4FC:
|
||||
cmp r1, 0x15
|
||||
bne _080EB520
|
||||
_080EB500:
|
||||
movs r0, 0xB
|
||||
adds r1, r2, 0
|
||||
muls r1, r0
|
||||
ldr r0, _080EB50C @ =gSpeciesNames
|
||||
adds r1, r0
|
||||
b _080EB550
|
||||
.align 2, 0
|
||||
_080EB50C: .4byte gSpeciesNames
|
||||
_080EB510:
|
||||
movs r0, 0xD
|
||||
adds r1, r2, 0
|
||||
muls r1, r0
|
||||
ldr r0, _080EB51C @ =gMoveNames
|
||||
adds r1, r0
|
||||
b _080EB550
|
||||
.align 2, 0
|
||||
_080EB51C: .4byte gMoveNames
|
||||
_080EB520:
|
||||
ldr r0, _080EB564 @ =gEasyChatGroupWords
|
||||
lsls r1, 2
|
||||
adds r1, r0
|
||||
ldr r1, [r1]
|
||||
subs r0, r2, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r2, r0, 16
|
||||
ldr r0, _080EB568 @ =0x0000ffff
|
||||
cmp r2, r0
|
||||
beq _080EB550
|
||||
adds r3, r0, 0
|
||||
_080EB536:
|
||||
ldrb r0, [r1]
|
||||
adds r1, 0x1
|
||||
subs r2, 0x1
|
||||
cmp r0, 0xFF
|
||||
beq _080EB548
|
||||
_080EB540:
|
||||
ldrb r0, [r1]
|
||||
adds r1, 0x1
|
||||
cmp r0, 0xFF
|
||||
bne _080EB540
|
||||
_080EB548:
|
||||
lsls r0, r2, 16
|
||||
lsrs r2, r0, 16
|
||||
cmp r2, r3
|
||||
bne _080EB536
|
||||
_080EB550:
|
||||
adds r0, r5, 0
|
||||
bl StringCopy
|
||||
adds r5, r0, 0
|
||||
_080EB558:
|
||||
movs r0, 0xFF
|
||||
strb r0, [r5]
|
||||
adds r0, r5, 0
|
||||
_080EB55E:
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_080EB564: .4byte gEasyChatGroupWords
|
||||
_080EB568: .4byte 0x0000ffff
|
||||
thumb_func_end sub_80EB3FC
|
||||
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
|
||||
+29
-29
@@ -189,7 +189,7 @@ _080124A8:
|
||||
lsls r0, 8
|
||||
orrs r2, r0
|
||||
movs r0, 0
|
||||
bl dp01_build_cmdbuf_x12_a_bb
|
||||
bl Emitcmd18
|
||||
bl _08012E32
|
||||
.align 2, 0
|
||||
_080124C0: .4byte gActionForBanks
|
||||
@@ -262,7 +262,7 @@ _08012538:
|
||||
.4byte _08012968
|
||||
.4byte _0801292C
|
||||
_0801256C:
|
||||
bl sub_8015C90
|
||||
bl AreAllMovesUnusable
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080125D0
|
||||
@@ -408,7 +408,7 @@ _0801264E:
|
||||
movs r0, 0
|
||||
movs r2, 0
|
||||
add r3, sp, 0x4
|
||||
bl sub_800CBA4
|
||||
bl Emitcmd20
|
||||
b _0801289E
|
||||
.align 2, 0
|
||||
_080126AC: .4byte gBattleMons
|
||||
@@ -573,7 +573,7 @@ _080127E0:
|
||||
str r0, [sp]
|
||||
movs r0, 0
|
||||
movs r2, 0x6
|
||||
bl dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f
|
||||
bl EmitChoosePokemon
|
||||
b _0801289E
|
||||
.align 2, 0
|
||||
_08012808: .4byte gActiveBank
|
||||
@@ -624,7 +624,7 @@ _08012854:
|
||||
movs r1, 0
|
||||
_0801286C:
|
||||
movs r3, 0
|
||||
bl dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f
|
||||
bl EmitChoosePokemon
|
||||
b _0801289E
|
||||
.align 2, 0
|
||||
_08012874: .4byte gActionForBanks
|
||||
@@ -643,7 +643,7 @@ _08012884:
|
||||
movs r1, 0
|
||||
movs r2, 0x6
|
||||
movs r3, 0
|
||||
bl dp01_build_cmdbuf_x16_a_b_c_ptr_d_e_f
|
||||
bl EmitChoosePokemon
|
||||
_0801289E:
|
||||
ldr r0, _080128A8 @ =gActiveBank
|
||||
ldrb r0, [r0]
|
||||
@@ -698,7 +698,7 @@ _08012908:
|
||||
ldr r0, _08012928 @ =0x0201606c
|
||||
adds r1, r0
|
||||
movs r0, 0
|
||||
bl sub_800CBE0
|
||||
bl EmitOpenBag
|
||||
ldrb r0, [r4]
|
||||
bl MarkBufferBankForExecution
|
||||
b _08012968
|
||||
@@ -725,7 +725,7 @@ _0801292C:
|
||||
adds r0, r4
|
||||
strb r5, [r0]
|
||||
movs r0, 0
|
||||
bl dp01_build_cmdbuf_x32_32_32_32
|
||||
bl Emitcmd50
|
||||
mov r4, r8
|
||||
ldrb r0, [r4]
|
||||
bl MarkBufferBankForExecution
|
||||
@@ -1514,8 +1514,8 @@ _08012FE8: .4byte gUnknown_02024A76
|
||||
_08012FEC: .4byte gTurnOrder
|
||||
thumb_func_end sub_8012FBC
|
||||
|
||||
thumb_func_start b_first_side
|
||||
b_first_side: @ 8012FF0
|
||||
thumb_func_start GetWhoStrikesFirst
|
||||
GetWhoStrikesFirst: @ 8012FF0
|
||||
push {r4-r7,lr}
|
||||
mov r7, r10
|
||||
mov r6, r9
|
||||
@@ -2003,7 +2003,7 @@ _080133B6:
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end b_first_side
|
||||
thumb_func_end GetWhoStrikesFirst
|
||||
|
||||
thumb_func_start sub_80133C8
|
||||
sub_80133C8: @ 80133C8
|
||||
@@ -2285,7 +2285,7 @@ _080135D0:
|
||||
beq _0801360C
|
||||
adds r0, r3, 0
|
||||
movs r2, 0
|
||||
bl b_first_side
|
||||
bl GetWhoStrikesFirst
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0801360C
|
||||
@@ -2789,7 +2789,7 @@ _08013A04:
|
||||
beq _08013A0E
|
||||
b _08013B42
|
||||
_08013A0E:
|
||||
bl sub_80325B8
|
||||
bl BattleMusicStop
|
||||
ldr r1, _08013A3C @ =gBattlescriptCurrInstr
|
||||
ldr r0, _08013A40 @ =gUnknown_081D8DBE
|
||||
str r0, [r1]
|
||||
@@ -3144,7 +3144,7 @@ _08013D4C:
|
||||
ldr r1, _08013D6C @ =gBattleMainFunc
|
||||
ldr r0, _08013D70 @ =sub_8013DA8
|
||||
str r0, [r1]
|
||||
ldr r1, _08013D74 @ =gUnknown_03005E94
|
||||
ldr r1, _08013D74 @ =gCB2_AfterEvolution
|
||||
ldr r0, _08013D78 @ =sub_800F808
|
||||
str r0, [r1]
|
||||
b _08013D96
|
||||
@@ -3152,7 +3152,7 @@ _08013D4C:
|
||||
_08013D68: .4byte gNoOfAllBanks
|
||||
_08013D6C: .4byte gBattleMainFunc
|
||||
_08013D70: .4byte sub_8013DA8
|
||||
_08013D74: .4byte gUnknown_03005E94
|
||||
_08013D74: .4byte gCB2_AfterEvolution
|
||||
_08013D78: .4byte sub_800F808
|
||||
_08013D7C:
|
||||
ldr r0, _08013D9C @ =gBattleExecBuffer
|
||||
@@ -3558,7 +3558,7 @@ _08014044:
|
||||
str r0, [r2]
|
||||
movs r0, 0xA5
|
||||
movs r1, 0
|
||||
bl sub_801B5C0
|
||||
bl GetMoveTarget
|
||||
ldrb r1, [r7]
|
||||
ldr r2, _080140EC @ =0x00016010
|
||||
adds r1, r2
|
||||
@@ -3646,7 +3646,7 @@ _08014138:
|
||||
strb r0, [r3]
|
||||
ldrh r0, [r1]
|
||||
movs r1, 0
|
||||
bl sub_801B5C0
|
||||
bl GetMoveTarget
|
||||
ldrb r1, [r7]
|
||||
ldr r4, _0801419C @ =0x00016010
|
||||
adds r1, r4
|
||||
@@ -3702,7 +3702,7 @@ _080141A0:
|
||||
strb r0, [r1, 0xE]
|
||||
ldrh r0, [r3]
|
||||
movs r1, 0
|
||||
bl sub_801B5C0
|
||||
bl GetMoveTarget
|
||||
ldrb r1, [r7]
|
||||
ldr r3, _08014214 @ =0x00016010
|
||||
adds r1, r3
|
||||
@@ -3740,7 +3740,7 @@ _08014218:
|
||||
strh r3, [r1]
|
||||
ldrh r0, [r1]
|
||||
movs r1, 0
|
||||
bl sub_801B5C0
|
||||
bl GetMoveTarget
|
||||
ldr r2, _08014270 @ =0x02000000
|
||||
ldrb r1, [r4]
|
||||
ldr r3, _08014274 @ =0x00016010
|
||||
@@ -3936,14 +3936,14 @@ _080143B6:
|
||||
cmp r0, 0x1F
|
||||
bne _08014404
|
||||
adds r0, r2, 0
|
||||
bl sub_801E3B4
|
||||
bl BankGetTurnOrder
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r1, [sp]
|
||||
cmp r0, r1
|
||||
bcs _08014404
|
||||
ldrb r0, [r4]
|
||||
bl sub_801E3B4
|
||||
bl BankGetTurnOrder
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
str r0, [sp]
|
||||
@@ -4261,7 +4261,7 @@ _0801469A:
|
||||
strb r0, [r5]
|
||||
_080146AC:
|
||||
ldr r4, _080146E0 @ =gBattlescriptCurrInstr
|
||||
ldr r3, _080146E4 @ =gUnknown_081D6BBC
|
||||
ldr r3, _080146E4 @ =gBattleScriptsEffectsTable
|
||||
ldr r2, _080146E8 @ =gBattleMoves
|
||||
ldr r0, _080146EC @ =gCurrentMove
|
||||
ldrh r1, [r0]
|
||||
@@ -4288,7 +4288,7 @@ _080146CC:
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080146E0: .4byte gBattlescriptCurrInstr
|
||||
_080146E4: .4byte gUnknown_081D6BBC
|
||||
_080146E4: .4byte gBattleScriptsEffectsTable
|
||||
_080146E8: .4byte gBattleMoves
|
||||
_080146EC: .4byte gCurrentMove
|
||||
_080146F0: .4byte gFightStateTracker
|
||||
@@ -5528,8 +5528,8 @@ _08015148: .4byte 0x00016112
|
||||
_0801514C: .4byte 0x00017130
|
||||
thumb_func_end bsC_8016D70
|
||||
|
||||
thumb_func_start sub_8015150
|
||||
sub_8015150: @ 8015150
|
||||
thumb_func_start GetBattleBank
|
||||
GetBattleBank: @ 8015150
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
@@ -5592,10 +5592,10 @@ _080151C8:
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_080151D0: .4byte gBank1
|
||||
thumb_func_end sub_8015150
|
||||
thumb_func_end GetBattleBank
|
||||
|
||||
thumb_func_start sub_80151D4
|
||||
sub_80151D4: @ 80151D4
|
||||
thumb_func_start PressurePPLose
|
||||
PressurePPLose: @ 80151D4
|
||||
push {r4-r7,lr}
|
||||
sub sp, 0x4
|
||||
lsls r0, 24
|
||||
@@ -5695,7 +5695,7 @@ _08015286:
|
||||
_08015290: .4byte gDisableStructs
|
||||
_08015294: .4byte gBitTable
|
||||
_08015298: .4byte gActiveBank
|
||||
thumb_func_end sub_80151D4
|
||||
thumb_func_end PressurePPLose
|
||||
|
||||
thumb_func_start sub_801529C
|
||||
sub_801529C: @ 801529C
|
||||
|
||||
-12017
File diff suppressed because it is too large
Load Diff
-32351
File diff suppressed because it is too large
Load Diff
-4591
File diff suppressed because it is too large
Load Diff
-5222
File diff suppressed because it is too large
Load Diff
+37
-1447
File diff suppressed because it is too large
Load Diff
@@ -1,960 +0,0 @@
|
||||
.include "constants/gba_constants.inc"
|
||||
.include "constants/species_constants.inc"
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start unref_sub_807B69C
|
||||
unref_sub_807B69C: @ 807B69C
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
adds r4, r0, 0
|
||||
adds r5, r1, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
lsls r5, 24
|
||||
lsrs r5, 24
|
||||
ldr r0, _0807B740 @ =gObjectBankIDs
|
||||
adds r0, r4, r0
|
||||
ldrb r6, [r0]
|
||||
ldr r0, _0807B744 @ =sub_807B7E0
|
||||
movs r1, 0xA
|
||||
bl CreateTask
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
mov r8, r0
|
||||
ldr r0, _0807B748 @ =gBattleAnimPicTable + (136 * 8)
|
||||
bl LoadCompressedObjectPic
|
||||
ldr r0, _0807B74C @ =gBattleAnimPaletteTable + (136 * 8)
|
||||
bl LoadCompressedObjectPalette
|
||||
ldr r1, _0807B750 @ =gTasks
|
||||
mov r2, r8
|
||||
lsls r0, r2, 2
|
||||
add r0, r8
|
||||
lsls r0, 3
|
||||
adds r1, r0, r1
|
||||
strh r4, [r1, 0x8]
|
||||
cmp r5, 0
|
||||
beq _0807B75C
|
||||
movs r0, 0x1F
|
||||
strh r0, [r1, 0xA]
|
||||
movs r5, 0
|
||||
lsls r0, r6, 4
|
||||
ldr r7, _0807B754 @ =gSprites
|
||||
adds r0, r6
|
||||
lsls r0, 2
|
||||
adds r6, r0, r7
|
||||
_0807B6F0:
|
||||
movs r0, 0x20
|
||||
ldrsh r1, [r6, r0]
|
||||
ldrh r2, [r6, 0x22]
|
||||
adds r2, 0x20
|
||||
lsls r2, 16
|
||||
asrs r2, 16
|
||||
ldr r0, _0807B758 @ =gSpriteTemplate_83931F8
|
||||
movs r3, 0
|
||||
bl CreateSprite
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
lsls r0, r4, 4
|
||||
adds r0, r4
|
||||
lsls r0, 2
|
||||
adds r3, r0, r7
|
||||
lsls r0, r5, 1
|
||||
adds r0, r5
|
||||
lsls r1, r0, 4
|
||||
adds r0, r1
|
||||
strh r0, [r3, 0x2E]
|
||||
movs r0, 0xFF
|
||||
lsls r0, 8
|
||||
strh r0, [r3, 0x30]
|
||||
adds r2, r3, 0
|
||||
adds r2, 0x3E
|
||||
ldrb r0, [r2]
|
||||
movs r1, 0x4
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
cmp r5, 0x4
|
||||
bls _0807B734
|
||||
movs r0, 0x15
|
||||
strh r0, [r3, 0x3A]
|
||||
_0807B734:
|
||||
adds r0, r5, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
cmp r5, 0x9
|
||||
bls _0807B6F0
|
||||
b _0807B7BC
|
||||
.align 2, 0
|
||||
_0807B740: .4byte gObjectBankIDs
|
||||
_0807B744: .4byte sub_807B7E0
|
||||
_0807B748: .4byte gBattleAnimPicTable + (136 * 8)
|
||||
_0807B74C: .4byte gBattleAnimPaletteTable + (136 * 8)
|
||||
_0807B750: .4byte gTasks
|
||||
_0807B754: .4byte gSprites
|
||||
_0807B758: .4byte gSpriteTemplate_83931F8
|
||||
_0807B75C:
|
||||
movs r0, 0xF8
|
||||
lsls r0, 7
|
||||
strh r0, [r1, 0xA]
|
||||
movs r5, 0
|
||||
lsls r0, r6, 4
|
||||
ldr r7, _0807B7D8 @ =gSprites
|
||||
adds r0, r6
|
||||
lsls r0, 2
|
||||
adds r6, r0, r7
|
||||
_0807B76E:
|
||||
movs r2, 0x20
|
||||
ldrsh r1, [r6, r2]
|
||||
ldrh r2, [r6, 0x22]
|
||||
subs r2, 0x20
|
||||
lsls r2, 16
|
||||
asrs r2, 16
|
||||
ldr r0, _0807B7DC @ =gSpriteTemplate_83931F8
|
||||
movs r3, 0
|
||||
bl CreateSprite
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
lsls r0, r4, 4
|
||||
adds r0, r4
|
||||
lsls r0, 2
|
||||
adds r3, r0, r7
|
||||
lsls r0, r5, 1
|
||||
adds r0, r5
|
||||
lsls r1, r0, 4
|
||||
adds r0, r1
|
||||
strh r0, [r3, 0x2E]
|
||||
movs r0, 0x80
|
||||
lsls r0, 1
|
||||
strh r0, [r3, 0x30]
|
||||
adds r2, r3, 0
|
||||
adds r2, 0x3E
|
||||
ldrb r0, [r2]
|
||||
movs r1, 0x4
|
||||
orrs r0, r1
|
||||
strb r0, [r2]
|
||||
cmp r5, 0x4
|
||||
bls _0807B7B2
|
||||
movs r0, 0x15
|
||||
strh r0, [r3, 0x3A]
|
||||
_0807B7B2:
|
||||
adds r0, r5, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
cmp r5, 0x9
|
||||
bls _0807B76E
|
||||
_0807B7BC:
|
||||
ldr r0, _0807B7D8 @ =gSprites
|
||||
lsls r1, r4, 4
|
||||
adds r1, r4
|
||||
lsls r1, 2
|
||||
adds r1, r0
|
||||
movs r0, 0x1
|
||||
strh r0, [r1, 0x3C]
|
||||
mov r0, r8
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0807B7D8: .4byte gSprites
|
||||
_0807B7DC: .4byte gSpriteTemplate_83931F8
|
||||
thumb_func_end unref_sub_807B69C
|
||||
|
||||
thumb_func_start sub_807B7E0
|
||||
sub_807B7E0: @ 807B7E0
|
||||
push {r4,r5,lr}
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
ldr r1, _0807B838 @ =gTasks
|
||||
lsls r0, r5, 2
|
||||
adds r0, r5
|
||||
lsls r0, 3
|
||||
adds r4, r0, r1
|
||||
ldrh r1, [r4, 0xC]
|
||||
movs r2, 0xC
|
||||
ldrsh r0, [r4, r2]
|
||||
cmp r0, 0x2
|
||||
bne _0807B866
|
||||
movs r0, 0
|
||||
strh r0, [r4, 0xC]
|
||||
movs r1, 0x8
|
||||
ldrsh r0, [r4, r1]
|
||||
lsls r0, 20
|
||||
movs r2, 0x80
|
||||
lsls r2, 17
|
||||
adds r0, r2
|
||||
lsrs r0, 16
|
||||
ldrb r2, [r4, 0x10]
|
||||
ldrh r3, [r4, 0xA]
|
||||
movs r1, 0x10
|
||||
bl BlendPalette
|
||||
ldrh r2, [r4, 0x12]
|
||||
movs r1, 0x12
|
||||
ldrsh r0, [r4, r1]
|
||||
cmp r0, 0
|
||||
bne _0807B83C
|
||||
ldrh r0, [r4, 0x10]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0x10]
|
||||
lsls r0, 16
|
||||
asrs r0, 16
|
||||
cmp r0, 0x8
|
||||
ble _0807B86A
|
||||
movs r0, 0x1
|
||||
eors r0, r2
|
||||
strh r0, [r4, 0x12]
|
||||
b _0807B86A
|
||||
.align 2, 0
|
||||
_0807B838: .4byte gTasks
|
||||
_0807B83C:
|
||||
ldrh r1, [r4, 0x10]
|
||||
subs r0, r1, 0x1
|
||||
strh r0, [r4, 0x10]
|
||||
lsls r0, 16
|
||||
cmp r0, 0
|
||||
bge _0807B86A
|
||||
strh r1, [r4, 0x10]
|
||||
movs r0, 0x1
|
||||
eors r0, r2
|
||||
strh r0, [r4, 0x12]
|
||||
ldrh r0, [r4, 0xE]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0xE]
|
||||
lsls r0, 16
|
||||
asrs r0, 16
|
||||
cmp r0, 0x2
|
||||
bne _0807B86A
|
||||
adds r0, r5, 0
|
||||
bl DestroyTask
|
||||
b _0807B86A
|
||||
_0807B866:
|
||||
adds r0, r1, 0x1
|
||||
strh r0, [r4, 0xC]
|
||||
_0807B86A:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_807B7E0
|
||||
|
||||
thumb_func_start sub_807B870
|
||||
sub_807B870: @ 807B870
|
||||
push {lr}
|
||||
adds r2, r0, 0
|
||||
ldrh r1, [r2, 0x3A]
|
||||
movs r3, 0x3A
|
||||
ldrsh r0, [r2, r3]
|
||||
cmp r0, 0
|
||||
bne _0807B89C
|
||||
adds r3, r2, 0
|
||||
adds r3, 0x3E
|
||||
ldrb r0, [r3]
|
||||
movs r1, 0x5
|
||||
negs r1, r1
|
||||
ands r1, r0
|
||||
strb r1, [r3]
|
||||
ldr r1, _0807B898 @ =sub_807B8A4
|
||||
str r1, [r2, 0x1C]
|
||||
adds r0, r2, 0
|
||||
bl _call_via_r1
|
||||
b _0807B8A0
|
||||
.align 2, 0
|
||||
_0807B898: .4byte sub_807B8A4
|
||||
_0807B89C:
|
||||
subs r0, r1, 0x1
|
||||
strh r0, [r2, 0x3A]
|
||||
_0807B8A0:
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_807B870
|
||||
|
||||
thumb_func_start sub_807B8A4
|
||||
sub_807B8A4: @ 807B8A4
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
movs r1, 0x2E
|
||||
ldrsh r0, [r4, r1]
|
||||
movs r1, 0x20
|
||||
bl Cos
|
||||
strh r0, [r4, 0x24]
|
||||
movs r1, 0x2E
|
||||
ldrsh r0, [r4, r1]
|
||||
movs r1, 0x8
|
||||
bl Sin
|
||||
strh r0, [r4, 0x26]
|
||||
movs r1, 0x2E
|
||||
ldrsh r0, [r4, r1]
|
||||
cmp r0, 0x7F
|
||||
bgt _0807B8D0
|
||||
adds r1, r4, 0
|
||||
adds r1, 0x43
|
||||
movs r0, 0x1D
|
||||
b _0807B8D6
|
||||
_0807B8D0:
|
||||
adds r1, r4, 0
|
||||
adds r1, 0x43
|
||||
movs r0, 0x1F
|
||||
_0807B8D6:
|
||||
strb r0, [r1]
|
||||
ldrh r0, [r4, 0x2E]
|
||||
adds r0, 0x8
|
||||
movs r1, 0xFF
|
||||
ands r0, r1
|
||||
strh r0, [r4, 0x2E]
|
||||
ldrh r0, [r4, 0x30]
|
||||
ldrh r1, [r4, 0x38]
|
||||
adds r0, r1
|
||||
strh r0, [r4, 0x38]
|
||||
lsls r0, 16
|
||||
asrs r0, 24
|
||||
ldrh r1, [r4, 0x26]
|
||||
adds r0, r1
|
||||
strh r0, [r4, 0x26]
|
||||
ldrh r0, [r4, 0x32]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0x32]
|
||||
lsls r0, 16
|
||||
asrs r0, 16
|
||||
cmp r0, 0x34
|
||||
bne _0807B918
|
||||
movs r1, 0x3C
|
||||
ldrsh r0, [r4, r1]
|
||||
cmp r0, 0
|
||||
beq _0807B912
|
||||
adds r0, r4, 0
|
||||
bl DestroySpriteAndFreeResources
|
||||
b _0807B918
|
||||
_0807B912:
|
||||
adds r0, r4, 0
|
||||
bl DestroySprite
|
||||
_0807B918:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_807B8A4
|
||||
|
||||
thumb_func_start sub_807B920
|
||||
sub_807B920: @ 807B920
|
||||
push {r4-r6,lr}
|
||||
lsls r0, 24
|
||||
lsrs r6, r0, 24
|
||||
ldr r4, _0807B9B0 @ =gBattleAnimEnemyMonIndex
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x2
|
||||
bl sub_8077ABC
|
||||
lsls r0, 24
|
||||
lsrs r0, 8
|
||||
ldr r1, _0807B9B4 @ =0xffe00000
|
||||
adds r0, r1
|
||||
lsrs r5, r0, 16
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x3
|
||||
bl sub_8077ABC
|
||||
lsls r0, 24
|
||||
lsrs r0, 8
|
||||
ldr r2, _0807B9B8 @ =0xffdc0000
|
||||
adds r0, r2
|
||||
lsrs r4, r0, 16
|
||||
bl IsContest
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _0807B95E
|
||||
lsls r0, r5, 16
|
||||
ldr r1, _0807B9BC @ =0xfffa0000
|
||||
adds r0, r1
|
||||
lsrs r5, r0, 16
|
||||
_0807B95E:
|
||||
ldr r1, _0807B9C0 @ =REG_BLDCNT
|
||||
movs r2, 0xFD
|
||||
lsls r2, 6
|
||||
adds r0, r2, 0
|
||||
strh r0, [r1]
|
||||
adds r1, 0x2
|
||||
movs r2, 0x80
|
||||
lsls r2, 5
|
||||
adds r0, r2, 0
|
||||
strh r0, [r1]
|
||||
ldr r0, _0807B9C4 @ =gSpriteTemplate_83931E0
|
||||
lsls r1, r5, 16
|
||||
asrs r1, 16
|
||||
lsls r2, r4, 16
|
||||
asrs r2, 16
|
||||
movs r3, 0x4
|
||||
bl CreateSprite
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
lsls r0, r4, 4
|
||||
adds r0, r4
|
||||
lsls r0, 2
|
||||
ldr r1, _0807B9C8 @ =gSprites
|
||||
adds r0, r1
|
||||
ldr r1, _0807B9CC @ =gSubspriteTables_83931D8
|
||||
bl SetSubspriteTables
|
||||
ldr r1, _0807B9D0 @ =gTasks
|
||||
lsls r0, r6, 2
|
||||
adds r0, r6
|
||||
lsls r0, 3
|
||||
adds r0, r1
|
||||
strh r4, [r0, 0x26]
|
||||
ldr r1, _0807B9D4 @ =sub_807B9D8
|
||||
str r1, [r0]
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0807B9B0: .4byte gBattleAnimEnemyMonIndex
|
||||
_0807B9B4: .4byte 0xffe00000
|
||||
_0807B9B8: .4byte 0xffdc0000
|
||||
_0807B9BC: .4byte 0xfffa0000
|
||||
_0807B9C0: .4byte REG_BLDCNT
|
||||
_0807B9C4: .4byte gSpriteTemplate_83931E0
|
||||
_0807B9C8: .4byte gSprites
|
||||
_0807B9CC: .4byte gSubspriteTables_83931D8
|
||||
_0807B9D0: .4byte gTasks
|
||||
_0807B9D4: .4byte sub_807B9D8
|
||||
thumb_func_end sub_807B920
|
||||
|
||||
thumb_func_start sub_807B9D8
|
||||
sub_807B9D8: @ 807B9D8
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _0807BA04 @ =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r1, r2
|
||||
ldrh r0, [r1, 0xA]
|
||||
adds r0, 0x1
|
||||
adds r2, r0, 0
|
||||
strh r0, [r1, 0xA]
|
||||
lsls r0, 16
|
||||
asrs r0, 16
|
||||
cmp r0, 0xA
|
||||
bne _0807BA0C
|
||||
ldr r0, _0807BA08 @ =sub_807BA24
|
||||
str r0, [r1]
|
||||
movs r0, 0
|
||||
strh r0, [r1, 0xA]
|
||||
b _0807BA1C
|
||||
.align 2, 0
|
||||
_0807BA04: .4byte gTasks
|
||||
_0807BA08: .4byte sub_807BA24
|
||||
_0807BA0C:
|
||||
lsls r0, r2, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _0807BA20 @ =REG_BLDALPHA
|
||||
movs r1, 0x10
|
||||
subs r1, r0
|
||||
lsls r1, 8
|
||||
orrs r1, r0
|
||||
strh r1, [r2]
|
||||
_0807BA1C:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0807BA20: .4byte REG_BLDALPHA
|
||||
thumb_func_end sub_807B9D8
|
||||
|
||||
thumb_func_start sub_807BA24
|
||||
sub_807BA24: @ 807BA24
|
||||
push {r4-r6,lr}
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
ldr r0, _0807BABC @ =0x0000271a
|
||||
bl IndexOfSpritePaletteTag
|
||||
lsls r0, 24
|
||||
lsrs r2, r0, 24
|
||||
ldr r1, _0807BAC0 @ =gTasks
|
||||
lsls r0, r4, 2
|
||||
adds r0, r4
|
||||
lsls r0, 3
|
||||
adds r5, r0, r1
|
||||
ldrh r0, [r5, 0xA]
|
||||
adds r1, r0, 0x1
|
||||
strh r1, [r5, 0xA]
|
||||
lsls r0, 16
|
||||
asrs r0, 16
|
||||
cmp r0, 0xD
|
||||
ble _0807BAB4
|
||||
ldrh r0, [r5, 0xC]
|
||||
adds r0, 0x1
|
||||
movs r6, 0
|
||||
strh r0, [r5, 0xC]
|
||||
lsls r0, 16
|
||||
asrs r0, 16
|
||||
cmp r0, 0x3
|
||||
bne _0807BAB4
|
||||
ldr r3, _0807BAC4 @ =gPlttBufferFaded
|
||||
lsls r2, 4
|
||||
mov r12, r2
|
||||
ldr r1, _0807BAC8 @ =0x0000010d
|
||||
add r1, r12
|
||||
lsls r1, 1
|
||||
adds r1, r3
|
||||
ldrh r4, [r1]
|
||||
movs r2, 0x87
|
||||
lsls r2, 1
|
||||
add r2, r12
|
||||
lsls r2, 1
|
||||
adds r2, r3
|
||||
ldrh r0, [r2]
|
||||
strh r0, [r1]
|
||||
ldr r0, _0807BACC @ =0x0000010f
|
||||
add r0, r12
|
||||
lsls r0, 1
|
||||
adds r0, r3
|
||||
ldrh r1, [r0]
|
||||
strh r1, [r2]
|
||||
strh r4, [r0]
|
||||
strh r6, [r5, 0xC]
|
||||
ldrh r0, [r5, 0xE]
|
||||
adds r0, 0x1
|
||||
strh r0, [r5, 0xE]
|
||||
lsls r0, 16
|
||||
asrs r0, 16
|
||||
cmp r0, 0x3
|
||||
bne _0807BAB4
|
||||
strh r6, [r5, 0xE]
|
||||
strh r6, [r5, 0xA]
|
||||
ldrh r0, [r5, 0x10]
|
||||
adds r0, 0x1
|
||||
strh r0, [r5, 0x10]
|
||||
lsls r0, 16
|
||||
asrs r0, 16
|
||||
cmp r0, 0x2
|
||||
bne _0807BAB4
|
||||
movs r0, 0x9
|
||||
strh r0, [r5, 0xA]
|
||||
ldr r0, _0807BAD0 @ =sub_807BAD4
|
||||
str r0, [r5]
|
||||
_0807BAB4:
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0807BABC: .4byte 0x0000271a
|
||||
_0807BAC0: .4byte gTasks
|
||||
_0807BAC4: .4byte gPlttBufferFaded
|
||||
_0807BAC8: .4byte 0x0000010d
|
||||
_0807BACC: .4byte 0x0000010f
|
||||
_0807BAD0: .4byte sub_807BAD4
|
||||
thumb_func_end sub_807BA24
|
||||
|
||||
thumb_func_start sub_807BAD4
|
||||
sub_807BAD4: @ 807BAD4
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _0807BB04 @ =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r2, r1, r2
|
||||
ldrh r0, [r2, 0xA]
|
||||
subs r0, 0x1
|
||||
adds r3, r0, 0
|
||||
strh r0, [r2, 0xA]
|
||||
lsls r0, 16
|
||||
asrs r0, 16
|
||||
movs r1, 0x1
|
||||
negs r1, r1
|
||||
cmp r0, r1
|
||||
bne _0807BB0C
|
||||
ldr r0, _0807BB08 @ =sub_807BB24
|
||||
str r0, [r2]
|
||||
movs r0, 0
|
||||
strh r0, [r2, 0xA]
|
||||
b _0807BB1C
|
||||
.align 2, 0
|
||||
_0807BB04: .4byte gTasks
|
||||
_0807BB08: .4byte sub_807BB24
|
||||
_0807BB0C:
|
||||
lsls r0, r3, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _0807BB20 @ =REG_BLDALPHA
|
||||
movs r1, 0x10
|
||||
subs r1, r0
|
||||
lsls r1, 8
|
||||
orrs r1, r0
|
||||
strh r1, [r2]
|
||||
_0807BB1C:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0807BB20: .4byte REG_BLDALPHA
|
||||
thumb_func_end sub_807BAD4
|
||||
|
||||
thumb_func_start sub_807BB24
|
||||
sub_807BB24: @ 807BB24
|
||||
push {r4,lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
adds r2, r0, 0
|
||||
ldr r1, _0807BB64 @ =gTasks
|
||||
lsls r0, r2, 2
|
||||
adds r0, r2
|
||||
lsls r0, 3
|
||||
adds r1, r0, r1
|
||||
ldrh r0, [r1, 0xA]
|
||||
adds r0, 0x1
|
||||
movs r3, 0
|
||||
strh r0, [r1, 0xA]
|
||||
lsls r0, 16
|
||||
asrs r0, 16
|
||||
cmp r0, 0x25
|
||||
bne _0807BB6C
|
||||
ldrh r0, [r1, 0x26]
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
lsls r4, r0, 4
|
||||
adds r4, r0
|
||||
lsls r4, 2
|
||||
ldr r0, _0807BB68 @ =gSprites
|
||||
adds r4, r0
|
||||
adds r0, r4, 0
|
||||
bl FreeSpriteOamMatrix
|
||||
adds r0, r4, 0
|
||||
bl DestroySprite
|
||||
b _0807BB7E
|
||||
.align 2, 0
|
||||
_0807BB64: .4byte gTasks
|
||||
_0807BB68: .4byte gSprites
|
||||
_0807BB6C:
|
||||
cmp r0, 0x27
|
||||
bne _0807BB7E
|
||||
ldr r0, _0807BB84 @ =REG_BLDCNT
|
||||
strh r3, [r0]
|
||||
adds r0, 0x2
|
||||
strh r3, [r0]
|
||||
adds r0, r2, 0
|
||||
bl DestroyAnimVisualTask
|
||||
_0807BB7E:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0807BB84: .4byte REG_BLDCNT
|
||||
thumb_func_end sub_807BB24
|
||||
|
||||
thumb_func_start sub_807BB88
|
||||
sub_807BB88: @ 807BB88
|
||||
push {r4,r5,lr}
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
movs r3, 0
|
||||
ldr r0, _0807BBA8 @ =0x02017840
|
||||
ldrh r0, [r0]
|
||||
subs r0, 0xF
|
||||
cmp r0, 0x2B
|
||||
bls _0807BB9C
|
||||
b _0807BD20
|
||||
_0807BB9C:
|
||||
lsls r0, 2
|
||||
ldr r1, _0807BBAC @ =_0807BBB0
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
mov pc, r0
|
||||
.align 2, 0
|
||||
_0807BBA8: .4byte 0x02017840
|
||||
_0807BBAC: .4byte _0807BBB0
|
||||
.align 2, 0
|
||||
_0807BBB0:
|
||||
.4byte _0807BC60
|
||||
.4byte _0807BC66
|
||||
.4byte _0807BC6C
|
||||
.4byte _0807BC72
|
||||
.4byte _0807BC78
|
||||
.4byte _0807BC7E
|
||||
.4byte _0807BC84
|
||||
.4byte _0807BC8A
|
||||
.4byte _0807BC90
|
||||
.4byte _0807BC96
|
||||
.4byte _0807BC9C
|
||||
.4byte _0807BCA2
|
||||
.4byte _0807BCA8
|
||||
.4byte _0807BCAE
|
||||
.4byte _0807BD20
|
||||
.4byte _0807BD20
|
||||
.4byte _0807BD20
|
||||
.4byte _0807BD20
|
||||
.4byte _0807BD20
|
||||
.4byte _0807BD20
|
||||
.4byte _0807BD20
|
||||
.4byte _0807BD20
|
||||
.4byte _0807BD20
|
||||
.4byte _0807BD20
|
||||
.4byte _0807BCB4
|
||||
.4byte _0807BCB8
|
||||
.4byte _0807BCBC
|
||||
.4byte _0807BCC0
|
||||
.4byte _0807BCC4
|
||||
.4byte _0807BCC8
|
||||
.4byte _0807BCCC
|
||||
.4byte _0807BCD0
|
||||
.4byte _0807BCD8
|
||||
.4byte _0807BCE0
|
||||
.4byte _0807BCE8
|
||||
.4byte _0807BCF0
|
||||
.4byte _0807BCF8
|
||||
.4byte _0807BD00
|
||||
.4byte _0807BD20
|
||||
.4byte _0807BD20
|
||||
.4byte _0807BD08
|
||||
.4byte _0807BD0C
|
||||
.4byte _0807BD10
|
||||
.4byte _0807BD18
|
||||
_0807BC60:
|
||||
movs r5, 0
|
||||
movs r2, 0
|
||||
b _0807BD28
|
||||
_0807BC66:
|
||||
movs r5, 0
|
||||
movs r2, 0x1
|
||||
b _0807BD28
|
||||
_0807BC6C:
|
||||
movs r5, 0
|
||||
movs r2, 0x3
|
||||
b _0807BD28
|
||||
_0807BC72:
|
||||
movs r5, 0
|
||||
movs r2, 0x5
|
||||
b _0807BD28
|
||||
_0807BC78:
|
||||
movs r5, 0
|
||||
movs r2, 0x6
|
||||
b _0807BD28
|
||||
_0807BC7E:
|
||||
movs r5, 0
|
||||
movs r2, 0x2
|
||||
b _0807BD28
|
||||
_0807BC84:
|
||||
movs r5, 0
|
||||
movs r2, 0x4
|
||||
b _0807BD28
|
||||
_0807BC8A:
|
||||
movs r5, 0x1
|
||||
movs r2, 0
|
||||
b _0807BD28
|
||||
_0807BC90:
|
||||
movs r5, 0x1
|
||||
movs r2, 0x1
|
||||
b _0807BD28
|
||||
_0807BC96:
|
||||
movs r5, 0x1
|
||||
movs r2, 0x3
|
||||
b _0807BD28
|
||||
_0807BC9C:
|
||||
movs r5, 0x1
|
||||
movs r2, 0x5
|
||||
b _0807BD28
|
||||
_0807BCA2:
|
||||
movs r5, 0x1
|
||||
movs r2, 0x6
|
||||
b _0807BD28
|
||||
_0807BCA8:
|
||||
movs r5, 0x1
|
||||
movs r2, 0x2
|
||||
b _0807BD28
|
||||
_0807BCAE:
|
||||
movs r5, 0x1
|
||||
movs r2, 0x4
|
||||
b _0807BD28
|
||||
_0807BCB4:
|
||||
movs r5, 0
|
||||
b _0807BCD2
|
||||
_0807BCB8:
|
||||
movs r5, 0
|
||||
b _0807BCDA
|
||||
_0807BCBC:
|
||||
movs r5, 0
|
||||
b _0807BCE2
|
||||
_0807BCC0:
|
||||
movs r5, 0
|
||||
b _0807BCEA
|
||||
_0807BCC4:
|
||||
movs r5, 0
|
||||
b _0807BCF2
|
||||
_0807BCC8:
|
||||
movs r5, 0
|
||||
b _0807BCFA
|
||||
_0807BCCC:
|
||||
movs r5, 0
|
||||
b _0807BD02
|
||||
_0807BCD0:
|
||||
movs r5, 0x1
|
||||
_0807BCD2:
|
||||
movs r2, 0
|
||||
movs r3, 0x1
|
||||
b _0807BD28
|
||||
_0807BCD8:
|
||||
movs r5, 0x1
|
||||
_0807BCDA:
|
||||
movs r2, 0x1
|
||||
movs r3, 0x1
|
||||
b _0807BD28
|
||||
_0807BCE0:
|
||||
movs r5, 0x1
|
||||
_0807BCE2:
|
||||
movs r2, 0x3
|
||||
movs r3, 0x1
|
||||
b _0807BD28
|
||||
_0807BCE8:
|
||||
movs r5, 0x1
|
||||
_0807BCEA:
|
||||
movs r2, 0x5
|
||||
movs r3, 0x1
|
||||
b _0807BD28
|
||||
_0807BCF0:
|
||||
movs r5, 0x1
|
||||
_0807BCF2:
|
||||
movs r2, 0x6
|
||||
movs r3, 0x1
|
||||
b _0807BD28
|
||||
_0807BCF8:
|
||||
movs r5, 0x1
|
||||
_0807BCFA:
|
||||
movs r2, 0x2
|
||||
movs r3, 0x1
|
||||
b _0807BD28
|
||||
_0807BD00:
|
||||
movs r5, 0x1
|
||||
_0807BD02:
|
||||
movs r2, 0x4
|
||||
movs r3, 0x1
|
||||
b _0807BD28
|
||||
_0807BD08:
|
||||
movs r5, 0
|
||||
b _0807BD12
|
||||
_0807BD0C:
|
||||
movs r5, 0
|
||||
b _0807BD1A
|
||||
_0807BD10:
|
||||
movs r5, 0x1
|
||||
_0807BD12:
|
||||
movs r2, 0xFF
|
||||
movs r3, 0
|
||||
b _0807BD28
|
||||
_0807BD18:
|
||||
movs r5, 0x1
|
||||
_0807BD1A:
|
||||
movs r2, 0xFF
|
||||
movs r3, 0x1
|
||||
b _0807BD28
|
||||
_0807BD20:
|
||||
adds r0, r4, 0
|
||||
bl DestroyAnimVisualTask
|
||||
b _0807BD4A
|
||||
_0807BD28:
|
||||
ldr r0, _0807BD50 @ =gBattleAnimArgs
|
||||
movs r1, 0
|
||||
strh r5, [r0]
|
||||
strh r2, [r0, 0x2]
|
||||
strh r1, [r0, 0x4]
|
||||
strh r1, [r0, 0x6]
|
||||
strh r3, [r0, 0x8]
|
||||
ldr r1, _0807BD54 @ =gTasks
|
||||
lsls r0, r4, 2
|
||||
adds r0, r4
|
||||
lsls r0, 3
|
||||
adds r0, r1
|
||||
ldr r1, _0807BD58 @ =sub_80E32E0
|
||||
str r1, [r0]
|
||||
adds r0, r4, 0
|
||||
bl _call_via_r1
|
||||
_0807BD4A:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0807BD50: .4byte gBattleAnimArgs
|
||||
_0807BD54: .4byte gTasks
|
||||
_0807BD58: .4byte sub_80E32E0
|
||||
thumb_func_end sub_807BB88
|
||||
|
||||
thumb_func_start move_anim_start_t2
|
||||
move_anim_start_t2: @ 807BD5C
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
lsls r1, 24
|
||||
lsrs r1, 24
|
||||
ldr r0, _0807BD98 @ =gBattleAnimPlayerMonIndex
|
||||
strb r4, [r0]
|
||||
ldr r0, _0807BD9C @ =gBattleAnimEnemyMonIndex
|
||||
strb r4, [r0]
|
||||
ldr r0, _0807BDA0 @ =gBattleAnims_StatusConditions
|
||||
movs r2, 0
|
||||
bl DoMoveAnim
|
||||
ldr r0, _0807BDA4 @ =sub_807BDAC
|
||||
movs r1, 0xA
|
||||
bl CreateTask
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _0807BDA8 @ =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r1, r2
|
||||
strh r4, [r1, 0x8]
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0807BD98: .4byte gBattleAnimPlayerMonIndex
|
||||
_0807BD9C: .4byte gBattleAnimEnemyMonIndex
|
||||
_0807BDA0: .4byte gBattleAnims_StatusConditions
|
||||
_0807BDA4: .4byte sub_807BDAC
|
||||
_0807BDA8: .4byte gTasks
|
||||
thumb_func_end move_anim_start_t2
|
||||
|
||||
thumb_func_start sub_807BDAC
|
||||
sub_807BDAC: @ 807BDAC
|
||||
push {r4,lr}
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
ldr r0, _0807BDF0 @ =gAnimScriptCallback
|
||||
ldr r0, [r0]
|
||||
bl _call_via_r0
|
||||
ldr r0, _0807BDF4 @ =gAnimScriptActive
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
bne _0807BDEA
|
||||
ldr r1, _0807BDF8 @ =gTasks
|
||||
lsls r0, r4, 2
|
||||
adds r0, r4
|
||||
lsls r0, 3
|
||||
adds r0, r1
|
||||
movs r1, 0x8
|
||||
ldrsh r0, [r0, r1]
|
||||
lsls r1, r0, 1
|
||||
adds r1, r0
|
||||
lsls r1, 2
|
||||
ldr r0, _0807BDFC @ =0x02017810
|
||||
adds r1, r0
|
||||
ldrb r2, [r1]
|
||||
movs r0, 0x11
|
||||
negs r0, r0
|
||||
ands r0, r2
|
||||
strb r0, [r1]
|
||||
adds r0, r4, 0
|
||||
bl DestroyTask
|
||||
_0807BDEA:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0807BDF0: .4byte gAnimScriptCallback
|
||||
_0807BDF4: .4byte gAnimScriptActive
|
||||
_0807BDF8: .4byte gTasks
|
||||
_0807BDFC: .4byte 0x02017810
|
||||
thumb_func_end sub_807BDAC
|
||||
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
+1086
-1086
File diff suppressed because it is too large
Load Diff
+14
-1406
File diff suppressed because it is too large
Load Diff
+227
-227
File diff suppressed because it is too large
Load Diff
+60
-60
@@ -17,7 +17,7 @@ unref_sub_813F0F4: @ 813F0F4
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
str r0, [sp, 0x10]
|
||||
ldr r0, _0813F2AC @ =gBattleAnimPlayerMonIndex
|
||||
ldr r0, _0813F2AC @ =gBattleAnimBankAttacker
|
||||
ldrb r3, [r0]
|
||||
ldr r0, _0813F2B0 @ =gUnknown_030042C4
|
||||
movs r1, 0
|
||||
@@ -220,7 +220,7 @@ unref_sub_813F0F4: @ 813F0F4
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0813F2AC: .4byte gBattleAnimPlayerMonIndex
|
||||
_0813F2AC: .4byte gBattleAnimBankAttacker
|
||||
_0813F2B0: .4byte gUnknown_030042C4
|
||||
_0813F2B4: .4byte gUnknown_03004240
|
||||
_0813F2B8: .4byte REG_WININ
|
||||
@@ -252,7 +252,7 @@ sub_813F300: @ 813F300
|
||||
sub sp, 0x10
|
||||
lsls r0, 24
|
||||
lsrs r7, r0, 24
|
||||
ldr r0, _0813F34C @ =gBattleAnimPlayerMonIndex
|
||||
ldr r0, _0813F34C @ =gBattleAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
mov r9, r0
|
||||
ldr r1, _0813F350 @ =gTasks
|
||||
@@ -284,7 +284,7 @@ sub_813F300: @ 813F300
|
||||
beq _0813F35E
|
||||
b _0813F4B2
|
||||
.align 2, 0
|
||||
_0813F34C: .4byte gBattleAnimPlayerMonIndex
|
||||
_0813F34C: .4byte gBattleAnimBankAttacker
|
||||
_0813F350: .4byte gTasks
|
||||
_0813F354: .4byte gUnknown_030041B4
|
||||
_0813F358:
|
||||
@@ -495,7 +495,7 @@ sub_813F4EC: @ 813F4EC
|
||||
lsrs r0, 24
|
||||
str r0, [sp]
|
||||
ldr r1, _0813F5D0 @ =gHealthboxIDs
|
||||
ldr r0, _0813F5D4 @ =gBattleAnimPlayerMonIndex
|
||||
ldr r0, _0813F5D4 @ =gBattleAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
@@ -595,7 +595,7 @@ sub_813F4EC: @ 813F4EC
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0813F5D0: .4byte gHealthboxIDs
|
||||
_0813F5D4: .4byte gBattleAnimPlayerMonIndex
|
||||
_0813F5D4: .4byte gBattleAnimBankAttacker
|
||||
_0813F5D8: .4byte gSprites
|
||||
_0813F5DC: .4byte 0x0000d709
|
||||
_0813F5E0: .4byte 0x0000d70a
|
||||
@@ -614,7 +614,7 @@ sub_813F5E8: @ 813F5E8
|
||||
lsrs r0, 24
|
||||
mov r8, r0
|
||||
ldr r1, _0813F684 @ =gHealthboxIDs
|
||||
ldr r0, _0813F688 @ =gBattleAnimPlayerMonIndex
|
||||
ldr r0, _0813F688 @ =gBattleAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
@@ -678,7 +678,7 @@ sub_813F5E8: @ 813F5E8
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0813F684: .4byte gHealthboxIDs
|
||||
_0813F688: .4byte gBattleAnimPlayerMonIndex
|
||||
_0813F688: .4byte gBattleAnimBankAttacker
|
||||
_0813F68C: .4byte gSprites
|
||||
_0813F690: .4byte 0x0000d709
|
||||
_0813F694: .4byte 0x0000d70a
|
||||
@@ -820,7 +820,7 @@ sub_813F798: @ 813F798
|
||||
lsls r0, 24
|
||||
lsrs r6, r0, 24
|
||||
ldr r1, _0813F7C4 @ =gObjectBankIDs
|
||||
ldr r0, _0813F7C8 @ =gBattleAnimPlayerMonIndex
|
||||
ldr r0, _0813F7C8 @ =gBattleAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
ldrb r5, [r0]
|
||||
@@ -840,7 +840,7 @@ sub_813F798: @ 813F798
|
||||
b _0813F838
|
||||
.align 2, 0
|
||||
_0813F7C4: .4byte gObjectBankIDs
|
||||
_0813F7C8: .4byte gBattleAnimPlayerMonIndex
|
||||
_0813F7C8: .4byte gBattleAnimBankAttacker
|
||||
_0813F7CC: .4byte gTasks
|
||||
_0813F7D0:
|
||||
cmp r0, 0x2
|
||||
@@ -911,7 +911,7 @@ sub_813F844: @ 813F844
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
ldr r1, _0813F87C @ =gObjectBankIDs
|
||||
ldr r4, _0813F880 @ =gBattleAnimPlayerMonIndex
|
||||
ldr r4, _0813F880 @ =gBattleAnimBankAttacker
|
||||
ldrb r0, [r4]
|
||||
adds r1, r0, r1
|
||||
ldrb r1, [r1]
|
||||
@@ -931,7 +931,7 @@ sub_813F844: @ 813F844
|
||||
b _0813F89C
|
||||
.align 2, 0
|
||||
_0813F87C: .4byte gObjectBankIDs
|
||||
_0813F880: .4byte gBattleAnimPlayerMonIndex
|
||||
_0813F880: .4byte gBattleAnimBankAttacker
|
||||
_0813F884: .4byte gBattlePartyID
|
||||
_0813F888: .4byte gPlayerParty
|
||||
_0813F88C:
|
||||
@@ -970,7 +970,7 @@ _0813F8CC: .4byte gBattlePartyID
|
||||
_0813F8D0: .4byte gEnemyParty
|
||||
_0813F8D4: .4byte gTasks
|
||||
_0813F8D8:
|
||||
ldr r5, _0813F950 @ =gBattleAnimPlayerMonIndex
|
||||
ldr r5, _0813F950 @ =gBattleAnimBankAttacker
|
||||
ldrb r0, [r5]
|
||||
movs r1, 0
|
||||
bl sub_8077ABC
|
||||
@@ -1025,7 +1025,7 @@ _0813F8D8:
|
||||
strh r0, [r6, 0x8]
|
||||
b _0813F982
|
||||
.align 2, 0
|
||||
_0813F950: .4byte gBattleAnimPlayerMonIndex
|
||||
_0813F950: .4byte gBattleAnimBankAttacker
|
||||
_0813F954: .4byte gSprites
|
||||
_0813F958:
|
||||
movs r1, 0x1C
|
||||
@@ -1235,7 +1235,7 @@ sub_813FA94: @ 813FA94
|
||||
adds r6, r4, r1
|
||||
movs r0, 0x22
|
||||
strh r0, [r6, 0x2E]
|
||||
ldr r2, _0813FB64 @ =gBattleAnimEnemyMonIndex
|
||||
ldr r2, _0813FB64 @ =gBattleAnimBankTarget
|
||||
mov r8, r2
|
||||
ldrb r0, [r2]
|
||||
movs r1, 0
|
||||
@@ -1297,7 +1297,7 @@ sub_813FA94: @ 813FA94
|
||||
_0813FB58: .4byte gLastUsedItem
|
||||
_0813FB5C: .4byte gBallSpriteTemplates
|
||||
_0813FB60: .4byte gSprites
|
||||
_0813FB64: .4byte gBattleAnimEnemyMonIndex
|
||||
_0813FB64: .4byte gBattleAnimBankTarget
|
||||
_0813FB68: .4byte sub_813FD90
|
||||
_0813FB6C: .4byte 0x02017840
|
||||
_0813FB70: .4byte gObjectBankIDs
|
||||
@@ -1397,7 +1397,7 @@ _0813FBE0:
|
||||
adds r6, r4, r0
|
||||
movs r0, 0x22
|
||||
strh r0, [r6, 0x2E]
|
||||
ldr r1, _0813FCA8 @ =gBattleAnimEnemyMonIndex
|
||||
ldr r1, _0813FCA8 @ =gBattleAnimBankTarget
|
||||
mov r8, r1
|
||||
ldrb r0, [r1]
|
||||
movs r1, 0
|
||||
@@ -1449,7 +1449,7 @@ _0813FBE0:
|
||||
_0813FC9C: .4byte gLastUsedItem
|
||||
_0813FCA0: .4byte gBallSpriteTemplates
|
||||
_0813FCA4: .4byte gSprites
|
||||
_0813FCA8: .4byte gBattleAnimEnemyMonIndex
|
||||
_0813FCA8: .4byte gBattleAnimBankTarget
|
||||
_0813FCAC: .4byte SpriteCallbackDummy
|
||||
_0813FCB0: .4byte gObjectBankIDs
|
||||
_0813FCB4: .4byte gTasks
|
||||
@@ -1652,7 +1652,7 @@ _0813FE10:
|
||||
movs r2, 0x1
|
||||
movs r3, 0x1C
|
||||
bl sub_814086C
|
||||
ldr r0, _0813FE6C @ =gBattleAnimEnemyMonIndex
|
||||
ldr r0, _0813FE6C @ =gBattleAnimBankTarget
|
||||
ldrb r1, [r0]
|
||||
movs r0, 0
|
||||
movs r2, 0xE
|
||||
@@ -1666,7 +1666,7 @@ _0813FE5A:
|
||||
.align 2, 0
|
||||
_0813FE64: .4byte sub_813FE70
|
||||
_0813FE68: .4byte gLastUsedItem
|
||||
_0813FE6C: .4byte gBattleAnimEnemyMonIndex
|
||||
_0813FE6C: .4byte gBattleAnimBankTarget
|
||||
thumb_func_end sub_813FDC0
|
||||
|
||||
thumb_func_start sub_813FE70
|
||||
@@ -1690,7 +1690,7 @@ sub_813FE70: @ 813FE70
|
||||
str r0, [r4, 0x1C]
|
||||
ldr r2, _0813FEBC @ =gSprites
|
||||
ldr r1, _0813FEC0 @ =gObjectBankIDs
|
||||
ldr r0, _0813FEC4 @ =gBattleAnimEnemyMonIndex
|
||||
ldr r0, _0813FEC4 @ =gBattleAnimBankTarget
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
ldrb r1, [r0]
|
||||
@@ -1709,7 +1709,7 @@ _0813FEB4: .4byte TaskDummy
|
||||
_0813FEB8: .4byte sub_813FEC8
|
||||
_0813FEBC: .4byte gSprites
|
||||
_0813FEC0: .4byte gObjectBankIDs
|
||||
_0813FEC4: .4byte gBattleAnimEnemyMonIndex
|
||||
_0813FEC4: .4byte gBattleAnimBankTarget
|
||||
thumb_func_end sub_813FE70
|
||||
|
||||
thumb_func_start sub_813FEC8
|
||||
@@ -1717,7 +1717,7 @@ sub_813FEC8: @ 813FEC8
|
||||
push {r4-r7,lr}
|
||||
adds r7, r0, 0
|
||||
ldr r1, _0813FF0C @ =gObjectBankIDs
|
||||
ldr r0, _0813FF10 @ =gBattleAnimEnemyMonIndex
|
||||
ldr r0, _0813FF10 @ =gBattleAnimBankTarget
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
ldrb r4, [r0]
|
||||
@@ -1750,7 +1750,7 @@ _0813FEFA:
|
||||
b _0813FFDC
|
||||
.align 2, 0
|
||||
_0813FF0C: .4byte gObjectBankIDs
|
||||
_0813FF10: .4byte gBattleAnimEnemyMonIndex
|
||||
_0813FF10: .4byte gBattleAnimBankTarget
|
||||
_0813FF14: .4byte gTasks
|
||||
_0813FF18:
|
||||
cmp r0, 0x2
|
||||
@@ -2451,7 +2451,7 @@ _08140450: .4byte sub_8140454
|
||||
sub_8140454: @ 8140454
|
||||
push {r4-r7,lr}
|
||||
adds r6, r0, 0
|
||||
ldr r7, _08140484 @ =gBattleAnimEnemyMonIndex
|
||||
ldr r7, _08140484 @ =gBattleAnimBankTarget
|
||||
ldrh r0, [r6, 0x36]
|
||||
adds r0, 0x1
|
||||
strh r0, [r6, 0x36]
|
||||
@@ -2471,7 +2471,7 @@ sub_8140454: @ 8140454
|
||||
bl PlaySE
|
||||
b _081404CC
|
||||
.align 2, 0
|
||||
_08140484: .4byte gBattleAnimEnemyMonIndex
|
||||
_08140484: .4byte gBattleAnimBankTarget
|
||||
_08140488: .4byte gDoingBattleAnim
|
||||
_0814048C: .4byte 0x00000173
|
||||
_08140490:
|
||||
@@ -2690,7 +2690,7 @@ sub_81405F4: @ 81405F4
|
||||
movs r2, 0x1
|
||||
movs r3, 0x1C
|
||||
bl sub_814086C
|
||||
ldr r0, _081406B0 @ =gBattleAnimEnemyMonIndex
|
||||
ldr r0, _081406B0 @ =gBattleAnimBankTarget
|
||||
ldrb r1, [r0]
|
||||
movs r0, 0x1
|
||||
movs r2, 0xE
|
||||
@@ -2699,7 +2699,7 @@ sub_81405F4: @ 81405F4
|
||||
_08140646:
|
||||
ldr r6, _081406B4 @ =gSprites
|
||||
ldr r5, _081406B8 @ =gObjectBankIDs
|
||||
ldr r4, _081406B0 @ =gBattleAnimEnemyMonIndex
|
||||
ldr r4, _081406B0 @ =gBattleAnimBankTarget
|
||||
ldrb r0, [r4]
|
||||
adds r0, r5
|
||||
ldrb r1, [r0]
|
||||
@@ -2747,7 +2747,7 @@ _08140646:
|
||||
.align 2, 0
|
||||
_081406A8: .4byte sub_81406BC
|
||||
_081406AC: .4byte gLastUsedItem
|
||||
_081406B0: .4byte gBattleAnimEnemyMonIndex
|
||||
_081406B0: .4byte gBattleAnimBankTarget
|
||||
_081406B4: .4byte gSprites
|
||||
_081406B8: .4byte gObjectBankIDs
|
||||
thumb_func_end sub_81405F4
|
||||
@@ -2772,7 +2772,7 @@ sub_81406BC: @ 81406BC
|
||||
_081406DA:
|
||||
ldr r4, _08140708 @ =gSprites
|
||||
ldr r3, _0814070C @ =gObjectBankIDs
|
||||
ldr r2, _08140710 @ =gBattleAnimEnemyMonIndex
|
||||
ldr r2, _08140710 @ =gBattleAnimBankTarget
|
||||
ldrb r0, [r2]
|
||||
adds r0, r3
|
||||
ldrb r1, [r0]
|
||||
@@ -2794,7 +2794,7 @@ _081406DA:
|
||||
.align 2, 0
|
||||
_08140708: .4byte gSprites
|
||||
_0814070C: .4byte gObjectBankIDs
|
||||
_08140710: .4byte gBattleAnimEnemyMonIndex
|
||||
_08140710: .4byte gBattleAnimBankTarget
|
||||
_08140714:
|
||||
ldr r6, _0814079C @ =0xfffffee0
|
||||
adds r0, r6, 0
|
||||
@@ -2824,7 +2824,7 @@ _08140734:
|
||||
beq _08140796
|
||||
ldr r4, _081407A0 @ =gSprites
|
||||
ldr r3, _081407A4 @ =gObjectBankIDs
|
||||
ldr r2, _081407A8 @ =gBattleAnimEnemyMonIndex
|
||||
ldr r2, _081407A8 @ =gBattleAnimBankTarget
|
||||
ldrb r0, [r2]
|
||||
adds r0, r3
|
||||
ldrb r1, [r0]
|
||||
@@ -2869,7 +2869,7 @@ _08140796:
|
||||
_0814079C: .4byte 0xfffffee0
|
||||
_081407A0: .4byte gSprites
|
||||
_081407A4: .4byte gObjectBankIDs
|
||||
_081407A8: .4byte gBattleAnimEnemyMonIndex
|
||||
_081407A8: .4byte gBattleAnimBankTarget
|
||||
_081407AC: .4byte 0x02017840
|
||||
_081407B0: .4byte sub_81405C8
|
||||
_081407B4: .4byte gDoingBattleAnim
|
||||
@@ -4583,7 +4583,7 @@ sub_814151C: @ 814151C
|
||||
movs r0, 0
|
||||
mov r8, r0
|
||||
ldr r0, _08141550 @ =gObjectBankIDs
|
||||
ldr r3, _08141554 @ =gBattleAnimPlayerMonIndex
|
||||
ldr r3, _08141554 @ =gBattleAnimBankAttacker
|
||||
ldrb r2, [r3]
|
||||
adds r0, r2, r0
|
||||
ldrb r6, [r0]
|
||||
@@ -4603,7 +4603,7 @@ sub_814151C: @ 814151C
|
||||
b _081416B6
|
||||
.align 2, 0
|
||||
_08141550: .4byte gObjectBankIDs
|
||||
_08141554: .4byte gBattleAnimPlayerMonIndex
|
||||
_08141554: .4byte gBattleAnimBankAttacker
|
||||
_08141558: .4byte gTasks
|
||||
_0814155C:
|
||||
cmp r0, 0x2
|
||||
@@ -4738,7 +4738,7 @@ _08141654:
|
||||
adds r0, r1
|
||||
ldrb r1, [r0, 0x8]
|
||||
strh r1, [r0, 0x8]
|
||||
ldr r0, _08141690 @ =gBattleAnimPlayerMonIndex
|
||||
ldr r0, _08141690 @ =gBattleAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
bl GetBankSide
|
||||
lsls r0, 24
|
||||
@@ -4759,7 +4759,7 @@ _08141654:
|
||||
.align 2, 0
|
||||
_08141688: .4byte gSprites
|
||||
_0814168C: .4byte gTasks
|
||||
_08141690: .4byte gBattleAnimPlayerMonIndex
|
||||
_08141690: .4byte gBattleAnimBankAttacker
|
||||
_08141694:
|
||||
ldr r0, _081416C0 @ =gSprites
|
||||
adds r1, r4, r6
|
||||
@@ -4816,7 +4816,7 @@ _081416EC:
|
||||
beq _0814177C
|
||||
b _081417B8
|
||||
_081416F2:
|
||||
ldr r0, _08141708 @ =gBattleAnimPlayerMonIndex
|
||||
ldr r0, _08141708 @ =gBattleAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
bl GetBankIdentity_permutated
|
||||
lsls r0, 24
|
||||
@@ -4827,7 +4827,7 @@ _081416F2:
|
||||
ldr r2, _08141710 @ =0x00003f42
|
||||
b _08141718
|
||||
.align 2, 0
|
||||
_08141708: .4byte gBattleAnimPlayerMonIndex
|
||||
_08141708: .4byte gBattleAnimBankAttacker
|
||||
_0814170C: .4byte REG_BLDCNT
|
||||
_08141710: .4byte 0x00003f42
|
||||
_08141714:
|
||||
@@ -4884,7 +4884,7 @@ _08141744:
|
||||
_08141778: .4byte REG_BLDALPHA
|
||||
_0814177C:
|
||||
ldr r1, _081417C0 @ =gObjectBankIDs
|
||||
ldr r3, _081417C4 @ =gBattleAnimPlayerMonIndex
|
||||
ldr r3, _081417C4 @ =gBattleAnimBankAttacker
|
||||
ldrb r0, [r3]
|
||||
adds r0, r1
|
||||
ldrb r1, [r0]
|
||||
@@ -4918,7 +4918,7 @@ _081417B8:
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_081417C0: .4byte gObjectBankIDs
|
||||
_081417C4: .4byte gBattleAnimPlayerMonIndex
|
||||
_081417C4: .4byte gBattleAnimBankAttacker
|
||||
_081417C8: .4byte gSprites
|
||||
_081417CC: .4byte 0x06010000
|
||||
_081417D0: .4byte 0x040000d4
|
||||
@@ -4931,7 +4931,7 @@ sub_81417D8: @ 81417D8
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r3, _081417FC @ =gBattleAnimArgs
|
||||
ldr r1, _08141800 @ =gBattleAnimPlayerMonIndex
|
||||
ldr r1, _08141800 @ =gBattleAnimBankAttacker
|
||||
ldrb r1, [r1]
|
||||
lsls r1, 2
|
||||
ldr r2, _08141804 @ =0x02017800
|
||||
@@ -4945,7 +4945,7 @@ sub_81417D8: @ 81417D8
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_081417FC: .4byte gBattleAnimArgs
|
||||
_08141800: .4byte gBattleAnimPlayerMonIndex
|
||||
_08141800: .4byte gBattleAnimBankAttacker
|
||||
_08141804: .4byte 0x02017800
|
||||
thumb_func_end sub_81417D8
|
||||
|
||||
@@ -4954,7 +4954,7 @@ sub_8141808: @ 8141808
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _08141820 @ =gBattleAnimEnemyMonIndex
|
||||
ldr r2, _08141820 @ =gBattleAnimBankTarget
|
||||
ldr r1, _08141824 @ =gEffectBank
|
||||
ldrb r1, [r1]
|
||||
strb r1, [r2]
|
||||
@@ -4962,7 +4962,7 @@ sub_8141808: @ 8141808
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08141820: .4byte gBattleAnimEnemyMonIndex
|
||||
_08141820: .4byte gBattleAnimBankTarget
|
||||
_08141824: .4byte gEffectBank
|
||||
thumb_func_end sub_8141808
|
||||
|
||||
@@ -4994,7 +4994,7 @@ sub_8141828: @ 8141828
|
||||
bl GetMonData
|
||||
adds r4, r0, 0
|
||||
adds r0, r6, 0
|
||||
bl b_side_obj__get_some_boolean
|
||||
bl IsAnimBankSpriteVisible
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _081418FC
|
||||
@@ -5511,7 +5511,7 @@ sub_8141C30: @ 8141C30
|
||||
adds r0, r4, 0
|
||||
bl sub_80786EC
|
||||
ldr r1, _08141CAC @ =gObjectBankIDs
|
||||
ldr r0, _08141CB0 @ =gBattleAnimPlayerMonIndex
|
||||
ldr r0, _08141CB0 @ =gBattleAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
ldrb r1, [r0]
|
||||
@@ -5531,7 +5531,7 @@ sub_8141C30: @ 8141C30
|
||||
_08141CA4: .4byte gBattleAnimArgs
|
||||
_08141CA8: .4byte 0x0000ffe0
|
||||
_08141CAC: .4byte gObjectBankIDs
|
||||
_08141CB0: .4byte gBattleAnimPlayerMonIndex
|
||||
_08141CB0: .4byte gBattleAnimBankAttacker
|
||||
_08141CB4: .4byte gSprites
|
||||
_08141CB8: .4byte sub_8141CBC
|
||||
thumb_func_end sub_8141C30
|
||||
@@ -5542,7 +5542,7 @@ sub_8141CBC: @ 8141CBC
|
||||
adds r3, r0, 0
|
||||
ldr r2, _08141CE4 @ =gSprites
|
||||
ldr r1, _08141CE8 @ =gObjectBankIDs
|
||||
ldr r0, _08141CEC @ =gBattleAnimPlayerMonIndex
|
||||
ldr r0, _08141CEC @ =gBattleAnimBankAttacker
|
||||
ldrb r0, [r0]
|
||||
adds r0, r1
|
||||
ldrb r1, [r0]
|
||||
@@ -5562,7 +5562,7 @@ _08141CE0:
|
||||
.align 2, 0
|
||||
_08141CE4: .4byte gSprites
|
||||
_08141CE8: .4byte gObjectBankIDs
|
||||
_08141CEC: .4byte gBattleAnimPlayerMonIndex
|
||||
_08141CEC: .4byte gBattleAnimBankAttacker
|
||||
_08141CF0: .4byte sub_8141CF4
|
||||
thumb_func_end sub_8141CBC
|
||||
|
||||
@@ -5598,7 +5598,7 @@ sub_8141D20: @ 8141D20
|
||||
adds r4, r0, 0
|
||||
ldr r5, _08141D70 @ =gSprites
|
||||
ldr r3, _08141D74 @ =gObjectBankIDs
|
||||
ldr r2, _08141D78 @ =gBattleAnimPlayerMonIndex
|
||||
ldr r2, _08141D78 @ =gBattleAnimBankAttacker
|
||||
ldrb r0, [r2]
|
||||
adds r0, r3
|
||||
ldrb r1, [r0]
|
||||
@@ -5635,7 +5635,7 @@ _08141D68:
|
||||
.align 2, 0
|
||||
_08141D70: .4byte gSprites
|
||||
_08141D74: .4byte gObjectBankIDs
|
||||
_08141D78: .4byte gBattleAnimPlayerMonIndex
|
||||
_08141D78: .4byte gBattleAnimBankAttacker
|
||||
thumb_func_end sub_8141D20
|
||||
|
||||
thumb_func_start sub_8141D7C
|
||||
@@ -5646,11 +5646,11 @@ sub_8141D7C: @ 8141D7C
|
||||
lsrs r4, 24
|
||||
movs r0, 0
|
||||
bl GetBankByPlayerAI
|
||||
ldr r1, _08141DA4 @ =gBattleAnimPlayerMonIndex
|
||||
ldr r1, _08141DA4 @ =gBattleAnimBankAttacker
|
||||
strb r0, [r1]
|
||||
movs r0, 0x1
|
||||
bl GetBankByPlayerAI
|
||||
ldr r1, _08141DA8 @ =gBattleAnimEnemyMonIndex
|
||||
ldr r1, _08141DA8 @ =gBattleAnimBankTarget
|
||||
strb r0, [r1]
|
||||
adds r0, r4, 0
|
||||
bl DestroyAnimVisualTask
|
||||
@@ -5658,8 +5658,8 @@ sub_8141D7C: @ 8141D7C
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08141DA4: .4byte gBattleAnimPlayerMonIndex
|
||||
_08141DA8: .4byte gBattleAnimEnemyMonIndex
|
||||
_08141DA4: .4byte gBattleAnimBankAttacker
|
||||
_08141DA8: .4byte gBattleAnimBankTarget
|
||||
thumb_func_end sub_8141D7C
|
||||
|
||||
thumb_func_start sub_8141DAC
|
||||
@@ -5721,20 +5721,20 @@ sub_8141E10: @ 8141E10
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _08141E2C @ =gBattleAnimPlayerMonIndex
|
||||
ldr r2, _08141E2C @ =gBattleAnimBankAttacker
|
||||
ldr r1, _08141E30 @ =0x02017840
|
||||
ldrh r1, [r1]
|
||||
strb r1, [r2]
|
||||
ldr r2, _08141E34 @ =gBattleAnimEnemyMonIndex
|
||||
ldr r2, _08141E34 @ =gBattleAnimBankTarget
|
||||
lsrs r1, 8
|
||||
strb r1, [r2]
|
||||
bl DestroyAnimVisualTask
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08141E2C: .4byte gBattleAnimPlayerMonIndex
|
||||
_08141E2C: .4byte gBattleAnimBankAttacker
|
||||
_08141E30: .4byte 0x02017840
|
||||
_08141E34: .4byte gBattleAnimEnemyMonIndex
|
||||
_08141E34: .4byte gBattleAnimBankTarget
|
||||
thumb_func_end sub_8141E10
|
||||
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,868 +0,0 @@
|
||||
.include "constants/gba_constants.inc"
|
||||
.include "constants/species_constants.inc"
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_810FF78
|
||||
sub_810FF78: @ 810FF78
|
||||
push {r4,lr}
|
||||
sub sp, 0x4
|
||||
adds r4, r0, 0
|
||||
mov r1, sp
|
||||
movs r0, 0
|
||||
strh r0, [r1]
|
||||
ldr r2, _0810FFA4 @ =0x01000008
|
||||
mov r0, sp
|
||||
adds r1, r4, 0
|
||||
bl CpuSet
|
||||
movs r0, 0xFF
|
||||
strb r0, [r4]
|
||||
movs r0, 0
|
||||
strh r0, [r4, 0x8]
|
||||
strh r0, [r4, 0xA]
|
||||
strh r0, [r4, 0xC]
|
||||
strh r0, [r4, 0xE]
|
||||
add sp, 0x4
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0810FFA4: .4byte 0x01000008
|
||||
thumb_func_end sub_810FF78
|
||||
|
||||
thumb_func_start InitLinkBattleRecords_
|
||||
InitLinkBattleRecords_: @ 810FFA8
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
movs r5, 0x4
|
||||
_0810FFAE:
|
||||
adds r0, r4, 0
|
||||
bl sub_810FF78
|
||||
adds r4, 0x10
|
||||
subs r5, 0x1
|
||||
cmp r5, 0
|
||||
bge _0810FFAE
|
||||
movs r0, 0x17
|
||||
movs r1, 0
|
||||
bl SetGameStat
|
||||
movs r0, 0x18
|
||||
movs r1, 0
|
||||
bl SetGameStat
|
||||
movs r0, 0x19
|
||||
movs r1, 0
|
||||
bl SetGameStat
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end InitLinkBattleRecords_
|
||||
|
||||
thumb_func_start sub_810FFDC
|
||||
sub_810FFDC: @ 810FFDC
|
||||
adds r1, r0, 0
|
||||
ldrh r0, [r1, 0xA]
|
||||
ldrh r2, [r1, 0xC]
|
||||
adds r0, r2
|
||||
ldrh r1, [r1, 0xE]
|
||||
adds r0, r1
|
||||
bx lr
|
||||
thumb_func_end sub_810FFDC
|
||||
|
||||
thumb_func_start sub_810FFEC
|
||||
sub_810FFEC: @ 810FFEC
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
mov r8, r1
|
||||
lsls r2, 16
|
||||
lsrs r7, r2, 16
|
||||
movs r5, 0
|
||||
ldr r6, _08110024 @ =gStringVar1
|
||||
adds r4, r0, 0
|
||||
_0810FFFE:
|
||||
adds r0, r6, 0
|
||||
adds r1, r4, 0
|
||||
movs r2, 0x7
|
||||
bl memcpy
|
||||
movs r0, 0xFF
|
||||
strb r0, [r6, 0x7]
|
||||
adds r0, r6, 0
|
||||
mov r1, r8
|
||||
bl StringCompareWithoutExtCtrlCodes
|
||||
cmp r0, 0
|
||||
bne _08110028
|
||||
ldrh r0, [r4, 0x8]
|
||||
cmp r0, r7
|
||||
bne _08110028
|
||||
adds r0, r5, 0
|
||||
b _08110032
|
||||
.align 2, 0
|
||||
_08110024: .4byte gStringVar1
|
||||
_08110028:
|
||||
adds r4, 0x10
|
||||
adds r5, 0x1
|
||||
cmp r5, 0x4
|
||||
ble _0810FFFE
|
||||
movs r0, 0x5
|
||||
_08110032:
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_810FFEC
|
||||
|
||||
thumb_func_start sub_811003C
|
||||
sub_811003C: @ 811003C
|
||||
push {r4-r7,lr}
|
||||
mov r7, r9
|
||||
mov r6, r8
|
||||
push {r6,r7}
|
||||
sub sp, 0x14
|
||||
mov r8, r0
|
||||
movs r0, 0x4
|
||||
_0811004A:
|
||||
subs r2, r0, 0x1
|
||||
mov r9, r2
|
||||
cmp r2, 0
|
||||
blt _081100A4
|
||||
lsls r0, 4
|
||||
mov r1, r8
|
||||
adds r6, r1, r0
|
||||
lsls r0, r2, 4
|
||||
adds r5, r0, r1
|
||||
_0811005C:
|
||||
adds r0, r6, 0
|
||||
str r2, [sp, 0x10]
|
||||
bl sub_810FFDC
|
||||
adds r4, r0, 0
|
||||
adds r0, r5, 0
|
||||
bl sub_810FFDC
|
||||
ldr r2, [sp, 0x10]
|
||||
cmp r4, r0
|
||||
ble _08110096
|
||||
mov r1, sp
|
||||
adds r0, r6, 0
|
||||
ldm r0!, {r3,r4,r7}
|
||||
stm r1!, {r3,r4,r7}
|
||||
ldr r0, [r0]
|
||||
str r0, [r1]
|
||||
adds r1, r6, 0
|
||||
adds r0, r5, 0
|
||||
ldm r0!, {r3,r4,r7}
|
||||
stm r1!, {r3,r4,r7}
|
||||
ldr r0, [r0]
|
||||
str r0, [r1]
|
||||
adds r1, r5, 0
|
||||
mov r0, sp
|
||||
ldm r0!, {r3,r4,r7}
|
||||
stm r1!, {r3,r4,r7}
|
||||
ldr r0, [r0]
|
||||
str r0, [r1]
|
||||
_08110096:
|
||||
subs r5, 0x10
|
||||
movs r0, 0x1
|
||||
negs r0, r0
|
||||
add r9, r0
|
||||
mov r1, r9
|
||||
cmp r1, 0
|
||||
bge _0811005C
|
||||
_081100A4:
|
||||
adds r0, r2, 0
|
||||
cmp r0, 0
|
||||
bgt _0811004A
|
||||
add sp, 0x14
|
||||
pop {r3,r4}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_811003C
|
||||
|
||||
thumb_func_start sub_81100B8
|
||||
sub_81100B8: @ 81100B8
|
||||
push {lr}
|
||||
adds r2, r0, 0
|
||||
cmp r1, 0x2
|
||||
beq _081100E8
|
||||
cmp r1, 0x2
|
||||
bgt _081100CA
|
||||
cmp r1, 0x1
|
||||
beq _081100D0
|
||||
b _08110112
|
||||
_081100CA:
|
||||
cmp r1, 0x3
|
||||
beq _08110100
|
||||
b _08110112
|
||||
_081100D0:
|
||||
ldrh r0, [r2, 0xA]
|
||||
adds r0, 0x1
|
||||
strh r0, [r2, 0xA]
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
ldr r1, _081100E4 @ =0x0000270f
|
||||
cmp r0, r1
|
||||
bls _08110112
|
||||
strh r1, [r2, 0xA]
|
||||
b _08110112
|
||||
.align 2, 0
|
||||
_081100E4: .4byte 0x0000270f
|
||||
_081100E8:
|
||||
ldrh r0, [r2, 0xC]
|
||||
adds r0, 0x1
|
||||
strh r0, [r2, 0xC]
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
ldr r1, _081100FC @ =0x0000270f
|
||||
cmp r0, r1
|
||||
bls _08110112
|
||||
strh r1, [r2, 0xC]
|
||||
b _08110112
|
||||
.align 2, 0
|
||||
_081100FC: .4byte 0x0000270f
|
||||
_08110100:
|
||||
ldrh r0, [r2, 0xE]
|
||||
adds r0, 0x1
|
||||
strh r0, [r2, 0xE]
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
ldr r1, _08110118 @ =0x0000270f
|
||||
cmp r0, r1
|
||||
bls _08110112
|
||||
strh r1, [r2, 0xE]
|
||||
_08110112:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08110118: .4byte 0x0000270f
|
||||
thumb_func_end sub_81100B8
|
||||
|
||||
thumb_func_start sub_811011C
|
||||
sub_811011C: @ 811011C
|
||||
push {r4,lr}
|
||||
cmp r0, 0x2
|
||||
beq _08110136
|
||||
cmp r0, 0x2
|
||||
bgt _0811012C
|
||||
cmp r0, 0x1
|
||||
beq _08110132
|
||||
b _0811014E
|
||||
_0811012C:
|
||||
cmp r0, 0x3
|
||||
beq _0811013A
|
||||
b _0811014E
|
||||
_08110132:
|
||||
movs r4, 0x17
|
||||
b _0811013C
|
||||
_08110136:
|
||||
movs r4, 0x18
|
||||
b _0811013C
|
||||
_0811013A:
|
||||
movs r4, 0x19
|
||||
_0811013C:
|
||||
adds r0, r4, 0
|
||||
bl GetGameStat
|
||||
ldr r1, _08110154 @ =0x0000270e
|
||||
cmp r0, r1
|
||||
bhi _0811014E
|
||||
adds r0, r4, 0
|
||||
bl IncrementGameStat
|
||||
_0811014E:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08110154: .4byte 0x0000270e
|
||||
thumb_func_end sub_811011C
|
||||
|
||||
thumb_func_start sub_8110158
|
||||
sub_8110158: @ 8110158
|
||||
push {r4-r7,lr}
|
||||
mov r7, r10
|
||||
mov r6, r9
|
||||
mov r5, r8
|
||||
push {r5-r7}
|
||||
adds r5, r0, 0
|
||||
adds r7, r1, 0
|
||||
mov r10, r3
|
||||
ldr r0, [sp, 0x20]
|
||||
lsls r2, 16
|
||||
lsrs r2, 16
|
||||
mov r9, r2
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
mov r8, r0
|
||||
mov r0, r10
|
||||
bl sub_811011C
|
||||
adds r0, r5, 0
|
||||
bl sub_811003C
|
||||
adds r0, r5, 0
|
||||
adds r1, r7, 0
|
||||
mov r2, r9
|
||||
bl sub_810FFEC
|
||||
adds r6, r0, 0
|
||||
cmp r6, 0x5
|
||||
bne _081101CC
|
||||
movs r6, 0x4
|
||||
adds r4, r5, 0
|
||||
adds r4, 0x40
|
||||
adds r0, r4, 0
|
||||
bl sub_810FF78
|
||||
mov r0, r8
|
||||
cmp r0, 0x1
|
||||
bne _081101BA
|
||||
movs r0, 0xFC
|
||||
strb r0, [r4]
|
||||
movs r0, 0x15
|
||||
strb r0, [r4, 0x1]
|
||||
adds r0, r5, 0
|
||||
adds r0, 0x42
|
||||
adds r1, r7, 0
|
||||
movs r2, 0x5
|
||||
bl StringCopyN
|
||||
b _081101C4
|
||||
_081101BA:
|
||||
adds r0, r4, 0
|
||||
adds r1, r7, 0
|
||||
movs r2, 0x7
|
||||
bl StringCopyN
|
||||
_081101C4:
|
||||
lsls r0, r6, 4
|
||||
adds r0, r5, r0
|
||||
mov r1, r9
|
||||
strh r1, [r0, 0x8]
|
||||
_081101CC:
|
||||
lsls r0, r6, 4
|
||||
adds r0, r5, r0
|
||||
mov r1, r10
|
||||
bl sub_81100B8
|
||||
adds r0, r5, 0
|
||||
bl sub_811003C
|
||||
pop {r3-r5}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
mov r10, r5
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8110158
|
||||
|
||||
thumb_func_start InitLinkBattleRecords
|
||||
InitLinkBattleRecords: @ 81101EC
|
||||
push {lr}
|
||||
ldr r0, _081101F8 @ =gSaveBlock1 + 0x30B8
|
||||
bl InitLinkBattleRecords_
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_081101F8: .4byte gSaveBlock1 + 0x30B8
|
||||
thumb_func_end InitLinkBattleRecords
|
||||
|
||||
thumb_func_start sub_81101FC
|
||||
sub_81101FC: @ 81101FC
|
||||
push {lr}
|
||||
lsls r1, r0, 3
|
||||
subs r1, r0
|
||||
lsls r1, 3
|
||||
ldr r0, _08110220 @ =gTrainerCards + 0x14
|
||||
adds r1, r0
|
||||
ldrh r0, [r1]
|
||||
adds r0, 0x1
|
||||
strh r0, [r1]
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
ldr r2, _08110224 @ =0x0000270f
|
||||
cmp r0, r2
|
||||
bls _0811021A
|
||||
strh r2, [r1]
|
||||
_0811021A:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08110220: .4byte gTrainerCards + 0x14
|
||||
_08110224: .4byte 0x0000270f
|
||||
thumb_func_end sub_81101FC
|
||||
|
||||
thumb_func_start sub_8110228
|
||||
sub_8110228: @ 8110228
|
||||
push {lr}
|
||||
lsls r1, r0, 3
|
||||
subs r1, r0
|
||||
lsls r1, 3
|
||||
ldr r0, _0811024C @ =gTrainerCards + 0x16
|
||||
adds r1, r0
|
||||
ldrh r0, [r1]
|
||||
adds r0, 0x1
|
||||
strh r0, [r1]
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
ldr r2, _08110250 @ =0x0000270f
|
||||
cmp r0, r2
|
||||
bls _08110246
|
||||
strh r2, [r1]
|
||||
_08110246:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0811024C: .4byte gTrainerCards + 0x16
|
||||
_08110250: .4byte 0x0000270f
|
||||
thumb_func_end sub_8110228
|
||||
|
||||
thumb_func_start sub_8110254
|
||||
sub_8110254: @ 8110254
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
ldr r0, _08110268 @ =gBattleOutcome
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0x1
|
||||
beq _0811026C
|
||||
cmp r0, 0x2
|
||||
beq _0811027A
|
||||
b _08110288
|
||||
.align 2, 0
|
||||
_08110268: .4byte gBattleOutcome
|
||||
_0811026C:
|
||||
eors r0, r4
|
||||
bl sub_81101FC
|
||||
adds r0, r4, 0
|
||||
bl sub_8110228
|
||||
b _08110288
|
||||
_0811027A:
|
||||
movs r0, 0x1
|
||||
eors r0, r4
|
||||
bl sub_8110228
|
||||
adds r0, r4, 0
|
||||
bl sub_81101FC
|
||||
_08110288:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8110254
|
||||
|
||||
thumb_func_start sub_8110290
|
||||
sub_8110290: @ 8110290
|
||||
push {r4-r6,lr}
|
||||
sub sp, 0x4
|
||||
adds r4, r0, 0
|
||||
bl sub_8110254
|
||||
ldr r0, _081102D4 @ =gSaveBlock1 + 0x30B8
|
||||
lsls r2, r4, 3
|
||||
subs r2, r4
|
||||
lsls r2, 3
|
||||
ldr r3, _081102D8 @ =gTrainerCards + 0x30
|
||||
adds r1, r2, r3
|
||||
subs r3, 0x30
|
||||
adds r2, r3
|
||||
ldrh r2, [r2, 0xE]
|
||||
ldr r3, _081102DC @ =gBattleOutcome
|
||||
ldrb r3, [r3]
|
||||
ldr r6, _081102E0 @ =gLinkPlayers
|
||||
ldr r5, _081102E4 @ =gLinkPlayerMapObjects
|
||||
lsls r4, 2
|
||||
adds r4, r5
|
||||
ldrb r5, [r4, 0x1]
|
||||
lsls r4, r5, 3
|
||||
subs r4, r5
|
||||
lsls r4, 2
|
||||
adds r4, r6
|
||||
ldrb r4, [r4, 0x1A]
|
||||
str r4, [sp]
|
||||
bl sub_8110158
|
||||
add sp, 0x4
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_081102D4: .4byte gSaveBlock1 + 0x30B8
|
||||
_081102D8: .4byte gTrainerCards + 0x30
|
||||
_081102DC: .4byte gBattleOutcome
|
||||
_081102E0: .4byte gLinkPlayers
|
||||
_081102E4: .4byte gLinkPlayerMapObjects
|
||||
thumb_func_end sub_8110290
|
||||
|
||||
thumb_func_start PrintLinkBattleWinsLossesDraws
|
||||
PrintLinkBattleWinsLossesDraws: @ 81102E8
|
||||
push {r4,lr}
|
||||
ldr r4, _08110338 @ =gStringVar1
|
||||
movs r0, 0x17
|
||||
bl GetGameStat
|
||||
adds r1, r0, 0
|
||||
adds r0, r4, 0
|
||||
movs r2, 0x1
|
||||
movs r3, 0x4
|
||||
bl ConvertIntToDecimalStringN_DigitWidth6
|
||||
ldr r4, _0811033C @ =gStringVar2
|
||||
movs r0, 0x18
|
||||
bl GetGameStat
|
||||
adds r1, r0, 0
|
||||
adds r0, r4, 0
|
||||
movs r2, 0x1
|
||||
movs r3, 0x4
|
||||
bl ConvertIntToDecimalStringN_DigitWidth6
|
||||
ldr r4, _08110340 @ =gStringVar3
|
||||
movs r0, 0x19
|
||||
bl GetGameStat
|
||||
adds r1, r0, 0
|
||||
adds r0, r4, 0
|
||||
movs r2, 0x1
|
||||
movs r3, 0x4
|
||||
bl ConvertIntToDecimalStringN_DigitWidth6
|
||||
ldr r0, _08110344 @ =gOtherText_WinRecord
|
||||
movs r1, 0x3
|
||||
movs r2, 0x3
|
||||
bl MenuPrint
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08110338: .4byte gStringVar1
|
||||
_0811033C: .4byte gStringVar2
|
||||
_08110340: .4byte gStringVar3
|
||||
_08110344: .4byte gOtherText_WinRecord
|
||||
thumb_func_end PrintLinkBattleWinsLossesDraws
|
||||
|
||||
thumb_func_start PrintLinkBattleRecord
|
||||
PrintLinkBattleRecord: @ 8110348
|
||||
push {r4-r7,lr}
|
||||
sub sp, 0x10
|
||||
adds r7, r0, 0
|
||||
lsls r1, 24
|
||||
lsrs r6, r1, 24
|
||||
ldrh r0, [r7, 0xA]
|
||||
cmp r0, 0
|
||||
bne _081103C0
|
||||
ldr r0, [r7, 0xC]
|
||||
cmp r0, 0
|
||||
bne _081103C0
|
||||
mov r0, sp
|
||||
movs r2, 0xFC
|
||||
strb r2, [r0]
|
||||
mov r1, sp
|
||||
movs r0, 0x14
|
||||
strb r0, [r1, 0x1]
|
||||
movs r0, 0x6
|
||||
strb r0, [r1, 0x2]
|
||||
mov r0, sp
|
||||
strb r2, [r0, 0x3]
|
||||
movs r0, 0x11
|
||||
strb r0, [r1, 0x4]
|
||||
movs r0, 0x1
|
||||
strb r0, [r1, 0x5]
|
||||
mov r4, sp
|
||||
adds r4, 0x6
|
||||
ldr r1, _081103B8 @ =gOtherText_SevenDashes
|
||||
adds r0, r4, 0
|
||||
bl StringCopy
|
||||
mov r0, sp
|
||||
movs r1, 0x3
|
||||
adds r2, r6, 0
|
||||
bl MenuPrint
|
||||
ldr r1, _081103BC @ =gOtherText_FourDashes
|
||||
adds r0, r4, 0
|
||||
bl StringCopy
|
||||
mov r0, sp
|
||||
movs r1, 0xB
|
||||
adds r2, r6, 0
|
||||
bl MenuPrint
|
||||
mov r0, sp
|
||||
movs r1, 0x11
|
||||
adds r2, r6, 0
|
||||
bl MenuPrint
|
||||
mov r0, sp
|
||||
movs r1, 0x17
|
||||
adds r2, r6, 0
|
||||
bl MenuPrint
|
||||
b _0811042E
|
||||
.align 2, 0
|
||||
_081103B8: .4byte gOtherText_SevenDashes
|
||||
_081103BC: .4byte gOtherText_FourDashes
|
||||
_081103C0:
|
||||
ldr r4, _08110438 @ =gStringVar1
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x8
|
||||
bl StringFillWithTerminator
|
||||
adds r0, r4, 0
|
||||
adds r1, r7, 0
|
||||
movs r2, 0x7
|
||||
bl StringCopyN
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x3
|
||||
adds r2, r6, 0
|
||||
bl MenuPrint
|
||||
movs r0, 0xFC
|
||||
strb r0, [r4]
|
||||
movs r0, 0x14
|
||||
strb r0, [r4, 0x1]
|
||||
movs r0, 0x6
|
||||
strb r0, [r4, 0x2]
|
||||
adds r5, r4, 0x3
|
||||
ldrh r1, [r7, 0xA]
|
||||
adds r0, r5, 0
|
||||
movs r2, 0x1
|
||||
movs r3, 0x4
|
||||
bl ConvertIntToDecimalStringN
|
||||
adds r0, r4, 0
|
||||
movs r1, 0xB
|
||||
adds r2, r6, 0
|
||||
bl MenuPrint
|
||||
ldrh r1, [r7, 0xC]
|
||||
adds r0, r5, 0
|
||||
movs r2, 0x1
|
||||
movs r3, 0x4
|
||||
bl ConvertIntToDecimalStringN
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x11
|
||||
adds r2, r6, 0
|
||||
bl MenuPrint
|
||||
ldrh r1, [r7, 0xE]
|
||||
adds r0, r5, 0
|
||||
movs r2, 0x1
|
||||
movs r3, 0x4
|
||||
bl ConvertIntToDecimalStringN
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x17
|
||||
adds r2, r6, 0
|
||||
bl MenuPrint
|
||||
_0811042E:
|
||||
add sp, 0x10
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08110438: .4byte gStringVar1
|
||||
thumb_func_end PrintLinkBattleRecord
|
||||
|
||||
.section .text_8110494
|
||||
|
||||
thumb_func_start sub_8110494
|
||||
sub_8110494: @ 8110494
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r1, _081104B4 @ =gSaveBlock2 + 0xA8
|
||||
ldr r2, _081104B8 @ =0x000004ae
|
||||
adds r1, r2
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0x6
|
||||
bhi _081104E0
|
||||
lsls r0, 2
|
||||
ldr r1, _081104BC @ =_081104C0
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
mov pc, r0
|
||||
.align 2, 0
|
||||
_081104B4: .4byte gSaveBlock2 + 0xA8
|
||||
_081104B8: .4byte 0x000004ae
|
||||
_081104BC: .4byte _081104C0
|
||||
.align 2, 0
|
||||
_081104C0:
|
||||
.4byte _081104E0
|
||||
.4byte _081104E0
|
||||
.4byte _081104DC
|
||||
.4byte _081104DC
|
||||
.4byte _081104E0
|
||||
.4byte _081104E0
|
||||
.4byte _081104DC
|
||||
_081104DC:
|
||||
movs r0, 0x1
|
||||
b _081104E2
|
||||
_081104E0:
|
||||
movs r0, 0
|
||||
_081104E2:
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8110494
|
||||
|
||||
thumb_func_start sub_81104E8
|
||||
sub_81104E8: @ 81104E8
|
||||
push {r4-r6,lr}
|
||||
lsls r1, 16
|
||||
lsrs r4, r1, 16
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
adds r5, r2, 0
|
||||
lsls r3, 24
|
||||
lsrs r3, 24
|
||||
adds r6, r3, 0
|
||||
adds r1, r5, 0
|
||||
adds r2, r6, 0
|
||||
bl MenuPrint
|
||||
ldr r0, _0811052C @ =0x0000270f
|
||||
cmp r4, r0
|
||||
bls _0811050A
|
||||
adds r4, r0, 0
|
||||
_0811050A:
|
||||
ldr r0, _08110530 @ =gStringVar1
|
||||
adds r1, r4, 0
|
||||
movs r2, 0x18
|
||||
movs r3, 0x1
|
||||
bl sub_8072C14
|
||||
ldr r0, _08110534 @ =gOtherText_WinStreak
|
||||
adds r1, r5, 0x7
|
||||
lsls r1, 24
|
||||
lsrs r1, 24
|
||||
adds r2, r6, 0
|
||||
bl MenuPrint
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0811052C: .4byte 0x0000270f
|
||||
_08110530: .4byte gStringVar1
|
||||
_08110534: .4byte gOtherText_WinStreak
|
||||
thumb_func_end sub_81104E8
|
||||
|
||||
thumb_func_start sub_8110538
|
||||
sub_8110538: @ 8110538
|
||||
push {r4,lr}
|
||||
adds r4, r1, 0
|
||||
adds r3, r2, 0
|
||||
lsls r0, 24
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
lsls r3, 24
|
||||
lsrs r3, 24
|
||||
ldr r1, _08110564 @ =gSaveBlock2 + 0xA8
|
||||
lsrs r0, 23
|
||||
movs r2, 0x97
|
||||
lsls r2, 3
|
||||
adds r1, r2
|
||||
adds r0, r1
|
||||
ldrh r1, [r0]
|
||||
ldr r0, _08110568 @ =gOtherText_Record
|
||||
adds r2, r4, 0
|
||||
bl sub_81104E8
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08110564: .4byte gSaveBlock2 + 0xA8
|
||||
_08110568: .4byte gOtherText_Record
|
||||
thumb_func_end sub_8110538
|
||||
|
||||
thumb_func_start sub_811056C
|
||||
sub_811056C: @ 811056C
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
ldr r1, _08110588 @ =gSaveBlock2
|
||||
lsrs r0, 23
|
||||
ldr r2, _0811058C @ =0x00000574
|
||||
adds r1, r2
|
||||
adds r0, r1
|
||||
ldrh r0, [r0]
|
||||
ldr r1, _08110590 @ =0x0000270f
|
||||
cmp r0, r1
|
||||
bls _08110584
|
||||
adds r0, r1, 0
|
||||
_08110584:
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08110588: .4byte gSaveBlock2
|
||||
_0811058C: .4byte 0x00000574
|
||||
_08110590: .4byte 0x0000270f
|
||||
thumb_func_end sub_811056C
|
||||
|
||||
thumb_func_start sub_8110594
|
||||
sub_8110594: @ 8110594
|
||||
push {r4-r7,lr}
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
lsls r1, 24
|
||||
lsrs r6, r1, 24
|
||||
lsls r2, 24
|
||||
lsrs r7, r2, 24
|
||||
adds r0, r4, 0
|
||||
bl sub_811056C
|
||||
lsls r0, 16
|
||||
lsrs r5, r0, 16
|
||||
adds r0, r4, 0
|
||||
bl sub_8110494
|
||||
cmp r0, 0x1
|
||||
bne _081105CC
|
||||
ldr r0, _081105C8 @ =gOtherText_Current
|
||||
adds r1, r5, 0
|
||||
adds r2, r6, 0
|
||||
adds r3, r7, 0
|
||||
bl sub_81104E8
|
||||
b _081105D8
|
||||
.align 2, 0
|
||||
_081105C8: .4byte gOtherText_Current
|
||||
_081105CC:
|
||||
ldr r0, _081105E0 @ =gOtherText_Prev
|
||||
adds r1, r5, 0
|
||||
adds r2, r6, 0
|
||||
adds r3, r7, 0
|
||||
bl sub_81104E8
|
||||
_081105D8:
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_081105E0: .4byte gOtherText_Prev
|
||||
thumb_func_end sub_8110594
|
||||
|
||||
thumb_func_start ShowBattleTowerRecords
|
||||
ShowBattleTowerRecords: @ 81105E4
|
||||
push {r4,lr}
|
||||
movs r0, 0x3
|
||||
movs r1, 0x1
|
||||
movs r2, 0x1B
|
||||
movs r3, 0x11
|
||||
bl MenuDrawTextWindow
|
||||
ldr r0, _08110658 @ =gOtherText_BattleTowerResults
|
||||
movs r1, 0x3
|
||||
movs r2, 0x2
|
||||
movs r3, 0xC8
|
||||
bl sub_8072BD8
|
||||
ldr r0, _0811065C @ =gOtherText_Lv50
|
||||
movs r1, 0x5
|
||||
movs r2, 0x6
|
||||
bl MenuPrint
|
||||
ldr r0, _08110660 @ =gOtherText_Lv100
|
||||
movs r1, 0x5
|
||||
movs r2, 0xC
|
||||
bl MenuPrint
|
||||
movs r4, 0x5
|
||||
_08110614:
|
||||
lsls r1, r4, 24
|
||||
lsrs r1, 24
|
||||
movs r0, 0xAE
|
||||
movs r2, 0xA
|
||||
bl sub_8071F60
|
||||
adds r0, r4, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r4, r0, 16
|
||||
cmp r4, 0x19
|
||||
bls _08110614
|
||||
movs r0, 0
|
||||
movs r1, 0xA
|
||||
movs r2, 0x6
|
||||
bl sub_8110594
|
||||
movs r0, 0
|
||||
movs r1, 0xA
|
||||
movs r2, 0x8
|
||||
bl sub_8110538
|
||||
movs r0, 0x1
|
||||
movs r1, 0xA
|
||||
movs r2, 0xC
|
||||
bl sub_8110594
|
||||
movs r0, 0x1
|
||||
movs r1, 0xA
|
||||
movs r2, 0xE
|
||||
bl sub_8110538
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08110658: .4byte gOtherText_BattleTowerResults
|
||||
_0811065C: .4byte gOtherText_Lv50
|
||||
_08110660: .4byte gOtherText_Lv100
|
||||
thumb_func_end ShowBattleTowerRecords
|
||||
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
+7
-7
@@ -1522,7 +1522,7 @@ _081350AE:
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
movs r1, 0x1
|
||||
bl GetNationalPokedexFlag
|
||||
bl GetSetPokedexFlag
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _081350C6
|
||||
@@ -1555,7 +1555,7 @@ AppendBattleTowerBannedSpeciesName: @ 81350E0
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
movs r1, 0x1
|
||||
bl GetNationalPokedexFlag
|
||||
bl GetSetPokedexFlag
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _081351E6
|
||||
@@ -2082,7 +2082,7 @@ sub_8135534: @ 8135534
|
||||
push {r4,lr}
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
bl sub_811AAE8
|
||||
bl IsBattleTransitionDone
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
@@ -2163,10 +2163,10 @@ _081355D6:
|
||||
bl CreateTask
|
||||
movs r0, 0
|
||||
bl current_map_music_set__default_for_battle
|
||||
bl GetBattleTowerBattleTransition
|
||||
bl BattleSetup_GetBattleTowerBattleTransition
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl sub_811AABC
|
||||
bl BattleTransition_StartOnField
|
||||
b _08135648
|
||||
.align 2, 0
|
||||
_081355F4: .4byte gPlayerParty
|
||||
@@ -2200,10 +2200,10 @@ _08135606:
|
||||
bl CreateTask
|
||||
movs r0, 0
|
||||
bl current_map_music_set__default_for_battle
|
||||
bl GetBattleTowerBattleTransition
|
||||
bl BattleSetup_GetBattleTowerBattleTransition
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl sub_811AABC
|
||||
bl BattleTransition_StartOnField
|
||||
_08135648:
|
||||
add sp, 0x4
|
||||
pop {r4,r5}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
-9164
File diff suppressed because it is too large
Load Diff
+4
-4
@@ -256,22 +256,22 @@ _081233EC:
|
||||
ldr r0, _0812345C @ =gCableCarMtChimneyTilemap
|
||||
ldr r4, _08123460 @ =0x02019000
|
||||
adds r1, r4, 0
|
||||
bl sub_800D238
|
||||
bl LZDecompressWram
|
||||
ldr r0, _08123464 @ =gCableCarTreeTilemap
|
||||
movs r2, 0xB4
|
||||
lsls r2, 1
|
||||
adds r1, r4, r2
|
||||
bl sub_800D238
|
||||
bl LZDecompressWram
|
||||
ldr r0, _08123468 @ =gCableCarMountainTilemap
|
||||
movs r2, 0xA5
|
||||
lsls r2, 3
|
||||
adds r1, r4, r2
|
||||
bl sub_800D238
|
||||
bl LZDecompressWram
|
||||
ldr r0, _0812346C @ =gCableCarPylonStemTilemap
|
||||
ldr r1, _08123470 @ =0x000009d8
|
||||
adds r4, r1
|
||||
adds r1, r4, 0
|
||||
bl sub_800D238
|
||||
bl LZDecompressWram
|
||||
ldr r0, _08123474 @ =gCableCarBG_Pal
|
||||
movs r1, 0
|
||||
movs r2, 0x80
|
||||
|
||||
-1671
File diff suppressed because it is too large
Load Diff
+1
-1
@@ -6904,7 +6904,7 @@ sub_80AE9FC: @ 80AE9FC
|
||||
adds r0, r5, 0
|
||||
mov r1, r8
|
||||
adds r2, r6, 0
|
||||
bl species_and_otid_get_pal
|
||||
bl GetMonSpritePalFromOtIdPersonality
|
||||
movs r1, 0x90
|
||||
lsls r1, 1
|
||||
movs r2, 0x20
|
||||
|
||||
@@ -1361,7 +1361,7 @@ _080C2B14:
|
||||
adds r0, r6, 0
|
||||
ldr r1, [sp, 0xC]
|
||||
adds r2, r4, 0
|
||||
bl sub_80409C8
|
||||
bl GetMonSpritePalStructFromOtIdPersonality
|
||||
adds r4, r0, 0
|
||||
bl LoadCompressedObjectPalette
|
||||
adds r0, r6, 0
|
||||
@@ -1601,7 +1601,7 @@ _080C2D42:
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
movs r1, 0x2
|
||||
bl GetNationalPokedexFlag
|
||||
bl GetSetPokedexFlag
|
||||
adds r5, 0x40
|
||||
subs r4, 0x1
|
||||
cmp r4, 0
|
||||
|
||||
+9
-2
@@ -1,4 +1,6 @@
|
||||
.include "constants/gba_constants.inc"
|
||||
.include "constants/misc_constants.inc"
|
||||
.include "constants/version.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
@@ -47,10 +49,15 @@ GPIOPortReadEnable: @ 80000C8
|
||||
.4byte 0xFFFFFFFF
|
||||
.4byte 0xFFFFFFFF
|
||||
.4byte 0xFFFFFFFF
|
||||
.4byte 2
|
||||
.4byte 5
|
||||
.4byte GAME_VERSION
|
||||
.4byte GAME_LANGUAGE
|
||||
.ifdef SAPPHIRE
|
||||
.ascii "pokemon sapphire version"
|
||||
.space 8
|
||||
.else
|
||||
.ascii "pokemon ruby version"
|
||||
.space 12
|
||||
.endif
|
||||
.4byte gMonFrontPicTable
|
||||
.4byte gMonBackPicTable
|
||||
.4byte gMonPaletteTable
|
||||
|
||||
@@ -6,445 +6,6 @@
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_80FC7A0
|
||||
sub_80FC7A0: @ 80FC7A0
|
||||
push {lr}
|
||||
ldr r2, _080FC7E8 @ =gUnknown_03005DEC
|
||||
ldr r1, [r0, 0x4]
|
||||
str r1, [r2]
|
||||
ldr r2, _080FC7EC @ =gUnknown_03005E00
|
||||
ldrb r1, [r0, 0x1F]
|
||||
strb r1, [r2]
|
||||
ldr r2, _080FC7F0 @ =gUnknown_03005DE8
|
||||
ldrb r1, [r0, 0x19]
|
||||
strb r1, [r2]
|
||||
ldr r2, _080FC7F4 @ =gUnknown_03005DFC
|
||||
ldrb r1, [r0, 0x1A]
|
||||
strb r1, [r2]
|
||||
ldr r2, _080FC7F8 @ =gUnknown_03005DF8
|
||||
ldrb r1, [r0, 0x1B]
|
||||
strb r1, [r2]
|
||||
ldr r2, _080FC7FC @ =gUnknown_03005DF0
|
||||
ldrb r1, [r0, 0x1C]
|
||||
strb r1, [r2]
|
||||
ldr r2, _080FC800 @ =gUnknown_03005E04
|
||||
ldrb r1, [r0, 0x1D]
|
||||
strb r1, [r2]
|
||||
ldr r2, _080FC804 @ =gUnknown_03005DF4
|
||||
ldrb r1, [r0, 0x1E]
|
||||
strb r1, [r2]
|
||||
ldrb r0, [r0]
|
||||
subs r0, 0x2
|
||||
cmp r0, 0x22
|
||||
bls _080FC7DC
|
||||
b _080FC928
|
||||
_080FC7DC:
|
||||
lsls r0, 2
|
||||
ldr r1, _080FC808 @ =_080FC80C
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
mov pc, r0
|
||||
.align 2, 0
|
||||
_080FC7E8: .4byte gUnknown_03005DEC
|
||||
_080FC7EC: .4byte gUnknown_03005E00
|
||||
_080FC7F0: .4byte gUnknown_03005DE8
|
||||
_080FC7F4: .4byte gUnknown_03005DFC
|
||||
_080FC7F8: .4byte gUnknown_03005DF8
|
||||
_080FC7FC: .4byte gUnknown_03005DF0
|
||||
_080FC800: .4byte gUnknown_03005E04
|
||||
_080FC804: .4byte gUnknown_03005DF4
|
||||
_080FC808: .4byte _080FC80C
|
||||
.align 2, 0
|
||||
_080FC80C:
|
||||
.4byte _080FC898
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC8F8
|
||||
.4byte _080FC928
|
||||
.4byte _080FC89E
|
||||
.4byte _080FC8A4
|
||||
.4byte _080FC8B8
|
||||
.4byte _080FC8CA
|
||||
.4byte _080FC928
|
||||
.4byte _080FC8E0
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC8E6
|
||||
.4byte _080FC8C4
|
||||
.4byte _080FC8EC
|
||||
.4byte _080FC8F2
|
||||
.4byte _080FC928
|
||||
.4byte _080FC928
|
||||
.4byte _080FC904
|
||||
_080FC898:
|
||||
bl sub_80FCAA4
|
||||
b _080FC928
|
||||
_080FC89E:
|
||||
bl sub_80FCB5C
|
||||
b _080FC928
|
||||
_080FC8A4:
|
||||
bl sub_80FCD54
|
||||
ldr r0, _080FC8B4 @ =gUnknown_03005E00
|
||||
ldrb r0, [r0]
|
||||
bl sub_80FCC18
|
||||
b _080FC928
|
||||
.align 2, 0
|
||||
_080FC8B4: .4byte gUnknown_03005E00
|
||||
_080FC8B8:
|
||||
bl sub_80FCD54
|
||||
bl sub_80FCEA4
|
||||
bl sub_80FCCBC
|
||||
_080FC8C4:
|
||||
bl sub_80FCEA4
|
||||
b _080FC928
|
||||
_080FC8CA:
|
||||
bl sub_80FCD54
|
||||
bl sub_80FD06C
|
||||
bl sub_80FD06C
|
||||
bl sub_80FD114
|
||||
bl sub_80FCCBC
|
||||
b _080FC928
|
||||
_080FC8E0:
|
||||
bl sub_80FCF3C
|
||||
b _080FC928
|
||||
_080FC8E6:
|
||||
bl sub_80FCD54
|
||||
b _080FC928
|
||||
_080FC8EC:
|
||||
bl sub_80FD06C
|
||||
b _080FC928
|
||||
_080FC8F2:
|
||||
bl sub_80FD114
|
||||
b _080FC928
|
||||
_080FC8F8:
|
||||
bl sub_80FCAC4
|
||||
movs r0, 0x3
|
||||
bl sub_80FC92C
|
||||
b _080FC928
|
||||
_080FC904:
|
||||
bl sub_80FCD54
|
||||
bl sub_80FD06C
|
||||
bl sub_80FD114
|
||||
bl sub_80FCCBC
|
||||
bl sub_80FCB5C
|
||||
bl sub_80FCB5C
|
||||
movs r0, 0x2
|
||||
bl sub_80FC92C
|
||||
movs r0, 0x4
|
||||
bl sub_80FC9E4
|
||||
_080FC928:
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_80FC7A0
|
||||
|
||||
thumb_func_start sub_80FC92C
|
||||
sub_80FC92C: @ 80FC92C
|
||||
push {r4-r7,lr}
|
||||
mov r7, r10
|
||||
mov r6, r9
|
||||
mov r5, r8
|
||||
push {r5-r7}
|
||||
lsls r0, 24
|
||||
lsrs r7, r0, 24
|
||||
movs r2, 0
|
||||
ldr r0, _080FC9CC @ =gUnknown_03005DF0
|
||||
mov r8, r0
|
||||
ldrb r0, [r0]
|
||||
cmp r2, r0
|
||||
bcs _080FC9BE
|
||||
ldr r1, _080FC9D0 @ =gUnknown_03005DF8
|
||||
mov r12, r1
|
||||
ldr r3, _080FC9D4 @ =gUnknown_03005E04
|
||||
mov r10, r3
|
||||
ldr r0, _080FC9D8 @ =gUnknown_03005DE8
|
||||
mov r9, r0
|
||||
_080FC952:
|
||||
ldr r1, _080FC9DC @ =gUnknown_03005DFC
|
||||
ldrb r0, [r1]
|
||||
adds r0, r2
|
||||
mov r3, r10
|
||||
ldrb r1, [r3]
|
||||
muls r0, r1
|
||||
lsls r0, 1
|
||||
ldr r3, _080FC9E0 @ =gUnknown_03005DEC
|
||||
ldr r1, [r3]
|
||||
adds r1, r0
|
||||
mov r3, r9
|
||||
ldrb r0, [r3]
|
||||
lsls r0, 1
|
||||
adds r3, r1, r0
|
||||
movs r4, 0
|
||||
adds r5, r2, 0x1
|
||||
mov r0, r12
|
||||
ldrb r0, [r0]
|
||||
cmp r4, r0
|
||||
bcs _080FC9B2
|
||||
movs r6, 0x80
|
||||
lsls r6, 8
|
||||
_080FC97E:
|
||||
ldrh r1, [r3]
|
||||
adds r0, r6, 0
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
bne _080FC9A2
|
||||
movs r0, 0x1F
|
||||
ands r0, r1
|
||||
adds r0, r7
|
||||
lsls r0, 24
|
||||
lsrs r2, r0, 24
|
||||
cmp r2, 0x1F
|
||||
bls _080FC998
|
||||
movs r2, 0x1F
|
||||
_080FC998:
|
||||
lsls r0, r2, 10
|
||||
lsls r1, r2, 5
|
||||
orrs r0, r1
|
||||
orrs r0, r2
|
||||
strh r0, [r3]
|
||||
_080FC9A2:
|
||||
adds r0, r4, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
adds r3, 0x2
|
||||
mov r1, r12
|
||||
ldrb r1, [r1]
|
||||
cmp r4, r1
|
||||
bcc _080FC97E
|
||||
_080FC9B2:
|
||||
lsls r0, r5, 24
|
||||
lsrs r2, r0, 24
|
||||
mov r3, r8
|
||||
ldrb r3, [r3]
|
||||
cmp r2, r3
|
||||
bcc _080FC952
|
||||
_080FC9BE:
|
||||
pop {r3-r5}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
mov r10, r5
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080FC9CC: .4byte gUnknown_03005DF0
|
||||
_080FC9D0: .4byte gUnknown_03005DF8
|
||||
_080FC9D4: .4byte gUnknown_03005E04
|
||||
_080FC9D8: .4byte gUnknown_03005DE8
|
||||
_080FC9DC: .4byte gUnknown_03005DFC
|
||||
_080FC9E0: .4byte gUnknown_03005DEC
|
||||
thumb_func_end sub_80FC92C
|
||||
|
||||
thumb_func_start sub_80FC9E4
|
||||
sub_80FC9E4: @ 80FC9E4
|
||||
push {r4-r7,lr}
|
||||
mov r7, r10
|
||||
mov r6, r9
|
||||
mov r5, r8
|
||||
push {r5-r7}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
mov r8, r0
|
||||
movs r2, 0
|
||||
ldr r0, _080FCA8C @ =gUnknown_03005DF0
|
||||
ldrb r0, [r0]
|
||||
cmp r2, r0
|
||||
bcs _080FCA7C
|
||||
ldr r1, _080FCA90 @ =gUnknown_03005DF8
|
||||
mov r10, r1
|
||||
_080FCA02:
|
||||
ldr r3, _080FCA94 @ =gUnknown_03005DFC
|
||||
ldrb r0, [r3]
|
||||
adds r0, r2
|
||||
ldr r3, _080FCA98 @ =gUnknown_03005E04
|
||||
ldrb r1, [r3]
|
||||
muls r0, r1
|
||||
lsls r0, 1
|
||||
ldr r3, _080FCA9C @ =gUnknown_03005DEC
|
||||
ldr r1, [r3]
|
||||
adds r1, r0
|
||||
ldr r3, _080FCAA0 @ =gUnknown_03005DE8
|
||||
ldrb r0, [r3]
|
||||
lsls r0, 1
|
||||
adds r3, r1, r0
|
||||
movs r5, 0
|
||||
adds r7, r2, 0x1
|
||||
mov r0, r10
|
||||
ldrb r0, [r0]
|
||||
cmp r5, r0
|
||||
bcs _080FCA70
|
||||
movs r1, 0x80
|
||||
lsls r1, 8
|
||||
mov r9, r1
|
||||
movs r0, 0x1F
|
||||
mov r12, r0
|
||||
mov r1, r8
|
||||
subs r6, r0, r1
|
||||
_080FCA38:
|
||||
ldrh r1, [r3]
|
||||
mov r0, r9
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
bne _080FCA60
|
||||
movs r4, 0x1F
|
||||
mov r2, r12
|
||||
ands r2, r1
|
||||
cmp r2, r6
|
||||
ble _080FCA56
|
||||
mov r1, r8
|
||||
lsrs r0, r1, 1
|
||||
subs r0, r4, r0
|
||||
lsls r0, 24
|
||||
lsrs r2, r0, 24
|
||||
_080FCA56:
|
||||
lsls r0, r2, 10
|
||||
lsls r1, r2, 5
|
||||
orrs r0, r1
|
||||
orrs r0, r2
|
||||
strh r0, [r3]
|
||||
_080FCA60:
|
||||
adds r0, r5, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
adds r3, 0x2
|
||||
mov r0, r10
|
||||
ldrb r0, [r0]
|
||||
cmp r5, r0
|
||||
bcc _080FCA38
|
||||
_080FCA70:
|
||||
lsls r0, r7, 24
|
||||
lsrs r2, r0, 24
|
||||
ldr r1, _080FCA8C @ =gUnknown_03005DF0
|
||||
ldrb r1, [r1]
|
||||
cmp r2, r1
|
||||
bcc _080FCA02
|
||||
_080FCA7C:
|
||||
pop {r3-r5}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
mov r10, r5
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080FCA8C: .4byte gUnknown_03005DF0
|
||||
_080FCA90: .4byte gUnknown_03005DF8
|
||||
_080FCA94: .4byte gUnknown_03005DFC
|
||||
_080FCA98: .4byte gUnknown_03005E04
|
||||
_080FCA9C: .4byte gUnknown_03005DEC
|
||||
_080FCAA0: .4byte gUnknown_03005DE8
|
||||
thumb_func_end sub_80FC9E4
|
||||
|
||||
thumb_func_start sub_80FCAA4
|
||||
sub_80FCAA4: @ 80FCAA4
|
||||
push {r4,r5,lr}
|
||||
movs r4, 0
|
||||
ldr r5, _080FCAC0 @ =0x00000c7f
|
||||
_080FCAAA:
|
||||
lsls r0, r4, 16
|
||||
lsrs r0, 16
|
||||
bl sub_80FD1C8
|
||||
adds r4, 0x1
|
||||
cmp r4, r5
|
||||
bls _080FCAAA
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080FCAC0: .4byte 0x00000c7f
|
||||
thumb_func_end sub_80FCAA4
|
||||
|
||||
thumb_func_start sub_80FCAC4
|
||||
sub_80FCAC4: @ 80FCAC4
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
sub sp, 0x4
|
||||
movs r2, 0
|
||||
ldr r0, _080FCB44 @ =gUnknown_03005DF0
|
||||
ldrb r0, [r0]
|
||||
cmp r2, r0
|
||||
bcs _080FCB36
|
||||
ldr r0, _080FCB48 @ =gUnknown_03005DEC
|
||||
mov r8, r0
|
||||
ldr r3, _080FCB4C @ =gUnknown_03005DF8
|
||||
_080FCADC:
|
||||
ldr r0, _080FCB50 @ =gUnknown_03005DFC
|
||||
ldrb r1, [r0]
|
||||
adds r1, r2
|
||||
ldr r0, _080FCB54 @ =gUnknown_03005E04
|
||||
ldrb r0, [r0]
|
||||
muls r0, r1
|
||||
lsls r0, 1
|
||||
mov r4, r8
|
||||
ldr r1, [r4]
|
||||
adds r1, r0
|
||||
ldr r0, _080FCB58 @ =gUnknown_03005DE8
|
||||
ldrb r0, [r0]
|
||||
lsls r0, 1
|
||||
adds r4, r1, r0
|
||||
movs r5, 0
|
||||
adds r6, r2, 0x1
|
||||
ldrb r0, [r3]
|
||||
cmp r5, r0
|
||||
bcs _080FCB2A
|
||||
movs r0, 0x80
|
||||
lsls r0, 8
|
||||
adds r7, r0, 0
|
||||
_080FCB08:
|
||||
ldrh r0, [r4]
|
||||
ands r0, r7
|
||||
cmp r0, 0
|
||||
bne _080FCB1C
|
||||
adds r0, r4, 0
|
||||
str r3, [sp]
|
||||
bl sub_80FD39C
|
||||
strh r0, [r4]
|
||||
ldr r3, [sp]
|
||||
_080FCB1C:
|
||||
adds r0, r5, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
adds r4, 0x2
|
||||
ldrb r0, [r3]
|
||||
cmp r5, r0
|
||||
bcc _080FCB08
|
||||
_080FCB2A:
|
||||
lsls r0, r6, 24
|
||||
lsrs r2, r0, 24
|
||||
ldr r0, _080FCB44 @ =gUnknown_03005DF0
|
||||
ldrb r0, [r0]
|
||||
cmp r2, r0
|
||||
bcc _080FCADC
|
||||
_080FCB36:
|
||||
add sp, 0x4
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080FCB44: .4byte gUnknown_03005DF0
|
||||
_080FCB48: .4byte gUnknown_03005DEC
|
||||
_080FCB4C: .4byte gUnknown_03005DF8
|
||||
_080FCB50: .4byte gUnknown_03005DFC
|
||||
_080FCB54: .4byte gUnknown_03005E04
|
||||
_080FCB58: .4byte gUnknown_03005DE8
|
||||
thumb_func_end sub_80FCAC4
|
||||
|
||||
thumb_func_start sub_80FCB5C
|
||||
sub_80FCB5C: @ 80FCB5C
|
||||
|
||||
-2399
File diff suppressed because it is too large
Load Diff
+1
-102
@@ -9975,7 +9975,7 @@ _080EAE50:
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
movs r1, 0
|
||||
bl GetNationalPokedexFlag
|
||||
bl GetSetPokedexFlag
|
||||
b _080EAE7C
|
||||
_080EAE62:
|
||||
ldr r0, _080EAE74 @ =gUnknown_083DB694
|
||||
@@ -10730,105 +10730,4 @@ _080EB3F6:
|
||||
bx r1
|
||||
thumb_func_end sub_80EB37C
|
||||
|
||||
thumb_func_start sub_80EB3FC
|
||||
sub_80EB3FC: @ 80EB3FC
|
||||
push {r4-r7,lr}
|
||||
adds r5, r0, 0
|
||||
lsls r6, r1, 16
|
||||
lsrs r4, r6, 16
|
||||
adds r7, r4, 0
|
||||
adds r0, r4, 0
|
||||
bl sub_80EB37C
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080EB420
|
||||
ldr r1, _080EB41C @ =gOtherText_ThreeQuestions
|
||||
adds r0, r5, 0
|
||||
bl StringCopy
|
||||
b _080EB4A6
|
||||
.align 2, 0
|
||||
_080EB41C: .4byte gOtherText_ThreeQuestions
|
||||
_080EB420:
|
||||
ldr r0, _080EB43C @ =0x0000ffff
|
||||
cmp r4, r0
|
||||
beq _080EB4A0
|
||||
lsrs r1, r6, 25
|
||||
ldr r2, _080EB440 @ =0x000001ff
|
||||
ands r2, r7
|
||||
cmp r1, 0x13
|
||||
bgt _080EB444
|
||||
cmp r1, 0x12
|
||||
bge _080EB458
|
||||
cmp r1, 0
|
||||
beq _080EB448
|
||||
b _080EB468
|
||||
.align 2, 0
|
||||
_080EB43C: .4byte 0x0000ffff
|
||||
_080EB440: .4byte 0x000001ff
|
||||
_080EB444:
|
||||
cmp r1, 0x15
|
||||
bne _080EB468
|
||||
_080EB448:
|
||||
movs r0, 0xB
|
||||
adds r1, r2, 0
|
||||
muls r1, r0
|
||||
ldr r0, _080EB454 @ =gSpeciesNames
|
||||
adds r1, r0
|
||||
b _080EB498
|
||||
.align 2, 0
|
||||
_080EB454: .4byte gSpeciesNames
|
||||
_080EB458:
|
||||
movs r0, 0xD
|
||||
adds r1, r2, 0
|
||||
muls r1, r0
|
||||
ldr r0, _080EB464 @ =gMoveNames
|
||||
adds r1, r0
|
||||
b _080EB498
|
||||
.align 2, 0
|
||||
_080EB464: .4byte gMoveNames
|
||||
_080EB468:
|
||||
ldr r0, _080EB4AC @ =gEasyChatGroupWords
|
||||
lsls r1, 2
|
||||
adds r1, r0
|
||||
ldr r1, [r1]
|
||||
subs r0, r2, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r2, r0, 16
|
||||
ldr r0, _080EB4B0 @ =0x0000ffff
|
||||
cmp r2, r0
|
||||
beq _080EB498
|
||||
adds r3, r0, 0
|
||||
_080EB47E:
|
||||
ldrb r0, [r1]
|
||||
adds r1, 0x1
|
||||
subs r2, 0x1
|
||||
cmp r0, 0xFF
|
||||
beq _080EB490
|
||||
_080EB488:
|
||||
ldrb r0, [r1]
|
||||
adds r1, 0x1
|
||||
cmp r0, 0xFF
|
||||
bne _080EB488
|
||||
_080EB490:
|
||||
lsls r0, r2, 16
|
||||
lsrs r2, r0, 16
|
||||
cmp r2, r3
|
||||
bne _080EB47E
|
||||
_080EB498:
|
||||
adds r0, r5, 0
|
||||
bl StringCopy
|
||||
adds r5, r0, 0
|
||||
_080EB4A0:
|
||||
movs r0, 0xFF
|
||||
strb r0, [r5]
|
||||
adds r0, r5, 0
|
||||
_080EB4A6:
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_080EB4AC: .4byte gEasyChatGroupWords
|
||||
_080EB4B0: .4byte 0x0000ffff
|
||||
thumb_func_end sub_80EB3FC
|
||||
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
|
||||
-1630
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,628 +0,0 @@
|
||||
.include "constants/gba_constants.inc"
|
||||
.include "constants/species_constants.inc"
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
.ifndef NONMATCHING
|
||||
thumb_func_start sub_805F3EC
|
||||
sub_805F3EC: @ 805F3EC
|
||||
movs r0, 0
|
||||
bx lr
|
||||
thumb_func_end sub_805F3EC
|
||||
|
||||
thumb_func_start sub_805F3F0
|
||||
sub_805F3F0: @ 805F3F0
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
adds r5, r1, 0
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
ldr r1, _0805F434 @ =gUnknown_0836DC09
|
||||
ldrb r0, [r4, 0x6]
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
adds r1, r4, 0
|
||||
adds r1, 0x21
|
||||
ldrb r1, [r1]
|
||||
bl state_to_direction
|
||||
bl GetFaceDirectionAnimId
|
||||
adds r2, r0, 0
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl FieldObjectSetRegularAnim
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x2
|
||||
orrs r0, r1
|
||||
strb r0, [r4]
|
||||
movs r0, 0x2
|
||||
strh r0, [r5, 0x30]
|
||||
movs r0, 0x1
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0805F434: .4byte gUnknown_0836DC09
|
||||
thumb_func_end sub_805F3F0
|
||||
|
||||
thumb_func_start sub_805F438
|
||||
sub_805F438: @ 805F438
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
sub sp, 0x4
|
||||
adds r4, r0, 0
|
||||
adds r7, r1, 0
|
||||
mov r8, r3
|
||||
lsls r2, 24
|
||||
lsrs r6, r2, 24
|
||||
ldr r1, _0805F4EC @ =gUnknown_0836DC09
|
||||
ldrb r0, [r4, 0x6]
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
adds r1, r4, 0
|
||||
adds r1, 0x21
|
||||
ldrb r1, [r1]
|
||||
adds r2, r6, 0
|
||||
bl state_to_direction
|
||||
adds r6, r0, 0
|
||||
mov r5, sp
|
||||
adds r5, 0x2
|
||||
adds r0, r4, 0
|
||||
adds r1, r6, 0
|
||||
mov r2, sp
|
||||
adds r3, r5, 0
|
||||
bl FieldObjectMoveDestCoords
|
||||
adds r0, r6, 0
|
||||
bl GetGoSpeed0AnimId
|
||||
adds r2, r0, 0
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
adds r0, r4, 0
|
||||
adds r1, r7, 0
|
||||
bl FieldObjectSetRegularAnim
|
||||
mov r0, sp
|
||||
movs r2, 0
|
||||
ldrsh r1, [r0, r2]
|
||||
movs r0, 0
|
||||
ldrsh r2, [r5, r0]
|
||||
adds r0, r4, 0
|
||||
adds r3, r6, 0
|
||||
bl npc_block_way
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0805F4BE
|
||||
mov r1, r8
|
||||
cmp r1, 0
|
||||
beq _0805F4D2
|
||||
mov r0, sp
|
||||
movs r2, 0
|
||||
ldrsh r0, [r0, r2]
|
||||
movs r2, 0
|
||||
ldrsh r1, [r5, r2]
|
||||
bl MapGridGetMetatileBehaviorAt
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl _call_via_r8
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0805F4D2
|
||||
_0805F4BE:
|
||||
adds r0, r6, 0
|
||||
bl GetFaceDirectionAnimId
|
||||
adds r2, r0, 0
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
adds r0, r4, 0
|
||||
adds r1, r7, 0
|
||||
bl FieldObjectSetRegularAnim
|
||||
_0805F4D2:
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x2
|
||||
orrs r0, r1
|
||||
strb r0, [r4]
|
||||
movs r0, 0x2
|
||||
strh r0, [r7, 0x30]
|
||||
movs r0, 0x1
|
||||
add sp, 0x4
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0805F4EC: .4byte gUnknown_0836DC09
|
||||
thumb_func_end sub_805F438
|
||||
.endif
|
||||
|
||||
thumb_func_start sub_805F4F0
|
||||
sub_805F4F0: @ 805F4F0
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
sub sp, 0x4
|
||||
adds r4, r0, 0
|
||||
adds r7, r1, 0
|
||||
mov r8, r3
|
||||
lsls r2, 24
|
||||
lsrs r6, r2, 24
|
||||
ldr r1, _0805F5A4 @ =gUnknown_0836DC09
|
||||
ldrb r0, [r4, 0x6]
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
adds r1, r4, 0
|
||||
adds r1, 0x21
|
||||
ldrb r1, [r1]
|
||||
adds r2, r6, 0
|
||||
bl state_to_direction
|
||||
adds r6, r0, 0
|
||||
mov r5, sp
|
||||
adds r5, 0x2
|
||||
adds r0, r4, 0
|
||||
adds r1, r6, 0
|
||||
mov r2, sp
|
||||
adds r3, r5, 0
|
||||
bl FieldObjectMoveDestCoords
|
||||
adds r0, r6, 0
|
||||
bl sub_8060744
|
||||
adds r2, r0, 0
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
adds r0, r4, 0
|
||||
adds r1, r7, 0
|
||||
bl FieldObjectSetRegularAnim
|
||||
mov r0, sp
|
||||
movs r2, 0
|
||||
ldrsh r1, [r0, r2]
|
||||
movs r0, 0
|
||||
ldrsh r2, [r5, r0]
|
||||
adds r0, r4, 0
|
||||
adds r3, r6, 0
|
||||
bl npc_block_way
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0805F576
|
||||
mov r1, r8
|
||||
cmp r1, 0
|
||||
beq _0805F58A
|
||||
mov r0, sp
|
||||
movs r2, 0
|
||||
ldrsh r0, [r0, r2]
|
||||
movs r2, 0
|
||||
ldrsh r1, [r5, r2]
|
||||
bl MapGridGetMetatileBehaviorAt
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl _call_via_r8
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0805F58A
|
||||
_0805F576:
|
||||
adds r0, r6, 0
|
||||
bl GetFaceDirectionAnimId
|
||||
adds r2, r0, 0
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
adds r0, r4, 0
|
||||
adds r1, r7, 0
|
||||
bl FieldObjectSetRegularAnim
|
||||
_0805F58A:
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x2
|
||||
orrs r0, r1
|
||||
strb r0, [r4]
|
||||
movs r0, 0x2
|
||||
strh r0, [r7, 0x30]
|
||||
movs r0, 0x1
|
||||
add sp, 0x4
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0805F5A4: .4byte gUnknown_0836DC09
|
||||
thumb_func_end sub_805F4F0
|
||||
|
||||
thumb_func_start sub_805F5A8
|
||||
sub_805F5A8: @ 805F5A8
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
sub sp, 0x4
|
||||
adds r4, r0, 0
|
||||
adds r7, r1, 0
|
||||
mov r8, r3
|
||||
lsls r2, 24
|
||||
lsrs r6, r2, 24
|
||||
ldr r1, _0805F65C @ =gUnknown_0836DC09
|
||||
ldrb r0, [r4, 0x6]
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
adds r1, r4, 0
|
||||
adds r1, 0x21
|
||||
ldrb r1, [r1]
|
||||
adds r2, r6, 0
|
||||
bl state_to_direction
|
||||
adds r6, r0, 0
|
||||
mov r5, sp
|
||||
adds r5, 0x2
|
||||
adds r0, r4, 0
|
||||
adds r1, r6, 0
|
||||
mov r2, sp
|
||||
adds r3, r5, 0
|
||||
bl FieldObjectMoveDestCoords
|
||||
adds r0, r6, 0
|
||||
bl sub_806079C
|
||||
adds r2, r0, 0
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
adds r0, r4, 0
|
||||
adds r1, r7, 0
|
||||
bl FieldObjectSetRegularAnim
|
||||
mov r0, sp
|
||||
movs r2, 0
|
||||
ldrsh r1, [r0, r2]
|
||||
movs r0, 0
|
||||
ldrsh r2, [r5, r0]
|
||||
adds r0, r4, 0
|
||||
adds r3, r6, 0
|
||||
bl npc_block_way
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0805F62E
|
||||
mov r1, r8
|
||||
cmp r1, 0
|
||||
beq _0805F642
|
||||
mov r0, sp
|
||||
movs r2, 0
|
||||
ldrsh r0, [r0, r2]
|
||||
movs r2, 0
|
||||
ldrsh r1, [r5, r2]
|
||||
bl MapGridGetMetatileBehaviorAt
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl _call_via_r8
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0805F642
|
||||
_0805F62E:
|
||||
adds r0, r6, 0
|
||||
bl GetFaceDirectionAnimId
|
||||
adds r2, r0, 0
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
adds r0, r4, 0
|
||||
adds r1, r7, 0
|
||||
bl FieldObjectSetRegularAnim
|
||||
_0805F642:
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x2
|
||||
orrs r0, r1
|
||||
strb r0, [r4]
|
||||
movs r0, 0x2
|
||||
strh r0, [r7, 0x30]
|
||||
movs r0, 0x1
|
||||
add sp, 0x4
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0805F65C: .4byte gUnknown_0836DC09
|
||||
thumb_func_end sub_805F5A8
|
||||
|
||||
thumb_func_start sub_805F660
|
||||
sub_805F660: @ 805F660
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
sub sp, 0x4
|
||||
adds r4, r0, 0
|
||||
adds r7, r1, 0
|
||||
mov r8, r3
|
||||
lsls r2, 24
|
||||
lsrs r6, r2, 24
|
||||
ldr r1, _0805F714 @ =gUnknown_0836DC09
|
||||
ldrb r0, [r4, 0x6]
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
adds r1, r4, 0
|
||||
adds r1, 0x21
|
||||
ldrb r1, [r1]
|
||||
adds r2, r6, 0
|
||||
bl state_to_direction
|
||||
adds r6, r0, 0
|
||||
mov r5, sp
|
||||
adds r5, 0x2
|
||||
adds r0, r4, 0
|
||||
adds r1, r6, 0
|
||||
mov r2, sp
|
||||
adds r3, r5, 0
|
||||
bl FieldObjectMoveDestCoords
|
||||
adds r0, r6, 0
|
||||
bl sub_80607C8
|
||||
adds r2, r0, 0
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
adds r0, r4, 0
|
||||
adds r1, r7, 0
|
||||
bl FieldObjectSetRegularAnim
|
||||
mov r0, sp
|
||||
movs r2, 0
|
||||
ldrsh r1, [r0, r2]
|
||||
movs r0, 0
|
||||
ldrsh r2, [r5, r0]
|
||||
adds r0, r4, 0
|
||||
adds r3, r6, 0
|
||||
bl npc_block_way
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0805F6E6
|
||||
mov r1, r8
|
||||
cmp r1, 0
|
||||
beq _0805F6FA
|
||||
mov r0, sp
|
||||
movs r2, 0
|
||||
ldrsh r0, [r0, r2]
|
||||
movs r2, 0
|
||||
ldrsh r1, [r5, r2]
|
||||
bl MapGridGetMetatileBehaviorAt
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl _call_via_r8
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0805F6FA
|
||||
_0805F6E6:
|
||||
adds r0, r6, 0
|
||||
bl GetFaceDirectionAnimId
|
||||
adds r2, r0, 0
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
adds r0, r4, 0
|
||||
adds r1, r7, 0
|
||||
bl FieldObjectSetRegularAnim
|
||||
_0805F6FA:
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x2
|
||||
orrs r0, r1
|
||||
strb r0, [r4]
|
||||
movs r0, 0x2
|
||||
strh r0, [r7, 0x30]
|
||||
movs r0, 0x1
|
||||
add sp, 0x4
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0805F714: .4byte gUnknown_0836DC09
|
||||
thumb_func_end sub_805F660
|
||||
|
||||
thumb_func_start cph_IM_DIFFERENT
|
||||
cph_IM_DIFFERENT: @ 805F718
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
adds r5, r1, 0
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
ldr r1, _0805F75C @ =gUnknown_0836DC09
|
||||
ldrb r0, [r4, 0x6]
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
adds r1, r4, 0
|
||||
adds r1, 0x21
|
||||
ldrb r1, [r1]
|
||||
bl state_to_direction
|
||||
bl sub_806084C
|
||||
adds r2, r0, 0
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
bl FieldObjectSetRegularAnim
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x2
|
||||
orrs r0, r1
|
||||
strb r0, [r4]
|
||||
movs r0, 0x2
|
||||
strh r0, [r5, 0x30]
|
||||
movs r0, 0x1
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0805F75C: .4byte gUnknown_0836DC09
|
||||
thumb_func_end cph_IM_DIFFERENT
|
||||
|
||||
thumb_func_start sub_805F760
|
||||
sub_805F760: @ 805F760
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
sub sp, 0x4
|
||||
adds r4, r0, 0
|
||||
adds r7, r1, 0
|
||||
mov r8, r3
|
||||
lsls r2, 24
|
||||
lsrs r6, r2, 24
|
||||
ldr r1, _0805F814 @ =gUnknown_0836DC09
|
||||
ldrb r0, [r4, 0x6]
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
adds r1, r4, 0
|
||||
adds r1, 0x21
|
||||
ldrb r1, [r1]
|
||||
adds r2, r6, 0
|
||||
bl state_to_direction
|
||||
adds r6, r0, 0
|
||||
mov r5, sp
|
||||
adds r5, 0x2
|
||||
adds r0, r4, 0
|
||||
adds r1, r6, 0
|
||||
mov r2, sp
|
||||
adds r3, r5, 0
|
||||
bl FieldObjectMoveDestCoords
|
||||
adds r0, r6, 0
|
||||
bl sub_80608A4
|
||||
adds r2, r0, 0
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
adds r0, r4, 0
|
||||
adds r1, r7, 0
|
||||
bl FieldObjectSetRegularAnim
|
||||
mov r0, sp
|
||||
movs r2, 0
|
||||
ldrsh r1, [r0, r2]
|
||||
movs r0, 0
|
||||
ldrsh r2, [r5, r0]
|
||||
adds r0, r4, 0
|
||||
adds r3, r6, 0
|
||||
bl npc_block_way
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0805F7E6
|
||||
mov r1, r8
|
||||
cmp r1, 0
|
||||
beq _0805F7FA
|
||||
mov r0, sp
|
||||
movs r2, 0
|
||||
ldrsh r0, [r0, r2]
|
||||
movs r2, 0
|
||||
ldrsh r1, [r5, r2]
|
||||
bl MapGridGetMetatileBehaviorAt
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl _call_via_r8
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0805F7FA
|
||||
_0805F7E6:
|
||||
adds r0, r6, 0
|
||||
bl GetFaceDirectionAnimId
|
||||
adds r2, r0, 0
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
adds r0, r4, 0
|
||||
adds r1, r7, 0
|
||||
bl FieldObjectSetRegularAnim
|
||||
_0805F7FA:
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x2
|
||||
orrs r0, r1
|
||||
strb r0, [r4]
|
||||
movs r0, 0x2
|
||||
strh r0, [r7, 0x30]
|
||||
movs r0, 0x1
|
||||
add sp, 0x4
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0805F814: .4byte gUnknown_0836DC09
|
||||
thumb_func_end sub_805F760
|
||||
|
||||
thumb_func_start oac_hopping
|
||||
oac_hopping: @ 805F818
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
sub sp, 0x8
|
||||
adds r4, r0, 0
|
||||
adds r7, r1, 0
|
||||
mov r8, r3
|
||||
lsls r2, 24
|
||||
lsrs r6, r2, 24
|
||||
ldr r1, _0805F8DC @ =gUnknown_0836DC09
|
||||
ldrb r0, [r4, 0x6]
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
adds r1, r4, 0
|
||||
adds r1, 0x21
|
||||
ldrb r1, [r1]
|
||||
adds r2, r6, 0
|
||||
bl state_to_direction
|
||||
adds r6, r0, 0
|
||||
ldrh r1, [r4, 0x10]
|
||||
add r0, sp, 0x4
|
||||
strh r1, [r0]
|
||||
ldrh r0, [r4, 0x12]
|
||||
mov r5, sp
|
||||
adds r5, 0x6
|
||||
strh r0, [r5]
|
||||
movs r0, 0x2
|
||||
str r0, [sp]
|
||||
adds r0, r6, 0
|
||||
add r1, sp, 0x4
|
||||
adds r2, r5, 0
|
||||
movs r3, 0x2
|
||||
bl sub_8060320
|
||||
adds r0, r6, 0
|
||||
bl GetJumpLedgeAnimId
|
||||
adds r2, r0, 0
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
adds r0, r4, 0
|
||||
adds r1, r7, 0
|
||||
bl FieldObjectSetRegularAnim
|
||||
add r0, sp, 0x4
|
||||
movs r2, 0
|
||||
ldrsh r1, [r0, r2]
|
||||
movs r0, 0
|
||||
ldrsh r2, [r5, r0]
|
||||
adds r0, r4, 0
|
||||
adds r3, r6, 0
|
||||
bl npc_block_way
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0805F8AC
|
||||
mov r1, r8
|
||||
cmp r1, 0
|
||||
beq _0805F8C0
|
||||
add r0, sp, 0x4
|
||||
movs r2, 0
|
||||
ldrsh r0, [r0, r2]
|
||||
movs r2, 0
|
||||
ldrsh r1, [r5, r2]
|
||||
bl MapGridGetMetatileBehaviorAt
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl _call_via_r8
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0805F8C0
|
||||
_0805F8AC:
|
||||
adds r0, r6, 0
|
||||
bl GetFaceDirectionAnimId
|
||||
adds r2, r0, 0
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
adds r0, r4, 0
|
||||
adds r1, r7, 0
|
||||
bl FieldObjectSetRegularAnim
|
||||
_0805F8C0:
|
||||
ldrb r0, [r4]
|
||||
movs r1, 0x2
|
||||
orrs r0, r1
|
||||
strb r0, [r4]
|
||||
movs r0, 0x2
|
||||
strh r0, [r7, 0x30]
|
||||
movs r0, 0x1
|
||||
add sp, 0x8
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0805F8DC: .4byte gUnknown_0836DC09
|
||||
thumb_func_end oac_hopping
|
||||
@@ -1,789 +0,0 @@
|
||||
.include "constants/gba_constants.inc"
|
||||
.include "constants/species_constants.inc"
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_808136C
|
||||
sub_808136C: @ 808136C
|
||||
push {lr}
|
||||
cmp r1, 0xA0
|
||||
bhi _08081394
|
||||
cmp r2, 0
|
||||
bge _08081378
|
||||
movs r2, 0
|
||||
_08081378:
|
||||
cmp r2, 0xFF
|
||||
ble _0808137E
|
||||
movs r2, 0xFF
|
||||
_0808137E:
|
||||
cmp r3, 0
|
||||
bge _08081384
|
||||
movs r3, 0
|
||||
_08081384:
|
||||
cmp r3, 0xFF
|
||||
ble _0808138A
|
||||
movs r3, 0xFF
|
||||
_0808138A:
|
||||
lsls r1, 1
|
||||
adds r1, r0
|
||||
lsls r0, r2, 8
|
||||
orrs r0, r3
|
||||
strh r0, [r1]
|
||||
_08081394:
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_808136C
|
||||
|
||||
thumb_func_start sub_8081398
|
||||
sub_8081398: @ 8081398
|
||||
push {r4-r7,lr}
|
||||
mov r7, r10
|
||||
mov r6, r9
|
||||
mov r5, r8
|
||||
push {r5-r7}
|
||||
sub sp, 0x4
|
||||
str r0, [sp]
|
||||
mov r10, r1
|
||||
mov r9, r2
|
||||
adds r6, r3, 0
|
||||
mov r8, r6
|
||||
movs r7, 0
|
||||
cmp r6, 0
|
||||
blt _08081414
|
||||
_080813B4:
|
||||
mov r0, r9
|
||||
subs r1, r0, r7
|
||||
mov r0, r10
|
||||
subs r4, r0, r6
|
||||
adds r5, r0, r6
|
||||
ldr r0, [sp]
|
||||
adds r2, r4, 0
|
||||
adds r3, r5, 0
|
||||
bl sub_808136C
|
||||
mov r0, r9
|
||||
adds r1, r0, r7
|
||||
ldr r0, [sp]
|
||||
adds r2, r4, 0
|
||||
adds r3, r5, 0
|
||||
bl sub_808136C
|
||||
mov r0, r9
|
||||
subs r1, r0, r6
|
||||
mov r0, r10
|
||||
subs r4, r0, r7
|
||||
adds r5, r0, r7
|
||||
ldr r0, [sp]
|
||||
adds r2, r4, 0
|
||||
adds r3, r5, 0
|
||||
bl sub_808136C
|
||||
mov r0, r9
|
||||
adds r1, r0, r6
|
||||
ldr r0, [sp]
|
||||
adds r2, r4, 0
|
||||
adds r3, r5, 0
|
||||
bl sub_808136C
|
||||
mov r1, r8
|
||||
adds r1, 0x1
|
||||
lsls r0, r7, 1
|
||||
subs r1, r0
|
||||
mov r8, r1
|
||||
adds r7, 0x1
|
||||
cmp r1, 0
|
||||
bge _08081410
|
||||
subs r1, r6, 0x1
|
||||
lsls r0, r1, 1
|
||||
add r8, r0
|
||||
adds r6, r1, 0
|
||||
_08081410:
|
||||
cmp r6, r7
|
||||
bge _080813B4
|
||||
_08081414:
|
||||
add sp, 0x4
|
||||
pop {r3-r5}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
mov r10, r5
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8081398
|
||||
|
||||
thumb_func_start sub_8081424
|
||||
sub_8081424: @ 8081424
|
||||
push {r4-r6,lr}
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
lsls r0, r5, 2
|
||||
adds r0, r5
|
||||
lsls r0, 3
|
||||
ldr r1, _08081448 @ =gTasks + 0x8
|
||||
adds r4, r0, r1
|
||||
movs r1, 0
|
||||
ldrsh r0, [r4, r1]
|
||||
cmp r0, 0x1
|
||||
beq _08081480
|
||||
cmp r0, 0x1
|
||||
bgt _0808144C
|
||||
cmp r0, 0
|
||||
beq _08081452
|
||||
b _080814E2
|
||||
.align 2, 0
|
||||
_08081448: .4byte gTasks + 0x8
|
||||
_0808144C:
|
||||
cmp r0, 0x2
|
||||
beq _080814D8
|
||||
b _080814E2
|
||||
_08081452:
|
||||
ldr r0, _08081478 @ =gUnknown_03004DC0
|
||||
ldrb r1, [r0, 0x14]
|
||||
lsls r0, r1, 4
|
||||
subs r0, r1
|
||||
lsls r0, 7
|
||||
ldr r1, _0808147C @ =gUnknown_03004DE0
|
||||
adds r0, r1
|
||||
movs r2, 0x2
|
||||
ldrsh r1, [r4, r2]
|
||||
movs r3, 0x4
|
||||
ldrsh r2, [r4, r3]
|
||||
movs r5, 0x6
|
||||
ldrsh r3, [r4, r5]
|
||||
bl sub_8081398
|
||||
movs r0, 0x1
|
||||
strh r0, [r4]
|
||||
b _080814E2
|
||||
.align 2, 0
|
||||
_08081478: .4byte gUnknown_03004DC0
|
||||
_0808147C: .4byte gUnknown_03004DE0
|
||||
_08081480:
|
||||
ldr r0, _080814C8 @ =gUnknown_03004DC0
|
||||
ldrb r1, [r0, 0x14]
|
||||
lsls r0, r1, 4
|
||||
subs r0, r1
|
||||
lsls r0, 7
|
||||
ldr r1, _080814CC @ =gUnknown_03004DE0
|
||||
adds r0, r1
|
||||
movs r6, 0x2
|
||||
ldrsh r1, [r4, r6]
|
||||
movs r3, 0x4
|
||||
ldrsh r2, [r4, r3]
|
||||
movs r6, 0x6
|
||||
ldrsh r3, [r4, r6]
|
||||
bl sub_8081398
|
||||
movs r0, 0
|
||||
strh r0, [r4]
|
||||
ldrh r0, [r4, 0xA]
|
||||
ldrh r1, [r4, 0x6]
|
||||
adds r0, r1
|
||||
strh r0, [r4, 0x6]
|
||||
lsls r0, 16
|
||||
asrs r0, 16
|
||||
movs r2, 0x8
|
||||
ldrsh r1, [r4, r2]
|
||||
cmp r0, r1
|
||||
ble _080814E2
|
||||
movs r3, 0xC
|
||||
ldrsh r0, [r4, r3]
|
||||
cmp r0, 0x1
|
||||
bne _080814D0
|
||||
bl remove_some_task
|
||||
movs r0, 0x2
|
||||
strh r0, [r4]
|
||||
b _080814E2
|
||||
.align 2, 0
|
||||
_080814C8: .4byte gUnknown_03004DC0
|
||||
_080814CC: .4byte gUnknown_03004DE0
|
||||
_080814D0:
|
||||
adds r0, r5, 0
|
||||
bl DestroyTask
|
||||
b _080814E2
|
||||
_080814D8:
|
||||
bl dp12_8087EA4
|
||||
adds r0, r5, 0
|
||||
bl DestroyTask
|
||||
_080814E2:
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8081424
|
||||
|
||||
thumb_func_start sub_80814E8
|
||||
sub_80814E8: @ 80814E8
|
||||
push {r4,lr}
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
ldr r0, _0808150C @ =sub_8081424
|
||||
bl FuncIsActiveTask
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08081504
|
||||
bl EnableBothScriptContexts
|
||||
adds r0, r4, 0
|
||||
bl DestroyTask
|
||||
_08081504:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0808150C: .4byte sub_8081424
|
||||
thumb_func_end sub_80814E8
|
||||
|
||||
thumb_func_start sub_8081510
|
||||
sub_8081510: @ 8081510
|
||||
push {r4,lr}
|
||||
ldr r4, _08081530 @ =sub_80814E8
|
||||
adds r0, r4, 0
|
||||
bl FuncIsActiveTask
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08081528
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x50
|
||||
bl CreateTask
|
||||
_08081528:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08081530: .4byte sub_80814E8
|
||||
thumb_func_end sub_8081510
|
||||
|
||||
thumb_func_start sub_8081534
|
||||
sub_8081534: @ 8081534
|
||||
push {r4-r7,lr}
|
||||
mov r7, r9
|
||||
mov r6, r8
|
||||
push {r6,r7}
|
||||
mov r8, r0
|
||||
mov r9, r1
|
||||
adds r5, r2, 0
|
||||
adds r4, r3, 0
|
||||
ldr r6, [sp, 0x1C]
|
||||
ldr r0, [sp, 0x20]
|
||||
lsls r0, 24
|
||||
lsrs r7, r0, 24
|
||||
ldr r0, _08081578 @ =sub_8081424
|
||||
movs r1, 0x50
|
||||
bl CreateTask
|
||||
lsls r0, 24
|
||||
lsrs r2, r0, 24
|
||||
lsls r0, r2, 2
|
||||
adds r0, r2
|
||||
lsls r0, 3
|
||||
ldr r1, _0808157C @ =gTasks + 0x8
|
||||
adds r1, r0, r1
|
||||
strh r5, [r1, 0x6]
|
||||
strh r4, [r1, 0x8]
|
||||
mov r0, r8
|
||||
strh r0, [r1, 0x2]
|
||||
mov r0, r9
|
||||
strh r0, [r1, 0x4]
|
||||
strh r6, [r1, 0xC]
|
||||
cmp r5, r4
|
||||
bge _08081580
|
||||
strh r7, [r1, 0xA]
|
||||
b _08081584
|
||||
.align 2, 0
|
||||
_08081578: .4byte sub_8081424
|
||||
_0808157C: .4byte gTasks + 0x8
|
||||
_08081580:
|
||||
negs r0, r7
|
||||
strh r0, [r1, 0xA]
|
||||
_08081584:
|
||||
adds r0, r2, 0
|
||||
pop {r3,r4}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8081534
|
||||
|
||||
thumb_func_start sub_8081594
|
||||
sub_8081594: @ 8081594
|
||||
push {r4,r5,lr}
|
||||
sub sp, 0x8
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
adds r4, r0, 0
|
||||
bl sav1_get_flash_used_on_map
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r5, 0
|
||||
cmp r4, 0
|
||||
bne _080815AE
|
||||
movs r5, 0x1
|
||||
_080815AE:
|
||||
ldr r1, _080815DC @ =gUnknown_0839ACDC
|
||||
lsls r0, 1
|
||||
adds r0, r1
|
||||
ldrh r2, [r0]
|
||||
lsls r0, r4, 1
|
||||
adds r0, r1
|
||||
ldrh r3, [r0]
|
||||
str r5, [sp]
|
||||
movs r0, 0x1
|
||||
str r0, [sp, 0x4]
|
||||
movs r0, 0x78
|
||||
movs r1, 0x50
|
||||
bl sub_8081534
|
||||
bl sub_8081510
|
||||
bl ScriptContext2_Enable
|
||||
add sp, 0x8
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080815DC: .4byte gUnknown_0839ACDC
|
||||
thumb_func_end sub_8081594
|
||||
|
||||
thumb_func_start sub_80815E0
|
||||
sub_80815E0: @ 80815E0
|
||||
push {r4,lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0
|
||||
beq _0808160E
|
||||
ldr r4, _08081614 @ =gUnknown_03004DE0
|
||||
ldr r1, _08081618 @ =gUnknown_0839ACDC
|
||||
lsls r0, 1
|
||||
adds r0, r1
|
||||
ldrh r3, [r0]
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x78
|
||||
movs r2, 0x50
|
||||
bl sub_8081398
|
||||
movs r0, 0xF0
|
||||
lsls r0, 3
|
||||
adds r1, r4, r0
|
||||
movs r2, 0xF0
|
||||
lsls r2, 1
|
||||
adds r0, r4, 0
|
||||
bl CpuFastSet
|
||||
_0808160E:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08081614: .4byte gUnknown_03004DE0
|
||||
_08081618: .4byte gUnknown_0839ACDC
|
||||
thumb_func_end sub_80815E0
|
||||
|
||||
thumb_func_start sub_808161C
|
||||
sub_808161C: @ 808161C
|
||||
push {r4,r5,lr}
|
||||
sub sp, 0x4
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0808162A
|
||||
movs r1, 0x1F
|
||||
b _08081630
|
||||
_0808162A:
|
||||
movs r0, 0xF8
|
||||
lsls r0, 7
|
||||
adds r1, r0, 0
|
||||
_08081630:
|
||||
mov r0, sp
|
||||
strh r1, [r0]
|
||||
movs r5, 0
|
||||
movs r4, 0xF0
|
||||
lsls r4, 16
|
||||
_0808163A:
|
||||
lsrs r1, r4, 16
|
||||
mov r0, sp
|
||||
movs r2, 0x2
|
||||
bl LoadPalette
|
||||
movs r0, 0x80
|
||||
lsls r0, 9
|
||||
adds r4, r0
|
||||
adds r5, 0x1
|
||||
cmp r5, 0xF
|
||||
ble _0808163A
|
||||
add sp, 0x4
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_808161C
|
||||
|
||||
thumb_func_start sub_8081658
|
||||
sub_8081658: @ 8081658
|
||||
push {lr}
|
||||
lsls r0, 16
|
||||
ldr r2, _08081678 @ =REG_BLDALPHA
|
||||
ldrh r1, [r2]
|
||||
lsls r1, 24
|
||||
lsrs r3, r1, 24
|
||||
ldrh r1, [r2]
|
||||
lsrs r2, r1, 8
|
||||
cmp r0, 0
|
||||
beq _0808167C
|
||||
cmp r3, 0
|
||||
beq _08081686
|
||||
subs r0, r3, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r3, r0, 24
|
||||
b _08081686
|
||||
.align 2, 0
|
||||
_08081678: .4byte REG_BLDALPHA
|
||||
_0808167C:
|
||||
cmp r2, 0xF
|
||||
bhi _08081686
|
||||
adds r0, r2, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r2, r0, 24
|
||||
_08081686:
|
||||
ldr r1, _0808169C @ =REG_BLDALPHA
|
||||
lsls r0, r2, 8
|
||||
orrs r0, r3
|
||||
strh r0, [r1]
|
||||
cmp r3, 0
|
||||
bne _080816A0
|
||||
cmp r2, 0x10
|
||||
bne _080816A0
|
||||
movs r0, 0x1
|
||||
b _080816A2
|
||||
.align 2, 0
|
||||
_0808169C: .4byte REG_BLDALPHA
|
||||
_080816A0:
|
||||
movs r0, 0
|
||||
_080816A2:
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8081658
|
||||
|
||||
thumb_func_start sub_80816A8
|
||||
sub_80816A8: @ 80816A8
|
||||
push {r4-r7,lr}
|
||||
sub sp, 0x8
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
lsls r0, r4, 2
|
||||
adds r0, r4
|
||||
lsls r0, 3
|
||||
ldr r1, _080816D0 @ =gTasks + 0x8
|
||||
adds r7, r0, r1
|
||||
movs r1, 0
|
||||
ldrsh r0, [r7, r1]
|
||||
cmp r0, 0x7
|
||||
bls _080816C4
|
||||
b _08081892
|
||||
_080816C4:
|
||||
lsls r0, 2
|
||||
ldr r1, _080816D4 @ =_080816D8
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
mov pc, r0
|
||||
.align 2, 0
|
||||
_080816D0: .4byte gTasks + 0x8
|
||||
_080816D4: .4byte _080816D8
|
||||
.align 2, 0
|
||||
_080816D8:
|
||||
.4byte _080816F8
|
||||
.4byte _08081790
|
||||
.4byte _080817BC
|
||||
.4byte _080817D8
|
||||
.4byte _080817EE
|
||||
.4byte _08081852
|
||||
.4byte _08081818
|
||||
.4byte _08081826
|
||||
_080816F8:
|
||||
movs r2, 0x80
|
||||
lsls r2, 19
|
||||
ldrh r0, [r2]
|
||||
strh r0, [r7, 0xC]
|
||||
ldr r3, _0808176C @ =REG_BLDCNT
|
||||
ldrh r0, [r3]
|
||||
strh r0, [r7, 0xE]
|
||||
ldr r6, _08081770 @ =REG_BLDALPHA
|
||||
ldrh r0, [r6]
|
||||
strh r0, [r7, 0x10]
|
||||
ldr r5, _08081774 @ =REG_WININ
|
||||
ldrh r0, [r5]
|
||||
strh r0, [r7, 0x12]
|
||||
ldr r4, _08081778 @ =REG_WINOUT
|
||||
ldrh r0, [r4]
|
||||
strh r0, [r7, 0x14]
|
||||
ldrh r1, [r2]
|
||||
ldr r0, _0808177C @ =0x0000bfff
|
||||
ands r0, r1
|
||||
strh r0, [r2]
|
||||
ldr r1, _08081780 @ =gUnknown_081E29E8
|
||||
ldrh r0, [r3]
|
||||
ldrh r1, [r1]
|
||||
orrs r0, r1
|
||||
strh r0, [r3]
|
||||
ldr r2, _08081784 @ =0x0000070c
|
||||
adds r0, r2, 0
|
||||
strh r0, [r6]
|
||||
movs r0, 0x3F
|
||||
strh r0, [r5]
|
||||
movs r0, 0x1E
|
||||
strh r0, [r4]
|
||||
ldr r4, _08081788 @ =gUnknown_03004DE0
|
||||
movs r0, 0x4
|
||||
ldrsh r1, [r7, r0]
|
||||
movs r0, 0x6
|
||||
ldrsh r2, [r7, r0]
|
||||
adds r0, r4, 0
|
||||
movs r3, 0x1
|
||||
bl sub_8081398
|
||||
movs r2, 0xF0
|
||||
lsls r2, 3
|
||||
adds r1, r4, r2
|
||||
movs r2, 0xF0
|
||||
lsls r2, 1
|
||||
adds r0, r4, 0
|
||||
bl CpuFastSet
|
||||
ldr r2, _0808178C @ =gUnknown_0839ACEC
|
||||
ldr r0, [r2]
|
||||
ldr r1, [r2, 0x4]
|
||||
ldr r2, [r2, 0x8]
|
||||
bl sub_80895F8
|
||||
movs r0, 0x1
|
||||
strh r0, [r7]
|
||||
b _08081892
|
||||
.align 2, 0
|
||||
_0808176C: .4byte REG_BLDCNT
|
||||
_08081770: .4byte REG_BLDALPHA
|
||||
_08081774: .4byte REG_WININ
|
||||
_08081778: .4byte REG_WINOUT
|
||||
_0808177C: .4byte 0x0000bfff
|
||||
_08081780: .4byte gUnknown_081E29E8
|
||||
_08081784: .4byte 0x0000070c
|
||||
_08081788: .4byte gUnknown_03004DE0
|
||||
_0808178C: .4byte gUnknown_0839ACEC
|
||||
_08081790:
|
||||
movs r0, 0
|
||||
movs r1, 0
|
||||
movs r2, 0x1D
|
||||
movs r3, 0x13
|
||||
bl MenuFillWindowRectWithBlankTile
|
||||
ldrb r0, [r7, 0x2]
|
||||
bl sub_808161C
|
||||
movs r1, 0x4
|
||||
ldrsh r0, [r7, r1]
|
||||
movs r2, 0x6
|
||||
ldrsh r1, [r7, r2]
|
||||
movs r2, 0x1
|
||||
str r2, [sp]
|
||||
movs r4, 0x2
|
||||
str r4, [sp, 0x4]
|
||||
movs r3, 0xA0
|
||||
bl sub_8081534
|
||||
strh r4, [r7]
|
||||
b _08081892
|
||||
_080817BC:
|
||||
ldr r0, _080817D4 @ =sub_8081424
|
||||
bl FuncIsActiveTask
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08081892
|
||||
bl EnableBothScriptContexts
|
||||
movs r0, 0x3
|
||||
strh r0, [r7]
|
||||
b _08081892
|
||||
.align 2, 0
|
||||
_080817D4: .4byte sub_8081424
|
||||
_080817D8:
|
||||
bl InstallCameraPanAheadCallback
|
||||
movs r0, 0
|
||||
bl SetCameraPanningCallback
|
||||
movs r0, 0
|
||||
strh r0, [r7, 0xA]
|
||||
movs r0, 0x4
|
||||
strh r0, [r7, 0x8]
|
||||
strh r0, [r7]
|
||||
b _08081892
|
||||
_080817EE:
|
||||
ldrh r0, [r7, 0x8]
|
||||
subs r0, 0x1
|
||||
strh r0, [r7, 0x8]
|
||||
lsls r0, 16
|
||||
cmp r0, 0
|
||||
bne _08081892
|
||||
movs r0, 0x4
|
||||
strh r0, [r7, 0x8]
|
||||
ldrh r0, [r7, 0xA]
|
||||
movs r1, 0x1
|
||||
eors r0, r1
|
||||
strh r0, [r7, 0xA]
|
||||
movs r1, 0x4
|
||||
negs r1, r1
|
||||
cmp r0, 0
|
||||
beq _08081810
|
||||
movs r1, 0x4
|
||||
_08081810:
|
||||
movs r0, 0
|
||||
bl SetCameraPanning
|
||||
b _08081892
|
||||
_08081818:
|
||||
bl InstallCameraPanAheadCallback
|
||||
movs r0, 0x8
|
||||
strh r0, [r7, 0x8]
|
||||
movs r0, 0x7
|
||||
strh r0, [r7]
|
||||
b _08081892
|
||||
_08081826:
|
||||
ldrh r0, [r7, 0x8]
|
||||
subs r0, 0x1
|
||||
strh r0, [r7, 0x8]
|
||||
lsls r0, 16
|
||||
cmp r0, 0
|
||||
bne _08081892
|
||||
movs r0, 0x8
|
||||
strh r0, [r7, 0x8]
|
||||
ldrh r0, [r7, 0xA]
|
||||
movs r1, 0x1
|
||||
eors r0, r1
|
||||
strh r0, [r7, 0xA]
|
||||
ldrh r0, [r7, 0xA]
|
||||
bl sub_8081658
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
bne _08081892
|
||||
movs r0, 0x5
|
||||
strh r0, [r7]
|
||||
b _08081892
|
||||
_08081852:
|
||||
movs r0, 0
|
||||
movs r1, 0
|
||||
movs r2, 0x1D
|
||||
movs r3, 0x13
|
||||
bl MenuZeroFillWindowRect
|
||||
ldr r0, _0808189C @ =gWindowConfig_81E6CE4
|
||||
bl LoadFontDefaultPalette
|
||||
ldr r1, _080818A0 @ =REG_WIN0H
|
||||
movs r0, 0xFF
|
||||
strh r0, [r1]
|
||||
subs r1, 0x40
|
||||
ldrh r0, [r7, 0xC]
|
||||
strh r0, [r1]
|
||||
adds r1, 0x50
|
||||
ldrh r0, [r7, 0xE]
|
||||
strh r0, [r1]
|
||||
adds r1, 0x2
|
||||
ldrh r0, [r7, 0x10]
|
||||
strh r0, [r1]
|
||||
subs r1, 0xA
|
||||
ldrh r0, [r7, 0x12]
|
||||
strh r0, [r1]
|
||||
adds r1, 0x2
|
||||
ldrh r0, [r7, 0x14]
|
||||
strh r0, [r1]
|
||||
bl EnableBothScriptContexts
|
||||
adds r0, r4, 0
|
||||
bl DestroyTask
|
||||
_08081892:
|
||||
add sp, 0x8
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0808189C: .4byte gWindowConfig_81E6CE4
|
||||
_080818A0: .4byte REG_WIN0H
|
||||
thumb_func_end sub_80816A8
|
||||
|
||||
thumb_func_start sub_80818A4
|
||||
sub_80818A4: @ 80818A4
|
||||
push {lr}
|
||||
ldr r0, _080818CC @ =sub_80816A8
|
||||
movs r1, 0x50
|
||||
bl CreateTask
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
ldr r0, _080818D0 @ =gTasks + 0x8
|
||||
adds r1, r0
|
||||
ldr r0, _080818D4 @ =gScriptResult
|
||||
ldrh r0, [r0]
|
||||
cmp r0, 0
|
||||
bne _080818D8
|
||||
strh r0, [r1, 0x2]
|
||||
movs r0, 0x68
|
||||
b _080818F0
|
||||
.align 2, 0
|
||||
_080818CC: .4byte sub_80816A8
|
||||
_080818D0: .4byte gTasks + 0x8
|
||||
_080818D4: .4byte gScriptResult
|
||||
_080818D8:
|
||||
cmp r0, 0x1
|
||||
bne _080818E2
|
||||
strh r0, [r1, 0x2]
|
||||
movs r0, 0x68
|
||||
b _080818F0
|
||||
_080818E2:
|
||||
cmp r0, 0x2
|
||||
bne _080818EA
|
||||
movs r0, 0
|
||||
b _080818EC
|
||||
_080818EA:
|
||||
movs r0, 0x1
|
||||
_080818EC:
|
||||
strh r0, [r1, 0x2]
|
||||
movs r0, 0x78
|
||||
_080818F0:
|
||||
strh r0, [r1, 0x4]
|
||||
movs r0, 0x50
|
||||
strh r0, [r1, 0x6]
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_80818A4
|
||||
|
||||
thumb_func_start sub_80818FC
|
||||
sub_80818FC: @ 80818FC
|
||||
push {lr}
|
||||
ldr r0, _0808191C @ =sub_80816A8
|
||||
bl FindTaskIdByFunc
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _08081920 @ =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r1, r2
|
||||
movs r0, 0x6
|
||||
strh r0, [r1, 0x8]
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0808191C: .4byte sub_80816A8
|
||||
_08081920: .4byte gTasks
|
||||
thumb_func_end sub_80818FC
|
||||
|
||||
thumb_func_start sub_8081924
|
||||
sub_8081924: @ 8081924
|
||||
push {lr}
|
||||
bl sub_8054044
|
||||
ldr r0, _08081938 @ =task50_0807F0C8
|
||||
movs r1, 0x50
|
||||
bl CreateTask
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08081938: .4byte task50_0807F0C8
|
||||
thumb_func_end sub_8081924
|
||||
|
||||
thumb_func_start task50_0807F0C8
|
||||
task50_0807F0C8: @ 808193C
|
||||
push {r4,lr}
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
bl sub_8054034
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
bne _08081958
|
||||
adds r0, r4, 0
|
||||
bl DestroyTask
|
||||
bl EnableBothScriptContexts
|
||||
_08081958:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end task50_0807F0C8
|
||||
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
+34
-34
@@ -741,7 +741,7 @@ _080C627C: .4byte gMapHeader
|
||||
thumb_func_start sub_80C6280
|
||||
sub_80C6280: @ 80C6280
|
||||
push {lr}
|
||||
ldr r1, _080C6294 @ =gUnknown_0202FF84
|
||||
ldr r1, _080C6294 @ =gFieldEffectArguments
|
||||
ldr r0, [r1, 0x4]
|
||||
cmp r0, 0x2
|
||||
beq _080C62AA
|
||||
@@ -751,7 +751,7 @@ sub_80C6280: @ 80C6280
|
||||
beq _080C62A2
|
||||
b _080C62BE
|
||||
.align 2, 0
|
||||
_080C6294: .4byte gUnknown_0202FF84
|
||||
_080C6294: .4byte gFieldEffectArguments
|
||||
_080C6298:
|
||||
cmp r0, 0x3
|
||||
beq _080C62AE
|
||||
@@ -815,7 +815,7 @@ SetUpFieldMove_SecretPower: @ 80C62C4
|
||||
bne _080C6330
|
||||
bl sub_80C6264
|
||||
ldr r1, _080C6320 @ =gFieldCallback
|
||||
ldr r0, _080C6324 @ =sub_808AB90
|
||||
ldr r0, _080C6324 @ =FieldCallback_Teleport
|
||||
str r0, [r1]
|
||||
ldr r1, _080C6328 @ =gUnknown_03005CE4
|
||||
ldr r0, _080C632C @ =sub_80C639C
|
||||
@@ -824,7 +824,7 @@ SetUpFieldMove_SecretPower: @ 80C62C4
|
||||
_080C6318: .4byte gScriptResult
|
||||
_080C631C: .4byte gUnknown_0203923C
|
||||
_080C6320: .4byte gFieldCallback
|
||||
_080C6324: .4byte sub_808AB90
|
||||
_080C6324: .4byte FieldCallback_Teleport
|
||||
_080C6328: .4byte gUnknown_03005CE4
|
||||
_080C632C: .4byte sub_80C639C
|
||||
_080C6330:
|
||||
@@ -836,14 +836,14 @@ _080C6330:
|
||||
bne _080C6360
|
||||
bl sub_80C6264
|
||||
ldr r1, _080C6350 @ =gFieldCallback
|
||||
ldr r0, _080C6354 @ =sub_808AB90
|
||||
ldr r0, _080C6354 @ =FieldCallback_Teleport
|
||||
str r0, [r1]
|
||||
ldr r1, _080C6358 @ =gUnknown_03005CE4
|
||||
ldr r0, _080C635C @ =sub_80C64A8
|
||||
b _080C6380
|
||||
.align 2, 0
|
||||
_080C6350: .4byte gFieldCallback
|
||||
_080C6354: .4byte sub_808AB90
|
||||
_080C6354: .4byte FieldCallback_Teleport
|
||||
_080C6358: .4byte gUnknown_03005CE4
|
||||
_080C635C: .4byte sub_80C64A8
|
||||
_080C6360:
|
||||
@@ -859,7 +859,7 @@ _080C636E:
|
||||
_080C6372:
|
||||
bl sub_80C6264
|
||||
ldr r1, _080C638C @ =gFieldCallback
|
||||
ldr r0, _080C6390 @ =sub_808AB90
|
||||
ldr r0, _080C6390 @ =FieldCallback_Teleport
|
||||
str r0, [r1]
|
||||
ldr r1, _080C6394 @ =gUnknown_03005CE4
|
||||
ldr r0, _080C6398 @ =sub_80C660C
|
||||
@@ -872,7 +872,7 @@ _080C6384:
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_080C638C: .4byte gFieldCallback
|
||||
_080C6390: .4byte sub_808AB90
|
||||
_080C6390: .4byte FieldCallback_Teleport
|
||||
_080C6394: .4byte gUnknown_03005CE4
|
||||
_080C6398: .4byte sub_80C660C
|
||||
thumb_func_end SetUpFieldMove_SecretPower
|
||||
@@ -880,7 +880,7 @@ _080C6398: .4byte sub_80C660C
|
||||
thumb_func_start sub_80C639C
|
||||
sub_80C639C: @ 80C639C
|
||||
push {lr}
|
||||
ldr r1, _080C63B0 @ =gUnknown_0202FF84
|
||||
ldr r1, _080C63B0 @ =gFieldEffectArguments
|
||||
ldr r0, _080C63B4 @ =gLastFieldPokeMenuOpened
|
||||
ldrb r0, [r0]
|
||||
str r0, [r1]
|
||||
@@ -889,7 +889,7 @@ sub_80C639C: @ 80C639C
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080C63B0: .4byte gUnknown_0202FF84
|
||||
_080C63B0: .4byte gFieldEffectArguments
|
||||
_080C63B4: .4byte gLastFieldPokeMenuOpened
|
||||
_080C63B8: .4byte gUnknown_081A2CE6
|
||||
thumb_func_end sub_80C639C
|
||||
@@ -943,7 +943,7 @@ FldEff_SecretPowerCave: @ 80C63FC
|
||||
ldrh r1, [r2, 0x2]
|
||||
lsls r1, 23
|
||||
lsrs r1, 23
|
||||
ldr r4, _080C6448 @ =gUnknown_0202FF84
|
||||
ldr r4, _080C6448 @ =gFieldEffectArguments
|
||||
ldr r3, [r4, 0x14]
|
||||
adds r1, r3
|
||||
lsls r1, 16
|
||||
@@ -963,7 +963,7 @@ FldEff_SecretPowerCave: @ 80C63FC
|
||||
_080C643C: .4byte gSpriteTemplate_83D2614
|
||||
_080C6440: .4byte gSprites
|
||||
_080C6444: .4byte gPlayerAvatar
|
||||
_080C6448: .4byte gUnknown_0202FF84
|
||||
_080C6448: .4byte gFieldEffectArguments
|
||||
thumb_func_end FldEff_SecretPowerCave
|
||||
|
||||
thumb_func_start sub_80C644C
|
||||
@@ -1025,7 +1025,7 @@ sub_80C6498: @ 80C6498
|
||||
thumb_func_start sub_80C64A8
|
||||
sub_80C64A8: @ 80C64A8
|
||||
push {lr}
|
||||
ldr r1, _080C64BC @ =gUnknown_0202FF84
|
||||
ldr r1, _080C64BC @ =gFieldEffectArguments
|
||||
ldr r0, _080C64C0 @ =gLastFieldPokeMenuOpened
|
||||
ldrb r0, [r0]
|
||||
str r0, [r1]
|
||||
@@ -1034,7 +1034,7 @@ sub_80C64A8: @ 80C64A8
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080C64BC: .4byte gUnknown_0202FF84
|
||||
_080C64BC: .4byte gFieldEffectArguments
|
||||
_080C64C0: .4byte gLastFieldPokeMenuOpened
|
||||
_080C64C4: .4byte gUnknown_081A2D3E
|
||||
thumb_func_end sub_80C64A8
|
||||
@@ -1088,13 +1088,13 @@ FldEff_SecretPowerTree: @ 80C6508
|
||||
ands r2, r0
|
||||
cmp r2, 0x96
|
||||
bne _080C652A
|
||||
ldr r1, _080C6588 @ =gUnknown_0202FF84
|
||||
ldr r1, _080C6588 @ =gFieldEffectArguments
|
||||
movs r0, 0
|
||||
str r0, [r1, 0x1C]
|
||||
_080C652A:
|
||||
cmp r2, 0x9C
|
||||
bne _080C6534
|
||||
ldr r1, _080C6588 @ =gUnknown_0202FF84
|
||||
ldr r1, _080C6588 @ =gFieldEffectArguments
|
||||
movs r0, 0x2
|
||||
str r0, [r1, 0x1C]
|
||||
_080C6534:
|
||||
@@ -1110,7 +1110,7 @@ _080C6534:
|
||||
ldrh r1, [r2, 0x2]
|
||||
lsls r1, 23
|
||||
lsrs r1, 23
|
||||
ldr r4, _080C6588 @ =gUnknown_0202FF84
|
||||
ldr r4, _080C6588 @ =gFieldEffectArguments
|
||||
ldr r3, [r4, 0x14]
|
||||
adds r1, r3
|
||||
lsls r1, 16
|
||||
@@ -1137,7 +1137,7 @@ _080C6576:
|
||||
.align 2, 0
|
||||
_080C6580: .4byte gUnknown_0203923C
|
||||
_080C6584: .4byte 0x00000fff
|
||||
_080C6588: .4byte gUnknown_0202FF84
|
||||
_080C6588: .4byte gFieldEffectArguments
|
||||
_080C658C: .4byte gSpriteTemplate_83D262C
|
||||
_080C6590: .4byte gSprites
|
||||
_080C6594: .4byte gPlayerAvatar
|
||||
@@ -1149,7 +1149,7 @@ sub_80C6598: @ 80C6598
|
||||
adds r4, r0, 0
|
||||
movs r0, 0x9B
|
||||
bl PlaySE
|
||||
ldr r0, _080C65BC @ =gUnknown_0202FF84
|
||||
ldr r0, _080C65BC @ =gFieldEffectArguments
|
||||
ldr r1, [r0, 0x1C]
|
||||
adds r2, r4, 0
|
||||
adds r2, 0x2A
|
||||
@@ -1162,7 +1162,7 @@ sub_80C6598: @ 80C6598
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080C65BC: .4byte gUnknown_0202FF84
|
||||
_080C65BC: .4byte gFieldEffectArguments
|
||||
_080C65C0: .4byte sub_80C65C4
|
||||
thumb_func_end sub_80C6598
|
||||
|
||||
@@ -1177,7 +1177,7 @@ sub_80C65C4: @ 80C65C4
|
||||
asrs r0, 16
|
||||
cmp r0, 0x27
|
||||
ble _080C65EE
|
||||
ldr r0, _080C65F4 @ =gUnknown_0202FF84
|
||||
ldr r0, _080C65F4 @ =gFieldEffectArguments
|
||||
ldr r0, [r0, 0x1C]
|
||||
cmp r0, 0
|
||||
beq _080C65E2
|
||||
@@ -1195,7 +1195,7 @@ _080C65EE:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080C65F4: .4byte gUnknown_0202FF84
|
||||
_080C65F4: .4byte gFieldEffectArguments
|
||||
_080C65F8: .4byte sub_80C65FC
|
||||
thumb_func_end sub_80C65C4
|
||||
|
||||
@@ -1212,7 +1212,7 @@ sub_80C65FC: @ 80C65FC
|
||||
thumb_func_start sub_80C660C
|
||||
sub_80C660C: @ 80C660C
|
||||
push {lr}
|
||||
ldr r1, _080C6620 @ =gUnknown_0202FF84
|
||||
ldr r1, _080C6620 @ =gFieldEffectArguments
|
||||
ldr r0, _080C6624 @ =gLastFieldPokeMenuOpened
|
||||
ldrb r0, [r0]
|
||||
str r0, [r1]
|
||||
@@ -1221,7 +1221,7 @@ sub_80C660C: @ 80C660C
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080C6620: .4byte gUnknown_0202FF84
|
||||
_080C6620: .4byte gFieldEffectArguments
|
||||
_080C6624: .4byte gLastFieldPokeMenuOpened
|
||||
_080C6628: .4byte gUnknown_081A2D96
|
||||
thumb_func_end sub_80C660C
|
||||
@@ -1275,7 +1275,7 @@ FldEff_SecretPowerShrub: @ 80C666C
|
||||
ldrh r1, [r2, 0x2]
|
||||
lsls r1, 23
|
||||
lsrs r1, 23
|
||||
ldr r4, _080C66B8 @ =gUnknown_0202FF84
|
||||
ldr r4, _080C66B8 @ =gFieldEffectArguments
|
||||
ldr r3, [r4, 0x14]
|
||||
adds r1, r3
|
||||
lsls r1, 16
|
||||
@@ -1295,7 +1295,7 @@ FldEff_SecretPowerShrub: @ 80C666C
|
||||
_080C66AC: .4byte gSpriteTemplate_83D2644
|
||||
_080C66B0: .4byte gSprites
|
||||
_080C66B4: .4byte gPlayerAvatar
|
||||
_080C66B8: .4byte gUnknown_0202FF84
|
||||
_080C66B8: .4byte gFieldEffectArguments
|
||||
thumb_func_end FldEff_SecretPowerShrub
|
||||
|
||||
thumb_func_start sub_80C66BC
|
||||
@@ -2103,7 +2103,7 @@ FldEff_SandPillar: @ 80C6D3C
|
||||
mov r0, sp
|
||||
adds r1, r4, 0
|
||||
bl GetXYCoordsOneStepInFrontOfPlayer
|
||||
ldr r1, _080C6D78 @ =gUnknown_0202FF84
|
||||
ldr r1, _080C6D78 @ =gFieldEffectArguments
|
||||
mov r0, sp
|
||||
movs r2, 0
|
||||
ldrsh r0, [r0, r2]
|
||||
@@ -2122,7 +2122,7 @@ FldEff_SandPillar: @ 80C6D3C
|
||||
beq _080C6D86
|
||||
b _080C6E4C
|
||||
.align 2, 0
|
||||
_080C6D78: .4byte gUnknown_0202FF84
|
||||
_080C6D78: .4byte gFieldEffectArguments
|
||||
_080C6D7C:
|
||||
cmp r0, 0x3
|
||||
beq _080C6DEC
|
||||
@@ -2240,7 +2240,7 @@ SpriteCB_SandPillar_0: @ 80C6E64
|
||||
adds r5, r0, 0
|
||||
movs r0, 0x83
|
||||
bl PlaySE
|
||||
ldr r4, _080C6E90 @ =gUnknown_0202FF84
|
||||
ldr r4, _080C6E90 @ =gFieldEffectArguments
|
||||
ldr r0, [r4, 0x14]
|
||||
ldr r1, [r4, 0x18]
|
||||
subs r1, 0x1
|
||||
@@ -2255,7 +2255,7 @@ SpriteCB_SandPillar_0: @ 80C6E64
|
||||
bl MapGridSetMetatileIdAt
|
||||
b _080C6EAA
|
||||
.align 2, 0
|
||||
_080C6E90: .4byte gUnknown_0202FF84
|
||||
_080C6E90: .4byte gFieldEffectArguments
|
||||
_080C6E94: .4byte 0x00000286
|
||||
_080C6E98: .4byte 0x00000e02
|
||||
_080C6E9C:
|
||||
@@ -2266,7 +2266,7 @@ _080C6E9C:
|
||||
lsls r2, 2
|
||||
bl MapGridSetMetatileIdAt
|
||||
_080C6EAA:
|
||||
ldr r4, _080C6ED8 @ =gUnknown_0202FF84
|
||||
ldr r4, _080C6ED8 @ =gFieldEffectArguments
|
||||
ldr r0, [r4, 0x14]
|
||||
ldr r1, [r4, 0x18]
|
||||
ldr r2, _080C6EDC @ =0x0000020a
|
||||
@@ -2286,7 +2286,7 @@ _080C6EAA:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080C6ED8: .4byte gUnknown_0202FF84
|
||||
_080C6ED8: .4byte gFieldEffectArguments
|
||||
_080C6EDC: .4byte 0x0000020a
|
||||
_080C6EE0: .4byte SpriteCB_SandPillar_1
|
||||
thumb_func_end SpriteCB_SandPillar_0
|
||||
@@ -2304,7 +2304,7 @@ SpriteCB_SandPillar_1: @ 80C6EE4
|
||||
strh r0, [r5, 0x2E]
|
||||
b _080C6F14
|
||||
_080C6EF8:
|
||||
ldr r4, _080C6F1C @ =gUnknown_0202FF84
|
||||
ldr r4, _080C6F1C @ =gFieldEffectArguments
|
||||
ldr r0, [r4, 0x14]
|
||||
ldr r1, [r4, 0x18]
|
||||
ldr r2, _080C6F20 @ =0x00000e8c
|
||||
@@ -2321,7 +2321,7 @@ _080C6F14:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080C6F1C: .4byte gUnknown_0202FF84
|
||||
_080C6F1C: .4byte gFieldEffectArguments
|
||||
_080C6F20: .4byte 0x00000e8c
|
||||
_080C6F24: .4byte SpriteCB_SandPillar_2
|
||||
thumb_func_end SpriteCB_SandPillar_1
|
||||
|
||||
@@ -1,753 +0,0 @@
|
||||
.include "constants/gba_constants.inc"
|
||||
.include "constants/species_constants.inc"
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start SetUpFieldMove_Flash
|
||||
SetUpFieldMove_Flash: @ 810CBB4
|
||||
push {lr}
|
||||
ldr r0, _0810CBDC @ =gMapHeader
|
||||
ldrb r0, [r0, 0x15]
|
||||
cmp r0, 0x1
|
||||
bne _0810CBF4
|
||||
ldr r0, _0810CBE0 @ =0x00000828
|
||||
bl FlagGet
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0810CBF4
|
||||
ldr r1, _0810CBE4 @ =gFieldCallback
|
||||
ldr r0, _0810CBE8 @ =sub_808AB90
|
||||
str r0, [r1]
|
||||
ldr r1, _0810CBEC @ =gUnknown_03005CE4
|
||||
ldr r0, _0810CBF0 @ =sub_810CBFC
|
||||
str r0, [r1]
|
||||
movs r0, 0x1
|
||||
b _0810CBF6
|
||||
.align 2, 0
|
||||
_0810CBDC: .4byte gMapHeader
|
||||
_0810CBE0: .4byte 0x00000828
|
||||
_0810CBE4: .4byte gFieldCallback
|
||||
_0810CBE8: .4byte sub_808AB90
|
||||
_0810CBEC: .4byte gUnknown_03005CE4
|
||||
_0810CBF0: .4byte sub_810CBFC
|
||||
_0810CBF4:
|
||||
movs r0, 0
|
||||
_0810CBF6:
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end SetUpFieldMove_Flash
|
||||
|
||||
thumb_func_start sub_810CBFC
|
||||
sub_810CBFC: @ 810CBFC
|
||||
push {lr}
|
||||
bl oei_task_add
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _0810CC24 @ =gUnknown_0202FF84
|
||||
ldr r1, _0810CC28 @ =gLastFieldPokeMenuOpened
|
||||
ldrb r1, [r1]
|
||||
str r1, [r2]
|
||||
ldr r2, _0810CC2C @ =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r1, r2
|
||||
ldr r2, _0810CC30 @ =sub_810CC34
|
||||
lsrs r0, r2, 16
|
||||
strh r0, [r1, 0x18]
|
||||
strh r2, [r1, 0x1A]
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0810CC24: .4byte gUnknown_0202FF84
|
||||
_0810CC28: .4byte gLastFieldPokeMenuOpened
|
||||
_0810CC2C: .4byte gTasks
|
||||
_0810CC30: .4byte sub_810CC34
|
||||
thumb_func_end sub_810CBFC
|
||||
|
||||
thumb_func_start sub_810CC34
|
||||
sub_810CC34: @ 810CC34
|
||||
push {lr}
|
||||
movs r0, 0xCF
|
||||
bl PlaySE
|
||||
ldr r0, _0810CC4C @ =0x00000828
|
||||
bl FlagSet
|
||||
ldr r0, _0810CC50 @ =gUnknown_081B694A
|
||||
bl ScriptContext1_SetupScript
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0810CC4C: .4byte 0x00000828
|
||||
_0810CC50: .4byte gUnknown_081B694A
|
||||
thumb_func_end sub_810CC34
|
||||
|
||||
thumb_func_start sub_810CC54
|
||||
sub_810CC54: @ 810CC54
|
||||
push {lr}
|
||||
bl RunTasks
|
||||
bl AnimateSprites
|
||||
bl BuildOamBuffer
|
||||
bl UpdatePaletteFade
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_810CC54
|
||||
|
||||
thumb_func_start sub_810CC6C
|
||||
sub_810CC6C: @ 810CC6C
|
||||
push {lr}
|
||||
bl LoadOam
|
||||
bl ProcessSpriteCopyRequests
|
||||
bl TransferPlttBuffer
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_810CC6C
|
||||
|
||||
thumb_func_start sub_810CC80
|
||||
sub_810CC80: @ 810CC80
|
||||
push {r4,lr}
|
||||
sub sp, 0x8
|
||||
movs r0, 0
|
||||
bl SetVBlankCallback
|
||||
movs r0, 0x80
|
||||
lsls r0, 19
|
||||
movs r1, 0
|
||||
strh r1, [r0]
|
||||
adds r0, 0xC
|
||||
strh r1, [r0]
|
||||
subs r0, 0x2
|
||||
strh r1, [r0]
|
||||
subs r0, 0x2
|
||||
strh r1, [r0]
|
||||
adds r0, 0x10
|
||||
strh r1, [r0]
|
||||
adds r0, 0x2
|
||||
strh r1, [r0]
|
||||
subs r0, 0x6
|
||||
strh r1, [r0]
|
||||
adds r0, 0x2
|
||||
strh r1, [r0]
|
||||
subs r0, 0x6
|
||||
strh r1, [r0]
|
||||
adds r0, 0x2
|
||||
strh r1, [r0]
|
||||
mov r0, sp
|
||||
strh r1, [r0]
|
||||
ldr r1, _0810CD34 @ =0x040000d4
|
||||
str r0, [r1]
|
||||
movs r0, 0xC0
|
||||
lsls r0, 19
|
||||
str r0, [r1, 0x4]
|
||||
ldr r0, _0810CD38 @ =0x8100c000
|
||||
str r0, [r1, 0x8]
|
||||
ldr r0, [r1, 0x8]
|
||||
movs r4, 0
|
||||
str r4, [sp, 0x4]
|
||||
add r0, sp, 0x4
|
||||
str r0, [r1]
|
||||
movs r0, 0xE0
|
||||
lsls r0, 19
|
||||
str r0, [r1, 0x4]
|
||||
ldr r0, _0810CD3C @ =0x85000100
|
||||
str r0, [r1, 0x8]
|
||||
ldr r0, [r1, 0x8]
|
||||
mov r0, sp
|
||||
strh r4, [r0]
|
||||
str r0, [r1]
|
||||
ldr r0, _0810CD40 @ =0x05000002
|
||||
str r0, [r1, 0x4]
|
||||
ldr r0, _0810CD44 @ =0x810001ff
|
||||
str r0, [r1, 0x8]
|
||||
ldr r0, [r1, 0x8]
|
||||
bl ResetPaletteFade
|
||||
bl ResetTasks
|
||||
bl ResetSpriteData
|
||||
ldr r3, _0810CD48 @ =0x04000208
|
||||
ldrh r2, [r3]
|
||||
strh r4, [r3]
|
||||
ldr r4, _0810CD4C @ =0x04000200
|
||||
ldrh r0, [r4]
|
||||
movs r1, 0x1
|
||||
orrs r0, r1
|
||||
strh r0, [r4]
|
||||
strh r2, [r3]
|
||||
ldr r0, _0810CD50 @ =sub_810CC6C
|
||||
bl SetVBlankCallback
|
||||
ldr r0, _0810CD54 @ =sub_810CC54
|
||||
bl SetMainCallback2
|
||||
bl sub_810CD5C
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _0810CD2A
|
||||
ldr r0, _0810CD58 @ =gMain
|
||||
ldr r0, [r0, 0x8]
|
||||
bl SetMainCallback2
|
||||
_0810CD2A:
|
||||
add sp, 0x8
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0810CD34: .4byte 0x040000d4
|
||||
_0810CD38: .4byte 0x8100c000
|
||||
_0810CD3C: .4byte 0x85000100
|
||||
_0810CD40: .4byte 0x05000002
|
||||
_0810CD44: .4byte 0x810001ff
|
||||
_0810CD48: .4byte 0x04000208
|
||||
_0810CD4C: .4byte 0x04000200
|
||||
_0810CD50: .4byte sub_810CC6C
|
||||
_0810CD54: .4byte sub_810CC54
|
||||
_0810CD58: .4byte gMain
|
||||
thumb_func_end sub_810CC80
|
||||
|
||||
thumb_func_start sub_810CD5C
|
||||
sub_810CD5C: @ 810CD5C
|
||||
push {r4-r7,lr}
|
||||
bl get_map_light_from_warp0
|
||||
lsls r0, 24
|
||||
lsrs r6, r0, 24
|
||||
bl sav1_map_get_light_level
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
movs r3, 0
|
||||
ldr r4, _0810CD9C @ =gUnknown_083F7FC4
|
||||
ldrb r0, [r4]
|
||||
cmp r0, 0
|
||||
beq _0810CDB0
|
||||
adds r7, r4, 0
|
||||
adds r0, r4, 0x4
|
||||
mov r12, r0
|
||||
_0810CD7E:
|
||||
lsls r2, r3, 3
|
||||
adds r1, r2, r7
|
||||
ldrb r0, [r1]
|
||||
cmp r0, r6
|
||||
bne _0810CDA0
|
||||
ldrb r0, [r1, 0x1]
|
||||
cmp r0, r5
|
||||
bne _0810CDA0
|
||||
mov r1, r12
|
||||
adds r0, r2, r1
|
||||
ldr r0, [r0]
|
||||
bl _call_via_r0
|
||||
movs r0, 0x1
|
||||
b _0810CDB2
|
||||
.align 2, 0
|
||||
_0810CD9C: .4byte gUnknown_083F7FC4
|
||||
_0810CDA0:
|
||||
adds r0, r3, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r3, r0, 24
|
||||
lsls r0, r3, 3
|
||||
adds r0, r4
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
bne _0810CD7E
|
||||
_0810CDB0:
|
||||
movs r0, 0
|
||||
_0810CDB2:
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_810CD5C
|
||||
|
||||
thumb_func_start sub_810CDB8
|
||||
sub_810CDB8: @ 810CDB8
|
||||
push {r4-r6,lr}
|
||||
lsls r0, 24
|
||||
lsls r1, 24
|
||||
lsrs r5, r0, 24
|
||||
lsrs r4, r1, 24
|
||||
movs r3, 0
|
||||
ldr r1, _0810CDE4 @ =gUnknown_083F7FC4
|
||||
ldrb r0, [r1]
|
||||
cmp r0, 0
|
||||
beq _0810CDF8
|
||||
adds r6, r1, 0
|
||||
_0810CDCE:
|
||||
lsls r0, r3, 3
|
||||
adds r2, r0, r6
|
||||
ldrb r0, [r2]
|
||||
cmp r0, r5
|
||||
bne _0810CDE8
|
||||
ldrb r0, [r2, 0x1]
|
||||
cmp r0, r4
|
||||
bne _0810CDE8
|
||||
ldrb r0, [r2, 0x2]
|
||||
b _0810CDFA
|
||||
.align 2, 0
|
||||
_0810CDE4: .4byte gUnknown_083F7FC4
|
||||
_0810CDE8:
|
||||
adds r0, r3, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r3, r0, 24
|
||||
lsls r0, r3, 3
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
bne _0810CDCE
|
||||
_0810CDF8:
|
||||
movs r0, 0
|
||||
_0810CDFA:
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_810CDB8
|
||||
|
||||
thumb_func_start fade_type_for_given_maplight_pair
|
||||
fade_type_for_given_maplight_pair: @ 810CE00
|
||||
push {r4-r6,lr}
|
||||
lsls r0, 24
|
||||
lsls r1, 24
|
||||
lsrs r5, r0, 24
|
||||
lsrs r4, r1, 24
|
||||
movs r3, 0
|
||||
ldr r1, _0810CE2C @ =gUnknown_083F7FC4
|
||||
ldrb r0, [r1]
|
||||
cmp r0, 0
|
||||
beq _0810CE40
|
||||
adds r6, r1, 0
|
||||
_0810CE16:
|
||||
lsls r0, r3, 3
|
||||
adds r2, r0, r6
|
||||
ldrb r0, [r2]
|
||||
cmp r0, r5
|
||||
bne _0810CE30
|
||||
ldrb r0, [r2, 0x1]
|
||||
cmp r0, r4
|
||||
bne _0810CE30
|
||||
ldrb r0, [r2, 0x3]
|
||||
b _0810CE42
|
||||
.align 2, 0
|
||||
_0810CE2C: .4byte gUnknown_083F7FC4
|
||||
_0810CE30:
|
||||
adds r0, r3, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r3, r0, 24
|
||||
lsls r0, r3, 3
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
bne _0810CE16
|
||||
_0810CE40:
|
||||
movs r0, 0
|
||||
_0810CE42:
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end fade_type_for_given_maplight_pair
|
||||
|
||||
thumb_func_start sub_810CE48
|
||||
sub_810CE48: @ 810CE48
|
||||
push {lr}
|
||||
ldr r0, _0810CE58 @ =sub_810CE5C
|
||||
movs r1, 0
|
||||
bl CreateTask
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0810CE58: .4byte sub_810CE5C
|
||||
thumb_func_end sub_810CE48
|
||||
|
||||
thumb_func_start sub_810CE5C
|
||||
sub_810CE5C: @ 810CE5C
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _0810CE70 @ =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r1, r2
|
||||
ldr r0, _0810CE74 @ =sub_810CE78
|
||||
str r0, [r1]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_0810CE70: .4byte gTasks
|
||||
_0810CE74: .4byte sub_810CE78
|
||||
thumb_func_end sub_810CE5C
|
||||
|
||||
thumb_func_start sub_810CE78
|
||||
sub_810CE78: @ 810CE78
|
||||
push {r4-r6,lr}
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
movs r6, 0x80
|
||||
lsls r6, 19
|
||||
movs r5, 0
|
||||
strh r5, [r6]
|
||||
ldr r0, _0810CEE8 @ =gCaveTransitionTiles
|
||||
ldr r1, _0810CEEC @ =0x0600c000
|
||||
bl LZ77UnCompVram
|
||||
ldr r0, _0810CEF0 @ =gCaveTransitionTilemap
|
||||
ldr r1, _0810CEF4 @ =0x0600f800
|
||||
bl LZ77UnCompVram
|
||||
ldr r0, _0810CEF8 @ =gCaveTransitionPalette_White
|
||||
movs r1, 0xE0
|
||||
movs r2, 0x20
|
||||
bl LoadPalette
|
||||
ldr r0, _0810CEFC @ =gUnknown_083F809C
|
||||
movs r1, 0xE0
|
||||
movs r2, 0x10
|
||||
bl LoadPalette
|
||||
ldr r1, _0810CF00 @ =REG_BLDCNT
|
||||
ldr r2, _0810CF04 @ =0x00003e41
|
||||
adds r0, r2, 0
|
||||
strh r0, [r1]
|
||||
ldr r0, _0810CF08 @ =REG_BLDALPHA
|
||||
strh r5, [r0]
|
||||
adds r0, 0x2
|
||||
strh r5, [r0]
|
||||
subs r1, 0x48
|
||||
ldr r2, _0810CF0C @ =0x00001f0c
|
||||
adds r0, r2, 0
|
||||
strh r0, [r1]
|
||||
movs r1, 0x8A
|
||||
lsls r1, 5
|
||||
adds r0, r1, 0
|
||||
strh r0, [r6]
|
||||
ldr r1, _0810CF10 @ =gTasks
|
||||
lsls r0, r4, 2
|
||||
adds r0, r4
|
||||
lsls r0, 3
|
||||
adds r0, r1
|
||||
ldr r1, _0810CF14 @ =sub_810CF18
|
||||
str r1, [r0]
|
||||
movs r2, 0
|
||||
movs r1, 0x10
|
||||
strh r1, [r0, 0x8]
|
||||
strh r2, [r0, 0xA]
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0810CEE8: .4byte gCaveTransitionTiles
|
||||
_0810CEEC: .4byte 0x0600c000
|
||||
_0810CEF0: .4byte gCaveTransitionTilemap
|
||||
_0810CEF4: .4byte 0x0600f800
|
||||
_0810CEF8: .4byte gCaveTransitionPalette_White
|
||||
_0810CEFC: .4byte gUnknown_083F809C
|
||||
_0810CF00: .4byte REG_BLDCNT
|
||||
_0810CF04: .4byte 0x00003e41
|
||||
_0810CF08: .4byte REG_BLDALPHA
|
||||
_0810CF0C: .4byte 0x00001f0c
|
||||
_0810CF10: .4byte gTasks
|
||||
_0810CF14: .4byte sub_810CF18
|
||||
thumb_func_end sub_810CE78
|
||||
|
||||
thumb_func_start sub_810CF18
|
||||
sub_810CF18: @ 810CF18
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _0810CF44 @ =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r3, r1, r2
|
||||
ldrh r2, [r3, 0xA]
|
||||
movs r1, 0x80
|
||||
lsls r1, 5
|
||||
adds r0, r2, r1
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
ldr r1, _0810CF48 @ =REG_BLDALPHA
|
||||
strh r0, [r1]
|
||||
cmp r2, 0x10
|
||||
bhi _0810CF4C
|
||||
ldrh r0, [r3, 0xA]
|
||||
adds r0, 0x1
|
||||
strh r0, [r3, 0xA]
|
||||
b _0810CF54
|
||||
.align 2, 0
|
||||
_0810CF44: .4byte gTasks
|
||||
_0810CF48: .4byte REG_BLDALPHA
|
||||
_0810CF4C:
|
||||
movs r0, 0
|
||||
strh r0, [r3, 0xC]
|
||||
ldr r0, _0810CF58 @ =sub_810CF5C
|
||||
str r0, [r3]
|
||||
_0810CF54:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0810CF58: .4byte sub_810CF5C
|
||||
thumb_func_end sub_810CF18
|
||||
|
||||
thumb_func_start sub_810CF5C
|
||||
sub_810CF5C: @ 810CF5C
|
||||
push {r4,lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _0810CF94 @ =REG_BLDALPHA
|
||||
ldr r3, _0810CF98 @ =0x00001010
|
||||
adds r1, r3, 0
|
||||
strh r1, [r2]
|
||||
ldr r2, _0810CF9C @ =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r4, r1, r2
|
||||
ldrh r1, [r4, 0xC]
|
||||
cmp r1, 0x7
|
||||
bhi _0810CFA4
|
||||
adds r0, r1, 0x1
|
||||
strh r0, [r4, 0xC]
|
||||
lsls r1, 1
|
||||
ldr r0, _0810CFA0 @ =gUnknown_083F809C
|
||||
adds r0, r1, r0
|
||||
movs r2, 0x10
|
||||
subs r2, r1
|
||||
lsls r2, 16
|
||||
lsrs r2, 16
|
||||
movs r1, 0xE0
|
||||
bl LoadPalette
|
||||
b _0810CFB6
|
||||
.align 2, 0
|
||||
_0810CF94: .4byte REG_BLDALPHA
|
||||
_0810CF98: .4byte 0x00001010
|
||||
_0810CF9C: .4byte gTasks
|
||||
_0810CFA0: .4byte gUnknown_083F809C
|
||||
_0810CFA4:
|
||||
ldr r0, _0810CFBC @ =gCaveTransitionPalette_White
|
||||
movs r1, 0
|
||||
movs r2, 0x20
|
||||
bl LoadPalette
|
||||
ldr r0, _0810CFC0 @ =sub_810CFC4
|
||||
str r0, [r4]
|
||||
movs r0, 0x8
|
||||
strh r0, [r4, 0xC]
|
||||
_0810CFB6:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0810CFBC: .4byte gCaveTransitionPalette_White
|
||||
_0810CFC0: .4byte sub_810CFC4
|
||||
thumb_func_end sub_810CF5C
|
||||
|
||||
thumb_func_start sub_810CFC4
|
||||
sub_810CFC4: @ 810CFC4
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _0810CFE4 @ =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r1, r2
|
||||
ldrh r2, [r1, 0xC]
|
||||
movs r3, 0xC
|
||||
ldrsh r0, [r1, r3]
|
||||
cmp r0, 0
|
||||
beq _0810CFE8
|
||||
subs r0, r2, 0x1
|
||||
strh r0, [r1, 0xC]
|
||||
b _0810CFF0
|
||||
.align 2, 0
|
||||
_0810CFE4: .4byte gTasks
|
||||
_0810CFE8:
|
||||
ldr r0, _0810CFF4 @ =gMain
|
||||
ldr r0, [r0, 0x8]
|
||||
bl SetMainCallback2
|
||||
_0810CFF0:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0810CFF4: .4byte gMain
|
||||
thumb_func_end sub_810CFC4
|
||||
|
||||
thumb_func_start sub_810CFF8
|
||||
sub_810CFF8: @ 810CFF8
|
||||
push {lr}
|
||||
ldr r0, _0810D008 @ =sub_810D00C
|
||||
movs r1, 0
|
||||
bl CreateTask
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0810D008: .4byte sub_810D00C
|
||||
thumb_func_end sub_810CFF8
|
||||
|
||||
thumb_func_start sub_810D00C
|
||||
sub_810D00C: @ 810D00C
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _0810D020 @ =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r1, r2
|
||||
ldr r0, _0810D024 @ =sub_810D028
|
||||
str r0, [r1]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_0810D020: .4byte gTasks
|
||||
_0810D024: .4byte sub_810D028
|
||||
thumb_func_end sub_810D00C
|
||||
|
||||
thumb_func_start sub_810D028
|
||||
sub_810D028: @ 810D028
|
||||
push {r4-r6,lr}
|
||||
adds r5, r0, 0
|
||||
lsls r5, 24
|
||||
lsrs r5, 24
|
||||
movs r6, 0x80
|
||||
lsls r6, 19
|
||||
movs r4, 0
|
||||
strh r4, [r6]
|
||||
ldr r0, _0810D098 @ =gCaveTransitionTiles
|
||||
ldr r1, _0810D09C @ =0x0600c000
|
||||
bl LZ77UnCompVram
|
||||
ldr r0, _0810D0A0 @ =gCaveTransitionTilemap
|
||||
ldr r1, _0810D0A4 @ =0x0600f800
|
||||
bl LZ77UnCompVram
|
||||
ldr r0, _0810D0A8 @ =REG_BLDCNT
|
||||
strh r4, [r0]
|
||||
adds r0, 0x2
|
||||
strh r4, [r0]
|
||||
adds r0, 0x2
|
||||
strh r4, [r0]
|
||||
ldr r1, _0810D0AC @ =REG_BG0CNT
|
||||
ldr r2, _0810D0B0 @ =0x00001f0c
|
||||
adds r0, r2, 0
|
||||
strh r0, [r1]
|
||||
movs r1, 0x8A
|
||||
lsls r1, 5
|
||||
adds r0, r1, 0
|
||||
strh r0, [r6]
|
||||
ldr r0, _0810D0B4 @ =gCaveTransitionPalette_White
|
||||
movs r1, 0xE0
|
||||
movs r2, 0x20
|
||||
bl LoadPalette
|
||||
ldr r0, _0810D0B8 @ =gCaveTransitionPalette_Black
|
||||
movs r1, 0
|
||||
movs r2, 0x20
|
||||
bl LoadPalette
|
||||
ldr r1, _0810D0BC @ =gTasks
|
||||
lsls r0, r5, 2
|
||||
adds r0, r5
|
||||
lsls r0, 3
|
||||
adds r0, r1
|
||||
ldr r1, _0810D0C0 @ =sub_810D0C4
|
||||
str r1, [r0]
|
||||
movs r2, 0
|
||||
movs r1, 0x10
|
||||
strh r1, [r0, 0x8]
|
||||
strh r2, [r0, 0xA]
|
||||
strh r2, [r0, 0xC]
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0810D098: .4byte gCaveTransitionTiles
|
||||
_0810D09C: .4byte 0x0600c000
|
||||
_0810D0A0: .4byte gCaveTransitionTilemap
|
||||
_0810D0A4: .4byte 0x0600f800
|
||||
_0810D0A8: .4byte REG_BLDCNT
|
||||
_0810D0AC: .4byte REG_BG0CNT
|
||||
_0810D0B0: .4byte 0x00001f0c
|
||||
_0810D0B4: .4byte gCaveTransitionPalette_White
|
||||
_0810D0B8: .4byte gCaveTransitionPalette_Black
|
||||
_0810D0BC: .4byte gTasks
|
||||
_0810D0C0: .4byte sub_810D0C4
|
||||
thumb_func_end sub_810D028
|
||||
|
||||
thumb_func_start sub_810D0C4
|
||||
sub_810D0C4: @ 810D0C4
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _0810D0F8 @ =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r3, r1, r2
|
||||
ldrh r1, [r3, 0xC]
|
||||
cmp r1, 0xF
|
||||
bhi _0810D100
|
||||
adds r2, r1, 0x1
|
||||
adds r0, r2, 0x1
|
||||
strh r0, [r3, 0xC]
|
||||
movs r0, 0xF
|
||||
subs r0, r1
|
||||
lsls r0, 1
|
||||
ldr r1, _0810D0FC @ =gUnknown_083F808C
|
||||
adds r0, r1
|
||||
lsls r2, 17
|
||||
lsrs r2, 16
|
||||
movs r1, 0xE0
|
||||
bl LoadPalette
|
||||
b _0810D114
|
||||
.align 2, 0
|
||||
_0810D0F8: .4byte gTasks
|
||||
_0810D0FC: .4byte gUnknown_083F808C
|
||||
_0810D100:
|
||||
ldr r1, _0810D118 @ =REG_BLDALPHA
|
||||
ldr r2, _0810D11C @ =0x00001010
|
||||
adds r0, r2, 0
|
||||
strh r0, [r1]
|
||||
subs r1, 0x2
|
||||
ldr r2, _0810D120 @ =0x00003e41
|
||||
adds r0, r2, 0
|
||||
strh r0, [r1]
|
||||
ldr r0, _0810D124 @ =sub_810D128
|
||||
str r0, [r3]
|
||||
_0810D114:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0810D118: .4byte REG_BLDALPHA
|
||||
_0810D11C: .4byte 0x00001010
|
||||
_0810D120: .4byte 0x00003e41
|
||||
_0810D124: .4byte sub_810D128
|
||||
thumb_func_end sub_810D0C4
|
||||
|
||||
thumb_func_start sub_810D128
|
||||
sub_810D128: @ 810D128
|
||||
push {lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r2, _0810D158 @ =gTasks
|
||||
lsls r1, r0, 2
|
||||
adds r1, r0
|
||||
lsls r1, 3
|
||||
adds r3, r1, r2
|
||||
ldrh r0, [r3, 0xA]
|
||||
movs r1, 0x10
|
||||
subs r1, r0
|
||||
lsls r1, 16
|
||||
movs r2, 0x80
|
||||
lsls r2, 21
|
||||
adds r0, r1, r2
|
||||
lsrs r0, 16
|
||||
ldr r2, _0810D15C @ =REG_BLDALPHA
|
||||
strh r0, [r2]
|
||||
cmp r1, 0
|
||||
beq _0810D160
|
||||
ldrh r0, [r3, 0xA]
|
||||
adds r0, 0x1
|
||||
strh r0, [r3, 0xA]
|
||||
b _0810D172
|
||||
.align 2, 0
|
||||
_0810D158: .4byte gTasks
|
||||
_0810D15C: .4byte REG_BLDALPHA
|
||||
_0810D160:
|
||||
ldr r0, _0810D178 @ =gCaveTransitionPalette_Black
|
||||
movs r1, 0
|
||||
movs r2, 0x20
|
||||
bl LoadPalette
|
||||
ldr r0, _0810D17C @ =gMain
|
||||
ldr r0, [r0, 0x8]
|
||||
bl SetMainCallback2
|
||||
_0810D172:
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0810D178: .4byte gCaveTransitionPalette_Black
|
||||
_0810D17C: .4byte gMain
|
||||
thumb_func_end sub_810D128
|
||||
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
-3402
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
-9873
File diff suppressed because it is too large
Load Diff
-2739
File diff suppressed because it is too large
Load Diff
@@ -4,6 +4,8 @@
|
||||
|
||||
.syntax unified
|
||||
|
||||
.lcomm gUnknown_030007B8, 0x770
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start umul3232H32
|
||||
|
||||
+254
-236
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
-1339
File diff suppressed because it is too large
Load Diff
-1008
File diff suppressed because it is too large
Load Diff
@@ -1,831 +0,0 @@
|
||||
.include "constants/gba_constants.inc"
|
||||
.include "constants/species_constants.inc"
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start unref_sub_81261B4
|
||||
unref_sub_81261B4: @ 81261B4
|
||||
push {r4-r7,lr}
|
||||
adds r5, r0, 0
|
||||
adds r7, r1, 0
|
||||
ldrb r0, [r5]
|
||||
cmp r0, 0x1
|
||||
bne _08126204
|
||||
ldrb r0, [r5, 0x11]
|
||||
cmp r0, 0xF
|
||||
bne _08126204
|
||||
adds r6, r5, 0
|
||||
adds r6, 0x12
|
||||
adds r0, r6, 0
|
||||
bl sub_812618C
|
||||
cmp r0, 0
|
||||
bne _08126204
|
||||
adds r0, r5, 0
|
||||
adds r0, 0x16
|
||||
bl sub_812618C
|
||||
adds r4, r0, 0
|
||||
subs r4, r7
|
||||
adds r4, r5
|
||||
adds r0, r5, 0
|
||||
adds r0, 0x1A
|
||||
bl sub_812618C
|
||||
adds r1, r0, 0
|
||||
subs r1, r7
|
||||
adds r1, r5
|
||||
subs r1, r4
|
||||
adds r0, r4, 0
|
||||
bl sub_812616C
|
||||
adds r1, r0, 0
|
||||
adds r0, r6, 0
|
||||
bl sub_81261A4
|
||||
movs r0, 0x1
|
||||
b _08126206
|
||||
_08126204:
|
||||
movs r0, 0
|
||||
_08126206:
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end unref_sub_81261B4
|
||||
|
||||
thumb_func_start unref_sub_812620C
|
||||
unref_sub_812620C: @ 812620C
|
||||
push {r4-r7,lr}
|
||||
adds r5, r0, 0
|
||||
adds r7, r1, 0
|
||||
ldrb r0, [r5]
|
||||
cmp r0, 0x1
|
||||
bne _08126260
|
||||
ldrb r0, [r5, 0x11]
|
||||
cmp r0, 0x10
|
||||
bne _08126260
|
||||
adds r6, r5, 0
|
||||
adds r6, 0x12
|
||||
adds r0, r6, 0
|
||||
bl sub_812618C
|
||||
cmp r0, 0
|
||||
bne _08126260
|
||||
adds r0, r5, 0
|
||||
adds r0, 0x16
|
||||
bl sub_812618C
|
||||
adds r4, r0, 0
|
||||
subs r4, r7
|
||||
adds r4, r5
|
||||
adds r0, r5, 0
|
||||
adds r0, 0x1A
|
||||
bl sub_812618C
|
||||
adds r1, r0, 0
|
||||
subs r1, r7
|
||||
adds r1, r5
|
||||
subs r1, r4
|
||||
adds r0, r4, 0
|
||||
bl CalcCRC16
|
||||
adds r1, r0, 0
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
adds r0, r6, 0
|
||||
bl sub_81261A4
|
||||
movs r0, 0x1
|
||||
b _08126262
|
||||
_08126260:
|
||||
movs r0, 0
|
||||
_08126262:
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end unref_sub_812620C
|
||||
|
||||
thumb_func_start sub_8126268
|
||||
sub_8126268: @ 8126268
|
||||
push {lr}
|
||||
movs r2, 0
|
||||
ldr r3, _08126284 @ =gSaveBlock1 + 0x3A80
|
||||
movs r1, 0
|
||||
_08126270:
|
||||
adds r0, r3, r1
|
||||
ldrb r0, [r0]
|
||||
adds r2, r0
|
||||
adds r1, 0x1
|
||||
cmp r1, 0xB
|
||||
bls _08126270
|
||||
adds r0, r2, 0
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08126284: .4byte gSaveBlock1 + 0x3A80
|
||||
thumb_func_end sub_8126268
|
||||
|
||||
thumb_func_start sub_8126288
|
||||
sub_8126288: @ 8126288
|
||||
push {r4,lr}
|
||||
ldr r4, _081262B4 @ =gSaveBlock1 + 0x3A80
|
||||
bl sub_8126268
|
||||
adds r1, r0, 0
|
||||
ldrb r0, [r4]
|
||||
cmp r0, 0
|
||||
beq _081262B0
|
||||
ldrb r0, [r4, 0x1]
|
||||
cmp r0, 0
|
||||
beq _081262B0
|
||||
ldrh r0, [r4, 0x2]
|
||||
cmp r0, 0
|
||||
beq _081262B0
|
||||
cmp r1, 0
|
||||
beq _081262B0
|
||||
subs r0, r4, 0x4
|
||||
ldr r0, [r0]
|
||||
cmp r1, r0
|
||||
beq _081262B8
|
||||
_081262B0:
|
||||
movs r0, 0
|
||||
b _081262BA
|
||||
.align 2, 0
|
||||
_081262B4: .4byte gSaveBlock1 + 0x3A80
|
||||
_081262B8:
|
||||
movs r0, 0x1
|
||||
_081262BA:
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8126288
|
||||
|
||||
thumb_func_start sub_81262C0
|
||||
sub_81262C0: @ 81262C0
|
||||
push {lr}
|
||||
sub sp, 0x4
|
||||
mov r1, sp
|
||||
movs r0, 0
|
||||
strh r0, [r1]
|
||||
ldr r1, _081262DC @ =gSaveBlock1 + 0x3A7C
|
||||
ldr r2, _081262E0 @ =0x01000008
|
||||
mov r0, sp
|
||||
bl CpuSet
|
||||
add sp, 0x4
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_081262DC: .4byte gSaveBlock1 + 0x3A7C
|
||||
_081262E0: .4byte 0x01000008
|
||||
thumb_func_end sub_81262C0
|
||||
|
||||
thumb_func_start sub_81262E4
|
||||
sub_81262E4: @ 81262E4
|
||||
push {r4-r6,lr}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
adds r3, r0, 0
|
||||
lsls r1, 24
|
||||
lsrs r1, 24
|
||||
adds r5, r1, 0
|
||||
lsls r2, 16
|
||||
lsrs r2, 16
|
||||
adds r6, r2, 0
|
||||
cmp r3, 0
|
||||
beq _08126304
|
||||
cmp r1, 0
|
||||
beq _08126304
|
||||
cmp r2, 0
|
||||
bne _0812630A
|
||||
_08126304:
|
||||
bl sub_81262C0
|
||||
b _0812632A
|
||||
_0812630A:
|
||||
ldr r4, _08126330 @ =gSaveBlock1
|
||||
movs r1, 0xEA
|
||||
lsls r1, 6
|
||||
adds r0, r4, r1
|
||||
strb r3, [r0]
|
||||
adds r1, 0x1
|
||||
adds r0, r4, r1
|
||||
strb r5, [r0]
|
||||
adds r1, 0x1
|
||||
adds r0, r4, r1
|
||||
strh r6, [r0]
|
||||
bl sub_8126268
|
||||
ldr r1, _08126334 @ =0x00003a7c
|
||||
adds r4, r1
|
||||
str r0, [r4]
|
||||
_0812632A:
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08126330: .4byte gSaveBlock1
|
||||
_08126334: .4byte 0x00003a7c
|
||||
thumb_func_end sub_81262E4
|
||||
|
||||
thumb_func_start sub_8126338
|
||||
sub_8126338: @ 8126338
|
||||
push {r4,r5,lr}
|
||||
ldr r4, _0812634C @ =gSaveBlock1 + 0x3A80
|
||||
bl sub_8126288
|
||||
cmp r0, 0
|
||||
bne _08126350
|
||||
bl sub_81262C0
|
||||
movs r0, 0
|
||||
b _0812636E
|
||||
.align 2, 0
|
||||
_0812634C: .4byte gSaveBlock1 + 0x3A80
|
||||
_08126350:
|
||||
ldrh r5, [r4, 0x2]
|
||||
ldrb r0, [r4, 0x1]
|
||||
subs r0, 0x1
|
||||
strb r0, [r4, 0x1]
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08126364
|
||||
bl sub_81262C0
|
||||
b _0812636C
|
||||
_08126364:
|
||||
bl sub_8126268
|
||||
subs r1, r4, 0x4
|
||||
str r0, [r1]
|
||||
_0812636C:
|
||||
adds r0, r5, 0
|
||||
_0812636E:
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8126338
|
||||
|
||||
thumb_func_start script_status_stop_and_ret_1
|
||||
script_status_stop_and_ret_1: @ 8126374
|
||||
push {lr}
|
||||
bl StopScript
|
||||
movs r0, 0x1
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end script_status_stop_and_ret_1
|
||||
|
||||
thumb_func_start sub_8126380
|
||||
sub_8126380: @ 8126380
|
||||
push {r4-r7,lr}
|
||||
adds r7, r0, 0
|
||||
bl ScriptReadWord
|
||||
str r0, [r7, 0x68]
|
||||
adds r0, r7, 0
|
||||
bl ScriptReadHalfword
|
||||
adds r5, r0, 0
|
||||
lsls r5, 16
|
||||
lsrs r5, 16
|
||||
adds r0, r7, 0
|
||||
bl ScriptReadWord
|
||||
adds r6, r0, 0
|
||||
adds r0, r7, 0
|
||||
bl ScriptReadHalfword
|
||||
adds r4, r0, 0
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
adds r0, r7, 0
|
||||
bl ScriptReadWord
|
||||
adds r3, r0, 0
|
||||
adds r0, r5, 0
|
||||
adds r1, r6, 0
|
||||
adds r2, r4, 0
|
||||
bl sub_8126098
|
||||
cmp r0, 0x1
|
||||
bne _081263C4
|
||||
str r0, [r7, 0x70]
|
||||
b _081263C8
|
||||
_081263C4:
|
||||
bl sub_81260D0
|
||||
_081263C8:
|
||||
movs r0, 0x1
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8126380
|
||||
|
||||
thumb_func_start sub_81263D0
|
||||
sub_81263D0: @ 81263D0
|
||||
movs r0, 0
|
||||
bx lr
|
||||
thumb_func_end sub_81263D0
|
||||
|
||||
thumb_func_start sub_81263D4
|
||||
sub_81263D4: @ 81263D4
|
||||
ldr r1, [r0, 0x8]
|
||||
ldrb r2, [r1]
|
||||
adds r1, 0x1
|
||||
str r1, [r0, 0x8]
|
||||
str r2, [r0, 0x6C]
|
||||
movs r0, 0
|
||||
bx lr
|
||||
thumb_func_end sub_81263D4
|
||||
|
||||
thumb_func_start sub_81263E4
|
||||
sub_81263E4: @ 81263E4
|
||||
push {r4,r5,lr}
|
||||
adds r4, r0, 0
|
||||
ldr r0, [r4, 0x8]
|
||||
ldrb r5, [r0]
|
||||
adds r0, 0x1
|
||||
str r0, [r4, 0x8]
|
||||
adds r0, r4, 0
|
||||
bl ScriptReadWord
|
||||
ldr r1, [r4, 0x68]
|
||||
subs r0, r1
|
||||
ldr r1, [r4, 0x64]
|
||||
adds r1, r0, r1
|
||||
cmp r5, 0xFF
|
||||
beq _08126408
|
||||
ldr r0, [r4, 0x6C]
|
||||
cmp r5, r0
|
||||
bne _0812640E
|
||||
_08126408:
|
||||
ldr r0, _08126418 @ =gStringVar4
|
||||
bl StringExpandPlaceholders
|
||||
_0812640E:
|
||||
movs r0, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08126418: .4byte gStringVar4
|
||||
thumb_func_end sub_81263E4
|
||||
|
||||
thumb_func_start sub_812641C
|
||||
sub_812641C: @ 812641C
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
bl ScriptReadWord
|
||||
ldr r1, [r4, 0x68]
|
||||
subs r0, r1
|
||||
ldr r1, [r4, 0x64]
|
||||
adds r0, r1
|
||||
bl ScriptContext2_RunNewScript
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_812641C
|
||||
|
||||
thumb_func_start sub_8126438
|
||||
sub_8126438: @ 8126438
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
adds r7, r0, 0
|
||||
bl IsEnigmaBerryValid
|
||||
mov r8, r0
|
||||
adds r0, r7, 0
|
||||
bl ScriptReadWord
|
||||
adds r4, r0, 0
|
||||
ldr r0, [r7, 0x68]
|
||||
subs r4, r0
|
||||
ldr r0, [r7, 0x64]
|
||||
adds r4, r0
|
||||
ldr r6, _08126484 @ =gStringVar1
|
||||
ldr r5, _08126488 @ =gSaveBlock1 + 0x3160
|
||||
adds r0, r6, 0
|
||||
adds r1, r5, 0
|
||||
movs r2, 0x7
|
||||
bl StringCopyN
|
||||
adds r0, r4, 0
|
||||
bl SetEnigmaBerry
|
||||
ldr r4, _0812648C @ =gStringVar2
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
movs r2, 0x7
|
||||
bl StringCopyN
|
||||
mov r0, r8
|
||||
cmp r0, 0
|
||||
bne _08126498
|
||||
ldr r0, _08126490 @ =gStringVar4
|
||||
ldr r1, _08126494 @ =gOtherText_BerryObtainedDadHasIt
|
||||
b _081264B8
|
||||
.align 2, 0
|
||||
_08126484: .4byte gStringVar1
|
||||
_08126488: .4byte gSaveBlock1 + 0x3160
|
||||
_0812648C: .4byte gStringVar2
|
||||
_08126490: .4byte gStringVar4
|
||||
_08126494: .4byte gOtherText_BerryObtainedDadHasIt
|
||||
_08126498:
|
||||
adds r0, r6, 0
|
||||
adds r1, r4, 0
|
||||
bl StringCompare
|
||||
cmp r0, 0
|
||||
beq _081264B4
|
||||
ldr r0, _081264AC @ =gStringVar4
|
||||
ldr r1, _081264B0 @ =gOtherText_BerryTransformed
|
||||
b _081264B8
|
||||
.align 2, 0
|
||||
_081264AC: .4byte gStringVar4
|
||||
_081264B0: .4byte gOtherText_BerryTransformed
|
||||
_081264B4:
|
||||
ldr r0, _081264D4 @ =gStringVar4
|
||||
ldr r1, _081264D8 @ =gOtherText_BerryAlreadyObtained
|
||||
_081264B8:
|
||||
bl StringExpandPlaceholders
|
||||
movs r0, 0x2
|
||||
str r0, [r7, 0x6C]
|
||||
bl IsEnigmaBerryValid
|
||||
cmp r0, 0x1
|
||||
bne _081264E0
|
||||
ldr r0, _081264DC @ =0x0000402d
|
||||
movs r1, 0x1
|
||||
bl VarSet
|
||||
b _081264E4
|
||||
.align 2, 0
|
||||
_081264D4: .4byte gStringVar4
|
||||
_081264D8: .4byte gOtherText_BerryAlreadyObtained
|
||||
_081264DC: .4byte 0x0000402d
|
||||
_081264E0:
|
||||
movs r0, 0x1
|
||||
str r0, [r7, 0x6C]
|
||||
_081264E4:
|
||||
movs r0, 0
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8126438
|
||||
|
||||
thumb_func_start sub_81264F0
|
||||
sub_81264F0: @ 81264F0
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
ldr r2, [r4, 0x8]
|
||||
ldrb r0, [r2]
|
||||
adds r2, 0x1
|
||||
str r2, [r4, 0x8]
|
||||
ldrb r1, [r2]
|
||||
adds r2, 0x1
|
||||
str r2, [r4, 0x8]
|
||||
bl GiveGiftRibbonToParty
|
||||
ldr r0, _0812651C @ =gStringVar4
|
||||
ldr r1, _08126520 @ =gOtherText_SpecialRibbonReceived
|
||||
bl StringExpandPlaceholders
|
||||
movs r0, 0x2
|
||||
str r0, [r4, 0x6C]
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0812651C: .4byte gStringVar4
|
||||
_08126520: .4byte gOtherText_SpecialRibbonReceived
|
||||
thumb_func_end sub_81264F0
|
||||
|
||||
thumb_func_start sub_8126524
|
||||
sub_8126524: @ 8126524
|
||||
push {r4-r6,lr}
|
||||
mov r6, r9
|
||||
mov r5, r8
|
||||
push {r5,r6}
|
||||
sub sp, 0x4
|
||||
adds r4, r0, 0
|
||||
ldr r0, [r4, 0x8]
|
||||
ldrb r1, [r0]
|
||||
mov r9, r1
|
||||
adds r0, 0x1
|
||||
str r0, [r4, 0x8]
|
||||
ldrb r1, [r0]
|
||||
mov r8, r1
|
||||
adds r1, r0, 0x1
|
||||
str r1, [r4, 0x8]
|
||||
ldrb r6, [r0, 0x1]
|
||||
adds r1, 0x1
|
||||
str r1, [r4, 0x8]
|
||||
adds r0, r4, 0
|
||||
bl ScriptReadWord
|
||||
adds r5, r0, 0
|
||||
ldr r0, [r4, 0x68]
|
||||
subs r5, r0
|
||||
ldr r0, [r4, 0x64]
|
||||
adds r5, r0
|
||||
adds r0, r4, 0
|
||||
bl ScriptReadWord
|
||||
adds r1, r0, 0
|
||||
ldr r0, [r4, 0x68]
|
||||
subs r1, r0
|
||||
ldr r0, [r4, 0x64]
|
||||
adds r1, r0
|
||||
subs r1, r5
|
||||
lsls r1, 16
|
||||
lsrs r1, 16
|
||||
str r6, [sp]
|
||||
adds r0, r5, 0
|
||||
mov r2, r9
|
||||
mov r3, r8
|
||||
bl InitRamScript
|
||||
movs r0, 0
|
||||
add sp, 0x4
|
||||
pop {r3,r4}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8126524
|
||||
|
||||
thumb_func_start sub_812658C
|
||||
sub_812658C: @ 812658C
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
bl EnableNationalPokedex
|
||||
ldr r0, _081265A8 @ =gStringVar4
|
||||
ldr r1, _081265AC @ =gOtherText_DexUpgraded
|
||||
bl StringExpandPlaceholders
|
||||
movs r0, 0x2
|
||||
str r0, [r4, 0x6C]
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_081265A8: .4byte gStringVar4
|
||||
_081265AC: .4byte gOtherText_DexUpgraded
|
||||
thumb_func_end sub_812658C
|
||||
|
||||
thumb_func_start sub_81265B0
|
||||
sub_81265B0: @ 81265B0
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
ldr r1, [r4, 0x8]
|
||||
ldrb r0, [r1]
|
||||
adds r1, 0x1
|
||||
str r1, [r4, 0x8]
|
||||
bl sub_80EB890
|
||||
ldr r0, _081265D4 @ =gStringVar4
|
||||
ldr r1, _081265D8 @ =gOtherText_RareWordAdded
|
||||
bl StringExpandPlaceholders
|
||||
movs r0, 0x2
|
||||
str r0, [r4, 0x6C]
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_081265D4: .4byte gStringVar4
|
||||
_081265D8: .4byte gOtherText_RareWordAdded
|
||||
thumb_func_end sub_81265B0
|
||||
|
||||
thumb_func_start sub_81265DC
|
||||
sub_81265DC: @ 81265DC
|
||||
push {r4,r5,lr}
|
||||
ldr r1, [r0, 0x8]
|
||||
ldrb r5, [r1]
|
||||
adds r1, 0x1
|
||||
str r1, [r0, 0x8]
|
||||
ldrb r4, [r1]
|
||||
adds r1, 0x1
|
||||
str r1, [r0, 0x8]
|
||||
bl ScriptReadHalfword
|
||||
adds r2, r0, 0
|
||||
lsls r2, 16
|
||||
lsrs r2, 16
|
||||
adds r0, r5, 0
|
||||
adds r1, r4, 0
|
||||
bl sub_81262E4
|
||||
movs r0, 0
|
||||
pop {r4,r5}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_81265DC
|
||||
|
||||
thumb_func_start sub_8126608
|
||||
sub_8126608: @ 8126608
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
sub sp, 0x88
|
||||
adds r6, r0, 0
|
||||
bl ScriptReadWord
|
||||
ldr r1, [r6, 0x68]
|
||||
subs r0, r1
|
||||
ldr r1, [r6, 0x64]
|
||||
adds r5, r0, r1
|
||||
movs r0, 0x64
|
||||
adds r0, r5
|
||||
mov r8, r0
|
||||
add r4, sp, 0x24
|
||||
adds r0, r4, 0
|
||||
adds r1, r5, 0
|
||||
movs r2, 0x64
|
||||
bl memcpy
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x41
|
||||
bl GetMonData
|
||||
lsls r0, 16
|
||||
lsrs r4, r0, 16
|
||||
movs r0, 0xCE
|
||||
lsls r0, 1
|
||||
cmp r4, r0
|
||||
bne _08126658
|
||||
ldr r0, _08126650 @ =gStringVar1
|
||||
ldr r1, _08126654 @ =gSystemText_Egg
|
||||
movs r2, 0xB
|
||||
bl StringCopyN
|
||||
b _08126662
|
||||
.align 2, 0
|
||||
_08126650: .4byte gStringVar1
|
||||
_08126654: .4byte gSystemText_Egg
|
||||
_08126658:
|
||||
ldr r0, _08126678 @ =gStringVar1
|
||||
ldr r1, _0812667C @ =gSystemText_Pokemon2
|
||||
movs r2, 0xB
|
||||
bl StringCopyN
|
||||
_08126662:
|
||||
ldr r0, _08126680 @ =gPlayerPartyCount
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0x6
|
||||
bne _0812668C
|
||||
ldr r0, _08126684 @ =gStringVar4
|
||||
ldr r1, _08126688 @ =gOtherText_PartyIsFull
|
||||
bl StringExpandPlaceholders
|
||||
movs r0, 0x3
|
||||
b _081266F6
|
||||
.align 2, 0
|
||||
_08126678: .4byte gStringVar1
|
||||
_0812667C: .4byte gSystemText_Pokemon2
|
||||
_08126680: .4byte gPlayerPartyCount
|
||||
_08126684: .4byte gStringVar4
|
||||
_08126688: .4byte gOtherText_PartyIsFull
|
||||
_0812668C:
|
||||
ldr r7, _08126708 @ =gPlayerParty + 5 * 0x64
|
||||
adds r0, r7, 0
|
||||
adds r1, r5, 0
|
||||
movs r2, 0x64
|
||||
bl memcpy
|
||||
mov r0, sp
|
||||
mov r1, r8
|
||||
movs r2, 0x24
|
||||
bl memcpy
|
||||
movs r0, 0xCE
|
||||
lsls r0, 1
|
||||
cmp r4, r0
|
||||
beq _081266C6
|
||||
adds r0, r4, 0
|
||||
bl SpeciesToNationalPokedexNum
|
||||
adds r4, r0, 0
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x2
|
||||
bl GetNationalPokedexFlag
|
||||
adds r0, r4, 0
|
||||
movs r1, 0x3
|
||||
bl GetNationalPokedexFlag
|
||||
_081266C6:
|
||||
adds r0, r7, 0
|
||||
movs r1, 0xC
|
||||
bl GetMonData
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl ItemIsMail
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _081266E4
|
||||
adds r0, r7, 0
|
||||
mov r1, sp
|
||||
bl GiveMailToMon2
|
||||
_081266E4:
|
||||
bl party_compaction
|
||||
bl CalculatePlayerPartyCount
|
||||
ldr r0, _0812670C @ =gStringVar4
|
||||
ldr r1, _08126710 @ =gOtherText_PokeWasSentOver
|
||||
bl StringExpandPlaceholders
|
||||
movs r0, 0x2
|
||||
_081266F6:
|
||||
str r0, [r6, 0x6C]
|
||||
movs r0, 0
|
||||
add sp, 0x88
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08126708: .4byte gPlayerParty + 5 * 0x64
|
||||
_0812670C: .4byte gStringVar4
|
||||
_08126710: .4byte gOtherText_PokeWasSentOver
|
||||
thumb_func_end sub_8126608
|
||||
|
||||
thumb_func_start sub_8126714
|
||||
sub_8126714: @ 8126714
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
bl ScriptReadWord
|
||||
adds r1, r0, 0
|
||||
ldr r0, [r4, 0x68]
|
||||
subs r1, r0
|
||||
ldr r0, [r4, 0x64]
|
||||
adds r1, r0
|
||||
ldr r0, _08126748 @ =gSaveBlock2 + 0x498
|
||||
movs r2, 0xBC
|
||||
bl memcpy
|
||||
bl sub_813601C
|
||||
ldr r0, _0812674C @ =gStringVar4
|
||||
ldr r1, _08126750 @ =gOtherText_NewTrainerInHoenn
|
||||
bl StringExpandPlaceholders
|
||||
movs r0, 0x2
|
||||
str r0, [r4, 0x6C]
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08126748: .4byte gSaveBlock2 + 0x498
|
||||
_0812674C: .4byte gStringVar4
|
||||
_08126750: .4byte gOtherText_NewTrainerInHoenn
|
||||
thumb_func_end sub_8126714
|
||||
|
||||
thumb_func_start sub_8126754
|
||||
sub_8126754: @ 8126754
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
bl EnableResetRTC
|
||||
ldr r0, _08126770 @ =gStringVar4
|
||||
ldr r1, _08126774 @ =gSystemText_ClockAdjustmentUsable
|
||||
bl StringExpandPlaceholders
|
||||
movs r0, 0x2
|
||||
str r0, [r4, 0x6C]
|
||||
movs r0, 0
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08126770: .4byte gStringVar4
|
||||
_08126774: .4byte gSystemText_ClockAdjustmentUsable
|
||||
thumb_func_end sub_8126754
|
||||
|
||||
thumb_func_start sub_8126778
|
||||
sub_8126778: @ 8126778
|
||||
push {r4-r6,lr}
|
||||
adds r6, r0, 0
|
||||
bl ScriptReadWord
|
||||
adds r5, r0, 0
|
||||
adds r0, r6, 0
|
||||
bl ScriptReadWord
|
||||
adds r4, r0, 0
|
||||
ldr r0, [r6, 0x68]
|
||||
subs r4, r0
|
||||
ldr r0, [r6, 0x64]
|
||||
adds r4, r0
|
||||
adds r0, r6, 0
|
||||
bl ScriptReadWord
|
||||
adds r1, r0, 0
|
||||
ldr r0, [r6, 0x68]
|
||||
subs r1, r0
|
||||
ldr r0, [r6, 0x64]
|
||||
adds r1, r0
|
||||
subs r1, r4
|
||||
adds r0, r4, 0
|
||||
bl sub_812616C
|
||||
cmp r5, r0
|
||||
beq _081267B6
|
||||
movs r0, 0
|
||||
str r0, [r6, 0x70]
|
||||
movs r0, 0x1
|
||||
str r0, [r6, 0x6C]
|
||||
_081267B6:
|
||||
movs r0, 0x1
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_8126778
|
||||
|
||||
thumb_func_start sub_81267C0
|
||||
sub_81267C0: @ 81267C0
|
||||
push {r4-r6,lr}
|
||||
adds r6, r0, 0
|
||||
bl ScriptReadWord
|
||||
adds r5, r0, 0
|
||||
adds r0, r6, 0
|
||||
bl ScriptReadWord
|
||||
adds r4, r0, 0
|
||||
ldr r0, [r6, 0x68]
|
||||
subs r4, r0
|
||||
ldr r0, [r6, 0x64]
|
||||
adds r4, r0
|
||||
adds r0, r6, 0
|
||||
bl ScriptReadWord
|
||||
adds r1, r0, 0
|
||||
ldr r0, [r6, 0x68]
|
||||
subs r1, r0
|
||||
ldr r0, [r6, 0x64]
|
||||
adds r1, r0
|
||||
subs r1, r4
|
||||
adds r0, r4, 0
|
||||
bl CalcCRC16
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
cmp r5, r0
|
||||
beq _08126802
|
||||
movs r0, 0
|
||||
str r0, [r6, 0x70]
|
||||
movs r0, 0x1
|
||||
str r0, [r6, 0x6C]
|
||||
_08126802:
|
||||
movs r0, 0x1
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_81267C0
|
||||
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
-8225
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -92,7 +92,7 @@ _08110720:
|
||||
ldr r4, _0811073C @ =0x020006e8
|
||||
adds r0, r4, 0
|
||||
movs r1, 0
|
||||
bl sub_80FA8EC
|
||||
bl InitRegionMap
|
||||
movs r0, 0x88
|
||||
lsls r0, 4
|
||||
adds r4, r0
|
||||
@@ -115,7 +115,7 @@ _08110746:
|
||||
_08110752:
|
||||
movs r0, 0x1
|
||||
movs r1, 0x1
|
||||
bl sub_80FBCF0
|
||||
bl CreateRegionMapPlayerIcon
|
||||
movs r1, 0x8
|
||||
negs r1, r1
|
||||
movs r0, 0
|
||||
@@ -518,7 +518,7 @@ _08110A44:
|
||||
bl GetRoamerLocation
|
||||
ldrb r0, [r4, 0x10]
|
||||
ldrb r1, [r4, 0x11]
|
||||
bl get_mapheader_by_bank_and_number
|
||||
bl Overworld_GetMapHeaderByGroupAndId
|
||||
ldrb r0, [r0, 0x14]
|
||||
strh r0, [r4, 0x12]
|
||||
movs r3, 0x88
|
||||
@@ -566,7 +566,7 @@ SetAreaHasMon: @ 8110A98
|
||||
adds r0, r5
|
||||
strb r1, [r0, 0x11]
|
||||
adds r0, r2, 0
|
||||
bl get_mapheader_by_bank_and_number
|
||||
bl Overworld_GetMapHeaderByGroupAndId
|
||||
ldrb r0, [r0, 0x14]
|
||||
bl sub_80FBA04
|
||||
ldrh r1, [r4]
|
||||
@@ -599,7 +599,7 @@ SetSpecialMapHasMon: @ 8110AE4
|
||||
cmp r0, 0x1F
|
||||
bhi _08110B96
|
||||
adds r0, r2, 0
|
||||
bl get_mapheader_by_bank_and_number
|
||||
bl Overworld_GetMapHeaderByGroupAndId
|
||||
adds r6, r0, 0
|
||||
ldrb r0, [r6, 0x14]
|
||||
cmp r0, 0x57
|
||||
@@ -1700,7 +1700,7 @@ _08111344:
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _08111358
|
||||
bl sub_80FAB10
|
||||
bl FreeRegionMapIconResources
|
||||
ldr r0, [r4, 0x4]
|
||||
bl SetMainCallback2
|
||||
_08111358:
|
||||
@@ -1740,7 +1740,7 @@ _08111390:
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _081113A4
|
||||
bl sub_80FAB10
|
||||
bl FreeRegionMapIconResources
|
||||
ldr r0, [r4, 0x8]
|
||||
bl SetMainCallback2
|
||||
_081113A4:
|
||||
@@ -1859,7 +1859,7 @@ _08111496:
|
||||
ldr r4, _081114B4 @ =0x020006e8
|
||||
adds r0, r4, 0
|
||||
movs r1, 0
|
||||
bl sub_80FA8EC
|
||||
bl InitRegionMap
|
||||
movs r0, 0x88
|
||||
lsls r0, 4
|
||||
adds r4, r0
|
||||
@@ -1882,7 +1882,7 @@ _081114BE:
|
||||
_081114CA:
|
||||
movs r0, 0x1
|
||||
movs r1, 0x1
|
||||
bl sub_80FBCF0
|
||||
bl CreateRegionMapPlayerIcon
|
||||
movs r1, 0x8
|
||||
negs r1, r1
|
||||
movs r0, 0
|
||||
|
||||
@@ -1,788 +0,0 @@
|
||||
.include "constants/gba_constants.inc"
|
||||
.include "constants/species_constants.inc"
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start unref_sub_809D26C
|
||||
unref_sub_809D26C: @ 809D26C
|
||||
push {r4-r6,lr}
|
||||
mov r6, r8
|
||||
push {r6}
|
||||
sub sp, 0x18
|
||||
adds r6, r3, 0
|
||||
ldr r3, [sp, 0x2C]
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
lsls r3, 24
|
||||
lsrs r3, 24
|
||||
mov r8, sp
|
||||
ldr r4, _0809D2E0 @ =gOamData_83BC5E8
|
||||
str r4, [sp]
|
||||
ldr r5, _0809D2E4 @ =gMonIconTable
|
||||
lsls r4, r0, 2
|
||||
adds r4, r5
|
||||
ldr r4, [r4]
|
||||
str r4, [sp, 0x4]
|
||||
ldr r4, _0809D2E8 @ =gSpriteAnimTable_83BC62C
|
||||
str r4, [sp, 0x8]
|
||||
ldr r4, _0809D2EC @ =gSpriteAffineAnimTable_83BC660
|
||||
str r4, [sp, 0xC]
|
||||
str r1, [sp, 0x10]
|
||||
ldr r1, _0809D2F0 @ =gMonIconPaletteIndices
|
||||
adds r0, r1
|
||||
ldr r4, _0809D2F4 @ =0x0000dac0
|
||||
adds r1, r4, 0
|
||||
ldrb r0, [r0]
|
||||
adds r1, r0
|
||||
mov r0, r8
|
||||
strh r1, [r0, 0x14]
|
||||
lsls r2, 16
|
||||
asrs r2, 16
|
||||
lsls r6, 16
|
||||
asrs r6, 16
|
||||
mov r0, sp
|
||||
adds r1, r2, 0
|
||||
adds r2, r6, 0
|
||||
bl CreateMonIconSprite
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
lsls r0, r4, 4
|
||||
adds r0, r4
|
||||
lsls r0, 2
|
||||
ldr r1, _0809D2F8 @ =gSprites
|
||||
adds r0, r1
|
||||
bl UpdateMonIconFrame
|
||||
adds r0, r4, 0
|
||||
add sp, 0x18
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0809D2E0: .4byte gOamData_83BC5E8
|
||||
_0809D2E4: .4byte gMonIconTable
|
||||
_0809D2E8: .4byte gSpriteAnimTable_83BC62C
|
||||
_0809D2EC: .4byte gSpriteAffineAnimTable_83BC660
|
||||
_0809D2F0: .4byte gMonIconPaletteIndices
|
||||
_0809D2F4: .4byte 0x0000dac0
|
||||
_0809D2F8: .4byte gSprites
|
||||
thumb_func_end unref_sub_809D26C
|
||||
|
||||
thumb_func_start CreateMonIcon
|
||||
CreateMonIcon: @ 809D2FC
|
||||
push {r4-r7,lr}
|
||||
mov r7, r8
|
||||
push {r7}
|
||||
sub sp, 0x30
|
||||
adds r4, r0, 0
|
||||
adds r5, r1, 0
|
||||
ldr r0, [sp, 0x48]
|
||||
ldr r1, [sp, 0x4C]
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
lsls r2, 16
|
||||
lsrs r7, r2, 16
|
||||
lsls r3, 16
|
||||
lsrs r6, r3, 16
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
mov r8, r0
|
||||
ldr r0, _0809D38C @ =gOamData_83BC5E8
|
||||
str r0, [sp, 0x18]
|
||||
adds r0, r4, 0
|
||||
bl GetMonIconPtr
|
||||
str r0, [sp, 0x1C]
|
||||
ldr r0, _0809D390 @ =gSpriteAnimTable_83BC62C
|
||||
str r0, [sp, 0x20]
|
||||
ldr r0, _0809D394 @ =gSpriteAffineAnimTable_83BC660
|
||||
str r0, [sp, 0x24]
|
||||
str r5, [sp, 0x28]
|
||||
ldr r0, _0809D398 @ =gMonIconPaletteIndices
|
||||
adds r0, r4, r0
|
||||
ldr r1, _0809D39C @ =0x0000dac0
|
||||
adds r5, r1, 0
|
||||
ldrb r0, [r0]
|
||||
adds r1, r5, r0
|
||||
add r0, sp, 0x2C
|
||||
strh r1, [r0]
|
||||
add r1, sp, 0x18
|
||||
mov r0, sp
|
||||
movs r2, 0x18
|
||||
bl memcpy
|
||||
movs r0, 0xCE
|
||||
lsls r0, 1
|
||||
cmp r4, r0
|
||||
bls _0809D35A
|
||||
mov r0, sp
|
||||
strh r5, [r0, 0x14]
|
||||
_0809D35A:
|
||||
lsls r1, r7, 16
|
||||
asrs r1, 16
|
||||
lsls r2, r6, 16
|
||||
asrs r2, 16
|
||||
mov r0, sp
|
||||
mov r3, r8
|
||||
bl CreateMonIconSprite
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
lsls r0, r4, 4
|
||||
adds r0, r4
|
||||
lsls r0, 2
|
||||
ldr r1, _0809D3A0 @ =gSprites
|
||||
adds r0, r1
|
||||
bl UpdateMonIconFrame
|
||||
adds r0, r4, 0
|
||||
add sp, 0x30
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0809D38C: .4byte gOamData_83BC5E8
|
||||
_0809D390: .4byte gSpriteAnimTable_83BC62C
|
||||
_0809D394: .4byte gSpriteAffineAnimTable_83BC660
|
||||
_0809D398: .4byte gMonIconPaletteIndices
|
||||
_0809D39C: .4byte 0x0000dac0
|
||||
_0809D3A0: .4byte gSprites
|
||||
thumb_func_end CreateMonIcon
|
||||
|
||||
thumb_func_start sub_809D3A4
|
||||
sub_809D3A4: @ 809D3A4
|
||||
push {r4-r6,lr}
|
||||
mov r6, r8
|
||||
push {r6}
|
||||
sub sp, 0x18
|
||||
adds r6, r3, 0
|
||||
ldr r3, [sp, 0x2C]
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
lsls r3, 24
|
||||
lsrs r3, 24
|
||||
mov r8, sp
|
||||
ldr r4, _0809D418 @ =gOamData_83BC5E8
|
||||
str r4, [sp]
|
||||
ldr r5, _0809D41C @ =gMonIconTable
|
||||
lsls r4, r0, 2
|
||||
adds r4, r5
|
||||
ldr r4, [r4]
|
||||
str r4, [sp, 0x4]
|
||||
ldr r4, _0809D420 @ =gSpriteAnimTable_83BC62C
|
||||
str r4, [sp, 0x8]
|
||||
ldr r4, _0809D424 @ =gSpriteAffineAnimTable_83BC660
|
||||
str r4, [sp, 0xC]
|
||||
str r1, [sp, 0x10]
|
||||
ldr r1, _0809D428 @ =gMonIconPaletteIndices
|
||||
adds r0, r1
|
||||
ldr r4, _0809D42C @ =0x0000dac0
|
||||
adds r1, r4, 0
|
||||
ldrb r0, [r0]
|
||||
adds r1, r0
|
||||
mov r0, r8
|
||||
strh r1, [r0, 0x14]
|
||||
lsls r2, 16
|
||||
asrs r2, 16
|
||||
lsls r6, 16
|
||||
asrs r6, 16
|
||||
mov r0, sp
|
||||
adds r1, r2, 0
|
||||
adds r2, r6, 0
|
||||
bl CreateMonIconSprite
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
lsls r0, r4, 4
|
||||
adds r0, r4
|
||||
lsls r0, 2
|
||||
ldr r1, _0809D430 @ =gSprites
|
||||
adds r0, r1
|
||||
bl UpdateMonIconFrame
|
||||
adds r0, r4, 0
|
||||
add sp, 0x18
|
||||
pop {r3}
|
||||
mov r8, r3
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0809D418: .4byte gOamData_83BC5E8
|
||||
_0809D41C: .4byte gMonIconTable
|
||||
_0809D420: .4byte gSpriteAnimTable_83BC62C
|
||||
_0809D424: .4byte gSpriteAffineAnimTable_83BC660
|
||||
_0809D428: .4byte gMonIconPaletteIndices
|
||||
_0809D42C: .4byte 0x0000dac0
|
||||
_0809D430: .4byte gSprites
|
||||
thumb_func_end sub_809D3A4
|
||||
|
||||
thumb_func_start mon_icon_convert_unown_species_id
|
||||
mon_icon_convert_unown_species_id: @ 809D434
|
||||
push {lr}
|
||||
lsls r0, 16
|
||||
lsrs r2, r0, 16
|
||||
cmp r2, SPECIES_UNOWN
|
||||
bne _0809D45E
|
||||
adds r0, r1, 0
|
||||
bl GetUnownLetterByPersonality
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
cmp r0, 0
|
||||
bne _0809D450
|
||||
movs r0, SPECIES_UNOWN
|
||||
b _0809D45A
|
||||
_0809D450:
|
||||
movs r1, 0xCE
|
||||
lsls r1, 1
|
||||
adds r0, r1
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
_0809D45A:
|
||||
adds r1, r0, 0
|
||||
b _0809D46C
|
||||
_0809D45E:
|
||||
movs r0, 0xCE
|
||||
lsls r0, 1
|
||||
adds r1, r2, 0
|
||||
cmp r1, r0
|
||||
bls _0809D46C
|
||||
movs r1, 0x82
|
||||
lsls r1, 1
|
||||
_0809D46C:
|
||||
adds r0, r1, 0
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end mon_icon_convert_unown_species_id
|
||||
|
||||
thumb_func_start GetUnownLetterByPersonality
|
||||
GetUnownLetterByPersonality: @ 809D474
|
||||
push {lr}
|
||||
adds r2, r0, 0
|
||||
movs r0, 0xC0
|
||||
lsls r0, 18
|
||||
ands r0, r2
|
||||
lsrs r0, 18
|
||||
movs r1, 0xC0
|
||||
lsls r1, 10
|
||||
ands r1, r2
|
||||
lsrs r1, 12
|
||||
orrs r0, r1
|
||||
movs r1, 0xC0
|
||||
lsls r1, 2
|
||||
ands r1, r2
|
||||
lsrs r1, 6
|
||||
orrs r0, r1
|
||||
movs r1, 0x3
|
||||
ands r1, r2
|
||||
orrs r0, r1
|
||||
movs r1, 0x1C
|
||||
bl __umodsi3
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end GetUnownLetterByPersonality
|
||||
|
||||
thumb_func_start sub_809D4A8
|
||||
sub_809D4A8: @ 809D4A8
|
||||
push {r4,lr}
|
||||
sub sp, 0x4
|
||||
lsls r0, 16
|
||||
lsrs r4, r0, 16
|
||||
adds r0, r4, 0
|
||||
mov r1, sp
|
||||
bl MailSpeciesToSpecies
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
cmp r0, SPECIES_UNOWN
|
||||
bne _0809D4DE
|
||||
mov r0, sp
|
||||
ldrh r0, [r0]
|
||||
cmp r0, 0
|
||||
bne _0809D4CE
|
||||
mov r1, sp
|
||||
adds r0, SPECIES_UNOWN
|
||||
b _0809D4D6
|
||||
_0809D4CE:
|
||||
mov r1, sp
|
||||
movs r2, 0xCE
|
||||
lsls r2, 1
|
||||
adds r0, r2
|
||||
_0809D4D6:
|
||||
strh r0, [r1]
|
||||
mov r0, sp
|
||||
ldrh r0, [r0]
|
||||
b _0809D4EA
|
||||
_0809D4DE:
|
||||
adds r0, r4, 0
|
||||
movs r1, 0
|
||||
bl mon_icon_convert_unown_species_id
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
_0809D4EA:
|
||||
add sp, 0x4
|
||||
pop {r4}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end sub_809D4A8
|
||||
|
||||
thumb_func_start GetMonIconPtr
|
||||
GetMonIconPtr: @ 809D4F4
|
||||
push {lr}
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
bl mon_icon_convert_unown_species_id
|
||||
lsls r0, 16
|
||||
ldr r1, _0809D50C @ =gMonIconTable
|
||||
lsrs r0, 14
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0809D50C: .4byte gMonIconTable
|
||||
thumb_func_end GetMonIconPtr
|
||||
|
||||
thumb_func_start sub_809D510
|
||||
sub_809D510: @ 809D510
|
||||
push {lr}
|
||||
bl sub_809D7E8
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_809D510
|
||||
|
||||
thumb_func_start sub_809D51C
|
||||
sub_809D51C: @ 809D51C
|
||||
push {r4,r5,lr}
|
||||
movs r4, 0
|
||||
ldr r5, _0809D53C @ =gMonIconPaletteTable
|
||||
_0809D522:
|
||||
lsls r0, r4, 3
|
||||
adds r0, r5
|
||||
bl LoadSpritePalette
|
||||
adds r0, r4, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
cmp r4, 0x5
|
||||
bls _0809D522
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0809D53C: .4byte gMonIconPaletteTable
|
||||
thumb_func_end sub_809D51C
|
||||
|
||||
thumb_func_start unref_sub_809D540
|
||||
unref_sub_809D540: @ 809D540
|
||||
push {r4,lr}
|
||||
lsls r0, 16
|
||||
lsrs r1, r0, 16
|
||||
movs r0, 0xCE
|
||||
lsls r0, 1
|
||||
cmp r1, r0
|
||||
bls _0809D552
|
||||
movs r1, 0x82
|
||||
lsls r1, 1
|
||||
_0809D552:
|
||||
ldr r0, _0809D578 @ =gMonIconPaletteIndices
|
||||
adds r0, r1, r0
|
||||
ldrb r0, [r0]
|
||||
ldr r1, _0809D57C @ =gMonIconPaletteTable
|
||||
lsls r0, 3
|
||||
adds r4, r0, r1
|
||||
ldrh r0, [r4, 0x4]
|
||||
bl IndexOfSpritePaletteTag
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0xFF
|
||||
bne _0809D572
|
||||
adds r0, r4, 0
|
||||
bl LoadSpritePalette
|
||||
_0809D572:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0809D578: .4byte gMonIconPaletteIndices
|
||||
_0809D57C: .4byte gMonIconPaletteTable
|
||||
thumb_func_end unref_sub_809D540
|
||||
|
||||
thumb_func_start sub_809D580
|
||||
sub_809D580: @ 809D580
|
||||
push {r4,lr}
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
ldr r1, _0809D5AC @ =gMonIconPaletteIndices
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
ldr r1, _0809D5B0 @ =gMonIconPaletteTable
|
||||
lsls r0, 3
|
||||
adds r4, r0, r1
|
||||
ldrh r0, [r4, 0x4]
|
||||
bl IndexOfSpritePaletteTag
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0xFF
|
||||
bne _0809D5A6
|
||||
adds r0, r4, 0
|
||||
bl LoadSpritePalette
|
||||
_0809D5A6:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0809D5AC: .4byte gMonIconPaletteIndices
|
||||
_0809D5B0: .4byte gMonIconPaletteTable
|
||||
thumb_func_end sub_809D580
|
||||
|
||||
thumb_func_start unref_sub_809D5B4
|
||||
unref_sub_809D5B4: @ 809D5B4
|
||||
push {r4,r5,lr}
|
||||
movs r4, 0
|
||||
ldr r5, _0809D5D4 @ =gMonIconPaletteTable
|
||||
_0809D5BA:
|
||||
lsls r0, r4, 3
|
||||
adds r0, r5
|
||||
ldrh r0, [r0, 0x4]
|
||||
bl FreeSpritePaletteByTag
|
||||
adds r0, r4, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
cmp r4, 0x5
|
||||
bls _0809D5BA
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0809D5D4: .4byte gMonIconPaletteTable
|
||||
thumb_func_end unref_sub_809D5B4
|
||||
|
||||
thumb_func_start unref_sub_809D5D8
|
||||
unref_sub_809D5D8: @ 809D5D8
|
||||
push {lr}
|
||||
lsls r0, 16
|
||||
lsrs r1, r0, 16
|
||||
movs r0, 0xCE
|
||||
lsls r0, 1
|
||||
cmp r1, r0
|
||||
bls _0809D5EA
|
||||
movs r1, 0x82
|
||||
lsls r1, 1
|
||||
_0809D5EA:
|
||||
ldr r0, _0809D600 @ =gMonIconPaletteIndices
|
||||
adds r0, r1, r0
|
||||
ldrb r0, [r0]
|
||||
ldr r1, _0809D604 @ =gMonIconPaletteTable
|
||||
lsls r0, 3
|
||||
adds r0, r1
|
||||
ldrh r0, [r0, 0x4]
|
||||
bl FreeSpritePaletteByTag
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0809D600: .4byte gMonIconPaletteIndices
|
||||
_0809D604: .4byte gMonIconPaletteTable
|
||||
thumb_func_end unref_sub_809D5D8
|
||||
|
||||
thumb_func_start sub_809D608
|
||||
sub_809D608: @ 809D608
|
||||
push {lr}
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
ldr r1, _0809D624 @ =gMonIconPaletteIndices
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
ldr r1, _0809D628 @ =gMonIconPaletteTable
|
||||
lsls r0, 3
|
||||
adds r0, r1
|
||||
ldrh r0, [r0, 0x4]
|
||||
bl FreeSpritePaletteByTag
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0809D624: .4byte gMonIconPaletteIndices
|
||||
_0809D628: .4byte gMonIconPaletteTable
|
||||
thumb_func_end sub_809D608
|
||||
|
||||
thumb_func_start sub_809D62C
|
||||
sub_809D62C: @ 809D62C
|
||||
push {lr}
|
||||
bl UpdateMonIconFrame
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_809D62C
|
||||
|
||||
thumb_func_start UpdateMonIconFrame
|
||||
UpdateMonIconFrame: @ 809D638
|
||||
push {r4-r7,lr}
|
||||
mov r7, r9
|
||||
mov r6, r8
|
||||
push {r6,r7}
|
||||
adds r4, r0, 0
|
||||
movs r7, 0
|
||||
adds r6, r4, 0
|
||||
adds r6, 0x2C
|
||||
ldrb r2, [r6]
|
||||
movs r0, 0x3F
|
||||
mov r9, r0
|
||||
ands r0, r2
|
||||
cmp r0, 0
|
||||
bne _0809D6EC
|
||||
movs r1, 0x2A
|
||||
adds r1, r4
|
||||
mov r8, r1
|
||||
ldrb r1, [r1]
|
||||
ldr r0, [r4, 0x8]
|
||||
lsls r1, 2
|
||||
adds r1, r0
|
||||
adds r5, r4, 0
|
||||
adds r5, 0x2B
|
||||
ldrb r0, [r5]
|
||||
ldr r1, [r1]
|
||||
lsls r0, 2
|
||||
adds r0, r1
|
||||
movs r1, 0
|
||||
ldrsh r3, [r0, r1]
|
||||
movs r0, 0x2
|
||||
negs r0, r0
|
||||
cmp r3, r0
|
||||
beq _0809D682
|
||||
adds r0, 0x1
|
||||
cmp r3, r0
|
||||
bne _0809D686
|
||||
b _0809D700
|
||||
_0809D682:
|
||||
strb r7, [r5]
|
||||
b _0809D700
|
||||
_0809D686:
|
||||
ldr r2, _0809D6E4 @ =gSpriteImageSizes
|
||||
ldrb r1, [r4, 0x3]
|
||||
lsrs r1, 6
|
||||
lsls r1, 1
|
||||
ldrb r0, [r4, 0x1]
|
||||
lsrs r0, 6
|
||||
lsls r0, 3
|
||||
adds r1, r0
|
||||
adds r1, r2
|
||||
ldrh r2, [r1]
|
||||
adds r1, r2, 0
|
||||
muls r1, r3
|
||||
ldr r0, [r4, 0xC]
|
||||
adds r0, r1
|
||||
ldrh r1, [r4, 0x4]
|
||||
lsls r1, 22
|
||||
lsrs r1, 17
|
||||
ldr r3, _0809D6E8 @ =0x06010000
|
||||
adds r1, r3
|
||||
bl RequestSpriteCopy
|
||||
mov r0, r8
|
||||
ldrb r1, [r0]
|
||||
ldr r0, [r4, 0x8]
|
||||
lsls r1, 2
|
||||
adds r1, r0
|
||||
ldrb r0, [r5]
|
||||
ldr r1, [r1]
|
||||
lsls r0, 2
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
lsls r0, 10
|
||||
lsrs r0, 26
|
||||
mov r1, r9
|
||||
ands r1, r0
|
||||
ldrb r2, [r6]
|
||||
movs r0, 0x40
|
||||
negs r0, r0
|
||||
ands r0, r2
|
||||
orrs r0, r1
|
||||
strb r0, [r6]
|
||||
ldrb r0, [r5]
|
||||
adds r0, 0x1
|
||||
strb r0, [r5]
|
||||
ldrb r7, [r5]
|
||||
b _0809D700
|
||||
.align 2, 0
|
||||
_0809D6E4: .4byte gSpriteImageSizes
|
||||
_0809D6E8: .4byte 0x06010000
|
||||
_0809D6EC:
|
||||
lsls r0, r2, 26
|
||||
lsrs r0, 26
|
||||
subs r0, 0x1
|
||||
movs r1, 0x3F
|
||||
ands r0, r1
|
||||
movs r1, 0x40
|
||||
negs r1, r1
|
||||
ands r1, r2
|
||||
orrs r1, r0
|
||||
strb r1, [r6]
|
||||
_0809D700:
|
||||
adds r0, r7, 0
|
||||
pop {r3,r4}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
thumb_func_end UpdateMonIconFrame
|
||||
|
||||
thumb_func_start CreateMonIconSprite
|
||||
CreateMonIconSprite: @ 809D710
|
||||
push {r4-r6,lr}
|
||||
mov r6, r9
|
||||
mov r5, r8
|
||||
push {r5,r6}
|
||||
sub sp, 0x38
|
||||
mov r9, r0
|
||||
adds r4, r1, 0
|
||||
adds r5, r2, 0
|
||||
mov r8, r3
|
||||
lsls r4, 16
|
||||
lsrs r4, 16
|
||||
lsls r5, 16
|
||||
lsrs r5, 16
|
||||
mov r0, r8
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
mov r8, r0
|
||||
movs r0, 0
|
||||
str r0, [sp, 0x30]
|
||||
ldr r2, _0809D7D8 @ =gSpriteImageSizes
|
||||
mov r0, r9
|
||||
ldr r6, [r0]
|
||||
ldrb r1, [r6, 0x3]
|
||||
lsrs r1, 6
|
||||
lsls r1, 1
|
||||
ldrb r0, [r6, 0x1]
|
||||
lsrs r0, 6
|
||||
lsls r0, 3
|
||||
adds r1, r0
|
||||
adds r1, r2
|
||||
ldrh r2, [r1]
|
||||
ldr r1, _0809D7DC @ =0xffff0000
|
||||
add r3, sp, 0x30
|
||||
ldr r0, [r3, 0x4]
|
||||
ands r0, r1
|
||||
orrs r0, r2
|
||||
str r0, [r3, 0x4]
|
||||
add r1, sp, 0x18
|
||||
ldr r0, _0809D7E0 @ =0x0000ffff
|
||||
strh r0, [r1]
|
||||
mov r0, r9
|
||||
ldrh r2, [r0, 0x14]
|
||||
mov r0, sp
|
||||
adds r0, 0x1A
|
||||
strh r2, [r0]
|
||||
str r6, [sp, 0x1C]
|
||||
mov r2, r9
|
||||
ldr r0, [r2, 0x8]
|
||||
str r0, [sp, 0x20]
|
||||
str r3, [sp, 0x24]
|
||||
ldr r0, [r2, 0xC]
|
||||
str r0, [sp, 0x28]
|
||||
ldr r0, [r2, 0x10]
|
||||
str r0, [sp, 0x2C]
|
||||
mov r0, sp
|
||||
movs r2, 0x18
|
||||
bl memcpy
|
||||
lsls r4, 16
|
||||
asrs r4, 16
|
||||
lsls r5, 16
|
||||
asrs r5, 16
|
||||
mov r0, sp
|
||||
adds r1, r4, 0
|
||||
adds r2, r5, 0
|
||||
mov r3, r8
|
||||
bl CreateSprite
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
ldr r6, _0809D7E4 @ =gSprites
|
||||
lsls r3, r0, 4
|
||||
adds r3, r0
|
||||
lsls r3, 2
|
||||
adds r4, r3, r6
|
||||
adds r5, r4, 0
|
||||
adds r5, 0x2C
|
||||
ldrb r1, [r5]
|
||||
movs r2, 0x40
|
||||
orrs r1, r2
|
||||
strb r1, [r5]
|
||||
adds r4, 0x3F
|
||||
ldrb r2, [r4]
|
||||
movs r1, 0x5
|
||||
negs r1, r1
|
||||
ands r1, r2
|
||||
strb r1, [r4]
|
||||
adds r6, 0xC
|
||||
adds r3, r6
|
||||
mov r2, r9
|
||||
ldr r1, [r2, 0x4]
|
||||
str r1, [r3]
|
||||
add sp, 0x38
|
||||
pop {r3,r4}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_0809D7D8: .4byte gSpriteImageSizes
|
||||
_0809D7DC: .4byte 0xffff0000
|
||||
_0809D7E0: .4byte 0x0000ffff
|
||||
_0809D7E4: .4byte gSprites
|
||||
thumb_func_end CreateMonIconSprite
|
||||
|
||||
thumb_func_start sub_809D7E8
|
||||
sub_809D7E8: @ 809D7E8
|
||||
push {lr}
|
||||
sub sp, 0x8
|
||||
movs r1, 0
|
||||
str r1, [sp]
|
||||
ldr r3, _0809D81C @ =gSpriteImageSizes
|
||||
ldrb r2, [r0, 0x3]
|
||||
lsrs r2, 6
|
||||
lsls r2, 1
|
||||
ldrb r1, [r0, 0x1]
|
||||
lsrs r1, 6
|
||||
lsls r1, 3
|
||||
adds r2, r1
|
||||
adds r2, r3
|
||||
ldrh r3, [r2]
|
||||
ldr r2, _0809D820 @ =0xffff0000
|
||||
ldr r1, [sp, 0x4]
|
||||
ands r1, r2
|
||||
orrs r1, r3
|
||||
str r1, [sp, 0x4]
|
||||
mov r1, sp
|
||||
str r1, [r0, 0xC]
|
||||
bl DestroySprite
|
||||
add sp, 0x8
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0809D81C: .4byte gSpriteImageSizes
|
||||
_0809D820: .4byte 0xffff0000
|
||||
thumb_func_end sub_809D7E8
|
||||
|
||||
thumb_func_start sub_809D824
|
||||
sub_809D824: @ 809D824
|
||||
mov r12, r0
|
||||
adds r0, 0x2A
|
||||
movs r3, 0
|
||||
strb r1, [r0]
|
||||
mov r2, r12
|
||||
adds r2, 0x2C
|
||||
ldrb r1, [r2]
|
||||
movs r0, 0x40
|
||||
negs r0, r0
|
||||
ands r0, r1
|
||||
strb r0, [r2]
|
||||
mov r0, r12
|
||||
adds r0, 0x2B
|
||||
strb r3, [r0]
|
||||
bx lr
|
||||
thumb_func_end sub_809D824
|
||||
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
-3438
File diff suppressed because it is too large
Load Diff
@@ -12958,7 +12958,7 @@ _0809C08C:
|
||||
adds r1, r6, r2
|
||||
str r0, [r1]
|
||||
adds r0, r7, 0
|
||||
bl pokemon_get_pal
|
||||
bl GetMonSpritePal
|
||||
ldr r2, _0809C11C @ =0x000011e8
|
||||
adds r1, r6, r2
|
||||
str r0, [r1]
|
||||
@@ -13031,7 +13031,7 @@ _0809C120:
|
||||
str r2, [r4]
|
||||
ldrh r0, [r5]
|
||||
mov r1, r9
|
||||
bl species_and_otid_get_pal
|
||||
bl GetMonSpritePalFromOtIdPersonality
|
||||
ldr r2, _0809C1D0 @ =0x000011e8
|
||||
adds r1, r6, r2
|
||||
str r0, [r1]
|
||||
|
||||
@@ -3859,7 +3859,7 @@ _0809F718:
|
||||
adds r1, r0, 0
|
||||
adds r0, r5, 0
|
||||
adds r2, r6, 0
|
||||
bl sub_80409C8
|
||||
bl GetMonSpritePalStructFromOtIdPersonality
|
||||
adds r4, r0, 0
|
||||
bl LoadCompressedObjectPalette
|
||||
ldrh r0, [r4, 0x4]
|
||||
@@ -7620,7 +7620,7 @@ sub_80A1808: @ 80A1808
|
||||
ldr r0, _080A1868 @ =sub_80A1888
|
||||
str r0, [r4]
|
||||
adds r0, r6, 0
|
||||
bl sub_8040A3C
|
||||
bl IsPokeSpriteNotFlipped
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080A186C
|
||||
|
||||
+10
-10
@@ -340,7 +340,7 @@ sub_80EBD30: @ 80EBD30
|
||||
bl LoadOam
|
||||
bl ProcessSpriteCopyRequests
|
||||
bl TransferPlttBuffer
|
||||
bl sub_80FB260
|
||||
bl UpdateRegionMapVideoRegs
|
||||
bl sub_80EFE7C
|
||||
pop {r0}
|
||||
bx r0
|
||||
@@ -10523,7 +10523,7 @@ sub_80F0FFC: @ 80F0FFC
|
||||
ldrh r1, [r0]
|
||||
adds r0, r5, 0
|
||||
movs r2, 0
|
||||
bl sub_80FBFB4
|
||||
bl GetMapSectionName
|
||||
ldr r0, _080F1054 @ =gWindowConfig_81E710C
|
||||
bl BasicInitMenuWindow
|
||||
adds r0, r5, 0
|
||||
@@ -14321,10 +14321,10 @@ sub_80F2DD8: @ 80F2DD8
|
||||
push {lr}
|
||||
movs r0, 0x7
|
||||
movs r1, 0x7
|
||||
bl sub_80FBB3C
|
||||
bl CreateRegionMapCursor
|
||||
movs r0, 0x8
|
||||
movs r1, 0x8
|
||||
bl sub_80FBCF0
|
||||
bl CreateRegionMapPlayerIcon
|
||||
bl sub_80FBF94
|
||||
pop {r0}
|
||||
bx r0
|
||||
@@ -14333,7 +14333,7 @@ sub_80F2DD8: @ 80F2DD8
|
||||
thumb_func_start sub_80F2DF4
|
||||
sub_80F2DF4: @ 80F2DF4
|
||||
push {lr}
|
||||
bl sub_80FAB10
|
||||
bl FreeRegionMapIconResources
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_80F2DF4
|
||||
@@ -17787,7 +17787,7 @@ sub_80F4824: @ 80F4824
|
||||
adds r0, r5, 0
|
||||
mov r1, r8
|
||||
adds r2, r4, 0
|
||||
bl species_and_otid_get_pal
|
||||
bl GetMonSpritePalFromOtIdPersonality
|
||||
mov r2, r9
|
||||
lsls r1, r2, 7
|
||||
adds r1, r7, r1
|
||||
@@ -21564,7 +21564,7 @@ _080F65EA:
|
||||
lsrs r4, r0, 24
|
||||
mov r0, r9
|
||||
mov r1, r10
|
||||
bl sub_8040D8C
|
||||
bl ShouldHideGenderIcon
|
||||
cmp r0, 0
|
||||
beq _080F65FC
|
||||
movs r4, 0xFF
|
||||
@@ -22370,7 +22370,7 @@ _080F6C3A:
|
||||
adds r6, r0, r1
|
||||
ldrh r7, [r6]
|
||||
adds r0, r7, 0
|
||||
bl trainer_flag_check
|
||||
bl HasTrainerAlreadyBeenFought
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080F6CA0
|
||||
@@ -22402,7 +22402,7 @@ _080F6C3A:
|
||||
strb r1, [r0]
|
||||
ldrh r0, [r6, 0xA]
|
||||
ldrh r1, [r6, 0xC]
|
||||
bl get_mapheader_by_bank_and_number
|
||||
bl Overworld_GetMapHeaderByGroupAndId
|
||||
ldrh r1, [r5]
|
||||
lsls r1, 3
|
||||
adds r4, r1
|
||||
@@ -22431,7 +22431,7 @@ _080F6CB4:
|
||||
adds r5, r0, r1
|
||||
ldrh r4, [r5]
|
||||
adds r0, r4, 0
|
||||
bl trainer_flag_check
|
||||
bl HasTrainerAlreadyBeenFought
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080F6D0E
|
||||
|
||||
@@ -1,543 +0,0 @@
|
||||
.include "constants/gba_constants.inc"
|
||||
.include "constants/species_constants.inc"
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_80B9C6C
|
||||
sub_80B9C6C: @ 80B9C6C
|
||||
push {r4-r7,lr}
|
||||
mov r7, r10
|
||||
mov r6, r9
|
||||
mov r5, r8
|
||||
push {r5-r7}
|
||||
sub sp, 0x58
|
||||
str r0, [sp, 0x2C]
|
||||
str r1, [sp, 0x30]
|
||||
str r3, [sp, 0x38]
|
||||
lsls r2, 24
|
||||
lsrs r2, 24
|
||||
str r2, [sp, 0x34]
|
||||
bl Random
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
str r0, [sp, 0x40]
|
||||
ldr r0, _080B9DA8 @ =gLinkPlayers
|
||||
ldrh r0, [r0, 0x4]
|
||||
bl SeedRng
|
||||
bl GetLinkPlayerCount
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
mov r8, r0
|
||||
movs r3, 0
|
||||
add r0, sp, 0x1C
|
||||
mov r9, r0
|
||||
movs r1, 0x1D
|
||||
add r1, sp
|
||||
mov r10, r1
|
||||
mov r2, sp
|
||||
adds r2, 0xC
|
||||
str r2, [sp, 0x4C]
|
||||
movs r7, 0xFF
|
||||
add r4, sp, 0x8
|
||||
movs r2, 0
|
||||
mov r6, r9
|
||||
mov r5, r10
|
||||
_080B9CBC:
|
||||
mov r1, sp
|
||||
adds r1, r3
|
||||
adds r1, 0x4
|
||||
ldrb r0, [r1]
|
||||
orrs r0, r7
|
||||
strb r0, [r1]
|
||||
adds r0, r4, r3
|
||||
strb r2, [r0]
|
||||
lsls r1, r3, 1
|
||||
adds r0, r6, r1
|
||||
strb r2, [r0]
|
||||
adds r1, r5, r1
|
||||
strb r2, [r1]
|
||||
adds r0, r3, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r3, r0, 16
|
||||
cmp r3, 0x3
|
||||
bls _080B9CBC
|
||||
movs r4, 0
|
||||
str r4, [sp, 0x3C]
|
||||
movs r3, 0
|
||||
mov r1, r8
|
||||
lsls r0, r1, 16
|
||||
lsrs r1, r0, 16
|
||||
str r0, [sp, 0x50]
|
||||
ldr r4, [sp, 0x30]
|
||||
ldr r0, [sp, 0x34]
|
||||
adds r2, r4, 0
|
||||
muls r2, r0
|
||||
str r2, [sp, 0x48]
|
||||
ldr r2, [sp, 0x3C]
|
||||
cmp r2, r1
|
||||
bcs _080B9D46
|
||||
mov r8, r1
|
||||
_080B9D00:
|
||||
ldr r4, [sp, 0x30]
|
||||
adds r0, r4, 0
|
||||
muls r0, r3
|
||||
ldr r1, [sp, 0x2C]
|
||||
adds r6, r1, r0
|
||||
ldr r0, [r6, 0x70]
|
||||
cmp r0, 0
|
||||
beq _080B9D3C
|
||||
movs r7, 0
|
||||
cmp r7, r0
|
||||
bcs _080B9D3C
|
||||
adds r4, r6, 0
|
||||
adds r4, 0x74
|
||||
mov r2, r9
|
||||
lsls r1, r3, 1
|
||||
movs r5, 0x1
|
||||
_080B9D20:
|
||||
lsls r0, r7, 1
|
||||
adds r0, r4, r0
|
||||
ldrh r0, [r0]
|
||||
cmp r0, 0
|
||||
bne _080B9D30
|
||||
adds r0, r7, r1
|
||||
adds r0, r2, r0
|
||||
strb r5, [r0]
|
||||
_080B9D30:
|
||||
adds r0, r7, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r7, r0, 16
|
||||
ldr r0, [r6, 0x70]
|
||||
cmp r7, r0
|
||||
bcc _080B9D20
|
||||
_080B9D3C:
|
||||
adds r0, r3, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r3, r0, 16
|
||||
cmp r3, r8
|
||||
bcc _080B9D00
|
||||
_080B9D46:
|
||||
movs r7, 0
|
||||
movs r3, 0
|
||||
ldr r2, [sp, 0x50]
|
||||
cmp r2, 0
|
||||
beq _080B9E3E
|
||||
mov r4, sp
|
||||
adds r4, 0x24
|
||||
str r4, [sp, 0x44]
|
||||
movs r0, 0x25
|
||||
add r0, sp
|
||||
mov r8, r0
|
||||
_080B9D5C:
|
||||
ldr r1, [sp, 0x30]
|
||||
adds r0, r1, 0
|
||||
muls r0, r3
|
||||
ldr r2, [sp, 0x2C]
|
||||
adds r6, r2, r0
|
||||
lsls r1, r3, 1
|
||||
mov r4, r9
|
||||
adds r0, r4, r1
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0x1
|
||||
beq _080B9D7C
|
||||
mov r2, r10
|
||||
adds r0, r2, r1
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0x1
|
||||
bne _080B9D86
|
||||
_080B9D7C:
|
||||
ldr r0, [sp, 0x3C]
|
||||
adds r0, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
str r0, [sp, 0x3C]
|
||||
_080B9D86:
|
||||
mov r4, r9
|
||||
adds r0, r4, r1
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0x1
|
||||
bne _080B9DAC
|
||||
mov r2, r10
|
||||
adds r0, r2, r1
|
||||
ldrb r2, [r0]
|
||||
cmp r2, 0
|
||||
bne _080B9DAC
|
||||
_080B9D9A:
|
||||
lsls r1, r7, 1
|
||||
ldr r4, [sp, 0x44]
|
||||
adds r0, r4, r1
|
||||
strb r3, [r0]
|
||||
add r1, r8
|
||||
strb r2, [r1]
|
||||
b _080B9E2C
|
||||
.align 2, 0
|
||||
_080B9DA8: .4byte gLinkPlayers
|
||||
_080B9DAC:
|
||||
mov r2, r9
|
||||
adds r0, r2, r1
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
bne _080B9DC0
|
||||
mov r4, r10
|
||||
adds r0, r4, r1
|
||||
ldrb r2, [r0]
|
||||
cmp r2, 0x1
|
||||
beq _080B9D9A
|
||||
_080B9DC0:
|
||||
mov r2, r9
|
||||
adds r0, r2, r1
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0x1
|
||||
bne _080B9E32
|
||||
mov r4, r10
|
||||
adds r0, r4, r1
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0x1
|
||||
bne _080B9E32
|
||||
lsls r5, r7, 1
|
||||
ldr r1, [sp, 0x44]
|
||||
adds r0, r1, r5
|
||||
strb r3, [r0]
|
||||
adds r0, r6, 0
|
||||
str r3, [sp, 0x54]
|
||||
bl sub_80B9BBC
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
adds r0, r6, 0
|
||||
adds r0, 0x38
|
||||
bl sub_80B9BBC
|
||||
lsls r0, 24
|
||||
lsrs r1, r0, 24
|
||||
ldr r3, [sp, 0x54]
|
||||
cmp r4, 0
|
||||
bne _080B9E0A
|
||||
cmp r1, 0
|
||||
beq _080B9E0E
|
||||
mov r2, r8
|
||||
adds r1, r2, r5
|
||||
movs r0, 0x1
|
||||
strb r0, [r1]
|
||||
b _080B9E2C
|
||||
_080B9E0A:
|
||||
cmp r1, 0
|
||||
beq _080B9E26
|
||||
_080B9E0E:
|
||||
str r3, [sp, 0x54]
|
||||
bl Random
|
||||
mov r4, r8
|
||||
adds r2, r4, r5
|
||||
lsls r0, 16
|
||||
lsrs r0, 16
|
||||
movs r1, 0x1
|
||||
ands r0, r1
|
||||
strb r0, [r2]
|
||||
ldr r3, [sp, 0x54]
|
||||
b _080B9E2C
|
||||
_080B9E26:
|
||||
mov r2, r8
|
||||
adds r0, r2, r5
|
||||
strb r1, [r0]
|
||||
_080B9E2C:
|
||||
adds r0, r7, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r7, r0, 16
|
||||
_080B9E32:
|
||||
adds r0, r3, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r3, r0, 16
|
||||
ldr r4, [sp, 0x50]
|
||||
cmp r0, r4
|
||||
bcc _080B9D5C
|
||||
_080B9E3E:
|
||||
movs r3, 0
|
||||
ldr r1, [sp, 0x48]
|
||||
lsls r0, r1, 4
|
||||
subs r0, r1
|
||||
lsls r0, 3
|
||||
ldr r2, [sp, 0x2C]
|
||||
adds r6, r2, r0
|
||||
ldr r1, [sp, 0x4C]
|
||||
_080B9E4E:
|
||||
lsls r0, r3, 2
|
||||
adds r0, r1, r0
|
||||
str r6, [r0]
|
||||
adds r0, r3, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r3, r0, 16
|
||||
cmp r3, 0x3
|
||||
bls _080B9E4E
|
||||
ldr r0, [sp, 0x38]
|
||||
bl sub_80B9C4C
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
movs r1, 0x3
|
||||
bl __umodsi3
|
||||
lsls r0, 24
|
||||
lsrs r1, r0, 24
|
||||
ldr r4, [sp, 0x3C]
|
||||
cmp r4, 0x3
|
||||
beq _080B9E9C
|
||||
cmp r4, 0x3
|
||||
bgt _080B9E82
|
||||
cmp r4, 0x2
|
||||
beq _080B9E8A
|
||||
b _080B9EF0
|
||||
_080B9E82:
|
||||
ldr r0, [sp, 0x3C]
|
||||
cmp r0, 0x4
|
||||
beq _080B9EBC
|
||||
b _080B9EF0
|
||||
_080B9E8A:
|
||||
add r2, sp, 0x24
|
||||
movs r0, 0x1
|
||||
str r0, [sp]
|
||||
ldr r0, [sp, 0x2C]
|
||||
ldr r1, [sp, 0x30]
|
||||
movs r3, 0
|
||||
bl sub_80B9BC4
|
||||
b _080B9EF0
|
||||
_080B9E9C:
|
||||
ldr r0, _080B9EB8 @ =gUnknown_083D02B4
|
||||
lsls r1, 1
|
||||
adds r2, r1, r0
|
||||
ldrb r3, [r2]
|
||||
adds r0, 0x1
|
||||
adds r1, r0
|
||||
ldrb r0, [r1]
|
||||
add r2, sp, 0x24
|
||||
str r0, [sp]
|
||||
ldr r0, [sp, 0x2C]
|
||||
ldr r1, [sp, 0x30]
|
||||
bl sub_80B9BC4
|
||||
b _080B9EF0
|
||||
.align 2, 0
|
||||
_080B9EB8: .4byte gUnknown_083D02B4
|
||||
_080B9EBC:
|
||||
add r6, sp, 0x24
|
||||
ldr r4, _080B9F2C @ =gUnknown_083D02BA
|
||||
lsls r5, r1, 2
|
||||
adds r0, r5, r4
|
||||
ldrb r3, [r0]
|
||||
adds r0, r4, 0x1
|
||||
adds r0, r5, r0
|
||||
ldrb r0, [r0]
|
||||
str r0, [sp]
|
||||
ldr r0, [sp, 0x2C]
|
||||
ldr r1, [sp, 0x30]
|
||||
adds r2, r6, 0
|
||||
bl sub_80B9BC4
|
||||
adds r0, r4, 0x2
|
||||
adds r0, r5, r0
|
||||
ldrb r3, [r0]
|
||||
adds r4, 0x3
|
||||
adds r5, r4
|
||||
ldrb r0, [r5]
|
||||
str r0, [sp]
|
||||
ldr r0, [sp, 0x2C]
|
||||
ldr r1, [sp, 0x30]
|
||||
adds r2, r6, 0
|
||||
bl sub_80B9BC4
|
||||
_080B9EF0:
|
||||
ldr r1, [sp, 0x2C]
|
||||
ldr r2, [sp, 0x48]
|
||||
adds r6, r1, r2
|
||||
ldr r4, _080B9F30 @ =gSaveBlock1
|
||||
ldr r1, _080B9F34 @ =0x0000303c
|
||||
adds r0, r4, r1
|
||||
adds r1, r6, 0
|
||||
movs r2, 0x38
|
||||
bl memcpy
|
||||
ldr r2, _080B9F38 @ =0x00003074
|
||||
adds r4, r2
|
||||
adds r1, r6, 0
|
||||
adds r1, 0x38
|
||||
adds r0, r4, 0
|
||||
movs r2, 0x38
|
||||
bl memcpy
|
||||
ldr r0, [sp, 0x40]
|
||||
bl SeedRng
|
||||
add sp, 0x58
|
||||
pop {r3-r5}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
mov r10, r5
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080B9F2C: .4byte gUnknown_083D02BA
|
||||
_080B9F30: .4byte gSaveBlock1
|
||||
_080B9F34: .4byte 0x0000303c
|
||||
_080B9F38: .4byte 0x00003074
|
||||
thumb_func_end sub_80B9C6C
|
||||
|
||||
thumb_func_start sub_80B9F3C
|
||||
sub_80B9F3C: @ 80B9F3C
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
lsls r1, 24
|
||||
cmp r1, 0
|
||||
beq _080BA000
|
||||
ldrh r0, [r4]
|
||||
cmp r0, 0
|
||||
beq _080BA000
|
||||
bl GetPocketByItemId
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x5
|
||||
bne _080B9FC8
|
||||
ldrh r0, [r4]
|
||||
movs r1, 0x1
|
||||
bl CheckBagHasItem
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B9FB8
|
||||
ldrh r0, [r4]
|
||||
movs r1, 0x1
|
||||
bl CheckPCHasItem
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
bne _080B9FB8
|
||||
ldrh r0, [r4]
|
||||
movs r1, 0x1
|
||||
bl AddBagItem
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080B9FB8
|
||||
ldr r0, _080B9FA4 @ =0x00004001
|
||||
ldrh r1, [r4]
|
||||
bl VarSet
|
||||
ldr r0, _080B9FA8 @ =gStringVar1
|
||||
ldr r1, _080B9FAC @ =gLinkPlayers + 0x8
|
||||
bl StringCopy
|
||||
ldrh r1, [r4]
|
||||
ldr r0, _080B9FB0 @ =0x00000113
|
||||
cmp r1, r0
|
||||
bne _080BA000
|
||||
ldr r0, _080B9FB4 @ =0x00000853
|
||||
bl FlagSet
|
||||
b _080BA000
|
||||
.align 2, 0
|
||||
_080B9FA4: .4byte 0x00004001
|
||||
_080B9FA8: .4byte gStringVar1
|
||||
_080B9FAC: .4byte gLinkPlayers + 0x8
|
||||
_080B9FB0: .4byte 0x00000113
|
||||
_080B9FB4: .4byte 0x00000853
|
||||
_080B9FB8:
|
||||
ldr r0, _080B9FC4 @ =0x00004001
|
||||
movs r1, 0
|
||||
bl VarSet
|
||||
b _080BA000
|
||||
.align 2, 0
|
||||
_080B9FC4: .4byte 0x00004001
|
||||
_080B9FC8:
|
||||
ldrh r0, [r4]
|
||||
movs r1, 0x1
|
||||
bl AddBagItem
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
bne _080B9FF8
|
||||
ldr r0, _080B9FEC @ =0x00004001
|
||||
ldrh r1, [r4]
|
||||
bl VarSet
|
||||
ldr r0, _080B9FF0 @ =gStringVar1
|
||||
ldr r1, _080B9FF4 @ =gLinkPlayers + 0x8
|
||||
bl StringCopy
|
||||
b _080BA000
|
||||
.align 2, 0
|
||||
_080B9FEC: .4byte 0x00004001
|
||||
_080B9FF0: .4byte gStringVar1
|
||||
_080B9FF4: .4byte gLinkPlayers + 0x8
|
||||
_080B9FF8:
|
||||
ldr r0, _080BA008 @ =0x00004001
|
||||
movs r1, 0
|
||||
bl VarSet
|
||||
_080BA000:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080BA008: .4byte 0x00004001
|
||||
thumb_func_end sub_80B9F3C
|
||||
|
||||
thumb_func_start sub_80BA00C
|
||||
sub_80BA00C: @ 80BA00C
|
||||
push {r4,lr}
|
||||
lsls r0, 24
|
||||
lsrs r2, r0, 24
|
||||
lsls r0, r2, 2
|
||||
adds r0, r2
|
||||
lsls r0, 3
|
||||
ldr r1, _080BA030 @ =gTasks
|
||||
adds r4, r0, r1
|
||||
movs r1, 0x8
|
||||
ldrsh r0, [r4, r1]
|
||||
cmp r0, 0x5
|
||||
bhi _080BA09C
|
||||
lsls r0, 2
|
||||
ldr r1, _080BA034 @ =_080BA038
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
mov pc, r0
|
||||
.align 2, 0
|
||||
_080BA030: .4byte gTasks
|
||||
_080BA034: .4byte _080BA038
|
||||
.align 2, 0
|
||||
_080BA038:
|
||||
.4byte _080BA086
|
||||
.4byte _080BA086
|
||||
.4byte _080BA050
|
||||
.4byte _080BA05A
|
||||
.4byte _080BA074
|
||||
.4byte _080BA08E
|
||||
_080BA050:
|
||||
bl SetSecretBase2Field_9_AndHideBG
|
||||
bl sub_8125E2C
|
||||
b _080BA086
|
||||
_080BA05A:
|
||||
bl sub_8125E6C
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _080BA09C
|
||||
bl ClearSecretBase2Field_9_2
|
||||
ldrh r0, [r4, 0x8]
|
||||
adds r0, 0x1
|
||||
movs r1, 0
|
||||
strh r0, [r4, 0x8]
|
||||
strh r1, [r4, 0xA]
|
||||
b _080BA09C
|
||||
_080BA074:
|
||||
ldrh r0, [r4, 0xA]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0xA]
|
||||
lsls r0, 16
|
||||
asrs r0, 16
|
||||
cmp r0, 0xA
|
||||
ble _080BA09C
|
||||
bl sub_800832C
|
||||
_080BA086:
|
||||
ldrh r0, [r4, 0x8]
|
||||
adds r0, 0x1
|
||||
strh r0, [r4, 0x8]
|
||||
b _080BA09C
|
||||
_080BA08E:
|
||||
ldr r0, _080BA0A4 @ =gReceivedRemoteLinkPlayers
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
bne _080BA09C
|
||||
adds r0, r2, 0
|
||||
bl DestroyTask
|
||||
_080BA09C:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080BA0A4: .4byte gReceivedRemoteLinkPlayers
|
||||
thumb_func_end sub_80BA00C
|
||||
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
-3969
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -66,8 +66,12 @@ RomHeaderChecksum:
|
||||
.byte 0x41 - REVISION
|
||||
.endif
|
||||
.else
|
||||
.ifdef SAPPHIRE
|
||||
.byte 0x56
|
||||
.else
|
||||
.byte 0x42
|
||||
.endif
|
||||
.endif
|
||||
|
||||
RomHeaderReserved2:
|
||||
.space 2
|
||||
|
||||
-2613
File diff suppressed because it is too large
Load Diff
+2
-2
@@ -10098,13 +10098,13 @@ sub_81063C0: @ 81063C0
|
||||
ldr r0, _081063F0 @ =gSlotMachineReelTimeLights_Gfx
|
||||
ldr r4, _081063F4 @ =0x02010000
|
||||
adds r1, r4, 0
|
||||
bl sub_800D238
|
||||
bl LZDecompressWram
|
||||
ldr r0, _081063F8 @ =gUnknown_083EDE8C
|
||||
movs r1, 0xC8
|
||||
lsls r1, 6
|
||||
adds r4, r1
|
||||
adds r1, r4, 0
|
||||
bl sub_800D238
|
||||
bl LZDecompressWram
|
||||
ldr r0, _081063FC @ =gUnknown_083EDC2C
|
||||
bl LoadSpriteSheets
|
||||
ldr r0, _08106400 @ =gSlotMachineSpritePalettes
|
||||
|
||||
-12050
File diff suppressed because it is too large
Load Diff
-656
@@ -1,656 +0,0 @@
|
||||
.include "constants/gba_constants.inc"
|
||||
.include "constants/species_constants.inc"
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start sub_810993C
|
||||
sub_810993C: @ 810993C
|
||||
push {r4-r7,lr}
|
||||
mov r7, r10
|
||||
mov r6, r9
|
||||
mov r5, r8
|
||||
push {r5-r7}
|
||||
sub sp, 0x10
|
||||
ldr r0, _081099C8 @ =gSaveBlock1 + 0x2D94
|
||||
mov r9, r0
|
||||
movs r2, 0
|
||||
_0810994E:
|
||||
adds r1, r2, 0x1
|
||||
lsls r0, r1, 24
|
||||
lsrs r5, r0, 24
|
||||
str r1, [sp, 0xC]
|
||||
cmp r5, 0x3
|
||||
bhi _081099AC
|
||||
movs r1, 0x1
|
||||
add r1, r9
|
||||
mov r8, r1
|
||||
adds r6, r1, r2
|
||||
movs r0, 0xB
|
||||
mov r10, r0
|
||||
mov r0, r10
|
||||
muls r0, r2
|
||||
adds r0, 0x5
|
||||
mov r1, r9
|
||||
adds r7, r1, r0
|
||||
_08109970:
|
||||
ldrb r0, [r6]
|
||||
cmp r0, 0
|
||||
bne _081099A2
|
||||
adds r2, r0, 0
|
||||
mov r0, r8
|
||||
adds r1, r0, r5
|
||||
ldrb r0, [r1]
|
||||
strb r0, [r6]
|
||||
strb r2, [r1]
|
||||
mov r0, sp
|
||||
adds r1, r7, 0
|
||||
bl StringCopy
|
||||
mov r4, r10
|
||||
muls r4, r5
|
||||
adds r4, 0x5
|
||||
add r4, r9
|
||||
adds r0, r7, 0
|
||||
adds r1, r4, 0
|
||||
bl StringCopy
|
||||
adds r0, r4, 0
|
||||
mov r1, sp
|
||||
bl StringCopy
|
||||
_081099A2:
|
||||
adds r0, r5, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
cmp r5, 0x3
|
||||
bls _08109970
|
||||
_081099AC:
|
||||
ldr r1, [sp, 0xC]
|
||||
lsls r0, r1, 24
|
||||
lsrs r2, r0, 24
|
||||
cmp r2, 0x2
|
||||
bls _0810994E
|
||||
add sp, 0x10
|
||||
pop {r3-r5}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
mov r10, r5
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_081099C8: .4byte gSaveBlock1 + 0x2D94
|
||||
thumb_func_end sub_810993C
|
||||
|
||||
thumb_func_start sub_81099CC
|
||||
sub_81099CC: @ 81099CC
|
||||
push {r4-r6,lr}
|
||||
ldr r5, _08109A14 @ =gSaveBlock1 + 0x2D94
|
||||
movs r1, 0
|
||||
movs r0, 0x2
|
||||
strb r0, [r5]
|
||||
adds r0, r5, 0
|
||||
adds r0, 0x31
|
||||
strb r1, [r0]
|
||||
movs r4, 0
|
||||
ldr r6, _08109A18 @ =gUnknown_083F62D8
|
||||
_081099E0:
|
||||
movs r0, 0xB
|
||||
muls r0, r4
|
||||
adds r0, 0x5
|
||||
adds r0, r5, r0
|
||||
lsls r1, r4, 2
|
||||
adds r1, r6
|
||||
ldr r1, [r1]
|
||||
bl StringCopy
|
||||
adds r1, r5, 0x1
|
||||
adds r1, r4
|
||||
ldr r0, _08109A1C @ =gTraderDecorations
|
||||
adds r0, r4, r0
|
||||
ldrb r0, [r0]
|
||||
strb r0, [r1]
|
||||
adds r0, r4, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
cmp r4, 0x3
|
||||
bls _081099E0
|
||||
bl sub_810993C
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08109A14: .4byte gSaveBlock1 + 0x2D94
|
||||
_08109A18: .4byte gUnknown_083F62D8
|
||||
_08109A1C: .4byte gTraderDecorations
|
||||
thumb_func_end sub_81099CC
|
||||
|
||||
thumb_func_start sub_8109A20
|
||||
sub_8109A20: @ 8109A20
|
||||
ldr r0, _08109A2C @ =gSaveBlock1 + 0x2D94
|
||||
adds r0, 0x31
|
||||
movs r1, 0
|
||||
strb r1, [r0]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_08109A2C: .4byte gSaveBlock1 + 0x2D94
|
||||
thumb_func_end sub_8109A20
|
||||
|
||||
thumb_func_start sub_8109A30
|
||||
sub_8109A30: @ 8109A30
|
||||
push {lr}
|
||||
adds r1, r0, 0
|
||||
lsls r1, 24
|
||||
lsrs r1, 24
|
||||
ldr r0, _08109A44 @ =0x00004020
|
||||
bl VarSet
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08109A44: .4byte 0x00004020
|
||||
thumb_func_end sub_8109A30
|
||||
|
||||
thumb_func_start sub_8109A48
|
||||
sub_8109A48: @ 8109A48
|
||||
push {r4-r7,lr}
|
||||
mov r7, r9
|
||||
mov r6, r8
|
||||
push {r6,r7}
|
||||
sub sp, 0x8
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
mov r9, r0
|
||||
movs r6, 0x1
|
||||
movs r5, 0
|
||||
ldr r0, _08109AB8 @ =gSaveBlock1 + 0x2D94
|
||||
movs r4, 0
|
||||
adds r7, r0, 0x1
|
||||
adds r1, r7, 0
|
||||
_08109A64:
|
||||
adds r0, r1, r4
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
beq _08109A72
|
||||
adds r0, r6, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r6, r0, 24
|
||||
_08109A72:
|
||||
adds r0, r4, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
cmp r4, 0x3
|
||||
bls _08109A64
|
||||
lsls r3, r6, 25
|
||||
movs r0, 0x80
|
||||
lsls r0, 18
|
||||
adds r3, r0
|
||||
lsrs r3, 24
|
||||
movs r0, 0
|
||||
movs r1, 0x1
|
||||
movs r2, 0xC
|
||||
bl MenuDrawTextWindow
|
||||
movs r4, 0
|
||||
mov r1, r9
|
||||
lsls r1, 2
|
||||
mov r8, r1
|
||||
_08109A98:
|
||||
adds r1, r7, r4
|
||||
ldrb r0, [r1]
|
||||
cmp r0, 0
|
||||
beq _08109ADE
|
||||
cmp r0, 0x78
|
||||
bls _08109AC0
|
||||
lsls r2, r5, 25
|
||||
movs r0, 0x80
|
||||
lsls r0, 18
|
||||
adds r2, r0
|
||||
lsrs r2, 24
|
||||
ldr r0, _08109ABC @ =gOtherText_FiveQuestionsAndSlash
|
||||
movs r1, 0x1
|
||||
bl MenuPrint
|
||||
b _08109AD8
|
||||
.align 2, 0
|
||||
_08109AB8: .4byte gSaveBlock1 + 0x2D94
|
||||
_08109ABC: .4byte gOtherText_FiveQuestionsAndSlash
|
||||
_08109AC0:
|
||||
ldrb r0, [r1]
|
||||
lsls r0, 5
|
||||
ldr r1, _08109B28 @ =gDecorations + 0x1
|
||||
adds r0, r1
|
||||
lsls r2, r5, 25
|
||||
movs r1, 0x80
|
||||
lsls r1, 18
|
||||
adds r2, r1
|
||||
lsrs r2, 24
|
||||
movs r1, 0x1
|
||||
bl MenuPrint
|
||||
_08109AD8:
|
||||
adds r0, r5, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r5, r0, 24
|
||||
_08109ADE:
|
||||
adds r0, r4, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
cmp r4, 0x3
|
||||
bls _08109A98
|
||||
ldr r0, _08109B2C @ =gOtherText_CancelNoTerminator
|
||||
lsls r2, r5, 25
|
||||
movs r1, 0x80
|
||||
lsls r1, 18
|
||||
adds r2, r1
|
||||
lsrs r2, 24
|
||||
movs r1, 0x1
|
||||
bl MenuPrint
|
||||
movs r0, 0
|
||||
str r0, [sp]
|
||||
movs r0, 0xB
|
||||
str r0, [sp, 0x4]
|
||||
movs r0, 0
|
||||
movs r1, 0x1
|
||||
movs r2, 0x2
|
||||
adds r3, r6, 0
|
||||
bl InitMenu
|
||||
ldr r1, _08109B30 @ =gTasks
|
||||
mov r0, r8
|
||||
add r0, r9
|
||||
lsls r0, 3
|
||||
adds r0, r1
|
||||
strh r5, [r0, 0xA]
|
||||
add sp, 0x8
|
||||
pop {r3,r4}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08109B28: .4byte gDecorations + 0x1
|
||||
_08109B2C: .4byte gOtherText_CancelNoTerminator
|
||||
_08109B30: .4byte gTasks
|
||||
thumb_func_end sub_8109A48
|
||||
|
||||
thumb_func_start sub_8109B34
|
||||
sub_8109B34: @ 8109B34
|
||||
push {r4,lr}
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
lsls r1, 24
|
||||
lsrs r1, 24
|
||||
cmp r1, 0x78
|
||||
bls _08109B54
|
||||
ldr r1, _08109B4C @ =gSpecialVar_0x8004
|
||||
ldr r2, _08109B50 @ =0x0000ffff
|
||||
adds r0, r2, 0
|
||||
strh r0, [r1]
|
||||
b _08109B58
|
||||
.align 2, 0
|
||||
_08109B4C: .4byte gSpecialVar_0x8004
|
||||
_08109B50: .4byte 0x0000ffff
|
||||
_08109B54:
|
||||
ldr r0, _08109B78 @ =gSpecialVar_0x8004
|
||||
strh r1, [r0]
|
||||
_08109B58:
|
||||
bl HandleDestroyMenuCursors
|
||||
movs r0, 0
|
||||
movs r1, 0x1
|
||||
movs r2, 0xC
|
||||
movs r3, 0xC
|
||||
bl MenuZeroFillWindowRect
|
||||
adds r0, r4, 0
|
||||
bl DestroyTask
|
||||
bl EnableBothScriptContexts
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08109B78: .4byte gSpecialVar_0x8004
|
||||
thumb_func_end sub_8109B34
|
||||
|
||||
thumb_func_start sub_8109B7C
|
||||
sub_8109B7C: @ 8109B7C
|
||||
push {r4-r6,lr}
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
adds r5, r4, 0
|
||||
ldr r6, _08109BA4 @ =gSaveBlock1 + 0x2D94
|
||||
ldr r0, _08109BA8 @ =gMain
|
||||
ldrh r1, [r0, 0x2E]
|
||||
movs r0, 0x40
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _08109BAC
|
||||
movs r0, 0x5
|
||||
bl PlaySE
|
||||
movs r0, 0x1
|
||||
negs r0, r0
|
||||
bl MoveMenuCursor
|
||||
b _08109C3E
|
||||
.align 2, 0
|
||||
_08109BA4: .4byte gSaveBlock1 + 0x2D94
|
||||
_08109BA8: .4byte gMain
|
||||
_08109BAC:
|
||||
movs r0, 0x80
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _08109BC2
|
||||
movs r0, 0x5
|
||||
bl PlaySE
|
||||
movs r0, 0x1
|
||||
bl MoveMenuCursor
|
||||
b _08109C3E
|
||||
_08109BC2:
|
||||
movs r0, 0x1
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _08109C28
|
||||
movs r0, 0x5
|
||||
bl PlaySE
|
||||
ldr r5, _08109BFC @ =gSpecialVar_0x8005
|
||||
bl GetMenuCursorPos
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
strh r0, [r5]
|
||||
ldr r1, _08109C00 @ =gTasks
|
||||
lsls r0, r4, 2
|
||||
adds r0, r4
|
||||
lsls r0, 3
|
||||
adds r0, r1
|
||||
movs r1, 0xA
|
||||
ldrsh r0, [r0, r1]
|
||||
ldrh r2, [r5]
|
||||
cmp r0, r2
|
||||
bne _08109C04
|
||||
adds r0, r4, 0
|
||||
movs r1, 0
|
||||
bl sub_8109B34
|
||||
b _08109C3E
|
||||
.align 2, 0
|
||||
_08109BFC: .4byte gSpecialVar_0x8005
|
||||
_08109C00: .4byte gTasks
|
||||
_08109C04:
|
||||
ldr r0, _08109C24 @ =gStringVar1
|
||||
movs r1, 0xB
|
||||
muls r1, r2
|
||||
adds r1, 0x5
|
||||
adds r1, r6
|
||||
bl StringCopy
|
||||
adds r0, r6, 0x1
|
||||
ldrh r5, [r5]
|
||||
adds r0, r5
|
||||
ldrb r1, [r0]
|
||||
adds r0, r4, 0
|
||||
bl sub_8109B34
|
||||
b _08109C3E
|
||||
.align 2, 0
|
||||
_08109C24: .4byte gStringVar1
|
||||
_08109C28:
|
||||
movs r0, 0x2
|
||||
ands r0, r1
|
||||
cmp r0, 0
|
||||
beq _08109C3E
|
||||
movs r0, 0x5
|
||||
bl PlaySE
|
||||
adds r0, r5, 0
|
||||
movs r1, 0
|
||||
bl sub_8109B34
|
||||
_08109C3E:
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
thumb_func_end sub_8109B7C
|
||||
|
||||
thumb_func_start sub_8109C44
|
||||
sub_8109C44: @ 8109C44
|
||||
ldr r0, _08109C50 @ =gSaveBlock1 + 0x2D94
|
||||
ldr r1, _08109C54 @ =gScriptResult
|
||||
adds r0, 0x31
|
||||
ldrb r0, [r0]
|
||||
strh r0, [r1]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_08109C50: .4byte gSaveBlock1 + 0x2D94
|
||||
_08109C54: .4byte gScriptResult
|
||||
thumb_func_end sub_8109C44
|
||||
|
||||
thumb_func_start sub_8109C58
|
||||
sub_8109C58: @ 8109C58
|
||||
push {r4,r5,lr}
|
||||
movs r4, 0
|
||||
ldr r5, _08109C70 @ =gScriptResult
|
||||
_08109C5E:
|
||||
adds r0, r4, 0
|
||||
bl sub_8134194
|
||||
lsls r0, 24
|
||||
cmp r0, 0
|
||||
beq _08109C74
|
||||
movs r0, 0
|
||||
strh r0, [r5]
|
||||
b _08109C84
|
||||
.align 2, 0
|
||||
_08109C70: .4byte gScriptResult
|
||||
_08109C74:
|
||||
adds r0, r4, 0x1
|
||||
lsls r0, 24
|
||||
lsrs r4, r0, 24
|
||||
cmp r4, 0x7
|
||||
bls _08109C5E
|
||||
ldr r1, _08109C8C @ =gScriptResult
|
||||
movs r0, 0x1
|
||||
strh r0, [r1]
|
||||
_08109C84:
|
||||
pop {r4,r5}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08109C8C: .4byte gScriptResult
|
||||
thumb_func_end sub_8109C58
|
||||
|
||||
thumb_func_start sub_8109C90
|
||||
sub_8109C90: @ 8109C90
|
||||
push {r4-r6,lr}
|
||||
ldr r6, _08109CDC @ =gScriptResult
|
||||
movs r0, 0
|
||||
strh r0, [r6]
|
||||
ldr r4, _08109CE0 @ =gDecorations
|
||||
ldr r5, _08109CE4 @ =gSpecialVar_0x8004
|
||||
ldrh r0, [r5]
|
||||
lsls r0, 5
|
||||
adds r2, r0, r4
|
||||
ldr r0, _08109CE8 @ =gSpecialVar_0x8006
|
||||
ldrh r0, [r0]
|
||||
lsls r0, 5
|
||||
adds r0, r4
|
||||
ldrb r1, [r2, 0x13]
|
||||
ldrb r0, [r0, 0x13]
|
||||
cmp r1, r0
|
||||
beq _08109CD6
|
||||
adds r0, r1, 0
|
||||
bl sub_8133F9C
|
||||
lsls r0, 24
|
||||
asrs r0, 24
|
||||
movs r1, 0x1
|
||||
negs r1, r1
|
||||
cmp r0, r1
|
||||
bne _08109CD6
|
||||
ldr r0, _08109CEC @ =gStringVar2
|
||||
ldrh r1, [r5]
|
||||
lsls r1, 5
|
||||
adds r1, r4
|
||||
ldrb r1, [r1, 0x13]
|
||||
bl sub_80FE7D4
|
||||
movs r0, 0x1
|
||||
strh r0, [r6]
|
||||
_08109CD6:
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08109CDC: .4byte gScriptResult
|
||||
_08109CE0: .4byte gDecorations
|
||||
_08109CE4: .4byte gSpecialVar_0x8004
|
||||
_08109CE8: .4byte gSpecialVar_0x8006
|
||||
_08109CEC: .4byte gStringVar2
|
||||
thumb_func_end sub_8109C90
|
||||
|
||||
thumb_func_start sub_8109CF0
|
||||
sub_8109CF0: @ 8109CF0
|
||||
push {lr}
|
||||
ldr r0, _08109D00 @ =sub_80FE7A8
|
||||
movs r1, 0
|
||||
bl CreateTask
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08109D00: .4byte sub_80FE7A8
|
||||
thumb_func_end sub_8109CF0
|
||||
|
||||
thumb_func_start sub_8109D04
|
||||
sub_8109D04: @ 8109D04
|
||||
push {r4-r6,lr}
|
||||
lsls r0, 24
|
||||
lsrs r6, r0, 24
|
||||
bl HandleDestroyMenuCursors
|
||||
movs r0, 0
|
||||
movs r1, 0
|
||||
movs r2, 0x1D
|
||||
movs r3, 0x13
|
||||
bl MenuZeroFillWindowRect
|
||||
movs r0, 0
|
||||
bl DestroyVerticalScrollIndicator
|
||||
movs r0, 0x1
|
||||
bl DestroyVerticalScrollIndicator
|
||||
ldr r0, _08109D6C @ =gUnknown_020388F7
|
||||
movs r1, 0x8
|
||||
bl sub_80F9520
|
||||
bl BuyMenuFreeMemory
|
||||
bl sub_80FEFA4
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
cmp r0, 0x1
|
||||
bne _08109D8C
|
||||
ldr r5, _08109D70 @ =gSpecialVar_0x8006
|
||||
ldr r0, _08109D74 @ =gUnknown_020388F5
|
||||
ldrb r1, [r0]
|
||||
ldr r0, _08109D78 @ =gUnknown_020388D0
|
||||
ldr r0, [r0]
|
||||
adds r0, r1
|
||||
ldrb r0, [r0]
|
||||
strh r0, [r5]
|
||||
ldr r0, _08109D7C @ =gStringVar3
|
||||
ldr r1, _08109D80 @ =gSpecialVar_0x8004
|
||||
ldrh r1, [r1]
|
||||
lsls r1, 5
|
||||
ldr r4, _08109D84 @ =gDecorations + 0x1
|
||||
adds r1, r4
|
||||
bl StringCopy
|
||||
ldr r0, _08109D88 @ =gStringVar2
|
||||
ldrh r1, [r5]
|
||||
lsls r1, 5
|
||||
adds r1, r4
|
||||
bl StringCopy
|
||||
b _08109D94
|
||||
.align 2, 0
|
||||
_08109D6C: .4byte gUnknown_020388F7
|
||||
_08109D70: .4byte gSpecialVar_0x8006
|
||||
_08109D74: .4byte gUnknown_020388F5
|
||||
_08109D78: .4byte gUnknown_020388D0
|
||||
_08109D7C: .4byte gStringVar3
|
||||
_08109D80: .4byte gSpecialVar_0x8004
|
||||
_08109D84: .4byte gDecorations + 0x1
|
||||
_08109D88: .4byte gStringVar2
|
||||
_08109D8C:
|
||||
ldr r1, _08109DA4 @ =gSpecialVar_0x8006
|
||||
ldr r2, _08109DA8 @ =0x0000ffff
|
||||
adds r0, r2, 0
|
||||
strh r0, [r1]
|
||||
_08109D94:
|
||||
adds r0, r6, 0
|
||||
bl DestroyTask
|
||||
bl EnableBothScriptContexts
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08109DA4: .4byte gSpecialVar_0x8006
|
||||
_08109DA8: .4byte 0x0000ffff
|
||||
thumb_func_end sub_8109D04
|
||||
|
||||
thumb_func_start sub_8109DAC
|
||||
sub_8109DAC: @ 8109DAC
|
||||
push {r4,lr}
|
||||
adds r4, r0, 0
|
||||
lsls r4, 24
|
||||
lsrs r4, 24
|
||||
bl HandleDestroyMenuCursors
|
||||
movs r0, 0
|
||||
movs r1, 0
|
||||
movs r2, 0x1D
|
||||
movs r3, 0x13
|
||||
bl MenuZeroFillWindowRect
|
||||
ldr r1, _08109DDC @ =gSpecialVar_0x8006
|
||||
movs r0, 0
|
||||
strh r0, [r1]
|
||||
adds r0, r4, 0
|
||||
bl DestroyTask
|
||||
bl EnableBothScriptContexts
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08109DDC: .4byte gSpecialVar_0x8006
|
||||
thumb_func_end sub_8109DAC
|
||||
|
||||
thumb_func_start sub_8109DE0
|
||||
sub_8109DE0: @ 8109DE0
|
||||
push {r4-r6,lr}
|
||||
ldr r4, _08109E20 @ =gSaveBlock1 + 0x2D94
|
||||
ldr r6, _08109E24 @ =gSpecialVar_0x8006
|
||||
ldrb r0, [r6]
|
||||
bl sub_81340A8
|
||||
ldr r0, _08109E28 @ =gSpecialVar_0x8004
|
||||
ldrb r0, [r0]
|
||||
bl IsThereStorageSpaceForDecoration
|
||||
ldr r5, _08109E2C @ =gSpecialVar_0x8005
|
||||
ldrh r1, [r5]
|
||||
movs r0, 0xB
|
||||
muls r0, r1
|
||||
adds r0, 0x5
|
||||
adds r0, r4
|
||||
ldr r1, _08109E30 @ =gSaveBlock2
|
||||
bl StringCopy
|
||||
adds r0, r4, 0x1
|
||||
ldrh r5, [r5]
|
||||
adds r0, r5
|
||||
ldrh r1, [r6]
|
||||
strb r1, [r0]
|
||||
bl sub_810993C
|
||||
adds r4, 0x31
|
||||
movs r0, 0x1
|
||||
strb r0, [r4]
|
||||
pop {r4-r6}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08109E20: .4byte gSaveBlock1 + 0x2D94
|
||||
_08109E24: .4byte gSpecialVar_0x8006
|
||||
_08109E28: .4byte gSpecialVar_0x8004
|
||||
_08109E2C: .4byte gSpecialVar_0x8005
|
||||
_08109E30: .4byte gSaveBlock2
|
||||
thumb_func_end sub_8109DE0
|
||||
|
||||
thumb_func_start sub_8109E34
|
||||
sub_8109E34: @ 8109E34
|
||||
push {lr}
|
||||
ldr r0, _08109E4C @ =sub_8109B7C
|
||||
movs r1, 0
|
||||
bl CreateTask
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
bl sub_8109A48
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08109E4C: .4byte sub_8109B7C
|
||||
thumb_func_end sub_8109E34
|
||||
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
@@ -1,645 +0,0 @@
|
||||
.include "constants/gba_constants.inc"
|
||||
.include "constants/species_constants.inc"
|
||||
.include "asm/macros.inc"
|
||||
|
||||
.syntax unified
|
||||
|
||||
.text
|
||||
|
||||
thumb_func_start remove_some_task
|
||||
remove_some_task: @ 8089578
|
||||
push {r4,lr}
|
||||
ldr r4, _080895A8 @ =gUnknown_03004DC0
|
||||
movs r0, 0
|
||||
strb r0, [r4, 0x15]
|
||||
ldr r1, _080895AC @ =0x040000b0
|
||||
ldrh r2, [r1, 0xA]
|
||||
ldr r0, _080895B0 @ =0x0000c5ff
|
||||
ands r0, r2
|
||||
strh r0, [r1, 0xA]
|
||||
ldrh r2, [r1, 0xA]
|
||||
ldr r0, _080895B4 @ =0x00007fff
|
||||
ands r0, r2
|
||||
strh r0, [r1, 0xA]
|
||||
ldrh r0, [r1, 0xA]
|
||||
ldrb r0, [r4, 0x18]
|
||||
cmp r0, 0xFF
|
||||
beq _080895A2
|
||||
bl DestroyTask
|
||||
movs r0, 0xFF
|
||||
strb r0, [r4, 0x18]
|
||||
_080895A2:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080895A8: .4byte gUnknown_03004DC0
|
||||
_080895AC: .4byte 0x040000b0
|
||||
_080895B0: .4byte 0x0000c5ff
|
||||
_080895B4: .4byte 0x00007fff
|
||||
thumb_func_end remove_some_task
|
||||
|
||||
thumb_func_start dp12_8087EA4
|
||||
dp12_8087EA4: @ 80895B8
|
||||
push {r4,lr}
|
||||
sub sp, 0x4
|
||||
mov r0, sp
|
||||
movs r4, 0
|
||||
strh r4, [r0]
|
||||
ldr r1, _080895EC @ =gUnknown_03004DE0
|
||||
ldr r2, _080895F0 @ =0x01000780
|
||||
bl CpuSet
|
||||
ldr r0, _080895F4 @ =gUnknown_03004DC0
|
||||
movs r1, 0
|
||||
str r1, [r0]
|
||||
str r1, [r0, 0x4]
|
||||
str r1, [r0, 0x8]
|
||||
str r1, [r0, 0xC]
|
||||
strb r4, [r0, 0x14]
|
||||
strb r4, [r0, 0x15]
|
||||
strb r4, [r0, 0x16]
|
||||
strb r4, [r0, 0x17]
|
||||
movs r1, 0xFF
|
||||
strb r1, [r0, 0x18]
|
||||
add sp, 0x4
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080895EC: .4byte gUnknown_03004DE0
|
||||
_080895F0: .4byte 0x01000780
|
||||
_080895F4: .4byte gUnknown_03004DC0
|
||||
thumb_func_end dp12_8087EA4
|
||||
|
||||
thumb_func_start sub_80895F8
|
||||
sub_80895F8: @ 80895F8
|
||||
push {lr}
|
||||
sub sp, 0xC
|
||||
str r0, [sp]
|
||||
str r1, [sp, 0x4]
|
||||
str r2, [sp, 0x8]
|
||||
ldr r0, _0808961C @ =0xa2600001
|
||||
cmp r1, r0
|
||||
bne _0808962C
|
||||
ldr r0, _08089620 @ =gUnknown_03004DC0
|
||||
ldr r1, _08089624 @ =gUnknown_03004DE2
|
||||
str r1, [r0]
|
||||
movs r2, 0xF0
|
||||
lsls r2, 3
|
||||
adds r1, r2
|
||||
str r1, [r0, 0x4]
|
||||
ldr r1, _08089628 @ =sub_80896F4
|
||||
b _0808963C
|
||||
.align 2, 0
|
||||
_0808961C: .4byte 0xa2600001
|
||||
_08089620: .4byte gUnknown_03004DC0
|
||||
_08089624: .4byte gUnknown_03004DE2
|
||||
_08089628: .4byte sub_80896F4
|
||||
_0808962C:
|
||||
ldr r0, _0808965C @ =gUnknown_03004DC0
|
||||
ldr r1, _08089660 @ =gUnknown_03004DE4
|
||||
str r1, [r0]
|
||||
movs r2, 0xF0
|
||||
lsls r2, 3
|
||||
adds r1, r2
|
||||
str r1, [r0, 0x4]
|
||||
ldr r1, _08089664 @ =sub_8089714
|
||||
_0808963C:
|
||||
str r1, [r0, 0x10]
|
||||
adds r1, r0, 0
|
||||
ldr r0, [sp, 0x4]
|
||||
str r0, [r1, 0xC]
|
||||
ldr r0, [sp]
|
||||
str r0, [r1, 0x8]
|
||||
mov r0, sp
|
||||
ldrb r0, [r0, 0x8]
|
||||
strb r0, [r1, 0x15]
|
||||
mov r0, sp
|
||||
ldrb r0, [r0, 0x9]
|
||||
strb r0, [r1, 0x16]
|
||||
strb r0, [r1, 0x17]
|
||||
add sp, 0xC
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_0808965C: .4byte gUnknown_03004DC0
|
||||
_08089660: .4byte gUnknown_03004DE4
|
||||
_08089664: .4byte sub_8089714
|
||||
thumb_func_end sub_80895F8
|
||||
|
||||
thumb_func_start sub_8089668
|
||||
sub_8089668: @ 8089668
|
||||
push {r4,lr}
|
||||
ldr r4, _08089698 @ =gUnknown_03004DC0
|
||||
ldrb r0, [r4, 0x15]
|
||||
cmp r0, 0
|
||||
beq _080896E2
|
||||
cmp r0, 0x3
|
||||
bne _080896AC
|
||||
movs r0, 0
|
||||
strb r0, [r4, 0x15]
|
||||
ldr r1, _0808969C @ =0x040000b0
|
||||
ldrh r2, [r1, 0xA]
|
||||
ldr r0, _080896A0 @ =0x0000c5ff
|
||||
ands r0, r2
|
||||
strh r0, [r1, 0xA]
|
||||
ldrh r2, [r1, 0xA]
|
||||
ldr r0, _080896A4 @ =0x00007fff
|
||||
ands r0, r2
|
||||
strh r0, [r1, 0xA]
|
||||
ldrh r0, [r1, 0xA]
|
||||
ldr r1, _080896A8 @ =gUnknown_0202FFA4
|
||||
movs r0, 0x1
|
||||
strb r0, [r1]
|
||||
b _080896E2
|
||||
.align 2, 0
|
||||
_08089698: .4byte gUnknown_03004DC0
|
||||
_0808969C: .4byte 0x040000b0
|
||||
_080896A0: .4byte 0x0000c5ff
|
||||
_080896A4: .4byte 0x00007fff
|
||||
_080896A8: .4byte gUnknown_0202FFA4
|
||||
_080896AC:
|
||||
ldr r1, _080896E8 @ =0x040000b0
|
||||
ldrh r2, [r1, 0xA]
|
||||
ldr r0, _080896EC @ =0x0000c5ff
|
||||
ands r0, r2
|
||||
strh r0, [r1, 0xA]
|
||||
ldrh r2, [r1, 0xA]
|
||||
ldr r0, _080896F0 @ =0x00007fff
|
||||
ands r0, r2
|
||||
strh r0, [r1, 0xA]
|
||||
ldrh r0, [r1, 0xA]
|
||||
ldrb r0, [r4, 0x14]
|
||||
lsls r0, 2
|
||||
adds r0, r4
|
||||
ldr r0, [r0]
|
||||
str r0, [r1]
|
||||
ldr r0, [r4, 0x8]
|
||||
str r0, [r1, 0x4]
|
||||
ldr r0, [r4, 0xC]
|
||||
str r0, [r1, 0x8]
|
||||
ldr r0, [r1, 0x8]
|
||||
ldr r0, [r4, 0x10]
|
||||
bl _call_via_r0
|
||||
ldrb r0, [r4, 0x14]
|
||||
movs r1, 0x1
|
||||
eors r0, r1
|
||||
strb r0, [r4, 0x14]
|
||||
_080896E2:
|
||||
pop {r4}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080896E8: .4byte 0x040000b0
|
||||
_080896EC: .4byte 0x0000c5ff
|
||||
_080896F0: .4byte 0x00007fff
|
||||
thumb_func_end sub_8089668
|
||||
|
||||
thumb_func_start sub_80896F4
|
||||
sub_80896F4: @ 80896F4
|
||||
ldr r0, _0808970C @ =gUnknown_03004DC0
|
||||
ldr r2, [r0, 0x8]
|
||||
ldrb r1, [r0, 0x14]
|
||||
lsls r0, r1, 4
|
||||
subs r0, r1
|
||||
lsls r0, 7
|
||||
ldr r1, _08089710 @ =gUnknown_03004DE0
|
||||
adds r0, r1
|
||||
ldrh r0, [r0]
|
||||
strh r0, [r2]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_0808970C: .4byte gUnknown_03004DC0
|
||||
_08089710: .4byte gUnknown_03004DE0
|
||||
thumb_func_end sub_80896F4
|
||||
|
||||
thumb_func_start sub_8089714
|
||||
sub_8089714: @ 8089714
|
||||
ldr r0, _0808972C @ =gUnknown_03004DC0
|
||||
ldr r2, [r0, 0x8]
|
||||
ldrb r1, [r0, 0x14]
|
||||
lsls r0, r1, 4
|
||||
subs r0, r1
|
||||
lsls r0, 7
|
||||
ldr r1, _08089730 @ =gUnknown_03004DE0
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
str r0, [r2]
|
||||
bx lr
|
||||
.align 2, 0
|
||||
_0808972C: .4byte gUnknown_03004DC0
|
||||
_08089730: .4byte gUnknown_03004DE0
|
||||
thumb_func_end sub_8089714
|
||||
|
||||
thumb_func_start task00_for_dp12
|
||||
task00_for_dp12: @ 8089734
|
||||
push {r4-r7,lr}
|
||||
mov r7, r10
|
||||
mov r6, r9
|
||||
mov r5, r8
|
||||
push {r5-r7}
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
mov r12, r0
|
||||
movs r6, 0
|
||||
ldr r0, _0808975C @ =gUnknown_0202FFA4
|
||||
ldrb r0, [r0]
|
||||
cmp r0, 0
|
||||
beq _08089764
|
||||
mov r0, r12
|
||||
bl DestroyTask
|
||||
ldr r1, _08089760 @ =gUnknown_03004DC0
|
||||
movs r0, 0xFF
|
||||
strb r0, [r1, 0x18]
|
||||
b _080898E4
|
||||
.align 2, 0
|
||||
_0808975C: .4byte gUnknown_0202FFA4
|
||||
_08089760: .4byte gUnknown_03004DC0
|
||||
_08089764:
|
||||
ldr r1, _08089790 @ =gTasks
|
||||
mov r0, r12
|
||||
lsls r2, r0, 2
|
||||
adds r0, r2, r0
|
||||
lsls r0, 3
|
||||
adds r3, r0, r1
|
||||
movs r4, 0x16
|
||||
ldrsh r0, [r3, r4]
|
||||
mov r10, r1
|
||||
mov r9, r2
|
||||
cmp r0, 0
|
||||
beq _08089810
|
||||
movs r1, 0x14
|
||||
ldrsh r0, [r3, r1]
|
||||
cmp r0, 0xE
|
||||
bhi _08089810
|
||||
lsls r0, 2
|
||||
ldr r1, _08089794 @ =_08089798
|
||||
adds r0, r1
|
||||
ldr r0, [r0]
|
||||
mov pc, r0
|
||||
.align 2, 0
|
||||
_08089790: .4byte gTasks
|
||||
_08089794: .4byte _08089798
|
||||
.align 2, 0
|
||||
_08089798:
|
||||
.4byte _080897D4
|
||||
.4byte _08089810
|
||||
.4byte _080897DC
|
||||
.4byte _08089810
|
||||
.4byte _080897E4
|
||||
.4byte _08089810
|
||||
.4byte _080897EC
|
||||
.4byte _08089810
|
||||
.4byte _080897F4
|
||||
.4byte _08089810
|
||||
.4byte _080897FC
|
||||
.4byte _08089810
|
||||
.4byte _08089804
|
||||
.4byte _08089810
|
||||
.4byte _0808980C
|
||||
_080897D4:
|
||||
ldr r0, _080897D8 @ =gUnknown_030042A4
|
||||
b _0808980E
|
||||
.align 2, 0
|
||||
_080897D8: .4byte gUnknown_030042A4
|
||||
_080897DC:
|
||||
ldr r0, _080897E0 @ =gUnknown_030042A0
|
||||
b _0808980E
|
||||
.align 2, 0
|
||||
_080897E0: .4byte gUnknown_030042A0
|
||||
_080897E4:
|
||||
ldr r0, _080897E8 @ =gUnknown_030042C0
|
||||
b _0808980E
|
||||
.align 2, 0
|
||||
_080897E8: .4byte gUnknown_030042C0
|
||||
_080897EC:
|
||||
ldr r0, _080897F0 @ =gUnknown_030041B4
|
||||
b _0808980E
|
||||
.align 2, 0
|
||||
_080897F0: .4byte gUnknown_030041B4
|
||||
_080897F4:
|
||||
ldr r0, _080897F8 @ =gUnknown_03004288
|
||||
b _0808980E
|
||||
.align 2, 0
|
||||
_080897F8: .4byte gUnknown_03004288
|
||||
_080897FC:
|
||||
ldr r0, _08089800 @ =gUnknown_03004280
|
||||
b _0808980E
|
||||
.align 2, 0
|
||||
_08089800: .4byte gUnknown_03004280
|
||||
_08089804:
|
||||
ldr r0, _08089808 @ =gUnknown_030041B0
|
||||
b _0808980E
|
||||
.align 2, 0
|
||||
_08089808: .4byte gUnknown_030041B0
|
||||
_0808980C:
|
||||
ldr r0, _08089870 @ =gUnknown_030041B8
|
||||
_0808980E:
|
||||
ldrh r6, [r0]
|
||||
_08089810:
|
||||
mov r0, r9
|
||||
add r0, r12
|
||||
lsls r0, 3
|
||||
mov r2, r10
|
||||
adds r1, r0, r2
|
||||
ldrh r2, [r1, 0x10]
|
||||
movs r3, 0x10
|
||||
ldrsh r0, [r1, r3]
|
||||
cmp r0, 0
|
||||
beq _0808987C
|
||||
subs r0, r2, 0x1
|
||||
strh r0, [r1, 0x10]
|
||||
movs r4, 0xE
|
||||
ldrsh r0, [r1, r4]
|
||||
movs r3, 0xA0
|
||||
lsls r3, 1
|
||||
adds r2, r0, r3
|
||||
movs r4, 0x8
|
||||
ldrsh r3, [r1, r4]
|
||||
movs r4, 0xA
|
||||
ldrsh r0, [r1, r4]
|
||||
cmp r3, r0
|
||||
bge _080898E4
|
||||
ldr r5, _08089874 @ =gUnknown_03004DE0
|
||||
ldr r0, _08089878 @ =gUnknown_03004DC0
|
||||
mov r8, r0
|
||||
adds r7, r1, 0
|
||||
lsls r0, r2, 1
|
||||
adds r4, r0, r5
|
||||
_0808984A:
|
||||
lsls r2, r3, 1
|
||||
mov r0, r8
|
||||
ldrb r1, [r0, 0x14]
|
||||
lsls r0, r1, 4
|
||||
subs r0, r1
|
||||
lsls r0, 7
|
||||
adds r2, r0
|
||||
adds r2, r5
|
||||
ldrh r0, [r4]
|
||||
adds r0, r6
|
||||
strh r0, [r2]
|
||||
adds r4, 0x2
|
||||
adds r3, 0x1
|
||||
movs r1, 0xA
|
||||
ldrsh r0, [r7, r1]
|
||||
cmp r3, r0
|
||||
blt _0808984A
|
||||
b _080898E4
|
||||
.align 2, 0
|
||||
_08089870: .4byte gUnknown_030041B8
|
||||
_08089874: .4byte gUnknown_03004DE0
|
||||
_08089878: .4byte gUnknown_03004DC0
|
||||
_0808987C:
|
||||
ldrh r0, [r1, 0x12]
|
||||
strh r0, [r1, 0x10]
|
||||
movs r2, 0xE
|
||||
ldrsh r0, [r1, r2]
|
||||
movs r3, 0xA0
|
||||
lsls r3, 1
|
||||
adds r2, r0, r3
|
||||
movs r4, 0x8
|
||||
ldrsh r3, [r1, r4]
|
||||
movs r4, 0xA
|
||||
ldrsh r0, [r1, r4]
|
||||
cmp r3, r0
|
||||
bge _080898C4
|
||||
ldr r5, _080898F4 @ =gUnknown_03004DE0
|
||||
adds r7, r1, 0
|
||||
lsls r0, r2, 1
|
||||
adds r4, r0, r5
|
||||
ldr r0, _080898F8 @ =gUnknown_03004DC0
|
||||
mov r8, r0
|
||||
_080898A2:
|
||||
lsls r2, r3, 1
|
||||
mov r0, r8
|
||||
ldrb r1, [r0, 0x14]
|
||||
lsls r0, r1, 4
|
||||
subs r0, r1
|
||||
lsls r0, 7
|
||||
adds r2, r0
|
||||
adds r2, r5
|
||||
ldrh r0, [r4]
|
||||
adds r0, r6
|
||||
strh r0, [r2]
|
||||
adds r4, 0x2
|
||||
adds r3, 0x1
|
||||
movs r1, 0xA
|
||||
ldrsh r0, [r7, r1]
|
||||
cmp r3, r0
|
||||
blt _080898A2
|
||||
_080898C4:
|
||||
mov r0, r9
|
||||
add r0, r12
|
||||
lsls r0, 3
|
||||
mov r3, r10
|
||||
adds r2, r0, r3
|
||||
ldrh r0, [r2, 0xE]
|
||||
adds r0, 0x1
|
||||
strh r0, [r2, 0xE]
|
||||
lsls r0, 16
|
||||
asrs r0, 16
|
||||
movs r4, 0xC
|
||||
ldrsh r1, [r2, r4]
|
||||
cmp r0, r1
|
||||
bne _080898E4
|
||||
movs r0, 0
|
||||
strh r0, [r2, 0xE]
|
||||
_080898E4:
|
||||
pop {r3-r5}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
mov r10, r5
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_080898F4: .4byte gUnknown_03004DE0
|
||||
_080898F8: .4byte gUnknown_03004DC0
|
||||
thumb_func_end task00_for_dp12
|
||||
|
||||
thumb_func_start sub_80898FC
|
||||
sub_80898FC: @ 80898FC
|
||||
push {r4-r7,lr}
|
||||
adds r6, r0, 0
|
||||
lsls r1, 24
|
||||
lsrs r5, r1, 24
|
||||
lsls r2, 24
|
||||
lsrs r4, r2, 24
|
||||
movs r1, 0
|
||||
movs r2, 0
|
||||
ldr r0, _08089940 @ =gSineTable
|
||||
mov r12, r0
|
||||
_08089910:
|
||||
lsls r0, r1, 1
|
||||
adds r3, r0, r6
|
||||
lsls r0, r2, 1
|
||||
add r0, r12
|
||||
movs r7, 0
|
||||
ldrsh r0, [r0, r7]
|
||||
muls r0, r4
|
||||
cmp r0, 0
|
||||
bge _08089924
|
||||
adds r0, 0xFF
|
||||
_08089924:
|
||||
asrs r0, 8
|
||||
strh r0, [r3]
|
||||
adds r0, r2, r5
|
||||
lsls r0, 24
|
||||
lsrs r2, r0, 24
|
||||
adds r0, r1, 0x1
|
||||
lsls r0, 16
|
||||
lsrs r1, r0, 16
|
||||
cmp r1, 0xFF
|
||||
bls _08089910
|
||||
pop {r4-r7}
|
||||
pop {r0}
|
||||
bx r0
|
||||
.align 2, 0
|
||||
_08089940: .4byte gSineTable
|
||||
thumb_func_end sub_80898FC
|
||||
|
||||
thumb_func_start sub_8089944
|
||||
sub_8089944: @ 8089944
|
||||
push {r4-r7,lr}
|
||||
mov r7, r10
|
||||
mov r6, r9
|
||||
mov r5, r8
|
||||
push {r5-r7}
|
||||
sub sp, 0x20
|
||||
adds r5, r0, 0
|
||||
str r1, [sp, 0x10]
|
||||
ldr r0, [sp, 0x40]
|
||||
mov r8, r0
|
||||
ldr r1, [sp, 0x44]
|
||||
mov r9, r1
|
||||
ldr r0, [sp, 0x48]
|
||||
mov r10, r0
|
||||
lsls r5, 24
|
||||
lsrs r5, 24
|
||||
ldr r1, [sp, 0x10]
|
||||
lsls r1, 24
|
||||
str r1, [sp, 0x14]
|
||||
lsrs r0, r1, 24
|
||||
str r0, [sp, 0xC]
|
||||
lsls r1, r2, 24
|
||||
lsrs r1, 24
|
||||
str r1, [sp, 0x18]
|
||||
lsls r2, r3, 24
|
||||
lsrs r2, 24
|
||||
str r2, [sp, 0x1C]
|
||||
mov r1, r8
|
||||
lsls r1, 24
|
||||
lsrs r1, 24
|
||||
mov r8, r1
|
||||
mov r3, r9
|
||||
lsls r3, 24
|
||||
lsrs r3, 24
|
||||
mov r9, r3
|
||||
mov r0, r10
|
||||
lsls r0, 24
|
||||
lsrs r0, 24
|
||||
mov r10, r0
|
||||
bl dp12_8087EA4
|
||||
ldr r0, _08089A50 @ =REG_BG0HOFS
|
||||
add r0, r9
|
||||
str r0, [sp]
|
||||
ldr r0, _08089A54 @ =0xa2600001
|
||||
str r0, [sp, 0x4]
|
||||
mov r1, sp
|
||||
movs r0, 0x1
|
||||
strb r0, [r1, 0x8]
|
||||
mov r0, sp
|
||||
movs r1, 0
|
||||
strb r1, [r0, 0x9]
|
||||
ldr r0, [sp]
|
||||
ldr r1, [sp, 0x4]
|
||||
ldr r2, [sp, 0x8]
|
||||
bl sub_80895F8
|
||||
ldr r0, _08089A58 @ =task00_for_dp12
|
||||
movs r1, 0
|
||||
bl CreateTask
|
||||
lsls r0, 24
|
||||
lsrs r7, r0, 24
|
||||
ldr r0, _08089A5C @ =gTasks
|
||||
lsls r4, r7, 2
|
||||
adds r4, r7
|
||||
lsls r4, 3
|
||||
adds r4, r0
|
||||
strh r5, [r4, 0x8]
|
||||
mov r3, sp
|
||||
ldrh r3, [r3, 0xC]
|
||||
strh r3, [r4, 0xA]
|
||||
movs r0, 0x80
|
||||
lsls r0, 1
|
||||
ldr r1, [sp, 0x18]
|
||||
bl __divsi3
|
||||
strh r0, [r4, 0xC]
|
||||
movs r0, 0
|
||||
strh r0, [r4, 0xE]
|
||||
mov r1, r8
|
||||
strh r1, [r4, 0x10]
|
||||
strh r1, [r4, 0x12]
|
||||
mov r3, r9
|
||||
strh r3, [r4, 0x14]
|
||||
mov r0, r10
|
||||
strh r0, [r4, 0x16]
|
||||
ldr r0, _08089A60 @ =gUnknown_03004DC0
|
||||
strb r7, [r0, 0x18]
|
||||
ldr r0, _08089A64 @ =gUnknown_0202FFA4
|
||||
movs r1, 0
|
||||
strb r1, [r0]
|
||||
ldr r4, _08089A68 @ =gUnknown_03005060
|
||||
ldr r3, [sp, 0xC]
|
||||
subs r6, r3, r5
|
||||
lsls r3, r6, 24
|
||||
lsrs r3, 24
|
||||
adds r0, r4, 0
|
||||
ldr r1, [sp, 0x18]
|
||||
ldr r2, [sp, 0x1C]
|
||||
bl sub_80898FC
|
||||
ldr r0, [sp, 0xC]
|
||||
cmp r5, r0
|
||||
bge _08089A3E
|
||||
ldr r1, _08089A6C @ =0xfffffd80
|
||||
adds r2, r4, r1
|
||||
lsls r1, r5, 1
|
||||
movs r3, 0xF0
|
||||
lsls r3, 3
|
||||
adds r0, r1, r3
|
||||
adds r3, r0, r2
|
||||
adds r1, r2
|
||||
adds r2, r4, 0
|
||||
adds r5, r6, 0
|
||||
_08089A2A:
|
||||
ldrh r0, [r2]
|
||||
strh r0, [r1]
|
||||
ldrh r0, [r2]
|
||||
strh r0, [r3]
|
||||
adds r2, 0x2
|
||||
adds r3, 0x2
|
||||
adds r1, 0x2
|
||||
subs r5, 0x1
|
||||
cmp r5, 0
|
||||
bne _08089A2A
|
||||
_08089A3E:
|
||||
adds r0, r7, 0
|
||||
add sp, 0x20
|
||||
pop {r3-r5}
|
||||
mov r8, r3
|
||||
mov r9, r4
|
||||
mov r10, r5
|
||||
pop {r4-r7}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08089A50: .4byte REG_BG0HOFS
|
||||
_08089A54: .4byte 0xa2600001
|
||||
_08089A58: .4byte task00_for_dp12
|
||||
_08089A5C: .4byte gTasks
|
||||
_08089A60: .4byte gUnknown_03004DC0
|
||||
_08089A64: .4byte gUnknown_0202FFA4
|
||||
_08089A68: .4byte gUnknown_03005060
|
||||
_08089A6C: .4byte 0xfffffd80
|
||||
thumb_func_end sub_8089944
|
||||
|
||||
.align 2, 0 @ Don't pad with nop.
|
||||
@@ -0,0 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
OBJDUMP="$DEVKITARM/bin/arm-none-eabi-objdump -D -bbinary -marmv4t -Mforce-thumb"
|
||||
OPTIONS="--start-address=$(($1)) --stop-address=$(($1 + $2))"
|
||||
$OBJDUMP $OPTIONS baserom.gba > baserom.dump
|
||||
$OBJDUMP $OPTIONS pokeruby.gba > pokeruby.dump
|
||||
diff baserom.dump pokeruby.dump
|
||||
@@ -0,0 +1,3 @@
|
||||
gSoundAnimFramesToWait
|
||||
gBattleAnimArgs
|
||||
gAnimSpriteIndexArray
|
||||
@@ -0,0 +1 @@
|
||||
gUnknown_03004DA0
|
||||
@@ -0,0 +1,2 @@
|
||||
gUnknown_03005D30
|
||||
gSoundTestCryNum
|
||||
@@ -0,0 +1 @@
|
||||
gUnknown_03005D2C
|
||||
@@ -0,0 +1,9 @@
|
||||
gLastWrittenSector
|
||||
gLastSaveCounter
|
||||
gLastKnownGoodSector
|
||||
gDamagedSaveSectors
|
||||
gSaveCounter
|
||||
gFastSaveSection
|
||||
gUnknown_03005EB4
|
||||
gSaveFileStatus
|
||||
gGameContinueCallback
|
||||
@@ -0,0 +1 @@
|
||||
gDisableMusic
|
||||
@@ -0,0 +1,3 @@
|
||||
gUnknown_03004880
|
||||
gUnknown_03004898
|
||||
gUnknown_0300489C
|
||||
@@ -0,0 +1 @@
|
||||
gSelectedMapObject
|
||||
@@ -0,0 +1 @@
|
||||
gMapObjects
|
||||
@@ -0,0 +1 @@
|
||||
gUnknown_03004870
|
||||
@@ -0,0 +1,4 @@
|
||||
word_3004858
|
||||
gFieldCallback
|
||||
gUnknown_03004860
|
||||
gFieldLinkPlayerCount
|
||||
@@ -0,0 +1 @@
|
||||
gCallback_03004AE8
|
||||
@@ -0,0 +1 @@
|
||||
gUnknown_03005D38
|
||||
@@ -0,0 +1,12 @@
|
||||
gPokeblockFeedPokeSprite
|
||||
gPokeblockFeedMonSpecies
|
||||
gPokeblockMonNotFlipped
|
||||
gPokeblockFeedMonSpriteID
|
||||
gPokeblockFeedMonNature
|
||||
gUnknown_03005F34
|
||||
gPokeblockFeedUnused0
|
||||
gUnknown_03005F3C
|
||||
gUnknown_03005F40
|
||||
gPokeblockFeedPokeSpriteCopy
|
||||
gUnknown_03005F94
|
||||
gUnknown_03005FA0
|
||||
@@ -0,0 +1,2 @@
|
||||
gUnknown_03005CE8
|
||||
gUnknown_03005CEC
|
||||
@@ -0,0 +1,4 @@
|
||||
gPlayerPartyCount
|
||||
gPlayerParty
|
||||
gEnemyPartyCount
|
||||
gEnemyParty
|
||||
@@ -0,0 +1,2 @@
|
||||
gLastFieldPokeMenuOpened
|
||||
gUnknown_03005CE4
|
||||
@@ -0,0 +1 @@
|
||||
gBattleBuffersTransferData
|
||||
@@ -0,0 +1,4 @@
|
||||
gUnknown_03004830
|
||||
gInGameOpponentsNo
|
||||
gUnknown_03004840
|
||||
gBerryBlenderData
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user