Commit graph

32211 commits

Author SHA1 Message Date
Thomas Martitz
4ce1deacfd buflib: Properly support allocations without any name, to avoid wasting space
in micro-allocation scenarios.

Change-Id: I97a065bcfba8e0fda9b1670445e839e267c769c8
2014-02-02 19:40:38 +01:00
Thomas Martitz
d66346789c buflib: Check the validity of of handles passed to buflib_get_data() in DEBUG builds.
Change-Id: Ic274bfb4a8e1a1a10f9a54186b9173dbc0faa4c8
2014-02-02 16:59:29 +01:00
Thomas Martitz
d608d2203a buflib: Abstract panicf() into buflib_panic().
Change-Id: I4968a9bc290e10e30a77c36c19f694e286e7ef22
2014-02-02 16:59:29 +01:00
Thomas Martitz
a11c6a532b hosted: Substract more than 256K from total memory pool.
These 256K are intended to account for the binary size which reduces the total
available RAM on native targets. 256K is really outdated though, 768K should be
more accurate (for the majority of targets).

Change-Id: Iab3ee51d42ae15b1b7efb8588881579cf1948ae7
2014-02-02 16:59:29 +01:00
Thomas Martitz
3a86352a5d sim/sdlapp: Do not quit immediately on panicf, but wait for quit.
Change-Id: I2f0b4b560f00a43ad4b240911e4c30a162deb6e3
2014-02-02 16:59:29 +01:00
Amaury Pouly
7272a95b9c rk27utils: improve command line parsing, allow arbitrary USB ids in rkusbtool
Change-Id: I884fe29c10dede7823721c2cac5dc627d6ab25c6
Reviewed-on: http://gerrit.rockbox.org/731
Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
2014-01-30 21:20:06 +01:00
Frank Gevaerts
6fc19a7582 Update manual to match 1b53f448.
Change-Id: Ide61bc37462b0aeb938f17dbcfd9e96bcd9e86d1
2014-01-28 22:00:39 +01:00
Dominik Riebeling
f63b42ad41 Correct the number of codepages on charcell.
63cfbe0 fixed the number of codepages for bitmap targets. The same issue is
present on charcell, so update the number for that as well, fixing UTF-8
missing in the list.

Change-Id: Ib5d3494ed3d80e839ae3f59ec0a4277e5aa9d6fd
2014-01-27 20:27:15 +01:00
Dominik Riebeling
7df8ebf263 Use new ipod6g player image for ipod6g.
Change-Id: Ia010373529df3f9bed3f40f5372d8bc1fd9769fb
2014-01-27 19:55:39 +01:00
Szymon Dziok
2e511e05b8 Manual: add images for the ipod 6G, made by me.
Change-Id: Ia95d241b41cbdacfe334de1538c3bd5fc45dfc42
Reviewed-on: http://gerrit.rockbox.org/730
Reviewed-by: Szymon Dziok <b0hoon@o2.pl>
2014-01-27 16:21:37 +01:00
Thomas Martitz
efc20ec164 talk: When no voice file is loaded don't even attempt to load the clip, it's hopeless.
Change-Id: I420155d7f01ca0ea301c0678ac7245d251d365b0
2014-01-27 10:05:48 +01:00
Thomas Martitz
543027564c hwcodec/talk.c: Give the thumbnail buffer regardless of the talk buffer policy.
When the policy is not set, it'll by default not give the clip buffer away.
Callers of core_alloc_maximum() suffer from this. However, the thumbnail
buffer can be easily freed when needed because nothing needs to be
reloaded from disk when it is reallocated (thumbnail clips are loaded on
demand, when in the file browser). Do this to give core_alloc_maximum() callers
a better chance to succeed with the default talk buffer policy.

Change-Id: I8c0da29c520612ca903f6c930bd7c74ae97eca3b
2014-01-26 19:14:47 +01:00
Thomas Martitz
9892b39567 charcell: Fix lockup after some scrolling lines.
Change-Id: I5cabbd396e2a6d4e9fd8e92090624643797af34a
2014-01-26 17:56:55 +01:00
Purling Nayuki
946c348e5c Fix incorrect language string reference in eq_menu.c
In most of the translations strings with SYSFONT in title is
translated. This leads to displaying problem in (at least) graphical
equalizer due to the lack of non-latin character support in the
built-in font.

