Commit graph

38476 commits

Author SHA1 Message Date
Solomon Peachy
4bc336b8be genlang: Explicitly decompose all display strings
We already have pretty solid support for glyph combining, so this will
allow us to utilize that to fill in gaps of our font coverage.  This is
most notable for Vietnamese, Turkish, and numerous other latin-based
writing systems that have unique glyphs that are essentially just a
"standard" ascii letter plus a diacritic mark.

This leaves *voice* strings fully composed/normalized.

It also has no effect on user-supplied strings (eg filenames or file
metadata)

When we eventually utf8proc merged, this can be removed in favor
of always doing the [de]composition in-system.  We will also need
to revisit our diacritic tables to ensure there's nothing missing.

Change-Id: I7012d27010bb33fb0b565ac7dfd57a16bdcad34f
2025-10-22 08:00:18 -04:00
nift4
cd54b4e046 Disabled hotkey for Sony NWZ-E370/E380 targets since actually it is not in use
Patch by Igor B. Poretsky <poretsky@mlbox.ru>

Change-Id: I464948c9fb074910c0296579c650d0297a4a412b
2025-10-21 17:49:59 -04:00
nift4
df3712e708 nwze370: fix bootloader regression I caused
Change-Id: Ia14a9f46b4a6cc393043f59b586457e982472dc0
2025-10-21 23:33:36 +02:00
nift4
b1511738f7 nwze370: improve lcd & backlight
Added lcd inversion
Fix issue where backlight would turn on before first frame rendered
Fix issue where backlight would shortly appear at 100% before PWM is
ready during fade in
Turn off backlight before booting/RoLo/shutdown to avoid it being
enabled on next boot
Fix issue where fade in isn't smooth because brightness levels below 13 were
basically equalivent to off, by removing these brightness levels

Change-Id: I868eae2cbeea52c6af7d09c886958ff46167fe26
2025-10-21 16:54:57 -04:00
Solomon Peachy
9722cad478 FS#13674: Final corrections for Slovak translation (Matej Golian)
Change-Id: Ifd67417717e887381655d5702295e2ffef166e4b
2025-10-21 15:30:37 -04:00
Solomon Peachy
4736de39b6 FS#13672: Major update to Slovak translation (Matej Golian)
* Consistent capitilzation
 * Corrected spelling and other errors

Change-Id: Idf10cf5c689f2fdc8607609ca61a98080a18d758
2025-10-21 13:56:25 -04:00
Solomon Peachy
10dbdd6b22 FS#13670: Vietnamese translation corrections (Chu Khánh Hạnh)
Change-Id: I74e25b4b103d1d8bce4990e070461c4c52dded83
2025-10-20 22:35:44 -04:00
Solomon Peachy
3fdc731137 rbutil: Add Vietnamese to the list of languages
Change-Id: I46d74c7dce657d58268103433c6245f0fbb157a7
2025-10-20 16:51:46 -04:00
Solomon Peachy
e09747fe2b builds: Enable Vietnamese voices on nightly runs
Change-Id: I0f2c33d2d95695829be672aa2e6fe5b8e683d63a
2025-10-20 16:51:46 -04:00
Solomon Peachy
ef0d75d1e4 FS#13672 Correction in voicing time in the Slovak translation (Matej Golian)
Change-Id: I6ab8b96962cfcbd90e3e635c1c864e306b1861f7
2025-10-20 16:43:31 -04:00
Solomon Peachy
ebe611ddd4 credits: Work around the failures when building the manual.
U+1EA1 (ạ) in Vietnamese text

Change-Id: Ibefa4e93d33778f70e8ccc273af0a07e6cef6059
2025-10-20 16:40:46 -04:00
Solomon Peachy
900b362f4c Minor mechanical corrections to Vietnamese translation
Change-Id: Id60524eef3f3bb89ca1bee4df76aa260987d513a
2025-10-20 09:13:35 -04:00
Solomon Peachy
09406bed8e FS#13670: Initial Vietnamese translation (Chu Khanh Hanh)
Change-Id: I42c34a52813b2470342f6feb61efab07155b8295
2025-10-20 09:01:05 -04:00
Solomon Peachy
60ddb02573 winsim: Fix filesystem access
Corrects a regression introduced in

    a2c10f6189

