diff --git a/FrameBuffer.cpp b/FrameBuffer.cpp index 21a0f453..d4c95f9d 100644 --- a/FrameBuffer.cpp +++ b/FrameBuffer.cpp @@ -176,9 +176,9 @@ void FrameBufferList::saveBuffer(u32 _address, u16 _format, u16 _size, u16 _widt return; OGLVideo & ogl = video(); m_drawBuffer = GL_FRAMEBUFFER; - if (m_pCurrent != NULL && gDP.colorImage.height > 1) { + if (m_pCurrent != NULL && gDP.colorImage.height > 0) { m_pCurrent->m_endAddress = min(RDRAMSize, m_pCurrent->m_startAddress + (((m_pCurrent->m_width * gDP.colorImage.height) << m_pCurrent->m_size >> 1) - 1)); - if (!config.frameBufferEmulation.copyToRDRAM && !m_pCurrent->m_cfb && !m_pCurrent->m_cleared) + if (!config.frameBufferEmulation.copyToRDRAM && !m_pCurrent->m_cfb && !m_pCurrent->m_cleared && gDP.colorImage.height > 1) gDPFillRDRAM(m_pCurrent->m_startAddress, 0, 0, m_pCurrent->m_width, gDP.colorImage.height, m_pCurrent->m_width, m_pCurrent->m_size, m_pCurrent->m_fillcolor); } diff --git a/gDP.cpp b/gDP.cpp index 688c70f1..9736defe 100644 --- a/gDP.cpp +++ b/gDP.cpp @@ -276,17 +276,11 @@ void gDPSetColorImage( u32 format, u32 size, u32 width, u32 address ) { //if (gDP.colorImage.changed) frameBufferList().saveBuffer(address, (u16)format, (u16)size, (u16)width, height, false); - gDP.colorImage.height = 1; + gDP.colorImage.height = 0; //OGL_ClearDepthBuffer(); } else gDP.colorImage.height = height; - - -// if (width == VI.width) -// gDP.colorImage.height = VI.height; -// else -// gDP.colorImage.height = 1; } gDP.colorImage.format = format;