X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=frontend%2Fmenu.c;h=7622c4c1623458014f02c42b63007118c391cf3c;hb=2f70bda7011efe14e8e689cab687cf00b9fdfe7c;hp=868a486a1a74b10698d441ec51ed381548743dcd;hpb=44e76f8ad4944acfc109baf89beda7b723f8a209;p=pcsx_rearmed.git diff --git a/frontend/menu.c b/frontend/menu.c index 868a486a..7622c4c1 100644 --- a/frontend/menu.c +++ b/frontend/menu.c @@ -217,7 +217,7 @@ static int optional_cdimg_filter(struct dirent **namelist, int count, const char *basedir) { const char *ext, *p; - char buf[256], buf2[256]; + char buf[256], buf2[257]; int i, d, ret, good_cue; struct STAT statf; FILE *f; @@ -434,17 +434,17 @@ static const struct { CE_INTVAL_V(frameskip, 4), CE_INTVAL_P(gpu_peops.iUseDither), CE_INTVAL_P(gpu_peops.dwActFixes), - CE_INTVAL_P(gpu_unai.lineskip), - CE_INTVAL_P(gpu_unai.abe_hack), - CE_INTVAL_P(gpu_unai.no_light), - CE_INTVAL_P(gpu_unai.no_blend), - CE_INTVAL_P(gpu_senquack.ilace_force), - CE_INTVAL_P(gpu_senquack.pixel_skip), - CE_INTVAL_P(gpu_senquack.lighting), - CE_INTVAL_P(gpu_senquack.fast_lighting), - CE_INTVAL_P(gpu_senquack.blending), - CE_INTVAL_P(gpu_senquack.dithering), - CE_INTVAL_P(gpu_senquack.scale_hires), + CE_INTVAL_P(gpu_unai_old.lineskip), + CE_INTVAL_P(gpu_unai_old.abe_hack), + CE_INTVAL_P(gpu_unai_old.no_light), + CE_INTVAL_P(gpu_unai_old.no_blend), + CE_INTVAL_P(gpu_unai.ilace_force), + CE_INTVAL_P(gpu_unai.pixel_skip), + CE_INTVAL_P(gpu_unai.lighting), + CE_INTVAL_P(gpu_unai.fast_lighting), + CE_INTVAL_P(gpu_unai.blending), + CE_INTVAL_P(gpu_unai.dithering), + CE_INTVAL_P(gpu_unai.scale_hires), CE_INTVAL_P(gpu_neon.allow_interlace), CE_INTVAL_P(gpu_neon.enhancement_enable), CE_INTVAL_P(gpu_neon.enhancement_no_main), @@ -499,6 +499,13 @@ static void make_cfg_fname(char *buf, size_t size, int is_game) static void keys_write_all(FILE *f); static char *mystrip(char *str); +static void write_u32_value(FILE *f, u32 v) +{ + if (v > 7) + fprintf(f, "0x"); + fprintf(f, "%x\n", v); +} + static int menu_write_config(int is_game) { char cfgfile[MAXPATHLEN]; @@ -521,13 +528,13 @@ static int menu_write_config(int is_game) fprintf(f, "%s\n", (char *)config_data[i].val); break; case 1: - fprintf(f, "%x\n", *(u8 *)config_data[i].val); + write_u32_value(f, *(u8 *)config_data[i].val); break; case 2: - fprintf(f, "%x\n", *(u16 *)config_data[i].val); + write_u32_value(f, *(u16 *)config_data[i].val); break; case 4: - fprintf(f, "%x\n", *(u32 *)config_data[i].val); + write_u32_value(f, *(u32 *)config_data[i].val); break; default: printf("menu_write_config: unhandled len %d for %s\n", @@ -1272,6 +1279,7 @@ static const char h_cscaler[] = "Displays the scaler layer, you can resize it\ static const char h_soft_filter[] = "Works only if game uses low resolution modes"; static const char h_gamma[] = "Gamma/brightness adjustment (default 100)"; #ifdef __ARM_NEON__ +static const char *men_scanlines[] = { "OFF", "1", "2", "3", NULL }; static const char h_scanline_l[] = "Scanline brightness, 0-100%"; #endif @@ -1336,7 +1344,7 @@ static menu_entry e_menu_gfx_options[] = 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), #ifdef __ARM_NEON__ - mee_onoff ("Scanlines", MA_OPT_SCANLINES, scanlines, 1), + mee_enum ("Scanlines", MA_OPT_SCANLINES, scanlines, men_scanlines), mee_range_h ("Scanline brightness", MA_OPT_SCANLINE_LEVEL, scanline_level, 0, 100, h_scanline_l), #endif mee_range_h ("Gamma adjustment", MA_OPT_GAMMA, g_gamma, 1, 200, h_gamma), @@ -1384,37 +1392,37 @@ static int menu_loop_plugin_gpu_neon(int id, int keys) #endif -static menu_entry e_menu_plugin_gpu_unai[] = +static menu_entry e_menu_plugin_gpu_unai_old[] = { - mee_onoff ("Skip every 2nd line", 0, pl_rearmed_cbs.gpu_unai.lineskip, 1), - mee_onoff ("Abe's Odyssey hack", 0, pl_rearmed_cbs.gpu_unai.abe_hack, 1), - mee_onoff ("Disable lighting", 0, pl_rearmed_cbs.gpu_unai.no_light, 1), - mee_onoff ("Disable blending", 0, pl_rearmed_cbs.gpu_unai.no_blend, 1), + mee_onoff ("Skip every 2nd line", 0, pl_rearmed_cbs.gpu_unai_old.lineskip, 1), + mee_onoff ("Abe's Odyssey hack", 0, pl_rearmed_cbs.gpu_unai_old.abe_hack, 1), + mee_onoff ("Disable lighting", 0, pl_rearmed_cbs.gpu_unai_old.no_light, 1), + mee_onoff ("Disable blending", 0, pl_rearmed_cbs.gpu_unai_old.no_blend, 1), mee_end, }; -static int menu_loop_plugin_gpu_unai(int id, int keys) +static int menu_loop_plugin_gpu_unai_old(int id, int keys) { int sel = 0; - me_loop(e_menu_plugin_gpu_unai, &sel); + me_loop(e_menu_plugin_gpu_unai_old, &sel); return 0; } -static menu_entry e_menu_plugin_gpu_senquack[] = +static menu_entry e_menu_plugin_gpu_unai[] = { - mee_onoff ("Interlace", 0, pl_rearmed_cbs.gpu_senquack.ilace_force, 1), - mee_onoff ("Dithering", 0, pl_rearmed_cbs.gpu_senquack.dithering, 1), - mee_onoff ("Lighting", 0, pl_rearmed_cbs.gpu_senquack.lighting, 1), - mee_onoff ("Fast lighting", 0, pl_rearmed_cbs.gpu_senquack.fast_lighting, 1), - mee_onoff ("Blending", 0, pl_rearmed_cbs.gpu_senquack.blending, 1), - mee_onoff ("Pixel skip", 0, pl_rearmed_cbs.gpu_senquack.pixel_skip, 1), + mee_onoff ("Interlace", 0, pl_rearmed_cbs.gpu_unai.ilace_force, 1), + mee_onoff ("Dithering", 0, pl_rearmed_cbs.gpu_unai.dithering, 1), + mee_onoff ("Lighting", 0, pl_rearmed_cbs.gpu_unai.lighting, 1), + mee_onoff ("Fast lighting", 0, pl_rearmed_cbs.gpu_unai.fast_lighting, 1), + mee_onoff ("Blending", 0, pl_rearmed_cbs.gpu_unai.blending, 1), + mee_onoff ("Pixel skip", 0, pl_rearmed_cbs.gpu_unai.pixel_skip, 1), mee_end, }; -static int menu_loop_plugin_gpu_senquack(int id, int keys) +static int menu_loop_plugin_gpu_unai(int id, int keys) { int sel = 0; - me_loop(e_menu_plugin_gpu_senquack, &sel); + me_loop(e_menu_plugin_gpu_unai, &sel); return 0; } @@ -1519,16 +1527,16 @@ static const char h_plugin_gpu[] = "builtin_gpu is the NEON GPU, very fast and accurate\n" #endif "gpu_peops is Pete's soft GPU, slow but accurate\n" - "gpu_unai is GPU from PCSX4ALL, fast but glitchy\n" - "gpu_senquack is more accurate but slower\n" + "gpu_unai_old is from old PCSX4ALL, fast but glitchy\n" + "gpu_unai is newer, more accurate but slower\n" "gpu_gles Pete's hw GPU, uses 3D chip but is glitchy\n" "must save config and reload the game if changed"; static const char h_plugin_spu[] = "spunull effectively disables sound\n" "must save config and reload the game if changed"; static const char h_gpu_peops[] = "Configure P.E.Op.S. SoftGL Driver V1.17"; static const char h_gpu_peopsgl[]= "Configure P.E.Op.S. MesaGL Driver V1.78"; -static const char h_gpu_unai[] = "Configure Unai/PCSX4ALL Team GPU plugin"; -static const char h_gpu_senquack[] = "Configure Unai/PCSX4ALL Senquack plugin"; +static const char h_gpu_unai_old[] = "Configure Unai/PCSX4ALL Team GPU plugin (old)"; +static const char h_gpu_unai[] = "Configure Unai/PCSX4ALL Team plugin (new)"; static const char h_spu[] = "Configure built-in P.E.Op.S. Sound Driver V1.7"; static menu_entry e_menu_plugin_options[] = @@ -1540,8 +1548,8 @@ static menu_entry e_menu_plugin_options[] = mee_handler_h ("Configure built-in GPU plugin", menu_loop_plugin_gpu_neon, h_gpu_neon), #endif mee_handler_h ("Configure gpu_peops plugin", menu_loop_plugin_gpu_peops, h_gpu_peops), + mee_handler_h ("Configure gpu_unai_old GPU plugin", menu_loop_plugin_gpu_unai_old, h_gpu_unai_old), mee_handler_h ("Configure gpu_unai GPU plugin", menu_loop_plugin_gpu_unai, h_gpu_unai), - mee_handler_h ("Configure gpu_senquack GPU plugin", menu_loop_plugin_gpu_senquack, h_gpu_senquack), mee_handler_h ("Configure gpu_gles GPU plugin", menu_loop_plugin_gpu_peopsgl, h_gpu_peopsgl), mee_handler_h ("Configure built-in SPU plugin", menu_loop_plugin_spu, h_spu), mee_end, @@ -2023,10 +2031,6 @@ static const char credits_text[] = static int reset_game(void) { - // sanity check - if (bios_sel == 0 && !Config.HLE) - return -1; - ClosePlugins(); OpenPlugins(); SysReset();