Commit graph

28936 commits

Author SHA1 Message Date
Bertrik Sikken
4991c858a0 sansa clipzip: implement lcd reset in the lcd driver
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30408 a1c6a512-1295-4272-9138-f99709370657
2011-09-01 17:06:19 +00:00
Bertrik Sikken
6a9aac7a5f sansa clipzip: implement lcd_enable
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30407 a1c6a512-1295-4272-9138-f99709370657
2011-09-01 16:59:30 +00:00
Michael Sevakis
d87f9fc909 Oops. "void void" doesn't work in C :p.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30404 a1c6a512-1295-4272-9138-f99709370657
2011-09-01 12:20:52 +00:00
Michael Sevakis
4db3e89652 Shuffle some functions around so that interfacing with playback.c in particular isn't required. Though playback does finish the audio init, pcm doesn't care who does it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30403 a1c6a512-1295-4272-9138-f99709370657
2011-09-01 12:15:43 +00:00
Jonathan Gordon
d67d6a8462 Fix the timeout so the selected item will scroll
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30402 a1c6a512-1295-4272-9138-f99709370657
2011-09-01 11:29:55 +00:00
Michael Sevakis
6d3a6f71d1 Remove obsolete init cruft from audio system because of diminished dependencies. All talk/voice dependency in playback.c should be imminently removable.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30401 a1c6a512-1295-4272-9138-f99709370657
2011-09-01 07:32:07 +00:00
Andree Buschmann
67f5249559 Fix residual red, thanks to Zagor.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30400 a1c6a512-1295-4272-9138-f99709370657
2011-08-31 20:34:44 +00:00
Andree Buschmann
72a345b6a7 Fix some more libgme compile issues.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30399 a1c6a512-1295-4272-9138-f99709370657
2011-08-31 19:42:18 +00:00
Andree Buschmann
89ee297314 Check for CPU_ARM in libgme/blip_buffer.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30398 a1c6a512-1295-4272-9138-f99709370657
2011-08-31 19:29:21 +00:00
Andree Buschmann
13cbade08a Update libgme to Blargg's Game_Music_Emu 0.6-pre.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30397 a1c6a512-1295-4272-9138-f99709370657
2011-08-31 19:19:49 +00:00
Michael Sevakis
d089e10403 Get rid of strict aliasing warnings for ARMv6 spc_dsp.c. Just do load in asm block instead.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30396 a1c6a512-1295-4272-9138-f99709370657
2011-08-31 11:19:16 +00:00
Andree Buschmann
5ed7439cc7 Build libgme with the same compiler settings as other codecs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30395 a1c6a512-1295-4272-9138-f99709370657
2011-08-31 10:30:08 +00:00
Andree Buschmann
5cfec21350 Declare several libgme functions static.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30394 a1c6a512-1295-4272-9138-f99709370657
2011-08-31 09:15:04 +00:00
Thomas Martitz
7e14b935df Dircache: Allow dircache to be enabled without reboot.
Also add two dircache function, one of which does what dircache_disable()
did previously as this now also frees the dircache buffer.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30393 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 21:07:46 +00:00
Andree Buschmann
c1ae789108 Fix red.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30392 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 19:48:08 +00:00
Andree Buschmann
e88d24a840 Submit parts of FS#12189 regarding codec API. Replaces access to global settings with a dedicated function to determine if the current track shall be looped. Used by several synthesizer codecs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30391 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 19:40:09 +00:00
Bertrik Sikken
e66ad3e8a8 sansa clipzip: implement backlight
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30390 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 19:13:44 +00:00
Bertrik Sikken
99f260ef49 sansa clipzip: fix bounds check/correction in lcd_update_rect
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30389 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 18:14:20 +00:00
Thomas Martitz
35b0c613d0 Bump plugin api version.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30388 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 16:50:16 +00:00
Thomas Martitz
42f10e04df Remove buflib from the pluginlib and use the core one.
buflib_get_data() isn't inlined for plugins anymore, but can be if really needed.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30387 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 16:48:36 +00:00
Michael Sevakis
456170afdf Clean up and simplify the voice thread code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30386 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 15:35:25 +00:00
Thomas Martitz
bb000ce525 Fix last yellows.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30385 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 14:38:16 +00:00
Thomas Martitz
0c4c81620f Fix h100 red and other warnings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30384 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 14:32:16 +00:00
Thomas Martitz
41b04e55eb Fix hwcodec red.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30383 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 14:28:01 +00:00
Thomas Martitz
e0aeca12ad Bump plugin API.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30382 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 14:18:29 +00:00
Thomas Martitz
baa070cca6 GSoC/Buflib: Enable compaction in buflib.
This enables the ability to allocate (and free) memory dynamically
without fragmentation, through compaction. This means allocations can move
and fragmentation be reduced. Most changes are preparing Rockbox for this,
which many times means adding a move callback which can temporarily disable
movement when the corresponding code is in a critical section.

