Commit graph

102 commits

Author SHA1 Message Date
Michael Sevakis
a9e69d935c Strange little kernel optimization to ease targeting the timer tick and to limit the number of loops in the tick function to the number of tasks added rather than always looping the max number.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18893 a1c6a512-1295-4272-9138-f99709370657
2008-10-27 16:30:24 +00:00
Karl Kurbjun
3ef51c5cbb Add the shutdown routine necessary when bootloader is flashed. Normal build/bootloader still operate as expected.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18651 a1c6a512-1295-4272-9138-f99709370657
2008-09-26 03:08:19 +00:00
Karl Kurbjun
143b8f1c30 More Gigabeat F flash work. This sets the bootloader up for dual boot functionality and allows the player to shutdown cleanly (with the help of the OF). This does not effect the normal build or non-flash bootloader.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18650 a1c6a512-1295-4272-9138-f99709370657
2008-09-26 02:54:29 +00:00
Karl Kurbjun
b8a7a373f2 Fix the Gigabeat F/X bootloader and add some code from Barry Wardell that was accidentally removed a while ago. Some of these changes are also more work towards getting the bootloader working from flash; it works but the player will not shutdown fully. About 16 mA are still drawn after calling the rom_shutdown routine. If anyone has some insight why I would be very interested.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18492 a1c6a512-1295-4272-9138-f99709370657
2008-09-11 01:34:52 +00:00
Bertrik Sikken
8d0126f355 Fix missing #includes and make local functions static for gigabeat
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18091 a1c6a512-1295-4272-9138-f99709370657
2008-07-18 23:28:54 +00:00
Daniel Stenberg
2acc0ac542 Updated our source code header to explicitly mention that we are GPL v2 or
later. We still need to hunt down snippets used that are not. 1324 modified
files...
http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
2008-06-28 18:10:04 +00:00
Jonathan Gordon
bdbdb97f19 FS#9051 - remove LCD margins... use viewports if you need them...
NOTE to WPS people....
%m has been removed, but (i think) because of the other %m tags it wont fail if you try loading a wps with %m|..|, it will just be ignored.
Also note that if the statusbar is enabled the default viewport is 8 pixels shorter than when its not, i.e (0,0) is really (0,8) if the statusbar is shown... I dont think this will be a major issue because almost no WPS show the bar and use bitmaps... text only WPS shouldnt be affected.

Please report problem screens in http://forums.rockbox.org/index.php?topic=17358.0


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17763 a1c6a512-1295-4272-9138-f99709370657
2008-06-23 13:20:35 +00:00
Karl Kurbjun
9ba4864d73 Simplify the button handling code on the Gigabeat F/X a bit for the side buttons. Plugins should be updated with this revision, or the buttons in plugins will not operate properly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17659 a1c6a512-1295-4272-9138-f99709370657
2008-05-29 22:22:44 +00:00
Michael Sevakis
c541e04632 Gigabeat F/X:
Allow chaning of touchpad sensitivity in the System settings menu. Some
units are dodgey at "Normal" senitivity and some at "High". "High" can make
some units difficult to navigate and may even require a settings reset so try
it and don't use "High" again if it doesn't work out :-). Defaults to "Normal"
 which behaves like older builds.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17656 a1c6a512-1295-4272-9138-f99709370657
