mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-21 05:09:34 -06:00
Fifo: Rewrite SyncGpu
The new implementation has 3 options: SyncGpuMaxDistance SyncGpuMinDistance SyncGpuOverclock The MaxDistance controlls how many CPU cycles the CPU is allowed to be in front of the GPU. Too low values will slow down extremly, too high values are as unsynchronized and half of the games will crash. The -MinDistance (negative) set how many cycles the GPU is allowed to be in front of the CPU. As we are used to emulate an infinitiv fast GPU, this may be set to any high (negative) number. The last parameter is to hack a faster (>1.0) or slower(<1.0) GPU. As we don't emulate GPU timing very well (eg skip the timings of the pixel stage completely), an overclock factor of ~0.5 is often much more accurate than 1.0
This commit is contained in:
@ -121,9 +121,6 @@ union UCPClearReg
|
||||
UCPClearReg(u16 _hex) {Hex = _hex; }
|
||||
};
|
||||
|
||||
// Can be any number, low enough to not be below the number of clocks executed by the GPU per CP_PERIOD
|
||||
const static u32 m_cpClockOrigin = 200000;
|
||||
|
||||
// Init
|
||||
void Init();
|
||||
void Shutdown();
|
||||
@ -146,10 +143,4 @@ void SetCpControlRegister();
|
||||
void SetCpStatusRegister();
|
||||
void ProcessFifoEvents();
|
||||
|
||||
void Update();
|
||||
|
||||
u32 GetVITicks();
|
||||
void SetVITicks(u32 ticks);
|
||||
void DecrementVITicks(u32 ticks);
|
||||
|
||||
} // namespace CommandProcessor
|
||||
|
Reference in New Issue
Block a user