Commit graph

394 commits

Author SHA1 Message Date
Jonathan Gordon
3e5b38945c const raid in option_select
add table settings and fix int settings with negative step in option_select_next_val
bump plugin API and sort newer functions


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17520 a1c6a512-1295-4272-9138-f99709370657
2008-05-15 06:58:36 +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
Peter D'Hoye
21a3733888 Lamp plugin: accept the reduced patch of FS #8934 by Alexander Papst
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17425 a1c6a512-1295-4272-9138-f99709370657
2008-05-08 21:23:31 +00:00
Rob Purchase
81803eba1b Simple test_touchpad plugin for D2 and m:robe500 (not built by default).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17392 a1c6a512-1295-4272-9138-f99709370657
2008-05-05 21:31:34 +00:00
Nicolas Pennequin
357ffb3c46 Convert the whole codebase to UTF-8, except docs/COMMITTERS and tools/creative.c, which need checking.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17369 a1c6a512-1295-4272-9138-f99709370657
2008-05-05 10:32:46 +00:00
Bertrik Sikken
2843469876 Moved atoi declaration to stdlib.h. Deleted atoi.h
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17280 a1c6a512-1295-4272-9138-f99709370657
2008-04-28 16:18:04 +00:00
Peter D'Hoye
8efd5d3fdf Flashlight plugin: support inverted LCD (somebody with a target please test), replace the ugly floats with a much simpler color set. For now white and red are defined.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17230 a1c6a512-1295-4272-9138-f99709370657
2008-04-24 00:06:45 +00:00
Peter D'Hoye
39718e3585 Accept FS #8285 - "Flashlight" plugin by Vuong Minh Hiep, Thomas Martitz and Alexander Papst
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17226 a1c6a512-1295-4272-9138-f99709370657
2008-04-23 21:15:07 +00:00
Jens Arnold
2bf4178018 Make mpegplayer sleep the disk after buffering to save battery. * Add a simulator stub for ata_sleep(), and un-ifdef most calls to it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17096 a1c6a512-1295-4272-9138-f99709370657
2008-04-13 12:24:47 +00:00
Jens Arnold
f79bfcf1d7 PP targets: Make sure the COP cache is invalidated before loading a plugin.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16984 a1c6a512-1295-4272-9138-f99709370657
2008-04-06 13:26:39 +00:00
Jens Arnold
ac9b92716a Allow to select the core for running the user timer on portalplayer targets. * Incompatible plugin API change -> sorted API.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16965 a1c6a512-1295-4272-9138-f99709370657
2008-04-04 19:38:46 +00:00
Jens Arnold
5c87a98b97 Greyscale library: * Implement linearisation curve flipping for 1st/2nd Gen iPods (LCD is inverted when backlight is on, so the curve is also inverted). This needs a slight extension of is_backlight_on() functionality in the core. * Thorough recalibration of all reachable greyscale targets, and #ifdef cleanup. * Reduce on-target gamma a bit, because the displayable contrast range of a monochrome/greyscale isn't that high.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16936 a1c6a512-1295-4272-9138-f99709370657
2008-04-02 22:16:14 +00:00
Jonathan Gordon
5ca1539969 the menu and list now accepts a parent viewport to draw in (and the menu can be told to not show status/button bars). This lays the groundwork to fix colour problems with plugin menus (see star.c for an example.) This hopefully fixes some button bar issues as well as theme problems.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16812 a1c6a512-1295-4272-9138-f99709370657
2008-03-26 03:35:24 +00:00
Michael Sevakis
27cf677339 Add a complete priority inheritance implementation to the scheduler (all mutex ownership and queue_send calls are inheritable). Priorities are differential so that dispatch depends on the runnable range of priorities. Codec priority can therefore be raised in small steps (pcmbuf updated to enable). Simplify the kernel functions to ease implementation and use the same kernel.c for both sim and target (I'm tired of maintaining two ;_). 1) Not sure if a minor audio break at first buffering issue will exist on large-sector disks (the main mutex speed issue was genuinely resolved earlier). At this point it's best dealt with at the buffering level. It seems a larger filechunk could be used again. 2) Perhaps 64-bit sims will have some minor issues (finicky) but a backroll of the code of concern there is a 5-minute job. All kernel objects become incompatible so a full rebuild and update is needed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16791 a1c6a512-1295-4272-9138-f99709370657
2008-03-25 02:34:12 +00:00
Jens Arnold
b88c7d076d The blit functions shouldn't exist for the simulator.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16777 a1c6a512-1295-4272-9138-f99709370657
2008-03-24 01:00:42 +00:00
Jens Arnold
c84e345e6e Oops, fix red.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16776 a1c6a512-1295-4272-9138-f99709370657
2008-03-24 00:45:03 +00:00
Jens Arnold
68a21689ae Consistent naming scheme the various blit functions. * Removed lcd_blit_mono() for colour targets. Plugin API became incompatible, so sort, clean up & bump. * Implemented lcd_blit_mono() for M3.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16775 a1c6a512-1295-4272-9138-f99709370657
2008-03-24 00:35:53 +00:00
Michael Sevakis
f90cbcb652 mpegplayer: Use the core DSP to process audio. Removes the sample rate restriction on audio and any mpeg audio samplerate may be used. Use the global sound settings for audio output with the option to force any one of the processing stages off. All are forced off by default. I didn't personally care to fully duplicate the Sound Settings menu which would have been needed since using the core one would affect settings globally and exactly the same configuration probably isn't desired since the CPU load for video playback is much greater. Rebalance the threading to compensate with some expense to buffering speed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16194 a1c6a512-1295-4272-9138-f99709370657
2008-02-01 02:25:15 +00:00
Michael Sevakis
f8709ac7e2 H10 20GB: Assembly YUV blitting and dithering.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16171 a1c6a512-1295-4272-9138-f99709370657
2008-01-26 14:24:09 +00:00
Dave Chapman
3646c31367 Add the viewport functions to the screens API, including a new getfont() function to return the font used by the current viewport. A change to the screens API makes the plugin API incompatible, so we bump version and sort. Also commit the test_viewports plugin (not built by default). This is some more of FS#8385.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16022 a1c6a512-1295-4272-9138-f99709370657
2008-01-08 01:22:14 +00:00
Jens Arnold
feb5b15e9b All-new greyscale library, replacing the old one. Features: (1) Drawing/updating is faster than the old grayscale lib at full depth. (2) Always 129 shades instead of 2..33 shades. (3) No graininess caused by frequent updates (mpegplayer, doom, ...). (4) Needs less memory than the old grayscale lib at full depth. * The tradeoff is slightly higher CPU load in the ISR (frames are calculated 'live') and an extra function in the core. * Ported all plugins which used the graylib to use the new one. * Some slight optimisations for archos and H1x0 LCD update.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15998 a1c6a512-1295-4272-9138-f99709370657
2008-01-04 23:42:38 +00:00
Michael Sevakis
a5fc3f4df4 Initial WVS for mpegplayer. Adjusts to the user's preferred font and uses FF/RW preferences set for playback. Picked a random color for the base WVS color but it could be configured. Some engine tweaks to accomodate it since certain nescessities are clearer now. Fix a clipped YUV output bug in the SIM.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15991 a1c6a512-1295-4272-9138-f99709370657
2008-01-03 17:14:28 +00:00
Michael Sevakis
a222f27c4a mpegplayer: Make playback engine fully seekable and frame-accurate and split into logical parts. Be sure to have all current features work. Actual UI for seeking will be added soon. Recommended GOP size is about 15-30 frames depending on target or seeking can be slow with really long GOPs (nature of MPEG video). More refined encoding recommendations for a particular player should be posted soon.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15977 a1c6a512-1295-4272-9138-f99709370657
2007-12-29 19:46:35 +00:00
Nicolas Pennequin
90ce826903 Initial commit of the PictureFlow plugin, a nice visualization for album covers.
Original code by Ariya Hidayat. Rockbox port by Jonas Hurrelmann and a few tweaks by me.
On the first startup the database is scanned and album art is searched for each album. This process will take some time (dircache enabled and/or database in RAM speed it up, and it is possible to abort by pressing MENU), but the results are cached and the next startups will be very quick.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15900 a1c6a512-1295-4272-9138-f99709370657
2007-12-09 18:48:02 +00:00
Jens Arnold
bf2a33485f Fix some plugins not using the helper functions for the new backlight timeout handling.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15849 a1c6a512-1295-4272-9138-f99709370657
2007-11-29 23:55:58 +00:00
Robert Kukla
d87b037efe consolidate the 3 file_exists() functions into one; use the version that explicitly uses dircache; give dir_exists() the same treatment for consistency
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15742 a1c6a512-1295-4272-9138-f99709370657
2007-11-21 21:28:27 +00:00
Michael Sevakis
99617d71ba Make speex the new voice format for SWCODEC targets (non-Archos). Remove codec swapping and build speex voice decoding directly into the core binary.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15668 a1c6a512-1295-4272-9138-f99709370657
2007-11-18 17:12:19 +00:00
Michael Sevakis
57d71e4267 Add some CACHEALIGN_* macros and a helper function to assist in aligning data and buffers on PortalPlayer processors to cache line boundaries. They're noops when PROC_NEED_CACHEALIGN isn't defined. Go safe and increase the value to 32 since I'm not sure yet if 16 is sufficient - changing that is a one-liner. Add helper to plugin API which will be needed shortly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15523 a1c6a512-1295-4272-9138-f99709370657
2007-11-08 05:17:20 +00:00
Michael Sevakis
7e12bba0d2 Phase in thread_wait when waiting for a thread to exit. Begin phasing out the spinlock object for general use; it will become a multicore-only object for core locking. Take care of plugins first.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15260 a1c6a512-1295-4272-9138-f99709370657
2007-10-22 05:57:38 +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
Steve Bavin
32a9575130 FS#7994 - Rename talk.c API, make talk_disable() affect all talking (not just menus), hopefully save some space.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15206 a1c6a512-1295-4272-9138-f99709370657
2007-10-19 15:31:42 +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
Antoine Cellerier
d66b3c0f61 Remove the "invert scroll" code since it's not used anywhere anymore (and it was broken on color targets with gradients anyway). Closes FS #7875.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15125 a1c6a512-1295-4272-9138-f99709370657
2007-10-15 20:42:51 +00:00
Jens Arnold
cb4186c989 Improved FPS test plugin: * Better precision for low frame rates (take extra ticks into account). * Measure YUV blit framerate on colour targets.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15099 a1c6a512-1295-4272-9138-f99709370657
2007-10-13 22:32:35 +00:00
Robert Kukla
a07e93938c fix yellow and some house cleaning
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15056 a1c6a512-1295-4272-9138-f99709370657
2007-10-09 21:28:51 +00:00
Robert Kukla
fd3fe45bc1 FS#7487 - mpegplayer - video start time seek with resume
by John S. Gwynne & Brian J. Morey
This should stop the patch from breaking again and give them opportunity to improve it further.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15052 a1c6a512-1295-4272-9138-f99709370657
2007-10-09 20:42:20 +00:00
Nicolas Pennequin
ef9abe4385 Keep track of the number of opened files in the sim to enforce the same limit as on target.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15045 a1c6a512-1295-4272-9138-f99709370657
2007-10-09 15:15:00 +00:00
Steve Bavin
5a78a06073 Just temporarily disable talk menus, in case the player is reset whilst in mpegplayer.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14970 a1c6a512-1295-4272-9138-f99709370657
2007-10-03 16:17:36 +00:00
Michael Sevakis
7914e90738 Commit a subset of the dual core changes that have to do with cache handling, stacks, firmware startup and thread startup. Tested on e200, H10-20GB, iPod Color and 5.5G. Thread function return implemented for all targets. Some changes to plugins to follow shortly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14879 a1c6a512-1295-4272-9138-f99709370657
2007-09-28 10:20:02 +00:00
Michael Sevakis
287d6223d3 Dithering option for mpegplayer on gigabeat-f/x and e200. Assembly IDCT for ARm just to make it all work more nicely. Move UI simulator YUV code to its core to adapt it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14851 a1c6a512-1295-4272-9138-f99709370657
2007-09-25 02:59:42 +00:00
Michael Sevakis
f64ebb1c1f Sim I/O and threading that runs more like on target. Tweakable if any genuine slowness imitation is required for any one of them. One point of concern is the sim shutdown on an OS other than Linux just because terminating threads in a manner other than having the do it themselves is kind of dirty IMHO.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14639 a1c6a512-1295-4272-9138-f99709370657
2007-09-08 12:20:53 +00:00
Peter D'Hoye
a5d4d67763 Also keep the backlight on in mpegplayer when plugged in. Fixes FS #7584. Created two helper functions for this, because this issue also exists in other plugins (to do). The helper functions are in the pluginlib in helper.[ch], where other common stuff can be put.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14321 a1c6a512-1295-4272-9138-f99709370657
2007-08-13 22:31:11 +00:00
Jonathan Gordon
d7d2e69092 Fix FS#7557 - bug which caused plugins to look for their config/hiscore files in the / folder instead of their folder
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14239 a1c6a512-1295-4272-9138-f99709370657
2007-08-08 07:27:07 +00:00
Jonathan Gordon
fda7d720c0 Accept FS#5464 - organise the rocks directory.
If any plugins or "open with" optoins dont work please let me know...


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14214 a1c6a512-1295-4272-9138-f99709370657
2007-08-06 13:42:52 +00:00
Nils Wallménius
5b76936a44 Accept FS#6159 'Add voice to roughly 100 splash screens and yes-no menus' by Stephane Doyon with some minor tweaks by me. Rerun 'configure' and do a 'make clean' before rebuilding your voice files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14213 a1c6a512-1295-4272-9138-f99709370657
2007-08-06 13:08:36 +00:00
Jonathan Gordon
ef815729b6 Accept FS#7486 - shortcuts plugin.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14191 a1c6a512-1295-4272-9138-f99709370657
2007-08-05 12:14:07 +00:00
Michael Sevakis
8edfff979b Flush-out cleared sections on dual core targets when loading plugins and codecs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14172 a1c6a512-1295-4272-9138-f99709370657
2007-08-04 00:11:41 +00:00
Tom Ross
e1147b87ab RTC (real time clock) support for Rockboy. The time in games like Pokemon Gold/Silver should now stay synced on RTC-capable targets. Other targets will lose track of time when the player is turned off. User's can edit the .rtc file in an attempt to resync the RTC. The clock should stay synced when entering and leaving the menu. I've tested this over the past two weeks and it seems to work well.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14071 a1c6a512-1295-4272-9138-f99709370657
2007-07-30 05:19:05 +00:00
Kevin Ferrare
81aac2a430 Use multi-screen api for metronome plugin, and made it run in the simulator by implementing the timer functions
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14046 a1c6a512-1295-4272-9138-f99709370657
2007-07-29 03:43:37 +00:00
Kevin Ferrare
a55a436993 fixed yellow, forgot to increase the plugin API version
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13979 a1c6a512-1295-4272-9138-f99709370657
2007-07-25 10:08:51 +00:00
Kevin Ferrare
ac017781e0 Ported the archos player's jackpot plugin to bitmaps LCD (still need some neat bitmaps), multi screen support for jackpot plugin and iriverify
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13978 a1c6a512-1295-4272-9138-f99709370657
2007-07-25 09:38:55 +00:00
Jonathan Gordon
f7675a244b remove the need for action_signalscreenchange().
Fixes problems with targets where the ACTION_STD_CANCEL event is a combo


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13956 a1c6a512-1295-4272-9138-f99709370657
2007-07-22 06:05:53 +00:00
Kevin Ferrare
011a325e32 Makes apps and plugins interract with directories using a posix-like api instead of calling dircache / simulator functions (no additionnal layer added, only a cosmetic change)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13943 a1c6a512-1295-4272-9138-f99709370657
2007-07-20 17:06:55 +00:00
Michael Sevakis
b8bd1ee557 MpegPlayer: Add a simple messaging scheme for sending stream commands. Remove the need to disable FIQ when adding to PCM buffer.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13931 a1c6a512-1295-4272-9138-f99709370657
2007-07-19 19:32:29 +00:00
Jonathan Gordon
a5278fa3db Rearrange and cleanup settings code
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13851 a1c6a512-1295-4272-9138-f99709370657
2007-07-11 05:41:23 +00:00
Michael Sevakis
ea255fbc3a Prevent initial spinup when starting first file when in a stopped state on non-RTC targets. Fix some states that are dangerous on SWCODEC and could result in data loss. Had to make plugin API incopatible since specified numbered filename creation is enabled now on all non-RTC targets with recording; increase version and sort the items that looked like they had a place to go.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13683 a1c6a512-1295-4272-9138-f99709370657
2007-06-22 09:34:57 +00:00
Jonathan Gordon
46e186fa61 extend the text editor plugin to be able to modify the .colors file
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13665 a1c6a512-1295-4272-9138-f99709370657
2007-06-18 13:37:57 +00:00
Nils Wallménius
5bb7edeb36 Replace VU meter menu with a new one using the new menu api, fixes some
problems:
* Up/Down buttons are no longer reversed.
* The menu looks much better with reversed bg/fg colors instead of 
inversed.
* Menu uses userfont.

