mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-24 14:49:42 -06:00
This is a joined work of XK and me on improving the HLE plugin interface.
It allows run time selection of backends (AOSound, DSound and NullSound). It replaces the DSP_NULL plugin (works even better!) It also includes improved thread handling on asound, and using some common functions on both asound and windows. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2027 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
@ -24,11 +24,6 @@ extern CDebugger* m_frame;
|
||||
#endif
|
||||
#include <sstream>
|
||||
|
||||
#ifdef _WIN32
|
||||
#include "../PCHW/DSoundStream.h"
|
||||
#else
|
||||
#include "../PCHW/AOSoundStream.h"
|
||||
#endif
|
||||
#include "../PCHW/Mixer.h"
|
||||
#include "../MailHandler.h"
|
||||
|
||||
@ -525,10 +520,10 @@ bool CUCode_AX::AXTask(u32& _uMail)
|
||||
|
||||
mixer_HLEready = true;
|
||||
SaveLog("%08x : AXLIST PB address: %08x", uAddress, m_addressPBs);
|
||||
#ifdef _WIN32
|
||||
|
||||
SaveLog("Update the SoundThread to be in sync");
|
||||
DSound::DSound_UpdateSound(); //do it in this thread to avoid sync problems
|
||||
#endif
|
||||
soundStream->Update(); //do it in this thread to avoid sync problems
|
||||
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -23,12 +23,6 @@
|
||||
extern CDebugger * m_frame;
|
||||
#endif
|
||||
|
||||
#ifdef _WIN32
|
||||
#include "../PCHW/DSoundStream.h"
|
||||
#else
|
||||
#include "../PCHW/AOSoundStream.h"
|
||||
#endif
|
||||
|
||||
#include "../PCHW/Mixer.h"
|
||||
#include "../MailHandler.h"
|
||||
|
||||
@ -329,10 +323,7 @@ bool CUCode_AXWii::AXTask(u32& _uMail)
|
||||
lCUCode_AX->m_addressPBs = m_addressPBs; // for the sake of logging
|
||||
mixer_HLEready = true;
|
||||
SaveLog("%08x : AXLIST PB address: %08x", uAddress, m_addressPBs);
|
||||
#ifdef _WIN32
|
||||
//DebugLog("Update the SoundThread to be in sync");
|
||||
DSound::DSound_UpdateSound(); //do it in this thread to avoid sync problems
|
||||
#endif
|
||||
soundStream->Update();
|
||||
uAddress += 4;
|
||||
break;
|
||||
|
||||
|
@ -22,11 +22,6 @@
|
||||
#include "UCode_AX.h"
|
||||
#include "../main.h"
|
||||
|
||||
#ifdef _WIN32
|
||||
#include "../PCHW/DSoundStream.h"
|
||||
#else
|
||||
#include "../PCHW/AOSoundStream.h"
|
||||
#endif
|
||||
|
||||
// ----------------------------------------------------
|
||||
// Externals
|
||||
@ -112,11 +107,7 @@ inline void WriteBackPBsWii(u32 pbs_address, ParamBlockType& _pPBs, int _num)
|
||||
template<class ParamBlockType>
|
||||
inline void MixAddVoice(ParamBlockType &pb, int *templbuffer, int *temprbuffer, int _iSize, bool Wii)
|
||||
{
|
||||
#ifdef _WIN32
|
||||
ratioFactor = 32000.0f / (float)DSound::DSound_GetSampleRate();
|
||||
#else
|
||||
ratioFactor = 32000.0f / (float)AOSound::AOSound_GetSampleRate();
|
||||
#endif
|
||||
ratioFactor = 32000.0f / (float)soundStream->GetSampleRate();
|
||||
|
||||
DoVoiceHacks(pb, Wii);
|
||||
|
||||
|
@ -23,9 +23,7 @@
|
||||
#include "UCode_Zelda.h"
|
||||
#include "../MailHandler.h"
|
||||
|
||||
#ifdef _WIN32
|
||||
#include "../PCHW/DSoundStream.h"
|
||||
#endif
|
||||
#include "../main.h"
|
||||
#include "../PCHW/Mixer.h"
|
||||
|
||||
|
||||
@ -126,10 +124,10 @@ void CUCode_Zelda::ExecuteList()
|
||||
|
||||
// We're ready to mix
|
||||
mixer_HLEready = true;
|
||||
#ifdef _WIN32
|
||||
|
||||
DebugLog("Update the SoundThread to be in sync");
|
||||
DSound::DSound_UpdateSound(); //do it in this thread to avoid sync problems
|
||||
#endif
|
||||
soundStream->Update(); //do it in this thread to avoid sync problems
|
||||
|
||||
|
||||
DebugLog("DsyncFrame");
|
||||
DebugLog("???: 0x%08x", tmp[0]);
|
||||
|
Reference in New Issue
Block a user