Merge pull request #13047 from libretro/fix-blargg-warning
Fix blargg warning + some cleanups
This commit is contained in:
commit
076440987b
|
@ -74,78 +74,85 @@ static void blargg_ntsc_snes_initialize(void *data,
|
||||||
const struct softfilter_config *config,
|
const struct softfilter_config *config,
|
||||||
void *userdata)
|
void *userdata)
|
||||||
{
|
{
|
||||||
char *tvtype = NULL;
|
char *tvtype = NULL;
|
||||||
snes_ntsc_setup_t setup;
|
snes_ntsc_setup_t setup = retroarch_snes_ntsc_composite;
|
||||||
struct filter_data *filt = (struct filter_data*)data;
|
struct filter_data *filt = (struct filter_data*)data;
|
||||||
|
|
||||||
float custom_hue, custom_saturation, custom_contrast, custom_brightness, custom_sharpness,
|
filt->ntsc = (snes_ntsc_t*)
|
||||||
custom_gamma, custom_resolution, custom_artifacts, custom_fringing, custom_bleed, custom_merge_fields;
|
calloc(1, sizeof(*filt->ntsc));
|
||||||
|
setup.merge_fields = 1;
|
||||||
config->get_float(userdata, "hue", &custom_hue, 0.0f);
|
|
||||||
config->get_float(userdata, "saturation", &custom_saturation, 0.0f);
|
|
||||||
config->get_float(userdata, "contrast", &custom_contrast, 0.0f);
|
|
||||||
config->get_float(userdata, "brightness", &custom_brightness, 0.0f);
|
|
||||||
config->get_float(userdata, "sharpness", &custom_sharpness, 0.0f);
|
|
||||||
config->get_float(userdata, "gamma", &custom_gamma, 0.0f);
|
|
||||||
config->get_float(userdata, "resolution", &custom_resolution, 0.0f);
|
|
||||||
config->get_float(userdata, "artifacts", &custom_artifacts, 0.0f);
|
|
||||||
config->get_float(userdata, "fringing", &custom_fringing, 0.0f);
|
|
||||||
config->get_float(userdata, "bleed", &custom_bleed, 0.0f);
|
|
||||||
config->get_float(userdata, "merge_fields", &custom_merge_fields, 1.0f);
|
|
||||||
|
|
||||||
filt->ntsc = (snes_ntsc_t*)calloc(1, sizeof(*filt->ntsc));
|
|
||||||
|
|
||||||
if (config->get_string(userdata, "tvtype", &tvtype, "composite"))
|
if (config->get_string(userdata, "tvtype", &tvtype, "composite"))
|
||||||
{
|
{
|
||||||
if (memcmp(tvtype, "composite", 9) == 0)
|
/* NOTE: SNES composite is being set by default,
|
||||||
{
|
merge_fields should only be set to 0 for RF output */
|
||||||
setup = retroarch_snes_ntsc_composite;
|
|
||||||
setup.merge_fields = 1;
|
if (memcmp(tvtype, "rf", 2) == 0)
|
||||||
}
|
|
||||||
else if (memcmp(tvtype, "rf", 2) == 0)
|
|
||||||
{
|
|
||||||
setup = retroarch_snes_ntsc_composite;
|
|
||||||
setup.merge_fields = 0;
|
setup.merge_fields = 0;
|
||||||
}
|
|
||||||
else if (memcmp(tvtype, "rgb", 3) == 0)
|
else if (memcmp(tvtype, "rgb", 3) == 0)
|
||||||
{
|
setup = retroarch_snes_ntsc_rgb;
|
||||||
setup = retroarch_snes_ntsc_rgb;
|
|
||||||
setup.merge_fields = 1;
|
|
||||||
}
|
|
||||||
else if (memcmp(tvtype, "svideo", 6) == 0)
|
else if (memcmp(tvtype, "svideo", 6) == 0)
|
||||||
{
|
setup = retroarch_snes_ntsc_svideo;
|
||||||
setup = retroarch_snes_ntsc_svideo;
|
|
||||||
setup.merge_fields = 1;
|
|
||||||
}
|
|
||||||
else if (memcmp(tvtype, "custom", 6) == 0)
|
else if (memcmp(tvtype, "custom", 6) == 0)
|
||||||
{
|
{
|
||||||
setup = retroarch_snes_ntsc_composite;
|
float custom_merge_fields = 1.0f;
|
||||||
setup.hue = custom_hue;
|
float custom_bleed = 0.0f;
|
||||||
setup.saturation = custom_saturation;
|
float custom_fringing = 0.0f;
|
||||||
setup.contrast = custom_contrast;
|
float custom_artifacts = 0.0f;
|
||||||
setup.brightness = custom_brightness;
|
float custom_resolution = 0.0f;
|
||||||
setup.sharpness = custom_sharpness;
|
float custom_gamma = 0.0f;
|
||||||
setup.gamma = custom_gamma;
|
float custom_sharpness = 0.0f;
|
||||||
setup.resolution = custom_resolution;
|
float custom_brightness = 0.0f;
|
||||||
setup.artifacts = custom_artifacts;
|
float custom_hue = 0.0f;
|
||||||
setup.fringing = custom_fringing;
|
float custom_saturation = 0.0f;
|
||||||
setup.bleed = custom_bleed;
|
float custom_contrast = 0.0f;
|
||||||
setup.merge_fields = custom_merge_fields;
|
|
||||||
|
config->get_float(userdata, "merge_fields",
|
||||||
|
&custom_merge_fields, 1.0f);
|
||||||
|
config->get_float(userdata, "bleed",
|
||||||
|
&custom_bleed, 0.0f);
|
||||||
|
config->get_float(userdata, "fringing",
|
||||||
|
&custom_fringing, 0.0f);
|
||||||
|
config->get_float(userdata, "artifacts",
|
||||||
|
&custom_artifacts, 0.0f);
|
||||||
|
config->get_float(userdata, "resolution",
|
||||||
|
&custom_resolution, 0.0f);
|
||||||
|
config->get_float(userdata, "gamma",
|
||||||
|
&custom_gamma, 0.0f);
|
||||||
|
config->get_float(userdata, "brightness",
|
||||||
|
&custom_brightness, 0.0f);
|
||||||
|
config->get_float(userdata, "sharpness",
|
||||||
|
&custom_sharpness, 0.0f);
|
||||||
|
config->get_float(userdata, "hue",
|
||||||
|
&custom_hue, 0.0f);
|
||||||
|
config->get_float(userdata, "saturation",
|
||||||
|
&custom_saturation, 0.0f);
|
||||||
|
config->get_float(userdata, "contrast",
|
||||||
|
&custom_contrast, 0.0f);
|
||||||
|
|
||||||
|
setup = retroarch_snes_ntsc_composite;
|
||||||
|
|
||||||
|
setup.hue = custom_hue;
|
||||||
|
setup.saturation = custom_saturation;
|
||||||
|
setup.contrast = custom_contrast;
|
||||||
|
setup.brightness = custom_brightness;
|
||||||
|
setup.sharpness = custom_sharpness;
|
||||||
|
setup.gamma = custom_gamma;
|
||||||
|
setup.resolution = custom_resolution;
|
||||||
|
setup.artifacts = custom_artifacts;
|
||||||
|
setup.fringing = custom_fringing;
|
||||||
|
setup.bleed = custom_bleed;
|
||||||
|
setup.merge_fields = custom_merge_fields;
|
||||||
config->get_int(userdata, "hires_blit", &hires_blit, 1);
|
config->get_int(userdata, "hires_blit", &hires_blit, 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
setup = retroarch_snes_ntsc_composite;
|
|
||||||
setup.merge_fields = 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
config->free(tvtype);
|
config->free(tvtype);
|
||||||
tvtype = NULL;
|
tvtype = NULL;
|
||||||
|
|
||||||
retroarch_snes_ntsc_init(filt->ntsc, &setup);
|
retroarch_snes_ntsc_init(filt->ntsc, &setup);
|
||||||
|
|
||||||
filt->burst = 0;
|
filt->burst = 0;
|
||||||
filt->burst_toggle = (setup.merge_fields ? 0 : 1);
|
filt->burst_toggle = (setup.merge_fields ? 0 : 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue