diff --git a/Source/Core/Core/Src/DSP/DSPCore.cpp b/Source/Core/Core/Src/DSP/DSPCore.cpp index 377e21fba8..ff05dcb3fa 100644 --- a/Source/Core/Core/Src/DSP/DSPCore.cpp +++ b/Source/Core/Core/Src/DSP/DSPCore.cpp @@ -113,13 +113,17 @@ static bool VerifyRoms(const char *irom_filename, const char *coef_filename) } if (rom_idx == 1) - PanicAlertT("You are using an old free DSP ROM made by the Dolphin Team.\n" - "Only games using the Zelda UCode will work correctly.\n"); + { + DSPHost_OSD_AddMessage("You are using an old free DSP ROM made by the Dolphin Team.", 6000); + DSPHost_OSD_AddMessage("Only games using the Zelda UCode will work correctly.", 6000); + } if (rom_idx == 2) - PanicAlertT("You are using a free DSP ROM made by the Dolphin Team.\n" - "All Wii games will work correctly, and most GC games should " - "also work fine, but the GBA/IPL/CARD UCodes will not work.\n"); + { + DSPHost_OSD_AddMessage("You are using a free DSP ROM made by the Dolphin Team.", 8000); + DSPHost_OSD_AddMessage("All Wii games will work correctly, and most GC games should ", 8000); + DSPHost_OSD_AddMessage("also work fine, but the GBA/IPL/CARD UCodes will not work.\n", 8000); + } return true; } diff --git a/Source/Core/Core/Src/DSP/DSPHost.h b/Source/Core/Core/Src/DSP/DSPHost.h index cef329a7ec..18ba5ec447 100644 --- a/Source/Core/Core/Src/DSP/DSPHost.h +++ b/Source/Core/Core/Src/DSP/DSPHost.h @@ -12,6 +12,7 @@ u8 DSPHost_ReadHostMemory(u32 addr); void DSPHost_WriteHostMemory(u8 value, u32 addr); +void DSPHost_OSD_AddMessage(const std::string& str, u32 ms); bool DSPHost_OnThread(); bool DSPHost_Wii(); void DSPHost_InterruptRequest(); diff --git a/Source/Core/Core/Src/HW/DSPLLE/DSPHost.cpp b/Source/Core/Core/Src/HW/DSPLLE/DSPHost.cpp index 4b25f4ba20..5b2dc1f56e 100644 --- a/Source/Core/Core/Src/HW/DSPLLE/DSPHost.cpp +++ b/Source/Core/Core/Src/HW/DSPLLE/DSPHost.cpp @@ -13,6 +13,7 @@ #include "../../ConfigManager.h" #include "../../PowerPC/PowerPC.h" #include "Host.h" +#include "OnScreenDisplay.h" // The user of the DSPCore library must supply a few functions so that the // emulation core can access the environment it runs in. If the emulation @@ -29,6 +30,11 @@ void DSPHost_WriteHostMemory(u8 value, u32 addr) DSP::WriteARAM(value, addr); } +void DSPHost_OSD_AddMessage(const std::string& str, u32 ms) +{ + OSD::AddMessage(str, ms); +} + bool DSPHost_OnThread() { const SCoreStartupParameter& _CoreParameter = SConfig::GetInstance().m_LocalCoreStartupParameter; diff --git a/Source/DSPTool/Src/DSPTool.cpp b/Source/DSPTool/Src/DSPTool.cpp index 9f38b1347b..5a776be558 100644 --- a/Source/DSPTool/Src/DSPTool.cpp +++ b/Source/DSPTool/Src/DSPTool.cpp @@ -11,6 +11,7 @@ // Stub out the dsplib host stuff, since this is just a simple cmdline tools. u8 DSPHost_ReadHostMemory(u32 addr) { return 0; } void DSPHost_WriteHostMemory(u8 value, u32 addr) {} +void DSPHost_OSD_AddMessage(const std::string& str, u32 ms) {} bool DSPHost_OnThread() { return false; } bool DSPHost_Wii() { return false; } void DSPHost_CodeLoaded(const u8 *ptr, int size) {}