aboutsummaryrefslogtreecommitdiffstats
path: root/src/asm_ops.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/asm_ops.py')
-rw-r--r--src/asm_ops.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/asm_ops.py b/src/asm_ops.py
index 61e2caa..78ec356 100644
--- a/src/asm_ops.py
+++ b/src/asm_ops.py
@@ -109,6 +109,11 @@ def make_lpc(meta: Meta, symbols: Symbols, target: str) -> int:
(target_e << 9)
return word
+def make_rti(meta: Meta, symbols: Symbols) -> int:
+ """RTI 1110 XXXX XXXX XXXX"""
+ word = (0b1110 << 12)
+ return word
+
def make_hlt(meta: Meta, symbols: Symbols) -> int:
"""HLT 1111 XXXX XXXX XXXX"""
word = (0b1111 << 12)
@@ -126,6 +131,7 @@ operations: OpWordDict = {
"brr": make_brr,
"bri": make_bri,
"lpc": make_lpc,
+ "rti": make_rti,
"hlt": make_hlt,
}
@@ -147,6 +153,7 @@ default_expansions: OpExpansionDict = {
"brr": lambda *args: expand_id("brr", *args),
"bri": lambda *args: expand_id("bri", *args),
"lpc": lambda *args: expand_id("lpc", *args),
+ "rti": lambda *args: expand_id("rti", *args),
"hlt": lambda *args: expand_id("hlt", *args),
}