--- Begin Message ---
I have mailed TeSche a couple of times without answers.
Does anybody on list how I could contact him? I'd ask about
the status of W because I have made 'quite a few' changes
to W and TeSche had thought about putting W under GPL...
In the meanwhile you could send your patches to me (I should
have this account at least until the end of the year).
Anyway, my own version of W is at:
http://www.modeemi.cs.tut.fi/~puujalka/bin/W/packets/
Get packets with 'eeros' in their name. I've also updated
W toolkit quite heavily.
- Eero
Here's a list of changes I have made to w1r3pl2:
* Window resizing: resizing can now be done only with left
button (right tops/bottoms), and if window size isn't
changed, you can move it. This is especially handy when you
got a small screen and very large windows.
* Made a new BMONO monochrome driver that is byte order neutral.
It's converted from the PACKEDMONO driver either by changing
long accesses to byte access or using byte order conversion
function, whichever seems easier/faster.
* Updated SVGAlib initialization code to work with DIRECT8 and
BMONO drivers.
* A couple of additional text effects: changed W server
printchar function to two functions, normal and style
printchar (as text output speed is crucial, a different
routine for no styles) and moved printstring from platform
dependent drivers to generic. Adapted server structures and
font loading functions to new font header format.
* Clients get now more font information and fonts are loaded
with family/size/styles instead of font *filename* which is
now composed on the server side. People won't need to know
anymore the font filename extension, in which order font
style letters are in the filename etc... This needed
changes on most of the programs, so it was a high time to do
it.
* wconfig file can now have 'fontfamily' and 'fontsize'
variables for selecting default values for clients which
don't specify one. 'titlefont' and 'menufont' variables
specify filenames for fonts used for server window titles
and menu and 'fontpath' the path for the fonts. For all of
these there are of course defaults too. See 'wconfig' for
more.
* Root menu items strings are now allocated dynamically. The
maximum number of items is still static, but you can change
it from server/config.h.
* Added checks to several places where strings are written to
static buffers or made buffers allocated when needed (might
take less memory and is definately safer).
* Added graphics modes to dithered routines on all drivers.
* moved server BITMAP creation to graphics drivers.
* graph/init.c allocates now the temporary BITMAP used
with the above routines (for clipping chars etc.).
* changed W socket filedescriptor type from short to int and
moved from loop.c termination functions to main.c and some
global variables to files where they are initialized. I
might later put them into a global struct to be tidy.
* graphics drivers won't include pakets.h and proto.h anymore
(required some changes to some include files too).
* fixed get/putblock routines (mostly my own bugs...).
* New w_put/getblock() graphics conversion (line-by-line)
routines.
* PBM loading and writing functions.
* XPM like **char array reading into BITMAP (adapted from code
in wcpyrgt, mostly untested).
* Some local clipboard functions (moved from Kay Roemer's W
toolkit).
* fixed man3/*.3w manual page names to correspond to the
actual Wlib function names and added quite a few new pages.
* W programs use the new font loading syntax.
* WTerm sets now COLUMNS and LINES variables as xterm does.
These are needed with the wterm terminfo entry I created
as Wterm can't change terminfo definitions on the fly.
Terminfo entry is needed as ncurses programs (like less)
don't seem to work properly with plain termcap.
* Made Weyes and Wclock resizable and changed Weyes to use
ellipses instead of circles ;-).
* changed the exit key on several programs from ESC to 'q'.
ESC was an unfortunate choice because many terminals use
it in their special key sequences. Imagine pressing up
arrow in the middle of hectic wjewel game...
* changed 'srand(clock())' to 'srand(time(0))' in a couple of
games as clock (ticks since program start) can well give the
same seed on several occasions.
* wdragon bitmap includes are now byte order neutral.
* included a couple of new Wlib programs:
fontedit, lsys, ring/d, wbm, wchars, wjewel,
wrobots, wwyrms
and wjpeg script.
* Converted docs for above into manual pages and run all
manual pages through ispell.
* a W2Xlib (Wlib over Xlib) emulation library. Now you can
use X versions of ddd, Purify, Sentinel etc. to debug your
W library and W toolkit based programs... :-)
--- End Message ---