Color Graphic display driver library packages for RGB and Grey-level display controllers.

Be up and running with your graphic display application using advanced features, such as text string and character output, soft-font handling, graphic drawing, and graphic symbol output, in just a few hours. Save weeks of hard programming.

    • Use of rotated transperant RGB symbols, and rotated anti-aliazed text, graphic drawing and graduated background
    • GUI with smooth transparent unicode font
    • GUI library for embedded RGB displays
    • GUI library for embedded displays
    • Rotate graphic images and text.
      Animate analog meter behavior
    • Unicode fonts for international text.
      Easy creation of multi-language GUIs
    • Create the GUI look and a menu style
      most optimum for your product type
    • Menu navigation. Animate soft keys
      or dynamic labels at physical keys.

    Display GUI driver libraries for RGB display controllers

      • GUI library for embedded grey displays
      • GUI with smooth transparent unicode font
      • Use of rotated transperant grey symbols, and rotated anti-aliazed text, graphic drawing and graduated background
      • GUI library for embedded displays
      • Create the GUI look and a menu style
        most optimum for your product type
      • Unicode fonts for international text.
        Easy creation of multi-language GUIs
      • Rotate graphic images and text.
        Animate analog meter behavior
      • Menu navigation. Animate soft keys
        or dynamic labels at physical keys.

      Display GUI driver libraries for Grey display controllers

      Color GUI display driver library package overview

      • RAMTEX provides Graphic RGB color and Grey-level Graphic-User-Interface (GUI) libraries for different groups of display controllers.
      • Common high-level C library interface to the application code. (Overview below)
      • Easy reuse of your GUI design across multiple display controller types. Simplify change of display module / display controller type in future hardware updates.
      • Each driver library package includes; full GUI driver library C source code, full display driver support for all members of the display controller family, an easy-to-read manual describing concepts, feature sets and function interfaces, and contains a lot of small examples.
      • Each driver library is internally optimized for the functionality, color types, and command set format of the individual family of display controllers. Check the library product pages for details.

      Graphic-User-Interface (GUI) feature overview

      • GUI library support for RGB and Grey-level display controllers
      • Common GUI feature set and interface to application. Promotes application source code reuse across GUI projects
      • Library is supplied as C source code.
      • Common high-level function interface
      • Library is designed for use with embedded processors. Small memory footprint.
      • Can operate directly on internal video buffer in the display controller chip. No need for a graphic video buffer in processor RAM.
      • Portable and C-compiler-independent source code with standardized I/O functions.
      • Character and text string functions.
      • Color text and graphic symbols.
      • Support for anti-aliased fonts
      • Support for transparent text
      • Tabs and column alignment support.
      • Viewports with scroll, auto-wrap and auto-alignment.
      • Switching between multiple viewports.
      • Graphic line drawing and pixel setting.
      • Graphic Rectangle and Block drawing.
      • Graphic buffer Cut and Paste.
      • Selectable foreground and background colors with both text and graphics.
      • Soft-font support.
      • Mono-space and Proportional fonts.
      • Support for extended character sets. UTF-8, UTF-16 and UTF-32 character strings, wide-char strings.
      • Support for UNICODE - inclusive multi-plane, extended codepage tables and ISO-IEC 10646.
      • Full UTF-8, UTF-16 and UTF-32 support, incl. conversion functions.
      • Free user definition of special symbols.
      • Transparent symbol pixels. Symbols can use any geometric form.
      • Fonts can be stored as two-color (B&W) or grey-scale symbols to optimize memory consumption.
      • Rotation of text and graphic symbols.
      • Fast block-swapping of foreground and background colors. Ideal for block cursors in menus and progress bars.
      • Touch screen support.
      • Full support for Virtual Fonts, icons, and pictures stored in external memory devices.
      • Full support for Virtual Files, text and appl. data stored in external memory devices.
      • Color LCD / TFT / OLED PC-simulator included for debugging of target applications with standard PC compilers.
      • Comprehensive easy-to-read manual with examples.
      • No run-time licenses and no use of third-party shareware.

      Description

      GUI Function Interface

      The powerful and flexible function interface provides the basic drawing features that make it simple for a programmer to create screen data fields, pull-down menus, pop-up menus, progress bars, etc. The library facilitates the creation of the GUI "style" and "look" most suitable for a particular target application area.

      The library functions are well modularized. Advanced features can be added successively to the basic GUI driver system. For instance: graphic support, symbol and icon support, soft-font text support, and viewport support. This makes it easy to adapt the library to the requirements of your application.

      Easy text handling and GUI "look" management

      Multiple viewports with wrap and scroll. A viewport defines a rectangular area on the screen with its own styling setup.

      Each viewport can be "styled" individually and are allowed to overlap. This makes it easy to mix styling on an area.
      Each viewport has its own virtual coordinate system. This facilitate creation of reuseable GUI functions.

      Within a viewport, text can be output as left or right-aligned, cut at the edges, or centered horizontally and vertically.
      Each viewport can have its own font, codepage, color, and output styling.
      Automatic text scrolling can be done individually for each viewport.
      This makes it easy reserve areas on the display for icons, and to prevent overwriting.

      Transparent support for graphical multicolor icons, semi-transparent symbols, and for black & white (two-color) symbols.

      A foreground / background color scheme is used for two-color symbols. This makes it particularly easy to handle colors in connection with text and line drawing, and when converting an existing program from a black-and-white LCD to a color LCD.

      The library function set facilitates the design of run-time adaptable GUI layouts. Promotes the design of reusable GUI API features, automatic screen sizes adaption, etc.

      Text, Fonts, International language support

      The library supports soft fonts for both mono-space and proportional graphic text. All font handling is done transparently by the library. The programmer just selects the required font and output a text string.

      Font support for UNICODE - inclusive multi-plane, 8-bit character sets, extended 16-bit character sets, national ASCII character sets and ISO-IEC 10646. Supports dynamic codepage look-up and segmented fonts. This makes it possible to reduce a large font so that it only contains those character symbols used by the application, while the C text strings remain unchanged. Ideal for memory-constrained embedded systems.

      Low RAM and ROM memory consumption

      The libraries are designed for small embedded processor systems, and optimized low memory consumption and low run-time overhead.

      Large soft-fonts, large graphic symbols, and similar memory consuming constant objects, can be located in external memory devices. Data is fetched directly in the order needed when rendering. No RAM load buffers needed.
      See Virtual Fonts for details.

      Display controller PC Simulation

      Start GUI programming and testing before your hardware is ready.

      The PC-mode display controller simulator for Windows supplied with all library packages allows you to program and logically test embedded GUI applications using common PC compilers from, for instance, Borland and Microsoft. Your application source code looks the same in PC-mode and target mode.

      Processor-independent C source code

      The libraries are written entirely in C using standardized function syntax for basic low-level I/O read and write operations. The library is supplied as C source code and can therefore be compiled with C, C++ or EC++ standard conforming compilers.

      Targets all common embedded processor families, from small 8-bit processor to embedded PCs.

      Create portable GUI applications

      The library function set facilitates the design of run-time adaptable GUI layouts. Promotes the design of reusable GUI API features, automatic screen size adaption, etc.

      The same GUI driver function interface is used for different display controller types. Changing to display modules using another display controller type is now a simple task. This makes it easier to create portable and reusable application software.

      Function overview  (Common for RGB-color and Grey-level libraries from 2022)

      Initialization and error handling

      ginit Initialize display module
      ghw_puterr Initialize display and output an error message at the center of the display
      gexit Release display resources
      gsetupdate Activate / deactivate delayed update
      ghw_err Report error status from hardware drivers
      ghw_dispoff Turn off display screen
      ghw_dispon Turn on display screen
      ghw_cont_set Set LCD contrast level (absolute)
      ghw_cont_change Change LCD contrast level (relative)

      Text output functions

      Ascii, UTF-8, UTF-16 and UTF-32 strings
      gputs Outputs a string.
      gputch Outputs a character
      gputcsym Outputs a symbol as a character
      gputsrot Outputs a string rotated in any direction.
      gputchrot Outputs a character in any rotated orientation.
      ggetcxpos Report cursor x position in character coordinates.
      ggetcypos Report cursor y position in character coordinates.
      gsetcpos Set cursor position in character coordinates.
      gsetpos Set cursor position in graphic coordinates.
      gsetcursor Set cursor size and type.
      gcursorblink Cursor blink function

      Text size functions

      Ascii, UTF-8, UTF-16 and UTF-32 strings with current font
      gpstrheight Report height in pixels of a multi-line string.
      gpstrlen Report string length in pixels.
      gpstrsize Calculate the width, height, position and lines in the current viewport.
      gpstrwidth Report width in pixels of the longest line in a multi-line string.
      gpwordlen Length in pixels of first word in a string.
      gstrlines Report number of text lines in a multi-line string.
      gsetspch Set text character spacing. Add extra pixel space between text string characters.
      ggetspch Report text character spacing.
      gsetspln Set text line spacing. Add extra pixel space between text lines.
      ggetspln Report text line spacing.

      Font functions

      B/W and Grey-scale, ISO and Unicode fonts
      gfgetcp Report codepage for a named font
      ggetfont Report font for the current viewport
      gselfont Select current font for viewport
      ggetfw Default width of current font
      ggetfh Height of current font
      gfgetfw Default width of a named font
      gfgetfh Height of a named font

      String analyze and convert functions

      Ascii, UTF-8, UTF-16 or UTF-32 string functions for secure copy or concatenate
      ggetch Fetch the first UTF character from the string. Increment the string pointer to the UTF character.
      gsizech Report the number of UTF characters required to represent the Unicode character value.
      gstrcat
      gstrncat
      Concatenate two UTF strings (the strings can be of different storage types).
      gstrcmp
      gstrncmp
      Compare two UTF strings (the strings can be of different storage types).
      gstrcpy
      gstrncpy
      Copy one UTF string to another (the strings can be of different storage types).
      gstrlen Find the length of any UTF string as the number of character values in the string.
      gstrlen_toNN
      gstrlen_16toNN
      gstrlen_32toNN
      gstrlen_wtoNN
      Find the length of any UTF string as the number of string storage units to allocate in memory before doing a string copy, while optionally doing a string format conversion.

      Display multi-screen functions

      gscinit Initialize a newly allocated screen buffer and make it the owner of the resources.
      gscisowner Check whether a screen buffer is the current owner
      gscsize Calculate required size for screen buffer allocation
      gscsave Save the complete screen and library settings in screen buffer
      gscrestore Swap to another screen. Restore screen and library settings from screen buffer and make it the current owner

      Graphic functions

      gcarc Draw corner arcs as a full circle, half circle, or quarter circle. Draw as perimeter, as filled area, or both.
      gcircle Draw a circle as perimeter or as filled area. Any perimeter fragment using any radius can be drawn. Center may be located outside screen.
      gsetpixel
      gcsetpixel
      Write a logical pixel using current viewport color settings or a specific color.
      ggetpixel
      gcgetpixel
      Read a pixel as a logical value or as a color.
      grectangle
      gcrectangle
      Draw a rectangular box using the current viewport color settings or a specific color.
      groundrect Draw a rectangle with rounded corners. Create any figure from a pure rectangle to a circle. Draw as perimeter, as filled area, or both.
      gmoveto Set start position for line draw
      glineto Draw a line from last position to new position
      ggetxpos Report current pixel x position
      ggetypos Report current pixel y position
      ghw_rdblk Read display area to buffer
      ghw_restoreblk Write the display area stored in the buffer back to the same position as it was read by ghw_rdblk
      ghw_wrblk Write buffer to display area
      ghw_blksize Calculate needed buffer size for read block

      Symbol (icon) functions

      gsymsize Calculate minimum buffer size to hold a symbol in the current color mode
      ggetsymw Get the pixel width of a character symbol using the current font
      gputfsym Output a graphic color or B&W symbol from a font
      gputfsymrot Output a graphic color or B&W symbol from a font using any rotation direction. Rotation anchor can be outside symbol or screen, creating a pendulous effect.
      gputsym Output a graphic color or B&W symbol
      gputsymrot Output a graphic color or B&W symbol using any rotation direction. Rotation anchor can be outside symbol or screen, creating a pendulous effect.
      ggetsym Read display area as a symbol in the current color mode
      gfillfsym Fill area with a color or B&W symbol from a font
      gfillsym Fill area with a color or B&W symbol
      gsymh Report pixel height of symbol
      gsymw Report pixel width of symbol

      Viewport functions

      ggetvp Report graphic viewport size
      gsetvp Set graphic viewport size
      ggetvpnum Report viewport number
      gsetcvp Set character viewport size
      gsetupvp Initialize all viewport parameters
      ggetvpw Report current viewport width
      ggetvph Report current viewport height
      gselvp Select viewport to be current
      gfillvp Fill rectangular area in viewport
      ginvertvp Invert rectangular area in viewport
      gresetvp Reset viewport to default
      gresetinitvp Reset viewport to same state as after ginit() call
      gresetposvp Reset viewport coordinates to full screen. Leave font and text mode setting unchanged
      gclrvp Clear viewport
      gsetmode Set normal, inverse, alignment, wrap, scroll, auto clear, tranparency and blending modes
      gscrollcvp Scroll character viewport
      gvpxl Report left edge coordinate for viewport
      gvpxr Report right edge coordinate for viewport
      gvpyb Report bottom edge coordinate for viewport
      gvpyt Report top edge coordinate for viewport
      ggetapp Get pointer to application-specific data for viewport
      ggetvpapp Translate application-specific data pointer to viewport number
      ggetcolorb Report background color for viewport.
      ggetcolorf Report foreground color for viewport.
      gsetcolorb Set background color for viewport.
      gsetcolorf Set foreground color for viewport.
      ghw_palette_wr Write in a new color palette.
      ghw_palette_rd Read out current color palette.

      Tabulator functions in viewports

      gsettab Set a tab position
      gsettabs Set tab spacing
      gclrtabs Clear tab(s)

      Reuse GUI application designs

      The GUI application interface for color and grey-level display controllers is upward compatible with the GUI application interface for Black & White display controllers.
      Creates a secure migration path when moving an application from using a B&W display to using a color display.