. = ALIGN(4); src/main.o(ewram_data);
. = ALIGN(4); src/sprite.o(ewram_data);
. = ALIGN(4); src/text.o(ewram_data);
. = ALIGN(4); src/string_util.o(ewram_data);

. += 0x2E8;

. = ALIGN(4); src/link.o(ewram_data);
. = ALIGN(4); src/battle_controllers.o(ewram_data);

/* battle */

	. = ALIGN(4);
gUnknown_020238C8 = .; /* 20238C8 */
    . += 0x4;

gDisplayedStringBattle = .; /* 20238CC */
    . += 0x12C; /* 300 */

	. = ALIGN(2);
gBattleTypeFlags = .; /* 20239F8 */
    . += 0x2;

	. = ALIGN(4);
gUnknown_020239FC = .; /* 20239FC */
    . += 0x4;

	. = ALIGN(4);
gMultiPartnerParty = .; /* 2023A00 */
    . += 0x60;

#if DEBUG

	. = ALIGN(4);
gUnknown_02023A14_4C = .;
    . += 0x4;

gUnknown_02023A14_50 = .;
    . += 0x1;

	. = ALIGN(2);
gUnknown_Debug_2023A76 = .;
	. += 0x8C;

	. = ALIGN(2);
gUnknown_Debug_2023B02 = .;
    . += 0x60;

gUnknown_Debug_2023B62 = .;
    . += 0x1A2;

#endif

gBattleBufferA = .; /* 2023A60 */
    . += 0x800;

gBattleBufferB = .; /* 2024260 */
    . += 0x800;

gActiveBattler = .; /* 2024A60 */
    . += 0x4;

gBattleControllerExecFlags = .; /* 2024A64 */
    . += 0x4;

gBattlersCount = .; /* 2024A68 */
    . += 0x2;

gBattlerPartyIndexes = .; /* 2024A6A */
    . += 0x8;

gBattlerPositions = .; /* 2024A72 */
    . += 0x4;

gActionsByTurnOrder = .; /* 2024A76 */
    . += 0x4;

gBattlerByTurnOrder = .; /* 2024A7A */
    . += 0x4;

gCurrentTurnActionNumber = .; /* 2024A7E */
    . += 0x1;

gCurrentActionFuncId = .; /* 2024A7F */
    . += 0x1;

gBattleMons = .; /* 2024A80 */
    . += 0x160;

gBattlerSpriteIds = .; /* 2024BE0 */
    . += 0x4;

gCurrMovePos = .; /* 2024BE4 */
    . += 0x1;

gUnknown_02024BE5 = .; /* 2024BE5 */
    . += 0x1;

gCurrentMove = .; /* 2024BE6 */
    . += 0x2;

gChosenMove = .; /* 2024BE8 */
    . += 0x2;

gRandomMove = .; /* 2024BEA */
    . += 0x2;

gBattleMoveDamage = .; /* 2024BEC */
    . += 0x4;

gHpDealt = .; /* 2024BF0 */
    . += 0x4;

gTakenDmg = .; /* 2024BF4 */
    . += 0x10;

gLastUsedItem = .; /* 2024C04 */
    . += 0x2;

gLastUsedAbility = .; /* 2024C06 */
    . += 0x1;

gBattlerAttacker = .; /* 2024C07 */
    . += 0x1;

gBattlerTarget = .; /* 2024C08 */
    . += 0x1;

gBank1 = .; /* 2024C09 */
    . += 0x1;

gEffectBattler = .; /* 2024C0A */
    . += 0x1;

gPotentialItemEffectBattler = .; /* 2024C0B */
    . += 0x1;

gAbsentBattlerFlags = .; /* 2024C0C */
    . += 0x1;

gCritMultiplier = .; /* 2024C0D */
    . += 0x1;

gMultiHitCounter = .; /* 2024C0E */
    . += 0x2;

gBattlescriptCurrInstr = .; /* 2024C10 */
    . += 0x8;

gActionForBanks = .; /* 2024C18 */
    . += 0x4;

gSelectionBattleScripts = .; /* 2024C1C */
    . += 0x10;

gLastPrintedMoves = .; /* 2024C2C */
    . += 0x8;

gLastMoves = .; /* 2024C34 */
    . += 0x8;

gLastLandedMoves = .; /* 2024C3C */
    . += 0x8;

gLastHitByType = .; /* 2024C44 */
    . += 0x8;

gLastResultingMoves = .; /* 2024C4C */
    . += 0x8;

gLockedMoves = .; /* 2024C54 */
    . += 0x8;

gLastHitBy = .; /* 2024C5C */
    . += 0x4;

