summaryrefslogtreecommitdiff
path: root/src/emulators.rs
blob: 56f7181ac183a451167ca8ba06ec20f49fddb836 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
mod headless_emulator;
mod graphical_emulator;

pub use headless_emulator::{HeadlessEmulator, HeadlessDeviceBus};
pub use graphical_emulator::{GraphicalEmulator, GraphicalDeviceBus};

use crate::*;

use phosphor::Colour;

use std::path::PathBuf;


pub enum EmulatorSignal {
    Promote,
    Halt,
}


pub struct EmulatorConfig {
    pub dimensions: ScreenDimensions,
    pub fullscreen: bool,
    pub scale: u32,
    pub debug_palette: Option<[Colour; 16]>,
    pub show_cursor: bool,

    pub initial_transmission: Option<Vec<u8>>,
    pub decode_stdin: bool,
    pub encode_stdout: bool,

    pub symbols_path: Option<PathBuf>,
}