summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author R. Belmont <rb6502@users.noreply.github.com>2010-07-22 02:25:53 +0000
committer R. Belmont <rb6502@users.noreply.github.com>2010-07-22 02:25:53 +0000
commit9433e80b419b79f99faffa8d49fde4f5bc9c3fb7 (patch)
tree9a7ef262cfbc86c72f0773e10fed982f4615cbe5
parent073e655c0aa32574722ef6c603bb87f355c4dc4f (diff)
RSP: Fix sign issue in VCL opcode [angrylion]
-rw-r--r--src/emu/cpu/rsp/rsp.c2
-rw-r--r--src/emu/cpu/rsp/rspdrc.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/emu/cpu/rsp/rsp.c b/src/emu/cpu/rsp/rsp.c
index a7667431b3f..3cdea5d8414 100644
--- a/src/emu/cpu/rsp/rsp.c
+++ b/src/emu/cpu/rsp/rsp.c
@@ -1892,7 +1892,7 @@ static void handle_vector_ops(rsp_state *rsp, UINT32 op)
{
if (rsp->flag[2] & (1 << (del)))
{
- if (((UINT32)(INT16)(s1) + (UINT32)(INT16)(s2)) > 0x10000)
+ if (((UINT32)(UINT16)(s1) + (UINT32)(UINT16)(s2)) > 0x10000)
{
W_ACCUM_L(del, s1);
CLEAR_COMPARE_FLAG(del);
diff --git a/src/emu/cpu/rsp/rspdrc.c b/src/emu/cpu/rsp/rspdrc.c
index e3f120ee539..44265df787a 100644
--- a/src/emu/cpu/rsp/rspdrc.c
+++ b/src/emu/cpu/rsp/rspdrc.c
@@ -5151,7 +5151,7 @@ INLINE void cfunc_rsp_vcl(void *param)
{
if (rsp->flag[2] & (1 << (del)))
{
- if (((UINT32)(INT16)(s1) + (UINT32)(INT16)(s2)) > 0x10000)
+ if (((UINT32)(UINT16)(s1) + (UINT32)(UINT16)(s2)) > 0x10000)
{
W_ACCUM_L(del, s1);
CLEAR_COMPARE_FLAG(del);