diff options
author | mrb0nk500 <b0nk@b0nk.xyz> | 2021-02-13 13:59:48 -0500 |
---|---|---|
committer | mrb0nk500 <b0nk@b0nk.xyz> | 2021-02-13 13:59:48 -0500 |
commit | 8d7f27d9a0b61d3694a62f3e54be885d8073f02b (patch) | |
tree | b505454c79dba2e691ee19f716ccfd0d0aba1430 /assemble.c | |
parent | ac778a4d39ba6c80651ce20ce780dfe859c3dcff (diff) |
- Reverted back one commit before the previous commit.
This is because the previous commit actually created
a bug, rather than fixing one.
- Added JMP, and JSR to the ortho extension, and
implemented them both in the assembler, and
emulator.
Diffstat (limited to 'assemble.c')
-rw-r--r-- | assemble.c | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -898,7 +898,11 @@ uint64_t handle_opcode(token *t, bytecount *bc, uint8_t isasm, uint64_t address, int i2 = 0; int j = 0; (op[i].type == 1) ? (opcode |= (1 << (3+!i))) : (opcode &= ~(1 << (3+!i))); - if (op[i].type == 1 && (am & AM_ORTHO|AM_ORTHO2)) { + if ((am & (AM_ORTHO|AM_ORTHO2)) == (AM_ORTHO|AM_ORTHO2)) { + opcode |= 0x0C; + } + + if (op[i].type == 1 && (am & (AM_ORTHO|AM_ORTHO2))) { switch (op[i].id) { case MEM_RIND: break; case MEM_IMM: |