use crate::{
models::{
memory::Memory,
instructions::Instructions
},
event::Input,
properties::vram::Vram
};
pub trait Interpreter: Memory + Instructions {
fn vram(&self) -> Vram;
fn step(&mut self, inputs: Vec::<Input>) -> bool;
fn load_program(&mut self, program: Vec::<u8>);
fn beep(&self) -> bool;
fn set_original_load(&mut self, value: bool);
fn set_original_shift(&mut self, value: bool);
}