For now, the audio buffer allocation has a central role, because it's the one
having allocated most. This buffer is able to shrink itself, for which it
needs to stop playback for a very short moment. For this,
audio_buffer_available() returns the size of the audio buffer which can
possibly be used by other allocations because the audio buffer can shrink.

lastfm scrobbling and timestretch can now be toggled at runtime without
requiring a reboot.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30381 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 14:01:45 +00:00
Thomas Martitz
d0b72e2590 GSoC/Buflib: Add buflib memory alocator to the core.
The buflib memory allocator is handle based and can free and
compact, move or resize memory on demand. This allows to effeciently
allocate memory dynamically without an MMU, by avoiding fragmentation
through memory compaction.

This patch adds the buflib library to the core, along with
convinience wrappers to omit the context parameter. Compaction is
not yet enabled, but will be in a later patch. Therefore, this acts as a
replacement for buffer_alloc/buffer_get_buffer() with the benifit of a debug
menu.

See buflib.h for some API documentation.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30380 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 14:01:33 +00:00
Andree Buschmann
c940811ade Introduce CPU dependent IRAM configuration for libgme. Use ICODE_ATTR for an emu2413-function to speed up PP5022 by up to 6%.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30379 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 12:35:12 +00:00
Michael Sevakis
72213e6b1b Make tdspeed.c a bit nicer to read. No functional changes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30378 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 07:42:22 +00:00
Bertrik Sikken
17fcb4cfe3 sansa clipzip: correct GPIO used for backlight
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30377 a1c6a512-1295-4272-9138-f99709370657
2011-08-29 21:08:24 +00:00
Bertrik Sikken
401edf8b48 sansa clipzip: implement more functions in the lcd driver
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30376 a1c6a512-1295-4272-9138-f99709370657
2011-08-29 21:05:59 +00:00
Andree Buschmann
152c4fb819 Final commit to get test_codec working properly for both freq-scaling and non-freq-scaling targets.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30375 a1c6a512-1295-4272-9138-f99709370657
2011-08-29 13:48:31 +00:00
Andree Buschmann
656625b30e Fix logic of test_codec for targets with HAVE_ADJUSTABLE_CPU_FREQ.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30374 a1c6a512-1295-4272-9138-f99709370657
2011-08-29 13:00:35 +00:00
Michael Sevakis
e137e9e47f codec_main() prototype inside codec_crt0.c is no longer needed since it's in codecs.h now.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30373 a1c6a512-1295-4272-9138-f99709370657
2011-08-28 22:53:40 +00:00
Nils Wallménius
91ba09b099 libtremor: comment out some more unused functions, make a function param unsigned to simplify generated code, gives a small speedup on cf.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30372 a1c6a512-1295-4272-9138-f99709370657
2011-08-28 17:28:44 +00:00
Nils Wallménius
1be2290bfa libtremor: remove some inline cf asm that is no longer needed with the new toolchain, no speed diff.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30371 a1c6a512-1295-4272-9138-f99709370657
2011-08-28 16:36:42 +00:00
Nils Wallménius
12e159dcb4 libtremor: comment out some unused functions and mark some file local functions static, saves a few hundred bytes and might give a tiny speedup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30370 a1c6a512-1295-4272-9138-f99709370657
2011-08-28 16:35:45 +00:00
Michael Sevakis
31567306e7 Restore functionality of pcmbuf_is_lowdata. It fell out of sync since the mixer code and then an incorrect change unintentionally remained in r30366.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30369 a1c6a512-1295-4272-9138-f99709370657
2011-08-28 14:26:59 +00:00
Andree Buschmann
cc6a780a13 Remove obsolete 'ci->set_elapsed()' from mpc.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30368 a1c6a512-1295-4272-9138-f99709370657
2011-08-28 14:25:38 +00:00
Michael Sevakis
9384cda2bb Remove INT_MAX from pcmbuf.c. Win32 sim compained about it and it isn't specifically important enough for another #include - it just needs a great enough value to cover any remaining data.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30367 a1c6a512-1295-4272-9138-f99709370657
2011-08-28 08:59:14 +00:00
Michael Sevakis
7ad2cad173 Commit work started in FS#12153 to put timing/position information in PCM
buffer chunks.

