spu: put reverb on the thread too
[pcsx_rearmed.git] / plugins / dfsound / externals.h
index 3047afc..f6fc440 100644 (file)
 #define noinline\r
 #define unlikely(x) x\r
 #endif\r
+#if defined(__GNUC__) && !defined(_TMS320C6X)\r
+#define preload __builtin_prefetch\r
+#else\r
+#define preload(...)\r
+#endif\r
 \r
 #define PSE_LT_SPU                  4\r
 #define PSE_SPU_ERR_SUCCESS         0\r
@@ -110,8 +115,6 @@ typedef struct
  int               iRightVolume;                       // right volume\r
  ADSRInfoEx        ADSRX;\r
  int               iRawPitch;                          // raw pitch (0...3fff)\r
-\r
- int               SB[32+4];\r
 } SPUCHAN;\r
 \r
 ///////////////////////////////////////////////////////////\r
@@ -123,8 +126,6 @@ typedef struct
 \r
  int VolLeft;\r
  int VolRight;\r
- int iRVBLeft;\r
- int iRVBRight;\r
 \r
  int FB_SRC_A;       // (offset)\r
  int FB_SRC_B;       // (offset)\r
@@ -175,6 +176,8 @@ typedef struct
 \r
 // psx buffers / addresses\r
 \r
+#define SB_SIZE (32 + 4)\r
+\r
 typedef struct\r
 {\r
  unsigned short  spuCtrl;\r
@@ -206,8 +209,6 @@ typedef struct
  void (CALLBACK *cddavCallback)(unsigned short,unsigned short);\r
  void (CALLBACK *scheduleCallback)(unsigned int);\r
 \r
- int           * sRVBStart;\r
-\r
  xa_decode_t   * xapGlobal;\r
  unsigned int  * XAFeed;\r
  unsigned int  * XAPlay;\r
@@ -226,8 +227,13 @@ typedef struct
  int             iRightXAVol;\r
 \r
  SPUCHAN       * s_chan;\r
+ REVERBInfo    * rvb;\r
+\r
+ // buffers\r
+ int           * SB;\r
+ int           * SSumLR;\r
 \r
- int             pad[31];\r
+ int             pad[29];\r
  unsigned short  regArea[0x400];\r
 } SPUInfo;\r
 \r
@@ -238,7 +244,6 @@ typedef struct
 #ifndef _IN_SPU\r
 \r
 extern SPUInfo spu;\r
-extern REVERBInfo rvb;\r
 \r
 void do_samples(unsigned int cycles_to, int do_sync);\r
 void schedule_next_irq(void);\r