nanogui: Microwindows 0.89pre8 released (long)


Previous by date: 16 Nov 2001 05:31:11 -0000 Re: Touchscreen problem, Gianci
Next by date: 16 Nov 2001 05:31:11 -0000 Will Microwindows plan to support i18n?, Jimmy Lin
Previous in thread:
Next in thread: 16 Nov 2001 05:31:11 -0000 Re: Microwindows 0.89pre8 released (long), Greg Haerr

Subject: Microwindows 0.89pre8 released (long)
From: "Greg Haerr" ####@####.####
Date: 16 Nov 2001 05:31:11 -0000
Message-Id: <02ba01c16e58$a4cf21e0$3aba46a6@xmission.com>

Microwindows version 0.89pre8 is released and available at:
ftp://microwindows.org/pub/microwindows/microwindows-0.89pre8.tar.gz

A very large number of enhancements are included in this pre-release. The code
base is
stable, and is being used in a variety of other open source projects, including
the Mozilla
web browser, SMPEG digital video viewer, SDL gaming/direct video library,
rdesktop
RDP Windows thin client, and the PIXIL operating environment. The plan is to
release
 final version 0.89 after a several week comment period for last-minute bugfixes
and
changes.  Following is a list of additional available source compatible with
this release:

ftp://microwindows.org/pub/microwindows/sdl113c.tgz - SDL v1.1.3
ftp://microwindows.org/pub/microwindows/smpeg040c.tgz - SMPEG v0.4.0
http://rdesktop-nanox.tuxia.org/rwin-nanox-1.5.0.tar.gz - rdesktop v1.5.0
http://ftp.mozilla.org/pub/mozilla/releases/mozilla0.9.4/src/mozilla-source-0.9.
4.tar.bz2 - Mozilla v0.9.4

Major enhancements for this release include:

Dynamic portrait mode - Nano-X now supports display in all four portrait
orientations
without requiring a server restart.  The startup options -N, -L, -R and -D force
the
server into normal, left, right and upside-down display.  The -A option
specifies
automatic re-orientation to the left or right successively with a mouse-down at
the left or
right edge of the screen.  Run ./nxkbd.sh to see this in action.  The server
sends a new
GR_EVENT_TYPE_PORTRAIT_CHANGED event when the server orientation
changes, allowing applications to resize to the new display form factor.  There
are still
some issues using portrait mode with offscreen pixmaps; this version requires
offscreen
pixmaps to be reconstructed when the above event is received.

StretchBlit driver support - The Win32 StretchBlt and Nano-X
GR_BACKGROUND_STRETCH functions now allow images and blits to use a fast
stretchblit driver entry point for resizing image data.

eCOS operating system support - The complete system can be built for the eCos
operating system on the Compaq iPAQ, including all Nano-X demos, linked together
with the eCos OS and executing as multiple threads.

Direct client-side framebuffer mapping - This feature was added to implement
extremely
fast MPEG video decoders using Microwindows.  A client Nano-X application
desiring
direct access to framebuffer video memory uses the GrOpen ClientFramebuffer API
call
 to initially mmap() the actual framebuffer as shared memory in the client
process address
space.  Then, the GrGetWindowFBInfo API call can be used on any window ID to
have
Microwindows compute the upper-left hardware pixel address, along with an
appropriately faked line pitch (bytes per scan line) that makes the client
application think
the window is in fact the entire addressable framebuffer video memory.  The
client can
then draw directly into the window, while Microwindows continues to draw the
window
decorations around the window, while continuing to handle the normal window
move,
map, and other event reporting/management actions.

16 ROP drawing modes for all graphics drawing and blitting - All possible source
destination copy, xor, and and or logical functions are now possible for drawing
and blit
operations.  See include/mwtypes.h::MWMODE_* functions for details.

Many additions to Nano-X API required for Mozilla, SMPEG, SDL, rdesktop, and the
PIXIL Operating Environment - A large list of new API calls have been added for
a
variety of enhancements. Following is a quick description of what's new:

GrNewCursor, GrDestroyCursor, GrSetWindowCursor - server side cursors
GrNewBitmapFromData - X11 compatible bitmaps from C data structures
GrQueryTree - search server window list
GrDelay - msec standard delay
GrSetBackgroundPixmap supports GR_BACKGROUND_STRETCH
GrCreateTimer, GrDestroyTimer server-based periodic timers
GrSetPortraitMode - set server runtime portrait mode
GrOpenClientFramebuffer, GrCloseClientFramebuffer - direct framebuffer access
GrGetWindowFBInfo - get framebuffer information about window
GrLoadImageFromBuffer, GrDrawImageFromBuffer - image routines not requiring file
i/o
GrGetFontList, GrFreeFontList - font query routines
GrPeekWaitEvent - wait for input, then peek event
GrSetGCClipOrigin - set user clip region x,y offset


Large list of bug fixes and small additions - This version of Microwindows has
become
more stable, with the inclusion of very many contributions over the last 10
months.
Many structures have been expanded to include additional information.
See include/mwtypes.h and include/nano-X.h for more information.

Following is the complete ChangeLog:
Version 0.89pre8 - 15 Nov 2001 - ####@####.####
 * added MicroTouch DynaPro SC3 touchscreen driver and calibrator (Jordan)
 * added GrSetGCClipOrigin
 * removed most C++ style comments (Simon), cleaned up source tree
 * added GrPeekWaitEvent, blocks until at least one event is available, then