Change-Id: I0d27a5358e4eb539d4247c84975d8501d7668836
Reviewed-on: http://gerrit.rockbox.org/727
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
2014-01-26 16:26:00 +01:00
Nick Peskett
e1da541749 Option to use the lighter hinting algorithm (FT_LOAD_TARGET_LIGHT).
I've found this algorithm produces clearer results when rendering
some fonts at small point sizes.

Change-Id: If87d82731ad324405195b25baad78fe54e92c142
Reviewed-on: http://gerrit.rockbox.org/412
Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
Tested: Purling Nayuki <cyq.yzfl@gmail.com>
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
2014-01-26 16:11:05 +01:00
Thomas Martitz
77ee2851de Fix warnings. convbdf needed to be updated for the changed font struct because it generates sysfont.c.
Change-Id: Id5aea6b6c73438242a80ae6849ee5e29ab8659dc
2014-01-26 15:02:11 +01:00
Thomas Martitz
37be80a1a5 fonts: Fix regression(s) caused by c23ce62.
The builtin sysfont does not have an associated buflib_alloc_data
(because it's builtin right?). font_get_{width,bits} accessed a field of
it for all fonts which crashed on some systems but not on mine.
Solution: Move this field to struct font directly.

The cache size calculated was also busted.

Fixes FS#12944 and most likely FS#12938.

Change-Id: I32303c4335a12a6c421fdca34f7ece851aac12ca
2014-01-26 14:01:48 +01:00
Thomas Martitz
8142c68bd2 Fix red on monochrome.
Change-Id: Ice40c81d0d07f7ec2014697e4de446dcb956afe8
2014-01-22 17:31:24 +01:00
Thomas Martitz
fbc69810c8 manual: Correct playlist subsection in the wps context menu section.
The "Save Current Playlist" isnt part of the playlist viewer settings. While
at this section also add a reference to the extra playlist chapter.

Change-Id: I68e494430dc00c6172859b0b8d9edbe5b0116741
2014-01-22 17:30:46 +01:00
Thomas Martitz
6cb11764e0 skin_engine/backdrops: Have to reload default backdrops from setting when it changed.
When skins use the default backdrop (via %X(-) or no %X at all) and the setting
changes it needs to be reloaded, otherwise when changing themes the new theme
could show the backdrop from the previous theme. The same needs to be
done when re-selecting the same theme after USB because the backdrop file was
potentially overwritten.

Fixes FS#12892 and FS#12942.

Change-Id: Ic2d20740cc385fa99667ce8a71507dbda2efceaf
2014-01-22 16:58:58 +01:00
Amaury Pouly
6022d3100a mkimxboot: tool can now recreate a stub to recover from very low battery
Several devices, including the Fuze+ have great trouble recovering from
very low battery states, even in the presence of USB power. This is partly
due to buggy Sigmatel boot stubs and Rockbox bootloader doing unsafe power
operations on boot (should be fixed soon).  In such a state, it is impossible
to boot either the OF and Rockbox, so only the recovery mode is available.
With this commit, mkimxboot can now create a very small stub which only
does one thing but does it well: setup charging to recover from any situation.
It does not provide a fancy charging screen or whatever, screen will just
stay black and the device will slowly charge at ~100mA. When the battery is
back to a normal level, just unplug and boot normally.

Change-Id: Ib50880af85ed1f4f64a7eed0f2221e73c889c351
2014-01-21 19:01:34 +01:00
Amaury Pouly
cddf388f76 mkzenboot: reflect ZEN V target id change
Change-Id: I0bad98b43e1a23c9432f4bdfe78dc77ead7879a8
2014-01-21 19:01:08 +01:00
Amaury Pouly
1b3ae498cd mkimxboot: fix strange MD5 sum about ZEN X-Fi3
This old sum didn't match the US or EU 1.00.25 version and the actual ones were
missing.

Change-Id: I942641e5f367ab45794cb93a8b26b87962172216
2014-01-21 18:52:28 +01:00
Amaury Pouly
11d73e177b imx233: be less strict about partition checks (>=1GB only)
Change-Id: I4bc073c500a65240e359ab50f001b4370d985781
2014-01-21 18:52:28 +01:00
Amaury Pouly
877eb7a112 imx233: handle quirk about OF partition address bug/feature
Change-Id: Ib8b854ce7132ac460672f9adf8611f580ca53746
2014-01-21 18:52:28 +01:00
Amaury Pouly
69d0dae55b Initial commit for the ZEN X-Fi Style
Change-Id: Ib25a357a7bafd2ef25f273cadff70fafbd8d4661
2014-01-21 18:52:28 +01:00
Marcin Bukat
b3abcb807b rombox: Do not copy .init section to ram on startup.
This is pointless to copy this code as it can be run in-place.

Change-Id: I73b4f4a3337a88434af457c3f1e40b8d55a5a79e
2014-01-20 10:42:02 +01:00
Marcin Bukat
cc64d9eb3b fix player rom build
Change-Id: I3acc5ff3b6868c7ebbfda99368e4eafc8e368668
2014-01-18 23:34:39 +01:00
Marcin Bukat
21d026d1d6 coldfire: fix rom build
Properly handle .init section in rom build and accomodate
the change in crt0.S introduced in b31c856

Change-Id: Icbf26a87162165da149232de264dc3671ca8ae96
2014-01-18 23:13:28 +01:00
Thomas Martitz
6879af9784 rockbox: Improve button repeat handling.
Change-Id: I1259c43019c51828b2af73f312aee9cf399d57cf
2014-01-18 23:06:55 +01:00
Marcin Bukat
1e7febe940 coldfire: fix bootloader builds
In b31c856 startup code section was renamed but boot.lds
linker scripts were not updated accordingly.

Change-Id: I9c9893ec2e199ac2555007a1d23e109ca0daea28
2014-01-18 22:21:00 +01:00
Frank Gevaerts
63cfbe096b There are 15 codepages to choose from, not 14.
2d9c0bab added a codepage but didn't increase the number of choices
for the setting, so UTF8 dropped off the list.

Change-Id: I154032bddaabcb783212370a12b2e5cdea305302
2014-01-18 20:39:13 +01:00
Thomas Martitz
c448d7e79c rockboy: Fix button read method.
The old method simply polled the lastbtn variable in button.c. This approach
does not clear the button event queue which overflows as a result (panic
in the simulator). Use proper APIs to fix that and adopt the
method from the old read_scroll_wheel() function, which reads buttons until
the button queue is empty, for all targets.

Change-Id: Ibf198f6e597e7f51ab4ebcfcae4ebebbe8d7845c
2014-01-18 19:47:55 +01:00
Marcin Bukat
b31c856b84 coldfire: Implement HAVE_INIT_ATTR magic
This reclaims ~6kB of ram.

Change-Id: Iafdc661b1cf4445669c08c79205043792b8d14c3
Reviewed-on: http://gerrit.rockbox.org/718
Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
2014-01-17 19:03:06 +01:00
Thomas Martitz
d55e5698e5 Some libc files are not needed on mingw anymore so don't compile them (unless HAVE_ROCKBOX_C_LIBRARY is set).
Change-Id: I0b9948d0dbc07aaa8a1e2da8b3857e96fc3f9b48
2014-01-17 11:22:20 +01:00
Thomas Martitz
9d26619465 Workarund GCC bug #52991 regarding packet attribute.
According to http://http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52991, since
mingw-gcc 4.7.1 -mms-bitfields is on by default, and this option breaks the
packet attribute since around 4.2.0.

We haven't set this option so I'm assuming we don't need it. Therefore a
workaround in configure can make things work again, because we rely on
the packet attribute in quite a few places.

Change-Id: I8367c16594cecfdde97c548e04607deaa92e21de
2014-01-17 11:14:47 +01:00
Thomas Martitz
33f5fdeadf rockblox: Fix compilation under recent mingw-w64-gcc.
Change-Id: I703d967e9288e5c74556b54ad4f72ef2f6247083
2014-01-17 11:14:00 +01:00
Purling Nayuki
335d708c99 Fix chinese-trad translation
Change-Id: Ifccb5c17d165d18e5076fb7ebc1af3cda3e2f778
Reviewed-on: http://gerrit.rockbox.org/726
Reviewed-by: Frank Gevaerts <frank@gevaerts.be>
2014-01-16 11:26:03 +01:00
Thomas Martitz
08d9b7fca5 Fix red. Screw those last-minute changes :\
Change-Id: I12666e98114e490a13023af7149fc37147d4e864
2014-01-16 10:31:15 +01:00
Thomas Martitz
06d3d4adb3 sansaclipzip: Correct simulator buttonmap for the different button layout.
Change-Id: I1b4cc257e8d85822177c377cc0fda14e8904fddb
2014-01-16 10:21:18 +01:00
Thomas Martitz
01b28ea725 font: Fix crash due to uninitialized field.
Change-Id: If2fafb15a9998eebb2936e819507758e003abe30
2014-01-16 10:21:18 +01:00
Marcin Bukat
7ab237b025 buflib: Add crc field protecting buflib cookie integrity
This should catch the case of buffer misuse which results
in corrupted cookie of next allocation. The check is performed
on move_block() so it may be a bit late.

There is buflib_check_valid() provided which checks the
integrity of all cookies for given context.
On DEBUG build with --sdl-thread this check is carried out
for core_ctx on every context switch to catch problems earlier.

Change-Id: I999d4576084592394e3dbd3bdf0f32935ff5f601
Reviewed-on: http://gerrit.rockbox.org/711
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
2014-01-16 10:17:39 +01:00
Marcin Bukat
7f5dce4116 ipods: fix DEBUG builds
iap-core.h defines LOGF_ENABLE unconditionally but hexstring()
helper function was not compiled if logf support was not
selected in configure. The regular builds worked by accident
because logf() lines where discarded by preprocessor.

Change-Id: Id76af478e7c760d81168ebf9bf3eb973a679987c
2014-01-16 08:19:27 +01:00
Thomas Martitz
47f648fd92 Fix Player warning.
Change-Id: I43989c92935710b36b68891a637db2e2cafb0401
2014-01-16 00:44:06 +01:00
Thomas Martitz
aa4c2a53f3 usb screen: Crop logo to the UI viewport dimensions.
If the UI viewport is too small only the most top/left parts of the logo will
be displayed. This goes one step further than bac85f2.

Change-Id: I832b0e787e57e3b102a9c097cf1cccd7d4ad92d9
2014-01-16 00:28:18 +01:00
Thomas Martitz
a6483344f6 usb screen: Push the usb screen onto the activity stack. This enables %cs tag support for it.
Change-Id: Icecb72007aa3aba501c702e1aa65c801fcbc3857
2014-01-16 00:26:45 +01:00
Thomas Martitz
98591a2815 menus: Stop scrolling before entering the USB screen or remnants of the previous list could appear on it.
Change-Id: I2753c239ef787e0a6af64c3d9c5bdeb26326a9d0
2014-01-16 00:25:40 +01:00
Thomas Martitz
a969e1f456 usb: Do not disable themes in the USB screen.
Fonts can now be assumed (by the code) to be available during USB. Make
use of this fact in the USB screen and don't disable the skins.

Change-Id: I525359aae16660604e8fe89addc0bdf97a3fafc1
2014-01-15 23:37:39 +01:00
Thomas Martitz
c23ce62829 fonts: Do not unload completely on USB.
The font engine can now perform cache lookups even if the font file is
closed, if the font was disabled with the new font_disable_all() function.
It is highly probable that the lookup succeeds but in the cache-miss case
a blank, full-width glyph will be returned.

Change-Id: I3c97e747d2a0ba30c7b495c6118c9f029d265b56
2014-01-15 23:37:39 +01:00
Thomas Martitz
84c7d6133b tagtree: Use strnatcasecmp() for the database browser too.
Even though you can insert leading zeros that makes ascii sort work for
numbers, sometimes the leading zeros don't suffice. In order to always
sort numerically strnatcasecmp() is needed.

With the default tagnavi.config this affects albums with discnum > 9
or tracnums > 99. This FS#12888.

Change-Id: Ie265c86eaf6dd07b6beda9e5eef25eb81eef8fd4
2014-01-15 23:18:35 +01:00