Commit graph

34481 commits

Author SHA1 Message Date
Franklin Wei
2eb7ce475a Refactor 73b02a4.
Moves basename to a separate function, and documents some of the pointer
arithmetic it's doing.

Change-Id: I6f65ad99f163c2b223929f2ce7805b8935df71c0
2020-07-26 15:41:32 -04:00
Moshe Piekarski
73b02a4a2c Make md5sum more verbose
Solves FS#9539

Change-Id: I5278fa0fbb8347314ef6fb41e707b3832f1dd8cd
2020-07-26 15:15:38 -04:00
Moshe Piekarski
18ffb9275c Add standard cancel to lang
Change-Id: I994499833176afdc15f8de48b625e48665d77fb5
2020-07-26 15:14:42 -04:00
Dominik Riebeling
b820c648c8 rbutil: Always use Qt Multimedia to play TTS preview.
We're using it on Windows and macOS, there's no reason to not do so on
Linux.

Change-Id: I6e4d9006eff22fd4bf6b882407a5497b2f8cdd2f
2020-07-26 15:12:17 +02:00
Dominik Riebeling
5640d0d3c7 rbutil: Call QLocale::setDefault() with QLocale.
QLocale::setDefault() shouldn't be called with a QString but a QLocale
instead. Calling it with a string doesn't work with Qt6 anymore.

Change-Id: I08826095cda8563e4ae9b83d08144da2d0d7f3c7
2020-07-26 11:10:26 +02:00
Dominik Riebeling
1e39619034 rbutil: Merge Troubleshoot submenu with Help menu.
Since people seem to have problems finding the troubleshoot items in a
submenu move them one level up. The submenu isn't too useful anyway.

Change-Id: Ic047f3913a8a13b038580d497260de55fe2e1298
2020-07-26 09:56:20 +02:00
Dominik Riebeling
46d06f71dc rbutil: Remove unnecessary (and implicit) type conversion. 2020-07-26 09:56:20 +02:00
Dominik Riebeling
1ed283de9c rbutil: Update translation stats script.
- Update to Python3.
- Change Qt tools to Qt5.
- Cleanup.

Change-Id: Icc9d9335518e8fba4a0c7a619527c8cdc087d59f
2020-07-26 09:56:20 +02:00
Dominik Riebeling
a9c7bc7c9a deploy: Simplify retrieving CPU count.
The multiprocessing module is part of Python since 2.6, so no need to do
an extra check here.

Change-Id: If1c223edf9f04b6de8fdf757ba00f79897783a53
2020-07-26 09:56:20 +02:00
Solomon Peachy
ee4e6d2fba Strip out archos from common strings
Change-Id: I078d5a6887fd14650fe89d7b4d8850166ae19efc
2020-07-26 00:25:55 -04:00
Solomon Peachy
683323bebf lang: Get rid of more strings not used any more
Change-Id: If139849d906d9450decc400b809dd3bd3b6ffb30
2020-07-25 08:43:42 -04:00
Solomon Peachy
f520370b6a FS#13218: Updated Polish translation (Adam Rak)
Change-Id: I48f46f4b70857d9617391523908e78070efa88ac
2020-07-25 08:15:39 -04:00
Solomon Peachy
a84176122c Fix two variable-set-but-not-used warnings
(found using -Os with gcc494 on the nano2g)

Change-Id: If0deee3e3cde50e6bf5aff595bebc0f134dcc393
2020-07-24 23:26:15 -04:00
Solomon Peachy
469866b6c9 mpegplayer: Fix aliasing rules violation on multi-core targets
As the PP series has no sense of cache coherency between its multiple
cores, we need to ensure the vo_data structure does not share cachelines
with anything else.

This was previously done by defining a uint8_t array and trying to
access it via typecasting hell, triggering a large pile of aliasing
violation warnings on newer toolchains and/or higher optimization
levels.

