diff --git a/Source/Core/Core/HW/DSPHLE/UCodes/Zelda.cpp b/Source/Core/Core/HW/DSPHLE/UCodes/Zelda.cpp index 8aef08b7c0..8cf51b8788 100644 --- a/Source/Core/Core/HW/DSPHLE/UCodes/Zelda.cpp +++ b/Source/Core/Core/HW/DSPHLE/UCodes/Zelda.cpp @@ -358,7 +358,6 @@ void ZeldaUCode::RunPendingCommands() switch (command) { case 0x00: - case 0x03: case 0x0A: case 0x0B: case 0x0C: @@ -369,6 +368,17 @@ void ZeldaUCode::RunPendingCommands() SendCommandAck(CommandAck::STANDARD, sync); break; + case 0x03: + // NOP on standard protocol but shouldn't ever happen on light protocol + // since it's going directly back to the dispatcher with no ack. + if (m_flags & LIGHT_PROTOCOL) + { + PanicAlert("Received a 03 command on light protocol."); + break; + } + SendCommandAck(CommandAck::STANDARD, sync); + break; + case 0x04: case 0x05: case 0x06: