Updaes for NX Console

git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@4531 7fd9a85b-ad96-42d3-883c-3090e2eb8679
This commit is contained in:
patacongo 2012-03-27 22:33:15 +00:00
parent 1e104ed087
commit 1a975c0a58
20 changed files with 227 additions and 25 deletions

View File

@ -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 */

View File

@ -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;
}

View File

@ -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);
}
}
/****************************************************************************

View File

@ -1069,7 +1069,7 @@ static int stm32_i2c_isr(struct stm32_i2c_priv_s *priv)
{
stm32_i2c_modifyreg(priv, STM32_I2C_CR1_OFFSET, I2C_CR1_ACK, 0);
}
priv->dnct--;
priv->dcnt--;
}
}

View File

@ -621,6 +621,7 @@ CONFIG_EXAMPLES_NXLINES_EXTERNINIT=n
#
# Settings for examples/mount
#
CONFIG_EXAMPLES_MOUNT_DEVNAME="/dev/ram0"
#CONFIG_EXAMPLES_MOUNT_NSECTORS=2048
#CONFIG_EXAMPLES_MOUNT_SECTORSIZE=512

View File

@ -43,9 +43,14 @@ CONFIGURED_APPS += system/readline
CONFIGURED_APPS += nshlib
# The NX and NXHELLO examples configured as an NX built-in commands
# Various NX tests can be supported, simply comment-out examples/nx and
# uncomment the test you wish to perform
CONFIGURED_APPS += examples/nx
CONFIGURED_APPS += examples/nxhello
#CONFIGURED_APPS += examples/nxlines
#CONFIGURED_APPS += examples/nxtext
#CONFIGURED_APPS += examples/nxconsole
CONFIGURED_APPS += examples/usbstorage
ifeq ($(CONFIG_I2C),y)

View File

@ -1040,6 +1040,45 @@ CONFIG_NX_BLOCKING=y
CONFIG_NX_MXSERVERMSGS=32
CONFIG_NX_MXCLIENTMSGS=16
#
# NxConsole Configuration Settings:
#
# CONFIG_NXCONSOLE_BPP
# Currently, NxConsole supports only a single pixel depth. This
# configuration setting must be provided to support that single pixel depth.
# Default: The smallest enabled pixel depth. (see CONFIG_NX_DISABLE_*BPP)
# CONFIG_NXCONSOLE_NOGETRUN
# NxConsole needs to know if it can read from the LCD or not. If reading
# from the LCD is supported, then NxConsole can do more efficient
# scrolling. Default: Supported
# CONFIG_NXCONSOLE_MXCHARS
# NxConsole needs to remember every character written to the console so
# that it can redraw the window. This setting determines the size of some
# internal memory allocations used to hold the character data. Default: 128.
# CONFIG_NXCONSOLE_FONTCACHE
# If this setting is defined, then caching of fonts will be supported by
# NxConsole. Each font must be rendered from the tiny font storage format
# to the full display size and pixel depth. If this setting is defined, then
# the more recently used font glyphs will be retained in a cache of size
# CONFIG_NXCONSOLE_CACHESIZE. Default: No font caching.
# CONFIG_NXCONSOLE_CACHESIZE
# If CONFIG_NXCONSOLE_FONTCACHE, then this setting will control the size
# of the font cache (in number of glyphs). Default: 16.
# CONFIG_NXCONSOLE_LINESEPARATION
# This the space (in rows) between each row of test. Default: 2
# CONFIG_NXCONSOLE_NOWRAP
# By default, lines will wrap when the test reaches the right hand side
# of the window. This setting can be defining to change this behavior so
# that the text is simply truncated until a new line is encountered.
#
CONFIG_NXCONSOLE_BPP=16
# CONFIG_NXCONSOLE_NOGETRUN
# CONFIG_NXCONSOLE_MXCHARS
# CONFIG_NXCONSOLE_FONTCACHE
# CONFIG_NXCONSOLE_CACHESIZE
# CONFIG_NXCONSOLE_LINESEPARATION
# CONFIG_NXCONSOLE_NOWRAP
#
# STM3210E-EVAL LCD Hardware Configuration
#

View File

@ -1,8 +1,8 @@
############################################################################
# configs/stm3210e-eval/nx/appconfig
#
# Copyright (C) 2011 Gregory Nutt. All rights reserved.
# Author: Gregory Nutt <spudmonkey@racsa.co.cr>
# Copyright (C) 2011-2012 Gregory Nutt. All rights reserved.
# Author: Gregory Nutt <gnutt@nuttx.org>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
@ -34,6 +34,12 @@
############################################################################
# Path to example in apps/examples containing the user_start entry point
# Various NX tests can be supported, simply comment-out examples/nx and
# uncomment the test you wish to perform
CONFIGURED_APPS += examples/nx
#CONFIGURED_APPS += examples/nxhello
#CONFIGURED_APPS += examples/nxlines
#CONFIGURED_APPS += examples/nxtext
#CONFIGURED_APPS += examples/nxconsole

View File

@ -890,6 +890,45 @@ CONFIG_NX_BLOCKING=y
CONFIG_NX_MXSERVERMSGS=32
CONFIG_NX_MXCLIENTMSGS=16
#
# NxConsole Configuration Settings:
#
# CONFIG_NXCONSOLE_BPP
# Currently, NxConsole supports only a single pixel depth. This
# configuration setting must be provided to support that single pixel depth.
# Default: The smallest enabled pixel depth. (see CONFIG_NX_DISABLE_*BPP)
# CONFIG_NXCONSOLE_NOGETRUN
# NxConsole needs to know if it can read from the LCD or not. If reading
# from the LCD is supported, then NxConsole can do more efficient
# scrolling. Default: Supported
# CONFIG_NXCONSOLE_MXCHARS
# NxConsole needs to remember every character written to the console so
# that it can redraw the window. This setting determines the size of some
# internal memory allocations used to hold the character data. Default: 128.
# CONFIG_NXCONSOLE_FONTCACHE
# If this setting is defined, then caching of fonts will be supported by
# NxConsole. Each font must be rendered from the tiny font storage format
# to the full display size and pixel depth. If this setting is defined, then
# the more recently used font glyphs will be retained in a cache of size
# CONFIG_NXCONSOLE_CACHESIZE. Default: No font caching.
# CONFIG_NXCONSOLE_CACHESIZE
# If CONFIG_NXCONSOLE_FONTCACHE, then this setting will control the size
# of the font cache (in number of glyphs). Default: 16.
# CONFIG_NXCONSOLE_LINESEPARATION
# This the space (in rows) between each row of test. Default: 2
# CONFIG_NXCONSOLE_NOWRAP
# By default, lines will wrap when the test reaches the right hand side
# of the window. This setting can be defining to change this behavior so
# that the text is simply truncated until a new line is encountered.
#
CONFIG_NXCONSOLE_BPP=16
# CONFIG_NXCONSOLE_NOGETRUN
# CONFIG_NXCONSOLE_MXCHARS
# CONFIG_NXCONSOLE_FONTCACHE
# CONFIG_NXCONSOLE_CACHESIZE
# CONFIG_NXCONSOLE_LINESEPARATION
# CONFIG_NXCONSOLE_NOWRAP
#
# STM3210E-EVAL LCD Hardware Configuration
#

View File

@ -34,6 +34,11 @@
############################################################################
# Path to example in apps/examples containing the user_start entry point
# Various NX tests can be supported, simply comment-out examples/nx and
# uncomment the test you wish to perform
#CONFIGURED_APPS += examples/nx
#CONFIGURED_APPS += examples/nxhello
CONFIGURED_APPS += examples/nxlines
#CONFIGURED_APPS += examples/nxtext
#CONFIGURED_APPS += examples/nxconsole

View File

@ -889,6 +889,45 @@ CONFIG_NX_BLOCKING=y
CONFIG_NX_MXSERVERMSGS=32
CONFIG_NX_MXCLIENTMSGS=16
#
# NxConsole Configuration Settings:
#
# CONFIG_NXCONSOLE_BPP
# Currently, NxConsole supports only a single pixel depth. This
# configuration setting must be provided to support that single pixel depth.
# Default: The smallest enabled pixel depth. (see CONFIG_NX_DISABLE_*BPP)
# CONFIG_NXCONSOLE_NOGETRUN
# NxConsole needs to know if it can read from the LCD or not. If reading
# from the LCD is supported, then NxConsole can do more efficient
# scrolling. Default: Supported
# CONFIG_NXCONSOLE_MXCHARS
# NxConsole needs to remember every character written to the console so
# that it can redraw the window. This setting determines the size of some
# internal memory allocations used to hold the character data. Default: 128.
# CONFIG_NXCONSOLE_FONTCACHE
# If this setting is defined, then caching of fonts will be supported by
# NxConsole. Each font must be rendered from the tiny font storage format
# to the full display size and pixel depth. If this setting is defined, then
# the more recently used font glyphs will be retained in a cache of size
# CONFIG_NXCONSOLE_CACHESIZE. Default: No font caching.
# CONFIG_NXCONSOLE_CACHESIZE
# If CONFIG_NXCONSOLE_FONTCACHE, then this setting will control the size
# of the font cache (in number of glyphs). Default: 16.
# CONFIG_NXCONSOLE_LINESEPARATION
# This the space (in rows) between each row of test. Default: 2
# CONFIG_NXCONSOLE_NOWRAP
# By default, lines will wrap when the test reaches the right hand side
# of the window. This setting can be defining to change this behavior so
# that the text is simply truncated until a new line is encountered.
#
CONFIG_NXCONSOLE_BPP=16
# CONFIG_NXCONSOLE_NOGETRUN
# CONFIG_NXCONSOLE_MXCHARS
# CONFIG_NXCONSOLE_FONTCACHE
# CONFIG_NXCONSOLE_CACHESIZE
# CONFIG_NXCONSOLE_LINESEPARATION
# CONFIG_NXCONSOLE_NOWRAP
#
# STM3210E-EVAL LCD Hardware Configuration
#

View File

@ -34,6 +34,12 @@
############################################################################
# Path to example in apps/examples containing the user_start entry point
# Various NX tests can be supported, simply comment-out examples/nx and
# uncomment the test you wish to perform
#CONFIGURED_APPS += examples/nx
#CONFIGURED_APPS += examples/nxhello
#CONFIGURED_APPS += examples/nxlines
CONFIGURED_APPS += examples/nxtext
#CONFIGURED_APPS += examples/nxconsole

View File

@ -889,6 +889,45 @@ CONFIG_NX_BLOCKING=y
CONFIG_NX_MXSERVERMSGS=32
CONFIG_NX_MXCLIENTMSGS=16
#
# NxConsole Configuration Settings:
#
# CONFIG_NXCONSOLE_BPP
# Currently, NxConsole supports only a single pixel depth. This
# configuration setting must be provided to support that single pixel depth.
# Default: The smallest enabled pixel depth. (see CONFIG_NX_DISABLE_*BPP)
# CONFIG_NXCONSOLE_NOGETRUN
# NxConsole needs to know if it can read from the LCD or not. If reading
# from the LCD is supported, then NxConsole can do more efficient
# scrolling. Default: Supported
# CONFIG_NXCONSOLE_MXCHARS
# NxConsole needs to remember every character written to the console so
# that it can redraw the window. This setting determines the size of some
# internal memory allocations used to hold the character data. Default: 128.
# CONFIG_NXCONSOLE_FONTCACHE
# If this setting is defined, then caching of fonts will be supported by
# NxConsole. Each font must be rendered from the tiny font storage format
# to the full display size and pixel depth. If this setting is defined, then
# the more recently used font glyphs will be retained in a cache of size
# CONFIG_NXCONSOLE_CACHESIZE. Default: No font caching.
# CONFIG_NXCONSOLE_CACHESIZE
# If CONFIG_NXCONSOLE_FONTCACHE, then this setting will control the size
# of the font cache (in number of glyphs). Default: 16.
# CONFIG_NXCONSOLE_LINESEPARATION
# This the space (in rows) between each row of test. Default: 2
# CONFIG_NXCONSOLE_NOWRAP
# By default, lines will wrap when the test reaches the right hand side
# of the window. This setting can be defining to change this behavior so
# that the text is simply truncated until a new line is encountered.
#
CONFIG_NXCONSOLE_BPP=16
# CONFIG_NXCONSOLE_NOGETRUN
# CONFIG_NXCONSOLE_MXCHARS
# CONFIG_NXCONSOLE_FONTCACHE
# CONFIG_NXCONSOLE_CACHESIZE
# CONFIG_NXCONSOLE_LINESEPARATION
# CONFIG_NXCONSOLE_NOWRAP
#
# STM3210E-EVAL LCD Hardware Configuration
#

View File

@ -1,8 +1,8 @@
/****************************************************************************
* graphics/nxbe/nxbe_redraw.c
*
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
* Copyright (C) 2008-2009, 2012 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org>
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions

View File

@ -104,9 +104,9 @@ static int nxcon_open(FAR struct file *filep)
/* Verify that the driver is opened for write-only access */
if ((filep->f_oflags & O_WROK) != 0)
if ((filep->f_oflags & O_RDOK) != 0)
{
gdbg("Attempted open with write access\n");
gdbg("Attempted open with read access\n");
return -EACCES;
}