2008-05-29 21:27:44 +00:00
Michael Sevakis
adf2e4c9a0 Targets with HAVE_LCD_ENABLE: Provide a means to receive notifications when the lcd is enabled and the image is refreshed so overlayed drawing can also be refreshed. Chiefly mpegplayer needs this so it can redraw the YUV data after the backlight is turned on while paused or when using 'Set Start Time'.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17640 a1c6a512-1295-4272-9138-f99709370657
2008-05-28 10:17:16 +00:00
Karl Kurbjun
4c99f9a749 Contrast settings for the gigabeat F/X
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17590 a1c6a512-1295-4272-9138-f99709370657
2008-05-21 03:50:48 +00:00
Karl Kurbjun
7a4d1609ee Make some functions static, point to the wiki, and comit the code to invert the screen, but don't enable.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17589 a1c6a512-1295-4272-9138-f99709370657
2008-05-21 03:30:57 +00:00
Karl Kurbjun
359045655d Enable Gigabeat F/X LCD flipscreen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17578 a1c6a512-1295-4272-9138-f99709370657
2008-05-18 23:33:09 +00:00
Michael Sevakis
be28f8441b Refine meg-fx pad changes. Actually watch the other <dir>+ lines and ignore them if center is detected but sill allow the combo if one really means to do that.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17559 a1c6a512-1295-4272-9138-f99709370657
2008-05-17 17:16:12 +00:00
Michael Sevakis
7d67df94a6 Commit Davide Gentile's patch to make the Gigabeat F/X pad less finicky.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17549 a1c6a512-1295-4272-9138-f99709370657
2008-05-17 00:29:24 +00:00
Karl Kurbjun
808568983d Forgot about the buttonlights. Removing for now since this will not work properly if the buttonlights are set to a time longer than the backlight.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17523 a1c6a512-1295-4272-9138-f99709370657
2008-05-15 12:52:17 +00:00
Karl Kurbjun
6450de3eae Save around a hundred uA - not much, but why not? - No functional change for users.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17519 a1c6a512-1295-4272-9138-f99709370657
2008-05-15 01:04:47 +00:00
Michael Sevakis
41b235dacf Fix red. No bother with lcd power management calls in bootloader.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17508 a1c6a512-1295-4272-9138-f99709370657
2008-05-14 20:26:20 +00:00
Michael Sevakis
009cebeab2 Straigten-out lcd sleeping on Gigabeat F/X. Add a service function to backlight.c to handle lcd sleep timer. Make HAVE_LCD_SLEEP useable without a setting and use HAVE_LCD_SLEEP_SETTING when a setting is available in addition to HCD_HAVE_SLEEP. If a setting isn't used, the target must define the timeout to be used in the config.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17505 a1c6a512-1295-4272-9138-f99709370657
2008-05-14 19:29:25 +00:00
Karl Kurbjun
449a7a6643 Cleanup some unneeded debug code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17499 a1c6a512-1295-4272-9138-f99709370657
2008-05-14 00:32:43 +00:00
Karl Kurbjun
6e322c8786 Reduce power consumed on the F/X by as much as 12% when the LCD is disabled. Timing is tighter on the SPI interface, if the screen does not come up let me know and we can space it out more - Works on the devices I tested. There will be a brief time (around 15ms) that the screen is all white after coming back on.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17498 a1c6a512-1295-4272-9138-f99709370657
2008-05-14 00:26:28 +00:00
Karl Kurbjun
f177de9aff Fix the bootloader
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17450 a1c6a512-1295-4272-9138-f99709370657
2008-05-10 22:12:57 +00:00
Michael Sevakis
209aa8eda5 Real fake IRAM by placing .i.... section in the analagous DRAM sections in the linker scripts that hasn't done this yet.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17449 a1c6a512-1295-4272-9138-f99709370657
2008-05-10 22:03:45 +00:00
Karl Kurbjun
66010b9f30 Fix high power consumption at powerup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17445 a1c6a512-1295-4272-9138-f99709370657
2008-05-10 19:43:23 +00:00
Karl Kurbjun
6c6a2ed910 Working ROLO for the Gigabeat F/X
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17304 a1c6a512-1295-4272-9138-f99709370657
2008-05-02 03:27:17 +00:00
Jens Arnold
2bbacf89fe Make sure the linker considers crt0*.o before all files specified on the command line by using STARTUP() instead of INPUT() in the .lds. Using INPUT() makes the linker process crt0*.o after all files specified on the command line, making linking fail if there are librockbox.a members which are only referenced by crt0*.o. Remove the hackaround that was needed for building the gigabeat S bootloader before (aka UIE() problem).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17289 a1c6a512-1295-4272-9138-f99709370657
2008-04-29 06:19:32 +00:00
Karl Kurbjun
f3d83c7be7 Cleanup some tabs and whitespace
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17288 a1c6a512-1295-4272-9138-f99709370657
2008-04-29 01:43:15 +00:00
Karl Kurbjun
45f6469ad1 Add in a few more debug registers
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17220 a1c6a512-1295-4272-9138-f99709370657
2008-04-23 01:34:32 +00:00
Karl Kurbjun
38498ce903 Make sure buttons have pullups disabled as necessary
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17219 a1c6a512-1295-4272-9138-f99709370657
2008-04-23 00:08:59 +00:00
Karl Kurbjun
7510335fc4 This is a big chunk of code necessary to prepare for Gigabeat F flash loading and and implementation of rolo. There should be no noticible changes for the user. A new bootloader is not needed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17213 a1c6a512-1295-4272-9138-f99709370657
2008-04-22 04:34:25 +00:00
Karl Kurbjun
68afa9dc34 Cleanup/fixup the USB initialization for the Gigabeat F
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17212 a1c6a512-1295-4272-9138-f99709370657
2008-04-22 04:13:07 +00:00
Robert Kukla
feb3b588e3 explicitly align the ibss section by adjusting _iramend - fixes hang on m:robe (and potential problem on other arm targets)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17024 a1c6a512-1295-4272-9138-f99709370657
2008-04-07 18:24:23 +00:00
Michael Sevakis
3c8d93e091 Change a #define constant that conflicts with a mingw definition. Change "WAIT_*" to "OBJ_WAIT_*".
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16906 a1c6a512-1295-4272-9138-f99709370657
2008-04-01 03:55:02 +00:00
Michael Sevakis
2541302089 meg-fx: Add headers to files in the target directory that were missing them. Fix the Id marker in a couple. Fix svn properties in some others. Please have a look at the copyrights added and make any corrections that you feel should be made since this particular tree branch has a twisted history so I just pasted them in based on the target header and used my name for files that have a preponderance of my junk.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16895 a1c6a512-1295-4272-9138-f99709370657
2008-03-31 04:53:03 +00:00
Michael Sevakis
a65406e3f4 meg-fx: It's important to make sure certain interrupt-related registers have bits changed atomically.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16894 a1c6a512-1295-4272-9138-f99709370657
2008-03-31 01:29:50 +00:00
Michael Sevakis
52527a4d1d Fix red and clean up meg-fx firmware sources. Remove an unused file.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16887 a1c6a512-1295-4272-9138-f99709370657
2008-03-30 06:06:43 +00:00
Michael Sevakis
5f1590bf4a Have meg-fx i2c driver use the wakeup functionality by making it interrupt-based (and serves as a simple usage example).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16886 a1c6a512-1295-4272-9138-f99709370657
2008-03-30 05:38:28 +00:00
Marcoen Hirschberg
82c52302bd split boot.lds and move it into the target tree
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16855 a1c6a512-1295-4272-9138-f99709370657
2008-03-27 23:58:03 +00:00
Michael Sevakis
af395f4db6 Do core interrupt masking in a less general fashion and save some instructions to decrease size and speed things up a little bit. Small fix to a few places where interrupts would get enabled again where they shouldn't have been (context switching calls when disabled).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16811 a1c6a512-1295-4272-9138-f99709370657
2008-03-26 01:50:41 +00:00
Michael Sevakis
27cf677339 Add a complete priority inheritance implementation to the scheduler (all mutex ownership and queue_send calls are inheritable). Priorities are differential so that dispatch depends on the runnable range of priorities. Codec priority can therefore be raised in small steps (pcmbuf updated to enable). Simplify the kernel functions to ease implementation and use the same kernel.c for both sim and target (I'm tired of maintaining two ;_). 1) Not sure if a minor audio break at first buffering issue will exist on large-sector disks (the main mutex speed issue was genuinely resolved earlier). At this point it's best dealt with at the buffering level. It seems a larger filechunk could be used again. 2) Perhaps 64-bit sims will have some minor issues (finicky) but a backroll of the code of concern there is a 5-minute job. All kernel objects become incompatible so a full rebuild and update is needed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16791 a1c6a512-1295-4272-9138-f99709370657
2008-03-25 02:34:12 +00:00
Jens Arnold
68a21689ae Consistent naming scheme the various blit functions. * Removed lcd_blit_mono() for colour targets. Plugin API became incompatible, so sort, clean up & bump. * Implemented lcd_blit_mono() for M3.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16775 a1c6a512-1295-4272-9138-f99709370657
2008-03-24 00:35:53 +00:00
Karl Kurbjun
ef62d6891a Split up app.lds to the respective target directories. The portalplayer devices replicate app.lds since their target tree doesn't follow a syntax typical to the newer arm targets - the portalplayers could be cleaned up further. boot.lds and plugin.lds still need to be cleaned up.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16651 a1c6a512-1295-4272-9138-f99709370657
2008-03-13 03:48:23 +00:00
Dave Chapman
4d58b0d4f8 Oops (from about 2 months ago) - implement viewport support in the Gigabeat F's asm-optimised lcd_bitmap_transparent_part() function.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16525 a1c6a512-1295-4272-9138-f99709370657
2008-03-05 08:12:54 +00:00
Karl Kurbjun
c3213e40ad Fix the red.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16299 a1c6a512-1295-4272-9138-f99709370657
2008-02-13 05:49:48 +00:00
Karl Kurbjun
94bd1f74a7 Make the gigabeat LCD initialization work properly without the original firmware.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16298 a1c6a512-1295-4272-9138-f99709370657
2008-02-13 05:46:04 +00:00
Michael Sevakis
0efdd7a5f7 Use the timeout API as a oneshot for headphone plug debouncing. Set at 1s for now which seems comfortable and was good for meg-fx but target-specific adjustment is easy enough (my 3G hp jack is dead so I can't check that one :( ). Do some minor rearrangements for init safety and consistency.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16178 a1c6a512-1295-4272-9138-f99709370657
2008-01-27 21:13:04 +00:00
Marcoen Hirschberg
7dff491a72 - make the booloader compile again
- make the brightness table static
- also use the logarithmic scale for the button lights


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16162 a1c6a512-1295-4272-9138-f99709370657
2008-01-25 18:05:21 +00:00
Marcoen Hirschberg
fe99a8e3da make the brightness setting logarithmic, which looks linear to the eye
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16161 a1c6a512-1295-4272-9138-f99709370657
2008-01-25 17:51:05 +00:00
Michael Sevakis
905d80619c meg-fx: remove superfluous i2c_init call
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16102 a1c6a512-1295-4272-9138-f99709370657
2008-01-18 09:35:03 +00:00
Michael Sevakis
53e79cacc6 meg-fx: correct an oops in the interrupt vector table
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16100 a1c6a512-1295-4272-9138-f99709370657
2008-01-18 09:17:47 +00:00