diff --git a/Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AX.cpp b/Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AX.cpp index 40359d4f7d..3170deedde 100644 --- a/Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AX.cpp +++ b/Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AX.cpp @@ -454,3 +454,16 @@ bool CUCode_AX::AXTask(u32& _uMail) m_rMailHandler.PushMail(DSP_YIELD); return true; } + +void CUCode_AX::DoState(PointerWrap &p) +{ + std::lock_guard lk(m_csMix); + + p.Do(_CRC); + p.Do(numPBaddr); + p.Do(m_addressPBs); + p.Do(PBaddr); + p.Do(m_UploadSetupInProgress); + + m_rMailHandler.DoState(p); +} diff --git a/Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AX.h b/Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AX.h index 62bcf732ef..3ad87c228f 100644 --- a/Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AX.h +++ b/Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AX.h @@ -35,6 +35,7 @@ public: void HandleMail(u32 _uMail); void MixAdd(short* _pBuffer, int _iSize); void Update(int cycles); + void DoState(PointerWrap &p); // PBs u8 numPBaddr; diff --git a/Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AXWii.cpp b/Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AXWii.cpp index aeaa602c56..41f044f9be 100644 --- a/Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AXWii.cpp +++ b/Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AXWii.cpp @@ -255,3 +255,15 @@ bool CUCode_AXWii::AXTask(u32& _uMail) m_rMailHandler.PushMail(DSP_YIELD); //its here in case there is a CMD fuckup return true; } + +void CUCode_AXWii::DoState(PointerWrap &p) +{ + std::lock_guard lk(m_csMix); + + p.Do(_CRC); + p.Do(m_addressPBs); + p.Do(wiisportsHack); + p.Do(m_UploadSetupInProgress); + + m_rMailHandler.DoState(p); +} diff --git a/Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AXWii.h b/Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AXWii.h index 31dbca7965..10ed5241a2 100644 --- a/Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AXWii.h +++ b/Source/Core/Core/Src/HW/DSPHLE/UCodes/UCode_AXWii.h @@ -31,6 +31,7 @@ public: void HandleMail(u32 _uMail); void MixAdd(short* _pBuffer, int _iSize); void Update(int cycles); + void DoState(PointerWrap &p); private: enum