Commit graph

2253 commits

Author SHA1 Message Date
Solomon Peachy
27b44bca73 configure: Get rid of the unused NOISEFLOOR option in voicefile generation
Change-Id: Id3b281e62487858120aae97cd5ee0ef888cf89a0
2021-04-20 08:50:06 -04:00
Aidan MacDonald
9847f9c85e x1000: don't add pointless '1' after SPL signature
I added this because it is present on the FiiO M3K's SPL, but nothing
in Ingenic docs suggest this means anything.

Just get rid of it; the M3K boots fine without it.

Change-Id: I2e480b8c0ada386b0e772db49c0a7ebd32ffc7ea
2021-04-09 10:53:36 +00:00
Solomon Peachy
d2f694696f configure: Enable easy use of AddressSanitizer with sim builds
Change-Id: I6df7e63b1820296a280faa0925ad4781637b879b
2021-04-07 21:48:58 -04:00
Solomon Peachy
9e15c19891 build: Make it easier to disable plugins
Instead of 'ifdef ENABLEPLUGINS' (which always gets set) use
'ifeq(yes,$(ENABLEPLUGINS))' which means any value other than 'yes' is
treated as a negative.

Change-Id: I6c92eef5565328f1bb9f64a4d379dec697354224
2021-04-01 15:45:38 -04:00
Solomon Peachy
afd8361d08 Add native FiiO M3K to builds.pm
Note:  It's marked as 'unusable' right now, so it won't show up
       on build.rockbox.org, nor will daily & voice files be
       created.

Change-Id: I5ea133477a6b4c0296c46757d0375994ad812cc5
2021-03-28 10:46:43 -04:00
Aidan MacDonald
3ec66893e3 New port: FiiO M3K on bare metal
Change-Id: I7517e7d5459e129dcfc9465c6fbd708619888fbe
2021-03-28 00:01:37 +00:00
Solomon Peachy
d5cc74ebd8 build: Get rid of suplerflous '-Os' references in linker calls
We should be using global optimization flags, and -Os is already our
default.

Change-Id: Iaba511b2b4fa2ee0f1eb1ad28024be954f4c5f03
2021-03-25 12:20:15 -04:00
Solomon Peachy
a53864ed4a build: Don't overwrite autoconf.h unless it has actually changed
This way we only rebuild the world if something relevant changed.

Change-Id: Ia7d104cadec185a3227acbf330bb3b359296f0fb
2021-03-24 18:50:58 +00:00
Solomon Peachy
bac897381c updatelang: Handle/flag the bad data that led to english-us breaking
Change-Id: Ifffea9557d50ab5a103e13473ebe074ae1aa7b6d
2021-03-05 17:43:32 +00:00
Aidan MacDonald
aacb0811d9 Rename symbols of FiiO M3K Linux-based port
Mainly a straight replacement of FIIO_M3K -> FIIO_M3K_LINUX.

Change-Id: Id07c84f8150991d1b6851540c2c3f8f67e3f12c2
2021-02-27 23:53:28 +00:00
Solomon Peachy
55dc86f5db Specify correct dependencies for tools/descramble
Fixes the red introduced in 6224efb2

Change-Id: I21e61fdb8e1b87486417faf34bfa6963e5ab2349
2021-02-27 18:39:04 -05:00
Solomon Peachy
dad23a0607 database: Database tool was excluding all SWCODECs!
When fixing this, I used this this opportunity to clean up the Makefile

Change-Id: I5dea77a8a2048bbfce5930f8ce2899b597e425eb
2021-02-27 18:29:02 -05:00
Aidan MacDonald
6224efb238 Fix build system not respecting TOOLSET
It seems that 'toolset=' in tools/configure was set but not used, with
the build system only generating a hardcoded set of tools. This change
fixes the issue by exporting the required tools in the TOOLSET variable,
and having root.make append those to the TOOLS list.

Change-Id: I07024bdf1dd2260c32cfeecaba0d3bb5bf00346d
2021-02-27 22:51:52 +00:00
Christian Soffke
05f1006246 Convttf makefile: Replace freetype-config with pkg-config
Freetype-config has been deprecated and is no longer included in libfreetype-dev. Pkg-config serves as its replacement.

