Indentation fixes

This commit is contained in:
Twinaphex 2012-05-29 15:25:39 +02:00
parent b995f8da9f
commit 68af1626d9
8 changed files with 1292 additions and 1324 deletions

View File

@ -86,8 +86,9 @@ typedef struct {
// All elements are defaulted to NULL
static Font_Locals_t s_FontLocals; // Global static instance
static void xdk360_video_font_draw_text(xdk360_video_font_t * font, float fOriginX, float fOriginY, unsigned long dwColor,
const wchar_t * strText, float fMaxPixelWidth )
static void xdk360_video_font_draw_text(xdk360_video_font_t * font,
float fOriginX, float fOriginY, unsigned long dwColor,
const wchar_t * strText, float fMaxPixelWidth )
{
if( strText == NULL || strText[0] == L'\0')
return;
@ -164,7 +165,8 @@ static void xdk360_video_font_draw_text(xdk360_video_font_t * font, float fOrigi
}
// Translate unprintable characters
const GLYPH_ATTR * pGlyph = &font->m_Glyphs[ ( letter <= font->m_cMaxGlyph ) ? font->m_TranslatorTable[letter] : 0 ];
const GLYPH_ATTR * pGlyph = &font->m_Glyphs[ ( letter <= font->m_cMaxGlyph )
? font->m_TranslatorTable[letter] : 0 ];
float fOffset = font->m_fXScaleFactor * (float)pGlyph->wOffset;
float fAdvance = font->m_fXScaleFactor * (float)pGlyph->wAdvance;

View File

@ -27,7 +27,7 @@
#include "../general.h"
CRetroArch app;
CRetroArch app;
HXUIOBJ hCur;
filebrowser_t browser;
filebrowser_t tmp_browser;
@ -132,7 +132,7 @@ HRESULT CRetroArchControls::OnInit(XUIMessageInit * pInitData, BOOL& bHandled)
for(i = 0; i < RARCH_FIRST_META_KEY; i++)
{
snprintf(buttons[i], sizeof(buttons[i]), "%s #%d: %s", rarch_default_libretro_keybind_name_lut[i], controlno, rarch_input_find_platform_key_label(g_settings.input.binds[controlno][i].joykey));
snprintf(buttons[i], sizeof(buttons[i]), "%s #%d: %s", rarch_default_libretro_keybind_name_lut[i], controlno, rarch_input_find_platform_key_label(g_settings.input.binds[controlno][i].joykey));
m_controlslist.SetText(i, rarch_convert_char_to_wchar(buttons[i]));
}
@ -150,32 +150,32 @@ HRESULT CRetroArchControls::OnControlNavigate(XUIMessageControlNavigate *pContro
for(i = 0; i < RARCH_FIRST_META_KEY; i++)
{
snprintf(buttons[i], sizeof(buttons[i]), "%s #%d: %s", rarch_default_libretro_keybind_name_lut[i], controlno, rarch_input_find_platform_key_label(g_settings.input.binds[controlno][i].joykey));
snprintf(buttons[i], sizeof(buttons[i]), "%s #%d: %s", rarch_default_libretro_keybind_name_lut[i], controlno, rarch_input_find_platform_key_label(g_settings.input.binds[controlno][i].joykey));
m_controlslist.SetText(i, rarch_convert_char_to_wchar(buttons[i]));
}
switch(pControlNavigateData->nControlNavigate)
{
case XUI_CONTROL_NAVIGATE_LEFT:
if(current_index > 0 && current_index != SETTING_CONTROLS_DEFAULT_ALL)
{
rarch_input_set_keybind(controlno, KEYBIND_DECREMENT, current_index);
snprintf(button, sizeof(button), "%s #%d: %s", rarch_default_libretro_keybind_name_lut[current_index], controlno, rarch_input_find_platform_key_label(g_settings.input.binds[controlno][current_index].joykey));
m_controlslist.SetText(current_index, rarch_convert_char_to_wchar(button));
}
break;
case XUI_CONTROL_NAVIGATE_RIGHT:
if(current_index < RARCH_FIRST_META_KEY && current_index != SETTING_CONTROLS_DEFAULT_ALL)
{
rarch_input_set_keybind(controlno, KEYBIND_INCREMENT, current_index);
snprintf(button, sizeof(button), "%s #%d: %s", rarch_default_libretro_keybind_name_lut[current_index], controlno, rarch_input_find_platform_key_label(g_settings.input.binds[controlno][current_index].joykey));
m_controlslist.SetText(current_index, rarch_convert_char_to_wchar(button));
}
break;
case XUI_CONTROL_NAVIGATE_UP:
case XUI_CONTROL_NAVIGATE_DOWN:
break;
}
switch(pControlNavigateData->nControlNavigate)
{
case XUI_CONTROL_NAVIGATE_LEFT:
if(current_index > 0 && current_index != SETTING_CONTROLS_DEFAULT_ALL)
{
rarch_input_set_keybind(controlno, KEYBIND_DECREMENT, current_index);
snprintf(button, sizeof(button), "%s #%d: %s", rarch_default_libretro_keybind_name_lut[current_index], controlno, rarch_input_find_platform_key_label(g_settings.input.binds[controlno][current_index].joykey));
m_controlslist.SetText(current_index, rarch_convert_char_to_wchar(button));
}
break;
case XUI_CONTROL_NAVIGATE_RIGHT:
if(current_index < RARCH_FIRST_META_KEY && current_index != SETTING_CONTROLS_DEFAULT_ALL)
{
rarch_input_set_keybind(controlno, KEYBIND_INCREMENT, current_index);
snprintf(button, sizeof(button), "%s #%d: %s", rarch_default_libretro_keybind_name_lut[current_index], controlno, rarch_input_find_platform_key_label(g_settings.input.binds[controlno][current_index].joykey));
m_controlslist.SetText(current_index, rarch_convert_char_to_wchar(button));
}
break;
case XUI_CONTROL_NAVIGATE_UP:
case XUI_CONTROL_NAVIGATE_DOWN:
break;
}
return 0;
}
@ -197,13 +197,13 @@ HRESULT CRetroArchControls::OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled
for(i = 0; i < RARCH_FIRST_META_KEY; i++)
{
snprintf(buttons[i], sizeof(buttons[i]), "%s #%d: %s", rarch_default_libretro_keybind_name_lut[i], controlno, rarch_input_find_platform_key_label(g_settings.input.binds[controlno][i].joykey));
snprintf(buttons[i], sizeof(buttons[i]), "%s #%d: %s", rarch_default_libretro_keybind_name_lut[i], controlno, rarch_input_find_platform_key_label(g_settings.input.binds[controlno][i].joykey));
m_controlslist.SetText(i, rarch_convert_char_to_wchar(buttons[i]));
}
break;
default:
rarch_input_set_keybind(controlno, KEYBIND_DEFAULT, current_index);
snprintf(buttons[current_index], sizeof(buttons[current_index]), "%s #%d: %s", rarch_default_libretro_keybind_name_lut[current_index], controlno, rarch_input_find_platform_key_label(g_settings.input.binds[controlno][current_index].joykey));
snprintf(buttons[current_index], sizeof(buttons[current_index]), "%s #%d: %s", rarch_default_libretro_keybind_name_lut[current_index], controlno, rarch_input_find_platform_key_label(g_settings.input.binds[controlno][current_index].joykey));
m_controlslist.SetText(current_index, rarch_convert_char_to_wchar(buttons[current_index]));
break;
}
@ -246,48 +246,48 @@ HRESULT CRetroArchSettings::OnControlNavigate(XUIMessageControlNavigate *pContro
current_index = m_settingslist.GetCurSel();
switch(pControlNavigateData->nControlNavigate)
{
case XUI_CONTROL_NAVIGATE_LEFT:
switch(current_index)
{
case SETTING_SCALE_FACTOR:
if(vid->fbo_enabled)
{
if((g_settings.video.fbo_scale_x > MIN_SCALING_FACTOR))
{
rarch_settings_change(S_SCALE_FACTOR_DECREMENT);
//xdk360_gfx_init_fbo(vid);
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_SCALE_FACTOR, rarch_convert_char_to_wchar(scalefactor));
}
}
default:
break;
}
break;
case XUI_CONTROL_NAVIGATE_RIGHT:
switch(current_index)
{
case SETTING_SCALE_FACTOR:
if(vid->fbo_enabled)
{
if((g_settings.video.fbo_scale_x < MAX_SCALING_FACTOR))
{
rarch_settings_change(S_SCALE_FACTOR_INCREMENT);
//xdk360_gfx_init_fbo(vid);
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_SCALE_FACTOR, rarch_convert_char_to_wchar(scalefactor));
}
}
default:
break;
}
break;
case XUI_CONTROL_NAVIGATE_UP:
case XUI_CONTROL_NAVIGATE_DOWN:
break;
}
switch(pControlNavigateData->nControlNavigate)
{
case XUI_CONTROL_NAVIGATE_LEFT:
switch(current_index)
{
case SETTING_SCALE_FACTOR:
if(vid->fbo_enabled)
{
if((g_settings.video.fbo_scale_x > MIN_SCALING_FACTOR))
{
rarch_settings_change(S_SCALE_FACTOR_DECREMENT);
//xdk360_gfx_init_fbo(vid);
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_SCALE_FACTOR, rarch_convert_char_to_wchar(scalefactor));
}
}
default:
break;
}
break;
case XUI_CONTROL_NAVIGATE_RIGHT:
switch(current_index)
{
case SETTING_SCALE_FACTOR:
if(vid->fbo_enabled)
{
if((g_settings.video.fbo_scale_x < MAX_SCALING_FACTOR))
{
rarch_settings_change(S_SCALE_FACTOR_INCREMENT);
//xdk360_gfx_init_fbo(vid);
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_SCALE_FACTOR, rarch_convert_char_to_wchar(scalefactor));
}
}
default:
break;
}
break;
case XUI_CONTROL_NAVIGATE_UP:
case XUI_CONTROL_NAVIGATE_DOWN:
break;
}
return 0;
}
@ -296,6 +296,7 @@ HRESULT CRetroArchQuickMenu::OnInit(XUIMessageInit * pInitData, BOOL& bHandled)
{
GetChildById(L"XuiQuickMenuList", &m_quickmenulist);
GetChildById(L"XuiBackButton", &m_back);
switch(g_console.screen_orientation)
{
case ORIENTATION_NORMAL:
@ -311,6 +312,7 @@ HRESULT CRetroArchQuickMenu::OnInit(XUIMessageInit * pInitData, BOOL& bHandled)
m_quickmenulist.SetText(MENU_ITEM_ORIENTATION, L"Orientation: Flipped Rotated");
break;
}
char aspectratio_label[32];
snprintf(aspectratio_label, sizeof(aspectratio_label), "Aspect Ratio: %s", aspectratio_lut[g_console.aspect_ratio_index].name);
wchar_t * aspectratio_label_w = rarch_convert_char_to_wchar(aspectratio_label);
@ -346,80 +348,80 @@ HRESULT CRetroArchQuickMenu::OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled
}
break;
case MENU_ITEM_KEEP_ASPECT_RATIO:
{
g_console.aspect_ratio_index++;
if(g_console.aspect_ratio_index >= ASPECT_RATIO_END)
g_console.aspect_ratio_index = 0;
{
g_console.aspect_ratio_index++;
if(g_console.aspect_ratio_index >= ASPECT_RATIO_END)
g_console.aspect_ratio_index = 0;
gfx_ctx_set_aspect_ratio(d3d9, g_console.aspect_ratio_index);
char aspectratio_label[32];
snprintf(aspectratio_label, sizeof(aspectratio_label), "Aspect Ratio: %s", aspectratio_lut[g_console.aspect_ratio_index].name);
wchar_t * aspectratio_label_w = rarch_convert_char_to_wchar(aspectratio_label);
m_quickmenulist.SetText(MENU_ITEM_KEEP_ASPECT_RATIO, aspectratio_label_w);
free(aspectratio_label_w);
}
gfx_ctx_set_aspect_ratio(d3d9, g_console.aspect_ratio_index);
char aspectratio_label[32];
snprintf(aspectratio_label, sizeof(aspectratio_label), "Aspect Ratio: %s", aspectratio_lut[g_console.aspect_ratio_index].name);
wchar_t * aspectratio_label_w = rarch_convert_char_to_wchar(aspectratio_label);
m_quickmenulist.SetText(MENU_ITEM_KEEP_ASPECT_RATIO, aspectratio_label_w);
free(aspectratio_label_w);
}
break;
case MENU_ITEM_OVERSCAN_AMOUNT:
if(g_console.info_msg_enable)
{
if(g_console.info_msg_enable)
{
{
msg_queue_clear(g_extern.msg_queue);
msg_queue_push(g_extern.msg_queue, "TODO - Not yet implemented.", 1, 180);
}
msg_queue_push(g_extern.msg_queue, "TODO - Not yet implemented.", 1, 180);
}
}
break;
case MENU_ITEM_ORIENTATION:
switch(g_console.screen_orientation)
{
case ORIENTATION_NORMAL:
g_console.screen_orientation = ORIENTATION_VERTICAL;
m_quickmenulist.SetText(MENU_ITEM_ORIENTATION, L"Orientation: Vertical");
break;
case ORIENTATION_VERTICAL:
g_console.screen_orientation = ORIENTATION_FLIPPED;
m_quickmenulist.SetText(MENU_ITEM_ORIENTATION, L"Orientation: Flipped");
break;
case ORIENTATION_FLIPPED:
g_console.screen_orientation = ORIENTATION_FLIPPED_ROTATED;
m_quickmenulist.SetText(MENU_ITEM_ORIENTATION, L"Orientation: Flipped Rotated");
break;
case ORIENTATION_FLIPPED_ROTATED:
g_console.screen_orientation = ORIENTATION_NORMAL;
m_quickmenulist.SetText(MENU_ITEM_ORIENTATION, L"Orientation: Normal");
break;
case ORIENTATION_NORMAL:
g_console.screen_orientation = ORIENTATION_VERTICAL;
m_quickmenulist.SetText(MENU_ITEM_ORIENTATION, L"Orientation: Vertical");
break;
case ORIENTATION_VERTICAL:
g_console.screen_orientation = ORIENTATION_FLIPPED;
m_quickmenulist.SetText(MENU_ITEM_ORIENTATION, L"Orientation: Flipped");
break;
case ORIENTATION_FLIPPED:
g_console.screen_orientation = ORIENTATION_FLIPPED_ROTATED;
m_quickmenulist.SetText(MENU_ITEM_ORIENTATION, L"Orientation: Flipped Rotated");
break;
case ORIENTATION_FLIPPED_ROTATED:
g_console.screen_orientation = ORIENTATION_NORMAL;
m_quickmenulist.SetText(MENU_ITEM_ORIENTATION, L"Orientation: Normal");
break;
}
video_xdk360.set_rotation(driver.video_data, g_console.screen_orientation);
break;
case MENU_ITEM_RESIZE_MODE:
g_console.input_loop = INPUT_LOOP_RESIZE_MODE;
if (g_console.info_msg_enable)
{
msg_queue_clear(g_extern.msg_queue);
msg_queue_push(g_extern.msg_queue, "INFO - Resize the screen by moving around the two analog sticks.\nPress Y to reset to default values, and B to go back.\nTo select the resized screen mode, set Aspect Ratio to: 'Custom'.", 1, 270);
}
if (g_console.info_msg_enable)
{
msg_queue_clear(g_extern.msg_queue);
msg_queue_push(g_extern.msg_queue, "INFO - Resize the screen by moving around the two analog sticks.\nPress Y to reset to default values, and B to go back.\nTo select the resized screen mode, set Aspect Ratio to: 'Custom'.", 1, 270);
}
break;
case MENU_ITEM_FRAME_ADVANCE:
if (g_console.emulator_initialized)
rarch_settings_change(S_FRAME_ADVANCE);
rarch_settings_change(S_FRAME_ADVANCE);
break;
case MENU_ITEM_SCREENSHOT_MODE:
if (g_console.info_msg_enable)
if (g_console.info_msg_enable)
{
msg_queue_clear(g_extern.msg_queue);
msg_queue_push(g_extern.msg_queue, "TODO - Not yet implemented.", 1, 180);
}
msg_queue_clear(g_extern.msg_queue);
msg_queue_push(g_extern.msg_queue, "TODO - Not yet implemented.", 1, 180);
}
break;
case MENU_ITEM_RESET:
if (g_console.emulator_initialized)
if (g_console.emulator_initialized)
{
rarch_settings_change(S_RETURN_TO_GAME);
rarch_game_reset();
rarch_settings_change(S_RETURN_TO_GAME);
rarch_game_reset();
}
break;
case MENU_ITEM_RETURN_TO_GAME:
if (g_console.emulator_initialized)
rarch_settings_change(S_RETURN_TO_GAME);
rarch_settings_change(S_RETURN_TO_GAME);
break;
case MENU_ITEM_RETURN_TO_DASHBOARD:
rarch_settings_change(S_RETURN_TO_DASHBOARD);
@ -476,7 +478,7 @@ HRESULT CRetroArchFileBrowser::OnNotifyPress( HXUIOBJ hObjPressed, BOOL& bHandle
retro_get_system_info(&info);
bool block_zip_extract = info.block_extract;
const char * strbuffer = rarch_convert_wchar_to_const_char((const wchar_t*)m_romlist.GetText(index));
const char * strbuffer = rarch_convert_wchar_to_const_char((const wchar_t*)m_romlist.GetText(index));
if((strstr(strbuffer, ".zip") || strstr(strbuffer, ".ZIP")) && !block_zip_extract)
{
@ -574,15 +576,15 @@ HRESULT CRetroArchCoreBrowser::OnNotifyPress( HXUIOBJ hObjPressed, BOOL& bHandle
int index = m_romlist.GetCurSel();
if(tmp_browser.cur[index].d_type != FILE_ATTRIBUTE_DIRECTORY)
{
const char * strbuffer = rarch_convert_wchar_to_const_char((const wchar_t *)m_romlist.GetText(index));
snprintf(g_console.launch_app_on_exit, sizeof(g_console.launch_app_on_exit), "%s\\%s", FILEBROWSER_GET_CURRENT_DIRECTORY_NAME(tmp_browser), strbuffer);
rarch_settings_change(S_RETURN_TO_LAUNCHER);
const char * strbuffer = rarch_convert_wchar_to_const_char((const wchar_t *)m_romlist.GetText(index));
snprintf(g_console.launch_app_on_exit, sizeof(g_console.launch_app_on_exit), "%s\\%s", FILEBROWSER_GET_CURRENT_DIRECTORY_NAME(tmp_browser), strbuffer);
rarch_settings_change(S_RETURN_TO_LAUNCHER);
}
else if(tmp_browser.cur[index].d_type == FILE_ATTRIBUTE_DIRECTORY)
{
const char * strbuffer = rarch_convert_wchar_to_const_char((const wchar_t *)m_romlist.GetText(index));
snprintf(path, sizeof(path), "%s%s\\", FILEBROWSER_GET_CURRENT_DIRECTORY_NAME(tmp_browser), strbuffer);
filebrowser_fetch_directory_entries(path, &tmp_browser, &m_romlist, &m_rompathtitle);
const char * strbuffer = rarch_convert_wchar_to_const_char((const wchar_t *)m_romlist.GetText(index));
snprintf(path, sizeof(path), "%s%s\\", FILEBROWSER_GET_CURRENT_DIRECTORY_NAME(tmp_browser), strbuffer);
filebrowser_fetch_directory_entries(path, &tmp_browser, &m_romlist, &m_rompathtitle);
}
}
@ -616,26 +618,26 @@ HRESULT CRetroArchSettings::OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled
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;
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");
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);
}
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;
@ -646,11 +648,12 @@ HRESULT CRetroArchSettings::OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled
RARCH_ERR("Failed to load scene.\n");
}
hCur = app.hShaderBrowser;
if (g_console.info_msg_enable)
{
msg_queue_clear(g_extern.msg_queue);
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:
@ -662,10 +665,10 @@ 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_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:
@ -811,7 +814,7 @@ int menu_init (void)
void menu_deinit (void)
{
app.Uninit();
app.Uninit();
}
void menu_loop(void)
@ -829,32 +832,31 @@ void menu_loop(void)
{
if(!g_console.emulator_initialized)
d3d9->d3d_render_device->Clear(0, NULL, D3DCLEAR_TARGET, D3DCOLOR_ARGB(0, 0, 0, 0), 1.0f, 0);
else
{
else
rarch_render_cached_frame();
}
XINPUT_STATE state;
XInputGetState(0, &state);
g_console.menu_enable = !((state.Gamepad.wButtons & XINPUT_GAMEPAD_LEFT_THUMB)
&& (state.Gamepad.wButtons & XINPUT_GAMEPAD_RIGHT_THUMB) && (g_console.emulator_initialized)
&& IS_TIMER_EXPIRED(d3d9));
&& (state.Gamepad.wButtons & XINPUT_GAMEPAD_RIGHT_THUMB) && (g_console.emulator_initialized)
&& IS_TIMER_EXPIRED(d3d9));
g_console.mode_switch = g_console.menu_enable ? MODE_MENU : MODE_EMULATION;
switch(g_console.input_loop)
{
switch(g_console.input_loop)
{
case INPUT_LOOP_MENU:
app.RunFrame(); /* Update XUI */
if(state.Gamepad.wButtons & XINPUT_GAMEPAD_B && hCur != app.hMainScene)
app.RunFrame(); /* Update XUI */
if(state.Gamepad.wButtons & XINPUT_GAMEPAD_B && hCur != app.hMainScene)
XuiSceneNavigateBack(hCur, app.hMainScene, XUSER_INDEX_ANY);
break;
case INPUT_LOOP_RESIZE_MODE:
xdk360_input_loop();
break;
default:
break;
}
break;
case INPUT_LOOP_RESIZE_MODE:
xdk360_input_loop();
break;
default:
break;
}
hr = app.Render(); /* Render XUI */
hr = XuiTimersRun(); /* Update XUI timers */
@ -864,21 +866,18 @@ void menu_loop(void)
SET_TIMER_EXPIRATION(d3d9, 30);
}
/* XBox 360 specific font code */
{
const char *msg = msg_queue_pull(g_extern.msg_queue);
const char *msg = msg_queue_pull(g_extern.msg_queue);
if (msg)
{
if(IS_TIMER_EXPIRED(d3d9))
{
xdk360_console_format(msg);
SET_TIMER_EXPIRATION(d3d9, 30);
}
if (msg)
{
if(IS_TIMER_EXPIRED(d3d9))
{
xdk360_console_format(msg);
SET_TIMER_EXPIRATION(d3d9, 30);
}
xdk360_console_draw();
}
}
xdk360_console_draw();
}
gfx_ctx_swap_buffers();
}while(g_console.menu_enable);

