Frank Gevaerts
f366090562
Make disabling HAVE_PITCHSCREEN actually work without breaking the build
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28102 a1c6a512-1295-4272-9138-f99709370657
2010-09-17 20:28:47 +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
Rafaël Carré
5574af8334
mpegplayer mad: apply r27655 fix
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27659 a1c6a512-1295-4272-9138-f99709370657
2010-08-01 16:38:58 +00:00
Frank Gevaerts
63011c6743
Revert accidental commit of "%z" support in r26071 (the implementation assumed size_t==long, which is not always the case in hosted environments)
...
Remove four remaining uses of %z, three of which were in DEBUGF
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27479 a1c6a512-1295-4272-9138-f99709370657
2010-07-18 12:42:47 +00:00
Michael Sevakis
7195f3a30c
r27159 broke mpegplayer but not the mpa codec because its libmad init wasn't also updated to be compatible with the changes. Fix that.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27171 a1c6a512-1295-4272-9138-f99709370657
2010-06-29 10:07:04 +00:00
Rafaël Carré
e3263b70c3
CPP substitution isn't made inside " ", but we need " " when using , in a gas macro argument
...
Modify HIGH_REGS macro to store/load only one range of registers
When the range isn't contigous (in MC_put_x_8*), shift registers to make
it contigous (r4 and r5 are now unused by these functions)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26759 a1c6a512-1295-4272-9138-f99709370657
2010-06-11 05:15:17 +00:00
Rafaël Carré
45c7498f59
FS#11335 by me: make ARM assembly functions thumb-friendly
...
We can't pop into pc on ARMv4t when using thumb: the T bit won't be
modified if we are returning to a thumb function
Code running on ARMv4t should use the new ldrpc / ldmpc macros instead
of ldr pc, [sp], #4 and ldm(cond) sp!, {regs, pc}
No modification on pure ARM builds and ARMv5+
Note: USE_THUMB is currently never defined, no targets can currently be
built with -mthumb, see FS#6734
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26756 a1c6a512-1295-4272-9138-f99709370657
2010-06-11 04:41:36 +00:00
Michael Sevakis
bc26fe7a96
Add a wrapper header, mylcd.h, in the lib subdirectory, which lets plugins' code automatically call the proper functions depending if compilation is for greylib or color display, also forms proper call to grey_ and xlcd_. mylcd_ub_ call greylib unbuffered routines, regular lcd routines otherwise. Form is mylcd_<fnname>, <fnname> is the symbol name stripped of prefixes lcd_, grey_, or xlcd_. Convert a couple plugins I know well (easy job).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26542 a1c6a512-1295-4272-9138-f99709370657
2010-06-04 08:43:32 +00:00
Michael Sevakis
d7244926f5
mpegplayer: use OFF_T_MIN/MAX instead of LONG_MIN/MAX in one spot. Define OFF_T_MIN as well if not already defined.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26232 a1c6a512-1295-4272-9138-f99709370657
2010-05-21 14:01:22 +00:00
Michael Sevakis
fcf36dd4f9
Simplify mpegplayer a bit and use array-based lists rather than linked lists for stream management. Move a couple useful functions to handle pointer arrays from kernel.c into general.c; mpeglayer now makes use of them.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26101 a1c6a512-1295-4272-9138-f99709370657
2010-05-17 12:34:05 +00:00
Michael Sevakis
18b1602797
I think I intended a different expression.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26097 a1c6a512-1295-4272-9138-f99709370657
2010-05-17 07:58:07 +00:00
Michael Sevakis
0da5399c79
How punny. Just one more whack-a-mole to get.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26092 a1c6a512-1295-4272-9138-f99709370657
2010-05-16 15:17:27 +00:00
Michael Sevakis
26230ae048
MPEGPlayer: reconceal the point puns
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26090 a1c6a512-1295-4272-9138-f99709370657
2010-05-16 15:12:23 +00:00
Michael Sevakis
b197c3b0d6
MPEGPlayer: Add a second layer of caching to help speed up byte-wise scanning and seeking a bit.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26088 a1c6a512-1295-4272-9138-f99709370657
2010-05-16 14:41:00 +00:00
Michael Sevakis
80d0d15ca9
Gigabeat S: Fully enable access to hardware tone controls and 3-D effect feature. Under the hood, it's designated a hardware equalizer since it is one. Implement code framework for hardware EQ in general. Menu aspect is well abstracted and so the UI and strings can be changed around if taste doesn't quite suit. So far the emphasis is distinction of the UI labelling from the software EQ so that it's clear the settings are for a different thing.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26051 a1c6a512-1295-4272-9138-f99709370657
2010-05-15 13:09:45 +00:00
Jeffrey Goode
f2a56161f7
Fix yellow: missed a cast
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26041 a1c6a512-1295-4272-9138-f99709370657
2010-05-15 03:42:37 +00:00
Jeffrey Goode
6ef04a7f0e
Eliminate %zd tag in printf format strings, replace them with %ld. The %z formatter kept generating type mismatch warnings.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26040 a1c6a512-1295-4272-9138-f99709370657
2010-05-15 03:34:31 +00:00
Frank Gevaerts
ed566826f5
Fix various size_t related warnings and errors
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26035 a1c6a512-1295-4272-9138-f99709370657
2010-05-14 22:19:45 +00:00
Rafaël Carré
9e974e4590
another cast ssize_t -> long
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26034 a1c6a512-1295-4272-9138-f99709370657
2010-05-14 22:16:40 +00:00
Michael Sevakis
eae0cedefe
mpegplayer: One last dealie-O for now: Change all "WVS" usage in the code for identifiers to "OSD".
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25873 a1c6a512-1295-4272-9138-f99709370657
2010-05-07 13:33:44 +00:00
Michael Sevakis
455c34ab91
mpegplayer: make button timeout half the OSD update interval so that it updates the indicators properly when not holding a key. Add capability to show OSD without changing volume, seeking, etc. Enable this functionality on Gigabeat S using the back (<--) button since it wasn't used in playback mode at all.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25872 a1c6a512-1295-4272-9138-f99709370657
2010-05-07 13:06:42 +00:00
Michael Sevakis
79e7375ddf
Add support for the next/prev side buttons to mpegplayer on the Gigabeat S to control seeking.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25871 a1c6a512-1295-4272-9138-f99709370657
2010-05-07 11:47:54 +00:00
Thomas Martitz
54548df56e
Fix some size_t related warnings (hopefully, they seem system dependant).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25852 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 21:17: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
Jens Arnold
0fd111d431
Improve motion compensation for ARM: * Use less registers in the simple copy routines -> less stack usage. * Save a few instructions in constants + jumptable handling. * ARM6 optimisations. Unfortunately we can't just use uhadd8 because that rounds down, while we have to round up.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25776 a1c6a512-1295-4272-9138-f99709370657
2010-05-02 14:55:12 +00:00
Jens Arnold
f2759305a9
Gigabeat S: Reduce stalling in the ARMv6 IDCT. Also save one instruction per loop, and fix comments. Speeds up fullscreen video decoding by about 5% (excluding video output). Still not perfect...
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25775 a1c6a512-1295-4272-9138-f99709370657
2010-05-02 12:13:26 +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
Rafaël Carré
35500c22a4
Fuzev2: add dithering option for mpegplayer
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25364 a1c6a512-1295-4272-9138-f99709370657
2010-03-28 02:41:29 +00:00
Rafaël Carré
e108d571ba
fix red
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25338 a1c6a512-1295-4272-9138-f99709370657
2010-03-25 23:32:29 +00:00
Rafaël Carré
57b3d09525
mpegplayer: align video output data structure only on multicore
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25330 a1c6a512-1295-4272-9138-f99709370657
2010-03-25 18:17:54 +00:00
Jens Arnold
1dfa0e92dc
Get rid of unnecessary alignment of struct member which also caused arm-elf-eabi-gcc to mess up parameter passing to mpeg2_idct_add().
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25092 a1c6a512-1295-4272-9138-f99709370657
2010-03-09 20:02:27 +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
Teruaki Kawashima
7ebde8503b
mpegplayer: reset foreground/background color and clear display in case they are changed in menu.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24308 a1c6a512-1295-4272-9138-f99709370657
2010-01-21 12:14:18 +00:00
Teruaki Kawashima
ead28e174e
mpegplayer:
...
* use upper case for enum constants.
* rename MPEG_START_TIME_SCROLL_DOWN/SCROLL_UP to MPEG_START_TIME_LEFT2/RIGHT2 as they are equivalent to MPEG_START_TIME_LEFT/RIGHT.
* simplify some code. no functional changes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24224 a1c6a512-1295-4272-9138-f99709370657
2010-01-13 12:55:52 +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
ed64d91bc2
Yet more GoGear SA9200 plugin keymaps. Almost done!
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23893 a1c6a512-1295-4272-9138-f99709370657
2009-12-07 18:23:25 +00:00
Andrew Mahone
e0b020fbfc
Merge mpeg_malloc_reason_t and mpeg2_alloc_t, add STATE_INTERNAL_NORETURN to mpeg2_state_t, to fix warnings with short enums.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23677 a1c6a512-1295-4272-9138-f99709370657
2009-11-20 11:58:11 +00:00
Michael Sparmann
099df2fb71
Make the codecs use more IRAM on S5L870x, as we have plenty of it.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23594 a1c6a512-1295-4272-9138-f99709370657
2009-11-09 20:01:07 +00:00
Thomas Martitz
239002fe9e
Fix red caused by ancient incorrect #ifdefs.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23303 a1c6a512-1295-4272-9138-f99709370657
2009-10-20 22:17:13 +00:00
Thomas Martitz
d85c3ec410
Convert lcd_activation callbacks to use the event system to allow for multiple parallel callbacks (for custom statusbar).
...
Increase maximum event count as we need more (I actually had a report about it during custom statusbar testing).
Removed corresponding functions from the core and plugin api. Bump min version and sort.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23302 a1c6a512-1295-4272-9138-f99709370657
2009-10-20 21:54:59 +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
Teruaki Kawashima
f814a44c47
fix red.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22519 a1c6a512-1295-4272-9138-f99709370657
2009-08-27 14:41:20 +00:00
Teruaki Kawashima
443f609be6
Rearange menu of mpegplayer. Add new menu with "settings" and "quit", and remove quit item from settings menu.
...
The setting menu was bit wierd as it had "quit" item at it's buttom.
Also, there are 2 almost same menu definitions in mpeg_menu and it doesn't looks good, imo.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22518 a1c6a512-1295-4272-9138-f99709370657
2009-08-27 14:24:58 +00:00
Nils Wallménius
3200d04d75
Make the formatter functions used by the settings return a pointer to avoid usless copying of lang strings, this brought with it a long chain of const correctness and a few random cleanups
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22440 a1c6a512-1295-4272-9138-f99709370657
2009-08-20 16:47:44 +00:00
Jeffrey Goode
0fe4417da8
FS#10526: mpegplayer audio out of sync, reverts r22280
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22321 a1c6a512-1295-4272-9138-f99709370657
2009-08-15 14:36:49 +00:00
Jeffrey Goode
d5592a6710
FS#10504: Make mpegplayer audio thread use correct sample count
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22280 a1c6a512-1295-4272-9138-f99709370657
2009-08-12 18:28:30 +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