|
|
| version 1.12, 2004/02/18 03:24:48 | 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); |
| Line 242 static void IOOUTCALL rs232c_o32(UINT po | Line 242 static void IOOUTCALL rs232c_o32(UINT po |
| break; | break; |
| case 0x02: // cmd | case 0x02: // cmd |
| sysport.c &= ~7; | |
| sysport.c |= (dat & 7); | |
| rs232c.pos++; | rs232c.pos++; |
| break; | break; |
| } | } |