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
33
34
35
36
37
38
39
40
41
42
43
44
45
//! Virtual machine for the CHIP-8 programming language
//!
//! # Features
//! This crate uses [Cargo "features"](https://doc.rust-lang.org/cargo/reference/features.html#the-features-section) for conditional compilation.
//! - `std`: Enables usage of [Rust's standard library `std`](https://doc.rust-lang.org/std/)
//!
//! Functionality affected by features should have a `rustdoc` hint in this documentation, e.g.:
//! > This is supported on **crate feature `std`** only.
//!
//! If this is not possible for technical reasons there should be a "Features" heading describing the details instead.
//!
//! ## Feature `std`
//! This crate is [`no_std`](https://github.com/rust-lang/rfcs/blob/master/text/1184-stabilize-no_std.md) compatible if you disable this feature.
//!
//! This is a [default feature](https://doc.rust-lang.org/cargo/reference/features.html#the-default-feature) and can be disabled with `default-features = false` in your `chip_8` [dependency declaration](https://doc.rust-lang.org/cargo/reference/features.html#dependency-features).
//!
//! Even if disabled this crate still requires the [Rust core allocation and collections library `alloc`](https://doc.rust-lang.org/alloc/), i.e. a global allocator.
//!
extern crate alloc;