W is a simple, socket based, two-color
window system by Torsten Scherer (and has no relation to
that better known X's predecessor with a same name). W 1 release 4 beta
main features are:
- Uses sockets for communicating with client applications.
- Supports line, box, circle, ellipse, polygon and bezier graphics
functions in solid and patterned modes. Only one line width.
- Replace, clear, invert and transparent graphics modes (block
and text functions use only replace mode).
- Supports both monospaced and proportional bitmap fonts (at the
moment there are only monospaced fonts available). Different font
styles can be achieved by setting the desired font style for the
window or by loading an appropiate font.
- Graphics primitives are offset to a window and window contents
are stored by the server (redraws are performed by the server).
- Server has window manager builtin (focus follows mouse).
- Windows can have subwindows. Currently windows have only close
and iconization gadgets. Window resizing is coming.
- A widget toolkit for easing up user interface creation. Currently
available widgets include different containers: box, form, menu,
(Tk style) packer, pane, shell (=root window), top, viewport +
composite / `simple' widgets: arrow-, check-, push-, radiobutton,
dial, drawable, edittext, getstring, html (HTML-1), icon/label,
listbox, menu, popup, range, scrollbar, text, topwindow and vt
- Server is two-color, but supports planar (packed) and chunky
(direct) color graphics modes in addition to monochrome. Fourth
revision will support color setting.
- Small. W server and applications take about 1/4 of the RAM and
disk space needed by X (when comparing statically linked binaries).
- Has been reported to work on m68k Linux, Atari MiNT, SunOS and
Amiga NetBSD. A x86-Linux port with SVGAlib based framebuffer
emulation and a MacMiNT version are on the works. See for technical
info to see what graphics modes W supports.
To compile and use W you'll need a small unix like setup with
networking and at least 4MB of ram and free disk space.
The standard W1R3 sources are available through TeSche's
Kay's got now a page for his
Toolkit. It will help a lot in making more complex applications.
W is fairly portably but the screen is expected to be accessed as any
other part of memory (eg. mmap()'ing the framebuffer device) and
linearily. Planar bitplane graphics drivers use ATM big-endian byte
As W server interface and sources are under a lot of
modifications, there's not much point in obtaining the developement sources unless you'll want to be a W
developer too. To this date everything has needed a
recompilation or linking after a new release.