diff options
| author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2020-04-27 21:47:58 -0400 |
|---|---|---|
| committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2020-04-27 21:47:58 -0400 |
| commit | b916b587029761698e9c7c8faad8368d894a91ac (patch) | |
| tree | 2c34a1b6e99d790cf794a9db6f3ac9b1dca60a8a /src/video_core/engines/fermi_2d.cpp | |
| parent | 27dc83efa619c689b494406792f04685ff6c7d10 (diff) | |
VideoCore/Engines: Refactor Engines CallMethod.
Diffstat (limited to 'src/video_core/engines/fermi_2d.cpp')
| -rw-r--r-- | src/video_core/engines/fermi_2d.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/video_core/engines/fermi_2d.cpp b/src/video_core/engines/fermi_2d.cpp index 8a47614d26..ff10ff40da 100644 --- a/src/video_core/engines/fermi_2d.cpp +++ b/src/video_core/engines/fermi_2d.cpp @@ -12,13 +12,13 @@ namespace Tegra::Engines { Fermi2D::Fermi2D(VideoCore::RasterizerInterface& rasterizer) : rasterizer{rasterizer} {} -void Fermi2D::CallMethod(const GPU::MethodCall& method_call) { - ASSERT_MSG(method_call.method < Regs::NUM_REGS, +void Fermi2D::CallMethod(u32 method, u32 method_argument, bool is_last_call) { + ASSERT_MSG(method < Regs::NUM_REGS, "Invalid Fermi2D register, increase the size of the Regs structure"); - regs.reg_array[method_call.method] = method_call.argument; + regs.reg_array[method] = method_argument; - switch (method_call.method) { + switch (method) { // Trigger the surface copy on the last register write. This is blit_src_y, but this is 64-bit, // so trigger on the second 32-bit write. case FERMI2D_REG_INDEX(blit_src_y) + 1: { @@ -30,7 +30,7 @@ void Fermi2D::CallMethod(const GPU::MethodCall& method_call) { void Fermi2D::CallMultiMethod(u32 method, const u32* base_start, u32 amount, u32 methods_pending) { for (std::size_t i = 0; i < amount; i++) { - CallMethod({method, base_start[i], 0, methods_pending - static_cast<u32>(i)}); + CallMethod(method, base_start[i], methods_pending - static_cast<u32>(i) <= 1); } } |
