Commit graph

130 commits

Author SHA1 Message Date
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
Andree Buschmann
67f215032d Fix a bunch of 'variable set but not used' warnings reported from GCC 4.6.0.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29841 a1c6a512-1295-4272-9138-f99709370657
2011-05-08 21:06:38 +00:00
Michael Giacomelli
42ba55fba3 Make the midiplugin's out of memory error more obvious to people who don't know what malloc is.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28822 a1c6a512-1295-4272-9138-f99709370657
2010-12-13 04:43:27 +00:00
Marcin Bukat
dd61702fb0 HD300 - plugins keymaps
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28712 a1c6a512-1295-4272-9138-f99709370657
2010-11-30 10:52:14 +00:00
Robert Menes
c638e96738 These should be the last of the plugin keymaps required
for the GoGear HDD6330.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28467 a1c6a512-1295-4272-9138-f99709370657
2010-11-03 02:45:53 +00:00
Marcin Bukat
59ba8fea22 MPIO HD200: rename button defines to adhere how they are labeled on the device.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28443 a1c6a512-1295-4272-9138-f99709370657
2010-11-02 10:44:34 +00:00
Rafaël Carré
791d425ff1 plugins (doom, midi, rockboy): don't use non-static inline
some functions can be static -> static inline
some functions are external and can't be inlined -> remove inline

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28019 a1c6a512-1295-4272-9138-f99709370657
2010-09-07 14:09:11 +00:00
Rafaël Carré
da16248e47 Plugins: modify IRAM copying code
Move to plugin_crt0.c, plugins don't need PLUGIN_IRAM_* macros anymore
IRAM is no longered zeroed before copying (as it is at the same address
than BSS) -> Fix FS#11581
Use cpucache_invalidate() (and not cpucache_flush), needed for self-modifying code on cached IRAM

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27948 a1c6a512-1295-4272-9138-f99709370657
2010-08-30 20:47:53 +00:00
Thomas Martitz
cae4ae2c71 Second try: Introduce plugin_crt0.c that every plugin links.
It handles exit() properly, calling the handler also when the plugin returns
normally (also make exit() more standard compliant while at it).
It also holds PLUGIN_HEADER, so that it doesn't need to be in each plugin anymore.

To work better together with callbacks passed to rb->default_event_handler_ex() introduce exit_on_usb() which will call the exit handler before showing the usb screen and exit() after it.
In most cases rb->default_event_handler_ex() was passed a callback which was manually called at all other return points. This can now be done via atexit().

In future plugin_crt0.c could also handle clearing bss, initializing iram and more.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27873 a1c6a512-1295-4272-9138-f99709370657
2010-08-24 14:30:46 +00:00
Thomas Martitz
93cb949372 Revert "Introduce plugin_crt0.c that every plugin links."
Too much errors and no time to fix them now.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27863 a1c6a512-1295-4272-9138-f99709370657
2010-08-23 17:12:26 +00:00
Thomas Martitz
abdc5935be Introduce plugin_crt0.c that every plugin links.
It handles exit() properly, calling the handler also when the plugin returns
normally (also it makes exit() more standard compliant while at it).
It also holds PLUGIN_HEADER, so that it doesn't need to be in each plugin anymore.

To work better together with callbacks passed to rb->default_event_handler_ex introduce exit_on_usb() which will call the exit handler before showing the usb screen and exit() after it.
In most cases it was passed a callback which was manually called at all other return points. This can now be done via atexit().

In future plugin_crt0.c could also handle clearing bss, initializing iram and more.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27862 a1c6a512-1295-4272-9138-f99709370657
2010-08-23 16:56:49 +00:00
Michael Chicoine
e024198305 Replace remaining printf in midi plugin (fix yellow/red)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27563 a1c6a512-1295-4272-9138-f99709370657
2010-07-25 19:47:07 +00:00
Michael Chicoine
91a45d2ecc Rename printf to prevent naming conflict. Also change comment to conform with Rockbox standards.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27562 a1c6a512-1295-4272-9138-f99709370657
2010-07-25 19:35:19 +00:00
Thomas Martitz
35e8b1429a Rockbox as an application: Replace many occurences of #ifdef SIMULATOR with #if (CONFIG_PLATFORM & PLATFORM_HOSTED) (or equivalently).
The simulator defines PLATFORM_HOSTED, as RaaA will do (RaaA will not define SIMULATOR).
The new define is to (de-)select code to compile on hosted platforms generally.

