diff --git a/src/core/hle/service/nvdrv/devices/nvdisp_disp0.cpp b/src/core/hle/service/nvdrv/devices/nvdisp_disp0.cpp index faed626bae..1a885f40a6 100644 --- a/src/core/hle/service/nvdrv/devices/nvdisp_disp0.cpp +++ b/src/core/hle/service/nvdrv/devices/nvdisp_disp0.cpp @@ -6,6 +6,8 @@ #include "common/logging/log.h" #include "core/hle/service/nvdrv/devices/nvdisp_disp0.h" #include "core/hle/service/nvdrv/devices/nvmap.h" +#include "video_core/renderer_base.h" +#include "video_core/video_core.h" namespace Service { namespace NVDRV { @@ -22,6 +24,11 @@ void nvdisp_disp0::flip(u32 buffer_handle, u32 offset, u32 format, u32 width, u3 LOG_WARNING(Service, "Drawing from address %llx offset %08X Width %u Height %u Stride %u Format %u", addr, offset, width, height, stride, format); + + using PixelFormat = RendererBase::FramebufferInfo::PixelFormat; + const RendererBase::FramebufferInfo framebuffer_info{ + addr, offset, width, height, stride, static_cast(format)}; + VideoCore::g_renderer->SwapBuffers(framebuffer_info); } } // namespace Devices