#ifdef __GNUC__\r
#define noinline __attribute__((noinline))\r
#define unlikely(x) __builtin_expect((x), 0)\r
#ifdef __GNUC__\r
#define noinline __attribute__((noinline))\r
#define unlikely(x) __builtin_expect((x), 0)\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
unsigned int bIgnoreLoop:1; // Ignore loop\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
unsigned int bIgnoreLoop:1; // Ignore loop\r
unsigned int dwNoiseVal; // global noise generator\r
unsigned int dwNoiseCount;\r
unsigned int dwNewChannel; // flags for faster testing, if new channel starts\r
unsigned int dwNoiseVal; // global noise generator\r
unsigned int dwNoiseCount;\r
unsigned int dwNewChannel; // flags for faster testing, if new channel starts\r
unsigned int dwChannelDead; // silent+not useful channels\r
\r
unsigned char * pSpuBuffer;\r
short * pS;\r
\r
void (CALLBACK *irqCallback)(void); // func of main emu, called on spu irq\r
unsigned int dwChannelDead; // silent+not useful channels\r
\r
unsigned char * pSpuBuffer;\r
short * pS;\r
\r
void (CALLBACK *irqCallback)(void); // func of main emu, called on spu irq\r
-#define regAreaGet(ch,offset) \\r
+#define regAreaGet(offset) \\r
+ spu.regArea[((offset) - 0xc00)>>1]\r
+#define regAreaGetCh(ch, offset) \\r
\r
void do_samples(unsigned int cycles_to, int do_sync);\r
void schedule_next_irq(void);\r
\r
void do_samples(unsigned int cycles_to, int do_sync);\r
void schedule_next_irq(void);\r