X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=plugins%2Fdfsound%2Fspu.c;h=24665698dacc476ac34959ff7a303ab505837791;hp=bbbe1e372739a02c1067b04715ca6e56a3c41d68;hb=665f33e1e8ce2e40a7939a33075c3bce1c90790c;hpb=f05d6ca255c80170e4e5fc61cc48d87e013b8807 diff --git a/plugins/dfsound/spu.c b/plugins/dfsound/spu.c index bbbe1e37..24665698 100644 --- a/plugins/dfsound/spu.c +++ b/plugins/dfsound/spu.c @@ -24,7 +24,8 @@ #include "externals.h" #include "registers.h" -#include "dsoundoss.h" +#include "out.h" +#include "arm_features.h" #ifdef ENABLE_NLS #include @@ -615,7 +616,7 @@ static int do_samples_noise(int ch, int ns, int ns_to) return ret; } -#ifdef __arm__ +#ifdef HAVE_ARMV5 // asm code; lv and rv must be 0-3fff extern void mix_chan(int start, int count, int lv, int rv); extern void mix_chan_rvb(int start, int count, int lv, int rv); @@ -697,7 +698,7 @@ static int do_samples(int forced_updates) // until enuff free place is available/a new channel gets // started - if(!forced_updates && SoundGetBytesBuffered()) // still enuff data in sound buffer? + if(!forced_updates && out_current->busy()) // still enuff data in sound buffer? { return 0; } @@ -872,7 +873,7 @@ static int do_samples(int forced_updates) // wanna have around 1/60 sec (16.666 ms) updates if (iCycle++ > 16/FRAG_MSECS) { - SoundFeedStreamData((unsigned char *)pSpuBuffer, + out_current->feed(pSpuBuffer, ((unsigned char *)pS) - ((unsigned char *)pSpuBuffer)); pS = (short *)pSpuBuffer; iCycle = 0; @@ -1056,7 +1057,7 @@ long CALLBACK SPUclose(void) bSPUIsOpen = 0; // no more open - RemoveSound(); // no more sound handling + out_current->finish(); // no more sound handling return 0; }