use thiserror::Error;
#[derive(Error, Debug, Eq, PartialEq)]
pub enum Chip8Error {
#[error("invalid register {0:?}")]
InvalidRegister(u8),
#[error("unknown instruction {0:?}")]
UnknownInstruction(u16),
#[error("unimplemented instruction {0:?}")]
UnimplementedInstruction(crate::instructions::Instruction),
#[error("invalid key {0:?}")]
InvalidKey(u8),
}
pub type Result<T> = std::result::Result<T, Chip8Error>;