Instead of violating the C spec in an undefined-behaviour-sort-of-way,
create a union of the right size and alignment, and make one of its members
the structure we care about.  Voila, everyone is happy.

Change-Id: Iad78f8132225437cd4aa10e6e5f6ae58ba996c19
2020-07-25 02:57:35 +00:00
Solomon Peachy
677848cf80 More fixes for English(US)
(The translate website screwed up a bit)

Change-Id: I293c939b858121f6d82dde037bb5ff1cbcff5d6c
2020-07-25 01:20:35 +00:00
Solomon Peachy
02b970fa79 Update French translation (Stéphane Moutard-Martin)
Change-Id: Ibe247553965024a000749386a95e73dcc18c493e
2020-07-24 21:15:58 -04:00
Solomon Peachy
479351013e Update English(US) translation
Change-Id: Ifb078fa52368b4fb2bff2f00b28ae462a098a881
2020-07-25 00:43:36 +00:00
William Wilgus
7824b1dcb5 Plugin Api update with added functions
Change-Id: I3c48c999da240f68f4960d2e137c613b224beb5c
2020-07-24 20:07:45 -04:00
Solomon Peachy
e49c1af570 plugins: HAVE_BACKLIGHT in the test plugins
Change-Id: I97d17805ac7d37f10da6a29684102db97448e653
2020-07-24 19:42:32 -04:00
Solomon Peachy
9be5bc4cf0 plugins: More HAVE_BACKLIGHT cleanup
Change-Id: I70cf700f5bc3d4375c025efa62ef40fd2bd70293
2020-07-24 19:20:15 -04:00
Solomon Peachy
2127906384 peakmeter: Fix warning on some hosted targets
Change-Id: Ieae0b08a2f747955ad3e392fbff90884dc4265ef
2020-07-24 18:29:04 -04:00
Solomon Peachy
a3398a2143 plugins: Fix the builds for targets lacking HAVE_BACKLIGHT
Change-Id: Ifdb1501834b7ea63ca6f731bbd6414305d7e0001
2020-07-24 18:17:19 -04:00
Solomon Peachy
5dbb757670 peakmeter: Fix simulator build breakage introduced in 8cb55546
Change-Id: I86c327cf7053e71df7550b6d0673262035f95978
2020-07-24 17:50:31 -04:00
Solomon Peachy
503bb791b0 plugins: Remove six API functions with no users
statusbars, gui_syncstatusbar_draw(), and set_time()
  mp3_play_data(), mp3_play_pause(), mp3_play_stop()

  [mp3_is_playing() is still used by imageviewer]

(followup to the sh/archos exorcism..)

Change-Id: I06a1d981ffc86b8073fcfa2380a393a07347ab3b
2020-07-24 21:26:15 +00:00
Solomon Peachy
658026e626 [4/4] Remove HAVE_LCD_BITMAP, as it's now the only choice.
Note:  I left behind lcd_bitmap in features.txt, because removing it
would require considerable work in the manual and the translations.

Change-Id: Ia8ca7761f610d9332a0d22a7d189775fb15ec88a
2020-07-24 21:20:13 +00:00
Solomon Peachy
8cb555460f [3/4] Completely remove HWCODEC support
'swcodec' is now always set (and recording_swcodec for recording-capable
units) in feature.txt so the manual and language strings don't need to
all be fixed up.

Change-Id: Ib2c9d5d157af8d33653e2d4b4a12881b9aa6ddb0
2020-07-24 21:20:13 +00:00
Solomon Peachy
0c4f89370d [2/4] get rid of HAVE_LCD_CHARCELLS
HAVE_LCD_BITMAP is now redundant.

lcd_bitmap is always-on in features.txt so manual and lang strings
don't have to change

Change-Id: I08eeb20de48099ffc2dc23782711af368c2ec794
2020-07-24 21:20:13 +00:00
Solomon Peachy
092c340a20 [1/4] Remove SH support and all archos targets
This removes all code specific to SH targets

