From 592c6992c7ea0c2e4cbea79fadb1c845f2fc050e Mon Sep 17 00:00:00 2001 From: Freya Murphy Date: Mon, 5 May 2025 09:54:48 -0400 Subject: pc spkr --- kernel/lib/panic.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'kernel/lib/panic.c') diff --git a/kernel/lib/panic.c b/kernel/lib/panic.c index 3a6e029..35ea0b1 100644 --- a/kernel/lib/panic.c +++ b/kernel/lib/panic.c @@ -1,6 +1,8 @@ #include #include #include +#include +#include __attribute__((noreturn)) void __panic(unsigned int line, const char *file, const char *format, ...) @@ -16,6 +18,17 @@ __attribute__((noreturn)) void __panic(unsigned int line, const char *file, log_backtrace(); #endif - while (1) - halt(); + fatal_loop(); +} + +__attribute__((noreturn)) void fatal_loop(void) +{ + while(1) { + spkr_play_tone(1000); + ps2_set_leds(0x4); + kspin_milliseconds(200); + spkr_quiet(); + ps2_set_leds(0x0); + kspin_milliseconds(800); + } } -- cgit v1.2.3-freya From a1ed03f222f3e5f5a7a2232ace9785d204228f00 Mon Sep 17 00:00:00 2001 From: Freya Murphy Date: Tue, 6 May 2025 12:36:56 -0400 Subject: make ps2 not do led stuff, it brokie --- kernel/drivers/ps2.c | 2 +- kernel/lib/panic.c | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) (limited to 'kernel/lib/panic.c') diff --git a/kernel/drivers/ps2.c b/kernel/drivers/ps2.c index f605c1d..409ca09 100644 --- a/kernel/drivers/ps2.c +++ b/kernel/drivers/ps2.c @@ -272,7 +272,7 @@ int ps2_set_leds(uint8_t state) uint8_t result; if (!(has_mouse || has_kbd)) - return 1; + return 1; ps2ctrl_out_cmd(0xED); ps2ctrl_out_data(state); diff --git a/kernel/lib/panic.c b/kernel/lib/panic.c index 35ea0b1..99936c1 100644 --- a/kernel/lib/panic.c +++ b/kernel/lib/panic.c @@ -23,12 +23,10 @@ __attribute__((noreturn)) void __panic(unsigned int line, const char *file, __attribute__((noreturn)) void fatal_loop(void) { - while(1) { + while (1) { spkr_play_tone(1000); - ps2_set_leds(0x4); kspin_milliseconds(200); spkr_quiet(); - ps2_set_leds(0x0); kspin_milliseconds(800); } } -- cgit v1.2.3-freya