summaryrefslogtreecommitdiff
path: root/src/lib.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib.rs')
-rw-r--r--src/lib.rs34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/lib.rs b/src/lib.rs
new file mode 100644
index 0000000..4ff35eb
--- /dev/null
+++ b/src/lib.rs
@@ -0,0 +1,34 @@
+#![feature(bigint_helper_methods)]
+#![feature(unchecked_shifts)]
+#![feature(seek_stream_len)]
+#![feature(io_error_more)]
+
+mod debug;
+mod devices;
+mod emulators;
+mod metadata;
+
+pub use debug::DebugState;
+pub use devices::*;
+pub use emulators::*;
+pub use metadata::*;
+
+use std::num::NonZeroU32;
+use std::time::Duration;
+pub const BATCH_SIZE: usize = 1000;
+pub const MIN_TICK_DURATION: Duration = Duration::from_millis( 4 );
+pub const MIN_FRAME_DURATION: Duration = Duration::from_millis( 14 );
+pub const MAX_FRAME_DURATION: Duration = Duration::from_millis( 500 );
+pub const DEFAULT_SCREEN_SIZE: ScreenDimensions = ScreenDimensions::new(800,600);
+pub const DEFAULT_SCREEN_SCALE: NonZeroU32 = unsafe { NonZeroU32::new_unchecked(1) };
+
+pub type ScreenPosition = geometry::Point<u16>;
+pub type ScreenDimensions = geometry::Dimensions<u16>;
+
+#[macro_export]
+macro_rules! error {
+ ($source:expr, $($tokens:tt)*) => {{
+ eprint!("[ERROR] [{}]: ", $source);
+ eprintln!($($tokens)*);
+ }};
+}