Convttf isn't built as part of Rockbox by default, but manually doing so will currently fail even when libfreetype-dev is installed.

Change-Id: Iafc31df3b40c11d7c790189eb9d3788ba97d3e54
2021-02-21 05:23:39 +01:00
Wolfram Sang
422aa56243 rockboxdev: fix issues with relative paths for commandline options
I wanted to build into a 'toolchain' directory like this:

$ tools/rockboxdev.sh --dlwhere=toolchain --builddir=toolchain/build --prefix=toolchain/bin

This failed twice:

a) the extraction stage could not uncompress because of the relative
paths, so convert them to absolute paths in the script to fix the issue.

b) patches could not be applied because 'rockboxdevdir' was assigned a
string with the directory twice and '\n' in the middle. Using readlink,
this now works.

Change-Id: I9c7c30812e1fb4b58db7e6561d73678f34714c91
2021-02-05 17:29:05 +00:00
Wolfram Sang
a67c6934c1 rockboxdev: better error message for unknown compression
I hit this error and its message confused me because I interpreted it as
"bzip2 executable could not be found". The message was also outdated
because xz is supported meanwhile. Update the message to something
hopefully more helpful.

Change-Id: Ide2f8809dc0f8159d7d04fa22c29607dd6b35792
2021-02-05 17:29:05 +00:00
Wolfram Sang
e23d45536e rockboxdev: fix summary output of options
'--download' is now named '--dlwhere' and 'target' was missing the '='

Change-Id: I5f295fac8ddfb9139b00e9b6b7b5dfa625ac05cf
2021-02-05 17:29:05 +00:00
Solomon Peachy
fe10830384 hiby_patcher: Tweak the fix needed to work around v1.31 AGPtek Rockers.
Change-Id: I6b8d175e0f6018281aedfa774488daecea1bc816
2021-01-21 08:39:48 -05:00
Solomon Peachy
56f4ec9668 voices: Enable Russian in the nightly voice builds.
It's using espeak-ng's default 'zle/ru' voice, which have to do until
someone suggests better settings or engine.

Change-Id: I7b105c6a5d9f73131c6e649e81635138f350f48e
2020-12-13 20:46:49 -05:00
Solomon Peachy
b459ded533 updatelang: Fix a couple of typos in the output used by the translate site
Change-Id: I13fe3e106c128dbc646906b5cb2c9702feb6bda2
2020-12-12 22:26:35 -05:00
Solomon Peachy
55d301184d Get rid of a _long_ obsolete tool.
Change-Id: I09474927a13c6ff51b667c80ac99af1d1a65fa07
2020-12-12 22:10:39 -05:00
Solomon Peachy
f7005eb4e4 voice: Generate Dutch voice file now that the translation is complete
Change-Id: Ic5fd45002e94f99d4557fca9ffa75df7fa6f20d8
2020-12-12 13:43:13 -05:00
Solomon Peachy
60139cf9f1 FS#9273: Add a bunch of voice corrections for Japanese.
Heavily modified from the original patches.

Change-Id: Ifb8e476e565c3049414aa3dd82818cae5000e788
2020-12-11 15:39:47 -05:00
Solomon Peachy
e4b514917e lang: The "InvalidVoice" language file wasn't being included properly
It ended up inside the 'langs/voicestrings.zip' with an absolute path
when it should of landed in langs/ directly.

Change-Id: I308b551e627d63142ec8871ccfb72b6036eff3d2
2020-12-11 15:35:12 -05:00
Solomon Peachy
10f05b3b27 build-info: Replace %MODEL% with %TARGET%
Change-Id: I93bcaae9f8f053bec783500418561faa84c60afe
2020-11-29 09:54:47 -05:00
Solomon Peachy
64fe7e03a8 build-info: Additions for new rbutil.
Change-Id: If61c7a013af78e064a0f5f5ab1046ef07af44730
2020-11-22 12:41:53 -05:00
Solomon Peachy
25529e4fe0 lang: More automated rejiggering, USB_MODE_* is no longer ibasso-specific
Change-Id: I8e7eb3bb3c5ed61572c0ade4059c3e3527558932
2020-11-22 14:45:16 +00:00
Solomon Peachy
497618e51e Add libraries to native MIPS toolchain to enable bluetooth support
libffi, zlib, glib, expat, and dbus

