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

55 lines
1.3 KiB
Plaintext
Raw Normal View History

2019-06-07 22:23:38 +02:00
# 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
2019-07-01 21:46:36 +02:00
│││└───────────┘ │└───┘└───┘└───┘
│││ INSTR. │ FT3 FT2 FT1
│││ │
LMC R
2019-06-07 22:23:38 +02:00
M No more words
2019-07-01 21:46:36 +02:00
C COND suffix
L LOCK suffix
R REP suffix
2019-06-08 07:47:08 +02:00
FT1 First operand format
FT2 Second operand format
2019-06-07 22:23:38 +02:00
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:
2019-06-12 15:30:35 +02:00
00000 (none)
00001 reg
00010 imm64
2019-06-07 22:23:38 +02:00
xxx00 [imm64]
2019-06-08 07:47:08 +02:00
xxx01 [reg+reg] code(reg)|code(reg)
2019-06-07 22:23:38 +02:00
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