rpcsx/rpcs3/Emu/Cell/RawSPUThread.h
Nekotekina bc94d92cba nyu
2015-03-02 05:10:41 +03:00

32 lines
593 B
C++

#pragma once
#include "SPUThread.h"
__forceinline static u32 GetRawSPURegAddrByNum(int num, int offset)
{
return RAW_SPU_OFFSET * num + RAW_SPU_BASE_ADDR + RAW_SPU_PROB_OFFSET + offset;
}
class RawSPUThread
: public SPUThread
, public MemoryBlock
{
u32 m_index;
public:
RawSPUThread(CPUThreadType type = CPU_THREAD_RAW_SPU);
virtual ~RawSPUThread();
void start();
bool Read32(const u32 addr, u32* value);
bool Write32(const u32 addr, const u32 value);
public:
virtual void InitRegs();
u32 GetIndex() const;
private:
virtual void Task();
};
SPUThread& GetCurrentSPUThread();