mirror of
https://github.com/RetroDECK/Duckstation.git
synced 2025-01-19 06:45:39 +00:00
GPU: Synchronize CRTC on GP1(05h) command
Fixes text flashing briefly after startup PlayStation logo in King's Field (USA).
This commit is contained in:
parent
ca7db7a2d2
commit
6bc7cf29cc
|
@ -964,10 +964,16 @@ void GPU::WriteGP1(u32 value)
|
||||||
|
|
||||||
case 0x05: // Set display start address
|
case 0x05: // Set display start address
|
||||||
{
|
{
|
||||||
m_crtc_state.regs.display_address_start = param & CRTCState::Regs::DISPLAY_ADDRESS_START_MASK;
|
const u32 new_value = param & CRTCState::Regs::DISPLAY_ADDRESS_START_MASK;
|
||||||
Log_DebugPrintf("Display address start <- 0x%08X", m_crtc_state.regs.display_address_start);
|
Log_DebugPrintf("Display address start <- 0x%08X", new_value);
|
||||||
|
|
||||||
System::IncrementInternalFrameNumber();
|
System::IncrementInternalFrameNumber();
|
||||||
UpdateCRTCDisplayParameters();
|
if (m_crtc_state.regs.display_address_start != new_value)
|
||||||
|
{
|
||||||
|
SynchronizeCRTC();
|
||||||
|
m_crtc_state.regs.display_address_start = new_value;
|
||||||
|
UpdateCRTCConfig();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue