mirror of
https://github.com/yuzu-emu/yuzu-android.git
synced 2024-12-27 17:55:42 +00:00
GPU: Reduce the number of registers of Maxwell3D to 0xE00.
The rest are just macro shim registers.
This commit is contained in:
parent
a994446b6e
commit
c16cfbbc6c
|
@ -33,9 +33,6 @@ void Maxwell3D::CallMacroMethod(u32 method, std::vector<u32> parameters) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void Maxwell3D::WriteReg(u32 method, u32 value, u32 remaining_params) {
|
void Maxwell3D::WriteReg(u32 method, u32 value, u32 remaining_params) {
|
||||||
ASSERT_MSG(method < Regs::NUM_REGS,
|
|
||||||
"Invalid Maxwell3D register, increase the size of the Regs structure");
|
|
||||||
|
|
||||||
auto debug_context = Core::System::GetInstance().GetGPUDebugContext();
|
auto debug_context = Core::System::GetInstance().GetGPUDebugContext();
|
||||||
|
|
||||||
// It is an error to write to a register other than the current macro's ARG register before it
|
// It is an error to write to a register other than the current macro's ARG register before it
|
||||||
|
@ -64,6 +61,9 @@ void Maxwell3D::WriteReg(u32 method, u32 value, u32 remaining_params) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ASSERT_MSG(method < Regs::NUM_REGS,
|
||||||
|
"Invalid Maxwell3D register, increase the size of the Regs structure");
|
||||||
|
|
||||||
if (debug_context) {
|
if (debug_context) {
|
||||||
debug_context->OnEvent(Tegra::DebugContext::Event::MaxwellCommandLoaded, nullptr);
|
debug_context->OnEvent(Tegra::DebugContext::Event::MaxwellCommandLoaded, nullptr);
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,7 +31,7 @@ public:
|
||||||
/// Register structure of the Maxwell3D engine.
|
/// Register structure of the Maxwell3D engine.
|
||||||
/// TODO(Subv): This structure will need to be made bigger as more registers are discovered.
|
/// TODO(Subv): This structure will need to be made bigger as more registers are discovered.
|
||||||
struct Regs {
|
struct Regs {
|
||||||
static constexpr size_t NUM_REGS = 0xE36;
|
static constexpr size_t NUM_REGS = 0xE00;
|
||||||
|
|
||||||
static constexpr size_t NumRenderTargets = 8;
|
static constexpr size_t NumRenderTargets = 8;
|
||||||
static constexpr size_t NumViewports = 16;
|
static constexpr size_t NumViewports = 16;
|
||||||
|
@ -613,7 +613,7 @@ public:
|
||||||
u32 size[MaxShaderStage];
|
u32 size[MaxShaderStage];
|
||||||
} tex_info_buffers;
|
} tex_info_buffers;
|
||||||
|
|
||||||
INSERT_PADDING_WORDS(0x102);
|
INSERT_PADDING_WORDS(0xCC);
|
||||||
};
|
};
|
||||||
std::array<u32, NUM_REGS> reg_array;
|
std::array<u32, NUM_REGS> reg_array;
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue