From 27d323f7ce88b238b5dc94f350832b081e7ca6ff Mon Sep 17 00:00:00 2001 From: TerminalCursor Date: Wed, 29 Jun 2022 21:14:02 -0700 Subject: Initial commit --- src/main.rs | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 src/main.rs (limited to 'src/main.rs') diff --git a/src/main.rs b/src/main.rs new file mode 100644 index 0000000..da78328 --- /dev/null +++ b/src/main.rs @@ -0,0 +1,33 @@ +#![no_main] +#![no_std] +#![feature(abi_efiapi)] + +mod gfx; +use crate::gfx::*; + +use uefi::prelude::*; +use core::fmt::Write; + +#[entry] +fn main(_handle: Handle, mut system_table: SystemTable) -> Status { + uefi_services::init(&mut system_table).unwrap(); + + system_table.stdout().clear().unwrap(); + writeln!(system_table.stdout(), "Clearing the screen!").unwrap(); + + let mut gop = GOP::new(&system_table).unwrap(); + gop.set_highest_resolution().unwrap(); + writeln!(system_table.stdout(), "Set max resolution!").unwrap(); + + let gop = GOP::new(&system_table).unwrap(); + let (dx, dy) = gop.get_resolution(); + writeln!(system_table.stdout(), "Resolution: {}x{}", dx, dy).unwrap(); + + let mut gop = GOP::new(&system_table).unwrap(); + gop.fill_box(0, 0, 16, 16, 128, 0, 0).unwrap(); + + #[cfg(not(debug_assertions))] + loop {} + #[allow(unreachable_code)] + Status::SUCCESS +} -- cgit v1.2.1