-
Notifications
You must be signed in to change notification settings - Fork 0
ISA
0: MW
reg, imm8/reg -> reg = imm8/reg
1: LW
reg, [imm16/LM] -> reg = [LM/imm16]
2: SW
[imm16/LM], reg -> [LM/imm16] = reg
3: PUSH
imm8/reg -> [SP--] = imm8/reg
4: POP
reg -> reg = [++SP]
5: LDA
[imm16] -> LM = imm16
6: JNZ
imm8/reg -> PC = LM if imm8/reg != 0 else NOP
7: INB
reg, imm8/reg -> reg = PORT[imm8/reg]
8: OUTB
imm8/reg, reg -> PORT[imm8/reg] = reg
9: ADD^
reg, imm8/reg -> reg = reg + imm8/reg
A: ADC^
reg, imm8/reg -> reg = reg + imm8/reg + c
B: AND
reg, imm8/reg -> reg = reg & imm8/reg
C: OR
reg, imm8/reg -> reg = reg | imm8/reg
D: NOR
reg, imm8/reg -> reg = ~(reg | imm8/reg)
E: CMP^
reg, imm8/reg -> f = compare reg, imm8/reg (see below)
F: SBB^
reg, imm8/reg -> reg = reg - imm8/reg - b
A [0]: GP Register
B [1]: GP Register
C [2]: GP Register
D [3]: GP Register
Z [4]: GP Register
L [5]: GP Register / (L)east Significant Index Register
M [6]: GP Register / (M)ost Significant Index Register
F [7]: FLAGS Register (LSB to MSB)::
---LESS
---EQUAL
---CARRY
---BORROW
WIP
WIP
WIP
WIP
WIP
WIP