CommandProcessor: Replace volatile usages with atomics

Also remove said variables from being globals.
This commit is contained in:
Lioncash
2015-05-27 03:08:48 -04:00
parent 1c2d4e5d42
commit 1ba3b4e7ac
4 changed files with 78 additions and 40 deletions

View File

@ -17,11 +17,6 @@ namespace CommandProcessor
{
extern SCPFifoStruct fifo; //This one is shared between gfx thread and emulator thread.
extern volatile bool interruptSet;
extern volatile bool interruptWaiting;
extern volatile bool interruptTokenWaiting;
extern volatile bool interruptFinishWaiting;
extern Common::Flag s_gpuMaySleep;
// internal hardware addresses
@ -143,12 +138,19 @@ void GatherPipeBursted();
void UpdateInterrupts(u64 userdata);
void UpdateInterruptsFromVideoBackend(u64 userdata);
bool IsInterruptWaiting();
void SetInterruptTokenWaiting(bool waiting);
void SetInterruptFinishWaiting(bool waiting);
void SetCpClearRegister();
void SetCpControlRegister();
void SetCpStatusRegister();
void ProcessFifoEvents();
void Update();
extern volatile u32 VITicks;
u32 GetVITicks();
void SetVITicks(u32 ticks);
void DecrementVITicks(u32 ticks);
} // namespace CommandProcessor