Commit graph

51 commits

Author SHA1 Message Date
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
Jens Arnold
2aa85a2b6a Iriver: Reworked remote detection & init: * Monitor the remote type & try to init the LCD for 20 seconds after plugin. Fixes wrong type detection & non-working LCD when plugging in slowly, and inits much faster if the remote is already plugged at boot (no delayed logo). * Don't try to init the LCD for a non-LCD remote in order to save CPU power. * More precise scroll timing, taking drawing time & other delays into account.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9783 a1c6a512-1295-4272-9138-f99709370657
2006-04-24 01:21:11 +00:00
Jens Arnold
7dea1f9234 Another slight tweak.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9639 a1c6a512-1295-4272-9138-f99709370657
2006-04-12 21:04:27 +00:00
Jens Arnold
8d5c94a7c7 H1x0/H300 remote LCD driver rework: * Completely fix remote LCD ticking for H300, by not deasserting CS after every single access. CS deactivation is now handled with a 100ms timeout by the tick task. If this really fixes remote ticking for all H300s with 'reduce ticking' disabled, we should remove that option for H300. * Reworked ticking reduction for H1x0. Bytes are now send in sequence, without stretching every single bit, but longer pauses between bytes instead. Both CLK and DATA are handled in a way to minimise their potential to cause ticking (CLK active as short as possible, DATA always high outside of byte transfers, DATA high->low as close as possible to CLK low->high). * Driver is ~10% faster with 'reduce ticking' disabled, and ~65% faster with it enabled. (not @ 11 MHz)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9631 a1c6a512-1295-4272-9138-f99709370657
2006-04-11 23:42:36 +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
13c63de2c1 Iriver: Properly working remote type detection regardless of hold switch positions.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9079 a1c6a512-1295-4272-9138-f99709370657
2006-03-17 18:45:06 +00:00
Jens Arnold
06bc627c99 Removed lcd_roll() and lcd_remote_roll() functions. These functions were not really portable. Removed the only plugin that used lcd_roll(): Oscillograph. Oscilloscope offers everything that oscillograph did and more, in a portable way. * Bumped & sorted plugin API.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8995 a1c6a512-1295-4272-9138-f99709370657
2006-03-11 09:28:49 +00:00
Jens Arnold
a875703e6e Slight optimisation for 1bit and 2bit (vp) LCD drivers.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8772 a1c6a512-1295-4272-9138-f99709370657
2006-02-22 00:20:28 +00:00
Linus Nielsen Feltzing
00811840c9 Remote type autodetection on iriver, remote_type() returns REMOTETYPE_H100_LCD, REMOTETYPE_H300_LCD or REMOTETYPE_H300_NONLCD
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8721 a1c6a512-1295-4272-9138-f99709370657
2006-02-17 22:38:38 +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
Brandon Low
d3a03b679f Horizontal screen scrolling part 3 (by Shachar Liberman)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8414 a1c6a512-1295-4272-9138-f99709370657
2006-01-22 04:24:26 +00:00
Tomas Salfischberger
7fa39df427 Horizontal scrolling patch by Shachar Liberman
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8412 a1c6a512-1295-4272-9138-f99709370657
2006-01-22 01:42:05 +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
Daniel Stenberg
1a29cfb23e Initial gcc4 warning cleanup (and some minor policing)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8063 a1c6a512-1295-4272-9138-f99709370657
2005-11-25 00:10:12 +00:00
Jens Arnold
b51f7dfc9b Backlight handling: * Added 'Caption Backlight' and 'Backlight On When Charging' for the iriver remote LCD. * Enabled the backlight code for the simulator, and prepared backlight simulation. It's only a stub atm, writing messages to the console window. * Added tick task handling to the simulators for this to work. * Code cleanup in backlight.c, less dead code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8034 a1c6a512-1295-4272-9138-f99709370657
2005-11-21 23:55:39 +00:00
Miika Pekkarinen
93d8ca53c3 Fixed the simulator builds and added HAVE_REMOTE_LCD_TICKING define.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7987 a1c6a512-1295-4272-9138-f99709370657
2005-11-19 09:26:02 +00:00
Miika Pekkarinen
05fdb1ad30 Added option to reduce (and almost prevent) the remote lcd ticking
problem with a cost slightly more CPU usage.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7985 a1c6a512-1295-4272-9138-f99709370657
2005-11-19 07:58:20 +00:00
Linus Nielsen Feltzing
b4984492ef H300: remote backlight on GPO33
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7973 a1c6a512-1295-4272-9138-f99709370657
2005-11-19 01:09:38 +00:00
Jens Arnold
6da4e33aac H1x0: Assembler optimised remote lcd driver routine, used for low CPU frequencies, e.g. during radio operation. Reduces the scroll lag when using the radio preset list with the remote plugged.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7791 a1c6a512-1295-4272-9138-f99709370657
2005-11-08 22:46:31 +00:00
Jens Arnold
4ab919e5d8 Enable bidirectional text support for remote lcd.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7774 a1c6a512-1295-4272-9138-f99709370657
2005-11-07 01:36:12 +00:00
Jens Arnold
71bc504e5f The const police strikes and hits itself.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7772 a1c6a512-1295-4272-9138-f99709370657
2005-11-06 23:49:29 +00:00
Jens Arnold
ec8f328d89 Set remote LCD invert state in a clean way.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7760 a1c6a512-1295-4272-9138-f99709370657
2005-11-06 01:26:42 +00:00
Jens Arnold
abd9f83e92 Two new sections for IRAM usage: .irodata (selectable with the ICONST_ATTR attribute macro), allowing to put 'const' data into IRAM without causing a section type conflict, and .ibss (selectable with the IBSS_ATTR attribute macro) for uninitialised data. * Rockbox core: Adjusted the linker scripts and init code to not include the .ibss section in the binary, it is cleared instead. Saves ~500 bytes on archos and ~30KB on iriver. Codecs and plugins don't handle .ibss in a special way yet. * The init code properly handles empty sections now (except .stack, which should never be empty). * Unified the init code for SH1 and coldfire a bit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7644 a1c6a512-1295-4272-9138-f99709370657
2005-10-19 19:35:24 +00:00
Jens Arnold
05af28036e Fixed scroll step settings >127 pixels not working (reported on irc). Changed some other LCD driver variables to the natural 'int', cuts down binary size on coldfire a bit. Cleaned up some more settings bits. Bumped config block version, so save your settings to a file before upgrading.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7247 a1c6a512-1295-4272-9138-f99709370657
2005-07-28 08:36:24 +00:00
Jens Arnold
b5fc2530a7 Removed the XYZ_PIXEL() macros. They are no longer needed, and they did only work correctly for b&w.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7074 a1c6a512-1295-4272-9138-f99709370657
2005-07-08 19:09:17 +00:00
Jens Arnold
3a5bd7acb6 Enabled scrolling on the remote LCD in the simulator. Some small shortcuts in the H1x0 remote LCD driver and the recorder LCD driver.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7057 a1c6a512-1295-4272-9138-f99709370657
2005-07-07 21:03:58 +00:00
Jens Arnold
f89f011508 Converted to use the IRAM defines, and some small optimisations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7007 a1c6a512-1295-4272-9138-f99709370657
2005-07-04 06:20:50 +00:00
Jens Arnold
bb3ed3cda9 Use the central IDATA_ATTR define.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6992 a1c6a512-1295-4272-9138-f99709370657
2005-07-03 15:09:11 +00:00
Jens Arnold
a8cadd8181 Iriver: atomic I/O port manipulation macros, to avoid interference between normal and interrupt code. Todo: all other places that do port manipulation on ports which may also be changed from an intterupt should use that as well. It even decreases binary size a bit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6985 a1c6a512-1295-4272-9138-f99709370657
2005-07-02 12:18:10 +00:00
Jens Arnold
3291ae6bfa A couple of optimisations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6981 a1c6a512-1295-4272-9138-f99709370657
2005-07-02 07:21:21 +00:00
Jens Arnold
a142d4d79f Graphics: Lowlevel block function are in IRAM now as they're called often. Switched the masking logic for better readability. Draw modes and lowlevel function types are now defined for all platforms.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6952 a1c6a512-1295-4272-9138-f99709370657
2005-06-30 18:42:24 +00:00
Jens Arnold
7f8cc3f1c6 Ooops...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6935 a1c6a512-1295-4272-9138-f99709370657
2005-06-29 21:33:36 +00:00
Jens Arnold
ce19ce00b7 Oops, that was no optimisation, but a bug.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6908 a1c6a512-1295-4272-9138-f99709370657
2005-06-29 01:54:21 +00:00
Jens Arnold
576908d36a Third part of graphics api rework. Some small but effective optimisations. Ported remote lcd driver to new api. Preparations for including the low-level functions in the plugin api.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6907 a1c6a512-1295-4272-9138-f99709370657
2005-06-29 01:39:50 +00:00
Jens Arnold
29b83559cc Fixed a warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6847 a1c6a512-1295-4272-9138-f99709370657
2005-06-23 17:48:46 +00:00
Jens Arnold
9cedf39430 Fix red builds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6845 a1c6a512-1295-4272-9138-f99709370657
2005-06-23 17:13:05 +00:00
Jens Arnold
6a556c1740 Preparations for implementing the new graphics api: Ordered lcd bitmap driver defines, variables and functions by function groups. Centralised some definitions, code cleanup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6844 a1c6a512-1295-4272-9138-f99709370657
2005-06-23 16:53:54 +00:00
Jens Arnold
bd1bb5f009 iriver: LCD flip for H1x0 remote, some code cleanup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6739 a1c6a512-1295-4272-9138-f99709370657
2005-06-17 21:43:00 +00:00
Jens Arnold
23797afb0b Hot-plug support for iriver remote.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6625 a1c6a512-1295-4272-9138-f99709370657
2005-06-08 22:48:23 +00:00
Linus Nielsen Feltzing
1c5374fe79 iRiver remote LCD start line adjustment
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6546 a1c6a512-1295-4272-9138-f99709370657
2005-06-01 13:09:59 +00:00
Linus Nielsen Feltzing
88f3a53b7e iRiver remote LCD is only 128x64
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6542 a1c6a512-1295-4272-9138-f99709370657
2005-05-31 12:37:05 +00:00
Christian Gmeiner
d4c1464d15 some small fixes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6541 a1c6a512-1295-4272-9138-f99709370657
2005-05-31 09:03:42 +00:00
Daniel Stenberg
ac31e6af87 Remote LCD support added to the x11 simulator, take 1. The win32 simulator
still builds, but shows no remote LCD yet.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6510 a1c6a512-1295-4272-9138-f99709370657
2005-05-23 16:23:25 +00:00
Christian Gmeiner
7d9848186e iRiver: extended remote lcd driver. displaying text works now - see start-up-screen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6355 a1c6a512-1295-4272-9138-f99709370657
2005-04-25 23:47:51 +00:00
Christian Gmeiner
7c1879bdd0 IRiver: (1)Setting some remote lcd settings via menu (2) added driver to main.c (3) updated english.lang
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6291 a1c6a512-1295-4272-9138-f99709370657
2005-04-15 12:08:49 +00:00
Linus Nielsen Feltzing
a6a01903e6 Even more updates to the remote LCD driver. Now it actually works...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6290 a1c6a512-1295-4272-9138-f99709370657
2005-04-15 09:42:12 +00:00
Linus Nielsen Feltzing
769af0e3d7 Updated H100 remote LCD driver by Rick
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6288 a1c6a512-1295-4272-9138-f99709370657
2005-04-15 06:39:56 +00:00