diff --git a/Source/Core/Core/DSP/Interpreter/DSPIntMultiplier.cpp b/Source/Core/Core/DSP/Interpreter/DSPIntMultiplier.cpp index e12cf07ab1..5d0e0a369c 100644 --- a/Source/Core/Core/DSP/Interpreter/DSPIntMultiplier.cpp +++ b/Source/Core/Core/DSP/Interpreter/DSPIntMultiplier.cpp @@ -372,7 +372,6 @@ void Interpreter::mulcac(const UDSPInstruction opc) // Multiply mid part of accumulator register $acS.m by high part $axT.h of // secondary accumulator $axT (treat them both as signed). Move product // register before multiplication to accumulator $acR. -// possible mistake in duddie's doc axT.h rather than axS.h // // flags out: --xx xx0x void Interpreter::mulcmv(const UDSPInstruction opc) @@ -395,7 +394,6 @@ void Interpreter::mulcmv(const UDSPInstruction opc) // MULCMVZ $acS.m, $axT.h, $acR // 110s t01r xxxx xxxx -// (fixed possible bug in duddie's description, s->t) // Multiply mid part of accumulator register $acS.m by high part $axT.h of // secondary accumulator $axT (treat them both as signed). Move product // register before multiplication to accumulator $acR, set (round) low part of diff --git a/Source/Core/Core/DSP/Jit/x64/DSPJitMultiplier.cpp b/Source/Core/Core/DSP/Jit/x64/DSPJitMultiplier.cpp index 4b7db14823..41e0548146 100644 --- a/Source/Core/Core/DSP/Jit/x64/DSPJitMultiplier.cpp +++ b/Source/Core/Core/DSP/Jit/x64/DSPJitMultiplier.cpp @@ -586,7 +586,6 @@ void DSPEmitter::mulcac(const UDSPInstruction opc) // Multiply mid part of accumulator register $acS.m by high part $axT.h of // secondary accumulator $axT (treat them both as signed). Move product // register before multiplication to accumulator $acR. -// possible mistake in duddie's doc axT.h rather than axS.h // flags out: --xx xx0x void DSPEmitter::mulcmv(const UDSPInstruction opc) @@ -618,7 +617,6 @@ void DSPEmitter::mulcmv(const UDSPInstruction opc) // MULCMVZ $acS.m, $axT.h, $acR // 110s t01r xxxx xxxx -// (fixed possible bug in duddie's description, s->t) // Multiply mid part of accumulator register $acS.m by high part $axT.h of // secondary accumulator $axT (treat them both as signed). Move product // register before multiplication to accumulator $acR, set (round) low part of diff --git a/docs/DSP/GameCube_DSP_Users_Manual/GameCube_DSP_Users_Manual.tex b/docs/DSP/GameCube_DSP_Users_Manual/GameCube_DSP_Users_Manual.tex index 28a05b9e27..85530f543b 100644 --- a/docs/DSP/GameCube_DSP_Users_Manual/GameCube_DSP_Users_Manual.tex +++ b/docs/DSP/GameCube_DSP_Users_Manual/GameCube_DSP_Users_Manual.tex @@ -3279,14 +3279,14 @@ A ``-'' indicates that the flag retains its previous value, a ``0'' indicates th \end{DSPOpcodeFormat} \begin{DSPOpcodeDescription} - \item Multiply mid part of accumulator register \Register{\$acS.m} by high part \Register{\$axS.h} of - secondary accumulator \Register{\$axS} (treat them both as signed). + \item Multiply mid part of accumulator register \Register{\$acS.m} by high part \Register{\$axT.h} of + secondary accumulator \Register{\$axT} (treat them both as signed). Move product register before multiplication to accumulator \Register{\$acR}. \end{DSPOpcodeDescription} \begin{DSPOpcodeOperation} temp = $prod - $prod = $acS.m * $axS.h + $prod = $acS.m * $axT.h $acR = temp $pc++ \end{DSPOpcodeOperation} @@ -3308,15 +3308,15 @@ A ``-'' indicates that the flag retains its previous value, a ``0'' indicates th \end{DSPOpcodeFormat} \begin{DSPOpcodeDescription} - \item Multiply mid part of accumulator register \Register{\$acS.m} by high part \Register{\$axS.h} of - secondary accumulator \Register{\$axS} (treat them both as signed). + \item Multiply mid part of accumulator register \Register{\$acS.m} by high part \Register{\$aTS.h} of + secondary accumulator \Register{\$axT} (treat them both as signed). Move product register before multiplication to accumulator \Register{\$acR}. Set low part of accumulator \Register{\$acR.l} to zero. \end{DSPOpcodeDescription} \begin{DSPOpcodeOperation} temp = $prod - $prod = $acS.m * $axS.h + $prod = $acS.m * $axT.h $acR.hm = temp.hm $acR.l = 0 $pc++