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;
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),
-#if 0
- 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),
-#endif
+ 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),
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];
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",
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
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),
#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[] =
{
-#if 0
- 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),
-#endif
+ 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;
}
"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[] =
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,