Rewrite of AT keyboard controller polling.
This commit is contained in:
@@ -190,7 +190,7 @@ ps2_write(uint8_t val, void *priv)
|
||||
case 0xff: /* reset */
|
||||
dev->mode = MODE_STREAM;
|
||||
dev->flags &= 0x88;
|
||||
mouse_queue_start = mouse_queue_end = 0;
|
||||
keyboard_at_mouse_reset();
|
||||
keyboard_at_adddata_mouse(0xfa);
|
||||
keyboard_at_adddata_mouse(0xaa);
|
||||
keyboard_at_adddata_mouse(0x00);
|
||||
@@ -236,7 +236,7 @@ ps2_poll(int x, int y, int z, int b, void *priv)
|
||||
dev->y -= y;
|
||||
dev->z -= z;
|
||||
if ((dev->mode == MODE_STREAM) && (dev->flags & FLAG_ENABLED) &&
|
||||
(((mouse_queue_end - mouse_queue_start) & 0x0f) < 13)) {
|
||||
(keyboard_at_mouse_pos() < 13)) {
|
||||
dev->b = b;
|
||||
|
||||
if (dev->x > 255) dev->x = 255;
|
||||
|
||||
Reference in New Issue
Block a user