diff options
author | notaz | 2012-02-29 02:02:07 +0200 |
---|---|---|
committer | notaz | 2012-02-29 02:02:07 +0200 |
commit | 76720f7ff171a7d13d010d7f0af1ae546f781c9c (patch) | |
tree | e95ad3e29a52e1fc30574cc971b4609a213889fc | |
parent | 68602482156d907f9c51eb196e98f0f70b5510f8 (diff) | |
download | pcsx_rearmed-76720f7ff171a7d13d010d7f0af1ae546f781c9c.tar.gz pcsx_rearmed-76720f7ff171a7d13d010d7f0af1ae546f781c9c.tar.bz2 pcsx_rearmed-76720f7ff171a7d13d010d7f0af1ae546f781c9c.zip |
gte_arm: fix gteOF sign extension
-rw-r--r-- | libpcsxcore/gte_arm.s | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/libpcsxcore/gte_arm.s b/libpcsxcore/gte_arm.s index 239d1ea..8700f69 100644 --- a/libpcsxcore/gte_arm.s +++ b/libpcsxcore/gte_arm.s @@ -186,10 +186,10 @@ gteRTPS_nf_arm: movhs r9, #0x20000 ldmia r1, {r2-r4} /* quotient */ subhs r9, #1 - mov r2, #0 + mov r2, r6, asr #31 smlal r6, r2, r10, r9 stmia r1!,{r3,r4} @ shift gteSXY - mov r3, #0 + mov r3, r7, asr #31 smlal r7, r3, r11, r9 lsr r6, #16 /* gteDQA, gteDQB */ ldrd r10,[r0, #4*(32+27)] @@ -253,9 +253,9 @@ rtpt_arm_loop: movhs r9, #0x20000 ldrd r6, [r0,#4*(32+24)] @ gteOFXY /* quotient */ subhs r9, #1 - mov r2, #0 + mov r2, r6, asr #31 smlal r6, r2, r10, r9 - mov r3, #0 + mov r3, r7, asr #31 smlal r7, r3, r11, r9 lsr r6, #16 orr r6, r2, lsl #16 @ (gteOFX + gteIR1 * q) >> 16 |