|
|
@ -143,12 +143,12 @@ enum class BufferMethods { |
|
|
NotifyIntr = 0x8, |
|
|
NotifyIntr = 0x8, |
|
|
WrcacheFlush = 0x9, |
|
|
WrcacheFlush = 0x9, |
|
|
Unk28 = 0xA, |
|
|
Unk28 = 0xA, |
|
|
Unk2c = 0xB, |
|
|
|
|
|
|
|
|
UnkCacheFlush = 0xB, |
|
|
RefCnt = 0x14, |
|
|
RefCnt = 0x14, |
|
|
SemaphoreAcquire = 0x1A, |
|
|
SemaphoreAcquire = 0x1A, |
|
|
SemaphoreRelease = 0x1B, |
|
|
SemaphoreRelease = 0x1B, |
|
|
Unk70 = 0x1C, |
|
|
|
|
|
Unk74 = 0x1D, |
|
|
|
|
|
|
|
|
FenceValue = 0x1C, |
|
|
|
|
|
FenceAction = 0x1D, |
|
|
Unk78 = 0x1E, |
|
|
Unk78 = 0x1E, |
|
|
Unk7c = 0x1F, |
|
|
Unk7c = 0x1F, |
|
|
Yield = 0x20, |
|
|
Yield = 0x20, |
|
|
@ -194,6 +194,10 @@ void GPU::CallPullerMethod(const MethodCall& method_call) { |
|
|
case BufferMethods::SemaphoreAddressLow: |
|
|
case BufferMethods::SemaphoreAddressLow: |
|
|
case BufferMethods::SemaphoreSequence: |
|
|
case BufferMethods::SemaphoreSequence: |
|
|
case BufferMethods::RefCnt: |
|
|
case BufferMethods::RefCnt: |
|
|
|
|
|
case BufferMethods::UnkCacheFlush: |
|
|
|
|
|
case BufferMethods::WrcacheFlush: |
|
|
|
|
|
case BufferMethods::FenceValue: |
|
|
|
|
|
case BufferMethods::FenceAction: |
|
|
break; |
|
|
break; |
|
|
case BufferMethods::SemaphoreTrigger: { |
|
|
case BufferMethods::SemaphoreTrigger: { |
|
|
ProcessSemaphoreTriggerMethod(); |
|
|
ProcessSemaphoreTriggerMethod(); |
|
|
@ -204,21 +208,11 @@ void GPU::CallPullerMethod(const MethodCall& method_call) { |
|
|
LOG_ERROR(HW_GPU, "Special puller engine method NotifyIntr not implemented"); |
|
|
LOG_ERROR(HW_GPU, "Special puller engine method NotifyIntr not implemented"); |
|
|
break; |
|
|
break; |
|
|
} |
|
|
} |
|
|
case BufferMethods::WrcacheFlush: { |
|
|
|
|
|
// TODO(Kmather73): Research and implement this method.
|
|
|
|
|
|
LOG_ERROR(HW_GPU, "Special puller engine method WrcacheFlush not implemented"); |
|
|
|
|
|
break; |
|
|
|
|
|
} |
|
|
|
|
|
case BufferMethods::Unk28: { |
|
|
case BufferMethods::Unk28: { |
|
|
// TODO(Kmather73): Research and implement this method.
|
|
|
// TODO(Kmather73): Research and implement this method.
|
|
|
LOG_ERROR(HW_GPU, "Special puller engine method Unk28 not implemented"); |
|
|
LOG_ERROR(HW_GPU, "Special puller engine method Unk28 not implemented"); |
|
|
break; |
|
|
break; |
|
|
} |
|
|
} |
|
|
case BufferMethods::Unk2c: { |
|
|
|
|
|
// TODO(Kmather73): Research and implement this method.
|
|
|
|
|
|
LOG_ERROR(HW_GPU, "Special puller engine method Unk2c not implemented"); |
|
|
|
|
|
break; |
|
|
|
|
|
} |
|
|
|
|
|
case BufferMethods::SemaphoreAcquire: { |
|
|
case BufferMethods::SemaphoreAcquire: { |
|
|
ProcessSemaphoreAcquire(); |
|
|
ProcessSemaphoreAcquire(); |
|
|
break; |
|
|
break; |
|
|
|