diff --git a/src/xenia/gpu/gl4/command_processor.cc b/src/xenia/gpu/gl4/command_processor.cc index 858314a9e..fc0709a8c 100644 --- a/src/xenia/gpu/gl4/command_processor.cc +++ b/src/xenia/gpu/gl4/command_processor.cc @@ -574,7 +574,8 @@ void CommandProcessor::ReturnFromWait() { } } -void CommandProcessor::IssueSwap(uint32_t frontbuffer_width, +void CommandProcessor::IssueSwap(uint32_t frontbuffer_ptr, + uint32_t frontbuffer_width, uint32_t frontbuffer_height) { SCOPE_profile_cpu_f("gpu"); if (!swap_request_handler_) { @@ -1010,7 +1011,7 @@ bool CommandProcessor::ExecutePacketType3_XE_SWAP(RingbufferReader* reader, draw_batcher_.Flush(DrawBatcher::FlushMode::kMakeCoherent); if (swap_mode_ == SwapMode::kNormal) { - IssueSwap(frontbuffer_width, frontbuffer_height); + IssueSwap(frontbuffer_ptr, frontbuffer_width, frontbuffer_height); } if (trace_writer_.is_open()) { diff --git a/src/xenia/gpu/gl4/command_processor.h b/src/xenia/gpu/gl4/command_processor.h index 80d534c8a..4c8d052ba 100644 --- a/src/xenia/gpu/gl4/command_processor.h +++ b/src/xenia/gpu/gl4/command_processor.h @@ -78,7 +78,8 @@ class CommandProcessor { SwapState& swap_state() { return swap_state_; } void set_swap_mode(SwapMode swap_mode) { swap_mode_ = swap_mode; } - void IssueSwap(uint32_t frontbuffer_width, uint32_t frontbuffer_height); + void IssueSwap(uint32_t frontbuffer_ptr, uint32_t frontbuffer_width, + uint32_t frontbuffer_height); void set_swap_request_handler(std::function fn) { swap_request_handler_ = fn; diff --git a/src/xenia/gpu/gl4/gl4_graphics_system.cc b/src/xenia/gpu/gl4/gl4_graphics_system.cc index 9061eed09..d2d0a3526 100644 --- a/src/xenia/gpu/gl4/gl4_graphics_system.cc +++ b/src/xenia/gpu/gl4/gl4_graphics_system.cc @@ -269,7 +269,7 @@ void GL4GraphicsSystem::PlayTrace(const uint8_t* trace_data, size_t trace_size, } command_processor_->set_swap_mode(SwapMode::kNormal); - command_processor_->IssueSwap(1280, 720); + command_processor_->IssueSwap(0, 1280, 720); }); }