Commit graph

14214 commits

Author SHA1 Message Date
Marcin Bukat
52c72fa185 rk27xx - implement basic keymap for reference design
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30446 a1c6a512-1295-4272-9138-f99709370657
2011-09-06 12:38:35 +00:00
Nils Wallménius
2afc175a4e midi: make the patch sample data pointer a *int16_t to get rid of some ugly casting and drop an acessor macro to make caching the pointer in the synthVoice loop possible. Speeds up midi by 1-2% on cf and 3-5% on PP.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30438 a1c6a512-1295-4272-9138-f99709370657
2011-09-06 10:34:20 +00:00
Jonathan Gordon
642736f53b fix error, none of this code is needed or would work in the checkwps program anyway
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30429 a1c6a512-1295-4272-9138-f99709370657
2011-09-04 13:23:40 +00:00
Jonathan Gordon
8997321777 Remove duplicated code to search for a setting by its cfg name
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30428 a1c6a512-1295-4272-9138-f99709370657
2011-09-04 13:17:09 +00:00
Nils Wallménius
060b3fa4f1 mikmod: enable compiler optimizations for coldfire, they were disabled to work around a bug in the old toolchain.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30427 a1c6a512-1295-4272-9138-f99709370657
2011-09-04 08:32:02 +00:00
Andree Buschmann
6cb5ec1bfe Remove several 'set but not used' GCC 4.6.1 warnings from MikMod.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30426 a1c6a512-1295-4272-9138-f99709370657
2011-09-03 23:54:43 +00:00
Andree Buschmann
bd9c172b9e Fix yellow and red.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30425 a1c6a512-1295-4272-9138-f99709370657
2011-09-03 23:42:50 +00:00
Andree Buschmann
e2186479d5 FS#12259: Remove '-w' compiler option for MikMod. Resolve all yet unreported compiler warnings and fix a bug in load_gt2.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30424 a1c6a512-1295-4272-9138-f99709370657
2011-09-03 23:17:42 +00:00
Andree Buschmann
d3de6d65ec Fix compiler warnings in mikmod. Initialize 'status' and 'incnt'.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30422 a1c6a512-1295-4272-9138-f99709370657
2011-09-03 19:12:33 +00:00
Andree Buschmann
3b83e59923 Do not set '-fgnu89-inline' for MIPS targets.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30421 a1c6a512-1295-4272-9138-f99709370657
2011-09-03 18:46:44 +00:00
Andree Buschmann
41a0bfc5ed FS#12256: Use '-fgnu89-inline' for mpegplayer and doom. Resolves compiler warnings when using mingw32.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30420 a1c6a512-1295-4272-9138-f99709370657
2011-09-03 18:27:14 +00:00
Jonathan Gordon
573f2206c1 Add the list colour callback and a proper title icon to the simplelist api
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30419 a1c6a512-1295-4272-9138-f99709370657
2011-09-03 13:24:56 +00:00
Andree Buschmann
29f04cc986 Roll back r30416. A proper fix of this warning will end in an #ifdef-hell.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30417 a1c6a512-1295-4272-9138-f99709370657
2011-09-03 11:04:41 +00:00
Andree Buschmann
1b94cbc1ef Remove 'set but not used' warning by GCC 4.6.1.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30416 a1c6a512-1295-4272-9138-f99709370657
2011-09-03 10:49:10 +00:00
Andree Buschmann
bbe0d6d633 pacbox: Declare several local functions and variables static.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30415 a1c6a512-1295-4272-9138-f99709370657
2011-09-03 10:40:56 +00:00
Michael Sevakis
194bc59478 Sanify dsp.c (re)sample buffer indirection.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30409 a1c6a512-1295-4272-9138-f99709370657
2011-09-02 16:29:26 +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
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
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
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