Used a scheduled event to generate the ARAM DMA interrupt if the DMA is greater than a certain size. Fixes NFS:HP2 GC.
This commit is contained in:
parent
61b01474fa
commit
0f1ef49da1
|
@ -697,7 +697,7 @@ void Do_ARAM_DMA()
|
||||||
if (!GetDSPEmulator()->IsLLE())
|
if (!GetDSPEmulator()->IsLLE())
|
||||||
g_dspState.DSPControl.DMAState = 1;
|
g_dspState.DSPControl.DMAState = 1;
|
||||||
|
|
||||||
if (g_arDMA.Cnt.dir)
|
if (g_arDMA.Cnt.dir || g_arDMA.Cnt.count > 10240)
|
||||||
CoreTiming::ScheduleEvent_Threadsafe(0, et_GenerateDSPInterrupt, INT_ARAM | (1<<16));
|
CoreTiming::ScheduleEvent_Threadsafe(0, et_GenerateDSPInterrupt, INT_ARAM | (1<<16));
|
||||||
else
|
else
|
||||||
GenerateDSPInterrupt(INT_ARAM);
|
GenerateDSPInterrupt(INT_ARAM);
|
||||||
|
|
Loading…
Reference in New Issue