mirror of
https://github.com/RetroDECK/Duckstation.git
synced 2025-01-17 22:25:37 +00:00
DMA: Delay GPU transfers by block count
Needs real GPU timings, but fixes NFS5 in the meantime.
This commit is contained in:
parent
41cf894488
commit
0639f4264f
|
@ -197,6 +197,15 @@ TickCount DMA::GetTransferDelay(Channel channel) const
|
|||
}
|
||||
break;
|
||||
|
||||
case Channel::GPU:
|
||||
{
|
||||
if (cs.channel_control.sync_mode == SyncMode::Request)
|
||||
return cs.block_control.request.GetBlockCount();
|
||||
else
|
||||
return 1;
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
return 1;
|
||||
}
|
||||
|
|
|
@ -54,7 +54,6 @@ public:
|
|||
private:
|
||||
static constexpr PhysicalMemoryAddress BASE_ADDRESS_MASK = UINT32_C(0x00FFFFFF);
|
||||
static constexpr PhysicalMemoryAddress ADDRESS_MASK = UINT32_C(0x001FFFFC);
|
||||
static constexpr u32 TRANSFER_TICKS = 10;
|
||||
|
||||
enum class SyncMode : u32
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue