monistode-emulator 0.1.0

An emulator for the monistode set of ISA's
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use crate::executable::executable::Executable;

pub trait Processor<Byte, Pc, OutputPort, OutputItem> {
    fn next(&mut self) -> Byte;
    fn at_pc_plus(&self, offset: u16) -> Byte;
    fn pc(&self) -> Pc;
    fn run_command<T>(&mut self, output: T) -> ProcessorContinue
    where
        T: Fn(OutputPort, OutputItem);
    fn load_executable(&mut self, executable: &Executable);
}

pub enum ProcessorContinue {
    KeepRunning,
    Halt,
}