Add the set_bool_options function to the plugin api and bump api 
version.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13629 a1c6a512-1295-4272-9138-f99709370657
2007-06-14 20:02:27 +00:00
Michael Sevakis
2d48d0ffa6 Straighten out some audio path APIs and misc. audio stuff. Having recording is not a prerequisite to having input/output source selection which is probably most useful when adding a audio input features like FM to a new port without forcing recording to be implemented first.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13599 a1c6a512-1295-4272-9138-f99709370657
2007-06-08 23:42:04 +00:00
Jens Arnold
b4702463e2 Archos Recorders, Ondio FM: WAV recording plugin. This is considered a technical preview, and has the following limitations: * No peakmeters and no gain control. The plugin reuses the gain values from the core, so use the core's recording screen to set gain, then call the plugin. * Recording directory is fixed, and on Ondio it always records to external MMC (there is not much point to record WAV to the 128MB internal flash). * All supported targets just generate numbered filenames, i.e. no R[DATE][TIME].wav files on recorders. * Only records to a single file, and will stop when approaching the safe file size limit of 2GB.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13416 a1c6a512-1295-4272-9138-f99709370657
2007-05-19 18:29:27 +00:00
Jonathan Gordon
77a458a464 Move the old api out of the core and into the plugin lib.
ew plugins shuold use the new api and not this one.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13358 a1c6a512-1295-4272-9138-f99709370657
2007-05-08 11:55:43 +00:00
Dave Chapman
4ae85e6886 Revert the addition of the steal_codec_stack function. Replace by accessing the threads structure to grab the codec stack. Maybe a better solution exists.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13349 a1c6a512-1295-4272-9138-f99709370657
2007-05-07 23:54:10 +00:00
Dave Chapman
f4a9dab4d1 Use a separate thread in test_codec, with the same (IRAM) stack as the main codec thread. Add a function to the plugin API to steal the codec thread, which test_codec copies and then restores. Now libmad can be benchmarked.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13347 a1c6a512-1295-4272-9138-f99709370657
2007-05-07 22:30:23 +00:00
Dave Chapman
7cdd0fe6ea Initial version of a test_codec plugin (viewer). This loads the audio file into the audio buffer and decodes it as fast as it can via a locally implemented version of the codec API. Intended for use when optimising codecs - so isn't built by default. Remember to add it to both plugins/SOURCES and viewers.config to enable it. Currently the codec is run in the main thread which means mpa.codec doesn't work - it requires more stack than is available on the main thread. The solution will be to create a new thread in the plugin which steals the main codec thread's IRAM stack, but that's not done yet.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13345 a1c6a512-1295-4272-9138-f99709370657
2007-05-07 17:23:31 +00:00
Michael Sevakis
2aaf45e643 Get samplerate switching working in the sim to be similar to on target. Make all pcm functions available there as well.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13320 a1c6a512-1295-4272-9138-f99709370657
2007-05-04 15:14:56 +00:00
Michael Sevakis
26d242ae65 General housekeeping: Make plugin buffer functions take size_t * instead of int * to match the parameter type of the buffer functions called in the core. Get rid of unsafe int * <==> size_t * casting. Use ssize_t where int was used and size_t where unsigned int was used in the buffer calls to not alter signedness in the plugins. No API version change since it should only be an issue for 64-bit sim builds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13233 a1c6a512-1295-4272-9138-f99709370657
2007-04-21 18:38:25 +00:00
Michael Sevakis
9bfa237869 mpegplayer: Get it in better shape for dual core targets. Utilize the newly added cache stuff. Add a mutex to core shared buffer variables. I'd prefer to have a true spinlock there but this will do for the moment and protect the data. Nonetheless I can't seem to crash it on an e200 any longer and the display garbage is gone.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13153 a1c6a512-1295-4272-9138-f99709370657
2007-04-14 02:46:15 +00:00
Michael Sevakis
6c9a433ca1 Add a check to make sure initializing the BSS section doesn't pass a negative size to memset.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13116 a1c6a512-1295-4272-9138-f99709370657
2007-04-12 05:18:53 +00:00
Michael Sevakis
6689cb0f9b mpegplayer: Get A-V synchronized. Improve frame sync and dropping logic and take advantage of decoder's ability to assist. Straighten out some threading problems. Clean it up a bit. Added some plugin API functions and decided it was a good time to do a good sorting on them so your next update from this build should be a full replacement.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13094 a1c6a512-1295-4272-9138-f99709370657
2007-04-10 14:18:30 +00:00
Jens Arnold
f9b90e9103 Now charcell displays require lcd_update() for updating the main lcd content like bitmap displays.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13050 a1c6a512-1295-4272-9138-f99709370657
2007-04-06 22:55:00 +00:00
Jens Arnold
323d75d25f It's not necessary (anymore?) to map lcd_icon() to sim_lcd_icon() for the simulator. * Removed a stray lcd_icon() call from usb handling.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13006 a1c6a512-1295-4272-9138-f99709370657
2007-04-03 18:06:13 +00:00
Jonathan Gordon
c26a6bb57a stop the first press after exiting some plugins being eaten.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12986 a1c6a512-1295-4272-9138-f99709370657
2007-04-01 00:17:06 +00:00
Jens Arnold
54ea2e435e Charcell lcd driver: Preparations for switching to non-immediate LCD updates, using lcd_update() like on bitmap targets. * Added proper clipping. * Simplified simulator code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12979 a1c6a512-1295-4272-9138-f99709370657
2007-03-31 09:58:49 +00:00
Jens Arnold
ad4e3d6657 First step of charcell LCD code rework: * Make it fully unicode aware so that adding non-ISO8859-1 scripts becomes possible (limited by the LCD capabilities of course). * Make the API more similar to the bitmap LCD code's API. * Moved hardware dependent parts to target tree. * Simplified code. * Jumpscroll temporarily non-functional.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12916 a1c6a512-1295-4272-9138-f99709370657
2007-03-26 07:52:13 +00:00
Dave Chapman
46cf8805b6 Oops, only swcodec targets have pcm_get_bytes_waiting()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12885 a1c6a512-1295-4272-9138-f99709370657
2007-03-22 09:40:26 +00:00
Dave Chapman
8310848421 Some small mpegplayer improvements/bug-fixes, and improved A/V sync. Audio is used as the master clock and video is synced to the number of samples played. This doesn't take account of any PTS difference at the start of the stream. Also enable Limit FPS and Skip Frames by default - these options need to be enabled for A/V sync to work. Adds pcm_get_bytes_waiting() to the plugin API
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12884 a1c6a512-1295-4272-9138-f99709370657
2007-03-22 09:18:46 +00:00
Jonathan Gordon
e4689fd18e revert the last commit... setting wasnt worth the space
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12874 a1c6a512-1295-4272-9138-f99709370657
2007-03-21 07:26:07 +00:00
Jonathan Gordon
a5c5bd3831 Add a setting to force the backlight to stay on (or act normally) when
in plugins.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12873 a1c6a512-1295-4272-9138-f99709370657
2007-03-21 07:05:05 +00:00
Jens Arnold
4d6374c923 Get rid of the 'center' parameter for splashes. There were only 2 of almost 500 splashes which were not centered.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12807 a1c6a512-1295-4272-9138-f99709370657
2007-03-16 21:56:08 +00:00
Jonathan Gordon
6e44209a4c Make the Play / Pause option restart playback if its stopped also
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12738 a1c6a512-1295-4272-9138-f99709370657
2007-03-12 13:41:52 +00:00
Jonathan Gordon
9ab9f91691 Fix the problem where plugins decide to re-enter if they are exited
using a menu


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12708 a1c6a512-1295-4272-9138-f99709370657
2007-03-10 13:52:38 +00:00
Jonathan Gordon
3452146217 Make the old menu aPI use the new API. Both are avialable to core and
rocks, but use the new API unless you absolutly have to use the old one 
(and file a FS bug if you do)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12670 a1c6a512-1295-4272-9138-f99709370657
2007-03-07 13:00:46 +00:00
Daniel Ankers
82f9056988 Dual core support for PP502x players (iPod G4 and later, iriver h10, Sansa - iPod G3 will be coming soon.) This allows threads to be run on either core provided that all communications between the cores is done using uncached memory. There should be no significant change in battery life from doing this. Documentation (on the RockboxKernel wiki page) will follow shortly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12601 a1c6a512-1295-4272-9138-f99709370657
2007-03-04 20:06:41 +00:00
Nils Wallménius
7fdee10a70 Make private functions static. Remove some functions from the plugin api as they weren't used in any plugins and could then be declared static.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12462 a1c6a512-1295-4272-9138-f99709370657
2007-02-23 21:52:45 +00:00
Jonathan Gordon
9a6f419775 CONFIG_CHARGING
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12384 a1c6a512-1295-4272-9138-f99709370657
2007-02-18 05:32:06 +00:00
Linus Nielsen Feltzing
6ffd8043cb Removed some unused menu code
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12335 a1c6a512-1295-4272-9138-f99709370657
2007-02-16 10:40:59 +00:00
Jonathan Gordon
f8c68c7912 Simple cpu boost tracker for LOGF builds. Shows the last 64 cpu_boost() calls from the debug menu
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12087 a1c6a512-1295-4272-9138-f99709370657
2007-01-22 10:41:25 +00:00
Miika Pekkarinen
0ea4d3197e Prepare core support for the iriver bootloader supporting ROM images
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11991 a1c6a512-1295-4272-9138-f99709370657
2007-01-12 18:34:00 +00:00
Dave Chapman
fd8bac806b Export pcm_* functions in plugin API in sim.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11879 a1c6a512-1295-4272-9138-f99709370657
2007-01-01 13:21:19 +00:00
Dave Chapman
4b801b2d3a Initial implementation of audio support (44.1KHz only, mp2 or mp3, mono/stereo, any bitrate) and .mpg file (MPEG program stream) parsing for mpegplayer - .m2v files are no longer supported. .mpg parser based on patch #6366 from Mathieu Favreaux. Currently limited to only playing files smaller than the available buffer RAM (it will play longer files, but never refills the buffer when it runs empty). There is also no a/v sync implemented, and still no seeking support. Coldfire (iriver H3x0 and iaudio X5) users can use the optimisations provided in patch #5995 to increase the framerate, and PortalPlayer (ipods and iriver H10) users will want to use kernel_on_cop_6.diff from FS#5755 which enables mpegplayer to run the video thread on the second CPU core - video on the second core with audio on the first core runs at the same speed as the old mpegplayer did with no audio.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11877 a1c6a512-1295-4272-9138-f99709370657
2007-01-01 12:59:32 +00:00
Nils Wallménius
5652b2528d Always use a black backgound while displaying images in jpegviewer, and use the usual foreground/background colors and backdrop in the jpegviewer menu
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11684 a1c6a512-1295-4272-9138-f99709370657
2006-12-07 17:23:52 +00:00
Michael Sevakis
51189b4cb4 Small change to PCM recording API for low latency effects. Latency can be as low as 14 samples from input to output including the FIFOs (ColdFire) but 16 is more reasonable an expectation if only tranferring one sample per interrupt (\!). May convert PCM playback to use the same method as it can still be used in the old manner with some slight mods but has the potential to enable new features since it is more flexible.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11668 a1c6a512-1295-4272-9138-f99709370657
2006-12-06 08:34:55 +00:00
Peter D'Hoye
0f02e4f7a0 File and (recursive) directories properties in the file browser context menu. Uses dircache if possible (plugin api expanded). Is actually implemented as plugin. Small parts taken from earlier work by Will Robertson.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11630 a1c6a512-1295-4272-9138-f99709370657
2006-11-30 22:29:48 +00:00
Tomasz Malesinski
80da8b141c FS#6357, patch 1: let iramcopy and bss share the same space in codecs and
plugins. Currently, in case of plugins using IRAM bss is cleared twice,
once in the loader, once in PLUGIN_IRAM_INIT. For codecs, bss is cleared only
during codec initialization. Also, removed double variables in codecs
storing a pointer to codec_api.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11606 a1c6a512-1295-4272-9138-f99709370657
2006-11-26 18:31:41 +00:00
Michael Sevakis
ab1861a3c2 iRiver/iAudio: Added audio_set_recording gain and sound_default to plugin API. Simplified plugin recording by target/-ing some audio functions. UDA1380 records with WSPLL as a result.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11577 a1c6a512-1295-4272-9138-f99709370657
2006-11-23 19:21:15 +00:00
Jonathan Gordon
6288523cfe * Move checkbox to plugin api (core never uses it)
* replace the last of the scrollbar() calls with gui_scrollbar_draw()


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11552 a1c6a512-1295-4272-9138-f99709370657
2006-11-19 14:11:42 +00:00
Michael Sevakis
acc29d95be SWCODEC/IRAM: Save voice IRAM when a plugin initializes its IRAM. Defines two macros for declaring and initializing IRAM. Plugins should use these instead. See mp3_encoder, doom, etc. for details. Further tweaks in buffer restoration after other use. Hiding of some interfaces that should only be used by buffer management.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11544 a1c6a512-1295-4272-9138-f99709370657
2006-11-18 02:18:29 +00:00
Karl Kurbjun
1a9442c001 Hopefully clean up some errors
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11528 a1c6a512-1295-4272-9138-f99709370657
2006-11-15 06:46:35 +00:00
Karl Kurbjun
d6b0c97312 Don't need to remove the backdrop for all plugins - leave it up for some.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11526 a1c6a512-1295-4272-9138-f99709370657
2006-11-15 06:14:27 +00:00
Jens Arnold
0297873f6a Backdrop support for greyscale targets. WPS backdrop is untested.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11520 a1c6a512-1295-4272-9138-f99709370657
2006-11-13 00:45:21 +00:00
Miika Pekkarinen
202b7267c2 Fixed logf builds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11512 a1c6a512-1295-4272-9138-f99709370657
2006-11-11 08:00:28 +00:00
Michael Sevakis
466e066ddb Trimmed a little too much from plugin.c :P
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11510 a1c6a512-1295-4272-9138-f99709370657
2006-11-11 05:47:42 +00:00
Michael Sevakis
806d8f3505 Added recording functions to plugin API per request of Thom Johansen. Cleaned up includes in plugin.c and grouped them a bit better in plugin.h while at it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11508 a1c6a512-1295-4272-9138-f99709370657
2006-11-11 05:11:05 +00:00
Michael Sevakis
0f5cb94aa4 Big Patch adds primarily: Samplerate and format selection to recording for SWCODEC. Supprort for samplerates changing in playback (just goes with the recording part inseparably). Samplerates to all encoders. Encoders can be configured individually on a menu specific to the encoder in the recording menu. File creation is delayed until flush time to reduce spinups when splitting. Misc: statusbar icons for numbers are individual digits to display any number. Audio buffer was rearranged to maximize memory available to recording and properly reinitialized when trashed. ColdFire PCM stuff moved to target tree to avoid a complicated mess when adding samplerate switching. Some needed API changes and to neaten up growing gap between hardware and software codecs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11452 a1c6a512-1295-4272-9138-f99709370657
2006-11-06 18:07:30 +00:00
Jonathan Gordon
0218a155b0 put the parameter name in the function prototype
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11406 a1c6a512-1295-4272-9138-f99709370657
2006-10-31 11:30:37 +00:00
Jonathan Gordon
29e259a291 * give tsr plugins the choice to quit or not
* bumps plugin api version


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11405 a1c6a512-1295-4272-9138-f99709370657
2006-10-31 11:17:00 +00:00
Peter D'Hoye
9afce4d359 Disk spindown control during jpeg slideshow: for times below 10s, keep the disk spinning, for longer times spin down the disk immediately after loading the picture. Inspired by #FS5653 (Paul Jam / Gwen Roelants) and Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11299 a1c6a512-1295-4272-9138-f99709370657
2006-10-21 14:47:55 +00:00
Michael Sevakis
6aa12c11f7 Added a small interface to screens to translate colors into remote gray levels on the x5. Splash screens paint properly with light gray. Should be adapted to a more general approach in the future. A few trailing whitespace trimmings got into a couple files but that is fine.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11218 a1c6a512-1295-4272-9138-f99709370657
2006-10-14 01:32:58 +00:00
Jens Arnold
d8dda93268 Plugin loader: * Fix drawinfo reset after plugin return for greyscale remote LCDs. * Slight cleanup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11155 a1c6a512-1295-4272-9138-f99709370657
2006-10-09 07:00:50 +00:00
Dave Chapman
491458e418 Add wheel_status() function to the ipod "4g" button driver (i.e. all ipods excluding the 3G and 1st gen mini) to read the absolute position the wheel is being touched (0..95 - clockwise from top, or -1 for untouched), plus the wheel_send_events(bool) function to disable/enable sending normal scrolling events - based on patch #4721 from Mikael Magnusson.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11068 a1c6a512-1295-4272-9138-f99709370657
2006-09-26 19:25:52 +00:00
Jens Arnold
b0a7de6b7d Solitaire: * Button assignments: Better layout for ipods, allowing one-handed operation during the game. More logical shortcut buttons for Ondios. Slight changes for other targets, including working button repeat for up/down when there is no dual use. * Help text showing all possible buttons instead of forcing the user to try and find out. The text adapts to LCD resolution and selected font.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10985 a1c6a512-1295-4272-9138-f99709370657
2006-09-17 22:20:05 +00:00
Miika Pekkarinen
a85044bf9e New scheduler, with priorities for swcodec platforms. Frequent task
switching should be more efficient and tasks are stored in linked
lists to eliminate unnecessary task switching to improve performance.
Audio should no longer skip on swcodec targets caused by too CPU
hungry UI thread or background threads.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10958 a1c6a512-1295-4272-9138-f99709370657
2006-09-16 16:18:11 +00:00
Jonathan Gordon
e9fd3d6c57 * Add keymap file for h10 (Thanks Barry Wardell)
* Add a signalscreenchange to plugin_run so keys work coreclty after
quiting plugins


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10601 a1c6a512-1295-4272-9138-f99709370657
2006-08-16 04:05:19 +00:00
Linus Nielsen Feltzing
224c0a13eb Finally, the new button action system is here, thanks to Jonathan Gordon. Some button mappings have changed and other things may break. Comments should go to the forum, http://forums.rockbox.org/index.php?topic=5829.0 or the mailing list.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10582 a1c6a512-1295-4272-9138-f99709370657
2006-08-15 12:27:07 +00:00
Rani Hod
bcd94a9b01 Accepted FS #5786 by Michael Sevakis - lcd_yuv_blit() for X5.
hard coded to YUV4:2:0 for now, gives ~13.5 fps.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10528 a1c6a512-1295-4272-9138-f99709370657
2006-08-11 14:10:34 +00:00
Dave Chapman
13b23fbcdb Implementation of lcd_yuv_blit() for the ipod 5g.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10487 a1c6a512-1295-4272-9138-f99709370657
2006-08-08 21:28:08 +00:00
Jens Arnold
c5a309afbd H300: * Implemented lcd_yuv_blit(). Speeds up video playback by about 7%. No bounds check in lcd_yuv_blit() (by convention), implementations for other targets should be adapted. * Fixed off-by-one bug in lcd_update_rect()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10484 a1c6a512-1295-4272-9138-f99709370657
2006-08-08 13:44:43 +00:00
Dan Everton
5814551865 Add disktidy plugin (FS#2596).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10482 a1c6a512-1295-4272-9138-f99709370657
2006-08-08 10:46:39 +00:00
Dave Chapman
c9d66562af Initial commit of work-in-progress MPEG video player plugin based on libmpeg2. Works on all targets with colour LCDs, but most optimised for the ipod Color/Photo and Nano. It currently only plays raw MPEG-1 or MPEG-2 video streams (no audio). Also adds a new lcd_yuv_blit() function to the plugin API - currently only implemented for the ipod Color/Photo and Nano.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10479 a1c6a512-1295-4272-9138-f99709370657
2006-08-07 22:11:07 +00:00
Jens Arnold
05ddd9a44e X5 remote LCD drawing. This will break target linking atm - lcd_remote_update[_rect]() are not yet implemented.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10347 a1c6a512-1295-4272-9138-f99709370657
2006-07-28 07:35:45 +00:00
Antoine Cellerier
06e6acd6cd Export bidi_l2v, font_get_bits and font_load in plugin API (on bitmap LCD targets)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10255 a1c6a512-1295-4272-9138-f99709370657
2006-07-19 19:47:34 +00:00
Kevin Ferrare
0028b05f3e Added multi-screen API to the plugins API, made 'demystify plugin' use the remote display as well
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10167 a1c6a512-1295-4272-9138-f99709370657
2006-07-01 10:14:27 +00:00
Jens Arnold
0dd1f8ec11 Work-in-progress rework of charging status reading & display: * Changed several charging related HAVE_* macros into one multi-value CONFIG_CHARGING. * Always use proper macros for charging states. * Battery symbol charging animation now starts from current level on all targets with charging. Two-colour animation kept for non-b&w targets. Round down fill level while charging as before, but round to nearest pixel value for discharging on all targets. * Charging anim fixed on player. * Some code cleanup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10080 a1c6a512-1295-4272-9138-f99709370657
2006-06-06 22:23:52 +00:00
Hardeep Sidhu
ab3e71cad9 Added reload_directory() to plugin api and modified text editor and sudoku plugins to call it when saving a new file. Fixes B#5360.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10053 a1c6a512-1295-4272-9138-f99709370657
2006-06-04 16:36:49 +00:00
Jens Arnold
2343a1935d Text viewer: * Only show those options which really exist. * Basic button functions now available on all targets. * Implemented option setting in a more straightforward way (like the core options menus).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9874 a1c6a512-1295-4272-9138-f99709370657
2006-05-03 23:16:53 +00:00
Jens Arnold
93ff94949c Player: Credits plugin correctly working with UTF-8. Patch by Marcoen Hirschberg.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9862 a1c6a512-1295-4272-9138-f99709370657
2006-05-02 21:44:04 +00:00
Zakk Roberts
07fcf77cb0 Patch #5056 by Jonathan Gordon, with rework and additions by me: Updated Viewer plugin. Replaces annoying mode-toggle key-combos with a settings menu, including a new 'Scroll by Line' option. I've also added a 'hands-free' auto-scroll feature and added lcd_setmargins to the plugin API, since we need it here.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9844 a1c6a512-1295-4272-9138-f99709370657
2006-05-01 05:45:18 +00:00
Jens Arnold
b509ff5069 Patch #3022 by Mikael Magnusson: Only zero out the actual bss area instead of the whole plugiin buffer, for faster plugin loading. * Applied the same idea to the overlay loader.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9535 a1c6a512-1295-4272-9138-f99709370657
2006-04-06 18:26:14 +00:00
Hristo Kovachev
38deb8f13a Patch #4864 by Jonathan Gordon: text editor plugin, with some changes by me.
Also correct a var clash between the rockbox's gui api and doom plugin


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9451 a1c6a512-1295-4272-9138-f99709370657
2006-04-03 08:51:08 +00:00
Dave Chapman
909b6d2653 Finish removing the main LCD backdrop function from the plugin API
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9315 a1c6a512-1295-4272-9138-f99709370657
2006-03-28 16:18:21 +00:00
Dave Chapman
39876971a8 Do not export load_main_backdrop() via the plugin API. Plugins should allocate their own buffer and use lcd_set_backdrop()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9313 a1c6a512-1295-4272-9138-f99709370657
2006-03-28 16:04:11 +00:00
Dave Chapman
47f4a458d6 Patch #2969 - Doom! Currently only working on the H300.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9312 a1c6a512-1295-4272-9138-f99709370657
2006-03-28 15:44:01 +00:00
Jens Arnold
0c09f3ee88 WAV playback as a plugin, for archos recorders and Ondios. Plays 16-bit WAV files with all common sample frequencies, both mono and stereo. Meant as a preview for later PCM playback integration, and for doing experiments with the MAS PCM codec.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9273 a1c6a512-1295-4272-9138-f99709370657
2006-03-26 23:00:24 +00:00
Linus Nielsen Feltzing
6f4d721d23 Basic plugin playback control menu by Jonathan Gordon (Patch #4874)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9269 a1c6a512-1295-4272-9138-f99709370657
2006-03-26 22:33:25 +00:00
Miika Pekkarinen
7c4e0c8730 Initial version of tagcache! There are still some bugs in the engine
and much more problems with the UI.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9256 a1c6a512-1295-4272-9138-f99709370657
2006-03-26 11:33:42 +00:00
Hristo Kovachev
f53f64a615 button.h cleanup, with the future "button action" thing in mind:
1) Main unit's button defines are from the LSB to the MSB (currently bits 0-9, 0x00000200), remote ones are from the 20th bit (0x00100000) downards to 10th(0x00000400);
2) Removed the BUTTON_REMOTE modifier, replaced with a bitmask of all of the remote buttons (where applicable, otherwise with 0), added a complementary BUTTON_MAIN bitmask;
3) Moved button modifiers:
  - BUTTON_REPEAT: to bit 26 (0x04000000)
  - BUTTON_REL: to bit 25 (0x02000000)
