wiki:Packages/MicroWindows

Version 8 (modified by Pavel Pisa, on Oct 14, 2013 at 5:54:42 PM) (diff)

Add link to RTEMS Graphics Toolkit from MicroWindows page and some updates.

MicroWindows

This page provides a description of MicroWindows and instructions on how to build it and use it in your application.

<?plugin CreateToc? jshide
1 with_toclink1 ?>

Description

Nano-X is an Open Source project aimed at bringing the features of modern graphical windowing environments to smaller devices and platforms. The Win32/WinCE API implementation is known as Microwindows, and the Xlib-like API implementation is known as Nano-X. (The project was renamed from MicroWindows to Nano-X in 2005 to avoid any trademark disputes with Microsoft's Windows.)

The TCB-2, Fonix7000 and AMV TECHNIC I are three examples of RTEMS-based products also using Microwindows and Nano-X.

AMV TECHNIC I

More versions of MicroWindow/Nano?-X graphic libraries have been adapted for RTEMS and are actively used. Additional resources for whole set of graphics libraries and support including actual versions of MicroWindows are documented at RTEMS Graphics Toolkit page.

Building MicroWindows

Clone latest sources from MicroWindows/Nano?-X repository

git clone git://microwindows.org/microwin microwin

Configure for RTEMS

cd src cp Configs/config.rtems config

Select tool-chain and directories for desired RTEMS target system in config file. There is example of changes used for ARM CSB336 BSP

RTEMSTOOLSPREFIX = arm-rtems4.10- GRAYPALETTE = Y FBVGA = N HAVETEXTMODE = N NOMOUSE = Y RTEMS_BUILD = /opt/rtems4.10 RTEMS_BSP = csb336 RTEMS_TARGET = arm-rtems4.10

Then regular make clean and make all can be used to build libraries.

The latest MicroWindows/Nano?-X GIT version does not support well monochromatic displays with BPP smaller than 8. When support of BPP 1, 2, 4 is required it is safer to stay with older MicroWindows release. This is the case of AMV TECHNIC I system. Patches used to configure and build suitable MicroWindows version for that project together with corrections of native build under X for 64-bit Linux systems and cleaning some 16-bit integer incompatibilities for H8S targets can be found in next archive

http://cmp.felk.cvut.cz/~pisa/rtems/microwin-081202-patches.tar.gz

The patch series includes even implementation of minimal screen driver (mwin-driver-mx1sl.patch) for frame-buffer accessible directly at fixed address in application memory map.

Using MicroWindows in an Application

TBD - include configuration details and hints on where to start