Refresh 3

This commit is contained in:
n64
2019-11-03 14:36:27 -05:00
parent 6b8bc9b9ec
commit a7c423cb43
4603 changed files with 475500 additions and 437701 deletions

196
levels/menu/geo.c Normal file
View File

@@ -0,0 +1,196 @@
#include <ultra64.h>
#include "sm64.h"
#include "geo_commands.h"
#include "game/level_geo.h"
#include "game/geo_misc.h"
#include "game/camera.h"
#include "game/moving_texture.h"
#include "game/screen_transition.h"
#include "game/paintings.h"
#include "menu/file_select.h"
#include "menu/star_select.h"
#include "levels/menu/header.h"
// 0x0E0001D0
const GeoLayout geo_menu_mario_save_button[] = {
GEO_NODE_START(),
GEO_OPEN_NODE(),
GEO_SCALE(0x00, 524288),
GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, dl_menu_mario_save_button_base),
GEO_DISPLAY_LIST(LAYER_OPAQUE, dl_menu_save_button_back),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_END(),
};
// 0x0E000200
const GeoLayout geo_menu_mario_save_button_fade[] = {
GEO_NODE_START(),
GEO_OPEN_NODE(),
GEO_SCALE(0x00, 524288),
GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, dl_menu_mario_save_button_base),
GEO_DISPLAY_LIST(LAYER_OPAQUE, dl_menu_save_button_fade_back),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_END(),
};
// 0x0E000230
const GeoLayout geo_menu_mario_new_button[] = {
GEO_NODE_START(),
GEO_OPEN_NODE(),
GEO_SCALE(0x00, 524288),
GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, dl_menu_mario_new_button_base),
GEO_DISPLAY_LIST(LAYER_OPAQUE, dl_menu_save_button_back),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_END(),
};
// 0x0E000260
const GeoLayout geo_menu_mario_new_button_fade[] = {
GEO_NODE_START(),
GEO_OPEN_NODE(),
GEO_SCALE(0x00, 524288),
GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, dl_menu_mario_new_button_base),
GEO_DISPLAY_LIST(LAYER_OPAQUE, dl_menu_save_button_fade_back),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_END(),
};
// 0x0E000290
const GeoLayout geo_menu_erase_button[] = {
GEO_NODE_START(),
GEO_OPEN_NODE(),
GEO_SCALE(0x00, 524288),
GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, dl_menu_erase_button),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_END(),
};
// 0x0E0002B8
const GeoLayout geo_menu_copy_button[] = {
GEO_NODE_START(),
GEO_OPEN_NODE(),
GEO_SCALE(0x00, 524288),
GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, dl_menu_copy_button),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_END(),
};
// 0x0E0002E0
const GeoLayout geo_menu_file_button[] = {
GEO_NODE_START(),
GEO_OPEN_NODE(),
GEO_SCALE(0x00, 524288),
GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, dl_menu_file_button),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_END(),
};
// 0x0E000308
const GeoLayout geo_menu_score_button[] = {
GEO_NODE_START(),
GEO_OPEN_NODE(),
GEO_SCALE(0x00, 524288),
GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, dl_menu_score_button),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_END(),
};
// 0x0E000330
const GeoLayout geo_menu_sound_button[] = {
GEO_NODE_START(),
GEO_OPEN_NODE(),
GEO_SCALE(0x00, 524288),
GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, dl_menu_sound_button),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_END(),
};
// 0x0E000358
const GeoLayout geo_menu_generic_button[] = {
GEO_NODE_START(),
GEO_OPEN_NODE(),
GEO_SCALE(0x00, 524288),
GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, dl_menu_generic_button),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_END(),
};
// 0x0E000380
const GeoLayout geo_menu_file_select_strings_and_menu_cursor[] = {
GEO_NODE_SCREEN_AREA(10, SCREEN_WIDTH/2, SCREEN_HEIGHT/2, SCREEN_WIDTH/2, SCREEN_HEIGHT/2),
GEO_OPEN_NODE(),
GEO_ZBUFFER(0),
GEO_OPEN_NODE(),
GEO_NODE_ORTHO(100),
GEO_OPEN_NODE(),
GEO_BACKGROUND_COLOR(0x0001),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_ZBUFFER(1),
GEO_OPEN_NODE(),
GEO_CAMERA_FRUSTUM(45, 100, 25000),
GEO_OPEN_NODE(),
GEO_CAMERA(0, 0, 0, 1000, 0, 0, 0, 0x00000000),
GEO_OPEN_NODE(),
GEO_RENDER_OBJ(),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_ZBUFFER(0),
GEO_OPEN_NODE(),
GEO_ASM(0, geo_file_select_strings_and_menu_cursor),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_END(),
};
// 0x0E000408
const GeoLayout geo_menu_act_selector_strings[] = {
GEO_NODE_SCREEN_AREA(10, SCREEN_WIDTH/2, SCREEN_HEIGHT/2, SCREEN_WIDTH/2, SCREEN_HEIGHT/2),
GEO_OPEN_NODE(),
GEO_ZBUFFER(0),
GEO_OPEN_NODE(),
GEO_NODE_ORTHO(100),
GEO_OPEN_NODE(),
GEO_BACKGROUND_COLOR(0xFFFF),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_ZBUFFER(1),
GEO_OPEN_NODE(),
GEO_CAMERA_FRUSTUM(45, 100, 25000),
GEO_OPEN_NODE(),
GEO_CAMERA(0, 0, 0, 1000, 0, 0, 0, 0x00000000),
GEO_OPEN_NODE(),
GEO_RENDER_OBJ(),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_ZBUFFER(0),
GEO_OPEN_NODE(),
GEO_ASM(0, geo_act_selector_strings),
GEO_CLOSE_NODE(),
GEO_CLOSE_NODE(),
GEO_END(),
};

