Fix CD volume issue in Star Wars - Dark Forces. (#232)
[pcsx_rearmed.git] / plugins / dfsound / externals.h
index f6fc440..5ec9415 100644 (file)
@@ -110,7 +110,7 @@ typedef struct
  unsigned int      bNoise:1;                           // noise active flag\r
  unsigned int      bFMod:2;                            // freq mod (0=off, 1=sound channel, 2=freq channel)\r
  unsigned int      prevflags:3;                        // flags from previous block\r
-\r
+ unsigned int      bIgnoreLoop:1;                      // Ignore loop\r
  int               iLeftVolume;                        // left volume\r
  int               iRightVolume;                       // right volume\r
  ADSRInfoEx        ADSRX;\r
@@ -162,14 +162,8 @@ typedef struct
 \r
  int dirty;          // registers changed\r
 \r
- // normalized offsets\r
- int nIIR_DEST_A0, nIIR_DEST_A1, nIIR_DEST_B0, nIIR_DEST_B1,\r
-       nACC_SRC_A0, nACC_SRC_A1, nACC_SRC_B0, nACC_SRC_B1, \r
-       nIIR_SRC_A0, nIIR_SRC_A1, nIIR_SRC_B0, nIIR_SRC_B1,\r
-       nACC_SRC_C0, nACC_SRC_C1, nACC_SRC_D0, nACC_SRC_D1,\r
-       nMIX_DEST_A0, nMIX_DEST_A1, nMIX_DEST_B0, nMIX_DEST_B1;\r
  // MIX_DEST_xx - FB_SRC_x\r
- int nFB_SRC_A0, nFB_SRC_A1, nFB_SRC_B0, nFB_SRC_B1;\r
+ int FB_SRC_A0, FB_SRC_A1, FB_SRC_B0, FB_SRC_B1;\r
 } REVERBInfo;\r
 \r
 ///////////////////////////////////////////////////////////\r
@@ -195,6 +189,7 @@ typedef struct
  int             decode_dirty_ch;\r
  unsigned int    bSpuInit:1;\r
  unsigned int    bSPUIsOpen:1;\r
+ unsigned int    bMemDirty:1;          // had external write to SPU RAM\r
 \r
  unsigned int    dwNoiseVal;           // global noise generator\r
  unsigned int    dwNoiseCount;\r
@@ -206,7 +201,7 @@ typedef struct
  short         * pS;\r
 \r
  void (CALLBACK *irqCallback)(void);   // func of main emu, called on spu irq\r
- void (CALLBACK *cddavCallback)(unsigned short,unsigned short);\r
+ void (CALLBACK *cddavCallback)(short, short);\r
  void (CALLBACK *scheduleCallback)(unsigned int);\r
 \r
  xa_decode_t   * xapGlobal;\r
@@ -237,6 +232,9 @@ typedef struct
  unsigned short  regArea[0x400];\r
 } SPUInfo;\r
 \r
+#define regAreaGet(ch,offset) \\r
+  spu.regArea[((ch<<4)|(offset))>>1]\r
+\r
 ///////////////////////////////////////////////////////////\r
 // SPU.C globals\r
 ///////////////////////////////////////////////////////////\r
@@ -248,9 +246,6 @@ extern SPUInfo spu;
 void do_samples(unsigned int cycles_to, int do_sync);\r
 void schedule_next_irq(void);\r
 \r
-#define regAreaGet(ch,offset) \\r
-  spu.regArea[((ch<<4)|(offset))>>1]\r
-\r
 #define do_samples_if_needed(c, sync) \\r
  do { \\r
   if (sync || (int)((c) - spu.cycles_played) >= 16 * 768) \\r