Change-Id: I9a27a6192ff6a9d1be7829d23d23dbf98b84feae
2025-10-16 18:00:32 -04:00
Cameron Peck
bfcd8270c9 Add arcsin, arccos and arctan to calculator
Change-Id: I9aaded58718ae410239678abe6cf6196286bc7f8
2025-10-14 17:05:14 +01:00
Solomon Peachy
9aa6a35b3f Fix warnings introduced in prior commit
* #define CONFIG_RTC APPLICATION  (in sim builds)
 * #define CONFIG_STORAGE 0        (in PCTOOL builds)

Change-Id: Iabb77bd0a29ca06a13d1075f1e8cedb00f785c64
2025-10-12 17:20:20 -04:00
Solomon Peachy
0f8f05db29 build: Enforce -Wundef on all targets.
Simulators (and some hosted targets) no longer get a free pass!

This commit includes general fixes for simulator builds, but it
will undoubtedly result in many more warnings that need to be properly
fixed.

Change-Id: I6bb9d3fc4a29ccfe40366c438e058b5dfff0ddc3
2025-10-12 16:12:56 -04:00
Solomon Peachy
7ba4af6ab0 configure: Delete an obsolete, unused toolchain reference
'arm946cc' was only used by the never-finished 'tcc77x' targets that
were removed from the tree in 3ba2f6e5c7 (April 2021)

Change-Id: I935847ec9d339b8e90c6d2362113c2ff94b8b20f
2025-10-08 13:46:10 -04:00
Sebastian Leonhardt
a4aaf94af1 fix typo in imx233_power_get_info()
obviously the number should be 14400 (confirmed by datasheet)

Change-Id: I89dbd291a388fdd27575d814dc54609ebc17c964
2025-10-08 11:01:49 +02:00
Solomon Peachy
958f5ad5bd FS#13667: Updated Serbian translation (Ivan Pešić)
Change-Id: I04b7597a21342fd07ea4b4cdf7cad905dd8c728a
2025-10-06 08:27:19 -04:00
Solomon Peachy
5a4030cb35 usb: Partial revert of previous commit
...A rebase gone wrong led to a bunch of extra crap in the commit.

Change-Id: Id8f0e33b9fba0949594701fbc574da58e74fa776
2025-10-05 15:56:00 -04:00
Solomon Peachy
43ec77f84c usb: Strip ALL spaces from passthrough ATA serial number
Leading spaces in particular were resulting in Linux warnings/panics, but
to be safe strip out all spaces, including those in the middle.

This was noticed on an ipod6g with the stock hard drive; it reported
a serial number of '            xxxxxxxx', which is technically legal
per ATA specs, but needs to be properly trimmed.

Change-Id: I34309fe64b341caefd5b18f6d0cf539cb97d4a38
2025-10-05 15:48:12 -04:00
Solomon Peachy
7795426648 fonts: Update GNU Unifont -- Now with Unicode 16 support!
Thanks to the UnifontEX crew for their hard work.

Change-Id: Iad8266396ba89e27f00ba1f86018f40f19ae78ce
2025-10-04 10:18:27 -04:00
Solomon Peachy
b4565feed6 builds.pm: Add disabled TTS entry for Hungrarian
Will enable once we cross the 85% threshold.

