summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/OpcodeDecoding.cpp
diff options
context:
space:
mode:
authormagumagu <magumagu9@gmail.com>2014-05-08 15:43:41 -0700
committermagumagu <magumagu9@gmail.com>2014-05-08 15:49:19 -0700
commit369c0c4ce20859448a82c509661cbfe90dcc8d44 (patch)
tree83fad657f9bb6bdaa71ef5fd9b6eedd41b0493f3 /Source/Core/VideoCommon/OpcodeDecoding.cpp
parentb4e1ac5f080d630d33842822b8e3470d2c62abc3 (diff)
Opcode decoding: 0xC0 isn't a valid command.
Fix our opcode decoders to handle this appropriately.
Diffstat (limited to 'Source/Core/VideoCommon/OpcodeDecoding.cpp')
-rw-r--r--Source/Core/VideoCommon/OpcodeDecoding.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/Source/Core/VideoCommon/OpcodeDecoding.cpp b/Source/Core/VideoCommon/OpcodeDecoding.cpp
index 703f691e7e..2500dbdd38 100644
--- a/Source/Core/VideoCommon/OpcodeDecoding.cpp
+++ b/Source/Core/VideoCommon/OpcodeDecoding.cpp
@@ -201,7 +201,7 @@ u32 FifoCommandRunnable(u32 &command_size)
break;
default:
- if (cmd_byte & 0x80)
+ if ((cmd_byte & 0xC0) == 0x80)
{
// check if we can read the header
if (buffer_size >= 3)
@@ -346,7 +346,7 @@ static void Decode()
// draw primitives
default:
- if (cmd_byte & 0x80)
+ if ((cmd_byte & 0xC0) == 0x80)
{
// load vertices (use computed vertex size from FifoCommandRunnable above)
u16 numVertices = DataReadU16();
@@ -434,7 +434,7 @@ static void DecodeSemiNop()
// draw primitives
default:
- if (cmd_byte & 0x80)
+ if ((cmd_byte & 0xC0) == 0x80)
{
// load vertices (use computed vertex size from FifoCommandRunnable above)
u16 numVertices = DataReadU16();