diff options
author | bunnei <bunneidev@gmail.com> | 2018-08-09 05:22:45 +0200 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2018-08-09 05:25:37 +0200 |
commit | efe6b473c5b16d57e0bc6535e43fdafff23e6438 (patch) | |
tree | 87efec797ba0c355fed461ea67d6d451d0b538f4 /src/video_core/engines/maxwell_3d.cpp | |
parent | Merge pull request #982 from bunnei/stub-unk-63 (diff) | |
download | yuzu-efe6b473c5b16d57e0bc6535e43fdafff23e6438.tar yuzu-efe6b473c5b16d57e0bc6535e43fdafff23e6438.tar.gz yuzu-efe6b473c5b16d57e0bc6535e43fdafff23e6438.tar.bz2 yuzu-efe6b473c5b16d57e0bc6535e43fdafff23e6438.tar.lz yuzu-efe6b473c5b16d57e0bc6535e43fdafff23e6438.tar.xz yuzu-efe6b473c5b16d57e0bc6535e43fdafff23e6438.tar.zst yuzu-efe6b473c5b16d57e0bc6535e43fdafff23e6438.zip |
Diffstat (limited to 'src/video_core/engines/maxwell_3d.cpp')
-rw-r--r-- | src/video_core/engines/maxwell_3d.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/video_core/engines/maxwell_3d.cpp b/src/video_core/engines/maxwell_3d.cpp index ed22a2090..a46ed4bd7 100644 --- a/src/video_core/engines/maxwell_3d.cpp +++ b/src/video_core/engines/maxwell_3d.cpp @@ -23,12 +23,17 @@ Maxwell3D::Maxwell3D(VideoCore::RasterizerInterface& rasterizer, MemoryManager& : memory_manager(memory_manager), rasterizer{rasterizer}, macro_interpreter(*this) {} void Maxwell3D::CallMacroMethod(u32 method, std::vector<u32> parameters) { - auto macro_code = uploaded_macros.find(method); + // Reset the current macro. + executing_macro = 0; + // The requested macro must have been uploaded already. - ASSERT_MSG(macro_code != uploaded_macros.end(), "Macro %08X was not uploaded", method); + auto macro_code = uploaded_macros.find(method); + if (macro_code == uploaded_macros.end()) { + LOG_ERROR(HW_GPU, "Macro {:04X} was not uploaded", method); + return; + } - // Reset the current macro and execute it. - executing_macro = 0; + // Execute the current macro. macro_interpreter.Execute(macro_code->second, std::move(parameters)); } |