A simple driver for handling PC keyboards, with both Scancode Set 1 (when running on a PC) and Scancode Set 2 support (when reading a PS/2 keyboard output directly).
```rust extern crate pc_keyboard;
use pc_keyboard::{Keyboard, layouts, ScancodeSet2};
fn main() { let mut kb = pckeyboard::Keyboard::new(layouts::Us104Key, ScancodeSet2); match kb.addbyte(0x20) { Ok(Some(event)) => { println!("Event {:?}", event); } Ok(None) => { println!("Need more data"); } Err(e) => { println!("Error decoding: {:?}", e); } } } ```