Change-Id: I7980523785d2596e65c06430f4638eec74a06061
2020-07-24 21:20:13 +00:00
Solomon Peachy
17f7cc92c2 Slovak language update (From Peter Lecký)
Change-Id: Icf80eb628cdc0a4ab6644c05104c0893b45d217f
2020-07-24 14:24:55 -04:00
Solomon Peachy
09f40e266b talk: Force-shutdown the voice system before loading a new voice
Otherwise we might actually be talking when we try to switch, or
otherwise trash the state of the running talk thread, leading to
memory corruption or an outright crash

(This fixes a panic observed on the xDuoo X3)

Change-Id: I78e4232085c5c160c9ee4f18167dad8dad2b9287
2020-07-24 03:31:11 +00:00
Solomon Peachy
0c4ae417d5 bootloader: Consolidate xDuoo X3ii/X20 and AGPTek Rocker bootloaders
Bonus changes:

 * boot mode selection stored on SD card

Change-Id: I225a06d149ae71c1882f632c30d0fe4ab5308a74
2020-07-22 17:43:25 +00:00
William Wilgus
cb94b3ae2e keyboard add ability to specify temporary custom layouts
rb core allows you to load custom keyboard layouts

this patch adds the ability to load a keyboard layout in a buffer
the custom layout is temporary and does not overwrite the current layout

use like so:

    unsigned short kbd[64];
    unsigned short *kbd_p = kbd;
    if (!kbd_create_layout("ABCD1234\n", kbd, sizeof(kbd)))
        kbd_p = NULL;

    rb->kbd_input(buf,sizeof(buf), kbd_p);

Change-Id: I7be2bd4a1b4797a147fa70228a9749dc56ac052a
2020-07-22 06:48:28 -04:00
Solomon Peachy
a5df94beb5 build: Tweaks to better support non-English as primary language
* get rid of $(LANGUAGE) in top-level makefile (and configure script)
 * un-hardcode English-as-primary-language in a couple more places
 * allow DEFAULT_VOICE_LANG to be overriden

To actually change the primary from English, one must change:

 * $english in voice.pl
 * hardcoded 'english' in rbutil
 * $ENGLISH in apps/lang/lang.make
 * DEFAULT_VOICE_LANG in apps/talk.c
 * configure script (default prompt)

Of course, if one wants to change the default UI language, it's simpler
to change the default language setting variable at compile time, or
perhaps by adding a configuration file with the desired value into the
.rockbox directory when the .zip is assembled.

Change-Id: If5cf76019d416e838628a2eccd4ec7d6cbaeeb74
2020-07-21 17:22:45 +00:00
Solomon Peachy
688c89cfe1 genlang: More voice-related fixes.
* Use consistent ID numbering
 * Use consistent logic for voicelist and voicebin files
 * Fix situations where English <-> English would fail in strange ways
 * Delete leftover tmpfile.
 * Off-by-one error in voice validation code
 * Off-by-one error in voicelist generation

Change-Id: Ib3cea2c6612138b1cbe614dacbe51000199cc9ad
2020-07-21 11:59:47 +00:00
Solomon Peachy
25f9601d7b Fix the sea of red introduced in bf546fb
Change-Id: Ic158771d8dae6b587e0f567e7a6bb005b5e2ac50
2020-07-20 22:39:01 -04:00
Solomon Peachy
bf546fbfcb Run-time validation of INT settings.
Check against min/max/step parameters

Many places this value is used as an index into an array; this will
help prevent array overflows and undefined/undesireable behavior.

Some fields accept arbitary values, continue to accept those.

