Diff for /np2/io/printif.c between versions 1.1 and 1.9

version 1.1, 2003/10/16 17:57:57 version 1.9, 2007/11/11 13:54:14
Line 1 Line 1
 #include        "compiler.h"  #include        "compiler.h"
 #include        "i286.h"  #include        "commng.h"
   #include        "cpucore.h"
 #include        "pccore.h"  #include        "pccore.h"
 #include        "iocore.h"  #include        "iocore.h"
   
   
           COMMNG  cm_prt;
   
   
 // ---- I/O  // ---- I/O
   
 static BYTE IOINPCALL prt_i42(UINT port) {  static void IOOUTCALL prt_o40(UINT port, REG8 dat) {
   
           COMMNG  prt;
   
           prt = cm_prt;
           if (prt == NULL) {
                   prt = commng_create(COMCREATE_PRINTER);
                   cm_prt = prt;
           }
           prt->write(prt, (UINT8)dat);
   //      TRACEOUT(("prt - %.2x", dat));
           (void)port;
   }
   
   static REG8 IOINPCALL prt_i42(UINT port) {
   
         BYTE    ret;          REG8    ret;
   
         ret = 0x84;          ret = 0x84;
         if (pc.cpumode & CPUMODE_8MHz) {          if (pccore.cpumode & CPUMODE_8MHZ) {
                 ret |= 0x20;                  ret |= 0x20;
         }          }
         if (np2cfg.dipsw[0] & 4) {          if (pccore.dipsw[0] & 4) {
                 ret |= 0x10;                  ret |= 0x10;
         }          }
         if (np2cfg.dipsw[0] & 0x80) {          if (pccore.dipsw[0] & 0x80) {
                 ret |= 0x08;                  ret |= 0x08;
         }          }
 #ifndef EPSON_286          if (!(pccore.model & PCMODEL_EPSON)) {
         if (CPUTYPE & CPUTYPE_V30) {                  if (CPU_TYPE & CPUTYPE_V30) {
                 ret |= 0x02;                          ret |= 0x02;
         }                  }
 #else          }
         if (np2cfg.dipsw[2] & 0x80) {          else {
                 ret |= 0x02;                  if (pccore.dipsw[2] & 0x80) {
                           ret |= 0x02;
                   }
         }          }
 #endif  
         (void)port;          (void)port;
         return(ret);          return(ret);
 }  }
Line 36  static BYTE IOINPCALL prt_i42(UINT port) Line 55  static BYTE IOINPCALL prt_i42(UINT port)
   
 // ---- I/F  // ---- I/F
   
   static const IOOUT prto40[4] = {
                                           prt_o40,        NULL,           NULL,           NULL};
   
 static const IOINP prti40[4] = {  static const IOINP prti40[4] = {
                                         NULL,           prt_i42,        NULL,           NULL};                                          NULL,           prt_i42,        NULL,           NULL};
   
 void printif_reset(void) {  void printif_reset(const NP2CFG *pConfig) {
   
           commng_destroy(cm_prt);
           cm_prt = NULL;
   
           (void)pConfig;
 }  }
   
 void printif_bind(void) {  void printif_bind(void) {
   
           iocore_attachsysoutex(0x0040, 0x0cf1, prto40, 4);
         iocore_attachsysinpex(0x0040, 0x0cf1, prti40, 4);          iocore_attachsysinpex(0x0040, 0x0cf1, prti40, 4);
 }  }
   

Removed from v.1.1  
changed lines
  Added in v.1.9


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