Change-Id: I9453b3cabe91fd3dc992e065729d61d7e005091e
2020-11-19 12:33:01 -05:00
Solomon Peachy
b7b0c7c648 languages: convert recording_swcodec -> recording
Change-Id: I481a53284d63457717f4a6524edc5b477f29a20a
2020-11-19 09:52:37 -05:00
Solomon Peachy
7c87467ba4 configure: Add prompt for USB Serial into the advanced mode
And explicitly disable USB_ENABLE_SERIAL when HAVE_USBSTACK is not define

Change-Id: Ieb4176b02a60eb1b9db81f0b8c69403898a76ca1
2020-11-18 08:50:05 -05:00
Solomon Peachy
7ff3c94e13 lang: Make all swcodec &| lcd_bitmap strings default.
Change-Id: Id0a3282884c3e258c5b2f24b35aa7e618a8e8bbe
2020-11-17 11:06:09 -05:00
James Buren
4fd1e4364b fwpatcher: fix compile errors and warnings on modern Linux
Change-Id: I87b71654ce8669904cfb587cb0673a46455bcbd1
2020-11-16 21:05:52 +00:00
James Buren
84086af957 update fwpatcher and rbutil checksums for iriver h1x0/h300 V8 bootloader
Change-Id: Icf6bc96889fbe682832a99882c5d66c832ffb2f7
2020-11-16 20:51:11 +00:00
James Buren
adee6a11bf rockbox: fix iriver firmware validation for larger bootloaders
It turns out the code for the firmware size validation was incorrectly
using the total length of the firmware file to check if it was too big
for the flash rom which caused it to incorrectly flag larger bootloaders
as too big even though they would still fit.

As it happens this situation can only really arise after mkboot has been
run on the decoded firmware image. Because mkboot writes the actual binary
size to the ESTFBINR header we will be using that to check if the firmware
image is too large for the flash rom.

Now because this information is embedded in the decrypted / encrypted
region we have to collect it as the region is processed so the validation
is also moved to after the data processing loop.

Change-Id: I8bfead73812fe4e59f08fbbe8956790604dcb4e2
2020-11-16 19:44:52 +00:00
James Buren
64ea644269 mkboot: fix the buffer size used for constructing the final firmware image
It was short by a fair number of bytes which could be reached when
attempting to insert bootloaders near the maximum size of 64k. This
ensures even the largest acceptable bootloader will not overflow the
buffer.

Change-Id: I8fbc92d4e3452192bf47104d7a32b49248eefc0e
2020-11-16 18:23:30 +00:00
James Buren
5252523937 fwpatcher: fix a few issues with the mksums.pl script
First, the way it was invoking mkboot was no longer correct so it
was not producing files used in the later commands.

Second, support for the H300 1.31k firmware was added sometime ago
but not to this script.

Change-Id: I0e9c74a3b9f83ade8d01df0bebfe06f4d3b92ce4
2020-11-16 14:05:17 +00:00
Solomon Peachy
fc4fff0b81 builds: Enable German voicefile generation in the nightly builds
Change-Id: I4881b30757027bbaa64d3f9b07146ceb478f3dbb
2020-11-13 21:40:58 +00:00
Solomon Peachy
090bd9592d Remove the firmware decompressor and a few more other SH-stragglers.
Change-Id: Ic568755afcccc6db1b6e791b1ed0d2588b90356f
2020-11-03 23:43:32 +00:00
Solomon Peachy
41a6da6043 builds: Enable -fno-delete-null-pointer-checks globally
* arm failures in lua, wolf3d, quake, flac
 * m68k failures in lua, wmapro
 * mips ???

I still think that most of these are actually due to latent bugs or
ambiguous code.

Change-Id: I4c9751d2b5c7a66253b313bfbc75fcd721b118d6
2020-10-28 04:10:29 +00:00
Solomon Peachy
804a49886a statusbar: Make statusbar height equal SYSFONT_HEIGHT
And size elements horizaontally based on SYSFONT_WIDTH

Unfortunately we need 16px icons to make 16px statusbar look right
but at least it _works_ properly now.

