Hi, I have looked much more extensively at all the changes that are in the WDTV source tree, based on a release after 0.90, but before 0.91.
I see that you have been quite busy, and there are still quite a few items that have been added, which will need to be moved into 0.92 git in order to use the current codebase. These items include: o engine/devmalloc.c STATIC memory allocations o static buffers for images o NO_CHARMAP_WORKAROUND fix in font_freetype{2}.c o drivers/scr_em86xx.c and scr_smp863x.c screen drivers o MWROP_COPY_RK and MWROP_COPY_IK handling in 16 and 32bpp drivers o TRANSLATE_ESC handling in kbd_tty.c o brightness handling (requiring float) in devopen.c o chinese font and HBF handling in freetype 2 o fast draw enhancements in devdraw.c::GdDrawImage o jpeg setjmp and EOI handling o png alpha channel and BGR handling I am very interested in helping move all required changes into the current pre-0.92 source tree, but have some questions, which I've outlined below. I would like to know whether you're already trying to move to 0.92, given it doesn't contain any of the features above (yet!). Here are my comments on each of the above, in more detail. o engine/devmalloc.c STATIC memory allocations o static buffers for images These can be fairly easily handled by using a specific memory allocator in all the image routines, which could be redirected to your STATIC_malloc() routines in devmalloc.c. o NO_CHARMAP_WORKAROUND fix in font_freetype{2}.c I'm not quite certain what this is for, it appears to handle character values > 0x80 differently. Can you comment? Also, are you currently using FT2, and which version? There have been many changes adopted in FT2 since then, and the cache code is now working in the repository. o drivers/scr_em86xx.c and scr_smp863x.c screen drivers Are these drivers used in WDTV, or are you using the fblin32.c and fblin16.c drivers? o MWROP_COPY_RK and MWROP_COPY_IK handling in 16 and 32bpp drivers These should be easily added to the fblin16 and fblin32 drivers. o TRANSLATE_ESC handling in kbd_tty.c Easily added o brightness handling (requiring float) in devopen.c The current implementation drags in floating point. It would be nice to have a brightness control capability that didn't require float. o chinese font and HBF handling in freetype 2 Not sure if this is still required. Are these mods, including the hbf.c files, still required when using FT2 fonts? Are you using FT2 fonts on the device, or only hbf.c and compiled-in arial fonts? o fast draw enhancements in devdraw.c::GdDrawImage I like this modification. However, in looking more deeply, the speedup assumes a framebuffer display and writes directly, bypassing the driver. This won't work using non-fb display drivers. Thus, I will need to apply a bit more work so that your original speed improvement is held, and the code works on any system (like X11 for test, for instance). We might add a flag, PSF_HAVEFB, to indicate whether the GdDrawImage routine can draw directly or must go through the screen driver for this operation, for instance. o jpeg setjmp and EOI handling I see there is also setjmp handling that is new, for what reason? Is the reason for the EOI handling that some jpegs are never received in full, and that hangs the jpeg decoder? o png alpha channel and BGR handling There is currently alpha channel support in 0.92RC2 that should work. However, there isn't support for conversion to BGR format. Is this to guarantee quick drawing the GdDrawImage routine, or for another reason? I would like a sample .png for testing. I may have left out other requirements, please let me know. Regards, Greg --------------------------------------------------------------------- To unsubscribe, e-mail: nanogui-unsubscr...@linuxhacker.org For additional commands, e-mail: nanogui-h...@linuxhacker.org