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
update analog default list
[pcsx_rearmed.git]
/
frontend
/
plugin_lib.c
diff --git
a/frontend/plugin_lib.c
b/frontend/plugin_lib.c
index
8a6b6ad
..
50aba22
100644
(file)
--- a/
frontend/plugin_lib.c
+++ b/
frontend/plugin_lib.c
@@
-33,6
+33,7
@@
#include "psemu_plugin_defs.h"
#include "../libpcsxcore/new_dynarec/new_dynarec.h"
#include "../libpcsxcore/psxmem_map.h"
#include "psemu_plugin_defs.h"
#include "../libpcsxcore/new_dynarec/new_dynarec.h"
#include "../libpcsxcore/psxmem_map.h"
+#include "../libpcsxcore/gpu.h"
#define HUD_HEIGHT 10
#define HUD_HEIGHT 10
@@
-133,11
+134,11
@@
static __attribute__((noinline)) void draw_active_chans(int vout_w, int vout_h)
static const unsigned short colors[2] = { 0x1fe3, 0x0700 };
unsigned short *dest = (unsigned short *)pl_vout_buf +
static const unsigned short colors[2] = { 0x1fe3, 0x0700 };
unsigned short *dest = (unsigned short *)pl_vout_buf +
-
vout_w * (vout_h - HUD_HEIGHT) +
vout_w / 2 - 192/2;
+
pl_vout_w * (vout_h - HUD_HEIGHT) + pl_
vout_w / 2 - 192/2;
unsigned short *d, p;
int c, x, y;
unsigned short *d, p;
int c, x, y;
- if (
dest
== NULL || pl_vout_bpp != 16)
+ if (
pl_vout_buf
== NULL || pl_vout_bpp != 16)
return;
spu_get_debug_info(&live_chans, &run_chans, &fmod_chans, &noise_chans);
return;
spu_get_debug_info(&live_chans, &run_chans, &fmod_chans, &noise_chans);
@@
-148,7
+149,7
@@
static __attribute__((noinline)) void draw_active_chans(int vout_w, int vout_h)
(fmod_chans & (1<<c)) ? 0xf000 :
(noise_chans & (1<<c)) ? 0x001f :
colors[c & 1];
(fmod_chans & (1<<c)) ? 0xf000 :
(noise_chans & (1<<c)) ? 0x001f :
colors[c & 1];
- for (y = 0; y < 8; y++, d += vout_w)
+ for (y = 0; y < 8; y++, d +=
pl_
vout_w)
for (x = 0; x < 8; x++)
d[x] = p;
}
for (x = 0; x < 8; x++)
d[x] = p;
}
@@
-301,10
+302,16
@@
static void pl_vout_set_mode(int w, int h, int raw_w, int raw_h, int bpp)
menu_notify_mode_change(pl_vout_w, pl_vout_h, pl_vout_bpp);
}
menu_notify_mode_change(pl_vout_w, pl_vout_h, pl_vout_bpp);
}
+static int flip_clear_counter;
+
+void pl_force_clear(void)
+{
+ flip_clear_counter = 2;
+}
+
static void pl_vout_flip(const void *vram, int stride, int bgr24,
int x, int y, int w, int h, int dims_changed)
{
static void pl_vout_flip(const void *vram, int stride, int bgr24,
int x, int y, int w, int h, int dims_changed)
{
- static int clear_counter;
unsigned char *dest = pl_vout_buf;
const unsigned short *src = vram;
int dstride = pl_vout_w, h1 = h;
unsigned char *dest = pl_vout_buf;
const unsigned short *src = vram;
int dstride = pl_vout_w, h1 = h;
@@
-331,15
+338,15
@@
static void pl_vout_flip(const void *vram, int stride, int bgr24,
doffs = xoffs + y * dstride;
if (dims_changed)
doffs = xoffs + y * dstride;
if (dims_changed)
- clear_counter = 2;
+
flip_
clear_counter = 2;
- if (clear_counter > 0) {
+ if (
flip_
clear_counter > 0) {
if (pl_plat_clear)
pl_plat_clear();
else
memset(pl_vout_buf, 0,
dstride * h_full * pl_vout_bpp / 8);
if (pl_plat_clear)
pl_plat_clear();
else
memset(pl_vout_buf, 0,
dstride * h_full * pl_vout_bpp / 8);
- clear_counter--;
+
flip_
clear_counter--;
}
if (pl_plat_blit)
}
if (pl_plat_blit)
@@
-770,6
+777,7
@@
struct rearmed_cbs pl_rearmed_cbs = {
.mmap = pl_mmap,
.munmap = pl_munmap,
.pl_set_gpu_caps = pl_set_gpu_caps,
.mmap = pl_mmap,
.munmap = pl_munmap,
.pl_set_gpu_caps = pl_set_gpu_caps,
+ .gpu_state_change = gpu_state_change,
};
/* watchdog */
};
/* watchdog */