Change-Id: Ia3c5c591fe0bd8bec610e7025e98b8c868e0bfc8
2025-10-04 10:18:27 -04:00
Solomon Peachy
84b883907f lang: Fix a missing colon in the previous commit
Change-Id: I13dca8f94047d192574a69fc4661209d4103ea2f
2025-10-03 12:16:34 -04:00
Solomon Peachy
d3f9cc579f lang: Correct LANG_TIME_REVERT and LANG_TIME_BUTTON_SET for xduoox3/x3ii
Change-Id: Ia3f71a96ad8d4be07d2b35d46a40190442b5f5cd
2025-10-03 10:03:17 -04:00
Aidan MacDonald
e24deccd00 sound: fix volume change being reported to %mv tag on boot
Setting the last_volume_change time was moved here in
commit 2e08b0f82e ("sound: update global volume state
in sound_set_volume()"); however this also triggers the
%mv tag on boot, as if the user was actively changing
the volume.

Move the last_volume_change update back to the original
call sites to fix this.

Change-Id: I895112cea4315f194f67c27839f1082d67c1ffa9
2025-10-03 10:01:02 +01:00
Aidan MacDonald
b19b95c00f sound: update global volume state in sound_set_volume()
Instead of calling sound_set_volume() and then manually
setting global_status.volume to match, update the global
volume state directly in sound_set_volume(). This makes
things a bit simpler and less error-prone.

Change-Id: I4db4d60ae1a72bd051ef49c90b1ae7f5ba59e535
2025-10-02 14:32:54 -04:00
Sebastian Leonhardt
ae001cb60c Fix wrong order of strings in .lang files
A "feature target" string must come before the device targets,
otherwise the real target string may be overwritten by the
feature string (happened with CreativeZEN button description
in the time screen).

Change-Id: I75b7441d4dc97b215cc26b42d3af3943fce32e20
2025-10-02 12:48:02 -04:00
Solomon Peachy
79e4e075e6 updatelang: Respect the target ordering in individual phrases
When matching the target id in a phrase, if there is more than one match
we always use the final one.  This allows us to easily specify a
default/wildcard entry that gets overridden by a target-specific one.

The list of targets was sorted alphabetically to ensure consistent ordering
from one run of the tooling to the next.

However, if a phrase contained both device-specific phrases as well as a
generic "feature" fallback, alphabetical sorting may screw things up, as
the "feature default" was no longer at the top of the list. This is
known to be an issue for LANG_TIME_SET_BUTTON and LANG_TIME_REVERT, but
may affect other phrases as well.

(To be blunt, we shouldn't be mixing feature and device-specific targets
 in this context.  The "feature default" should be removed in favor of
 target-specific entries, but in this specific case it looks to be a
 real PITA due to incomplete keymaps)

Consequently, work around this by sorting the target list within each phrase
based on the ordering in the master (ie English) language file.

Change-Id: Id32439c179a98663f414530fb36012f9b217c1b6
2025-10-02 12:36:49 -04:00
Sebastian Leonhardt
a7cf86e5c1 Creative ZEN: enable multiboot
defines redirect file name as "rockbox_main.zen"

Change-Id: Ieb0f10492ccf6edfa5652882ec031a7b4e862b04
2025-10-02 08:52:33 -04:00
Sebastian Leonhardt
58ad4ecf54 IMX233: make use of register define for bootdata
(the #define is already there, just unused)

Change-Id: I96d5cfe3ffc87a918eb6cd3e1eca8d9f4c91e13f
2025-10-02 13:06:11 +02:00
Solomon Peachy
1ab63c3d92 ipod: Small cleanup of piezo code on PP502x-based iPods
Basically use proper register names instead of magic values.

PP5002-based ipods (ie ipod1g-3g) use UART1 to drive the piezo vs
PWM of the newer models.

Change-Id: Ia333717a825ac6a0ebf43850fc31fca34178dd88
2025-10-01 20:46:43 -04:00
Aidan MacDonald
b09ce21023 echoplayer: fix incorrect button reporting
Must've been a copy paste error...

Change-Id: I751c529c748037f9afe5d2e4543d3630693d2d21
2025-10-01 18:28:12 +01:00
Franklin Wei
be5457b5eb puzzles: resync with Simon's upstream e00cb46 from 25 Sep 2025.
Notably, this enables "Group".

This also includes some changes to the Rockbox frontend:

- Removes extraneous underline from Extensive Help text.

- Implements a workaround for an upstream breaking change that removes
  the BLITTER_FROMSAVED flag. We depend on this for mouse mode. This
  is apparently the only place this flag was ever used. Note that I've
  hardcoded an arbitrary negative value for BLITTER_FROMSAVED instead
  of -1, for the reason Ben Harris mentioned in his commit removing it
  from the upstream source tree.

- Adds an implicit clip() to the game region when drawing a
  puzzle. This fixes a bug in Untangle where dragging a point off
  screen leads to ugly lines outside the play area.

- Implements "Quick Help" for unfinished plugins (but not "Extensive
  Help").

- Documents the need to disable unfinished plugins in resync.sh (weak
  symbols on win32).

Change-Id: Ic318a5db4b15acb437a3f951fbc9b7919c6fa652
2025-10-01 00:49:19 -04:00
Solomon Peachy
306d8d4fc9 FS#13666 - Updated Hungarian translation (Matyas Kadlicsko)
Change-Id: Ie787603807537246ccc4328b064d808574b1163a
2025-09-30 19:40:13 -04:00
Dana Conrad
7533faed66 ErosQ: Add multimedia HID keys
presentation, browser, mouse not implemented

Change-Id: I81f5d43ecc229ae152c5ebdfef36755a685423ab
2025-09-29 15:58:48 -04:00
Solomon Peachy
8a94a37502 checkwps: Exclude targets that only exist as a bootloader from buildall
Change-Id: I95cb65a204b4e509d48c9a8fb009d438f382a9f6
2025-09-27 13:47:04 -04:00
Solomon Peachy
7c30b318e4 Hopefully fix all of the red and yellow.
Change-Id: I356b664067a6eecbb01f8a71cf9fa2cfcfd75128
2025-09-27 11:39:19 -04:00
Solomon Peachy
d7d7627baf checkwps: Validate %?St() tags
This will bail if referenced setting name does not exist.

Change-Id: I7abd54ec1260d3da6024ebec809f8e270b0a84e5
2025-09-27 10:19:20 -04:00
Solomon Peachy
d57e1a21d1 FS#13665 - Updated Hungarian translation (Matyas Kadlicsko)
Change-Id: I784264c2e62432566d7f62eaa012147a9309e2ad
2025-09-25 15:14:08 -04:00
Solomon Peachy
aef5cec1ad disk: Minor cleanups with respect to virtual<->logical sector mapping
Change-Id: Ib20c73c8afe6cf71165600ace1b2ca4b10de2ae8
2025-09-22 22:12:59 -04:00
Hairo R. Carela
3ddde8615c rgnano: drop doom plugin due to musl issues
Dropping this after some failed attempts to work around musl dlclose implementation, fortunately there's a native port.

Change-Id: I17550df81494c6e67ddab21d44fe1287ccfa6156
2025-09-21 19:46:54 -04:00
Solomon Peachy
d29663a412 Revert "configure: remove redundant ARG_ARM_THUMB checks"
This reverts commit 5323c49fe6.

This caused build failures on two of the three affected targets.  The intent
of the delted code was to force thumb on unless it had been explicitly
disabled.  Due to extreme space constraints those targets _need_ to
be built in thumb mode.
2025-09-21 15:50:24 -04:00
Solomon Peachy
caaea275eb libspc: Temporarily disable problematic armv4 asm optimization
asm volatile (
    "mov    %[t0], %[out], asr #11  \n"
    "mul    %[out], %[t0], %[envx]  \n"
    : [out]"+r"(output), [t0]"=&r"(t0)
    : [envx]"r"((int) voice->envx));

This is resulting in "Rd and Rm should be different in mul" error,
because the compiler is putting [out] and [t0] into the same
register.

After some poking there doesn't appear to be a sane way to change
the constraints, so just disable it for now.

Change-Id: I7827713c8aadb27f0bf4a6f4a3e1d910c6193686
2025-09-21 15:39:35 -04:00
Solomon Peachy
bb251ba603 surfansf28: Hook up CONTEXT_YESNOSCREEN
Change-Id: I6faa43c95dffaf92d91f6b96f57acb164cf5b364
2025-09-21 15:39:35 -04:00
Solomon Peachy
977b6ef692 Toolchains: Update to GCC 9.5.0
GCC 9.5.0, binutils 2.38, gmp 6.1.2, mpfr 4.1.1, mpc 1.2.1, isl 0.18

Native:

  * arm - mini2g, nano2g, ipod6g works
  * mips - xduoox3 works
  * m68k - binaries untested

Hosted:

  * arm - samsungypr0 works
  * mips - xduoox3ii works
  * Android NDK - unchanged at GCC 4.9.4

Change-Id: I80faed4c74f7238265bf7a19b794e8476c351411
2025-09-21 09:03:00 -04:00
Solomon Peachy
5a1a5de3e3 build: Use 'nproc' instead of counting /proc/cpuinfo entries
Change-Id: If3b31504bcd37692ad109bb2779620e2302aa9fa
2025-09-21 09:03:00 -04:00
Solomon Peachy
5323c49fe6 configure: remove redundant ARG_ARM_THUMB checks
Change-Id: I25a5e631605173596de5971ff8d9bd7b7500791f
2025-09-21 09:03:00 -04:00
Solomon Peachy
d7d80a0c3a misc: Fix up more gcc9 warnings
Change-Id: Ia2f763ca7494c6a93b48bdd347a91f3d1a967f29
2025-09-21 09:03:00 -04:00