VOICE_INVALID_VOICE_FILE and VOICE_LANG_NAME need to be discretely
saved as "InvalidVoice_<langname>.talk" and "<langname>.lng.talk"
under the target .rockbox/langs directory
This mirrors what the standalone voice.pl and buildzip.pl do.
Change-Id: I70fda4ffe85b5bccc164ebcbb484eedf034f143b
original xrick code by 'BigOrno' at:
http://www.bigorno.net/xrick/
Rockbox port, plus bugfixes at:
https://github.com/pierluigi-vicinanza/xrick
Further changes:
* Additonal fixes from g#3026
* Port to modern plugin API
* Add Pluginlib keymap fallback
* Support all >1bpp screens
* Fix build warnings in miniz
* Better error message when resources are missing
Change-Id: Id83928bc2539901b0221692f65cbca41389c58e7
The rationale behind this was ability to filter usb device by
bus numer and device address. This allows to connect with selected
device in case there is more then one connected device implementing
hwstub interface. For now only USB backend makes use of this
but the foundation is generic and can be easily extended to other
backends.
Change-Id: I618cfdeeb09162d5fa1002db00e40ea17c43e727
1) Make use of $gp addressing. This saves some bin size and makes
code slightly faster.
2) Substitute jr with simple j instruction in exception handling.
Code is small and j can easily encode target address.
3) Remove nop after eret in interrupt handler. According to mips32r2
ISA manual eret does not have branch delay slot.
Change-Id: If63feb12eef189f08f7b50c832a8091be5e6f570
Exception handling code assumes at least word alignment of the
context buffer. So far we were lucky that compiler placed it
correctly but after compiler upgrade I was hit by the bug
caused by missalignment of the context buffer.
Credit goes to pamaury
Added fw modifications required to unpack real world player dumps.
Documented more fwu header fields, magic numbers and finite field arithmetics (extended Euclidean for inverse, long division for reducing modulo field_poly).
v3 encryption used is standard RC4 with the key additionally ciphered by the Elliptic Curve Integrated Encryption Scheme.
Either sect233k1 (NIST K-233) or sect163r2 (NIST B-163) curves can be used, with the former overwhelmingly prevailing, being hardwired in SDK's maker.exe. Using a private/public key scheme is superfluous because both are stored in the firmware, with the added level of complexity likely serving the purpose of obfuscation. The private key is generated at random with each invokation.
None of KDF or MAC from ECIES are used, RC4 key is directly xored with the shared secret. The random number r used to calculate rG isn't stored, but that's unimportant since only krG == rkG is actually used in the encryption.
Change-Id: Ieacf8cc744bc90c7c5582dd724b2c10a41bfc191
GNU grep 3.8 warns about "\#" when compiling. The "#" has to be
escaped for Makefiles and shell, but it isn't special to grep so
grep thinks it's an invalid escape sequence.
Change-Id: Ieb2607d42b7daa1939ca0101b915ec0c7afd4298
QuaZIP is included in several major Linux distributions and packaging
policies strongly oppose bundling of libraries.
Change-Id: I8d454784dc4b244f4dd8aa18deb3350a29aaab77
Don't change the abort button to Ok after a successful bootloader
install, this will be done by the following steps.
Change-Id: I4275de1f44bddf0580b10b36240a36a43daa68d0
No need to show a separate entry when a cached file has been used, do it
the same way as bootloader downloads do.
Change-Id: I42a21a37474a778975e82af0102e0152677a0343
Loading the information can take a bit depending on the speed of the
disk. To make the application not appear as frozen update the UI more
often, and display a "Loading" text during data retrieval.
Change-Id: I012487d031ea71e62b583ca1c40220ea709e7034
Don't store the "Install Themes" option. Automatically enable themes
installation if the themes selection has at least one entry selected
instead.
Change-Id: Ib46e8b53b0204555b79dea51545dd7c380f003ff
Avoid constructing the bootloader file path in the caller. Pass filename
list and mountpoint separately so it can directly fall back to the
mountpoint.
Change some functions to use references instead of creating temporary
objects.
Change-Id: I09c9d755553a32de3d02a42a8ce1fcb94f831b2a
Reworking handling of player specific data (static player configuration,
as well as information retrieved from the server) changed the behaviour
on a non-present configuration entry. This eventually caused the
mountpoint not being set for players that don't have a bootloader file
on disk. Fixing this accidentially removed the default-if-not-found
handling for the bootloader file.
Restore the old default value behaviour for both cases.
Change-Id: I627782ccdef198619fb507f8b09a64811b3bd18f
- When uninstalling update the log file only at the end of removing all
files. This gives a major speed improveness since othewise the log
file is written after each file. This slows down things notably,
especially on slow disks.
- Explicitly update the UI during install zip extraction. Avoids
progress seemingly hanging due to the UI not getting updated often
enough.
Change-Id: Ib353a92e02a7038d6e55f5f88dcfb5085602c0f2
When uninstalling parts with lots of small files the process can take
quite some time. Update the progress accordingly.
Change-Id: Iecc4553b36abbc1cf9652a325ccb29b62a7fc4cc
We only use it for playing the TTS sample so it's not too important.
Since this is a separate Qt module it might not be installed, so make it
optional.
Change-Id: I2c91dd5d587c8a984525b2297bbe7d597b816b4f
During bootloader installation sansapatcher disk access is accidentially
set up twice. This is not a problem except on Windows, which will abort
with a "permission denied" error.
This is basically the same problem as for ipodpatcher bootloader install.
Change-Id: I03220e17d0e00a15fff23c02aba7da93d4781964
During bootloader installation ipodpatcher disk access is accidentially
set up twice. This is not a problem except on Windows, which will abort
with a "permission denied" error.
Change-Id: I9a835ef0d49f24df741b7b2909c4bd87cb1c8341
It seems Qt6 doesn't require explicit linking to QSvgIconPlugin anymore,
and cmake has trouble finding it. On native Windows builds it isn't
required, so remove it.
Change-Id: I87651f51ab212511947ab9fca3297b0dff276577
Qt6 has QMultimedia, but QSound has been removed. It's only use for
playing a TTS test sample. Disable that for now.
Change-Id: Id3b5c834f9579a43e390c0c00a4c1a35b59182bd
- Fix regexp case insensitive option being inverted.
- Pass more objects by reference.
- Some const-ness.
Change-Id: I1c77ad22ab1e505c8dce8c083d9c52e76a6860be