Try loading code at runtime
This commit is contained in:
@@ -1,32 +0,0 @@
|
||||
use core::arch::riscv64::wfi;
|
||||
|
||||
use alloc::{format, string::ToString};
|
||||
use log::error;
|
||||
|
||||
use crate::vga::{Color, Vga, FONT_HEIGHT};
|
||||
|
||||
#[panic_handler]
|
||||
fn panic(panic_info: &core::panic::PanicInfo) -> ! {
|
||||
error!("PANIC !");
|
||||
let mut panic_message = panic_info.message().to_string();
|
||||
if let Some(location) = panic_info.location() {
|
||||
panic_message = format!("{panic_message} at {}:{}", location.file(), location.line());
|
||||
}
|
||||
error!("{panic_message}");
|
||||
|
||||
Vga::clear_screen(Color::WHITE);
|
||||
unsafe { Vga::draw_string(0, 0, "PANIC !", Color::BLACK, Color::WHITE) };
|
||||
unsafe {
|
||||
Vga::draw_string(
|
||||
0,
|
||||
FONT_HEIGHT as u16,
|
||||
panic_message,
|
||||
Color::BLACK,
|
||||
Color::WHITE,
|
||||
)
|
||||
};
|
||||
|
||||
loop {
|
||||
unsafe { wfi() }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user