diff options
author | mrb0nk500 <b0nk@b0nk.xyz> | 2020-07-06 20:04:41 -0400 |
---|---|---|
committer | mrb0nk500 <b0nk@b0nk.xyz> | 2020-07-06 20:04:41 -0400 |
commit | 756c606af68be8ccca7aced3b9c3d56fb2d5087f (patch) | |
tree | fbc02b63feb1933a213d26ae68ab1b1a104e4ef3 /opcode.h | |
parent | 887802efcdb3b56263069cc6778a8f53ed89d599 (diff) |
- Implemented a new opcode table.
- Added a new preifx called the OF prefix, which adds
the contents of a specific register to the current
operand.
- Added a table generator, which parses opcode table
csv files.
Diffstat (limited to 'opcode.h')
-rw-r--r-- | opcode.h | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -10,7 +10,7 @@ #define getclk 0 #define keypoll 0 -#define OPNUM 88 +#define OPNUM 87 #define C (1 << 0) /* Carry flag. */ #define Z (1 << 1) /* Zero flag. */ @@ -38,7 +38,7 @@ extern uint8_t get_addrsize(uint8_t prefix, uint8_t addrmode); #define setreg_sw(reg, reg_idx, val, val_idx, prefix, addrmode, type) {\ switch (type) {\ - case RS: setreg(reg, +, reg_idx, val, +, val_idx, (1 << (prefix >> 4))-1); break;\ + case RS: setreg(reg, +, reg_idx, val, +, val_idx, (1 << ((prefix >> 4) & 3))-1); break;\ case AM: setreg(reg, +, reg_idx, val, +, val_idx, get_addrsize(prefix, addrmode)); break;\ }\ } |