diff options
| author | 2014-12-28 22:39:17 -0500 | |
|---|---|---|
| committer | 2014-12-28 22:39:17 -0500 | |
| commit | 487a80f9f70f5972aaf53fd855e17c07deb4819f (patch) | |
| tree | 2ce60ca2c34aca3e4c19395562df0dbbeb7c19f6 /src/video_core | |
| parent | Merge pull request #355 from lioncash/simp (diff) | |
| parent | GPU: Implement frameskip and remove forced framebuffer swap hack. (diff) | |
| download | yuzu-487a80f9f70f5972aaf53fd855e17c07deb4819f.tar.gz yuzu-487a80f9f70f5972aaf53fd855e17c07deb4819f.tar.xz yuzu-487a80f9f70f5972aaf53fd855e17c07deb4819f.zip | |
Merge pull request #347 from bunnei/frameskip
Frameskip
Diffstat (limited to 'src/video_core')
| -rw-r--r-- | src/video_core/command_processor.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/video_core/command_processor.cpp b/src/video_core/command_processor.cpp index 2083357fe..9602779f4 100644 --- a/src/video_core/command_processor.cpp +++ b/src/video_core/command_processor.cpp | |||
| @@ -9,6 +9,7 @@ | |||
| 9 | #include "primitive_assembly.h" | 9 | #include "primitive_assembly.h" |
| 10 | #include "vertex_shader.h" | 10 | #include "vertex_shader.h" |
| 11 | #include "core/hle/service/gsp_gpu.h" | 11 | #include "core/hle/service/gsp_gpu.h" |
| 12 | #include "core/hw/gpu.h" | ||
| 12 | 13 | ||
| 13 | #include "debug_utils/debug_utils.h" | 14 | #include "debug_utils/debug_utils.h" |
| 14 | 15 | ||
| @@ -31,6 +32,10 @@ static inline void WritePicaReg(u32 id, u32 value, u32 mask) { | |||
| 31 | if (id >= registers.NumIds()) | 32 | if (id >= registers.NumIds()) |
| 32 | return; | 33 | return; |
| 33 | 34 | ||
| 35 | // If we're skipping this frame, only allow trigger IRQ | ||
| 36 | if (GPU::g_skip_frame && id != PICA_REG_INDEX(trigger_irq)) | ||
| 37 | return; | ||
| 38 | |||
| 34 | // TODO: Figure out how register masking acts on e.g. vs_uniform_setup.set_value | 39 | // TODO: Figure out how register masking acts on e.g. vs_uniform_setup.set_value |
| 35 | u32 old_value = registers[id]; | 40 | u32 old_value = registers[id]; |
| 36 | registers[id] = (old_value & ~mask) | (value & mask); | 41 | registers[id] = (old_value & ~mask) | (value & mask); |