|
|
| version 1.13, 2004/03/07 23:04:51 | version 1.14, 2004/03/28 19:50:25 |
|---|---|
| Line 12 static void keyboard_int(BOOL absolute) | Line 12 static void keyboard_int(BOOL absolute) |
| if (keybrd.buffers) { | if (keybrd.buffers) { |
| if (!(keybrd.status & 2)) { | if (!(keybrd.status & 2)) { |
| keybrd.status |= 2; | keybrd.status |= 2; |
| keybrd.data = keybrd.buf[keybrd.pos]; | keybrd.data = keybrd.buf[keybrd.bufpos]; |
| keybrd.pos = (keybrd.pos + 1) & KB_BUFMASK; | keybrd.bufpos = (keybrd.bufpos + 1) & KB_BUFMASK; |
| keybrd.buffers--; | keybrd.buffers--; |
| } | } |
| pic_setirq(1); | pic_setirq(1); |
| Line 90 void keyboard_resetsignal(void) { | Line 90 void keyboard_resetsignal(void) { |
| keybrd.cmd = 0; | keybrd.cmd = 0; |
| keybrd.status = 0; | keybrd.status = 0; |
| keybrd.buffers = 0; | keybrd.buffers = 0; |
| keybrd.pos = 0; | keybrd.bufpos = 0; |
| keystat_resendstat(); | keystat_resendstat(); |
| } | } |
| void keyboard_send(REG8 data) { | void keyboard_send(REG8 data) { |
| if (keybrd.buffers < KB_BUF) { | if (keybrd.buffers < KB_BUF) { |
| keybrd.buf[(keybrd.pos + keybrd.buffers) & KB_BUFMASK] = data; | keybrd.buf[(keybrd.bufpos + keybrd.buffers) & KB_BUFMASK] = data; |
| keybrd.buffers++; | keybrd.buffers++; |
| if (!nevent_iswork(NEVENT_KEYBOARD)) { | if (!nevent_iswork(NEVENT_KEYBOARD)) { |
| keyboard_int(NEVENT_ABSOLUTE); | keyboard_int(NEVENT_ABSOLUTE); |