Also: all targets currently use 8-px SYSFONT, except some hosted bootloaders

Change-Id: I0cdf97e6ef47ec49693ef79667b200595b4fe075
2020-10-26 19:52:40 +00:00
William Wilgus
299c237075 'Fix RED e200 Framebuffer_viewport_rewrite
Free malloc in checkwps too

Change-Id: I2b8fcbc94beb0644b643d3b7a9cb53bc26fc8a51
2020-10-26 15:50:42 -04:00
William Wilgus
04e7bacc4c FIX RED Framebuffer_viewport_rewrite
Change-Id: I716929fbee48bef68d7383efb944f9d491fdfe4d
2020-10-26 15:25:07 -04:00
James Buren
c5d7cd5f9f h300: add support for ROM image generation
Change-Id: I6e0985de370609bae98ba6eab487bf43eb4191b6
2020-10-26 01:37:42 +00:00
Dominik Riebeling
1801dcc999 rbutil: Fix native Windows build for tools.
- When make on Windows finds sh.exe it will try to use that. We use
  cmd.exe calls when detecting Windows, so make sure we use cmd.exe as
  shell.
- Add missing Windows compatibility to tomcrypt Makefile.

Change-Id: Iaef133ca27472a5ddf449174d540983f15c66aea
2020-10-21 21:33:39 +02:00
Dominik Riebeling
a05d061aa3 rbutil: Pass isysroot to rbutil libs on macOS.
On macOS we pass the full path to the compiler. On recent versions this
causes the compiler to not find its SDK path, this needs to get passed
via the isysroot option.

Change-Id: Iea2820e1755cc80e12691119dfa31d70938ea511
2020-10-18 19:16:27 +02:00
Dominik Riebeling
7603533f7f tools: Modernize rbspeex Makefile.
- Replace echo with make internal info function.
- Make dependency generation implicit to avoid another compiler call.
- Align object handling with libtools.make.

Change-Id: Iaaddd17af04039dcd8948399bc99d21def05181d
2020-10-18 19:07:08 +02:00
Solomon Peachy
edbdefa09a hosted: Drop a bootloader version string in /etc, and report it in debug menu
Change-Id: I4d72d7800dbff56619898b6bc9d0f81a6c561598
2020-10-17 21:40:40 -04:00
Solomon Peachy
b1e21bbd7a hosted: Consolidate common config of hiby-based units into a common header
* Enabled MULTIDRIVE and ROOTFS_HOTPLUG for full hotswap!
   (Requires updated bootloader/integration!)

Change-Id: I7dad1f8d375e087c36fce37bec3e9184602ede50
2020-10-17 20:45:41 -04:00
Solomon Peachy
7d3e39cfd8 hiby_patcher: Fix a couple of bugs in the hotplug scripts
Change-Id: Id8782b843c626aba37a954b930f9bcaac21bc073
2020-10-17 18:38:53 -04:00
Solomon Peachy
cd721754d0 Fix configure target name for the erosq/k series.
Change-Id: Ic114d8d26209d37133ffa48d232ab278a0309dcd
2020-10-16 21:16:13 -04:00
Solomon Peachy
d993448c9f Add Samsung YP-R1 to the builds.pm file, as an unstable (but usable) target.
Change-Id: I0987e66767f266efd59d1459b944570d9bd14874
2020-10-16 17:28:45 -04:00
Solomon Peachy
1a76bc403e erosq: Fix up builds.pm to match what we actually call the target
Change-Id: I2cedc68ca408a805815954a205ba43c3c9e970cb
2020-10-15 17:34:04 -04:00
Solomon Peachy
455a23bdab Promote the eros q/k to "unstable"
Change-Id: I27c5a06f6655fecb850fce4e5ea5305026194ab7
2020-10-15 13:33:13 -04:00
Solomon Peachy
82787709bd update the hibi patcher script to handle initial m3k stuff
Change-Id: I63ed8443952888da3dafb23ff6e7daf9c7aca574
2020-10-15 13:31:28 -04:00
Solomon Peachy
b4865b05b0 Build: Bump all toolchains to GCC 4.9.4 + Binutils 2.26.1
GCC 4.9.4 was already used for MIPS and all hosted targets; this enables
it across the board for everything (ie m68k and arm native)

