Commit graph

50 commits

Author SHA1 Message Date
Dave Chapman
e22b33ec72 Gigabeat LCD driver cleanup: Revert the DMA optimisations to the gigabeat LCD driver - they are both buggy (the wrong background colour was often seen, e.g. in the USB screen after using a plugin) and significantly slower than the standard implementations (which use the ARM-optimised mem* functions) in lcd-16bit.c. lcd_clear_update was 4.5 times slower with DMA when a backdrop is in use, and 12 times slower with DMA when no backdrop is in use.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13392 a1c6a512-1295-4272-9138-f99709370657
2007-05-15 14:26:44 +00:00
Robert Kukla
6dbcceb1fe for WPS files with many lines the current wps code will call puts_scroll with y-values greater than the size of the scroll[] array (e.g. gwps-common.c:2063). This is a temporary security measure until viewports and/or wps tokenizer are available...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12992 a1c6a512-1295-4272-9138-f99709370657
2007-04-01 17:28:46 +00:00
Daniel Ankers
82f9056988 Dual core support for PP502x players (iPod G4 and later, iriver h10, Sansa - iPod G3 will be coming soon.) This allows threads to be run on either core provided that all communications between the cores is done using uncached memory. There should be no significant change in battery life from doing this. Documentation (on the RockboxKernel wiki page) will follow shortly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12601 a1c6a512-1295-4272-9138-f99709370657
2007-03-04 20:06:41 +00:00
Jens Arnold
51223e5395 Introduced LCD_FBHEIGHT in addition to the already existing LCD_FBWIDTH to ease framebuffer handling a bit. Added equivalent definitions for the remote LCD.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12419 a1c6a512-1295-4272-9138-f99709370657
2007-02-20 19:31:34 +00:00
Jens Arnold
a3a303e440 The code police strikes back, and some minor optimisations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12086 a1c6a512-1295-4272-9138-f99709370657
2007-01-21 10:10:23 +00:00
Greg White
186623e709 Move mono DRMODE optimizations from Gigabeat to all 16-bit targets
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12062 a1c6a512-1295-4272-9138-f99709370657
2007-01-18 02:29:58 +00:00
Greg White
e07b30d9e2 Remove bogus variables to fix warnings
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12016 a1c6a512-1295-4272-9138-f99709370657
2007-01-15 13:16:28 +00:00
Greg White
69bb436223 Optimize transparent blit; optimize DRMODE_SOLID for mono bitmaps
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12015 a1c6a512-1295-4272-9138-f99709370657
2007-01-15 13:07:47 +00:00
Greg White
382b7a4f86 Skip scroll check when LCD is disabled
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12004 a1c6a512-1295-4272-9138-f99709370657
2007-01-14 03:30:11 +00:00
Greg White
922c0d6d33 Fix simulator build
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11910 a1c6a512-1295-4272-9138-f99709370657
2007-01-04 12:13:56 +00:00
Greg White
9d0faed29c Use DMA for Blit to screen/clear
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11906 a1c6a512-1295-4272-9138-f99709370657
2007-01-04 11:43:33 +00:00
Miika Pekkarinen
cabfbb3556 Fixed the line scrolling not always being smooth.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11044 a1c6a512-1295-4272-9138-f99709370657
2006-09-25 12:45:14 +00:00
Miika Pekkarinen
610190a04e Fixed the errors.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10959 a1c6a512-1295-4272-9138-f99709370657
2006-09-16 16:33:42 +00:00
Miika Pekkarinen
a85044bf9e New scheduler, with priorities for swcodec platforms. Frequent task
switching should be more efficient and tasks are stored in linked
lists to eliminate unnecessary task switching to improve performance.
Audio should no longer skip on swcodec targets caused by too CPU
hungry UI thread or background threads.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10958 a1c6a512-1295-4272-9138-f99709370657
2006-09-16 16:18:11 +00:00
Mark Arigo
1e9ac7a32e Allow scrolling lines with different x-margins. The margin at the time of the call to puts_scroll will be used as the margin for that line.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10727 a1c6a512-1295-4272-9138-f99709370657
2006-08-23 20:07:59 +00:00
Jens Arnold
cb36fec392 LCD drivers: * Slight speedup for 2bit greyscale drivers. Use the same scrolltext drawing anywhere. * Cleanup, fixes and definitions in preparation for X5 remote.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10346 a1c6a512-1295-4272-9138-f99709370657
2006-07-28 07:17:00 +00:00
Jens Arnold
9051afa8a0 Contrast setting cleanup: * Only include contrast setting for targets where it's used. * Make lcd_default_contrast() a stub for simulators.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10317 a1c6a512-1295-4272-9138-f99709370657
2006-07-25 11:15:50 +00:00
Linus Nielsen Feltzing
52aaa75e83 Restore the default backlight settings broken by Rani
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10314 a1c6a512-1295-4272-9138-f99709370657
2006-07-25 07:19:35 +00:00
Linus Nielsen Feltzing
33bd218010 Patch #5182 by Liberman Shachar - Vertical screen scroll bug fix (inverse bar crop in vertical scroll)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9881 a1c6a512-1295-4272-9138-f99709370657
2006-05-06 06:37:23 +00:00
Peter D'Hoye
69433c8667 Fix fillrect calculation error for 'Screen scrolls out of view'. Fixes bug 5267. Also some minor code policing.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9871 a1c6a512-1295-4272-9138-f99709370657
2006-05-03 20:22:03 +00:00
Daniel Stenberg
d2848f3d72 moved the LCD framebuffer to IRAM for iAudio X5 - gives ~40% speed boost
I also extended the iram size properly since the 5250 coldfire has 128K


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9604 a1c6a512-1295-4272-9138-f99709370657
2006-04-11 10:37:37 +00:00
Marcoen Hirschberg
d257683f3e font caching fixes by Frank Dischner
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9178 a1c6a512-1295-4272-9138-f99709370657
2006-03-22 09:53:27 +00:00
Jens Arnold
27f2182070 Fixed pointer size vs. int size problems (64 bit sims)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8881 a1c6a512-1295-4272-9138-f99709370657
2006-03-02 01:21:57 +00:00
Jens Arnold
a13f847186 Optimised lcd_clear_display(), lcd_hline() and lcd_fillrect().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8774 a1c6a512-1295-4272-9138-f99709370657
2006-02-22 01:28:19 +00:00
Jens Arnold
3c17330af6 Colour LCD driver: * Bring non-backdrop rendering back up to speed. * Speed up rendering with backdrop. * Restore correct behaviour of lcd_clear_display().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8549 a1c6a512-1295-4272-9138-f99709370657
2006-02-03 21:11:51 +00:00
Dave Chapman
d9e5b67b71 Patch #1421422 - Backdrop image patch started by Linus, finished by me. Adds ability to set backdrop images for file browser and menus (store full-screen bitmaps in /.rockbox/backdrops/) and also the ability to set a full-screen background image in a WPS using the %X|filename.bmp| WPS tag. Currently only implemented for targets with colour LCDs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8536 a1c6a512-1295-4272-9138-f99709370657
2006-02-02 20:42:56 +00:00
Jens Arnold
e6c2e197b3 This should not have been recommitted (went undetected for quite a while).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8533 a1c6a512-1295-4272-9138-f99709370657
2006-02-02 19:53:50 +00:00
Jens Arnold
32326ef10d * Changed implementation of inverse bar: Instead of complementing all pixels after drawing the text, the text is drawn in inversevid mode. This is faster, and will be more readable when backdrop image support gets added. Appearance on non-colour targets doesn't change. * Speedup of the scroll thread.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8532 a1c6a512-1295-4272-9138-f99709370657
2006-02-02 19:35:51 +00:00
Linus Nielsen Feltzing
281403a4d8 Work-in-progress transparent bitmaps with 255,0,255 as the transparent color, not yet working on the H100 series
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8476 a1c6a512-1295-4272-9138-f99709370657
2006-01-28 23:12:20 +00:00
Tomas Salfischberger
bfe740712a Horizontal scrolling patch by Shachar Liberman - Part 2 :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8413 a1c6a512-1295-4272-9138-f99709370657
2006-01-22 02:14:37 +00:00
Linus Nielsen Feltzing
c70eb572c1 H300: Roughly 20% faster LCD updates with DMA
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8271 a1c6a512-1295-4272-9138-f99709370657
2005-12-21 00:52:02 +00:00
Marcoen Hirschberg
b0fee17d6e waiting is over: initial unicode commit
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8169 a1c6a512-1295-4272-9138-f99709370657
2005-12-06 13:27:15 +00:00
Marcoen Hirschberg
40d22093c0 revert scroll pause in continuous scrolling mode
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8115 a1c6a512-1295-4272-9138-f99709370657
2005-11-30 15:37:48 +00:00
Marcoen Hirschberg
ad31ad4d1c add a delay when continually scrolling and reaching the beginning of the line
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8114 a1c6a512-1295-4272-9138-f99709370657
2005-11-30 14:48:24 +00:00
Jens Arnold
1d6eeea1e1 16bit LCD driver: faster drawing routines.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8098 a1c6a512-1295-4272-9138-f99709370657
2005-11-28 10:05:45 +00:00
Jens Arnold
6a5cc3a767 16bit LCD driver: Optimised native bitmap drawing.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7929 a1c6a512-1295-4272-9138-f99709370657
2005-11-17 18:33:50 +00:00
Jens Arnold
5236ca9886 Moved some often-used parts of the LCD driver into IRAM.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7921 a1c6a512-1295-4272-9138-f99709370657
2005-11-17 00:37:16 +00:00
Jens Arnold
5b2cba17aa Changed the LCD_COLOR pixel value format to packed RGB (unsigned int). Now 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-11-16 21:09:23 +00:00
Jens Arnold
5d8c1529a7 16bit LCD driver: * The colour get/set functions now use the native ranges for red/green/blue as intended. * Fixed lcd_fillrect(). * Properly working lcd_mono_bitmap_part(). * Implemented lcd_bitmap_part(). * Some optimisations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7900 a1c6a512-1295-4272-9138-f99709370657
2005-11-16 01:41:46 +00:00
Jens Arnold
3be6cf1574 16bit colour support (H300) for the win32 simulator.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7898 a1c6a512-1295-4272-9138-f99709370657
2005-11-15 23:37:21 +00:00
Dave Chapman
1a316d655b Ensure the 16-bit framebuffer is aligned on a 4-byte boundary
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7894 a1c6a512-1295-4272-9138-f99709370657
2005-11-15 15:37:00 +00:00
Dave Chapman
ae7c55c12c Fix compile error on iPod build - RGB_PACK resolves to a function on the iPod, so can't be used in an initialiser.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7882 a1c6a512-1295-4272-9138-f99709370657
2005-11-14 21:54:16 +00:00
Linus Nielsen Feltzing
63dc8c14b0 The 16-bit LCD driver is now 16-bit for real
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7880 a1c6a512-1295-4272-9138-f99709370657
2005-11-14 20:48:34 +00:00
Dave Chapman
d31a32c501 iPod: Code cleanup - the bootloader now compiles with zero warnings
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7812 a1c6a512-1295-4272-9138-f99709370657
2005-11-11 17:51:35 +00:00
Thom Johansen
94c67365aa I meant that to be static.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7808 a1c6a512-1295-4272-9138-f99709370657
2005-11-10 01:27:56 +00:00
Thom Johansen
2fce981722 Moved all iPod specific code from lcd-16bit.c to lcd-ipod.c.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7807 a1c6a512-1295-4272-9138-f99709370657
2005-11-10 01:08:09 +00:00
Thom Johansen
c83216ad89 Fix #define names.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7804 a1c6a512-1295-4272-9138-f99709370657
2005-11-09 18:00:46 +00:00
Thom Johansen
8c75c4a763 A couple of fixes for Nanos.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7803 a1c6a512-1295-4272-9138-f99709370657
2005-11-09 17:54:31 +00:00
Linus Nielsen Feltzing
d903733809 Quick fix to make the h300 build work
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7796 a1c6a512-1295-4272-9138-f99709370657
2005-11-08 23:32:59 +00:00
Dave Chapman
77372d1218 Initial commit of work-in-progress iPod port
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7781 a1c6a512-1295-4272-9138-f99709370657
2005-11-07 23:07:19 +00:00