Commit graph

79 commits

Author SHA1 Message Date
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
Jens Arnold
3c561f2cf9 Make the LCD remote work in the Iriver H1x0 and H300 bootloaders as well (untested). * Only try the initial remote LCD init if the remote is plugged, and do it in main builds as well, giving slightly earlier remote LCD output when booting. * Fix delays in the X5/M5 remote LCD init. * Remove an unnecessary check in the X5/M5 remote LCD driver and the M3 LCD driver.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16655 a1c6a512-1295-4272-9138-f99709370657
2008-03-13 19:36:58 +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
Jens Arnold
17bc340f1f Make the LCD remote work in the iAudio M3, M5 and X5 bootloaders. * Fix viewport related init bug in the 2 bit vertically interleaved LCD driver. * Fix low bat warning in iaudio bootloader - voltages are in millivolts now.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16648 a1c6a512-1295-4272-9138-f99709370657
2008-03-12 23:08:33 +00:00
Peter D'Hoye
3c58f5d026 code police: add some missing trailing zeroes to remove possible confusion. No functional change.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16466 a1c6a512-1295-4272-9138-f99709370657
2008-03-01 17:52:26 +00:00
Robert Kukla
8812879aac fix h300 red
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16209 a1c6a512-1295-4272-9138-f99709370657
2008-02-03 18:31:47 +00:00
Robert Kukla
9dc67828a9 mrobe 100: real time clock (if anybody recognises the RTC chip let me know)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16208 a1c6a512-1295-4272-9138-f99709370657
2008-02-03 18:15:39 +00:00
Jens Arnold
837012be86 Fix graphical glitches occuring in the greyscale library on H1x0 and M5 at 124MHz. The main loop within lcd_grey_data() needed instruction reordering (interspersing lcd writes with memory accesses) to meed the LCD controller timing. Slight slowdown because of the extra register needed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16091 a1c6a512-1295-4272-9138-f99709370657
2008-01-15 00:51:58 +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
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
Barry Wardell
0d8111cb39 Split radio i2c drivers into target tree where they belong. No changes to binaries produced.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15558 a1c6a512-1295-4272-9138-f99709370657
2007-11-10 19:14:01 +00:00
Jens Arnold
3674af6441 Coldfire: Partially revert buffered writes, and enable them explicitly for the LCD only. Turned out that with buffered writes enabled, reads after writes are not always serialized, which is a bad thing for I/O. Buffered writes to the LCD are safe because that's write-only. Fixes FS #7985. How come I didn't notice this earlier? :>
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15173 a1c6a512-1295-4272-9138-f99709370657
2007-10-17 20:45:13 +00:00
Jens Arnold
b85b6be3aa Coldfire targets: enable buffered writes by default. Speeds up all sorts of I/O that writes to ports: LCD update (except the functions using DMA on H300), ATA writes, .... Some timings had to be adjusted for the new configuration.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15129 a1c6a512-1295-4272-9138-f99709370657
2007-10-15 21:16:50 +00:00
Jens Arnold
99f9550881 H300, X5: Optimised lcd_yuv_blit(), using line-pair zig-zag writing to the LCD controller. ~7% speedup on H300, ~5% speedup on X5.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15111 a1c6a512-1295-4272-9138-f99709370657
2007-10-14 23:05:56 +00:00
Steve Bavin
c90c18ea67 Thanks to LinusN, fix Coldfire bootloaders not booting - FS#7533
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14949 a1c6a512-1295-4272-9138-f99709370657
2007-10-02 07:54:50 +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
bfa1adcd06 H300: Read battery voltage with 10bit precision.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14379 a1c6a512-1295-4272-9138-f99709370657
2007-08-17 20:47:24 +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
Jens Arnold
8a177345ce Moved archos power handling into target tree. * Tuner power handling cleaned up a bit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14345 a1c6a512-1295-4272-9138-f99709370657
2007-08-14 22:06:23 +00:00
Nils Wallménius
f28da1a35a Enable a lot more features for simulators and add stubs where necessary, simulators should now work with identical lng and voice files as the respective target
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14299 a1c6a512-1295-4272-9138-f99709370657
2007-08-12 19:49:03 +00:00
Michael Sevakis
60b01fa0f7 Straignten out some issues with HAVE_LCD_ENABLE. 1g/2g/3g had it defined but it shouldn't have been. lcd_enabled() was only available as a real function on gigabeat but others can use that too. Markup lcd.h a bit because I got a bit lost in it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14100 a1c6a512-1295-4272-9138-f99709370657
2007-07-31 12:43:06 +00:00
Jens Arnold
2e2f92c906 H1x0, H300: Get rid of the adc tick, and use the same concept as the iAudio ADC driver.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14079 a1c6a512-1295-4272-9138-f99709370657
2007-07-30 19:13:59 +00:00
Michael Sevakis
58fc279d26 Scroll on main and remote with a single thread. Change the way system messages are defined before running out is an issue (which requires a full update of rockbox on the player).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14035 a1c6a512-1295-4272-9138-f99709370657
2007-07-28 08:12:05 +00:00
Jens Arnold
3deb27053a Fix red bootloader builds. * Fix non-working PP5022 bootloaders. Also define correct IRAM size for PP5022/PP5024 bootloaders.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14015 a1c6a512-1295-4272-9138-f99709370657
2007-07-26 21:51:44 +00:00
Michael Sevakis
7d759f6b9c Do some planned radio interface cleanup since adding in the LV24020LP.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13880 a1c6a512-1295-4272-9138-f99709370657
2007-07-14 11:20:31 +00:00
Magnus Holmgren
7d5deaa5a0 H1x0: Increase delay during button reads. Hopefully fixes the scroll down problem (see forum thread 11081.0).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13765 a1c6a512-1295-4272-9138-f99709370657
2007-07-02 18:47:02 +00:00
Michael Sevakis
070417d152 Forget all the nonsense with C delay loops. 'volatile' on the variable makes bloated code and a volatile, blank asm block inside may or may not be optimized out. Use asm delay loops instead for Coldfire. Radio i2c driver also needs NACK after reading last tuner byte. Get the volatile off the Ondio loops (not needed here now). Maybe this is straightened out now.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13725 a1c6a512-1295-4272-9138-f99709370657
2007-06-27 03:11:49 +00:00
Nils Wallménius
8dc1a67bba Fix iriver H100 i2c driver which was broken by the switch to build with -Os. Fixes FS#7316 and FS#7321
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13676 a1c6a512-1295-4272-9138-f99709370657
2007-06-19 20:39:30 +00:00
Michael Sevakis
2d48d0ffa6 Straighten out some audio path APIs and misc. audio stuff. Having recording is not a prerequisite to having input/output source selection which is probably most useful when adding a audio input features like FM to a new port without forcing recording to be implemented first.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13599 a1c6a512-1295-4272-9138-f99709370657
2007-06-08 23:42:04 +00:00
Jens Arnold
c49d5dd631 Coldfire targets: Adjusted PLL settings (lowest possible VCO clock for each setting) and IDE timing (especially it's faster now on M5+X5). * Added/updated table showing the necessary settings (PLL, refresh, waitstates, IDE timing) for each possible clock frequency.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13230 a1c6a512-1295-4272-9138-f99709370657
2007-04-21 09:29:01 +00:00
Jens Arnold
47bf6c5a5a Moved archos backlight code to target tree. Changed old mutlivalue CONFIG_BACKLIGHT to a simple HAVE_BACKLIGHT.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13136 a1c6a512-1295-4272-9138-f99709370657
2007-04-12 22:12:13 +00:00
Jens Arnold
fad79dc636 Moved archos USB handling to target tree. Minor simplification for coldfire (only one usb-target.h).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13110 a1c6a512-1295-4272-9138-f99709370657
2007-04-11 20:44:32 +00:00
Michael Sevakis
633f388002 Coldfire targets: Shuffle IRQ levels around to have all interaction between low level audio function calls and DMA be atomic. Make recording and playback independently startable and stoppable so one can be running and not interfere with the other. All tests I can do at the moment check out ok (play, record, play+record, FM radio on iRivers, S/PDIF on H120 (w/running optical on/off), and on-the-fly samplerate changes). Recording tested for well over an hour run and no problems.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12658 a1c6a512-1295-4272-9138-f99709370657
2007-03-07 06:23:02 +00:00
Michael Sevakis
8867d00141 More catching up on old work. Refine audio interface setup on Coldfire. Stop the funky glitching on the iAudio stuff when starting recording esp. at 88.2kHz. (probably due to the bidi interface). iRivers don't seem to care what you do. TLV320 still seems to have a little trouble selecting it's filters correctly for 88.2kHz or it could be some odd phasing effect. Get rid of the horrible reset parameter in pcm_apply_settings as it can decide for itself.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12618 a1c6a512-1295-4272-9138-f99709370657
2007-03-05 08:14:27 +00:00
Michael Sevakis
198772a6b2 iRiver H100 series: Catching up on old work. Use a better way to keep playback going when switching optical output. Doesn't mess with the DMA peripheral requests to do it like before but just writes a sample to the FIFO. Would really like to reformulate interrupt scheme on Coldfire to allow DMA interrupts to be blocked specifically but not normally.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12605 a1c6a512-1295-4272-9138-f99709370657
2007-03-04 21:43:35 +00:00
Linus Nielsen Feltzing
ff17905d7c H300 bootloader: (Work in progress) Boot Rockbox on RTC alarm, add charging screen, move to a separate source file, backlight is on during USB mode (again)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12546 a1c6a512-1295-4272-9138-f99709370657
2007-03-02 11:28:23 +00:00
Robert Kukla
50b5ee4781 FS#6419 - driver for H1x0 series RTC Mod with runtime detection
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12520 a1c6a512-1295-4272-9138-f99709370657
2007-02-28 13:20:36 +00:00
Jens Arnold
d528e54b61 Move target specific parts of the H100 remote LCD driver to target tree.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12485 a1c6a512-1295-4272-9138-f99709370657
2007-02-25 22:09:14 +00:00
Linus Nielsen Feltzing
9744433752 Move the MPARK init to system_init()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12452 a1c6a512-1295-4272-9138-f99709370657
2007-02-22 14:54:13 +00:00
Linus Nielsen Feltzing
6c3db6e65f Correct LCD DMA init on the H300
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12450 a1c6a512-1295-4272-9138-f99709370657
2007-02-22 11:57:11 +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
c652218d14 Fix remaining CONFIG_TUNER checks.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12385 a1c6a512-1295-4272-9138-f99709370657
2007-02-18 08:46:12 +00:00
Jonathan Gordon
9a6f419775 CONFIG_CHARGING
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12384 a1c6a512-1295-4272-9138-f99709370657
2007-02-18 05:32:06 +00:00
Jonathan Gordon
ac61951452 Do the CONFIG_USBOTG define correctly
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12382 a1c6a512-1295-4272-9138-f99709370657
2007-02-18 04:57:28 +00:00
Jonathan Gordon
1083de8e7d CONFIG_USBOTG fixes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12377 a1c6a512-1295-4272-9138-f99709370657
2007-02-18 01:17:06 +00:00
Magnus Holmgren
1916576728 Keep delay loop from being optimized away.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12367 a1c6a512-1295-4272-9138-f99709370657
2007-02-17 23:06:50 +00:00
Linus Nielsen Feltzing
1eff300f18 New PLL calculations to make sure that PLLDIV != 0. This seems to solve the problem with the troublesome H140 batch from OutletMP3.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12201 a1c6a512-1295-4272-9138-f99709370657
2007-02-05 00:01:29 +00:00
Linus Nielsen Feltzing
bc76a42eca Corrected the comments regarding USB charging
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12181 a1c6a512-1295-4272-9138-f99709370657
2007-02-02 15:47:28 +00:00