mirror of
https://github.com/dborth/snes9xgx.git
synced 2025-01-25 17:41:13 +01:00
add soft and sharp video filtering options
This commit is contained in:
parent
c617a00d69
commit
a2ebaeac72
@ -3168,7 +3168,7 @@ static int MenuSettingsVideo()
|
|||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
GCSettings.render++;
|
GCSettings.render++;
|
||||||
if (GCSettings.render > 2)
|
if (GCSettings.render > 4)
|
||||||
GCSettings.render = 0;
|
GCSettings.render = 0;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -3232,6 +3232,10 @@ static int MenuSettingsVideo()
|
|||||||
sprintf (options.value[0], "Filtered");
|
sprintf (options.value[0], "Filtered");
|
||||||
else if (GCSettings.render == 2)
|
else if (GCSettings.render == 2)
|
||||||
sprintf (options.value[0], "Unfiltered");
|
sprintf (options.value[0], "Unfiltered");
|
||||||
|
else if (GCSettings.render == 3)
|
||||||
|
sprintf (options.value[0], "Filtered (Sharp)");
|
||||||
|
else if (GCSettings.render == 4)
|
||||||
|
sprintf (options.value[0], "Filtered (Soft)");
|
||||||
|
|
||||||
if(GCSettings.widescreen)
|
if(GCSettings.widescreen)
|
||||||
sprintf (options.value[1], "16:9 Correction");
|
sprintf (options.value[1], "16:9 Correction");
|
||||||
|
@ -398,8 +398,8 @@ void FixInvalidSettings()
|
|||||||
GCSettings.language = LANG_ENGLISH;
|
GCSettings.language = LANG_ENGLISH;
|
||||||
if(GCSettings.Controller > CTRL_PAD4 || GCSettings.Controller < CTRL_MOUSE)
|
if(GCSettings.Controller > CTRL_PAD4 || GCSettings.Controller < CTRL_MOUSE)
|
||||||
GCSettings.Controller = CTRL_PAD2;
|
GCSettings.Controller = CTRL_PAD2;
|
||||||
if(!(GCSettings.render >= 0 && GCSettings.render < 3))
|
if(!(GCSettings.render >= 0 && GCSettings.render < 5))
|
||||||
GCSettings.render = 2;
|
GCSettings.render = 4;
|
||||||
if(!(GCSettings.videomode >= 0 && GCSettings.videomode < 5))
|
if(!(GCSettings.videomode >= 0 && GCSettings.videomode < 5))
|
||||||
GCSettings.videomode = 0;
|
GCSettings.videomode = 0;
|
||||||
}
|
}
|
||||||
|
@ -653,7 +653,13 @@ ResetVideo_Emu ()
|
|||||||
|
|
||||||
GX_SetDispCopySrc (0, 0, rmode->fbWidth, rmode->efbHeight);
|
GX_SetDispCopySrc (0, 0, rmode->fbWidth, rmode->efbHeight);
|
||||||
GX_SetDispCopyDst (rmode->fbWidth, rmode->xfbHeight);
|
GX_SetDispCopyDst (rmode->fbWidth, rmode->xfbHeight);
|
||||||
GX_SetCopyFilter(rmode->aa, rmode->sample_pattern, (rmode->xfbMode == VI_XFBMODE_SF) ? GX_FALSE : GX_TRUE, rmode->vfilter);
|
u8 sharp[7] = {0,0,21,22,21,0,0};
|
||||||
|
u8 soft[7] = {8,8,10,12,10,8,8};
|
||||||
|
u8* vfilter =
|
||||||
|
GCSettings.render == 3 ? sharp
|
||||||
|
: GCSettings.render == 4 ? soft
|
||||||
|
: rmode->vfilter;
|
||||||
|
GX_SetCopyFilter(rmode->aa, rmode->sample_pattern, (rmode->xfbMode == VI_XFBMODE_SF) ? GX_FALSE : GX_TRUE, vfilter);
|
||||||
|
|
||||||
GX_SetFieldMode (rmode->field_rendering, ((rmode->viHeight == 2 * rmode->xfbHeight) ? GX_ENABLE : GX_DISABLE));
|
GX_SetFieldMode (rmode->field_rendering, ((rmode->viHeight == 2 * rmode->xfbHeight) ? GX_ENABLE : GX_DISABLE));
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user