diff --git a/Recovery/gui.c b/Recovery/gui.c index b61b876..a695c93 100644 --- a/Recovery/gui.c +++ b/Recovery/gui.c @@ -114,7 +114,7 @@ static void menu_draw(struct Menu *menu) set_screen_xy(x, y); write_string_with_color(g_messages[menu->banner_id], menu->banner_color); - x = 3, y = 4; + x = (cur_language == PSP_SYSTEMPARAM_LANGUAGE_FRENCH ? 0 : 3), y = 4; set_screen_xy(x, y); { @@ -133,7 +133,7 @@ static void menu_draw(struct Menu *menu) write_string_with_color(buf, color); } - x = 3, y = 6; + x = (cur_language == PSP_SYSTEMPARAM_LANGUAGE_FRENCH ? 0 : 3), y = 6; set_screen_xy(x, y); if(menu->cur_sel == 0) { diff --git a/Recovery/main.h b/Recovery/main.h index 2990575..6934db1 100644 --- a/Recovery/main.h +++ b/Recovery/main.h @@ -19,6 +19,7 @@ #define MAIN_H #include "config.h" +#include enum { PRO_RECOVERY_MENU = 0, @@ -190,6 +191,8 @@ extern int g_ctrl_CANCEL; extern int g_display_flip; extern SEConfig g_config; +extern int cur_language; + u32 ctrl_read(void); void ctrl_waitreleasekey(u32 key); void *get_drawing_buffer(void); diff --git a/Recovery/menu.c b/Recovery/menu.c index ce88787..5f04060 100644 --- a/Recovery/menu.c +++ b/Recovery/menu.c @@ -973,6 +973,8 @@ static char ** apply_language(char *translate_file) return (char**) g_messages_en; } +int cur_language = 0; + static void select_language(void) { int ret, value; @@ -987,6 +989,7 @@ static void select_language(void) value = g_config.language; } + cur_language = value; clear_language(); switch(value) { @@ -1030,6 +1033,10 @@ static void select_language(void) g_messages = g_messages_en; break; } + + if(g_messages == g_messages_en) { + cur_language = PSP_SYSTEMPARAM_LANGUAGE_ENGLISH; + } } void main_menu(void) diff --git a/Satelite/main.c b/Satelite/main.c index cae340a..fbaab2a 100644 --- a/Satelite/main.c +++ b/Satelite/main.c @@ -391,9 +391,12 @@ static void select_language(void) break; default: g_messages = g_messages_en; - cur_language = PSP_SYSTEMPARAM_LANGUAGE_ENGLISH; break; } + + if(g_messages == g_messages_en) { + cur_language = PSP_SYSTEMPARAM_LANGUAGE_ENGLISH; + } } int TSRThread(SceSize args, void *argp)