GSdx: sse2 code path still had a little mipmapping bug, tales of legendia does not crash anymore, added a hack for suikoden tactics (http://code.google.com/p/pcsx2/issues/detail?id=972)

git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4457 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
gabest11 committed 2011-03-19 19:29:30 +00:00
1 parent 13e2213f95
commit de3333df6c
7 files changed
+45 -20

No files matched your search

+5 -3
View File
@@ -119,7 +119,7 @@ const GSTextureCacheSW::Texture* GSTextureCacheSW::Lookup(const GIFRegTEX0& TEX0
if(!t->Update(TEX0, TEXA, r))
{
printf("!@#$\n"); // memory allocation may fail if the game is too hungry
printf("!@#$\n"); // memory allocation may fail if the game is too hungry (tales of legendia fight transition/scene)
RemoveAt(t);
@@ -256,13 +256,15 @@ bool GSTextureCacheSW::Texture::Update(const GIFRegTEX0& TEX0, const GIFRegTEXA&
bool repeating = m_TEX0.IsRepeating();
if(m_TEX0.TBW == 1) // repeating)
if(m_TEX0.TBW == 1 && m_tw != 0) // repeating)
{
// FIXME:
// - marking a block prevents fetching it again to a different part of the texture
// - only a real issue for TBW = 1 mipmap levels, where the repeating part is below and often exploited (onimusha 3 intro / sidewalk)
r = GSVector4i(0, 0, tw, th);
// r = GSVector4i(0, 0, tw, th);
r.top = 0;
r.bottom = th;
}
r = r.ralign<Align_Outside>(bs);