View File

@ -1,8 +1,8 @@
/****************************************************************************
* graphics/nxsu/nx_openwindow.c
*
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
* Copyright (C) 2008-2009, 2012 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org>
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions

View File

@ -1,8 +1,8 @@
/****************************************************************************
* graphics/nxsu/nx_setposition.c
*
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
* Copyright (C) 2008-2009, 2012 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org>
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions

View File

@ -1,8 +1,8 @@
/****************************************************************************
* graphics/nxsu/nx_openwindow.c
*
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
* Copyright (C) 2008-2009, 2012 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org>
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
@ -125,7 +125,7 @@ int nxfe_constructwindow(NXHANDLE handle, FAR struct nxbe_window_s *wnd,
wnd->cb = cb;
wnd->arg = arg;
/* Insert the new window at the top on the display. topwind is
/* Insert the new window at the top on the display. topwnd is
* never NULL (it may point only at the background window, however)
*/

View File

@ -1,8 +1,8 @@
/****************************************************************************
* graphics/nxtk/nxtk_internal.h
*
* Copyright (C) 2008-2009, 2011 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
* Copyright (C) 2008-2009, 2011-1021 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org>
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions

View File

@ -1,8 +1,8 @@
/****************************************************************************
* graphics/nxtk/nxtk_setposition.c
*
* Copyright (C) 2008-2009 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <spudmonkey@racsa.co.cr>
* Copyright (C) 2008-2009, 2012 Gregory Nutt. All rights reserved.
* Author: Gregory Nutt <gnutt@nuttx.org>
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions