summaryrefslogtreecommitdiff
path: root/Source/Core
diff options
context:
space:
mode:
authorMarcus Wanners <marcus@wanners.net>2009-04-24 18:15:47 +0000
committerMarcus Wanners <marcus@wanners.net>2009-04-24 18:15:47 +0000
commit7c4e1545e8d399b2badc27e2a3fc6424d02a5564 (patch)
treec36239625ae62292ee8a0069c21ce32e3c890b70 /Source/Core
parentf39af5f9a528b3441c4d43737fc337a19fabe299 (diff)
Try to fix the fence problem in Paper Mario:TTYD, might fix other things as well. See issue 360 for more details.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3067 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Core')
-rw-r--r--Source/Core/Core/Src/HW/PixelEngine.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/Source/Core/Core/Src/HW/PixelEngine.cpp b/Source/Core/Core/Src/HW/PixelEngine.cpp
index 6fee58c5f4..5dc0b8b1dd 100644
--- a/Source/Core/Core/Src/HW/PixelEngine.cpp
+++ b/Source/Core/Core/Src/HW/PixelEngine.cpp
@@ -46,6 +46,10 @@ enum
PE_ALPHAREAD = 0x008, // Alpha Read
PE_CTRL_REGISTER = 0x00a, // Control
PE_TOKEN_REG = 0x00e, // Token
+ PE_FLIP_LEFT = 0x010, // Flip Left
+ PE_FLIP_RIGHT = 0x012, // Flip Right
+ PE_FLIP_TOP = 0x014, // Flip Top
+ PE_FLIP_BOTTOM = 0x016, // Flip Bottom
};
// fifo Control Register
@@ -100,6 +104,23 @@ void Read16(u16& _uReturnValue, const u32 _iAddress)
switch (_iAddress & 0xFFF)
{
+
+ case PE_FLIP_LEFT:
+ _uReturnValue = 0x80;
+ return;
+
+ case PE_FLIP_RIGHT:
+ _uReturnValue = 0xA0;
+ return;
+
+ case PE_FLIP_TOP:
+ _uReturnValue = 0x80;
+ return;
+
+ case PE_FLIP_BOTTOM:
+ _uReturnValue = 0xA0;
+ return;
+
case PE_CTRL_REGISTER:
_uReturnValue = g_ctrlReg.Hex;
INFO_LOG(PIXELENGINE,"\t CTRL_REGISTER : %04x", _uReturnValue);
@@ -148,6 +169,7 @@ void Write16(const u16 _iValue, const u32 _iAddress)
{
switch (_iAddress & 0xFFF)
{
+
case PE_CTRL_REGISTER:
{
UPECtrlReg tmpCtrl(_iValue);