diff options
42 files changed, 729 insertions, 833 deletions
@@ -109,16 +109,12 @@ tidy: $(OBJCOPY) -O binary --gap-fill 0xFF --pad-to 0x9000000 $< $@ %.elf: $(LD_SCRIPT) $(ALL_OBJECTS) - cd $(BUILD_DIR) && $(LD) -T ld_script.ld -Map ../../$(MAP) -o ../../$@ ../../$(LIBGCC) ../../$(LIBC) - -$(LD_SCRIPT): $(BUILD_DIR)/sym_bss.ld $(BUILD_DIR)/sym_common.ld $(BUILD_DIR)/sym_ewram.ld ld_script.txt - cd $(BUILD_DIR) && sed -f ../../ld_script.sed ../../ld_script.txt | sed "s#tools/#../../tools/#g" >ld_script.ld -$(BUILD_DIR)/sym_bss.ld: sym_bss.txt - cd $(BUILD_DIR) && ../../$(RAMSCRGEN) .bss ../../sym_bss.txt $(GAME_LANGUAGE) >sym_bss.ld -$(BUILD_DIR)/sym_common.ld: sym_common.txt $(C_OBJECTS) $(wildcard common_syms/*.txt) - cd $(BUILD_DIR) && ../../$(RAMSCRGEN) COMMON ../../sym_common.txt $(GAME_LANGUAGE) -c src,../../common_syms >sym_common.ld -$(BUILD_DIR)/sym_ewram.ld: sym_ewram.txt - cd $(BUILD_DIR) && ../../$(RAMSCRGEN) ewram_data ../../sym_ewram.txt $(GAME_LANGUAGE) >sym_ewram.ld + cd $(BUILD_DIR) && $(LD) -T ld_script.ld -Map ../../$(MAP) ../../$(LIBGCC) ../../$(LIBC) -o ../../$@ + +$(LD_SCRIPT): ld_script.txt $(BUILD_DIR)/sym_common.ld $(BUILD_DIR)/sym_ewram.ld $(BUILD_DIR)/sym_bss.ld + cd $(BUILD_DIR) && sed -e "s#tools/#../../tools/#g" ../../ld_script.txt >ld_script.ld +$(BUILD_DIR)/sym_%.ld: sym_%.txt + $(CPP) -P $(CPPFLAGS) $< | sed -e "s#tools/#../../tools/#g" > $@ $(C_OBJECTS): $(BUILD_DIR)/%.o: %.c $$(C_DEP) $(CPP) $(CPPFLAGS) $< -o $(BUILD_DIR)/$*.i diff --git a/common_syms/battle/battle_anim.txt b/common_syms/battle/battle_anim.txt deleted file mode 100644 index a93ac9b5d..000000000 --- a/common_syms/battle/battle_anim.txt +++ /dev/null @@ -1,3 +0,0 @@ -gSoundAnimFramesToWait -gBattleAnimArgs -gAnimSpriteIndexArray diff --git a/common_syms/debug/mori_debug_menu.txt b/common_syms/debug/mori_debug_menu.txt deleted file mode 100644 index 77ab5531c..000000000 --- a/common_syms/debug/mori_debug_menu.txt +++ /dev/null @@ -1 +0,0 @@ -gUnknown_03004DA0 diff --git a/common_syms/debug/sound_check_menu.txt b/common_syms/debug/sound_check_menu.txt deleted file mode 100644 index e9e3032e6..000000000 --- a/common_syms/debug/sound_check_menu.txt +++ /dev/null @@ -1,2 +0,0 @@ -gUnknown_03005D30 -gSoundTestCryNum diff --git a/common_syms/engine/link.txt b/common_syms/engine/link.txt deleted file mode 100644 index faafda4d0..000000000 --- a/common_syms/engine/link.txt +++ /dev/null @@ -1,46 +0,0 @@ -word_3002910 -gLinkDebugValue1 -localLinkPlayerBlock -gLinkErrorOccurred -4 -gLinkDebugValue2 -4 -#begin GERMAN -deUnkValue1 -deUnkValue2 -#end -gLinkPlayerPending -gLinkPlayers -gBlockReceived -4 -gLinkHeldKeys -gLinkTimeOutCounter -4 -localLinkPlayer -gRecvCmds -gLinkStatus -gLinkDummyBool -byte_3002A68 -gBlockSendBuffer -u8_array_3002B70 -gLinkType -u8_array_3002B78 -gBlockRecvBuffer -gSuppressLinkErrorMessage -gSavedLinkPlayerCount -gSendCmd -gSavedMultiplayerId -gReceivedRemoteLinkPlayers -gLinkTestBGInfo -gLinkCallback -gSavedLinkPlayers -gShouldAdvanceLinkState -gLinkTestBlockChecksums -4 -gBlockRequestType -4 -4 -gLastSendQueueCount -gLink -gLastRecvQueueCount -gLinkSavedIme diff --git a/common_syms/engine/load_save.txt b/common_syms/engine/load_save.txt deleted file mode 100644 index 3b969deca..000000000 --- a/common_syms/engine/load_save.txt +++ /dev/null @@ -1 +0,0 @@ -gFlashMemoryPresent diff --git a/common_syms/engine/main.txt b/common_syms/engine/main.txt deleted file mode 100644 index a620083d1..000000000 --- a/common_syms/engine/main.txt +++ /dev/null @@ -1,9 +0,0 @@ -gKeyRepeatStartDelay -gLinkTransferringData -gMain -gKeyRepeatContinueDelay -gSoftResetDisabled -gIntrTable -gLinkVSyncDisabled -IntrMain_Buffer -gPcmDmaCounter diff --git a/common_syms/engine/random.txt b/common_syms/engine/random.txt deleted file mode 100644 index 794439ea5..000000000 --- a/common_syms/engine/random.txt +++ /dev/null @@ -1 +0,0 @@ -gRngValue diff --git a/common_syms/engine/record_mixing.txt b/common_syms/engine/record_mixing.txt deleted file mode 100644 index a6f4f8df3..000000000 --- a/common_syms/engine/record_mixing.txt +++ /dev/null @@ -1 +0,0 @@ -gUnknown_03005D2C diff --git a/common_syms/engine/rtc.txt b/common_syms/engine/rtc.txt deleted file mode 100644 index fa00a34d5..000000000 --- a/common_syms/engine/rtc.txt +++ /dev/null @@ -1 +0,0 @@ -gLocalTime diff --git a/common_syms/engine/save.txt b/common_syms/engine/save.txt deleted file mode 100644 index 4824255bf..000000000 --- a/common_syms/engine/save.txt +++ /dev/null @@ -1,9 +0,0 @@ -gFirstSaveSector -gPrevSaveCounter -gLastKnownGoodSector -gDamagedSaveSectors -gSaveCounter -gFastSaveSection -gUnknown_03005EB4 -gSaveFileStatus -gGameContinueCallback diff --git a/common_syms/engine/sound.txt b/common_syms/engine/sound.txt deleted file mode 100644 index 0f6f2fc75..000000000 --- a/common_syms/engine/sound.txt +++ /dev/null @@ -1 +0,0 @@ -gDisableMusic diff --git a/common_syms/engine/sprite.txt b/common_syms/engine/sprite.txt deleted file mode 100644 index fe38dc61f..000000000 --- a/common_syms/engine/sprite.txt +++ /dev/null @@ -1,12 +0,0 @@ -gSpriteOrder -gSpriteTileAllocBitmap -gSpriteCoordOffsetX -gOamLimit -gReservedSpriteTileCount -gSpriteCopyRequestCount -gSpriteCopyRequests -gSpriteCoordOffsetY -gOamMatrices -gShouldProcessSpriteCopyRequests -gOamMatrixAllocBitmap -gReservedSpritePaletteCount diff --git a/common_syms/engine/string_util.txt b/common_syms/engine/string_util.txt deleted file mode 100644 index 1ee62aaad..000000000 --- a/common_syms/engine/string_util.txt +++ /dev/null @@ -1 +0,0 @@ -gUnknownStringVar diff --git a/common_syms/engine/task.txt b/common_syms/engine/task.txt deleted file mode 100644 index 6601bd11b..000000000 --- a/common_syms/engine/task.txt +++ /dev/null @@ -1 +0,0 @@ -gTasks diff --git a/common_syms/field/field_camera.txt b/common_syms/field/field_camera.txt deleted file mode 100644 index 7aad967f8..000000000 --- a/common_syms/field/field_camera.txt +++ /dev/null @@ -1,3 +0,0 @@ -gUnknown_03004880 -gUnknown_03004898 -gUnknown_0300489C diff --git a/common_syms/field/field_control_avatar.txt b/common_syms/field/field_control_avatar.txt deleted file mode 100644 index 040a9e6c1..000000000 --- a/common_syms/field/field_control_avatar.txt +++ /dev/null @@ -1 +0,0 @@ -gSelectedMapObject diff --git a/common_syms/field/field_map_obj.txt b/common_syms/field/field_map_obj.txt deleted file mode 100644 index 32d8b1915..000000000 --- a/common_syms/field/field_map_obj.txt +++ /dev/null @@ -1 +0,0 @@ -gMapObjects diff --git a/common_syms/field/fieldmap.txt b/common_syms/field/fieldmap.txt deleted file mode 100644 index 7819b3b40..000000000 --- a/common_syms/field/fieldmap.txt +++ /dev/null @@ -1 +0,0 @@ -gUnknown_03004870 diff --git a/common_syms/field/overworld.txt b/common_syms/field/overworld.txt deleted file mode 100644 index ecdb190b2..000000000 --- a/common_syms/field/overworld.txt +++ /dev/null @@ -1,4 +0,0 @@ -word_3004858 -gFieldCallback -gUnknown_03004860 -gFieldLinkPlayerCount diff --git a/common_syms/field/start_menu.txt b/common_syms/field/start_menu.txt deleted file mode 100644 index 05beaf57c..000000000 --- a/common_syms/field/start_menu.txt +++ /dev/null @@ -1 +0,0 @@ -gMenuCallback diff --git a/common_syms/field/tv.txt b/common_syms/field/tv.txt deleted file mode 100644 index 829139f8f..000000000 --- a/common_syms/field/tv.txt +++ /dev/null @@ -1 +0,0 @@ -gUnknown_03005D38 diff --git a/common_syms/libs/agb_flash.txt b/common_syms/libs/agb_flash.txt deleted file mode 100644 index cb421ec80..000000000 --- a/common_syms/libs/agb_flash.txt +++ /dev/null @@ -1,10 +0,0 @@ -gFlashTimeoutFlag -PollFlashStatus -WaitForFlashWrite -ProgramFlashSector -gFlash -ProgramFlashByte -gFlashNumRemainingBytes -EraseFlashChip -EraseFlashSector -gFlashMaxTime diff --git a/common_syms/libs/m4a_2.txt b/common_syms/libs/m4a_2.txt deleted file mode 100644 index a80d8a79d..000000000 --- a/common_syms/libs/m4a_2.txt +++ /dev/null @@ -1,12 +0,0 @@ -gSoundInfo -gPokemonCrySongs -gPokemonCryMusicPlayers -gMPlayJumpTable -gCgbChans -gPokemonCryTracks -gPokemonCrySong -gMPlay_BGM -gMPlay_SE1 -gMPlay_SE2 -gMPlayMemAccArea -gMPlay_SE3 diff --git a/common_syms/pokemon/pokeblock_feed.txt b/common_syms/pokemon/pokeblock_feed.txt deleted file mode 100644 index 827e6526e..000000000 --- a/common_syms/pokemon/pokeblock_feed.txt +++ /dev/null @@ -1,12 +0,0 @@ -gPokeblockFeedPokeSprite -gPokeblockFeedMonSpecies -gPokeblockMonNotFlipped -gPokeblockFeedMonSpriteID -gPokeblockFeedMonNature -gUnknown_03005F34 -gPokeblockFeedUnused0 -gUnknown_03005F3C -gUnknown_03005F40 -gPokeblockFeedPokeSpriteCopy -gUnknown_03005F94 -gUnknown_03005FA0 diff --git a/common_syms/pokemon/pokedex.txt b/common_syms/pokemon/pokedex.txt deleted file mode 100644 index 18b14f3ed..000000000 --- a/common_syms/pokemon/pokedex.txt +++ /dev/null @@ -1,2 +0,0 @@ -gUnknown_03005CE8 -gUnknown_03005CEC diff --git a/common_syms/pokemon/pokemon_1.txt b/common_syms/pokemon/pokemon_1.txt deleted file mode 100644 index c588d53a7..000000000 --- a/common_syms/pokemon/pokemon_1.txt +++ /dev/null @@ -1,4 +0,0 @@ -gPlayerPartyCount -gPlayerParty -gEnemyPartyCount -gEnemyParty diff --git a/common_syms/pokemon/pokemon_menu.txt b/common_syms/pokemon/pokemon_menu.txt deleted file mode 100644 index 98a1bf53b..000000000 --- a/common_syms/pokemon/pokemon_menu.txt +++ /dev/null @@ -1,2 +0,0 @@ -gLastFieldPokeMenuOpened -gUnknown_03005CE4 diff --git a/common_syms/rom3.txt b/common_syms/rom3.txt deleted file mode 100644 index 06a965ff6..000000000 --- a/common_syms/rom3.txt +++ /dev/null @@ -1 +0,0 @@ -gBattleBuffersTransferData diff --git a/common_syms/scanline_effect.txt b/common_syms/scanline_effect.txt deleted file mode 100644 index 280e7f891..000000000 --- a/common_syms/scanline_effect.txt +++ /dev/null @@ -1,2 +0,0 @@ -gScanlineEffect -gScanlineEffectRegBuffers diff --git a/common_syms/scene/berry_blender.txt b/common_syms/scene/berry_blender.txt deleted file mode 100644 index 524a31411..000000000 --- a/common_syms/scene/berry_blender.txt +++ /dev/null @@ -1,4 +0,0 @@ -gUnknown_03004830 -gInGameOpponentsNo -gUnknown_03004840 -gBerryBlenderData diff --git a/common_syms/scene/contest_painting.txt b/common_syms/scene/contest_painting.txt deleted file mode 100644 index 2e8490348..000000000 --- a/common_syms/scene/contest_painting.txt +++ /dev/null @@ -1,5 +0,0 @@ -gUnknown_03005E10 -gUnknown_03005E20 -gUnknown_03005E40 -gUnknown_03005E8C -gUnknown_03005E90 diff --git a/common_syms/scene/cute_sketch.txt b/common_syms/scene/cute_sketch.txt deleted file mode 100644 index e69de29bb..000000000 --- a/common_syms/scene/cute_sketch.txt +++ /dev/null diff --git a/common_syms/scene/egg_hatch.txt b/common_syms/scene/egg_hatch.txt deleted file mode 100644 index 891ccc104..000000000 --- a/common_syms/scene/egg_hatch.txt +++ /dev/null @@ -1 +0,0 @@ -gEggHatchData diff --git a/common_syms/scene/evolution_scene.txt b/common_syms/scene/evolution_scene.txt deleted file mode 100644 index 137cd3e05..000000000 --- a/common_syms/scene/evolution_scene.txt +++ /dev/null @@ -1 +0,0 @@ -gCB2_AfterEvolution diff --git a/common_syms/scene/intro.txt b/common_syms/scene/intro.txt deleted file mode 100644 index d069b1014..000000000 --- a/common_syms/scene/intro.txt +++ /dev/null @@ -1,2 +0,0 @@ -gIntroFrameCounter -gMultibootProgramStruct diff --git a/ld_script.sed b/ld_script.sed deleted file mode 100644 index b91542b6f..000000000 --- a/ld_script.sed +++ /dev/null @@ -1,14 +0,0 @@ -/<EWRAM>/ { - r sym_ewram.ld - d -} - -/<BSS>/ { - r sym_bss.ld - d -} - -/<COMMON>/ { - r sym_common.ld - d -} diff --git a/ld_script.txt b/ld_script.txt index 82ba46b9c..5dcdf948d 100644 --- a/ld_script.txt +++ b/ld_script.txt @@ -9,7 +9,7 @@ SECTIONS { ewram (NOLOAD) : ALIGN(4) { -<EWRAM> + INCLUDE "sym_ewram.ld" . = 0x40000; } @@ -20,13 +20,13 @@ SECTIONS { ALIGN(4) { /* .bss starts at 0x3000000 */ -<BSS> + INCLUDE "sym_bss.ld" /* .bss.code starts at 0x3000F60 */ src/libs/m4a_2.o(.bss.code); /* COMMON starts at 0x3001760 */ -<COMMON> + INCLUDE "sym_common.ld" tools/agbcc/lib/libc.a:sbrkr.o(COMMON); end = .; . = 0x8000; diff --git a/src/field/tv.c b/src/field/tv.c index efda4b925..8bd36bb9c 100644 --- a/src/field/tv.c +++ b/src/field/tv.c @@ -47,8 +47,6 @@ struct UnkTvStruct s8 var0; }; -extern u8 gUnknown_0300430A[11]; - struct OutbreakPokemon { /*0x00*/ u16 species; diff --git a/sym_bss.txt b/sym_bss.txt index 6e95a609f..5e22693fd 100644 --- a/sym_bss.txt +++ b/sym_bss.txt @@ -1,42 +1,42 @@ - .include "src/engine/main.o" - .include "src/engine/sprite.o" - .include "src/engine/text.o" - .include "src/engine/string_util.o" - .include "src/engine/link.o" - .include "src/engine/rtc.o" - .include "src/field/daycare.o" - .include "src/engine/trade.o" - .include "src/scene/berry_blender.o" - .include "src/engine/play_time.o" - .include "src/field/overworld.o" - .include "src/field/field_camera.o" - .include "src/field/field_map_obj.o" - .include "src/field/field_message_box.o" - .include "src/engine/text_window.o" - .include "src/engine/script.o" - .include "src/field/start_menu.o" - .include "src/engine/menu.o" - .include "src/engine/tileset_anim.o" - .include "src/engine/sound.o" - .include "src/field/field_weather.o" - .include "src/field/field_effect.o" - .include "src/field/item_menu.o" - .include "src/field/shop.o" - .include "src/engine/record_mixing.o" - .include "src/field/tv.o" - .include "src/battle/battle_anim_80CA710.o" - .include "src/easy_chat_2.o" - .include "src/pokenav_before.o" - .include "src/field/mauville_man.o" - .include "src/field/menu_helpers.o" - .include "src/scene/contest_painting.o" - .include "src/field/pokeblock.o" - .include "src/field/field_specials.o" - .include "src/pokemon/learn_move.o" - .include "src/field/player_pc.o" - .include "src/libs/m4a_1.o" - .include "src/libs/agb_flash.o" - .include "src/libs/siirtc.o" - .include "tools/agbcc/lib/libgcc.a:dp-bit.o" - .include "tools/agbcc/lib/libgcc.a:fp-bit.o" - .include "tools/agbcc/lib/libc.a:syscalls.o" +. = ALIGN(4); src/engine/main.o(.bss); +. = ALIGN(4); src/engine/sprite.o(.bss); +. = ALIGN(4); src/engine/text.o(.bss); +. = ALIGN(4); src/engine/string_util.o(.bss); +. = ALIGN(4); src/engine/link.o(.bss); +. = ALIGN(4); src/engine/rtc.o(.bss); +. = ALIGN(4); src/field/daycare.o(.bss); +. = ALIGN(4); src/engine/trade.o(.bss); +. = ALIGN(4); src/scene/berry_blender.o(.bss); +. = ALIGN(4); src/engine/play_time.o(.bss); +. = ALIGN(4); src/field/overworld.o(.bss); +. = ALIGN(4); src/field/field_camera.o(.bss); +. = ALIGN(4); src/field/field_map_obj.o(.bss); +. = ALIGN(4); src/field/field_message_box.o(.bss); +. = ALIGN(4); src/engine/text_window.o(.bss); +. = ALIGN(4); src/engine/script.o(.bss); +. = ALIGN(4); src/field/start_menu.o(.bss); +. = ALIGN(4); src/engine/menu.o(.bss); +. = ALIGN(4); src/engine/tileset_anim.o(.bss); +. = ALIGN(4); src/engine/sound.o(.bss); +. = ALIGN(4); src/field/field_weather.o(.bss); +. = ALIGN(4); src/field/field_effect.o(.bss); +. = ALIGN(4); src/field/item_menu.o(.bss); +. = ALIGN(4); src/field/shop.o(.bss); +. = ALIGN(4); src/engine/record_mixing.o(.bss); +. = ALIGN(4); src/field/tv.o(.bss); +. = ALIGN(4); src/battle/battle_anim_80CA710.o(.bss); +. = ALIGN(4); src/easy_chat_2.o(.bss); +. = ALIGN(4); src/pokenav_before.o(.bss); +. = ALIGN(4); src/field/mauville_man.o(.bss); +. = ALIGN(4); src/field/menu_helpers.o(.bss); +. = ALIGN(4); src/scene/contest_painting.o(.bss); +. = ALIGN(4); src/field/pokeblock.o(.bss); +. = ALIGN(4); src/field/field_specials.o(.bss); +. = ALIGN(4); src/pokemon/learn_move.o(.bss); +. = ALIGN(4); src/field/player_pc.o(.bss); +. = ALIGN(4); src/libs/m4a_1.o(.bss); +. = ALIGN(4); src/libs/agb_flash.o(.bss); +. = ALIGN(4); src/libs/siirtc.o(.bss); +. = ALIGN(4); tools/agbcc/lib/libgcc.a:dp-bit.o(.bss); +. = ALIGN(4); tools/agbcc/lib/libgcc.a:fp-bit.o(.bss); +. = ALIGN(4); tools/agbcc/lib/libc.a:syscalls.o(.bss); diff --git a/sym_common.txt b/sym_common.txt index a37aa05ff..64e87c046 100644 --- a/sym_common.txt +++ b/sym_common.txt @@ -1,240 +1,315 @@ - .include "engine/main.o" - .include "engine/sprite.o" - .include "engine/string_util.o" - .include "engine/link.o" - .include "engine/rtc.o" - .include "rom3.o" - -@ battle - - .align 2 -gBattle_BG3_X: @ 30041B0 - .space 0x4 - -gBattle_BG1_Y: @ 30041B4 - .space 0x4 - -gBattle_BG3_Y: @ 30041B8 - .space 0x8 - -gBattleTextBuff1: @ 30041C0 - .space 0x10 - -gUnknown_030041D0: @ 30041D0 - .space 0x30 - -gBattle_WIN1H: @ 3004200 - .space 0x10 - -gUnknown_03004210: @ 3004210 - .space 0x30 - -gBattle_WIN0V: @ 3004240 - .space 0x4 - -gBattle_WIN1V: @ 3004244 - .space 0xC - -gUnknown_03004250: @ 3004250 - .space 0x30 - -gBattle_BG2_Y: @ 3004280 - .space 0x4 - -gUnknown_03004284: @ 3004284 - .space 0x4 - -gBattle_BG2_X: @ 3004288 - .space 0x4 - -gBattleTerrain: @ 300428C - .space 0x4 - -gBattleTextBuff2: @ 3004290 - .space 0x10 - -gBattle_BG0_Y: @ 30042A0 - .space 0x4 - -gBattle_BG0_X: @ 30042A4 - .space 0xC - -gBattleTextBuff3: @ 30042B0 - .space 0x10 - -gBattle_BG1_X: @ 30042C0 - .space 0x4 - -gBattle_WIN0H: @ 30042C4 - .space 0xC - -gPreBattleCallback1: @ 30042D0 - .space 0x4 - -gBattleMainFunc: @ 30042D4 - .space 0xC - -gBattleResults: @ 30042E0 - .space 0x1C - -gUnknown_030042FC: @ 30042FC - .space 0xE - -gUnknown_0300430A: @ 300430A - .space 0xC - -gUnknown_03004316: @ 3004316 - .space 0xE - -gLeveledUpInBattle: @ 3004324 - .space 0xC - -gBattleBankFunc: @ 3004330 - .space 0x10 - -gHealthboxIDs: @ 3004340 - .space 0x4 - -gUnknown_03004344: @ 3004344 - .space 0x4 - -gUnknown_03004348: @ 3004348 - .space 0x4 - -gUnknown_0300434C: @ 300434C - .space 0x4 - - .include "pokemon/pokemon_1.o" - .include "engine/random.o" - .include "scene/egg_hatch.o" - .include "engine/load_save.o" - -@ trade - -gUnknown_03004824: @ 3004824 - .space 0x4 - -gUnknown_03004828: @ 3004828 - .space 0x8 - - .include "scene/berry_blender.o" - .include "field/overworld.o" - .include "field/fieldmap.o" - .include "field/field_camera.o" - .include "field/field_map_obj.o" - .include "field/field_control_avatar.o" - -@ party_menu? - - .align 2 -gPokemonItemUseCallback: @ 3004AE4 - .space 0x4 - - .include "field/start_menu.o" - .include "engine/sound.o" - .include "battle/battle_anim.o" - .include "engine/task.o" - .include "debug/mori_debug_menu.o" - -@ unknown_task - .include "scanline_effect.o" - .include "pokemon/pokemon_menu.o" - .include "pokemon/pokedex.o" - -@ pokemon_summary_screen - - .align 4 -gUnknown_03005CF0: @ 3005CF0 - .space 0x10 - -@ item_menu - - .align 4 -gFieldItemUseCallback: @ 3005D00 - .space 0x10 - -gBagPocketScrollStates: @ 3005D10 - .space 0x14 - -gCurrentBagPocketItemSlots: @ 3005D24 - .space 0x4 - -@ contest - - .align 2 -gUnknown_03005D28: @ 3005D28 - .space 0x4 - - .include "engine/record_mixing.o" - .include "debug/sound_check_menu.o" - .include "field/tv.o" - - .space 0x64 @ unused variable? - -@ mauville_old_man - - .align 4 -gUnknown_03005DA0: @ 3005DA0 - .space 0x48 - -@ cute_sketch - -gUnknown_03005DE8: @ 3005DE8 - .space 0x4 - -gUnknown_03005DEC: @ 3005DEC - .space 0x4 - -gUnknown_03005DF0: @ 3005DF0 - .space 0x4 - -gUnknown_03005DF4: @ 3005DF4 - .space 0x4 - -gUnknown_03005DF8: @ 3005DF8 - .space 0x4 - -gUnknown_03005DFC: @ 3005DFC - .space 0x4 - -gUnknown_03005E00: @ 3005E00 - .space 0x4 - -gUnknown_03005E04: @ 3005E04 - .space 0x4 - -gUnknown_03005E08: @ 3005E08 - .space 0x4 - -gUnknown_03005E0C: @ 3005E0C - .space 0x4 - - .include "scene/contest_painting.o" - .include "scene/evolution_scene.o" - -@ pokedex_cry_screen - -gUnknown_03005E98: @ 3005E98 - .space 0x4 - - .include "engine/save.o" - - .space 0x10 @ unused variable? - - .include "scene/intro.o" - -@ battle_anim_813F0F4 - - .align 2 -gUnknown_03005F0C: @ 3005F0C - .space 0x4 - -gUnknown_03005F10: @ 3005F10 - .space 0x4 - -gUnknown_03005F14: @ 3005F14 - .space 0xC - - .include "pokemon/pokeblock_feed.o" - .include "libs/m4a_2.o" - .include "libs/agb_flash.o" +#define SYMBOL(name, size) \ + . = ALIGN (((size) > 16) ? 16 : (size)); \ + . = ALIGN(4); \ + name = .; \ + . += size; + + +// main.c +SYMBOL(gKeyRepeatStartDelay, 4) +SYMBOL(gLinkTransferringData, 4) +SYMBOL(gMain, 1088) +SYMBOL(gKeyRepeatContinueDelay, 4) +SYMBOL(gSoftResetDisabled, 4) +SYMBOL(gIntrTable, 56) +SYMBOL(gLinkVSyncDisabled, 4) +SYMBOL(IntrMain_Buffer, 2048) +SYMBOL(gPcmDmaCounter, 4) + +// sprite.c +SYMBOL(gSpriteOrder, 64) +SYMBOL(gSpriteTileAllocBitmap, 128) +SYMBOL(gSpriteCoordOffsetX, 4) +SYMBOL(gOamLimit, 4) +SYMBOL(gReservedSpriteTileCount, 4) +SYMBOL(gSpriteCopyRequestCount, 4) +SYMBOL(gSpriteCopyRequests, 768) +SYMBOL(gSpriteCoordOffsetY, 4) +SYMBOL(gOamMatrices, 256) +SYMBOL(gShouldProcessSpriteCopyRequests, 4) +SYMBOL(gOamMatrixAllocBitmap, 4) +SYMBOL(gReservedSpritePaletteCount, 4) + +// string_util.c +SYMBOL(gUnknownStringVar, 16) + +// link.c +SYMBOL(word_3002910, 8) +SYMBOL(gLinkDebugValue1, 4) +SYMBOL(localLinkPlayerBlock, 60) +SYMBOL(gLinkErrorOccurred, 4) +. += 0x4; +SYMBOL(gLinkDebugValue2, 4) +. += 0x4; +#ifdef GERMAN +SYMBOL(deUnkValue1, 4) +SYMBOL(deUnkValue2, 4) +#endif +SYMBOL(gLinkPlayerPending, 4) +SYMBOL(gLinkPlayers, 112) +SYMBOL(gBlockReceived, 4) +. += 0x4; +SYMBOL(gLinkHeldKeys, 4) +SYMBOL(gLinkTimeOutCounter, 4) +. += 0x4; +SYMBOL(localLinkPlayer, 28) +SYMBOL(gRecvCmds, 64) +SYMBOL(gLinkStatus, 4) +SYMBOL(gLinkDummyBool, 4) +SYMBOL(byte_3002A68, 4) +SYMBOL(gBlockSendBuffer, 256) +SYMBOL(u8_array_3002B70, 4) +SYMBOL(gLinkType, 4) +SYMBOL(u8_array_3002B78, 4) +SYMBOL(gBlockRecvBuffer, 1024) +SYMBOL(gSuppressLinkErrorMessage, 4) +SYMBOL(gSavedLinkPlayerCount, 4) +SYMBOL(gSendCmd, 16) +SYMBOL(gSavedMultiplayerId, 4) +SYMBOL(gReceivedRemoteLinkPlayers, 4) +SYMBOL(gLinkTestBGInfo, 16) +SYMBOL(gLinkCallback, 4) +SYMBOL(gSavedLinkPlayers, 112) +SYMBOL(gShouldAdvanceLinkState, 4) +SYMBOL(gLinkTestBlockChecksums, 8) +. += 0x4; +SYMBOL(gBlockRequestType, 4) +. += 0x8; +SYMBOL(gLastSendQueueCount, 4) +SYMBOL(gLink, 4032) +SYMBOL(gLastRecvQueueCount, 4) +SYMBOL(gLinkSavedIme, 4) + +// rtc.c +SYMBOL(gLocalTime, 8) + +// battle +SYMBOL(gBattleBuffersTransferData, 368) +SYMBOL(gBattle_BG3_X, 4) +SYMBOL(gBattle_BG1_Y, 4) +SYMBOL(gBattle_BG3_Y, 4) +SYMBOL(gBattleTextBuff1, 16) +SYMBOL(gUnknown_030041D0, 48) +SYMBOL(gBattle_WIN1H, 4) +SYMBOL(gUnknown_03004210, 48) +SYMBOL(gBattle_WIN0V, 4) +SYMBOL(gBattle_WIN1V, 4) +SYMBOL(gUnknown_03004250, 48) +SYMBOL(gBattle_BG2_Y, 4) +SYMBOL(gUnknown_03004284, 4) +SYMBOL(gBattle_BG2_X, 4) +SYMBOL(gBattleTerrain, 4) +SYMBOL(gBattleTextBuff2, 16) +SYMBOL(gBattle_BG0_Y, 4) +SYMBOL(gBattle_BG0_X, 4) +SYMBOL(gBattleTextBuff3, 16) +SYMBOL(gBattle_BG1_X, 4) +SYMBOL(gBattle_WIN0H, 4) +. += 0x8; +SYMBOL(gPreBattleCallback1, 4) +gBattleMainFunc = .; +. += 0xC; +gBattleResults = .; +. += 0x1C; +// Why is this not aligned? +gUnknown_030042FC = .; +. += 0x1A; +gUnknown_03004316 = .; +. += 0xE; +gLeveledUpInBattle = .; +. += 0xC; +SYMBOL(gBattleBankFunc, 16) +SYMBOL(gHealthboxIDs, 4) +SYMBOL(gUnknown_03004344, 4) +SYMBOL(gUnknown_03004348, 4) +SYMBOL(gUnknown_0300434C, 4) + +// pokemon_1.c +SYMBOL(gPlayerPartyCount, 4) +SYMBOL(gPlayerParty, 600) +SYMBOL(gEnemyPartyCount, 4) +SYMBOL(gEnemyParty, 600) + +// random.c +SYMBOL(gRngValue, 4) + +// egg_hatch.c +SYMBOL(gEggHatchData, 4) + +// load_save.c +SYMBOL(gFlashMemoryPresent, 4) + +// ??? +SYMBOL(gUnknown_03004824, 4) +SYMBOL(gUnknown_03004828, 4) +. += 0x4; + +// berry_blender.c +SYMBOL(gUnknown_03004830, 4) +SYMBOL(gInGameOpponentsNo, 4) +SYMBOL(gUnknown_03004840, 20) +SYMBOL(gBerryBlenderData, 4) + +// overworld.c +SYMBOL(word_3004858, 4) +SYMBOL(gFieldCallback, 4) +SYMBOL(gUnknown_03004860, 4) +SYMBOL(gFieldLinkPlayerCount, 4) + +// fieldmap.c +. = ALIGN(16); +gUnknown_03004870 = .; +. += 0xC; + +// field_camera.c +SYMBOL(gUnknown_03004880, 24) +SYMBOL(gUnknown_03004898, 4) +SYMBOL(gUnknown_0300489C, 4) + +// field_map_obj.c +SYMBOL(gMapObjects, 576) + +// field_control_avatar.c +SYMBOL(gSelectedMapObject, 4) + +// ??? +SYMBOL(gPokemonItemUseCallback, 4) + +// start_menu.c +SYMBOL(gMenuCallback, 4) + +// sound.c +SYMBOL(gDisableMusic, 4) + +// battle_anim.c +SYMBOL(gSoundAnimFramesToWait, 4) +SYMBOL(gBattleAnimArgs, 16) +SYMBOL(gAnimSpriteIndexArray, 16) + +// task.c +SYMBOL(gTasks, 640) + +// mori_debug_menu.c +SYMBOL(gUnknown_03004DA0, 32) + +// scanline_effect.c +SYMBOL(gScanlineEffect, 32) +SYMBOL(gScanlineEffectRegBuffers, 3840) + +// pokemon_menu.c +SYMBOL(gLastFieldPokeMenuOpened, 4) +SYMBOL(gUnknown_03005CE4, 4) + +// pokedex.c +SYMBOL(gUnknown_03005CE8, 4) +SYMBOL(gUnknown_03005CEC, 4) + +// ??? +SYMBOL(gUnknown_03005CF0, 4) +// huh? +. = ALIGN(16); +gFieldItemUseCallback = .; +. += 0x10; +gBagPocketScrollStates = .; +. += 0x14; +SYMBOL(gCurrentBagPocketItemSlots, 4) +SYMBOL(gUnknown_03005D28, 4) + +// record_mixing.c +SYMBOL(gUnknown_03005D2C, 4) + +// sound_check_menu.c +SYMBOL(gUnknown_03005D30, 4) +SYMBOL(gSoundTestCryNum, 4) + +// tv.c +SYMBOL(gUnknown_03005D38, 4) +. += 0x64; // huge gap? + +// ??? +SYMBOL(gUnknown_03005DA0, 0x48) +SYMBOL(gUnknown_03005DE8, 4) +SYMBOL(gUnknown_03005DEC, 4) +SYMBOL(gUnknown_03005DF0, 4) +SYMBOL(gUnknown_03005DF4, 4) +SYMBOL(gUnknown_03005DF8, 4) +SYMBOL(gUnknown_03005DFC, 4) +SYMBOL(gUnknown_03005E00, 4) +SYMBOL(gUnknown_03005E04, 4) +SYMBOL(gUnknown_03005E08, 4) +SYMBOL(gUnknown_03005E0C, 4) + +// contest_painting.c +SYMBOL(gUnknown_03005E10, 4) +SYMBOL(gUnknown_03005E20, 32) +SYMBOL(gUnknown_03005E40, 76) +SYMBOL(gUnknown_03005E8C, 4) +SYMBOL(gUnknown_03005E90, 4) + +// evolution_scene.c +SYMBOL(gCB2_AfterEvolution, 4) + +// ??? +SYMBOL(gUnknown_03005E98, 4) + +// save.c +SYMBOL(gFirstSaveSector, 4) +SYMBOL(gPrevSaveCounter, 4) +SYMBOL(gLastKnownGoodSector, 4) +SYMBOL(gDamagedSaveSectors, 4) +SYMBOL(gSaveCounter, 4) +SYMBOL(gFastSaveSection, 4) +SYMBOL(gUnknown_03005EB4, 4) +SYMBOL(gSaveFileStatus, 4) +SYMBOL(gGameContinueCallback, 4) +. += 0x10; + +// intro.c +SYMBOL(gIntroFrameCounter, 4) +SYMBOL(gMultibootProgramStruct, 44) + +// ??? +SYMBOL(gUnknown_03005F0C, 4) +SYMBOL(gUnknown_03005F10, 4) +gUnknown_03005F14 = .; +. += 0xC; + +// pokeblock_feed.c +SYMBOL(gPokeblockFeedPokeSprite, 4) +SYMBOL(gPokeblockFeedMonSpecies, 4) +SYMBOL(gPokeblockMonNotFlipped, 4) +SYMBOL(gPokeblockFeedMonSpriteID, 4) +SYMBOL(gPokeblockFeedMonNature, 4) +SYMBOL(gUnknown_03005F34, 4) +SYMBOL(gPokeblockFeedUnused0, 4) +SYMBOL(gUnknown_03005F3C, 4) +SYMBOL(gUnknown_03005F40, 4) +SYMBOL(gPokeblockFeedPokeSpriteCopy, 68) +SYMBOL(gUnknown_03005F94, 4) +SYMBOL(gUnknown_03005FA0, 48) + +// m4a_2.c +SYMBOL(gSoundInfo, 4016) +SYMBOL(gPokemonCrySongs, 104) +SYMBOL(gPokemonCryMusicPlayers, 128) +SYMBOL(gMPlayJumpTable, 144) +SYMBOL(gCgbChans, 256) +SYMBOL(gPokemonCryTracks, 320) +SYMBOL(gPokemonCrySong, 52) +SYMBOL(gMPlay_BGM, 64) +SYMBOL(gMPlay_SE1, 64) +SYMBOL(gMPlay_SE2, 64) +SYMBOL(gMPlayMemAccArea, 16) +SYMBOL(gMPlay_SE3, 64) + +// agb_flash.c +SYMBOL(gFlashTimeoutFlag, 4) +SYMBOL(PollFlashStatus, 4) +SYMBOL(WaitForFlashWrite, 4) +SYMBOL(ProgramFlashSector, 4) +SYMBOL(gFlash, 4) +SYMBOL(ProgramFlashByte, 4) +SYMBOL(gFlashNumRemainingBytes, 4) +SYMBOL(EraseFlashChip, 4) +SYMBOL(EraseFlashSector, 4) +SYMBOL(gFlashMaxTime, 4) diff --git a/sym_ewram.txt b/sym_ewram.txt index d2fd0aabe..f6b4852a8 100644 --- a/sym_ewram.txt +++ b/sym_ewram.txt @@ -1,471 +1,471 @@ - .include "src/engine/main.o" - .include "src/engine/sprite.o" - .include "src/engine/text.o" - .include "src/engine/string_util.o" +. = ALIGN(4); src/engine/main.o(ewram_data); +. = ALIGN(4); src/engine/sprite.o(ewram_data); +. = ALIGN(4); src/engine/text.o(ewram_data); +. = ALIGN(4); src/engine/string_util.o(ewram_data); - .space 0x2E8 +. += 0x2E8; - .include "src/engine/link.o" - .include "src/rom3.o" +. = ALIGN(4); src/engine/link.o(ewram_data); +. = ALIGN(4); src/rom3.o(ewram_data); -@ battle +/* battle */ - .align 2 -gUnknown_020238C8: @ 20238C8 - .space 0x4 + . = ALIGN(4); +gUnknown_020238C8 = .; /* 20238C8 */ + . += 0x4; -gDisplayedStringBattle: @ 20238CC - .space 0x12C +gDisplayedStringBattle = .; /* 20238CC */ + . += 0x12C; -gBattleTypeFlags: @ 20239F8 - .space 0x4 +gBattleTypeFlags = .; /* 20239F8 */ + . += 0x4; -gUnknown_020239FC: @ 20239FC - .space 0x4 +gUnknown_020239FC = .; /* 20239FC */ + . += 0x4; -gUnknown_02023A00: @ 2023A00 - .space 0x4 +gUnknown_02023A00 = .; /* 2023A00 */ + . += 0x4; -gUnknown_02023A04: @ 2023A04 - .space 0x10 +gUnknown_02023A04 = .; /* 2023A04 */ + . += 0x10; -gUnknown_02023A14: @ 2023A14 - .space 0x4C +gUnknown_02023A14 = .; /* 2023A14 */ + . += 0x4C; -gBattleBufferA: @ 2023A60 - .space 0x2 +gBattleBufferA = .; /* 2023A60 */ + . += 0x2; -gUnknown_02023A62: @ 2023A62 - .space 0x1 +gUnknown_02023A62 = .; /* 2023A62 */ + . += 0x1; -gUnknown_02023A63: @ 2023A63 - .space 0x1 +gUnknown_02023A63 = .; /* 2023A63 */ + . += 0x1; -gUnknown_02023A64: @ 2023A64 - .space 0x7FC +gUnknown_02023A64 = .; /* 2023A64 */ + . += 0x7FC; -gBattleBufferB: @ 2024260 - .space 0x4 +gBattleBufferB = .; /* 2024260 */ + . += 0x4; -gUnknown_02024264: @ 2024264 - .space 0x7FC +gUnknown_02024264 = .; /* 2024264 */ + . += 0x7FC; -gActiveBank: @ 2024A60 - .space 0x4 +gActiveBank = .; /* 2024A60 */ + . += 0x4; -gBattleExecBuffer: @ 2024A64 - .space 0x4 +gBattleExecBuffer = .; /* 2024A64 */ + . += 0x4; -gNoOfAllBanks: @ 2024A68 - .space 0x2 +gNoOfAllBanks = .; /* 2024A68 */ + . += 0x2; -gBattlePartyID: @ 2024A6A - .space 0x8 +gBattlePartyID = .; /* 2024A6A */ + . += 0x8; -gBanksBySide: @ 2024A72 - .space 0x4 +gBanksBySide = .; /* 2024A72 */ + . += 0x4; -gActionsByTurnOrder: @ 2024A76 - .space 0x4 +gActionsByTurnOrder = .; /* 2024A76 */ + . += 0x4; -gBanksByTurnOrder: @ 2024A7A - .space 0x4 +gBanksByTurnOrder = .; /* 2024A7A */ + . += 0x4; -gCurrentTurnActionNumber: @ 2024A7E - .space 0x1 +gCurrentTurnActionNumber = .; /* 2024A7E */ + . += 0x1; -gCurrentActionFuncId: @ 2024A7F - .space 0x1 +gCurrentActionFuncId = .; /* 2024A7F */ + . += 0x1; -gBattleMons: @ 2024A80 - .space 0xC +gBattleMons = .; /* 2024A80 */ + . += 0xC; -gUnknown_02024A8C: @ 2024A8C - .space 0xC +gUnknown_02024A8C = .; /* 2024A8C */ + . += 0xC; -gUnknown_02024A98: @ 2024A98 - .space 0xC +gUnknown_02024A98 = .; /* 2024A98 */ + . += 0xC; -gUnknown_02024AA4: @ 2024AA4 - .space 0x4 +gUnknown_02024AA4 = .; /* 2024AA4 */ + . += 0x4; -gUnknown_02024AA8: @ 2024AA8 - .space 0x24 +gUnknown_02024AA8 = .; /* 2024AA8 */ + . += 0x24; -gUnknown_02024ACC: @ 2024ACC - .space 0x4 +gUnknown_02024ACC = .; /* 2024ACC */ + . += 0x4; -gUnknown_02024AD0: @ 2024AD0 - .space 0x110 +gUnknown_02024AD0 = .; /* 2024AD0 */ + . += 0x110; -gObjectBankIDs: @ 2024BE0 - .space 0x4 +gObjectBankIDs = .; /* 2024BE0 */ + . += 0x4; -gCurrMovePos: @ 2024BE4 - .space 0x1 +gCurrMovePos = .; /* 2024BE4 */ + . += 0x1; -gUnknown_02024BE5: @ 2024BE5 - .space 0x1 +gUnknown_02024BE5 = .; /* 2024BE5 */ + . += 0x1; -gCurrentMove: @ 2024BE6 - .space 0x2 +gCurrentMove = .; /* 2024BE6 */ + . += 0x2; -gChosenMove: @ 2024BE8 - .space 0x2 +gChosenMove = .; /* 2024BE8 */ + . += 0x2; -gRandomMove: @ 2024BEA - .space 0x2 +gRandomMove = .; /* 2024BEA */ + . += 0x2; -gBattleMoveDamage: @ 2024BEC - .space 0x4 +gBattleMoveDamage = .; /* 2024BEC */ + . += 0x4; -gHpDealt: @ 2024BF0 - .space 0x4 +gHpDealt = .; /* 2024BF0 */ + . += 0x4; -gTakenDmg: @ 2024BF4 - .space 0x10 +gTakenDmg = .; /* 2024BF4 */ + . += 0x10; -gLastUsedItem: @ 2024C04 - .space 0x2 +gLastUsedItem = .; /* 2024C04 */ + . += 0x2; -gLastUsedAbility: @ 2024C06 - .space 0x1 +gLastUsedAbility = .; /* 2024C06 */ + . += 0x1; -gBankAttacker: @ 2024C07 - .space 0x1 +gBankAttacker = .; /* 2024C07 */ + . += 0x1; -gBankTarget: @ 2024C08 - .space 0x1 +gBankTarget = .; /* 2024C08 */ + . += 0x1; -gBank1: @ 2024C09 - .space 0x1 +gBank1 = .; /* 2024C09 */ + . += 0x1; -gEffectBank: @ 2024C0A - .space 0x1 +gEffectBank = .; /* 2024C0A */ + . += 0x1; -gStringBank: @ 2024C0B - .space 0x1 +gStringBank = .; /* 2024C0B */ + . += 0x1; -gAbsentBankFlags: @ 2024C0C - .space 0x1 +gAbsentBankFlags = .; /* 2024C0C */ + . += 0x1; -gCritMultiplier: @ 2024C0D - .space 0x1 +gCritMultiplier = .; /* 2024C0D */ + . += 0x1; -gMultiHitCounter: @ 2024C0E - .space 0x2 +gMultiHitCounter = .; /* 2024C0E */ + . += 0x2; -gBattlescriptCurrInstr: @ 2024C10 - .space 0x8 +gBattlescriptCurrInstr = .; /* 2024C10 */ + . += 0x8; -gActionForBanks: @ 2024C18 - .space 0x4 +gActionForBanks = .; /* 2024C18 */ + . += 0x4; -gUnknown_02024C1C: @ 2024C1C - .space 0x10 +gUnknown_02024C1C = .; /* 2024C1C */ + . += 0x10; -gUnknown_02024C2C: @ 2024C2C - .space 0x8 +gUnknown_02024C2C = .; /* 2024C2C */ + . += 0x8; -gLastUsedMove: @ 2024C34 - .space 0x8 +gLastUsedMove = .; /* 2024C34 */ + . += 0x8; -gLastLandedMoves: @ 2024C3C - .space 0x8 +gLastLandedMoves = .; /* 2024C3C */ + . += 0x8; -gLastHitByType: @ 2024C44 - .space 0x8 +gLastHitByType = .; /* 2024C44 */ + . += 0x8; -gUnknown_02024C4C: @ 2024C4C - .space 0x8 +gUnknown_02024C4C = .; /* 2024C4C */ + . += 0x8; -gLockedMoves: @ 2024C54 - .space 0x8 +gLockedMoves = .; /* 2024C54 */ + . += 0x8; -gUnknown_02024C5C: @ 2024C5C - .space 0x4 +gUnknown_02024C5C = .; /* 2024C5C */ + . += 0x4; -gChosenMovesByBanks: @ 2024C60 - .space 0x8 +gChosenMovesByBanks = .; /* 2024C60 */ + . += 0x8; -gBattleMoveFlags: @ 2024C68 - .space 0x4 +gBattleMoveFlags = .; /* 2024C68 */ + . += 0x4; -gHitMarker: @ 2024C6C - .space 0x4 +gHitMarker = .; /* 2024C6C */ + . += 0x4; -gUnknown_02024C70: @ 2024C70 - .space 0x4 +gUnknown_02024C70 = .; /* 2024C70 */ + . += 0x4; -gTakenDmgBanks: @ 2024C74 - .space 0x4 +gTakenDmgBanks = .; /* 2024C74 */ + . += 0x4; -gUnknown_02024C78: @ 2024C78 - .space 0x2 +gUnknown_02024C78 = .; /* 2024C78 */ + . += 0x2; -gSideAffecting: @ 2024C7A - .space 0x6 +gSideAffecting = .; /* 2024C7A */ + . += 0x6; -gSideTimers: @ 2024C80 - .space 0x18 +gSideTimers = .; /* 2024C80 */ + . += 0x18; -gStatuses3: @ 2024C98 - .space 0x10 +gStatuses3 = .; /* 2024C98 */ + . += 0x10; -gDisableStructs: @ 2024CA8 - .space 0x70 +gDisableStructs = .; /* 2024CA8 */ + . += 0x70; -gPauseCounterBattle: @ 2024D18 - .space 0x2 +gPauseCounterBattle = .; /* 2024D18 */ + . += 0x2; -gPaydayMoney: @ 2024D1A - .space 0x2 +gPaydayMoney = .; /* 2024D1A */ + . += 0x2; -gRandomTurnNumber: @ 2024D1C - .space 0x2 +gRandomTurnNumber = .; /* 2024D1C */ + . += 0x2; -gBattleCommunication: @ 2024D1E - .space 0x1 +gBattleCommunication = .; /* 2024D1E */ + . += 0x1; -gUnknown_02024D1F: @ 2024D1F - .space 0x7 +gUnknown_02024D1F = .; /* 2024D1F */ + . += 0x7; -gBattleOutcome: @ 2024D26 - .space 0x2 +gBattleOutcome = .; /* 2024D26 */ + . += 0x2; -gProtectStructs: @ 2024D28 - .space 0x40 +gProtectStructs = .; /* 2024D28 */ + . += 0x40; -gSpecialStatuses: @ 2024D68 - .space 0x50 +gSpecialStatuses = .; /* 2024D68 */ + . += 0x50; -gBattleWeather: @ 2024DB8 - .space 0x4 +gBattleWeather = .; /* 2024DB8 */ + . += 0x4; -gWishFutureKnock: @ 2024DBC - .space 0x20 +gWishFutureKnock = .; /* 2024DBC */ + . += 0x20; -gUnknown_02024DDC: @ 2024DDC - .space 0xC +gUnknown_02024DDC = .; /* 2024DDC */ + . += 0xC; -gUnknown_02024DE8: @ 2024DE8 - .space 0x2 +gUnknown_02024DE8 = .; /* 2024DE8 */ + . += 0x2; -gSentPokesToOpponent: @ 2024DEA - .space 0x2 +gSentPokesToOpponent = .; /* 2024DEA */ + . += 0x2; -gDynamicBasePower: @ 2024DEC - .space 0x2 +gDynamicBasePower = .; /* 2024DEC */ + . += 0x2; -gExpShareExp: @ 2024DEE - .space 0x2 +gExpShareExp = .; /* 2024DEE */ + . += 0x2; -gEnigmaBerries: @ 2024DF0 - .space 0x8 +gEnigmaBerries = .; /* 2024DF0 */ + . += 0x8; -gUnknown_02024DF8: @ 2024DF8 - .space 0x68 +gUnknown_02024DF8 = .; /* 2024DF8 */ + . += 0x68; -gActionSelectionCursor: @ 2024E60 - .space 0x4 +gActionSelectionCursor = .; /* 2024E60 */ + . += 0x4; -gMoveSelectionCursor: @ 2024E64 - .space 0x4 +gMoveSelectionCursor = .; /* 2024E64 */ + . += 0x4; -gUnknown_02024E68: @ 2024E68 - .space 0x4 +gUnknown_02024E68 = .; /* 2024E68 */ + . += 0x4; -gBankInMenu: @ 2024E6C - .space 0x1 +gBankInMenu = .; /* 2024E6C */ + . += 0x1; -gDoingBattleAnim: @ 2024E6D - .space 0x3 +gDoingBattleAnim = .; /* 2024E6D */ + . += 0x3; -gTransformedPersonalities: @ 2024E70 - .space 0x10 +gTransformedPersonalities = .; /* 2024E70 */ + . += 0x10; -gBattleMovePower: @ 2024E80 - .space 0x2 +gBattleMovePower = .; /* 2024E80 */ + . += 0x2; -gMoveToLearn: @ 2024E82 - .space 0x2 +gMoveToLearn = .; /* 2024E82 */ + . += 0x2; -gBattleMonForms: @ 2024E84 - .space 0x4 +gBattleMonForms = .; /* 2024E84 */ + . += 0x4; - .include "src/pokemon/pokemon_1.o" - .include "src/pokemon/pokemon_2.o" - .include "src/engine/load_save.o" - .include "src/engine/trade.o" - .include "src/scene/berry_blender.o" - .include "src/scene/new_game.o" - .include "src/field/overworld.o" - .include "src/field/fieldmap.o" - .include "src/field/field_camera.o" - .include "src/field/field_player_avatar.o" - .include "src/field/field_message_box.o" - .include "src/engine/script.o" - .include "src/field/scrcmd.o" - .include "src/field/field_control_avatar.o" - .include "src/field/event_data.o" - .include "src/field/party_menu.o" - .include "src/field/start_menu.o" - .include "src/engine/menu.o" - .include "src/engine/tileset_anim.o" - .include "src/engine/palette.o" - .include "src/engine/sound.o" - .include "src/battle/battle_anim.o" - .include "src/rom_8077ABC.o" - .include "src/scene/title_screen.o" - .include "src/field/field_weather.o" - .include "src/battle/battle_setup.o" - .include "src/field/wild_encounter.o" - .include "src/field/field_effect.o" - .include "src/scanline_effect.o" - .include "src/pokemon/pokemon_menu.o" - .include "src/pokemon/pokedex.o" - .include "src/engine/trainer_card.o" - .include "src/pokemon/pokemon_storage_system.o" +. = ALIGN(4); src/pokemon/pokemon_1.o(ewram_data); +. = ALIGN(4); src/pokemon/pokemon_2.o(ewram_data); +. = ALIGN(4); src/engine/load_save.o(ewram_data); +. = ALIGN(4); src/engine/trade.o(ewram_data); +. = ALIGN(4); src/scene/berry_blender.o(ewram_data); +. = ALIGN(4); src/scene/new_game.o(ewram_data); +. = ALIGN(4); src/field/overworld.o(ewram_data); +. = ALIGN(4); src/field/fieldmap.o(ewram_data); +. = ALIGN(4); src/field/field_camera.o(ewram_data); +. = ALIGN(4); src/field/field_player_avatar.o(ewram_data); +. = ALIGN(4); src/field/field_message_box.o(ewram_data); +. = ALIGN(4); src/engine/script.o(ewram_data); +. = ALIGN(4); src/field/scrcmd.o(ewram_data); +. = ALIGN(4); src/field/field_control_avatar.o(ewram_data); +. = ALIGN(4); src/field/event_data.o(ewram_data); +. = ALIGN(4); src/field/party_menu.o(ewram_data); +. = ALIGN(4); src/field/start_menu.o(ewram_data); +. = ALIGN(4); src/engine/menu.o(ewram_data); +. = ALIGN(4); src/engine/tileset_anim.o(ewram_data); +. = ALIGN(4); src/engine/palette.o(ewram_data); +. = ALIGN(4); src/engine/sound.o(ewram_data); +. = ALIGN(4); src/battle/battle_anim.o(ewram_data); +. = ALIGN(4); src/rom_8077ABC.o(ewram_data); +. = ALIGN(4); src/scene/title_screen.o(ewram_data); +. = ALIGN(4); src/field/field_weather.o(ewram_data); +. = ALIGN(4); src/battle/battle_setup.o(ewram_data); +. = ALIGN(4); src/field/wild_encounter.o(ewram_data); +. = ALIGN(4); src/field/field_effect.o(ewram_data); +. = ALIGN(4); src/scanline_effect.o(ewram_data); +. = ALIGN(4); src/pokemon/pokemon_menu.o(ewram_data); +. = ALIGN(4); src/pokemon/pokedex.o(ewram_data); +. = ALIGN(4); src/engine/trainer_card.o(ewram_data); +. = ALIGN(4); src/pokemon/pokemon_storage_system.o(ewram_data); -@ still pokemon_storage_system +/* still pokemon_storage_system */ - .align 2 -gUnknown_02038470: @ 2038470 - .space 0x3 + . = ALIGN(4); +gUnknown_02038470 = .; /* 2038470 */ + . += 0x3; -gUnknown_02038473: @ 2038473 - .space 0x1 +gUnknown_02038473 = .; /* 2038473 */ + . += 0x1; -gUnknown_02038474: @ 2038474 - .space 0x4 +gUnknown_02038474 = .; /* 2038474 */ + . += 0x4; -gUnknown_02038478: @ 2038478 - .space 0x4 - -gUnknown_0203847C: @ 203847C - .space 0x1 - -gUnknown_0203847D: @ 203847D - .space 0x1 - -gUnknown_0203847E: @ 203847E - .space 0x1 - -gUnknown_0203847F: @ 203847F - .space 0x1 - -gUnknown_02038480: @ 2038480 - .space 0x64 - -gUnknown_020384E4: @ 20384E4 - .space 0x1 - -gUnknown_020384E5: @ 20384E5 - .space 0x1 - -gUnknown_020384E6: @ 20384E6 - .space 0x1 - -gUnknown_020384E7: @ 20384E7 - .space 0x1 - -gUnknown_020384E8: @ 20384E8 - .space 0x1 - -gUnknown_020384E9: @ 20384E9 - .space 0x1 - -gUnknown_020384EA: @ 20384EA - .space 0x2 - -gUnknown_020384EC: @ 20384EC - .space 0x4 - - .include "src/pokemon/pokemon_summary_screen.o" - .include "src/field/script_movement.o" - .include "src/field/map_name_popup.o" - .include "src/field/item_menu.o" - .include "src/contest.o" - .include "src/field/shop.o" - .include "src/field/fldeff_escalator.o" - .include "src/field/money.o" - .include "src/engine/record_mixing.o" - .include "src/debug/sound_check_menu.o" - .include "src/field/secret_base.o" - .include "src/field/tv.o" - .include "src/field/pc_screen_effect.o" - .include "src/field/rotating_gate.o" - .include "src/field/safari_zone.o" - .include "src/easy_chat_2.o" - -@ pokenav - - .align 2 -gUnknown_020388B0: @ 20388B0 - .space 0x4 - -gUnknown_020388B4: @ 20388B4 - .space 0x4 - - .include "src/pokemon/mon_markings.o" - .include "src/field/mauville_man.o" - .include "src/field/menu_helpers.o" - .include "src/field/region_map.o" - .include "src/field/decoration.o" - .include "src/battle/battle_ai.o" - .include "src/rom6.o" - .include "src/field/pokeblock.o" - .include "src/field/field_specials.o" - -@ pokedex_area_screen - - .align 2 -gUnknown_02039260: @ 2039260 - .space 0x2 +gUnknown_02038478 = .; /* 2038478 */ + . += 0x4; + +gUnknown_0203847C = .; /* 203847C */ + . += 0x1; + +gUnknown_0203847D = .; /* 203847D */ + . += 0x1; + +gUnknown_0203847E = .; /* 203847E */ + . += 0x1; + +gUnknown_0203847F = .; /* 203847F */ + . += 0x1; + +gUnknown_02038480 = .; /* 2038480 */ + . += 0x64; + +gUnknown_020384E4 = .; /* 20384E4 */ + . += 0x1; + +gUnknown_020384E5 = .; /* 20384E5 */ + . += 0x1; + +gUnknown_020384E6 = .; /* 20384E6 */ + . += 0x1; + +gUnknown_020384E7 = .; /* 20384E7 */ + . += 0x1; + +gUnknown_020384E8 = .; /* 20384E8 */ + . += 0x1; + +gUnknown_020384E9 = .; /* 20384E9 */ + . += 0x1; + +gUnknown_020384EA = .; /* 20384EA */ + . += 0x2; + +gUnknown_020384EC = .; /* 20384EC */ + . += 0x4; + +. = ALIGN(4); src/pokemon/pokemon_summary_screen.o(ewram_data); +. = ALIGN(4); src/field/script_movement.o(ewram_data); +. = ALIGN(4); src/field/map_name_popup.o(ewram_data); +. = ALIGN(4); src/field/item_menu.o(ewram_data); +. = ALIGN(4); src/contest.o(ewram_data); +. = ALIGN(4); src/field/shop.o(ewram_data); +. = ALIGN(4); src/field/fldeff_escalator.o(ewram_data); +. = ALIGN(4); src/field/money.o(ewram_data); +. = ALIGN(4); src/engine/record_mixing.o(ewram_data); +. = ALIGN(4); src/debug/sound_check_menu.o(ewram_data); +. = ALIGN(4); src/field/secret_base.o(ewram_data); +. = ALIGN(4); src/field/tv.o(ewram_data); +. = ALIGN(4); src/field/pc_screen_effect.o(ewram_data); +. = ALIGN(4); src/field/rotating_gate.o(ewram_data); +. = ALIGN(4); src/field/safari_zone.o(ewram_data); +. = ALIGN(4); src/easy_chat_2.o(ewram_data); + +/* pokenav */ + + . = ALIGN(4); +gUnknown_020388B0 = .; /* 20388B0 */ + . += 0x4; + +gUnknown_020388B4 = .; /* 20388B4 */ + . += 0x4; + +. = ALIGN(4); src/pokemon/mon_markings.o(ewram_data); +. = ALIGN(4); src/field/mauville_man.o(ewram_data); +. = ALIGN(4); src/field/menu_helpers.o(ewram_data); +. = ALIGN(4); src/field/region_map.o(ewram_data); +. = ALIGN(4); src/field/decoration.o(ewram_data); +. = ALIGN(4); src/battle/battle_ai.o(ewram_data); +. = ALIGN(4); src/rom6.o(ewram_data); +. = ALIGN(4); src/field/pokeblock.o(ewram_data); +. = ALIGN(4); src/field/field_specials.o(ewram_data); + +/* pokedex_area_screen */ + + . = ALIGN(4); +gUnknown_02039260 = .; /* 2039260 */ + . += 0x2; -gUnknown_02039262: @ 2039262 - .space 0x2 +gUnknown_02039262 = .; /* 2039262 */ + . += 0x2; -gUnknown_02039264: @ 2039264 - .space 0x2 +gUnknown_02039264 = .; /* 2039264 */ + . += 0x2; -gUnknown_02039266: @ 2039266 - .space 0x2 +gUnknown_02039266 = .; /* 2039266 */ + . += 0x2; -gUnknown_02039268: @ 2039268 - .space 0x2 +gUnknown_02039268 = .; /* 2039268 */ + . += 0x2; -gUnknown_0203926A: @ 203926A - .space 0x2 - - .include "src/battle/battle_message.o" - .include "src/field/choose_party.o" - .include "src/scene/cable_car.o" - .include "src/engine/save.o" - .include "src/engine/mystery_event_script.o" - .include "src/field/roamer.o" - .include "src/field/use_pokeblock.o" - .include "src/field/player_pc.o" - .include "src/scene/intro.o" - .include "src/scene/hall_of_fame.o" - .include "src/scene/credits.o" - .include "src/field/lottery_corner.o" - .include "src/field/berry_tag_screen.o" - .include "src/engine/mystery_event_menu.o" - .include "src/engine/save_failed_screen.o" - .include "src/pokemon/pokeblock_feed.o" - .include "src/scene/intro_credits_graphics.o" - -@ ??? - - .align 4 -gTileBuffer: @ 2039360 - .space 0x100 - -gUnknown_02039460: @ 2039460 - .space 0x300 - -gUnknown_02039760: @ 2039760 - .space 0xC00 - - .include "src/engine/menu_cursor.o" +gUnknown_0203926A = .; /* 203926A */ + . += 0x2; + +. = ALIGN(4); src/battle/battle_message.o(ewram_data); +. = ALIGN(4); src/field/choose_party.o(ewram_data); +. = ALIGN(4); src/scene/cable_car.o(ewram_data); +. = ALIGN(4); src/engine/save.o(ewram_data); +. = ALIGN(4); src/engine/mystery_event_script.o(ewram_data); +. = ALIGN(4); src/field/roamer.o(ewram_data); +. = ALIGN(4); src/field/use_pokeblock.o(ewram_data); +. = ALIGN(4); src/field/player_pc.o(ewram_data); +. = ALIGN(4); src/scene/intro.o(ewram_data); +. = ALIGN(4); src/scene/hall_of_fame.o(ewram_data); +. = ALIGN(4); src/scene/credits.o(ewram_data); +. = ALIGN(4); src/field/lottery_corner.o(ewram_data); +. = ALIGN(4); src/field/berry_tag_screen.o(ewram_data); +. = ALIGN(4); src/engine/mystery_event_menu.o(ewram_data); +. = ALIGN(4); src/engine/save_failed_screen.o(ewram_data); +. = ALIGN(4); src/pokemon/pokeblock_feed.o(ewram_data); +. = ALIGN(4); src/scene/intro_credits_graphics.o(ewram_data); + +/* ??? */ + + . = ALIGN(16); +gTileBuffer = .; /* 2039360 */ + . += 0x100; + +gUnknown_02039460 = .; /* 2039460 */ + . += 0x300; + +gUnknown_02039760 = .; /* 2039760 */ + . += 0xC00; + +. = ALIGN(4); src/engine/menu_cursor.o(ewram_data); |