notaz.gp2x.de
/
pcsx_rearmed.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
gpu_unai: fix a few potential crashes
[pcsx_rearmed.git]
/
plugins
/
gpu_neon
/
gpu.h
diff --git
a/plugins/gpu_neon/gpu.h
b/plugins/gpu_neon/gpu.h
index
8813a44
..
04f69ab
100644
(file)
--- a/
plugins/gpu_neon/gpu.h
+++ b/
plugins/gpu_neon/gpu.h
@@
-44,6
+44,8
@@
struct psx_gpu {
uint32_t lcf:1; // 31
};
} status;
uint32_t lcf:1; // 31
};
} status;
+ uint32_t gp0;
+ uint32_t ex_regs[8];
struct {
int hres, vres;
int x, y, w, h;
struct {
int hres, vres;
int x, y, w, h;
@@
-57,6
+59,24
@@
struct psx_gpu {
int cmd_len;
const uint32_t *lcf_hc;
uint32_t zero;
int cmd_len;
const uint32_t *lcf_hc;
uint32_t zero;
+ struct {
+ uint32_t fb_dirty:1;
+ uint32_t frame_count;
+ uint32_t *hcnt;
+ struct {
+ uint32_t addr;
+ uint32_t words;
+ uint32_t frame;
+ uint32_t hcnt;
+ } last_list;
+ } state;
+ struct {
+ int32_t set:3; /* -1 auto, 0 off, 1 fixed */
+ uint32_t active:1;
+ uint32_t frame_ready:1;
+ uint32_t skipped_blits:5;
+ const int *advice;
+ } frameskip;
};
extern struct psx_gpu gpu;
};
extern struct psx_gpu gpu;
@@
-65,5
+85,10
@@
extern const unsigned char cmd_lengths[256];
void do_cmd_list(uint32_t *list, int count);
void do_cmd_list(uint32_t *list, int count);
+int renderer_init(void);
+void renderer_sync_ecmds(uint32_t * ecmds);
+void renderer_invalidate_caches(int x, int y, int w, int h);
+void renderer_flush_queues(void);
+
int vout_init(void);
int vout_finish(void);
int vout_init(void);
int vout_finish(void);