View File

@@ -1,157 +0,0 @@
glabel geo_menu_mario_save_button # 0x0E0001D0
geo_node_start
geo_open_node
geo_scale 0x00, 524288
geo_open_node
geo_display_list LAYER_OPAQUE, dl_menu_mario_save_button_base
geo_display_list LAYER_OPAQUE, dl_menu_save_button_back
geo_close_node
geo_close_node
geo_end
glabel geo_menu_mario_save_button_fade # 0x0E000200
geo_node_start
geo_open_node
geo_scale 0x00, 524288
geo_open_node
geo_display_list LAYER_OPAQUE, dl_menu_mario_save_button_base
geo_display_list LAYER_OPAQUE, dl_menu_save_button_fade_back
geo_close_node
geo_close_node
geo_end
glabel geo_menu_mario_new_button # 0x0E000230
geo_node_start
geo_open_node
geo_scale 0x00, 524288
geo_open_node
geo_display_list LAYER_OPAQUE, dl_menu_mario_new_button_base
geo_display_list LAYER_OPAQUE, dl_menu_save_button_back
geo_close_node
geo_close_node
geo_end
glabel geo_menu_mario_new_button_fade # 0x0E000260
geo_node_start
geo_open_node
geo_scale 0x00, 524288
geo_open_node
geo_display_list LAYER_OPAQUE, dl_menu_mario_new_button_base
geo_display_list LAYER_OPAQUE, dl_menu_save_button_fade_back
geo_close_node
geo_close_node
geo_end
glabel geo_menu_erase_button # 0x0E000290
geo_node_start
geo_open_node
geo_scale 0x00, 524288
geo_open_node
geo_display_list LAYER_OPAQUE, dl_menu_erase_button
geo_close_node
geo_close_node
geo_end
glabel geo_menu_copy_button # 0x0E0002B8
geo_node_start
geo_open_node
geo_scale 0x00, 524288
geo_open_node
geo_display_list LAYER_OPAQUE, dl_menu_copy_button
geo_close_node
geo_close_node
geo_end
glabel geo_menu_file_button # 0x0E0002E0
geo_node_start
geo_open_node
geo_scale 0x00, 524288
geo_open_node
geo_display_list LAYER_OPAQUE, dl_menu_file_button
geo_close_node
geo_close_node
geo_end
glabel geo_menu_score_button # 0x0E000308
geo_node_start
geo_open_node
geo_scale 0x00, 524288
geo_open_node
geo_display_list LAYER_OPAQUE, dl_menu_score_button
geo_close_node
geo_close_node
geo_end
glabel geo_menu_sound_button # 0x0E000330
geo_node_start
geo_open_node
geo_scale 0x00, 524288
geo_open_node
geo_display_list LAYER_OPAQUE, dl_menu_sound_button
geo_close_node
geo_close_node
geo_end
glabel geo_menu_generic_button # 0x0E000358
geo_node_start
geo_open_node
geo_scale 0x00, 524288
geo_open_node
geo_display_list LAYER_OPAQUE, dl_menu_generic_button
geo_close_node
geo_close_node
geo_end
glabel geo_menu_file_select_strings_and_menu_cursor # 0x0E000380
geo_node_screen_area 10, SCREEN_WIDTH/2, SCREEN_HEIGHT/2, SCREEN_WIDTH/2, SCREEN_HEIGHT/2
geo_open_node
geo_zbuffer 0
geo_open_node
geo_node_ortho 100
geo_open_node
geo_background 0x0001
geo_close_node
geo_close_node
geo_zbuffer 1
geo_open_node
geo_camera_frustum 45, 100, 25000
geo_open_node
geo_camera 0, 0, 0, 1000, 0, 0, 0, 0x00000000
geo_open_node
geo_render_obj
geo_close_node
geo_close_node
geo_close_node
geo_zbuffer 0
geo_open_node
geo_asm 0, geo_file_select_strings_and_menu_cursor
geo_close_node
geo_close_node
geo_end
glabel geo_menu_act_selector_strings # 0x0E000408
geo_node_screen_area 10, SCREEN_WIDTH/2, SCREEN_HEIGHT/2, SCREEN_WIDTH/2, SCREEN_HEIGHT/2
geo_open_node
geo_zbuffer 0
geo_open_node
geo_node_ortho 100
geo_open_node
geo_background 0xFFFF
geo_close_node
geo_close_node
geo_zbuffer 1
geo_open_node
geo_camera_frustum 45, 100, 25000
geo_open_node
geo_camera 0, 0, 0, 1000, 0, 0, 0, 0x00000000
geo_open_node
geo_render_obj
geo_close_node
geo_close_node
geo_close_node
geo_zbuffer 0
geo_open_node
geo_asm 0, geo_act_selector_strings
geo_close_node
geo_close_node
geo_end

