X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=plugins%2Fdfsound%2Fexternals.h;h=2f3028eefba5de6c1a5cddef31b3da0e2b56a397;hp=bdf59566a2a6228d94c3018bfa53a876daa6bfca;hb=92ca1ba64e939942ab05aaa3d578f0d165634275;hpb=f8edb5bc279ba09aa7bc762da51236fd368827b0 diff --git a/plugins/dfsound/externals.h b/plugins/dfsound/externals.h index bdf59566..2f3028ee 100644 --- a/plugins/dfsound/externals.h +++ b/plugins/dfsound/externals.h @@ -21,6 +21,14 @@ // generic defines ///////////////////////////////////////////////////////// +#ifdef __GNUC__ +#define noinline __attribute__((noinline)) +#define unlikely(x) __builtin_expect((x), 0) +#else +#define noinline +#define unlikely(x) x +#endif + #define PSE_LT_SPU 4 #define PSE_SPU_ERR_SUCCESS 0 #define PSE_SPU_ERR -60 @@ -38,7 +46,7 @@ // num of channels #define MAXCHAN 24 -// ~ 1 ms of data +// ~ FRAG_MSECS ms of data // note: must be even due to the way reverb works now #define FRAG_MSECS 2 #define NSSIZE ((44100 * FRAG_MSECS / 1000 + 1) & ~1) @@ -48,24 +56,6 @@ /////////////////////////////////////////////////////////// // ADSR INFOS PER CHANNEL -typedef struct -{ - int AttackModeExp; - long AttackTime; - long DecayTime; - long SustainLevel; - int SustainModeExp; - long SustainModeDec; - long SustainTime; - int ReleaseModeExp; - unsigned long ReleaseVal; - long ReleaseTime; - long ReleaseStartTime; - long ReleaseVol; - long lTime; - long lVolume; -} ADSRInfo; - typedef struct { unsigned char State:2; @@ -109,7 +99,7 @@ typedef struct unsigned int bRVBActive:1; // reverb active flag unsigned int bNoise:1; // noise active flag unsigned int bFMod:2; // freq mod (0=off, 1=sound channel, 2=freq channel) - unsigned int bJump:1; // last decoded block jumped + unsigned int prevflags:3; // flags from previous block int iLeftVolume; // left volume int iRightVolume; // right volume @@ -197,23 +187,20 @@ extern unsigned char * pSpuBuffer; extern int iVolume; extern int iXAPitch; -extern int iSPUIRQWait; -extern int iDebugMode; -extern int iRecordMode; extern int iUseReverb; extern int iUseInterpolation; // MISC -extern int iSpuAsyncWait; +extern int had_dma; +extern int decode_pos; extern SPUCHAN s_chan[]; extern REVERBInfo rvb; -extern unsigned long dwNoiseVal; extern unsigned short spuCtrl; extern unsigned short spuStat; extern unsigned short spuIrq; -extern unsigned long spuAddr; +extern unsigned int spuAddr; extern int bSpuInit; extern unsigned int dwNewChannel; extern unsigned int dwChannelOn; @@ -242,9 +229,6 @@ extern uint32_t * XAPlay; extern uint32_t * XAStart; extern uint32_t * XAEnd; -extern uint32_t XARepeat; -extern uint32_t XALastVal; - extern uint32_t * CDDAFeed; extern uint32_t * CDDAPlay; extern uint32_t * CDDAStart;