X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=frontend%2Fmenu.c;h=9cfa171e21062669dd42137c4796997be430dd24;hp=f3d4d6361f132072275e00c969df70b6843b9a54;hb=a34a244536185a4b7caa53f3ea7267feb969db85;hpb=e4c83ca67cf7ad13db3995909605ce01ff915824 diff --git a/frontend/menu.c b/frontend/menu.c index f3d4d636..9cfa171e 100644 --- a/frontend/menu.c +++ b/frontend/menu.c @@ -32,10 +32,10 @@ #include "../libpcsxcore/cdrom.h" #include "../libpcsxcore/cdriso.h" #include "../libpcsxcore/cheat.h" -#include "../libpcsxcore/psemu_plugin_defs.h" #include "../libpcsxcore/new_dynarec/new_dynarec.h" #include "../plugins/dfinput/externals.h" #include "../plugins/gpulib/cspace.h" +#include "psemu_plugin_defs.h" #include "revision.h" #define REARMED_BIRTHDAY_TIME 1293306830 /* 25 Dec 2010 */ @@ -79,6 +79,7 @@ typedef enum MA_OPT_HWFILTER, MA_OPT_SWFILTER, MA_OPT_GAMMA, + MA_OPT_VOUT_MODE, } menu_id; static int last_vout_w, last_vout_h, last_vout_bpp; @@ -90,7 +91,7 @@ static int psx_clock; static int memcard1_sel, memcard2_sel; int g_opts, g_scaler, g_gamma = 100; int soft_scaling, analog_deadzone; // for Caanoo -int filter, soft_filter; +int soft_filter; #ifdef __ARM_ARCH_7A__ #define DEFAULT_PSX_CLOCK 57 @@ -115,11 +116,13 @@ static int bios_sel, gpu_plugsel, spu_plugsel; #ifndef UI_FEATURES_H #define MENU_BIOS_PATH "bios/" #define MENU_SHOW_VARSCALER 0 +#define MENU_SHOW_VOUTMODE 1 #define MENU_SHOW_SCALER2 0 #define MENU_SHOW_NUBS_BTNS 0 #define MENU_SHOW_VIBRATION 0 #define MENU_SHOW_DEADZONE 0 #define MENU_SHOW_MINIMIZE 0 +#define MENU_SHOW_FULLSCREEN 1 #define MENU_SHOW_VOLUME 0 #endif @@ -227,6 +230,7 @@ static void menu_set_defconfig(void) analog_deadzone = 50; soft_scaling = 1; soft_filter = 0; + plat_target.vout_fullscreen = 0; psx_clock = DEFAULT_PSX_CLOCK; region = 0; @@ -290,8 +294,10 @@ static const struct { CE_INTVAL(g_layer_y), CE_INTVAL(g_layer_w), CE_INTVAL(g_layer_h), - CE_INTVAL(filter), CE_INTVAL(soft_filter), + CE_INTVAL(plat_target.vout_method), + CE_INTVAL(plat_target.hwfilter), + CE_INTVAL(plat_target.vout_fullscreen), CE_INTVAL(state_slot), CE_INTVAL(cpu_clock), CE_INTVAL(g_opts), @@ -696,6 +702,9 @@ me_bind_action emuctrl_actions[] = { "Fast Forward ", 1 << SACTION_FAST_FORWARD }, #if MENU_SHOW_MINIMIZE { "Minimize ", 1 << SACTION_MINIMIZE }, +#endif +#if MENU_SHOW_FULLSCREEN + { "Toggle fullscreen", 1 << SACTION_TOGGLE_FULLSCREEN }, #endif { "Enter Menu ", 1 << SACTION_ENTER_MENU }, { "Gun Trigger ", 1 << SACTION_GUN_TRIGGER }, @@ -1074,6 +1083,7 @@ static const char *men_soft_filter[] = { "None", static const char *men_dummy[] = { NULL }; static const char h_cscaler[] = "Displays the scaler layer, you can resize it\n" "using d-pad or move it using R+d-pad"; +static const char h_overlay[] = "Overlay provides hardware accelerated scaling"; static const char h_soft_filter[] = "Works only if game uses low resolution modes"; static const char h_gamma[] = "Gamma/brightness adjustment (default 100)"; @@ -1132,8 +1142,9 @@ static int menu_loop_cscaler(int id, int keys) static menu_entry e_menu_gfx_options[] = { mee_enum ("Scaler", MA_OPT_VARSCALER, g_scaler, men_scaler), + mee_enum ("Video output mode", MA_OPT_VOUT_MODE, plat_target.vout_method, men_dummy), mee_onoff ("Software Scaling", MA_OPT_SCALER2, soft_scaling, 1), - mee_enum ("Hardware Filter", MA_OPT_HWFILTER, filter, men_dummy), + mee_enum ("Hardware Filter", MA_OPT_HWFILTER, plat_target.hwfilter, men_dummy), mee_enum_h ("Software Filter", MA_OPT_SWFILTER, soft_filter, men_soft_filter, h_soft_filter), mee_range_h ("Gamma adjustment", MA_OPT_GAMMA, g_gamma, 1, 200, h_gamma), // mee_onoff ("Vsync", 0, vsync, 1), @@ -2299,6 +2310,11 @@ void menu_init(void) && plat_target.cpu_clock_get != NULL && cpu_clock_st > 0; me_enable(e_menu_gfx_options, MA_OPT_CPU_CLOCKS, i); + i = me_id2offset(e_menu_gfx_options, MA_OPT_VOUT_MODE); + e_menu_gfx_options[i].data = plat_target.vout_methods; + me_enable(e_menu_gfx_options, MA_OPT_VOUT_MODE, + plat_target.vout_methods != NULL); + i = me_id2offset(e_menu_gfx_options, MA_OPT_HWFILTER); e_menu_gfx_options[i].data = plat_target.hwfilters; me_enable(e_menu_gfx_options, MA_OPT_HWFILTER, @@ -2311,6 +2327,7 @@ void menu_init(void) me_enable(e_menu_gfx_options, MA_OPT_SWFILTER, 0); #endif me_enable(e_menu_gfx_options, MA_OPT_VARSCALER, MENU_SHOW_VARSCALER); + me_enable(e_menu_gfx_options, MA_OPT_VOUT_MODE, MENU_SHOW_VOUTMODE); me_enable(e_menu_gfx_options, MA_OPT_VARSCALER_C, MENU_SHOW_VARSCALER); me_enable(e_menu_gfx_options, MA_OPT_SCALER2, MENU_SHOW_SCALER2); me_enable(e_menu_keyconfig, MA_CTRL_NUBS_BTNS, MENU_SHOW_NUBS_BTNS);