Commit graph

632 commits

Author SHA1 Message Date
Jens Arnold
9daf658ef1 iPod Video LCD driver: Reintroduce the simple method of waiting for update completion for use in the bootloader, because bootloaders don't enable interrupts and hence the tick task won't work. Slower than the full driver, but still faster than the old one, because it first transfers the data, and then polls the BCM.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15399 a1c6a512-1295-4272-9138-f99709370657
2007-11-02 01:18:14 +00:00
Jens Arnold
c888a9bebe Bootloaders are single core... (aka fix red)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15398 a1c6a512-1295-4272-9138-f99709370657
2007-11-02 00:24:20 +00:00
Jens Arnold
ef8a7eaf2a Major speedup of the iPod Video LCD driver. The internal update procedure of the BCM chip is now completely shadowed, handled by a tick task as necessary. Also fixes the occasional UI freezes due to stalled BCM updates by re-kicking it after a timeout.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15397 a1c6a512-1295-4272-9138-f99709370657
2007-11-02 00:07:45 +00:00
Dave Chapman
a4d48d0c0d Button driver for Logik DAX, plus some changes to the debug info displayed in the bootloader build.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15396 a1c6a512-1295-4272-9138-f99709370657
2007-11-01 23:38:57 +00:00
Jens Arnold
b77893e4d5 C200: Reworked the LCD driver a bit, and fixed a bug with single column updates (was only visible in mandelbrot).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15343 a1c6a512-1295-4272-9138-f99709370657
2007-10-28 13:16:05 +00:00
Jens Arnold
b05066de12 iPod Video: Further optimised LCD data transfer (5..6% speedup, but increase in FPS measured with test_fps is less), making use of the fact that the low address bits aren't decoded by the BCM. Major cleanup of the driver, and introduced register names.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15341 a1c6a512-1295-4272-9138-f99709370657
2007-10-28 12:09:46 +00:00
Dave Chapman
28f6ae49ec Initial work on a port to the Logik DAX 1GB MP3/DAB player. The bootloader build compiles and runs (but only displays some debugging info), and the LCD and ADC drivers are working. Two different bootloader builds are possible: 1) The default build is just a test application for uploading to the device via tcctool; 2) Adding -DTCCBOOT to EXTRA_DEFINES in the build directory Makefile will compile the bootloader so that it can be appended to the end of the original firmware and installed on the device, dual-booting. This commit also includes some work by Hein-Pieter van Braam on a port to the iAudio 7, but that doesn't build yet. A large part of these ports will be generic to all TCC77x devices - see the TelechipsInfo wiki page for some other devices with this CPU. NOTE: Compiling these builds requires an arm-elf-gcc with armv5 support - the current version of rockboxdev.sh compiles such a gcc.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15339 a1c6a512-1295-4272-9138-f99709370657
2007-10-28 11:08:10 +00:00
Michael Sevakis
c266204aec e200: shorten some delays so the backlight turn on is snappier. Values seem to have a safe margin.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15337 a1c6a512-1295-4272-9138-f99709370657
2007-10-28 00:39:01 +00:00
Karl Kurbjun
0a632680e9 Some small cleanups and code for testing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15312 a1c6a512-1295-4272-9138-f99709370657
2007-10-26 05:17:15 +00:00
Barry Wardell
007563c93d FS#8023: Use of AS3514 #defines instead of magic values.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15297 a1c6a512-1295-4272-9138-f99709370657
2007-10-25 09:03:47 +00:00
Jonathan Gordon
eed41ff985 mrobe changes:
stop it thinking the battery is always flat and shutting down
add keymap for time/date screen
pressing a list item will highlight it before accepting it (looks better than it just entering the item without the selection changing first)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15280 a1c6a512-1295-4272-9138-f99709370657
2007-10-23 14:33:16 +00:00
Jonathan Gordon
dbff3731a5 enable the RTC on the mrobe.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15279 a1c6a512-1295-4272-9138-f99709370657
2007-10-23 14:22:44 +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
Jonathan Gordon
4c06ad6e72 mr500 sort of working battery measurments. probably could be done better, but it works
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15271 a1c6a512-1295-4272-9138-f99709370657
2007-10-22 15:28:40 +00:00
Jonathan Gordon
12d1ff912c touchpad driver for the mrobe. nothing in apps/ uses it yet.
Changes to button driver: HAVE_BUTTON_DATA targets pass the button data straight back in the button_read_device() call


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15262 a1c6a512-1295-4272-9138-f99709370657
2007-10-22 07:01:59 +00:00
Jonathan Gordon
e49ab427f0 revert the previous one... = is ok and a touch faster
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15261 a1c6a512-1295-4272-9138-f99709370657
2007-10-22 06:40:32 +00:00
Jonathan Gordon
344c41f644 fix the interupt clearing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15259 a1c6a512-1295-4272-9138-f99709370657
2007-10-22 03:18:26 +00:00
Jens Arnold
3c1b9d9d70 Assembler optimised lcd_yuv_blit() for iPod Video (Fs #7951 by Andree Buschmann, adapted and separated into an .S file by me).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15257 a1c6a512-1295-4272-9138-f99709370657
2007-10-22 00:37:50 +00:00
Karl Kurbjun
fdbc01c6e2 More M:Robe work including a fix to lcd-as-memframe for larger screens thanks to Michael Sevakis. Also fixes simulator builds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15254 a1c6a512-1295-4272-9138-f99709370657
2007-10-21 23:12:17 +00:00
Jens Arnold
c1051549b9 Implement YUV dithering for c200, and enable the option in mpegplayer.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15246 a1c6a512-1295-4272-9138-f99709370657
2007-10-21 13:46:26 +00:00
Jonathan Gordon
61f1ab27ff init spi and uart in the main build
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15195 a1c6a512-1295-4272-9138-f99709370657
2007-10-19 02:14:09 +00:00
Jonathan Gordon
d8667df357 slightly better touchpad driver. Still not brilliant, but the bootloader/debugger can follow a stylus with a cursor, so we can start work on getting apps/ working
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15187 a1c6a512-1295-4272-9138-f99709370657
2007-10-18 12:15:56 +00:00
Jonathan Gordon
b431fe349f Make rockbox think we have a full battery untill this actually works, otherwise apps/ doesnt like it
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15186 a1c6a512-1295-4272-9138-f99709370657
2007-10-18 10:53:59 +00:00
Karl Kurbjun
fa1a38e7ce Some changes to the UART/button driver - reduce the number of interrupts - more work is needed
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15180 a1c6a512-1295-4272-9138-f99709370657
2007-10-18 05:14:10 +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
Karl Kurbjun
f6bc19158e Turns out you can boot the main build by copying apps/rockbox.bin to /rockbox.mrboot. Something is wrong with the rockbox bootloader, but at least now we can work with the main build. Added in a warning for the core_sleep function
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15162 a1c6a512-1295-4272-9138-f99709370657
2007-10-17 05:19:20 +00:00
Thom Johansen
b5f779b2ef Parts of FS #7951 by Andree Buschmann. Faster YUV BLIT (means faster mpegplayer) for Ipods Nano and Video while we're waiting for the assembler ones.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15147 a1c6a512-1295-4272-9138-f99709370657
2007-10-16 19:47:15 +00:00
Barry Wardell
1d1a17c0db Improved H10 ADC driver. We now do things exactly as the OF does. This includes shifting the readings by 0x14 when PLL is enabled. Battery voltages and remote/scrollpad values adjusted accordingly. We also now wait for the ADC to indicate the conversion is complete before reading the data, so hopefully we will get more reliably steady readings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15141 a1c6a512-1295-4272-9138-f99709370657
2007-10-16 10:48:16 +00:00
Michael Sevakis
782aae4402 Finish the conversion to packed i2s for PP502x. Karl Kurbjun-approved for Mini-1G. Simplify the pcm format selection #ifdefs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15137 a1c6a512-1295-4272-9138-f99709370657
2007-10-16 04:19:18 +00:00
Michael Sevakis
a9b2fb5ee3 Finally full multicore support for PortalPlayer 502x targets with an eye towards the possibility of other types. All SVN targets the low-lag code to speed up blocking operations. Most files are modified here simple due to a name change to actually support a real event object and a param change to create_thread. Add some use of new features but just sit on things for a bit and leave full integration for later. Work will continue on to address size on sensitive targets and simplify things if possible. Any PP target having problems with SWP can easily be changed to sw corelocks with one #define change in config.h though only PP5020 has shown an issue and seems to work without any difficulties.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15134 a1c6a512-1295-4272-9138-f99709370657
2007-10-16 01:25:17 +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
3a5509a8d7 Fix coldfire PCF50606 I2C driver, and iriver FM radio I2C driver. Both drivers had wrong timing, discovered while experimenting with buffered writes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15122 a1c6a512-1295-4272-9138-f99709370657
2007-10-15 16:45:46 +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
Karl Kurbjun
b7a4e101cb M:Robe - Fix compilation and remove some warnings
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15095 a1c6a512-1295-4272-9138-f99709370657
2007-10-13 14:53:34 +00:00
Jens Arnold
d160c10e37 H10 LCD driver size reductions: Un-inline a function for H10 20GB, and introduce lcd_write_reg() for H10 5/6GB.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15090 a1c6a512-1295-4272-9138-f99709370657
2007-10-12 17:09:33 +00:00
Jens Arnold
8aeed2d32e PP LCD drivers: * Optimised and cleaned up PP colour LCD drivers. Immeasurable speedup on iPod Color, huge speedup on small H10 (a factor of 3). Should be a bit faster on big H10 too. * Big H10 changed bitmap format, so needs reconfiguring + full rebuild. * Better register naming for the mono LCD bridge. Register names for the colour LCD bridge.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15082 a1c6a512-1295-4272-9138-f99709370657
2007-10-12 00:28:57 +00:00
Will Robertson
95a3e14170 These functions haven't been implemented yet - remove their content to get Gigabeat S builds compiling again.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15074 a1c6a512-1295-4272-9138-f99709370657
2007-10-11 08:25:24 +00:00
Thom Johansen
8f72192fa2 Increase step size of stereo width to 5% to avoid tediously long list in settings. Reduce max limit from 255% to 250% for cosmetic reasons, value of 255% was chosen because of (very) old restrictions in settings system anyway.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15057 a1c6a512-1295-4272-9138-f99709370657
2007-10-09 21:29:20 +00:00
Dave Chapman
1092edf3e1 Packed I2S for ipod Color (tested) and ipod 4G (untested, but assumed to be the same as the Color - everything else is).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15053 a1c6a512-1295-4272-9138-f99709370657
2007-10-09 20:57:31 +00:00
Michael Sevakis
ce135909b9 Change c200 and e200 to use the same IIS FIFO format as seems to be working for others. Samples there have been packed for a long time though so no change to that.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15051 a1c6a512-1295-4272-9138-f99709370657
2007-10-09 20:12:26 +00:00
Jens Arnold
6c98c8c6cb Packed I2S for iPod Mini G2.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15050 a1c6a512-1295-4272-9138-f99709370657
2007-10-09 19:59:00 +00:00
Thom Johansen
8500f485b6 FS #7917 by Andree Buschmann. Packed I2S also for Ipod Video.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15049 a1c6a512-1295-4272-9138-f99709370657
2007-10-09 19:24:18 +00:00
Michael Sevakis
3fd073ed4d Unbloat the PCM changes on PortalPlayer
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15041 a1c6a512-1295-4272-9138-f99709370657
2007-10-09 00:09:28 +00:00
Thom Johansen
eb1e35f6af Make Ipod Nano use packed 16 bit IIS FIFO transfers as well.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15040 a1c6a512-1295-4272-9138-f99709370657
2007-10-08 21:20:06 +00:00
Michael Sevakis
4c3897eb15 Hopefully take care of FS#7806 - Current Sansapatcher fails to boot OF by removing all hotswap support from the bootloader. It won't fully be closed until Sansapatcher is updated of course. There's still a report of the partition dump not working unless 20 bytes of padding are inserted at the start of main() but that's only a developer-enabled feature. Seems weird though.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15038 a1c6a512-1295-4272-9138-f99709370657
2007-10-08 20:39:46 +00:00
Michael Sevakis
4512f1a14f Finally get packed samples to work in a nice way on H10 in IIS mode. Add some more register defs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15026 a1c6a512-1295-4272-9138-f99709370657
2007-10-07 20:14:32 +00:00
Jens Arnold
d1e2f5240c c200: First implemention of lcd_yuv_blit(). mpegplayer works now, but speed can be optimized more and dithering is not yet implemented.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15020 a1c6a512-1295-4272-9138-f99709370657
2007-10-07 17:54:49 +00:00
Jens Arnold
1f0d06f085 * Use proper definitions for the PP (mono) LCD bridge. * Clean up pp5002.h a bit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15018 a1c6a512-1295-4272-9138-f99709370657
2007-10-07 16:44:55 +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
Jens Arnold
0464c36bdc Fix red bootloader build.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15015 a1c6a512-1295-4272-9138-f99709370657
2007-10-07 12:57:07 +00:00