SECTIONS { /* start of ewram */ . = 0x02000000; ewram (NOLOAD) : ALIGN(4) { /* COMMON starts at ??? */ } /* start of iwram */ . = 0x03000000; iwram (NOLOAD) : ALIGN(4) { /* .bss starts at 0x3000000 */ . = 0x7400; /* .bss.code starts at 0x3007400 */ src/m4a.o(.bss.code); . = 0x8000; } /* start of ROM */ . = 0x08000000; .text : { src/rom_header.o(.text); src/crt0.o(.text); src/util.o(.text); src/main.o(.text); src/gbplayer.o(.text); src/link.o(.text); src/bonus_field_select.o(.text); src/ereader.o(.text); src/pokedex.o(.text); src/field_select.o(.text); src/intro.o(.text); src/high_scores.o(.text); src/display.o(.text); src/titlescreen.o(.text); src/all_board_process5.o(.text); src/all_board_process7.o(.text); src/all_board_process6_collision.o(.text); src/ruby_collision.o(.text); src/sapphire_collision.o(.text); src/dusclops_collision.o(.text); src/kecleon_collision.o(.text); src/kyogre_collision.o(.text); src/groudon_collision.o(.text); src/rayquaza_collision.o(.text); src/spheal_collision.o(.text); src/game_idle.o(.text); src/all_board_process4.o(.text); src/ruby_process3.o(.text); src/all_board_state_transitions_and_idle.o(.text); src/ruby_process3_entities.o(.text); src/all_board_banners.o(.text); src/ruby_catch_holes.o(.text); src/main_board_catch_holes.o(.text); src/all_board_portrait_display.o(.text); src/ruby_process3_entities_2.o(.text); src/main_board_charge_spinner.o(.text); src/ruby_trigger_targets.o(.text); src/main_board_pichu_entity.o(.text); src/main_board_to_be_split.o(.text); src/main_board_catch_tile_logic.o(.text); src/main_board_intro_mode.o(.text); src/main_board_travel_mode.o(.text); src/main_board_evolution_mode.o(.text); src/main_board_catch_normal_and_jirachi_modes.o(.text); src/main_board_catch_tile_particles.o(.text); src/main_board_center_capture_hole.o(.text); src/ruby_ramp.o(.text); src/main_board_launcher_and_cutscenes.o(.text); src/sapphire_pond_and_zigzagoon.o(.text); src/main_board_bumpers.o(.text); src/sapphire_seedot_egg_shop.o(.text); src/main_board_edge.o(.text); src/main_board_catch_hatch_picker.o(.text); src/sapphire_process3.o(.text); src/dusclops_process3.o(.text); src/bonus_complete_scoring_transition.o(.text); src/kecleon_process3.o(.text); src/kyogre_process3.o(.text); src/groudon_process3.o(.text); src/rayquaza_process3.o(.text); src/spheal_process3.o(.text); src/all_board_setup.o(.text); src/all_board_process1.o(.text); src/all_board_mode_change_and_debug_menu.o(.text); src/all_board_pause_game.o(.text); src/all_board_pinball_game_main.o(.text); src/save_and_restore_game.o(.text); src/all_board_process8.o(.text); src/all_board_process2.o(.text); src/ruby_board_indicators.o(.text); src/sapphire_board_indicators.o(.text); src/all_board_process0_sprite_init.o(.text); src/options.o(.text); src/pokemon_cry.o(.text); src/save.o(.text); src/m4a_1.o(.text); src/m4a.o(.text); src/libagbsyscall.o(.text); src/agb_sram.o(.text); *libgcc.a:_call_via_rX.o(.text); *libgcc.a:_divsi3.o(.text); *libgcc.a:_dvmd_tls.o(.text); *libgcc.a:_modsi3.o(.text); *libgcc.a:_udivsi3.o(.text); *libgcc.a:_umodsi3.o(.text); *libc.a:memcpy.o(.text); *libc.a:memset.o(.text); *libc.a:strlen.o(.text); }=0 .rodata : { . = ALIGN(4); data/rom_1.o(.rodata) . = ALIGN(4); src/m4a_tables.o(.rodata); . = ALIGN(4); data/sound_data.o(.rodata) . = ALIGN(4); src/agb_sram.o(.rodata); . = ALIGN(4); data/sound_data_2.o(.rodata) . = ALIGN(4); src/data.o(.rodata) . = ALIGN(4); data/rom_2.o(.rodata) }=0xFF /* Debug sections - address 0 so they don't affect ROM layout */ .debug_info 0 : { *(.debug_info) } .debug_abbrev 0 : { *(.debug_abbrev) } .debug_line 0 : { *(.debug_line) } .debug_str 0 : { *(.debug_str) } .debug_loc 0 : { *(.debug_loc) } .debug_ranges 0 : { *(.debug_ranges) } .debug_frame 0 : { *(.debug_frame) } /* Discard everything not specifically mentioned above. */ /DISCARD/ : { *(*); } } /* m4a parameters */ gMaxLines = 0x3C; gNumMusicPlayers = 0x4;