mirror of https://github.com/PCSX2/pcsx2.git
gsdx sw: trick GetFeedbackOutput to handle basic merge loopback
It is enough for Xenosaga.
This commit is contained in:
parent
deb2ed3d09
commit
51c64fcbe6
|
@ -193,6 +193,20 @@ GSTexture* GSRendererSW::GetOutput(int i, int& y_offset)
|
||||||
return m_texture[i];
|
return m_texture[i];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GSTexture* GSRendererSW::GetFeedbackOutput()
|
||||||
|
{
|
||||||
|
int dummy;
|
||||||
|
|
||||||
|
// It is enough to emulate Xenosaga cutscene. (or any game that will do a basic loopback)
|
||||||
|
for (int i = 0; i < 2; i++) {
|
||||||
|
if (m_regs->EXTBUF.EXBP == m_regs->DISP[i].DISPFB.Block())
|
||||||
|
return GetOutput(i, dummy);
|
||||||
|
}
|
||||||
|
|
||||||
|
return nullptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
template<uint32 primclass, uint32 tme, uint32 fst>
|
template<uint32 primclass, uint32 tme, uint32 fst>
|
||||||
void GSRendererSW::ConvertVertexBuffer(GSVertexSW* RESTRICT dst, const GSVertex* RESTRICT src, size_t count)
|
void GSRendererSW::ConvertVertexBuffer(GSVertexSW* RESTRICT dst, const GSVertex* RESTRICT src, size_t count)
|
||||||
{
|
{
|
||||||
|
|
|
@ -84,6 +84,7 @@ protected:
|
||||||
void VSync(int field);
|
void VSync(int field);
|
||||||
void ResetDevice();
|
void ResetDevice();
|
||||||
GSTexture* GetOutput(int i, int& y_offset);
|
GSTexture* GetOutput(int i, int& y_offset);
|
||||||
|
GSTexture* GetFeedbackOutput();
|
||||||
|
|
||||||
void Draw();
|
void Draw();
|
||||||
void Queue(shared_ptr<GSRasterizerData>& item);
|
void Queue(shared_ptr<GSRasterizerData>& item);
|
||||||
|
|
Loading…
Reference in New Issue