Litrally amlmost functional PS/2 driver. #19

Open
peony wants to merge 29 commits from peony/ableos:master into master
3 changed files with 8 additions and 7 deletions
Showing only changes of commit 90a97cd160 - Show all commits

6
Cargo.lock generated
View file

@ -213,12 +213,12 @@ dependencies = [
[[package]] [[package]]
name = "hbbytecode" name = "hbbytecode"
version = "0.1.0" version = "0.1.0"
source = "git+https://git.ablecorp.us/AbleOS/holey-bytes.git#397b2a4b1b7c088f379f32d846e235c1286e17e0" source = "git+https://git.ablecorp.us/AbleOS/holey-bytes.git#fe5a8631f66e7acde8707a68ad25074ab5b1f408"
[[package]] [[package]]
name = "hblang" name = "hblang"
version = "0.1.0" version = "0.1.0"
source = "git+https://git.ablecorp.us/AbleOS/holey-bytes.git#397b2a4b1b7c088f379f32d846e235c1286e17e0" source = "git+https://git.ablecorp.us/AbleOS/holey-bytes.git#fe5a8631f66e7acde8707a68ad25074ab5b1f408"
dependencies = [ dependencies = [
"hashbrown", "hashbrown",
"hbbytecode", "hbbytecode",
@ -229,7 +229,7 @@ dependencies = [
[[package]] [[package]]
name = "hbvm" name = "hbvm"
version = "0.1.0" version = "0.1.0"
source = "git+https://git.ablecorp.us/AbleOS/holey-bytes.git#397b2a4b1b7c088f379f32d846e235c1286e17e0" source = "git+https://git.ablecorp.us/AbleOS/holey-bytes.git#fe5a8631f66e7acde8707a68ad25074ab5b1f408"
dependencies = [ dependencies = [
"hbbytecode", "hbbytecode",
] ]

View file

@ -2,6 +2,9 @@
.{bit0, bit1, bit5, bit6, bit7} := @use("bits.hb"); .{bit0, bit1, bit5, bit6, bit7} := @use("bits.hb");
.{Port, port_at_startup} := @use("port.hb") .{Port, port_at_startup} := @use("port.hb")
port1 := port_at_startup
port2 := port_at_startup
$disable_port1 := fn(): void memory.outb(0x64, 0xAD) $disable_port1 := fn(): void memory.outb(0x64, 0xAD)
$enable_port1 := fn(): void memory.outb(0x64, 0xAE) $enable_port1 := fn(): void memory.outb(0x64, 0xAE)
$disable_port2 := fn(): void memory.outb(0x64, 0xA7) $disable_port2 := fn(): void memory.outb(0x64, 0xA7)
@ -58,9 +61,6 @@ flush_input := fn(): void {
loop if has_input(get_info()) == false break else get_info() loop if has_input(get_info()) == false break else get_info()
} }
port1 := port_at_startup
port2 := port_at_startup
init := fn(): void { init := fn(): void {
disable_port1() disable_port1()
disable_port2() disable_port2()

View file

@ -5,7 +5,8 @@ format_page := memory.dangling(u8)
info := controller.Info.(0) info := controller.Info.(0)
process := fn(port: ^controller.Port): bool { process := fn(port: ^controller.Port): void {
} }
check_complete := fn(port: ^controller.Port): bool { check_complete := fn(port: ^controller.Port): bool {