mirror of
https://github.com/blawar/GLideN64.git
synced 2024-07-07 03:13:49 +00:00
Correct isLowerField calculation in FrameBufferList::renderBuffer.
It did not work correct for Donkey Kong (E).
This commit is contained in:
parent
fb1a28c6db
commit
805cef4225
|
@ -342,10 +342,8 @@ void FrameBufferList::renderBuffer(u32 _address)
|
||||||
GLint partHeight = 0;
|
GLint partHeight = 0;
|
||||||
const u32 vStart = _SHIFTR( *REG.VI_V_START, 17, 9 );
|
const u32 vStart = _SHIFTR( *REG.VI_V_START, 17, 9 );
|
||||||
bool isLowerField = false;
|
bool isLowerField = false;
|
||||||
if ((*REG.VI_STATUS & 0x40) != 0) {
|
if ((*REG.VI_STATUS & 0x40) != 0)
|
||||||
const bool isPAL = (*REG.VI_V_SYNC & 0x3ff) > 550;
|
isLowerField = vStart > vStartPrev;
|
||||||
isLowerField = isPAL ? vStart < vStartPrev : vStart > vStartPrev;
|
|
||||||
}
|
|
||||||
vStartPrev = vStart;
|
vStartPrev = vStart;
|
||||||
|
|
||||||
srcY0 = ((_address - pBuffer->m_startAddress) << 1 >> pBuffer->m_size) / (*REG.VI_WIDTH);
|
srcY0 = ((_address - pBuffer->m_startAddress) << 1 >> pBuffer->m_size) / (*REG.VI_WIDTH);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user