Opcode decoding: 0xC0 isn't a valid command.

Fix our opcode decoders to handle this appropriately.
This commit is contained in:
magumagu committed 2014-05-08 15:49:19 -07:00
1 parent b4e1ac5f08
commit 369c0c4ce2
3 files changed
+6 -6

No files matched your search

+3 -3
View File
@@ -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();