summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Bridle <ben@derelict.engineering>2024-12-16 18:37:47 +1300
committerBen Bridle <ben@derelict.engineering>2024-12-16 18:37:47 +1300
commit5bfd90b104fc9fb1c665a11df5f0e23b102cbe26 (patch)
tree8d6636b2b65c072d3a51e075950df95411719780
parent58faa15a909fe849e7e14a26cca85baf40e7598a (diff)
downloadbedrock-pc-5bfd90b104fc9fb1c665a11df5f0e23b102cbe26.zip
Temporary, release stuff
l---------src/bin/cobalt.br1
-rw-r--r--src/bin/cobalt.rs45
2 files changed, 46 insertions, 0 deletions
diff --git a/src/bin/cobalt.br b/src/bin/cobalt.br
new file mode 120000
index 0000000..8e1cf9c
--- /dev/null
+++ b/src/bin/cobalt.br
@@ -0,0 +1 @@
+/home/ben/Projects/Cobalt releases/v2.0.0/cobalt.br \ No newline at end of file
diff --git a/src/bin/cobalt.rs b/src/bin/cobalt.rs
new file mode 100644
index 0000000..172ecb9
--- /dev/null
+++ b/src/bin/cobalt.rs
@@ -0,0 +1,45 @@
+use bedrock_pc::*;
+use phosphor::*;
+
+
+fn main() {
+ let bytecode = include_bytes!("cobalt.br");
+ let metadata = parse_metadata(bytecode);
+
+ let config = EmulatorConfig {
+ dimensions: ScreenDimensions::new(1024,720) / 3,
+ fullscreen: false,
+ scale: 3,
+ debug_palette: None,
+ show_cursor: false,
+ initial_transmission: None,
+ decode_stdin: false,
+ encode_stdout: false,
+ symbols_path: None,
+ };
+ if let Ok(mut phosphor) = Phosphor::new() {
+ let mut graphical = GraphicalEmulator::new(&config, false);
+ graphical.load_program(bytecode);
+ let program_name = match &metadata {
+ Some(metadata) => match &metadata.name {
+ Some(name) => name.to_string(),
+ None => String::from("Bedrock"),
+ }
+ None => String::from("Bedrock"),
+ };
+ let window = WindowBuilder {
+ dimensions: Some(graphical.dimensions()),
+ size_bounds: Some(graphical.size_bounds()),
+ fullscreen: graphical.fullscreen,
+ scale: graphical.scale,
+ title: Some(program_name),
+ cursor: None,
+ icon: None,
+ program: Box::new(graphical),
+ };
+ phosphor.create_window(window);
+ phosphor.run().unwrap();
+ } else {
+ eprintln!("Could not create program window.")
+ }
+}