first try for ps2, time to debug
This commit is contained in:
@@ -89,8 +89,11 @@ enum ControllerCommand {
|
||||
*
|
||||
* \param value data to be sent
|
||||
*/
|
||||
[[maybe_unused]] static void sendData(uint8_t value) {
|
||||
// TODO: You have to implement this method
|
||||
static void sendData(uint8_t value) {
|
||||
|
||||
if (!(ctrl_port.inb()&HAS_OUTPUT)) {
|
||||
data_port.outb(value);
|
||||
}
|
||||
(void)value;
|
||||
}
|
||||
|
||||
@@ -106,8 +109,20 @@ void init() {
|
||||
|
||||
bool fetch(Key &pressed) {
|
||||
// TODO: You have to implement this method
|
||||
(void)pressed;
|
||||
return false;
|
||||
uint8_t status_reg = ctrl_port.inb();
|
||||
if(status_reg & IS_MOUSE || !(status_reg & HAS_OUTPUT) )
|
||||
return false; // TODO Remove mouse events from buffer
|
||||
|
||||
uint8_t out_buffer = data_port.inb();
|
||||
|
||||
pressed = key_decoder.decode(out_buffer);
|
||||
|
||||
|
||||
if (pressed.alt() || pressed.ctrl() || pressed.shift) {
|
||||
return false;
|
||||
}
|
||||
else
|
||||
return true;
|
||||
}
|
||||
|
||||
void setRepeatRate(Speed speed, Delay delay) {
|
||||
|
||||
Reference in New Issue
Block a user