diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2018-11-21 09:00:41 -0500 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2018-11-21 09:00:41 -0500 |
commit | 77d7434df2bc6141b47d29c33fb617b29eef0fef (patch) | |
tree | 7212b566499c85cd58a151e7bb5d385dee506e3f | |
parent | 6bcabeab1ec976284da95c34b57615fc9fa44970 (diff) | |
parent | 2ed26ab8fcd4e302ab4aac6bb01dba7b5c985914 (diff) |
Merge branch 'master' into quest_log
44 files changed, 5266 insertions, 6718 deletions
@@ -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 |