GPU: Add option to force 4:3 for 24-bit content (e.g. FMVs)
This commit is contained in:
@ -29,7 +29,6 @@ bool GPU::Initialize(HostDisplay* host_display)
|
||||
m_host_display = host_display;
|
||||
m_force_progressive_scan = g_settings.gpu_disable_interlacing;
|
||||
m_force_ntsc_timings = g_settings.gpu_force_ntsc_timings;
|
||||
m_crtc_state.display_aspect_ratio = Settings::GetDisplayAspectRatioValue(g_settings.display_aspect_ratio);
|
||||
m_crtc_tick_event = TimingEvents::CreateTimingEvent(
|
||||
"GPU CRTC Tick", 1, 1, std::bind(&GPU::CRTCTickEvent, this, std::placeholders::_1), true);
|
||||
m_command_tick_event = TimingEvents::CreateTimingEvent(
|
||||
@ -54,8 +53,6 @@ void GPU::UpdateSettings()
|
||||
UpdateCRTCConfig();
|
||||
}
|
||||
|
||||
m_crtc_state.display_aspect_ratio = Settings::GetDisplayAspectRatioValue(g_settings.display_aspect_ratio);
|
||||
|
||||
// Crop mode calls this, so recalculate the display area
|
||||
UpdateCRTCDisplayParameters();
|
||||
}
|
||||
@ -442,6 +439,14 @@ float GPU::ComputeVerticalFrequency() const
|
||||
static_cast<double>(ticks_per_frame));
|
||||
}
|
||||
|
||||
float GPU::GetDisplayAspectRatio() const
|
||||
{
|
||||
if (g_settings.display_force_4_3_for_24bit && m_GPUSTAT.display_area_color_depth_24)
|
||||
return 4.0f / 3.0f;
|
||||
else
|
||||
return Settings::GetDisplayAspectRatioValue(g_settings.display_aspect_ratio);
|
||||
}
|
||||
|
||||
void GPU::UpdateCRTCConfig()
|
||||
{
|
||||
static constexpr std::array<u16, 8> dot_clock_dividers = {{10, 8, 5, 4, 7, 7, 7, 7}};
|
||||
|
||||
Reference in New Issue
Block a user