peeks
 * fix GrPeekEvent, was absorbing events
 * added win32 VK_ key translations for scancode MWKEY_ values
 * Mozilla and rdesktop enhancements (Matthew Wlazlo)
  ttyscan and x11 keyboard driver fixes
  GrGetFontList, GrFreeFontList, GdGetFontList
 * added USE_16BIT_ACCESS to fblin16.c to draw using short word stores only
 * implement all src/dst copy modes in fb/x11 blitters and win32 SetROP2/BitBlt
codes
  use MWMODE_COPY instead of MWMODE_SET
  use MWROP_COPY instead of MWROP_SRCCOPY
 * implement all 16 src/dst MWMODE_xxx operations (Matthew Wlazlo)
 * fixed alphablending for truecolor 555 systems
 * fix GdTimeout bug when usecs only specified (David Erickson)
 * check GC changed before fixing clip in GsPrepareDrawing, clip sometimes
incorrect
 * allow 0 timeout to cancel GrSetScreenSaverTimeout
 * changed check for /tmp/.nano-X to use access(), not stat()
 * revised reported x, y event values to be parent-relative
 * added Century's GrLoadImageFromBuffer, GrDrawImageFromBuffer
 * removed GPL restriction to Arc clipping routines w/permission Eero
 (24 Sep 2001)
 * added pid to GR_WINDOW_INFO for window ownership identification (Century)
 * fixed MWPIXELFORMAT for TRUECOLOR555
 * added patch to change mouse position when cursor moved with GrMoveCursor
 * removed incorrect GrReparent code with regards to child mapcount (temp fix)
 * added direct client-side framebuffer mapped window routines:
  GrOpenClientFramebuffer, GrCloseClientFramebuffer, GrGetWindowFBInfo
 * added rgb mask values, fb driver type to SCREENINFO struct
 * updated mou_tp.c for Yopy (untested), can use mou_yopy.c
 * fixed GrCheckNextEvent to return locally queued event first if any
 * fixed FREETYPE_FONT_DIR
 * added swap.h little/big endian swapping macros, fixed alignment bugs in
devimage.c
 * added GrSetPortraitMode, GR_EVENT_TYPE_PORTRAIT_CHANGED
 * added GsSetPortraitMode, GsSetPortraitModeFromXY, screen driver SetPortrait
entrypoint
 * reimplemented GdFillPoly algorithm for correctness
 (4th July 2001)
 * added DJGPP changes from Victor
 * added check for CONSOLE env var for /dev/tty to open, GrCopyArea fix and
  X11 scanline calc bug from Jordan Crouse
 * add patches for compiling with libc5 and default t1lib Latin1 encoding from
Tomasz
 * added Korean Hangul KSC5601 encoded font support and 16x16 fixed text font
from Kevin O
 * add byte swap in devimage.c, X11 driver changes, DPRINTF defaults to no
output
  GrRegisterInput/GrUnregisterInput use fd_set, -s on debug only from Steve Hein
 * add GrCreateTimer, GrDestroyTimer periodic timers from Gary James
 * added MWPACKED attribute packing define in mwtypes.h
 * added eCos port by Gary Thomas
 * ntetris game orientation patch (Xiang Lee)
 * translate 127 (DEL) to MWKEY_BACKSPACE in tty scancode (L.C. Chang)
 * fixed non-inited sizing field in nanowm (L.C. Chang)
 * added Microtouch rs232 touch panel driver mou_mt.c (Holger)
 * fix multiple GrClose bug (Gary)
 * update kbd_pipe.c (Murphy)
 * free memory in MwDestroyWindow
 (4th June 2001)
 * removed Nano-X widget directory (obsoleted)
 (15th May 2001)
 * temp removed driver DrawArea() calls in GdArea code (blit bug)
 * fix clip bug in GdReadArea
 * added portrait mode member to screeninfo struct (change all dr/scr*.c)
 * added down portrait mode
 * added dynamic portrait mode, nano-X [-ANLRD] startup portrait modes
 (13th Apr 2001)
 * implemented GR_BACKGROUND_STRETCH in GrSetBackgroundPixmap
 * fixed startup VTSWITCH time delay bug in win32
 * added StretchBlt, new screen driver stretchblit entry point
 * added direct .bmp file create on PRINT, added 16,24,32 bpp output
 (27th Jan 2001)
 * added GrDelay for msec delay
 * added GrQueryTree to obtain window parent/children list
 * ported nxroach! (run nxkbd.sh)
 * replaced GrClearWindow with GrClearArea, created GrClearWindow macro
 * experimental fix to GrReparentWindow when parent not mapped
 * added cursor id to GR_WINDOW_INFO
 * added server-side cursors, GrNewCursor, GrDestroyCursor, GrSetWindowCursor
 * removed GrSetBorderColor, changed to GrSetWindowBorderColor
 * added GrNewBitmapFromData

Have fun!

Regards,

Greg



Previous by date: 16 Nov 2001 05:31:11 -0000 Re: Touchscreen problem, Gianci
Next by date: 16 Nov 2001 05:31:11 -0000 Will Microwindows plan to support i18n?, Jimmy Lin
Previous in thread:
Next in thread: 16 Nov 2001 05:31:11 -0000 Re: Microwindows 0.89pre8 released (long), Greg Haerr


Powered by ezmlm-browse 0.20.