Started work on HLE Zelda UCode.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@853 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
XTra.KrazzY 2008-10-13 23:00:35 +00:00
parent 41b72ffc8b
commit b7e9a988f7
4 changed files with 25 additions and 6 deletions

View File

@ -148,7 +148,7 @@ void CUCode_Jac::ExecuteList()
break; break;
default: default:
PanicAlert("UCode Jac unknown cmd: %s (size %)", cmd, m_numSteps); PanicAlert("UCode Jac unknown cmd: %s (size %i)", cmd, m_numSteps);
DebugLog("Jac UCode - unknown cmd: %x (size %i)", cmd, m_numSteps); DebugLog("Jac UCode - unknown cmd: %x (size %i)", cmd, m_numSteps);
break; break;
} }

View File

@ -23,6 +23,11 @@
#include "UCode_Zelda.h" #include "UCode_Zelda.h"
#include "../MailHandler.h" #include "../MailHandler.h"
#ifdef _WIN32
#include "../PCHW/DSoundStream.h"
#endif
#include "../PCHW/Mixer.h"
CUCode_Zelda::CUCode_Zelda(CMailHandler& _rMailHandler) CUCode_Zelda::CUCode_Zelda(CMailHandler& _rMailHandler)
: IUCode(_rMailHandler) : IUCode(_rMailHandler)
@ -75,6 +80,10 @@ void CUCode_Zelda::HandleMail(u32 _uMail)
} }
} }
void CUCode_Zelda::MixAdd(short* buffer, int size)
{
//TODO(XK): Zelda UCode MixAdd?
}
void CUCode_Zelda::ExecuteList() void CUCode_Zelda::ExecuteList()
{ {
@ -115,6 +124,13 @@ void CUCode_Zelda::ExecuteList()
tmp[1] = Read32(); tmp[1] = Read32();
tmp[2] = Read32(); tmp[2] = Read32();
// 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
DebugLog("DsyncFrame"); DebugLog("DsyncFrame");
DebugLog("???: 0x%08x", tmp[0]); DebugLog("???: 0x%08x", tmp[0]);
DebugLog("???: 0x%08x", tmp[1]); DebugLog("???: 0x%08x", tmp[1]);

View File

@ -68,6 +68,7 @@ public:
void HandleMail(u32 _uMail); void HandleMail(u32 _uMail);
void Update(); void Update();
void MixAdd(short* buffer, int size);
}; };
#endif #endif

View File

@ -66,7 +66,7 @@ bool AXTask(u32& _uMail);
bool bCanWork = false; bool bCanWork = false;
// Set this if you want to log audio. search for log_ai in this file to see the filename. // Set this if you want to log audio. search for log_ai in this file to see the filename.
static bool log_ai = true; static bool log_ai = false;
WaveFileWriter g_wave_writer; WaveFileWriter g_wave_writer;
// ============== // ==============
@ -258,10 +258,12 @@ void DSP_Initialize(DSPInitialize _dspInitialize)
// -------------- // --------------
// Dump UCode to file... // Dump UCode to file...
FILE* t = fopen("C:\\_\\DSP_UC_09CD143F.txt", "wb"); FILE* t = fopen("DSP_UC_09CD143F.txt", "wb");
gd_globals_t gdg; if(t) {
gd_dis_file(&gdg, "C:\\_\\DSP_UC_09CD143F.bin", t); gd_globals_t gdg;
fclose(t); gd_dis_file(&gdg, "DSP_UC_09CD143F.bin", t);
fclose(t);
}
// -------------- // --------------
#ifdef _WIN32 #ifdef _WIN32