diff --git a/Source/Core/Core/Src/HW/DSP.cpp b/Source/Core/Core/Src/HW/DSP.cpp index 5ce02e1d71..4ae15253cc 100644 --- a/Source/Core/Core/Src/HW/DSP.cpp +++ b/Source/Core/Core/Src/HW/DSP.cpp @@ -370,6 +370,7 @@ void Read16(u16& _uReturnValue, const u32 _iAddress) break; default: + _uReturnValue = 0; _dbg_assert_(DSPINTERFACE,0); break; } @@ -580,15 +581,15 @@ void Write32(const u32 _iValue, const u32 _iAddress) // ARAM case AR_DMA_MMADDR_H: - g_arDMA.MMAddr = _iValue; + g_arDMA.MMAddr = _iValue & ~31; break; case AR_DMA_ARADDR_H: - g_arDMA.ARAddr = _iValue; + g_arDMA.ARAddr = _iValue & ~31; break; case AR_DMA_CNT_H: - g_arDMA.Cnt.Hex = _iValue; + g_arDMA.Cnt.Hex = _iValue & ~31; Do_ARAM_DMA(); break;