2021-09-26 11:34:20 -07:00
|
|
|
#ifndef SEGMENT_SYMBOLS_H
|
|
|
|
|
#define SEGMENT_SYMBOLS_H
|
2019-11-03 14:36:27 -05:00
|
|
|
|
2020-06-02 12:44:34 -04:00
|
|
|
#ifndef NO_SEGMENTED_MEMORY
|
2019-11-03 14:36:27 -05:00
|
|
|
#define DECLARE_SEGMENT(name) \
|
|
|
|
|
extern u8 _##name##SegmentRomStart[]; \
|
|
|
|
|
extern u8 _##name##SegmentRomEnd[];
|
|
|
|
|
|
2021-08-22 13:39:47 +01:00
|
|
|
#define DECLARE_NOLOAD(name) \
|
|
|
|
|
extern u8 _##name##SegmentBssStart[]; \
|
|
|
|
|
extern u8 _##name##SegmentBssEnd[];
|
|
|
|
|
|
2019-11-03 14:36:27 -05:00
|
|
|
#define DECLARE_ACTOR_SEGMENT(name) \
|
2021-06-07 23:31:12 -04:00
|
|
|
DECLARE_SEGMENT(name##_mio0) \
|
2020-12-03 20:19:03 -05:00
|
|
|
DECLARE_SEGMENT(name##_yay0) \
|
2021-08-22 13:39:47 +01:00
|
|
|
DECLARE_SEGMENT(name##_geo) \
|
|
|
|
|
DECLARE_NOLOAD(name##_geo)
|
2019-11-03 14:36:27 -05:00
|
|
|
|
|
|
|
|
#define DECLARE_LEVEL_SEGMENT(name) \
|
|
|
|
|
DECLARE_SEGMENT(name) \
|
2021-08-22 13:39:47 +01:00
|
|
|
DECLARE_NOLOAD(name) \
|
2019-11-03 14:36:27 -05:00
|
|
|
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)
|
|
|
|
|
|
2020-06-02 12:44:34 -04:00
|
|
|
DECLARE_SEGMENT(entry)
|
|
|
|
|
DECLARE_SEGMENT(engine)
|
2019-11-03 14:36:27 -05:00
|
|
|
DECLARE_SEGMENT(behavior)
|
2021-08-23 12:10:03 +01:00
|
|
|
DECLARE_NOLOAD(behavior)
|
2019-11-03 14:36:27 -05:00
|
|
|
DECLARE_SEGMENT(scripts)
|
|
|
|
|
DECLARE_SEGMENT(goddard)
|
2020-11-05 14:21:40 -05:00
|
|
|
DECLARE_SEGMENT(framebuffers)
|
2021-08-24 16:26:30 -04:00
|
|
|
DECLARE_SEGMENT(assets)
|
2019-11-03 14:36:27 -05:00
|
|
|
extern u8 _goddardSegmentStart[];
|
2023-03-12 16:29:08 +00:00
|
|
|
extern u8 _goddardSegmentEnd[];
|
2020-11-05 14:21:40 -05:00
|
|
|
extern u8 _engineSegmentStart[];
|
2021-03-28 20:54:54 -04:00
|
|
|
extern u8 _engineSegmentBssEnd[];
|
2023-03-12 16:29:08 +00:00
|
|
|
extern u8 _mainSegmentStart[];
|
2021-04-11 18:20:32 -04:00
|
|
|
extern u8 _mainSegmentEnd[];
|
2020-11-05 14:21:40 -05:00
|
|
|
extern u8 _engineSegmentEnd[];
|
2023-03-12 16:29:08 +00:00
|
|
|
extern u8 _framebuffersSegmentBssStart[];
|
2021-03-28 20:54:54 -04:00
|
|
|
extern u8 _framebuffersSegmentBssEnd[];
|
2023-03-12 16:29:08 +00:00
|
|
|
extern u8 _zbufferSegmentBssStart[];
|
|
|
|
|
extern u8 _zbufferSegmentBssEnd[];
|
|
|
|
|
extern u8 _buffersSegmentBssStart[];
|
|
|
|
|
extern u8 _buffersSegmentBssEnd[];
|
2019-11-03 14:36:27 -05:00
|
|
|
|
|
|
|
|
DECLARE_LEVEL_SEGMENT(menu)
|
|
|
|
|
DECLARE_LEVEL_SEGMENT(intro)
|
|
|
|
|
DECLARE_LEVEL_SEGMENT(ending)
|
2019-12-01 21:52:53 -05:00
|
|
|
|
|
|
|
|
#define STUB_LEVEL(_0, _1, _2, _3, _4, _5, _6, _7, _8)
|
|
|
|
|
#define DEFINE_LEVEL(_0, _1, _2, folder, _4, _5, _6, _7, _8, _9, _10) DECLARE_LEVEL_SEGMENT(folder)
|
|
|
|
|
|
|
|
|
|
#include "levels/level_defines.h"
|
|
|
|
|
|
|
|
|
|
#undef STUB_LEVEL
|
|
|
|
|
#undef DEFINE_LEVEL
|
2019-11-03 14:36:27 -05:00
|
|
|
|
2020-12-03 20:19:03 -05:00
|
|
|
DECLARE_SEGMENT(segment2_yay0)
|
|
|
|
|
|
|
|
|
|
DECLARE_SEGMENT(water_skybox_yay0)
|
|
|
|
|
DECLARE_SEGMENT(ccm_skybox_yay0)
|
|
|
|
|
DECLARE_SEGMENT(clouds_skybox_yay0)
|
|
|
|
|
DECLARE_SEGMENT(bitfs_skybox_yay0)
|
|
|
|
|
DECLARE_SEGMENT(wdw_skybox_yay0)
|
|
|
|
|
DECLARE_SEGMENT(cloud_floor_skybox_yay0)
|
|
|
|
|
DECLARE_SEGMENT(ssl_skybox_yay0)
|
|
|
|
|
DECLARE_SEGMENT(bbh_skybox_yay0)
|
|
|
|
|
DECLARE_SEGMENT(bidw_skybox_yay0)
|
|
|
|
|
DECLARE_SEGMENT(bits_skybox_yay0)
|
|
|
|
|
|
|
|
|
|
DECLARE_SEGMENT(fire_yay0)
|
|
|
|
|
DECLARE_SEGMENT(spooky_yay0)
|
|
|
|
|
DECLARE_SEGMENT(generic_yay0)
|
|
|
|
|
DECLARE_SEGMENT(water_yay0)
|
|
|
|
|
DECLARE_SEGMENT(sky_yay0)
|
|
|
|
|
DECLARE_SEGMENT(snow_yay0)
|
|
|
|
|
DECLARE_SEGMENT(cave_yay0)
|
|
|
|
|
DECLARE_SEGMENT(machine_yay0)
|
|
|
|
|
DECLARE_SEGMENT(mountain_yay0)
|
|
|
|
|
DECLARE_SEGMENT(grass_yay0)
|
|
|
|
|
DECLARE_SEGMENT(outside_yay0)
|
|
|
|
|
DECLARE_SEGMENT(inside_yay0)
|
|
|
|
|
DECLARE_SEGMENT(effect_yay0)
|
|
|
|
|
DECLARE_SEGMENT(title_screen_bg_yay0)
|
|
|
|
|
|
|
|
|
|
DECLARE_SEGMENT(debug_level_select_yay0)
|
2019-11-03 14:36:27 -05:00
|
|
|
|
2020-06-02 12:44:34 -04:00
|
|
|
#ifdef VERSION_EU
|
2020-12-03 20:19:03 -05:00
|
|
|
DECLARE_SEGMENT(translation_de_yay0)
|
|
|
|
|
DECLARE_SEGMENT(translation_en_yay0)
|
|
|
|
|
DECLARE_SEGMENT(translation_fr_yay0)
|
2020-06-02 12:44:34 -04:00
|
|
|
#endif
|
|
|
|
|
|
2021-06-07 23:31:12 -04:00
|
|
|
//added for compatibility
|
|
|
|
|
DECLARE_SEGMENT(segment2_mio0)
|
|
|
|
|
|
|
|
|
|
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)
|
|
|
|
|
|
|
|
|
|
#ifdef VERSION_EU
|
|
|
|
|
DECLARE_SEGMENT(translation_de_mio0)
|
|
|
|
|
DECLARE_SEGMENT(translation_en_mio0)
|
|
|
|
|
DECLARE_SEGMENT(translation_fr_mio0)
|
|
|
|
|
#endif
|
|
|
|
|
|
2019-11-03 14:36:27 -05:00
|
|
|
#endif
|
2021-09-26 11:34:20 -07:00
|
|
|
|
|
|
|
|
#endif // SEGMENT_SYMBOLS_H
|