aboutsummaryrefslogtreecommitdiff
path: root/plugins/gpu_neon/gpu.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/gpu_neon/gpu.c')
-rw-r--r--plugins/gpu_neon/gpu.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/plugins/gpu_neon/gpu.c b/plugins/gpu_neon/gpu.c
index 2db4379..03b0c71 100644
--- a/plugins/gpu_neon/gpu.c
+++ b/plugins/gpu_neon/gpu.c
@@ -328,11 +328,12 @@ static int check_cmd(uint32_t *data, int count)
start_vram_transfer(data[pos + 1], data[pos + 2], cmd == 0xc0);
pos += len;
}
-
- if (cmd == -1)
+ else if (cmd == -1)
break;
}
+ if (gpu.frameskip.active)
+ renderer_sync_ecmds(gpu.ex_regs);
gpu.state.fb_dirty |= vram_dirty;
return count - pos;
@@ -498,6 +499,7 @@ long GPUfreeze(uint32_t type, GPUFreeze_t *freeze)
gpu.regs[i] ^= 1; // avoid reg change detection
GPUwriteStatus((i << 24) | (gpu.regs[i] ^ 1));
}
+ renderer_sync_ecmds(gpu.ex_regs);
break;
}