Other changes:

 * Use '-Os' as the default optiomization for all targets
   (was only disabled for arm native)
 * Enable -funit-at-a-time and -Wextra
 * Drop all obsolete toolchain patches
 * Update ARM multilib/exception patch
 * Bump toolchain libs (gmp, mpfr, mpc) to recommended versions, and
   add 'isl' to enable better optimization & vectorization opportunities.

   (Will revisit optimization for the codecs and plugins at a later date)

Confirmed working:

 * armv4t     (ipodmini2g and many other PP502x targets)
 * arm >= v5  (sansaclipplus, ipod6g, ipodnano2g, sansafuzeplus)
 * m68k (ihp100)

Change-Id: If9ed405ae0f289d9adea46d4cf46bfefc2f4250d
2020-10-13 16:27:07 +00:00
Solomon Peachy
9ad30869b8 xduoox3ii/x20: Work around a nasty OF interaction bug
...that can result in your sd card getting wiped at startup

Change-Id: I19fc9836b321adbb1df3fc741bc2593965c624f6
2020-10-12 13:40:24 +00:00
Solomon Peachy
2a471e288c New port: AIGO EROS Q / EROS K
The Q and K have a slightly different case, but the hardware under the
shell is completely identical.

These models are rebadged versions:

 * Hifiwalker H2   (== Q)
 * AGPTek H3       (== K)
 * Surfans F20     (== K)

Other notes:

  * Significant improvements in the shared Hiby-platform launcher/loader
    * SD card can theoretically be hot-swapped now
    * Support external USB mass storage!
  * Some consolidation of Hiby-platform targets
  * Some consolidation of plugin keymaps

Todo/known issues:

 * Keymaps need to be gone over properly
 * Convert to HAVE_SCROLLWHEEL?

Change-Id: I5a8a4f22c38a5b69392ca7c0a8ad8c4e07d9523c
2020-10-11 16:37:17 -04:00
Solomon Peachy
aabc8aca47 New port: FiiO M3K
Most credit goes to:  Roman Skylarov
Additional integration and refactoring by myself.

 *** COMPLETELY UNTESTED ***

Change-Id: Ia64c36d92e0214c6b15f7a868df286f8113ea27b
2020-10-09 12:41:18 -04:00
Solomon Peachy
4231c2c83f codecs: Add support for the 'VTX' ZX Spectrum chiptunes format.
This codec requires floating point.

Original author:  Peter Sovietov
Ported to Rockbox:  Roman Skylarov
Further integration and bugfixes:  Solomon Peachy

Change-Id: I781ecd3592dfcdbbc694063334350342534f1d6c
2020-10-09 11:39:25 -04:00
Solomon Peachy
a511917f18 configure: Compact the target selection a bit
Change-Id: Ic20f4085d2a135f6596d3e80be8ff1017c6b7480
2020-09-29 09:25:00 -04:00
William Wilgus
2ffe87902d Add Invalid Voice Announcement to the voice system FS#13216
When a voice file is invalid or fails to load the voice system splash a
message 'Invalid Voice'

Now we supply a single voice file (currently only english is used)
the support for other languages is in but I haven't set it up to
look for anything but InvalidVoice_english.talk

Also adds a one time kill voice thread function
 ie. it doesn't allow re-init after killing the voice thread & queue

Change-Id: I7b43f340c3cc65c65110190f0e0075b31218a7ac
2020-09-20 16:08:49 -04:00
William Wilgus
4fa945d810 disktest_sysbench script
a script to help make disk benchmarks across USB

Change-Id: Ifa4e88d2dbaba03b804a4d03ff953f94117ad8e4
2020-09-17 16:20:43 +00:00
Solomon Peachy
56b49b3074 fonts: Use '08-Rockfont' as FONT_SYSFIXED on targets with 128x64 screens
..It's already the default UI font on those targets