Should be no functional change to targets or the simulator.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27019 a1c6a512-1295-4272-9138-f99709370657
2010-06-21 16:53:00 +00:00
Frank Gevaerts
7a994c1e7d Fix (hopefully) last aliasing bug (midiutil), and enable -fno-strict-aliasing again for zxbox and doom (no easy fix there)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25889 a1c6a512-1295-4272-9138-f99709370657
2010-05-07 20:11:14 +00:00
Thomas Martitz
50a6ca39ad Move c/h files implementing/defining standard library stuff into a new libc directory, also standard'ify some parts of the code base (almost entirely #include fixes).
This is to a) to cleanup firmware/common and firmware/include a bit, but also b) for Rockbox as an application which should use the host system's c library and headers, separating makes it easy to exclude our files from the build.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25850 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 21:04:40 +00:00
Marcin Bukat
b09d3aec39 Add MPIO HD200 port - changed files
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25724 a1c6a512-1295-4272-9138-f99709370657
2010-04-26 21:40:00 +00:00
Szymon Dziok
7074a64d8a Packard Bell Vibe 500: Finish plugin keymaps. Rockbox compiles clean now for the target.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24658 a1c6a512-1295-4272-9138-f99709370657
2010-02-14 21:56:53 +00:00
Andree Buschmann
dfe46436b1 Remove tabs
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24547 a1c6a512-1295-4272-9138-f99709370657
2010-02-07 17:50:24 +00:00
Tomer Shalev
47ddbaa47b Cowon D2: Rename COWOND2_PAD -> COWON_D2_PAD to match macro used in manual, and
to target naming conventions in general


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24010 a1c6a512-1295-4272-9138-f99709370657
2009-12-15 20:51:41 +00:00
Robert Menes
9dc1c1a876 More GoGear SA9200 plugin keymaps, plus a fix on mosaique.
Just pluginlib actions and Doom and I'm DONE!! :)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23912 a1c6a512-1295-4272-9138-f99709370657
2009-12-09 18:20:49 +00:00
Teruaki Kawashima
5cdd920d12 Correct checking return value of open in plugins.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23874 a1c6a512-1295-4272-9138-f99709370657
2009-12-06 13:52:28 +00:00
Maurus Cuelenaere
9680244f4a * Fix plugin keymaps for VX777
* Enable plugins for VX777
 * Fix VX777 simulator

All done by Aaron DeMille.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22576 a1c6a512-1295-4272-9138-f99709370657
2009-08-31 21:11:32 +00:00
Michael Giacomelli
594b6e2b49 Commit FS#10251. Plugins for the YH-820, YH-920, and YH-925 by Jens Erdmann with improvements and bitmap graphics by me.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22149 a1c6a512-1295-4272-9138-f99709370657
2009-08-04 03:08:32 +00:00
Thomas Martitz
e6cbad6974 FS#10075 - FUZE: QUIT Plugin by selecting BUTTON_HOME by Johannes Schwarz. Updates the plugin keymap to use Long Home to exit plugins to be more inline with the core keymap.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20680 a1c6a512-1295-4272-9138-f99709370657
2009-04-10 17:28:26 +00:00
Maurus Cuelenaere
fef405c328 Enable plugins on the Onda VX747
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20647 a1c6a512-1295-4272-9138-f99709370657
2009-04-07 23:41:44 +00:00
Nils Wallménius
1adc869d9c midi: yield more, fixes flickering backlight fade on some targets while playing midi. Some coding style clean up, it's a little better but still a mess
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20562 a1c6a512-1295-4272-9138-f99709370657
2009-03-28 11:27:56 +00:00
Jens Arnold
f82c944912 Use a static pattern rule to restrict the dependency on [pluginname].o to single-file plugins. This allows the pattern rule for %.rock (with all dependencies defined elsewhere) to pick up multi-file plugins with no [pluginname].o file, and get rid of the duplication in (doom|midi|reversi).make.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20205 a1c6a512-1295-4272-9138-f99709370657
2009-03-04 23:41:58 +00:00
Mark Arigo
2490262eee Plugins for the Philips HDD1630. The keymaps are largely untested on the device (patches welcome).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19846 a1c6a512-1295-4272-9138-f99709370657
2009-01-24 22:41:55 +00:00
Andrew Mahone
23d9812273 loader-initialized global plugin API:
struct plugin_api *rb is declared in PLUGIN_HEADER, and pointed to by
__header.api

the loader uses this pointer to initialize rb before calling entry_point

entry_point is no longer passed a pointer to the plugin API

all plugins, and pluginlib functions, are modified to refer to the
global rb

