rustzx-core 0.16.0

ZX Spectrum emulator core library
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use crate::zx::video::colors::{ZXBrightness, ZXColor};

pub enum FrameBufferSource {
    Screen,
    Border,
}

pub trait FrameBuffer {
    type Context: Clone;
    /// Creates canvas size with required dimensions (`width`, `height`)
    fn new(width: usize, height: usize, source: FrameBufferSource, context: Self::Context) -> Self;
    /// Set `color` with `brightness` for pixel on canvas at (`x`, `y`)
    fn set_color(&mut self, x: usize, y: usize, color: ZXColor, brightness: ZXBrightness);
}