PRODUCTS

OUR CUSTOMERS

SERVICES

SUPPORT

DOWNLOADS

PARNTERS

a Trinity Convergence company

::   About Us   ::   News   ::

PEG Pro

PEG+

C/PEG

PRESS

PEG Developers Toolkit

Supported RTOS & Compilers

Supported Hardware

Licensing

General FAQ

Free Evaluation Kit

General PEG FAQ

General

Target Environment Questions

Operating System Support Questions

General PEG+ Questions

General C/PEG Questions

Is Linux Supported?

Yes. See LinuxPEG for a list of Linux distributions.

What is PEG?

PEG is a portable embedded GUI library, API, and set of development tools that are designed to help you create a professional quality GUI for your real-time, multi-tasking embedded application.

What is LinuxPEG?

LinuxPEG is a derivative of PEG that has been designed to run on any Linux distribution. LinuxPEG's development tools (WindowBuilder, FontCapture, and ImageConvert) support GUI development on a Linux host running the X11 Windowing System.

How is PEG licensed?

PEG is licensed on a per-developed-product basis with usually no royalty fees.

For more information see Licensing.

Is there a royalty fee for using PEG?

There are usually no royalty fees. This makes PEG perfect for projects with constrained budgets.

For more information see Licensing.

How much does a PEG license cost?

The cost of a PEG license depends on the type of license that is purchased. To receive a price quote please contact Sales. For license information see Licensing.

What is included in the PEG package?

The package includes the PEG class library; example application programs; set of development tools including PEG WindowBuilder or C/PEG WindowBuilder, FontCapture, and ImageConvert; hardware interface objects for common video configurations and input devices; screen driver templates; string functions; RTOS integration documentation and user documentation.

Can I download a PEG demo?

Yes, a variety of PEG demos that run on a PC or reference platform are available on the Demos page.

Are two-byte character sets supported?

Yes, PEG supports supports two-byte character sets such as Cyrillic, Han, Katakana, and Hiragana.

Can I use a very large character set in a memory-limited application?

Yes, PEG's exclusive CompositeFont technology supports the use of very large character sets in memory-limited applications.

What fonts come with PEG, and how can I make more?

PEG is delivered with two fonts, Menu Font and System Font. You can use the FontCapture utility that comes with PEG to produce any number of additional fonts.

Can I use FontCapture to capture any Windows font?

We would NOT recommend that you capture and use a copyrighted Windows font unless you first contact the font manufacturer and obtain permission to use the font in this manner.

Do you know where I can find additional fonts to use in my product?

For a list of free and commercial font sources see Fonts Links.

Can PEG's appearance be customized?

Yes, PEG can be enhanced or simplified to suit your needs. PEG makes it easy to design a unique user interface and distinguish your product from the competition.

What are the development tools included with PEG?

The development tool set includes PEG WindowBuilder or C/PEG WindowBuilder, FontCapture, and ImageConvert. PEG is the only GUI product on the market that offers such a complete set. These tools will significantly reduce your development time.

For more information see Development Tools.

Is PEG training offered?

Yes, we offer customer training at our corporate headquarters or your location. To make arrangements for a training session contact sales@swellsoftware.com.

What are the processors that PEG supports?

PEG is designed to work on any embedded CPU. Due to performance requirements PEG runs best on a 16-bit or better CPU running at 16 MHz or higher.

See Target Processors for more information.

Does PEG support processors that contain internal video controllers?

Yes, we provide screen driver templates that support CPU embedded controllers and those with hardware acceleration capabilities.

Is it easy to port PEG to a new processor?

Yes, because the majority of PEG's library is hardware independent and its hardware interface objects are well defined. The library’s portability has been verified because PEG applications are running on most of the common embedded processors.

Does PEG support any reference platforms?

Yes, PEG supports a variety of popular reference platforms.

For more information see Reference Platforms.

What are the display devices that PEG supports?

For devices that are not on the list, we provide screen driver templates to help you create your own driver. Using a template, your will only need to write three functions; GetVideoAddress(), SetupPalette(), and ConfigureController().

What are the video controllers that PEG supports?

For controllers that are not on the list, we provide screen driver templates to help you create your own driver. The templates support both external and internal (CPU embedded) controllers including those with hardware acceleration capabilities.

What are the input devices that PEG works with?

PEG supports all standard input devices including mouse/joystick, touch screen, keyboard/keypad, and soft keys.

What are the screen drivers included with PEG?

A set of screen driver templates is provided for 1-bpp (monochrome) through 24-bpp (TrueColor RGB) video output and screen resolutions of 1 x 1 to 65535 x 65535 pixels. They are designed to work with any CPU architecture that supports direct, linear access to the video memory buffer.

PEG is fully integrated with RTOS messaging, memory management, and synchronization services. PEG input devices are interrupt driven and use RTOS services to communicate user-input information to the GUI. This yields the lowest possible overhead and the only true real-time multi-tasking GUI environment available.

For more information see RTOS Support.

Does PEG need a file system for normal operation?

No, PEG does not need a file system for normal operation.

What is PEG's level of real-time awareness?

