summaryrefslogtreecommitdiff
path: root/apps/plugin.h
AgeCommit message (Collapse)Author
2008-04-04Allow to select the core for running the user timer on portalplayer targets. ↵Jens Arnold
* Incompatible plugin API change -> sorted API. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16965 a1c6a512-1295-4272-9138-f99709370657
2008-04-02Greyscale library: * Implement linearisation curve flipping for 1st/2nd Gen ↵Jens Arnold
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-03-28Revert my earlier const madness, we'll keep the parameter lists simple.Steve Bavin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16863 a1c6a512-1295-4272-9138-f99709370657
2008-03-28...and that plugin API has changed again.Steve Bavin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16861 a1c6a512-1295-4272-9138-f99709370657
2008-03-28The const police raid playback.c, should be no change to behaviour.Steve Bavin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16860 a1c6a512-1295-4272-9138-f99709370657
2008-03-26More consts that require no functional change.Steve Bavin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16814 a1c6a512-1295-4272-9138-f99709370657
2008-03-26the menu and list now accepts a parent viewport to draw in (and the menu can ↵Jonathan Gordon
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-25Code police raid on the settings code, consting and putting headers ↵Steve Bavin
alongside their implementation. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16798 a1c6a512-1295-4272-9138-f99709370657
2008-03-25Add a complete priority inheritance implementation to the scheduler (all ↵Michael Sevakis
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-24The blit functions shouldn't exist for the simulator.Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16777 a1c6a512-1295-4272-9138-f99709370657
2008-03-24Oops, fix red.Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16776 a1c6a512-1295-4272-9138-f99709370657
2008-03-24Consistent naming scheme the various blit functions. * Removed ↵Jens Arnold
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-02-01mpegplayer: Use the core DSP to process audio. Removes the sample rate ↵Michael Sevakis
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-01-26H10 20GB: Assembly YUV blitting and dithering.Michael Sevakis
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16171 a1c6a512-1295-4272-9138-f99709370657
2008-01-13charcell doesnt show titles in lists, so remove the "show path" setting and ↵Jonathan Gordon
free up some bin space git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16069 a1c6a512-1295-4272-9138-f99709370657
2008-01-09Greyscale library: Changed the internal data format once more (separated ↵Jens Arnold
pixel values and phases), allowing for further optimisation of drawing, scrolling etc. * Optimised grey phase blitting in the core reduces CPU load on all architectures, most significantly on coldfire. Previous version was too slow to keep up at 45MHz, leading to unwanted graininess (update frequency was halved). Also fixed screendump on 2bpp targets with vertical pixel packing. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16043 a1c6a512-1295-4272-9138-f99709370657
2008-01-08Add the viewport functions to the screens API, including a new getfont() ↵Dave Chapman
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-04All-new greyscale library, replacing the old one. Features: (1) ↵Jens Arnold
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-03Initial WVS for mpegplayer. Adjusts to the user's preferred font and uses ↵Michael Sevakis
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
2007-12-31Fix typos in two lcd_remote function names.Dave Chapman
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15983 a1c6a512-1295-4272-9138-f99709370657
2007-12-29mpegplayer: Make playback engine fully seekable and frame-accurate and split ↵Michael Sevakis
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-09Fix red.Nicolas Pennequin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15901 a1c6a512-1295-4272-9138-f99709370657
2007-12-09Initial commit of the PictureFlow plugin, a nice visualization for album covers.Nicolas Pennequin
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-11-29Fix some plugins not using the helper functions for the new backlight ↵Jens Arnold
timeout handling. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15849 a1c6a512-1295-4272-9138-f99709370657
2007-11-21consolidate the 3 file_exists() functions into one; use the version that ↵Robert Kukla
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-18Make speex the new voice format for SWCODEC targets (non-Archos). Remove ↵Michael Sevakis
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-10Add read_bmp_fd and make the first parameter of read_bmp_file ("filename") ↵Nicolas Pennequin
const. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15553 a1c6a512-1295-4272-9138-f99709370657
2007-11-08Add some CACHEALIGN_* macros and a helper function to assist in aligning ↵Michael Sevakis
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-07Add a setting to control whether or not to speak the file type (r15506).Stéphane Doyon
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15508 a1c6a512-1295-4272-9138-f99709370657
2007-11-03Accept FS#7910: spontaneously speak out the battery level when it fallsStéphane Doyon
under 50%, 30% and 15%. Guarded by an option under voice settings. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15422 a1c6a512-1295-4272-9138-f99709370657
2007-10-22Phase in thread_wait when waiting for a thread to exit. Begin phasing out ↵Michael Sevakis
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-21Implement YUV dithering for c200, and enable the option in mpegplayer.Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15246 a1c6a512-1295-4272-9138-f99709370657
2007-10-19FS#7994 - Rename talk.c API, make talk_disable() affect all talking (not ↵Steve Bavin
just menus), hopefully save some space. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15206 a1c6a512-1295-4272-9138-f99709370657
2007-10-16Finally full multicore support for PortalPlayer 502x targets with an eye ↵Michael Sevakis
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-15Oops, forgot to increment the plugin api version numbers.Antoine Cellerier
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15126 a1c6a512-1295-4272-9138-f99709370657
2007-10-15Remove the "invert scroll" code since it's not used anywhere anymore (and it ↵Antoine Cellerier
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-13Improved FPS test plugin: * Better precision for low frame rates (take extra ↵Jens Arnold
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-09fix yellow and some house cleaningRobert Kukla
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15056 a1c6a512-1295-4272-9138-f99709370657
2007-10-09FS#7487 - mpegplayer - video start time seek with resumeRobert Kukla
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-09Oops. Fix red.Nicolas Pennequin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15046 a1c6a512-1295-4272-9138-f99709370657
2007-10-03Just temporarily disable talk menus, in case the player is reset whilst in ↵Steve Bavin
mpegplayer. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14970 a1c6a512-1295-4272-9138-f99709370657
2007-10-02Hide symbols by default on 64 bit sim buildsto avoid clashing, fixes ↵Nils Wallménius
crashing on track change with the same codec, crashing in calculator and text display in midiplay git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14953 a1c6a512-1295-4272-9138-f99709370657
2007-09-28Commit a subset of the dual core changes that have to do with cache ↵Michael Sevakis
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-25Dithering option for mpegplayer on gigabeat-f/x and e200. Assembly IDCT for ↵Michael Sevakis
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-19Forgot to bump plugin API version.Thom Johansen
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14751 a1c6a512-1295-4272-9138-f99709370657
2007-09-19Remove the ID3 tag version priority setting on the grounds of it being ↵Thom Johansen
pretty pointless. ID3v2 tags are superior to ID3v1 tags, and needs less seeking around to find. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14750 a1c6a512-1295-4272-9138-f99709370657
2007-09-18Simplify initing of the screens[] struct by using an initializer, also some ↵Nils Wallménius
reordering of the struct, and the required plugin api bump git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14743 a1c6a512-1295-4272-9138-f99709370657
2007-09-17minor update to gui_synclist_do_button() which will hopefully simplify ↵Jonathan Gordon
things later. Now returns true if the action was handled in that function instead of returning the handled action. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14733 a1c6a512-1295-4272-9138-f99709370657
2007-09-08Sim I/O and threading that runs more like on target. Tweakable if any ↵Michael Sevakis
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-08-19Use size_t type for the buffer_size parameter to formatter functions, static ↵Nils Wallménius
two private functions git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14392 a1c6a512-1295-4272-9138-f99709370657