mirror of https://github.com/pret/pokeemerald.git
543 lines
18 KiB
Plaintext
543 lines
18 KiB
Plaintext
ENTRY(Start)
|
|
|
|
gNumMusicPlayers = 4;
|
|
gMaxLines = 0;
|
|
|
|
SECTIONS {
|
|
. = 0x2000000;
|
|
|
|
ewram (NOLOAD) :
|
|
ALIGN(4)
|
|
{
|
|
gHeap = .;
|
|
|
|
. = 0x1C000;
|
|
|
|
<EWRAM>
|
|
|
|
. = 0x40000;
|
|
}
|
|
|
|
. = 0x3000000;
|
|
|
|
iwram (NOLOAD) :
|
|
ALIGN(4)
|
|
{
|
|
/* .bss starts at 0x3000000 */
|
|
<BSS>
|
|
|
|
/* .bss.code starts at 0x3001AA8 */
|
|
src/m4a_2.o(.bss.code);
|
|
|
|
/* COMMON starts at 0x30022A8 */
|
|
<COMMON>
|
|
|
|
. = 0x8000;
|
|
}
|
|
|
|
. = 0x8000000;
|
|
|
|
.text :
|
|
ALIGN(4)
|
|
{
|
|
asm/crt0.o(.text);
|
|
src/main.o(.text);
|
|
src/malloc.o(.text);
|
|
src/dma3_manager.o(.text);
|
|
src/gpu_regs.o(.text);
|
|
src/bg.o(.text);
|
|
asm/blit.o(.text);
|
|
src/window.o(.text);
|
|
src/text.o(.text);
|
|
src/sprite.o(.text);
|
|
src/string_util.o(.text);
|
|
asm/link.o(.text);
|
|
src/rtc.o(.text);
|
|
asm/main_menu.o(.text);
|
|
src/battle_controllers.o(.text);
|
|
src/decompress.o(.text);
|
|
asm/battle_1.o(.text);
|
|
src/battle_2.o(.text);
|
|
src/battle_util.o(.text);
|
|
src/battle_script_commands.o(.text);
|
|
src/battle_util2.o(.text);
|
|
src/battle_controller_player.o(.text);
|
|
src/battle_gfx_sfx_util.o(.text);
|
|
src/battle_controller_opponent.o(.text);
|
|
src/battle_ai_switch_items.o(.text);
|
|
src/battle_controller_link_opponent.o(.text);
|
|
src/pokemon_1.o(.text);
|
|
asm/pokemon_1.o(.text);
|
|
src/calculate_base_damage.o(.text);
|
|
src/pokemon_2.o(.text);
|
|
asm/pokemon_item_effect.o(.text);
|
|
src/pokemon_3.o(.text);
|
|
asm/pokemon_3.o(.text);
|
|
src/trig.o(.text);
|
|
src/rng.o(.text);
|
|
src/util.o(.text);
|
|
src/blend_palette.o(.text);
|
|
src/daycare.o(.text);
|
|
src/egg_hatch.o(.text);
|
|
src/battle_interface.o(.text);
|
|
asm/smokescreen.o(.text);
|
|
src/pokeball.o(.text);
|
|
src/load_save.o(.text);
|
|
asm/trade.o(.text);
|
|
src/berry_blender.o(.text);
|
|
src/play_time.o(.text);
|
|
src/new_game.o(.text);
|
|
asm/rom4.o(.text);
|
|
asm/fieldmap.o(.text);
|
|
src/metatile_behavior.o(.text);
|
|
asm/field_camera.o(.text);
|
|
asm/field_door.o(.text);
|
|
asm/field_player_avatar.o(.text);
|
|
src/field_map_obj.o(.text);
|
|
asm/field_ground_effect.o(.text);
|
|
asm/map_obj_8097404.o(.text);
|
|
asm/field_message_box.o(.text);
|
|
asm/map_obj_lock.o(.text);
|
|
src/text_window.o(.text);
|
|
src/script.o(.text);
|
|
src/scrcmd.o(.text);
|
|
asm/field_control_avatar.o(.text);
|
|
src/event_data.o(.text);
|
|
asm/coord_event_weather.o(.text);
|
|
asm/field_tasks.o(.text);
|
|
asm/clock.o(.text);
|
|
asm/reset_rtc_screen.o(.text);
|
|
src/start_menu.o(.text);
|
|
asm/start_menu.o(.text);
|
|
src/tileset_anims.o(.text);
|
|
src/palette.o(.text);
|
|
src/sound.o(.text);
|
|
src/battle_anim.o(.text);
|
|
asm/battle_anim_80A5C6C.o(.text);
|
|
src/task.o(.text);
|
|
src/reshow_battle_screen.o(.text);
|
|
asm/battle_anim_80A9C70.o(.text);
|
|
asm/title_screen.o(.text);
|
|
asm/field_screen.o(.text);
|
|
asm/battle_setup.o(.text);
|
|
asm/cable_club.o(.text);
|
|
asm/trainer_see.o(.text);
|
|
src/wild_encounter.o(.text);
|
|
asm/field_effect.o(.text);
|
|
asm/unknown_task.o(.text);
|
|
asm/option_menu.o(.text);
|
|
asm/pokedex.o(.text);
|
|
asm/trainer_card.o(.text);
|
|
src/pokemon_storage_system.o(.text);
|
|
asm/pokemon_storage_system.o(.text);
|
|
asm/pokemon_icon.o(.text);
|
|
asm/script_movement.o(.text);
|
|
asm/fldeff_cut.o(.text);
|
|
asm/mail_data.o(.text);
|
|
asm/map_name_popup.o(.text);
|
|
asm/item_menu_icons.o(.text);
|
|
asm/battle_anim_80D51AC.o(.text);
|
|
src/item.o(.text);
|
|
asm/item.o(.text);
|
|
asm/contest.o(.text);
|
|
asm/shop.o(.text);
|
|
src/berry.o(.text);
|
|
asm/script_menu.o(.text);
|
|
asm/naming_screen.o(.text);
|
|
src/money.o(.text);
|
|
asm/contest_effect.o(.text);
|
|
asm/record_mixing.o(.text);
|
|
src/secret_base.o(.text);
|
|
src/tv.o(.text);
|
|
asm/contest_link_80F57C4.o(.text);
|
|
asm/script_pokemon_util_80F87D8.o(.text);
|
|
src/field_poison.o(.text);
|
|
src/pokemon_size_record.o(.text);
|
|
asm/fldeff_80F9BCC.o(.text);
|
|
src/field_special_scene.o(.text);
|
|
asm/rotating_gate.o(.text);
|
|
src/safari_zone.o(.text);
|
|
asm/contest_link_80FC4F4.o(.text);
|
|
asm/item_use.o(.text);
|
|
asm/battle_anim_80FE840.o(.text);
|
|
asm/bike.o(.text);
|
|
asm/easy_chat.o(.text);
|
|
asm/mon_markings.o(.text);
|
|
asm/mauville_old_man.o(.text);
|
|
src/mail.o(.text);
|
|
asm/menu_helpers.o(.text);
|
|
asm/dewford_trend.o(.text);
|
|
src/heal_location.o(.text);
|
|
src/region_map.o(.text);
|
|
asm/cute_sketch.o(.text);
|
|
src/decoration.o(.text);
|
|
asm/slot_machine.o(.text);
|
|
asm/contest_painting.o(.text);
|
|
src/battle_ai_script_commands.o(.text);
|
|
asm/trader.o(.text);
|
|
src/starter_choose.o(.text);
|
|
asm/wallclock.o(.text);
|
|
asm/rom6.o(.text);
|
|
asm/battle_records.o(.text);
|
|
asm/pokedex_area_screen.o(.text);
|
|
src/evolution_scene.o(.text);
|
|
asm/roulette.o(.text);
|
|
asm/pokedex_cry_screen.o(.text);
|
|
src/coins.o(.text);
|
|
asm/landmark.o(.text);
|
|
asm/fldeff_strength.o(.text);
|
|
asm/battle_transition.o(.text);
|
|
src/battle_controller_link_partner.o(.text);
|
|
src/battle_message.o(.text);
|
|
asm/cable_car.o(.text);
|
|
src/math_util.o(.text);
|
|
asm/roulette_util.o(.text);
|
|
asm/cable_car_util.o(.text);
|
|
src/save.o(.text);
|
|
asm/mystery_event_script.o(.text);
|
|
asm/field_effect_helpers.o(.text);
|
|
asm/contest_ai.o(.text);
|
|
asm/battle_anim_sound_tasks.o(.text);
|
|
src/battle_controller_safari.o(.text);
|
|
asm/fldeff_sweetscent.o(.text);
|
|
asm/battle_anim_815A0D4.o(.text);
|
|
asm/learn_move.o(.text);
|
|
asm/fldeff_softboiled.o(.text);
|
|
src/decoration_inventory.o(.text);
|
|
src/roamer.o(.text);
|
|
asm/battle_tower.o(.text);
|
|
asm/use_pokeblock.o(.text);
|
|
src/battle_controller_wally.o(.text);
|
|
asm/player_pc.o(.text);
|
|
asm/intro.o(.text);
|
|
src/reset_save_heap.o(.text);
|
|
src/field_region_map.o(.text);
|
|
asm/battle_anim_8170478.o(.text);
|
|
src/hall_of_fame.o(.text);
|
|
asm/credits.o(.text);
|
|
src/lottery_corner.o(.text);
|
|
src/diploma.o(.text);
|
|
asm/berry_tag_screen.o(.text);
|
|
asm/mystery_event_menu.o(.text);
|
|
src/save_failed_screen.o(.text);
|
|
src/braille_puzzles.o(.text);
|
|
asm/pokeblock_feed.o(.text);
|
|
src/clear_save_data_screen.o(.text);
|
|
asm/intro_credits_graphics.o(.text);
|
|
src/evolution_graphics.o(.text);
|
|
src/bard_music.o(.text);
|
|
asm/fldeff_teleport.o(.text);
|
|
asm/battle_link_817C95C.o(.text);
|
|
asm/pokemon_animation.o(.text);
|
|
src/recorded_battle.o(.text);
|
|
src/battle_controller_recorded_opponent.o(.text);
|
|
src/battle_controller_recorded_player.o(.text);
|
|
src/battle_dome_cards.o(.text);
|
|
src/lilycove_lady.o(.text);
|
|
asm/battle_frontier_1.o(.text);
|
|
asm/new_menu_helpers.o(.text);
|
|
asm/menu.o(.text);
|
|
asm/battle_frontier_2.o(.text);
|
|
asm/item_menu.o(.text);
|
|
asm/list_menu.o(.text);
|
|
asm/menu_indicators.o(.text);
|
|
src/unk_text_util.o(.text);
|
|
src/save_location.o(.text);
|
|
asm/item_icon.o(.text);
|
|
asm/party_menu.o(.text);
|
|
asm/battle_tent.o(.text);
|
|
src/unk_text_util_2.o(.text);
|
|
src/multiboot.o(.text);
|
|
src/unk_81BAD84.o(.text);
|
|
src/battle_controller_player_partner.o(.text);
|
|
asm/fldeff_groundshake.o(.text);
|
|
asm/fossil_specials.o(.text);
|
|
src/berry_fix_program.o(.text);
|
|
src/pokemon_summary_screen.o(.text);
|
|
asm/pokemon_summary_screen.o(.text);
|
|
asm/pokenav.o(.text);
|
|
asm/rayquaza_scene.o(.text);
|
|
src/walda_phrase.o(.text);
|
|
asm/contest_link_81D9DE4.o(.text);
|
|
asm/trainer_rematch.o(.text);
|
|
asm/unk_sprite_file.o(.text);
|
|
asm/unk_transition.o(.text);
|
|
asm/unk_transition_2.o(.text);
|
|
src/international_string_util.o(.text);
|
|
asm/international_string_util.o(.text);
|
|
} =0
|
|
|
|
script_data :
|
|
ALIGN(4)
|
|
{
|
|
data/event_scripts.o(script_data);
|
|
data/battle_anim_scripts.o(script_data);
|
|
data/battle_scripts_1.o(script_data);
|
|
data/field_effect_scripts.o(script_data);
|
|
data/battle_scripts_2.o(script_data);
|
|
data/battle_ai_scripts.o(script_data);
|
|
data/contest_ai_scripts.o(script_data);
|
|
data/script_funcs.o(script_data);
|
|
} =0
|
|
|
|
lib_text :
|
|
ALIGN(4)
|
|
{
|
|
asm/libgcnmultiboot.o(.text);
|
|
asm/m4a_1.o(.text);
|
|
src/m4a_2.o(.text);
|
|
asm/m4a_3.o(.text);
|
|
src/m4a_4.o(.text);
|
|
src/agb_flash.o(.text);
|
|
src/agb_flash_1m.o(.text);
|
|
src/agb_flash_mx.o(.text);
|
|
src/siirtc.o(.text);
|
|
src/librfu_stwi.o(.text);
|
|
src/librfu_intr.o(.text);
|
|
asm/librfu_intr.o(.text);
|
|
src/librfu_rfu.o(.text);
|
|
asm/librfu.o(.text);
|
|
asm/libagbsyscall.o(.text);
|
|
tools/agbcc/lib/libgcc.a:_call_via_rX.o(.text);
|
|
tools/agbcc/lib/libgcc.a:_divdi3.o(.text);
|
|
tools/agbcc/lib/libgcc.a:_divsi3.o(.text);
|
|
tools/agbcc/lib/libgcc.a:_dvmd_tls.o(.text);
|
|
tools/agbcc/lib/libgcc.a:_fixunsdfsi.o(.text);
|
|
tools/agbcc/lib/libgcc.a:_fixunssfsi.o(.text);
|
|
tools/agbcc/lib/libgcc.a:_modsi3.o(.text);
|
|
tools/agbcc/lib/libgcc.a:_muldi3.o(.text);
|
|
tools/agbcc/lib/libgcc.a:_udivdi3.o(.text);
|
|
tools/agbcc/lib/libgcc.a:_udivsi3.o(.text);
|
|
tools/agbcc/lib/libgcc.a:_umodsi3.o(.text);
|
|
tools/agbcc/lib/libgcc.a:dp-bit.o(.text);
|
|
tools/agbcc/lib/libgcc.a:fp-bit.o(.text);
|
|
tools/agbcc/lib/libgcc.a:_lshrdi3.o(.text);
|
|
tools/agbcc/lib/libgcc.a:_negdi2.o(.text);
|
|
src/libc.o(.text);
|
|
} =0
|
|
|
|
.rodata :
|
|
ALIGN(4)
|
|
{
|
|
src/main.o(.rodata);
|
|
src/bg.o(.rodata);
|
|
src/window.o(.rodata);
|
|
src/text.o(.rodata);
|
|
src/sprite.o(.rodata);
|
|
data/io_reg.o(.rodata);
|
|
src/string_util.o(.rodata);
|
|
data/link.o(.rodata);
|
|
src/rtc.o(.rodata);
|
|
data/main_menu.o(.rodata);
|
|
data/battle_1.o(.rodata);
|
|
data/data2b.o(.rodata);
|
|
src/battle_2.o(.rodata);
|
|
src/battle_util.o(.rodata);
|
|
src/battle_script_commands.o(.rodata);
|
|
src/battle_controller_player.o(.rodata);
|
|
data/smokescreen.o(.rodata);
|
|
src/battle_controller_opponent.o(.rodata);
|
|
src/battle_controller_link_opponent.o(.rodata);
|
|
data/data2c.o(.rodata);
|
|
src/trig.o(.rodata);
|
|
src/util.o(.rodata);
|
|
src/daycare.o(.rodata);
|
|
src/egg_hatch.o(.rodata);
|
|
src/battle_gfx_sfx_util.o(.rodata);
|
|
src/battle_interface.o(.rodata);
|
|
src/pokeball.o(.rodata);
|
|
data/trade.o(.rodata);
|
|
src/berry_blender.o(.rodata);
|
|
src/new_game.o(.rodata);
|
|
data/rom4.o(.rodata);
|
|
data/tilesets.o(.rodata);
|
|
data/maps.o(.rodata);
|
|
data/fieldmap.o(.rodata);
|
|
src/metatile_behavior.o(.rodata);
|
|
data/rom_8486FEC.o(.rodata);
|
|
data/field_door.o(.rodata);
|
|
data/field_player_avatar.o(.rodata);
|
|
data/field_map_obj.o(.rodata);
|
|
data/field_ground_effect.o(.rodata);
|
|
data/map_obj_8097404.o(.rodata);
|
|
data/text_window.o(.rodata);
|
|
src/scrcmd.o(.rodata);
|
|
data/coord_event_weather.o(.rodata);
|
|
data/field_tasks.o(.rodata);
|
|
data/reset_rtc_screen.o(.rodata);
|
|
data/start_menu.o(.rodata);
|
|
src/tileset_anims.o(.rodata);
|
|
src/palette.o(.rodata);
|
|
data/fanfares.o(.rodata);
|
|
data/battle_anims.o(.rodata);
|
|
src/battle_anim.o(.rodata);
|
|
data/rom_8525F58.o(.rodata);
|
|
data/map_events.o(.rodata);
|
|
data/battle_anim_80A9C70.o(.rodata);
|
|
data/title_screen.o(.rodata);
|
|
data/field_screen.o(.rodata);
|
|
data/battle_setup.o(.rodata);
|
|
data/cable_club.o(.rodata);
|
|
data/trainer_see.o(.rodata);
|
|
data/wild_encounter.o(.rodata);
|
|
data/field_effect.o(.rodata);
|
|
data/option_menu.o(.rodata);
|
|
data/pokedex.o(.rodata);
|
|
data/trainer_card.o(.rodata);
|
|
data/pokemon_storage_system.o(.rodata);
|
|
data/pokemon_icon.o(.rodata);
|
|
data/fldeff_cut.o(.rodata);
|
|
data/map_name_popup.o(.rodata);
|
|
data/item_menu_icons.o(.rodata);
|
|
data/contest.o(.rodata);
|
|
data/shop.o(.rodata);
|
|
src/berry.o(.rodata);
|
|
data/script_menu.o(.rodata);
|
|
data/naming_screen.o(.rodata);
|
|
src/money.o(.rodata);
|
|
data/contest_effect.o(.rodata);
|
|
data/record_mixing.o(.rodata);
|
|
src/secret_base.o(.rodata);
|
|
src/tv.o(.rodata);
|
|
data/contest_link_80F57C4.o(.rodata);
|
|
data/script_pokemon_util_80F87D8.o(.rodata);
|
|
src/pokemon_size_record.o(.rodata)
|
|
data/field_effect_misc.o(.rodata);
|
|
data/field_special_scene.o(.rodata);
|
|
data/rotating_gate.o(.rodata);
|
|
data/item_use.o(.rodata);
|
|
data/battle_anim_80FE840.o(.rodata);
|
|
data/bike.o(.rodata);
|
|
data/easy_chat.o(.rodata);
|
|
data/mon_markings.o(.rodata);
|
|
data/mauville_old_man.o(.rodata);
|
|
src/mail.o(.rodata);
|
|
data/menu_helpers.o(.rodata);
|
|
src/heal_location.o(.rodata);
|
|
src/region_map.o(.rodata);
|
|
data/cute_sketch.o(.rodata);
|
|
src/decoration.o(.rodata);
|
|
data/slot_machine.o(.rodata);
|
|
data/contest_painting.o(.rodata);
|
|
src/battle_ai_script_commands.o(.rodata);
|
|
data/data4.o(.rodata);
|
|
data/starter_choose.o(.rodata);
|
|
data/data4c.o(.rodata);
|
|
src/battle_controller_link_partner.o(.rodata);
|
|
src/battle_message.o(.rodata);
|
|
data/cable_car.o(.rodata);
|
|
data/save.o(.rodata);
|
|
data/field_effect_helpers.o(.rodata);
|
|
data/contest_ai.o(.rodata);
|
|
src/battle_controller_safari.o(.rodata);
|
|
data/battle_anim_815A0D4.o(.rodata);
|
|
data/learn_move.o(.rodata);
|
|
src/roamer.o(.rodata);
|
|
data/battle_tower.o(.rodata);
|
|
data/use_pokeblock.o(.rodata);
|
|
src/battle_controller_wally.o(.rodata);
|
|
data/player_pc.o(.rodata);
|
|
data/intro.o(.rodata);
|
|
src/field_region_map.o(.rodata);
|
|
data/battle_anim_8170478.o(.rodata);
|
|
src/hall_of_fame.o(.rodata);
|
|
data/credits.o(.rodata);
|
|
src/lottery_corner.o(.rodata);
|
|
src/diploma.o(.rodata);
|
|
data/strings.o(.rodata);
|
|
data/berry_tag_screen.o(.rodata);
|
|
data/mystery_event_menu.o(.rodata);
|
|
src/save_failed_screen.o(.rodata);
|
|
data/braille_puzzles.o(.rodata);
|
|
data/pokeblock_feed.o(.rodata);
|
|
src/clear_save_data_screen.o(.rodata);
|
|
data/intro_credits_graphics.o(.rodata);
|
|
src/evolution_graphics.o(.rodata);
|
|
src/bard_music.o(.rodata);
|
|
data/data_860A4AC.o(.rodata);
|
|
src/battle_controller_recorded_opponent.o(.rodata);
|
|
src/battle_controller_recorded_player.o(.rodata);
|
|
src/battle_dome_cards.o(.rodata);
|
|
src/lilycove_lady.o(.rodata);
|
|
data/battle_frontier_1.o(.rodata);
|
|
data/new_menu_helpers.o(.rodata);
|
|
data/battle_frontier_2.o(.rodata);
|
|
data/item_menu.o(.rodata);
|
|
data/menu_indicators.o(.rodata);
|
|
src/save_location.o(.rodata);
|
|
data/item_icon.o(.rodata);
|
|
data/party_menu.o(.rodata);
|
|
data/battle_tent.o(.rodata);
|
|
src/unk_text_util_2.o(.rodata);
|
|
src/unk_81BAD84.o(.rodata);
|
|
src/battle_controller_player_partner.o(.rodata);
|
|
data/fossil_special_fldeff_groundshake.o(.rodata);
|
|
src/berry_fix_program.o(.rodata);
|
|
data/pokemon_summary_screen.o(.rodata);
|
|
data/pokenav.o(.rodata);
|
|
data/rayquaza_scene.o(.rodata);
|
|
src/walda_phrase.o(.rodata);
|
|
data/trainer_rematch.o(.rodata);
|
|
data/unk_sprite_file.o(.rodata);
|
|
data/unk_transition.o(.rodata);
|
|
data/link_strings.o(.rodata);
|
|
data/fonts.o(.rodata);
|
|
data/mystery_event_msg.o(.rodata);
|
|
src/m4a_tables.o(.rodata);
|
|
data/sound_data.o(.rodata);
|
|
} =0
|
|
|
|
lib_rodata :
|
|
SUBALIGN(4)
|
|
{
|
|
src/agb_flash.o(.rodata);
|
|
src/agb_flash_1m.o(.rodata);
|
|
src/agb_flash_mx.o(.rodata);
|
|
src/agb_flash_le.o(.rodata);
|
|
src/siirtc.o(.rodata);
|
|
data/librfu_rodata.o(.rodata);
|
|
tools/agbcc/lib/libgcc.a:_divdi3.o(.rodata);
|
|
tools/agbcc/lib/libgcc.a:_udivdi3.o(.rodata);
|
|
} =0
|
|
|
|
other_data :
|
|
ALIGN(4)
|
|
{
|
|
data/unknown_serial_data.o(.rodata);
|
|
data/multiboot_berry_glitch_fix.o(.rodata);
|
|
data/multiboot_pokemon_colosseum.o(.rodata);
|
|
} =0
|
|
|
|
gap1 :
|
|
{
|
|
gap1_start = ABSOLUTE(.);
|
|
BYTE(0x00)
|
|
. = 0x8B00000 - gap1_start;
|
|
} =0
|
|
|
|
anim_mon_front_pic_data :
|
|
ALIGN(4)
|
|
{
|
|
data/anim_mon_front_pics.o(anim_mon_front_pic_data);
|
|
} =0
|
|
|
|
gap2 :
|
|
{
|
|
gap2_start = ABSOLUTE(.);
|
|
BYTE(0x00)
|
|
. = 0x8C00000 - gap2_start;
|
|
} =0
|
|
|
|
gfx_data :
|
|
ALIGN(4)
|
|
{
|
|
data/graphics.o(gfx_data);
|
|
} =0
|
|
|
|
/* Discard everything not specifically mentioned above. */
|
|
/DISCARD/ :
|
|
{
|
|
*(*);
|
|
}
|
|
}
|