47
levels/menu/header.h Normal file
View File

@@ -0,0 +1,47 @@
#ifndef MENU_HEADER_H
#define MENU_HEADER_H
#include "types.h"
// geo
extern const GeoLayout geo_menu_mario_save_button[];
extern const GeoLayout geo_menu_mario_save_button_fade[];
extern const GeoLayout geo_menu_mario_new_button[];
extern const GeoLayout geo_menu_mario_new_button_fade[];
extern const GeoLayout geo_menu_erase_button[];
extern const GeoLayout geo_menu_copy_button[];
extern const GeoLayout geo_menu_file_button[];
extern const GeoLayout geo_menu_score_button[];
extern const GeoLayout geo_menu_sound_button[];
extern const GeoLayout geo_menu_generic_button[];
extern const GeoLayout geo_menu_file_select_strings_and_menu_cursor[];
extern const GeoLayout geo_menu_act_selector_strings[];
// leveldata
extern const Gfx dl_menu_mario_save_button_base[];
extern const Gfx dl_menu_mario_new_button_base[];
extern const Gfx dl_menu_save_button_back[];
extern const Gfx dl_menu_save_button_fade_back[];
extern const Gfx dl_menu_erase_button[];
extern const Gfx dl_menu_copy_button[];
extern const Gfx dl_menu_file_button[];
extern const Gfx dl_menu_score_button[];
extern const Gfx dl_menu_sound_button[];
extern const Gfx dl_menu_generic_button[];
extern const Gfx dl_menu_idle_hand[];
extern const Gfx dl_menu_grabbing_hand[];
extern const u8 *const menu_hud_lut[];
extern const u8 *const menu_font_lut[];
extern const Gfx dl_menu_ia8_text_begin[];
extern const Gfx dl_menu_ia8_text_end[];
extern const Gfx dl_menu_rgba16_wood_course[];
extern const Gfx dl_menu_texture_course_upper[];
extern const Gfx dl_menu_texture_niveau_upper[];
extern const Gfx dl_menu_texture_kurs_upper[];
extern const Collision main_menu_seg7_collision[];
// script
extern const LevelScript level_main_menu_entry_1[];
extern const LevelScript level_main_menu_entry_2[];
#endif

