Skipping unknown form of PM4_EVENT_WRITE_SHD for now.

This commit is contained in:
Ben Vanik 2013-10-14 21:35:23 -07:00
parent 80e3e6fa14
commit 0b24356080
1 changed files with 8 additions and 2 deletions

View File

@ -115,7 +115,7 @@ void RingBufferWorker::ExecutePrimaryBuffer(
end_ptr = (primary_buffer_ptr_ & ~0x1FFFFFFF) | (end_ptr & 0x1FFFFFFF);
XELOGGPU("[%.8X] ExecutePrimaryBuffer(%dw -> %dw)",
start_index, end_index);
ptr, start_index, end_index);
// Execute commands!
PacketArgs args;
@ -326,7 +326,13 @@ uint32_t RingBufferWorker::ExecutePacket(PacketArgs& args) {
uint32_t d0 = READ_AND_ADVANCE_PTR(); // 3?
uint32_t d1 = READ_AND_ADVANCE_PTR(); // ptr
uint32_t d2 = READ_AND_ADVANCE_PTR(); // value?
XESETUINT32BE(p + TRANSLATE_ADDR(d1), d2);
if (!(d1 & 0xC0000000)) {
XESETUINT32BE(p + TRANSLATE_ADDR(d1), d2);
} else {
// TODO(benvanik): read up on PM4_EVENT_WRITE_SHD.
// No clue. Maybe relative write based on a register base?
XELOGE("UNKNOWN FORM OF PM4_EVENT_WRITE_SHD");
}
}
break;