pub struct Keyboard { /* private fields */ }
Implementations§
Source§impl Keyboard
Implements a PS/2 keyboard
https://wiki.osdev.org/PS/2_Keyboard
https://wiki.osdev.org/“8042”_PS/2_Controller
impl Keyboard
Implements a PS/2 keyboard https://wiki.osdev.org/PS/2_Keyboard https://wiki.osdev.org/“8042”_PS/2_Controller
Usable test program for this is ../dos-software-decoding/demo-com-16bit/4sum/4sum.com
pub fn default() -> Self
pub fn has_queued_presses(&self) -> bool
pub fn add_keypress(&mut self, keycode: Keycode, modifier: Mod)
pub fn get_status_register_byte(&self) -> u8
Sourcepub fn consume_dos_standard_scancode_and_ascii(&mut self) -> (u8, u8)
pub fn consume_dos_standard_scancode_and_ascii(&mut self) -> (u8, u8)
used by int 0x16 function 0x00 returns scancode, ascii, keypress
Sourcepub fn peek_dos_standard_scancode_and_ascii(&self) -> (u8, u8, Option<Keypress>)
pub fn peek_dos_standard_scancode_and_ascii(&self) -> (u8, u8, Option<Keypress>)
used by int 0x16 function 0x01 returns scancode, ascii, keypress
pub fn consume(&mut self, keypress: &Keypress)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Keyboard
impl RefUnwindSafe for Keyboard
impl Send for Keyboard
impl Sync for Keyboard
impl Unpin for Keyboard
impl UnwindSafe for Keyboard
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more