gChosenMovesByBanks = .; /* 2024C60 */
    . += 0x8;

gMoveResultFlags = .; /* 2024C68 */
    . += 0x4;

gHitMarker = .; /* 2024C6C */
    . += 0x4;

sUnusedBattlersArray = .; /* 2024C70 */
    . += 0x4;

gTakenDmgByBattler = .; /* 2024C74 */
    . += 0x4;

gUnknown_02024C78 = .; /* 2024C78 */
    . += 0x2;

gSideStatuses = .; /* 2024C7A */
    . += 0x6;

gSideTimers = .; /* 2024C80 */
    . += 0x18;

gStatuses3 = .; /* 2024C98 */
    . += 0x10;

gDisableStructs = .; /* 2024CA8 */
    . += 0x70;

gPauseCounterBattle = .; /* 2024D18 */
    . += 0x2;

gPaydayMoney = .; /* 2024D1A */
    . += 0x2;

gRandomTurnNumber = .; /* 2024D1C */
    . += 0x2;

gBattleCommunication = .; /* 2024D1E */
    . += 0x1;

gUnknown_02024D1F = .; /* 2024D1F */
    . += 0x7;

gBattleOutcome = .; /* 2024D26 */
    . += 0x2;

gProtectStructs = .; /* 2024D28 */
    . += 0x40;

gSpecialStatuses = .; /* 2024D68 */
    . += 0x50;

gBattleWeather = .; /* 2024DB8 */
    . += 0x4;

gWishFutureKnock = .; /* 2024DBC */
    . += 0x20;

gUnknown_02024DDC = .; /* 2024DDC */
    . += 0xC;

gIntroSlideFlags = .; /* 2024DE8 */
    . += 0x2;

gSentPokesToOpponent = .; /* 2024DEA */
    . += 0x2;

gDynamicBasePower = .; /* 2024DEC */
    . += 0x2;

gExpShareExp = .; /* 2024DEE */
    . += 0x2;

gEnigmaBerries = .; /* 2024DF0 */
    . += 0x8;

gUnknown_02024DF8 = .; /* 2024DF8 */
    . += 0x68;

gActionSelectionCursor = .; /* 2024E60 */
    . += 0x4;

gMoveSelectionCursor = .; /* 2024E64 */
    . += 0x4;

gUnknown_02024E68 = .; /* 2024E68 */
    . += 0x4;

gBankInMenu = .; /* 2024E6C */
    . += 0x1;

gDoingBattleAnim = .; /* 2024E6D */
    . += 0x3;

gTransformedPersonalities = .; /* 2024E70 */
    . += 0x10;

gBattleMovePower = .; /* 2024E80 */
    . += 0x2;

gMoveToLearn = .; /* 2024E82 */
    . += 0x2;

gBattleMonForms = .; /* 2024E84 */
    . += 0x4;

