Diff for /np2/io/serial.c between versions 1.19 and 1.25

version 1.19, 2004/03/31 19:23:37 version 1.25, 2011/01/15 18:04:43
Line 24  void keyboard_callback(NEVENTITEM item)  Line 24  void keyboard_callback(NEVENTITEM item) 
                                         keybrd.data = keybrd.buf[keybrd.bufpos];                                          keybrd.data = keybrd.buf[keybrd.bufpos];
                                         keybrd.bufpos = (keybrd.bufpos + 1) & KB_BUFMASK;                                          keybrd.bufpos = (keybrd.bufpos + 1) & KB_BUFMASK;
                                 }                                  }
                                 TRACEOUT(("recv -> %02x", keybrd.data));  //                              TRACEOUT(("recv -> %02x", keybrd.data));
                         }                          }
                         pic_setirq(1);                          pic_setirq(1);
                         nevent_set(NEVENT_KEYBOARD, keybrd.xferclock,                          nevent_set(NEVENT_KEYBOARD, keybrd.xferclock,
Line 36  void keyboard_callback(NEVENTITEM item)  Line 36  void keyboard_callback(NEVENTITEM item) 
 static void IOOUTCALL keyboard_o41(UINT port, REG8 dat) {  static void IOOUTCALL keyboard_o41(UINT port, REG8 dat) {
   
         if (keybrd.cmd & 1) {          if (keybrd.cmd & 1) {
                 TRACEOUT(("send -> %02x", dat));  //              TRACEOUT(("send -> %02x", dat));
                 keystat_ctrlsend(dat);                  keystat_ctrlsend(dat);
         }          }
           else {
                   keybrd.mode = dat;
           }
         (void)port;          (void)port;
 }  }
   
 static void IOOUTCALL keyboard_o43(UINT port, REG8 dat) {  static void IOOUTCALL keyboard_o43(UINT port, REG8 dat) {
   
         TRACEOUT(("out43 -> %02x %.4x:%.8x", dat, CPU_CS, CPU_EIP));  //      TRACEOUT(("out43 -> %02x %.4x:%.8x", dat, CPU_CS, CPU_EIP));
         if ((!(dat & 0x08)) && (keybrd.cmd & 0x08)) {          if ((!(dat & 0x08)) && (keybrd.cmd & 0x08)) {
                 keyboard_resetsignal();                  keyboard_resetsignal();
         }          }
Line 60  static REG8 IOINPCALL keyboard_i41(UINT  Line 63  static REG8 IOINPCALL keyboard_i41(UINT 
         (void)port;          (void)port;
         keybrd.status &= ~2;          keybrd.status &= ~2;
         pic_resetirq(1);          pic_resetirq(1);
         TRACEOUT(("in41 -> %02x %.4x:%.8x", keybrd.data, CPU_CS, CPU_EIP));  //      TRACEOUT(("in41 -> %02x %.4x:%.8x", keybrd.data, CPU_CS, CPU_EIP));
         return(keybrd.data);          return(keybrd.data);
 }  }
   
 static REG8 IOINPCALL keyboard_i43(UINT port) {  static REG8 IOINPCALL keyboard_i43(UINT port) {
   
         (void)port;          (void)port;
         TRACEOUT(("in43 -> %02x %.4x:%.8x", keybrd.status, CPU_CS, CPU_EIP));  //      TRACEOUT(("in43 -> %02x %.4x:%.8x", keybrd.status, CPU_CS, CPU_EIP));
         return(keybrd.status | 0x85);          return(keybrd.status | 0x85);
 }  }
   
Line 81  static const IOINP keybrdi41[2] = { Line 84  static const IOINP keybrdi41[2] = {
                                         keyboard_i41,   keyboard_i43};                                          keyboard_i41,   keyboard_i43};
   
   
 void keyboard_reset(void) {  void keyboard_reset(const NP2CFG *pConfig) {
   
         ZeroMemory(&keybrd, sizeof(keybrd));          ZeroMemory(&keybrd, sizeof(keybrd));
         keybrd.data = 0xff;          keybrd.data = 0xff;
           keybrd.mode = 0x5e;
   
           (void)pConfig;
 }  }
   
 void keyboard_bind(void) {  void keyboard_bind(void) {
Line 162  void rs232c_open(void) { Line 168  void rs232c_open(void) {
   
 void rs232c_callback(void) {  void rs232c_callback(void) {
   
         BOOL    interrupt;          BOOL    intr;
   
         interrupt = FALSE;          intr = FALSE;
         if ((cm_rs232c) && (cm_rs232c->read(cm_rs232c, &rs232c.data))) {          if ((cm_rs232c) && (cm_rs232c->read(cm_rs232c, &rs232c.data))) {
                 rs232c.result |= 2;                  rs232c.result |= 2;
                 if (sysport.c & 1) {                  if (sysport.c & 1) {
                         interrupt = TRUE;                          intr = TRUE;
                 }                  }
         }          }
         else {          else {
                 rs232c.result &= (BYTE)~2;                  rs232c.result &= (UINT8)~2;
         }          }
         if (sysport.c & 4) {          if (sysport.c & 4) {
                 if (rs232c.send) {                  if (rs232c.send) {
                         rs232c.send = 0;                          rs232c.send = 0;
                         interrupt = TRUE;                          intr = TRUE;
                 }                  }
         }          }
         if (interrupt) {          if (intr) {
                 pic_setirq(4);                  pic_setirq(4);
         }          }
 }  }
   
 BYTE rs232c_stat(void) {  UINT8 rs232c_stat(void) {
   
         if (cm_rs232c == NULL) {          if (cm_rs232c == NULL) {
                 cm_rs232c = commng_create(COMCREATE_SERIAL);                  cm_rs232c = commng_create(COMCREATE_SERIAL);
Line 304  static const IOOUT rs232co30[2] = { Line 310  static const IOOUT rs232co30[2] = {
 static const IOINP rs232ci30[2] = {  static const IOINP rs232ci30[2] = {
                                         rs232c_i30,     rs232c_i32};                                          rs232c_i30,     rs232c_i32};
   
 void rs232c_reset(void) {  void rs232c_reset(const NP2CFG *pConfig) {
   
         commng_destroy(cm_rs232c);          commng_destroy(cm_rs232c);
         cm_rs232c = NULL;          cm_rs232c = NULL;
Line 314  void rs232c_reset(void) { Line 320  void rs232c_reset(void) {
         rs232c.pos = 0;          rs232c.pos = 0;
         rs232c.dummyinst = 0;          rs232c.dummyinst = 0;
         rs232c.mul = 10 * 16;          rs232c.mul = 10 * 16;
   
           (void)pConfig;
 }  }
   
 void rs232c_bind(void) {  void rs232c_bind(void) {

Removed from v.1.19  
changed lines
  Added in v.1.25


RetroPC.NET-CVS <cvs@retropc.net>