add buffer parameters for menubg_src
authorkub <derkub@gmail.com>
Thu, 14 Jan 2021 20:47:19 +0000 (21:47 +0100)
committerkub <derkub@gmail.com>
Fri, 15 Jan 2021 18:48:07 +0000 (19:48 +0100)
menu.c
menu.h

diff --git a/menu.c b/menu.c
index f32c3ce..e7adb5a 100644 (file)
--- a/menu.c
+++ b/menu.c
 static char static_buff[64];\r
 static int  menu_error_time = 0;\r
 char menu_error_msg[64] = { 0, };\r
+// g_menuscreen is the current output buffer the menu is rendered to.\r
 void *g_menuscreen_ptr;\r
-void *g_menubg_src_ptr;\r
+// g_menubg is the menu background and has the same w/h as g_menuscreen, but\r
+// pp=w. It is filled on menu entry from file or from g_menubg_src if available.\r
 void *g_menubg_ptr;\r
+// g_menubg_src points to a buffer containing a bg image. This is usually either\r
+// the emulator screen buffer or the host frame buffer.\r
+void *g_menubg_src_ptr;\r
 \r
 int g_menuscreen_w;\r
 int g_menuscreen_h;\r
 int g_menuscreen_pp;\r
+int g_menubg_src_w;\r
+int g_menubg_src_h;\r
+int g_menubg_src_pp;\r
 \r
 int g_autostateld_opt;\r
 \r
diff --git a/menu.h b/menu.h
index 2597ab0..dfcc0bc 100644 (file)
--- a/menu.h
+++ b/menu.h
@@ -112,12 +112,16 @@ typedef struct
 extern me_bind_action me_ctrl_actions[];
 extern me_bind_action emuctrl_actions[];       // platform code
 
-extern void *g_menubg_src_ptr;
-extern void *g_menubg_ptr;
 extern void *g_menuscreen_ptr;
+extern void *g_menubg_ptr;
+extern void *g_menubg_src_ptr;
+
 extern int g_menuscreen_w;
 extern int g_menuscreen_h;
 extern int g_menuscreen_pp; // pitch (in pixels)
+extern int g_menubg_src_w;
+extern int g_menubg_src_h;
+extern int g_menubg_src_pp;
 
 extern int g_autostateld_opt;