. = ALIGN(4); src/pokemon_1.o(ewram_data);
. = ALIGN(4); src/pokemon_2.o(ewram_data);
. = ALIGN(4); src/load_save.o(ewram_data);
. = ALIGN(4); src/trade.o(ewram_data);
. = ALIGN(4); src/berry_blender.o(ewram_data);
. = ALIGN(4); src/new_game.o(ewram_data);
. = ALIGN(4); src/overworld.o(ewram_data);
. = ALIGN(4); src/fieldmap.o(ewram_data);
. = ALIGN(4); src/field_camera.o(ewram_data);
. = ALIGN(4); src/field_player_avatar.o(ewram_data);
. = ALIGN(4); src/field_message_box.o(ewram_data);
. = ALIGN(4); src/script.o(ewram_data);
. = ALIGN(4); src/scrcmd.o(ewram_data);
. = ALIGN(4); src/field_control_avatar.o(ewram_data);
. = ALIGN(4); src/event_data.o(ewram_data);
. = ALIGN(4); src/party_menu.o(ewram_data);
. = ALIGN(4); src/start_menu.o(ewram_data);
. = ALIGN(4); src/menu.o(ewram_data);
. = ALIGN(4); src/tileset_anim.o(ewram_data);
. = ALIGN(4); src/palette.o(ewram_data);
. = ALIGN(4); src/sound.o(ewram_data);
. = ALIGN(4); src/battle_anim.o(ewram_data);
. = ALIGN(4); src/rom_8077ABC.o(ewram_data);
. = ALIGN(4); src/title_screen.o(ewram_data);
. = ALIGN(4); src/field_weather.o(ewram_data);
. = ALIGN(4); src/battle_setup.o(ewram_data);
. = ALIGN(4); src/cable_club.o(ewram_data);
. = ALIGN(4); src/debug/taya_debug_window.o(ewram_data);
. = ALIGN(4); src/wild_encounter.o(ewram_data);
. = ALIGN(4); src/field_effect.o(ewram_data);
. = ALIGN(4); src/scanline_effect.o(ewram_data);
. = ALIGN(4); src/pokemon_menu.o(ewram_data);
. = ALIGN(4); src/pokedex.o(ewram_data);
. = ALIGN(4); src/trainer_card.o(ewram_data);
. = ALIGN(4); src/save_menu_util.o(ewram_data);
. = ALIGN(4); src/battle_party_menu.o(ewram_data);
. = ALIGN(4); src/pokemon_storage_system.o(ewram_data);
. = ALIGN(4); src/pokemon_storage_system_2.o(ewram_data);
. = ALIGN(4); src/pokemon_storage_system_3.o(ewram_data);
. = ALIGN(4); src/pokemon_storage_system_4.o(ewram_data);
. = ALIGN(4); src/pokemon_summary_screen.o(ewram_data);
. = ALIGN(4); src/script_movement.o(ewram_data);
. = ALIGN(4); src/map_name_popup.o(ewram_data);
. = ALIGN(4); src/item_menu.o(ewram_data);
. = ALIGN(4); src/contest.o(ewram_data);
. = ALIGN(4); src/shop.o(ewram_data);
. = ALIGN(4); src/fldeff_escalator.o(ewram_data);
. = ALIGN(4); src/debug/watanabe_debug_menu.o(ewram_data);
. = ALIGN(4); src/money.o(ewram_data);
. = ALIGN(4); src/record_mixing.o(ewram_data);
. = ALIGN(4); src/debug/sound_check_menu.o(ewram_data);
. = ALIGN(4); src/secret_base.o(ewram_data);
. = ALIGN(4); src/tv.o(ewram_data);
. = ALIGN(4); src/pc_screen_effect.o(ewram_data);
. = ALIGN(4); src/rotating_gate.o(ewram_data);
. = ALIGN(4); src/safari_zone.o(ewram_data);
. = ALIGN(4); src/easy_chat_2.o(ewram_data);
. = ALIGN(4); src/pokenav.o(ewram_data);
. = ALIGN(4); src/mon_markings.o(ewram_data);
. = ALIGN(4); src/mauville_man.o(ewram_data);
. = ALIGN(4); src/menu_helpers.o(ewram_data);
. = ALIGN(4); src/region_map.o(ewram_data);
. = ALIGN(4); src/decoration.o(ewram_data);
. = ALIGN(4); src/battle_ai_script_commands.o(ewram_data);
. = ALIGN(4); src/rom6.o(ewram_data);
. = ALIGN(4); src/pokeblock.o(ewram_data);
. = ALIGN(4); src/field_specials.o(ewram_data);
. = ALIGN(4); src/pokedex_area_screen.o(ewram_data);
. = ALIGN(4); src/roulette.o(ewram_data);
. = ALIGN(4); src/battle_message.o(ewram_data);
. = ALIGN(4); src/choose_party.o(ewram_data);
. = ALIGN(4); src/cable_car.o(ewram_data);
. = ALIGN(4); src/save.o(ewram_data);
. = ALIGN(4); src/mystery_event_script.o(ewram_data);
. = ALIGN(4); src/roamer.o(ewram_data);
. = ALIGN(4); src/use_pokeblock.o(ewram_data);
. = ALIGN(4); src/player_pc.o(ewram_data);
. = ALIGN(4); src/intro.o(ewram_data);
. = ALIGN(4); src/hall_of_fame.o(ewram_data);
. = ALIGN(4); src/credits.o(ewram_data);
. = ALIGN(4); src/lottery_corner.o(ewram_data);
. = ALIGN(4); src/berry_tag_screen.o(ewram_data);
. = ALIGN(4); src/mystery_event_menu.o(ewram_data);
. = ALIGN(4); src/save_failed_screen.o(ewram_data);
. = ALIGN(4); src/pokeblock_feed.o(ewram_data);
. = ALIGN(4); src/debug/nakamura_debug_menu.o(ewram_data);
. = ALIGN(4); src/intro_credits_graphics.o(ewram_data);

/* ??? */

#if DEBUG
    . = ALIGN(8);
#else
    . = ALIGN(16);
#endif
gTileBuffer = .; /* 2039360 */
    . += 0x400;

gUnknown_02039760 = .; /* 2039760 */
    . += 0xC00;

. = ALIGN(4); src/menu_cursor.o(ewram_data);
