summaryrefslogtreecommitdiff
path: root/src/lib.rs
diff options
context:
space:
mode:
authorBen Bridle <bridle.benjamin@gmail.com>2025-07-03 15:26:07 +1200
committerBen Bridle <ben@derelict.engineering>2025-07-03 21:24:07 +1200
commit2accc78948fa4a18e37ab0bc405f9b2758acaa3e (patch)
tree2551180ef7fb8f67bfc826de4ad3daf2dd24942e /src/lib.rs
downloadbedrock-pc-2accc78948fa4a18e37ab0bc405f9b2758acaa3e.zip
Initial commit
Diffstat (limited to 'src/lib.rs')
-rw-r--r--src/lib.rs31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/lib.rs b/src/lib.rs
new file mode 100644
index 0000000..f260042
--- /dev/null
+++ b/src/lib.rs
@@ -0,0 +1,31 @@
+#![feature(bigint_helper_methods)]
+#![feature(seek_stream_len)]
+#![feature(unchecked_shifts)]
+
+mod debug;
+mod devices;
+mod emulators;
+mod types;
+
+pub use debug::*;
+pub use devices::*;
+pub use emulators::*;
+pub use types::*;
+
+use bedrock_core::*;
+use log::*;
+use phosphor::*;
+
+use std::num::NonZeroU32;
+use std::path::{Path, PathBuf};
+use std::time::{Duration, Instant};
+
+pub const BATCH_SIZE: usize = 1000;
+pub const TICK_DURATION: Duration = Duration::from_nanos( 1_000_000_000/256 );
+pub const MIN_FRAME_DURATION: Duration = Duration::from_millis( 10 );
+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>;