rockbox/apps/plugins
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
..
beatbox Commit a few more GoGear HDD6330 keymaps. 2010-11-02 10:58:08 +00:00
bitmaps Add backgrounds for 128x160 displays to bubbles and rockblox. Set the coordinates in the code. 2011-01-10 07:32:29 +00:00
chessbox Fix marginal buffer overflow in chessbox. 2011-08-26 15:50:16 +00:00
clock Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
doom 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?). 2011-08-26 16:12:51 +00:00
fft Commit FS#12150 - Fully-functional audio mixer - and finally whip old limitations about playback of voice and other sounds when paused. Channels are independent in state and amplitude. Fade on stop/pause is handled by the channel's volume control rather than global volume which means it now works from anywhere. Opens up the possibility of plugin sounds during music playback by merely adding an additional channel enum. If any PCM drivers were not properly modified, see one of the last comments in the task for a description of the simple change that is expected. Some params are tunable in firmware/export/pcm-mixer.h as well. 2011-06-29 06:37:04 +00:00
fractals Fix last known 'variable set but not used' warning reported from GCC 4.6.0. 2011-05-04 06:11:59 +00:00
frotz Fix further 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-01 13:48:28 +00:00
goban FS#12014 by Huan Zhang fixing some link errors with a recent mips toolchain. 2011-03-19 10:14:12 +00:00
imageviewer GSoC/Buflib: Enable compaction in buflib. 2011-08-30 14:01:45 +00:00
lib Also fix uninitialized variables in xlcd_scroll_up()/xlcd_scroll_down() 2011-08-25 20:47:44 +00:00
lua Fix 'unused-but-set-variable' warnings (doom, lua) 2011-06-17 00:14:58 +00:00
midi Fix a bunch of 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-08 21:06:38 +00:00
mikmod GSoC/Buflib: Enable compaction in buflib. 2011-08-30 14:01:45 +00:00
mpegplayer GSoC/Buflib: Enable compaction in buflib. 2011-08-30 14:01:45 +00:00
pacbox Pacbox: Fix assumption about LCD width of 128 implying the display needs vertical clipping. No more screen garbage on sa9200. 2011-01-25 19:28:40 +00:00
pdbox Fix last known 'set but not used' warning by GCC 4.6.1. 2011-05-13 19:40:17 +00:00
pictureflow Fix FS#11387 - PictureFlow runs jerkily while playing music on Nano2G after the recent feature addition 2011-06-13 16:50:10 +00:00
reversi Fix a bunch of 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-08 21:06:38 +00:00
rockboy FS#12144, Use -fPIC -fvisibility=hidden only for plugins on sim and app builds and enable it for 32 bit too. Fixes linking errors on simbuilds. 2011-06-07 11:56:23 +00:00
searchengine Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
shortcuts Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
sudoku Fix a bunch of 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-08 21:06:38 +00:00
text_viewer Fix nearly all residual 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-01 14:44:20 +00:00
zxbox Fix another 'set but not used' warning. 2011-05-13 19:34:11 +00:00
alarmclock.c alarm clock: don't have user pause the playback manually. make the plugin pause it. 2010-10-07 13:19:21 +00:00
alpine_cdc.c Remove tabs. 2011-05-08 21:21:02 +00:00
battery_bench.c battery bench: fix redundant '#' in the battery bench instruction header 2011-07-25 18:52:09 +00:00
bench_mem_jpeg.c plugins: use lcd_putsf/lcd_putsxyf 2010-08-28 21:46:45 +00:00
bench_scaler.c plugins: use lcd_putsf/lcd_putsxyf 2010-08-28 21:46:45 +00:00
blackjack.c RaaA: Fix write locations of plugins 2011-03-02 23:43:54 +00:00
boomshine.lua fix FS#11659. wait for user input before exiting the plugin. 2010-10-12 13:56:54 +00:00
bounce.c HD300 - plugins keymaps 2010-11-30 10:52:14 +00:00
brickmania.c Fix some residual 'defined but not used' warnings by GCC 4.6.0 for touchscreen targets. 2011-05-22 13:53:31 +00:00
bubbles.c Fix further 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-01 13:48:28 +00:00
BUILD_OVERLAY Rockbox as an application: Replace many occurences of #ifdef SIMULATOR with #if (CONFIG_PLATFORM & PLATFORM_HOSTED) (or equivalently). 2010-06-21 16:53:00 +00:00
calculator.c HD300 - plugins keymaps 2010-11-30 10:52:14 +00:00
calendar.c RaaA: Fix write locations of plugins 2011-03-02 23:43:54 +00:00
CATEGORIES Add test_gfx and test_resize to CATEORIES so they show up in the right place 2011-01-12 21:00:09 +00:00
chessbox.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
chessclock.c Declaration of 'pause' from chessclock is redeclared as different kind of symbol by android-ndk-r5 2011-01-22 16:55:59 +00:00
chip8.c HD300 - plugins keymaps 2010-11-30 10:52:14 +00:00
chopper.c Fix further 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-01 13:48:28 +00:00
clix.c RaaA: Fix write locations of plugins 2011-03-02 23:43:54 +00:00
codebuster.c plugins: use lcd_putsf/lcd_putsxyf 2010-08-28 21:46:45 +00:00
credits.c * Rename backlight_force_on to backlight_ignore_timeout to make it clear what the function does. 2011-01-24 12:29:16 +00:00
credits.pl
crypt_firmware.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
cube.c Fix nearly all residual 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-01 14:44:20 +00:00
demystify.c * Rename backlight_force_on to backlight_ignore_timeout to make it clear what the function does. 2011-01-24 12:29:16 +00:00
dice.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
dict.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
disktidy.c Remove tabs. 2011-05-08 21:21:02 +00:00
disktidy.config Disktidy: New default files and folders for disktidy.config; 2011-05-14 00:24:54 +00:00
elfdep.pl
euroconverter.c Remove build conditions inside .c plugin files 2010-08-25 19:00:58 +00:00
fire.c * Rename backlight_force_on to backlight_ignore_timeout to make it clear what the function does. 2011-01-24 12:29:16 +00:00
fireworks.c * Rename backlight_force_on to backlight_ignore_timeout to make it clear what the function does. 2011-01-24 12:29:16 +00:00
firmware_flash.c fix r27926 : lcd_puts() not changed to lcd_putsf() 2010-08-28 21:54:24 +00:00
flipit.c Fix nearly all residual 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-01 14:44:20 +00:00
goban.c Fix yellows/reds. Red where caused by preprocessor condition mismatch. 2010-08-24 15:01:33 +00:00
greyscale.c * Rename backlight_force_on to backlight_ignore_timeout to make it clear what the function does. 2011-01-24 12:29:16 +00:00
helloworld.c Update comments in the helloword plugin. 2010-08-30 20:58:38 +00:00
helloworld.lua
invadrox.c RaaA: Fix write locations of plugins 2011-03-02 23:43:54 +00:00
iriver_flash.c Fix warning about using static vars in non static inline functions with gcc 4.5. 2010-12-27 10:46:29 +00:00
iriverify.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
jackpot.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
jewels.c RaaA: Fix write locations of plugins 2011-03-02 23:43:54 +00:00
keybox.c Fix further 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-01 13:48:28 +00:00
lamp.c HD300 - plugins keymaps 2010-11-30 10:52:14 +00:00
logo.c HD300 - plugins keymaps 2010-11-30 10:52:14 +00:00
lrcplayer.c Fix further 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-01 13:48:28 +00:00
matrix.c HD300 - plugins keymaps 2010-11-30 10:52:14 +00:00
maze.c maze: fix warning spotted by gcc 4.6.0 2011-03-28 21:44:23 +00:00
mazezam.c * Rename backlight_force_on to backlight_ignore_timeout to make it clear what the function does. 2011-01-24 12:29:16 +00:00
md5sum.c Ged rid of uisimulator/common/io.c for android builds. 2010-09-01 21:29:34 +00:00
metronome.c Correct the metronome keymap in the manual. Better describe buttons/actions in metronome help text. Closes FS#11773. 2011-02-03 21:20:50 +00:00
minesweeper.c Fix a bunch of 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-08 21:06:38 +00:00
mosaique.c HD300 - plugins keymaps 2010-11-30 10:52:14 +00:00
mp3_encoder.c Fix further 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-01 13:48:28 +00:00
nim.c plugins: use lcd_putsf/lcd_putsxyf 2010-08-28 21:46:45 +00:00
oscilloscope.c Use playback channel directly for peakmeters and plugins using peak calculation. Also, for now, don't allow mixer playback to overlap recording, even if full duplex works. 2011-07-02 11:55:38 +00:00
pegbox.c HD300 - plugins keymaps 2010-11-30 10:52:14 +00:00
pictureflow.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
pitch_detector.c Fix further 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-01 13:48:28 +00:00
plasma.c Fix even more 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-03 20:28:56 +00:00
plugin.lds New port: iPod Classic (also known as iPod 6G/6.5G/7G) 2011-01-02 23:16:27 +00:00
plugin_crt0.c Guard the cpucache_invalidate() with proper #ifdefs 2010-10-10 20:53:46 +00:00
plugins.make FS#12144, Use -fPIC -fvisibility=hidden only for plugins on sim and app builds and enable it for 32 bit too. Fixes linking errors on simbuilds. 2011-06-07 11:56:23 +00:00
pong.c * Rename backlight_force_on to backlight_ignore_timeout to make it clear what the function does. 2011-01-24 12:29:16 +00:00
properties.c Blindly forcing stylus mode on plugin entry for an arbitrary subset of touch targets is a *REALLY BAD IDEA* so do it properly so we dont have to revert any commits. 2011-02-27 09:30:33 +00:00
random_folder_advance_config.c Blindly forcing stylus mode on plugin entry for an arbitrary subset of touch targets is a *REALLY BAD IDEA* so do it properly so we dont have to revert any commits. 2011-02-27 09:30:33 +00:00
remote_control.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
resistor.c Remove now unneeded variable 2011-08-25 19:24:16 +00:00
robotfindskitten.c Declaration of 'pause' from robotfindskitten has conflicting types for 'pause' from android-ndk-r5 2011-01-22 18:27:05 +00:00
rockblox.c Fix nearly all residual 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-01 14:44:20 +00:00
rockblox1d.c HD300 - plugins keymaps 2010-11-30 10:52:14 +00:00
rockbox-fonts.config
rockbox_flash.c plugins: use lcd_putsf/lcd_putsxyf 2010-08-28 21:46:45 +00:00
rockboy.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
rocklife.c * Rename backlight_force_on to backlight_ignore_timeout to make it clear what the function does. 2011-01-24 12:29:16 +00:00
rockpaint.c GSoC/Buflib: Enable compaction in buflib. 2011-08-30 14:01:45 +00:00
search.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
settings_dumper.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
shopper.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
sliding_puzzle.c Fix nearly all residual 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-01 14:44:20 +00:00
snake.c RaaA: Fix write locations of plugins 2011-03-02 23:43:54 +00:00
snake2.c RaaA: Fix write locations of plugins 2011-03-02 23:43:54 +00:00
snake2.levels
snow.c HD300 - plugins keymaps 2010-11-30 10:52:14 +00:00
sokoban.c Fix a bunch of 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-08 21:06:38 +00:00
sokoban.levels
solitaire.c Fix unintentional removal of an if-statement. 2011-05-22 14:10:05 +00:00
sort.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
SOURCES don't install boomshine.lua if lua.rock isn't built 2011-05-17 22:29:36 +00:00
SOURCES.app_build RaaA: Enable plugins for application builds 2011-02-24 23:35:16 +00:00
spacerocks.c RaaA: Fix write locations of plugins 2011-03-02 23:43:54 +00:00
splitedit.c splitedit: fix snprintf() argument (size of wrong buffer) 2010-08-28 21:46:36 +00:00
star.c Fix nearly all residual 'variable set but not used' warnings reported from GCC 4.6.0. 2011-05-01 14:44:20 +00:00
starfield.c Use playback channel directly for peakmeters and plugins using peak calculation. Also, for now, don't allow mixer playback to overlap recording, even if full duplex works. 2011-07-02 11:55:38 +00:00
stats.c stats plugin: Add new things to count. Playlist and video files. 2010-12-28 14:42:30 +00:00
stopwatch.c RaaA: Fix write locations of plugins 2011-03-02 23:43:54 +00:00
stopwatch.lua
SUBDIRS Add MikMod plugin, ported by Jason Yu, with some minor work by Craig Mann and William Peters (FS#8806) 2010-12-12 15:03:30 +00:00
SUBDIRS.app_build RaaA: Enable plugins for application builds 2011-02-24 23:35:16 +00:00
superdom.c HD300 - plugins keymaps 2010-11-30 10:52:14 +00:00
test_boost.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
test_codec.c Final commit to get test_codec working properly for both freq-scaling and non-freq-scaling targets. 2011-08-29 13:48:31 +00:00
test_core_jpeg.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
test_disk.c * Rename backlight_force_on to backlight_ignore_timeout to make it clear what the function does. 2011-01-24 12:29:16 +00:00
test_fps.c * Rename backlight_force_on to backlight_ignore_timeout to make it clear what the function does. 2011-01-24 12:29:16 +00:00
test_gfx.c * Rename backlight_force_on to backlight_ignore_timeout to make it clear what the function does. 2011-01-24 12:29:16 +00:00
test_grey.c * Rename backlight_force_on to backlight_ignore_timeout to make it clear what the function does. 2011-01-24 12:29:16 +00:00
test_greylib_bitmap_scale.c HD300 - plugins keymaps 2010-11-30 10:52:14 +00:00
test_mem.c Higher precision for test_mem plugin. 2011-01-01 19:54:01 +00:00
test_mem_jpeg.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
test_resize.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
test_sampr.c Plugins: modify IRAM copying code 2010-08-30 20:47:53 +00:00
test_scanrate.c HD300 - plugins keymaps 2010-11-30 10:52:14 +00:00
test_touchscreen.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
test_viewports.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00
test_viewports.lua
text_editor.c text editor: decrease size of extension to reduce stack usage. 2010-10-01 14:40:28 +00:00
theme_remove.c Ged rid of uisimulator/common/io.c for android builds. 2010-09-01 21:29:34 +00:00
vbrfix.c GSoC/Buflib: Replace all direct accesses to audiobuf with buffer API functions. 2011-08-14 15:13:00 +00:00
video.c * Rename backlight_force_on to backlight_ignore_timeout to make it clear what the function does. 2011-01-24 12:29:16 +00:00
viewers.config Rework ppmviewer to fit our shiny new imageviewer framework. FS#11818 by me. 2011-01-09 13:22:54 +00:00
vu_meter.c Use playback channel directly for peakmeters and plugins using peak calculation. Also, for now, don't allow mixer playback to overlap recording, even if full duplex works. 2011-07-02 11:55:38 +00:00
wav2wv.c fix leak-file-handles. 2010-10-23 12:40:07 +00:00
wavplay.c Clean up multiple definitions of RAM size. Remove -DMEM (make) and MEM (code), use the already defined MEMORYSIZE instead. 2011-02-02 17:43:32 +00:00
wavrecord.c Fix r29171 red. Forgot to replace a few. 2011-01-30 01:15:23 +00:00
wavview.c plugins: use lcd_putsf/lcd_putsxyf 2010-08-28 21:46:45 +00:00
wormlet.c * Rename backlight_force_on to backlight_ignore_timeout to make it clear what the function does. 2011-01-24 12:29:16 +00:00
xobox.c Commit FS#12056 by Noe Lojkinse. Fixes a bug in Xobox where old key presses were left on the buffer too long. 2011-04-24 23:44:58 +00:00
zxbox.c Second try: Introduce plugin_crt0.c that every plugin links. 2010-08-24 14:30:46 +00:00