summaryrefslogtreecommitdiff
path: root/apps/plugins/lib/gray.h (unfollow)
Commit message (Collapse)Author
2006-11-05Grayscale lib: Using a 32x32->32 bit multiplication is better on ARM, as ↵Jens Arnold
16x16->32 bit isn't a single instruction. Renamed the macro for pointing out that it's not necessarily 16 bit anymore, and to avoid collisions with similar macros in plugins. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11436 a1c6a512-1295-4272-9138-f99709370657
2006-08-07Grayscale library ported to the grayscale iPods, first version. Added C ↵Jens Arnold
reference versions of gray_update_rect() for both horizontal and vertical pixel packing. gray_update_rect() and gray_ub_gray_bitmap_part() not yet assembler optimised. Grayscale screendump doesn't work yet. * Fixed button assignments for iPod in grayscale.c git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10468 a1c6a512-1295-4272-9138-f99709370657
2006-08-02Grayscale library: LCD linearisation and gamma correction.Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10402 a1c6a512-1295-4272-9138-f99709370657
2006-02-26Finally - grayscale library support for the simulators. Currently SDL only, ↵Jens Arnold
win32 and x11 won't link anymore due to missing simulator functions. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8845 a1c6a512-1295-4272-9138-f99709370657
2006-01-23Grayscale library: colour macros now matching the core LCD drivers.Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8431 a1c6a512-1295-4272-9138-f99709370657
2005-11-16Changed the LCD_COLOR pixel value format to packed RGB (unsigned int). Now ↵Jens Arnold
all LCDs with depth > 1 use the same datatype. Added macros for easy pixel value definition. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7912 a1c6a512-1295-4272-9138-f99709370657
2005-10-01Core: A graphics framework can now register a hook function to extend the ↵Jens Arnold
core screendump routine. * Grayscale library: (1) Changed the screendump routine into a hook, and implemented it for H1x0. (2) The planar pixel setting routines now use one register less. Fixes build problem with developer builds (frame pointers enabled) on coldfire. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7574 a1c6a512-1295-4272-9138-f99709370657
2005-09-30H1x0: Changed lcd_blit() and the grayscale library to use the same internal ↵Jens Arnold
format as on archos (1bpp). While the slowdown of the ISR is minimal (the intermediate buffers are in IRAM), the planar grayscale buffer takes only half the space for a given depth, and gray_update[_rect]() and unbuffered drawing/scrolling are faster because less data needs to be moved. It should also make porting of video.rock somewhat easier. * Archos recorders, Ondios: Some slight optimisations of the grayscale library. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7571 a1c6a512-1295-4272-9138-f99709370657
2005-07-27Grayscale library: (1) Ported to iriver H1x0. Experiments have shown that ↵Jens Arnold
the intended 49-shade mode isn't possible due to interference between the internal greylevel generation of the LCD and external pixel flipping, so the lib allows 33 shades as on the Archos. The current implementation wastes RAM by not switching the LCD to b&w mode and simply using colours 0 and 3 only. However, this allows to show a partial greyscale overlay and normal 4-shade graphics in parallel. (2) Converted all asm blocks to use symbolic parameters. (3) Properly marked asm input parameters that are changed within the block as in-out and feed them from a temp variable where necessary. (4) Screenshot is not yet working on H1x0. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7244 a1c6a512-1295-4272-9138-f99709370657
2005-07-25Complete rework of the grayscale library: (1) Implemented the new rockbox ↵Jens Arnold
graphics api. (2) Added buffered mode, and implemented most drawing functions for buffered mode only. Buffered mode will ease implementation of animated graphics. Some functions are additionally provided as unbuffered versions (drawing grayscale bitmaps, scrolling) since unbuffered mode is better suited for non-animated graphics (JPEG viewer, mandelbrot) and saves some RAM, which is important on Archos. (3) Put all functions in a couple of source files, no more one-function-per-files. This became possible since sectioned compilation for the plugin library and appropriate linking for the pluginswas introduced, otherwise the binaries would be bloated by unused functions. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7241 a1c6a512-1295-4272-9138-f99709370657
2004-08-03Const policed the grayscale lib & pluginJens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4985 a1c6a512-1295-4272-9138-f99709370657
2004-07-06Added screen dump function to the grayscale libJens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4843 a1c6a512-1295-4272-9138-f99709370657
2004-06-25added comments about default valuesJens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4804 a1c6a512-1295-4272-9138-f99709370657
2004-06-23Split grayscale library into several files to make up a real function ↵Jens Arnold
library. Significantly decreases binary size for plugins using it. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4802 a1c6a512-1295-4272-9138-f99709370657
2004-06-02Major rework of the grayscale framework:Jens Arnold
* api change - all drawing functions now use draw mode, foreground and background shades set globally by separate functions * There are now 4 draw modes for all drawing functions, no more separate functions for inverse drawing * Significant speedup of 1-bit bitmap (and font) drawing (2..3 times) * Some more speed tweaks * Additional functions for horizontal and vertical lines * Copied describing comments to the header file for easier reference * The safety net against an uninitialized grayscale buffer is gone git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4711 a1c6a512-1295-4272-9138-f99709370657
2004-05-20Missing function declarationJens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4655 a1c6a512-1295-4272-9138-f99709370657
2004-05-20Font support, several speed and size tweaksJens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4654 a1c6a512-1295-4272-9138-f99709370657
2004-05-19Added return parameter for space taken by grayscale buffer to gray_init_buffer()Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4648 a1c6a512-1295-4272-9138-f99709370657
2004-05-19First real library version of the grayscale frameworkJens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4641 a1c6a512-1295-4272-9138-f99709370657
2004-05-19grayscale framework headerDaniel Stenberg
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4638 a1c6a512-1295-4272-9138-f99709370657