diff options
author | mrb0nk500 <b0nk@b0nk.xyz> | 2020-05-29 22:38:34 -0400 |
---|---|---|
committer | mrb0nk500 <b0nk@b0nk.xyz> | 2020-05-29 22:38:34 -0400 |
commit | 2f9d38f9f9d6f17bc274934b23915417012eeed8 (patch) | |
tree | b72aff709261d5e22f026835191eec9b73a77ff5 /sux.c | |
parent | 47cb4ad67be723a4df8e6ccd3cad6be79e3e7765 (diff) |
Make JSL, JSR absolute, and remove RTL.
The reason for doing this was because JSL, and RTL are
redundent, as they both do the same thing as JSR, and
RTS.
Diffstat (limited to 'sux.c')
-rw-r--r-- | sux.c | 3 |
1 files changed, 1 insertions, 2 deletions
@@ -457,7 +457,7 @@ void *run(void *args) { break; case JSR_IN: /* JSR Indirect. */ case JSR: /* Jump to SubRoutine. */ - case JSL: /* Jump to Subroutine Long. */ + case JSR_Z: /* JSR Zero Matrix. */ value.u64 = cpu->pc[thread]; addr[(cpu->stk_st[thread] << 16)+cpu->sp[thread]-0] = value.u8[7]; addr[(cpu->stk_st[thread] << 16)+cpu->sp[thread]-1] = value.u8[6]; @@ -481,7 +481,6 @@ void *run(void *args) { cpu->sp[thread] += 1; cpu->ps.u8[thread] = addr[(cpu->stk_st[thread] << 16)+(cpu->sp[thread])]; /* Falls through. */ case RTS: /* ReTurn from Subroutine. */ - case RTL: /* ReTurn from subroutine Long. */ cpu->sp[thread] += 8; value.u8[0] = addr[(cpu->stk_st[thread] << 16)+(cpu->sp[thread]-7)]; value.u8[1] = addr[(cpu->stk_st[thread] << 16)+(cpu->sp[thread]-6)]; |