Diff for /np2/cbus/cs4231io.c between versions 1.4 and 1.8

version 1.4, 2004/01/05 11:46:56 version 1.8, 2004/06/02 11:02:53
Line 1 Line 1
 #include        "compiler.h"  #include        "compiler.h"
 #include        "memory.h"  #include        "cpucore.h"
 #include        "pccore.h"  #include        "pccore.h"
 #include        "iocore.h"  #include        "iocore.h"
 #include        "cs4231io.h"  #include        "cs4231io.h"
Line 80  void cs4231io_reset(void) { Line 80  void cs4231io_reset(void) {
   
         cs4231.enable = 1;          cs4231.enable = 1;
         cs4231.port = 0xf40;          cs4231.port = 0xf40;
         cs4231.adrs = 0x21;          cs4231.adrs = 0x22;
         cs4231.dmairq = cs4231irq[(cs4231.adrs >> 3) & 3];          cs4231.dmairq = cs4231irq[(cs4231.adrs >> 3) & 7];
         cs4231.dmach = cs4231dma[cs4231.adrs & 7];          cs4231.dmach = cs4231dma[cs4231.adrs & 7];
         cs4231.step = 22050;  
         if (cs4231.dmach != 0xff) {          if (cs4231.dmach != 0xff) {
                 dmac_attach(DMADEV_CS4231, cs4231.dmach);                  dmac_attach(DMADEV_CS4231, cs4231.dmach);
         }          }
           TRACEOUT(("CS4231 - IRQ = %d", cs4231.dmairq));
           TRACEOUT(("CS4231 - DMA channel = %d", cs4231.dmach));
 }  }
   
 void cs4231io_bind(void) {  void cs4231io_bind(void) {
Line 105  void IOOUTCALL cs4231io_w8(UINT port, RE Line 106  void IOOUTCALL cs4231io_w8(UINT port, RE
         switch(port & 0x0f) {          switch(port & 0x0f) {
                 case 0:                  case 0:
                         cs4231.adrs = value;                          cs4231.adrs = value;
                         cs4231.dmairq = cs4231irq[(value >> 3) & 3];                          cs4231.dmairq = cs4231irq[(value >> 3) & 7];
                         cs4231.dmach = cs4231dma[value & 7];                          cs4231.dmach = cs4231dma[value & 7];
                         dmac_detach(DMADEV_CS4231);                          dmac_detach(DMADEV_CS4231);
                         if (cs4231.dmach != 0xff) {                          if (cs4231.dmach != 0xff) {
                                 dmac_attach(DMADEV_CS4231, cs4231.dmach);                                  dmac_attach(DMADEV_CS4231, cs4231.dmach);
   #if 0
                                   if (cs4231.sdc_enable) {
                                           dmac.dmach[cs4231.dmach].ready = 1;
                                           dmac_check();
                                   }
   #endif
                         }                          }
                         break;                          break;
   
Line 124  void IOOUTCALL cs4231io_w8(UINT port, RE Line 131  void IOOUTCALL cs4231io_w8(UINT port, RE
                 case 6:                  case 6:
                         cs4231.intflag = 0;                          cs4231.intflag = 0;
                         break;                          break;
   
                   case 7:
                           cs4231_datasend(value);
                           break;
         }          }
 }  }
   

Removed from v.1.4  
changed lines
  Added in v.1.8


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