pluginlib functions which only served to copy the API pointer are
removed

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19776 a1c6a512-1295-4272-9138-f99709370657
2009-01-16 10:34:40 +00:00
Michael Giacomelli
6d5823f964 Commit FS#9617 - Keymaps for Plugins fuze by Thomas Martitz.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19673 a1c6a512-1295-4272-9138-f99709370657
2009-01-04 23:33:15 +00:00
Dominik Wenger
90bcf9be5e m200v4: rename Keys, so they match better other targets with similar key-layout. Enable plugins, add keymaps for plugins. More keymap improvements needed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19405 a1c6a512-1295-4272-9138-f99709370657
2008-12-12 19:50:49 +00:00
Maurus Cuelenaere
6471b3c81a Commit FS#9607 by Adam Hogan: fix plugin keymaps for Creative Zen Vision:M
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19363 a1c6a512-1295-4272-9138-f99709370657
2008-12-08 09:51:42 +00:00
Björn Stenberg
cea285d64e Added keymaps for ZVM to plugins. Enabled zvm plugin building in tools/configure. FS#9605 by Adam Hogan and Robert Menes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19335 a1c6a512-1295-4272-9138-f99709370657
2008-12-04 21:28:56 +00:00
Rafaël Carré
5656f8245f Sansa Clip: build plugins (FS#9578)
Use unmodified C200 keymap when possible, variation of it when not
Use Archos bitmaps when possible

Current problems:
- Pegbox plugin shows display corruption (corruption is different in the simulator)
- Bubbles plugin misses 1 or 2 bottom lines, but if we gain back these lines it occupies a too small area of the screen
- Splitted screen (yellow/blue) is a bit weird in most plugins

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19252 a1c6a512-1295-4272-9138-f99709370657
2008-11-28 00:37:28 +00:00
Björn Stenberg
a091d20ba0 Added 'keywords' and 'eol-style' properties.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19218 a1c6a512-1295-4272-9138-f99709370657
2008-11-25 19:54:23 +00:00
Nils Wallménius
4c43f7be0a Rearrange the main synth loop a little and move some tests around for a ~5% speedup on c200, increase the output buffer size to make skips less likely, playback of simple midi files should now be mostly skip free on pp based players
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19207 a1c6a512-1295-4272-9138-f99709370657
2008-11-24 21:32:08 +00:00
Nils Wallménius
95cf600b6c Macros should be ALL CAPS, so rename (un)likely() to (UN)LIKELY()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19181 a1c6a512-1295-4272-9138-f99709370657
2008-11-22 16:56:20 +00:00
Nils Wallménius
7ef2a053b8 Turns out that using likely in the loop condition gives a nice little speedup to so let's do it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19168 a1c6a512-1295-4272-9138-f99709370657
2008-11-21 14:23:34 +00:00
Nils Wallménius
1284c127f8 Introduce likely() and unlikely() macros, use to give gcc hints about which branch is likely to be taken in a conditional, use them in the midi player for a small speedup, use instead of similar EXPECT macros in tremor and use in mpegplayer
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19162 a1c6a512-1295-4272-9138-f99709370657
2008-11-20 20:20:43 +00:00
Nils Wallménius
7677916aa0 Restore specific compiler flags for the midi plugin lost in r19146
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19159 a1c6a512-1295-4272-9138-f99709370657
2008-11-20 16:30:58 +00:00
Björn Stenberg
20fb305b0b Don't objcopy simulator plugins.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19152 a1c6a512-1295-4272-9138-f99709370657
2008-11-20 14:17:09 +00:00
Björn Stenberg
c6b3d38a15 New makefile solution: A single invocation of 'make' to build the entire tree. Fully controlled dependencies give faster and more correct recompiles.
Many #include lines adjusted to conform to the new standards.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19146 a1c6a512-1295-4272-9138-f99709370657
2008-11-20 11:27:31 +00:00
Nils Wallménius
b36f6db0d6 Turn on more compiler optimizations on other targets than the coldfire based ones, gives a nice speed boost on sansa c200
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19127 a1c6a512-1295-4272-9138-f99709370657
2008-11-17 18:54:03 +00:00
Vitja Makarov
2f84f699c0 IAUDIO67_PAD: Add keymaps for most of the plugins, they are not all tested yet.
IAUDIO7: Define MODEL_NAME in config


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18730 a1c6a512-1295-4272-9138-f99709370657
2008-10-07 16:38:28 +00:00
Maurus Cuelenaere
1392dc2144 Commit FS#9308: differentiate between TOUCHPAD & TOUCHSCREEN
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18338 a1c6a512-1295-4272-9138-f99709370657
2008-08-23 09:46:38 +00:00
Nils Wallménius
8df332c062 Oops, revert unrelated changes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18139 a1c6a512-1295-4272-9138-f99709370657
2008-07-27 20:40:20 +00:00
Nils Wallménius
2d337dab7f FS#9221 by Christopher Williams fixing a couple of bugs in keybox
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18138 a1c6a512-1295-4272-9138-f99709370657
2008-07-27 20:36:45 +00:00
Daniel Stenberg
2acc0ac542 Updated our source code header to explicitly mention that we are GPL v2 or
later. We still need to hunt down snippets used that are not. 1324 modified
files...
http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
2008-06-28 18:10:04 +00:00
Steve Bavin
6526577818 Plugin parameters should be const.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17492 a1c6a512-1295-4272-9138-f99709370657
2008-05-13 09:57:56 +00:00