aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornotaz2012-04-29 19:28:08 +0300
committernotaz2012-04-29 19:32:09 +0300
commitb105cf4f5e168fdce54c6011533df76d196a917b (patch)
tree6b9bd55d79f5169d585345a9ffe1094a4f3720fd
parentac6575cdd93d665efc374c1a14b391c6a5308972 (diff)
downloadpcsx_rearmed-b105cf4f5e168fdce54c6011533df76d196a917b.tar.gz
pcsx_rearmed-b105cf4f5e168fdce54c6011533df76d196a917b.tar.bz2
pcsx_rearmed-b105cf4f5e168fdce54c6011533df76d196a917b.zip
frontend: some menu adjustments
-rw-r--r--frontend/menu.c26
-rw-r--r--libpcsxcore/new_dynarec/new_dynarec.c2
2 files changed, 19 insertions, 9 deletions
diff --git a/frontend/menu.c b/frontend/menu.c
index d99156b..b3b7177 100644
--- a/frontend/menu.c
+++ b/frontend/menu.c
@@ -607,10 +607,10 @@ static void draw_savestate_bg(int slot)
bgr888_to_rgb565(d, s, w * 3);
else
bgr555_to_rgb565(d, s, w * 2);
-#ifndef __ARM_ARCH_7A__
- // better darken this on small screens
- menu_darken_bg(d, d, w * 2, 0);
-#endif
+
+ // darken this so that menu text is visible
+ if (g_menuscreen_w - w < 320)
+ menu_darken_bg(d, d, w * 2, 0);
}
out:
@@ -2270,7 +2270,6 @@ void menu_init(void)
#endif
}
-// XXX: should really menu code cotrol the layer size?
void menu_notify_mode_change(int w, int h, int bpp)
{
float mult;
@@ -2280,6 +2279,7 @@ void menu_notify_mode_change(int w, int h, int bpp)
last_psx_h = h;
last_psx_bpp = bpp;
+ // XXX: should really menu code cotrol the layer size?
switch (scaling) {
case SCALE_1_1:
g_layer_w = w; g_layer_h = h;
@@ -2337,16 +2337,24 @@ static void menu_leave_emu(void)
plat_video_menu_enter(ready_to_go);
memcpy(g_menubg_ptr, g_menubg_src_ptr, g_menuscreen_w * g_menuscreen_h * 2);
- if (pl_vout_buf != NULL && ready_to_go && last_psx_bpp == 16) {
+ if (pl_vout_buf != NULL && ready_to_go) {
int x = max(0, g_menuscreen_w - last_psx_w);
int y = max(0, g_menuscreen_h / 2 - last_psx_h / 2);
int w = min(g_menuscreen_w, last_psx_w);
int h = min(g_menuscreen_h, last_psx_h);
u16 *d = (u16 *)g_menubg_ptr + g_menuscreen_w * y + x;
- u16 *s = pl_vout_buf;
+ char *s = pl_vout_buf;
- for (; h > 0; h--, d += g_menuscreen_w, s += last_psx_w)
- menu_darken_bg(d, s, w, 0);
+ if (last_psx_bpp == 16) {
+ for (; h > 0; h--, d += g_menuscreen_w, s += last_psx_w * 2)
+ menu_darken_bg(d, s, w, 0);
+ }
+ else {
+ for (; h > 0; h--, d += g_menuscreen_w, s += last_psx_w * 3) {
+ bgr888_to_rgb565(d, s, w * 3);
+ menu_darken_bg(d, d, w, 0);
+ }
+ }
}
if (ready_to_go)
diff --git a/libpcsxcore/new_dynarec/new_dynarec.c b/libpcsxcore/new_dynarec/new_dynarec.c
index 59d4208..bab5ec8 100644
--- a/libpcsxcore/new_dynarec/new_dynarec.c
+++ b/libpcsxcore/new_dynarec/new_dynarec.c
@@ -8084,6 +8084,8 @@ void new_dynarec_init()
#ifndef RAM_FIXED
ram_offset=(u_int)rdram-0x80000000;
#endif
+ if (ram_offset!=0)
+ printf("warning: RAM is not directly mapped, performance will suffer\n");
}
void new_dynarec_cleanup()