Commit graph

7 commits

Author SHA1 Message Date
Robert Kukla
7da7e7bdd2 add timer registration for mrobe100 lcd to greyscale lib (fix yellow)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16137 a1c6a512-1295-4272-9138-f99709370657
2008-01-22 04:16:28 +00:00
Jens Arnold
fa7eb56c84 Greyscale library: * Defer application of lcd linearisation + gamma in buffered mode to the actual update. This simplifies the update function (grey_update() and grey_update_rect() now are just calls to grey_ub_gray_bitmap_part()), and makes DRMODE_COMPLEMENT work properly. * Make the simulator version work and behave more similar to the target version.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16080 a1c6a512-1295-4272-9138-f99709370657
2008-01-13 18:39:09 +00:00
Jens Arnold
a72499a125 Greyscale library: Plugins can now put the management structure in IRAM for higher update speed. Use this in doom, mpegplayer, and zxbox. Made the api pointer part of the struct.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16066 a1c6a512-1295-4272-9138-f99709370657
2008-01-13 00:11:43 +00:00
Robert Kukla
7d961d390a m:robe 100:
- adjust lcd_grey_phase_blit() parameter to recent change
- detection of external power
- compilation of plugins - need to be enabled individually in SOURCES/SUBDIRS 
(use autostart.rock as test plugin with limited interaction via BUTTON_POWER)
also 
- move autostart.rock to apps dir where it is expected
- set missing svn:keywords for various files

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16056 a1c6a512-1295-4272-9138-f99709370657
2008-01-11 21:48:01 +00:00
Jens Arnold
df5c3e15e8 Greyscale library: * Introduced some extra macros dealing with block size, allowing to write some parts with less #ifdefing. * Optimised grey_update_rect() for horizontally packed LCDs, and unbuffered scrolling.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16050 a1c6a512-1295-4272-9138-f99709370657
2008-01-10 22:51:33 +00:00
Jens Arnold
6a56c14e17 Greyscale library: Changed the internal data format once more (separated pixel values and phases), allowing for further optimisation of drawing, scrolling etc. * Optimised grey phase blitting in the core reduces CPU load on all architectures, most significantly on coldfire. Previous version was too slow to keep up at 45MHz, leading to unwanted graininess (update frequency was halved). Also fixed screendump on 2bpp targets with vertical pixel packing.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16043 a1c6a512-1295-4272-9138-f99709370657
2008-01-09 23:48:26 +00:00
Jens Arnold
feb5b15e9b All-new greyscale library, replacing the old one. Features: (1) Drawing/updating is faster than the old grayscale lib at full depth. (2) Always 129 shades instead of 2..33 shades. (3) No graininess caused by frequent updates (mpegplayer, doom, ...). (4) Needs less memory than the old grayscale lib at full depth. * The tradeoff is slightly higher CPU load in the ISR (frames are calculated 'live') and an extra function in the core. * Ported all plugins which used the graylib to use the new one. * Some slight optimisations for archos and H1x0 LCD update.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15998 a1c6a512-1295-4272-9138-f99709370657
2008-01-04 23:42:38 +00:00