#ifndef SEGMENT_SYMBOLS_H #define SEGMENT_SYMBOLS_H #define DECLARE_SEGMENT(name) \ extern u8 _##name##SegmentRomStart[]; \ extern u8 _##name##SegmentRomEnd[]; #define DECLARE_ACTOR_SEGMENT(name) \ DECLARE_SEGMENT(name##_mio0) \ DECLARE_SEGMENT(name##_geo) #define DECLARE_LEVEL_SEGMENT(name) \ DECLARE_SEGMENT(name) \ DECLARE_SEGMENT(name##_segment_7) DECLARE_ACTOR_SEGMENT(common0) DECLARE_ACTOR_SEGMENT(common1) DECLARE_ACTOR_SEGMENT(group0) DECLARE_ACTOR_SEGMENT(group1) DECLARE_ACTOR_SEGMENT(group2) DECLARE_ACTOR_SEGMENT(group3) DECLARE_ACTOR_SEGMENT(group4) DECLARE_ACTOR_SEGMENT(group5) DECLARE_ACTOR_SEGMENT(group6) DECLARE_ACTOR_SEGMENT(group7) DECLARE_ACTOR_SEGMENT(group8) DECLARE_ACTOR_SEGMENT(group9) DECLARE_ACTOR_SEGMENT(group10) DECLARE_ACTOR_SEGMENT(group11) DECLARE_ACTOR_SEGMENT(group12) DECLARE_ACTOR_SEGMENT(group13) DECLARE_ACTOR_SEGMENT(group14) DECLARE_ACTOR_SEGMENT(group15) DECLARE_ACTOR_SEGMENT(group16) DECLARE_ACTOR_SEGMENT(group17) DECLARE_SEGMENT(behavior) DECLARE_SEGMENT(scripts) DECLARE_SEGMENT(goddard) extern u8 _goddardSegmentStart[]; DECLARE_LEVEL_SEGMENT(menu) DECLARE_LEVEL_SEGMENT(intro) DECLARE_LEVEL_SEGMENT(ending) DECLARE_LEVEL_SEGMENT(bbh) DECLARE_LEVEL_SEGMENT(ccm) DECLARE_LEVEL_SEGMENT(castle_inside) DECLARE_LEVEL_SEGMENT(hmc) DECLARE_LEVEL_SEGMENT(ssl) DECLARE_LEVEL_SEGMENT(bob) DECLARE_LEVEL_SEGMENT(sl) DECLARE_LEVEL_SEGMENT(wdw) DECLARE_LEVEL_SEGMENT(jrb) DECLARE_LEVEL_SEGMENT(thi) DECLARE_LEVEL_SEGMENT(ttc) DECLARE_LEVEL_SEGMENT(rr) DECLARE_LEVEL_SEGMENT(castle_grounds) DECLARE_LEVEL_SEGMENT(bitdw) DECLARE_LEVEL_SEGMENT(vcutm) DECLARE_LEVEL_SEGMENT(bitfs) DECLARE_LEVEL_SEGMENT(sa) DECLARE_LEVEL_SEGMENT(bits) DECLARE_LEVEL_SEGMENT(lll) DECLARE_LEVEL_SEGMENT(ddd) DECLARE_LEVEL_SEGMENT(wf) DECLARE_LEVEL_SEGMENT(ending) DECLARE_LEVEL_SEGMENT(castle_courtyard) DECLARE_LEVEL_SEGMENT(pss) DECLARE_LEVEL_SEGMENT(cotmc) DECLARE_LEVEL_SEGMENT(totwc) DECLARE_LEVEL_SEGMENT(bowser_1) DECLARE_LEVEL_SEGMENT(wmotr) DECLARE_LEVEL_SEGMENT(bowser_2) DECLARE_LEVEL_SEGMENT(bowser_3) DECLARE_LEVEL_SEGMENT(ttm) DECLARE_SEGMENT(water_skybox_mio0) DECLARE_SEGMENT(ccm_skybox_mio0) DECLARE_SEGMENT(clouds_skybox_mio0) DECLARE_SEGMENT(bitfs_skybox_mio0) DECLARE_SEGMENT(wdw_skybox_mio0) DECLARE_SEGMENT(cloud_floor_skybox_mio0) DECLARE_SEGMENT(ssl_skybox_mio0) DECLARE_SEGMENT(bbh_skybox_mio0) DECLARE_SEGMENT(bidw_skybox_mio0) DECLARE_SEGMENT(bits_skybox_mio0) DECLARE_SEGMENT(fire_mio0) DECLARE_SEGMENT(spooky_mio0) DECLARE_SEGMENT(generic_mio0) DECLARE_SEGMENT(water_mio0) DECLARE_SEGMENT(sky_mio0) DECLARE_SEGMENT(snow_mio0) DECLARE_SEGMENT(cave_mio0) DECLARE_SEGMENT(machine_mio0) DECLARE_SEGMENT(mountain_mio0) DECLARE_SEGMENT(grass_mio0) DECLARE_SEGMENT(outside_mio0) DECLARE_SEGMENT(inside_mio0) DECLARE_SEGMENT(effect_mio0) DECLARE_SEGMENT(title_screen_bg_mio0) DECLARE_SEGMENT(debug_level_select_mio0) #endif