summaryrefslogtreecommitdiff
path: root/nuttx/graphics/README.txt
diff options
context:
space:
mode:
Diffstat (limited to 'nuttx/graphics/README.txt')
-rw-r--r--nuttx/graphics/README.txt22
1 files changed, 14 insertions, 8 deletions
diff --git a/nuttx/graphics/README.txt b/nuttx/graphics/README.txt
index 935df9140..a816cdb58 100644
--- a/nuttx/graphics/README.txt
+++ b/nuttx/graphics/README.txt
@@ -336,15 +336,21 @@ 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.
+ NxConsole supports caching of rendered fonts. This font caching is required
+ for two reasons: (1) First, it improves text performance, but more
+ importantly (2) it preserves the font memory. Since the NX server runs on
+ a separate server thread, it requires that the rendered font memory persist
+ until the server has a chance to render the font. Unfortunately, the font
+ cache would be quite large if all fonts were saved. The CONFIG_NXCONSOLE_CACHESIZE
+ setting will control the size of the font cache (in number of glyphs). Only that
+ number of the most recently used glyphs will be retained. Default: 16.
+ NOTE: There can still be a race condition between the NxConsole driver and the
+ NX task. If you every see character corruption (especially when printing
+ a lot of data or scrolling), then increasing the value of CONFIG_NXCONSOLE_CACHESIZE
+ is something that you should try. Alternatively, you can reduce the size of
+ CONFIG_MQ_MAXMSGSIZE which will force NxConsole task to pace the server task.
+ CONFIG_NXCONSOLE_CACHESIZE should be larger than ONFIG_MQ_MAXMSGSIZE in any event.
CONFIG_NXCONSOLE_LINESEPARATION
This the space (in rows) between each row of test. Default: 0
CONFIG_NXCONSOLE_NOWRAP