use crate::error::MachineError;
use crate::machine::MachineW;
impl MachineW {
pub(crate) fn execute_sob(&mut self) -> Result<(), MachineError> {
self.l = self.ad & 0b0000011111111111;
Ok(())
}
pub(crate) fn execute_som(&mut self) -> Result<(), MachineError> {
if (self.ak & 0x8000) != 0 {
self.l = self.ad & 0b0000011111111111;
}
Ok(())
}
pub(crate) fn execute_soz(&mut self) -> Result<(), MachineError> {
if self.ak == 0 {
self.l = self.ad & 0b0000011111111111;
}
Ok(())
}
pub(crate) fn execute_stp(&mut self) -> Result<(), MachineError> {
self.is_running = false;
Ok(())
}
}