Change-Id: If8cb44da650d19882e4bd4b641af2f4fa59c1cd1
2020-08-31 13:32:24 -04:00
Solomon Peachy
910e600ba2 Mark xDuoo X3 as "stable" in the build system as it now has a manual
Change-Id: I8df272b4f8f2a19bbe49dfb938243ed592201797
2020-08-24 15:28:39 -04:00
Solomon Peachy
c7c4672668 builds: Don't exclude 'retired' targets from the build list
Change-Id: Ic3b098e1d2ead235035e87d57877c351e28a54d9
2020-08-21 16:13:29 -04:00
William Wilgus
889bcc0f76 WIP open_plugins.rock viewer
OP allows you to use Open With.. to call plugins with parameters
called directly it  acts as a shortcut list for plugins

  open_plugins.rock interfaces with the open_plugin core

  When opened directly it acts as a viewer for the plugin.dat file
  this allows you to edit the paths and parameters for
  core shortcuts as well as your added plugins

  If a plugin is supplied to the viewer it is added to the dat file

  If instead the plugin has previously been added then it is run
  with the parameters you previously supplied

-----------------------------------------------------------------------------
Added export to .opx files
this allows shortcuts to plugins with parameters to be called from
 the file browser

Change-Id: Ib8b05a60b049fb1d5881031ca09a07e3307d375a
2020-08-17 22:17:15 -04:00
Dominik Riebeling
adce547e13 rockboxdev: Make it work on macOS.
macOS doesn't know about nproc; sysctl is the tool to be used on macOS.

Change-Id: Ic7dcf9be51d7ef7b52394ebb2a4df1dc3e31097b
2020-08-07 22:18:41 +02:00
Solomon Peachy
ef05dc9c3b langstats: Use updatelang instead of 'genlang -u'
Change-Id: I30a86bf9035e9e538603d0cc730a0449bf9a17d7
2020-07-29 20:04:46 -04:00
Solomon Peachy
f495c4846d updatelang: Fix the ignore list having issues with line endings.
Change-Id: Ib4add14ff7415c42d0cc2ec11ec918ec02fac72d
2020-07-28 18:55:16 -04:00
Solomon Peachy
20e400e74b languages: Add a few more exclusions to the same-as-english ignore list
Change-Id: I47d509e9d2ccf29ddd81bb15845f57544422626a
2020-07-28 15:29:44 -04:00
Solomon Peachy
530bc16679 updatelang: Extract langstr ignore list into a separate file so it can be shared
Change-Id: I4b77e1fe435e1f02df665f18e69b5c1db0a2e0b5
2020-07-28 11:11:39 -04:00
Solomon Peachy
2aeeeb43c9 updatelang: Fix false warnings about deprecated strings
Change-Id: Ia208909ed42dc7f9b8bd7d22ca88f1a1e47d0576
2020-07-28 09:17:46 -04:00
Solomon Peachy
5da59ce2fd updatelang: more tweaks for master language and sub-languages
Change-Id: I5af62b2f03bb4ee34518592e14c6ded3ccfea4e3
2020-07-28 00:12:23 -04:00
Solomon Peachy
f30f1bb467 updatelang: don't special-case english-us yet
Change-Id: If1a331d4f603154c036cd6c6b46f3a11e5e595e4
2020-07-27 22:17:40 -04:00
William Wilgus
be04c4be0a Voice TSR Plugin Demo
allows user to run plugin in background that voices
status messages

grouping is now working it counts ; as the end of a group

sleep timer remaining is not voiced if sleep timer is not active

TODO
manual entries

Change-Id: I39e8500df6440c07d2a3347513c749d5e155d1cc
2020-07-27 20:47:03 -04:00
Solomon Peachy
b9d13b898d genlang: strip out the '-u' mode as it's now handled by updatelang
Change-Id: Ic05cc72282cc016048e292ee0bef41c38148af8c
2020-07-27 17:20:59 -04:00
Solomon Peachy
cda5b055fe updatelang: Fix a few straggling issues
Change-Id: I549a33c94c339151cf5a74f13a8ecb73454bbfd4
2020-07-27 16:56:18 -04:00
Solomon Peachy
8159c9537f updatelang: Don't rely on non-core modules
Change-Id: I262f47e10aee51116375238b458270e92e25154d
2020-07-27 19:19:02 +00:00
Solomon Peachy
2305966d84 updatelang: New tool to update language files.
Change-Id: I3c18bb34770b4b4b321199149a2ea693dfbdb7f4
2020-07-27 14:58:38 -04:00
Solomon Peachy
02b970fa79 Update French translation (Stéphane Moutard-Martin)
Change-Id: Ibe247553965024a000749386a95e73dcc18c493e
2020-07-24 21:15:58 -04: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
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
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
df14f12675 mkinfo: Make memory size computation more accurate
* imx233 had disjoint memory map
 * hosted binaries not computing start address properly

