From 3f871cbbae8fc67b704f267fadbb932046afd5ca Mon Sep 17 00:00:00 2001 From: patacongo Date: Tue, 27 Mar 2012 22:33:15 +0000 Subject: Updaes for NX Console git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4531 42af7a65-404d-4744-a932-0658087f49c3 --- apps/examples/nxconsole/nxcon_internal.h | 20 +++++++++++++++++++- apps/examples/nxconsole/nxcon_main.c | 6 +++--- apps/examples/nxconsole/nxcon_wndo.c | 9 +++++++-- 3 files changed, 29 insertions(+), 6 deletions(-) (limited to 'apps/examples/nxconsole') diff --git a/apps/examples/nxconsole/nxcon_internal.h b/apps/examples/nxconsole/nxcon_internal.h index a4bcd851b..5aaabfe97 100644 --- a/apps/examples/nxconsole/nxcon_internal.h +++ b/apps/examples/nxconsole/nxcon_internal.h @@ -71,8 +71,26 @@ # define CONFIG_EXAMPLES_NXCON_VPLANE 0 #endif +/* Pixel depth. If non provided, pick the smallest enabled pixel depth */ + #ifndef CONFIG_EXAMPLES_NXCON_BPP -# define CONFIG_EXAMPLES_NXCON_BPP 32 +# if !defined(CONFIG_NX_DISABLE_1BPP) +# define CONFIG_EXAMPLES_NXCON_BPP 1 +# elif !defined(CONFIG_NX_DISABLE_2BPP) +# define CONFIG_EXAMPLES_NXCON_BPP 2 +# elif !defined(CONFIG_NX_DISABLE_4BPP) +# define CONFIG_EXAMPLES_NXCON_BPP 4 +# elif !defined(CONFIG_NX_DISABLE_8BPP) +# define CONFIG_EXAMPLES_NXCON_BPP 8 +# elif !defined(CONFIG_NX_DISABLE_16BPP) +# define CONFIG_EXAMPLES_NXCON_BPP 16 +//#elif !defined(CONFIG_NX_DISABLE_24BPP) +//# define CONFIG_NXCONSOLE_BPP 24 +# elif !defined(CONFIG_NX_DISABLE_32BPP) +# define CONFIG_EXAMPLES_NXCON_BPP 32 +# else +# error "No pixel depth provided" +# endif #endif /* Background color */ diff --git a/apps/examples/nxconsole/nxcon_main.c b/apps/examples/nxconsole/nxcon_main.c index cc83aac16..96f656704 100644 --- a/apps/examples/nxconsole/nxcon_main.c +++ b/apps/examples/nxconsole/nxcon_main.c @@ -356,7 +356,7 @@ int MAIN_NAME(int argc, char **argv) /* Create a window */ message(MAIN_NAME_STRING ": Create window\n"); - g_nxcon_vars.hwnd = nxtk_openwindow(&g_nxcon_vars.hnx, &g_nxconcb, NULL); + g_nxcon_vars.hwnd = nxtk_openwindow(g_nxcon_vars.hnx, &g_nxconcb, NULL); if (!g_nxcon_vars.hwnd) { message(MAIN_NAME_STRING ": nxtk_openwindow failed: %d\n", errno); @@ -432,10 +432,10 @@ int MAIN_NAME(int argc, char **argv) /* Open the driver */ - fd = open(CONFIG_EXAMPLES_NXCON_DEVNAME, O_RDONLY); + fd = open(CONFIG_EXAMPLES_NXCON_DEVNAME, O_WRONLY); if (fd < 0) { - message(MAIN_NAME_STRING ": open %d read-only failed: %d\n", + message(MAIN_NAME_STRING ": open %s read-only failed: %d\n", CONFIG_EXAMPLES_NXCON_DEVNAME, errno); goto errout_with_driver; } diff --git a/apps/examples/nxconsole/nxcon_wndo.c b/apps/examples/nxconsole/nxcon_wndo.c index b052af0d2..6fadda866 100644 --- a/apps/examples/nxconsole/nxcon_wndo.c +++ b/apps/examples/nxconsole/nxcon_wndo.c @@ -119,9 +119,14 @@ static void nxwndo_redraw(NXWINDOW hwnd, FAR const struct nxgl_rect_s *rect, hwnd, rect->pt1.x, rect->pt1.y, rect->pt2.x, rect->pt2.y, more ? "true" : "false"); - /* Inform the NX console of the redraw request */ + /* Don't attempt to redraw if the driver has not yet been opened */ - nxcon_redraw(g_nxcon_vars.hdrvr, rect, more); + if (g_nxcon_vars.hdrvr) + { + /* Inform the NX console of the redraw request */ + + nxcon_redraw(g_nxcon_vars.hdrvr, rect, more); + } } /**************************************************************************** -- cgit v1.2.3