PEG is fully integrated with RTOS messaging, memory management, and synchronization services. PEG input devices are interrupt driven and use RTOS services to communicate user-input information to the GUI. This yields the lowest possible overhead and the only true real-time multi-tasking GUI environment available.

For more information see RTOS Support.

Is it easy to port PEG to an RTOS?

Yes, because PEG makes no assumptions about the software environment. OS-specific dependencies are encapsulated and well documented. Included are examples that you can use to create new interface classes for any environment.

For more information see RTOS Support.

Can PEG run standalone without an RTOS?

Yes, PEG can be run standalone without a multi-tasking kernel. This model is often used in smaller, less complex applications.

Is Linux Supported?

Yes. See LinuxPEG for a list of Linux distributions.

How much does a PEG+ License cost?

The cost of a PEG+ license depends on the type of license purchased. To receive current pricing information contact Sales. For license information, see Licensing.

What is the PEG+ footprint size?

A minimum PEG+ footprint requires roughly 100K of code space, 4K of stack, and 2K of dynamic memory. A typical full-featured PEG GUI requires roughly 120K of code space, 4K of stack, and 8K of dynamic memory.

Can I get an evaluation copy of PEG+?

Yes, you can download a PEG+ evaluation copy after we have received a signed evaluation agreement. You can print and sign the form here: Evaluation Request form.

Does PEG+ support multi-lingual applications?

Yes, in addition to Latin character sets, PEG+ supports two-byte character sets (such as Cyrillic, Han, Katakana, Hiragana) and UNICODE string encoding. PEG+’s exclusive CompositeFont technology supports the use of very large character sets in memory-limited applications. PEG+ also includes a String Table Editor and set of compiler-independent “C” string library functions.

Is the PEG+ library portable?

Yes, this is achieved primarily by abstracting all hardware-dependent functionality. The vast majority of the PEG+ library is completely hardware-independent relying on well-defined hardware interface objects to provide a consistent, simple, and reliable set of I/O methods.

What are the requirements for using PEG+?

PEG+ is designed to work with any EC++ compiler/debugger combination and on any embedded CPU. For multi-tasking environments, the target's RTOS must support the means for inter-task communication via messages. It is also useful if the RTOS includes support for periodic timer interrupt services and semaphore protection of critical code sections. These RTOS features are typically found in commercial-quality RTOSs.

How do I get the latest PEG+ release?

You can download the latest release if you have a valid technical support contract and a user ID and password.

Can I download new PEG+ releases online?

Yes, if you have a valid technical support contract and a user ID and password.

Can I download the latest PEG+ video controller drivers?

Yes, the latest drivers are available at Drivers.

What are the compilers PEG+ supports?

PEG+ has been verified with a variety of popular C++ compilers.

What are the GUI objects included with PEG+?

PEG supports a rich and growing compliment of GUI object types.

What are the drawing primitives included with PEG+?

PEG+’s drawing primitives are useful to perform custom drawing at the application level. They can be invoked at any time by your application level software.

How much does a C/PEG License cost?

The cost of a C/PEG license depends on the type of license purchased. To receive current pricing contact Sales. For license information, see Licensing.

What is the C/PEG footprint size?

A minimum C/PEG footprint requires roughly 50K of code space, 4K of stack, and 2K of dynamic memory. A typical full-featured C/PEG GUI requires roughly 100K of code space, 4K of stack, and 8K of dynamic memory.

Can I get an evaluation copy of C/PEG?

Yes, you can download a C/PEG evaluation copy after we have received a signed evaluation agreement. You can print and sign the form here: Evaluation Request form

Does C/PEG support multi-lingual applications?

Yes, in addition to Latin character sets, C/PEG supports two-byte character sets (such as Cyrillic, Han, Katakana, Hiragana) and UNICODE string encoding. C/PEG’s exclusive CompositeFont technology supports the use of very large character sets in memory-limited applications. C/PEG also includes a String Table Editor and set of compiler-independent “C” string library functions.

Is the C/PEG library portable?

Yes, this is achieved primarily by abstracting all hardware-dependent functionality. The vast majority of the C/PEG library is completely hardware-independent relying on well-defined hardware interface objects to provide a consistent, simple, and reliable set of I/O methods.

What are the requirements for using C/PEG?

C/PEG is designed to work with any C compiler/debugger combination and on any embedded CPU. For multi-tasking environments, the target's RTOS must support the means for inter-task communication via messages. It is also useful if the RTOS includes support for periodic timer interrupt services and semaphore protection of critical code sections. These RTOS features are typically found in commercial-quality RTOS's.

How do I get the latest C/PEG release?

You can download the latest release if you have a valid technical support contract and a user ID and password.

Can I download new C/PEG releases online?

Yes, if you have a valid technical support contract and a user ID and password.

Can I download the latest C/PEG video controller drivers?

Yes, the latest drivers are available at Drivers

What are the compilers C/PEG supports?

C/PEG has been verified with a variety of popular C compilers.

What are the GUI objects included with C/PEG?

C/PEG supports a rich and growing compliment of GUI object types.

What are the drawing primitives included with C/PEG?

C/PEG’s drawing primitives are useful to perform custom drawing at the application level. They can be invoked at any time by your application level software.