Change-Id: Ia45571e0c41f07f1d4f34f6e1a0067dcac530148
2020-07-15 14:08:14 -04:00
Solomon Peachy
a69acbb2c1 FS#13214: Update Italian translation (Alessio Lenzi)
Enable the Italian voice nightly build too.

Change-Id: I34f36202714c51ec65d6b5ce288a3e10a2b32f37
2020-07-14 16:13:13 +00:00
Solomon Peachy
9adfab9b2b builds.pm: Enable Greek and Slovak voice builds.
Change-Id: Idf322dd4367cf250885b7f040b1e0de10ee8b945
2020-07-13 15:59:31 -04:00
Solomon Peachy
ead398a8f3 builds: Allow voices to be filtered by an 'enabled' flag.
(So only voices that are confirmed okay are built)

Change-Id: I78dae45182352e5939941744fba2c0e015866804
2020-07-13 10:52:50 -04:00
Solomon Peachy
73a0a9f5aa genlang: Skip strings not present in english in all voicelist modes
Change-Id: If4a4c8c42ce68ecac4aee4400ea82cc709e26c1a
2020-07-13 08:05:06 -04:00
Solomon Peachy
ab1cf209ec build: We don't want '-r' in MAKEFLAGS for toolchain builds.
Change-Id: Id1a96fb2274572ae7520a146b13f044f68e0c3aa
2020-07-12 22:24:32 -04:00
Solomon Peachy
980124ec73 voice: Ensure there are no missing strings when generating the voicelist.
If the translation is not 100% complete, we need to make sure anything
missing is copied from English so there won't be any gaps in the voice
files.

(This behavior is similar to what we do for the regular binary lang files)

Change-Id: I5fd2a50d08317eb8445926145a74a38033e0ebcc
2020-07-12 17:03:19 -04:00
Solomon Peachy
aa20b6af7a voice: Two more fixes.
Change-Id: I5aaf10c588f4396e61942b8fcd6c62c792ea175b
2020-07-11 18:28:54 +00:00
Solomon Peachy
b546d9d172 voice: More fixes, and add more languages
* Pass strings via stdin where possible
 * Add German, Italian, and Norweigan to the build list.
   (in other words, everything with >=95% coverage)

Change-Id: I0154b178b15ddd0b79566c1cb62f76ade32824aa
2020-07-11 17:22:06 +00:00
Solomon Peachy
aad57ea1cc voice: Further enhancements for multi-lingual voice generation
* configure: allow use of full tts engine names when making selection
 * voice.pl:  fixes for espeak-ng
 * build.pm:  Add a list of "standard" voices for tooling use

The latter will be used by the nightly builder infrastructure to
determine what voices to generate.

Change-Id: Iff55288f94a30fbe08d8345b730969b7264b5e0f
2020-07-11 15:01:33 +00:00
Solomon Peachy
185d2bbb6a voice: More voice generation fixes:
* espeak vs espeak-ng  (prefer the latter!)
 * voicepool was busted for most non-english strings

Change-Id: Iae6df0f5426155b7b1f444160814ff9ef4581f21
2020-07-11 01:33:04 +00:00
Solomon Peachy
938d820355 voices: Add tts language mappings for the top 19 languages
festival: english and spanish only
gtts:  all but nederlands
espeak: all (need espeak-ng for czech, greek, and japanese)

Change-Id: I7df1b3235b48f352b0af3c13e3742e85432bc692
2020-07-11 00:09:49 +00:00
Solomon Peachy
711bff47b7 voice: Enhance 'espeak' to automatically pick the language + voice
Most of the 'perfect' or 'good' translations are covered.

Also, don't override user-specified voice

Change-Id: I837bd67e9df2b8bcc7e020f12a2f411c9175565b
2020-07-10 23:28:25 +00:00