Pikmin 2 for the Wii also boots, with corrupt sound this time. Included its UCode, since it's so different from Pikmin 1's and contains the mysterious UnkZelda address. Also, potential run-stop-run bug has been fixed.

git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3965 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
XTra.KrazzY 2009-08-12 01:15:57 +00:00
parent 5c1ab3b0c3
commit 286f17b7de
3 changed files with 2887 additions and 3 deletions

View File

@ -70,7 +70,8 @@ IUCode* UCodeFactory(u32 _CRC, CMailHandler& _rMailHandler)
return new CUCode_Zelda(_rMailHandler, _CRC); return new CUCode_Zelda(_rMailHandler, _CRC);
// WII CRCs // WII CRCs
case 0xb7eb9a9c: // Wii Pikmin - JAP case 0xb7eb9a9c: // Wii Pikmin - PAL
case 0xeaeb38cc: // Wii Pikmin 2 - PAL
case 0x6c3f6f94: // zelda - PAL case 0x6c3f6f94: // zelda - PAL
case 0xd643001f: // mario galaxy - PAL case 0xd643001f: // mario galaxy - PAL
INFO_LOG(DSPHLE, "CRC %08x: Zelda Wii ucode chosen\n", _CRC); INFO_LOG(DSPHLE, "CRC %08x: Zelda Wii ucode chosen\n", _CRC);

View File

@ -54,8 +54,7 @@ struct DSPState
u32 DSPMailbox; u32 DSPMailbox;
bool DSPMailbox_Read[2]; bool DSPMailbox_Read[2];
DSPState() void Reset() {
{
CPUMailbox = 0x00000000; CPUMailbox = 0x00000000;
CPUMailbox_Written[0] = false; CPUMailbox_Written[0] = false;
CPUMailbox_Written[1] = false; CPUMailbox_Written[1] = false;
@ -64,6 +63,11 @@ struct DSPState
DSPMailbox_Read[0] = true; DSPMailbox_Read[0] = true;
DSPMailbox_Read[1] = true; DSPMailbox_Read[1] = true;
} }
DSPState()
{
Reset();
}
}; };
DSPState g_dspState; DSPState g_dspState;
@ -203,6 +207,8 @@ void Initialize(void *init)
g_Config.Load(); g_Config.Load();
g_pMemory = g_dspInitialize.pGetMemoryPointer(0); g_pMemory = g_dspInitialize.pGetMemoryPointer(0);
g_dspState.Reset();
CDSPHandler::CreateInstance(); CDSPHandler::CreateInstance();
soundStream = AudioCommon::InitSoundStream(new HLEMixer()); soundStream = AudioCommon::InitSoundStream(new HLEMixer());

File diff suppressed because it is too large Load Diff