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/drivers/ps2.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'kernel/drivers/ps2.c') diff --git a/kernel/drivers/ps2.c b/kernel/drivers/ps2.c index e260f6b..f605c1d 100644 --- a/kernel/drivers/ps2.c +++ b/kernel/drivers/ps2.c @@ -266,3 +266,18 @@ int ps2_init(void) sti(); return 0; } + +int ps2_set_leds(uint8_t state) +{ + uint8_t result; + + if (!(has_mouse || has_kbd)) + return 1; + + ps2ctrl_out_cmd(0xED); + ps2ctrl_out_data(state); + if ((result = ps2ctrl_in()) != 0xFA) + return 1; + + return 0; +} -- 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/drivers/ps2.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