summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPokechu22 <Pokechu022@gmail.com>2021-08-18 16:33:19 -0700
committerPokechu22 <Pokechu022@gmail.com>2021-08-21 17:07:14 -0700
commit9ef388f1c3635db413a1049ffef7ce156d7e9477 (patch)
tree81e27b37336bf407cea3d44eac67265d78a7e5c0
parent602163b623cdbba28f6a5dadfc4ff656fc820428 (diff)
docs/DSP: NEG can set overflow and carry
-rw-r--r--docs/DSP/GameCube_DSP_Users_Manual/GameCube_DSP_Users_Manual.tex11
1 files changed, 9 insertions, 2 deletions
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 85530f543b..18706a8b45 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
@@ -3516,12 +3516,19 @@ A ``-'' indicates that the flag retains its previous value, a ``0'' indicates th
\end{DSPOpcodeDescription}
\begin{DSPOpcodeOperation}
- $acD = -$acD
+ $acD = 0 - $acD
FLAGS($acD)
$pc++
\end{DSPOpcodeOperation}
- \DSPOpcodeFlags{-}{-}{X}{X}{X}{X}{0}{0}
+ \begin{DSPOpcodeNote}
+ \item The carry flag is set only if \Register{\$acD} was zero.
+ The overflow flag is set only if \Register{\$acD} was \Value{0x8000000000} (the minimum value),
+ as \Code{-INT\_MIN} is \Code{INT\_MIN} in two's complement.
+ In both of these cases, the value of \Register{\$acD} after the operation is the same as it was before.
+ \end{DSPOpcodeNote}
+
+ \DSPOpcodeFlags{X}{-}{X}{X}{X}{X}{X}{X}
\end{DSPOpcode}
\begin{DSPOpcode}{NOT}