mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-01-24 15:01:16 +01:00
VideoCommon/CommandProcessor: Pass System to HandleUnknownOpcode().
This commit is contained in:
parent
e5941428d1
commit
192d8b6e40
@ -637,7 +637,8 @@ void CommandProcessorManager::SetCpClearRegister()
|
||||
{
|
||||
}
|
||||
|
||||
void CommandProcessorManager::HandleUnknownOpcode(u8 cmd_byte, const u8* buffer, bool preprocess)
|
||||
void CommandProcessorManager::HandleUnknownOpcode(Core::System& system, u8 cmd_byte,
|
||||
const u8* buffer, bool preprocess)
|
||||
{
|
||||
const auto& fifo = m_fifo;
|
||||
|
||||
@ -665,6 +666,7 @@ void CommandProcessorManager::HandleUnknownOpcode(u8 cmd_byte, const u8* buffer,
|
||||
// PC and LR are meaningless when using the fifoplayer, and will generally not be helpful if the
|
||||
// unknown opcode is inside of a display list. Also note that the changes in GPFifo.h are not
|
||||
// accurate and may introduce timing issues.
|
||||
const auto& ppc_state = system.GetPPCState();
|
||||
GENERIC_LOG_FMT(
|
||||
Common::Log::LogType::VIDEO, log_level,
|
||||
"FIFO: Unknown Opcode {:#04x} @ {}, preprocessing = {}, CPBase: {:#010x}, CPEnd: "
|
||||
@ -686,8 +688,8 @@ void CommandProcessorManager::HandleUnknownOpcode(u8 cmd_byte, const u8* buffer,
|
||||
fifo.bFF_Breakpoint.load(std::memory_order_relaxed) ? "true" : "false",
|
||||
fifo.bFF_GPLinkEnable.load(std::memory_order_relaxed) ? "true" : "false",
|
||||
fifo.bFF_HiWatermarkInt.load(std::memory_order_relaxed) ? "true" : "false",
|
||||
fifo.bFF_LoWatermarkInt.load(std::memory_order_relaxed) ? "true" : "false",
|
||||
PowerPC::ppcState.pc, LR(PowerPC::ppcState));
|
||||
fifo.bFF_LoWatermarkInt.load(std::memory_order_relaxed) ? "true" : "false", ppc_state.pc,
|
||||
LR(ppc_state));
|
||||
|
||||
if (!m_is_fifo_error_seen && !suppress_panic_alert)
|
||||
{
|
||||
|
@ -177,7 +177,7 @@ public:
|
||||
void SetCpControlRegister(Core::System& system);
|
||||
void SetCpStatusRegister(Core::System& system);
|
||||
|
||||
void HandleUnknownOpcode(u8 cmd_byte, const u8* buffer, bool preprocess);
|
||||
void HandleUnknownOpcode(Core::System& system, u8 cmd_byte, const u8* buffer, bool preprocess);
|
||||
|
||||
// This one is shared between gfx thread and emulator thread.
|
||||
// It is only used by the Fifo and by the CommandProcessor.
|
||||
|
@ -219,8 +219,8 @@ public:
|
||||
}
|
||||
else
|
||||
{
|
||||
Core::System::GetInstance().GetCommandProcessor().HandleUnknownOpcode(opcode, data,
|
||||
is_preprocess);
|
||||
auto& system = Core::System::GetInstance();
|
||||
system.GetCommandProcessor().HandleUnknownOpcode(system, opcode, data, is_preprocess);
|
||||
m_cycles += 1;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user