View File

@ -37,23 +37,23 @@ enum
enum
{
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_B = 0,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_Y,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_SELECT,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_START,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_UP,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_DOWN,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_LEFT,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_RIGHT,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_A,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_X,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_L,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_R,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_L2,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_R2,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_L3,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_R3,
SETTING_CONTROLS_DEFAULT_ALL
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_B = 0,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_Y,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_SELECT,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_START,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_UP,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_DOWN,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_LEFT,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_RIGHT,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_A,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_X,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_L,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_R,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_L2,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_R2,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_L3,
SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_R3,
SETTING_CONTROLS_DEFAULT_ALL
};
enum
@ -64,154 +64,152 @@ enum
class CRetroArch : public CXuiModule
{
public:
HXUIOBJ hMainScene;
HXUIOBJ hControlsMenu;
HXUIOBJ hFileBrowser;
HXUIOBJ hCoreBrowser;
HXUIOBJ hShaderBrowser;
HXUIOBJ hQuickMenu;
HXUIOBJ hRetroArchSettings;
protected:
/* Override so that Cssnes can register classes */
virtual HRESULT RegisterXuiClasses();
/* Override so that Cssnes can unregister classes */
virtual HRESULT UnregisterXuiClasses();
public:
HXUIOBJ hMainScene;
HXUIOBJ hControlsMenu;
HXUIOBJ hFileBrowser;
HXUIOBJ hCoreBrowser;
HXUIOBJ hShaderBrowser;
HXUIOBJ hQuickMenu;
HXUIOBJ hRetroArchSettings;
protected:
virtual HRESULT RegisterXuiClasses();
virtual HRESULT UnregisterXuiClasses();
};
class CRetroArchMain: public CXuiSceneImpl
{
protected:
CXuiControl m_filebrowser;
CXuiControl m_quick_menu;
CXuiControl m_controls;
CXuiControl m_settings;
CXuiControl m_change_libretro_core;
CXuiControl m_quit;
CXuiTextElement m_title;
CXuiTextElement m_core;
public:
HRESULT OnInit( XUIMessageInit* pInitData, int & bHandled );
HRESULT OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled );
protected:
CXuiControl m_filebrowser;
CXuiControl m_quick_menu;
CXuiControl m_controls;
CXuiControl m_settings;
CXuiControl m_change_libretro_core;
CXuiControl m_quit;
CXuiTextElement m_title;
CXuiTextElement m_core;
public:
HRESULT OnInit( XUIMessageInit* pInitData, int & bHandled );
HRESULT OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled );
XUI_BEGIN_MSG_MAP()
XUI_ON_XM_INIT( OnInit)
XUI_ON_XM_NOTIFY_PRESS( OnNotifyPress )
XUI_END_MSG_MAP();
XUI_BEGIN_MSG_MAP()
XUI_ON_XM_INIT( OnInit)
XUI_ON_XM_NOTIFY_PRESS( OnNotifyPress )
XUI_END_MSG_MAP();
XUI_IMPLEMENT_CLASS(CRetroArchMain, L"RetroArchMain", XUI_CLASS_SCENE)
XUI_IMPLEMENT_CLASS(CRetroArchMain, L"RetroArchMain", XUI_CLASS_SCENE)
};
class CRetroArchFileBrowser: public CXuiSceneImpl
{
protected:
CXuiList m_romlist;
CXuiControl m_back;
CXuiControl m_dir_game;
CXuiControl m_dir_cache;
CXuiTextElement m_rompathtitle;
public:
HRESULT OnInit( XUIMessageInit* pInitData, int & bHandled );
HRESULT OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled );
protected:
CXuiList m_romlist;
CXuiControl m_back;
CXuiControl m_dir_game;
CXuiControl m_dir_cache;
CXuiTextElement m_rompathtitle;
public:
HRESULT OnInit( XUIMessageInit* pInitData, int & bHandled );
HRESULT OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled );
XUI_BEGIN_MSG_MAP()
XUI_ON_XM_INIT( OnInit)
XUI_ON_XM_NOTIFY_PRESS( OnNotifyPress )
XUI_END_MSG_MAP();
XUI_BEGIN_MSG_MAP()
XUI_ON_XM_INIT( OnInit)
XUI_ON_XM_NOTIFY_PRESS( OnNotifyPress )
XUI_END_MSG_MAP();
XUI_IMPLEMENT_CLASS(CRetroArchFileBrowser, L"RetroArchFileBrowser", XUI_CLASS_SCENE)
XUI_IMPLEMENT_CLASS(CRetroArchFileBrowser, L"RetroArchFileBrowser", XUI_CLASS_SCENE)
};
class CRetroArchCoreBrowser: public CXuiSceneImpl
{
protected:
CXuiList m_romlist;
CXuiControl m_back;
CXuiTextElement m_rompathtitle;
public:
HRESULT OnInit( XUIMessageInit* pInitData, int & bHandled );
HRESULT OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled );
protected:
CXuiList m_romlist;
CXuiControl m_back;
CXuiTextElement m_rompathtitle;
public:
HRESULT OnInit( XUIMessageInit* pInitData, int & bHandled );
HRESULT OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled );
XUI_BEGIN_MSG_MAP()
XUI_ON_XM_INIT( OnInit)
XUI_ON_XM_NOTIFY_PRESS( OnNotifyPress )
XUI_END_MSG_MAP();
XUI_BEGIN_MSG_MAP()
XUI_ON_XM_INIT( OnInit)
XUI_ON_XM_NOTIFY_PRESS( OnNotifyPress )
XUI_END_MSG_MAP();
XUI_IMPLEMENT_CLASS(CRetroArchCoreBrowser, L"RetroArchCoreBrowser", XUI_CLASS_SCENE)
XUI_IMPLEMENT_CLASS(CRetroArchCoreBrowser, L"RetroArchCoreBrowser", XUI_CLASS_SCENE)
};
class CRetroArchShaderBrowser: public CXuiSceneImpl
{
protected:
CXuiList m_shaderlist;
CXuiControl m_back;
CXuiTextElement m_shaderpathtitle;
public:
HRESULT OnInit( XUIMessageInit* pInitData, int & bHandled );
HRESULT OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled );
protected:
CXuiList m_shaderlist;
CXuiControl m_back;
CXuiTextElement m_shaderpathtitle;
public:
HRESULT OnInit( XUIMessageInit* pInitData, int & bHandled );
HRESULT OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled );
XUI_BEGIN_MSG_MAP()
XUI_ON_XM_INIT( OnInit)
XUI_ON_XM_NOTIFY_PRESS( OnNotifyPress )
XUI_END_MSG_MAP();
XUI_BEGIN_MSG_MAP()
XUI_ON_XM_INIT( OnInit)
XUI_ON_XM_NOTIFY_PRESS( OnNotifyPress )
XUI_END_MSG_MAP();
XUI_IMPLEMENT_CLASS(CRetroArchShaderBrowser, L"RetroArchShaderBrowser", XUI_CLASS_SCENE)
XUI_IMPLEMENT_CLASS(CRetroArchShaderBrowser, L"RetroArchShaderBrowser", XUI_CLASS_SCENE)
};
class CRetroArchQuickMenu: public CXuiSceneImpl
{
protected:
CXuiList m_quickmenulist;
CXuiControl m_back;
public:
HRESULT OnInit( XUIMessageInit* pInitData, int & bHandled );
HRESULT OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled );
protected:
CXuiList m_quickmenulist;
CXuiControl m_back;
public:
HRESULT OnInit( XUIMessageInit* pInitData, int & bHandled );
HRESULT OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled );
XUI_BEGIN_MSG_MAP()
XUI_ON_XM_INIT( OnInit)
XUI_ON_XM_NOTIFY_PRESS( OnNotifyPress )
XUI_END_MSG_MAP();
XUI_BEGIN_MSG_MAP()
XUI_ON_XM_INIT( OnInit)
XUI_ON_XM_NOTIFY_PRESS( OnNotifyPress )
XUI_END_MSG_MAP();
XUI_IMPLEMENT_CLASS(CRetroArchQuickMenu, L"RetroArchQuickMenu", XUI_CLASS_SCENE)
XUI_IMPLEMENT_CLASS(CRetroArchQuickMenu, L"RetroArchQuickMenu", XUI_CLASS_SCENE)
};
class CRetroArchSettings: public CXuiSceneImpl
{
protected:
CXuiList m_settingslist;
CXuiControl m_back;
public:
HRESULT OnInit( XUIMessageInit* pInitData, int & bHandled );
HRESULT OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled );
HRESULT OnControlNavigate(XUIMessageControlNavigate *pControlNavigateData, BOOL& bHandled);
protected:
CXuiList m_settingslist;
CXuiControl m_back;
public:
HRESULT OnInit( XUIMessageInit* pInitData, int & bHandled );
HRESULT OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled );
HRESULT OnControlNavigate(XUIMessageControlNavigate *pControlNavigateData, BOOL& bHandled);
XUI_BEGIN_MSG_MAP()
XUI_ON_XM_INIT( OnInit)
XUI_ON_XM_CONTROL_NAVIGATE( OnControlNavigate )
XUI_ON_XM_NOTIFY_PRESS( OnNotifyPress )
XUI_END_MSG_MAP();
XUI_BEGIN_MSG_MAP()
XUI_ON_XM_INIT( OnInit)
XUI_ON_XM_CONTROL_NAVIGATE( OnControlNavigate )
XUI_ON_XM_NOTIFY_PRESS( OnNotifyPress )
XUI_END_MSG_MAP();
XUI_IMPLEMENT_CLASS(CRetroArchSettings, L"RetroArchSettings", XUI_CLASS_SCENE)
XUI_IMPLEMENT_CLASS(CRetroArchSettings, L"RetroArchSettings", XUI_CLASS_SCENE)
};
class CRetroArchControls: public CXuiSceneImpl
{
protected:
CXuiList m_controlslist;
CXuiControl m_back;
CXuiSlider m_controlnoslider;
public:
HRESULT OnInit( XUIMessageInit* pInitData, int & bHandled );
HRESULT OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled );
HRESULT OnControlNavigate(XUIMessageControlNavigate *pControlNavigateData, BOOL& bHandled);
protected:
CXuiList m_controlslist;
CXuiControl m_back;
CXuiSlider m_controlnoslider;
public:
HRESULT OnInit( XUIMessageInit* pInitData, int & bHandled );
HRESULT OnNotifyPress( HXUIOBJ hObjPressed, int & bHandled );
HRESULT OnControlNavigate(XUIMessageControlNavigate *pControlNavigateData, BOOL& bHandled);
XUI_BEGIN_MSG_MAP()
XUI_ON_XM_INIT( OnInit)
XUI_ON_XM_CONTROL_NAVIGATE( OnControlNavigate )
XUI_ON_XM_NOTIFY_PRESS( OnNotifyPress )
XUI_END_MSG_MAP();
XUI_BEGIN_MSG_MAP()
XUI_ON_XM_INIT( OnInit)
XUI_ON_XM_CONTROL_NAVIGATE( OnControlNavigate )
XUI_ON_XM_NOTIFY_PRESS( OnNotifyPress )
XUI_END_MSG_MAP();
XUI_IMPLEMENT_CLASS(CRetroArchControls, L"RetroArchControls", XUI_CLASS_SCENE)
XUI_IMPLEMENT_CLASS(CRetroArchControls, L"RetroArchControls", XUI_CLASS_SCENE)
};
int menu_init (void);

