forked from len0rd/rockbox
I'm currently running up against the limitations of the lcd_draw functions I want these functions to be able to be used on any size buffer not just buffers with a stride matching the underlying device [DONE] allow the framebuffer to be decoupled from the device framebuffer [DONE need examples] allow for some simple blit like transformations [DONE] remove the device framebuffer from the plugin api [DONE}ditto remote framebuffer [DONE] remove _viewport_get_framebuffer you can call struct *vp = lcd_set_viewport(NULL) and vp->buffer->fb_ptr while remote lcds may compile (and work in the sim) its not been tested on targets [FIXED] backdrops need work to be screen agnostic [FIXED] screen statusbar is not being combined into the main viewport correctly yet [FIXED] screen elements are displayed incorrectly after switch to void* [FIXED] core didn't restore proper viewport on splash etc. [NEEDS TESTING] remote lcd garbled data [FIXED] osd lib garbled screen on bmp_part [FIXED] grey_set_vp needs to return old viewport like lcd_set_viewport [FIXED] Viewport update now handles viewports with differing buffers/strides by copying to the main buffer [FIXED] splash on top of WPS leaves old framebuffer data (doesn't redraw) [UPDATE] refined this a bit more to have clear_viewport set the clean bit and have skin_render do its own screen clear scrolling viewports no longer trigger wps refresh also fixed a bug where guisyncyesno was displaying and then disappearing [ADDED!] New LCD macros that allow you to create properly size frame buffers in you desired size without wasting bytes (LCD_ and LCD_REMOTE_) LCD_STRIDE(w, h) same as STRIDE_MAIN LCD_FBSTRIDE(w, h) returns target specific stride for a buffer W x H LCD_NBELEMS(w, h) returns the number of fb_data sized elemenst needed for a buffer W x H LCD_NATIVE_STRIDE(s) conversion between rockbox native vertical and lcd native stride (2bitH) test_viewports.c has an example of usage [FIXED!!] 2bit targets don't respect non-native strides [FIXED] Few define snags Change-Id: I0d04c3834e464eca84a5a715743a297a0cefd0af |
||
|---|---|---|
| .. | ||
| include_lua | ||
| action_helper.pl | ||
| button_helper.pl | ||
| lapi.c | ||
| lapi.h | ||
| lauxlib.c | ||
| lauxlib.h | ||
| lbaselib.c | ||
| lbitlib.c | ||
| lcode.c | ||
| lcode.h | ||
| ldebug.c | ||
| ldebug.h | ||
| ldo.c | ||
| ldo.h | ||
| ldump.c | ||
| lfunc.c | ||
| lfunc.h | ||
| lgc.c | ||
| lgc.h | ||
| liolib.c | ||
| llex.c | ||
| llex.h | ||
| llimits.h | ||
| lmathlib.c | ||
| lmem.c | ||
| lmem.h | ||
| loadlib.c | ||
| lobject.c | ||
| lobject.h | ||
| lopcodes.c | ||
| lopcodes.h | ||
| loslib.c | ||
| lparser.c | ||
| lparser.h | ||
| lstate.c | ||
| lstate.h | ||
| lstring.c | ||
| lstring.h | ||
| lstrlib.c | ||
| ltable.c | ||
| ltable.h | ||
| ltablib.c | ||
| ltm.c | ||
| ltm.h | ||
| lua.h | ||
| lua.make | ||
| lua_user.c | ||
| lua_user.h | ||
| luaconf.h | ||
| luadir.c | ||
| luadir.h | ||
| lualib.h | ||
| lundump.c | ||
| lundump.h | ||
| lvm.c | ||
| lvm.h | ||
| lzio.c | ||
| lzio.h | ||
| Makefile | ||
| rbdefines_helper.pl | ||
| README | ||
| rockaux.c | ||
| rockconf.h | ||
| rocklib.c | ||
| rocklib.h | ||
| rocklib_aux.pl | ||
| rocklib_events.c | ||
| rocklib_events.h | ||
| rocklib_img.c | ||
| rocklib_img.h | ||
| rocklibc.h | ||
| rocklua.c | ||
| settings_helper.pl | ||
| SOURCES | ||
| strftime.c | ||
| strpbrk.c | ||
| strstr.c | ||
| strtol.c | ||
| strtoul.c | ||
| tlsf_helper.c | ||
The following files are (with slight modifications for Rockbox) from dietlibc
version 0.31 which is licensed under the GPL version 2:
gmtime.c
strftime.c
strpbrk.c
strtol.c
strtoul.c
strstr.c