There are at least 4 bits free on all targets now: 21-24.
If we really need more free bits, it's possible to SHR remote buttons 1 bit more (freeing bit 20 too), and to change the SYS_EVENT bit with a bitmask (+2 bits).
4) Bumped up the min. plugin ver. (and sorted the plugin api struct), because the binary plugins with key input won't understand the new values


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9149 a1c6a512-1295-4272-9138-f99709370657
2006-03-21 09:36:13 +00:00
Dave Chapman
a814584c87 pacbox - a Pacman arcade machine emulator. Currently working for all colour targets and the iriver H1x0. Requires the Pacman arcade machine ROMs in /.rockbox/pacman/
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9001 a1c6a512-1295-4272-9138-f99709370657
2006-03-11 15:44:35 +00:00
Jens Arnold
dae698cad4 Ooops.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8997 a1c6a512-1295-4272-9138-f99709370657
2006-03-11 09:38:12 +00:00
Jens Arnold
06bc627c99 Removed lcd_roll() and lcd_remote_roll() functions. These functions were not really portable. Removed the only plugin that used lcd_roll(): Oscillograph. Oscilloscope offers everything that oscillograph did and more, in a portable way. * Bumped & sorted plugin API.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8995 a1c6a512-1295-4272-9138-f99709370657
2006-03-11 09:28:49 +00:00
Dan Everton
769925541a sound_set_pitch is not available on Player
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8916 a1c6a512-1295-4272-9138-f99709370657
2006-03-05 19:46:33 +00:00
Dan Everton
d108849812 Get VU Meter plugin working on SWCODEC targets. Still needs to be scaled to fit better on larger displays. Also requires bumping the plugin API versions.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8915 a1c6a512-1295-4272-9138-f99709370657
2006-03-05 19:34:54 +00:00
Jens Arnold
38b7547ef4 Simulators: Fix pointer size vs. int size problems (64bit hosts) in plugin loader and codec loader.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8880 a1c6a512-1295-4272-9138-f99709370657
2006-03-02 01:08:38 +00:00
Jens Arnold
6a972e0249 Finally - grayscale library support for the simulators. Currently SDL only, win32 and x11 won't link anymore due to missing simulator functions.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8845 a1c6a512-1295-4272-9138-f99709370657
2006-02-26 13:37:42 +00:00
Dave Chapman
603f87fe3c Foreground/Background colour settings. Based on patch #3050 by Jonathan Gordon, extended my me. The principle of the patch is that the three sliders contain the native ranges (currently 0..31, 0..63, 0..31), and the equivalent RGB888 colour is displayed underneath. The config block (and global_settings struct) contain the native value for the fg/bg colours (either RGB565 or RGB565SWAPPED), but the text .cfg files contain the RGB888 value written as 6 hex digits.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8840 a1c6a512-1295-4272-9138-f99709370657
2006-02-26 02:48:05 +00:00
Hristo Kovachev
cc6f37b8d8 "Next/Previous jpeg from within the JPEG viewer" addition by Alexander Spyridakis, modified a bit by me
Also tries to use the plugin buffer instead of the audio buffer on the platforms with more than 130kb plugin buffer size (thus not stopping the music playback). If the free buffer from the plugin buffer is not enough, asks for stopping playback. Needs a little more work, but seems stable as it is.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8728 a1c6a512-1295-4272-9138-f99709370657
2006-02-18 20:51:34 +00:00
Jens Arnold
35e05ca504 Plugin loader: Handle the remote LCD the same way as the main LCD (clear, set parameters).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8724 a1c6a512-1295-4272-9138-f99709370657
2006-02-18 00:13:44 +00:00
Jens Arnold
7ea4d59127 Plugin loader adjustments: * Don't clear the LCD before loading, just show a splash instead. * After successful loading, remove backdrop, then clear display, to properly prepare the screen for the plugin. * Clear after returning from plugin and restoring the backdrop.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8710 a1c6a512-1295-4272-9138-f99709370657
2006-02-16 22:36:04 +00:00
Dave Chapman
1c39855787 Only clear the backdrop after a plugin has been loaded successfully - prevents the backdrop being lost if the plugin fails to load.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8689 a1c6a512-1295-4272-9138-f99709370657
2006-02-14 00:39:11 +00:00
Brandon Low
413da2a3d9 Rework PCM buffer
* Linked list instead of static array buffer pointers
* Variable sized chunks
* Improved mix handling
* Reduction in duplicated code
* Reduced IRAM usage w/o sacrificing performance
* Converted to almost entirely unsigned math
* Add pause function to reduce pcm_* exposure to playback.

This WILL break playback on the iPod until linuxstb makes a followup commit.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8612 a1c6a512-1295-4272-9138-f99709370657
2006-02-07 20:38:55 +00:00
Hristo Kovachev
14cfc65414 1. Updated battery_bench plugin:
1.1 Don't use the plugin_get_buffer() so the playlist viewer should work with this plugin running;
1.2 Added new columns for charger inserted, charging, usb powered;
1.3 Some other small improvements
2. charger_inserted() again returns only the AC/DC charger state on H3x0, doesn't include the usb state;
3. Some ifdefs corrected in power.c and power.h;


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8607 a1c6a512-1295-4272-9138-f99709370657
2006-02-07 14:46:03 +00:00