summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2018-11-21 09:00:41 -0500
committerPikalaxALT <pikalaxalt@gmail.com>2018-11-21 09:00:41 -0500
commit77d7434df2bc6141b47d29c33fb617b29eef0fef (patch)
tree7212b566499c85cd58a151e7bb5d385dee506e3f
parent6bcabeab1ec976284da95c34b57615fc9fa44970 (diff)
parent2ed26ab8fcd4e302ab4aac6bb01dba7b5c985914 (diff)
Merge branch 'master' into quest_log
-rw-r--r--Makefile21
-rw-r--r--asm/battle_setup.s24
-rw-r--r--asm/bike.s20
-rw-r--r--asm/field_control_avatar.s130
-rw-r--r--asm/field_door.s8
-rw-r--r--asm/field_effect_helpers.s18
-rw-r--r--asm/field_fadetransition.s18
-rw-r--r--asm/field_ground_effect.s44
-rw-r--r--asm/field_map_obj.s8
-rw-r--r--asm/field_player_avatar.s18
-rw-r--r--asm/field_tasks.s4
-rw-r--r--asm/item_use.s16
-rw-r--r--asm/macros/movement.inc4
-rw-r--r--asm/metatile_behavior.s2194
-rw-r--r--asm/overworld.s28
-rw-r--r--asm/party_menu.s4
-rw-r--r--asm/unk_8159F40.s2
-rw-r--r--asm/vs_seeker.s1767
-rw-r--r--asm/wild_encounter.s2
-rwxr-xr-x[-rw-r--r--]build_tools.sh0
-rw-r--r--data/data.s2222
-rw-r--r--data/data_835B488.s2218
-rw-r--r--data/data_83FECCC.s19
-rw-r--r--data/metatile_behavior.s6
-rw-r--r--include/battle_setup.h1
-rw-r--r--include/constants/flags.h2
-rw-r--r--include/constants/metatile_behaviors.h118
-rw-r--r--include/constants/movement_commands.h117
-rw-r--r--include/event_scripts.h4
-rw-r--r--include/field_effect.h4
-rw-r--r--include/field_map_obj.h3
-rw-r--r--include/field_specials.h1
-rw-r--r--include/item_menu.h8
-rw-r--r--include/item_use.h9
-rw-r--r--include/metatile_behavior.h293
-rw-r--r--include/metatile_behaviors.h179
-rw-r--r--include/new_menu_helpers.h4
-rw-r--r--include/unk_810c3a4.h7
-rw-r--r--include/vs_seeker.h14
-rw-r--r--ld_script.txt9
-rw-r--r--src/menews_jisan.c4
-rw-r--r--src/metatile_behavior.c1030
-rw-r--r--src/vs_seeker.c1379
-rw-r--r--sym_ewram.txt3
44 files changed, 5266 insertions, 6718 deletions
diff --git a/Makefile b/Makefile
index b5429de2c..4e81222f4 100644
--- a/Makefile
+++ b/Makefile
@@ -30,7 +30,7 @@ ASFLAGS := -mcpu=arm7tdmi
CC1 := tools/agbcc/bin/agbcc
override CFLAGS += -mthumb-interwork -Wimplicit -Wparentheses -Werror -O2 -fhex-asm
-CPPFLAGS := -I tools/agbcc/include -iquote include -nostdinc -undef
+CPPFLAGS := -I tools/agbcc -I tools/agbcc/include -iquote include -nostdinc -undef
LDFLAGS = -Map ../../$(MAP)
@@ -118,10 +118,10 @@ $(C_BUILDDIR)/m4a_4.o: CC1 := tools/agbcc/bin/old_agbcc
$(C_BUILDDIR)/isagbprn.o: CC1 := tools/agbcc/bin/old_agbcc
$(C_BUILDDIR)/isagbprn.o: CFLAGS := -mthumb-interwork
-ifeq ($(NODEP),)
-$(C_BUILDDIR)/%.o: c_dep = $(shell $(SCANINC) -I include $(C_SUBDIR)/$*.c)
-else
+ifeq ($(NODEP),1)
$(C_BUILDDIR)/%.o: c_dep :=
+else
+$(C_BUILDDIR)/%.o: c_dep = $(shell $(SCANINC) -I include $(C_SUBDIR)/$*.c)
endif
$(C_BUILDDIR)/%.o : $(C_SUBDIR)/%.c $$(c_dep)
@@ -130,19 +130,19 @@ $(C_BUILDDIR)/%.o : $(C_SUBDIR)/%.c $$(c_dep)
@echo -e ".text\n\t.align\t2, 0\n" >> $(C_BUILDDIR)/$*.s
$(AS) $(ASFLAGS) -o $@ $(C_BUILDDIR)/$*.s
-ifeq ($(NODEP),)
-$(ASM_BUILDDIR)/%.o: asm_dep = $(shell $(SCANINC) $(ASM_SUBDIR)/$*.s)
-else
+ifeq ($(NODEP),1)
$(ASM_BUILDDIR)/%.o: asm_dep :=
+else
+$(ASM_BUILDDIR)/%.o: asm_dep = $(shell $(SCANINC) $(ASM_SUBDIR)/$*.s)
endif
$(ASM_BUILDDIR)/%.o: $(ASM_SUBDIR)/%.s $$(asm_dep)
$(AS) $(ASFLAGS) -o $@ $<
-ifeq ($(NODEP),)
-$(DATA_ASM_BUILDDIR)/%.o: data_dep = $(shell $(SCANINC) $(DATA_ASM_SUBDIR)/$*.s)
-else
+ifeq ($(NODEP),1)
$(DATA_ASM_BUILDDIR)/%.o: data_dep :=
+else
+$(DATA_ASM_BUILDDIR)/%.o: data_dep = $(shell $(SCANINC) $(DATA_ASM_SUBDIR)/$*.s)
endif
$(DATA_ASM_BUILDDIR)/%.o: $(DATA_ASM_SUBDIR)/%.s $$(data_dep)
@@ -169,4 +169,3 @@ $(ELF): $(OBJ_DIR)/ld_script.ld $(OBJS)
$(ROM): $(ELF)
$(OBJCOPY) -O binary $< $@
$(FIX) $@ -p -t"$(TITLE)" -c$(GAME_CODE) -m$(MAKER_CODE) -r$(REVISION) --silent
-
diff --git a/asm/battle_setup.s b/asm/battle_setup.s
index a0585784f..faa32be0e 100644
--- a/asm/battle_setup.s
+++ b/asm/battle_setup.s
@@ -763,7 +763,7 @@ sub_807FC5C: @ 807FC5C
lsls r0, r5, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8059F34
+ bl MetatileBehavior_IsTallGrass_2
lsls r0, 24
cmp r0, 0
beq _0807FC92
@@ -771,7 +771,7 @@ sub_807FC5C: @ 807FC5C
b _0807FD88
_0807FC92:
adds r0, r4, 0
- bl sub_8059F4C
+ bl MetatileBehavior_ReturnFalse_3
lsls r0, 24
cmp r0, 0
beq _0807FCA2
@@ -779,7 +779,7 @@ _0807FC92:
b _0807FD88
_0807FCA2:
adds r0, r4, 0
- bl sub_8059B74
+ bl MetatileBehavior_IsMB21OrWaterfallBottom
lsls r0, 24
cmp r0, 0
beq _0807FCB2
@@ -814,7 +814,7 @@ _0807FCF4:
lsls r0, r5, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl MetatileBehavior_IsMB_0B
+ bl MetatileBehavior_IsMB0B
lsls r0, 24
cmp r0, 0
beq _0807FD08
@@ -823,7 +823,7 @@ _0807FD04:
b _0807FD88
_0807FD08:
adds r0, r4, 0
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
bne _0807FD70
@@ -835,7 +835,7 @@ _0807FD18:
_0807FD1C:
lsls r0, r5, 24
lsrs r0, 24
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
bne _0807FD82
@@ -844,17 +844,17 @@ _0807FD2C:
lsls r0, r5, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_805A01C
+ bl MetatileBehavior_IsDeepSemiDeepOrSplashingWater
lsls r0, 24
cmp r0, 0
bne _0807FD82
adds r0, r4, 0
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
bne _0807FD70
adds r0, r4, 0
- bl MetatileBehavior_IsMountain
+ bl MetatileBehavior_IsMB0C
lsls r0, 24
cmp r0, 0
beq _0807FD58
@@ -867,7 +867,7 @@ _0807FD58:
cmp r0, 0
beq _0807FD86
adds r0, r4, 0
- bl sub_8059F5C
+ bl MetatileBehavior_ReturnFalse_7
lsls r0, 24
cmp r0, 0
beq _0807FD74
@@ -876,7 +876,7 @@ _0807FD70:
b _0807FD88
_0807FD74:
adds r0, r4, 0
- bl sub_8059F58
+ bl MetatileBehavior_ReturnFalse_6
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -919,7 +919,7 @@ GetBattleTransitionTypeByMap: @ 807FD90
_0807FDC0:
lsls r0, r4, 24
lsrs r0, 24
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
bne _0807FDE8
diff --git a/asm/bike.s b/asm/bike.s
index fcce5ca66..915c4bf8f 100644
--- a/asm/bike.s
+++ b/asm/bike.s
@@ -87,7 +87,7 @@ sub_80BD100: @ 80BD100
mov r0, r8
strb r0, [r5, 0xA]
ldrb r0, [r4, 0x1E]
- bl sub_805A1DC
+ bl MetatileBehavior_IsCyclingRoadPullDownTile
cmp r0, 0x1
bne _080BD176
ldr r0, _080BD164 @ =gMain
@@ -207,7 +207,7 @@ sub_80BD1E8: @ 80BD1E8
ldr r1, _080BD244 @ =gMapObjects
adds r0, r1
ldrb r0, [r0, 0x1E]
- bl sub_805A1DC
+ bl MetatileBehavior_IsCyclingRoadPullDownTile
adds r2, r0, 0
cmp r2, 0x1
bne _080BD25A
@@ -572,12 +572,12 @@ sub_80BD4B8: @ 80BD4B8
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_805A234
+ bl MetatileBehavior_IsMB0A
lsls r0, 24
cmp r0, 0
bne _080BD4E2
adds r0, r4, 0
- bl sub_805A118
+ bl MetatileBehavior_ReturnFalse_9
lsls r0, 24
cmp r0, 0
beq _080BD4E6
@@ -611,21 +611,21 @@ sub_80BD4F0: @ 80BD4F0
cmp r0, 0x1
bhi _080BD51A
adds r0, r4, 0
- bl sub_805A210
+ bl MetatileBehavior_ReturnFalse_15
lsls r0, 24
cmp r0, 0
bne _080BD532
adds r0, r4, 0
- bl sub_805A218
+ bl MetatileBehavior_ReturnFalse_17
b _080BD52C
_080BD51A:
adds r0, r5, 0
- bl sub_805A214
+ bl MetatileBehavior_ReturnFalse_16
lsls r0, 24
cmp r0, 0
bne _080BD532
adds r0, r5, 0
- bl sub_805A21C
+ bl MetatileBehavior_ReturnFalse_18
_080BD52C:
lsls r0, 24
cmp r0, 0
@@ -697,7 +697,7 @@ player_should_look_direction_be_enforced_upon_movement: @ 80BD58C
lsls r0, 2
adds r0, r2
ldrb r0, [r0, 0x1E]
- bl sub_805A20C
+ bl MetatileBehavior_ReturnFalse_14
lsls r0, 24
cmp r0, 0
beq _080BD5C0
@@ -875,7 +875,7 @@ Bike_HandleBumpySlopeJump: @ 80BD6C4
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_805A20C
+ bl MetatileBehavior_ReturnFalse_14
lsls r0, 24
cmp r0, 0
beq _080BD70C
diff --git a/asm/field_control_avatar.s b/asm/field_control_avatar.s
index 7fb590d80..4ae8ad562 100644
--- a/asm/field_control_avatar.s
+++ b/asm/field_control_avatar.s
@@ -53,7 +53,7 @@ FieldGetPlayerInput: @ 806C8BC
bl cur_mapdata_block_role_at_player_pos
lsls r0, 24
lsrs r0, 24
- bl MetatileBehavior_IsMoveTile
+ bl MetatileBehavior_IsForcedMovementTile
lsls r0, 24
lsrs r7, r0, 24
bl ScriptContext1_IsScriptSetUp
@@ -1226,7 +1226,7 @@ _0806D210: .4byte gUnknown_20370D4
_0806D214: .4byte gUnknown_81A6955
_0806D218:
adds r0, r4, 0
- bl sub_805A134
+ bl MetatileBehavior_IsRegionMap
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1237,7 +1237,7 @@ _0806D218:
_0806D22C: .4byte gUnknown_81A6C32
_0806D230:
adds r0, r4, 0
- bl sub_805A24C
+ bl MetatileBehavior_IsBookshelf
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1248,7 +1248,7 @@ _0806D230:
_0806D244: .4byte gUnknown_81A7606
_0806D248:
adds r0, r4, 0
- bl sub_805A260
+ bl MetatileBehavior_IsPokeMartShelf
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1259,7 +1259,7 @@ _0806D248:
_0806D25C: .4byte gUnknown_81A760F
_0806D260:
adds r0, r4, 0
- bl sub_805A44C
+ bl MetatileBehavior_IsFood
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1270,7 +1270,7 @@ _0806D260:
_0806D274: .4byte gUnknown_81A7618
_0806D278:
adds r0, r4, 0
- bl sub_805A558
+ bl MetatileBehavior_IsImpressiveMachine
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1281,7 +1281,7 @@ _0806D278:
_0806D28C: .4byte gUnknown_81A7633
_0806D290:
adds r0, r4, 0
- bl sub_805A474
+ bl MetatileBehavior_IsBlueprints
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1292,7 +1292,7 @@ _0806D290:
_0806D2A4: .4byte gUnknown_81A763C
_0806D2A8:
adds r0, r4, 0
- bl sub_805A56C
+ bl MetatileBehavior_IsVideoGame
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1303,7 +1303,7 @@ _0806D2A8:
_0806D2BC: .4byte gUnknown_81A7621
_0806D2C0:
adds r0, r4, 0
- bl sub_805A580
+ bl MetatileBehavior_IsBurglary
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1314,7 +1314,7 @@ _0806D2C0:
_0806D2D4: .4byte gUnknown_81A7645
_0806D2D8:
adds r0, r4, 0
- bl sub_805A4C4
+ bl MetatileBehavior_IsComputer
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1325,7 +1325,7 @@ _0806D2D8:
_0806D2EC: .4byte gUnknown_81A762A
_0806D2F0:
adds r0, r4, 0
- bl sub_805A594
+ bl MetatileBehavior_IsMBA3
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1348,7 +1348,7 @@ _0806D308:
_0806D31C: .4byte gUnknown_81A764E
_0806D320:
adds r0, r4, 0
- bl sub_805A374
+ bl MetatileBehavior_IsCabinet
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1359,7 +1359,7 @@ _0806D320:
_0806D334: .4byte gUnknown_81A7657
_0806D338:
adds r0, r4, 0
- bl sub_805A388
+ bl MetatileBehavior_IsKitchen
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1370,7 +1370,7 @@ _0806D338:
_0806D34C: .4byte gUnknown_81A7660
_0806D350:
adds r0, r4, 0
- bl sub_805A39C
+ bl MetatileBehavior_IsDresser
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1381,7 +1381,7 @@ _0806D350:
_0806D364: .4byte gUnknown_81A7669
_0806D368:
adds r0, r4, 0
- bl sub_805A3B0
+ bl MetatileBehavior_IsSnacks
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1392,7 +1392,7 @@ _0806D368:
_0806D37C: .4byte gUnknown_81A7672
_0806D380:
adds r0, r4, 0
- bl sub_805A488
+ bl MetatileBehavior_IsPainting
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1403,7 +1403,7 @@ _0806D380:
_0806D394: .4byte gUnknown_81A767B
_0806D398:
adds r0, r4, 0
- bl sub_805A49C
+ bl MetatileBehavior_IsPowerPlantMachine
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1414,7 +1414,7 @@ _0806D398:
_0806D3AC: .4byte gUnknown_81A7684
_0806D3B0:
adds r0, r4, 0
- bl sub_805A4B0
+ bl MetatileBehavior_IsTelephone
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1425,7 +1425,7 @@ _0806D3B0:
_0806D3C4: .4byte gUnknown_81A768D
_0806D3C8:
adds r0, r4, 0
- bl sub_805A4D8
+ bl MetatileBehavior_IsAdvertisingPoster
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1436,7 +1436,7 @@ _0806D3C8:
_0806D3DC: .4byte gUnknown_81A7696
_0806D3E0:
adds r0, r4, 0
- bl sub_805A4EC
+ bl MetatileBehavior_IsTastyFood
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1447,7 +1447,7 @@ _0806D3E0:
_0806D3F4: .4byte gUnknown_81A769F
_0806D3F8:
adds r0, r4, 0
- bl sub_805A500
+ bl MetatileBehavior_IsTrashBin
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1458,7 +1458,7 @@ _0806D3F8:
_0806D40C: .4byte gUnknown_81A76A8
_0806D410:
adds r0, r4, 0
- bl sub_805A514
+ bl MetatileBehavior_IsCup
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1469,7 +1469,7 @@ _0806D410:
_0806D424: .4byte gUnknown_81A76B1
_0806D428:
adds r0, r4, 0
- bl sub_805A528
+ bl MetatileBehavior_ReturnFalse_19
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1480,7 +1480,7 @@ _0806D428:
_0806D43C: .4byte gUnknown_81A76BA
_0806D440:
adds r0, r4, 0
- bl sub_805A52C
+ bl MetatileBehavior_ReturnFalse_20
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1491,7 +1491,7 @@ _0806D440:
_0806D454: .4byte gUnknown_81A76C3
_0806D458:
adds r0, r4, 0
- bl sub_805A530
+ bl MetatileBehavior_IsBlinkingLights
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1502,7 +1502,7 @@ _0806D458:
_0806D46C: .4byte gUnknown_81A76CC
_0806D470:
adds r0, r4, 0
- bl sub_805A544
+ bl MetatileBehavior_IsMB9F
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1514,7 +1514,7 @@ _0806D484: .4byte gUnknown_81A76D5
_0806D488:
adds r0, r4, 0
adds r1, r5, 0
- bl sub_805A3D8
+ bl MetatileBehavior_IsPlayerFacingMB_8D
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1525,7 +1525,7 @@ _0806D488:
_0806D49C: .4byte gUnknown_81BBFD8
_0806D4A0:
adds r0, r4, 0
- bl sub_805A410
+ bl MetatileBehavior_IsQuestionnaire
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1537,7 +1537,7 @@ _0806D4B4: .4byte gUnknown_81A7702
_0806D4B8:
adds r0, r4, 0
adds r1, r5, 0
- bl sub_805A3F4
+ bl MetatileBehavior_IsPlayerFacingBattleRecords
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1548,7 +1548,7 @@ _0806D4B8:
_0806D4CC: .4byte gUnknown_81BB8A7
_0806D4D0:
adds r0, r4, 0
- bl sub_805A424
+ bl MetatileBehavior_IsIndigoPlateauMark
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1560,7 +1560,7 @@ _0806D4D0:
_0806D4E8: .4byte gUnknown_81A76F0
_0806D4EC:
adds r0, r4, 0
- bl sub_805A438
+ bl MetatileBehavior_IsIndigoPlateauMark2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1573,7 +1573,7 @@ _0806D504: .4byte gUnknown_81A76F9
_0806D508:
adds r0, r4, 0
adds r1, r5, 0
- bl sub_805A290
+ bl MetatileBehavior_IsPlayerFacingPokeMartSign
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1586,7 +1586,7 @@ _0806D520: .4byte gUnknown_81A76DE
_0806D524:
adds r0, r4, 0
adds r1, r5, 0
- bl sub_805A274
+ bl MetatileBehavior_IsPlayerFacingPokemonCenterSign
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1610,7 +1610,7 @@ sub_806D548: @ 806D548
lsls r1, 24
lsrs r4, r1, 24
adds r0, r4, 0
- bl sub_8059CC8
+ bl MetatileBehavior_IsSemiDeepWater
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1721,7 +1721,7 @@ sub_806D5E8: @ 806D5E8
bne _0806D658
lsls r0, r6, 24
lsrs r0, 24
- bl MetatileBehavior_IsMoveTile
+ bl MetatileBehavior_IsForcedMovementTile
lsls r0, 24
cmp r0, 0
bne _0806D658
@@ -1800,7 +1800,7 @@ sub_806D698: @ 806D698
bne _0806D720
lsls r0, r4, 24
lsrs r0, 24
- bl MetatileBehavior_IsMoveTile
+ bl MetatileBehavior_IsForcedMovementTile
lsls r0, 24
cmp r0, 0
bne _0806D720
@@ -2057,7 +2057,7 @@ sub_806D898: @ 806D898
lsrs r4, r0, 24
adds r0, r4, 0
adds r1, r5, 0
- bl sub_805A274
+ bl MetatileBehavior_IsPlayerFacingPokemonCenterSign
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2067,7 +2067,7 @@ sub_806D898: @ 806D898
_0806D8B6:
adds r0, r4, 0
adds r1, r5, 0
- bl sub_805A290
+ bl MetatileBehavior_IsPlayerFacingPokeMartSign
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2076,7 +2076,7 @@ _0806D8B6:
b _0806D902
_0806D8CA:
adds r0, r4, 0
- bl sub_805A424
+ bl MetatileBehavior_IsIndigoPlateauMark
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2085,7 +2085,7 @@ _0806D8CA:
b _0806D902
_0806D8DC:
adds r0, r4, 0
- bl sub_805A438
+ bl MetatileBehavior_IsIndigoPlateauMark2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2094,7 +2094,7 @@ _0806D8DC:
b _0806D902
_0806D8EE:
adds r0, r4, 0
- bl sub_805A360
+ bl MetatileBehavior_IsSignpost
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2273,7 +2273,7 @@ sub_806DA10: @ 806DA10
lsls r0, r5, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8059BF0
+ bl MetatileBehavior_IsEscalator
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2286,7 +2286,7 @@ sub_806DA10: @ 806DA10
_0806DA68: .4byte gMapHeader
_0806DA6C:
adds r0, r4, 0
- bl sub_805A158
+ bl MetatileBehavior_ReturnFalse_12
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2296,7 +2296,7 @@ _0806DA6C:
b _0806DAEE
_0806DA82:
adds r0, r4, 0
- bl MetatileBehavior_IsLavaridge1FWarp
+ bl MetatileBheavior_IsMB_68
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2306,7 +2306,7 @@ _0806DA82:
b _0806DAEE
_0806DA98:
adds r0, r4, 0
- bl MetatileBehavior_IsAquaHideoutWarp
+ bl MetatileBehavior_IsRegularWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2316,7 +2316,7 @@ _0806DA98:
b _0806DAEE
_0806DAAE:
adds r0, r4, 0
- bl sub_805A184
+ bl MetatileBehavior_IsUnionRoomWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2326,7 +2326,7 @@ _0806DAAE:
b _0806DAEE
_0806DAC4:
adds r0, r4, 0
- bl sub_805A1C4
+ bl MetatileBehavior_IsFallWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2362,49 +2362,49 @@ sub_806DAF4: @ 806DAF4
cmp r0, 0x1
beq _0806DB7C
adds r0, r4, 0
- bl sub_8059C78
+ bl MetatileBehavior_IsLadder
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0806DB7C
adds r0, r4, 0
- bl sub_8059BF0
+ bl MetatileBehavior_IsEscalator
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0806DB7C
adds r0, r4, 0
- bl sub_8059C8C
+ bl MetatileBehavior_IsCaveDoor
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0806DB7C
adds r0, r4, 0
- bl sub_805A158
+ bl MetatileBehavior_ReturnFalse_12
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0806DB7C
adds r0, r4, 0
- bl MetatileBehavior_IsLavaridge1FWarp
+ bl MetatileBheavior_IsMB_68
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0806DB7C
adds r0, r4, 0
- bl MetatileBehavior_IsAquaHideoutWarp
+ bl MetatileBehavior_IsRegularWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0806DB7C
adds r0, r4, 0
- bl sub_805A1C4
+ bl MetatileBehavior_IsFallWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _0806DB7C
adds r0, r4, 0
- bl sub_805A184
+ bl MetatileBehavior_IsUnionRoomWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2435,23 +2435,23 @@ _0806DB98:
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8059C20
+ bl MetatileBehavior_IsUnknownWarp6D
lsls r0, 24
cmp r0, 0
bne _0806DBCC
adds r0, r4, 0
- bl sub_8059C48
+ bl MetatileBehavior_IsUnknownWarp6F
b _0806DBC6
_0806DBB0:
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8059C0C
+ bl MetatileBehavior_IsUnknownWarp6C
lsls r0, 24
cmp r0, 0
bne _0806DBCC
adds r0, r4, 0
- bl sub_8059C34
+ bl MetatileBehavior_IsUnknownWarp6E
_0806DBC6:
lsls r0, 24
cmp r0, 0
@@ -2491,12 +2491,12 @@ _0806DBF2:
_0806DBFC:
lsls r0, 24
lsrs r0, 24
- bl sub_8059D04
+ bl MetatileBehavior_IsNorthArrowWarp
b _0806DC22
_0806DC06:
lsls r0, 24
lsrs r0, 24
- bl sub_8059D18
+ bl MetatileBehavior_IsSouthArrowWarp
b _0806DC22
_0806DC10:
lsls r0, 24
@@ -2952,7 +2952,7 @@ dive_warp: @ 806DF3C
bne _0806DF74
lsls r0, r5, 24
lsrs r0, 24
- bl sub_8059FCC
+ bl MetatileBehavior_IsMB19
lsls r0, 24
cmp r0, 0
bne _0806DF74
@@ -2971,7 +2971,7 @@ _0806DF70: .4byte gMapHeader
_0806DF74:
lsls r0, r5, 24
lsrs r0, 24
- bl sub_8059FB0
+ bl MetatileBehavior_IsDeepOrSemiDeepWater
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -3025,7 +3025,7 @@ sub_806DFB8: @ 806DFB8
cmp r0, 0x5
bne _0806E014
adds r0, r5, 0
- bl sub_8059FCC
+ bl MetatileBehavior_IsMB19
lsls r0, 24
cmp r0, 0
bne _0806E014
@@ -3049,7 +3049,7 @@ sub_806DFB8: @ 806DFB8
_0806E010: .4byte gMapHeader
_0806E014:
adds r0, r5, 0
- bl sub_8059FB0
+ bl MetatileBehavior_IsDeepOrSemiDeepWater
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
diff --git a/asm/field_door.s b/asm/field_door.s
index 431189e98..9c7e5eb10 100644
--- a/asm/field_door.s
+++ b/asm/field_door.s
@@ -490,7 +490,7 @@ sub_805B268: @ 805B268
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059BDC
+ bl MetatileBehavior_IsWarpDoor_2
lsls r0, 24
cmp r0, 0
beq _0805B292
@@ -518,7 +518,7 @@ sub_805B29C: @ 805B29C
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059BDC
+ bl MetatileBehavior_IsWarpDoor_2
lsls r0, 24
cmp r0, 0
beq _0805B2C6
@@ -546,7 +546,7 @@ sub_805B2D0: @ 805B2D0
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059BDC
+ bl MetatileBehavior_IsWarpDoor_2
lsls r0, 24
cmp r0, 0
beq _0805B304
@@ -580,7 +580,7 @@ sub_805B310: @ 805B310
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059BDC
+ bl MetatileBehavior_IsWarpDoor_2
lsls r0, 24
cmp r0, 0
beq _0805B344
diff --git a/asm/field_effect_helpers.s b/asm/field_effect_helpers.s
index 9e416b83a..bfeb2b942 100644
--- a/asm/field_effect_helpers.s
+++ b/asm/field_effect_helpers.s
@@ -134,13 +134,13 @@ npc_pal_op: @ 80DAE54
cmp r0, 0
bne _080DAEB0
ldrb r0, [r5, 0x1F]
- bl sub_8059F5C
+ bl MetatileBehavior_ReturnFalse_7
lsls r0, 24
lsrs r0, 24
cmp r0, 0
bne _080DAE96
ldrb r0, [r5, 0x1E]
- bl sub_8059F5C
+ bl MetatileBehavior_ReturnFalse_7
lsls r0, 24
lsrs r0, 24
cmp r0, 0
@@ -714,27 +714,27 @@ _080DB2AE:
cmp r0, r1
bne _080DB32C
ldrb r0, [r4, 0x1E]
- bl sub_8059B44
+ bl MetatileBehavior_IsTallGrass
lsls r0, 24
cmp r0, 0
bne _080DB32C
ldrb r0, [r4, 0x1E]
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
bne _080DB32C
ldrb r0, [r4, 0x1F]
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
bne _080DB32C
ldrb r0, [r4, 0x1E]
- bl sub_8059B90
+ bl MetatileBehavior_IsReflective
lsls r0, 24
cmp r0, 0
bne _080DB32C
ldrb r0, [r4, 0x1F]
- bl sub_8059B90
+ bl MetatileBehavior_IsReflective
lsls r0, 24
cmp r0, 0
beq _080DB334
@@ -900,7 +900,7 @@ _080DB438:
cmp r0, 0
bne _080DB48C
adds r0, r6, 0
- bl sub_8059F34
+ bl MetatileBehavior_IsTallGrass_2
lsls r0, 24
cmp r0, 0
beq _080DB48C
@@ -1251,7 +1251,7 @@ _080DB6E8:
cmp r0, 0
bne _080DB73C
adds r0, r4, 0
- bl sub_8059F4C
+ bl MetatileBehavior_ReturnFalse_3
lsls r0, 24
cmp r0, 0
beq _080DB73C
diff --git a/asm/field_fadetransition.s b/asm/field_fadetransition.s
index 703316872..d0176941a 100644
--- a/asm/field_fadetransition.s
+++ b/asm/field_fadetransition.s
@@ -465,7 +465,7 @@ sub_807DE78: @ 807DE78
lsls r0, 24
lsrs r4, r0, 24
adds r0, r4, 0
- bl sub_8059BDC
+ bl MetatileBehavior_IsWarpDoor_2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -500,7 +500,7 @@ _0807DEE8:
adds r0, r5, 0
bl sub_807DF4C
adds r0, r4, 0
- bl sub_8059C8C
+ bl MetatileBehavior_IsCaveDoor
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -511,7 +511,7 @@ _0807DEE8:
_0807DF00: .4byte task_map_chg_seq_0807E20C
_0807DF04:
adds r0, r4, 0
- bl sub_8059C5C
+ bl MetatileBehavior_IsUnknownWarp6C_to_6F
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2105,7 +2105,7 @@ sub_807EBBC: @ 807EBBC
lsrs r4, r0, 24
adds r7, r4, 0
adds r0, r4, 0
- bl sub_8059C0C
+ bl MetatileBehavior_IsUnknownWarp6C
lsls r0, 24
cmp r0, 0
beq _0807EBE0
@@ -2117,7 +2117,7 @@ sub_807EBBC: @ 807EBBC
b _0807EC2A
_0807EBE0:
adds r0, r4, 0
- bl sub_8059C20
+ bl MetatileBehavior_IsUnknownWarp6D
lsls r0, 24
cmp r0, 0
beq _0807EBFA
@@ -2130,7 +2130,7 @@ _0807EBE0:
b _0807EC2A
_0807EBFA:
adds r0, r4, 0
- bl sub_8059C34
+ bl MetatileBehavior_IsUnknownWarp6E
lsls r0, 24
cmp r0, 0
beq _0807EC0E
@@ -2140,7 +2140,7 @@ _0807EBFA:
b _0807EC2A
_0807EC0E:
adds r0, r7, 0
- bl sub_8059C48
+ bl MetatileBehavior_IsUnknownWarp6F
lsls r0, 24
lsrs r0, 24
cmp r0, 0
@@ -2251,12 +2251,12 @@ sub_807ECBC: @ 807ECBC
lsls r0, 24
lsrs r6, r0, 24
adds r0, r6, 0
- bl sub_8059C34
+ bl MetatileBehavior_IsUnknownWarp6E
lsls r0, 24
cmp r0, 0
bne _0807ED06
adds r0, r6, 0
- bl sub_8059C0C
+ bl MetatileBehavior_IsUnknownWarp6C
lsls r0, 24
cmp r0, 0
beq _0807ED0A
diff --git a/asm/field_ground_effect.s b/asm/field_ground_effect.s
index 40159bc04..62bc54815 100644
--- a/asm/field_ground_effect.s
+++ b/asm/field_ground_effect.s
@@ -186,7 +186,7 @@ GetGroundEffectFlags_TallGrassOnSpawn: @ 8067CA8
push {r4,lr}
adds r4, r1, 0
ldrb r0, [r0, 0x1E]
- bl sub_8059F34
+ bl MetatileBehavior_IsTallGrass_2
lsls r0, 24
cmp r0, 0
beq _08067CC0
@@ -205,7 +205,7 @@ GetGroundEffectFlags_TallGrassOnBeginStep: @ 8067CC8
push {r4,lr}
adds r4, r1, 0
ldrb r0, [r0, 0x1E]
- bl sub_8059F34
+ bl MetatileBehavior_IsTallGrass_2
lsls r0, 24
cmp r0, 0
beq _08067CE0
@@ -224,7 +224,7 @@ GetGroundEffectFlags_LongGrassOnSpawn: @ 8067CE8
push {r4,lr}
adds r4, r1, 0
ldrb r0, [r0, 0x1E]
- bl sub_8059F4C
+ bl MetatileBehavior_ReturnFalse_3
lsls r0, 24
cmp r0, 0
beq _08067D00
@@ -243,7 +243,7 @@ GetGroundEffectFlags_LongGrassOnBeginStep: @ 8067D08
push {r4,lr}
adds r4, r1, 0
ldrb r0, [r0, 0x1E]
- bl sub_8059F4C
+ bl MetatileBehavior_ReturnFalse_3
lsls r0, 24
cmp r0, 0
beq _08067D20
@@ -263,7 +263,7 @@ GetGroundEffectFlags_Tracks: @ 8067D28
adds r4, r0, 0
adds r5, r1, 0
ldrb r0, [r4, 0x1F]
- bl sub_8059B8C
+ bl MetatileBehavior_ReturnFalse
lsls r0, 24
cmp r0, 0
beq _08067D42
@@ -273,12 +273,12 @@ GetGroundEffectFlags_Tracks: @ 8067D28
b _08067D5E
_08067D42:
ldrb r0, [r4, 0x1F]
- bl sub_8059B5C
+ bl MetatileBehavior_IsMB21OrSand
lsls r0, 24
cmp r0, 0
bne _08067D5A
ldrb r0, [r4, 0x1F]
- bl sub_8059F54
+ bl MetatileBehavior_ReturnFalse_5
lsls r0, 24
cmp r0, 0
beq _08067D62
@@ -300,12 +300,12 @@ GetGroundEffectFlags_SandHeap: @ 8067D68
adds r4, r0, 0
adds r5, r1, 0
ldrb r0, [r4, 0x1E]
- bl sub_8059B8C
+ bl MetatileBehavior_ReturnFalse
lsls r0, 24
cmp r0, 0
beq _08067DA6
ldrb r0, [r4, 0x1F]
- bl sub_8059B8C
+ bl MetatileBehavior_ReturnFalse
lsls r0, 24
cmp r0, 0
beq _08067DA6
@@ -343,23 +343,23 @@ GetGroundEffectFlags_ShallowFlowingWater: @ 8067DB8
adds r4, r0, 0
adds r5, r1, 0
ldrb r0, [r4, 0x1E]
- bl sub_8059FE0
+ bl MetatileBehavior_IsWaterfallBottom
lsls r0, 24
cmp r0, 0
beq _08067DD6
ldrb r0, [r4, 0x1F]
- bl sub_8059FE0
+ bl MetatileBehavior_IsWaterfallBottom
lsls r0, 24
cmp r0, 0
bne _08067DEE
_08067DD6:
ldrb r0, [r4, 0x1E]
- bl sub_805A12C
+ bl MetatileBehavior_ReturnFalse_10
lsls r0, 24
cmp r0, 0
beq _08067E0C
ldrb r0, [r4, 0x1F]
- bl sub_805A12C
+ bl MetatileBehavior_ReturnFalse_10
lsls r0, 24
cmp r0, 0
beq _08067E0C
@@ -397,12 +397,12 @@ GetGroundEffectFlags_Puddle: @ 8067E1C
adds r4, r0, 0
adds r5, r1, 0
ldrb r0, [r4, 0x1E]
- bl sub_8059F20
+ bl MetatileBehavior_IsPuddle
lsls r0, 24
cmp r0, 0
beq _08067E44
ldrb r0, [r4, 0x1F]
- bl sub_8059F20
+ bl MetatileBehavior_IsPuddle
lsls r0, 24
cmp r0, 0
beq _08067E44
@@ -422,7 +422,7 @@ GetGroundEffectFlags_Ripple: @ 8067E4C
push {r4,lr}
adds r4, r1, 0
ldrb r0, [r0, 0x1E]
- bl sub_8059F08
+ bl MetatileBehavior_IsPondWaterOrPuddle
lsls r0, 24
cmp r0, 0
beq _08067E66
@@ -443,12 +443,12 @@ GetGroundEffectFlags_ShortGrass: @ 8067E6C
adds r4, r0, 0
adds r5, r1, 0
ldrb r0, [r4, 0x1E]
- bl sub_805A0EC
+ bl MetatileBehavior_ReturnFalse_8
lsls r0, 24
cmp r0, 0
beq _08067EAA
ldrb r0, [r4, 0x1F]
- bl sub_805A0EC
+ bl MetatileBehavior_ReturnFalse_8
lsls r0, 24
cmp r0, 0
beq _08067EAA
@@ -528,7 +528,7 @@ GetGroundEffectFlags_Seaweed: @ 8067F0C
push {r4,lr}
adds r4, r1, 0
ldrb r0, [r0, 0x1E]
- bl sub_805A220
+ bl MetatileBehavior_IsMB22
lsls r0, 24
cmp r0, 0
beq _08067F26
@@ -763,7 +763,7 @@ GetReflectionTypeByMetatileBehavior: @ 80680C8
b _080680F0
_080680DE:
adds r0, r4, 0
- bl sub_8059B90
+ bl MetatileBehavior_IsReflective
lsls r0, 24
cmp r0, 0
bne _080680EE
@@ -838,12 +838,12 @@ FieldObjectSetSpriteOamTableForLongGrass: @ 8068154
cmp r0, 0
blt _080681A8
ldrb r0, [r5, 0x1E]
- bl sub_8059F4C
+ bl MetatileBehavior_ReturnFalse_3
lsls r0, 24
cmp r0, 0
beq _080681A8
ldrb r0, [r5, 0x1F]
- bl sub_8059F4C
+ bl MetatileBehavior_ReturnFalse_3
lsls r0, 24
cmp r0, 0
beq _080681A8
diff --git a/asm/field_map_obj.s b/asm/field_map_obj.s
index c79a0330f..d82f467dc 100644
--- a/asm/field_map_obj.s
+++ b/asm/field_map_obj.s
@@ -11129,7 +11129,7 @@ _08062ED0:
adds r2, r0, 0
lsls r2, 24
lsrs r2, 24
- ldr r3, _08062F04 @ =sub_8059B44
+ ldr r3, _08062F04 @ =MetatileBehavior_IsTallGrass
ldr r4, [r4]
adds r0, r6, 0
adds r1, r7, 0
@@ -11142,7 +11142,7 @@ _08062EF8:
bx r1
.align 2, 0
_08062F00: .4byte gUnknown_83A6390
-_08062F04: .4byte sub_8059B44
+_08062F04: .4byte MetatileBehavior_IsTallGrass
thumb_func_end mss_08062EA4
thumb_func_start FieldObjectCB_TreeDisguise
@@ -13373,13 +13373,13 @@ sub_8063E28: @ 8063E28
bl sub_8064544
_08063E5C:
ldrb r0, [r4, 0x1E]
- bl sub_8059DAC
+ bl MetatileBehavior_IsIce_2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _08063E78
ldrb r0, [r4, 0x1E]
- bl sub_8059DC0
+ bl MetatileBehavior_IsUnknownMovement48
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
diff --git a/asm/field_player_avatar.s b/asm/field_player_avatar.s
index db32efc52..65d56af88 100644
--- a/asm/field_player_avatar.s
+++ b/asm/field_player_avatar.s
@@ -213,7 +213,7 @@ sub_805B528: @ 805B528
cmp r0, 0
beq _0805B598
ldrb r0, [r5, 0x1C]
- bl sub_805A344
+ bl MetatileBehavior_IsSpinTile
lsls r0, 24
cmp r0, 0
beq _0805B598
@@ -230,13 +230,13 @@ sub_805B528: @ 805B528
cmp r0, 0
beq _0805B586
ldrb r0, [r1, 0x1E]
- bl sub_805A330
+ bl MetatileBehavior_IsStopSpinning
lsls r0, 24
cmp r0, 0
bne _0805B598
ldr r0, [r4]
ldrb r0, [r0, 0x1E]
- bl sub_805A344
+ bl MetatileBehavior_IsSpinTile
lsls r0, 24
cmp r0, 0
beq _0805B57A
@@ -1015,7 +1015,7 @@ _0805BB00:
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_805A460
+ bl MetatileBehavior_IsRockStairs
lsls r0, 24
lsrs r0, 24
b _0805BB14
@@ -1335,7 +1335,7 @@ sub_805BCEC: @ 805BCEC
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059C8C
+ bl MetatileBehavior_IsCaveDoor
lsls r0, 24
cmp r0, 0
bne _0805BDA0
@@ -2322,12 +2322,12 @@ sub_805C438: @ 805C438
cmp r5, 0x3
bne _0805C484
adds r0, r4, 0
- bl sub_8059C20
+ bl MetatileBehavior_IsUnknownWarp6D
lsls r0, 24
cmp r0, 0
bne _0805C4DE
adds r0, r4, 0
- bl sub_8059C48
+ bl MetatileBehavior_IsUnknownWarp6F
lsls r0, 24
cmp r0, 0
bne _0805C4DE
@@ -2335,12 +2335,12 @@ _0805C484:
cmp r5, 0x4
bne _0805C4A0
adds r0, r4, 0
- bl sub_8059C0C
+ bl MetatileBehavior_IsUnknownWarp6C
lsls r0, 24
cmp r0, 0
bne _0805C4DE
adds r0, r4, 0
- bl sub_8059C34
+ bl MetatileBehavior_IsUnknownWarp6E
lsls r0, 24
cmp r0, 0
bne _0805C4DE
diff --git a/asm/field_tasks.s b/asm/field_tasks.s
index d7dd5e6b6..306b52940 100644
--- a/asm/field_tasks.s
+++ b/asm/field_tasks.s
@@ -481,7 +481,7 @@ _0806EB8E:
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059F50
+ bl MetatileBehavior_ReturnFalse_4
lsls r0, 24
cmp r0, 0
beq _0806EBF6
@@ -633,7 +633,7 @@ _0806ECCE:
strh r0, [r5, 0x6]
lsls r0, r7, 24
lsrs r0, 24
- bl sub_805A1D8
+ bl MetatileBehavior_ReturnFalse_13
lsls r0, 24
cmp r0, 0
beq _0806ED2E
diff --git a/asm/item_use.s b/asm/item_use.s
index 259f3206f..a7f7b1b7c 100644
--- a/asm/item_use.s
+++ b/asm/item_use.s
@@ -359,25 +359,25 @@ sub_80A122C: @ 80A122C
cmp r0, 0x1
beq _080A129A
adds r0, r4, 0
- bl sub_805A218
+ bl MetatileBehavior_ReturnFalse_17
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _080A129A
adds r0, r4, 0
- bl sub_805A21C
+ bl MetatileBehavior_ReturnFalse_18
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _080A129A
adds r0, r4, 0
- bl sub_805A210
+ bl MetatileBehavior_ReturnFalse_15
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _080A129A
adds r0, r4, 0
- bl sub_805A214
+ bl MetatileBehavior_ReturnFalse_16
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -535,7 +535,7 @@ _080A13D0:
b _080A1406
_080A13D4:
adds r0, r5, 0
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
beq _080A13F4
@@ -551,7 +551,7 @@ _080A13D4:
_080A13F4:
lsls r0, r6, 24
lsrs r0, 24
- bl sub_8059F58
+ bl MetatileBehavior_ReturnFalse_6
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -1810,7 +1810,7 @@ _080A1DEC: .4byte gSaveBlock1Ptr
_080A1DF0: .4byte gTasks
_080A1DF4:
ldr r1, _080A1E04 @ =gUnknown_2039998
- ldr r0, _080A1E08 @ =sub_810C670
+ ldr r0, _080A1E08 @ =Task_VsSeeker_0
str r0, [r1]
adds r0, r2, 0
bl sub_80A103C
@@ -1819,7 +1819,7 @@ _080A1E00:
bx r0
.align 2, 0
_080A1E04: .4byte gUnknown_2039998
-_080A1E08: .4byte sub_810C670
+_080A1E08: .4byte Task_VsSeeker_0
thumb_func_end sub_80A1D9C
thumb_func_start sub_80A1E0C
diff --git a/asm/macros/movement.inc b/asm/macros/movement.inc
index 674ce7169..909b24916 100644
--- a/asm/macros/movement.inc
+++ b/asm/macros/movement.inc
@@ -104,6 +104,10 @@
create_movement step_5f
create_movement step_60
create_movement step_61
+ create_movement step_62
+ create_movement step_63
+ create_movement step_64
+ create_movement step_65
enum_start 0x91
create_movement step_91
diff --git a/asm/metatile_behavior.s b/asm/metatile_behavior.s
deleted file mode 100644
index 6dd520d71..000000000
--- a/asm/metatile_behavior.s
+++ /dev/null
@@ -1,2194 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_8059AF0
-sub_8059AF0: @ 8059AF0
- movs r0, 0x1
- bx lr
- thumb_func_end sub_8059AF0
-
- thumb_func_start MetatileBehavior_IsJumpEast
-MetatileBehavior_IsJumpEast: @ 8059AF4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x38
- beq _08059B02
- movs r0, 0
- b _08059B04
-_08059B02:
- movs r0, 0x1
-_08059B04:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsJumpEast
-
- thumb_func_start MetatileBehavior_IsJumpWest
-MetatileBehavior_IsJumpWest: @ 8059B08
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x39
- beq _08059B16
- movs r0, 0
- b _08059B18
-_08059B16:
- movs r0, 0x1
-_08059B18:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsJumpWest
-
- thumb_func_start MetatileBehavior_IsJumpNorth
-MetatileBehavior_IsJumpNorth: @ 8059B1C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3A
- beq _08059B2A
- movs r0, 0
- b _08059B2C
-_08059B2A:
- movs r0, 0x1
-_08059B2C:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsJumpNorth
-
- thumb_func_start MetatileBehavior_IsJumpSouth
-MetatileBehavior_IsJumpSouth: @ 8059B30
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3B
- beq _08059B3E
- movs r0, 0
- b _08059B40
-_08059B3E:
- movs r0, 0x1
-_08059B40:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsJumpSouth
-
- thumb_func_start sub_8059B44
-sub_8059B44: @ 8059B44
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- beq _08059B52
- cmp r0, 0xD1
- bne _08059B56
-_08059B52:
- movs r0, 0x1
- b _08059B58
-_08059B56:
- movs r0, 0
-_08059B58:
- pop {r1}
- bx r1
- thumb_func_end sub_8059B44
-
- thumb_func_start sub_8059B5C
-sub_8059B5C: @ 8059B5C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x21
- beq _08059B6A
- cmp r0, 0x2B
- bne _08059B6E
-_08059B6A:
- movs r0, 0x1
- b _08059B70
-_08059B6E:
- movs r0, 0
-_08059B70:
- pop {r1}
- bx r1
- thumb_func_end sub_8059B5C
-
- thumb_func_start sub_8059B74
-sub_8059B74: @ 8059B74
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x21
- beq _08059B82
- cmp r0, 0x17
- bne _08059B86
-_08059B82:
- movs r0, 0x1
- b _08059B88
-_08059B86:
- movs r0, 0
-_08059B88:
- pop {r1}
- bx r1
- thumb_func_end sub_8059B74
-
- thumb_func_start sub_8059B8C
-sub_8059B8C: @ 8059B8C
- movs r0, 0
- bx lr
- thumb_func_end sub_8059B8C
-
- thumb_func_start sub_8059B90
-sub_8059B90: @ 8059B90
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x10
- beq _08059BAA
- cmp r0, 0x16
- beq _08059BAA
- cmp r0, 0x1A
- beq _08059BAA
- cmp r0, 0x1B
- beq _08059BAA
- cmp r0, 0x23
- bne _08059BAE
-_08059BAA:
- movs r0, 0x1
- b _08059BB0
-_08059BAE:
- movs r0, 0
-_08059BB0:
- pop {r1}
- bx r1
- thumb_func_end sub_8059B90
-
- thumb_func_start MetatileBehavior_IsIce
-MetatileBehavior_IsIce: @ 8059BB4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x23
- beq _08059BC2
- movs r0, 0
- b _08059BC4
-_08059BC2:
- movs r0, 0x1
-_08059BC4:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsIce
-
- thumb_func_start MetatileBehavior_IsWarpDoor
-MetatileBehavior_IsWarpDoor: @ 8059BC8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x69
- beq _08059BD6
- movs r0, 0
- b _08059BD8
-_08059BD6:
- movs r0, 0x1
-_08059BD8:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWarpDoor
-
- thumb_func_start sub_8059BDC
-sub_8059BDC: @ 8059BDC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x69
- beq _08059BEA
- movs r0, 0
- b _08059BEC
-_08059BEA:
- movs r0, 0x1
-_08059BEC:
- pop {r1}
- bx r1
- thumb_func_end sub_8059BDC
-
- thumb_func_start sub_8059BF0
-sub_8059BF0: @ 8059BF0
- push {lr}
- lsls r0, 24
- movs r1, 0x96
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _08059C04
- movs r0, 0
- b _08059C06
-_08059C04:
- movs r0, 0x1
-_08059C06:
- pop {r1}
- bx r1
- thumb_func_end sub_8059BF0
-
- thumb_func_start sub_8059C0C
-sub_8059C0C: @ 8059C0C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- cmp r0, 0x6C
- bne _08059C1A
- movs r1, 0x1
-_08059C1A:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_8059C0C
-
- thumb_func_start sub_8059C20
-sub_8059C20: @ 8059C20
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- cmp r0, 0x6D
- bne _08059C2E
- movs r1, 0x1
-_08059C2E:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_8059C20
-
- thumb_func_start sub_8059C34
-sub_8059C34: @ 8059C34
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- cmp r0, 0x6E
- bne _08059C42
- movs r1, 0x1
-_08059C42:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_8059C34
-
- thumb_func_start sub_8059C48
-sub_8059C48: @ 8059C48
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- cmp r0, 0x6F
- bne _08059C56
- movs r1, 0x1
-_08059C56:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_8059C48
-
- thumb_func_start sub_8059C5C
-sub_8059C5C: @ 8059C5C
- push {lr}
- lsls r0, 24
- movs r1, 0
- movs r2, 0x94
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x3
- bhi _08059C70
- movs r1, 0x1
-_08059C70:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_8059C5C
-
- thumb_func_start sub_8059C78
-sub_8059C78: @ 8059C78
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x61
- beq _08059C86
- movs r0, 0
- b _08059C88
-_08059C86:
- movs r0, 0x1
-_08059C88:
- pop {r1}
- bx r1
- thumb_func_end sub_8059C78
-
- thumb_func_start sub_8059C8C
-sub_8059C8C: @ 8059C8C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x60
- beq _08059C9A
- movs r0, 0
- b _08059C9C
-_08059C9A:
- movs r0, 0x1
-_08059C9C:
- pop {r1}
- bx r1
- thumb_func_end sub_8059C8C
-
- thumb_func_start sub_8059CA0
-sub_8059CA0: @ 8059CA0
- movs r0, 0
- bx lr
- thumb_func_end sub_8059CA0
-
- thumb_func_start sub_8059CA4
-sub_8059CA4: @ 8059CA4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r1, _08059CBC @ =gUnknown_8352F78
- adds r0, r1
- ldrb r1, [r0]
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _08059CC0
- movs r0, 0
- b _08059CC2
- .align 2, 0
-_08059CBC: .4byte gUnknown_8352F78
-_08059CC0:
- movs r0, 0x1
-_08059CC2:
- pop {r1}
- bx r1
- thumb_func_end sub_8059CA4
-
- thumb_func_start sub_8059CC8
-sub_8059CC8: @ 8059CC8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x11
- beq _08059CD6
- movs r0, 0
- b _08059CD8
-_08059CD6:
- movs r0, 0x1
-_08059CD8:
- pop {r1}
- bx r1
- thumb_func_end sub_8059CC8
-
- thumb_func_start MetatileBehavior_IsEastArrowWarp
-MetatileBehavior_IsEastArrowWarp: @ 8059CDC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x62
- beq _08059CEA
- movs r0, 0
- b _08059CEC
-_08059CEA:
- movs r0, 0x1
-_08059CEC:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsEastArrowWarp
-
- thumb_func_start MetatileBehavior_IsWestArrowWarp
-MetatileBehavior_IsWestArrowWarp: @ 8059CF0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x63
- beq _08059CFE
- movs r0, 0
- b _08059D00
-_08059CFE:
- movs r0, 0x1
-_08059D00:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWestArrowWarp
-
- thumb_func_start sub_8059D04
-sub_8059D04: @ 8059D04
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x64
- beq _08059D12
- movs r0, 0
- b _08059D14
-_08059D12:
- movs r0, 0x1
-_08059D14:
- pop {r1}
- bx r1
- thumb_func_end sub_8059D04
-
- thumb_func_start sub_8059D18
-sub_8059D18: @ 8059D18
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x65
- beq _08059D26
- movs r0, 0
- b _08059D28
-_08059D26:
- movs r0, 0x1
-_08059D28:
- pop {r1}
- bx r1
- thumb_func_end sub_8059D18
-
- thumb_func_start sub_8059D2C
-sub_8059D2C: @ 8059D2C
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r5, 0
- adds r0, r4, 0
- bl MetatileBehavior_IsEastArrowWarp
- lsls r0, 24
- cmp r0, 0
- bne _08059D64
- adds r0, r4, 0
- bl MetatileBehavior_IsWestArrowWarp
- lsls r0, 24
- cmp r0, 0
- bne _08059D64
- adds r0, r4, 0
- bl sub_8059D04
- lsls r0, 24
- cmp r0, 0
- bne _08059D64
- adds r0, r4, 0
- bl sub_8059D18
- lsls r0, 24
- cmp r0, 0
- beq _08059D66
-_08059D64:
- movs r5, 0x1
-_08059D66:
- adds r0, r5, 0
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_8059D2C
-
- thumb_func_start MetatileBehavior_IsMoveTile
-MetatileBehavior_IsMoveTile: @ 8059D70
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0xC0
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x8
- bls _08059DA2
- adds r0, r1, 0
- subs r0, 0x50
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bls _08059DA2
- cmp r1, 0x13
- beq _08059DA2
- cmp r1, 0x23
- beq _08059DA2
- adds r0, r1, 0
- subs r0, 0x54
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bhi _08059DA6
-_08059DA2:
- movs r0, 0x1
- b _08059DA8
-_08059DA6:
- movs r0, 0
-_08059DA8:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsMoveTile
-
- thumb_func_start sub_8059DAC
-sub_8059DAC: @ 8059DAC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x23
- beq _08059DBA
- movs r0, 0
- b _08059DBC
-_08059DBA:
- movs r0, 0x1
-_08059DBC:
- pop {r1}
- bx r1
- thumb_func_end sub_8059DAC
-
- thumb_func_start sub_8059DC0
-sub_8059DC0: @ 8059DC0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x48
- beq _08059DCE
- movs r0, 0
- b _08059DD0
-_08059DCE:
- movs r0, 0x1
-_08059DD0:
- pop {r1}
- bx r1
- thumb_func_end sub_8059DC0
-
- thumb_func_start MetatileBehavior_IsWalkNorth
-MetatileBehavior_IsWalkNorth: @ 8059DD4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x42
- beq _08059DE2
- movs r0, 0
- b _08059DE4
-_08059DE2:
- movs r0, 0x1
-_08059DE4:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWalkNorth
-
- thumb_func_start MetatileBehavior_IsWalkSouth
-MetatileBehavior_IsWalkSouth: @ 8059DE8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x43
- beq _08059DF6
- movs r0, 0
- b _08059DF8
-_08059DF6:
- movs r0, 0x1
-_08059DF8:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWalkSouth
-
- thumb_func_start MetatileBehavior_IsWalkWest
-MetatileBehavior_IsWalkWest: @ 8059DFC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x41
- beq _08059E0A
- movs r0, 0
- b _08059E0C
-_08059E0A:
- movs r0, 0x1
-_08059E0C:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWalkWest
-
- thumb_func_start MetatileBehavior_IsWalkEast
-MetatileBehavior_IsWalkEast: @ 8059E10
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x40
- beq _08059E1E
- movs r0, 0
- b _08059E20
-_08059E1E:
- movs r0, 0x1
-_08059E20:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWalkEast
-
- thumb_func_start MetatileBehavior_IsNorthwardCurrent
-MetatileBehavior_IsNorthwardCurrent: @ 8059E24
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x52
- beq _08059E32
- movs r0, 0
- b _08059E34
-_08059E32:
- movs r0, 0x1
-_08059E34:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsNorthwardCurrent
-
- thumb_func_start MetatileBehavior_IsSouthwardCurrent
-MetatileBehavior_IsSouthwardCurrent: @ 8059E38
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x53
- beq _08059E46
- movs r0, 0
- b _08059E48
-_08059E46:
- movs r0, 0x1
-_08059E48:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSouthwardCurrent
-
- thumb_func_start MetatileBehavior_IsWestwardCurrent
-MetatileBehavior_IsWestwardCurrent: @ 8059E4C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x51
- beq _08059E5A
- movs r0, 0
- b _08059E5C
-_08059E5A:
- movs r0, 0x1
-_08059E5C:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWestwardCurrent
-
- thumb_func_start MetatileBehavior_IsEastwardCurrent
-MetatileBehavior_IsEastwardCurrent: @ 8059E60
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x50
- beq _08059E6E
- movs r0, 0
- b _08059E70
-_08059E6E:
- movs r0, 0x1
-_08059E70:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsEastwardCurrent
-
- thumb_func_start MetatileBehavior_IsSlideNorth
-MetatileBehavior_IsSlideNorth: @ 8059E74
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x46
- beq _08059E82
- movs r0, 0
- b _08059E84
-_08059E82:
- movs r0, 0x1
-_08059E84:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSlideNorth
-
- thumb_func_start MetatileBehavior_IsSlideSouth
-MetatileBehavior_IsSlideSouth: @ 8059E88
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x47
- beq _08059E96
- movs r0, 0
- b _08059E98
-_08059E96:
- movs r0, 0x1
-_08059E98:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSlideSouth
-
- thumb_func_start MetatileBehavior_IsSlideWest
-MetatileBehavior_IsSlideWest: @ 8059E9C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x45
- beq _08059EAA
- movs r0, 0
- b _08059EAC
-_08059EAA:
- movs r0, 0x1
-_08059EAC:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSlideWest
-
- thumb_func_start MetatileBehavior_IsSlideEast
-MetatileBehavior_IsSlideEast: @ 8059EB0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x44
- beq _08059EBE
- movs r0, 0
- b _08059EC0
-_08059EBE:
- movs r0, 0x1
-_08059EC0:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSlideEast
-
- thumb_func_start MetatileBehavior_IsCounter
-MetatileBehavior_IsCounter: @ 8059EC4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x80
- beq _08059ED2
- movs r0, 0
- b _08059ED4
-_08059ED2:
- movs r0, 0x1
-_08059ED4:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsCounter
-
- thumb_func_start MetatileBehavior_IsPlayerFacingTVScreen
-MetatileBehavior_IsPlayerFacingTVScreen: @ 8059ED8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x2
- bne _08059EEA
- cmp r0, 0x86
- beq _08059EEE
-_08059EEA:
- movs r0, 0
- b _08059EF0
-_08059EEE:
- movs r0, 0x1
-_08059EF0:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsPlayerFacingTVScreen
-
- thumb_func_start MetatileBehavior_IsPC
-MetatileBehavior_IsPC: @ 8059EF4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x83
- beq _08059F02
- movs r0, 0
- b _08059F04
-_08059F02:
- movs r0, 0x1
-_08059F04:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsPC
-
- thumb_func_start sub_8059F08
-sub_8059F08: @ 8059F08
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x10
- beq _08059F16
- cmp r0, 0x16
- bne _08059F1A
-_08059F16:
- movs r0, 0x1
- b _08059F1C
-_08059F1A:
- movs r0, 0
-_08059F1C:
- pop {r1}
- bx r1
- thumb_func_end sub_8059F08
-
- thumb_func_start sub_8059F20
-sub_8059F20: @ 8059F20
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x16
- beq _08059F2E
- movs r0, 0
- b _08059F30
-_08059F2E:
- movs r0, 0x1
-_08059F30:
- pop {r1}
- bx r1
- thumb_func_end sub_8059F20
-
- thumb_func_start sub_8059F34
-sub_8059F34: @ 8059F34
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- beq _08059F42
- cmp r0, 0xD1
- bne _08059F46
-_08059F42:
- movs r0, 0x1
- b _08059F48
-_08059F46:
- movs r0, 0
-_08059F48:
- pop {r1}
- bx r1
- thumb_func_end sub_8059F34
-
- thumb_func_start sub_8059F4C
-sub_8059F4C: @ 8059F4C
- movs r0, 0
- bx lr
- thumb_func_end sub_8059F4C
-
- thumb_func_start sub_8059F50
-sub_8059F50: @ 8059F50
- movs r0, 0
- bx lr
- thumb_func_end sub_8059F50
-
- thumb_func_start sub_8059F54
-sub_8059F54: @ 8059F54
- movs r0, 0
- bx lr
- thumb_func_end sub_8059F54
-
- thumb_func_start sub_8059F58
-sub_8059F58: @ 8059F58
- movs r0, 0
- bx lr
- thumb_func_end sub_8059F58
-
- thumb_func_start sub_8059F5C
-sub_8059F5C: @ 8059F5C
- movs r0, 0
- bx lr
- thumb_func_end sub_8059F5C
-
- thumb_func_start sub_8059F60
-sub_8059F60: @ 8059F60
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _08059F6E
- movs r0, 0
- b _08059F70
-_08059F6E:
- movs r0, 0x1
-_08059F70:
- pop {r1}
- bx r1
- thumb_func_end sub_8059F60
-
- thumb_func_start sub_8059F74
-sub_8059F74: @ 8059F74
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- beq _08059F82
- movs r0, 0
- b _08059F84
-_08059F82:
- movs r0, 0x1
-_08059F84:
- pop {r1}
- bx r1
- thumb_func_end sub_8059F74
-
- thumb_func_start MetatileBehavior_IsMB_0B
-MetatileBehavior_IsMB_0B: @ 8059F88
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xB
- beq _08059F96
- movs r0, 0
- b _08059F98
-_08059F96:
- movs r0, 0x1
-_08059F98:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsMB_0B
-
- thumb_func_start MetatileBehavior_IsMountain
-MetatileBehavior_IsMountain: @ 8059F9C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xC
- beq _08059FAA
- movs r0, 0
- b _08059FAC
-_08059FAA:
- movs r0, 0x1
-_08059FAC:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsMountain
-
- thumb_func_start sub_8059FB0
-sub_8059FB0: @ 8059FB0
- push {lr}
- lsls r0, 24
- movs r1, 0xEF
- lsls r1, 24
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _08059FC4
- movs r0, 0
- b _08059FC6
-_08059FC4:
- movs r0, 0x1
-_08059FC6:
- pop {r1}
- bx r1
- thumb_func_end sub_8059FB0
-
- thumb_func_start sub_8059FCC
-sub_8059FCC: @ 8059FCC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x19
- beq _08059FDA
- movs r0, 0
- b _08059FDC
-_08059FDA:
- movs r0, 0x1
-_08059FDC:
- pop {r1}
- bx r1
- thumb_func_end sub_8059FCC
-
- thumb_func_start sub_8059FE0
-sub_8059FE0: @ 8059FE0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x17
- beq _08059FEE
- movs r0, 0
- b _08059FF0
-_08059FEE:
- movs r0, 0x1
-_08059FF0:
- pop {r1}
- bx r1
- thumb_func_end sub_8059FE0
-
- thumb_func_start MetatileBehavior_IsThinIce
-MetatileBehavior_IsThinIce: @ 8059FF4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x26
- beq _0805A002
- movs r0, 0
- b _0805A004
-_0805A002:
- movs r0, 0x1
-_0805A004:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsThinIce
-
- thumb_func_start MetatileBehavior_IsCrackedIce
-MetatileBehavior_IsCrackedIce: @ 805A008
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x27
- beq _0805A016
- movs r0, 0
- b _0805A018
-_0805A016:
- movs r0, 0x1
-_0805A018:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsCrackedIce
-
- thumb_func_start sub_805A01C
-sub_805A01C: @ 805A01C
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0xEF
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x1
- bls _0805A032
- cmp r1, 0x15
- bne _0805A036
-_0805A032:
- movs r0, 0x1
- b _0805A038
-_0805A036:
- movs r0, 0
-_0805A038:
- pop {r1}
- bx r1
- thumb_func_end sub_805A01C
-
- thumb_func_start sub_805A03C
-sub_805A03C: @ 805A03C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1A
- beq _0805A04A
- movs r0, 0
- b _0805A04C
-_0805A04A:
- movs r0, 0x1
-_0805A04C:
- pop {r1}
- bx r1
- thumb_func_end sub_805A03C
-
- thumb_func_start MetatileBehavior_IsSurfableAndNotWaterfall
-MetatileBehavior_IsSurfableAndNotWaterfall: @ 805A050
- push {r4,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r0, r4, 0
- bl sub_8059CA4
- lsls r0, 24
- cmp r0, 0
- beq _0805A072
- adds r0, r4, 0
- bl MetatileBehavior_IsWaterfall
- lsls r0, 24
- cmp r0, 0
- bne _0805A072
- movs r0, 0x1
- b _0805A074
-_0805A072:
- movs r0, 0
-_0805A074:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsSurfableAndNotWaterfall
-
- thumb_func_start sub_805A07C
-sub_805A07C: @ 805A07C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x30
- beq _0805A08E
- cmp r0, 0x34
- beq _0805A08E
- cmp r0, 0x36
- bne _0805A092
-_0805A08E:
- movs r0, 0x1
- b _0805A094
-_0805A092:
- movs r0, 0
-_0805A094:
- pop {r1}
- bx r1
- thumb_func_end sub_805A07C
-
- thumb_func_start sub_805A098
-sub_805A098: @ 805A098
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x31
- beq _0805A0AA
- cmp r0, 0x35
- beq _0805A0AA
- cmp r0, 0x37
- bne _0805A0AE
-_0805A0AA:
- movs r0, 0x1
- b _0805A0B0
-_0805A0AE:
- movs r0, 0
-_0805A0B0:
- pop {r1}
- bx r1
- thumb_func_end sub_805A098
-
- thumb_func_start sub_805A0B4
-sub_805A0B4: @ 805A0B4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x32
- beq _0805A0C6
- cmp r0, 0x34
- beq _0805A0C6
- cmp r0, 0x35
- bne _0805A0CA
-_0805A0C6:
- movs r0, 0x1
- b _0805A0CC
-_0805A0CA:
- movs r0, 0
-_0805A0CC:
- pop {r1}
- bx r1
- thumb_func_end sub_805A0B4
-
- thumb_func_start sub_805A0D0
-sub_805A0D0: @ 805A0D0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x33
- beq _0805A0E2
- cmp r0, 0x36
- beq _0805A0E2
- cmp r0, 0x37
- bne _0805A0E6
-_0805A0E2:
- movs r0, 0x1
- b _0805A0E8
-_0805A0E6:
- movs r0, 0
-_0805A0E8:
- pop {r1}
- bx r1
- thumb_func_end sub_805A0D0
-
- thumb_func_start sub_805A0EC
-sub_805A0EC: @ 805A0EC
- movs r0, 0
- bx lr
- thumb_func_end sub_805A0EC
-
- thumb_func_start MetatileBehavior_IsHotSprings
-MetatileBehavior_IsHotSprings: @ 805A0F0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x28
- beq _0805A0FE
- movs r0, 0
- b _0805A100
-_0805A0FE:
- movs r0, 0x1
-_0805A100:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsHotSprings
-
- thumb_func_start MetatileBehavior_IsWaterfall
-MetatileBehavior_IsWaterfall: @ 805A104
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x13
- beq _0805A112
- movs r0, 0
- b _0805A114
-_0805A112:
- movs r0, 0x1
-_0805A114:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsWaterfall
-
- thumb_func_start sub_805A118
-sub_805A118: @ 805A118
- movs r0, 0
- bx lr
- thumb_func_end sub_805A118
-
- thumb_func_start sub_805A11C
-sub_805A11C: @ 805A11C
- movs r0, 0
- bx lr
- thumb_func_end sub_805A11C
-
- thumb_func_start sub_805A120
-sub_805A120: @ 805A120
- movs r0, 0
- bx lr
- thumb_func_end sub_805A120
-
- thumb_func_start sub_805A124
-sub_805A124: @ 805A124
- movs r0, 0
- bx lr
- thumb_func_end sub_805A124
-
- thumb_func_start sub_805A128
-sub_805A128: @ 805A128
- movs r0, 0
- bx lr
- thumb_func_end sub_805A128
-
- thumb_func_start sub_805A12C
-sub_805A12C: @ 805A12C
- movs r0, 0
- bx lr
- thumb_func_end sub_805A12C
-
- thumb_func_start sub_805A130
-sub_805A130: @ 805A130
- movs r0, 0
- bx lr
- thumb_func_end sub_805A130
-
- thumb_func_start sub_805A134
-sub_805A134: @ 805A134
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x85
- beq _0805A142
- movs r0, 0
- b _0805A144
-_0805A142:
- movs r0, 0x1
-_0805A144:
- pop {r1}
- bx r1
- thumb_func_end sub_805A134
-
- thumb_func_start sub_805A148
-sub_805A148: @ 805A148
- movs r0, 0
- bx lr
- thumb_func_end sub_805A148
-
- thumb_func_start sub_805A14C
-sub_805A14C: @ 805A14C
- movs r0, 0
- bx lr
- thumb_func_end sub_805A14C
-
- thumb_func_start sub_805A150
-sub_805A150: @ 805A150
- movs r0, 0
- bx lr
- thumb_func_end sub_805A150
-
- thumb_func_start sub_805A154
-sub_805A154: @ 805A154
- movs r0, 0
- bx lr
- thumb_func_end sub_805A154
-
- thumb_func_start sub_805A158
-sub_805A158: @ 805A158
- movs r0, 0
- bx lr
- thumb_func_end sub_805A158
-
- thumb_func_start MetatileBehavior_IsLavaridge1FWarp
-MetatileBehavior_IsLavaridge1FWarp: @ 805A15C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x68
- beq _0805A16A
- movs r0, 0
- b _0805A16C
-_0805A16A:
- movs r0, 0x1
-_0805A16C:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsLavaridge1FWarp
-
- thumb_func_start MetatileBehavior_IsAquaHideoutWarp
-MetatileBehavior_IsAquaHideoutWarp: @ 805A170
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x67
- beq _0805A17E
- movs r0, 0
- b _0805A180
-_0805A17E:
- movs r0, 0x1
-_0805A180:
- pop {r1}
- bx r1
- thumb_func_end MetatileBehavior_IsAquaHideoutWarp
-
- thumb_func_start sub_805A184
-sub_805A184: @ 805A184
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x71
- beq _0805A192
- movs r0, 0
- b _0805A194
-_0805A192:
- movs r0, 0x1
-_0805A194:
- pop {r1}
- bx r1
- thumb_func_end sub_805A184
-
- thumb_func_start sub_805A198
-sub_805A198: @ 805A198
- push {lr}
- lsls r0, 24
- lsrs r1, r0, 24
- movs r2, 0xF0
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x2
- bls _0805A1BA
- cmp r1, 0x15
- beq _0805A1BA
- adds r0, r1, 0
- subs r0, 0x50
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x3
- bhi _0805A1BE
-_0805A1BA:
- movs r0, 0x1
- b _0805A1C0
-_0805A1BE:
- movs r0, 0
-_0805A1C0:
- pop {r1}
- bx r1
- thumb_func_end sub_805A198
-
- thumb_func_start sub_805A1C4
-sub_805A1C4: @ 805A1C4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x66
- beq _0805A1D2
- movs r0, 0
- b _0805A1D4
-_0805A1D2:
- movs r0, 0x1
-_0805A1D4:
- pop {r1}
- bx r1
- thumb_func_end sub_805A1C4
-
- thumb_func_start sub_805A1D8
-sub_805A1D8: @ 805A1D8
- movs r0, 0
- bx lr
- thumb_func_end sub_805A1D8
-
- thumb_func_start sub_805A1DC
-sub_805A1DC: @ 805A1DC
- push {lr}
- lsls r0, 24
- movs r1, 0xC0
- lsls r1, 22
- adds r0, r1
- lsrs r0, 24
- cmp r0, 0x1
- bls _0805A1F0
- movs r0, 0
- b _0805A1F2
-_0805A1F0:
- movs r0, 0x1
-_0805A1F2:
- pop {r1}
- bx r1
- thumb_func_end sub_805A1DC
-
- thumb_func_start sub_805A1F8
-sub_805A1F8: @ 805A1F8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- cmp r0, 0xD1
- bne _0805A206
- movs r1, 0x1
-_0805A206:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_805A1F8
-
- thumb_func_start sub_805A20C
-sub_805A20C: @ 805A20C
- movs r0, 0
- bx lr
- thumb_func_end sub_805A20C
-
- thumb_func_start sub_805A210
-sub_805A210: @ 805A210
- movs r0, 0
- bx lr
- thumb_func_end sub_805A210
-
- thumb_func_start sub_805A214
-sub_805A214: @ 805A214
- movs r0, 0
- bx lr
- thumb_func_end sub_805A214
-
- thumb_func_start sub_805A218
-sub_805A218: @ 805A218
- movs r0, 0
- bx lr
- thumb_func_end sub_805A218
-
- thumb_func_start sub_805A21C
-sub_805A21C: @ 805A21C
- movs r0, 0
- bx lr
- thumb_func_end sub_805A21C
-
- thumb_func_start sub_805A220
-sub_805A220: @ 805A220
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x22
- beq _0805A22E
- movs r0, 0
- b _0805A230
-_0805A22E:
- movs r0, 0x1
-_0805A230:
- pop {r1}
- bx r1
- thumb_func_end sub_805A220
-
- thumb_func_start sub_805A234
-sub_805A234: @ 805A234
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA
- beq _0805A242
- movs r0, 0
- b _0805A244
-_0805A242:
- movs r0, 0x1
-_0805A244:
- pop {r1}
- bx r1
- thumb_func_end sub_805A234
-
- thumb_func_start sub_805A248
-sub_805A248: @ 805A248
- movs r0, 0
- bx lr
- thumb_func_end sub_805A248
-
- thumb_func_start sub_805A24C
-sub_805A24C: @ 805A24C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x81
- beq _0805A25A
- movs r0, 0
- b _0805A25C
-_0805A25A:
- movs r0, 0x1
-_0805A25C:
- pop {r1}
- bx r1
- thumb_func_end sub_805A24C
-
- thumb_func_start sub_805A260
-sub_805A260: @ 805A260
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x82
- beq _0805A26E
- movs r0, 0
- b _0805A270
-_0805A26E:
- movs r0, 0x1
-_0805A270:
- pop {r1}
- bx r1
- thumb_func_end sub_805A260
-
- thumb_func_start sub_805A274
-sub_805A274: @ 805A274
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x2
- bne _0805A286
- cmp r0, 0x87
- beq _0805A28A
-_0805A286:
- movs r0, 0
- b _0805A28C
-_0805A28A:
- movs r0, 0x1
-_0805A28C:
- pop {r1}
- bx r1
- thumb_func_end sub_805A274
-
- thumb_func_start sub_805A290
-sub_805A290: @ 805A290
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x2
- bne _0805A2A2
- cmp r0, 0x88
- beq _0805A2A6
-_0805A2A2:
- movs r0, 0
- b _0805A2A8
-_0805A2A6:
- movs r0, 0x1
-_0805A2A8:
- pop {r1}
- bx r1
- thumb_func_end sub_805A290
-
- thumb_func_start sub_805A2AC
-sub_805A2AC: @ 805A2AC
- movs r0, 0
- bx lr
- thumb_func_end sub_805A2AC
-
- thumb_func_start sub_805A2B0
-sub_805A2B0: @ 805A2B0
- movs r0, 0
- bx lr
- thumb_func_end sub_805A2B0
-
- thumb_func_start sub_805A2B4
-sub_805A2B4: @ 805A2B4
- movs r0, 0
- bx lr
- thumb_func_end sub_805A2B4
-
- thumb_func_start sub_805A2B8
-sub_805A2B8: @ 805A2B8
- movs r0, 0
- bx lr
- thumb_func_end sub_805A2B8
-
- thumb_func_start sub_805A2BC
-sub_805A2BC: @ 805A2BC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0805A2D4 @ =gUnknown_8353068
- adds r0, r2
- ldrb r0, [r0]
- ands r0, r1
- cmp r0, 0
- bne _0805A2D8
- movs r0, 0
- b _0805A2DA
- .align 2, 0
-_0805A2D4: .4byte gUnknown_8353068
-_0805A2D8:
- movs r0, 0x1
-_0805A2DA:
- pop {r1}
- bx r1
- thumb_func_end sub_805A2BC
-
- thumb_func_start sub_805A2E0
-sub_805A2E0: @ 805A2E0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x54
- beq _0805A2EE
- movs r0, 0
- b _0805A2F0
-_0805A2EE:
- movs r0, 0x1
-_0805A2F0:
- pop {r1}
- bx r1
- thumb_func_end sub_805A2E0
-
- thumb_func_start sub_805A2F4
-sub_805A2F4: @ 805A2F4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x55
- beq _0805A302
- movs r0, 0
- b _0805A304
-_0805A302:
- movs r0, 0x1
-_0805A304:
- pop {r1}
- bx r1
- thumb_func_end sub_805A2F4
-
- thumb_func_start sub_805A308
-sub_805A308: @ 805A308
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x56
- beq _0805A316
- movs r0, 0
- b _0805A318
-_0805A316:
- movs r0, 0x1
-_0805A318:
- pop {r1}
- bx r1
- thumb_func_end sub_805A308
-
- thumb_func_start sub_805A31C
-sub_805A31C: @ 805A31C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x57
- beq _0805A32A
- movs r0, 0
- b _0805A32C
-_0805A32A:
- movs r0, 0x1
-_0805A32C:
- pop {r1}
- bx r1
- thumb_func_end sub_805A31C
-
- thumb_func_start sub_805A330
-sub_805A330: @ 805A330
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x58
- beq _0805A33E
- movs r0, 0
- b _0805A340
-_0805A33E:
- movs r0, 0x1
-_0805A340:
- pop {r1}
- bx r1
- thumb_func_end sub_805A330
-
- thumb_func_start sub_805A344
-sub_805A344: @ 805A344
- push {lr}
- lsls r0, 24
- movs r1, 0
- movs r2, 0xAC
- lsls r2, 24
- adds r0, r2
- lsrs r0, 24
- cmp r0, 0x3
- bhi _0805A358
- movs r1, 0x1
-_0805A358:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_805A344
-
- thumb_func_start sub_805A360
-sub_805A360: @ 805A360
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x84
- beq _0805A36E
- movs r0, 0
- b _0805A370
-_0805A36E:
- movs r0, 0x1
-_0805A370:
- pop {r1}
- bx r1
- thumb_func_end sub_805A360
-
- thumb_func_start sub_805A374
-sub_805A374: @ 805A374
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x89
- beq _0805A382
- movs r0, 0
- b _0805A384
-_0805A382:
- movs r0, 0x1
-_0805A384:
- pop {r1}
- bx r1
- thumb_func_end sub_805A374
-
- thumb_func_start sub_805A388
-sub_805A388: @ 805A388
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8A
- beq _0805A396
- movs r0, 0
- b _0805A398
-_0805A396:
- movs r0, 0x1
-_0805A398:
- pop {r1}
- bx r1
- thumb_func_end sub_805A388
-
- thumb_func_start sub_805A39C
-sub_805A39C: @ 805A39C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8B
- beq _0805A3AA
- movs r0, 0
- b _0805A3AC
-_0805A3AA:
- movs r0, 0x1
-_0805A3AC:
- pop {r1}
- bx r1
- thumb_func_end sub_805A39C
-
- thumb_func_start sub_805A3B0
-sub_805A3B0: @ 805A3B0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8C
- beq _0805A3BE
- movs r0, 0
- b _0805A3C0
-_0805A3BE:
- movs r0, 0x1
-_0805A3C0:
- pop {r1}
- bx r1
- thumb_func_end sub_805A3B0
-
- thumb_func_start sub_805A3C4
-sub_805A3C4: @ 805A3C4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x20
- beq _0805A3D2
- movs r0, 0
- b _0805A3D4
-_0805A3D2:
- movs r0, 0x1
-_0805A3D4:
- pop {r1}
- bx r1
- thumb_func_end sub_805A3C4
-
- thumb_func_start sub_805A3D8
-sub_805A3D8: @ 805A3D8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x2
- bne _0805A3EA
- cmp r0, 0x8D
- beq _0805A3EE
-_0805A3EA:
- movs r0, 0
- b _0805A3F0
-_0805A3EE:
- movs r0, 0x1
-_0805A3F0:
- pop {r1}
- bx r1
- thumb_func_end sub_805A3D8
-
- thumb_func_start sub_805A3F4
-sub_805A3F4: @ 805A3F4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- lsls r1, 24
- lsrs r1, 24
- cmp r1, 0x2
- bne _0805A406
- cmp r0, 0x8E
- beq _0805A40A
-_0805A406:
- movs r0, 0
- b _0805A40C
-_0805A40A:
- movs r0, 0x1
-_0805A40C:
- pop {r1}
- bx r1
- thumb_func_end sub_805A3F4
-
- thumb_func_start sub_805A410
-sub_805A410: @ 805A410
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x8F
- beq _0805A41E
- movs r0, 0
- b _0805A420
-_0805A41E:
- movs r0, 0x1
-_0805A420:
- pop {r1}
- bx r1
- thumb_func_end sub_805A410
-
- thumb_func_start sub_805A424
-sub_805A424: @ 805A424
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x91
- beq _0805A432
- movs r0, 0
- b _0805A434
-_0805A432:
- movs r0, 0x1
-_0805A434:
- pop {r1}
- bx r1
- thumb_func_end sub_805A424
-
- thumb_func_start sub_805A438
-sub_805A438: @ 805A438
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x92
- beq _0805A446
- movs r0, 0
- b _0805A448
-_0805A446:
- movs r0, 0x1
-_0805A448:
- pop {r1}
- bx r1
- thumb_func_end sub_805A438
-
- thumb_func_start sub_805A44C
-sub_805A44C: @ 805A44C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x90
- beq _0805A45A
- movs r0, 0
- b _0805A45C
-_0805A45A:
- movs r0, 0x1
-_0805A45C:
- pop {r1}
- bx r1
- thumb_func_end sub_805A44C
-
- thumb_func_start sub_805A460
-sub_805A460: @ 805A460
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- movs r1, 0
- cmp r0, 0x2A
- bne _0805A46E
- movs r1, 0x1
-_0805A46E:
- adds r0, r1, 0
- pop {r1}
- bx r1
- thumb_func_end sub_805A460
-
- thumb_func_start sub_805A474
-sub_805A474: @ 805A474
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x93
- beq _0805A482
- movs r0, 0
- b _0805A484
-_0805A482:
- movs r0, 0x1
-_0805A484:
- pop {r1}
- bx r1
- thumb_func_end sub_805A474
-
- thumb_func_start sub_805A488
-sub_805A488: @ 805A488
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x94
- beq _0805A496
- movs r0, 0
- b _0805A498
-_0805A496:
- movs r0, 0x1
-_0805A498:
- pop {r1}
- bx r1
- thumb_func_end sub_805A488
-
- thumb_func_start sub_805A49C
-sub_805A49C: @ 805A49C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x95
- beq _0805A4AA
- movs r0, 0
- b _0805A4AC
-_0805A4AA:
- movs r0, 0x1
-_0805A4AC:
- pop {r1}
- bx r1
- thumb_func_end sub_805A49C
-
- thumb_func_start sub_805A4B0
-sub_805A4B0: @ 805A4B0
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x96
- beq _0805A4BE
- movs r0, 0
- b _0805A4C0
-_0805A4BE:
- movs r0, 0x1
-_0805A4C0:
- pop {r1}
- bx r1
- thumb_func_end sub_805A4B0
-
- thumb_func_start sub_805A4C4
-sub_805A4C4: @ 805A4C4
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x97
- beq _0805A4D2
- movs r0, 0
- b _0805A4D4
-_0805A4D2:
- movs r0, 0x1
-_0805A4D4:
- pop {r1}
- bx r1
- thumb_func_end sub_805A4C4
-
- thumb_func_start sub_805A4D8
-sub_805A4D8: @ 805A4D8
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x98
- beq _0805A4E6
- movs r0, 0
- b _0805A4E8
-_0805A4E6:
- movs r0, 0x1
-_0805A4E8:
- pop {r1}
- bx r1
- thumb_func_end sub_805A4D8
-
- thumb_func_start sub_805A4EC
-sub_805A4EC: @ 805A4EC
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x99
- beq _0805A4FA
- movs r0, 0
- b _0805A4FC
-_0805A4FA:
- movs r0, 0x1
-_0805A4FC:
- pop {r1}
- bx r1
- thumb_func_end sub_805A4EC
-
- thumb_func_start sub_805A500
-sub_805A500: @ 805A500
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x9A
- beq _0805A50E
- movs r0, 0
- b _0805A510
-_0805A50E:
- movs r0, 0x1
-_0805A510:
- pop {r1}
- bx r1
- thumb_func_end sub_805A500
-
- thumb_func_start sub_805A514
-sub_805A514: @ 805A514
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x9B
- beq _0805A522
- movs r0, 0
- b _0805A524
-_0805A522:
- movs r0, 0x1
-_0805A524:
- pop {r1}
- bx r1
- thumb_func_end sub_805A514
-
- thumb_func_start sub_805A528
-sub_805A528: @ 805A528
- movs r0, 0
- bx lr
- thumb_func_end sub_805A528
-
- thumb_func_start sub_805A52C
-sub_805A52C: @ 805A52C
- movs r0, 0
- bx lr
- thumb_func_end sub_805A52C
-
- thumb_func_start sub_805A530
-sub_805A530: @ 805A530
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x9E
- beq _0805A53E
- movs r0, 0
- b _0805A540
-_0805A53E:
- movs r0, 0x1
-_0805A540:
- pop {r1}
- bx r1
- thumb_func_end sub_805A530
-
- thumb_func_start sub_805A544
-sub_805A544: @ 805A544
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x9F
- beq _0805A552
- movs r0, 0
- b _0805A554
-_0805A552:
- movs r0, 0x1
-_0805A554:
- pop {r1}
- bx r1
- thumb_func_end sub_805A544
-
- thumb_func_start sub_805A558
-sub_805A558: @ 805A558
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA0
- beq _0805A566
- movs r0, 0
- b _0805A568
-_0805A566:
- movs r0, 0x1
-_0805A568:
- pop {r1}
- bx r1
- thumb_func_end sub_805A558
-
- thumb_func_start sub_805A56C
-sub_805A56C: @ 805A56C
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA1
- beq _0805A57A
- movs r0, 0
- b _0805A57C
-_0805A57A:
- movs r0, 0x1
-_0805A57C:
- pop {r1}
- bx r1
- thumb_func_end sub_805A56C
-
- thumb_func_start sub_805A580
-sub_805A580: @ 805A580
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA2
- beq _0805A58E
- movs r0, 0
- b _0805A590
-_0805A58E:
- movs r0, 0x1
-_0805A590:
- pop {r1}
- bx r1
- thumb_func_end sub_805A580
-
- thumb_func_start sub_805A594
-sub_805A594: @ 805A594
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xA3
- beq _0805A5A2
- movs r0, 0
- b _0805A5A4
-_0805A5A2:
- movs r0, 0x1
-_0805A5A4:
- pop {r1}
- bx r1
- thumb_func_end sub_805A594
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/overworld.s b/asm/overworld.s
index 0ca0b2b55..f1587d154 100644
--- a/asm/overworld.s
+++ b/asm/overworld.s
@@ -1984,7 +1984,7 @@ _08055AF4:
beq _08055B30
lsls r0, r5, 24
lsrs r0, 24
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2018,7 +2018,7 @@ sub_8055B38: @ 8055B38
push {lr}
lsls r0, 24
lsrs r0, 24
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2067,25 +2067,25 @@ _08055B94:
lsls r4, 24
lsrs r5, r4, 24
adds r0, r5, 0
- bl sub_8059CA0
+ bl MetatileBehavior_ReturnFalse_2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _08055BD0
adds r0, r5, 0
- bl sub_8059C8C
+ bl MetatileBehavior_IsCaveDoor
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _08055C68
adds r0, r5, 0
- bl sub_8059BDC
+ bl MetatileBehavior_IsWarpDoor_2
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _08055C68
adds r0, r5, 0
- bl sub_8059D18
+ bl MetatileBehavior_IsSouthArrowWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2097,7 +2097,7 @@ _08055BD0:
_08055BD4: .4byte 0x00000802
_08055BD8:
adds r0, r5, 0
- bl sub_8059D04
+ bl MetatileBehavior_IsNorthArrowWarp
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2115,13 +2115,13 @@ _08055BD8:
cmp r0, 0x1
beq _08055C1E
adds r0, r5, 0
- bl sub_8059C0C
+ bl MetatileBehavior_IsUnknownWarp6C
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _08055C1E
adds r0, r5, 0
- bl sub_8059C34
+ bl MetatileBehavior_IsUnknownWarp6E
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2131,13 +2131,13 @@ _08055C1E:
b _08055C6E
_08055C22:
adds r0, r5, 0
- bl sub_8059C20
+ bl MetatileBehavior_IsUnknownWarp6D
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
beq _08055C3E
adds r0, r5, 0
- bl sub_8059C48
+ bl MetatileBehavior_IsUnknownWarp6F
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2158,7 +2158,7 @@ _08055C4C:
beq _08055C6C
_08055C54:
lsrs r0, r4, 24
- bl sub_8059C78
+ bl MetatileBehavior_IsLadder
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -2680,7 +2680,7 @@ sub_8055FE0: @ 8055FE0
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
beq _0805606A
@@ -6714,7 +6714,7 @@ sub_8058034: @ 8058034
bne _08058058
_08058042:
ldrb r0, [r4, 0xC]
- bl sub_8059D18
+ bl MetatileBehavior_IsSouthArrowWarp
lsls r0, 24
cmp r0, 0
beq _08058058
diff --git a/asm/party_menu.s b/asm/party_menu.s
index 5f2d4d4db..d9504245a 100644
--- a/asm/party_menu.s
+++ b/asm/party_menu.s
@@ -12103,7 +12103,7 @@ sub_8124998: @ 8124998
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059CC8
+ bl MetatileBehavior_IsSemiDeepWater
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
@@ -12166,7 +12166,7 @@ _08124A24:
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059CC8
+ bl MetatileBehavior_IsSemiDeepWater
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
diff --git a/asm/unk_8159F40.s b/asm/unk_8159F40.s
index 78693e452..a8d1b9bf8 100644
--- a/asm/unk_8159F40.s
+++ b/asm/unk_8159F40.s
@@ -801,7 +801,7 @@ sub_815A540: @ 815A540
bl MapGridGetMetatileBehaviorAt
lsls r0, 24
lsrs r0, 24
- bl sub_8059CA4
+ bl MetatileBehavior_IsSurfable
lsls r0, 24
cmp r0, 0
bne _0815A5A4
diff --git a/asm/vs_seeker.s b/asm/vs_seeker.s
deleted file mode 100644
index 8e66877fa..000000000
--- a/asm/vs_seeker.s
+++ /dev/null
@@ -1,1767 +0,0 @@
- .include "asm/macros.inc"
- .include "constants/constants.inc"
-
- .syntax unified
-
- .text
-
- thumb_func_start sub_810C670
-sub_810C670: @ 810C670
- push {r4-r7,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- movs r2, 0
- ldr r7, _0810C6C0 @ =gUnknown_203ADB8
- lsls r1, r4, 2
- adds r0, r1, r4
- lsls r3, r0, 3
- ldr r5, _0810C6C4 @ =gTasks+0x8
- adds r6, r1, 0
- movs r1, 0
-_0810C686:
- lsls r0, r2, 1
- adds r0, r3
- adds r0, r5
- strh r1, [r0]
- adds r0, r2, 0x1
- lsls r0, 24
- lsrs r2, r0, 24
- cmp r2, 0xF
- bls _0810C686
- adds r5, r7, 0
- ldr r0, _0810C6C8 @ =0x00000434
- bl AllocZeroed
- str r0, [r5]
- bl sub_810C808
- bl sub_810C96C
- lsls r0, 24
- lsrs r0, 24
- adds r1, r0, 0
- cmp r0, 0
- bne _0810C6D0
- ldr r0, [r5]
- bl Free
- ldr r2, _0810C6CC @ =gUnknown_81C137C
- b _0810C6DC
- .align 2, 0
-_0810C6C0: .4byte gUnknown_203ADB8
-_0810C6C4: .4byte gTasks+0x8
-_0810C6C8: .4byte 0x00000434
-_0810C6CC: .4byte gUnknown_81C137C
-_0810C6D0:
- cmp r0, 0x1
- bne _0810C6F0
- ldr r0, [r7]
- bl Free
- ldr r2, _0810C6E8 @ =gUnknown_81C13D6
-_0810C6DC:
- ldr r3, _0810C6EC @ =sub_80A1E0C
- adds r0, r4, 0
- movs r1, 0x2
- bl DisplayItemMessageOnField
- b _0810C718
- .align 2, 0
-_0810C6E8: .4byte gUnknown_81C13D6
-_0810C6EC: .4byte sub_80A1E0C
-_0810C6F0:
- cmp r1, 0x2
- bne _0810C718
- ldr r0, _0810C720 @ =gUnknown_203AD30
- ldrh r2, [r0]
- ldr r3, _0810C724 @ =0x0000ffff
- movs r0, 0x4
- movs r1, 0
- bl sub_80A2294
- movs r0, 0x41
- bl FieldEffectStart
- ldr r1, _0810C728 @ =gTasks
- adds r0, r6, r4
- lsls r0, 3
- adds r0, r1
- ldr r1, _0810C72C @ =sub_810C730
- str r1, [r0]
- movs r1, 0xF
- strh r1, [r0, 0x8]
-_0810C718:
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810C720: .4byte gUnknown_203AD30
-_0810C724: .4byte 0x0000ffff
-_0810C728: .4byte gTasks
-_0810C72C: .4byte sub_810C730
- thumb_func_end sub_810C670
-
- thumb_func_start sub_810C730
-sub_810C730: @ 810C730
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- ldr r2, _0810C758 @ =gTasks
- lsls r1, r0, 2
- adds r1, r0
- lsls r1, 3
- adds r1, r2
- ldrh r0, [r1, 0x8]
- subs r0, 0x1
- strh r0, [r1, 0x8]
- lsls r0, 16
- cmp r0, 0
- bne _0810C754
- ldr r0, _0810C75C @ =sub_810C760
- str r0, [r1]
- movs r0, 0x10
- strh r0, [r1, 0xA]
-_0810C754:
- pop {r0}
- bx r0
- .align 2, 0
-_0810C758: .4byte gTasks
-_0810C75C: .4byte sub_810C760
- thumb_func_end sub_810C730
-
- thumb_func_start sub_810C760
-sub_810C760: @ 810C760
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r5, r0, 24
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- ldr r1, _0810C7E8 @ =gTasks+0x8
- adds r4, r0, r1
- movs r1, 0x4
- ldrsh r0, [r4, r1]
- cmp r0, 0x2
- beq _0810C794
- ldrh r0, [r4, 0x2]
- subs r0, 0x1
- strh r0, [r4, 0x2]
- lsls r0, 16
- cmp r0, 0
- bne _0810C794
- movs r0, 0x5E
- bl PlaySE
- movs r0, 0xB
- strh r0, [r4, 0x2]
- ldrh r0, [r4, 0x4]
- adds r0, 0x1
- strh r0, [r4, 0x4]
-_0810C794:
- movs r0, 0x41
- bl FieldEffectActiveListContains
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0
- bne _0810C7E2
- strh r0, [r4, 0x2]
- strh r0, [r4, 0x4]
- bl sub_810C604
- ldr r0, _0810C7EC @ =gUnknown_845318C
- bl sub_810C9A8
- ldr r1, _0810C7F0 @ =gUnknown_203ADB8
- ldr r2, [r1]
- ldr r1, _0810C7F4 @ =0x00000431
- adds r2, r1
- lsls r0, 3
- ldrb r3, [r2]
- movs r1, 0x7
- ands r1, r3
- orrs r1, r0
- strb r1, [r2]
- ldr r0, _0810C7F8 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrb r1, [r0, 0x5]
- ldrb r2, [r0, 0x4]
- ldr r3, _0810C7FC @ =gUnknown_8453F5C
- movs r0, 0xFF
- bl ScriptMovement_StartObjectMovementScript
- ldr r1, _0810C800 @ =gTasks
- lsls r0, r5, 2
- adds r0, r5
- lsls r0, 3
- adds r0, r1
- ldr r1, _0810C804 @ =sub_810C8EC
- str r1, [r0]
-_0810C7E2:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0810C7E8: .4byte gTasks+0x8
-_0810C7EC: .4byte gUnknown_845318C
-_0810C7F0: .4byte gUnknown_203ADB8
-_0810C7F4: .4byte 0x00000431
-_0810C7F8: .4byte gSaveBlock1Ptr
-_0810C7FC: .4byte gUnknown_8453F5C
-_0810C800: .4byte gTasks
-_0810C804: .4byte sub_810C8EC
- thumb_func_end sub_810C760
-
- thumb_func_start sub_810C808
-sub_810C808: @ 810C808
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- ldr r0, _0810C8DC @ =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0x8E
- lsls r1, 4
- adds r2, r0, r1
- movs r1, 0
- mov r0, sp
- strb r1, [r0]
- mov r8, r1
- mov r9, r1
- ldr r0, _0810C8E0 @ =gMapHeader
- ldr r0, [r0, 0x4]
- ldrb r0, [r0]
- cmp r8, r0
- bge _0810C8BC
- ldr r7, _0810C8E4 @ =gUnknown_203ADB8
- mov r6, sp
- ldr r0, _0810C8E8 @ =gMapObjects
- mov r10, r0
- adds r5, r2, 0
-_0810C83C:
- ldrh r0, [r5, 0xC]
- cmp r0, 0x1
- beq _0810C846
- cmp r0, 0x3
- bne _0810C8AC
-_0810C846:
- ldr r1, [r7]
- mov r2, r8
- lsls r4, r2, 4
- adds r1, r4
- ldr r0, [r5, 0x10]
- str r0, [r1]
- ldr r0, [r5, 0x10]
- bl sub_810D074
- ldr r1, [r7]
- adds r1, r4
- strh r0, [r1, 0x4]
- ldrb r0, [r5]
- strb r0, [r1, 0x6]
- ldrb r0, [r5]
- ldr r1, _0810C8DC @ =gSaveBlock1Ptr
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- ldr r0, [r7]
- adds r0, r4
- ldrb r1, [r6]
- strb r1, [r0, 0x7]
- ldr r2, [r7]
- adds r2, r4
- ldrb r1, [r6]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- add r0, r10
- ldrh r0, [r0, 0x10]
- subs r0, 0x7
- strh r0, [r2, 0x8]
- ldrb r1, [r6]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- add r0, r10
- ldrh r0, [r0, 0x12]
- subs r0, 0x7
- strh r0, [r2, 0xA]
- ldrb r0, [r5, 0x1]
- strb r0, [r2, 0xC]
- mov r0, r8
- adds r0, 0x1
- lsls r0, 24
- lsrs r0, 24
- mov r8, r0
-_0810C8AC:
- adds r5, 0x18
- movs r0, 0x1
- add r9, r0
- ldr r0, _0810C8E0 @ =gMapHeader
- ldr r0, [r0, 0x4]
- ldrb r0, [r0]
- cmp r9, r0
- blt _0810C83C
-_0810C8BC:
- ldr r0, _0810C8E4 @ =gUnknown_203ADB8
- ldr r0, [r0]
- mov r2, r8
- lsls r1, r2, 4
- adds r0, r1
- movs r1, 0xFF
- strb r1, [r0, 0x6]
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810C8DC: .4byte gSaveBlock1Ptr
-_0810C8E0: .4byte gMapHeader
-_0810C8E4: .4byte gUnknown_203ADB8
-_0810C8E8: .4byte gMapObjects
- thumb_func_end sub_810C808
-
- thumb_func_start sub_810C8EC
-sub_810C8EC: @ 810C8EC
- push {r4,r5,lr}
- lsls r0, 24
- lsrs r4, r0, 24
- adds r5, r4, 0
- ldr r0, _0810C928 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldrb r1, [r0, 0x5]
- ldrb r2, [r0, 0x4]
- movs r0, 0xFF
- bl ScriptMovement_IsObjectMovementFinished
- lsls r0, 24
- cmp r0, 0
- beq _0810C962
- ldr r0, _0810C92C @ =gUnknown_203ADB8
- ldr r0, [r0]
- ldr r1, _0810C930 @ =0x00000431
- adds r0, r1
- ldrb r0, [r0]
- movs r1, 0xF8
- ands r1, r0
- cmp r1, 0
- bne _0810C93C
- ldr r2, _0810C934 @ =gUnknown_81C1429
- ldr r3, _0810C938 @ =sub_80A1E0C
- adds r0, r4, 0
- movs r1, 0x2
- bl DisplayItemMessageOnField
- b _0810C95A
- .align 2, 0
-_0810C928: .4byte gSaveBlock1Ptr
-_0810C92C: .4byte gUnknown_203ADB8
-_0810C930: .4byte 0x00000431
-_0810C934: .4byte gUnknown_81C1429
-_0810C938: .4byte sub_80A1E0C
-_0810C93C:
- cmp r1, 0x10
- bne _0810C944
- bl sub_810D304
-_0810C944:
- movs r0, 0
- movs r1, 0x1
- bl sub_80F6F54
- bl sub_80696C0
- bl ScriptContext2_Disable
- adds r0, r5, 0
- bl DestroyTask
-_0810C95A:
- ldr r0, _0810C968 @ =gUnknown_203ADB8
- ldr r0, [r0]
- bl Free
-_0810C962:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0810C968: .4byte gUnknown_203ADB8
- thumb_func_end sub_810C8EC
-
- thumb_func_start sub_810C96C
-sub_810C96C: @ 810C96C
- push {lr}
- ldr r0, _0810C990 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- movs r1, 0xC7
- lsls r1, 3
- adds r0, r1
- ldrb r0, [r0]
- cmp r0, 0x64
- bne _0810C998
- bl sub_810D1CC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0xFF
- bne _0810C994
- movs r0, 0x1
- b _0810C9A4
- .align 2, 0
-_0810C990: .4byte gSaveBlock1Ptr
-_0810C994:
- movs r0, 0x2
- b _0810C9A4
-_0810C998:
- movs r1, 0x64
- subs r1, r0
- movs r0, 0
- bl TV_PrintIntToStringVar
- movs r0, 0
-_0810C9A4:
- pop {r1}
- bx r1
- thumb_func_end sub_810C96C
-
- thumb_func_start sub_810C9A8
-sub_810C9A8: @ 810C9A8
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x8
- str r0, [sp, 0x4]
- movs r0, 0
- mov r8, r0
- mov r0, sp
- mov r1, r8
- strb r1, [r0]
- movs r2, 0
- mov r9, r2
- ldr r4, _0810CA14 @ =gUnknown_203ADB8
- ldr r0, [r4]
- ldrb r0, [r0, 0x6]
- cmp r0, 0xFF
- bne _0810C9D0
- b _0810CB2C
-_0810C9D0:
- adds r6, r4, 0
- movs r3, 0x86
- lsls r3, 3
- mov r10, r3
- movs r5, 0
-_0810C9DA:
- ldr r0, [r6]
- adds r0, r5
- bl sub_810D0FC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- beq _0810C9EC
- b _0810CB18
-_0810C9EC:
- ldr r0, [r4]
- adds r0, r5
- ldrh r0, [r0, 0x4]
- mov r8, r0
- bl HasTrainerAlreadyBeenFought
- lsls r0, 24
- cmp r0, 0
- bne _0810CA20
- ldr r0, [r6]
- adds r0, r5
- ldr r1, _0810CA18 @ =gUnknown_8453F60
- bl sub_810D24C
- ldr r2, [r6]
- ldr r0, _0810CA1C @ =0x00000431
- adds r2, r0
- ldrb r0, [r2]
- movs r1, 0x1
- b _0810CB14
- .align 2, 0
-_0810CA14: .4byte gUnknown_203ADB8
-_0810CA18: .4byte gUnknown_8453F60
-_0810CA1C: .4byte 0x00000431
-_0810CA20:
- ldr r0, [sp, 0x4]
- mov r1, r8
- mov r2, sp
- bl sub_810D164
- lsls r0, 24
- lsrs r7, r0, 24
- cmp r7, 0
- bne _0810CA50
- ldr r0, [r6]
- adds r0, r5
- ldr r1, _0810CA48 @ =gUnknown_8453F62
- bl sub_810D24C
- ldr r2, [r6]
- ldr r3, _0810CA4C @ =0x00000431
- adds r2, r3
- ldrb r0, [r2]
- movs r1, 0x2
- b _0810CB14
- .align 2, 0
-_0810CA48: .4byte gUnknown_8453F62
-_0810CA4C: .4byte 0x00000431
-_0810CA50:
- bl Random
- lsls r0, 16
- lsrs r0, 16
- movs r1, 0x64
- bl __umodsi3
- lsls r0, 16
- lsrs r4, r0, 16
- mov r0, r9
- mov r1, r8
- bl sub_810D280
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x2
- bne _0810CA76
- movs r4, 0x64
- b _0810CA7C
-_0810CA76:
- cmp r0, 0x1
- bne _0810CA7C
- movs r4, 0
-_0810CA7C:
- cmp r4, 0x1D
- bhi _0810CAA0
- ldr r0, [r6]
- adds r0, r5
- ldr r1, _0810CA98 @ =gUnknown_8453F62
- bl sub_810D24C
- ldr r2, [r6]
- ldr r0, _0810CA9C @ =0x00000431
- adds r2, r0
- ldrb r0, [r2]
- movs r1, 0x2
- b _0810CB14
- .align 2, 0
-_0810CA98: .4byte gUnknown_8453F62
-_0810CA9C: .4byte 0x00000431
-_0810CAA0:
- ldr r0, _0810CB54 @ =gSaveBlock1Ptr
- ldr r1, [r0]
- ldr r0, [r6]
- adds r0, r5
- ldr r2, _0810CB58 @ =0x0000063a
- adds r1, r2
- ldrb r0, [r0, 0x6]
- adds r1, r0
- strb r7, [r1]
- ldr r0, [r6]
- adds r0, r5
- ldrb r1, [r0, 0x7]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _0810CB5C @ =gMapObjects
- adds r0, r1
- bl npc_coords_shift_still
- ldr r0, [r6]
- adds r0, r5
- ldr r1, _0810CB60 @ =gUnknown_8453F64
- bl sub_810D24C
- ldr r2, [r6]
- mov r3, r10
- adds r0, r2, r3
- ldrb r1, [r0]
- lsls r1, 1
- movs r3, 0x80
- lsls r3, 3
- adds r0, r2, r3
- adds r0, r1
- mov r1, r8
- strh r1, [r0]
- adds r2, r5
- ldrb r0, [r2, 0xC]
- bl sub_810CF90
- ldr r1, [r6]
- mov r3, r10
- adds r2, r1, r3
- movs r3, 0x84
- lsls r3, 3
- adds r1, r3
- ldrb r2, [r2]
- adds r1, r2
- strb r0, [r1]
- ldr r1, [r6]
- add r1, r10
- ldrb r0, [r1]
- adds r0, 0x1
- strb r0, [r1]
- ldr r2, [r6]
- ldr r0, _0810CB64 @ =0x00000431
- adds r2, r0
- ldrb r0, [r2]
- movs r1, 0x4
-_0810CB14:
- orrs r0, r1
- strb r0, [r2]
-_0810CB18:
- adds r5, 0x10
- movs r1, 0x1
- add r9, r1
- ldr r4, _0810CB68 @ =gUnknown_203ADB8
- ldr r0, [r4]
- adds r0, r5
- ldrb r0, [r0, 0x6]
- cmp r0, 0xFF
- beq _0810CB2C
- b _0810C9DA
-_0810CB2C:
- ldr r2, _0810CB68 @ =gUnknown_203ADB8
- ldr r0, [r2]
- ldr r3, _0810CB64 @ =0x00000431
- adds r0, r3
- ldrb r1, [r0]
- movs r0, 0x4
- ands r0, r1
- cmp r0, 0
- beq _0810CB70
- movs r0, 0x15
- bl PlaySE
- ldr r0, _0810CB6C @ =0x00000801
- bl FlagSet
- bl sub_810C640
- movs r0, 0x2
- b _0810CB7E
- .align 2, 0
-_0810CB54: .4byte gSaveBlock1Ptr
-_0810CB58: .4byte 0x0000063a
-_0810CB5C: .4byte gMapObjects
-_0810CB60: .4byte gUnknown_8453F64
-_0810CB64: .4byte 0x00000431
-_0810CB68: .4byte gUnknown_203ADB8
-_0810CB6C: .4byte 0x00000801
-_0810CB70:
- movs r0, 0x1
- ands r0, r1
- cmp r0, 0
- bne _0810CB7C
- movs r0, 0
- b _0810CB7E
-_0810CB7C:
- movs r0, 0x1
-_0810CB7E:
- add sp, 0x8
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_810C9A8
-
- thumb_func_start sub_810CB90
-sub_810CB90: @ 810CB90
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- movs r1, 0
- mov r0, sp
- strb r1, [r0]
- ldr r5, _0810CC54 @ =gSaveBlock1Ptr
- ldr r0, [r5]
- movs r1, 0x8E
- lsls r1, 4
- adds r4, r0, r1
- ldr r0, _0810CC58 @ =gUnknown_845318C
- ldr r1, _0810CC5C @ =gTrainerBattleOpponent_A
- ldrh r1, [r1]
- bl sub_810CE10
- mov r9, r0
- movs r0, 0x1
- negs r0, r0
- cmp r9, r0
- beq _0810CC8A
- movs r0, 0
- mov r8, r0
- ldr r0, _0810CC60 @ =gMapHeader
- ldr r0, [r0, 0x4]
- ldrb r0, [r0]
- cmp r8, r0
- bge _0810CC8A
- mov r10, r5
- adds r6, r4, 0
- adds r5, r6, 0
-_0810CBD4:
- ldrh r0, [r5, 0xC]
- cmp r0, 0x1
- beq _0810CBDE
- cmp r0, 0x3
- bne _0810CC78
-_0810CBDE:
- ldr r0, [r5, 0x10]
- bl sub_810D074
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- ldr r0, _0810CC58 @ =gUnknown_845318C
- bl sub_810CE10
- cmp r9, r0
- bne _0810CC78
- ldrb r0, [r5]
- mov r1, r10
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- mov r3, sp
- bl TryGetFieldObjectIdByLocalIdAndMap
- mov r0, sp
- ldrb r1, [r0]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _0810CC64 @ =gMapObjects
- adds r4, r0, r1
- adds r0, r6, 0
- bl sub_810CF54
- ldr r7, _0810CC68 @ =gUnknown_8453F67
- ldrb r0, [r4, 0x18]
- lsls r0, 28
- lsrs r0, 28
- adds r0, r7
- ldrb r1, [r0]
- adds r0, r4, 0
- bl sub_805FE7C
- mov r1, r10
- ldr r0, [r1]
- ldr r1, _0810CC6C @ =0x0000063a
- adds r0, r1
- ldrb r1, [r5]
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- ldr r0, _0810CC70 @ =gUnknown_3005074
- mov r1, sp
- ldrb r0, [r0]
- ldrb r1, [r1]
- cmp r0, r1
- bne _0810CC74
- ldrb r0, [r4, 0x18]
- lsls r0, 28
- lsrs r0, 28
- adds r0, r7
- ldrb r0, [r0]
- b _0810CC76
- .align 2, 0
-_0810CC54: .4byte gSaveBlock1Ptr
-_0810CC58: .4byte gUnknown_845318C
-_0810CC5C: .4byte gTrainerBattleOpponent_A
-_0810CC60: .4byte gMapHeader
-_0810CC64: .4byte gMapObjects
-_0810CC68: .4byte gUnknown_8453F67
-_0810CC6C: .4byte 0x0000063a
-_0810CC70: .4byte gUnknown_3005074
-_0810CC74:
- movs r0, 0x8
-_0810CC76:
- strb r0, [r4, 0x6]
-_0810CC78:
- adds r5, 0x18
- adds r6, 0x18
- movs r0, 0x1
- add r8, r0
- ldr r0, _0810CC9C @ =gMapHeader
- ldr r0, [r0, 0x4]
- ldrb r0, [r0]
- cmp r8, r0
- blt _0810CBD4
-_0810CC8A:
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810CC9C: .4byte gMapHeader
- thumb_func_end sub_810CB90
-
- thumb_func_start sub_810CCA0
-sub_810CCA0: @ 810CCA0
- push {r4,r5,lr}
- adds r5, r0, 0
- adds r4, r1, 0
- ldrb r0, [r4]
- cmp r0, 0x5
- bhi _0810CD0A
- lsls r0, 2
- ldr r1, _0810CCB8 @ =_0810CCBC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0810CCB8: .4byte _0810CCBC
- .align 2, 0
-_0810CCBC:
- .4byte _0810CD0A
- .4byte _0810CCD4
- .4byte _0810CCDC
- .4byte _0810CCE4
- .4byte _0810CCEC
- .4byte _0810CCF4
-_0810CCD4:
- ldr r0, _0810CCD8 @ =0x00000292
- b _0810CCF6
- .align 2, 0
-_0810CCD8: .4byte 0x00000292
-_0810CCDC:
- ldr r0, _0810CCE0 @ =0x00000896
- b _0810CCF6
- .align 2, 0
-_0810CCE0: .4byte 0x00000896
-_0810CCE4:
- ldr r0, _0810CCE8 @ =0x00000897
- b _0810CCF6
- .align 2, 0
-_0810CCE8: .4byte 0x00000897
-_0810CCEC:
- ldr r0, _0810CCF0 @ =0x0000082c
- b _0810CCF6
- .align 2, 0
-_0810CCF0: .4byte 0x0000082c
-_0810CCF4:
- ldr r0, _0810CD10 @ =0x00000844
-_0810CCF6:
- bl FlagGet
- lsls r0, 24
- cmp r0, 0
- bne _0810CD0A
- ldrb r1, [r4]
- adds r0, r5, 0
- bl sub_810CD14
- strb r0, [r4]
-_0810CD0A:
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0810CD10: .4byte 0x00000844
- thumb_func_end sub_810CCA0
-
- thumb_func_start sub_810CD14
-sub_810CD14: @ 810CD14
- push {lr}
- adds r2, r0, 0
- lsls r1, 24
- movs r0, 0xFF
- lsls r0, 24
- adds r1, r0
- lsrs r1, 24
- cmp r1, 0
- beq _0810CD46
- ldr r3, _0810CD38 @ =0x0000ffff
-_0810CD28:
- lsls r0, r1, 1
- adds r0, r2, r0
- ldrh r0, [r0]
- cmp r0, r3
- beq _0810CD3C
- adds r0, r1, 0
- b _0810CD48
- .align 2, 0
-_0810CD38: .4byte 0x0000ffff
-_0810CD3C:
- subs r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0
- bne _0810CD28
-_0810CD46:
- movs r0, 0
-_0810CD48:
- pop {r1}
- bx r1
- thumb_func_end sub_810CD14
-
- thumb_func_start sub_810CD4C
-sub_810CD4C: @ 810CD4C
- push {r4,r5,lr}
- ldr r5, _0810CD70 @ =gUnknown_845318C
- ldr r4, _0810CD74 @ =gTrainerBattleOpponent_A
- ldrh r1, [r4]
- adds r0, r5, 0
- bl sub_810CD80
- lsls r0, 24
- cmp r0, 0
- bne _0810CD78
- ldrh r1, [r4]
- adds r0, r5, 0
- bl sub_810CDB4
- lsls r0, 24
- lsrs r0, 24
- b _0810CD7A
- .align 2, 0
-_0810CD70: .4byte gUnknown_845318C
-_0810CD74: .4byte gTrainerBattleOpponent_A
-_0810CD78:
- movs r0, 0x1
-_0810CD7A:
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_810CD4C
-
- thumb_func_start sub_810CD80
-sub_810CD80: @ 810CD80
- push {lr}
- lsls r1, 16
- lsrs r1, 16
- bl sub_810D084
- adds r1, r0, 0
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0810CDAC
- cmp r1, 0xDC
- bhi _0810CDAC
- ldr r0, _0810CDA8 @ =gUnknown_20370D2
- ldrh r0, [r0]
- bl sub_810D0A8
- cmp r0, 0
- beq _0810CDAC
- movs r0, 0x1
- b _0810CDAE
- .align 2, 0
-_0810CDA8: .4byte gUnknown_20370D2
-_0810CDAC:
- movs r0, 0
-_0810CDAE:
- pop {r1}
- bx r1
- thumb_func_end sub_810CD80
-
- thumb_func_start sub_810CDB4
-sub_810CDB4: @ 810CDB4
- push {r4,lr}
- adds r4, r0, 0
- lsls r1, 16
- lsrs r1, 16
- bl sub_810D084
- adds r1, r0, 0
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0810CDDE
- lsls r0, r1, 4
- adds r0, r4
- ldrh r0, [r0]
- bl HasTrainerAlreadyBeenFought
- lsls r0, 24
- cmp r0, 0
- beq _0810CDDE
- movs r0, 0x1
- b _0810CDE0
-_0810CDDE:
- movs r0, 0
-_0810CDE0:
- pop {r4}
- pop {r1}
- bx r1
- thumb_func_end sub_810CDB4
-
- thumb_func_start sub_810CDE8
-sub_810CDE8: @ 810CDE8
- push {lr}
- ldr r0, _0810CE04 @ =gSaveBlock1Ptr
- ldr r0, [r0]
- ldr r1, _0810CE08 @ =gUnknown_20370D2
- ldr r2, _0810CE0C @ =0x0000063a
- adds r0, r2
- ldrh r1, [r1]
- adds r0, r1
- movs r1, 0
- strb r1, [r0]
- bl sub_80803FC
- pop {r0}
- bx r0
- .align 2, 0
-_0810CE04: .4byte gSaveBlock1Ptr
-_0810CE08: .4byte gUnknown_20370D2
-_0810CE0C: .4byte 0x0000063a
- thumb_func_end sub_810CDE8
-
- thumb_func_start sub_810CE10
-sub_810CE10: @ 810CE10
- push {r4-r7,lr}
- mov r12, r0
- lsls r1, 16
- lsrs r6, r1, 16
- movs r1, 0
- mov r4, r12
- movs r7, 0
-_0810CE1E:
- movs r3, 0
- ldrh r0, [r4]
- cmp r0, 0
- beq _0810CE4E
- ldr r5, _0810CE3C @ =0x0000ffff
- mov r0, r12
- adds r2, r7, r0
-_0810CE2C:
- ldrh r0, [r2]
- cmp r0, r5
- beq _0810CE40
- cmp r0, r6
- bne _0810CE40
- adds r0, r1, 0
- b _0810CE5C
- .align 2, 0
-_0810CE3C: .4byte 0x0000ffff
-_0810CE40:
- adds r2, 0x2
- adds r3, 0x1
- cmp r3, 0x5
- bgt _0810CE4E
- ldrh r0, [r2]
- cmp r0, 0
- bne _0810CE2C
-_0810CE4E:
- adds r4, 0x10
- adds r7, 0x10
- adds r1, 0x1
- cmp r1, 0xDC
- bls _0810CE1E
- movs r0, 0x1
- negs r0, r0
-_0810CE5C:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_810CE10
-
- thumb_func_start sub_810CE64
-sub_810CE64: @ 810CE64
- push {r4,r5,lr}
- sub sp, 0x4
- adds r1, r0, 0
- lsls r1, 16
- lsrs r1, 16
- ldr r5, _0810CEA4 @ =gUnknown_845318C
- adds r0, r5, 0
- mov r2, sp
- bl sub_810D164
- mov r4, sp
- adds r4, 0x1
- strb r0, [r4]
- ldrb r0, [r4]
- cmp r0, 0
- beq _0810CEA8
- mov r0, sp
- ldrb r0, [r0]
- lsls r0, 4
- adds r0, r5
- adds r1, r4, 0
- bl sub_810CCA0
- ldrb r1, [r4]
- lsls r1, 1
- mov r0, sp
- ldrb r0, [r0]
- lsls r0, 4
- adds r1, r0
- adds r1, r5
- ldrh r0, [r1]
- b _0810CEAA
- .align 2, 0
-_0810CEA4: .4byte gUnknown_845318C
-_0810CEA8:
- movs r0, 0
-_0810CEAA:
- add sp, 0x4
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_810CE64
-
- thumb_func_start sub_810CEB4
-sub_810CEB4: @ 810CEB4
- push {lr}
- ldr r0, _0810CEC8 @ =gUnknown_845318C
- ldr r1, _0810CECC @ =gTrainerBattleOpponent_A
- ldrh r1, [r1]
- bl sub_810CED0
- lsls r0, 24
- lsrs r0, 24
- pop {r1}
- bx r1
- .align 2, 0
-_0810CEC8: .4byte gUnknown_845318C
-_0810CECC: .4byte gTrainerBattleOpponent_A
- thumb_func_end sub_810CEB4
-
- thumb_func_start sub_810CED0
-sub_810CED0: @ 810CED0
- push {lr}
- lsls r1, 16
- lsrs r1, 16
- bl sub_810CE10
- adds r1, r0, 0
- movs r0, 0x1
- negs r0, r0
- cmp r1, r0
- beq _0810CEFC
- cmp r1, 0xDC
- bhi _0810CEFC
- ldr r0, _0810CEF8 @ =gUnknown_20370D2
- ldrh r0, [r0]
- bl sub_810D0A8
- cmp r0, 0
- beq _0810CEFC
- movs r0, 0x1
- b _0810CEFE
- .align 2, 0
-_0810CEF8: .4byte gUnknown_20370D2
-_0810CEFC:
- movs r0, 0
-_0810CEFE:
- pop {r1}
- bx r1
- thumb_func_end sub_810CED0
-
- thumb_func_start sub_810CF04
-sub_810CF04: @ 810CF04
- push {lr}
- lsls r0, 24
- lsrs r3, r0, 24
- lsls r0, r3, 3
- adds r0, r3
- lsls r0, 2
- ldr r1, _0810CF40 @ =gMapObjects
- adds r1, r0, r1
- ldrb r0, [r1]
- lsls r0, 31
- cmp r0, 0
- beq _0810CF4C
- ldr r0, _0810CF44 @ =gMapHeader
- ldr r0, [r0, 0x4]
- ldrb r0, [r0]
- ldrb r2, [r1, 0x8]
- cmp r0, r2
- bcc _0810CF4C
- ldr r2, _0810CF48 @ =gSprites
- ldrb r1, [r1, 0x4]
- lsls r0, r1, 4
- adds r0, r1
- lsls r0, 2
- adds r0, r2
- movs r1, 0x2E
- ldrsh r0, [r0, r1]
- cmp r0, r3
- bne _0810CF4C
- movs r0, 0x1
- b _0810CF4E
- .align 2, 0
-_0810CF40: .4byte gMapObjects
-_0810CF44: .4byte gMapHeader
-_0810CF48: .4byte gSprites
-_0810CF4C:
- movs r0, 0
-_0810CF4E:
- pop {r1}
- bx r1
- thumb_func_end sub_810CF04
-
- thumb_func_start sub_810CF54
-sub_810CF54: @ 810CF54
- push {lr}
- bl Random
- lsls r0, 16
- movs r1, 0xC0
- lsls r1, 10
- ands r1, r0
- lsrs r1, 16
- adds r0, r1, 0
- cmp r1, 0x1
- beq _0810CF8A
- cmp r1, 0x1
- bgt _0810CF74
- cmp r1, 0
- beq _0810CF7E
- b _0810CF8A
-_0810CF74:
- cmp r0, 0x2
- beq _0810CF82
- cmp r0, 0x3
- beq _0810CF86
- b _0810CF8A
-_0810CF7E:
- movs r0, 0x7
- b _0810CF8C
-_0810CF82:
- movs r0, 0x9
- b _0810CF8C
-_0810CF86:
- movs r0, 0xA
- b _0810CF8C
-_0810CF8A:
- movs r0, 0x8
-_0810CF8C:
- pop {r1}
- bx r1
- thumb_func_end sub_810CF54
-
- thumb_func_start sub_810CF90
-sub_810CF90: @ 810CF90
- push {lr}
- lsls r0, 24
- lsrs r0, 24
- subs r0, 0x11
- cmp r0, 0x2D
- bhi _0810D06C
- lsls r0, 2
- ldr r1, _0810CFA8 @ =_0810CFAC
- adds r0, r1
- ldr r0, [r0]
- mov pc, r0
- .align 2, 0
-_0810CFA8: .4byte _0810CFAC
- .align 2, 0
-_0810CFAC:
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D06C
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D06C
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D068
- .4byte _0810D064
- .4byte _0810D06C
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D068
- .4byte _0810D068
- .4byte _0810D064
- .4byte _0810D064
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D064
- .4byte _0810D06C
- .4byte _0810D064
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D06C
- .4byte _0810D064
-_0810D064:
- movs r0, 0x4E
- b _0810D06E
-_0810D068:
- movs r0, 0x4F
- b _0810D06E
-_0810D06C:
- movs r0, 0x4D
-_0810D06E:
- pop {r1}
- bx r1
- thumb_func_end sub_810CF90
-
- thumb_func_start sub_810D074
-sub_810D074: @ 810D074
- adds r0, 0x2
- ldrb r1, [r0]
- ldrb r0, [r0, 0x1]
- lsls r0, 8
- orrs r1, r0
- adds r0, r1, 0
- bx lr
- thumb_func_end sub_810D074
-
- thumb_func_start sub_810D084
-sub_810D084: @ 810D084
- push {lr}
- lsls r1, 16
- lsrs r1, 16
- movs r3, 0
- adds r2, r0, 0
-_0810D08E:
- ldrh r0, [r2]
- cmp r0, r1
- bne _0810D098
- adds r0, r3, 0
- b _0810D0A4
-_0810D098:
- adds r2, 0x10
- adds r3, 0x1
- cmp r3, 0xDC
- bls _0810D08E
- movs r0, 0x1
- negs r0, r0
-_0810D0A4:
- pop {r1}
- bx r1
- thumb_func_end sub_810D084
-
- thumb_func_start sub_810D0A8
-sub_810D0A8: @ 810D0A8
- push {lr}
- ldr r1, _0810D0C0 @ =gSaveBlock1Ptr
- ldr r1, [r1]
- ldr r2, _0810D0C4 @ =0x0000063a
- adds r1, r2
- adds r1, r0
- ldrb r0, [r1]
- cmp r0, 0
- beq _0810D0C8
- movs r0, 0x1
- b _0810D0CA
- .align 2, 0
-_0810D0C0: .4byte gSaveBlock1Ptr
-_0810D0C4: .4byte 0x0000063a
-_0810D0C8:
- movs r0, 0
-_0810D0CA:
- pop {r1}
- bx r1
- thumb_func_end sub_810D0A8
-
- thumb_func_start sub_810D0D0
-sub_810D0D0: @ 810D0D0
- push {r4,lr}
- movs r1, 0
- ldr r4, _0810D0F4 @ =gSaveBlock1Ptr
- ldr r3, _0810D0F8 @ =0x0000063a
- movs r2, 0
-_0810D0DA:
- ldr r0, [r4]
- adds r0, r3
- adds r0, r1
- strb r2, [r0]
- adds r0, r1, 0x1
- lsls r0, 24
- lsrs r1, r0, 24
- cmp r1, 0x63
- bls _0810D0DA
- pop {r4}
- pop {r0}
- bx r0
- .align 2, 0
-_0810D0F4: .4byte gSaveBlock1Ptr
-_0810D0F8: .4byte 0x0000063a
- thumb_func_end sub_810D0D0
-
- thumb_func_start sub_810D0FC
-sub_810D0FC: @ 810D0FC
- push {r4,r5,lr}
- sub sp, 0x4
- adds r5, r0, 0
- mov r4, sp
- adds r4, 0x2
- mov r0, sp
- adds r1, r4, 0
- bl PlayerGetDestCoords
- mov r1, sp
- mov r0, sp
- ldrh r0, [r0]
- subs r0, 0x7
- strh r0, [r1]
- ldrh r0, [r4]
- subs r0, 0x7
- strh r0, [r4]
- mov r0, sp
- movs r1, 0
- ldrsh r2, [r0, r1]
- subs r0, r2, 0x7
- movs r3, 0x8
- ldrsh r1, [r5, r3]
- cmp r0, r1
- bgt _0810D15A
- adds r0, r2, 0x7
- cmp r0, r1
- blt _0810D15A
- movs r0, 0
- ldrsh r1, [r4, r0]
- subs r0, r1, 0x5
- movs r3, 0xA
- ldrsh r2, [r5, r3]
- cmp r0, r2
- bgt _0810D15A
- adds r0, r1, 0x5
- cmp r0, r2
- blt _0810D15A
- ldrb r0, [r5, 0x7]
- bl sub_810CF04
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0810D15A
- movs r0, 0x1
- b _0810D15C
-_0810D15A:
- movs r0, 0
-_0810D15C:
- add sp, 0x4
- pop {r4,r5}
- pop {r1}
- bx r1
- thumb_func_end sub_810D0FC
-
- thumb_func_start sub_810D164
-sub_810D164: @ 810D164
- push {r4-r7,lr}
- lsls r1, 16
- lsrs r1, 16
- movs r4, 0
- adds r3, r0, 0
-_0810D16E:
- ldrh r0, [r3]
- cmp r0, r1
- bne _0810D1B8
- strb r4, [r2]
- movs r5, 0x1
- ldr r7, _0810D188 @ =0x0000ffff
- adds r4, r3, 0x2
- movs r6, 0
-_0810D17E:
- ldrh r0, [r4]
- cmp r0, 0
- bne _0810D18C
- lsrs r0, r6, 24
- b _0810D1C6
- .align 2, 0
-_0810D188: .4byte 0x0000ffff
-_0810D18C:
- cmp r0, r7
- beq _0810D1A2
- ldrh r0, [r4]
- bl HasTrainerAlreadyBeenFought
- lsls r0, 24
- cmp r0, 0
- bne _0810D1A2
- lsls r0, r5, 24
- lsrs r0, 24
- b _0810D1C6
-_0810D1A2:
- adds r4, 0x2
- movs r0, 0x80
- lsls r0, 17
- adds r6, r0
- adds r5, 0x1
- cmp r5, 0x5
- ble _0810D17E
- subs r0, r5, 0x1
- lsls r0, 24
- lsrs r0, 24
- b _0810D1C6
-_0810D1B8:
- adds r3, 0x10
- adds r4, 0x1
- cmp r4, 0xDC
- bls _0810D16E
- movs r0, 0
- strb r0, [r2]
- movs r0, 0
-_0810D1C6:
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_810D164
-
- thumb_func_start sub_810D1CC
-sub_810D1CC: @ 810D1CC
- push {r4-r7,lr}
- sub sp, 0x4
- movs r5, 0
- ldr r6, _0810D220 @ =gUnknown_203ADB8
- ldr r0, [r6]
- ldrb r0, [r0, 0x6]
- cmp r0, 0xFF
- beq _0810D23C
- adds r7, r6, 0
-_0810D1DE:
- lsls r4, r5, 4
- ldr r0, [r7]
- adds r0, r4
- bl sub_810D0FC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0810D228
- ldr r0, [r6]
- adds r0, r4
- ldrh r0, [r0, 0x4]
- bl HasTrainerAlreadyBeenFought
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0810D216
- ldr r0, [r7]
- adds r0, r4
- ldrh r1, [r0, 0x4]
- ldr r0, _0810D224 @ =gUnknown_845318C
- mov r2, sp
- bl sub_810D164
- lsls r0, 24
- cmp r0, 0
- beq _0810D228
-_0810D216:
- ldr r0, [r7]
- adds r0, r4
- ldrb r0, [r0, 0x6]
- b _0810D23E
- .align 2, 0
-_0810D220: .4byte gUnknown_203ADB8
-_0810D224: .4byte gUnknown_845318C
-_0810D228:
- adds r0, r5, 0x1
- lsls r0, 24
- lsrs r5, r0, 24
- ldr r6, _0810D248 @ =gUnknown_203ADB8
- ldr r0, [r6]
- lsls r1, r5, 4
- adds r0, r1
- ldrb r0, [r0, 0x6]
- cmp r0, 0xFF
- bne _0810D1DE
-_0810D23C:
- movs r0, 0xFF
-_0810D23E:
- add sp, 0x4
- pop {r4-r7}
- pop {r1}
- bx r1
- .align 2, 0
-_0810D248: .4byte gUnknown_203ADB8
- thumb_func_end sub_810D1CC
-
- thumb_func_start sub_810D24C
-sub_810D24C: @ 810D24C
- push {r4,r5,lr}
- adds r4, r0, 0
- adds r5, r1, 0
- ldrb r1, [r4, 0x7]
- lsls r0, r1, 3
- adds r0, r1
- lsls r0, 2
- ldr r1, _0810D278 @ =gMapObjects
- adds r0, r1
- bl npc_sync_anim_pause_bits
- ldrb r0, [r4, 0x6]
- ldr r1, _0810D27C @ =gSaveBlock1Ptr
- ldr r2, [r1]
- ldrb r1, [r2, 0x5]
- ldrb r2, [r2, 0x4]
- adds r3, r5, 0
- bl ScriptMovement_StartObjectMovementScript
- pop {r4,r5}
- pop {r0}
- bx r0
- .align 2, 0
-_0810D278: .4byte gMapObjects
-_0810D27C: .4byte gSaveBlock1Ptr
- thumb_func_end sub_810D24C
-
- thumb_func_start sub_810D280
-sub_810D280: @ 810D280
- push {r4-r7,lr}
- mov r7, r8
- push {r7}
- adds r6, r0, 0
- lsls r1, 16
- lsrs r1, 16
- mov r8, r1
- movs r5, 0
- cmp r5, r6
- bge _0810D2F8
- ldr r7, _0810D2E0 @ =gUnknown_203ADB8
- movs r4, 0
-_0810D298:
- ldr r0, [r7]
- adds r0, r4
- bl sub_810D0FC
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0810D2F0
- ldr r1, [r7]
- adds r0, r1, r4
- ldrh r0, [r0, 0x4]
- cmp r0, r8
- bne _0810D2F0
- movs r3, 0
- movs r2, 0x86
- lsls r2, 3
- adds r0, r1, r2
- ldrb r0, [r0]
- cmp r3, r0
- bge _0810D2EC
- ldr r0, _0810D2E0 @ =gUnknown_203ADB8
- ldr r1, [r0]
- adds r0, r1, r4
- ldrh r4, [r0, 0x4]
- movs r0, 0x80
- lsls r0, 3
- adds r2, r1, r0
- adds r0, 0x30
- adds r1, r0
- ldrb r1, [r1]
-_0810D2D4:
- ldrh r0, [r2]
- cmp r0, r4
- bne _0810D2E4
- movs r0, 0x2
- b _0810D2FA
- .align 2, 0
-_0810D2E0: .4byte gUnknown_203ADB8
-_0810D2E4:
- adds r2, 0x2
- adds r3, 0x1
- cmp r3, r1
- blt _0810D2D4
-_0810D2EC:
- movs r0, 0x1
- b _0810D2FA
-_0810D2F0:
- adds r4, 0x10
- adds r5, 0x1
- cmp r5, r6
- blt _0810D298
-_0810D2F8:
- movs r0, 0
-_0810D2FA:
- pop {r3}
- mov r8, r3
- pop {r4-r7}
- pop {r1}
- bx r1
- thumb_func_end sub_810D280
-
- thumb_func_start sub_810D304
-sub_810D304: @ 810D304
- push {r4-r7,lr}
- mov r7, r10
- mov r6, r9
- mov r5, r8
- push {r5-r7}
- sub sp, 0x4
- movs r1, 0
- mov r0, sp
- strb r1, [r0]
- movs r7, 0
- ldr r2, _0810D328 @ =gUnknown_203ADB8
- ldr r0, [r2]
- movs r1, 0x86
- lsls r1, 3
- adds r0, r1
- mov r10, r2
- b _0810D3CC
- .align 2, 0
-_0810D328: .4byte gUnknown_203ADB8
-_0810D32C:
- ldr r0, [r2]
- ldrb r0, [r0, 0x6]
- adds r3, r7, 0x1
- mov r8, r3
- cmp r0, 0xFF
- beq _0810D3C0
- adds r5, r2, 0
- mov r10, r5
- movs r6, 0
- mov r9, r5
-_0810D340:
- ldr r0, [r5]
- adds r2, r0, r6
- lsls r1, r7, 1
- movs r3, 0x80
- lsls r3, 3
- adds r0, r3
- adds r0, r1
- ldrh r1, [r2, 0x4]
- ldrh r0, [r0]
- cmp r1, r0
- bne _0810D3B2
- ldrb r0, [r2, 0x7]
- lsls r1, r0, 3
- adds r1, r0
- lsls r1, 2
- ldr r2, _0810D3E4 @ =gMapObjects
- adds r4, r1, r2
- bl sub_810CF04
- lsls r0, 24
- lsrs r0, 24
- cmp r0, 0x1
- bne _0810D380
- ldr r0, [r5]
- movs r1, 0x84
- lsls r1, 3
- adds r0, r1
- adds r0, r7
- ldrb r1, [r0]
- adds r0, r4, 0
- bl npc_set_running_behaviour_etc
-_0810D380:
- ldr r0, [r5]
- movs r3, 0x84
- lsls r3, 3
- adds r0, r3
- adds r0, r7
- ldrb r1, [r0]
- adds r0, r4, 0
- bl sub_805FE7C
- ldr r0, [r5]
- adds r0, r6
- ldrh r1, [r0, 0x4]
- ldr r0, _0810D3E8 @ =gUnknown_845318C
- mov r2, sp
- bl sub_810D164
- ldr r1, _0810D3EC @ =gSaveBlock1Ptr
- ldr r1, [r1]
- ldr r2, [r5]
- adds r2, r6
- ldr r3, _0810D3F0 @ =0x0000063a
- adds r1, r3
- ldrb r2, [r2, 0x6]
- adds r1, r2
- strb r0, [r1]
-_0810D3B2:
- adds r6, 0x10
- mov r1, r9
- ldr r0, [r1]
- adds r0, r6
- ldrb r0, [r0, 0x6]
- cmp r0, 0xFF
- bne _0810D340
-_0810D3C0:
- mov r7, r8
- mov r2, r10
- ldr r0, [r2]
- movs r3, 0x86
- lsls r3, 3
- adds r0, r3
-_0810D3CC:
- ldrb r0, [r0]
- cmp r7, r0
- blt _0810D32C
- add sp, 0x4
- pop {r3-r5}
- mov r8, r3
- mov r9, r4
- mov r10, r5
- pop {r4-r7}
- pop {r0}
- bx r0
- .align 2, 0
-_0810D3E4: .4byte gMapObjects
-_0810D3E8: .4byte gUnknown_845318C
-_0810D3EC: .4byte gSaveBlock1Ptr
-_0810D3F0: .4byte 0x0000063a
- thumb_func_end sub_810D304
-
- .align 2, 0 @ Don't pad with nop.
diff --git a/asm/wild_encounter.s b/asm/wild_encounter.s
index 45fdc3612..c57ca5366 100644
--- a/asm/wild_encounter.s
+++ b/asm/wild_encounter.s
@@ -878,7 +878,7 @@ _08082D78:
bl sub_8058F1C
lsls r0, 24
lsrs r0, 24
- bl sub_8059F58
+ bl MetatileBehavior_ReturnFalse_6
lsls r0, 24
lsrs r0, 24
cmp r0, 0x1
diff --git a/build_tools.sh b/build_tools.sh
index f384c2d99..f384c2d99 100644..100755
--- a/build_tools.sh
+++ b/build_tools.sh
diff --git a/data/data.s b/data/data.s
index 1c4806436..5ddda46f6 100644
--- a/data/data.s
+++ b/data/data.s
@@ -795,2225 +795,3 @@ gUnknown_8352F18:: @ 8352F18
.align 2
gUnknown_8352F4C:: @ 8352F4C
.asciz "VMap.Xsize * VMap.Ysize <= VIRTUAL_MAP_SIZE"
-
-gUnknown_8352F78:: @ 8352F78
- .incbin "baserom.gba", 0x352F78, 0xF0
-
-gUnknown_8353068:: @ 8353068
- .incbin "baserom.gba", 0x353068, 0x8420
-
-gUnknown_835B488:: @ 835B488
- .incbin "baserom.gba", 0x35B488, 0x14
-
-gUnknown_835B49C:: @ 835B49C
- .incbin "baserom.gba", 0x35B49C, 0x14
-
-gUnknown_835B4B0:: @ 835B4B0
- .incbin "baserom.gba", 0x35B4B0, 0x14
-
-gUnknown_835B4C4:: @ 835B4C4
- .incbin "baserom.gba", 0x35B4C4, 0x114
-
-gUnknown_835B5D8:: @ 835B5D8
- .incbin "baserom.gba", 0x35B5D8, 0x18C
-
-gUnknown_835B764:: @ 835B764
- .incbin "baserom.gba", 0x35B764, 0xB0
-
-gUnknown_835B814:: @ 835B814
- .incbin "baserom.gba", 0x35B814, 0xC
-
-gUnknown_835B820:: @ 835B820
- .incbin "baserom.gba", 0x35B820, 0x8
-
-gUnknown_835B828:: @ 835B828
- .incbin "baserom.gba", 0x35B828, 0x14
-
-gUnknown_835B83C:: @ 835B83C
- .incbin "baserom.gba", 0x35B83C, 0x8
-
-gUnknown_835B844:: @ 835B844
- .incbin "baserom.gba", 0x35B844, 0x20
-
-gUnknown_835B864:: @ 835B864
- .incbin "baserom.gba", 0x35B864, 0x10
-
-gUnknown_835B874:: @ 835B874
- .incbin "baserom.gba", 0x35B874, 0xC
-
-gUnknown_835B880:: @ 835B880
- .incbin "baserom.gba", 0x35B880, 0x2
-
-gUnknown_835B882:: @ 835B882
- .incbin "baserom.gba", 0x35B882, 0xC
-
-gUnknown_835B88E:: @ 835B88E
- .incbin "baserom.gba", 0x35B88E, 0x2
-
-gUnknown_835B890:: @ 835B890
- .incbin "baserom.gba", 0x35B890, 0x10
-
-gUnknown_835B8A0:: @ 835B8A0
- .incbin "baserom.gba", 0x35B8A0, 0xC
-
-gUnknown_835B8AC:: @ 835B8AC
- .incbin "baserom.gba", 0x35B8AC, 0x4
-
-gUnknown_835B8B0:: @ 835B8B0
- .incbin "baserom.gba", 0x35B8B0, 0x10
-
-gUnknown_835B8C0:: @ 835B8C0
- .incbin "baserom.gba", 0x35B8C0, 0x4
-
-gUnknown_835B8C4:: @ 835B8C4
- .incbin "baserom.gba", 0x35B8C4, 0x8
-
-gUnknown_835B8CC:: @ 835B8CC
- .incbin "baserom.gba", 0x35B8CC, 0x40
-
-gUnknown_835B90C:: @ 835B90C
- .incbin "baserom.gba", 0x35B90C, 0x6
-
-gUnknown_835B912:: @ 835B912
- .incbin "baserom.gba", 0x35B912, 0x6
-
-gUnknown_835B918:: @ 835B918
- .incbin "baserom.gba", 0x35B918, 0x2
-
-gUnknown_835B91A:: @ 835B91A
- .incbin "baserom.gba", 0x35B91A, 0x6
-
-gUnknown_835B920:: @ 835B920
- .incbin "baserom.gba", 0x35B920, 0xC
-
-gUnknown_835B92C:: @ 835B92C
- .incbin "baserom.gba", 0x35B92C, 0x8
-
-gUnknown_835B934:: @ 835B934
- .incbin "baserom.gba", 0x35B934, 0x10
-
-gUnknown_835B944:: @ 835B944
- .incbin "baserom.gba", 0x35B944, 0x18
-
-gUnknown_835B95C:: @ 835B95C
- .incbin "baserom.gba", 0x35B95C, 0x3DA2C
-
-gUnknown_8399388:: @ 8399388
- .incbin "baserom.gba", 0x399388, 0x908
-
-gUnknown_8399C90:: @ 8399C90
- .incbin "baserom.gba", 0x399C90, 0x5F38
-
-gUnknown_839FBC8:: @ 839FBC8
- .incbin "baserom.gba", 0x39FBC8, 0x144
-
-gUnknown_839FD0C:: @ 839FD0C
- .incbin "baserom.gba", 0x39FD0C, 0x51
-
-gUnknown_839FD5D:: @ 839FD5D
- .incbin "baserom.gba", 0x39FD5D, 0x53
-
-gUnknown_839FDB0:: @ 839FDB0
- .incbin "baserom.gba", 0x39FDB0, 0x260
-
-gUnknown_83A0010:: @ 83A0010
- .incbin "baserom.gba", 0x3A0010, 0x3688
-
-gUnknown_83A3698:: @ 83A3698
- .incbin "baserom.gba", 0x3A3698, 0x1AC0
-
-gUnknown_83A5158:: @ 83A5158
- .incbin "baserom.gba", 0x3A5158, 0xB0
-
-gUnknown_83A5208:: @ 83A5208
- .incbin "baserom.gba", 0x3A5208, 0x70
-
-gUnknown_83A5278:: @ 83A5278
- .incbin "baserom.gba", 0x3A5278, 0xB8
-
-gUnknown_83A5330:: @ 83A5330
- .incbin "baserom.gba", 0x3A5330, 0x18
-
-gUnknown_83A5348:: @ 83A5348
- .incbin "baserom.gba", 0x3A5348, 0xCB8
-
-gUnknown_83A6000:: @ 83A6000
- .incbin "baserom.gba", 0x3A6000, 0x10
-
-gUnknown_83A6010:: @ 83A6010
- .incbin "baserom.gba", 0x3A6010, 0x8
-
-gUnknown_83A6018:: @ 83A6018
- .incbin "baserom.gba", 0x3A6018, 0x1C
-
-gUnknown_83A6034:: @ 83A6034
- .incbin "baserom.gba", 0x3A6034, 0x1C
-
-gUnknown_83A6050:: @ 83A6050
- .incbin "baserom.gba", 0x3A6050, 0x4
-
-gUnknown_83A6054:: @ 83A6054
- .incbin "baserom.gba", 0x3A6054, 0x2C
-
-gUnknown_83A6080:: @ 83A6080
- .incbin "baserom.gba", 0x3A6080, 0x14
-
-gUnknown_83A6094:: @ 83A6094
- .incbin "baserom.gba", 0x3A6094, 0x1C
-
-gUnknown_83A60B0:: @ 83A60B0
- .incbin "baserom.gba", 0x3A60B0, 0x4
-
-gUnknown_83A60B4:: @ 83A60B4
- .incbin "baserom.gba", 0x3A60B4, 0x1C
-
-gUnknown_83A60D0:: @ 83A60D0
- .incbin "baserom.gba", 0x3A60D0, 0x4
-
-gUnknown_83A60D4:: @ 83A60D4
- .incbin "baserom.gba", 0x3A60D4, 0xC
-
-gUnknown_83A60E0:: @ 83A60E0
- .incbin "baserom.gba", 0x3A60E0, 0x14
-
-gUnknown_83A60F4:: @ 83A60F4
- .incbin "baserom.gba", 0x3A60F4, 0x14
-
-gUnknown_83A6108:: @ 83A6108
- .incbin "baserom.gba", 0x3A6108, 0x14
-
-gUnknown_83A611C:: @ 83A611C
- .incbin "baserom.gba", 0x3A611C, 0x4
-
-gUnknown_83A6120:: @ 83A6120
- .incbin "baserom.gba", 0x3A6120, 0x14
-
-gUnknown_83A6134:: @ 83A6134
- .incbin "baserom.gba", 0x3A6134, 0x4
-
-gUnknown_83A6138:: @ 83A6138
- .incbin "baserom.gba", 0x3A6138, 0x14
-
-gUnknown_83A614C:: @ 83A614C
- .incbin "baserom.gba", 0x3A614C, 0x4
-
-gUnknown_83A6150:: @ 83A6150
- .incbin "baserom.gba", 0x3A6150, 0x14
-
-gUnknown_83A6164:: @ 83A6164
- .incbin "baserom.gba", 0x3A6164, 0x4
-
-gUnknown_83A6168:: @ 83A6168
- .incbin "baserom.gba", 0x3A6168, 0x14
-
-gUnknown_83A617C:: @ 83A617C
- .incbin "baserom.gba", 0x3A617C, 0x4
-
-gUnknown_83A6180:: @ 83A6180
- .incbin "baserom.gba", 0x3A6180, 0x14
-
-gUnknown_83A6194:: @ 83A6194
- .incbin "baserom.gba", 0x3A6194, 0x4
-
-gUnknown_83A6198:: @ 83A6198
- .incbin "baserom.gba", 0x3A6198, 0x14
-
-gUnknown_83A61AC:: @ 83A61AC
- .incbin "baserom.gba", 0x3A61AC, 0x4
-
-gUnknown_83A61B0:: @ 83A61B0
- .incbin "baserom.gba", 0x3A61B0, 0x14
-
-gUnknown_83A61C4:: @ 83A61C4
- .incbin "baserom.gba", 0x3A61C4, 0x4
-
-gUnknown_83A61C8:: @ 83A61C8
- .incbin "baserom.gba", 0x3A61C8, 0x10
-
-gUnknown_83A61D8:: @ 83A61D8
- .incbin "baserom.gba", 0x3A61D8, 0x8
-
-gUnknown_83A61E0:: @ 83A61E0
- .incbin "baserom.gba", 0x3A61E0, 0x10
-
-gUnknown_83A61F0:: @ 83A61F0
- .incbin "baserom.gba", 0x3A61F0, 0x8
-
-gUnknown_83A61F8:: @ 83A61F8
- .incbin "baserom.gba", 0x3A61F8, 0x10
-
-gUnknown_83A6208:: @ 83A6208
- .incbin "baserom.gba", 0x3A6208, 0xC
-
-gUnknown_83A6214:: @ 83A6214
- .incbin "baserom.gba", 0x3A6214, 0x4
-
-gUnknown_83A6218:: @ 83A6218
- .incbin "baserom.gba", 0x3A6218, 0xC
-
-gUnknown_83A6224:: @ 83A6224
- .incbin "baserom.gba", 0x3A6224, 0x4
-
-gUnknown_83A6228:: @ 83A6228
- .incbin "baserom.gba", 0x3A6228, 0xC
-
-gUnknown_83A6234:: @ 83A6234
- .incbin "baserom.gba", 0x3A6234, 0x4
-
-gUnknown_83A6238:: @ 83A6238
- .incbin "baserom.gba", 0x3A6238, 0xC
-
-gUnknown_83A6244:: @ 83A6244
- .incbin "baserom.gba", 0x3A6244, 0x4
-
-gUnknown_83A6248:: @ 83A6248
- .incbin "baserom.gba", 0x3A6248, 0xC
-
-gUnknown_83A6254:: @ 83A6254
- .incbin "baserom.gba", 0x3A6254, 0x4
-
-gUnknown_83A6258:: @ 83A6258
- .incbin "baserom.gba", 0x3A6258, 0xC
-
-gUnknown_83A6264:: @ 83A6264
- .incbin "baserom.gba", 0x3A6264, 0x4
-
-gUnknown_83A6268:: @ 83A6268
- .incbin "baserom.gba", 0x3A6268, 0xC
-
-gUnknown_83A6274:: @ 83A6274
- .incbin "baserom.gba", 0x3A6274, 0xC
-
-gUnknown_83A6280:: @ 83A6280
- .incbin "baserom.gba", 0x3A6280, 0x4
-
-gUnknown_83A6284:: @ 83A6284
- .incbin "baserom.gba", 0x3A6284, 0xC
-
-gUnknown_83A6290:: @ 83A6290
- .incbin "baserom.gba", 0x3A6290, 0x4
-
-gUnknown_83A6294:: @ 83A6294
- .incbin "baserom.gba", 0x3A6294, 0xC
-
-gUnknown_83A62A0:: @ 83A62A0
- .incbin "baserom.gba", 0x3A62A0, 0x4
-
-gUnknown_83A62A4:: @ 83A62A4
- .incbin "baserom.gba", 0x3A62A4, 0xC
-
-gUnknown_83A62B0:: @ 83A62B0
- .incbin "baserom.gba", 0x3A62B0, 0x4
-
-gUnknown_83A62B4:: @ 83A62B4
- .incbin "baserom.gba", 0x3A62B4, 0xC
-
-gUnknown_83A62C0:: @ 83A62C0
- .incbin "baserom.gba", 0x3A62C0, 0x4
-
-gUnknown_83A62C4:: @ 83A62C4
- .incbin "baserom.gba", 0x3A62C4, 0xC
-
-gUnknown_83A62D0:: @ 83A62D0
- .incbin "baserom.gba", 0x3A62D0, 0x4
-
-gUnknown_83A62D4:: @ 83A62D4
- .incbin "baserom.gba", 0x3A62D4, 0xC
-
-gUnknown_83A62E0:: @ 83A62E0
- .incbin "baserom.gba", 0x3A62E0, 0x4
-
-gUnknown_83A62E4:: @ 83A62E4
- .incbin "baserom.gba", 0x3A62E4, 0xC
-
-gUnknown_83A62F0:: @ 83A62F0
- .incbin "baserom.gba", 0x3A62F0, 0x4
-
-gUnknown_83A62F4:: @ 83A62F4
- .incbin "baserom.gba", 0x3A62F4, 0xC
-
-gUnknown_83A6300:: @ 83A6300
- .incbin "baserom.gba", 0x3A6300, 0x4
-
-gUnknown_83A6304:: @ 83A6304
- .incbin "baserom.gba", 0x3A6304, 0xC
-
-gUnknown_83A6310:: @ 83A6310
- .incbin "baserom.gba", 0x3A6310, 0x4
-
-gUnknown_83A6314:: @ 83A6314
- .incbin "baserom.gba", 0x3A6314, 0xC
-
-gUnknown_83A6320:: @ 83A6320
- .incbin "baserom.gba", 0x3A6320, 0x4
-
-gUnknown_83A6324:: @ 83A6324
- .incbin "baserom.gba", 0x3A6324, 0xC
-
-gUnknown_83A6330:: @ 83A6330
- .incbin "baserom.gba", 0x3A6330, 0x4
-
-gUnknown_83A6334:: @ 83A6334
- .incbin "baserom.gba", 0x3A6334, 0xC
-
-gUnknown_83A6340:: @ 83A6340
- .incbin "baserom.gba", 0x3A6340, 0x4
-
-gUnknown_83A6344:: @ 83A6344
- .incbin "baserom.gba", 0x3A6344, 0xC
-
-gUnknown_83A6350:: @ 83A6350
- .incbin "baserom.gba", 0x3A6350, 0x4
-
-gUnknown_83A6354:: @ 83A6354
- .incbin "baserom.gba", 0x3A6354, 0xC
-
-gUnknown_83A6360:: @ 83A6360
- .incbin "baserom.gba", 0x3A6360, 0x4
-
-gUnknown_83A6364:: @ 83A6364
- .incbin "baserom.gba", 0x3A6364, 0xC
-
-gUnknown_83A6370:: @ 83A6370
- .incbin "baserom.gba", 0x3A6370, 0x4
-
-gUnknown_83A6374:: @ 83A6374
- .incbin "baserom.gba", 0x3A6374, 0xC
-
-gUnknown_83A6380:: @ 83A6380
- .incbin "baserom.gba", 0x3A6380, 0x4
-
-gUnknown_83A6384:: @ 83A6384
- .incbin "baserom.gba", 0x3A6384, 0xC
-
-gUnknown_83A6390:: @ 83A6390
- .incbin "baserom.gba", 0x3A6390, 0x2C
-
-gUnknown_83A63BC:: @ 83A63BC
- .incbin "baserom.gba", 0x3A63BC, 0xC
-
-gUnknown_83A63C8:: @ 83A63C8
- .incbin "baserom.gba", 0x3A63C8, 0x4
-
-gUnknown_83A63CC:: @ 83A63CC
- .incbin "baserom.gba", 0x3A63CC, 0x8
-
-gUnknown_83A63D4:: @ 83A63D4
- .incbin "baserom.gba", 0x3A63D4, 0x8
-
-gUnknown_83A63DC:: @ 83A63DC
- .incbin "baserom.gba", 0x3A63DC, 0x8
-
-gUnknown_83A63E4:: @ 83A63E4
- .incbin "baserom.gba", 0x3A63E4, 0xC
-
-gUnknown_83A63F0:: @ 83A63F0
- .incbin "baserom.gba", 0x3A63F0, 0xC
-
-gUnknown_83A63FC:: @ 83A63FC
- .incbin "baserom.gba", 0x3A63FC, 0x8
-
-gUnknown_83A6404:: @ 83A6404
- .incbin "baserom.gba", 0x3A6404, 0x8
-
-gUnknown_83A640C:: @ 83A640C
- .incbin "baserom.gba", 0x3A640C, 0x9
-
-gUnknown_83A6415:: @ 83A6415
- .incbin "baserom.gba", 0x3A6415, 0x9
-
-gUnknown_83A641E:: @ 83A641E
- .incbin "baserom.gba", 0x3A641E, 0x9
-
-gUnknown_83A6427:: @ 83A6427
- .incbin "baserom.gba", 0x3A6427, 0x9
-
-gUnknown_83A6430:: @ 83A6430
- .incbin "baserom.gba", 0x3A6430, 0x9
-
-gUnknown_83A6439:: @ 83A6439
- .incbin "baserom.gba", 0x3A6439, 0x9
-
-gUnknown_83A6442:: @ 83A6442
- .incbin "baserom.gba", 0x3A6442, 0x9
-
-gUnknown_83A644B:: @ 83A644B
- .incbin "baserom.gba", 0x3A644B, 0x9
-
-gUnknown_83A6454:: @ 83A6454
- .incbin "baserom.gba", 0x3A6454, 0x9
-
-gUnknown_83A645D:: @ 83A645D
- .incbin "baserom.gba", 0x3A645D, 0x9
-
-gUnknown_83A6466:: @ 83A6466
- .incbin "baserom.gba", 0x3A6466, 0x9
-
-gUnknown_83A646F:: @ 83A646F
- .incbin "baserom.gba", 0x3A646F, 0x9
-
-gUnknown_83A6478:: @ 83A6478
- .incbin "baserom.gba", 0x3A6478, 0x9
-
-gUnknown_83A6481:: @ 83A6481
- .incbin "baserom.gba", 0x3A6481, 0x9
-
-gUnknown_83A648A:: @ 83A648A
- .incbin "baserom.gba", 0x3A648A, 0x9
-
-gUnknown_83A6493:: @ 83A6493
- .incbin "baserom.gba", 0x3A6493, 0x9
-
-gUnknown_83A649C:: @ 83A649C
- .incbin "baserom.gba", 0x3A649C, 0xC
-
-gUnknown_83A64A8:: @ 83A64A8
- .incbin "baserom.gba", 0x3A64A8, 0x10
-
-gUnknown_83A64B8:: @ 83A64B8
- .incbin "baserom.gba", 0x3A64B8, 0x10
-
-gUnknown_83A64C8:: @ 83A64C8
- .incbin "baserom.gba", 0x3A64C8, 0x24
-
-gUnknown_83A64EC:: @ 83A64EC
- .incbin "baserom.gba", 0x3A64EC, 0x5
-
-gUnknown_83A64F1:: @ 83A64F1
- .incbin "baserom.gba", 0x3A64F1, 0x5
-
-gUnknown_83A64F6:: @ 83A64F6
- .incbin "baserom.gba", 0x3A64F6, 0x5
-
-gUnknown_83A64FB:: @ 83A64FB
- .incbin "baserom.gba", 0x3A64FB, 0x5
-
-gUnknown_83A6500:: @ 83A6500
- .incbin "baserom.gba", 0x3A6500, 0x5
-
-gUnknown_83A6505:: @ 83A6505
- .incbin "baserom.gba", 0x3A6505, 0x5
-
-gUnknown_83A650A:: @ 83A650A
- .incbin "baserom.gba", 0x3A650A, 0x5
-
-gUnknown_83A650F:: @ 83A650F
- .incbin "baserom.gba", 0x3A650F, 0x5
-
-gUnknown_83A6514:: @ 83A6514
- .incbin "baserom.gba", 0x3A6514, 0x5
-
-gUnknown_83A6519:: @ 83A6519
- .incbin "baserom.gba", 0x3A6519, 0x5
-
-gUnknown_83A651E:: @ 83A651E
- .incbin "baserom.gba", 0x3A651E, 0x5
-
-gUnknown_83A6523:: @ 83A6523
- .incbin "baserom.gba", 0x3A6523, 0x5
-
-gUnknown_83A6528:: @ 83A6528
- .incbin "baserom.gba", 0x3A6528, 0x5
-
-gUnknown_83A652D:: @ 83A652D
- .incbin "baserom.gba", 0x3A652D, 0x5
-
-gUnknown_83A6532:: @ 83A6532
- .incbin "baserom.gba", 0x3A6532, 0x5
-
-gUnknown_83A6537:: @ 83A6537
- .incbin "baserom.gba", 0x3A6537, 0x5
-
-gUnknown_83A653C:: @ 83A653C
- .incbin "baserom.gba", 0x3A653C, 0x5
-
-gUnknown_83A6541:: @ 83A6541
- .incbin "baserom.gba", 0x3A6541, 0x5
-
-gUnknown_83A6546:: @ 83A6546
- .incbin "baserom.gba", 0x3A6546, 0x5
-
-gUnknown_83A654B:: @ 83A654B
- .incbin "baserom.gba", 0x3A654B, 0x5
-
-gUnknown_83A6550:: @ 83A6550
- .incbin "baserom.gba", 0x3A6550, 0x5
-
-gUnknown_83A6555:: @ 83A6555
- .incbin "baserom.gba", 0x3A6555, 0x5
-
-gUnknown_83A655A:: @ 83A655A
- .incbin "baserom.gba", 0x3A655A, 0x5
-
-gUnknown_83A655F:: @ 83A655F
- .incbin "baserom.gba", 0x3A655F, 0x5
-
-gUnknown_83A6564:: @ 83A6564
- .incbin "baserom.gba", 0x3A6564, 0x5
-
-gUnknown_83A6569:: @ 83A6569
- .incbin "baserom.gba", 0x3A6569, 0x5
-
-gUnknown_83A656E:: @ 83A656E
- .incbin "baserom.gba", 0x3A656E, 0x5
-
-gUnknown_83A6573:: @ 83A6573
- .incbin "baserom.gba", 0x3A6573, 0x5
-
-gUnknown_83A6578:: @ 83A6578
- .incbin "baserom.gba", 0x3A6578, 0x5
-
-gUnknown_83A657D:: @ 83A657D
- .incbin "baserom.gba", 0x3A657D, 0x5
-
-gUnknown_83A6582:: @ 83A6582
- .incbin "baserom.gba", 0x3A6582, 0x5
-
-gUnknown_83A6587:: @ 83A6587
- .incbin "baserom.gba", 0x3A6587, 0x5
-
-gUnknown_83A658C:: @ 83A658C
- .incbin "baserom.gba", 0x3A658C, 0x5
-
-gUnknown_83A6591:: @ 83A6591
- .incbin "baserom.gba", 0x3A6591, 0x8
-
-gUnknown_83A6599:: @ 83A6599
- .incbin "baserom.gba", 0x3A6599, 0x10
-
-gUnknown_83A65A9:: @ 83A65A9
- .incbin "baserom.gba", 0x3A65A9, 0x13
-
-gUnknown_83A65BC:: @ 83A65BC
- .incbin "baserom.gba", 0x3A65BC, 0x2C8
-
-gUnknown_83A6884:: @ 83A6884
- .incbin "baserom.gba", 0x3A6884, 0xD4
-
-gUnknown_83A6958:: @ 83A6958
- .incbin "baserom.gba", 0x3A6958, 0x6
-
-gUnknown_83A695E:: @ 83A695E
- .incbin "baserom.gba", 0x3A695E, 0x6C6
-
-gUnknown_83A7024:: @ 83A7024
- .incbin "baserom.gba", 0x3A7024, 0x8
-
-gUnknown_83A702C:: @ 83A702C
- .incbin "baserom.gba", 0x3A702C, 0x18
-
-gUnknown_83A7044:: @ 83A7044
- .incbin "baserom.gba", 0x3A7044, 0x18
-
-gUnknown_83A705C:: @ 83A705C
- .incbin "baserom.gba", 0x3A705C, 0x10
-
-gUnknown_83A706C:: @ 83A706C
- .incbin "baserom.gba", 0x3A706C, 0x10
-
-gUnknown_83A707C:: @ 83A707C
- .incbin "baserom.gba", 0x3A707C, 0x10
-
-gUnknown_83A708C:: @ 83A708C
- .incbin "baserom.gba", 0x3A708C, 0x10
-
-gUnknown_83A709C:: @ 83A709C
- .incbin "baserom.gba", 0x3A709C, 0xC
-
-gUnknown_83A70A8:: @ 83A70A8
- .incbin "baserom.gba", 0x3A70A8, 0x4
-
-gUnknown_83A70AC:: @ 83A70AC
- .incbin "baserom.gba", 0x3A70AC, 0x10
-
-gUnknown_83A70BC:: @ 83A70BC
- .incbin "baserom.gba", 0x3A70BC, 0xE0
-
-gUnknown_83A719C:: @ 83A719C
- .incbin "baserom.gba", 0x3A719C, 0x14
-
-gUnknown_83A71B0:: @ 83A71B0
- .incbin "baserom.gba", 0x3A71B0, 0x3C
-
-gUnknown_83A71EC:: @ 83A71EC
- .incbin "baserom.gba", 0x3A71EC, 0xC
-
-gUnknown_83A71F8:: @ 83A71F8
- .incbin "baserom.gba", 0x3A71F8, 0x6
-
-gUnknown_83A71FE:: @ 83A71FE
- .incbin "baserom.gba", 0x3A71FE, 0x4
-
-gUnknown_83A7202:: @ 83A7202
- .incbin "baserom.gba", 0x3A7202, 0x6
-
-gUnknown_83A7208:: @ 83A7208
- .incbin "baserom.gba", 0x3A7208, 0x4
-
- .align 2
-gUnknown_83A720C:: @ 83A720C
- .asciz "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/evobjmv.c"
-
- .align 2
-gUnknown_83A7240:: @ 83A7240
- .asciz "0"
-
- .align 2
-gNullScriptPtr:: @ 83A7244
- .incbin "baserom.gba", 0x3A7244, 0x4
-
-gUnknown_83A7248:: @ 83A7248
- .incbin "baserom.gba", 0x3A7248, 0x14
-
-gUnknown_83A725C:: @ 83A725C
- .asciz "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/scrcmd.c"
-
- .align 2
-gUnknown_83A7290:: @ 83A7290
- .asciz "0"
-
- .align 2
-gUnknown_83A7294:: @ 83A7294
- .incbin "baserom.gba", 0x3A7294, 0xC
-
-gUnknown_83A72A0:: @ 83A72A0
- .incbin "baserom.gba", 0x3A72A0, 0x2
-
-gUnknown_83A72A2:: @ 83A72A2
- .incbin "baserom.gba", 0x3A72A2, 0x6
-
-gUnknown_83A72A8:: @ 83A72A8
- .incbin "baserom.gba", 0x3A72A8, 0x68
-
-gUnknown_83A7310:: @ 83A7310
- .incbin "baserom.gba", 0x3A7310, 0x20
-
-gUnknown_83A7330:: @ 83A7330
- .incbin "baserom.gba", 0x3A7330, 0x14
-
-gUnknown_83A7344:: @ 83A7344
- .incbin "baserom.gba", 0x3A7344, 0x48
-
-gUnknown_83A738C:: @ 83A738C
- .incbin "baserom.gba", 0x3A738C, 0x8
-
-gUnknown_83A7394:: @ 83A7394
- .incbin "baserom.gba", 0x3A7394, 0x24
-
-gUnknown_83A73B8:: @ 83A73B8
- .incbin "baserom.gba", 0x3A73B8, 0x4
-
-gUnknown_83A73BC:: @ 83A73BC
- .incbin "baserom.gba", 0x3A73BC, 0x10
-
-gUnknown_83A73CC:: @ 83A73CC
- .incbin "baserom.gba", 0x3A73CC, 0x8
-
-gUnknown_83A73D4:: @ 83A73D4
- .incbin "baserom.gba", 0x3A73D4, 0x4
-
-gUnknown_83A73D8:: @ 83A73D8
- .incbin "baserom.gba", 0x3A73D8, 0x4
-
-gUnknown_83A73DC:: @ 83A73DC
- .incbin "baserom.gba", 0x3A73DC, 0x284
-
-gUnknown_83A7660:: @ 83A7660
- .incbin "baserom.gba", 0x3A7660, 0x2FF4
-
-gUnknown_83AA654:: @ 83AA654
- .incbin "baserom.gba", 0x3AA654, 0x1220
-
-gUnknown_83AB874:: @ 83AB874
- .incbin "baserom.gba", 0x3AB874, 0x540
-
-gUnknown_83ABDB4:: @ 83ABDB4
- .incbin "baserom.gba", 0x3ABDB4, 0x434
-
-gUnknown_83AC1E8:: @ 83AC1E8
- .incbin "baserom.gba", 0x3AC1E8, 0x410
-
-gUnknown_83AC5F8:: @ 83AC5F8
- .incbin "baserom.gba", 0x3AC5F8, 0x1D0
-
-gUnknown_83AC7C8:: @ 83AC7C8
- .incbin "baserom.gba", 0x3AC7C8, 0x188
-
-gUnknown_83AC950:: @ 83AC950
- .incbin "baserom.gba", 0x3AC950, 0x10
-
-gUnknown_83AC960:: @ 83AC960
- .incbin "baserom.gba", 0x3AC960, 0x10
-
-gUnknown_83AC970:: @ 83AC970
- .incbin "baserom.gba", 0x3AC970, 0x20
-
-sFanfares:: @ 83AC990
- .incbin "baserom.gba", 0x3AC990, 0x40
-
-gUnknown_83AC9D0:: @ 83AC9D0
- .incbin "baserom.gba", 0x3AC9D0, 0x238
-
-gUnknown_83ACC08:: @ 83ACC08
- .incbin "baserom.gba", 0x3ACC08, 0x440
-
-gUnknown_83AD048:: @ 83AD048
- .incbin "baserom.gba", 0x3AD048, 0x308
-
-gUnknown_83AD350:: @ 83AD350
- .incbin "baserom.gba", 0x3AD350, 0x120
-
-gUnknown_83AD470:: @ 83AD470
- .incbin "baserom.gba", 0x3AD470, 0x4E0
-
-gUnknown_83AD950:: @ 83AD950
- .incbin "baserom.gba", 0x3AD950, 0x308
-
-gUnknown_83ADC58:: @ 83ADC58
- .incbin "baserom.gba", 0x3ADC58, 0x120
-
-gUnknown_83ADD78:: @ 83ADD78
- .incbin "baserom.gba", 0x3ADD78, 0xA0
-
-gUnknown_83ADE18:: @ 83ADE18
- .incbin "baserom.gba", 0x3ADE18, 0x144
-
-gUnknown_83ADF5C:: @ 83ADF5C
- .incbin "baserom.gba", 0x3ADF5C, 0xC0
-
-gUnknown_83AE01C:: @ 83AE01C
- .incbin "baserom.gba", 0x3AE01C, 0x20
-
-gUnknown_83AE03C:: @ 83AE03C
- .incbin "baserom.gba", 0x3AE03C, 0x10
-
-gUnknown_83AE04C:: @ 83AE04C
- .incbin "baserom.gba", 0x3AE04C, 0x4
-
-gUnknown_83AE050:: @ 83AE050
- .incbin "baserom.gba", 0x3AE050, 0x4
-
-gUnknown_83AE054:: @ 83AE054
- .incbin "baserom.gba", 0x3AE054, 0x30
-
-gUnknown_83AE084:: @ 83AE084
- .incbin "baserom.gba", 0x3AE084, 0x114D0
-
-gUnknown_83BF554:: @ 83BF554
- .incbin "baserom.gba", 0x3BF554, 0x8
-
-gUnknown_83BF55C:: @ 83BF55C
- .incbin "baserom.gba", 0x3BF55C, 0x18
-
-gUnknown_83BF574:: @ 83BF574
- .incbin "baserom.gba", 0x3BF574, 0x18
-
-gUnknown_83BF58C:: @ 83BF58C
- .incbin "baserom.gba", 0x3BF58C, 0x1C
-
-gUnknown_83BF5A8:: @ 83BF5A8
- .incbin "baserom.gba", 0x3BF5A8, 0x55C
-
-gUnknown_83BFB04:: @ 83BFB04
- .incbin "baserom.gba", 0x3BFB04, 0x18
-
-gUnknown_83BFB1C:: @ 83BFB1C
- .incbin "baserom.gba", 0x3BFB1C, 0x20
-
-gUnknown_83BFB3C:: @ 83BFB3C
- .incbin "baserom.gba", 0x3BFB3C, 0x20
-
-gUnknown_83BFB5C:: @ 83BFB5C
- .incbin "baserom.gba", 0x3BFB5C, 0x18
-
-gUnknown_83BFB74:: @ 83BFB74
- .incbin "baserom.gba", 0x3BFB74, 0x10
-
-gUnknown_83BFB84:: @ 83BFB84
- .incbin "baserom.gba", 0x3BFB84, 0x18
-
-gUnknown_83BFB9C:: @ 83BFB9C
- .incbin "baserom.gba", 0x3BFB9C, 0x20
-
-gUnknown_83BFBBC:: @ 83BFBBC
- .incbin "baserom.gba", 0x3BFBBC, 0x18
-
-gUnknown_83BFBD4:: @ 83BFBD4
- .incbin "baserom.gba", 0x3BFBD4, 0x2FE8
-
-gUnknown_83C2BBC:: @ 83C2BBC
- .incbin "baserom.gba", 0x3C2BBC, 0x4
-
-gUnknown_83C2BC0:: @ 83C2BC0
- .incbin "baserom.gba", 0x3C2BC0, 0xF0
-
-gUnknown_83C2CB0:: @ 83C2CB0
- .incbin "baserom.gba", 0x3C2CB0, 0x10
-
-gUnknown_83C2CC0:: @ 83C2CC0
- .incbin "baserom.gba", 0x3C2CC0, 0x20
-
-gUnknown_83C2CE0:: @ 83C2CE0
- .incbin "baserom.gba", 0x3C2CE0, 0x20
-
-gUnknown_83C2D00:: @ 83C2D00
- .incbin "baserom.gba", 0x3C2D00, 0x20
-
-gUnknown_83C2D20:: @ 83C2D20
- .incbin "baserom.gba", 0x3C2D20, 0x820
-
-gUnknown_83C3540:: @ 83C3540
- .incbin "baserom.gba", 0x3C3540, 0x3080
-
-gUnknown_83C65C0:: @ 83C65C0
- .incbin "baserom.gba", 0x3C65C0, 0x4
-
-gUnknown_83C65C4:: @ 83C65C4
- .incbin "baserom.gba", 0x3C65C4, 0x4
-
-gUnknown_83C65C8:: @ 83C65C8
- .incbin "baserom.gba", 0x3C65C8, 0xC
-
-gUnknown_83C65D4:: @ 83C65D4
- .incbin "baserom.gba", 0x3C65D4, 0x1C
-
-gUnknown_83C65F0:: @ 83C65F0
- .incbin "baserom.gba", 0x3C65F0, 0x18
-
-gUnknown_83C6608:: @ 83C6608
- .incbin "baserom.gba", 0x3C6608, 0x9C
-
-gUnknown_83C66A4:: @ 83C66A4
- .incbin "baserom.gba", 0x3C66A4, 0x18
-
-gUnknown_83C66BC:: @ 83C66BC
- .incbin "baserom.gba", 0x3C66BC, 0x8
-
-gUnknown_83C66C4:: @ 83C66C4
- .incbin "baserom.gba", 0x3C66C4, 0x8
-
-gUnknown_83C66CC:: @ 83C66CC
- .incbin "baserom.gba", 0x3C66CC, 0x38
-
-gUnknown_83C6704:: @ 83C6704
- .incbin "baserom.gba", 0x3C6704, 0x8C
-
-gUnknown_83C6790:: @ 83C6790
- .incbin "baserom.gba", 0x3C6790, 0x18
-
-gUnknown_83C67A8:: @ 83C67A8
- .incbin "baserom.gba", 0x3C67A8, 0x8
-
-gUnknown_83C67B0:: @ 83C67B0
- .incbin "baserom.gba", 0x3C67B0, 0x20
-
-gUnknown_83C67D0:: @ 83C67D0
- .incbin "baserom.gba", 0x3C67D0, 0x18
-
-gUnknown_83C67E8:: @ 83C67E8
- .incbin "baserom.gba", 0x3C67E8, 0x1C
-
-gUnknown_83C6804:: @ 83C6804
- .incbin "baserom.gba", 0x3C6804, 0x38
-
-gUnknown_83C683C:: @ 83C683C
- .incbin "baserom.gba", 0x3C683C, 0x18
-
-gUnknown_83C6854:: @ 83C6854
- .incbin "baserom.gba", 0x3C6854, 0x8
-
-gUnknown_83C685C:: @ 83C685C
- .incbin "baserom.gba", 0x3C685C, 0xC
-
-gUnknown_83C6868:: @ 83C6868
- .incbin "baserom.gba", 0x3C6868, 0x8
-
-gUnknown_83C6870:: @ 83C6870
- .incbin "baserom.gba", 0x3C6870, 0x8
-
-gUnknown_83C6878:: @ 83C6878
- .incbin "baserom.gba", 0x3C6878, 0x44
-
-gUnknown_83C68BC:: @ 83C68BC
- .incbin "baserom.gba", 0x3C68BC, 0x18
-
-gUnknown_83C68D4:: @ 83C68D4
- .incbin "baserom.gba", 0x3C68D4, 0xC
-
-gUnknown_83C68E0:: @ 83C68E0
- .incbin "baserom.gba", 0x3C68E0, 0x4
-
-gUnknown_83C68E4:: @ 83C68E4
- .incbin "baserom.gba", 0x3C68E4, 0x8
-
-gUnknown_83C68EC:: @ 83C68EC
- .incbin "baserom.gba", 0x3C68EC, 0x4
-
-gUnknown_83C68F0:: @ 83C68F0
- .incbin "baserom.gba", 0x3C68F0, 0x8
-
-gUnknown_83C68F8:: @ 83C68F8
- .incbin "baserom.gba", 0x3C68F8, 0x8
-
-gUnknown_83C6900:: @ 83C6900
- .incbin "baserom.gba", 0x3C6900, 0x48
-
-gUnknown_83C6948:: @ 83C6948
- .incbin "baserom.gba", 0x3C6948, 0x48
-
-gUnknown_83C6990:: @ 83C6990
- .incbin "baserom.gba", 0x3C6990, 0x48
-
-gUnknown_83C69D8:: @ 83C69D8
- .incbin "baserom.gba", 0x3C69D8, 0x48
-
-gUnknown_83C6A20:: @ 83C6A20
- .incbin "baserom.gba", 0x3C6A20, 0x48
-
-gUnknown_83C6A68:: @ 83C6A68
- .incbin "baserom.gba", 0x3C6A68, 0x48
-
-gUnknown_83C6AB0:: @ 83C6AB0
- .incbin "baserom.gba", 0x3C6AB0, 0x8
-
-gUnknown_83C6AB8:: @ 83C6AB8
- .incbin "baserom.gba", 0x3C6AB8, 0x790
-
-gUnknown_83C7248:: @ 83C7248
- .incbin "baserom.gba", 0x3C7248, 0x10
-
-gUnknown_83C7258:: @ 83C7258
- .incbin "baserom.gba", 0x3C7258, 0x3C
-
-gUnknown_83C7294:: @ 83C7294
- .incbin "baserom.gba", 0x3C7294, 0xF4
-
-gUnknown_83C7388:: @ 83C7388
- .incbin "baserom.gba", 0x3C7388, 0x2930
-
-gUnknown_83C9CB8:: @ 83C9CB8
- .incbin "baserom.gba", 0x3C9CB8, 0xA64
-
-gUnknown_83CA71C:: @ 83CA71C
- .incbin "baserom.gba", 0x3CA71C, 0xED4
-
-gUnknown_83CB5F0:: @ 83CB5F0
- .incbin "baserom.gba", 0x3CB5F0, 0x200
-
-gUnknown_83CB7F0:: @ 83CB7F0
- .incbin "baserom.gba", 0x3CB7F0, 0x20
-
-gUnknown_83CB810:: @ 83CB810
- .incbin "baserom.gba", 0x3CB810, 0x280
-
-gUnknown_83CBA90:: @ 83CBA90
- .incbin "baserom.gba", 0x3CBA90, 0x80
-
-gUnknown_83CBB10:: @ 83CBB10
- .incbin "baserom.gba", 0x3CBB10, 0x20
-
-gUnknown_83CBB30:: @ 83CBB30
- .incbin "baserom.gba", 0x3CBB30, 0x300
-
-gUnknown_83CBE30:: @ 83CBE30
- .incbin "baserom.gba", 0x3CBE30, 0x20
-
-gUnknown_83CBE50:: @ 83CBE50
- .incbin "baserom.gba", 0x3CBE50, 0x20
-
-gUnknown_83CBE70:: @ 83CBE70
- .incbin "baserom.gba", 0x3CBE70, 0x14
-
-gUnknown_83CBE84:: @ 83CBE84
- .incbin "baserom.gba", 0x3CBE84, 0x104
-
-gUnknown_83CBF88:: @ 83CBF88
- .incbin "baserom.gba", 0x3CBF88, 0x18
-
-gUnknown_83CBFA0:: @ 83CBFA0
- .incbin "baserom.gba", 0x3CBFA0, 0x18
-
-gUnknown_83CBFB8:: @ 83CBFB8
- .incbin "baserom.gba", 0x3CBFB8, 0x18
-
-gUnknown_83CBFD0:: @ 83CBFD0
- .incbin "baserom.gba", 0x3CBFD0, 0x10
-
-gUnknown_83CBFE0:: @ 83CBFE0
- .incbin "baserom.gba", 0x3CBFE0, 0x10
-
-gUnknown_83CBFF0:: @ 83CBFF0
- .incbin "baserom.gba", 0x3CBFF0, 0x20
-
-gUnknown_83CC010:: @ 83CC010
- .incbin "baserom.gba", 0x3CC010, 0x18
-
-gUnknown_83CC028:: @ 83CC028
- .incbin "baserom.gba", 0x3CC028, 0x4
-
-gUnknown_83CC02C:: @ 83CC02C
- .incbin "baserom.gba", 0x3CC02C, 0x4
-
-gUnknown_83CC030:: @ 83CC030
- .incbin "baserom.gba", 0x3CC030, 0x4
-
-gUnknown_83CC034:: @ 83CC034
- .incbin "baserom.gba", 0x3CC034, 0x1C
-
-gUnknown_83CC050:: @ 83CC050
- .incbin "baserom.gba", 0x3CC050, 0x18
-
-gUnknown_83CC068:: @ 83CC068
- .incbin "baserom.gba", 0x3CC068, 0x1C
-
-gUnknown_83CC084:: @ 83CC084
- .incbin "baserom.gba", 0x3CC084, 0x14
-
-gUnknown_83CC098:: @ 83CC098
- .incbin "baserom.gba", 0x3CC098, 0xC
-
-gUnknown_83CC0A4:: @ 83CC0A4
- .incbin "baserom.gba", 0x3CC0A4, 0x18
-
-gUnknown_83CC0BC:: @ 83CC0BC
- .incbin "baserom.gba", 0x3CC0BC, 0x10
-
-gUnknown_83CC0CC:: @ 83CC0CC
- .incbin "baserom.gba", 0x3CC0CC, 0x14
-
-gUnknown_83CC0E0:: @ 83CC0E0
- .incbin "baserom.gba", 0x3CC0E0, 0x8
-
-gUnknown_83CC0E8:: @ 83CC0E8
- .incbin "baserom.gba", 0x3CC0E8, 0x8
-
-gUnknown_83CC0F0:: @ 83CC0F0
- .incbin "baserom.gba", 0x3CC0F0, 0x8
-
-gUnknown_83CC0F8:: @ 83CC0F8
- .incbin "baserom.gba", 0x3CC0F8, 0x10
-
-gUnknown_83CC108:: @ 83CC108
- .incbin "baserom.gba", 0x3CC108, 0x8
-
-gUnknown_83CC110:: @ 83CC110
- .incbin "baserom.gba", 0x3CC110, 0xC
-
-gUnknown_83CC11C:: @ 83CC11C
- .incbin "baserom.gba", 0x3CC11C, 0x1C
-
-gUnknown_83CC138:: @ 83CC138
- .incbin "baserom.gba", 0x3CC138, 0x1C
-
-gUnknown_83CC154:: @ 83CC154
- .incbin "baserom.gba", 0x3CC154, 0x14
-
-gUnknown_83CC168:: @ 83CC168
- .incbin "baserom.gba", 0x3CC168, 0x10
-
-gUnknown_83CC178:: @ 83CC178
- .incbin "baserom.gba", 0x3CC178, 0x54
-
-gUnknown_83CC1CC:: @ 83CC1CC
- .incbin "baserom.gba", 0x3CC1CC, 0x8
-
-gUnknown_83CC1D4:: @ 83CC1D4
- .incbin "baserom.gba", 0x3CC1D4, 0x1C
-
-gUnknown_83CC1F0:: @ 83CC1F0
- .incbin "baserom.gba", 0x3CC1F0, 0x4C
-
-gUnknown_83CC23C:: @ 83CC23C
- .incbin "baserom.gba", 0x3CC23C, 0x8
-
-gUnknown_83CC244:: @ 83CC244
- .incbin "baserom.gba", 0x3CC244, 0x5C
-
-gUnknown_83CC2A0:: @ 83CC2A0
- .incbin "baserom.gba", 0x3CC2A0, 0x18
-
-gUnknown_83CC2B8:: @ 83CC2B8
- .incbin "baserom.gba", 0x3CC2B8, 0x20
-
-gUnknown_83CC2D8:: @ 83CC2D8
- .incbin "baserom.gba", 0x3CC2D8, 0xC
-
-gUnknown_83CC2E4:: @ 83CC2E4
- .incbin "baserom.gba", 0x3CC2E4, 0x20
-
-gUnknown_83CC304:: @ 83CC304
- .incbin "baserom.gba", 0x3CC304, 0x10
-
-gUnknown_83CC314:: @ 83CC314
- .incbin "baserom.gba", 0x3CC314, 0x1C
-
-gUnknown_83CC330:: @ 83CC330
- .incbin "baserom.gba", 0x3CC330, 0xC
-
-gUnknown_83CC33C:: @ 83CC33C
- .incbin "baserom.gba", 0x3CC33C, 0x8
-
-gUnknown_83CC344:: @ 83CC344
- .incbin "baserom.gba", 0x3CC344, 0x8
-
-gUnknown_83CC34C:: @ 83CC34C
- .incbin "baserom.gba", 0x3CC34C, 0x8
-
-gUnknown_83CC354:: @ 83CC354
- .incbin "baserom.gba", 0x3CC354, 0xC
-
-gUnknown_83CC360:: @ 83CC360
- .incbin "baserom.gba", 0x3CC360, 0x3
-
-gUnknown_83CC363:: @ 83CC363
- .incbin "baserom.gba", 0x3CC363, 0x5
-
-gUnknown_83CC368:: @ 83CC368
- .incbin "baserom.gba", 0x3CC368, 0x174
-
-gUnknown_83CC4DC:: @ 83CC4DC
- .incbin "baserom.gba", 0x3CC4DC, 0x214
-
-gUnknown_83CC6F0:: @ 83CC6F0
- .incbin "baserom.gba", 0x3CC6F0, 0x1B8
-
-gUnknown_83CC8A8:: @ 83CC8A8
- .incbin "baserom.gba", 0x3CC8A8, 0xDC
-
-gUnknown_83CC984:: @ 83CC984
- .incbin "baserom.gba", 0x3CC984, 0x12C
-
-gUnknown_83CCAB0:: @ 83CCAB0
- .incbin "baserom.gba", 0x3CCAB0, 0x1F4
-
-gUnknown_83CCCA4:: @ 83CCCA4
- .incbin "baserom.gba", 0x3CCCA4, 0x18C
-
-gUnknown_83CCE30:: @ 83CCE30
- .incbin "baserom.gba", 0x3CCE30, 0x98
-
-gUnknown_83CCEC8:: @ 83CCEC8
- .incbin "baserom.gba", 0x3CCEC8, 0x3B8
-
-gUnknown_83CD280:: @ 83CD280
- .incbin "baserom.gba", 0x3CD280, 0x20
-
-gUnknown_83CD2A0:: @ 83CD2A0
- .incbin "baserom.gba", 0x3CD2A0, 0x20
-
-gUnknown_83CD2C0:: @ 83CD2C0
- .incbin "baserom.gba", 0x3CD2C0, 0x20
-
-gUnknown_83CD2E0:: @ 83CD2E0
- .incbin "baserom.gba", 0x3CD2E0, 0x20
-
-gUnknown_83CD300:: @ 83CD300
- .incbin "baserom.gba", 0x3CD300, 0x20
-
-gUnknown_83CD320:: @ 83CD320
- .incbin "baserom.gba", 0x3CD320, 0x20
-
-gUnknown_83CD340:: @ 83CD340
- .incbin "baserom.gba", 0x3CD340, 0x20
-
-gUnknown_83CD360:: @ 83CD360
- .incbin "baserom.gba", 0x3CD360, 0x20
-
-gUnknown_83CD380:: @ 83CD380
- .incbin "baserom.gba", 0x3CD380, 0x268
-
-gUnknown_83CD5E8:: @ 83CD5E8
- .incbin "baserom.gba", 0x3CD5E8, 0x2A0
-
-gUnknown_83CD888:: @ 83CD888
- .incbin "baserom.gba", 0x3CD888, 0x10
-
-gUnknown_83CD898:: @ 83CD898
- .incbin "baserom.gba", 0x3CD898, 0x20
-
-gUnknown_83CD8B8:: @ 83CD8B8
- .incbin "baserom.gba", 0x3CD8B8, 0x14
-
-gUnknown_83CD8CC:: @ 83CD8CC
- .incbin "baserom.gba", 0x3CD8CC, 0x14
-
-gUnknown_83CD8E0:: @ 83CD8E0
- .incbin "baserom.gba", 0x3CD8E0, 0x3
-
-gUnknown_83CD8E3:: @ 83CD8E3
- .incbin "baserom.gba", 0x3CD8E3, 0x6
-
-gUnknown_83CD8E9:: @ 83CD8E9
- .incbin "baserom.gba", 0x3CD8E9, 0x3
-
-gUnknown_83CD8EC:: @ 83CD8EC
- .incbin "baserom.gba", 0x3CD8EC, 0x8
-
-gUnknown_83CD8F4:: @ 83CD8F4
- .incbin "baserom.gba", 0x3CD8F4, 0x4
-
-gUnknown_83CD8F8:: @ 83CD8F8
- .incbin "baserom.gba", 0x3CD8F8, 0x10
-
-gUnknown_83CD908:: @ 83CD908
- .incbin "baserom.gba", 0x3CD908, 0x18
-
-gUnknown_83CD920:: @ 83CD920
- .incbin "baserom.gba", 0x3CD920, 0x2
-
-gUnknown_83CD922:: @ 83CD922
- .incbin "baserom.gba", 0x3CD922, 0x2
-
-gUnknown_83CD924:: @ 83CD924
- .incbin "baserom.gba", 0x3CD924, 0x2
-
-gUnknown_83CD926:: @ 83CD926
- .incbin "baserom.gba", 0x3CD926, 0x2
-
-gUnknown_83CD928:: @ 83CD928
- .incbin "baserom.gba", 0x3CD928, 0x8
-
-gUnknown_83CD930:: @ 83CD930
- .incbin "baserom.gba", 0x3CD930, 0x2
-
-gUnknown_83CD932:: @ 83CD932
- .incbin "baserom.gba", 0x3CD932, 0x2
-
-gUnknown_83CD934:: @ 83CD934
- .incbin "baserom.gba", 0x3CD934, 0x2
-
-gUnknown_83CD936:: @ 83CD936
- .incbin "baserom.gba", 0x3CD936, 0x2
-
-gUnknown_83CD938:: @ 83CD938
- .incbin "baserom.gba", 0x3CD938, 0x2
-
-gUnknown_83CD93A:: @ 83CD93A
- .incbin "baserom.gba", 0x3CD93A, 0x2
-
-gUnknown_83CD93C:: @ 83CD93C
- .incbin "baserom.gba", 0x3CD93C, 0x2
-
-gUnknown_83CD93E:: @ 83CD93E
- .incbin "baserom.gba", 0x3CD93E, 0x2
-
-gUnknown_83CD940:: @ 83CD940
- .incbin "baserom.gba", 0x3CD940, 0x4
-
-gUnknown_83CD944:: @ 83CD944
- .incbin "baserom.gba", 0x3CD944, 0x8
-
-gUnknown_83CD94C:: @ 83CD94C
- .incbin "baserom.gba", 0x3CD94C, 0x6
-
-gUnknown_83CD952:: @ 83CD952
- .incbin "baserom.gba", 0x3CD952, 0x6
-
-gUnknown_83CD958:: @ 83CD958
- .incbin "baserom.gba", 0x3CD958, 0x4
-
-gUnknown_83CD95C:: @ 83CD95C
- .incbin "baserom.gba", 0x3CD95C, 0x4
-
-gUnknown_83CD960:: @ 83CD960
- .incbin "baserom.gba", 0x3CD960, 0x60
-
-gUnknown_83CD9C0:: @ 83CD9C0
- .incbin "baserom.gba", 0x3CD9C0, 0x60
-
-gUnknown_83CDA20:: @ 83CDA20
- .incbin "baserom.gba", 0x3CDA20, 0x28
-
-gUnknown_83CDA48:: @ 83CDA48
- .incbin "baserom.gba", 0x3CDA48, 0x28
-
-gUnknown_83CDA70:: @ 83CDA70
- .incbin "baserom.gba", 0x3CDA70, 0x24
-
-gUnknown_83CDA94:: @ 83CDA94
- .incbin "baserom.gba", 0x3CDA94, 0x4
-
-gUnknown_83CDA98:: @ 83CDA98
- .incbin "baserom.gba", 0x3CDA98, 0x20
-
-gUnknown_83CDAB8:: @ 83CDAB8
- .incbin "baserom.gba", 0x3CDAB8, 0x800
-
-gUnknown_83CE2B8:: @ 83CE2B8
- .incbin "baserom.gba", 0x3CE2B8, 0x180
-
-gUnknown_83CE438:: @ 83CE438
- .incbin "baserom.gba", 0x3CE438, 0x98
-
-gUnknown_83CE4D0:: @ 83CE4D0
- .incbin "baserom.gba", 0x3CE4D0, 0x12C
-
-gUnknown_83CE5FC:: @ 83CE5FC
- .incbin "baserom.gba", 0x3CE5FC, 0xFC
-
-gUnknown_83CE6F8:: @ 83CE6F8
- .incbin "baserom.gba", 0x3CE6F8, 0x40
-
-gUnknown_83CE738:: @ 83CE738
- .incbin "baserom.gba", 0x3CE738, 0x20
-
-gUnknown_83CE758:: @ 83CE758
- .incbin "baserom.gba", 0x3CE758, 0x20
-
-gUnknown_83CE778:: @ 83CE778
- .incbin "baserom.gba", 0x3CE778, 0x48
-
-gUnknown_83CE7C0:: @ 83CE7C0
- .incbin "baserom.gba", 0x3CE7C0, 0x18
-
-gUnknown_83CE7D8:: @ 83CE7D8
- .incbin "baserom.gba", 0x3CE7D8, 0x238
-
-gUnknown_83CEA10:: @ 83CEA10
- .incbin "baserom.gba", 0x3CEA10, 0x20
-
-gUnknown_83CEA30:: @ 83CEA30
- .incbin "baserom.gba", 0x3CEA30, 0x20
-
-gUnknown_83CEA50:: @ 83CEA50
- .incbin "baserom.gba", 0x3CEA50, 0x10
-
-gUnknown_83CEA60:: @ 83CEA60
- .incbin "baserom.gba", 0x3CEA60, 0x8
-
-gUnknown_83CEA68:: @ 83CEA68
- .incbin "baserom.gba", 0x3CEA68, 0x8
-
-gUnknown_83CEA70:: @ 83CEA70
- .incbin "baserom.gba", 0x3CEA70, 0x18
-
-gUnknown_83CEA88:: @ 83CEA88
- .incbin "baserom.gba", 0x3CEA88, 0xF8
-
-gUnknown_83CEB80:: @ 83CEB80
- .incbin "baserom.gba", 0x3CEB80, 0x58
-
-gUnknown_83CEBD8:: @ 83CEBD8
- .incbin "baserom.gba", 0x3CEBD8, 0x18
-
-gUnknown_83CEBF0:: @ 83CEBF0
- .incbin "baserom.gba", 0x3CEBF0, 0x48
-
-gUnknown_83CEC38:: @ 83CEC38
- .incbin "baserom.gba", 0x3CEC38, 0x3D98
-
-gUnknown_83D29D0:: @ 83D29D0
- .incbin "baserom.gba", 0x3D29D0, 0x40
-
-gUnknown_83D2A10:: @ 83D2A10
- .incbin "baserom.gba", 0x3D2A10, 0x144
-
-gUnknown_83D2B54:: @ 83D2B54
- .incbin "baserom.gba", 0x3D2B54, 0x28
-
-gUnknown_83D2B7C:: @ 83D2B7C
- .incbin "baserom.gba", 0x3D2B7C, 0x38
-
-gUnknown_83D2BB4:: @ 83D2BB4
- .incbin "baserom.gba", 0x3D2BB4, 0x8B8
-
-gUnknown_83D346C:: @ 83D346C
- .incbin "baserom.gba", 0x3D346C, 0xC
-
-gUnknown_83D3478:: @ 83D3478
- .incbin "baserom.gba", 0x3D3478, 0x28
-
-gUnknown_83D34A0:: @ 83D34A0
- .incbin "baserom.gba", 0x3D34A0, 0x18
-
-gUnknown_83D34B8:: @ 83D34B8
- .incbin "baserom.gba", 0x3D34B8, 0x54
-
-gUnknown_83D350C:: @ 83D350C
- .incbin "baserom.gba", 0x3D350C, 0x18
-
-gUnknown_83D3524:: @ 83D3524
- .incbin "baserom.gba", 0x3D3524, 0x18
-
-gUnknown_83D353C:: @ 83D353C
- .incbin "baserom.gba", 0x3D353C, 0x98
-
-gUnknown_83D35D4:: @ 83D35D4
- .incbin "baserom.gba", 0x3D35D4, 0x8
-
-gUnknown_83D35DC:: @ 83D35DC
- .incbin "baserom.gba", 0x3D35DC, 0x14C
-
-gUnknown_83D3728:: @ 83D3728
- .incbin "baserom.gba", 0x3D3728, 0x18
-
-gUnknown_83D3740:: @ 83D3740
- .incbin "baserom.gba", 0x3D3740, 0x60
-
-gUnknown_83D37A0:: @ 83D37A0
- .incbin "baserom.gba", 0x3D37A0, 0x6E0
-
-gUnknown_83D3E80:: @ 83D3E80
- .incbin "baserom.gba", 0x3D3E80, 0x1B8
-
-gUnknown_83D4038:: @ 83D4038
- .incbin "baserom.gba", 0x3D4038, 0x30
-
-gUnknown_83D4068:: @ 83D4068
- .incbin "baserom.gba", 0x3D4068, 0x44
-
-gUnknown_83D40AC:: @ 83D40AC
- .incbin "baserom.gba", 0x3D40AC, 0x34
-
-gUnknown_83D40E0:: @ 83D40E0
- .incbin "baserom.gba", 0x3D40E0, 0x8
-
-gUnknown_83D40E8:: @ 83D40E8
- .incbin "baserom.gba", 0x3D40E8, 0x18
-
-gUnknown_83D4100:: @ 83D4100
- .incbin "baserom.gba", 0x3D4100, 0x4C
-
-gUnknown_83D414C:: @ 83D414C
- .incbin "baserom.gba", 0x3D414C, 0x18
-
-gUnknown_83D4164:: @ 83D4164
- .incbin "baserom.gba", 0x3D4164, 0x80
-
-gUnknown_83D41E4:: @ 83D41E4
- .incbin "baserom.gba", 0x3D41E4, 0x8
-
-gUnknown_83D41EC:: @ 83D41EC
- .incbin "baserom.gba", 0x3D41EC, 0x8
-
-gUnknown_83D41F4:: @ 83D41F4
- .incbin "baserom.gba", 0x3D41F4, 0x8
-
-gUnknown_83D41FC:: @ 83D41FC
- .incbin "baserom.gba", 0x3D41FC, 0x44
-
-gUnknown_83D4240:: @ 83D4240
- .incbin "baserom.gba", 0x3D4240, 0x8
-
-gUnknown_83D4248:: @ 83D4248
- .incbin "baserom.gba", 0x3D4248, 0x8
-
-gUnknown_83D4250:: @ 83D4250
- .incbin "baserom.gba", 0x3D4250, 0x2C
-
-gUnknown_83D427C:: @ 83D427C
- .incbin "baserom.gba", 0x3D427C, 0x18
-
-gUnknown_83D4294:: @ 83D4294
- .incbin "baserom.gba", 0x3D4294, 0x6D94
-
-gUnknown_83DB028:: @ 83DB028
- .incbin "baserom.gba", 0x3DB028, 0x4074
-
-gUnknown_83DF09C:: @ 83DF09C
- .incbin "baserom.gba", 0x3DF09C, 0x18
-
-gUnknown_83DF0B4:: @ 83DF0B4
- .incbin "baserom.gba", 0x3DF0B4, 0x8
-
-gUnknown_83DF0BC:: @ 83DF0BC
- .incbin "baserom.gba", 0x3DF0BC, 0x8
-
-gUnknown_83DF0C4:: @ 83DF0C4
- .incbin "baserom.gba", 0x3DF0C4, 0x10
-
-gUnknown_83DF0D4:: @ 83DF0D4
- .incbin "baserom.gba", 0x3DF0D4, 0x6
-
-gUnknown_83DF0DA:: @ 83DF0DA
- .incbin "baserom.gba", 0x3DF0DA, 0x6
-
-gUnknown_83DF0E0:: @ 83DF0E0
- .incbin "baserom.gba", 0x3DF0E0, 0x6
-
-gUnknown_83DF0E6:: @ 83DF0E6
- .incbin "baserom.gba", 0x3DF0E6, 0x6
-
-gUnknown_83DF0EC:: @ 83DF0EC
- .incbin "baserom.gba", 0x3DF0EC, 0x6
-
-gUnknown_83DF0F2:: @ 83DF0F2
- .incbin "baserom.gba", 0x3DF0F2, 0x6
-
-gUnknown_83DF0F8:: @ 83DF0F8
- .incbin "baserom.gba", 0x3DF0F8, 0x6D4
-
-gUnknown_83DF7CC:: @ 83DF7CC
- .incbin "baserom.gba", 0x3DF7CC, 0x1C
-
-gUnknown_83DF7E8:: @ 83DF7E8
- .incbin "baserom.gba", 0x3DF7E8, 0x4B4
-
-gUnknown_83DFC9C:: @ 83DFC9C
- .incbin "baserom.gba", 0x3DFC9C, 0x814
-
-gUnknown_83E04B0:: @ 83E04B0
- .incbin "baserom.gba", 0x3E04B0, 0x208
-
-gUnknown_83E06B8:: @ 83E06B8
- .incbin "baserom.gba", 0x3E06B8, 0x74
-
-gUnknown_83E072C:: @ 83E072C
- .incbin "baserom.gba", 0x3E072C, 0xC
-
-gUnknown_83E0738:: @ 83E0738
- .incbin "baserom.gba", 0x3E0738, 0x10
-
-gUnknown_83E0748:: @ 83E0748
- .incbin "baserom.gba", 0x3E0748, 0x20
-
-gUnknown_83E0768:: @ 83E0768
- .incbin "baserom.gba", 0x3E0768, 0x818
-
-gUnknown_83E0F80:: @ 83E0F80
- .incbin "baserom.gba", 0x3E0F80, 0x820
-
-gUnknown_83E17A0:: @ 83E17A0
- .incbin "baserom.gba", 0x3E17A0, 0x20
-
-gUnknown_83E17C0:: @ 83E17C0
- .incbin "baserom.gba", 0x3E17C0, 0x10
-
-gUnknown_83E17D0:: @ 83E17D0
- .incbin "baserom.gba", 0x3E17D0, 0x10
-
-gUnknown_83E17E0:: @ 83E17E0
- .incbin "baserom.gba", 0x3E17E0, 0xAA0
-
-gUnknown_83E2280:: @ 83E2280
- .incbin "baserom.gba", 0x3E2280, 0x10
-
-gUnknown_83E2290:: @ 83E2290
- .incbin "baserom.gba", 0x3E2290, 0x10
-
-gUnknown_83E22A0:: @ 83E22A0
- .incbin "baserom.gba", 0x3E22A0, 0x30
-
-gUnknown_83E22D0:: @ 83E22D0
- .incbin "baserom.gba", 0x3E22D0, 0x60
-
-gUnknown_83E2330:: @ 83E2330
- .incbin "baserom.gba", 0x3E2330, 0x3
-
-gUnknown_83E2333:: @ 83E2333
- .incbin "baserom.gba", 0x3E2333, 0x18
-
-gUnknown_83E234B:: @ 83E234B
- .incbin "baserom.gba", 0x3E234B, 0x3
-
-gUnknown_83E234E:: @ 83E234E
- .incbin "baserom.gba", 0x3E234E, 0x3
-
-gUnknown_83E2351:: @ 83E2351
- .incbin "baserom.gba", 0x3E2351, 0x3
-
-gUnknown_83E2354:: @ 83E2354
- .incbin "baserom.gba", 0x3E2354, 0x10
-
-gUnknown_83E2364:: @ 83E2364
- .incbin "baserom.gba", 0x3E2364, 0x8
-
-gUnknown_83E236C:: @ 83E236C
- .incbin "baserom.gba", 0x3E236C, 0x8
-
-gUnknown_83E2374:: @ 83E2374
- .incbin "baserom.gba", 0x3E2374, 0x4
-
-gUnknown_83E2378:: @ 83E2378
- .incbin "baserom.gba", 0x3E2378, 0x10
-
-gUnknown_83E2388:: @ 83E2388
- .incbin "baserom.gba", 0x3E2388, 0x6
-
-gUnknown_83E238E:: @ 83E238E
- .incbin "baserom.gba", 0x3E238E, 0x6
-
-gUnknown_83E2394:: @ 83E2394
- .incbin "baserom.gba", 0x3E2394, 0x28
-
-gUnknown_83E23BC:: @ 83E23BC
- .incbin "baserom.gba", 0x3E23BC, 0x4
-
-gUnknown_83E23C0:: @ 83E23C0
- .incbin "baserom.gba", 0x3E23C0, 0x8
-
-gUnknown_83E23C8:: @ 83E23C8
- .incbin "baserom.gba", 0x3E23C8, 0x8
-
-gUnknown_83E23D0:: @ 83E23D0
- .incbin "baserom.gba", 0x3E23D0, 0x10
-
-gUnknown_83E23E0:: @ 83E23E0
- .incbin "baserom.gba", 0x3E23E0, 0x8
-
-gUnknown_83E23E8:: @ 83E23E8
- .incbin "baserom.gba", 0x3E23E8, 0xA
-
-gUnknown_83E23F2:: @ 83E23F2
- .incbin "baserom.gba", 0x3E23F2, 0xA
-
-gUnknown_83E23FC:: @ 83E23FC
- .incbin "baserom.gba", 0x3E23FC, 0x8
-
-gUnknown_83E2404:: @ 83E2404
- .incbin "baserom.gba", 0x3E2404, 0x8
-
-gUnknown_83E240C:: @ 83E240C
- .incbin "baserom.gba", 0x3E240C, 0x14
-
-gUnknown_83E2420:: @ 83E2420
- .incbin "baserom.gba", 0x3E2420, 0x8
-
-gUnknown_83E2428:: @ 83E2428
- .incbin "baserom.gba", 0x3E2428, 0x14
-
-gUnknown_83E243C:: @ 83E243C
- .incbin "baserom.gba", 0x3E243C, 0x4
-
-gUnknown_83E2440:: @ 83E2440
- .incbin "baserom.gba", 0x3E2440, 0xC
-
-gUnknown_83E244C:: @ 83E244C
- .incbin "baserom.gba", 0x3E244C, 0xC
-
-gUnknown_83E2458:: @ 83E2458
- .incbin "baserom.gba", 0x3E2458, 0x34
-
-gUnknown_83E248C:: @ 83E248C
- .incbin "baserom.gba", 0x3E248C, 0x78
-
-gUnknown_83E2504:: @ 83E2504
- .incbin "baserom.gba", 0x3E2504, 0x8
-
-gUnknown_83E250C:: @ 83E250C
- .incbin "baserom.gba", 0x3E250C, 0x18
-
-gUnknown_83E2524:: @ 83E2524
- .incbin "baserom.gba", 0x3E2524, 0x8
-
-gUnknown_83E252C:: @ 83E252C
- .incbin "baserom.gba", 0x3E252C, 0x48
-
-gUnknown_83E2574:: @ 83E2574
- .incbin "baserom.gba", 0x3E2574, 0x18
-
-gUnknown_83E258C:: @ 83E258C
- .incbin "baserom.gba", 0x3E258C, 0x18
-
-gUnknown_83E25A4:: @ 83E25A4
- .incbin "baserom.gba", 0x3E25A4, 0x18
-
-gUnknown_83E25BC:: @ 83E25BC
- .incbin "baserom.gba", 0x3E25BC, 0x18
-
-gUnknown_83E25D4:: @ 83E25D4
- .incbin "baserom.gba", 0x3E25D4, 0x18
-
-gUnknown_83E25EC:: @ 83E25EC
- .incbin "baserom.gba", 0x3E25EC, 0x18
-
-gUnknown_83E2604:: @ 83E2604
- .incbin "baserom.gba", 0x3E2604, 0x18
-
-gUnknown_83E261C:: @ 83E261C
- .incbin "baserom.gba", 0x3E261C, 0x18
-
-gUnknown_83E2634:: @ 83E2634
- .incbin "baserom.gba", 0x3E2634, 0x18
-
-gUnknown_83E264C:: @ 83E264C
- .incbin "baserom.gba", 0x3E264C, 0x30
-
-gUnknown_83E267C:: @ 83E267C
- .incbin "baserom.gba", 0x3E267C, 0x68
-
-gUnknown_83E26E4:: @ 83E26E4
- .incbin "baserom.gba", 0x3E26E4, 0x48
-
-gUnknown_83E272C:: @ 83E272C
- .incbin "baserom.gba", 0x3E272C, 0x80
-
-gUnknown_83E27AC:: @ 83E27AC
- .incbin "baserom.gba", 0x3E27AC, 0x1A8
-
-gUnknown_83E2954:: @ 83E2954
- .incbin "baserom.gba", 0x3E2954, 0x134
-
-gUnknown_83E2A88:: @ 83E2A88
- .incbin "baserom.gba", 0x3E2A88, 0x4F0
-
-gUnknown_83E2F78:: @ 83E2F78
- .incbin "baserom.gba", 0x3E2F78, 0x78
-
-gUnknown_83E2FF0:: @ 83E2FF0
- .incbin "baserom.gba", 0x3E2FF0, 0x100
-
-gUnknown_83E30F0:: @ 83E30F0
- .incbin "baserom.gba", 0x3E30F0, 0x458
-
-gUnknown_83E3548:: @ 83E3548
- .incbin "baserom.gba", 0x3E3548, 0x1EC
-
-gUnknown_83E3734:: @ 83E3734
- .incbin "baserom.gba", 0x3E3734, 0x30
-
-gUnknown_83E3764:: @ 83E3764
- .incbin "baserom.gba", 0x3E3764, 0x134
-
-gUnknown_83E3898:: @ 83E3898
- .incbin "baserom.gba", 0x3E3898, 0xF4
-
-gUnknown_83E398C:: @ 83E398C
- .incbin "baserom.gba", 0x3E398C, 0x29C
-
-gUnknown_83E3C28:: @ 83E3C28
- .incbin "baserom.gba", 0x3E3C28, 0xF0
-
-gUnknown_83E3D18:: @ 83E3D18
- .incbin "baserom.gba", 0x3E3D18, 0x148
-
-gUnknown_83E3E60:: @ 83E3E60
- .incbin "baserom.gba", 0x3E3E60, 0x20
-
-gUnknown_83E3E80:: @ 83E3E80
- .incbin "baserom.gba", 0x3E3E80, 0x9C
-
-gUnknown_83E3F1C:: @ 83E3F1C
- .incbin "baserom.gba", 0x3E3F1C, 0x20C
-
-gUnknown_83E4128:: @ 83E4128
- .incbin "baserom.gba", 0x3E4128, 0x2C
-
-gUnknown_83E4154:: @ 83E4154
- .incbin "baserom.gba", 0x3E4154, 0x18
-
-gUnknown_83E416C:: @ 83E416C
- .incbin "baserom.gba", 0x3E416C, 0x5C
-
-gUnknown_83E41C8:: @ 83E41C8
- .incbin "baserom.gba", 0x3E41C8, 0x38
-
-gUnknown_83E4200:: @ 83E4200
- .incbin "baserom.gba", 0x3E4200, 0x210
-
-gUnknown_83E4410:: @ 83E4410
- .incbin "baserom.gba", 0x3E4410, 0x1488
-
-gUnknown_83E5898:: @ 83E5898
- .incbin "baserom.gba", 0x3E5898, 0x248
-
-gUnknown_83E5AE0:: @ 83E5AE0
- .incbin "baserom.gba", 0x3E5AE0, 0xA8
-
-gUnknown_83E5B88:: @ 83E5B88
- .incbin "baserom.gba", 0x3E5B88, 0x2A4
-
-gUnknown_83E5E2C:: @ 83E5E2C
- .incbin "baserom.gba", 0x3E5E2C, 0x18
-
-gUnknown_83E5E44:: @ 83E5E44
- .incbin "baserom.gba", 0x3E5E44, 0x2
-
-gUnknown_83E5E46:: @ 83E5E46
- .incbin "baserom.gba", 0x3E5E46, 0xB6
-
-gUnknown_83E5EFC:: @ 83E5EFC
- .incbin "baserom.gba", 0x3E5EFC, 0x10
-
-gUnknown_83E5F0C:: @ 83E5F0C
- .incbin "baserom.gba", 0x3E5F0C, 0x2C
-
-gUnknown_83E5F38:: @ 83E5F38
- .incbin "baserom.gba", 0x3E5F38, 0x168
-
-gUnknown_83E60A0:: @ 83E60A0
- .incbin "baserom.gba", 0x3E60A0, 0x18
-
-gUnknown_83E60B8:: @ 83E60B8
- .incbin "baserom.gba", 0x3E60B8, 0x18
-
-gUnknown_83E60D0:: @ 83E60D0
- .incbin "baserom.gba", 0x3E60D0, 0x50
-
-gUnknown_83E6120:: @ 83E6120
- .incbin "baserom.gba", 0x3E6120, 0x158
-
-gUnknown_83E6278:: @ 83E6278
- .incbin "baserom.gba", 0x3E6278, 0x30
-
-gUnknown_83E62A8:: @ 83E62A8
- .incbin "baserom.gba", 0x3E62A8, 0x138
-
-gUnknown_83E63E0:: @ 83E63E0
- .incbin "baserom.gba", 0x3E63E0, 0xF4
-
-gUnknown_83E64D4:: @ 83E64D4
- .incbin "baserom.gba", 0x3E64D4, 0x2C
-
-gUnknown_83E6500:: @ 83E6500
- .incbin "baserom.gba", 0x3E6500, 0x2C
-
-gUnknown_83E652C:: @ 83E652C
- .incbin "baserom.gba", 0x3E652C, 0x78
-
-gUnknown_83E65A4:: @ 83E65A4
- .incbin "baserom.gba", 0x3E65A4, 0xA4C
-
-gUnknown_83E6FF0:: @ 83E6FF0
- .incbin "baserom.gba", 0x3E6FF0, 0x1C
-
-gUnknown_83E700C:: @ 83E700C
- .incbin "baserom.gba", 0x3E700C, 0x20
-
-gUnknown_83E702C:: @ 83E702C
- .incbin "baserom.gba", 0x3E702C, 0x18
-
-gUnknown_83E7044:: @ 83E7044
- .incbin "baserom.gba", 0x3E7044, 0xD0
-
-gUnknown_83E7114:: @ 83E7114
- .incbin "baserom.gba", 0x3E7114, 0x35C
-
-gUnknown_83E7470:: @ 83E7470
- .incbin "baserom.gba", 0x3E7470, 0x68
-
-gUnknown_83E74D8:: @ 83E74D8
- .incbin "baserom.gba", 0x3E74D8, 0x18
-
-gUnknown_83E74F0:: @ 83E74F0
- .incbin "baserom.gba", 0x3E74F0, 0x178
-
-gUnknown_83E7668:: @ 83E7668
- .incbin "baserom.gba", 0x3E7668, 0x78
-
-gUnknown_83E76E0:: @ 83E76E0
- .incbin "baserom.gba", 0x3E76E0, 0x528
-
-gUnknown_83E7C08:: @ 83E7C08
- .incbin "baserom.gba", 0x3E7C08, 0x30
-
-gUnknown_83E7C38:: @ 83E7C38
- .incbin "baserom.gba", 0x3E7C38, 0x60
-
-gUnknown_83E7C98:: @ 83E7C98
- .incbin "baserom.gba", 0x3E7C98, 0x30
-
-gUnknown_83E7CC8:: @ 83E7CC8
- .incbin "baserom.gba", 0x3E7CC8, 0x2
-
-gUnknown_83E7CCA:: @ 83E7CCA
- .incbin "baserom.gba", 0x3E7CCA, 0x4
-
-gUnknown_83E7CCE:: @ 83E7CCE
- .incbin "baserom.gba", 0x3E7CCE, 0x6
-
-gUnknown_83E7CD4:: @ 83E7CD4
- .incbin "baserom.gba", 0x3E7CD4, 0x28
-
-gUnknown_83E7CFC:: @ 83E7CFC
- .incbin "baserom.gba", 0x3E7CFC, 0x14
-
-gUnknown_83E7D10:: @ 83E7D10
- .incbin "baserom.gba", 0x3E7D10, 0xC
-
-gUnknown_83E7D1C:: @ 83E7D1C
- .incbin "baserom.gba", 0x3E7D1C, 0x51B8
-
-gUnknown_83ECED4:: @ 83ECED4
- .incbin "baserom.gba", 0x3ECED4, 0xFEC
-
-gUnknown_83EDEC0:: @ 83EDEC0
- .incbin "baserom.gba", 0x3EDEC0, 0xD8
-
-gUnknown_83EDF98:: @ 83EDF98
- .incbin "baserom.gba", 0x3EDF98, 0x58
-
-gUnknown_83EDFF0:: @ 83EDFF0
- .incbin "baserom.gba", 0x3EDFF0, 0x8
-
-gUnknown_83EDFF8:: @ 83EDFF8
- .incbin "baserom.gba", 0x3EDFF8, 0xC
-
-gUnknown_83EE004:: @ 83EE004
- .incbin "baserom.gba", 0x3EE004, 0x4
-
-gUnknown_83EE008:: @ 83EE008
- .incbin "baserom.gba", 0x3EE008, 0x20
-
-gUnknown_83EE028:: @ 83EE028
- .incbin "baserom.gba", 0x3EE028, 0x808
-
-gUnknown_83EE830:: @ 83EE830
- .incbin "baserom.gba", 0x3EE830, 0x8
-
-gUnknown_83EE838:: @ 83EE838
- .incbin "baserom.gba", 0x3EE838, 0x58
-
-gUnknown_83EE890:: @ 83EE890
- .incbin "baserom.gba", 0x3EE890, 0x38
-
-gUnknown_83EE8C8:: @ 83EE8C8
- .incbin "baserom.gba", 0x3EE8C8, 0x8
-
-gUnknown_83EE8D0:: @ 83EE8D0
- .incbin "baserom.gba", 0x3EE8D0, 0x88
-
-gUnknown_83EE958:: @ 83EE958
- .incbin "baserom.gba", 0x3EE958, 0x40
-
-gUnknown_83EE998:: @ 83EE998
- .incbin "baserom.gba", 0x3EE998, 0xC
-
-gUnknown_83EE9A4:: @ 83EE9A4
- .incbin "baserom.gba", 0x3EE9A4, 0x18
-
-gUnknown_83EE9BC:: @ 83EE9BC
- .incbin "baserom.gba", 0x3EE9BC, 0x4
-
-gUnknown_83EE9C0:: @ 83EE9C0
- .incbin "baserom.gba", 0x3EE9C0, 0x8
-
-gUnknown_83EE9C8:: @ 83EE9C8
- .incbin "baserom.gba", 0x3EE9C8, 0xFC
-
-gUnknown_83EEAC4:: @ 83EEAC4
- .incbin "baserom.gba", 0x3EEAC4, 0xA4
-
-gUnknown_83EEB68:: @ 83EEB68
- .incbin "baserom.gba", 0x3EEB68, 0x88
-
-gUnknown_83EEBF0:: @ 83EEBF0
- .incbin "baserom.gba", 0x3EEBF0, 0x8
-
-gUnknown_83EEBF8:: @ 83EEBF8
- .incbin "baserom.gba", 0x3EEBF8, 0xA0
-
-gUnknown_83EEC98:: @ 83EEC98
- .incbin "baserom.gba", 0x3EEC98, 0x50
-
-gUnknown_83EECE8:: @ 83EECE8
- .incbin "baserom.gba", 0x3EECE8, 0x546
-
-gUnknown_83EF22E:: @ 83EF22E
- .incbin "baserom.gba", 0x3EF22E, 0xE
-
-gUnknown_83EF23C:: @ 83EF23C
- .incbin "baserom.gba", 0x3EF23C, 0x1E
-
-gUnknown_83EF25A:: @ 83EF25A
- .incbin "baserom.gba", 0x3EF25A, 0x2
-
-gUnknown_83EF25C:: @ 83EF25C
- .incbin "baserom.gba", 0x3EF25C, 0x20
-
-gUnknown_83EF27C:: @ 83EF27C
- .incbin "baserom.gba", 0x3EF27C, 0x20
-
-gUnknown_83EF29C:: @ 83EF29C
- .incbin "baserom.gba", 0x3EF29C, 0x20
-
-gUnknown_83EF2BC:: @ 83EF2BC
- .incbin "baserom.gba", 0x3EF2BC, 0x20
-
-gUnknown_83EF2DC:: @ 83EF2DC
- .incbin "baserom.gba", 0x3EF2DC, 0x40
-
-gUnknown_83EF31C:: @ 83EF31C
- .incbin "baserom.gba", 0x3EF31C, 0x68
-
-gUnknown_83EF384:: @ 83EF384
- .incbin "baserom.gba", 0x3EF384, 0x20
-
-gUnknown_83EF3A4:: @ 83EF3A4
- .incbin "baserom.gba", 0x3EF3A4, 0x20
-
-gUnknown_83EF3C4:: @ 83EF3C4
- .incbin "baserom.gba", 0x3EF3C4, 0x8C
-
-gUnknown_83EF450:: @ 83EF450
- .incbin "baserom.gba", 0x3EF450, 0x90
-
-gUnknown_83EF4E0:: @ 83EF4E0
- .incbin "baserom.gba", 0x3EF4E0, 0x44
-
-gUnknown_83EF524:: @ 83EF524
- .incbin "baserom.gba", 0x3EF524, 0x78
-
-gUnknown_83EF59C:: @ 83EF59C
- .incbin "baserom.gba", 0x3EF59C, 0x80
-
-gUnknown_83EF61C:: @ 83EF61C
- .incbin "baserom.gba", 0x3EF61C, 0xD14
-
-gUnknown_83F0330:: @ 83F0330
- .incbin "baserom.gba", 0x3F0330, 0x250
-
-gUnknown_83F0580:: @ 83F0580
- .incbin "baserom.gba", 0x3F0580, 0x31C
-
-gUnknown_83F089C:: @ 83F089C
- .incbin "baserom.gba", 0x3F089C, 0x260
-
-gUnknown_83F0AFC:: @ 83F0AFC
- .incbin "baserom.gba", 0x3F0AFC, 0x110
-
-gUnknown_83F0C0C:: @ 83F0C0C
- .incbin "baserom.gba", 0x3F0C0C, 0xE4
-
-gUnknown_83F0CF0:: @ 83F0CF0
- .incbin "baserom.gba", 0x3F0CF0, 0x11C
-
-gUnknown_83F0E0C:: @ 83F0E0C
- .incbin "baserom.gba", 0x3F0E0C, 0x110
-
-gUnknown_83F0F1C:: @ 83F0F1C
- .incbin "baserom.gba", 0x3F0F1C, 0x168
-
-gUnknown_83F1084:: @ 83F1084
- .incbin "baserom.gba", 0x3F1084, 0x10C
-
-gUnknown_83F1190:: @ 83F1190
- .incbin "baserom.gba", 0x3F1190, 0x13C
-
-gUnknown_83F12CC:: @ 83F12CC
- .incbin "baserom.gba", 0x3F12CC, 0x120
-
-gUnknown_83F13EC:: @ 83F13EC
- .incbin "baserom.gba", 0x3F13EC, 0x164
-
-gUnknown_83F1550:: @ 83F1550
- .incbin "baserom.gba", 0x3F1550, 0xF0
-
-gUnknown_83F1640:: @ 83F1640
- .incbin "baserom.gba", 0x3F1640, 0xF8
-
-gUnknown_83F1738:: @ 83F1738
- .incbin "baserom.gba", 0x3F1738, 0xCC
-
-gUnknown_83F1804:: @ 83F1804
- .incbin "baserom.gba", 0x3F1804, 0xD4
-
-gUnknown_83F18D8:: @ 83F18D8
- .incbin "baserom.gba", 0x3F18D8, 0x30
-
-gUnknown_83F1908:: @ 83F1908
- .incbin "baserom.gba", 0x3F1908, 0x70
-
-gUnknown_83F1978:: @ 83F1978
- .incbin "baserom.gba", 0x3F1978, 0x28
-
-gUnknown_83F19A0:: @ 83F19A0
- .incbin "baserom.gba", 0x3F19A0, 0xB0
-
-gUnknown_83F1A50:: @ 83F1A50
- .incbin "baserom.gba", 0x3F1A50, 0x10
-
-gUnknown_83F1A60:: @ 83F1A60
- .incbin "baserom.gba", 0x3F1A60, 0x30
-
-gUnknown_83F1A90:: @ 83F1A90
- .incbin "baserom.gba", 0x3F1A90, 0x4
-
-gUnknown_83F1A94:: @ 83F1A94
- .incbin "baserom.gba", 0x3F1A94, 0x8
-
-gUnknown_83F1A9C:: @ 83F1A9C
- .incbin "baserom.gba", 0x3F1A9C, 0x8
-
-gUnknown_83F1AA4:: @ 83F1AA4
- .incbin "baserom.gba", 0x3F1AA4, 0x5C
-
-gUnknown_83F1B00:: @ 83F1B00
- .incbin "baserom.gba", 0x3F1B00, 0xC
-
-gUnknown_83F1B0C:: @ 83F1B0C
- .incbin "baserom.gba", 0x3F1B0C, 0x8
-
-gUnknown_83F1B14:: @ 83F1B14
- .incbin "baserom.gba", 0x3F1B14, 0x8
-
-gUnknown_83F1B1C:: @ 83F1B1C
- .incbin "baserom.gba", 0x3F1B1C, 0x8
-
-gUnknown_83F1B24:: @ 83F1B24
- .incbin "baserom.gba", 0x3F1B24, 0x14
-
-gUnknown_83F1B38:: @ 83F1B38
- .incbin "baserom.gba", 0x3F1B38, 0x4
-
-gUnknown_83F1B3C:: @ 83F1B3C
- .incbin "baserom.gba", 0x3F1B3C, 0xE4
-
-gUnknown_83F1C20:: @ 83F1C20
- .incbin "baserom.gba", 0x3F1C20, 0x10
-
-gUnknown_83F1C30:: @ 83F1C30
- .incbin "baserom.gba", 0x3F1C30, 0x4
-
-gUnknown_83F1C34:: @ 83F1C34
- .incbin "baserom.gba", 0x3F1C34, 0x8
-
-gUnknown_83F1C3C:: @ 83F1C3C
- .incbin "baserom.gba", 0x3F1C3C, 0x14
-
-gUnknown_83F1C50:: @ 83F1C50
- .incbin "baserom.gba", 0x3F1C50, 0x4
-
-gUnknown_83F1C54:: @ 83F1C54
- .incbin "baserom.gba", 0x3F1C54, 0x10
-
-gUnknown_83F1C64:: @ 83F1C64
- .incbin "baserom.gba", 0x3F1C64, 0x4
-
-gUnknown_83F1C68:: @ 83F1C68
- .incbin "baserom.gba", 0x3F1C68, 0x8
-
-gUnknown_83F1C70:: @ 83F1C70
- .incbin "baserom.gba", 0x3F1C70, 0x24
-
-gUnknown_83F1C94:: @ 83F1C94
- .incbin "baserom.gba", 0x3F1C94, 0x4
-
-gUnknown_83F1C98:: @ 83F1C98
- .incbin "baserom.gba", 0x3F1C98, 0x8
-
-gUnknown_83F1CA0:: @ 83F1CA0
- .incbin "baserom.gba", 0x3F1CA0, 0x4
-
-gUnknown_83F1CA4:: @ 83F1CA4
- .incbin "baserom.gba", 0x3F1CA4, 0x4
-
-gUnknown_83F1CA8:: @ 83F1CA8
- .incbin "baserom.gba", 0x3F1CA8, 0x4
-
-gUnknown_83F1CAC:: @ 83F1CAC
- .incbin "baserom.gba", 0x3F1CAC, 0x1B4
-
-gUnknown_83F1E60:: @ 83F1E60
- .incbin "baserom.gba", 0x3F1E60, 0x318
-
-gUnknown_83F2178:: @ 83F2178
- .incbin "baserom.gba", 0x3F2178, 0x318
-
-gUnknown_83F2490:: @ 83F2490
- .incbin "baserom.gba", 0x3F2490, 0x294
-
-gUnknown_83F2724:: @ 83F2724
- .incbin "baserom.gba", 0x3F2724, 0x294
-
-gUnknown_83F29B8:: @ 83F29B8
- .incbin "baserom.gba", 0x3F29B8, 0x294
-
-gUnknown_83F2C4C:: @ 83F2C4C
- .incbin "baserom.gba", 0x3F2C4C, 0x294
-
-gUnknown_83F2EE0:: @ 83F2EE0
- .incbin "baserom.gba", 0x3F2EE0, 0x144
-
-gUnknown_83F3024:: @ 83F3024
- .incbin "baserom.gba", 0x3F3024, 0x2580
diff --git a/data/data_835B488.s b/data/data_835B488.s
new file mode 100644
index 000000000..de6460b81
--- /dev/null
+++ b/data/data_835B488.s
@@ -0,0 +1,2218 @@
+ .section .rodata
+
+ .align 2
+gUnknown_835B488:: @ 835B488
+ .incbin "baserom.gba", 0x35B488, 0x14
+
+gUnknown_835B49C:: @ 835B49C
+ .incbin "baserom.gba", 0x35B49C, 0x14
+
+gUnknown_835B4B0:: @ 835B4B0
+ .incbin "baserom.gba", 0x35B4B0, 0x14
+
+gUnknown_835B4C4:: @ 835B4C4
+ .incbin "baserom.gba", 0x35B4C4, 0x114
+
+gUnknown_835B5D8:: @ 835B5D8
+ .incbin "baserom.gba", 0x35B5D8, 0x18C
+
+gUnknown_835B764:: @ 835B764
+ .incbin "baserom.gba", 0x35B764, 0xB0
+
+gUnknown_835B814:: @ 835B814
+ .incbin "baserom.gba", 0x35B814, 0xC
+
+gUnknown_835B820:: @ 835B820
+ .incbin "baserom.gba", 0x35B820, 0x8
+
+gUnknown_835B828:: @ 835B828
+ .incbin "baserom.gba", 0x35B828, 0x14
+
+gUnknown_835B83C:: @ 835B83C
+ .incbin "baserom.gba", 0x35B83C, 0x8
+
+gUnknown_835B844:: @ 835B844
+ .incbin "baserom.gba", 0x35B844, 0x20
+
+gUnknown_835B864:: @ 835B864
+ .incbin "baserom.gba", 0x35B864, 0x10
+
+gUnknown_835B874:: @ 835B874
+ .incbin "baserom.gba", 0x35B874, 0xC
+
+gUnknown_835B880:: @ 835B880
+ .incbin "baserom.gba", 0x35B880, 0x2
+
+gUnknown_835B882:: @ 835B882
+ .incbin "baserom.gba", 0x35B882, 0xC
+
+gUnknown_835B88E:: @ 835B88E
+ .incbin "baserom.gba", 0x35B88E, 0x2
+
+gUnknown_835B890:: @ 835B890
+ .incbin "baserom.gba", 0x35B890, 0x10
+
+gUnknown_835B8A0:: @ 835B8A0
+ .incbin "baserom.gba", 0x35B8A0, 0xC
+
+gUnknown_835B8AC:: @ 835B8AC
+ .incbin "baserom.gba", 0x35B8AC, 0x4
+
+gUnknown_835B8B0:: @ 835B8B0
+ .incbin "baserom.gba", 0x35B8B0, 0x10
+
+gUnknown_835B8C0:: @ 835B8C0
+ .incbin "baserom.gba", 0x35B8C0, 0x4
+
+gUnknown_835B8C4:: @ 835B8C4
+ .incbin "baserom.gba", 0x35B8C4, 0x8
+
+gUnknown_835B8CC:: @ 835B8CC
+ .incbin "baserom.gba", 0x35B8CC, 0x40
+
+gUnknown_835B90C:: @ 835B90C
+ .incbin "baserom.gba", 0x35B90C, 0x6
+
+gUnknown_835B912:: @ 835B912
+ .incbin "baserom.gba", 0x35B912, 0x6
+
+gUnknown_835B918:: @ 835B918
+ .incbin "baserom.gba", 0x35B918, 0x2
+
+gUnknown_835B91A:: @ 835B91A
+ .incbin "baserom.gba", 0x35B91A, 0x6
+
+gUnknown_835B920:: @ 835B920
+ .incbin "baserom.gba", 0x35B920, 0xC
+
+gUnknown_835B92C:: @ 835B92C
+ .incbin "baserom.gba", 0x35B92C, 0x8
+
+gUnknown_835B934:: @ 835B934
+ .incbin "baserom.gba", 0x35B934, 0x10
+
+gUnknown_835B944:: @ 835B944
+ .incbin "baserom.gba", 0x35B944, 0x18
+
+gUnknown_835B95C:: @ 835B95C
+ .incbin "baserom.gba", 0x35B95C, 0x3DA2C
+
+gUnknown_8399388:: @ 8399388
+ .incbin "baserom.gba", 0x399388, 0x908
+
+gUnknown_8399C90:: @ 8399C90
+ .incbin "baserom.gba", 0x399C90, 0x5F38
+
+gUnknown_839FBC8:: @ 839FBC8
+ .incbin "baserom.gba", 0x39FBC8, 0x144
+
+gUnknown_839FD0C:: @ 839FD0C
+ .incbin "baserom.gba", 0x39FD0C, 0x51
+
+gUnknown_839FD5D:: @ 839FD5D
+ .incbin "baserom.gba", 0x39FD5D, 0x53
+
+gUnknown_839FDB0:: @ 839FDB0
+ .incbin "baserom.gba", 0x39FDB0, 0x260
+
+gUnknown_83A0010:: @ 83A0010
+ .incbin "baserom.gba", 0x3A0010, 0x3688
+
+gUnknown_83A3698:: @ 83A3698
+ .incbin "baserom.gba", 0x3A3698, 0x1AC0
+
+gUnknown_83A5158:: @ 83A5158
+ .incbin "baserom.gba", 0x3A5158, 0xB0
+
+gUnknown_83A5208:: @ 83A5208
+ .incbin "baserom.gba", 0x3A5208, 0x70
+
+gUnknown_83A5278:: @ 83A5278
+ .incbin "baserom.gba", 0x3A5278, 0xB8
+
+gUnknown_83A5330:: @ 83A5330
+ .incbin "baserom.gba", 0x3A5330, 0x18
+
+gUnknown_83A5348:: @ 83A5348
+ .incbin "baserom.gba", 0x3A5348, 0xCB8
+
+gUnknown_83A6000:: @ 83A6000
+ .incbin "baserom.gba", 0x3A6000, 0x10
+
+gUnknown_83A6010:: @ 83A6010
+ .incbin "baserom.gba", 0x3A6010, 0x8
+
+gUnknown_83A6018:: @ 83A6018
+ .incbin "baserom.gba", 0x3A6018, 0x1C
+
+gUnknown_83A6034:: @ 83A6034
+ .incbin "baserom.gba", 0x3A6034, 0x1C
+
+gUnknown_83A6050:: @ 83A6050
+ .incbin "baserom.gba", 0x3A6050, 0x4
+
+gUnknown_83A6054:: @ 83A6054
+ .incbin "baserom.gba", 0x3A6054, 0x2C
+
+gUnknown_83A6080:: @ 83A6080
+ .incbin "baserom.gba", 0x3A6080, 0x14
+
+gUnknown_83A6094:: @ 83A6094
+ .incbin "baserom.gba", 0x3A6094, 0x1C
+
+gUnknown_83A60B0:: @ 83A60B0
+ .incbin "baserom.gba", 0x3A60B0, 0x4
+
+gUnknown_83A60B4:: @ 83A60B4
+ .incbin "baserom.gba", 0x3A60B4, 0x1C
+
+gUnknown_83A60D0:: @ 83A60D0
+ .incbin "baserom.gba", 0x3A60D0, 0x4
+
+gUnknown_83A60D4:: @ 83A60D4
+ .incbin "baserom.gba", 0x3A60D4, 0xC
+
+gUnknown_83A60E0:: @ 83A60E0
+ .incbin "baserom.gba", 0x3A60E0, 0x14
+
+gUnknown_83A60F4:: @ 83A60F4
+ .incbin "baserom.gba", 0x3A60F4, 0x14
+
+gUnknown_83A6108:: @ 83A6108
+ .incbin "baserom.gba", 0x3A6108, 0x14
+
+gUnknown_83A611C:: @ 83A611C
+ .incbin "baserom.gba", 0x3A611C, 0x4
+
+gUnknown_83A6120:: @ 83A6120
+ .incbin "baserom.gba", 0x3A6120, 0x14
+
+gUnknown_83A6134:: @ 83A6134
+ .incbin "baserom.gba", 0x3A6134, 0x4
+
+gUnknown_83A6138:: @ 83A6138
+ .incbin "baserom.gba", 0x3A6138, 0x14
+
+gUnknown_83A614C:: @ 83A614C
+ .incbin "baserom.gba", 0x3A614C, 0x4
+
+gUnknown_83A6150:: @ 83A6150
+ .incbin "baserom.gba", 0x3A6150, 0x14
+
+gUnknown_83A6164:: @ 83A6164
+ .incbin "baserom.gba", 0x3A6164, 0x4
+
+gUnknown_83A6168:: @ 83A6168
+ .incbin "baserom.gba", 0x3A6168, 0x14
+
+gUnknown_83A617C:: @ 83A617C
+ .incbin "baserom.gba", 0x3A617C, 0x4
+
+gUnknown_83A6180:: @ 83A6180
+ .incbin "baserom.gba", 0x3A6180, 0x14
+
+gUnknown_83A6194:: @ 83A6194
+ .incbin "baserom.gba", 0x3A6194, 0x4
+
+gUnknown_83A6198:: @ 83A6198
+ .incbin "baserom.gba", 0x3A6198, 0x14
+
+gUnknown_83A61AC:: @ 83A61AC
+ .incbin "baserom.gba", 0x3A61AC, 0x4
+
+gUnknown_83A61B0:: @ 83A61B0
+ .incbin "baserom.gba", 0x3A61B0, 0x14
+
+gUnknown_83A61C4:: @ 83A61C4
+ .incbin "baserom.gba", 0x3A61C4, 0x4
+
+gUnknown_83A61C8:: @ 83A61C8
+ .incbin "baserom.gba", 0x3A61C8, 0x10
+
+gUnknown_83A61D8:: @ 83A61D8
+ .incbin "baserom.gba", 0x3A61D8, 0x8
+
+gUnknown_83A61E0:: @ 83A61E0
+ .incbin "baserom.gba", 0x3A61E0, 0x10
+
+gUnknown_83A61F0:: @ 83A61F0
+ .incbin "baserom.gba", 0x3A61F0, 0x8
+
+gUnknown_83A61F8:: @ 83A61F8
+ .incbin "baserom.gba", 0x3A61F8, 0x10
+
+gUnknown_83A6208:: @ 83A6208
+ .incbin "baserom.gba", 0x3A6208, 0xC
+
+gUnknown_83A6214:: @ 83A6214
+ .incbin "baserom.gba", 0x3A6214, 0x4
+
+gUnknown_83A6218:: @ 83A6218
+ .incbin "baserom.gba", 0x3A6218, 0xC
+
+gUnknown_83A6224:: @ 83A6224
+ .incbin "baserom.gba", 0x3A6224, 0x4
+
+gUnknown_83A6228:: @ 83A6228
+ .incbin "baserom.gba", 0x3A6228, 0xC
+
+gUnknown_83A6234:: @ 83A6234
+ .incbin "baserom.gba", 0x3A6234, 0x4
+
+gUnknown_83A6238:: @ 83A6238
+ .incbin "baserom.gba", 0x3A6238, 0xC
+
+gUnknown_83A6244:: @ 83A6244
+ .incbin "baserom.gba", 0x3A6244, 0x4
+
+gUnknown_83A6248:: @ 83A6248
+ .incbin "baserom.gba", 0x3A6248, 0xC
+
+gUnknown_83A6254:: @ 83A6254
+ .incbin "baserom.gba", 0x3A6254, 0x4
+
+gUnknown_83A6258:: @ 83A6258
+ .incbin "baserom.gba", 0x3A6258, 0xC
+
+gUnknown_83A6264:: @ 83A6264
+ .incbin "baserom.gba", 0x3A6264, 0x4
+
+gUnknown_83A6268:: @ 83A6268
+ .incbin "baserom.gba", 0x3A6268, 0xC
+
+gUnknown_83A6274:: @ 83A6274
+ .incbin "baserom.gba", 0x3A6274, 0xC
+
+gUnknown_83A6280:: @ 83A6280
+ .incbin "baserom.gba", 0x3A6280, 0x4
+
+gUnknown_83A6284:: @ 83A6284
+ .incbin "baserom.gba", 0x3A6284, 0xC
+
+gUnknown_83A6290:: @ 83A6290
+ .incbin "baserom.gba", 0x3A6290, 0x4
+
+gUnknown_83A6294:: @ 83A6294
+ .incbin "baserom.gba", 0x3A6294, 0xC
+
+gUnknown_83A62A0:: @ 83A62A0
+ .incbin "baserom.gba", 0x3A62A0, 0x4
+
+gUnknown_83A62A4:: @ 83A62A4
+ .incbin "baserom.gba", 0x3A62A4, 0xC
+
+gUnknown_83A62B0:: @ 83A62B0
+ .incbin "baserom.gba", 0x3A62B0, 0x4
+
+gUnknown_83A62B4:: @ 83A62B4
+ .incbin "baserom.gba", 0x3A62B4, 0xC
+
+gUnknown_83A62C0:: @ 83A62C0
+ .incbin "baserom.gba", 0x3A62C0, 0x4
+
+gUnknown_83A62C4:: @ 83A62C4
+ .incbin "baserom.gba", 0x3A62C4, 0xC
+
+gUnknown_83A62D0:: @ 83A62D0
+ .incbin "baserom.gba", 0x3A62D0, 0x4
+
+gUnknown_83A62D4:: @ 83A62D4
+ .incbin "baserom.gba", 0x3A62D4, 0xC
+
+gUnknown_83A62E0:: @ 83A62E0
+ .incbin "baserom.gba", 0x3A62E0, 0x4
+
+gUnknown_83A62E4:: @ 83A62E4
+ .incbin "baserom.gba", 0x3A62E4, 0xC
+
+gUnknown_83A62F0:: @ 83A62F0
+ .incbin "baserom.gba", 0x3A62F0, 0x4
+
+gUnknown_83A62F4:: @ 83A62F4
+ .incbin "baserom.gba", 0x3A62F4, 0xC
+
+gUnknown_83A6300:: @ 83A6300
+ .incbin "baserom.gba", 0x3A6300, 0x4
+
+gUnknown_83A6304:: @ 83A6304
+ .incbin "baserom.gba", 0x3A6304, 0xC
+
+gUnknown_83A6310:: @ 83A6310
+ .incbin "baserom.gba", 0x3A6310, 0x4
+
+gUnknown_83A6314:: @ 83A6314
+ .incbin "baserom.gba", 0x3A6314, 0xC
+
+gUnknown_83A6320:: @ 83A6320
+ .incbin "baserom.gba", 0x3A6320, 0x4
+
+gUnknown_83A6324:: @ 83A6324
+ .incbin "baserom.gba", 0x3A6324, 0xC
+
+gUnknown_83A6330:: @ 83A6330
+ .incbin "baserom.gba", 0x3A6330, 0x4
+
+gUnknown_83A6334:: @ 83A6334
+ .incbin "baserom.gba", 0x3A6334, 0xC
+
+gUnknown_83A6340:: @ 83A6340
+ .incbin "baserom.gba", 0x3A6340, 0x4
+
+gUnknown_83A6344:: @ 83A6344
+ .incbin "baserom.gba", 0x3A6344, 0xC
+
+gUnknown_83A6350:: @ 83A6350
+ .incbin "baserom.gba", 0x3A6350, 0x4
+
+gUnknown_83A6354:: @ 83A6354
+ .incbin "baserom.gba", 0x3A6354, 0xC
+
+gUnknown_83A6360:: @ 83A6360
+ .incbin "baserom.gba", 0x3A6360, 0x4
+
+gUnknown_83A6364:: @ 83A6364
+ .incbin "baserom.gba", 0x3A6364, 0xC
+
+gUnknown_83A6370:: @ 83A6370
+ .incbin "baserom.gba", 0x3A6370, 0x4
+
+gUnknown_83A6374:: @ 83A6374
+ .incbin "baserom.gba", 0x3A6374, 0xC
+
+gUnknown_83A6380:: @ 83A6380
+ .incbin "baserom.gba", 0x3A6380, 0x4
+
+gUnknown_83A6384:: @ 83A6384
+ .incbin "baserom.gba", 0x3A6384, 0xC
+
+gUnknown_83A6390:: @ 83A6390
+ .incbin "baserom.gba", 0x3A6390, 0x2C
+
+gUnknown_83A63BC:: @ 83A63BC
+ .incbin "baserom.gba", 0x3A63BC, 0xC
+
+gUnknown_83A63C8:: @ 83A63C8
+ .incbin "baserom.gba", 0x3A63C8, 0x4
+
+gUnknown_83A63CC:: @ 83A63CC
+ .incbin "baserom.gba", 0x3A63CC, 0x8
+
+gUnknown_83A63D4:: @ 83A63D4
+ .incbin "baserom.gba", 0x3A63D4, 0x8
+
+gUnknown_83A63DC:: @ 83A63DC
+ .incbin "baserom.gba", 0x3A63DC, 0x8
+
+gUnknown_83A63E4:: @ 83A63E4
+ .incbin "baserom.gba", 0x3A63E4, 0xC
+
+gUnknown_83A63F0:: @ 83A63F0
+ .incbin "baserom.gba", 0x3A63F0, 0xC
+
+gUnknown_83A63FC:: @ 83A63FC
+ .incbin "baserom.gba", 0x3A63FC, 0x8
+
+gUnknown_83A6404:: @ 83A6404
+ .incbin "baserom.gba", 0x3A6404, 0x8
+
+gUnknown_83A640C:: @ 83A640C
+ .incbin "baserom.gba", 0x3A640C, 0x9
+
+gUnknown_83A6415:: @ 83A6415
+ .incbin "baserom.gba", 0x3A6415, 0x9
+
+gUnknown_83A641E:: @ 83A641E
+ .incbin "baserom.gba", 0x3A641E, 0x9
+
+gUnknown_83A6427:: @ 83A6427
+ .incbin "baserom.gba", 0x3A6427, 0x9
+
+gUnknown_83A6430:: @ 83A6430
+ .incbin "baserom.gba", 0x3A6430, 0x9
+
+gUnknown_83A6439:: @ 83A6439
+ .incbin "baserom.gba", 0x3A6439, 0x9
+
+gUnknown_83A6442:: @ 83A6442
+ .incbin "baserom.gba", 0x3A6442, 0x9
+
+gUnknown_83A644B:: @ 83A644B
+ .incbin "baserom.gba", 0x3A644B, 0x9
+
+gUnknown_83A6454:: @ 83A6454
+ .incbin "baserom.gba", 0x3A6454, 0x9
+
+gUnknown_83A645D:: @ 83A645D
+ .incbin "baserom.gba", 0x3A645D, 0x9
+
+gUnknown_83A6466:: @ 83A6466
+ .incbin "baserom.gba", 0x3A6466, 0x9
+
+gUnknown_83A646F:: @ 83A646F
+ .incbin "baserom.gba", 0x3A646F, 0x9
+
+gUnknown_83A6478:: @ 83A6478
+ .incbin "baserom.gba", 0x3A6478, 0x9
+
+gUnknown_83A6481:: @ 83A6481
+ .incbin "baserom.gba", 0x3A6481, 0x9
+
+gUnknown_83A648A:: @ 83A648A
+ .incbin "baserom.gba", 0x3A648A, 0x9
+
+gUnknown_83A6493:: @ 83A6493
+ .incbin "baserom.gba", 0x3A6493, 0x9
+
+gUnknown_83A649C:: @ 83A649C
+ .incbin "baserom.gba", 0x3A649C, 0xC
+
+gUnknown_83A64A8:: @ 83A64A8
+ .incbin "baserom.gba", 0x3A64A8, 0x10
+
+gUnknown_83A64B8:: @ 83A64B8
+ .incbin "baserom.gba", 0x3A64B8, 0x10
+
+gUnknown_83A64C8:: @ 83A64C8
+ .incbin "baserom.gba", 0x3A64C8, 0x24
+
+gUnknown_83A64EC:: @ 83A64EC
+ .incbin "baserom.gba", 0x3A64EC, 0x5
+
+gUnknown_83A64F1:: @ 83A64F1
+ .incbin "baserom.gba", 0x3A64F1, 0x5
+
+gUnknown_83A64F6:: @ 83A64F6
+ .incbin "baserom.gba", 0x3A64F6, 0x5
+
+gUnknown_83A64FB:: @ 83A64FB
+ .incbin "baserom.gba", 0x3A64FB, 0x5
+
+gUnknown_83A6500:: @ 83A6500
+ .incbin "baserom.gba", 0x3A6500, 0x5
+
+gUnknown_83A6505:: @ 83A6505
+ .incbin "baserom.gba", 0x3A6505, 0x5
+
+gUnknown_83A650A:: @ 83A650A
+ .incbin "baserom.gba", 0x3A650A, 0x5
+
+gUnknown_83A650F:: @ 83A650F
+ .incbin "baserom.gba", 0x3A650F, 0x5
+
+gUnknown_83A6514:: @ 83A6514
+ .incbin "baserom.gba", 0x3A6514, 0x5
+
+gUnknown_83A6519:: @ 83A6519
+ .incbin "baserom.gba", 0x3A6519, 0x5
+
+gUnknown_83A651E:: @ 83A651E
+ .incbin "baserom.gba", 0x3A651E, 0x5
+
+gUnknown_83A6523:: @ 83A6523
+ .incbin "baserom.gba", 0x3A6523, 0x5
+
+gUnknown_83A6528:: @ 83A6528
+ .incbin "baserom.gba", 0x3A6528, 0x5
+
+gUnknown_83A652D:: @ 83A652D
+ .incbin "baserom.gba", 0x3A652D, 0x5
+
+gUnknown_83A6532:: @ 83A6532
+ .incbin "baserom.gba", 0x3A6532, 0x5
+
+gUnknown_83A6537:: @ 83A6537
+ .incbin "baserom.gba", 0x3A6537, 0x5
+
+gUnknown_83A653C:: @ 83A653C
+ .incbin "baserom.gba", 0x3A653C, 0x5
+
+gUnknown_83A6541:: @ 83A6541
+ .incbin "baserom.gba", 0x3A6541, 0x5
+
+gUnknown_83A6546:: @ 83A6546
+ .incbin "baserom.gba", 0x3A6546, 0x5
+
+gUnknown_83A654B:: @ 83A654B
+ .incbin "baserom.gba", 0x3A654B, 0x5
+
+gUnknown_83A6550:: @ 83A6550
+ .incbin "baserom.gba", 0x3A6550, 0x5
+
+gUnknown_83A6555:: @ 83A6555
+ .incbin "baserom.gba", 0x3A6555, 0x5
+
+gUnknown_83A655A:: @ 83A655A
+ .incbin "baserom.gba", 0x3A655A, 0x5
+
+gUnknown_83A655F:: @ 83A655F
+ .incbin "baserom.gba", 0x3A655F, 0x5
+
+gUnknown_83A6564:: @ 83A6564
+ .incbin "baserom.gba", 0x3A6564, 0x5
+
+gUnknown_83A6569:: @ 83A6569
+ .incbin "baserom.gba", 0x3A6569, 0x5
+
+gUnknown_83A656E:: @ 83A656E
+ .incbin "baserom.gba", 0x3A656E, 0x5
+
+gUnknown_83A6573:: @ 83A6573
+ .incbin "baserom.gba", 0x3A6573, 0x5
+
+gUnknown_83A6578:: @ 83A6578
+ .incbin "baserom.gba", 0x3A6578, 0x5
+
+gUnknown_83A657D:: @ 83A657D
+ .incbin "baserom.gba", 0x3A657D, 0x5
+
+gUnknown_83A6582:: @ 83A6582
+ .incbin "baserom.gba", 0x3A6582, 0x5
+
+gUnknown_83A6587:: @ 83A6587
+ .incbin "baserom.gba", 0x3A6587, 0x5
+
+gUnknown_83A658C:: @ 83A658C
+ .incbin "baserom.gba", 0x3A658C, 0x5
+
+gUnknown_83A6591:: @ 83A6591
+ .incbin "baserom.gba", 0x3A6591, 0x8
+
+gUnknown_83A6599:: @ 83A6599
+ .incbin "baserom.gba", 0x3A6599, 0x10
+
+gUnknown_83A65A9:: @ 83A65A9
+ .incbin "baserom.gba", 0x3A65A9, 0x13
+
+gUnknown_83A65BC:: @ 83A65BC
+ .incbin "baserom.gba", 0x3A65BC, 0x2C8
+
+gUnknown_83A6884:: @ 83A6884
+ .incbin "baserom.gba", 0x3A6884, 0xD4
+
+gUnknown_83A6958:: @ 83A6958
+ .incbin "baserom.gba", 0x3A6958, 0x6
+
+gUnknown_83A695E:: @ 83A695E
+ .incbin "baserom.gba", 0x3A695E, 0x6C6
+
+gUnknown_83A7024:: @ 83A7024
+ .incbin "baserom.gba", 0x3A7024, 0x8
+
+gUnknown_83A702C:: @ 83A702C
+ .incbin "baserom.gba", 0x3A702C, 0x18
+
+gUnknown_83A7044:: @ 83A7044
+ .incbin "baserom.gba", 0x3A7044, 0x18
+
+gUnknown_83A705C:: @ 83A705C
+ .incbin "baserom.gba", 0x3A705C, 0x10
+
+gUnknown_83A706C:: @ 83A706C
+ .incbin "baserom.gba", 0x3A706C, 0x10
+
+gUnknown_83A707C:: @ 83A707C
+ .incbin "baserom.gba", 0x3A707C, 0x10
+
+gUnknown_83A708C:: @ 83A708C
+ .incbin "baserom.gba", 0x3A708C, 0x10
+
+gUnknown_83A709C:: @ 83A709C
+ .incbin "baserom.gba", 0x3A709C, 0xC
+
+gUnknown_83A70A8:: @ 83A70A8
+ .incbin "baserom.gba", 0x3A70A8, 0x4
+
+gUnknown_83A70AC:: @ 83A70AC
+ .incbin "baserom.gba", 0x3A70AC, 0x10
+
+gUnknown_83A70BC:: @ 83A70BC
+ .incbin "baserom.gba", 0x3A70BC, 0xE0
+
+gUnknown_83A719C:: @ 83A719C
+ .incbin "baserom.gba", 0x3A719C, 0x14
+
+gUnknown_83A71B0:: @ 83A71B0
+ .incbin "baserom.gba", 0x3A71B0, 0x3C
+
+gUnknown_83A71EC:: @ 83A71EC
+ .incbin "baserom.gba", 0x3A71EC, 0xC
+
+gUnknown_83A71F8:: @ 83A71F8
+ .incbin "baserom.gba", 0x3A71F8, 0x6
+
+gUnknown_83A71FE:: @ 83A71FE
+ .incbin "baserom.gba", 0x3A71FE, 0x4
+
+gUnknown_83A7202:: @ 83A7202
+ .incbin "baserom.gba", 0x3A7202, 0x6
+
+gUnknown_83A7208:: @ 83A7208
+ .incbin "baserom.gba", 0x3A7208, 0x4
+
+ .align 2
+gUnknown_83A720C:: @ 83A720C
+ .asciz "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/evobjmv.c"
+
+ .align 2
+gUnknown_83A7240:: @ 83A7240
+ .asciz "0"
+
+ .align 2
+gNullScriptPtr:: @ 83A7244
+ .incbin "baserom.gba", 0x3A7244, 0x4
+
+gUnknown_83A7248:: @ 83A7248
+ .incbin "baserom.gba", 0x3A7248, 0x14
+
+gUnknown_83A725C:: @ 83A725C
+ .asciz "C:/WORK/POKeFRLG/src/pm_lgfr_ose/source/scrcmd.c"
+
+ .align 2
+gUnknown_83A7290:: @ 83A7290
+ .asciz "0"
+
+ .align 2
+gUnknown_83A7294:: @ 83A7294
+ .incbin "baserom.gba", 0x3A7294, 0xC
+
+gUnknown_83A72A0:: @ 83A72A0
+ .incbin "baserom.gba", 0x3A72A0, 0x2
+
+gUnknown_83A72A2:: @ 83A72A2
+ .incbin "baserom.gba", 0x3A72A2, 0x6
+
+gUnknown_83A72A8:: @ 83A72A8
+ .incbin "baserom.gba", 0x3A72A8, 0x68
+
+gUnknown_83A7310:: @ 83A7310
+ .incbin "baserom.gba", 0x3A7310, 0x20
+
+gUnknown_83A7330:: @ 83A7330
+ .incbin "baserom.gba", 0x3A7330, 0x14
+
+gUnknown_83A7344:: @ 83A7344
+ .incbin "baserom.gba", 0x3A7344, 0x48
+
+gUnknown_83A738C:: @ 83A738C
+ .incbin "baserom.gba", 0x3A738C, 0x8
+
+gUnknown_83A7394:: @ 83A7394
+ .incbin "baserom.gba", 0x3A7394, 0x24
+
+gUnknown_83A73B8:: @ 83A73B8
+ .incbin "baserom.gba", 0x3A73B8, 0x4
+
+gUnknown_83A73BC:: @ 83A73BC
+ .incbin "baserom.gba", 0x3A73BC, 0x10
+
+gUnknown_83A73CC:: @ 83A73CC
+ .incbin "baserom.gba", 0x3A73CC, 0x8
+
+gUnknown_83A73D4:: @ 83A73D4
+ .incbin "baserom.gba", 0x3A73D4, 0x4
+
+gUnknown_83A73D8:: @ 83A73D8
+ .incbin "baserom.gba", 0x3A73D8, 0x4
+
+gUnknown_83A73DC:: @ 83A73DC
+ .incbin "baserom.gba", 0x3A73DC, 0x284
+
+gUnknown_83A7660:: @ 83A7660
+ .incbin "baserom.gba", 0x3A7660, 0x2FF4
+
+gUnknown_83AA654:: @ 83AA654
+ .incbin "baserom.gba", 0x3AA654, 0x1220
+
+gUnknown_83AB874:: @ 83AB874
+ .incbin "baserom.gba", 0x3AB874, 0x540
+
+gUnknown_83ABDB4:: @ 83ABDB4
+ .incbin "baserom.gba", 0x3ABDB4, 0x434
+
+gUnknown_83AC1E8:: @ 83AC1E8
+ .incbin "baserom.gba", 0x3AC1E8, 0x410
+
+gUnknown_83AC5F8:: @ 83AC5F8
+ .incbin "baserom.gba", 0x3AC5F8, 0x1D0
+
+gUnknown_83AC7C8:: @ 83AC7C8
+ .incbin "baserom.gba", 0x3AC7C8, 0x188
+
+gUnknown_83AC950:: @ 83AC950
+ .incbin "baserom.gba", 0x3AC950, 0x10
+
+gUnknown_83AC960:: @ 83AC960
+ .incbin "baserom.gba", 0x3AC960, 0x10
+
+gUnknown_83AC970:: @ 83AC970
+ .incbin "baserom.gba", 0x3AC970, 0x20
+
+sFanfares:: @ 83AC990
+ .incbin "baserom.gba", 0x3AC990, 0x40
+
+gUnknown_83AC9D0:: @ 83AC9D0
+ .incbin "baserom.gba", 0x3AC9D0, 0x238
+
+gUnknown_83ACC08:: @ 83ACC08
+ .incbin "baserom.gba", 0x3ACC08, 0x440
+
+gUnknown_83AD048:: @ 83AD048
+ .incbin "baserom.gba", 0x3AD048, 0x308
+
+gUnknown_83AD350:: @ 83AD350
+ .incbin "baserom.gba", 0x3AD350, 0x120
+
+gUnknown_83AD470:: @ 83AD470
+ .incbin "baserom.gba", 0x3AD470, 0x4E0
+
+gUnknown_83AD950:: @ 83AD950
+ .incbin "baserom.gba", 0x3AD950, 0x308
+
+gUnknown_83ADC58:: @ 83ADC58
+ .incbin "baserom.gba", 0x3ADC58, 0x120
+
+gUnknown_83ADD78:: @ 83ADD78
+ .incbin "baserom.gba", 0x3ADD78, 0xA0
+
+gUnknown_83ADE18:: @ 83ADE18
+ .incbin "baserom.gba", 0x3ADE18, 0x144
+
+gUnknown_83ADF5C:: @ 83ADF5C
+ .incbin "baserom.gba", 0x3ADF5C, 0xC0
+
+gUnknown_83AE01C:: @ 83AE01C
+ .incbin "baserom.gba", 0x3AE01C, 0x20
+
+gUnknown_83AE03C:: @ 83AE03C
+ .incbin "baserom.gba", 0x3AE03C, 0x10
+
+gUnknown_83AE04C:: @ 83AE04C
+ .incbin "baserom.gba", 0x3AE04C, 0x4
+
+gUnknown_83AE050:: @ 83AE050
+ .incbin "baserom.gba", 0x3AE050, 0x4
+
+gUnknown_83AE054:: @ 83AE054
+ .incbin "baserom.gba", 0x3AE054, 0x30
+
+gUnknown_83AE084:: @ 83AE084
+ .incbin "baserom.gba", 0x3AE084, 0x114D0
+
+gUnknown_83BF554:: @ 83BF554
+ .incbin "baserom.gba", 0x3BF554, 0x8
+
+gUnknown_83BF55C:: @ 83BF55C
+ .incbin "baserom.gba", 0x3BF55C, 0x18
+
+gUnknown_83BF574:: @ 83BF574
+ .incbin "baserom.gba", 0x3BF574, 0x18
+
+gUnknown_83BF58C:: @ 83BF58C
+ .incbin "baserom.gba", 0x3BF58C, 0x1C
+
+gUnknown_83BF5A8:: @ 83BF5A8
+ .incbin "baserom.gba", 0x3BF5A8, 0x55C
+
+gUnknown_83BFB04:: @ 83BFB04
+ .incbin "baserom.gba", 0x3BFB04, 0x18
+
+gUnknown_83BFB1C:: @ 83BFB1C
+ .incbin "baserom.gba", 0x3BFB1C, 0x20
+
+gUnknown_83BFB3C:: @ 83BFB3C
+ .incbin "baserom.gba", 0x3BFB3C, 0x20
+
+gUnknown_83BFB5C:: @ 83BFB5C
+ .incbin "baserom.gba", 0x3BFB5C, 0x18
+
+gUnknown_83BFB74:: @ 83BFB74
+ .incbin "baserom.gba", 0x3BFB74, 0x10
+
+gUnknown_83BFB84:: @ 83BFB84
+ .incbin "baserom.gba", 0x3BFB84, 0x18
+
+gUnknown_83BFB9C:: @ 83BFB9C
+ .incbin "baserom.gba", 0x3BFB9C, 0x20
+
+gUnknown_83BFBBC:: @ 83BFBBC
+ .incbin "baserom.gba", 0x3BFBBC, 0x18
+
+gUnknown_83BFBD4:: @ 83BFBD4
+ .incbin "baserom.gba", 0x3BFBD4, 0x2FE8
+
+gUnknown_83C2BBC:: @ 83C2BBC
+ .incbin "baserom.gba", 0x3C2BBC, 0x4
+
+gUnknown_83C2BC0:: @ 83C2BC0
+ .incbin "baserom.gba", 0x3C2BC0, 0xF0
+
+gUnknown_83C2CB0:: @ 83C2CB0
+ .incbin "baserom.gba", 0x3C2CB0, 0x10
+
+gUnknown_83C2CC0:: @ 83C2CC0
+ .incbin "baserom.gba", 0x3C2CC0, 0x20
+
+gUnknown_83C2CE0:: @ 83C2CE0
+ .incbin "baserom.gba", 0x3C2CE0, 0x20
+
+gUnknown_83C2D00:: @ 83C2D00
+ .incbin "baserom.gba", 0x3C2D00, 0x20
+
+gUnknown_83C2D20:: @ 83C2D20
+ .incbin "baserom.gba", 0x3C2D20, 0x820
+
+gUnknown_83C3540:: @ 83C3540
+ .incbin "baserom.gba", 0x3C3540, 0x3080
+
+gUnknown_83C65C0:: @ 83C65C0
+ .incbin "baserom.gba", 0x3C65C0, 0x4
+
+gUnknown_83C65C4:: @ 83C65C4
+ .incbin "baserom.gba", 0x3C65C4, 0x4
+
+gUnknown_83C65C8:: @ 83C65C8
+ .incbin "baserom.gba", 0x3C65C8, 0xC
+
+gUnknown_83C65D4:: @ 83C65D4
+ .incbin "baserom.gba", 0x3C65D4, 0x1C
+
+gUnknown_83C65F0:: @ 83C65F0
+ .incbin "baserom.gba", 0x3C65F0, 0x18
+
+gUnknown_83C6608:: @ 83C6608
+ .incbin "baserom.gba", 0x3C6608, 0x9C
+
+gUnknown_83C66A4:: @ 83C66A4
+ .incbin "baserom.gba", 0x3C66A4, 0x18
+
+gUnknown_83C66BC:: @ 83C66BC
+ .incbin "baserom.gba", 0x3C66BC, 0x8
+
+gUnknown_83C66C4:: @ 83C66C4
+ .incbin "baserom.gba", 0x3C66C4, 0x8
+
+gUnknown_83C66CC:: @ 83C66CC
+ .incbin "baserom.gba", 0x3C66CC, 0x38
+
+gUnknown_83C6704:: @ 83C6704
+ .incbin "baserom.gba", 0x3C6704, 0x8C
+
+gUnknown_83C6790:: @ 83C6790
+ .incbin "baserom.gba", 0x3C6790, 0x18
+
+gUnknown_83C67A8:: @ 83C67A8
+ .incbin "baserom.gba", 0x3C67A8, 0x8
+
+gUnknown_83C67B0:: @ 83C67B0
+ .incbin "baserom.gba", 0x3C67B0, 0x20
+
+gUnknown_83C67D0:: @ 83C67D0
+ .incbin "baserom.gba", 0x3C67D0, 0x18
+
+gUnknown_83C67E8:: @ 83C67E8
+ .incbin "baserom.gba", 0x3C67E8, 0x1C
+
+gUnknown_83C6804:: @ 83C6804
+ .incbin "baserom.gba", 0x3C6804, 0x38
+
+gUnknown_83C683C:: @ 83C683C
+ .incbin "baserom.gba", 0x3C683C, 0x18
+
+gUnknown_83C6854:: @ 83C6854
+ .incbin "baserom.gba", 0x3C6854, 0x8
+
+gUnknown_83C685C:: @ 83C685C
+ .incbin "baserom.gba", 0x3C685C, 0xC
+
+gUnknown_83C6868:: @ 83C6868
+ .incbin "baserom.gba", 0x3C6868, 0x8
+
+gUnknown_83C6870:: @ 83C6870
+ .incbin "baserom.gba", 0x3C6870, 0x8
+
+gUnknown_83C6878:: @ 83C6878
+ .incbin "baserom.gba", 0x3C6878, 0x44
+
+gUnknown_83C68BC:: @ 83C68BC
+ .incbin "baserom.gba", 0x3C68BC, 0x18
+
+gUnknown_83C68D4:: @ 83C68D4
+ .incbin "baserom.gba", 0x3C68D4, 0xC
+
+gUnknown_83C68E0:: @ 83C68E0
+ .incbin "baserom.gba", 0x3C68E0, 0x4
+
+gUnknown_83C68E4:: @ 83C68E4
+ .incbin "baserom.gba", 0x3C68E4, 0x8
+
+gUnknown_83C68EC:: @ 83C68EC
+ .incbin "baserom.gba", 0x3C68EC, 0x4
+
+gUnknown_83C68F0:: @ 83C68F0
+ .incbin "baserom.gba", 0x3C68F0, 0x8
+
+gUnknown_83C68F8:: @ 83C68F8
+ .incbin "baserom.gba", 0x3C68F8, 0x8
+
+gUnknown_83C6900:: @ 83C6900
+ .incbin "baserom.gba", 0x3C6900, 0x48
+
+gUnknown_83C6948:: @ 83C6948
+ .incbin "baserom.gba", 0x3C6948, 0x48
+
+gUnknown_83C6990:: @ 83C6990
+ .incbin "baserom.gba", 0x3C6990, 0x48
+
+gUnknown_83C69D8:: @ 83C69D8
+ .incbin "baserom.gba", 0x3C69D8, 0x48
+
+gUnknown_83C6A20:: @ 83C6A20
+ .incbin "baserom.gba", 0x3C6A20, 0x48
+
+gUnknown_83C6A68:: @ 83C6A68
+ .incbin "baserom.gba", 0x3C6A68, 0x48
+
+gUnknown_83C6AB0:: @ 83C6AB0
+ .incbin "baserom.gba", 0x3C6AB0, 0x8
+
+gUnknown_83C6AB8:: @ 83C6AB8
+ .incbin "baserom.gba", 0x3C6AB8, 0x790
+
+gUnknown_83C7248:: @ 83C7248
+ .incbin "baserom.gba", 0x3C7248, 0x10
+
+gUnknown_83C7258:: @ 83C7258
+ .incbin "baserom.gba", 0x3C7258, 0x3C
+
+gUnknown_83C7294:: @ 83C7294
+ .incbin "baserom.gba", 0x3C7294, 0xF4
+
+gUnknown_83C7388:: @ 83C7388
+ .incbin "baserom.gba", 0x3C7388, 0x2930
+
+gUnknown_83C9CB8:: @ 83C9CB8
+ .incbin "baserom.gba", 0x3C9CB8, 0xA64
+
+gUnknown_83CA71C:: @ 83CA71C
+ .incbin "baserom.gba", 0x3CA71C, 0xED4
+
+gUnknown_83CB5F0:: @ 83CB5F0
+ .incbin "baserom.gba", 0x3CB5F0, 0x200
+
+gUnknown_83CB7F0:: @ 83CB7F0
+ .incbin "baserom.gba", 0x3CB7F0, 0x20
+
+gUnknown_83CB810:: @ 83CB810
+ .incbin "baserom.gba", 0x3CB810, 0x280
+
+gUnknown_83CBA90:: @ 83CBA90
+ .incbin "baserom.gba", 0x3CBA90, 0x80
+
+gUnknown_83CBB10:: @ 83CBB10
+ .incbin "baserom.gba", 0x3CBB10, 0x20
+
+gUnknown_83CBB30:: @ 83CBB30
+ .incbin "baserom.gba", 0x3CBB30, 0x300
+
+gUnknown_83CBE30:: @ 83CBE30
+ .incbin "baserom.gba", 0x3CBE30, 0x20
+
+gUnknown_83CBE50:: @ 83CBE50
+ .incbin "baserom.gba", 0x3CBE50, 0x20
+
+gUnknown_83CBE70:: @ 83CBE70
+ .incbin "baserom.gba", 0x3CBE70, 0x14
+
+gUnknown_83CBE84:: @ 83CBE84
+ .incbin "baserom.gba", 0x3CBE84, 0x104
+
+gUnknown_83CBF88:: @ 83CBF88
+ .incbin "baserom.gba", 0x3CBF88, 0x18
+
+gUnknown_83CBFA0:: @ 83CBFA0
+ .incbin "baserom.gba", 0x3CBFA0, 0x18
+
+gUnknown_83CBFB8:: @ 83CBFB8
+ .incbin "baserom.gba", 0x3CBFB8, 0x18
+
+gUnknown_83CBFD0:: @ 83CBFD0
+ .incbin "baserom.gba", 0x3CBFD0, 0x10
+
+gUnknown_83CBFE0:: @ 83CBFE0
+ .incbin "baserom.gba", 0x3CBFE0, 0x10
+
+gUnknown_83CBFF0:: @ 83CBFF0
+ .incbin "baserom.gba", 0x3CBFF0, 0x20
+
+gUnknown_83CC010:: @ 83CC010
+ .incbin "baserom.gba", 0x3CC010, 0x18
+
+gUnknown_83CC028:: @ 83CC028
+ .incbin "baserom.gba", 0x3CC028, 0x4
+
+gUnknown_83CC02C:: @ 83CC02C
+ .incbin "baserom.gba", 0x3CC02C, 0x4
+
+gUnknown_83CC030:: @ 83CC030
+ .incbin "baserom.gba", 0x3CC030, 0x4
+
+gUnknown_83CC034:: @ 83CC034
+ .incbin "baserom.gba", 0x3CC034, 0x1C
+
+gUnknown_83CC050:: @ 83CC050
+ .incbin "baserom.gba", 0x3CC050, 0x18
+
+gUnknown_83CC068:: @ 83CC068
+ .incbin "baserom.gba", 0x3CC068, 0x1C
+
+gUnknown_83CC084:: @ 83CC084
+ .incbin "baserom.gba", 0x3CC084, 0x14
+
+gUnknown_83CC098:: @ 83CC098
+ .incbin "baserom.gba", 0x3CC098, 0xC
+
+gUnknown_83CC0A4:: @ 83CC0A4
+ .incbin "baserom.gba", 0x3CC0A4, 0x18
+
+gUnknown_83CC0BC:: @ 83CC0BC
+ .incbin "baserom.gba", 0x3CC0BC, 0x10
+
+gUnknown_83CC0CC:: @ 83CC0CC
+ .incbin "baserom.gba", 0x3CC0CC, 0x14
+
+gUnknown_83CC0E0:: @ 83CC0E0
+ .incbin "baserom.gba", 0x3CC0E0, 0x8
+
+gUnknown_83CC0E8:: @ 83CC0E8
+ .incbin "baserom.gba", 0x3CC0E8, 0x8
+
+gUnknown_83CC0F0:: @ 83CC0F0
+ .incbin "baserom.gba", 0x3CC0F0, 0x8
+
+gUnknown_83CC0F8:: @ 83CC0F8
+ .incbin "baserom.gba", 0x3CC0F8, 0x10
+
+gUnknown_83CC108:: @ 83CC108
+ .incbin "baserom.gba", 0x3CC108, 0x8
+
+gUnknown_83CC110:: @ 83CC110
+ .incbin "baserom.gba", 0x3CC110, 0xC
+
+gUnknown_83CC11C:: @ 83CC11C
+ .incbin "baserom.gba", 0x3CC11C, 0x1C
+
+gUnknown_83CC138:: @ 83CC138
+ .incbin "baserom.gba", 0x3CC138, 0x1C
+
+gUnknown_83CC154:: @ 83CC154
+ .incbin "baserom.gba", 0x3CC154, 0x14
+
+gUnknown_83CC168:: @ 83CC168
+ .incbin "baserom.gba", 0x3CC168, 0x10
+
+gUnknown_83CC178:: @ 83CC178
+ .incbin "baserom.gba", 0x3CC178, 0x54
+
+gUnknown_83CC1CC:: @ 83CC1CC
+ .incbin "baserom.gba", 0x3CC1CC, 0x8
+
+gUnknown_83CC1D4:: @ 83CC1D4
+ .incbin "baserom.gba", 0x3CC1D4, 0x1C
+
+gUnknown_83CC1F0:: @ 83CC1F0
+ .incbin "baserom.gba", 0x3CC1F0, 0x4C
+
+gUnknown_83CC23C:: @ 83CC23C
+ .incbin "baserom.gba", 0x3CC23C, 0x8
+
+gUnknown_83CC244:: @ 83CC244
+ .incbin "baserom.gba", 0x3CC244, 0x5C
+
+gUnknown_83CC2A0:: @ 83CC2A0
+ .incbin "baserom.gba", 0x3CC2A0, 0x18
+
+gUnknown_83CC2B8:: @ 83CC2B8
+ .incbin "baserom.gba", 0x3CC2B8, 0x20
+
+gUnknown_83CC2D8:: @ 83CC2D8
+ .incbin "baserom.gba", 0x3CC2D8, 0xC
+
+gUnknown_83CC2E4:: @ 83CC2E4
+ .incbin "baserom.gba", 0x3CC2E4, 0x20
+
+gUnknown_83CC304:: @ 83CC304
+ .incbin "baserom.gba", 0x3CC304, 0x10
+
+gUnknown_83CC314:: @ 83CC314
+ .incbin "baserom.gba", 0x3CC314, 0x1C
+
+gUnknown_83CC330:: @ 83CC330
+ .incbin "baserom.gba", 0x3CC330, 0xC
+
+gUnknown_83CC33C:: @ 83CC33C
+ .incbin "baserom.gba", 0x3CC33C, 0x8
+
+gUnknown_83CC344:: @ 83CC344
+ .incbin "baserom.gba", 0x3CC344, 0x8
+
+gUnknown_83CC34C:: @ 83CC34C
+ .incbin "baserom.gba", 0x3CC34C, 0x8
+
+gUnknown_83CC354:: @ 83CC354
+ .incbin "baserom.gba", 0x3CC354, 0xC
+
+gUnknown_83CC360:: @ 83CC360
+ .incbin "baserom.gba", 0x3CC360, 0x3
+
+gUnknown_83CC363:: @ 83CC363
+ .incbin "baserom.gba", 0x3CC363, 0x5
+
+gUnknown_83CC368:: @ 83CC368
+ .incbin "baserom.gba", 0x3CC368, 0x174
+
+gUnknown_83CC4DC:: @ 83CC4DC
+ .incbin "baserom.gba", 0x3CC4DC, 0x214
+
+gUnknown_83CC6F0:: @ 83CC6F0
+ .incbin "baserom.gba", 0x3CC6F0, 0x1B8
+
+gUnknown_83CC8A8:: @ 83CC8A8
+ .incbin "baserom.gba", 0x3CC8A8, 0xDC
+
+gUnknown_83CC984:: @ 83CC984
+ .incbin "baserom.gba", 0x3CC984, 0x12C
+
+gUnknown_83CCAB0:: @ 83CCAB0
+ .incbin "baserom.gba", 0x3CCAB0, 0x1F4
+
+gUnknown_83CCCA4:: @ 83CCCA4
+ .incbin "baserom.gba", 0x3CCCA4, 0x18C
+
+gUnknown_83CCE30:: @ 83CCE30
+ .incbin "baserom.gba", 0x3CCE30, 0x98
+
+gUnknown_83CCEC8:: @ 83CCEC8
+ .incbin "baserom.gba", 0x3CCEC8, 0x3B8
+
+gUnknown_83CD280:: @ 83CD280
+ .incbin "baserom.gba", 0x3CD280, 0x20
+
+gUnknown_83CD2A0:: @ 83CD2A0
+ .incbin "baserom.gba", 0x3CD2A0, 0x20
+
+gUnknown_83CD2C0:: @ 83CD2C0
+ .incbin "baserom.gba", 0x3CD2C0, 0x20
+
+gUnknown_83CD2E0:: @ 83CD2E0
+ .incbin "baserom.gba", 0x3CD2E0, 0x20
+
+gUnknown_83CD300:: @ 83CD300
+ .incbin "baserom.gba", 0x3CD300, 0x20
+
+gUnknown_83CD320:: @ 83CD320
+ .incbin "baserom.gba", 0x3CD320, 0x20
+
+gUnknown_83CD340:: @ 83CD340
+ .incbin "baserom.gba", 0x3CD340, 0x20
+
+gUnknown_83CD360:: @ 83CD360
+ .incbin "baserom.gba", 0x3CD360, 0x20
+
+gUnknown_83CD380:: @ 83CD380
+ .incbin "baserom.gba", 0x3CD380, 0x268
+
+gUnknown_83CD5E8:: @ 83CD5E8
+ .incbin "baserom.gba", 0x3CD5E8, 0x2A0
+
+gUnknown_83CD888:: @ 83CD888
+ .incbin "baserom.gba", 0x3CD888, 0x10
+
+gUnknown_83CD898:: @ 83CD898
+ .incbin "baserom.gba", 0x3CD898, 0x20
+
+gUnknown_83CD8B8:: @ 83CD8B8
+ .incbin "baserom.gba", 0x3CD8B8, 0x14
+
+gUnknown_83CD8CC:: @ 83CD8CC
+ .incbin "baserom.gba", 0x3CD8CC, 0x14
+
+gUnknown_83CD8E0:: @ 83CD8E0
+ .incbin "baserom.gba", 0x3CD8E0, 0x3
+
+gUnknown_83CD8E3:: @ 83CD8E3
+ .incbin "baserom.gba", 0x3CD8E3, 0x6
+
+gUnknown_83CD8E9:: @ 83CD8E9
+ .incbin "baserom.gba", 0x3CD8E9, 0x3
+
+gUnknown_83CD8EC:: @ 83CD8EC
+ .incbin "baserom.gba", 0x3CD8EC, 0x8
+
+gUnknown_83CD8F4:: @ 83CD8F4
+ .incbin "baserom.gba", 0x3CD8F4, 0x4
+
+gUnknown_83CD8F8:: @ 83CD8F8
+ .incbin "baserom.gba", 0x3CD8F8, 0x10
+
+gUnknown_83CD908:: @ 83CD908
+ .incbin "baserom.gba", 0x3CD908, 0x18
+
+gUnknown_83CD920:: @ 83CD920
+ .incbin "baserom.gba", 0x3CD920, 0x2
+
+gUnknown_83CD922:: @ 83CD922
+ .incbin "baserom.gba", 0x3CD922, 0x2
+
+gUnknown_83CD924:: @ 83CD924
+ .incbin "baserom.gba", 0x3CD924, 0x2
+
+gUnknown_83CD926:: @ 83CD926
+ .incbin "baserom.gba", 0x3CD926, 0x2
+
+gUnknown_83CD928:: @ 83CD928
+ .incbin "baserom.gba", 0x3CD928, 0x8
+
+gUnknown_83CD930:: @ 83CD930
+ .incbin "baserom.gba", 0x3CD930, 0x2
+
+gUnknown_83CD932:: @ 83CD932
+ .incbin "baserom.gba", 0x3CD932, 0x2
+
+gUnknown_83CD934:: @ 83CD934
+ .incbin "baserom.gba", 0x3CD934, 0x2
+
+gUnknown_83CD936:: @ 83CD936
+ .incbin "baserom.gba", 0x3CD936, 0x2
+
+gUnknown_83CD938:: @ 83CD938
+ .incbin "baserom.gba", 0x3CD938, 0x2
+
+gUnknown_83CD93A:: @ 83CD93A
+ .incbin "baserom.gba", 0x3CD93A, 0x2
+
+gUnknown_83CD93C:: @ 83CD93C
+ .incbin "baserom.gba", 0x3CD93C, 0x2
+
+gUnknown_83CD93E:: @ 83CD93E
+ .incbin "baserom.gba", 0x3CD93E, 0x2
+
+gUnknown_83CD940:: @ 83CD940
+ .incbin "baserom.gba", 0x3CD940, 0x4
+
+gUnknown_83CD944:: @ 83CD944
+ .incbin "baserom.gba", 0x3CD944, 0x8
+
+gUnknown_83CD94C:: @ 83CD94C
+ .incbin "baserom.gba", 0x3CD94C, 0x6
+
+gUnknown_83CD952:: @ 83CD952
+ .incbin "baserom.gba", 0x3CD952, 0x6
+
+gUnknown_83CD958:: @ 83CD958
+ .incbin "baserom.gba", 0x3CD958, 0x4
+
+gUnknown_83CD95C:: @ 83CD95C
+ .incbin "baserom.gba", 0x3CD95C, 0x4
+
+gUnknown_83CD960:: @ 83CD960
+ .incbin "baserom.gba", 0x3CD960, 0x60
+
+gUnknown_83CD9C0:: @ 83CD9C0
+ .incbin "baserom.gba", 0x3CD9C0, 0x60
+
+gUnknown_83CDA20:: @ 83CDA20
+ .incbin "baserom.gba", 0x3CDA20, 0x28
+
+gUnknown_83CDA48:: @ 83CDA48
+ .incbin "baserom.gba", 0x3CDA48, 0x28
+
+gUnknown_83CDA70:: @ 83CDA70
+ .incbin "baserom.gba", 0x3CDA70, 0x24
+
+gUnknown_83CDA94:: @ 83CDA94
+ .incbin "baserom.gba", 0x3CDA94, 0x4
+
+gUnknown_83CDA98:: @ 83CDA98
+ .incbin "baserom.gba", 0x3CDA98, 0x20
+
+gUnknown_83CDAB8:: @ 83CDAB8
+ .incbin "baserom.gba", 0x3CDAB8, 0x800
+
+gUnknown_83CE2B8:: @ 83CE2B8
+ .incbin "baserom.gba", 0x3CE2B8, 0x180
+
+gUnknown_83CE438:: @ 83CE438
+ .incbin "baserom.gba", 0x3CE438, 0x98
+
+gUnknown_83CE4D0:: @ 83CE4D0
+ .incbin "baserom.gba", 0x3CE4D0, 0x12C
+
+gUnknown_83CE5FC:: @ 83CE5FC
+ .incbin "baserom.gba", 0x3CE5FC, 0xFC
+
+gUnknown_83CE6F8:: @ 83CE6F8
+ .incbin "baserom.gba", 0x3CE6F8, 0x40
+
+gUnknown_83CE738:: @ 83CE738
+ .incbin "baserom.gba", 0x3CE738, 0x20
+
+gUnknown_83CE758:: @ 83CE758
+ .incbin "baserom.gba", 0x3CE758, 0x20
+
+gUnknown_83CE778:: @ 83CE778
+ .incbin "baserom.gba", 0x3CE778, 0x48
+
+gUnknown_83CE7C0:: @ 83CE7C0
+ .incbin "baserom.gba", 0x3CE7C0, 0x18
+
+gUnknown_83CE7D8:: @ 83CE7D8
+ .incbin "baserom.gba", 0x3CE7D8, 0x238
+
+gUnknown_83CEA10:: @ 83CEA10
+ .incbin "baserom.gba", 0x3CEA10, 0x20
+
+gUnknown_83CEA30:: @ 83CEA30
+ .incbin "baserom.gba", 0x3CEA30, 0x20
+
+gUnknown_83CEA50:: @ 83CEA50
+ .incbin "baserom.gba", 0x3CEA50, 0x10
+
+gUnknown_83CEA60:: @ 83CEA60
+ .incbin "baserom.gba", 0x3CEA60, 0x8
+
+gUnknown_83CEA68:: @ 83CEA68
+ .incbin "baserom.gba", 0x3CEA68, 0x8
+
+gUnknown_83CEA70:: @ 83CEA70
+ .incbin "baserom.gba", 0x3CEA70, 0x18
+
+gUnknown_83CEA88:: @ 83CEA88
+ .incbin "baserom.gba", 0x3CEA88, 0xF8
+
+gUnknown_83CEB80:: @ 83CEB80
+ .incbin "baserom.gba", 0x3CEB80, 0x58
+
+gUnknown_83CEBD8:: @ 83CEBD8
+ .incbin "baserom.gba", 0x3CEBD8, 0x18
+
+gUnknown_83CEBF0:: @ 83CEBF0
+ .incbin "baserom.gba", 0x3CEBF0, 0x48
+
+gUnknown_83CEC38:: @ 83CEC38
+ .incbin "baserom.gba", 0x3CEC38, 0x3D98
+
+gUnknown_83D29D0:: @ 83D29D0
+ .incbin "baserom.gba", 0x3D29D0, 0x40
+
+gUnknown_83D2A10:: @ 83D2A10
+ .incbin "baserom.gba", 0x3D2A10, 0x144
+
+gUnknown_83D2B54:: @ 83D2B54
+ .incbin "baserom.gba", 0x3D2B54, 0x28
+
+gUnknown_83D2B7C:: @ 83D2B7C
+ .incbin "baserom.gba", 0x3D2B7C, 0x38
+
+gUnknown_83D2BB4:: @ 83D2BB4
+ .incbin "baserom.gba", 0x3D2BB4, 0x8B8
+
+gUnknown_83D346C:: @ 83D346C
+ .incbin "baserom.gba", 0x3D346C, 0xC
+
+gUnknown_83D3478:: @ 83D3478
+ .incbin "baserom.gba", 0x3D3478, 0x28
+
+gUnknown_83D34A0:: @ 83D34A0
+ .incbin "baserom.gba", 0x3D34A0, 0x18
+
+gUnknown_83D34B8:: @ 83D34B8
+ .incbin "baserom.gba", 0x3D34B8, 0x54
+
+gUnknown_83D350C:: @ 83D350C
+ .incbin "baserom.gba", 0x3D350C, 0x18
+
+gUnknown_83D3524:: @ 83D3524
+ .incbin "baserom.gba", 0x3D3524, 0x18
+
+gUnknown_83D353C:: @ 83D353C
+ .incbin "baserom.gba", 0x3D353C, 0x98
+
+gUnknown_83D35D4:: @ 83D35D4
+ .incbin "baserom.gba", 0x3D35D4, 0x8
+
+gUnknown_83D35DC:: @ 83D35DC
+ .incbin "baserom.gba", 0x3D35DC, 0x14C
+
+gUnknown_83D3728:: @ 83D3728
+ .incbin "baserom.gba", 0x3D3728, 0x18
+
+gUnknown_83D3740:: @ 83D3740
+ .incbin "baserom.gba", 0x3D3740, 0x60
+
+gUnknown_83D37A0:: @ 83D37A0
+ .incbin "baserom.gba", 0x3D37A0, 0x6E0
+
+gUnknown_83D3E80:: @ 83D3E80
+ .incbin "baserom.gba", 0x3D3E80, 0x1B8
+
+gUnknown_83D4038:: @ 83D4038
+ .incbin "baserom.gba", 0x3D4038, 0x30
+
+gUnknown_83D4068:: @ 83D4068
+ .incbin "baserom.gba", 0x3D4068, 0x44
+
+gUnknown_83D40AC:: @ 83D40AC
+ .incbin "baserom.gba", 0x3D40AC, 0x34
+
+gUnknown_83D40E0:: @ 83D40E0
+ .incbin "baserom.gba", 0x3D40E0, 0x8
+
+gUnknown_83D40E8:: @ 83D40E8
+ .incbin "baserom.gba", 0x3D40E8, 0x18
+
+gUnknown_83D4100:: @ 83D4100
+ .incbin "baserom.gba", 0x3D4100, 0x4C
+
+gUnknown_83D414C:: @ 83D414C
+ .incbin "baserom.gba", 0x3D414C, 0x18
+
+gUnknown_83D4164:: @ 83D4164
+ .incbin "baserom.gba", 0x3D4164, 0x80
+
+gUnknown_83D41E4:: @ 83D41E4
+ .incbin "baserom.gba", 0x3D41E4, 0x8
+
+gUnknown_83D41EC:: @ 83D41EC
+ .incbin "baserom.gba", 0x3D41EC, 0x8
+
+gUnknown_83D41F4:: @ 83D41F4
+ .incbin "baserom.gba", 0x3D41F4, 0x8
+
+gUnknown_83D41FC:: @ 83D41FC
+ .incbin "baserom.gba", 0x3D41FC, 0x44
+
+gUnknown_83D4240:: @ 83D4240
+ .incbin "baserom.gba", 0x3D4240, 0x8
+
+gUnknown_83D4248:: @ 83D4248
+ .incbin "baserom.gba", 0x3D4248, 0x8
+
+gUnknown_83D4250:: @ 83D4250
+ .incbin "baserom.gba", 0x3D4250, 0x2C
+
+gUnknown_83D427C:: @ 83D427C
+ .incbin "baserom.gba", 0x3D427C, 0x18
+
+gUnknown_83D4294:: @ 83D4294
+ .incbin "baserom.gba", 0x3D4294, 0x6D94
+
+gUnknown_83DB028:: @ 83DB028
+ .incbin "baserom.gba", 0x3DB028, 0x4074
+
+gUnknown_83DF09C:: @ 83DF09C
+ .incbin "baserom.gba", 0x3DF09C, 0x18
+
+gUnknown_83DF0B4:: @ 83DF0B4
+ .incbin "baserom.gba", 0x3DF0B4, 0x8
+
+gUnknown_83DF0BC:: @ 83DF0BC
+ .incbin "baserom.gba", 0x3DF0BC, 0x8
+
+gUnknown_83DF0C4:: @ 83DF0C4
+ .incbin "baserom.gba", 0x3DF0C4, 0x10
+
+gUnknown_83DF0D4:: @ 83DF0D4
+ .incbin "baserom.gba", 0x3DF0D4, 0x6
+
+gUnknown_83DF0DA:: @ 83DF0DA
+ .incbin "baserom.gba", 0x3DF0DA, 0x6
+
+gUnknown_83DF0E0:: @ 83DF0E0
+ .incbin "baserom.gba", 0x3DF0E0, 0x6
+
+gUnknown_83DF0E6:: @ 83DF0E6
+ .incbin "baserom.gba", 0x3DF0E6, 0x6
+
+gUnknown_83DF0EC:: @ 83DF0EC
+ .incbin "baserom.gba", 0x3DF0EC, 0x6
+
+gUnknown_83DF0F2:: @ 83DF0F2
+ .incbin "baserom.gba", 0x3DF0F2, 0x6
+
+gUnknown_83DF0F8:: @ 83DF0F8
+ .incbin "baserom.gba", 0x3DF0F8, 0x6D4
+
+gUnknown_83DF7CC:: @ 83DF7CC
+ .incbin "baserom.gba", 0x3DF7CC, 0x1C
+
+gUnknown_83DF7E8:: @ 83DF7E8
+ .incbin "baserom.gba", 0x3DF7E8, 0x4B4
+
+gUnknown_83DFC9C:: @ 83DFC9C
+ .incbin "baserom.gba", 0x3DFC9C, 0x814
+
+gUnknown_83E04B0:: @ 83E04B0
+ .incbin "baserom.gba", 0x3E04B0, 0x208
+
+gUnknown_83E06B8:: @ 83E06B8
+ .incbin "baserom.gba", 0x3E06B8, 0x74
+
+gUnknown_83E072C:: @ 83E072C
+ .incbin "baserom.gba", 0x3E072C, 0xC
+
+gUnknown_83E0738:: @ 83E0738
+ .incbin "baserom.gba", 0x3E0738, 0x10
+
+gUnknown_83E0748:: @ 83E0748
+ .incbin "baserom.gba", 0x3E0748, 0x20
+
+gUnknown_83E0768:: @ 83E0768
+ .incbin "baserom.gba", 0x3E0768, 0x818
+
+gUnknown_83E0F80:: @ 83E0F80
+ .incbin "baserom.gba", 0x3E0F80, 0x820
+
+gUnknown_83E17A0:: @ 83E17A0
+ .incbin "baserom.gba", 0x3E17A0, 0x20
+
+gUnknown_83E17C0:: @ 83E17C0
+ .incbin "baserom.gba", 0x3E17C0, 0x10
+
+gUnknown_83E17D0:: @ 83E17D0
+ .incbin "baserom.gba", 0x3E17D0, 0x10
+
+gUnknown_83E17E0:: @ 83E17E0
+ .incbin "baserom.gba", 0x3E17E0, 0xAA0
+
+gUnknown_83E2280:: @ 83E2280
+ .incbin "baserom.gba", 0x3E2280, 0x10
+
+gUnknown_83E2290:: @ 83E2290
+ .incbin "baserom.gba", 0x3E2290, 0x10
+
+gUnknown_83E22A0:: @ 83E22A0
+ .incbin "baserom.gba", 0x3E22A0, 0x30
+
+gUnknown_83E22D0:: @ 83E22D0
+ .incbin "baserom.gba", 0x3E22D0, 0x60
+
+gUnknown_83E2330:: @ 83E2330
+ .incbin "baserom.gba", 0x3E2330, 0x3
+
+gUnknown_83E2333:: @ 83E2333
+ .incbin "baserom.gba", 0x3E2333, 0x18
+
+gUnknown_83E234B:: @ 83E234B
+ .incbin "baserom.gba", 0x3E234B, 0x3
+
+gUnknown_83E234E:: @ 83E234E
+ .incbin "baserom.gba", 0x3E234E, 0x3
+
+gUnknown_83E2351:: @ 83E2351
+ .incbin "baserom.gba", 0x3E2351, 0x3
+
+gUnknown_83E2354:: @ 83E2354
+ .incbin "baserom.gba", 0x3E2354, 0x10
+
+gUnknown_83E2364:: @ 83E2364
+ .incbin "baserom.gba", 0x3E2364, 0x8
+
+gUnknown_83E236C:: @ 83E236C
+ .incbin "baserom.gba", 0x3E236C, 0x8
+
+gUnknown_83E2374:: @ 83E2374
+ .incbin "baserom.gba", 0x3E2374, 0x4
+
+gUnknown_83E2378:: @ 83E2378
+ .incbin "baserom.gba", 0x3E2378, 0x10
+
+gUnknown_83E2388:: @ 83E2388
+ .incbin "baserom.gba", 0x3E2388, 0x6
+
+gUnknown_83E238E:: @ 83E238E
+ .incbin "baserom.gba", 0x3E238E, 0x6
+
+gUnknown_83E2394:: @ 83E2394
+ .incbin "baserom.gba", 0x3E2394, 0x28
+
+gUnknown_83E23BC:: @ 83E23BC
+ .incbin "baserom.gba", 0x3E23BC, 0x4
+
+gUnknown_83E23C0:: @ 83E23C0
+ .incbin "baserom.gba", 0x3E23C0, 0x8
+
+gUnknown_83E23C8:: @ 83E23C8
+ .incbin "baserom.gba", 0x3E23C8, 0x8
+
+gUnknown_83E23D0:: @ 83E23D0
+ .incbin "baserom.gba", 0x3E23D0, 0x10
+
+gUnknown_83E23E0:: @ 83E23E0
+ .incbin "baserom.gba", 0x3E23E0, 0x8
+
+gUnknown_83E23E8:: @ 83E23E8
+ .incbin "baserom.gba", 0x3E23E8, 0xA
+
+gUnknown_83E23F2:: @ 83E23F2
+ .incbin "baserom.gba", 0x3E23F2, 0xA
+
+gUnknown_83E23FC:: @ 83E23FC
+ .incbin "baserom.gba", 0x3E23FC, 0x8
+
+gUnknown_83E2404:: @ 83E2404
+ .incbin "baserom.gba", 0x3E2404, 0x8
+
+gUnknown_83E240C:: @ 83E240C
+ .incbin "baserom.gba", 0x3E240C, 0x14
+
+gUnknown_83E2420:: @ 83E2420
+ .incbin "baserom.gba", 0x3E2420, 0x8
+
+gUnknown_83E2428:: @ 83E2428
+ .incbin "baserom.gba", 0x3E2428, 0x14
+
+gUnknown_83E243C:: @ 83E243C
+ .incbin "baserom.gba", 0x3E243C, 0x4
+
+gUnknown_83E2440:: @ 83E2440
+ .incbin "baserom.gba", 0x3E2440, 0xC
+
+gUnknown_83E244C:: @ 83E244C
+ .incbin "baserom.gba", 0x3E244C, 0xC
+
+gUnknown_83E2458:: @ 83E2458
+ .incbin "baserom.gba", 0x3E2458, 0x34
+
+gUnknown_83E248C:: @ 83E248C
+ .incbin "baserom.gba", 0x3E248C, 0x78
+
+gUnknown_83E2504:: @ 83E2504
+ .incbin "baserom.gba", 0x3E2504, 0x8
+
+gUnknown_83E250C:: @ 83E250C
+ .incbin "baserom.gba", 0x3E250C, 0x18
+
+gUnknown_83E2524:: @ 83E2524
+ .incbin "baserom.gba", 0x3E2524, 0x8
+
+gUnknown_83E252C:: @ 83E252C
+ .incbin "baserom.gba", 0x3E252C, 0x48
+
+gUnknown_83E2574:: @ 83E2574
+ .incbin "baserom.gba", 0x3E2574, 0x18
+
+gUnknown_83E258C:: @ 83E258C
+ .incbin "baserom.gba", 0x3E258C, 0x18
+
+gUnknown_83E25A4:: @ 83E25A4
+ .incbin "baserom.gba", 0x3E25A4, 0x18
+
+gUnknown_83E25BC:: @ 83E25BC
+ .incbin "baserom.gba", 0x3E25BC, 0x18
+
+gUnknown_83E25D4:: @ 83E25D4
+ .incbin "baserom.gba", 0x3E25D4, 0x18
+
+gUnknown_83E25EC:: @ 83E25EC
+ .incbin "baserom.gba", 0x3E25EC, 0x18
+
+gUnknown_83E2604:: @ 83E2604
+ .incbin "baserom.gba", 0x3E2604, 0x18
+
+gUnknown_83E261C:: @ 83E261C
+ .incbin "baserom.gba", 0x3E261C, 0x18
+
+gUnknown_83E2634:: @ 83E2634
+ .incbin "baserom.gba", 0x3E2634, 0x18
+
+gUnknown_83E264C:: @ 83E264C
+ .incbin "baserom.gba", 0x3E264C, 0x30
+
+gUnknown_83E267C:: @ 83E267C
+ .incbin "baserom.gba", 0x3E267C, 0x68
+
+gUnknown_83E26E4:: @ 83E26E4
+ .incbin "baserom.gba", 0x3E26E4, 0x48
+
+gUnknown_83E272C:: @ 83E272C
+ .incbin "baserom.gba", 0x3E272C, 0x80
+
+gUnknown_83E27AC:: @ 83E27AC
+ .incbin "baserom.gba", 0x3E27AC, 0x1A8
+
+gUnknown_83E2954:: @ 83E2954
+ .incbin "baserom.gba", 0x3E2954, 0x134
+
+gUnknown_83E2A88:: @ 83E2A88
+ .incbin "baserom.gba", 0x3E2A88, 0x4F0
+
+gUnknown_83E2F78:: @ 83E2F78
+ .incbin "baserom.gba", 0x3E2F78, 0x78
+
+gUnknown_83E2FF0:: @ 83E2FF0
+ .incbin "baserom.gba", 0x3E2FF0, 0x100
+
+gUnknown_83E30F0:: @ 83E30F0
+ .incbin "baserom.gba", 0x3E30F0, 0x458
+
+gUnknown_83E3548:: @ 83E3548
+ .incbin "baserom.gba", 0x3E3548, 0x1EC
+
+gUnknown_83E3734:: @ 83E3734
+ .incbin "baserom.gba", 0x3E3734, 0x30
+
+gUnknown_83E3764:: @ 83E3764
+ .incbin "baserom.gba", 0x3E3764, 0x134
+
+gUnknown_83E3898:: @ 83E3898
+ .incbin "baserom.gba", 0x3E3898, 0xF4
+
+gUnknown_83E398C:: @ 83E398C
+ .incbin "baserom.gba", 0x3E398C, 0x29C
+
+gUnknown_83E3C28:: @ 83E3C28
+ .incbin "baserom.gba", 0x3E3C28, 0xF0
+
+gUnknown_83E3D18:: @ 83E3D18
+ .incbin "baserom.gba", 0x3E3D18, 0x148
+
+gUnknown_83E3E60:: @ 83E3E60
+ .incbin "baserom.gba", 0x3E3E60, 0x20
+
+gUnknown_83E3E80:: @ 83E3E80
+ .incbin "baserom.gba", 0x3E3E80, 0x9C
+
+gUnknown_83E3F1C:: @ 83E3F1C
+ .incbin "baserom.gba", 0x3E3F1C, 0x20C
+
+gUnknown_83E4128:: @ 83E4128
+ .incbin "baserom.gba", 0x3E4128, 0x2C
+
+gUnknown_83E4154:: @ 83E4154
+ .incbin "baserom.gba", 0x3E4154, 0x18
+
+gUnknown_83E416C:: @ 83E416C
+ .incbin "baserom.gba", 0x3E416C, 0x5C
+
+gUnknown_83E41C8:: @ 83E41C8
+ .incbin "baserom.gba", 0x3E41C8, 0x38
+
+gUnknown_83E4200:: @ 83E4200
+ .incbin "baserom.gba", 0x3E4200, 0x210
+
+gUnknown_83E4410:: @ 83E4410
+ .incbin "baserom.gba", 0x3E4410, 0x1488
+
+gUnknown_83E5898:: @ 83E5898
+ .incbin "baserom.gba", 0x3E5898, 0x248
+
+gUnknown_83E5AE0:: @ 83E5AE0
+ .incbin "baserom.gba", 0x3E5AE0, 0xA8
+
+gUnknown_83E5B88:: @ 83E5B88
+ .incbin "baserom.gba", 0x3E5B88, 0x2A4
+
+gUnknown_83E5E2C:: @ 83E5E2C
+ .incbin "baserom.gba", 0x3E5E2C, 0x18
+
+gUnknown_83E5E44:: @ 83E5E44
+ .incbin "baserom.gba", 0x3E5E44, 0x2
+
+gUnknown_83E5E46:: @ 83E5E46
+ .incbin "baserom.gba", 0x3E5E46, 0xB6
+
+gUnknown_83E5EFC:: @ 83E5EFC
+ .incbin "baserom.gba", 0x3E5EFC, 0x10
+
+gUnknown_83E5F0C:: @ 83E5F0C
+ .incbin "baserom.gba", 0x3E5F0C, 0x2C
+
+gUnknown_83E5F38:: @ 83E5F38
+ .incbin "baserom.gba", 0x3E5F38, 0x168
+
+gUnknown_83E60A0:: @ 83E60A0
+ .incbin "baserom.gba", 0x3E60A0, 0x18
+
+gUnknown_83E60B8:: @ 83E60B8
+ .incbin "baserom.gba", 0x3E60B8, 0x18
+
+gUnknown_83E60D0:: @ 83E60D0
+ .incbin "baserom.gba", 0x3E60D0, 0x50
+
+gUnknown_83E6120:: @ 83E6120
+ .incbin "baserom.gba", 0x3E6120, 0x158
+
+gUnknown_83E6278:: @ 83E6278
+ .incbin "baserom.gba", 0x3E6278, 0x30
+
+gUnknown_83E62A8:: @ 83E62A8
+ .incbin "baserom.gba", 0x3E62A8, 0x138
+
+gUnknown_83E63E0:: @ 83E63E0
+ .incbin "baserom.gba", 0x3E63E0, 0xF4
+
+gUnknown_83E64D4:: @ 83E64D4
+ .incbin "baserom.gba", 0x3E64D4, 0x2C
+
+gUnknown_83E6500:: @ 83E6500
+ .incbin "baserom.gba", 0x3E6500, 0x2C
+
+gUnknown_83E652C:: @ 83E652C
+ .incbin "baserom.gba", 0x3E652C, 0x78
+
+gUnknown_83E65A4:: @ 83E65A4
+ .incbin "baserom.gba", 0x3E65A4, 0xA4C
+
+gUnknown_83E6FF0:: @ 83E6FF0
+ .incbin "baserom.gba", 0x3E6FF0, 0x1C
+
+gUnknown_83E700C:: @ 83E700C
+ .incbin "baserom.gba", 0x3E700C, 0x20
+
+gUnknown_83E702C:: @ 83E702C
+ .incbin "baserom.gba", 0x3E702C, 0x18
+
+gUnknown_83E7044:: @ 83E7044
+ .incbin "baserom.gba", 0x3E7044, 0xD0
+
+gUnknown_83E7114:: @ 83E7114
+ .incbin "baserom.gba", 0x3E7114, 0x35C
+
+gUnknown_83E7470:: @ 83E7470
+ .incbin "baserom.gba", 0x3E7470, 0x68
+
+gUnknown_83E74D8:: @ 83E74D8
+ .incbin "baserom.gba", 0x3E74D8, 0x18
+
+gUnknown_83E74F0:: @ 83E74F0
+ .incbin "baserom.gba", 0x3E74F0, 0x178
+
+gUnknown_83E7668:: @ 83E7668
+ .incbin "baserom.gba", 0x3E7668, 0x78
+
+gUnknown_83E76E0:: @ 83E76E0
+ .incbin "baserom.gba", 0x3E76E0, 0x528
+
+gUnknown_83E7C08:: @ 83E7C08
+ .incbin "baserom.gba", 0x3E7C08, 0x30
+
+gUnknown_83E7C38:: @ 83E7C38
+ .incbin "baserom.gba", 0x3E7C38, 0x60
+
+gUnknown_83E7C98:: @ 83E7C98
+ .incbin "baserom.gba", 0x3E7C98, 0x30
+
+gUnknown_83E7CC8:: @ 83E7CC8
+ .incbin "baserom.gba", 0x3E7CC8, 0x2
+
+gUnknown_83E7CCA:: @ 83E7CCA
+ .incbin "baserom.gba", 0x3E7CCA, 0x4
+
+gUnknown_83E7CCE:: @ 83E7CCE
+ .incbin "baserom.gba", 0x3E7CCE, 0x6
+
+gUnknown_83E7CD4:: @ 83E7CD4
+ .incbin "baserom.gba", 0x3E7CD4, 0x28
+
+gUnknown_83E7CFC:: @ 83E7CFC
+ .incbin "baserom.gba", 0x3E7CFC, 0x14
+
+gUnknown_83E7D10:: @ 83E7D10
+ .incbin "baserom.gba", 0x3E7D10, 0xC
+
+gUnknown_83E7D1C:: @ 83E7D1C
+ .incbin "baserom.gba", 0x3E7D1C, 0x51B8
+
+gUnknown_83ECED4:: @ 83ECED4
+ .incbin "baserom.gba", 0x3ECED4, 0xFEC
+
+gUnknown_83EDEC0:: @ 83EDEC0
+ .incbin "baserom.gba", 0x3EDEC0, 0xD8
+
+gUnknown_83EDF98:: @ 83EDF98
+ .incbin "baserom.gba", 0x3EDF98, 0x58
+
+gUnknown_83EDFF0:: @ 83EDFF0
+ .incbin "baserom.gba", 0x3EDFF0, 0x8
+
+gUnknown_83EDFF8:: @ 83EDFF8
+ .incbin "baserom.gba", 0x3EDFF8, 0xC
+
+gUnknown_83EE004:: @ 83EE004
+ .incbin "baserom.gba", 0x3EE004, 0x4
+
+gUnknown_83EE008:: @ 83EE008
+ .incbin "baserom.gba", 0x3EE008, 0x20
+
+gUnknown_83EE028:: @ 83EE028
+ .incbin "baserom.gba", 0x3EE028, 0x808
+
+gUnknown_83EE830:: @ 83EE830
+ .incbin "baserom.gba", 0x3EE830, 0x8
+
+gUnknown_83EE838:: @ 83EE838
+ .incbin "baserom.gba", 0x3EE838, 0x58
+
+gUnknown_83EE890:: @ 83EE890
+ .incbin "baserom.gba", 0x3EE890, 0x38
+
+gUnknown_83EE8C8:: @ 83EE8C8
+ .incbin "baserom.gba", 0x3EE8C8, 0x8
+
+gUnknown_83EE8D0:: @ 83EE8D0
+ .incbin "baserom.gba", 0x3EE8D0, 0x88
+
+gUnknown_83EE958:: @ 83EE958
+ .incbin "baserom.gba", 0x3EE958, 0x40
+
+gUnknown_83EE998:: @ 83EE998
+ .incbin "baserom.gba", 0x3EE998, 0xC
+
+gUnknown_83EE9A4:: @ 83EE9A4
+ .incbin "baserom.gba", 0x3EE9A4, 0x18
+
+gUnknown_83EE9BC:: @ 83EE9BC
+ .incbin "baserom.gba", 0x3EE9BC, 0x4
+
+gUnknown_83EE9C0:: @ 83EE9C0
+ .incbin "baserom.gba", 0x3EE9C0, 0x8
+
+gUnknown_83EE9C8:: @ 83EE9C8
+ .incbin "baserom.gba", 0x3EE9C8, 0xFC
+
+gUnknown_83EEAC4:: @ 83EEAC4
+ .incbin "baserom.gba", 0x3EEAC4, 0xA4
+
+gUnknown_83EEB68:: @ 83EEB68
+ .incbin "baserom.gba", 0x3EEB68, 0x88
+
+gUnknown_83EEBF0:: @ 83EEBF0
+ .incbin "baserom.gba", 0x3EEBF0, 0x8
+
+gUnknown_83EEBF8:: @ 83EEBF8
+ .incbin "baserom.gba", 0x3EEBF8, 0xA0
+
+gUnknown_83EEC98:: @ 83EEC98
+ .incbin "baserom.gba", 0x3EEC98, 0x50
+
+gUnknown_83EECE8:: @ 83EECE8
+ .incbin "baserom.gba", 0x3EECE8, 0x546
+
+gUnknown_83EF22E:: @ 83EF22E
+ .incbin "baserom.gba", 0x3EF22E, 0xE
+
+gUnknown_83EF23C:: @ 83EF23C
+ .incbin "baserom.gba", 0x3EF23C, 0x1E
+
+gUnknown_83EF25A:: @ 83EF25A
+ .incbin "baserom.gba", 0x3EF25A, 0x2
+
+gUnknown_83EF25C:: @ 83EF25C
+ .incbin "baserom.gba", 0x3EF25C, 0x20
+
+gUnknown_83EF27C:: @ 83EF27C
+ .incbin "baserom.gba", 0x3EF27C, 0x20
+
+gUnknown_83EF29C:: @ 83EF29C
+ .incbin "baserom.gba", 0x3EF29C, 0x20
+
+gUnknown_83EF2BC:: @ 83EF2BC
+ .incbin "baserom.gba", 0x3EF2BC, 0x20
+
+gUnknown_83EF2DC:: @ 83EF2DC
+ .incbin "baserom.gba", 0x3EF2DC, 0x40
+
+gUnknown_83EF31C:: @ 83EF31C
+ .incbin "baserom.gba", 0x3EF31C, 0x68
+
+gUnknown_83EF384:: @ 83EF384
+ .incbin "baserom.gba", 0x3EF384, 0x20
+
+gUnknown_83EF3A4:: @ 83EF3A4
+ .incbin "baserom.gba", 0x3EF3A4, 0x20
+
+gUnknown_83EF3C4:: @ 83EF3C4
+ .incbin "baserom.gba", 0x3EF3C4, 0x8C
+
+gUnknown_83EF450:: @ 83EF450
+ .incbin "baserom.gba", 0x3EF450, 0x90
+
+gUnknown_83EF4E0:: @ 83EF4E0
+ .incbin "baserom.gba", 0x3EF4E0, 0x44
+
+gUnknown_83EF524:: @ 83EF524
+ .incbin "baserom.gba", 0x3EF524, 0x78
+
+gUnknown_83EF59C:: @ 83EF59C
+ .incbin "baserom.gba", 0x3EF59C, 0x80
+
+gUnknown_83EF61C:: @ 83EF61C
+ .incbin "baserom.gba", 0x3EF61C, 0xD14
+
+gUnknown_83F0330:: @ 83F0330
+ .incbin "baserom.gba", 0x3F0330, 0x250
+
+gUnknown_83F0580:: @ 83F0580
+ .incbin "baserom.gba", 0x3F0580, 0x31C
+
+gUnknown_83F089C:: @ 83F089C
+ .incbin "baserom.gba", 0x3F089C, 0x260
+
+gUnknown_83F0AFC:: @ 83F0AFC
+ .incbin "baserom.gba", 0x3F0AFC, 0x110
+
+gUnknown_83F0C0C:: @ 83F0C0C
+ .incbin "baserom.gba", 0x3F0C0C, 0xE4
+
+gUnknown_83F0CF0:: @ 83F0CF0
+ .incbin "baserom.gba", 0x3F0CF0, 0x11C
+
+gUnknown_83F0E0C:: @ 83F0E0C
+ .incbin "baserom.gba", 0x3F0E0C, 0x110
+
+gUnknown_83F0F1C:: @ 83F0F1C
+ .incbin "baserom.gba", 0x3F0F1C, 0x168
+
+gUnknown_83F1084:: @ 83F1084
+ .incbin "baserom.gba", 0x3F1084, 0x10C
+
+gUnknown_83F1190:: @ 83F1190
+ .incbin "baserom.gba", 0x3F1190, 0x13C
+
+gUnknown_83F12CC:: @ 83F12CC
+ .incbin "baserom.gba", 0x3F12CC, 0x120
+
+gUnknown_83F13EC:: @ 83F13EC
+ .incbin "baserom.gba", 0x3F13EC, 0x164
+
+gUnknown_83F1550:: @ 83F1550
+ .incbin "baserom.gba", 0x3F1550, 0xF0
+
+gUnknown_83F1640:: @ 83F1640
+ .incbin "baserom.gba", 0x3F1640, 0xF8
+
+gUnknown_83F1738:: @ 83F1738
+ .incbin "baserom.gba", 0x3F1738, 0xCC
+
+gUnknown_83F1804:: @ 83F1804
+ .incbin "baserom.gba", 0x3F1804, 0xD4
+
+gUnknown_83F18D8:: @ 83F18D8
+ .incbin "baserom.gba", 0x3F18D8, 0x30
+
+gUnknown_83F1908:: @ 83F1908
+ .incbin "baserom.gba", 0x3F1908, 0x70
+
+gUnknown_83F1978:: @ 83F1978
+ .incbin "baserom.gba", 0x3F1978, 0x28
+
+gUnknown_83F19A0:: @ 83F19A0
+ .incbin "baserom.gba", 0x3F19A0, 0xB0
+
+gUnknown_83F1A50:: @ 83F1A50
+ .incbin "baserom.gba", 0x3F1A50, 0x10
+
+gUnknown_83F1A60:: @ 83F1A60
+ .incbin "baserom.gba", 0x3F1A60, 0x30
+
+gUnknown_83F1A90:: @ 83F1A90
+ .incbin "baserom.gba", 0x3F1A90, 0x4
+
+gUnknown_83F1A94:: @ 83F1A94
+ .incbin "baserom.gba", 0x3F1A94, 0x8
+
+gUnknown_83F1A9C:: @ 83F1A9C
+ .incbin "baserom.gba", 0x3F1A9C, 0x8
+
+gUnknown_83F1AA4:: @ 83F1AA4
+ .incbin "baserom.gba", 0x3F1AA4, 0x5C
+
+gUnknown_83F1B00:: @ 83F1B00
+ .incbin "baserom.gba", 0x3F1B00, 0xC
+
+gUnknown_83F1B0C:: @ 83F1B0C
+ .incbin "baserom.gba", 0x3F1B0C, 0x8
+
+gUnknown_83F1B14:: @ 83F1B14
+ .incbin "baserom.gba", 0x3F1B14, 0x8
+
+gUnknown_83F1B1C:: @ 83F1B1C
+ .incbin "baserom.gba", 0x3F1B1C, 0x8
+
+gUnknown_83F1B24:: @ 83F1B24
+ .incbin "baserom.gba", 0x3F1B24, 0x14
+
+gUnknown_83F1B38:: @ 83F1B38
+ .incbin "baserom.gba", 0x3F1B38, 0x4
+
+gUnknown_83F1B3C:: @ 83F1B3C
+ .incbin "baserom.gba", 0x3F1B3C, 0xE4
+
+gUnknown_83F1C20:: @ 83F1C20
+ .incbin "baserom.gba", 0x3F1C20, 0x10
+
+gUnknown_83F1C30:: @ 83F1C30
+ .incbin "baserom.gba", 0x3F1C30, 0x4
+
+gUnknown_83F1C34:: @ 83F1C34
+ .incbin "baserom.gba", 0x3F1C34, 0x8
+
+gUnknown_83F1C3C:: @ 83F1C3C
+ .incbin "baserom.gba", 0x3F1C3C, 0x14
+
+gUnknown_83F1C50:: @ 83F1C50
+ .incbin "baserom.gba", 0x3F1C50, 0x4
+
+gUnknown_83F1C54:: @ 83F1C54
+ .incbin "baserom.gba", 0x3F1C54, 0x10
+
+gUnknown_83F1C64:: @ 83F1C64
+ .incbin "baserom.gba", 0x3F1C64, 0x4
+
+gUnknown_83F1C68:: @ 83F1C68
+ .incbin "baserom.gba", 0x3F1C68, 0x8
+
+gUnknown_83F1C70:: @ 83F1C70
+ .incbin "baserom.gba", 0x3F1C70, 0x24
+
+gUnknown_83F1C94:: @ 83F1C94
+ .incbin "baserom.gba", 0x3F1C94, 0x4
+
+gUnknown_83F1C98:: @ 83F1C98
+ .incbin "baserom.gba", 0x3F1C98, 0x8
+
+gUnknown_83F1CA0:: @ 83F1CA0
+ .incbin "baserom.gba", 0x3F1CA0, 0x4
+
+gUnknown_83F1CA4:: @ 83F1CA4
+ .incbin "baserom.gba", 0x3F1CA4, 0x4
+
+gUnknown_83F1CA8:: @ 83F1CA8
+ .incbin "baserom.gba", 0x3F1CA8, 0x4
+
+gUnknown_83F1CAC:: @ 83F1CAC
+ .incbin "baserom.gba", 0x3F1CAC, 0x1B4
+
+gUnknown_83F1E60:: @ 83F1E60
+ .incbin "baserom.gba", 0x3F1E60, 0x318
+
+gUnknown_83F2178:: @ 83F2178
+ .incbin "baserom.gba", 0x3F2178, 0x318
+
+gUnknown_83F2490:: @ 83F2490
+ .incbin "baserom.gba", 0x3F2490, 0x294
+
+gUnknown_83F2724:: @ 83F2724
+ .incbin "baserom.gba", 0x3F2724, 0x294
+
+gUnknown_83F29B8:: @ 83F29B8
+ .incbin "baserom.gba", 0x3F29B8, 0x294
+
+gUnknown_83F2C4C:: @ 83F2C4C
+ .incbin "baserom.gba", 0x3F2C4C, 0x294
+
+gUnknown_83F2EE0:: @ 83F2EE0
+ .incbin "baserom.gba", 0x3F2EE0, 0x144
+
+gUnknown_83F3024:: @ 83F3024
+ .incbin "baserom.gba", 0x3F3024, 0x2580
diff --git a/data/data_83FECCC.s b/data/data_83FECCC.s
index 2ce441e4e..dfa4bee5d 100644
--- a/data/data_83FECCC.s
+++ b/data/data_83FECCC.s
@@ -2731,24 +2731,9 @@ gUnknown_8453178:: @ 8453178
gUnknown_8453184:: @ 8453184
.incbin "baserom.gba", 0x453184, 0x8
-gUnknown_845318C:: @ 845318C
- .incbin "baserom.gba", 0x45318C, 0xDD0
-
-gUnknown_8453F5C:: @ 8453F5C
- .incbin "baserom.gba", 0x453F5C, 0x4
-
-gUnknown_8453F60:: @ 8453F60
- .incbin "baserom.gba", 0x453F60, 0x2
-
-gUnknown_8453F62:: @ 8453F62
- .incbin "baserom.gba", 0x453F62, 0x2
-
-gUnknown_8453F64:: @ 8453F64
- .incbin "baserom.gba", 0x453F64, 0x3
-
-gUnknown_8453F67:: @ 8453F67
- .incbin "baserom.gba", 0x453F67, 0x5
+ .section .rodata.8453F6C
+// item_pc.o
gUnknown_8453F6C:: @ 8453F6C
.incbin "baserom.gba", 0x453F6C, 0x8
diff --git a/data/metatile_behavior.s b/data/metatile_behavior.s
new file mode 100644
index 000000000..64d88840d
--- /dev/null
+++ b/data/metatile_behavior.s
@@ -0,0 +1,6 @@
+ .section .rodata
+
+ .align 2
+
+gUnknown_8353068:: @ 8353068
+ .incbin "baserom.gba", 0x353068, 0x8420
diff --git a/include/battle_setup.h b/include/battle_setup.h
index b4c0201a3..2806295ca 100644
--- a/include/battle_setup.h
+++ b/include/battle_setup.h
@@ -16,5 +16,6 @@ void trainer_flag_clear(u16);
void BattleSetup_StartTrainerBattle(void);
u8 *BattleSetup_GetScriptAddrAfterBattle(void);
u8 *BattleSetup_GetTrainerPostBattleScript(void);
+void sub_80803FC(void);
#endif // GUARD_BATTLE_SETUP_H
diff --git a/include/constants/flags.h b/include/constants/flags.h
index 04c20b2f2..ea2d7d8bc 100644
--- a/include/constants/flags.h
+++ b/include/constants/flags.h
@@ -1,6 +1,8 @@
#ifndef GUARD_CONSTANTS_FLAGS_H
#define GUARD_CONSTANTS_FLAGS_H
+// TODO: Get correct names and numbers
+
#define FLAG_0x001 0x1
#define FLAG_0x002 0x2
#define FLAG_0x003 0x3
diff --git a/include/constants/metatile_behaviors.h b/include/constants/metatile_behaviors.h
new file mode 100644
index 000000000..0ceeda33f
--- /dev/null
+++ b/include/constants/metatile_behaviors.h
@@ -0,0 +1,118 @@
+#ifndef GUARD_METATILE_BEHAVIORS
+#define GUARD_METATILE_BEHAVIORS
+
+#define METATILE_COUNT 0xF0
+#define MB_NORMAL 0x00
+#define MB_01 0x01
+#define MB_TALL_GRASS 0x02
+#define MB_CAVE 0x08
+#define MB_0A 0x0A
+#define MB_0B 0x0B
+#define MB_0C 0x0C
+#define MB_POND_WATER 0x10
+#define MB_SEMI_DEEP_WATER 0x11
+#define MB_DEEP_WATER 0x12
+#define MB_WATERFALL 0x13
+#define MB_SPLASHING_WATER 0x15
+#define MB_PUDDLE 0x16
+#define MB_WATERFALL_BOTTOM 0x17
+#define MB_19 0x19
+#define MB_1A 0x1A
+#define MB_1B 0x1B
+#define MB_STRENGTH_BUTTON 0x20
+#define MB_21 0x21
+#define MB_22 0x22
+#define MB_ICE 0x23
+#define MB_THIN_ICE 0x26
+#define MB_CRACKED_ICE 0x27
+#define MB_HOT_SPRINGS 0x28
+#define MB_ROCK_STAIRS 0x2A
+#define MB_SAND 0x2B
+#define MB_IMPASSABLE_EAST 0x30
+#define MB_IMPASSABLE_WEST 0x31
+#define MB_IMPASSABLE_NORTH 0x32
+#define MB_IMPASSABLE_SOUTH 0x33
+#define MB_IMPASSABLE_NORTHEAST 0x34
+#define MB_IMPASSABLE_NORTHWEST 0x35
+#define MB_IMPASSABLE_SOUTHEAST 0x36
+#define MB_IMPASSABLE_SOUTHWEST 0x37
+#define MB_JUMP_EAST 0x38
+#define MB_JUMP_WEST 0x39
+#define MB_JUMP_NORTH 0x3A
+#define MB_JUMP_SOUTH 0x3B
+#define MB_JUMP_SOUTHEAST 0x3E
+#define MB_JUMP_SOUTHWEST 0x3F
+#define MB_WALK_EAST 0x40
+#define MB_WALK_WEST 0x41
+#define MB_WALK_NORTH 0x42
+#define MB_WALK_SOUTH 0x43
+#define MB_SLIDE_EAST 0x44
+#define MB_SLIDE_WEST 0x45
+#define MB_SLIDE_NORTH 0x46
+#define MB_SLIDE_SOUTH 0x47
+#define MB_UNKNOWN_MOVEMENT_48 0x48
+#define MB_EASTWARD_CURRENT 0x50
+#define MB_WESTWARD_CURRENT 0x51
+#define MB_NORTHWARD_CURRENT 0x52
+#define MB_SOUTHWARD_CURRENT 0x53
+#define MB_SPIN_RIGHT 0x54
+#define MB_SPIN_LEFT 0x55
+#define MB_SPIN_UP 0x56
+#define MB_SPIN_DOWN 0x57
+#define MB_STOP_SPINNING 0x58
+#define MB_CAVE_DOOR 0x60
+#define MB_LADDER 0x61
+#define MB_EAST_ARROW_WARP 0x62
+#define MB_WEST_ARROW_WARP 0x63
+#define MB_NORTH_ARROW_WARP 0x64
+#define MB_SOUTH_ARROW_WARP 0x65
+#define MB_FALL_WARP 0x66
+#define MB_REGULAR_WARP 0x67
+#define MB_68 0x68
+#define MB_WARP_DOOR 0x69
+#define MB_UP_ESCALATOR 0x6A
+#define MB_DOWN_ESCALATOR 0x6B
+#define MB_UNKNOWN_WARP_6C 0x6C
+#define MB_UNKNOWN_WARP_6D 0x6D
+#define MB_UNKNOWN_WARP_6E 0x6E
+#define MB_UNKNOWN_WARP_6F 0x6F
+#define MB_UNION_ROOM_WARP 0x71
+#define MB_COUNTER 0x80
+#define MB_BOOKSHELF 0x81
+#define MB_POKEMART_SHELF 0x82
+#define MB_PC 0x83
+#define MB_SIGNPOST 0x84
+#define MB_REGION_MAP 0x85
+#define MB_TELEVISION 0x86
+#define MB_POKEMON_CENTER_SIGN 0x87
+#define MB_POKEMART_SIGN 0x88
+#define MB_CABINET 0x89
+#define MB_KITCHEN 0x8A
+#define MB_DRESSER 0x8B
+#define MB_SNACKS 0x8C
+#define MB_8D 0x8D
+#define MB_BATTLE_RECORDS 0x8E
+#define MB_QUESTIONNAIRE 0x8F
+#define MB_FOOD 0x90
+#define MB_INDIGO_PLATEAU_MARK_DPAD 0x91
+#define MB_INDIGO_PLATEAU_MARK_2_DPAD 0x92
+#define MB_BLUEPRINTS 0x93
+#define MB_PAINTING 0x94
+#define MB_POWER_PLANT_MACHINE 0x95
+#define MB_TELEPHONE 0x96
+#define MB_COMPUTER 0x97
+#define MB_ADVERTISING_POSTER 0x98
+#define MB_FOOD_SMELLS_TASTY 0x99
+#define MB_TRASH_BIN 0x9A
+#define MB_CUP 0x9B
+#define MB_PORTHOLE 0x9C
+#define MB_BLINKING_LIGHTS 0x9E
+#define MB_9F 0x9F
+#define MB_IMPRESSIVE_MACHINE 0xA0
+#define MB_VIDEO_GAME 0xA1
+#define MB_BURGLARY 0xA2
+#define MB_A3 0xA3
+#define MB_CYCLING_ROAD_PULL_DOWN 0xD0
+#define MB_CYCLING_ROAD_PULL_DOWN_GRASS 0xD1
+
+#endif // GUARD_METATILE_BEHAVIORS
diff --git a/include/constants/movement_commands.h b/include/constants/movement_commands.h
new file mode 100644
index 000000000..0451e16b7
--- /dev/null
+++ b/include/constants/movement_commands.h
@@ -0,0 +1,117 @@
+#ifndef GUARD_CONSTANTS_MOVEMENT_COMMANDS_H
+#define GUARD_CONSTANTS_MOVEMENT_COMMANDS_H
+
+enum
+{
+ step_00,
+ step_01,
+ step_02,
+ step_03,
+ slow_step_down,
+ slow_step_up,
+ slow_step_left,
+ slow_step_right,
+ step_down,
+ step_up,
+ step_left,
+ step_right,
+ fast_step_down,
+ fast_step_up,
+ fast_step_left,
+ fast_step_right,
+ step_10,
+ step_11,
+ step_12,
+ step_13,
+ step_14,
+ step_15,
+ step_16,
+ step_17,
+ step_18,
+ step_19,
+ step_1a,
+ step_1b,
+ step_1c,
+ step_1d,
+ step_1e,
+ step_1f,
+ step_20,
+ step_21,
+ step_22,
+ step_23,
+ step_24,
+ step_25,
+ step_26,
+ step_27,
+ step_28,
+ step_29,
+ step_2a,
+ step_2b,
+ step_2c,
+ step_2d,
+ step_2e,
+ step_2f,
+ step_30,
+ step_31,
+ step_32,
+ step_33,
+ step_34,
+ step_35,
+ step_36,
+ step_37,
+ step_38,
+ step_39,
+ step_3a,
+ step_3b,
+ step_3c,
+ step_3d,
+ step_3e,
+ step_3f,
+ step_40,
+ step_41,
+ step_42,
+ step_43,
+ step_44,
+ step_45,
+ step_46,
+ step_47,
+ step_48,
+ step_49,
+ step_4a,
+ step_4b,
+ step_4c,
+ step_4d,
+ step_4e,
+ step_4f,
+ step_50,
+ step_51,
+ step_52,
+ step_53,
+ step_54,
+ step_55,
+ step_56,
+ step_57,
+ step_58,
+ step_59,
+ step_5a,
+ step_5b,
+ step_5c,
+ step_5d,
+ step_5e,
+ step_5f,
+ step_60,
+ step_61,
+ step_62,
+ step_63,
+ step_64,
+ step_65,
+
+ step_91 = 0x91,
+ step_92,
+
+ step_96 = 0x96,
+
+ step_end = 0xfe,
+};
+
+#endif //GUARD_CONSTANTS_MOVEMENT_COMMANDS_H
diff --git a/include/event_scripts.h b/include/event_scripts.h
index 900755108..ebfdb4fe3 100644
--- a/include/event_scripts.h
+++ b/include/event_scripts.h
@@ -377,4 +377,8 @@ extern const u8 SecretBase_RedCave1_Text_2758CC[];
extern const u8 gUnknown_84178D0[];
extern const u8 gUnknown_84178DA[];
+// vs_seeker
+extern const u8 gUnknown_81C137C[];
+extern const u8 gUnknown_81C13D6[];
+extern const u8 gUnknown_81C1429[];
#endif //GUARD_EVENT_SCRIPTS_H
diff --git a/include/field_effect.h b/include/field_effect.h
index 8d96e4929..bb5e0f1d5 100644
--- a/include/field_effect.h
+++ b/include/field_effect.h
@@ -68,7 +68,9 @@ enum FieldEffectScriptIdx
FLDEFF_USE_FLY_ANCIENT_TOMB,
FLDEFF_PCTURN_ON,
FLDEFF_HALL_OF_FAME_RECORD,
- FLDEFF_USE_TELEPORT
+ FLDEFF_USE_TELEPORT,
+ FLDEFF_UNK_40,
+ FLDEFF_UNK_41 // TODO: related to vs_seeker
};
extern u32 gFieldEffectArguments[8];
diff --git a/include/field_map_obj.h b/include/field_map_obj.h
index ebe68ea01..9ff5ecedc 100644
--- a/include/field_map_obj.h
+++ b/include/field_map_obj.h
@@ -80,6 +80,9 @@ u8 FieldObjectClearAnimIfSpecialAnimFinished(struct MapObject *);
u8 GetFieldObjectIdByXYZ(u16 x, u16 y, u8 z);
void sub_8063E28(struct MapObject *, struct Sprite *);
void sub_8063CA4(struct MapObject *, u8);
+void npc_coords_shift_still(struct MapObject *);
+void sub_805FE7C(struct MapObject *, u8);
+void npc_set_running_behaviour_etc(struct MapObject *, u8);
// Exported data declarations
diff --git a/include/field_specials.h b/include/field_specials.h
index fbe004355..2b7991b55 100644
--- a/include/field_specials.h
+++ b/include/field_specials.h
@@ -4,5 +4,6 @@
#include "global.h"
u8 GetLeadMonIndex(void);
+void TV_PrintIntToStringVar(u8, int);
#endif // GUARD_FIELD_SPECIALS_H
diff --git a/include/item_menu.h b/include/item_menu.h
index 24f700918..731c7cf2b 100644
--- a/include/item_menu.h
+++ b/include/item_menu.h
@@ -1,5 +1,5 @@
-#ifndef GUARD_item_menu_H
-#define GUARD_item_menu_H
+#ifndef GUARD_ITEM_MENU_H
+#define GUARD_ITEM_MENU_H
#include "global.h"
@@ -7,8 +7,10 @@
// Exported RAM declarations
+extern u16 gUnknown_203AD30;
+
// Exported ROM declarations
void sub_81AAC50(void);
void sub_81AAC70(void);
-#endif //GUARD_item_menu_H
+#endif //GUARD_ITEM_MENU_H
diff --git a/include/item_use.h b/include/item_use.h
new file mode 100644
index 000000000..5ec5f2b33
--- /dev/null
+++ b/include/item_use.h
@@ -0,0 +1,9 @@
+#ifndef GUARD_ITEM_USE_H
+#define GUARD_ITEM_USE_H
+
+#include "global.h"
+
+void sub_80A1E0C(u8);
+void sub_80A2294(u8, u8, u16, u16);
+
+#endif //GUARD_ITEM_USE_H
diff --git a/include/metatile_behavior.h b/include/metatile_behavior.h
index 973d96cbb..62bcfdd38 100644
--- a/include/metatile_behavior.h
+++ b/include/metatile_behavior.h
@@ -3,149 +3,154 @@
#include "global.h"
-bool8 ShouldDoJumpLandingDustEffect(u8);
-bool8 MetatileBehavior_IsEncounterTile(u8);
-bool8 MetatileBehavior_IsJumpEast(u8);
-bool8 MetatileBehavior_IsJumpWest(u8);
-bool8 MetatileBehavior_IsJumpNorth(u8);
-bool8 MetatileBehavior_IsJumpSouth(u8);
-bool8 MetatileBehavior_IsPokeGrass(u8);
-bool8 MetatileBehavior_IsSandOrDeepSand(u8);
-bool8 MetatileBehavior_IsDeepSand(u8);
-bool8 MetatileBehavior_IsReflective(u8);
-bool8 MetatileBehavior_IsIce(u8);
-bool8 MetatileBehavior_IsWarpDoor(u8);
-bool8 MetatileBehavior_IsDoor(u8);
-bool8 MetatileBehavior_IsEscalator(u8);
-bool8 MetatileBehavior_IsMB_04(u8);
-bool8 MetatileBehavior_IsLadder(u8);
-bool8 MetatileBehavior_IsNonAnimDoor(u8);
-bool8 MetatileBehavior_IsDeepSouthWarp(u8);
-bool8 MetatileBehavior_IsSurfableWaterOrUnderwater(u8);
-bool8 MetatileBehavior_IsEastArrowWarp(u8);
-bool8 MetatileBehavior_IsWestArrowWarp(u8);
-bool8 MetatileBehavior_IsNorthArrowWarp(u8);
-bool8 MetatileBehavior_IsSouthArrowWarp(u8);
-bool8 MetatileBehavior_IsArrowWarp(u8);
-bool8 MetatileBehavior_IsMoveTile(u8);
-bool8 MetatileBehavior_IsIce_2(u8);
-bool8 MetatileBehavior_IsTrickHouseSlipperyFloor(u8);
-bool8 MetatileBehavior_IsMB_05(u8);
-bool8 MetatileBehavior_IsWalkNorth(u8);
-bool8 MetatileBehavior_IsWalkSouth(u8);
-bool8 MetatileBehavior_IsWalkWest(u8);
-bool8 MetatileBehavior_IsWalkEast(u8);
-bool8 MetatileBehavior_IsNorthwardCurrent(u8);
-bool8 MetatileBehavior_IsSouthwardCurrent(u8);
-bool8 MetatileBehavior_IsWestwardCurrent(u8);
-bool8 MetatileBehavior_IsEastwardCurrent(u8);
-bool8 MetatileBehavior_IsSlideNorth(u8);
-bool8 MetatileBehavior_IsSlideSouth(u8);
-bool8 MetatileBehavior_IsSlideWest(u8);
-bool8 MetatileBehavior_IsSlideEast(u8);
-bool8 MetatileBehavior_IsCounter(u8);
-bool8 MetatileBehavior_IsPlayerFacingTVScreen(u8 tile, u8 playerDir);
-bool8 MetatileBehavior_IsPC(u8);
-bool8 MetatileBehavior_IsCableBoxResults1(u8);
-bool8 MetatileBehavior_IsSecretBaseOpen(u8);
-bool8 MetatileBehavior_IsSecretBaseCave(u8);
-bool8 MetatileBehavior_IsSecretBaseTree(u8);
-bool8 MetatileBehavior_IsSecretBaseShrub(u8);
-bool8 MetatileBehavior_IsSecretBasePC(u8);
-bool8 MetatileBehavior_IsSecretBaseRegisterPC(u8);
-bool8 MetatileBehavior_IsMB_B2(u8);
-bool8 MetatileBehavior_IsMB_B3(u8);
-bool8 MetatileBehavior_IsMB_B9(u8);
-bool8 MetatileBehavior_IsMB_C6(u8);
-bool8 MetatileBehavior_IsSecretBasePoster(u8);
-bool8 MetatileBehavior_IsNormal(u8);
-bool8 MetatileBehavior_IsMB_B7(u8);
-bool8 MetatileBehavior_IsMB_B2_Duplicate(u8);
-bool8 MetatileBehavior_IsMB_B5(u8);
-bool8 MetatileBehavior_IsMB_C3(u8);
-bool8 MetatileBehavior_IsMB_C2(u8);
-bool8 MetatileBehavior_IsSecretBaseBalloon(u8);
-bool8 MetatileBehavior_IsMB_BE(u8);
-bool8 MetatileBehavior_IsSecretBaseSoundMat(u8);
-bool8 MetatileBehavior_IsSecretBaseGlitterMat(u8);
-bool8 MetatileBehavior_IsMB_BF(u8);
-bool8 MetatileBehavior_IsSecretBaseTvOrShield(u8);
-bool8 MetatileBehavior_IsMB_C5(u8);
-bool8 MetatileBehavior_HasRipples(u8);
-bool8 MetatileBehavior_IsPuddle(u8);
-bool8 MetatileBehavior_IsTallGrass(u8);
-bool8 MetatileBehavior_IsLongGrass(u8);
-bool8 MetatileBehavior_IsBerryTreeSoil(u8);
-bool8 MetatileBehavior_IsAsh(u8);
-bool8 MetatileBehavior_IsUnusedFootprintMetatile(u8);
-bool8 MetatileBehavior_IsBridge(u8);
-u8 MetatileBehavior_GetBridgeSth(u8);
-u8 MetatileBehavior_8089510(u8);
-bool8 MetatileBehavior_IsLandWildEncounter(u8);
-bool8 MetatileBehavior_IsWaterWildEncounter(u8);
-bool8 MetatileBehavior_IsMB_0B(u8);
-bool8 MetatileBehavior_IsMountain(u8);
-bool8 MetatileBehavior_IsDiveable(u8);
-bool8 MetatileBehavior_IsUnableToEmerge(u8);
-bool8 MetatileBehavior_IsShallowFlowingWater(u8);
-bool8 MetatileBehavior_IsThinIce(u8);
-bool8 MetatileBehavior_IsCrackedIce(u8);
-bool8 MetatileBehavior_IsDeepOrOceanWater(u8);
-bool8 MetatileBehavior_IsMB_18_OrMB_1A(u8);
-bool8 MetatileBehavior_IsSurfableAndNotWaterfall(u8);
-bool8 MetatileBehavior_IsEastBlocked(u8);
-bool8 MetatileBehavior_IsWestBlocked(u8);
-bool8 MetatileBehavior_IsNorthBlocked(u8);
-bool8 MetatileBehavior_IsSouthBlocked(u8);
-bool8 MetatileBehavior_IsShortGrass(u8);
-bool8 MetatileBehavior_IsHotSprings(u8);
-bool8 MetatileBehavior_IsWaterfall(u8);
-bool8 MetatileBehavior_IsFortreeBridge(u8);
-bool8 MetatileBehavior_IsPacifilogVerticalLog1(u8);
-bool8 MetatileBehavior_IsPacifilogVerticalLog2(u8);
-bool8 MetatileBehavior_IsPacifilogHorizontalLog1(u8);
-bool8 MetatileBehavior_IsPacifilogHorizontalLog2(u8);
-bool8 MetatileBehavior_IsPacifidlogLog(u8);
-bool8 MetatileBehavior_IsTrickHousePuzzleDoor(u8);
-bool8 MetatileBehavior_IsRegionMap(u8);
-bool8 MetatileBehavior_IsClosedSootopolisGymDoor(u8);
-bool8 MetatileBehavior_IsUnknownClosedDoor(u8);
-bool8 MetatileBehavior_IsRoulette(u8);
-bool8 MetatileBehavior_IsPokeblockFeeder(u8);
-bool8 MetatileBehavior_IsSecretBaseJumpMat(u8);
-bool8 MetatileBehavior_IsSecretBaseSpinMat(u8);
-bool8 MetatileBehavior_IsLavaridgeB1FWarp(u8);
-bool8 MetatileBehavior_IsLavaridgeB1FWarp(u8);
-bool8 MetatileBehavior_IsAquaHideoutWarp(u8);
-bool8 MetatileBehavior_IsWarpOrBridge(u8);
-bool8 MetatileBehavior_IsMossdeepGymWarp(u8);
-bool8 MetatileBehavior_IsSurfableFishableWater(u8);
-bool8 MetatileBehavior_IsMtPyreHole(u8);
-bool8 MetatileBehavior_IsCrackedFloorHole(u8);
-bool8 MetatileBehavior_IsCrackedFloor(u8);
-bool8 MetatileBehavior_IsMuddySlope(u8);
-bool8 MetatileBehavior_IsBumpySlope(u8);
-bool8 MetatileBehavior_IsIsolatedVerticalRail(u8);
-bool8 MetatileBehavior_IsIsolatedHorizontalRail(u8);
-bool8 MetatileBehavior_IsVerticalRail(u8);
-bool8 MetatileBehavior_IsHorizontalRail(u8);
-bool8 MetatileBehavior_IsSeaweed(u8);
-bool8 MetatileBehavior_IsRunningDisallowed(u8);
-bool8 MetatileBehavior_IsCuttableGrass(u8);
-bool8 MetatileBehavior_IsRunningShoesInstruction(u8);
-bool8 MetatileBehavior_IsPictureBookShelf(u8);
-bool8 MetatileBehavior_IsBookShelf(u8);
-bool8 MetatileBehavior_IsPokeCenterBookShelf(u8);
-bool8 MetatileBehavior_IsVase(u8);
-bool8 MetatileBehavior_IsTrashCan(u8);
-bool8 MetatileBehavior_IsShopShelf(u8);
-bool8 MetatileBehavior_IsBlueprint(u8);
-bool8 MetatileBehavior_IsBattlePyramidWarp(u8);
-bool8 MetatileBehavior_IsPlayerFacingWirelessBoxResults(u8 tile, u8 playerDir);
-bool8 MetatileBehavior_IsCableBoxResults2(u8 tile, u8 playerDir);
-bool8 MetatileBehavior_IsQuestionnaire(u8);
-bool8 MetatileBehavior_IsLongGrass_Duplicate(u8);
-bool8 MetatileBehavior_IsLongGrassSouthEdge(u8);
-bool8 MetatileBehavior_IsTrainerHillTimer(u8);
+bool8 MetatileBehavior_UnusedReturnTrue(u8 metatileBehavior);
+bool8 MetatileBehavior_IsJumpEast(u8 metatileBehavior);
+bool8 MetatileBehavior_IsJumpWest(u8 metatileBehavior);
+bool8 MetatileBehavior_IsJumpNorth(u8 metatileBehavior);
+bool8 MetatileBehavior_IsJumpSouth(u8 metatileBehavior);
+bool8 MetatileBehavior_IsTallGrass(u8 metatileBehavior);
+bool8 MetatileBehavior_IsMB21OrSand(u8 metatileBehavior);
+bool8 MetatileBehavior_IsMB21OrWaterfallBottom(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse(u8 metatileBehavior);
+bool8 MetatileBehavior_IsReflective(u8 metatileBehavior);
+bool8 MetatileBehavior_IsIce(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWarpDoor(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWarpDoor_2(u8 metatileBehavior);
+bool8 MetatileBehavior_IsEscalator(u8 metatileBehavior);
+bool8 MetatileBehavior_IsUnknownWarp6C(u8 metatileBehavior);
+bool8 MetatileBehavior_IsUnknownWarp6D(u8 metatileBehavior);
+bool8 MetatileBehavior_IsUnknownWarp6E(u8 metatileBehavior);
+bool8 MetatileBehavior_IsUnknownWarp6F(u8 metatileBehavior);
+bool8 MetatileBehavior_IsUnknownWarp6C_to_6F(u8 metatileBehavior);
+bool8 MetatileBehavior_IsLadder(u8 metatileBehavior);
+bool8 MetatileBehavior_IsCaveDoor(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_2(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSurfable(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSemiDeepWater(u8 metatileBehavior);
+bool8 MetatileBehavior_IsEastArrowWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWestArrowWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_IsNorthArrowWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSouthArrowWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedIsArrowWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_IsForcedMovementTile(u8 metatileBehavior);
+bool8 MetatileBehavior_IsIce_2(u8 metatileBehavior);
+bool8 MetatileBehavior_IsUnknownMovement48(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWalkNorth(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWalkSouth(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWalkWest(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWalkEast(u8 metatileBehavior);
+bool8 MetatileBehavior_IsNorthwardCurrent(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSouthwardCurrent(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWestwardCurrent(u8 metatileBehavior);
+bool8 MetatileBehavior_IsEastwardCurrent(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSlideNorth(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSlideSouth(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSlideWest(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSlideEast(u8 metatileBehavior);
+bool8 MetatileBehavior_IsCounter(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPlayerFacingTVScreen(u8 tile, u8 playerDirection);
+bool8 MetatileBehavior_IsPC(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPondWaterOrPuddle(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPuddle(u8 metatileBehavior);
+bool8 MetatileBehavior_IsTallGrass_2(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_3(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_4(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_5(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_6(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_7(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedIsMB_01(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedIsTallGrass(u8 metatileBehavior);
+bool8 MetatileBehavior_IsMB0B(u8 metatileBehavior);
+bool8 MetatileBehavior_IsMB0C(u8 metatileBehavior);
+bool8 MetatileBehavior_IsDeepOrSemiDeepWater(u8 metatileBehavior);
+bool8 MetatileBehavior_IsMB19(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWaterfallBottom(u8 metatileBehavior);
+bool8 MetatileBehavior_IsThinIce(u8 metatileBehavior);
+bool8 MetatileBehavior_IsCrackedIce(u8 metatileBehavior);
+bool8 MetatileBehavior_IsDeepSemiDeepOrSplashingWater(u8 metatileBehavior);
+bool8 MetatileBehavior_IsMB1A(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSurfableAndNotWaterfall(u8 metatileBehavior);
+bool8 MetatileBehavior_IsEastBlocked(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWestBlocked(u8 metatileBehavior);
+bool8 MetatileBehavior_IsNorthBlocked(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSouthBlocked(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_8(u8 metatileBehavior);
+bool8 MetatileBehavior_IsHotSprings(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWaterfall(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_9(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedReturnFalse(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedReturnFalse_2(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedReturnFalse_3(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedReturnFalse_4(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_10(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_11(u8 metatileBehavior);
+bool8 MetatileBehavior_IsRegionMap(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedReturnFalse_5(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedReturnFalse_6(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedReturnFalse_7(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedReturnFalse_8(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_12(u8 metatileBehavior);
+bool8 MetatileBheavior_IsMB_68(u8 metatileBehavior);
+bool8 MetatileBehavior_IsRegularWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_IsUnionRoomWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_IsWater(u8 metatileBehavior);
+bool8 MetatileBehavior_IsFallWarp(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_13(u8 metatileBehavior);
+bool8 MetatileBehavior_IsCyclingRoadPullDownTile(u8 metatileBehavior);
+bool8 MetatileBehavior_IsCyclingRoadPullDownTileGrass(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_14(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_15(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_16(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_17(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_18(u8 metatileBehavior);
+bool8 MetatileBehavior_IsMB22(u8 metatileBehavior);
+bool8 MetatileBehavior_IsMB0A(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedReturnFalse_9(u8 metatileBehavior);
+bool8 MetatileBehavior_IsBookshelf(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPokeMartShelf(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPlayerFacingPokemonCenterSign(u8 tile, u8 playerDirection);
+bool8 MetatileBehavior_IsPlayerFacingPokeMartSign(u8 tile, u8 playerDirection);
+bool8 MetatileBehavior_UnusedReturnFalse_10(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedReturnFalse_11(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedReturnFalse_12(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedReturnFalse_13(u8 metatileBehavior);
+bool8 sub_805A2BC(u8 metatileBehavior, u8 playerDirection);
+bool8 MetatileBehavior_UnusedIsSpinRight(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedIsSpinLeft(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedIsSpinUp(u8 metatileBehavior);
+bool8 MetatileBehavior_UnusedIsSpinDown(u8 metatileBehavior);
+bool8 MetatileBehavior_IsStopSpinning(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSpinTile(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSignpost(u8 metatileBehavior);
+bool8 MetatileBehavior_IsCabinet(u8 metatileBehavior);
+bool8 MetatileBehavior_IsKitchen(u8 metatileBehavior);
+bool8 MetatileBehavior_IsDresser(u8 metatileBehavior);
+bool8 MetatileBehavior_IsSnacks(u8 metatileBehavior);
+bool8 MetatileBehavior_IsStrengthButton(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPlayerFacingMB_8D(u8 tile, u8 playerDirection);
+bool8 MetatileBehavior_IsPlayerFacingBattleRecords(u8 tile, u8 playerDirection);
+bool8 MetatileBehavior_IsQuestionnaire(u8 metatileBehavior);
+bool8 MetatileBehavior_IsIndigoPlateauMark(u8 metatileBehavior);
+bool8 MetatileBehavior_IsIndigoPlateauMark2(u8 metatileBehavior);
+bool8 MetatileBehavior_IsFood(u8 metatileBehavior);
+bool8 MetatileBehavior_IsRockStairs(u8 metatileBehavior);
+bool8 MetatileBehavior_IsBlueprints(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPainting(u8 metatileBehavior);
+bool8 MetatileBehavior_IsPowerPlantMachine(u8 metatileBehavior);
+bool8 MetatileBehavior_IsTelephone(u8 metatileBehavior);
+bool8 MetatileBehavior_IsComputer(u8 metatileBehavior);
+bool8 MetatileBehavior_IsAdvertisingPoster(u8 metatileBehavior);
+bool8 MetatileBehavior_IsTastyFood(u8 metatileBehavior);
+bool8 MetatileBehavior_IsTrashBin(u8 metatileBehavior);
+bool8 MetatileBehavior_IsCup(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_19(u8 metatileBehavior);
+bool8 MetatileBehavior_ReturnFalse_20(u8 metatileBehavior);
+bool8 MetatileBehavior_IsBlinkingLights(u8 metatileBehavior);
+bool8 MetatileBehavior_IsMB9F(u8 metatileBehavior);
+bool8 MetatileBehavior_IsImpressiveMachine(u8 metatileBehavior);
+bool8 MetatileBehavior_IsVideoGame(u8 metatileBehavior);
+bool8 MetatileBehavior_IsBurglary(u8 metatileBehavior);
+bool8 MetatileBehavior_IsMBA3(u8 metatileBehavior);
+extern u8 gUnknown_8353068[];
#endif // GUARD_METATILE_BEHAVIOR
diff --git a/include/metatile_behaviors.h b/include/metatile_behaviors.h
deleted file mode 100644
index dd3a8b4f4..000000000
--- a/include/metatile_behaviors.h
+++ /dev/null
@@ -1,179 +0,0 @@
-#ifndef GUARD_METATILE_BEHAVIORS
-#define GUARD_METATILE_BEHAVIORS
-
-#define MB_NORMAL 0x00
-#define MB_TALL_GRASS 0x02
-#define MB_LONG_GRASS 0x03
-#define MB_04 0x04
-#define MB_05 0x05
-#define MB_DEEP_SAND 0x06
-#define MB_SHORT_GRASS 0x07
-#define MB_CAVE 0x08
-#define MB_LONG_GRASS_SOUTH_EDGE 0x09
-#define MB_NO_RUNNING 0x0A
-#define MB_0B 0x0B
-#define MB_MOUNTAIN_TOP 0x0C
-#define MB_BATTLE_PYRAMID_WARP 0x0D
-#define MB_MOSSDEEP_GYM_WARP 0x0E
-#define MB_MT_PYRE_HOLE 0x0F
-#define MB_POND_WATER 0x10
-#define MB_SEMI_DEEP_WATER 0x11
-#define MB_DEEP_WATER 0x12
-#define MB_WATERFALL 0x13
-#define MB_SOOTOPOLIS_DEEP_WATER 0x14
-#define MB_OCEAN_WATER 0x15
-#define MB_PUDDLE 0x16
-#define MB_SHALLOW_WATER 0x17
-#define MB_18 0x18
-#define MB_NO_SURFACING 0x19
-#define MB_1A 0x1A
-#define MB_STAIRS_OUTSIDE_ABANDONED_SHIP 0x1B
-#define MB_SHOAL_CAVE_ENTRANCE 0x1C
-#define MB_ICE 0x20
-#define MB_SAND 0x21
-#define MB_SEAWEED 0x22
-#define MB_ASHGRASS 0x24
-#define MB_25 0x25
-#define MB_THIN_ICE 0x26
-#define MB_CRACKED_ICE 0x27
-#define MB_HOT_SPRINGS 0x28
-#define MB_LAVARIDGE_GYM_B1F_WARP 0x29
-#define MB_SEAWEED_NO_SURFACING 0x2A
-#define MB_REFLECTION_UNDER_BRIDGE 0x2B
-#define MB_IMPASSABLE_EAST 0x30
-#define MB_IMPASSABLE_WEST 0x31
-#define MB_IMPASSABLE_NORTH 0x32
-#define MB_IMPASSABLE_SOUTH 0x33
-#define MB_IMPASSABLE_NORTHEAST 0x34
-#define MB_IMPASSABLE_NORTHWEST 0x35
-#define MB_IMPASSABLE_SOUTHEAST 0x36
-#define MB_IMPASSABLE_SOUTHWEST 0x37
-#define MB_JUMP_EAST 0x38
-#define MB_JUMP_WEST 0x39
-#define MB_JUMP_NORTH 0x3A
-#define MB_JUMP_SOUTH 0x3B
-#define MB_JUMP_SOUTHEAST 0x3E
-#define MB_JUMP_SOUTHWEST 0x3F
-#define MB_WALK_EAST 0x40
-#define MB_WALK_WEST 0x41
-#define MB_WALK_NORTH 0x42
-#define MB_WALK_SOUTH 0x43
-#define MB_SLIDE_EAST 0x44
-#define MB_SLIDE_WEST 0x45
-#define MB_SLIDE_NORTH 0x46
-#define MB_SLIDE_SOUTH 0x47
-#define MB_TRICK_HOUSE_PUZZLE_8_FLOOR 0x48
-#define MB_EASTWARD_CURRENT 0x50
-#define MB_WESTWARD_CURRENT 0x51
-#define MB_NORTHWARD_CURRENT 0x52
-#define MB_SOUTHWARD_CURRENT 0x53
-#define MB_NON_ANIMATED_DOOR 0x60
-#define MB_LADDER 0x61
-#define MB_EAST_ARROW_WARP 0x62
-#define MB_WEST_ARROW_WARP 0x63
-#define MB_NORTH_ARROW_WARP 0x64
-#define MB_SOUTH_ARROW_WARP 0x65
-#define MB_CRACKED_FLOOR_HOLE 0x66
-#define MB_AQUA_HIDEOUT_WARP 0x67
-#define MB_LAVARIDGE_GYM_1F_WARP 0x68
-#define MB_ANIMATED_DOOR 0x69
-#define MB_UP_ESCALATOR 0x6A
-#define MB_DOWN_ESCALATOR 0x6B
-#define MB_WATER_DOOR 0x6C
-#define MB_WATER_SOUTH_ARROW_WARP 0x6D
-#define MB_DEEP_SOUTH_WARP 0x6E
-#define MB_WARP_OR_BRIDGE 0x70
-#define MB_71 0x71
-#define MB_ROUTE120_NORTH_BRIDGE_1 0x72
-#define MB_ROUTE120_NORTH_BRIDGE_2 0x73
-#define MB_PACIFIDLOG_VERTICAL_LOG_1 0x74
-#define MB_PACIFIDLOG_VERTICAL_LOG_2 0x75
-#define MB_PACIFIDLOG_HORIZONTAL_LOG_1 0x76
-#define MB_PACIFIDLOG_HORIZONTAL_LOG_2 0x77
-#define MB_FORTREE_BRIDGE 0x78
-#define MB_ROUTE120_SOUTH_BRIDGE_1 0x7A
-#define MB_ROUTE120_SOUTH_BRIDGE_2 0x7B
-#define MB_ROUTE120_NORTH_BRIDGE_3 0x7C
-#define MB_ROUTE120_NORTH_BRIDGE_4 0x7D
-#define MB_7E 0x7E
-#define MB_ROUTE110_BRIDGE 0x7F
-#define MB_COUNTER 0x80
-#define MB_PC 0x83
-#define MB_CABLE_BOX_RESULTS_1 0x84
-#define MB_REGION_MAP 0x85
-#define MB_TELEVISION 0x86
-#define MB_POKEBLOCK_FEEDER 0x87
-#define MB_SLOT_MACHINE 0x89
-#define MB_ROULETTE 0x8A
-#define MB_CLOSED_SOOTOPOLIS_GYM_DOOR 0x8B
-#define MB_TRICK_HOUSE_PUZZLE_DOOR 0x8C
-#define MB_8D 0x8D
-#define MB_RUNNING_SHOES_INSTRUCTION 0x8E
-#define MB_QUESTIONNAIRE 0x8F
-#define MB_SECRET_BASE_SPOT_RED_CAVE 0x90
-#define MB_SECRET_BASE_SPOT_RED_CAVE_OPEN 0x91
-#define MB_SECRET_BASE_SPOT_BROWN_CAVE 0x92
-#define MB_SECRET_BASE_SPOT_BROWN_CAVE_OPEN 0x93
-#define MB_SECRET_BASE_SPOT_YELLOW_CAVE 0x94
-#define MB_SECRET_BASE_SPOT_YELLOW_CAVE_OPEN 0x95
-#define MB_SECRET_BASE_SPOT_TREE_LEFT 0x96
-#define MB_SECRET_BASE_SPOT_TREE_LEFT_OPEN 0x97
-#define MB_SECRET_BASE_SPOT_SHRUB 0x98
-#define MB_SECRET_BASE_SPOT_SHRUB_OPEN 0x99
-#define MB_SECRET_BASE_SPOT_BLUE_CAVE 0x9A
-#define MB_SECRET_BASE_SPOT_BLUE_CAVE_OPEN 0x9B
-#define MB_SECRET_BASE_SPOT_TREE_RIGHT 0x9C
-#define MB_SECRET_BASE_SPOT_TREE_RIGHT_OPEN 0x9D
-#define MB_BERRY_TREE_SOIL 0xA0
-#define MB_SECRET_BASE_PC 0xB0
-#define MB_SECRET_BASE_REGISTER_PC 0xB1
-#define MB_B2 0xB2
-#define MB_B3 0xB3
-#define MB_B4 0xB4
-#define MB_B5 0xB5
-#define MB_B6 0xB6
-#define MB_B7 0xB7
-#define MB_SECRET_BASE_BALLOON 0xB8
-#define MB_B9 0xB9
-#define MB_SECRET_BASE_GLITTER_MAT 0xBA
-#define MB_SECRET_BASE_JUMP_MAT 0xBB
-#define MB_SECRET_BASE_SPIN_MAT 0xBC
-#define MB_SECRET_BASE_SOUND_MAT 0xBD
-#define MB_BE 0xBE
-#define MB_BF 0xBF
-#define MB_BED 0xC0
-#define MB_C1 0xC1
-#define MB_C2 0xC2
-#define MB_C3 0xC3
-#define MB_SECRET_BASE_TV_SHIELD 0xC4
-#define MB_C5 0xC5
-#define MB_C6 0xC6
-#define MB_SECRET_BASE_POSTER 0xC7
-#define MB_C8 0xC8
-#define MB_C9 0xC9
-#define MB_CA 0xCA
-#define MB_CB 0xCB
-#define MB_CC 0xCC
-#define MB_CD 0xCD
-#define MB_CE 0xCE
-#define MB_CF 0xCF
-#define MB_MUDDY_SLOPE 0xD0
-#define MB_BUMPY_SLOPE 0xD1
-#define MB_CRACKED_FLOOR 0xD2
-#define MB_ISOLATED_VERTICAL_RAIL 0xD3
-#define MB_ISOLATED_HORIZONTAL_RAIL 0xD4
-#define MB_VERTICAL_RAIL 0xD5
-#define MB_HORIZONTAL_RAIL 0xD6
-#define MB_PICTURE_BOOK_SHELF 0xE0
-#define MB_BOOKSHELF 0xE1
-#define MB_POKEMON_CENTER_BOOKSHELF 0xE2
-#define MB_VASE 0xE3
-#define MB_TRASH_CAN 0xE4
-#define MB_SHOP_SHELF 0xE5
-#define MB_BLUEPRINT 0xE6
-#define MB_CABLE_BOX_RESULTS_2 0xE7
-#define MB_WIRELESS_BOX_RESULTS 0xE8
-#define MB_TRAINER_HILL_TIMER 0xE9
-#define MB_UNKNOWN_CLOSED_DOOR 0xEA
-
-#endif // GUARD_METATILE_BEHAVIORS
diff --git a/include/new_menu_helpers.h b/include/new_menu_helpers.h
index ffe5c2e3f..639395941 100644
--- a/include/new_menu_helpers.h
+++ b/include/new_menu_helpers.h
@@ -2,7 +2,6 @@
#define GUARD_NEW_MENU_HELPERS_H
#include "global.h"
-
#include "text.h"
#include "task.h"
@@ -11,10 +10,11 @@ void sub_81973C4(u8, u8);
void sub_819746C(u8 windowId, bool8 copyToVram);
void sub_81973FC(u8, u8);
u16 AddTextPrinterParametrized(u8 windowId, u8 fontId, const u8 *str, u8 speed, void ( *callback)(u16, struct TextPrinter *), u8 fgColor, u8 bgColor, u8 shadowColor);
-void DisplayItemMessageOnField(u8 taskId, const u8 *src, TaskFunc callback);
+void DisplayItemMessageOnField(u8 taskId, u8 bgId, const u8 *src, TaskFunc callback);
void sub_8197434(u8 a0, u8 a1);
void SetStandardWindowBorderStyle(u8 a0, u8 a1);
void sub_8197930(void);
u8 GetPlayerTextSpeed(void);
+void sub_80F6F54(u8, u8);
#endif // GUARD_NEW_MENU_HELPERS_H
diff --git a/include/unk_810c3a4.h b/include/unk_810c3a4.h
new file mode 100644
index 000000000..3f85ab00f
--- /dev/null
+++ b/include/unk_810c3a4.h
@@ -0,0 +1,7 @@
+#ifndef GUARD_UNK_810C3A4_H
+#define GUARD_UNK_810C3A4_H
+
+void sub_810C604(void);
+void sub_810C640(void);
+
+#endif //GUARD_UNK_810C3A4_H
diff --git a/include/vs_seeker.h b/include/vs_seeker.h
new file mode 100644
index 000000000..efc014a4a
--- /dev/null
+++ b/include/vs_seeker.h
@@ -0,0 +1,14 @@
+#ifndef GUARD_VS_SEEKER_H
+#define GUARD_VS_SEEKER_H
+
+#include "global.h"
+
+void Task_VsSeeker_0(u8 taskId);
+void sub_810CB90(void);
+void sub_810CDE8(void);
+int sub_810CE64(u16 a0);
+bool8 sub_810CF04(u8 a0);
+u8 sub_810CF54();
+void sub_810D0D0(void);
+
+#endif //GUARD_VS_SEEKER_H
diff --git a/ld_script.txt b/ld_script.txt
index c1a32fcbf..4643cf8b0 100644
--- a/ld_script.txt
+++ b/ld_script.txt
@@ -92,7 +92,7 @@ SECTIONS {
asm/new_game.o(.text);
asm/overworld.o(.text);
asm/fieldmap.o(.text);
- asm/metatile_behavior.o(.text);
+ src/metatile_behavior.o(.text);
asm/field_camera.o(.text);
asm/field_door.o(.text);
asm/field_player_avatar.o(.text);
@@ -215,7 +215,7 @@ SECTIONS {
asm/bag.o(.text);
asm/battle_dome_cards.o(.text);
asm/unk_810C3A4.o(.text);
- asm/vs_seeker.o(.text);
+ src/vs_seeker.o(.text);
asm/item_pc.o(.text);
asm/mailbox_pc.o(.text);
asm/menu.o(.text);
@@ -365,10 +365,15 @@ SECTIONS {
src/bg_regs.o(.rodata);
src/string_util.o(.rodata);
data/data.o(.rodata);
+ src/metatile_behavior.o(.rodata);
+ data/metatile_behavior.o(.rodata);
+ data/data_835B488.o(.rodata);
src/battle_ai_script_commands.o(.rodata);
data/data_83F5738.o(.rodata);
src/save.o(.rodata);
data/data_83FECCC.o(.rodata);
+ src/vs_seeker.o(.rodata);
+ data/data_83FECCC.o(.rodata.8453F6C);
src/quest_log.o(.rodata);
data/data_83FECCC.o(.rodata.8456C74);
src/menews_jisan.o(.rodata);
diff --git a/src/menews_jisan.c b/src/menews_jisan.c
index 31540c411..13c787df7 100644
--- a/src/menews_jisan.c
+++ b/src/menews_jisan.c
@@ -89,12 +89,12 @@ void sub_8146C88(void)
r5->unk_0_2 = 0;
r5->unk_0_5 = 0;
r5->unk_1 = 0;
- VarSet(0x4028, 0);
+ VarSet(VAR_0x4028, 0);
}
void sub_8146CA4(void)
{
- u16 *r4 = GetVarPointer(0x4028);
+ u16 *r4 = GetVarPointer(VAR_0x4028);
struct MysteryEventStruct *r2 = sub_8143D94();
struct MysteryEventStruct r0 = *r2;
diff --git a/src/metatile_behavior.c b/src/metatile_behavior.c
new file mode 100644
index 000000000..62a102a09
--- /dev/null
+++ b/src/metatile_behavior.c
@@ -0,0 +1,1030 @@
+#include "global.h"
+#include "metatile_behavior.h"
+#include "constants/metatile_behaviors.h"
+
+static const bool8 sTileSurfable[METATILE_COUNT] = {
+ [MB_POND_WATER] = TRUE,
+ [MB_SEMI_DEEP_WATER] = TRUE,
+ [MB_DEEP_WATER] = TRUE,
+ [MB_WATERFALL] = TRUE,
+ [MB_SPLASHING_WATER] = TRUE,
+ [MB_1A] = TRUE,
+ [MB_1B] = TRUE,
+ [MB_EASTWARD_CURRENT] = TRUE,
+ [MB_WESTWARD_CURRENT] = TRUE,
+ [MB_NORTHWARD_CURRENT] = TRUE,
+ [MB_SOUTHWARD_CURRENT] = TRUE
+};
+
+bool8 MetatileBehavior_UnusedReturnTrue(u8 metatileBehavior)
+{
+ return TRUE;
+}
+
+bool8 MetatileBehavior_IsJumpEast(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_JUMP_EAST)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsJumpWest(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_JUMP_WEST)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsJumpNorth(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_JUMP_NORTH)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsJumpSouth(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_JUMP_SOUTH)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsTallGrass(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_TALL_GRASS || metatileBehavior == MB_CYCLING_ROAD_PULL_DOWN_GRASS)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsMB21OrSand(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_21 || metatileBehavior == MB_SAND)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsMB21OrWaterfallBottom(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_21 || metatileBehavior == MB_WATERFALL_BOTTOM)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_ReturnFalse(u8 metatileBehavior) { return FALSE; }
+
+bool8 MetatileBehavior_IsReflective(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_POND_WATER
+ || metatileBehavior == MB_PUDDLE
+ || metatileBehavior == MB_1A
+ || metatileBehavior == MB_1B
+ || metatileBehavior == MB_ICE)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsIce(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_ICE)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsWarpDoor(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_WARP_DOOR)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsWarpDoor_2(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_WARP_DOOR)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsEscalator(u8 metatileBehavior)
+{
+ if(metatileBehavior >= MB_UP_ESCALATOR && metatileBehavior <= MB_DOWN_ESCALATOR)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsUnknownWarp6C(u8 metatileBehavior)
+{
+ u8 result = FALSE;
+
+ if(metatileBehavior == MB_UNKNOWN_WARP_6C)
+ result = TRUE;
+
+ return result;
+}
+
+bool8 MetatileBehavior_IsUnknownWarp6D(u8 metatileBehavior)
+{
+ u8 result = FALSE;
+
+ if(metatileBehavior == MB_UNKNOWN_WARP_6D)
+ result = TRUE;
+
+ return result;
+}
+
+bool8 MetatileBehavior_IsUnknownWarp6E(u8 metatileBehavior)
+{
+ u8 result = FALSE;
+
+ if(metatileBehavior == MB_UNKNOWN_WARP_6E)
+ result = TRUE;
+
+ return result;
+}
+
+bool8 MetatileBehavior_IsUnknownWarp6F(u8 metatileBehavior)
+{
+ u8 result = FALSE;
+
+ if(metatileBehavior == MB_UNKNOWN_WARP_6F)
+ result = TRUE;
+
+ return result;
+}
+
+bool8 MetatileBehavior_IsUnknownWarp6C_to_6F(u8 metatileBehavior)
+{
+ bool8 result = FALSE;
+
+ if(metatileBehavior >= MB_UNKNOWN_WARP_6C && metatileBehavior <= MB_UNKNOWN_WARP_6F)
+ result = TRUE;
+ else
+ result = FALSE;
+
+ return result;
+}
+
+bool8 MetatileBehavior_IsLadder(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_LADDER)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsCaveDoor(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_CAVE_DOOR)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_ReturnFalse_2(u8 metatileBehavior) { return FALSE; }
+
+bool8 MetatileBehavior_IsSurfable(u8 metatileBehavior)
+{
+ if(sTileSurfable[metatileBehavior] & 1)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsSemiDeepWater(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_SEMI_DEEP_WATER)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsEastArrowWarp(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_EAST_ARROW_WARP)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsWestArrowWarp(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_WEST_ARROW_WARP)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsNorthArrowWarp(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_NORTH_ARROW_WARP)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsSouthArrowWarp(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_SOUTH_ARROW_WARP)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_UnusedIsArrowWarp(u8 metatileBehavior)
+{
+ u8 result = FALSE;
+
+ if(MetatileBehavior_IsEastArrowWarp(metatileBehavior)
+ || MetatileBehavior_IsWestArrowWarp(metatileBehavior)
+ || MetatileBehavior_IsNorthArrowWarp(metatileBehavior)
+ || MetatileBehavior_IsSouthArrowWarp(metatileBehavior))
+ result = TRUE;
+
+ return result;
+}
+
+bool8 MetatileBehavior_IsForcedMovementTile(u8 metatileBehavior)
+{
+ if((metatileBehavior >= MB_WALK_EAST && metatileBehavior <= MB_UNKNOWN_MOVEMENT_48)
+ ||(metatileBehavior >= MB_EASTWARD_CURRENT && metatileBehavior <= MB_SOUTHWARD_CURRENT)
+ || metatileBehavior == MB_WATERFALL
+ || metatileBehavior == MB_ICE
+ || (metatileBehavior >= MB_SPIN_RIGHT && metatileBehavior <= MB_SPIN_DOWN))
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsIce_2(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_ICE)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsUnknownMovement48(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_UNKNOWN_MOVEMENT_48)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsWalkNorth(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_WALK_NORTH)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsWalkSouth(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_WALK_SOUTH)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsWalkWest(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_WALK_WEST)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsWalkEast(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_WALK_EAST)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsNorthwardCurrent(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_NORTHWARD_CURRENT)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsSouthwardCurrent(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_SOUTHWARD_CURRENT)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsWestwardCurrent(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_WESTWARD_CURRENT)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsEastwardCurrent(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_EASTWARD_CURRENT)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsSlideNorth(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_SLIDE_NORTH)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsSlideSouth(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_SLIDE_SOUTH)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsSlideWest(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_SLIDE_WEST)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsSlideEast(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_SLIDE_EAST)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsCounter(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_COUNTER)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsPlayerFacingTVScreen(u8 tile, u8 playerDirection)
+{
+ if(playerDirection != DIR_NORTH)
+ return FALSE;
+ else if(tile == MB_TELEVISION)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsPC(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_PC)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsPondWaterOrPuddle(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_POND_WATER || metatileBehavior == MB_PUDDLE)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsPuddle(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_PUDDLE)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsTallGrass_2(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_TALL_GRASS || metatileBehavior == MB_CYCLING_ROAD_PULL_DOWN_GRASS)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_ReturnFalse_3(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_ReturnFalse_4(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_ReturnFalse_5(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_ReturnFalse_6(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_ReturnFalse_7(u8 metatileBehavior) { return FALSE; }
+
+bool8 MetatileBehavior_UnusedIsMB_01(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_01)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_UnusedIsTallGrass(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_TALL_GRASS)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsMB0B(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_0B)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsMB0C(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_0C)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsDeepOrSemiDeepWater(u8 metatileBehavior)
+{
+ if(metatileBehavior >= MB_SEMI_DEEP_WATER && metatileBehavior <= MB_DEEP_WATER)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsMB19(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_19)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsWaterfallBottom(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_WATERFALL_BOTTOM)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsThinIce(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_THIN_ICE)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsCrackedIce(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_CRACKED_ICE)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsDeepSemiDeepOrSplashingWater(u8 metatileBehavior)
+{
+ if((metatileBehavior >= MB_SEMI_DEEP_WATER && metatileBehavior <= MB_DEEP_WATER)
+ || metatileBehavior == MB_SPLASHING_WATER)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_UnusedIsMB1A(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_1A)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsSurfableAndNotWaterfall(u8 metatileBehavior)
+{
+ if(MetatileBehavior_IsSurfable(metatileBehavior)
+ && !MetatileBehavior_IsWaterfall(metatileBehavior))
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsEastBlocked(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_IMPASSABLE_EAST
+ || metatileBehavior == MB_IMPASSABLE_NORTHEAST
+ || metatileBehavior == MB_IMPASSABLE_SOUTHEAST)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsWestBlocked(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_IMPASSABLE_WEST
+ || metatileBehavior == MB_IMPASSABLE_NORTHWEST
+ || metatileBehavior == MB_IMPASSABLE_SOUTHWEST)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsNorthBlocked(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_IMPASSABLE_NORTH
+ || metatileBehavior == MB_IMPASSABLE_NORTHEAST
+ || metatileBehavior == MB_IMPASSABLE_NORTHWEST)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsSouthBlocked(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_IMPASSABLE_SOUTH
+ || metatileBehavior == MB_IMPASSABLE_SOUTHEAST
+ || metatileBehavior == MB_IMPASSABLE_SOUTHWEST)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_ReturnFalse_8(u8 metatileBehavior) { return FALSE; }
+
+bool8 MetatileBehavior_IsHotSprings(u8 metatileBehavior)
+{
+ if(metatileBehavior == 0x28)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsWaterfall(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_WATERFALL)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_ReturnFalse_9(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_UnusedReturnFalse(u8 metatileBehavior){ return FALSE; }
+bool8 MetatileBehavior_UnusedReturnFalse_2(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_UnusedReturnFalse_3(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_UnusedReturnFalse_4(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_ReturnFalse_10(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_ReturnFalse_11(u8 metatileBehavior) { return FALSE; }
+
+bool8 MetatileBehavior_IsRegionMap(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_REGION_MAP)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_UnusedReturnFalse_5(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_UnusedReturnFalse_6(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_UnusedReturnFalse_7(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_UnusedReturnFalse_8(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_ReturnFalse_12(u8 metatileBehavior) { return FALSE; }
+
+bool8 MetatileBheavior_IsMB_68(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_68)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsRegularWarp(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_REGULAR_WARP)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsUnionRoomWarp(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_UNION_ROOM_WARP)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsWater(u8 metatileBehavior)
+{
+ if((metatileBehavior >= MB_POND_WATER && metatileBehavior <= MB_DEEP_WATER)
+ || metatileBehavior == MB_SPLASHING_WATER
+ || (metatileBehavior >= MB_EASTWARD_CURRENT && metatileBehavior <= MB_SOUTHWARD_CURRENT))
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsFallWarp(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_FALL_WARP)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_ReturnFalse_13(u8 metatileBehavior){ return FALSE; }
+
+bool8 MetatileBehavior_IsCyclingRoadPullDownTile(u8 metatileBehavior)
+{
+ if(metatileBehavior >= MB_CYCLING_ROAD_PULL_DOWN && metatileBehavior <= MB_CYCLING_ROAD_PULL_DOWN_GRASS)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsCyclingRoadPullDownTileGrass(u8 metatileBehavior)
+{
+ return metatileBehavior == MB_CYCLING_ROAD_PULL_DOWN_GRASS;
+}
+
+bool8 MetatileBehavior_ReturnFalse_14(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_ReturnFalse_15(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_ReturnFalse_16(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_ReturnFalse_17(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_ReturnFalse_18(u8 metatileBehavior) { return FALSE; }
+
+bool8 MetatileBehavior_IsMB22(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_22)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsMB0A(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_0A)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_UnusedReturnFalse_9(u8 metatileBehavior) { return FALSE; }
+
+bool8 MetatileBehavior_IsBookshelf(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_BOOKSHELF)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsPokeMartShelf(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_POKEMART_SHELF)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsPlayerFacingPokemonCenterSign(u8 tile, u8 playerDirection)
+{
+ if(playerDirection != DIR_NORTH)
+ return FALSE;
+ else if(tile == MB_POKEMON_CENTER_SIGN)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsPlayerFacingPokeMartSign(u8 tile, u8 playerDirection)
+{
+ if(playerDirection != DIR_NORTH)
+ return FALSE;
+ else if(tile == MB_POKEMART_SIGN)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_UnusedReturnFalse_10(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_UnusedReturnFalse_11(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_UnusedReturnFalse_12(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_UnusedReturnFalse_13(u8 metatileBehavior) { return FALSE; }
+
+bool8 sub_805A2BC(u8 arg1, u8 arg2)
+{
+ if(gUnknown_8353068[arg1] & arg2)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_UnusedIsSpinRight(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_SPIN_RIGHT)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_UnusedIsSpinLeft(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_SPIN_LEFT)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_UnusedIsSpinUp(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_SPIN_UP)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_UnusedIsSpinDown(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_SPIN_DOWN)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsStopSpinning(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_STOP_SPINNING)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsSpinTile(u8 metatileBehavior)
+{
+ bool8 result = FALSE;
+
+ if(metatileBehavior >= MB_SPIN_RIGHT && metatileBehavior <= MB_SPIN_DOWN)
+ result = TRUE;
+ else
+ result = FALSE;
+
+ return result;
+}
+
+bool8 MetatileBehavior_IsSignpost(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_SIGNPOST)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsCabinet(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_CABINET)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsKitchen(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_KITCHEN)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsDresser(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_DRESSER)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsSnacks(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_SNACKS)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsStrengthButton(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_STRENGTH_BUTTON)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsPlayerFacingMB_8D(u8 tile, u8 playerDirection)
+{
+ if(playerDirection != DIR_NORTH)
+ return FALSE;
+ else if(tile == MB_8D)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsPlayerFacingBattleRecords(u8 tile, u8 playerDirection)
+{
+ if(playerDirection != DIR_NORTH)
+ return FALSE;
+ else if(tile == MB_BATTLE_RECORDS)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsQuestionnaire(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_QUESTIONNAIRE)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsIndigoPlateauMark(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_INDIGO_PLATEAU_MARK_DPAD)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsIndigoPlateauMark2(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_INDIGO_PLATEAU_MARK_2_DPAD)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsFood(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_FOOD)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsRockStairs(u8 metatileBehavior)
+{
+ bool8 result = FALSE;
+
+ if(metatileBehavior == MB_ROCK_STAIRS)
+ result = TRUE;
+ else
+ result = FALSE;
+
+ return result;
+}
+
+bool8 MetatileBehavior_IsBlueprints(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_BLUEPRINTS)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsPainting(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_PAINTING)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsPowerPlantMachine(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_POWER_PLANT_MACHINE)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsTelephone(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_TELEPHONE)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsComputer(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_COMPUTER)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsAdvertisingPoster(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_ADVERTISING_POSTER)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsTastyFood(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_FOOD_SMELLS_TASTY)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsTrashBin(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_TRASH_BIN)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsCup(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_CUP)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_ReturnFalse_19(u8 metatileBehavior) { return FALSE; }
+bool8 MetatileBehavior_ReturnFalse_20(u8 metatileBehavior) { return FALSE; }
+
+bool8 MetatileBehavior_IsBlinkingLights(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_BLINKING_LIGHTS)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsMB9F(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_9F)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsImpressiveMachine(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_IMPRESSIVE_MACHINE)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsVideoGame(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_VIDEO_GAME)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsBurglary(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_BURGLARY)
+ return TRUE;
+ else
+ return FALSE;
+}
+
+bool8 MetatileBehavior_IsMBA3(u8 metatileBehavior)
+{
+ if(metatileBehavior == MB_A3)
+ return TRUE;
+ else
+ return FALSE;
+}
diff --git a/src/vs_seeker.c b/src/vs_seeker.c
new file mode 100644
index 000000000..17a13ab01
--- /dev/null
+++ b/src/vs_seeker.c
@@ -0,0 +1,1379 @@
+#include "global.h"
+#include "songs.h"
+#include "sound.h"
+#include "task.h"
+#include "malloc.h"
+#include "field_map_obj.h"
+#include "new_menu_helpers.h"
+#include "item_use.h"
+#include "event_scripts.h"
+#include "event_data.h"
+#include "script.h"
+#include "map_obj_lock.h"
+#include "field_specials.h"
+#include "item_menu.h"
+#include "field_effect.h"
+#include "script_movement.h"
+#include "battle.h"
+#include "battle_setup.h"
+#include "random.h"
+#include "field_map_obj.h"
+#include "field_player_avatar.h"
+#include "map_obj_8097404.h"
+#include "unk_810c3a4.h"
+#include "constants/movement_commands.h"
+#include "vs_seeker.h"
+
+typedef enum
+{
+ VSSEEKER_RESPONSE_NO_RESPONSE,
+ VSSEEKER_RESPONSE_UNFOUGHT_TRAINERS,
+ VSSEEKER_RESPONSE_FOUND_REMATCHES
+} VsSeekerResponseCode;
+
+// static types
+typedef struct VsSeekerData
+{
+ u16 trainerIdxs[6];
+ u16 unk_c; // unused
+ u16 unk_e; // unused
+} VsSeekerData;
+
+struct VsSeekerTrainerInfo
+{
+ const u8 *script;
+ u16 trainerIdx;
+ u8 localId;
+ u8 fieldObjectId;
+ s16 xCoord;
+ s16 yCoord;
+ u8 graphicsId;
+};
+
+struct VsSeekerStruct
+{
+ /*0x000*/ struct VsSeekerTrainerInfo trainerInfo[MAP_OBJECTS_COUNT];
+ /*0x100*/ u8 filler_100[0x300];
+ /*0x400*/ u16 trainerIdxArray[MAP_OBJECTS_COUNT];
+ /*0x420*/ u8 runningBehaviourEtcArray[MAP_OBJECTS_COUNT];
+ /*0x430*/ u8 numRematchableTrainers;
+ /*0x431*/ u8 trainerHasNotYetBeenFought:1;
+ /*0x431*/ u8 trainerDoesNotWantRematch:1;
+ /*0x431*/ u8 trainerWantsRematch:1;
+ u8 responseCode:5;
+};
+
+extern u16 gUnknown_20370D2;
+extern struct MapObject gMapObjects[MAP_OBJECTS_COUNT];
+extern u8 gUnknown_3005074;
+
+// static declarations
+static EWRAM_DATA struct VsSeekerStruct *sVsSeeker = NULL;
+
+static void Task_VsSeeker_1(u8 taskId);
+static void Task_VsSeeker_2(u8 taskId);
+static void GatherNearbyTrainerInfo(void);
+static void Task_VsSeeker_3(u8 taskId);
+static bool8 CanUseVsSeeker(void);
+static u8 GetVsSeekerResponseInArea(const VsSeekerData *);
+static u8 GetRematchTrainerIdGivenGameState(const u16 *, u8);
+static u8 sub_810CD80(const VsSeekerData *, u16);
+static u8 HasRematchTrainerAlreadyBeenFought(const VsSeekerData *, u16);
+static s32 sub_810CE10(const VsSeekerData * a0, u16 a1);
+static bool8 sub_810CED0(const VsSeekerData *, u16);
+static u8 GetRunningBehaviorFromGraphicsId(u8);
+static u16 GetTrainerFlagFromScript(const u8 *);
+static s32 GetRematchIdx(const VsSeekerData *, u16);
+static bool32 IsThisTrainerRematchable(u32);
+static bool8 IsTrainerVisibleOnScreen(struct VsSeekerTrainerInfo *);
+static u8 GetNextAvailableRematchTrainer(const VsSeekerData *, u16, u8 *);
+static u8 GetRematchableTrainerLocalId(void);
+static void StartTrainerObjectMovementScript(struct VsSeekerTrainerInfo *, const u8 *);
+static u8 GetCurVsSeekerResponse(s32, u16);
+static void StartAllRespondantIdleMovements(void);
+
+// rodata
+static const VsSeekerData sVsSeekerData[] = {
+ { {0x0059, 0x0065, 0xffff, 0x01f2, 0x01f3, 0x0000},
+ 0x0003, 0x0015 },
+ { {0x005a, 0x005a, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0015 },
+ { {0x0069, 0x02d9, 0xffff, 0x02da, 0xffff, 0x02db},
+ 0x0003, 0x0015 },
+ { {0x006a, 0x006a, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0015 },
+ { {0x006b, 0x006b, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0015 },
+ { {0x0074, 0x01fb, 0xffff, 0x01fc, 0x0000, 0x0000},
+ 0x0003, 0x0015 },
+ { {0x0075, 0x0075, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0015 },
+ { {0x0076, 0x0076, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0015 },
+ { {0x0077, 0x0077, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0016 },
+ { {0x005c, 0x01f7, 0xffff, 0x01f8, 0xffff, 0x01f9},
+ 0x0003, 0x002b },
+ { {0x006e, 0x006e, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002b },
+ { {0x007a, 0x01f5, 0xffff, 0x01f6, 0x0000, 0x0000},
+ 0x0003, 0x002b },
+ { {0x007b, 0x007b, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002b },
+ { {0x008f, 0x008f, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002b },
+ { {0x0090, 0x0090, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002b },
+ { {0x005d, 0x005d, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002c },
+ { {0x005e, 0x005e, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002c },
+ { {0x005f, 0x01f4, 0xffff, 0x01fa, 0x01fd, 0x0000},
+ 0x0003, 0x002c },
+ { {0x0099, 0x026d, 0xffff, 0x026e, 0x026f, 0x0000},
+ 0x0003, 0x002c },
+ { {0x007d, 0x007d, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002c },
+ { {0x00b6, 0xffff, 0x01fe, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002c },
+ { {0x00b7, 0x00b7, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002c },
+ { {0x00b8, 0x00b8, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002c },
+ { {0x01d7, 0x01d7, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002c },
+ { {0x006f, 0x006f, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0018 },
+ { {0x0070, 0x0070, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0018 },
+ { {0x0091, 0x0270, 0xffff, 0x0271, 0xffff, 0x0272},
+ 0x0003, 0x0018 },
+ { {0x0092, 0x0273, 0xffff, 0x0274, 0xffff, 0x0275},
+ 0x0003, 0x0018 },
+ { {0x0097, 0x0097, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0018 },
+ { {0x0098, 0x0276, 0xffff, 0x0277, 0x0278, 0x0000},
+ 0x0003, 0x0018 },
+ { {0x0061, 0x0061, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001d },
+ { {0x0062, 0x0062, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001d },
+ { {0x0063, 0xffff, 0x0279, 0xffff, 0x027a, 0x0000},
+ 0x0003, 0x001d },
+ { {0x0064, 0x0064, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001d },
+ { {0x00dd, 0x00dd, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001d },
+ { {0x00de, 0xffff, 0xffff, 0x027b, 0x0000, 0x0000},
+ 0x0003, 0x001d },
+ { {0x0102, 0x0102, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001d },
+ { {0x0103, 0x0103, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001d },
+ { {0x0104, 0x0104, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001d },
+ { {0x0105, 0xffff, 0xffff, 0x027c, 0x0000, 0x0000},
+ 0x0003, 0x001d },
+ { {0x0072, 0x0072, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001b },
+ { {0x0073, 0x0073, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001b },
+ { {0x0094, 0xffff, 0x027d, 0x027e, 0xffff, 0x027f},
+ 0x0003, 0x001b },
+ { {0x0095, 0x0095, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001b },
+ { {0x009a, 0xffff, 0x0280, 0x0281, 0xffff, 0x0282},
+ 0x0003, 0x001b },
+ { {0x009b, 0x009b, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001b },
+ { {0x00b9, 0x00b9, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001b },
+ { {0x00ba, 0x00ba, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001b },
+ { {0x01d1, 0xffff, 0xffff, 0x0283, 0x0000, 0x0000},
+ 0x0003, 0x001b },
+ { {0x009c, 0x009c, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001c },
+ { {0x009d, 0x009d, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001c },
+ { {0x00a2, 0xffff, 0xffff, 0x0252, 0xffff, 0x0284},
+ 0x0003, 0x001c },
+ { {0x00a3, 0xffff, 0xffff, 0x0285, 0xffff, 0x0286},
+ 0x0003, 0x001c },
+ { {0x00bb, 0x00bb, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001c },
+ { {0x00bc, 0xffff, 0xffff, 0x0287, 0x0000, 0x0000},
+ 0x0003, 0x001c },
+ { {0x0080, 0x0080, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001a },
+ { {0x0081, 0x0081, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001a },
+ { {0x0082, 0xffff, 0x0288, 0xffff, 0x0289, 0x0000},
+ 0x0003, 0x001a },
+ { {0x0083, 0x0083, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001a },
+ { {0x00ab, 0x00ab, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001a },
+ { {0x00ac, 0xffff, 0xffff, 0x028a, 0x0000, 0x0000},
+ 0x0003, 0x001a },
+ { {0x00ad, 0x00ad, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001a },
+ { {0x0106, 0x0106, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001a },
+ { {0x0108, 0xffff, 0xffff, 0x028b, 0x0000, 0x0000},
+ 0x0003, 0x001a },
+ { {0x01e4, 0xffff, 0xffff, 0x0215, 0x0000, 0x0000},
+ 0x0003, 0x001a },
+ { {0x0217, 0x0217, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001a },
+ { {0x0218, 0xffff, 0xffff, 0x028c, 0x0000, 0x0000},
+ 0x0003, 0x001a },
+ { {0x00e1, 0x00e1, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001e },
+ { {0x00e2, 0x00e2, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001e },
+ { {0x00e3, 0x00e3, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001e },
+ { {0x00e4, 0xffff, 0xffff, 0x028d, 0x0000, 0x0000},
+ 0x0003, 0x001e },
+ { {0x00e9, 0x00e9, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001e },
+ { {0x011d, 0xffff, 0xffff, 0x028e, 0x0000, 0x0000},
+ 0x0003, 0x001e },
+ { {0x01dd, 0x01dd, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001e },
+ { {0x01e6, 0xffff, 0xffff, 0x02c2, 0xffff, 0x02c3},
+ 0x0003, 0x001e },
+ { {0x00c3, 0x00c3, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001f },
+ { {0x010c, 0x010c, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001f },
+ { {0x010d, 0xffff, 0xffff, 0xffff, 0x028f, 0x0000},
+ 0x0003, 0x001f },
+ { {0x012c, 0x012c, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001f },
+ { {0x012d, 0x012d, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001f },
+ { {0x012e, 0xffff, 0xffff, 0x0290, 0x0291, 0x0000},
+ 0x0003, 0x001f },
+ { {0x01d2, 0x01d2, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001f },
+ { {0x01d3, 0xffff, 0xffff, 0x0292, 0x0293, 0x0294},
+ 0x0003, 0x001f },
+ { {0x01d4, 0x01d4, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001f },
+ { {0x01d5, 0x01d5, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x001f },
+ { {0x00c4, 0x00c4, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0020 },
+ { {0x00cf, 0xffff, 0xffff, 0xffff, 0x0295, 0x0000},
+ 0x0003, 0x0020 },
+ { {0x00d0, 0x00d0, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0020 },
+ { {0x00d1, 0x00d1, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0020 },
+ { {0x012f, 0x012f, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0020 },
+ { {0x0130, 0xffff, 0xffff, 0x0296, 0x0297, 0x0000},
+ 0x0003, 0x0020 },
+ { {0x0139, 0x0139, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0020 },
+ { {0x013a, 0x013a, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0020 },
+ { {0x013b, 0x013b, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0020 },
+ { {0x013c, 0xffff, 0xffff, 0x0298, 0x0299, 0x0000},
+ 0x0003, 0x0020 },
+ { {0x01e7, 0x01e7, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0020 },
+ { {0x00c5, 0x00c5, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0021 },
+ { {0x00c6, 0x00c6, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0021 },
+ { {0x0111, 0xffff, 0xffff, 0xffff, 0x029a, 0x0000},
+ 0x0003, 0x0021 },
+ { {0x0112, 0x0112, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0021 },
+ { {0x0131, 0x0131, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0021 },
+ { {0x0132, 0xffff, 0xffff, 0x029b, 0x029c, 0x0000},
+ 0x0003, 0x0021 },
+ { {0x01de, 0x01de, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0021 },
+ { {0x01df, 0x01df, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0021 },
+ { {0x01e0, 0xffff, 0xffff, 0x029d, 0x029e, 0x029f},
+ 0x0003, 0x0021 },
+ { {0x01e1, 0x01e1, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0021 },
+ { {0x01e8, 0xffff, 0xffff, 0x02a0, 0x02a1, 0x02a2},
+ 0x0003, 0x0021 },
+ { {0x00c7, 0x00c7, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0022 },
+ { {0x00c9, 0x00c9, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0022 },
+ { {0x00ca, 0xffff, 0xffff, 0xffff, 0x02a3, 0x0000},
+ 0x0003, 0x0022 },
+ { {0x00f9, 0x00f9, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0022 },
+ { {0x00fa, 0x00fa, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0022 },
+ { {0x00fb, 0xffff, 0xffff, 0xffff, 0x02a4, 0x0000},
+ 0x0003, 0x0022 },
+ { {0x01e9, 0x01e9, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0022 },
+ { {0x00cb, 0x00cb, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0023 },
+ { {0x00cc, 0x00cc, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0023 },
+ { {0x00cd, 0xffff, 0xffff, 0xffff, 0x02a5, 0x0000},
+ 0x0003, 0x0023 },
+ { {0x00ce, 0x00ce, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0023 },
+ { {0x00fc, 0x00fc, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0023 },
+ { {0x00fd, 0xffff, 0xffff, 0xffff, 0x02a6, 0x0000},
+ 0x0003, 0x0023 },
+ { {0x00fe, 0x00fe, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0023 },
+ { {0x00ff, 0x00ff, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0023 },
+ { {0x0100, 0xffff, 0xffff, 0xffff, 0x02a7, 0x0000},
+ 0x0003, 0x0023 },
+ { {0x01d6, 0x01d6, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0023 },
+ { {0x0133, 0x0133, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0024 },
+ { {0x0134, 0x0134, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0024 },
+ { {0x0135, 0xffff, 0xffff, 0x02a8, 0x02a9, 0x0000},
+ 0x0003, 0x0024 },
+ { {0x00eb, 0x00eb, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0025 },
+ { {0x00ec, 0x00ec, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0025 },
+ { {0x00ed, 0xffff, 0xffff, 0xffff, 0x02dc, 0x0000},
+ 0x0003, 0x0025 },
+ { {0x00ee, 0x00ee, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0025 },
+ { {0x00ef, 0x00ef, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0025 },
+ { {0x00f0, 0xffff, 0xffff, 0xffff, 0x02dd, 0x0000},
+ 0x0003, 0x0025 },
+ { {0x00f1, 0x00f1, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0025 },
+ { {0x0114, 0x0114, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0025 },
+ { {0x0115, 0xffff, 0xffff, 0xffff, 0x02aa, 0x0000},
+ 0x0003, 0x0025 },
+ { {0x0116, 0x0116, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0025 },
+ { {0x01ea, 0x01ea, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0025 },
+ { {0x00f2, 0x00f2, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0026 },
+ { {0x00f3, 0x00f3, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0026 },
+ { {0x00f4, 0xffff, 0xffff, 0xffff, 0xffff, 0x02ab},
+ 0x0003, 0x0026 },
+ { {0x010e, 0x010e, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0026 },
+ { {0x010f, 0x010f, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0026 },
+ { {0x0110, 0xffff, 0xffff, 0xffff, 0x02de, 0x0000},
+ 0x0003, 0x0026 },
+ { {0x0117, 0x0117, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0026 },
+ { {0x0136, 0x0136, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0026 },
+ { {0x01d8, 0xffff, 0xffff, 0xffff, 0x02ac, 0x02ad},
+ 0x0003, 0x0026 },
+ { {0x01d9, 0x01d9, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0026 },
+ { {0x00e5, 0x00e5, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0027 },
+ { {0x00e6, 0x00e6, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0027 },
+ { {0x00e7, 0xffff, 0xffff, 0xffff, 0x02ae, 0x0000},
+ 0x0003, 0x0027 },
+ { {0x00e8, 0x00e8, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0027 },
+ { {0x00f5, 0x00f5, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0027 },
+ { {0x00f6, 0xffff, 0xffff, 0xffff, 0x02af, 0x0000},
+ 0x0003, 0x0027 },
+ { {0x00f7, 0x00f7, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0027 },
+ { {0x00f8, 0x00f8, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0027 },
+ { {0x01eb, 0xffff, 0xffff, 0xffff, 0x02b0, 0x02b1},
+ 0x0003, 0x0027 },
+ { {0x0223, 0x0223, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002d },
+ { {0x0224, 0x0224, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002d },
+ { {0x0225, 0xffff, 0xffff, 0xffff, 0x02b2, 0x0000},
+ 0x0003, 0x002d },
+ { {0x0226, 0x0226, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002d },
+ { {0x0227, 0x0227, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002d },
+ { {0x0206, 0xffff, 0xffff, 0xffff, 0x02b3, 0x02b4},
+ 0x0003, 0x002d },
+ { {0x0228, 0xffff, 0xffff, 0xffff, 0x02b5, 0x02b6},
+ 0x0003, 0x002d },
+ { {0x0229, 0xffff, 0xffff, 0xffff, 0x02b7, 0x02b8},
+ 0x0003, 0x002d },
+ { {0x022a, 0xffff, 0xffff, 0xffff, 0x02b9, 0x02ba},
+ 0x0003, 0x002d },
+ { {0x022b, 0x022b, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002d },
+ { {0x022c, 0x022c, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002d },
+ { {0x022d, 0xffff, 0xffff, 0xffff, 0x02bb, 0x02bc},
+ 0x0003, 0x002d },
+ { {0x0222, 0x0222, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x002e },
+ { {0x020b, 0x020b, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0030 },
+ { {0x022e, 0x022e, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0030 },
+ { {0x0207, 0xffff, 0xffff, 0xffff, 0x02bd, 0x0000},
+ 0x0003, 0x0030 },
+ { {0x022f, 0x022f, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0030 },
+ { {0x0231, 0x0231, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0030 },
+ { {0x0230, 0xffff, 0xffff, 0xffff, 0x02be, 0x0000},
+ 0x0003, 0x0030 },
+ { {0x020e, 0x020e, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0036 },
+ { {0x0232, 0x0232, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0036 },
+ { {0x0233, 0xffff, 0xffff, 0xffff, 0xffff, 0x02bf},
+ 0x0003, 0x0036 },
+ { {0x020d, 0x020d, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0036 },
+ { {0x0234, 0x0234, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0036 },
+ { {0x0235, 0xffff, 0xffff, 0xffff, 0xffff, 0x02c0},
+ 0x0003, 0x0036 },
+ { {0x0236, 0x0236, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0036 },
+ { {0x0208, 0xffff, 0xffff, 0xffff, 0xffff, 0x02c1},
+ 0x0003, 0x0037 },
+ { {0x023a, 0xffff, 0xffff, 0xffff, 0xffff, 0x02c4},
+ 0x0003, 0x0039 },
+ { {0x023b, 0xffff, 0xffff, 0xffff, 0xffff, 0x02c5},
+ 0x0003, 0x0039 },
+ { {0x023c, 0xffff, 0xffff, 0xffff, 0xffff, 0x02c6},
+ 0x0003, 0x0039 },
+ { {0x023d, 0x023d, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x003a },
+ { {0x023e, 0x023e, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x003a },
+ { {0x023f, 0xffff, 0xffff, 0xffff, 0xffff, 0x02c7},
+ 0x0003, 0x003a },
+ { {0x0240, 0x0240, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x003a },
+ { {0x0205, 0xffff, 0xffff, 0xffff, 0xffff, 0x02c8},
+ 0x0003, 0x003b },
+ { {0x0241, 0x0241, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x003c },
+ { {0x0123, 0x0123, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x003c },
+ { {0x0242, 0xffff, 0xffff, 0xffff, 0xffff, 0x02c9},
+ 0x0003, 0x003c },
+ { {0x0243, 0x0243, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x003c },
+ { {0x0244, 0x0244, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x003c },
+ { {0x0245, 0xffff, 0xffff, 0xffff, 0xffff, 0x02ca},
+ 0x0003, 0x003c },
+ { {0x020c, 0x020c, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x003d },
+ { {0x0246, 0x0246, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x003d },
+ { {0x0247, 0xffff, 0xffff, 0xffff, 0xffff, 0x02cb},
+ 0x0003, 0x003d },
+ { {0x0248, 0x0248, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x003d },
+ { {0x0249, 0xffff, 0xffff, 0xffff, 0xffff, 0x02cc},
+ 0x0003, 0x003d },
+ { {0x024a, 0xffff, 0xffff, 0xffff, 0xffff, 0x02cd},
+ 0x0003, 0x003e },
+ { {0x024b, 0xffff, 0xffff, 0xffff, 0xffff, 0x02ce},
+ 0x0003, 0x003e },
+ { {0x024c, 0x024c, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x003f },
+ { {0x024d, 0x024d, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x003f },
+ { {0x024e, 0xffff, 0xffff, 0xffff, 0xffff, 0x02cf},
+ 0x0003, 0x003f },
+ { {0x0209, 0xffff, 0xffff, 0xffff, 0xffff, 0x02d0},
+ 0x0003, 0x003f },
+ { {0x020a, 0xffff, 0xffff, 0xffff, 0xffff, 0x02d1},
+ 0x0003, 0x003f },
+ { {0x024f, 0xffff, 0xffff, 0xffff, 0xffff, 0x02d2},
+ 0x0003, 0x0040 },
+ { {0x0251, 0xffff, 0xffff, 0xffff, 0xffff, 0x02d3},
+ 0x0003, 0x0040 },
+ { {0x0254, 0xffff, 0xffff, 0xffff, 0xffff, 0x02d4},
+ 0x0003, 0x0040 },
+ { {0x0256, 0xffff, 0xffff, 0xffff, 0xffff, 0x02d5},
+ 0x0003, 0x0040 },
+ { {0x0257, 0xffff, 0xffff, 0xffff, 0xffff, 0x02d6},
+ 0x0003, 0x0040 },
+ { {0x0258, 0xffff, 0xffff, 0xffff, 0xffff, 0x02d7},
+ 0x0003, 0x0040 },
+ { {0x0259, 0xffff, 0xffff, 0xffff, 0xffff, 0x02d8},
+ 0x0003, 0x0040 },
+ { {0x025a, 0x025a, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0041 },
+ { {0x025b, 0x025b, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0041 },
+ { {0x025c, 0x025c, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0041 },
+ { {0x025d, 0x025d, 0x0000, 0x0000, 0x0000, 0x0000},
+ 0x0003, 0x0041 }
+};
+
+static const u8 gUnknown_8453F5C[] = {
+ step_1c,
+ step_1c,
+ step_1c,
+ step_end
+};
+
+static const u8 gUnknown_8453F60[] = {
+ step_62,
+ step_end
+};
+
+static const u8 sMovementScript_TrainerNoRematch[] = {
+ step_64,
+ step_end
+};
+
+static const u8 gUnknown_8453F64[] = {
+ step_2d,
+ step_65,
+ step_end
+};
+
+static const u8 gUnknown_8453F67[] = { 0x08, 0x08, 0x07, 0x09, 0x0a };
+
+
+// text
+void Task_VsSeeker_0(u8 taskId)
+{
+ u8 i;
+ u8 respval;
+
+ for (i = 0; i < 16; i++)
+ gTasks[taskId].data[i] = 0;
+
+ sVsSeeker = AllocZeroed(sizeof(struct VsSeekerStruct));
+ GatherNearbyTrainerInfo();
+ respval = CanUseVsSeeker();
+ if (respval == 0)
+ {
+ Free(sVsSeeker);
+ DisplayItemMessageOnField(taskId, 2, gUnknown_81C137C, sub_80A1E0C);
+ }
+ else if (respval == 1)
+ {
+ Free(sVsSeeker);
+ DisplayItemMessageOnField(taskId, 2, gUnknown_81C13D6, sub_80A1E0C);
+ }
+ else if (respval == 2)
+ {
+ sub_80A2294(4, 0, gUnknown_203AD30, 0xffff);
+ FieldEffectStart(FLDEFF_UNK_41); // TODO: name this enum
+ gTasks[taskId].func = Task_VsSeeker_1;
+ gTasks[taskId].data[0] = 15;
+ }
+}
+
+static void Task_VsSeeker_1(u8 taskId)
+{
+ if (--gTasks[taskId].data[0] == 0)
+ {
+ gTasks[taskId].func = Task_VsSeeker_2;
+ gTasks[taskId].data[1] = 16;
+ }
+}
+
+static void Task_VsSeeker_2(u8 taskId)
+{
+ s16 * data = gTasks[taskId].data;
+
+ if (data[2] != 2 && --data[1] == 0)
+ {
+ PlaySE(SE_BASABASA);
+ data[1] = 11;
+ data[2]++;
+ }
+
+ if (!FieldEffectActiveListContains(FLDEFF_UNK_41))
+ {
+ data[1] = 0;
+ data[2] = 0;
+ sub_810C604();
+ sVsSeeker->responseCode = GetVsSeekerResponseInArea(sVsSeekerData);
+ ScriptMovement_StartObjectMovementScript(0xFF, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, gUnknown_8453F5C);
+ gTasks[taskId].func = Task_VsSeeker_3;
+ }
+}
+
+static void GatherNearbyTrainerInfo(void)
+{
+ struct MapObjectTemplate *templates = gSaveBlock1Ptr->mapObjectTemplates;
+ u8 fieldObjectId = 0;
+ u8 vsSeekerObjectIdx = 0;
+ s32 mapObjectIdx;
+
+ for (mapObjectIdx = 0; mapObjectIdx < gMapHeader.events->mapObjectCount; mapObjectIdx++)
+ {
+ if (templates[mapObjectIdx].unkC == 1 || templates[mapObjectIdx].unkC == 3)
+ {
+ sVsSeeker->trainerInfo[vsSeekerObjectIdx].script = templates[mapObjectIdx].script;
+ sVsSeeker->trainerInfo[vsSeekerObjectIdx].trainerIdx = GetTrainerFlagFromScript(templates[mapObjectIdx].script);
+ sVsSeeker->trainerInfo[vsSeekerObjectIdx].localId = templates[mapObjectIdx].localId;
+ TryGetFieldObjectIdByLocalIdAndMap(templates[mapObjectIdx].localId, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &fieldObjectId);
+ sVsSeeker->trainerInfo[vsSeekerObjectIdx].fieldObjectId = fieldObjectId;
+ sVsSeeker->trainerInfo[vsSeekerObjectIdx].xCoord = gMapObjects[fieldObjectId].coords2.x - 7;
+ sVsSeeker->trainerInfo[vsSeekerObjectIdx].yCoord = gMapObjects[fieldObjectId].coords2.y - 7;
+ sVsSeeker->trainerInfo[vsSeekerObjectIdx].graphicsId = templates[mapObjectIdx].graphicsId;
+ vsSeekerObjectIdx++;
+ }
+ }
+ sVsSeeker->trainerInfo[vsSeekerObjectIdx].localId = 0xFF;
+}
+
+static void Task_VsSeeker_3(u8 taskId)
+{
+ if (ScriptMovement_IsObjectMovementFinished(0xFF, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup))
+ {
+ if (sVsSeeker->responseCode == 0)
+ {
+ DisplayItemMessageOnField(taskId, 2, gUnknown_81C1429, sub_80A1E0C);
+ }
+ else
+ {
+ if (sVsSeeker->responseCode == 2)
+ StartAllRespondantIdleMovements();
+ sub_80F6F54(0, 1);
+ sub_80696C0();
+ ScriptContext2_Disable();
+ DestroyTask(taskId);
+ }
+ Free(sVsSeeker);
+ }
+}
+
+u8 CanUseVsSeeker(void)
+{
+ u8 vsSeekerChargeSteps = gSaveBlock1Ptr->trainerRematchStepCounter;
+ if (vsSeekerChargeSteps == 100)
+ {
+ if (GetRematchableTrainerLocalId() == 0xFF)
+ return 1;
+ else
+ return 2;
+ }
+ else
+ {
+ TV_PrintIntToStringVar(0, 100 - vsSeekerChargeSteps);
+ return 0;
+ }
+}
+
+// Nonmatching due to register roulette
+#ifdef NONMATCHING
+static u8 GetVsSeekerResponseInArea(const VsSeekerData * a0)
+{
+ u16 r8 = 0;
+ u8 sp0 = 0;
+ s32 vsSeekerIdx;
+
+ for (vsSeekerIdx = 0; sVsSeeker->trainerInfo[vsSeekerIdx].localId != 0xFF; vsSeekerIdx++)
+ {
+ if (IsTrainerVisibleOnScreen(&sVsSeeker->trainerInfo[vsSeekerIdx]) == 1)
+ {
+ r8 = sVsSeeker->trainerInfo[vsSeekerIdx].trainerIdx;
+ if (!HasTrainerAlreadyBeenFought(r8))
+ {
+ StartTrainerObjectMovementScript(&sVsSeeker->trainerInfo[vsSeekerIdx], gUnknown_8453F60);
+ sVsSeeker->trainerHasNotYetBeenFought = 1;
+ }
+ else
+ {
+ u8 r7 = GetNextAvailableRematchTrainer(a0, r8, &sp0);
+ if (r7 == 0)
+ {
+ StartTrainerObjectMovementScript(&sVsSeeker->trainerInfo[vsSeekerIdx], sMovementScript_TrainerNoRematch);
+ sVsSeeker->trainerDoesNotWantRematch = 1;
+ }
+ else
+ {
+ u16 rval = Random() % 100;
+ u8 r0 = GetCurVsSeekerResponse(vsSeekerIdx, r8);
+ if (r0 == 2)
+ rval = 100;
+ else if (r0 == 1)
+ rval = 0;
+ if (rval < 30)
+ {
+ StartTrainerObjectMovementScript(&sVsSeeker->trainerInfo[vsSeekerIdx], sMovementScript_TrainerNoRematch);
+ sVsSeeker->trainerDoesNotWantRematch = 1;
+ }
+ else
+ {
+ gSaveBlock1Ptr->trainerRematches[sVsSeeker->trainerInfo[vsSeekerIdx].localId] = r7;
+ npc_coords_shift_still(&gMapObjects[sVsSeeker->trainerInfo[vsSeekerIdx].fieldObjectId]);
+ StartTrainerObjectMovementScript(&sVsSeeker->trainerInfo[vsSeekerIdx], gUnknown_8453F64);
+ sVsSeeker->trainerIdxArray[sVsSeeker->numRematchableTrainers] = r8;
+ sVsSeeker->runningBehaviourEtcArray[sVsSeeker->numRematchableTrainers] = GetRunningBehaviorFromGraphicsId(sVsSeeker->trainerInfo[vsSeekerIdx].graphicsId);
+ sVsSeeker->numRematchableTrainers++;
+ sVsSeeker->trainerWantsRematch = 1;
+ }
+ }
+ }
+ }
+ }
+
+ if (sVsSeeker->trainerWantsRematch)
+ {
+ PlaySE(SE_PIN);
+ FlagSet(0x801); // TODO: make this an enum
+ sub_810C640();
+ return 2;
+ }
+ if (sVsSeeker->trainerHasNotYetBeenFought)
+ return 1;
+ return 0;
+}
+#else
+NAKED
+static u8 GetVsSeekerResponseInArea(const VsSeekerData * a0)
+{
+ asm_unified("\tpush {r4-r7,lr}\n"
+ "\tmov r7, r10\n"
+ "\tmov r6, r9\n"
+ "\tmov r5, r8\n"
+ "\tpush {r5-r7}\n"
+ "\tsub sp, 0x8\n"
+ "\tstr r0, [sp, 0x4]\n"
+ "\tmovs r0, 0\n"
+ "\tmov r8, r0\n"
+ "\tmov r0, sp\n"
+ "\tmov r1, r8\n"
+ "\tstrb r1, [r0]\n"
+ "\tmovs r2, 0\n"
+ "\tmov r9, r2\n"
+ "\tldr r4, _0810CA14 @ =sVsSeeker\n"
+ "\tldr r0, [r4]\n"
+ "\tldrb r0, [r0, 0x6]\n"
+ "\tcmp r0, 0xFF\n"
+ "\tbne _0810C9D0\n"
+ "\tb _0810CB2C\n"
+ "_0810C9D0:\n"
+ "\tadds r6, r4, 0\n"
+ "\tmovs r3, 0x86\n"
+ "\tlsls r3, 3\n"
+ "\tmov r10, r3\n"
+ "\tmovs r5, 0\n"
+ "_0810C9DA:\n"
+ "\tldr r0, [r6]\n"
+ "\tadds r0, r5\n"
+ "\tbl IsTrainerVisibleOnScreen\n"
+ "\tlsls r0, 24\n"
+ "\tlsrs r0, 24\n"
+ "\tcmp r0, 0x1\n"
+ "\tbeq _0810C9EC\n"
+ "\tb _0810CB18\n"
+ "_0810C9EC:\n"
+ "\tldr r0, [r4]\n"
+ "\tadds r0, r5\n"
+ "\tldrh r0, [r0, 0x4]\n"
+ "\tmov r8, r0\n"
+ "\tbl HasTrainerAlreadyBeenFought\n"
+ "\tlsls r0, 24\n"
+ "\tcmp r0, 0\n"
+ "\tbne _0810CA20\n"
+ "\tldr r0, [r6]\n"
+ "\tadds r0, r5\n"
+ "\tldr r1, _0810CA18 @ =gUnknown_8453F60\n"
+ "\tbl StartTrainerObjectMovementScript\n"
+ "\tldr r2, [r6]\n"
+ "\tldr r0, _0810CA1C @ =0x00000431\n"
+ "\tadds r2, r0\n"
+ "\tldrb r0, [r2]\n"
+ "\tmovs r1, 0x1\n"
+ "\tb _0810CB14\n"
+ "\t.align 2, 0\n"
+ "_0810CA14: .4byte sVsSeeker\n"
+ "_0810CA18: .4byte gUnknown_8453F60\n"
+ "_0810CA1C: .4byte 0x00000431\n"
+ "_0810CA20:\n"
+ "\tldr r0, [sp, 0x4]\n"
+ "\tmov r1, r8\n"
+ "\tmov r2, sp\n"
+ "\tbl GetNextAvailableRematchTrainer\n"
+ "\tlsls r0, 24\n"
+ "\tlsrs r7, r0, 24\n"
+ "\tcmp r7, 0\n"
+ "\tbne _0810CA50\n"
+ "\tldr r0, [r6]\n"
+ "\tadds r0, r5\n"
+ "\tldr r1, _0810CA48 @ =sMovementScript_TrainerNoRematch\n"
+ "\tbl StartTrainerObjectMovementScript\n"
+ "\tldr r2, [r6]\n"
+ "\tldr r3, _0810CA4C @ =0x00000431\n"
+ "\tadds r2, r3\n"
+ "\tldrb r0, [r2]\n"
+ "\tmovs r1, 0x2\n"
+ "\tb _0810CB14\n"
+ "\t.align 2, 0\n"
+ "_0810CA48: .4byte sMovementScript_TrainerNoRematch\n"
+ "_0810CA4C: .4byte 0x00000431\n"
+ "_0810CA50:\n"
+ "\tbl Random\n"
+ "\tlsls r0, 16\n"
+ "\tlsrs r0, 16\n"
+ "\tmovs r1, 0x64\n"
+ "\tbl __umodsi3\n"
+ "\tlsls r0, 16\n"
+ "\tlsrs r4, r0, 16\n"
+ "\tmov r0, r9\n"
+ "\tmov r1, r8\n"
+ "\tbl GetCurVsSeekerResponse\n"
+ "\tlsls r0, 24\n"
+ "\tlsrs r0, 24\n"
+ "\tcmp r0, 0x2\n"
+ "\tbne _0810CA76\n"
+ "\tmovs r4, 0x64\n"
+ "\tb _0810CA7C\n"
+ "_0810CA76:\n"
+ "\tcmp r0, 0x1\n"
+ "\tbne _0810CA7C\n"
+ "\tmovs r4, 0\n"
+ "_0810CA7C:\n"
+ "\tcmp r4, 0x1D\n"
+ "\tbhi _0810CAA0\n"
+ "\tldr r0, [r6]\n"
+ "\tadds r0, r5\n"
+ "\tldr r1, _0810CA98 @ =sMovementScript_TrainerNoRematch\n"
+ "\tbl StartTrainerObjectMovementScript\n"
+ "\tldr r2, [r6]\n"
+ "\tldr r0, _0810CA9C @ =0x00000431\n"
+ "\tadds r2, r0\n"
+ "\tldrb r0, [r2]\n"
+ "\tmovs r1, 0x2\n"
+ "\tb _0810CB14\n"
+ "\t.align 2, 0\n"
+ "_0810CA98: .4byte sMovementScript_TrainerNoRematch\n"
+ "_0810CA9C: .4byte 0x00000431\n"
+ "_0810CAA0:\n"
+ "\tldr r0, _0810CB54 @ =gSaveBlock1Ptr\n"
+ "\tldr r1, [r0]\n"
+ "\tldr r0, [r6]\n"
+ "\tadds r0, r5\n"
+ "\tldr r2, _0810CB58 @ =0x0000063a\n"
+ "\tadds r1, r2\n"
+ "\tldrb r0, [r0, 0x6]\n"
+ "\tadds r1, r0\n"
+ "\tstrb r7, [r1]\n"
+ "\tldr r0, [r6]\n"
+ "\tadds r0, r5\n"
+ "\tldrb r1, [r0, 0x7]\n"
+ "\tlsls r0, r1, 3\n"
+ "\tadds r0, r1\n"
+ "\tlsls r0, 2\n"
+ "\tldr r1, _0810CB5C @ =gMapObjects\n"
+ "\tadds r0, r1\n"
+ "\tbl npc_coords_shift_still\n"
+ "\tldr r0, [r6]\n"
+ "\tadds r0, r5\n"
+ "\tldr r1, _0810CB60 @ =gUnknown_8453F64\n"
+ "\tbl StartTrainerObjectMovementScript\n"
+ "\tldr r2, [r6]\n"
+ "\tmov r3, r10\n"
+ "\tadds r0, r2, r3\n"
+ "\tldrb r1, [r0]\n"
+ "\tlsls r1, 1\n"
+ "\tmovs r3, 0x80\n"
+ "\tlsls r3, 3\n"
+ "\tadds r0, r2, r3\n"
+ "\tadds r0, r1\n"
+ "\tmov r1, r8\n"
+ "\tstrh r1, [r0]\n"
+ "\tadds r2, r5\n"
+ "\tldrb r0, [r2, 0xC]\n"
+ "\tbl GetRunningBehaviorFromGraphicsId\n"
+ "\tldr r1, [r6]\n"
+ "\tmov r3, r10\n"
+ "\tadds r2, r1, r3\n"
+ "\tmovs r3, 0x84\n"
+ "\tlsls r3, 3\n"
+ "\tadds r1, r3\n"
+ "\tldrb r2, [r2]\n"
+ "\tadds r1, r2\n"
+ "\tstrb r0, [r1]\n"
+ "\tldr r1, [r6]\n"
+ "\tadd r1, r10\n"
+ "\tldrb r0, [r1]\n"
+ "\tadds r0, 0x1\n"
+ "\tstrb r0, [r1]\n"
+ "\tldr r2, [r6]\n"
+ "\tldr r0, _0810CB64 @ =0x00000431\n"
+ "\tadds r2, r0\n"
+ "\tldrb r0, [r2]\n"
+ "\tmovs r1, 0x4\n"
+ "_0810CB14:\n"
+ "\torrs r0, r1\n"
+ "\tstrb r0, [r2]\n"
+ "_0810CB18:\n"
+ "\tadds r5, 0x10\n"
+ "\tmovs r1, 0x1\n"
+ "\tadd r9, r1\n"
+ "\tldr r4, _0810CB68 @ =sVsSeeker\n"
+ "\tldr r0, [r4]\n"
+ "\tadds r0, r5\n"
+ "\tldrb r0, [r0, 0x6]\n"
+ "\tcmp r0, 0xFF\n"
+ "\tbeq _0810CB2C\n"
+ "\tb _0810C9DA\n"
+ "_0810CB2C:\n"
+ "\tldr r2, _0810CB68 @ =sVsSeeker\n"
+ "\tldr r0, [r2]\n"
+ "\tldr r3, _0810CB64 @ =0x00000431\n"
+ "\tadds r0, r3\n"
+ "\tldrb r1, [r0]\n"
+ "\tmovs r0, 0x4\n"
+ "\tands r0, r1\n"
+ "\tcmp r0, 0\n"
+ "\tbeq _0810CB70\n"
+ "\tmovs r0, 0x15\n"
+ "\tbl PlaySE\n"
+ "\tldr r0, _0810CB6C @ =0x00000801\n"
+ "\tbl FlagSet\n"
+ "\tbl sub_810C640\n"
+ "\tmovs r0, 0x2\n"
+ "\tb _0810CB7E\n"
+ "\t.align 2, 0\n"
+ "_0810CB54: .4byte gSaveBlock1Ptr\n"
+ "_0810CB58: .4byte 0x0000063a\n"
+ "_0810CB5C: .4byte gMapObjects\n"
+ "_0810CB60: .4byte gUnknown_8453F64\n"
+ "_0810CB64: .4byte 0x00000431\n"
+ "_0810CB68: .4byte sVsSeeker\n"
+ "_0810CB6C: .4byte 0x00000801\n"
+ "_0810CB70:\n"
+ "\tmovs r0, 0x1\n"
+ "\tands r0, r1\n"
+ "\tcmp r0, 0\n"
+ "\tbne _0810CB7C\n"
+ "\tmovs r0, 0\n"
+ "\tb _0810CB7E\n"
+ "_0810CB7C:\n"
+ "\tmovs r0, 0x1\n"
+ "_0810CB7E:\n"
+ "\tadd sp, 0x8\n"
+ "\tpop {r3-r5}\n"
+ "\tmov r8, r3\n"
+ "\tmov r9, r4\n"
+ "\tmov r10, r5\n"
+ "\tpop {r4-r7}\n"
+ "\tpop {r1}\n"
+ "\tbx r1");
+}
+#endif
+
+void sub_810CB90(void)
+{
+ u8 sp0 = 0;
+ struct MapObjectTemplate *r4 = gSaveBlock1Ptr->mapObjectTemplates;
+ s32 r9 = sub_810CE10(sVsSeekerData, gTrainerBattleOpponent_A);
+
+ if (r9 != -1)
+ {
+ s32 r8;
+
+ for (r8 = 0; r8 < gMapHeader.events->mapObjectCount; r8++)
+ {
+ if ((r4[r8].unkC == 1 || r4[r8].unkC == 3) && r9 == sub_810CE10(sVsSeekerData, GetTrainerFlagFromScript(r4[r8].script)))
+ {
+ struct MapObject *r4_2;
+
+ TryGetFieldObjectIdByLocalIdAndMap(r4[r8].localId, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, &sp0);
+ r4_2 = &gMapObjects[sp0];
+ sub_810CF54(&r4[r8]); // You are using this function incorrectly. Please consult the manual.
+ sub_805FE7C(r4_2, gUnknown_8453F67[r4_2->mapobj_unk_18]);
+ gSaveBlock1Ptr->trainerRematches[r4[r8].localId] = 0;
+ if (gUnknown_3005074 == sp0)
+ r4_2->animPattern = gUnknown_8453F67[r4_2->mapobj_unk_18];
+ else
+ r4_2->animPattern = 0x08;
+ }
+ }
+ }
+}
+
+static void TryGetRematchTrainerIdGivenGameState(const u16 * a0, u8 * a1)
+{
+ switch (*a1)
+ {
+ case 0:
+ break;
+ case 1:
+ if (!FlagGet(FLAG_0x292))
+ *a1 = GetRematchTrainerIdGivenGameState(a0, *a1);
+ break;
+ case 2:
+ if (!FlagGet(FLAG_SYS_NATIONAL_DEX))
+ *a1 = GetRematchTrainerIdGivenGameState(a0, *a1);
+ break;
+ case 3:
+ if (!FlagGet(FLAG_SYS_CAVE_SHIP))
+ *a1 = GetRematchTrainerIdGivenGameState(a0, *a1);
+ break;
+ case 4:
+ if (!FlagGet(FLAG_TRAINER_FLAG_START + 0x32c))
+ *a1 = GetRematchTrainerIdGivenGameState(a0, *a1);
+ break;
+ case 5:
+ if (!FlagGet(FLAG_TRAINER_FLAG_START + 0x344))
+ *a1 = GetRematchTrainerIdGivenGameState(a0, *a1);
+ break;
+ }
+}
+
+static u8 GetRematchTrainerIdGivenGameState(const u16 * a0, u8 a1)
+{
+ while (--a1 != 0)
+ {
+ const u16 *r0 = a0 + a1;
+ if (*r0 != 0xFFFF)
+ return a1;
+ }
+ return 0;
+}
+
+u8 sub_810CD4C(void) // unreferenced, or reference not disassembled
+{
+ if (sub_810CD80(sVsSeekerData, gTrainerBattleOpponent_A))
+ {
+ return 1;
+ }
+ return HasRematchTrainerAlreadyBeenFought(sVsSeekerData, gTrainerBattleOpponent_A);
+}
+
+static bool8 sub_810CD80(const VsSeekerData *vsSeekerData, u16 trainerBattleOpponent)
+{
+ s32 rematchIdx = GetRematchIdx(vsSeekerData, trainerBattleOpponent);
+
+ if (rematchIdx == -1)
+ return FALSE;
+ if (rematchIdx >= 0 && rematchIdx < ARRAY_COUNT(sVsSeekerData))
+ {
+ if (IsThisTrainerRematchable(gUnknown_20370D2))
+ return TRUE;
+ }
+ return FALSE;
+}
+
+static bool8 HasRematchTrainerAlreadyBeenFought(const VsSeekerData *vsSeekerData, u16 trainerBattleOpponent)
+{
+ s32 rematchIdx = GetRematchIdx(vsSeekerData, trainerBattleOpponent);
+
+ if (rematchIdx == -1)
+ return FALSE;
+ if (!HasTrainerAlreadyBeenFought(vsSeekerData[rematchIdx].trainerIdxs[0]))
+ return FALSE;
+ return TRUE;
+}
+
+void sub_810CDE8(void)
+{
+ gSaveBlock1Ptr->trainerRematches[gUnknown_20370D2] = 0;
+ sub_80803FC();
+}
+
+static s32 sub_810CE10(const VsSeekerData * a0, u16 a1)
+{
+ u32 r1;
+ s32 r3;
+
+ for (r1 = 0; r1 < ARRAY_COUNT(sVsSeekerData); r1++)
+ {
+ for (r3 = 0; r3 < 6; r3++)
+ {
+ u16 r0;
+ if (a0[r1].trainerIdxs[r3] == 0)
+ break;
+ r0 = a0[r1].trainerIdxs[r3];
+ if (r0 == 0xFFFF)
+ continue;
+ if (r0 == a1)
+ return r1;
+ }
+ }
+
+ return -1;
+}
+
+s32 sub_810CE64(u16 a0)
+{
+ u8 i;
+ u8 j;
+ j = GetNextAvailableRematchTrainer(sVsSeekerData, a0, &i);
+ if (!j)
+ return 0;
+ TryGetRematchTrainerIdGivenGameState(sVsSeekerData[i].trainerIdxs, &j);
+ return sVsSeekerData[i].trainerIdxs[j];
+}
+
+u8 sub_810CEB4(void) // unreferenced, or reference not disassembled
+{
+ return sub_810CED0(sVsSeekerData, gTrainerBattleOpponent_A);
+}
+
+static bool8 sub_810CED0(const VsSeekerData * a0, u16 a1)
+{
+ s32 r1 = sub_810CE10(a0, a1);
+
+ if (r1 == -1)
+ return FALSE;
+ if ((u32)r1 >= ARRAY_COUNT(sVsSeekerData))
+ return FALSE;
+ if (!IsThisTrainerRematchable(gUnknown_20370D2))
+ return FALSE;
+ return TRUE;
+}
+
+bool8 sub_810CF04(u8 a0)
+{
+ struct MapObject *r1 = &gMapObjects[a0];
+
+ if (r1->active && gMapHeader.events->mapObjectCount >= r1->localId && gSprites[r1->spriteId].data[0] == a0)
+ return TRUE;
+ return FALSE;
+}
+
+u8 sub_810CF54()
+{
+ u16 r1 = Random() % 4;
+
+ switch (r1)
+ {
+ case 0:
+ return 7;
+ case 1:
+ return 8;
+ case 2:
+ return 9;
+ case 3:
+ return 10;
+ default:
+ return 8;
+ }
+}
+
+static u8 GetRunningBehaviorFromGraphicsId(u8 graphicsId)
+{
+ switch (graphicsId)
+ {
+ case 0x11:
+ case 0x12:
+ case 0x13:
+ case 0x14:
+ case 0x16:
+ case 0x17:
+ case 0x18:
+ case 0x19:
+ case 0x1a:
+ case 0x1c:
+ case 0x1d:
+ case 0x1e:
+ case 0x25:
+ case 0x27:
+ case 0x28:
+ case 0x29:
+ case 0x2a:
+ case 0x2d:
+ case 0x2e:
+ case 0x36:
+ case 0x38:
+ case 0x3e:
+ return 0x4e;
+ case 0x24:
+ case 0x2b:
+ case 0x2c:
+ return 0x4f;
+ default:
+ return 0x4d;
+ }
+}
+
+static u16 GetTrainerFlagFromScript(const u8 *script)
+/*
+ * The trainer flag is a little-endian short located +2 from
+ * the script pointer, assuming the trainerbattle command is
+ * first in the script. Because scripts are unaligned, and
+ * because the ARM processor requires shorts to be 16-bit
+ * aligned, this function needs to perform explicit bitwise
+ * operations to get the correct flag.
+ *
+ * 5c XX YY ZZ ...
+ * -- --
+ */
+{
+ u16 trainerFlag;
+
+ script += 2;
+ trainerFlag = script[0];
+ trainerFlag |= script[1] << 8;
+ return trainerFlag;
+}
+
+static s32 GetRematchIdx(const VsSeekerData * vsSeekerData, u16 trainerFlagIdx)
+{
+ u32 i;
+
+ for (i = 0; i < ARRAY_COUNT(sVsSeekerData); i++)
+ {
+ if (vsSeekerData[i].trainerIdxs[0] == trainerFlagIdx)
+ return i;
+ }
+
+ return -1;
+}
+
+static bool32 IsThisTrainerRematchable(u32 a0)
+{
+ if (!gSaveBlock1Ptr->trainerRematches[a0])
+ return FALSE;
+ return TRUE;
+}
+
+void sub_810D0D0(void)
+{
+ u8 i;
+
+ for (i = 0; i < 100; i++)
+ gSaveBlock1Ptr->trainerRematches[i] = 0;
+}
+
+static bool8 IsTrainerVisibleOnScreen(struct VsSeekerTrainerInfo * trainerInfo)
+{
+ s16 x;
+ s16 y;
+
+ PlayerGetDestCoords(&x, &y);
+ x -= 7;
+ y -= 7;
+
+ if ( x - 7 <= trainerInfo->xCoord
+ && x + 7 >= trainerInfo->xCoord
+ && y - 5 <= trainerInfo->yCoord
+ && y + 5 >= trainerInfo->yCoord
+ && sub_810CF04(trainerInfo->fieldObjectId) == 1)
+ return TRUE;
+ return FALSE;
+}
+
+static u8 GetNextAvailableRematchTrainer(const VsSeekerData * vsSeekerData, u16 trainerFlagNo, u8 * idxPtr)
+{
+ u32 i;
+ s32 j;
+
+ for (i = 0; i < ARRAY_COUNT(sVsSeekerData); i++)
+ {
+ if (vsSeekerData[i].trainerIdxs[0] == trainerFlagNo)
+ {
+ *idxPtr = i;
+ for (j = 1; j < 6; j++)
+ {
+ if (vsSeekerData[i].trainerIdxs[j] == 0)
+ return j - 1;
+ if (vsSeekerData[i].trainerIdxs[j] == 0xffff)
+ continue;
+ if (HasTrainerAlreadyBeenFought(vsSeekerData[i].trainerIdxs[j]))
+ continue;
+ return j;
+ }
+ return j - 1;
+ }
+ }
+
+ *idxPtr = 0;
+ return 0;
+}
+
+static u8 GetRematchableTrainerLocalId(void)
+{
+ u8 idx;
+ u8 i;
+
+ for (i = 0; sVsSeeker->trainerInfo[i].localId != 0xFF; i++)
+ {
+ if (IsTrainerVisibleOnScreen(&sVsSeeker->trainerInfo[i]) == 1)
+ {
+ if (HasTrainerAlreadyBeenFought(sVsSeeker->trainerInfo[i].trainerIdx) != 1 || GetNextAvailableRematchTrainer(sVsSeekerData, sVsSeeker->trainerInfo[i].trainerIdx, &idx))
+ return sVsSeeker->trainerInfo[i].localId;
+ }
+ }
+
+ return 0xFF;
+}
+
+static void StartTrainerObjectMovementScript(struct VsSeekerTrainerInfo * trainerInfo, const u8 * script)
+{
+ npc_sync_anim_pause_bits(&gMapObjects[trainerInfo->fieldObjectId]);
+ ScriptMovement_StartObjectMovementScript(trainerInfo->localId, gSaveBlock1Ptr->location.mapNum, gSaveBlock1Ptr->location.mapGroup, script);
+}
+
+static u8 GetCurVsSeekerResponse(s32 a0, u16 a1)
+{
+ s32 i;
+ s32 j;
+
+ for (i = 0; i < a0; i++)
+ {
+ if (IsTrainerVisibleOnScreen(&sVsSeeker->trainerInfo[i]) == 1 && sVsSeeker->trainerInfo[i].trainerIdx == a1)
+ {
+ for (j = 0; j < sVsSeeker->numRematchableTrainers; j++)
+ {
+ if (sVsSeeker->trainerIdxArray[j] == sVsSeeker->trainerInfo[i].trainerIdx)
+ return 2;
+ }
+ return 1;
+ }
+ }
+ return 0;
+}
+
+static void StartAllRespondantIdleMovements(void)
+{
+ u8 dummy = 0;
+ s32 i;
+ s32 j;
+
+ for (i = 0; i < sVsSeeker->numRematchableTrainers; i++)
+ {
+ for (j = 0; sVsSeeker->trainerInfo[j].localId != 0xFF; j++)
+ {
+ if (sVsSeeker->trainerInfo[j].trainerIdx == sVsSeeker->trainerIdxArray[i])
+ {
+ struct MapObject *r4 = &gMapObjects[sVsSeeker->trainerInfo[j].fieldObjectId];
+
+ if (sub_810CF04(sVsSeeker->trainerInfo[j].fieldObjectId) == 1)
+ npc_set_running_behaviour_etc(r4, sVsSeeker->runningBehaviourEtcArray[i]);
+ sub_805FE7C(r4, sVsSeeker->runningBehaviourEtcArray[i]);
+ gSaveBlock1Ptr->trainerRematches[sVsSeeker->trainerInfo[j].localId] = GetNextAvailableRematchTrainer(sVsSeekerData, sVsSeeker->trainerInfo[j].trainerIdx, &dummy);
+ }
+ }
+ }
+}
diff --git a/sym_ewram.txt b/sym_ewram.txt
index 524845763..1e0ed2e60 100644
--- a/sym_ewram.txt
+++ b/sym_ewram.txt
@@ -1411,8 +1411,7 @@ gUnknown_203AD40: @ 203AD40
gUnknown_203AD58: @ 203AD58
.space 0x60
-gUnknown_203ADB8: @ 203ADB8
- .space 0x4
+ .include "src/vs_seeker.o"
gUnknown_203ADBC: @ 203ADBC
.space 0x4