View File

@@ -1,7 +0,0 @@
.include "macros.inc"
.include "level_commands.inc"
.include "geo_commands.inc"
leveldata menu
levelscript menu
levelgeo menu

1845
levels/menu/leveldata.c Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

87
levels/menu/script.c Normal file
View File

@@ -0,0 +1,87 @@
#include <ultra64.h>
#include "sm64.h"
#include "behavior_data.h"
#include "model_ids.h"
#include "seq_ids.h"
#include "segment_symbols.h"
#include "level_commands.h"
#include "game/level_update.h"
#include "menu/file_select.h"
#include "menu/star_select.h"
#include "levels/scripts.h"
#include "actors/common1.h"
#include "make_const_nonconst.h"
#include "levels/menu/header.h"
const LevelScript level_main_menu_entry_1[] = {
INIT_LEVEL(),
FIXED_LOAD(/*loadAddr*/ _goddardSegmentStart, /*romStart*/ _goddardSegmentRomStart, /*romEnd*/ _goddardSegmentRomEnd),
LOAD_MIO0(/*seg*/ 0x07, _menu_segment_7SegmentRomStart, _menu_segment_7SegmentRomEnd),
LOAD_RAW(/*seg*/ 0x13, _behaviorSegmentRomStart, _behaviorSegmentRomEnd),
ALLOC_LEVEL_POOL(),
LOAD_MODEL_FROM_GEO(MODEL_MAIN_MENU_MARIO_SAVE_BUTTON, geo_menu_mario_save_button),
LOAD_MODEL_FROM_GEO(MODEL_MAIN_MENU_RED_ERASE_BUTTON, geo_menu_erase_button),
LOAD_MODEL_FROM_GEO(MODEL_MAIN_MENU_BLUE_COPY_BUTTON, geo_menu_copy_button),
LOAD_MODEL_FROM_GEO(MODEL_MAIN_MENU_YELLOW_FILE_BUTTON, geo_menu_file_button),
LOAD_MODEL_FROM_GEO(MODEL_MAIN_MENU_GREEN_SCORE_BUTTON, geo_menu_score_button),
LOAD_MODEL_FROM_GEO(MODEL_MAIN_MENU_MARIO_SAVE_BUTTON_FADE, geo_menu_mario_save_button_fade),
LOAD_MODEL_FROM_GEO(MODEL_MAIN_MENU_MARIO_NEW_BUTTON, geo_menu_mario_new_button),
LOAD_MODEL_FROM_GEO(MODEL_MAIN_MENU_MARIO_NEW_BUTTON_FADE, geo_menu_mario_new_button_fade),
LOAD_MODEL_FROM_GEO(MODEL_MAIN_MENU_PURPLE_SOUND_BUTTON, geo_menu_sound_button),
LOAD_MODEL_FROM_GEO(MODEL_MAIN_MENU_GENERIC_BUTTON, geo_menu_generic_button),
AREA(/*index*/ 1, geo_menu_file_select_strings_and_menu_cursor),
OBJECT(/*model*/ MODEL_NONE, /*pos*/ 0, 0, -19000, /*angle*/ 0, 0, 0, /*behParam*/ 0x04000000, /*beh*/ bhvMenuButtonManager),
OBJECT(/*model*/ MODEL_MAIN_MENU_YELLOW_FILE_BUTTON, /*pos*/ 0, 0, -19000, /*angle*/ 0, 0, 0, /*behParam*/ 0x04000000, /*beh*/ bhvYellowBackgroundInMenu),
TERRAIN(/*terrainData*/ main_menu_seg7_collision),
END_AREA(),
FREE_LEVEL_POOL(),
LOAD_AREA(/*area*/ 1),
SET_MENU_MUSIC(/*seq*/ 0x0021),
TRANSITION(/*transType*/ 0, /*time*/ 16, /*color*/ -1, -1, -1),
CALL(/*arg*/ 0, /*func*/ lvl_init_menu_values_and_cursor_pos),
CALL_LOOP(/*arg*/ 0, /*func*/ lvl_update_obj_and_load_file_selected),
GET_OR_SET(/*op*/ OP_SET, /*var*/ VAR_CURR_SAVE_FILE_NUM),
STOP_MUSIC(/*fadeOutTime*/ 0x00BE),
TRANSITION(/*transType*/ 1, /*time*/ 16, /*color*/ -1, -1, -1),
SLEEP(/*frames*/ 16),
CLEAR_LEVEL(),
SLEEP_BEFORE_EXIT(/*frames*/ 1),
SET_REG(/*value*/ 16),
EXIT_AND_EXECUTE(/*seg*/ 0x15, _scriptsSegmentRomStart, _scriptsSegmentRomEnd, level_main_scripts_entry),
};
const LevelScript level_main_menu_entry_2[] = {
/*0*/ CALL(/*arg*/ 0, /*func*/ lvl_set_current_level),
/*2*/ JUMP_IF(/*op*/ OP_EQ, /*arg*/ 0, level_main_menu_entry_2 + 42),
/*5*/ INIT_LEVEL(),
/*6*/ FIXED_LOAD(/*loadAddr*/ _goddardSegmentStart, /*romStart*/ _goddardSegmentRomStart, /*romEnd*/ _goddardSegmentRomEnd),
/*10*/ LOAD_MIO0(/*seg*/ 0x07, _menu_segment_7SegmentRomStart, _menu_segment_7SegmentRomEnd),
/*13*/ ALLOC_LEVEL_POOL(),
/*14*/ AREA(/*index*/ 2, geo_menu_act_selector_strings),
/*16*/ OBJECT(/*model*/ MODEL_NONE, /*pos*/ 0, -100, 0, /*angle*/ 0, 0, 0, /*behParam*/ 0x04000000, /*beh*/ bhvActSelector),
/*22*/ TERRAIN(/*terrainData*/ main_menu_seg7_collision),
/*24*/ END_AREA(),
/*25*/ FREE_LEVEL_POOL(),
/*26*/ LOAD_AREA(/*area*/ 2),
/*27*/ TRANSITION(/*transType*/ 0, /*time*/ 16, /*color*/ -1, -1, -1),
/*29*/ SLEEP(/*frames*/ 16),
/*30*/ SET_MENU_MUSIC(/*seq*/ 0x000D),
/*31*/ CALL(/*arg*/ 0, /*func*/ lvl_init_act_selector_values_and_stars),
/*33*/ CALL_LOOP(/*arg*/ 0, /*func*/ lvl_update_obj_and_load_act_button_actions),
/*35*/ GET_OR_SET(/*op*/ OP_SET, /*var*/ VAR_CURR_ACT_NUM),
/*36*/ STOP_MUSIC(/*fadeOutTime*/ 0x00BE),
/*37*/ TRANSITION(/*transType*/ 1, /*time*/ 16, /*color*/ -1, -1, -1),
/*39*/ SLEEP(/*frames*/ 16),
/*40*/ CLEAR_LEVEL(),
/*41*/ SLEEP_BEFORE_EXIT(/*frames*/ 1),
// L1:
/*42*/ EXIT(),
};

