Diff for /np2/sound/fmtimer.c between versions 1.7 and 1.8

version 1.7, 2004/01/22 01:10:04 version 1.8, 2004/02/03 08:24:40
Line 6 Line 6
 #include        "fmboard.h"  #include        "fmboard.h"
   
   
 static const BYTE irqtable[4] = {0x03, 0x0d, 0x0a, 0x0c};  static const UINT8 irqtable[4] = {0x03, 0x0d, 0x0a, 0x0c};
   
   
 void fmport_a(NEVENTITEM item) {  void fmport_a(NEVENTITEM item) {
Line 92  static void set_fmtimerbevent(BOOL absol Line 92  static void set_fmtimerbevent(BOOL absol
 void fmtimer_reset(UINT irq) {  void fmtimer_reset(UINT irq) {
   
         ZeroMemory(&fmtimer, sizeof(fmtimer));          ZeroMemory(&fmtimer, sizeof(fmtimer));
   
 #if 0                                                                                                   // move  
         fmtimer.reg = 0x3f;  
         set_fmtimeraevent(NEVENT_ABSOLUTE);  
         set_fmtimerbevent(NEVENT_ABSOLUTE);  
 #endif  
         fmtimer.intr = irq & 0xc0;          fmtimer.intr = irq & 0xc0;
         fmtimer.intdisabel = irq & 0x10;          fmtimer.intdisabel = irq & 0x10;
         fmtimer.irq = irqtable[irq >> 6];          fmtimer.irq = irqtable[irq >> 6];
Line 122  void fmtimer_setreg(REG8 reg, REG8 value Line 116  void fmtimer_setreg(REG8 reg, REG8 value
                         break;                          break;
   
                 case 0x27:                  case 0x27:
 #if 1  
                         fmtimer.reg = value;                          fmtimer.reg = value;
                         fmtimer.status &= ~((value & 0x30) >> 4);                          fmtimer.status &= ~((value & 0x30) >> 4);
                         if (value & 0x01) {                          if (value & 0x01) {
Line 144  void fmtimer_setreg(REG8 reg, REG8 value Line 137  void fmtimer_setreg(REG8 reg, REG8 value
                         if (!(value & 0x03)) {                          if (!(value & 0x03)) {
                                 pic_resetirq(fmtimer.irq);                                  pic_resetirq(fmtimer.irq);
                         }                          }
 #else  
                         fmtimer.reg = value;  
                         fmtimer.status &= ~((value & 0x30) >> 4);  
                         if ((value & 0x10) && (!nevent_iswork(NEVENT_FMTIMERA))) {  
                                 set_fmtimeraevent(NEVENT_ABSOLUTE);  
                         }  
                         if ((value & 0x20) && (!nevent_iswork(NEVENT_FMTIMERB))) {  
                                 set_fmtimerbevent(NEVENT_ABSOLUTE);  
                         }  
 #endif  
                         break;                          break;
         }          }
 }  }

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


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