[package]
name = "marty_core"
version.workspace = true
edition.workspace = true
license.workspace = true

[lib]
name = "marty_core"
path = "src/lib.rs"
crate-type = ["lib"]

[dependencies]
marty_common = { path = "../lib/common" }
anyhow = "1.0.58"
arraydeque = "0.4.5"
bytemuck = "1.13.1"
cpal = "0.13.5"
const_format = "0.2"
lazy_static = "1.4.0"
log = "0.4"
md5 = "0.7.0"
modular-bitfield = "0.11.2"
rand = "0.8.5"
regex = "1.5.5"
ringbuf = "0.2.8"
serde = { version = "1.0.107", features = ["derive"] }
serde_derive = "1.0.107"
serde_with = "2.1.0"
serialport = { workspace = true }
strum = "0.26"
strum_macros = "0.26"
toml = "0.5.10"
uuid = { version = "1.1.2", features = ["v4"] }
fxhash.workspace = true
enum_dispatch.workspace = true

[dev-dependencies]
criterion = "0.5"

[[bench]]
name = "cga_bench"
harness = false

[[bench]]
name = "cpu_bench"
harness = false

[features]
arduino_validator = []
cpu_validator = []
ega = []
vga = []