Change-Id: Idbb5a17b7ceae5500660987703e2d6c16e920c92
2020-07-21 02:20:26 +00:00
Solomon Peachy
5c30d57ad1 rbutil: Fix the X3ii's USB VID/PID
Change-Id: I009b19b922874b9cce04da3d2cdd7bd142510dc2
2020-07-20 19:30:57 +00:00
Solomon Peachy
f6060d62d9 rbutil: Add support for the xDuoo X3, X3ii, X20, and AGPTek Rocker.
* All include full bootloader installation!
 * X20 lack USB VID/PIDs so cannot be autodetected.
 * Benjie T6 (variant/OEM of the Rocker) USB VID/PID unknown.

Change-Id: Ia823de072c83506d36410ec436be15a0caf97151
2020-07-20 18:40:24 +00:00
Dominik Riebeling
561937f2f4 bspatch: Fix compiling on macOS.
u_char is a nonstandard type. On macOS this requires to explicitly
include sys/types.h.

Change-Id: I929ceafc12c7cbdcc96e85cdd05cce27d8aa6795
2020-07-20 20:38:32 +02:00
William Wilgus
2b1de3d336 menu.c fix redraw bug
fix redraw bug added with c39f95465

Change-Id: I9ce232d4b760f20edb6f8274e090d2fd67c8bd78
2020-07-20 00:40:03 -04:00
Solomon Peachy
c84f9252d7 Fix the yellow in the player build from c39f95465
Change-Id: Iae3a8f4eccd3708b41d43da6e12a3199b1d657c6
2020-07-19 23:37:43 +00:00
Solomon Peachy
6bb704c9d0 Fix more of the red from c39f95465
Change-Id: I8c9510774803f7164f7a003575711f3dd980223c
2020-07-19 22:55:09 +00:00
Solomon Peachy
11274e3d26 menus: Fix some of the red from c39f95465
Change-Id: Ic22123a83bf119605c8ddf686b6a8e21f9555c6a
2020-07-19 22:32:36 +00:00
William Wilgus
c39f95465b do_menu pass internal synclist reference to callback
keep running into the rigid nature of do_menu
it isn't too bad when you don't need voice but once
you do the fun awaits

do_menu likes to talk on menu enter which is in a loop when you use do_menu
I would like to move the processing to the callback
TOO BAD you only get an action and the menu_item_ex struct
you sent it when calling the function

Change-Id: Iaefd0cc133435d675b7dd27a558c504d6ccb327a
2020-07-19 22:10:26 +00:00
Solomon Peachy
4663d94b4e gitignore: We don't care about files ending in '~'
Change-Id: I0ed8ae6caaba0b2f04f55b08cb54abc358e9ce0d
2020-07-19 21:39:26 +00:00
Solomon Peachy
6fa80604e3 rbutil: Add in missing voicefile languages
Change-Id: I6b38bc7ba1c9dc6f399297142d007fcd7736eb36
2020-07-19 21:39:08 +00:00
Solomon Peachy
fc4af2062b rbutil: Support 'espeak-ng' and 'mimic' TTS engines
Change-Id: Ibf6e46254f42b28800351fdb303539b2ec13d422
2020-07-19 19:32:43 +00:00
Solomon Peachy
1748b475a9 voice: Allow use of an existing (textual) voiceids file
If it's present, we don't need to generate one, which means we don't
need to know the target name and features list.

The next step is to accept the binary variant that rbutil uses
so we can generate a complete voice file on the cmdline.

Change-Id: I1a355f985e6af46b11610de781996000110ae9de
2020-07-19 01:34:42 -04:00
Solomon Peachy
2b9c85a41b storage: Clean up storage_xxxx macros when STORAGE_MULTI is not set
Change-Id: I1652eac1743f4b8b84da08ea5a6d04ac7e17e21d
2020-07-16 23:23:25 -04:00
Solomon Peachy
805f531632 statusbar: explicitly #include <button.h>
This header relies on stuff that might get defined in button.h, and
was reliant upon being implicitly included.

The last thing we want is a struct to change layout underneath us!

Change-Id: If96451bc5e2219031a592ab82c56045188dbe645
2020-07-16 22:02:29 -04:00