diff options
| author | bunnei <bunneidev@gmail.com> | 2018-11-23 23:20:56 -0500 |
|---|---|---|
| committer | bunnei <bunneidev@gmail.com> | 2018-11-26 23:14:01 -0500 |
| commit | abea6fa90c901d0b47487ed38d44511b18f0addf (patch) | |
| tree | 65ba9fc6ff7609ea569ea1e3d05f91caa56ffa14 /src/video_core/engines/kepler_memory.cpp | |
| parent | 852a462df3b8629791ae982dfe6c54fb6a5fcc5e (diff) | |
gpu: Rewrite GPU command list processing with DmaPusher class.
- More accurate impl., fixes Undertale (among other games).
Diffstat (limited to 'src/video_core/engines/kepler_memory.cpp')
| -rw-r--r-- | src/video_core/engines/kepler_memory.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/video_core/engines/kepler_memory.cpp b/src/video_core/engines/kepler_memory.cpp index 2adbc9eaf..4880191fc 100644 --- a/src/video_core/engines/kepler_memory.cpp +++ b/src/video_core/engines/kepler_memory.cpp @@ -17,19 +17,19 @@ KeplerMemory::KeplerMemory(VideoCore::RasterizerInterface& rasterizer, KeplerMemory::~KeplerMemory() = default; -void KeplerMemory::WriteReg(u32 method, u32 value) { - ASSERT_MSG(method < Regs::NUM_REGS, +void KeplerMemory::CallMethod(const GPU::MethodCall& method_call) { + ASSERT_MSG(method_call.method < Regs::NUM_REGS, "Invalid KeplerMemory register, increase the size of the Regs structure"); - regs.reg_array[method] = value; + regs.reg_array[method_call.method] = method_call.argument; - switch (method) { + switch (method_call.method) { case KEPLERMEMORY_REG_INDEX(exec): { state.write_offset = 0; break; } case KEPLERMEMORY_REG_INDEX(data): { - ProcessData(value); + ProcessData(method_call.argument); break; } } |