View File

@ -14,7 +14,6 @@
* If not, see <http://www.gnu.org/licenses/>.
*/
// Xbox 360-specific headers
#ifdef _XBOX
#include <xtl.h>
#include <xgraphics.h>
@ -42,70 +41,70 @@
const DWORD g_MapLinearToSrgbGpuFormat[] =
{
GPUTEXTUREFORMAT_1_REVERSE,
GPUTEXTUREFORMAT_1,
GPUTEXTUREFORMAT_8,
GPUTEXTUREFORMAT_1_5_5_5,
GPUTEXTUREFORMAT_5_6_5,
GPUTEXTUREFORMAT_6_5_5,
GPUTEXTUREFORMAT_8_8_8_8_AS_16_16_16_16,
GPUTEXTUREFORMAT_2_10_10_10_AS_16_16_16_16,
GPUTEXTUREFORMAT_8_A,
GPUTEXTUREFORMAT_8_B,
GPUTEXTUREFORMAT_8_8,
GPUTEXTUREFORMAT_Cr_Y1_Cb_Y0_REP,
GPUTEXTUREFORMAT_Y1_Cr_Y0_Cb_REP,
GPUTEXTUREFORMAT_16_16_EDRAM,
GPUTEXTUREFORMAT_8_8_8_8_A,
GPUTEXTUREFORMAT_4_4_4_4,
GPUTEXTUREFORMAT_10_11_11_AS_16_16_16_16,
GPUTEXTUREFORMAT_11_11_10_AS_16_16_16_16,
GPUTEXTUREFORMAT_DXT1_AS_16_16_16_16,
GPUTEXTUREFORMAT_DXT2_3_AS_16_16_16_16,
GPUTEXTUREFORMAT_DXT4_5_AS_16_16_16_16,
GPUTEXTUREFORMAT_16_16_16_16_EDRAM,
GPUTEXTUREFORMAT_24_8,
GPUTEXTUREFORMAT_24_8_FLOAT,
GPUTEXTUREFORMAT_16,
GPUTEXTUREFORMAT_16_16,
GPUTEXTUREFORMAT_16_16_16_16,
GPUTEXTUREFORMAT_16_EXPAND,
GPUTEXTUREFORMAT_16_16_EXPAND,
GPUTEXTUREFORMAT_16_16_16_16_EXPAND,
GPUTEXTUREFORMAT_16_FLOAT,
GPUTEXTUREFORMAT_16_16_FLOAT,
GPUTEXTUREFORMAT_16_16_16_16_FLOAT,
GPUTEXTUREFORMAT_32,
GPUTEXTUREFORMAT_32_32,
GPUTEXTUREFORMAT_32_32_32_32,
GPUTEXTUREFORMAT_32_FLOAT,
GPUTEXTUREFORMAT_32_32_FLOAT,
GPUTEXTUREFORMAT_32_32_32_32_FLOAT,
GPUTEXTUREFORMAT_32_AS_8,
GPUTEXTUREFORMAT_32_AS_8_8,
GPUTEXTUREFORMAT_16_MPEG,
GPUTEXTUREFORMAT_16_16_MPEG,
GPUTEXTUREFORMAT_8_INTERLACED,
GPUTEXTUREFORMAT_32_AS_8_INTERLACED,
GPUTEXTUREFORMAT_32_AS_8_8_INTERLACED,
GPUTEXTUREFORMAT_16_INTERLACED,
GPUTEXTUREFORMAT_16_MPEG_INTERLACED,
GPUTEXTUREFORMAT_16_16_MPEG_INTERLACED,
GPUTEXTUREFORMAT_DXN,
GPUTEXTUREFORMAT_8_8_8_8_AS_16_16_16_16,
GPUTEXTUREFORMAT_DXT1_AS_16_16_16_16,
GPUTEXTUREFORMAT_DXT2_3_AS_16_16_16_16,
GPUTEXTUREFORMAT_DXT4_5_AS_16_16_16_16,
GPUTEXTUREFORMAT_2_10_10_10_AS_16_16_16_16,
GPUTEXTUREFORMAT_10_11_11_AS_16_16_16_16,
GPUTEXTUREFORMAT_11_11_10_AS_16_16_16_16,
GPUTEXTUREFORMAT_32_32_32_FLOAT,
GPUTEXTUREFORMAT_DXT3A,
GPUTEXTUREFORMAT_DXT5A,
GPUTEXTUREFORMAT_CTX1,
GPUTEXTUREFORMAT_DXT3A_AS_1_1_1_1,
GPUTEXTUREFORMAT_8_8_8_8_GAMMA_EDRAM,
GPUTEXTUREFORMAT_2_10_10_10_FLOAT_EDRAM,
GPUTEXTUREFORMAT_1_REVERSE,
GPUTEXTUREFORMAT_1,
GPUTEXTUREFORMAT_8,
GPUTEXTUREFORMAT_1_5_5_5,
GPUTEXTUREFORMAT_5_6_5,
GPUTEXTUREFORMAT_6_5_5,
GPUTEXTUREFORMAT_8_8_8_8_AS_16_16_16_16,
GPUTEXTUREFORMAT_2_10_10_10_AS_16_16_16_16,
GPUTEXTUREFORMAT_8_A,
GPUTEXTUREFORMAT_8_B,
GPUTEXTUREFORMAT_8_8,
GPUTEXTUREFORMAT_Cr_Y1_Cb_Y0_REP,
GPUTEXTUREFORMAT_Y1_Cr_Y0_Cb_REP,
GPUTEXTUREFORMAT_16_16_EDRAM,
GPUTEXTUREFORMAT_8_8_8_8_A,
GPUTEXTUREFORMAT_4_4_4_4,
GPUTEXTUREFORMAT_10_11_11_AS_16_16_16_16,
GPUTEXTUREFORMAT_11_11_10_AS_16_16_16_16,
GPUTEXTUREFORMAT_DXT1_AS_16_16_16_16,
GPUTEXTUREFORMAT_DXT2_3_AS_16_16_16_16,
GPUTEXTUREFORMAT_DXT4_5_AS_16_16_16_16,
GPUTEXTUREFORMAT_16_16_16_16_EDRAM,
GPUTEXTUREFORMAT_24_8,
GPUTEXTUREFORMAT_24_8_FLOAT,
GPUTEXTUREFORMAT_16,
GPUTEXTUREFORMAT_16_16,
GPUTEXTUREFORMAT_16_16_16_16,
GPUTEXTUREFORMAT_16_EXPAND,
GPUTEXTUREFORMAT_16_16_EXPAND,
GPUTEXTUREFORMAT_16_16_16_16_EXPAND,
GPUTEXTUREFORMAT_16_FLOAT,
GPUTEXTUREFORMAT_16_16_FLOAT,
GPUTEXTUREFORMAT_16_16_16_16_FLOAT,
GPUTEXTUREFORMAT_32,
GPUTEXTUREFORMAT_32_32,
GPUTEXTUREFORMAT_32_32_32_32,
GPUTEXTUREFORMAT_32_FLOAT,
GPUTEXTUREFORMAT_32_32_FLOAT,
GPUTEXTUREFORMAT_32_32_32_32_FLOAT,
GPUTEXTUREFORMAT_32_AS_8,
GPUTEXTUREFORMAT_32_AS_8_8,
GPUTEXTUREFORMAT_16_MPEG,
GPUTEXTUREFORMAT_16_16_MPEG,
GPUTEXTUREFORMAT_8_INTERLACED,
GPUTEXTUREFORMAT_32_AS_8_INTERLACED,
GPUTEXTUREFORMAT_32_AS_8_8_INTERLACED,
GPUTEXTUREFORMAT_16_INTERLACED,
GPUTEXTUREFORMAT_16_MPEG_INTERLACED,
GPUTEXTUREFORMAT_16_16_MPEG_INTERLACED,
GPUTEXTUREFORMAT_DXN,
GPUTEXTUREFORMAT_8_8_8_8_AS_16_16_16_16,
GPUTEXTUREFORMAT_DXT1_AS_16_16_16_16,
GPUTEXTUREFORMAT_DXT2_3_AS_16_16_16_16,
GPUTEXTUREFORMAT_DXT4_5_AS_16_16_16_16,
GPUTEXTUREFORMAT_2_10_10_10_AS_16_16_16_16,
GPUTEXTUREFORMAT_10_11_11_AS_16_16_16_16,
GPUTEXTUREFORMAT_11_11_10_AS_16_16_16_16,
GPUTEXTUREFORMAT_32_32_32_FLOAT,
GPUTEXTUREFORMAT_DXT3A,
GPUTEXTUREFORMAT_DXT5A,
GPUTEXTUREFORMAT_CTX1,
GPUTEXTUREFORMAT_DXT3A_AS_1_1_1_1,
GPUTEXTUREFORMAT_8_8_8_8_GAMMA_EDRAM,
GPUTEXTUREFORMAT_2_10_10_10_FLOAT_EDRAM,
};
struct XPR_HEADER
@ -149,89 +148,90 @@ void * PackedResource::GetData( const char * strName ) const
HRESULT PackedResource::Create( const char * strFilename )
{
unsigned long dwNumBytesRead;
void * hFile = CreateFile( strFilename, GENERIC_READ, FILE_SHARE_READ, NULL,
OPEN_EXISTING, FILE_ATTRIBUTE_READONLY, NULL );
if( hFile == INVALID_HANDLE_VALUE )
{
RARCH_ERR( "File <%s> not found.\n", strFilename );
return E_FAIL;
}
unsigned long dwNumBytesRead;
void * hFile = CreateFile( strFilename, GENERIC_READ, FILE_SHARE_READ, NULL,
OPEN_EXISTING, FILE_ATTRIBUTE_READONLY, NULL );
// Read in and verify the XPR magic header
XPR_HEADER xprh;
if( !ReadFile( hFile, &xprh, sizeof( XPR_HEADER ), &dwNumBytesRead, NULL ) )
{
RARCH_ERR( "Error reading XPR header in file <%s>.\n", strFilename );
CloseHandle( hFile );
return E_FAIL;
}
if( hFile == INVALID_HANDLE_VALUE )
{
RARCH_ERR( "File <%s> not found.\n", strFilename );
return E_FAIL;
}
if( xprh.dwMagic != XPR2_MAGIC_VALUE )
{
RARCH_ERR( "Invalid Xbox Packed Resource (.xpr) file: Magic = 0x%08lx.\n", xprh.dwMagic );
CloseHandle( hFile );
return E_FAIL;
}
// Read in and verify the XPR magic header
XPR_HEADER xprh;
if( !ReadFile( hFile, &xprh, sizeof( XPR_HEADER ), &dwNumBytesRead, NULL ) )
{
RARCH_ERR( "Error reading XPR header in file <%s>.\n", strFilename );
CloseHandle( hFile );
return E_FAIL;
}
// Compute memory requirements
m_dwSysMemDataSize = xprh.dwHeaderSize;
m_dwVidMemDataSize = xprh.dwDataSize;
if( xprh.dwMagic != XPR2_MAGIC_VALUE )
{
RARCH_ERR( "Invalid Xbox Packed Resource (.xpr) file: Magic = 0x%08lx.\n", xprh.dwMagic );
CloseHandle( hFile );
return E_FAIL;
}
// Allocate memory
m_pSysMemData = (unsigned char*)malloc(m_dwSysMemDataSize);
if( m_pSysMemData == NULL )
{
RARCH_ERR( "Could not allocate system memory.\n" );
m_dwSysMemDataSize = 0;
return E_FAIL;
}
m_pVidMemData = ( unsigned char* )XMemAlloc( m_dwVidMemDataSize, MAKE_XALLOC_ATTRIBUTES( 0, 0, 0, 0, eXALLOCAllocatorId_GameMax,
XALLOC_PHYSICAL_ALIGNMENT_4K, XALLOC_MEMPROTECT_WRITECOMBINE, 0, XALLOC_MEMTYPE_PHYSICAL ) );
// Compute memory requirements
m_dwSysMemDataSize = xprh.dwHeaderSize;
m_dwVidMemDataSize = xprh.dwDataSize;
if( m_pVidMemData == NULL )
{
RARCH_ERR( "Could not allocate physical memory.\n" );
m_dwSysMemDataSize = 0;
m_dwVidMemDataSize = 0;
free(m_pSysMemData);
m_pSysMemData = NULL;
return E_FAIL;
}
// Allocate memory
m_pSysMemData = (unsigned char*)malloc(m_dwSysMemDataSize);
if( m_pSysMemData == NULL )
{
RARCH_ERR( "Could not allocate system memory.\n" );
m_dwSysMemDataSize = 0;
return E_FAIL;
}
m_pVidMemData = ( unsigned char* )XMemAlloc( m_dwVidMemDataSize, MAKE_XALLOC_ATTRIBUTES( 0, 0, 0, 0, eXALLOCAllocatorId_GameMax,
XALLOC_PHYSICAL_ALIGNMENT_4K, XALLOC_MEMPROTECT_WRITECOMBINE, 0, XALLOC_MEMTYPE_PHYSICAL ) );
// Read in the data from the file
if( !ReadFile( hFile, m_pSysMemData, m_dwSysMemDataSize, &dwNumBytesRead, NULL ) ||
!ReadFile( hFile, m_pVidMemData, m_dwVidMemDataSize, &dwNumBytesRead, NULL ) )
{
RARCH_ERR( "Unable to read Xbox Packed Resource (.xpr) file.\n" );
CloseHandle( hFile );
return E_FAIL;
}
if( m_pVidMemData == NULL )
{
RARCH_ERR( "Could not allocate physical memory.\n" );
m_dwSysMemDataSize = 0;
m_dwVidMemDataSize = 0;
free(m_pSysMemData);
m_pSysMemData = NULL;
return E_FAIL;
}
// Done with the file
CloseHandle( hFile );
// Read in the data from the file
if( !ReadFile( hFile, m_pSysMemData, m_dwSysMemDataSize, &dwNumBytesRead, NULL ) ||
!ReadFile( hFile, m_pVidMemData, m_dwVidMemDataSize, &dwNumBytesRead, NULL ) )
{
RARCH_ERR( "Unable to read Xbox Packed Resource (.xpr) file.\n" );
CloseHandle( hFile );
return E_FAIL;
}
// Extract resource table from the header data
m_dwNumResourceTags = *( unsigned long * )( m_pSysMemData + 0 );
m_pResourceTags = ( RESOURCE* )( m_pSysMemData + 4 );
// Done with the file
CloseHandle( hFile );
// Patch up the resources
for( unsigned long i = 0; i < m_dwNumResourceTags; i++ )
{
m_pResourceTags[i].strName = ( char * )( m_pSysMemData + ( unsigned long )m_pResourceTags[i].strName );
// Extract resource table from the header data
m_dwNumResourceTags = *( unsigned long * )( m_pSysMemData + 0 );
m_pResourceTags = ( RESOURCE* )( m_pSysMemData + 4 );
// Fixup the texture memory
if( ( m_pResourceTags[i].dwType & 0xffff0000 ) == ( RESOURCETYPE_TEXTURE & 0xffff0000 ) )
{
D3DTexture* pTexture = ( D3DTexture* )&m_pSysMemData[m_pResourceTags[i].dwOffset];
// Adjust Base address according to where memory was allocated
XGOffsetBaseTextureAddress( pTexture, m_pVidMemData, m_pVidMemData );
}
}
// Patch up the resources
for( unsigned long i = 0; i < m_dwNumResourceTags; i++ )
{
m_pResourceTags[i].strName = ( char * )( m_pSysMemData + ( unsigned long )m_pResourceTags[i].strName );
m_bInitialized = TRUE;
// Fixup the texture memory
if( ( m_pResourceTags[i].dwType & 0xffff0000 ) == ( RESOURCETYPE_TEXTURE & 0xffff0000 ) )
{
D3DTexture* pTexture = ( D3DTexture* )&m_pSysMemData[m_pResourceTags[i].dwOffset];
// Adjust Base address according to where memory was allocated
XGOffsetBaseTextureAddress( pTexture, m_pVidMemData, m_pVidMemData );
}
}
return 0;
m_bInitialized = TRUE;
return 0;
}
void PackedResource::Destroy()
@ -241,8 +241,8 @@ void PackedResource::Destroy()
m_dwSysMemDataSize = 0L;
if( m_pVidMemData != NULL )
XMemFree( m_pVidMemData, MAKE_XALLOC_ATTRIBUTES( 0, 0, 0, 0, eXALLOCAllocatorId_GameMax,
0, 0, 0, XALLOC_MEMTYPE_PHYSICAL ) );
XMemFree( m_pVidMemData, MAKE_XALLOC_ATTRIBUTES( 0, 0, 0, 0, eXALLOCAllocatorId_GameMax,
0, 0, 0, XALLOC_MEMTYPE_PHYSICAL ) );
m_pVidMemData = NULL;
m_dwVidMemDataSize = 0L;
@ -295,7 +295,7 @@ static void xdk360_set_viewport(bool force_full)
xdk360_video_t *d3d9 = (xdk360_video_t*)driver.video_data;
d3d9->d3d_render_device->Clear(0, NULL, D3DCLEAR_TARGET,
0xff000000, 1.0f, 0);
0xff000000, 1.0f, 0);
int width = d3d9->video_mode.fIsHiDef ? 1280 : 640;
int height = d3d9->video_mode.fIsHiDef ? 720 : 480;
@ -319,7 +319,7 @@ static void xdk360_set_viewport(bool force_full)
// If the aspect ratios of screen and desired aspect ratio are sufficiently equal (floating point stuff),
if(g_console.aspect_ratio_index == ASPECT_RATIO_CUSTOM)
{
delta = (desired_aspect / device_aspect - 1.0) / 2.0 + 0.5;
delta = (desired_aspect / device_aspect - 1.0) / 2.0 + 0.5;
m_viewport_x_temp = g_console.viewports.custom_vp.x;
m_viewport_y_temp = g_console.viewports.custom_vp.y;
m_viewport_width_temp = g_console.viewports.custom_vp.width;
@ -368,7 +368,7 @@ static void xdk360_set_rotation(void * data, unsigned orientation)
{
case ORIENTATION_NORMAL:
angle = M_PI * 0 / 180;
break;
break;
case ORIENTATION_VERTICAL:
angle = M_PI * 270 / 180;
break;
@ -459,6 +459,7 @@ static void *xdk360_init(const video_info_t *video, const input_driver_t **input
d3d9->d3dpp.BackBufferWidth = d3d9->video_mode.fIsHiDef ? 1280 : 640;
d3d9->d3dpp.BackBufferHeight = d3d9->video_mode.fIsHiDef ? 720 : 480;
if(g_console.gamma_correction_enable)
{
d3d9->d3dpp.BackBufferFormat = g_console.color_format ? (D3DFORMAT)MAKESRGBFMT(D3DFMT_A8R8G8B8) : (D3DFORMAT)MAKESRGBFMT(D3DFMT_LIN_A1R5G5B5);
@ -646,7 +647,7 @@ static bool xdk360_frame(void *data, const void *frame,
if(d3d9->fbo_enabled)
{
d3d9->d3d_render_device->Resolve(D3DRESOLVE_RENDERTARGET0, NULL, d3d9->lpTexture_ot,
NULL, 0, 0, NULL, 0, 0, NULL);
NULL, 0, 0, NULL, 0, 0, NULL);
d3d9->d3d_render_device->SetRenderTarget(0, pRenderTarget0);
pRenderTarget0->Release();
@ -708,11 +709,6 @@ static bool xdk360_focus(void *data)
return gfx_ctx_window_has_focus();
}
// 360 needs a working graphics stack before RetroArch even starts.
// To deal with this main.c,
// the top level module owns the instance, and is created beforehand.
// When RetroArch gets around to init it, it is already allocated.
// When RetroArch wants to free it, it is ignored.
static void xdk360_start(void)
{
video_info_t video_info = {0};

View File

@ -19,11 +19,6 @@
#ifndef RARCH_360_RESOURCES_H
#define RARCH_360_RESOURCES_H
//--------------------------------------------------------------------------------------
// Name tag for resources. An app may initialize this structure, and pass
// it to the resource's Create() function. From then on, the app may call
// GetResource() to retrieve a resource using an ascii name.
//--------------------------------------------------------------------------------------
struct RESOURCE
{
unsigned long dwType;
@ -50,73 +45,74 @@ enum
//--------------------------------------------------------------------------------------
class PackedResource
{
protected:
unsigned char * m_pSysMemData; // Alloc'ed memory for resource headers etc.
unsigned long m_dwSysMemDataSize;
protected:
unsigned char * m_pSysMemData; // Alloc'ed memory for resource headers etc.
unsigned long m_dwSysMemDataSize;
unsigned char * m_pVidMemData; // Alloc'ed memory for resource data, etc.
unsigned long m_dwVidMemDataSize;
unsigned char * m_pVidMemData; // Alloc'ed memory for resource data, etc.
unsigned long m_dwVidMemDataSize;
RESOURCE* m_pResourceTags; // Tags to associate names with the resources
unsigned long m_dwNumResourceTags; // Number of resource tags
public:
int m_bInitialized; // Resource is fully initialized
HRESULT Create( const char * strFilename );
void Destroy();
D3DResource* RegisterResource( D3DResource* pResource ) const
{
return pResource;
}
RESOURCE* m_pResourceTags; // Tags to associate names with the resources
unsigned long m_dwNumResourceTags; // Number of resource tags
public:
int m_bInitialized; // Resource is fully initialized
HRESULT Create( const char * strFilename );
void Destroy();
void * GetData( unsigned long dwOffset ) const
{
return &m_pSysMemData[dwOffset];
}
D3DResource* RegisterResource( D3DResource* pResource ) const
{
return pResource;
}
D3DResource* GetResource( unsigned long dwOffset ) const
{
return (( D3DResource* )GetData( dwOffset ) );
}
void * GetData( unsigned long dwOffset ) const
{
return &m_pSysMemData[dwOffset];
}
D3DTexture* GetTexture( unsigned long dwOffset ) const
{
return ( D3DTexture* )GetResource( dwOffset );
}
D3DResource* GetResource( unsigned long dwOffset ) const
{
return (( D3DResource* )GetData( dwOffset ) );
}
D3DArrayTexture* GetArrayTexture( unsigned long dwOffset ) const
{
return ( D3DArrayTexture* )GetResource( dwOffset );
}
D3DTexture* GetTexture( unsigned long dwOffset ) const
{
return ( D3DTexture* )GetResource( dwOffset );
}
D3DVertexBuffer* GetVertexBuffer( unsigned long dwOffset ) const
{
return ( D3DVertexBuffer* )GetResource( dwOffset );
}
D3DArrayTexture* GetArrayTexture( unsigned long dwOffset ) const
{
return ( D3DArrayTexture* )GetResource( dwOffset );
}
void * GetData( const char * strName ) const;
D3DVertexBuffer* GetVertexBuffer( unsigned long dwOffset ) const
{
return ( D3DVertexBuffer* )GetResource( dwOffset );
}
D3DResource* GetResource( const char * strName ) const
{
return ( ( D3DResource* )GetData( strName ) );
}
void * GetData( const char * strName ) const;
D3DTexture* GetTexture( const char * strName ) const
{
return ( D3DTexture* )GetResource( strName );
}
D3DResource* GetResource( const char * strName ) const
{
return ( ( D3DResource* )GetData( strName ) );
}
D3DArrayTexture* GetArrayTexture( const char * strName ) const
{
return ( D3DArrayTexture* )GetResource( strName );
}
D3DTexture* GetTexture( const char * strName ) const
{
return ( D3DTexture* )GetResource( strName );
}
D3DVertexBuffer* GetVertexBuffer( const char * strName ) const
{
return ( D3DVertexBuffer* )GetResource( strName );
}
D3DArrayTexture* GetArrayTexture( const char * strName ) const
{
return ( D3DArrayTexture* )GetResource( strName );
}
PackedResource();
~PackedResource();
D3DVertexBuffer* GetVertexBuffer( const char * strName ) const
{
return ( D3DVertexBuffer* )GetResource( strName );
}
PackedResource();
~PackedResource();
};
#endif

File diff suppressed because it is too large Load Diff

View File

@ -318,9 +318,7 @@ static void browser_update(filebrowser_t * b)
}
if (CTRL_CIRCLE(button_was_pressed))
{
filebrowser_pop_directory(b);
}
old_state = state;
}
@ -355,45 +353,45 @@ static void set_setting_label(menu * menu_obj, uint64_t currentsetting)
{
case SETTING_CHANGE_RESOLUTION:
if(g_console.initial_resolution_id == g_console.supported_resolutions[g_console.current_resolution_index])
menu_obj->items[currentsetting].text_color = GREEN;
menu_obj->items[currentsetting].text_color = GREEN;
else
menu_obj->items[currentsetting].text_color = ORANGE;
menu_obj->items[currentsetting].text_color = ORANGE;
snprintf(menu_obj->items[currentsetting].setting_text, sizeof(menu_obj->items[currentsetting].setting_text), ps3_get_resolution_label(g_console.supported_resolutions[g_console.current_resolution_index]));
break;
case SETTING_SHADER_PRESETS:
{
char fname[PATH_MAX];
if(g_console.cgp_path == DEFAULT_PRESET_FILE)
menu_obj->items[currentsetting].text_color = GREEN;
else
menu_obj->items[currentsetting].text_color = ORANGE;
fill_pathname_base(fname, g_console.cgp_path, sizeof(fname));
snprintf(menu_obj->items[currentsetting].setting_text, sizeof(menu_obj->items[currentsetting].setting_text), fname);
char fname[PATH_MAX];
if(g_console.cgp_path == DEFAULT_PRESET_FILE)
menu_obj->items[currentsetting].text_color = GREEN;
else
menu_obj->items[currentsetting].text_color = ORANGE;
fill_pathname_base(fname, g_console.cgp_path, sizeof(fname));
snprintf(menu_obj->items[currentsetting].setting_text, sizeof(menu_obj->items[currentsetting].setting_text), fname);
}
break;
case SETTING_SHADER:
{
char fname[PATH_MAX];
fill_pathname_base(fname, g_settings.video.cg_shader_path, sizeof(fname));
snprintf(menu_obj->items[currentsetting].setting_text, sizeof(menu_obj->items[currentsetting].setting_text), "%s", fname);
char fname[PATH_MAX];
fill_pathname_base(fname, g_settings.video.cg_shader_path, sizeof(fname));
snprintf(menu_obj->items[currentsetting].setting_text, sizeof(menu_obj->items[currentsetting].setting_text), "%s", fname);
if(strcmp(g_settings.video.cg_shader_path,DEFAULT_SHADER_FILE) == 0)
menu_obj->items[currentsetting].text_color = GREEN;
else
menu_obj->items[currentsetting].text_color = ORANGE;
if(strcmp(g_settings.video.cg_shader_path,DEFAULT_SHADER_FILE) == 0)
menu_obj->items[currentsetting].text_color = GREEN;
else
menu_obj->items[currentsetting].text_color = ORANGE;
}
break;
case SETTING_SHADER_2:
{
char fname[PATH_MAX];
fill_pathname_base(fname, g_settings.video.second_pass_shader, sizeof(fname));
snprintf(menu_obj->items[currentsetting].setting_text, sizeof(menu_obj->items[currentsetting].setting_text), "%s", fname);
char fname[PATH_MAX];
fill_pathname_base(fname, g_settings.video.second_pass_shader, sizeof(fname));
snprintf(menu_obj->items[currentsetting].setting_text, sizeof(menu_obj->items[currentsetting].setting_text), "%s", fname);
if(strcmp(g_settings.video.second_pass_shader,DEFAULT_SHADER_FILE) == 0)
menu_obj->items[currentsetting].text_color = GREEN;
else
menu_obj->items[currentsetting].text_color = ORANGE;
if(strcmp(g_settings.video.second_pass_shader,DEFAULT_SHADER_FILE) == 0)
menu_obj->items[currentsetting].text_color = GREEN;
else
menu_obj->items[currentsetting].text_color = ORANGE;
}
break;
case SETTING_FONT_SIZE:
@ -737,15 +735,15 @@ static void set_setting_label(menu * menu_obj, uint64_t currentsetting)
break;
case SETTING_CONTROLS_SAVE_CUSTOM_CONTROLS:
if(menu_obj->selected == currentsetting)
menu_obj->items[currentsetting].text_color = GREEN;
menu_obj->items[currentsetting].text_color = GREEN;
else
menu_obj->items[currentsetting].text_color = ORANGE;
menu_obj->items[currentsetting].text_color = ORANGE;
break;
case SETTING_CONTROLS_DEFAULT_ALL:
if(menu_obj->selected == currentsetting)
menu_obj->items[currentsetting].text_color = GREEN;
menu_obj->items[currentsetting].text_color = GREEN;
else
menu_obj->items[currentsetting].text_color = ORANGE;
menu_obj->items[currentsetting].text_color = ORANGE;
break;
default:
break;
@ -888,9 +886,7 @@ static void select_file(uint32_t menu_id)
/*if 'filename' is in fact '..' - then pop back directory instead of
adding '..' to filename path */
if(tmpBrowser.currently_selected == 0)
{
filebrowser_pop_directory(&tmpBrowser);
}
else
{
separatorslash = (strcmp(FILEBROWSER_GET_CURRENT_DIRECTORY_NAME(tmpBrowser),"/") == 0) ? "" : "/";
@ -972,8 +968,8 @@ static void select_directory(uint32_t menu_id)
if(set_initial_dir_tmpbrowser)
{
filebrowser_new(&tmpBrowser, "/\0", "empty");
set_initial_dir_tmpbrowser = false;
filebrowser_new(&tmpBrowser, "/\0", "empty");
set_initial_dir_tmpbrowser = false;
}
browser_update(&tmpBrowser);
@ -1036,9 +1032,7 @@ static void select_directory(uint32_t menu_id)
* adding '..' to filename path */
if(tmpBrowser.currently_selected == 0)
{
filebrowser_pop_directory(&tmpBrowser);
}
else
{
separatorslash = (strcmp(FILEBROWSER_GET_CURRENT_DIRECTORY_NAME(tmpBrowser),"/") == 0) ? "" : "/";
@ -1173,29 +1167,29 @@ static void producesettingentry(menu * menu_obj, uint64_t switchvalue)
case SETTING_CHANGE_RESOLUTION:
if(CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) )
{
ps3_next_resolution();
set_delay = DELAY_SMALL;
ps3_next_resolution();
set_delay = DELAY_SMALL;
}
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) )
{
ps3_previous_resolution();
set_delay = DELAY_SMALL;
ps3_previous_resolution();
set_delay = DELAY_SMALL;
}
if(CTRL_CROSS(state))
{
if (g_console.supported_resolutions[g_console.current_resolution_index] == CELL_VIDEO_OUT_RESOLUTION_576)
{
if(ps3_check_resolution(CELL_VIDEO_OUT_RESOLUTION_576))
{
//ps3graphics_set_pal60hz(Settings.PS3PALTemporalMode60Hz);
video_gl.restart();
}
}
else
{
//ps3graphics_set_pal60hz(0);
video_gl.restart();
}
if (g_console.supported_resolutions[g_console.current_resolution_index] == CELL_VIDEO_OUT_RESOLUTION_576)
{
if(ps3_check_resolution(CELL_VIDEO_OUT_RESOLUTION_576))
{
//ps3graphics_set_pal60hz(Settings.PS3PALTemporalMode60Hz);
video_gl.restart();
}
}
else
{
//ps3graphics_set_pal60hz(0);
video_gl.restart();
}
}
break;
/*
@ -1235,35 +1229,35 @@ static void producesettingentry(menu * menu_obj, uint64_t switchvalue)
case SETTING_SHADER:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state))
{
menuStackindex++;
menuStack[menuStackindex] = menu_filebrowser;
menuStack[menuStackindex].enum_id = SHADER_CHOICE;
set_shader = 0;
set_initial_dir_tmpbrowser = true;
set_delay = DELAY_LONG;
menuStackindex++;
menuStack[menuStackindex] = menu_filebrowser;
menuStack[menuStackindex].enum_id = SHADER_CHOICE;
set_shader = 0;
set_initial_dir_tmpbrowser = true;
set_delay = DELAY_LONG;
}
if(CTRL_START(state))
{
gl_cg_load_shader(1, NULL);
strlcpy(g_settings.video.cg_shader_path, DEFAULT_SHADER_FILE, sizeof(g_settings.video.cg_shader_path));
menu_reinit_settings();
gl_cg_load_shader(1, NULL);
strlcpy(g_settings.video.cg_shader_path, DEFAULT_SHADER_FILE, sizeof(g_settings.video.cg_shader_path));
menu_reinit_settings();
}
break;
case SETTING_SHADER_2:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state))
{
menuStackindex++;
menuStack[menuStackindex] = menu_filebrowser;
menuStack[menuStackindex].enum_id = SHADER_CHOICE;
set_shader = 1;
set_initial_dir_tmpbrowser = true;
set_delay = DELAY_LONG;
menuStackindex++;
menuStack[menuStackindex] = menu_filebrowser;
menuStack[menuStackindex].enum_id = SHADER_CHOICE;
set_shader = 1;
set_initial_dir_tmpbrowser = true;
set_delay = DELAY_LONG;
}
if(CTRL_START(state))
{
gl_cg_load_shader(2, NULL);
strlcpy(g_settings.video.second_pass_shader, DEFAULT_SHADER_FILE, sizeof(g_settings.video.second_pass_shader));
menu_reinit_settings();
gl_cg_load_shader(2, NULL);
strlcpy(g_settings.video.second_pass_shader, DEFAULT_SHADER_FILE, sizeof(g_settings.video.second_pass_shader));
menu_reinit_settings();
}
break;
case SETTING_FONT_SIZE:
@ -1356,35 +1350,35 @@ static void producesettingentry(menu * menu_obj, uint64_t switchvalue)
case SETTING_SCALE_FACTOR:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state))
{
if(g_console.fbo_enabled)
{
bool should_decrement = g_settings.video.fbo_scale_x > MIN_SCALING_FACTOR;
if(should_decrement)
{
rarch_settings_change(S_SCALE_FACTOR_DECREMENT);
apply_scaling(FBO_REINIT);
set_delay = DELAY_MEDIUM;
}
}
if(g_console.fbo_enabled)
{
bool should_decrement = g_settings.video.fbo_scale_x > MIN_SCALING_FACTOR;
if(should_decrement)
{
rarch_settings_change(S_SCALE_FACTOR_DECREMENT);
apply_scaling(FBO_REINIT);
set_delay = DELAY_MEDIUM;
}
}
}
if(CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state))
{
if(g_console.fbo_enabled)
{
bool should_increment = g_settings.video.fbo_scale_x < MAX_SCALING_FACTOR;
if(should_increment)
{
rarch_settings_change(S_SCALE_FACTOR_INCREMENT);
apply_scaling(FBO_REINIT);
set_delay = DELAY_MEDIUM;
}
}
if(g_console.fbo_enabled)
{
bool should_increment = g_settings.video.fbo_scale_x < MAX_SCALING_FACTOR;
if(should_increment)
{
rarch_settings_change(S_SCALE_FACTOR_INCREMENT);
apply_scaling(FBO_REINIT);
set_delay = DELAY_MEDIUM;
}
}
}
if(CTRL_START(state))
{
rarch_settings_default(S_DEF_SCALE_FACTOR);
apply_scaling(FBO_DEINIT);
apply_scaling(FBO_INIT);
rarch_settings_default(S_DEF_SCALE_FACTOR);
apply_scaling(FBO_DEINIT);
apply_scaling(FBO_INIT);
}
break;
case SETTING_HW_OVERSCAN_AMOUNT:
@ -1440,37 +1434,37 @@ static void producesettingentry(menu * menu_obj, uint64_t switchvalue)
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state))
{
#if(CELL_SDK_VERSION > 0x340000)
g_console.screenshots_enable = !g_console.screenshots_enable;
if(g_console.screenshots_enable)
{
cellSysmoduleLoadModule(CELL_SYSMODULE_SYSUTIL_SCREENSHOT);
CellScreenShotSetParam screenshot_param = {0, 0, 0, 0};
g_console.screenshots_enable = !g_console.screenshots_enable;
if(g_console.screenshots_enable)
{
cellSysmoduleLoadModule(CELL_SYSMODULE_SYSUTIL_SCREENSHOT);
CellScreenShotSetParam screenshot_param = {0, 0, 0, 0};
screenshot_param.photo_title = EMULATOR_NAME;
screenshot_param.game_title = EMULATOR_NAME;
cellScreenShotSetParameter (&screenshot_param);
cellScreenShotEnable();
}
else
{
cellScreenShotDisable();
cellSysmoduleUnloadModule(CELL_SYSMODULE_SYSUTIL_SCREENSHOT);
}
screenshot_param.photo_title = EMULATOR_NAME;
screenshot_param.game_title = EMULATOR_NAME;
cellScreenShotSetParameter (&screenshot_param);
cellScreenShotEnable();
}
else
{
cellScreenShotDisable();
cellSysmoduleUnloadModule(CELL_SYSMODULE_SYSUTIL_SCREENSHOT);
}
set_delay = DELAY_MEDIUM;
set_delay = DELAY_MEDIUM;
#endif
}
if(CTRL_START(state))
{
#if(CELL_SDK_VERSION > 0x340000)
g_console.screenshots_enable = true;
g_console.screenshots_enable = true;
#endif
}
break;
case SETTING_SAVE_SHADER_PRESET:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) | CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state))
{
rarch_filename_input_and_save(SHADER_PRESET_FILE);
rarch_filename_input_and_save(SHADER_PRESET_FILE);
}
break;
case SETTING_APPLY_SHADER_PRESET_ON_STARTUP:
@ -1480,58 +1474,54 @@ static void producesettingentry(menu * menu_obj, uint64_t switchvalue)
case SETTING_SOUND_MODE:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state))
{
if(g_console.sound_mode != SOUND_MODE_NORMAL)
{
g_console.sound_mode--;
set_delay = DELAY_MEDIUM;
}
if(g_console.sound_mode != SOUND_MODE_NORMAL)
{
g_console.sound_mode--;
set_delay = DELAY_MEDIUM;
}
}
if(CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state))
{
if(g_console.sound_mode < SOUND_MODE_HEADSET)
{
g_console.sound_mode++;
set_delay = DELAY_MEDIUM;
}
if(g_console.sound_mode < SOUND_MODE_HEADSET)
{
g_console.sound_mode++;
set_delay = DELAY_MEDIUM;
}
}
if(CTRL_UP(state) || CTRL_LSTICK_UP(state) || CTRL_DOWN(state) || CTRL_LSTICK_DOWN(state))
{
if(g_console.sound_mode != SOUND_MODE_RSOUND)
{
rarch_console_rsound_stop();
}
else
{
rarch_console_rsound_start(g_settings.audio.device);
}
if(g_console.sound_mode != SOUND_MODE_RSOUND)
rarch_console_rsound_stop();
else
rarch_console_rsound_start(g_settings.audio.device);
}
if(CTRL_START(state))
{
g_console.sound_mode = SOUND_MODE_NORMAL;
rarch_console_rsound_stop();
set_delay = DELAY_MEDIUM;
g_console.sound_mode = SOUND_MODE_NORMAL;
rarch_console_rsound_stop();
set_delay = DELAY_MEDIUM;
}
break;
case SETTING_RSOUND_SERVER_IP_ADDRESS:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_CROSS(state) | CTRL_LSTICK_RIGHT(state) )
{
oskutil_write_initial_message(&g_console.oskutil_handle, L"192.168.1.1");
oskutil_write_message(&g_console.oskutil_handle, L"Enter IP address for the RSound Server.");
oskutil_start(&g_console.oskutil_handle);
while(OSK_IS_RUNNING(g_console.oskutil_handle))
{
glClear(GL_COLOR_BUFFER_BIT);
gfx_ctx_swap_buffers();
oskutil_write_initial_message(&g_console.oskutil_handle, L"192.168.1.1");
oskutil_write_message(&g_console.oskutil_handle, L"Enter IP address for the RSound Server.");
oskutil_start(&g_console.oskutil_handle);
while(OSK_IS_RUNNING(g_console.oskutil_handle))
{
glClear(GL_COLOR_BUFFER_BIT);
gfx_ctx_swap_buffers();
#ifdef HAVE_SYSUTILS
cellSysutilCheckCallback();
cellSysutilCheckCallback();
#endif
}
}
if(g_console.oskutil_handle.text_can_be_fetched)
strlcpy(g_settings.audio.device, OUTPUT_TEXT_STRING(g_console.oskutil_handle), sizeof(g_settings.audio.device));
if(g_console.oskutil_handle.text_can_be_fetched)
strlcpy(g_settings.audio.device, OUTPUT_TEXT_STRING(g_console.oskutil_handle), sizeof(g_settings.audio.device));
}
if(CTRL_START(state))
strlcpy(g_settings.audio.device, "0.0.0.0", sizeof(g_settings.audio.device));
strlcpy(g_settings.audio.device, "0.0.0.0", sizeof(g_settings.audio.device));
break;
case SETTING_DEFAULT_AUDIO_ALL:
break;
@ -1553,39 +1543,39 @@ static void producesettingentry(menu * menu_obj, uint64_t switchvalue)
case SETTING_EMU_SHOW_INFO_MSG:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state))
{
g_console.info_msg_enable = !g_console.info_msg_enable;
set_delay = DELAY_MEDIUM;
g_console.info_msg_enable = !g_console.info_msg_enable;
set_delay = DELAY_MEDIUM;
}
if(CTRL_START(state))
{
g_console.info_msg_enable = true;
set_delay = DELAY_MEDIUM;
g_console.info_msg_enable = true;
set_delay = DELAY_MEDIUM;
}
break;
case SETTING_EMU_REWIND_ENABLED:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state))
{
rarch_settings_change(S_REWIND);
rarch_settings_change(S_REWIND);
set_delay = DELAY_MEDIUM;
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);
}
set_delay = DELAY_MEDIUM;
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);
}
}
if(CTRL_START(state))
g_settings.rewind_enable = false;
g_settings.rewind_enable = false;
break;
case SETTING_RARCH_DEFAULT_EMU:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state))
{
menuStackindex++;
menuStack[menuStackindex] = menu_filebrowser;
menuStack[menuStackindex].enum_id = LIBRETRO_CHOICE;
set_initial_dir_tmpbrowser = true;
set_libretro_core_as_launch = false;
set_delay = DELAY_LONG;
menuStackindex++;
menuStack[menuStackindex] = menu_filebrowser;
menuStack[menuStackindex].enum_id = LIBRETRO_CHOICE;
set_initial_dir_tmpbrowser = true;
set_libretro_core_as_launch = false;
set_delay = DELAY_LONG;
}
if(CTRL_START(state))
{
@ -1594,26 +1584,23 @@ static void producesettingentry(menu * menu_obj, uint64_t switchvalue)
case SETTING_EMU_AUDIO_MUTE:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state))
{
g_extern.audio_data.mute = !g_extern.audio_data.mute;
set_delay = DELAY_MEDIUM;
g_extern.audio_data.mute = !g_extern.audio_data.mute;
set_delay = DELAY_MEDIUM;
}
if(CTRL_START(state))
{
g_extern.audio_data.mute = false;
}
g_extern.audio_data.mute = false;
break;
case SETTING_ENABLE_CUSTOM_BGM:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state))
{
#if(CELL_SDK_VERSION > 0x340000)
g_console.custom_bgm_enable = !g_console.custom_bgm_enable;
if(g_console.custom_bgm_enable)
cellSysutilEnableBgmPlayback();
else
cellSysutilDisableBgmPlayback();
g_console.custom_bgm_enable = !g_console.custom_bgm_enable;
if(g_console.custom_bgm_enable)
cellSysutilEnableBgmPlayback();
else
cellSysutilDisableBgmPlayback();
set_delay = DELAY_MEDIUM;
set_delay = DELAY_MEDIUM;
#endif
}
if(CTRL_START(state))
@ -1630,11 +1617,11 @@ static void producesettingentry(menu * menu_obj, uint64_t switchvalue)
case SETTING_PATH_DEFAULT_ROM_DIRECTORY:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state))
{
menuStackindex++;
menuStack[menuStackindex] = menu_filebrowser;
menuStack[menuStackindex].enum_id = PATH_DEFAULT_ROM_DIR_CHOICE;
set_initial_dir_tmpbrowser = true;
set_delay = DELAY_LONG;
menuStackindex++;
menuStack[menuStackindex] = menu_filebrowser;
menuStack[menuStackindex].enum_id = PATH_DEFAULT_ROM_DIR_CHOICE;
set_initial_dir_tmpbrowser = true;
set_delay = DELAY_LONG;
}
if(CTRL_START(state))
@ -1643,113 +1630,111 @@ static void producesettingentry(menu * menu_obj, uint64_t switchvalue)
case SETTING_PATH_SAVESTATES_DIRECTORY:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state))
{
menuStackindex++;
menuStack[menuStackindex] = menu_filebrowser;
menuStack[menuStackindex].enum_id = PATH_SAVESTATES_DIR_CHOICE;
set_initial_dir_tmpbrowser = true;
set_delay = DELAY_LONG;
menuStackindex++;
menuStack[menuStackindex] = menu_filebrowser;
menuStack[menuStackindex].enum_id = PATH_SAVESTATES_DIR_CHOICE;
set_initial_dir_tmpbrowser = true;
set_delay = DELAY_LONG;
}
if(CTRL_START(state))
strlcpy(g_console.default_savestate_dir, usrDirPath, sizeof(g_console.default_savestate_dir));
strlcpy(g_console.default_savestate_dir, usrDirPath, sizeof(g_console.default_savestate_dir));
break;
case SETTING_PATH_SRAM_DIRECTORY:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state))
{
menuStackindex++;
menuStack[menuStackindex] = menu_filebrowser;
menuStack[menuStackindex].enum_id = PATH_SRAM_DIR_CHOICE;
set_initial_dir_tmpbrowser = true;
set_delay = DELAY_LONG;
menuStackindex++;
menuStack[menuStackindex] = menu_filebrowser;
menuStack[menuStackindex].enum_id = PATH_SRAM_DIR_CHOICE;
set_initial_dir_tmpbrowser = true;
set_delay = DELAY_LONG;
}
if(CTRL_START(state))
strlcpy(g_console.default_sram_dir, "", sizeof(g_console.default_sram_dir));
strlcpy(g_console.default_sram_dir, "", sizeof(g_console.default_sram_dir));
break;
case SETTING_PATH_CHEATS:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state))
{
menuStackindex++;
menuStack[menuStackindex] = menu_filebrowser;
menuStack[menuStackindex].enum_id = PATH_CHEATS_DIR_CHOICE;
set_initial_dir_tmpbrowser = true;
set_delay = DELAY_LONG;
menuStackindex++;
menuStack[menuStackindex] = menu_filebrowser;
menuStack[menuStackindex].enum_id = PATH_CHEATS_DIR_CHOICE;
set_initial_dir_tmpbrowser = true;
set_delay = DELAY_LONG;
}
if(CTRL_START(state))
strlcpy(g_settings.cheat_database, usrDirPath, sizeof(g_settings.cheat_database));
strlcpy(g_settings.cheat_database, usrDirPath, sizeof(g_settings.cheat_database));
break;
case SETTING_ENABLE_SRAM_PATH:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state))
{
g_console.default_sram_dir_enable = !g_console.default_sram_dir_enable;
menu_reinit_settings();
set_delay = DELAY_MEDIUM;
g_console.default_sram_dir_enable = !g_console.default_sram_dir_enable;
menu_reinit_settings();
set_delay = DELAY_MEDIUM;
}
if(CTRL_START(state))
{
g_console.default_sram_dir_enable = true;
menu_reinit_settings();
g_console.default_sram_dir_enable = true;
menu_reinit_settings();
}
break;
case SETTING_ENABLE_STATE_PATH:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state))
{
g_console.default_savestate_dir_enable = !g_console.default_savestate_dir_enable;
menu_reinit_settings();
set_delay = DELAY_MEDIUM;
g_console.default_savestate_dir_enable = !g_console.default_savestate_dir_enable;
menu_reinit_settings();
set_delay = DELAY_MEDIUM;
}
if(CTRL_START(state))
{
g_console.default_savestate_dir_enable = true;
menu_reinit_settings();
g_console.default_savestate_dir_enable = true;
menu_reinit_settings();
}
break;
case SETTING_PATH_DEFAULT_ALL:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state) || CTRL_START(state))
{
strlcpy(g_console.default_rom_startup_dir, "/", sizeof(g_console.default_rom_startup_dir));
strlcpy(g_console.default_savestate_dir, usrDirPath, sizeof(g_console.default_savestate_dir));
strlcpy(g_settings.cheat_database, usrDirPath, sizeof(g_settings.cheat_database));
strlcpy(g_console.default_sram_dir, "", sizeof(g_console.default_sram_dir));
strlcpy(g_console.default_rom_startup_dir, "/", sizeof(g_console.default_rom_startup_dir));
strlcpy(g_console.default_savestate_dir, usrDirPath, sizeof(g_console.default_savestate_dir));
strlcpy(g_settings.cheat_database, usrDirPath, sizeof(g_settings.cheat_database));
strlcpy(g_console.default_sram_dir, "", sizeof(g_console.default_sram_dir));
menu_reinit_settings();
menu_reinit_settings();
}
break;
case SETTING_CONTROLS_SCHEME:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_CROSS(state) | CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state))
{
menuStackindex++;
menuStack[menuStackindex] = menu_filebrowser;
menuStack[menuStackindex].enum_id = INPUT_PRESET_CHOICE;
set_initial_dir_tmpbrowser = true;
set_delay = DELAY_LONG;
menuStackindex++;
menuStack[menuStackindex] = menu_filebrowser;
menuStack[menuStackindex].enum_id = INPUT_PRESET_CHOICE;
set_initial_dir_tmpbrowser = true;
set_delay = DELAY_LONG;
}
if(CTRL_START(state))
{
menu_reinit_settings();
}
menu_reinit_settings();
break;
case SETTING_CONTROLS_NUMBER:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_CROSS(state))
{
if(currently_selected_controller_menu != 0)
currently_selected_controller_menu--;
menu_reinit_settings();
set_delay = DELAY_MEDIUM;
if(currently_selected_controller_menu != 0)
currently_selected_controller_menu--;
menu_reinit_settings();
set_delay = DELAY_MEDIUM;
}
if(CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state))
{
if(currently_selected_controller_menu < 6)
currently_selected_controller_menu++;
menu_reinit_settings();
set_delay = DELAY_MEDIUM;
if(currently_selected_controller_menu < 6)
currently_selected_controller_menu++;
menu_reinit_settings();
set_delay = DELAY_MEDIUM;
}
if(CTRL_START(state))
currently_selected_controller_menu = 0;
currently_selected_controller_menu = 0;
break;
case SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_UP:
set_keybind_digital(state, RETRO_DEVICE_ID_JOYPAD_UP);
@ -1798,15 +1783,13 @@ static void producesettingentry(menu * menu_obj, uint64_t switchvalue)
break;
case SETTING_CONTROLS_SAVE_CUSTOM_CONTROLS:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state) || CTRL_START(state))
{
rarch_filename_input_and_save(INPUT_PRESET_FILE);
}
rarch_filename_input_and_save(INPUT_PRESET_FILE);
break;
case SETTING_CONTROLS_DEFAULT_ALL:
if(CTRL_LEFT(state) || CTRL_LSTICK_LEFT(state) || CTRL_RIGHT(state) || CTRL_LSTICK_RIGHT(state) || CTRL_CROSS(state) || CTRL_START(state))
{
rarch_input_set_default_keybinds(currently_selected_controller_menu);
menu_reinit_settings();
rarch_input_set_default_keybinds(currently_selected_controller_menu);
menu_reinit_settings();
}
break;
}
@ -2028,7 +2011,6 @@ static void ingame_menu(uint32_t menu_id)
menuitem_colors[g_console.ingame_menu_item] = RED;
state = cell_pad_input_poll_device(0);
stuck_in_loop = 1;
blocking = 0;
@ -2221,13 +2203,9 @@ static void ingame_menu(uint32_t menu_id)
rarch_render_cached_frame();
if(CTRL_SQUARE(state))
{
gl->menu_render = false;
}
else
{
gl->menu_render = true;
}
if(CTRL_LSTICK_LEFT(state) || CTRL_LEFT(state))
g_console.viewports.custom_vp.x -= 1;
@ -2576,7 +2554,7 @@ void menu_loop(void)
break;
case INGAME_MENU:
if(g_console.ingame_menu_enable)
ingame_menu(menuStack[menuStackindex].enum_id);
ingame_menu(menuStack[menuStackindex].enum_id);
break;
}

View File

@ -90,9 +90,9 @@ static void *ps3_audio_init(const char *device, unsigned rate, unsigned latency)
params.nChannel = AUDIO_CHANNELS;
params.nBlock = AUDIO_BLOCKS;
if(g_console.sound_mode == SOUND_MODE_HEADSET)
params.attr = CELL_AUDIO_PORTATTR_OUT_SECONDARY;
params.attr = CELL_AUDIO_PORTATTR_OUT_SECONDARY;
else
params.attr = 0;
params.attr = 0;
if (cellAudioPortOpen(&params, &data->audio_port) != CELL_OK)
{