View File

@@ -1,66 +0,0 @@
glabel level_main_menu_entry_1
init_level
fixed_load /*loadAddr*/ _goddardSegmentStart, /*romStart*/ _goddardSegmentRomStart, /*romEnd*/ _goddardSegmentRomEnd
load_mio0 /*seg*/ 0x07, /*romStart*/ _menu_segment_7SegmentRomStart, /*romEnd*/ _menu_segment_7SegmentRomEnd
load_raw /*seg*/ 0x13, /*romStart*/ _behaviorSegmentRomStart, /*romEnd*/ _behaviorSegmentRomEnd
alloc_level_pool
load_model_from_geo /*model*/ MODEL_MAIN_MENU_MARIO_SAVE_BUTTON, /*geo*/ geo_menu_mario_save_button
load_model_from_geo /*model*/ MODEL_MAIN_MENU_RED_ERASE_BUTTON, /*geo*/ geo_menu_erase_button
load_model_from_geo /*model*/ MODEL_MAIN_MENU_BLUE_COPY_BUTTON, /*geo*/ geo_menu_copy_button
load_model_from_geo /*model*/ MODEL_MAIN_MENU_YELLOW_FILE_BUTTON, /*geo*/ geo_menu_file_button
load_model_from_geo /*model*/ MODEL_MAIN_MENU_GREEN_SCORE_BUTTON, /*geo*/ geo_menu_score_button
load_model_from_geo /*model*/ MODEL_MAIN_MENU_MARIO_SAVE_BUTTON_FADE, /*geo*/ geo_menu_mario_save_button_fade
load_model_from_geo /*model*/ MODEL_MAIN_MENU_MARIO_NEW_BUTTON, /*geo*/ geo_menu_mario_new_button
load_model_from_geo /*model*/ MODEL_MAIN_MENU_MARIO_NEW_BUTTON_FADE, /*geo*/ geo_menu_mario_new_button_fade
load_model_from_geo /*model*/ MODEL_MAIN_MENU_PURPLE_SOUND_BUTTON, /*geo*/ geo_menu_sound_button
load_model_from_geo /*model*/ MODEL_MAIN_MENU_GENERIC_BUTTON, /*geo*/ geo_menu_generic_button
area /*index*/ 1, /*geo*/ geo_menu_file_select_strings_and_menu_cursor
object /*model*/ MODEL_NONE, /*pos*/ 0, 0, -19000, /*angle*/ 0, 0, 0, /*behParam*/ 0x04000000, /*beh*/ bhvMenuButtonManager
object /*model*/ MODEL_MAIN_MENU_YELLOW_FILE_BUTTON, /*pos*/ 0, 0, -19000, /*angle*/ 0, 0, 0, /*behParam*/ 0x04000000, /*beh*/ bhvYellowBackgroundInMenu
terrain /*terrainData*/ main_menu_seg7_collision
end_area
free_level_pool
load_area /*area*/ 1
set_menu_music /*seq*/ 0x0021
transition /*unk2*/ 0, /*unk3*/ 16, /*color*/ -1, -1, -1
call /*arg*/ 0, /*func*/ lvl_init_menu_values_and_cursor_pos
call_loop /*arg*/ 0, /*func*/ lvl_update_obj_and_load_file_selected
get_or_set /*op*/ OP_SET, /*var*/ VAR_CURR_SAVE_FILE_NUM
cmd38 /*unk2*/ 0x00BE
transition /*unk2*/ 1, /*unk3*/ 16, /*color*/ -1, -1, -1
sleep /*frames*/ 16
clear_level
sleep_before_exit /*frames*/ 1
set_reg /*value*/ 16
exit_and_execute /*seg*/ 0x15, /*script*/ _scriptsSegmentRomStart, /*scriptEnd*/ _scriptsSegmentRomEnd, /*entry*/ level_main_scripts_entry
glabel level_main_menu_entry_2
call /*arg*/ 0, /*func*/ lvl_set_current_level
jump_if /*op*/ OP_EQ, /*arg*/ 0, /*target*/ L1
init_level
fixed_load /*loadAddr*/ _goddardSegmentStart, /*romStart*/ _goddardSegmentRomStart, /*romEnd*/ _goddardSegmentRomEnd
load_mio0 /*seg*/ 0x07, /*romStart*/ _menu_segment_7SegmentRomStart, /*romEnd*/ _menu_segment_7SegmentRomEnd
alloc_level_pool
area /*index*/ 2, /*geo*/ geo_menu_act_selector_strings
object /*model*/ MODEL_NONE, /*pos*/ 0, -100, 0, /*angle*/ 0, 0, 0, /*behParam*/ 0x04000000, /*beh*/ bhvActSelector
terrain /*terrainData*/ main_menu_seg7_collision
end_area
free_level_pool
load_area /*area*/ 2
transition /*unk2*/ 0, /*unk3*/ 16, /*color*/ -1, -1, -1
sleep /*frames*/ 16
set_menu_music /*seq*/ 0x000D
call /*arg*/ 0, /*func*/ lvl_init_act_selector_values_and_stars
call_loop /*arg*/ 0, /*func*/ lvl_update_obj_and_load_act_button_actions
get_or_set /*op*/ OP_SET, /*var*/ VAR_CURR_ACT_NUM
cmd38 /*unk2*/ 0x00BE
transition /*unk2*/ 1, /*unk3*/ 16, /*color*/ -1, -1, -1
sleep /*frames*/ 16
clear_level
sleep_before_exit /*frames*/ 1
L1:
exit