From 6d603430672a9ba7d91e5489b186e62b06d894fa Mon Sep 17 00:00:00 2001 From: Marco Thomas Date: Wed, 2 Jul 2025 17:38:48 +0900 Subject: [PATCH] ft(interpreter): impl ret with immediate --- src/interpreter/interpreter.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/interpreter/interpreter.rs b/src/interpreter/interpreter.rs index 84907f1..348d9f8 100644 --- a/src/interpreter/interpreter.rs +++ b/src/interpreter/interpreter.rs @@ -612,6 +612,13 @@ impl Interpreter { self.set_ip(return_addr as usize); continue; } + Mnemonic::RET_Iw(w) => { + let return_addr = self.computer.pop_stack()?; + self.set_ip(return_addr as usize); + // release no longer needed values from stack + self.computer.regs.sp += w; + continue; + } /* * Load ES/DS Register