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
Dave Chapman
945c8a221a
Add viewport capabilities to all the LCD drivers, and adapt scrolling code. This is the firmware/ part of FS#8385 - the changes to the WPS code still need more work and will be committed at a later date. NOTE: There are no user-visible changes with this commit - just the infrastructure.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16018 a1c6a512-1295-4272-9138-f99709370657
2008-01-07 20:34:11 +00:00
Marcoen Hirschberg
c359a0ee91
let BUTTON_POWER exit the hw debug screen for the gigabeat
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15690 a1c6a512-1295-4272-9138-f99709370657
2007-11-19 16:02:50 +00:00
Jens Arnold
f4c5c6aa62
Fix bootloaders, and the backlight-modded Ondio build.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15600 a1c6a512-1295-4272-9138-f99709370657
2007-11-12 19:19:38 +00:00
Jens Arnold
ef12b3b5c6
Hardware controlled backlight brightness for iPod Video and Nano, retaining the software PWM fade in/ fade out. * Backlight handling cleanup, getting rid of one layer of 'lowlevelness'. * Use atomic GPIO bit manipulation for PP502x backlight handling.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15599 a1c6a512-1295-4272-9138-f99709370657
2007-11-12 18:49:53 +00:00
Karl Kurbjun
1b3dac9042
Setup the gigabeat so that iram is faked in a different spot since the normal iram location does not seem to be working. This lays the groundwork to get rolo running.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15581 a1c6a512-1295-4272-9138-f99709370657
2007-11-11 19:13:09 +00:00
Karl Kurbjun
31ea780ee0
Seperate the Gigabeat F/X crt0.s, cleanup some #ifdefs in app.lds, add an extra reg to the debug menu.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15579 a1c6a512-1295-4272-9138-f99709370657
2007-11-11 17:58:13 +00:00
Karl Kurbjun
d185f9eba8
Fix the Gigabeat red and move it's hw specific code into the target tree
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15562 a1c6a512-1295-4272-9138-f99709370657
2007-11-10 23:13:27 +00:00
Karl Kurbjun
5a9a2b7bc4
Unify the Gigabeat F/X and M:Robe MMU code while enabling it for the M:Robe
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15275 a1c6a512-1295-4272-9138-f99709370657
2007-10-23 03:29:15 +00:00
Jens Arnold
5f1ec307db
Name all button light functions and variables consistently starting with buttonlight_ .
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15016 a1c6a512-1295-4272-9138-f99709370657
2007-10-07 15:02:02 +00:00
Michael Sevakis
6077e5b7c8
Unify PCM interface just above the hardware driver level for all targets including the sims. Perform lockout of audio callback when changing states. Weird new playback or recording trouble? Check before and after this revision first though things seem quite sound.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15006 a1c6a512-1295-4272-9138-f99709370657
2007-10-06 22:27:27 +00:00
Michael Sevakis
287d6223d3
Dithering option for mpegplayer on gigabeat-f/x and e200. Assembly IDCT for ARm just to make it all work more nicely. Move UI simulator YUV code to its core to adapt it.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14851 a1c6a512-1295-4272-9138-f99709370657
2007-09-25 02:59:42 +00:00
Karl Kurbjun
1b9026a86d
Fix a change that shouldn't have been committed
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14831 a1c6a512-1295-4272-9138-f99709370657
2007-09-23 15:39:48 +00:00
Karl Kurbjun
67ef4500e3
More interupt/timer work
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14823 a1c6a512-1295-4272-9138-f99709370657
2007-09-22 23:17:52 +00:00
Michael Sevakis
e6511d8eaa
Faster video rendering for e200 and Gigabeat.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14675 a1c6a512-1295-4272-9138-f99709370657
2007-09-12 09:02:31 +00:00
Dave Chapman
1672350378
FS #7691 - improved USB detection on PP devices. This patch modifies the target-tree function usb_detect() on all targets from bool to int, returning USB_INSERTED or USB_EXTRACTED instead of true or false. This was done to enable the PP usb_detect() to check for USB_POWER (either a connection to a USB wall charger, or the user holding "charge mode" button) and return that as a third value.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14600 a1c6a512-1295-4272-9138-f99709370657
2007-09-04 08:03:07 +00:00
Jens Arnold
0fac492c3d
First step of powermanagement rework: * Move target specific stuff into target tree, starting with battery voltage tables and voltage reading. (This revealed some incorrect percent_to_voltage_charging mappings). * Voltage reading on 1st gen ipods is now correct. * Clean up obsolete config #defines.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14375 a1c6a512-1295-4272-9138-f99709370657
2007-08-17 06:45:18 +00:00
Michael Sevakis
d25dc33453
Oops. mvn is one's-complement, not two's. Correct the YUV calculation.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14184 a1c6a512-1295-4272-9138-f99709370657
2007-08-04 20:36:22 +00:00
Michael Sevakis
62c8e2d69d
Stop Gigabeat bootloader from panicing.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14052 a1c6a512-1295-4272-9138-f99709370657
2007-07-29 07:41:19 +00:00
Michael Sevakis
d219491e58
Gigabeat: Add the funky foreground color support for transparent bitmaps.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13898 a1c6a512-1295-4272-9138-f99709370657
2007-07-15 01:06:04 +00:00
Michael Sevakis
2e6723bcd2
Gigabeat: Squeeze down lcd_bitmap_transparent_part a bit. Let the compiler choose the registers.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13829 a1c6a512-1295-4272-9138-f99709370657
2007-07-09 03:53:12 +00:00
Michael Sevakis
897c643991
Gigabeat: properly confined framebuffer copies and a few pendantic changes to lcd_yuv_blit. No difference full screen but quite a speedup to copy only the required bit: 534->1062 fps for 1/4 screen update using test_fps.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13821 a1c6a512-1295-4272-9138-f99709370657
2007-07-08 17:10:22 +00:00
Michael Sevakis
77789f0f8d
Gigabeat: oops, forgot to set correct timer prescaler limit.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13807 a1c6a512-1295-4272-9138-f99709370657
2007-07-06 22:08:07 +00:00
Michael Sevakis
4ae87c8b8a
Gigabeat: Add timer functionality. Rework tick timer setup to be exactly 100Hz. Metronome should work now but some pcm changes are needed to have faster tocks work correctly (in the works).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13806 a1c6a512-1295-4272-9138-f99709370657
2007-07-06 21:36:32 +00:00
Robert Keevil
7785d6949e
Temporary fix for FS#7257 and FS#7261 - playback resumes while paused when seeking
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13795 a1c6a512-1295-4272-9138-f99709370657
2007-07-05 10:19:06 +00:00