* Samples and position indication is closely associated with audio data
  instead of compensating by a latency constant. Alleviates problems with
  using the elapsed as a track indicator where it could be off by several
  steps.

* Timing is accurate throughout track even if resampling for pitch shift,
  whereas before it updated during transition latency at the normal 1:1 rate.

* Simpler PCM buffer with a constant chunk size, no linked lists.

In converting crossfade, a minor change was made to not change the WPS until
the fade-in of the incoming track, whereas before it would change upon the
start of the fade-out of the outgoing track possibly having the WPS change
with far too much lead time.

Codec changes are to set elapsed times *before* writing next PCM frame because
 time and position data last set are saved in the next committed PCM chunk. 


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30366 a1c6a512-1295-4272-9138-f99709370657
2011-08-28 07:45:35 +00:00
Bertrik Sikken
463b3ed8b2 Initial framework for the Sandisk Sansa Clip Zip
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30365 a1c6a512-1295-4272-9138-f99709370657
2011-08-27 16:21:19 +00:00
Nils Wallménius
3aeb7fad9a FS#12163 by Sean Bartell
get_long_be shifts an unsigned char left--which results in a signed int.
It then implicitly casts to unsigned long, which sign-extends the int,
leaving unwanted 1's in the upper bits. This affects AIFF.



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30364 a1c6a512-1295-4272-9138-f99709370657
2011-08-27 12:34:21 +00:00
Bertrik Sikken
813b7623c1 FS#12207 - Fast second july update of Czech language by Marek Salaba
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30363 a1c6a512-1295-4272-9138-f99709370657
2011-08-27 10:24:30 +00:00
Andree Buschmann
ae2233b338 Change the cuesheet fix from r30359 to have a minor binsize increase on SH1.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30362 a1c6a512-1295-4272-9138-f99709370657
2011-08-26 16:46:23 +00:00
Steve Bavin
89f704bfb1 Utterly pointless fix for an unused Doom module (but while the code is in our source it ought not to have buffer overrides in, right?).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30361 a1c6a512-1295-4272-9138-f99709370657
2011-08-26 16:12:51 +00:00
Steve Bavin
953a073a4d Minor libwmavoice fixes; initialise the entire VBM tree and remove file handle leak from test util.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30360 a1c6a512-1295-4272-9138-f99709370657
2011-08-26 16:03:48 +00:00
Andree Buschmann
9931b3c7a8 Avoid overflow in cuesheet marker positioning. Fixes FS#12246. Thanks to Nick Peskett.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30359 a1c6a512-1295-4272-9138-f99709370657
2011-08-26 15:52:22 +00:00
Steve Bavin
dbee923b34 Fix marginal buffer overflow in chessbox.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30358 a1c6a512-1295-4272-9138-f99709370657
2011-08-26 15:50:16 +00:00
Steve Bavin
89ee922ab6 Remove a slightly silly null dereference. (a.k.a. I'm playing with cppcheck too.)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30357 a1c6a512-1295-4272-9138-f99709370657
2011-08-26 15:46:18 +00:00