A set of traits for interfacing between emulated hardware devices
-
Must be useable using fully static code, to allow maximum performance for simple static emulators, and test components
-
Must be able to create a trait object from these traits, to allow maximum modularity for complex emulators
-
Must be minimal, to abstract the most common parts needed to build an emulator, without trying to support all possible extended features
-
Make it possible to abstract CPU, memory, and peripheral emulation implementations that can be reused between different emulator ecosystems
-
Support use in
no_std
where it makes sense, to allow component reuse on embedded platforms that emulate other hardware
- a complete framework for constructing an emulator. Instead these are the glue between library components that make up an emulator
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.