aboutsummaryrefslogtreecommitdiffstats
path: root/src/uxn-core.s
diff options
context:
space:
mode:
authorBad Diode <bd@badd10de.dev>2023-08-29 20:41:30 +0200
committerBad Diode <bd@badd10de.dev>2023-08-29 20:41:30 +0200
commitb4e6d175934513d4b0bd611d321a5d031dafc1a9 (patch)
tree8485fe1519b7b4bc14415f1023d6ac81b25deb57 /src/uxn-core.s
parente2a7888c638d6f1587100713be6414007890e458 (diff)
downloaduxngba-b4e6d175934513d4b0bd611d321a5d031dafc1a9.tar.gz
uxngba-b4e6d175934513d4b0bd611d321a5d031dafc1a9.zip
Fix signed issue with immediate jump ops
Diffstat (limited to 'src/uxn-core.s')
-rw-r--r--src/uxn-core.s7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/uxn-core.s b/src/uxn-core.s
index ba05cc9..f110b61 100644
--- a/src/uxn-core.s
+++ b/src/uxn-core.s
@@ -854,16 +854,19 @@ jci:
854 ldrb r5, [r0], #1 854 ldrb r5, [r0], #1
855 ldrb r3, [r0], #1 855 ldrb r3, [r0], #1
856 orr r3, r3, r5, lsl #8 856 orr r3, r3, r5, lsl #8
857 lsl r3, r3, #16
858 asr r3, r3, #16
857 wpop8 r4 859 wpop8 r4
858 cmp r4, #0 860 cmp r4, #0
859 addne r0, r3 861 addne r0, r3
860 addeq r0, #2
861 b uxn_decode 862 b uxn_decode
862 863
863jmi: 864jmi:
864 ldrb r5, [r0], #1 865 ldrb r5, [r0], #1
865 ldrb r3, [r0], #1 866 ldrb r3, [r0], #1
866 orr r3, r3, r5, lsl #8 867 orr r3, r3, r5, lsl #8
868 lsl r3, r3, #16
869 asr r3, r3, #16
867 add r0, r3 870 add r0, r3
868 b uxn_decode 871 b uxn_decode
869 872
@@ -871,6 +874,8 @@ jsi:
871 ldrb r5, [r0], #1 874 ldrb r5, [r0], #1
872 ldrb r3, [r0], #1 875 ldrb r3, [r0], #1
873 orr r3, r3, r5, lsl #8 876 orr r3, r3, r5, lsl #8
877 lsl r3, r3, #16
878 asr r3, r3, #16
874 mov r4, r0 879 mov r4, r0
875 rpush16 r4 880 rpush16 r4
876 add r0, r3 881 add r0, r3