From 3f6e52b62adcd11ee1a15f9a94c2a43547aa3a5d Mon Sep 17 00:00:00 2001 From: Sergey Lipskiy Date: Sat, 29 Nov 2014 19:01:27 +0600 Subject: [PATCH] Fix flicker in interlaced mode. --- FrameBuffer.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/FrameBuffer.cpp b/FrameBuffer.cpp index 879c4016..fbf6551c 100644 --- a/FrameBuffer.cpp +++ b/FrameBuffer.cpp @@ -386,8 +386,12 @@ void FrameBufferList::renderBuffer(u32 _address) vStartPrev = vStart; srcY0 = ((_address - pBuffer->m_startAddress) << 1 >> pBuffer->m_size) / (*REG.VI_WIDTH); - if (isLowerField) + if (isLowerField) { + if (srcY0 > 0) --srcY0; + if (dstY0 > 0) + --dstY0; + } if (srcY0 + vCurrentHeight > vFullHeight) { dstPartHeight = srcY0;