1
0
mirror of https://gitlab.os-k.eu/os-k-team/kvisc.git synced 2023-08-25 14:05:46 +02:00
kvisc/vm/pc/DECD
julianb0 6f59eebedb
vm
2019-07-01 21:46:36 +02:00

55 lines
1.3 KiB
Plaintext

# The OS/K Team licenses this file to you under the MIT license.
# See the LICENSE file in the project root for more information.
Instruction encoding:
15 0 15 0
xxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxx
│││└───────────┘ │└───┘└───┘└───┘
│││ INSTR. │ FT3 FT2 FT1
│││ │
LMC R
M No more words
C COND suffix
L LOCK suffix
R REP suffix
FT1 First operand format
FT2 Second operand format
Values for COND:
00000 (none)
00001 .C
00010 .O
00011 .Z .E
00100 .S
00101 .P
00110 .A
00111 .AE
01000 .B
01001 .BE
01010 .G
01011 .GE
01100 .L
01101 .LE
01110 .CXZ
01111 (reserved)
Highest (6th) bit of COND indicates negation
Fx values:
00000 (none)
00001 reg
00010 imm64
xxx00 [imm64]
xxx01 [reg+reg] code(reg)|code(reg)
xxx10 [reg+reg+imm16] code(reg)|code(reg) imm16
xxx11 [reg+reg*imm16+imm16] code(reg)|code(reg) imm16 imm16
Where xxx is:
001 8-bit access
010 16-bit access
011 32-bit access
100 64-bit access