- Notifications
You must be signed in to change notification settings - Fork0
djipi/microwindows
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Microwindows or Nano-X is a small graphical windowing system that implementsboth Win32 and Nano-X (X11-like) APIs for clipped graphics drawing in windowson Linux, Mac OS X, EMSCRIPTEN, Android and other platforms. It isOpen Source and licenced under the the Mozilla Public License.For creating GUIs, the Nuklear immediate mode GUI, Win32 builtin controls,and TinyWidget's controls based on Nano-X are included.FLTK can be used with the X11 compability library NX11.
This is a slightly outdated overview of the system:
Some of the supported platforms are listed at the bottom on the left side. Next tothat there are available screen drivers, mouse drivers and keyboarddrivers. The Nano-X / Microwindows engine is the core code that implementsall drawing and clipping, with the Win32 and Nano-X graphical windowing APIs implemented in seperatelyconfigurable layers on top of that. The engine is configured to use variousOS platforms and associated screen, mouse and keyboard drivers, or bare hardware.The Nano-X API and the Win32 APIs are used to write applications.To provide close X11 compatibility the NX11 librarycan be built on top of the Nano-X API, which allows X11 applications to be linkedand run without recompilation. The FLTK GUI toolkit runs based on NX11.
- NEW: Microui immediate-mode UI library port to Nano-X
- NEW: PDF viewer and MP4 media player support on Nano-X through FBPDF and FBFF projects
- NEW: updated Nano-X window frame drawing code resembles Nuklear UI
- NEW: Nuklear immmediate-mode GUI apps now supported in seperate windows
- NEW: run multiple simultaneous Win32 apps on Linux, OS X and in a browser
- original classic shareware Doom v1.10 ported to Nano-X
- run X11 or Win32 applications in a browser using EMSCRIPTEN
- provide an excellent GUI for small embedded devices with FLTK, TinyWidgets or Win32
- port the FLTK GUI toolkit to small platforms
- linking an application with Microwindows can provide it with a GUIon console based Linux distros
- provide Xlib support for platforms without Xlib
- run FLTK or Win32 applications on Android phones
- Portrait and Landscape modes and auto-flipping are supported for handheld devies
Microwindows is very portable, is written in C and can be used on a wide rangeof platforms.
Currently supported platforms includeLinux, Mac OS X, Android, EMSCRIPTEN,Nuklear GUI, Windows, Raspberry Pi, DOS DJGPP, RTEMS, ECOS, Sony PSP, Atari Jaguar, Nintendo DS and more.
Currently supported screen drivers includeMemory-mapped framebuffer, X11,SDL 2, Allegro 5, Windows and an X11 based framebuffer emulator.
Support for cross-compiler toolchains onx86, x86_64, ARM, M68K, PowerPC and MIPS,big- and little-endian, and other processors.
The Nano-X Window System has a layered design. At the lowest level there aredrivers for screen output as well as mouse and keyboard input. Touch inputdevices are also supported. Drivers are available forX11, frame buffer,SDL, the Allegro graphics library, VESA or the SVGA library. Additionaldrivers can be added to port Microwindows to more platforms.
At the mid level, a portable graphics engine is implemented, providingsupport for line draws, area fills, polygons, clipping and 1, 2, 4, 8, 15, 16, 24 and 32 bit color models.
At the upper level, the Nano-X/NX11 and Win32 API's are implementedproviding access to the graphics applications programmer.
The Nano-X Window System can be compiled either as a separate server forseveral clients or linked together to a single, standalone library.
The main Nano-X web site is athttp://www.microwindows.org
To build Microwindows, see microwindows/src/READMEplus the faq files in the doc directory. For Android there is anapplication note in the doc directory. The Atari Jaguar requiresa specific treatment.
An HTML based FAQ and Architecture document are available from the web site.
The chief maintainer of the project is Greg Haerrgreg@censoft.com
Microwindows and Nano-X issues can be discussed in Discussions or by openingan Issue.
About
The Nano-X Window System
Topics
Resources
License
Stars
Watchers
Forks
Packages0
Languages
- C93.1%
- C++4.9%
- Common Lisp0.8%
- Makefile0.4%
- Shell0.2%
- Tcl0.2%
- Other0.4%