diff --git a/Source/Core/Core/Src/PowerPC/Jit64/Jit_LoadStore.cpp b/Source/Core/Core/Src/PowerPC/Jit64/Jit_LoadStore.cpp index 246aa6eca3..d27096e775 100644 --- a/Source/Core/Core/Src/PowerPC/Jit64/Jit_LoadStore.cpp +++ b/Source/Core/Core/Src/PowerPC/Jit64/Jit_LoadStore.cpp @@ -373,6 +373,14 @@ namespace Jit64 #endif*/ //Still here? Do regular path. + + // NOTE: stb and stbu are broken under 64bit Linux + #ifndef _WIN32 + #ifdef _M_X64 + Default(inst); + return; + #endif + #endif gpr.Lock(s, a); gpr.FlushLockX(ABI_PARAM1, ABI_PARAM2); MOV(32, R(ABI_PARAM2), gpr.R(a)); diff --git a/Source/Plugins/Plugin_VideoOGL/Src/Render.cpp b/Source/Plugins/Plugin_VideoOGL/Src/Render.cpp index 6927a26b2c..573aa9cdbf 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/Render.cpp +++ b/Source/Plugins/Plugin_VideoOGL/Src/Render.cpp @@ -347,7 +347,11 @@ bool Renderer::Initialize() glDisable(GL_LIGHTING); glDepthFunc(GL_LEQUAL); + glPixelStorei(GL_UNPACK_ALIGNMENT, 4); // 4-byte pixel alignment + glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST); // perspective correct interpolation of colors and tex coords + glHint(GL_LINE_SMOOTH_HINT, GL_NICEST); + glHint(GL_POLYGON_SMOOTH_HINT, GL_NICEST); glDisable(GL_STENCIL_TEST); glEnable(GL_SCISSOR_TEST); diff --git a/Source/Plugins/Plugin_VideoOGL/Src/TextureMngr.cpp b/Source/Plugins/Plugin_VideoOGL/Src/TextureMngr.cpp index d0b4e5aea3..da6b1c2bd3 100644 --- a/Source/Plugins/Plugin_VideoOGL/Src/TextureMngr.cpp +++ b/Source/Plugins/Plugin_VideoOGL/Src/TextureMngr.cpp @@ -79,6 +79,9 @@ void TextureMngr::TCacheEntry::SetTextureParameters(TexMode0 &newmode) if (newmode.wrap_s == 2 || newmode.wrap_t == 2) { DEBUG_LOG("cannot support mirrorred repeat mode\n"); } + if (newmode.wrap_s == 1 || newmode.wrap_t == 1) { + DEBUG_LOG("cannot support repeat mode\n"); + } } else { glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, @@ -93,7 +96,6 @@ void TextureMngr::TCacheEntry::SetTextureParameters(TexMode0 &newmode) else glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, (g_Config.bForceFiltering || newmode.min_filter >= 4) ? GL_LINEAR : GL_NEAREST); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, c_WrapSettings[newmode.wrap_s]); glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, c_WrapSettings[newmode.wrap_t]); }