Subject:
Re: [nanogui] status of nano-X/microwindows project
From:
"phil song" ####@####.####
Date:
25 Jun 2010 02:39:15 -0000
Message-Id: <201006251038571253461@techtrex.com>
Hi,Greg Haerr,
Good news for us!Thank you!
Best regards,
phil song
2010-06-25
======= 2010-06-25 10:13:12 The letter which you wrote before:=======
>Hi guys -
>
>It's been quite a while since I've communicated about what's
>happening with our nano-X/Microwindows project and development
>plans. As many know, other than having moved to a git repository
>earlier this year, the website hadn't been updated in five years.
>Prior to the beginning of this year, I had been involved in other
>endeavours, and hadn't had time for new development, hardly
>enough time to apply the many patches that have been received
>(thank you for all of them!)
>
>The good news is that there have been quite a few changes
>in the last six months, and they're finally to the point that
>they will be very useful and relevant for everybody using the
>project. I have been working very hard daily the
>last three months and have applied very many of the patches
>received that can be tested, and have achieved some great
>new enhancements. All of this is now checked into git, and
>available on the current microwindows-src-snapshot.tar.gz tarball.
>
>While my initial plan (for years) was just to get all the patches applied
>and ship them as v0.92, there have been some nagging concerns with
>the underlying implementation, and I've finally decided that it
>would be far better to release something with major benefits, rather
>than effectively a patch release. We are finally ready to consider
>releasing a much improved nano-X/Microwindows, that I think
>everyone will want to upgrade to.
>
>I have made big architectural changes to some lower level algorithms
>and data structures, in the engine and driver layers. The new driver
>architecture is not fully completed, but it is working. There have
>only been patches applied to the nano-X and win32 API layers,
>so all programs should continue to run. Below I give an
>overview of these new features, with followup emails if requested
>with more detail on each. Enjoy!
>
>*Cool new features
>
>o huge speed improvements in image drawing and font glyph drawing
> (10x faster, no inner loop procedure calls or if statements, drawing
> directly to framebuffer, with clipping at upper level)
>
>o new fast convblit architecture supports builtin, PCF, FNT, Freetype 2,
> and Adobe Type 1 fonts for all rotations (normal, right, left, down)
> on all bpp (1,2,4,8,15,16,24,32) for non-aliased text drawing, and
> full anti-aliasing for FT2 and T1 fonts on 15,16,24 and 32bpp (other
> drivers possible, just not written). This allows truetype font display
> on all resolutions, including 1bpp.
>
>o fast blit is used for all RGB and RGBA images (with SRCOVER
> alpha compositing) in all rotations. PNG, TIFF and PNM images,
> and some JPG are currently converted internally to RGB/RGBA format.
> Other image decoder conversion coming.
>
>o fallback support to old code when new driver conversion blit
> not available. Images or display formats not supported or
> written/tested with the new architecture fall back to using
> the older code and drawing pixel-by-pixel (w/alpha).
>
>o endian-neutral blits, with explicit support for 32bpp BGRA,
> 24bpp BGR, and RGB 565/555 framebuffer formats. 32bpp
> ARGB and any other combination easily possible with small
> changes in new conversion blit infrastructure. Pixels are always
> laid out in proper byte order regardless of processor endianness,
> without #ifdefs.
>
>o Freetype 2/Adobe T1 driver rewrites - scaleable width now also
> specifiable, and full caching and cmap cache for FT2, using v2.3.12.
> Nagging PCF font issues fixed.
>
>o FBE - Framebuffer emulator. Emulates 1,2,4,8,15,16,24 and 32bpp
> on X11 to display nano-X server drawing to mmap'd framebuffer.
> Great for debugging or seeing a different pixel format than your
> desktop. Display is completed, need to add support for X11
> mouse and keyboard.
>
>o major driver cleanup - deprecate/combine stretchblits, fold drawarea
> into new blit architecture. Still working on GdArea/GdBlit
> consolidation. I will write an article on this new architecture.
>Drivers
> are simpler as the conversion blits are handled at the engine layer
> using macros and inline procedures, near-duplicated code isn't
> spread out across each driver.
>
>o support for upcoming compositing engine with very fast SRCOVER
> alpha blending in all blits, all rotations. Macros are used for all
> blending, for understandability and testing.
>
>o minor items: 64-bit compatibility, Sony PSP, Blackfin, RTEMS, eCos
> and tomtom ports. Win32 dialog, messagebox and control enhancements.
> MWROP changes/simplification. Most all 0.92 patches applied.
> Builtin window manager for LINK_APP_INTO_SERVER.
>
>o deprecate Freetype v1
>
>o near-completed: fonts.alias/fonts.dir and multiple directory XLFD
> font lookup and matching for PCF, Truetype and T1 fonts.
>
>o coming: gamma correction for alpha-blending
>
>*Needed
>
>o Documentation update (doxygen created PDF, HTML version also
> with updated architecture articles). Integration of Gary James'
> old documentation site.
>
>o Website redesign and update
>
>Please feel free to try it out or comment.
>
>Have fun!
>
>Greg
>
>
>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: ####@####.####
>For additional commands, e-mail: ####@####.####
>
= = = = = = = = = = = = = = = = = = = =