Pica: Create 'State' structure and move state memory there.
This commit is contained in:
parent
4c207798b4
commit
1b42d55a9d
15 changed files with 461 additions and 438 deletions
|
@ -228,7 +228,7 @@ void GPUCommandListModel::OnPicaTraceFinished(const Pica::DebugUtils::PicaTrace&
|
|||
|
||||
#define COMMAND_IN_RANGE(cmd_id, reg_name) \
|
||||
(cmd_id >= PICA_REG_INDEX(reg_name) && \
|
||||
cmd_id < PICA_REG_INDEX(reg_name) + sizeof(decltype(Pica::registers.reg_name)) / 4)
|
||||
cmd_id < PICA_REG_INDEX(reg_name) + sizeof(decltype(Pica::g_state.regs.reg_name)) / 4)
|
||||
|
||||
void GPUCommandListWidget::OnCommandDoubleClicked(const QModelIndex& index) {
|
||||
const unsigned int command_id = list_widget->model()->data(index, GPUCommandListModel::CommandIdRole).toUInt();
|
||||
|
@ -244,8 +244,8 @@ void GPUCommandListWidget::OnCommandDoubleClicked(const QModelIndex& index) {
|
|||
} else {
|
||||
index = 2;
|
||||
}
|
||||
auto config = Pica::registers.GetTextures()[index].config;
|
||||
auto format = Pica::registers.GetTextures()[index].format;
|
||||
auto config = Pica::g_state.regs.GetTextures()[index].config;
|
||||
auto format = Pica::g_state.regs.GetTextures()[index].format;
|
||||
auto info = Pica::DebugUtils::TextureInfo::FromPicaRegister(config, format);
|
||||
|
||||
// TODO: Instead, emit a signal here to be caught by the main window widget.
|
||||
|
@ -270,8 +270,8 @@ void GPUCommandListWidget::SetCommandInfo(const QModelIndex& index) {
|
|||
} else {
|
||||
index = 2;
|
||||
}
|
||||
auto config = Pica::registers.GetTextures()[index].config;
|
||||
auto format = Pica::registers.GetTextures()[index].format;
|
||||
auto config = Pica::g_state.regs.GetTextures()[index].config;
|
||||
auto format = Pica::g_state.regs.GetTextures()[index].format;
|
||||
|
||||
auto info = Pica::DebugUtils::TextureInfo::FromPicaRegister(config, format);
|
||||
u8* src = Memory::GetPhysicalPointer(config.GetPhysicalAddress());
|
||||
|
|
|
@ -178,7 +178,7 @@ void GraphicsFramebufferWidget::OnUpdate()
|
|||
{
|
||||
// TODO: Store a reference to the registers in the debug context instead of accessing them directly...
|
||||
|
||||
const auto& framebuffer = Pica::registers.framebuffer;
|
||||
const auto& framebuffer = Pica::g_state.regs.framebuffer;
|
||||
|
||||
framebuffer_address = framebuffer.GetColorBufferPhysicalAddress();
|
||||
framebuffer_width = framebuffer.GetWidth();
|
||||
|
@ -191,7 +191,7 @@ void GraphicsFramebufferWidget::OnUpdate()
|
|||
|
||||
case Source::DepthBuffer:
|
||||
{
|
||||
const auto& framebuffer = Pica::registers.framebuffer;
|
||||
const auto& framebuffer = Pica::g_state.regs.framebuffer;
|
||||
|
||||
framebuffer_address = framebuffer.GetDepthBufferPhysicalAddress();
|
||||
framebuffer_width = framebuffer.GetWidth();
|
||||
|
|
|
@ -253,13 +253,13 @@ void GraphicsVertexShaderModel::OnUpdate()
|
|||
|
||||
info.Clear();
|
||||
|
||||
for (auto instr : Pica::VertexShader::GetShaderBinary())
|
||||
for (auto instr : Pica::g_state.vs.program_code)
|
||||
info.code.push_back({instr});
|
||||
|
||||
for (auto pattern : Pica::VertexShader::GetSwizzlePatterns())
|
||||
for (auto pattern : Pica::g_state.vs.swizzle_data)
|
||||
info.swizzle_info.push_back({pattern});
|
||||
|
||||
info.labels.insert({Pica::registers.vs_main_offset, "main"});
|
||||
info.labels.insert({ Pica::g_state.regs.vs_main_offset, "main" });
|
||||
|
||||
endResetModel();
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue