diff --git a/360/media/hd/rarch_settings.xui b/360/media/hd/rarch_settings.xui index 351e530561..df33f2460f 100644 --- a/360/media/hd/rarch_settings.xui +++ b/360/media/hd/rarch_settings.xui @@ -31,6 +31,8 @@ 383.040009 44.880005,64.959991,0.000000 Rewind: +Info messages: +Menus: Gamma Correction: Color Format: Shader #1: @@ -197,6 +199,18 @@ Custom Scaling Factor: 0.000000,10.000000,0.000000 + + +control_ListItem +226.000000 +45.000000 +7.000000,22.000000,0.000000 +5 +false +XuiButton +0.000000,10.000000,0.000000 + + diff --git a/360/media/sd/rarch_settings.xui b/360/media/sd/rarch_settings.xui index e04bd092bf..3b63a8a502 100644 --- a/360/media/sd/rarch_settings.xui +++ b/360/media/sd/rarch_settings.xui @@ -31,6 +31,8 @@ 232.720001 44.880005,64.959991,0.000000 Rewind: +Info messages: +Menus: Color Format: Gamma Correction: Shader #1: @@ -173,6 +175,18 @@ Cutom Scaling Factor: 0.000000,10.000000,0.000000 + + +control_ListItem +226.000000 +45.000000 +7.000000,22.000000,0.000000 +5 +false +XuiButton +0.000000,10.000000,0.000000 + + diff --git a/360/menu.cpp b/360/menu.cpp index 2f61ac54fe..21f5c187e2 100644 --- a/360/menu.cpp +++ b/360/menu.cpp @@ -31,7 +31,6 @@ CRetroArch app; HXUIOBJ hCur; filebrowser_t browser; filebrowser_t tmp_browser; -bool hdmenus_allowed; uint32_t set_shader = 0; static void return_to_game (void) @@ -239,6 +238,8 @@ HRESULT CRetroArchSettings::OnInit(XUIMessageInit * pInitData, BOOL& bHandled) snprintf(scalefactor, sizeof(scalefactor), "Scale Factor: %f (X) / %f (Y)", g_settings.video.fbo_scale_x, g_settings.video.fbo_scale_y); m_settingslist.SetText(SETTING_EMU_REWIND_ENABLED, g_settings.rewind_enable ? L"Rewind: ON" : L"Rewind: OFF"); + m_settingslist.SetText(SETTING_EMU_SHOW_INFO_MSG, g_console.info_msg_enable ? L"Info messages: ON" : L"Info messages: OFF"); + m_settingslist.SetText(SETTING_EMU_MENUS, g_console.menus_hd_enable ? L"Menus: HD" : L"Menus: SD"); m_settingslist.SetText(SETTING_GAMMA_CORRECTION_ENABLED, g_console.gamma_correction_enable ? L"Gamma correction: ON" : L"Gamma correction: OFF"); m_settingslist.SetText(SETTING_HW_TEXTURE_FILTER, g_settings.video.smooth ? L"Hardware filtering shader #1: Linear interpolation" : L"Hardware filtering shader #1: Point filtering"); m_settingslist.SetText(SETTING_HW_TEXTURE_FILTER_2, g_settings.video.second_pass_smooth ? L"Hardware filtering shader #2: Linear interpolation" : L"Hardware filtering shader #2: Point filtering"); @@ -629,24 +630,35 @@ HRESULT CRetroArchSettings::OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled msg_queue_push(g_extern.msg_queue, "INFO - You need to restart RetroArch for this change to take effect.", 1, 180); } break; + case SETTING_EMU_SHOW_INFO_MSG: + g_console.info_msg_enable = !g_console.info_msg_enable; + m_settingslist.SetText(SETTING_EMU_SHOW_INFO_MSG, g_console.info_msg_enable ? L"Info messages: ON" : L"Info messages: OFF"); + break; + case SETTING_EMU_MENUS: + g_console.menus_hd_enable = !g_console.menus_hd_enable; + m_settingslist.SetText(SETTING_EMU_MENUS, g_console.menus_hd_enable ? L"Menus: HD" : L"Menus: SD"); + break; case SETTING_GAMMA_CORRECTION_ENABLED: g_console.gamma_correction_enable = !g_console.gamma_correction_enable; m_settingslist.SetText(SETTING_GAMMA_CORRECTION_ENABLED, g_console.gamma_correction_enable ? L"Gamma correction: ON" : L"Gamma correction: OFF"); - msg_queue_clear(g_extern.msg_queue); - msg_queue_push(g_extern.msg_queue, "INFO - You need to restart RetroArch for this change to take effect.", 1, 180); + if(g_console.info_msg_enable) + { + msg_queue_clear(g_extern.msg_queue); + msg_queue_push(g_extern.msg_queue, "INFO - You need to restart RetroArch for this change to take effect.", 1, 180); + } break; case SETTING_COLOR_FORMAT: g_console.color_format = !g_console.color_format; m_settingslist.SetText(SETTING_COLOR_FORMAT, g_console.color_format ? L"Color format: 32bit ARGB" : L"Color format: 16bit RGBA"); if (g_console.info_msg_enable) - { - msg_queue_clear(g_extern.msg_queue); - msg_queue_push(g_extern.msg_queue, "INFO - You need to restart RetroArch for this change to take effect.", 1, 180); - } + { + msg_queue_clear(g_extern.msg_queue); + msg_queue_push(g_extern.msg_queue, "INFO - You need to restart RetroArch for this change to take effect.", 1, 180); + } break; case SETTING_SHADER: set_shader = 1; - hr = XuiSceneCreate(hdmenus_allowed ? L"file://game:/media/hd/" : L"file://game:/media/sd/", L"rarch_shader_browser.xur", NULL, &app.hShaderBrowser); + hr = XuiSceneCreate(g_console.menus_hd_enable ? L"file://game:/media/hd/" : L"file://game:/media/sd/", L"rarch_shader_browser.xur", NULL, &app.hShaderBrowser); if (hr < 0) { @@ -654,25 +666,25 @@ HRESULT CRetroArchSettings::OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled } hCur = app.hShaderBrowser; if (g_console.info_msg_enable) - { + { msg_queue_clear(g_extern.msg_queue); msg_queue_push(g_extern.msg_queue, "INFO - Select a shader from the menu by pressing the A button.", 1, 180); - } + } NavigateForward(app.hShaderBrowser); break; case SETTING_SHADER_2: set_shader = 2; - hr = XuiSceneCreate(hdmenus_allowed ? L"file://game:/media/hd/" : L"file://game:/media/sd/", L"rarch_shader_browser.xur", NULL, &app.hShaderBrowser); + hr = XuiSceneCreate(g_console.menus_hd_enable ? L"file://game:/media/hd/" : L"file://game:/media/sd/", L"rarch_shader_browser.xur", NULL, &app.hShaderBrowser); if (hr < 0) { RARCH_ERR("Failed to load scene.\n"); } hCur = app.hShaderBrowser; if (g_console.info_msg_enable) - { + { msg_queue_clear(g_extern.msg_queue); msg_queue_push(g_extern.msg_queue, "INFO - Select a shader from the menu by pressing the A button.", 1, 180); - } + } NavigateForward(app.hShaderBrowser); break; case SETTING_HW_TEXTURE_FILTER: @@ -699,7 +711,7 @@ HRESULT CRetroArchMain::OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled ) { xdk360_video_t *vid = (xdk360_video_t*)driver.video_data; - hdmenus_allowed = vid->video_mode.fIsHiDef && (g_console.aspect_ratio_index >= ASPECT_RATIO_16_9); + bool hdmenus_allowed = g_console.menus_hd_enable; HRESULT hr; diff --git a/360/menu.h b/360/menu.h index fed2d54ca8..04152cc3d2 100644 --- a/360/menu.h +++ b/360/menu.h @@ -23,6 +23,8 @@ enum { SETTING_EMU_REWIND_ENABLED = 0, + SETTING_EMU_SHOW_INFO_MSG, + SETTING_EMU_MENUS, SETTING_GAMMA_CORRECTION_ENABLED, SETTING_COLOR_FORMAT, SETTING_SHADER, diff --git a/360/xdk360_video.cpp b/360/xdk360_video.cpp index 3610e992fc..fec1db6fd9 100644 --- a/360/xdk360_video.cpp +++ b/360/xdk360_video.cpp @@ -454,6 +454,8 @@ static void *xdk360_init(const video_info_t *video, const input_driver_t **input // unsupported if(!d3d9->video_mode.fIsWideScreen) d3d9->d3dpp.Flags |= D3DPRESENTFLAG_NO_LETTERBOX; + + g_console.menus_hd_enable = d3d9->video_mode.fIsHiDef; d3d9->d3dpp.BackBufferWidth = d3d9->video_mode.fIsHiDef ? 1280 : 640; d3d9->d3dpp.BackBufferHeight = d3d9->video_mode.fIsHiDef ? 720 : 480; diff --git a/general.h b/general.h index 9a2ec4a612..3a0c31a013 100644 --- a/general.h +++ b/general.h @@ -207,6 +207,9 @@ struct console_settings bool default_savestate_dir_enable; bool fbo_enabled; bool frame_advance_enable; +#ifdef _XBOX + bool menus_hd_enable; +#endif bool initialize_rarch_enable; bool info_msg_enable; bool gamma_correction_enable;