Commit graph

38654 commits

Author SHA1 Message Date
Christian Soffke
1a66c4fd5d eq_menu: fix talk menu setting not being respected
Change-Id: I2f3762c466083375dc72d682f6951e9644b06acc
2025-12-29 13:43:50 +01:00
Solomon Peachy
ca253a78cf More translation updates:
* Ukrainian (Pavlo Rudy)
 * Dutch (Marc Aarts)

Change-Id: I72ed4e30f8d43136f6e9c8fc2d185336ddbfdc57
2025-12-28 10:55:33 -05:00
Solomon Peachy
fed9a83d68 hibyr1/r3proii: Fix unused parameter warning
Change-Id: If44f529c49086d644f6183c573327ab38ea14583
2025-12-28 10:53:33 -05:00
Solomon Peachy
4b4f85f0f4 Fix warnings on hibyr1/r3proii targets
Change-Id: I7b0331bd8ffd2d919799e88e4556c3e01ff90c46
2025-12-28 10:30:54 -05:00
Solomon Peachy
ead839b1c3 FS#13726 - Updated Ukranian translation (Pavlo Rudy)
Change-Id: If7db4efc3993585eb6e4d388b504013c02fbc359
2025-12-28 08:24:34 -05:00
Solomon Peachy
d4f341e46d Translation updates:
* German (Karl Huber)
 * Korean (Hoseok Seo)
 * Polish (Adam Rak)
 * Simplified Chinese (王吉)
 * Slovak (Matej Golian)
 * Swedish (wilton millfjord)
 * US English (myself)

Change-Id: I644133e326c3ee1ec3862791075dda39fd17a3e4
2025-12-28 08:22:06 -05:00
Solomon Peachy
9c15ef82ee builds: Add Hiby R1 and R3ProII as Unstable targets
Change-Id: If901cacb295668ca661cf5450e88db509aabf409
2025-12-27 17:07:42 -05:00
Marc Aarts
1183b1ab1b Rockbox for the HiBy R3 Pro II/R1
Original author Melissa Autumn (https://codeberg.org/oopsallnaps/rockbox-hibyos) with contributions from Marc Aarts.

Adaptation to Rockbox standards by Marc Aarts

Change-Id: I09e5af7ba0a75c648e4b9fd424badc2d3665c943
2025-12-27 15:44:54 -05:00
Petr Mikhalicin
eee6c31b4a plugin otp: Stop freezing display when generate OTP
Sometimes OTP code expires soon and we can't use it. So, We have to
wait for new one. And it's really anoying, when devide stucking at this
time

Change-Id: Ic5e0105b6c051ad2ec2a2421068867be2e497683
2025-12-27 12:08:16 -05:00
Petr Mikhalicin
4e13e69de3 plugin otp: Fix handling of unknown otpauth uri parameters
OTP uri parameters is key value options separated by '&'.
So, we on unknown params we have to reject also everything what was
behind '&'

Example:
otpauth://totp/kek?issuer=petya%40IPARTKN.TEST&secret=1234567890&digits=6&algorithm=SHA1&period=30

"algorithm" was unknown. So, next token after it was "SHA1&period", not "period"

Change-Id: I48eb198fd46212c6422dd8eac214adafdf3a52eb
2025-12-27 12:08:06 -05:00
Petr Mikhalicin
ca57184ff0 plugin otp: Make 'Generate Code' first option at otp plugin
Generating code is more popular action then adding accounts. So, let's
make it first

Change-Id: I15ea07ef63186611c4a87ba741c5a7b5d0d5041c
2025-12-27 12:06:57 -05:00
Christian Soffke
f7ede2b9df plugins: Disk Tidy: wait for dircache
Running Disk Tidy while the dircache is loading is a lot
slower than waiting for it to finish building first.

Typical scenarios for this would be starting Disk Tidy
immediately after booting or after unplugging from USB.

Deleting files during a dircache build also seems to easily
result in memory corruption, as evidenced by visual glitches
appearing in the theme.

Change-Id: I9250d918d916b112ffe2504a9225a0b52bcc3622
2025-12-27 16:29:16 +01:00
Christian Soffke
8e512d1f79 plugins: Disk Tidy: SBS title & minor display adjustments
- Move header that displays "Cleaning...", or
  that shows the last run's date, into SBS
  title area, if it exists.
- Left-align everything if SBS title doesn't exist
- Display "Nothing removed" instead of multiple
  zeros for items, size, dirs, and files
- Display "Today" instead of the current date
- display "2m 1s" instead of "00:02:01, and
  "<1s" instead of "00:00:00"
- "1 items" -> "1 item"

Change-Id: I40302af00d1038adca45a1c6a908af76bd9917cc
2025-12-27 16:29:16 +01:00
Christian Soffke
71f84bedd6 plugins: text viewer: use basename in title
i.e. pictureflow.cfg instead of something like
/<microSD0>/main/.rockbox/rocks/demos/pictureflow.cfg
since the last path component is usually more important
and may not be visible otherwise.

Change-Id: Icdc2d0db21d9290ce53213b0a650c83631e7c9ed
2025-12-27 16:29:16 +01:00
Christian Soffke
8c9f70de82 plugins: text viewer: use SBS title
Take advantage of skinned status bar title, instead of
displaying a custom header that reduces space for content.

A custom header will still be displayed if the SBS
doesn't come with its own title, such as on the default
theme, or if the status bar has been turned off in Text
Viewer's settings.

Change-Id: I14c8d9a61acf338d09d7f54947399e8692987a7b
2025-12-27 16:29:16 +01:00
Christian Soffke
1fd45d23a0 plugins: text viewer: use theme colors & backdrop
When Night Mode was added to Text Viewer
in ab1b67f, the regular mode was changed to
black and white instead of using theme colors.
This looks out of place in custom themes when
the statusbar is enabled, i.e. using the default
Text Viewer setting. Only switch to black and
white when statusbar is disabled, which also
disables the backdrop.

Change-Id: I3ff5e1c42de11ca58640e91bcb315ce7804fadcd
2025-12-27 10:28:00 -05:00
Christian Soffke
06af1090bb plugins: vu_meter: enable theme for submenus
Also properly handle situation where theme is already
enabled at launch.

Change-Id: Ic7b3dcf38e77f6e9d6ef4a5512f729e47880e46c
2025-12-27 15:49:05 +01:00
Christian Soffke
17ea0bb82e simplelist: fix unbalanced viewportmanager calls
viewportmanager_theme_enable isn't balanced by
viewportmanager_theme_undo when connecting to USB
while simplelist is displayed.

Change-Id: Iad9408a52150934246c886a01a5d1efc8febd0fd
2025-12-26 16:05:24 +01:00
William Wilgus
44a5163061 firmware: fix misdefinition of QUEUE_GET_THREAD macro #2?
Broke the sim, just above it has..

struct queue_sender_list
{
    /* If non-NULL, there is a thread waiting for the corresponding event */
    /* Must be statically allocated to put in non-cached ram. */
    struct thread_entry *senders[QUEUE_LENGTH]; /* message->thread map */
    struct __wait_queue list;                   /* list of senders in map */
    /* Send info for last message dequeued or NULL if replied or not sent */
    struct thread_entry * volatile curr_sender;
    struct blocker blocker;
};

Change-Id: Ifc7a5fe92ebe5f06c0dc5655ce9725752e606381
2025-12-26 09:24:11 -05:00
Solomon Peachy
515b2816cd FS#13724 - Updated Swedish translation (Wilton Millfjord)
Change-Id: If4c18da6a95a08c9ef3c38d79479742c0da62528
2025-12-26 08:46:21 -05:00
Christian Soffke
dbec04dc81 simplelist: stop scrolling when leaving
Fixes (at least) Shortcuts menu not stopping
a scrolling line after leaving menu for a
plugin in some situations.

Change-Id: I90b4cc71a63e557565d028aae27db082e2e1813f
2025-12-26 02:50:15 -05:00
Christian Soffke
b04fd3efed plugins: fix dangling sbs_title pointer
Change-Id: Ief2a5dde8760e55524a74b482079a2a9ebafece9
2025-12-26 08:29:26 +01:00
Aidan MacDonald
28fa9ca760 firmware: fat: fix sector_t passed to 64-bit format strings
sector_t is still 32-bit on most targets, resulting in compile
warnings on debug builds when used with an %llu/%llx format.
Fix by always casting the sector to uint64_t.

Change-Id: I5afc4a0ae170981c304274806e00ac07be232cd8
2025-12-24 09:30:47 -05:00
Aidan MacDonald
d21d8f49fc firmware: fix misdefinition of QUEUE_GET_THREAD macro
This tries to access 'struct event_queue->send', but that
is only available if HAVE_EXTENDED_MESSAGING_AND_NAME is set.
This is not defined for bootloaders; this is a problem when
trying to build a bootloader with debugging enabled, because
the misdefined macro is used in some KERNEL_ASSERTs that get
compiled out on non-debug builds.

Change-Id: I334eedcda1ee7047c8dddcb7fa0c9717156f2a0a
2025-12-24 09:30:18 -05:00
Solomon Peachy
aaee78586a Minor mechanical correction to French translation
(USB-DAC is correct, and will be spelled out properly au francais
 thanks to voice-corrections.txt)

Change-Id: I2dd8e0e41df3e687a26fa74272f5248cda8f7b20
2025-12-23 20:08:52 -05:00
Aidan MacDonald
d24a127f63 echoplayer: enable USE_ELF to generate ELF binaries
Make the final .echo binary an ELF file. Most STM32s have
their SRAM divided in multiple non-contiguous regions and
putting an ELF loader in the bootloader is basically the
only reasonable way to load Rockbox on such a system.

Change-Id: I818ef9fefe0d53b44cf64402ee1794ad261343eb
2025-12-23 17:57:59 +00:00
Aidan MacDonald
2e85027ae7 configure: set USE_ELF to no by default
Otherwise, toggling USE_ELF in the target's configure section
and running 'make reconf' has no effect, because the previous
value of USE_ELF is inherited from the makefile.

Change-Id: I72d605ef6987fc590871566d73b24acf37e8fbe6
2025-12-23 17:57:59 +00:00
Aidan MacDonald
6078b2a6b4 echoplayer: enable debug symbols by default
This adds debug symbols to rockbox.elf & bootloader.elf to
make debugging with GDB easier. This won't affect code that
runs on the target because debug symbols are stripped from
the final binary.

Change-Id: I9efe207c63e8bd96404213aad96405be27030ae9
2025-12-23 17:57:59 +00:00
Christian Soffke
5aa2b339d5 plugins & debug menu: apply consistent titles
Purge "Menu" or "Rockbox" from plugin menu titles
and match application names from manual.

Exception: "Main Menu" is left unchanged as the
title for the Main Menu Configuration plugin, since
it appears in Rockbox's Settings menu and therefore
should match the name of the setting.

E.g.:

"Rockbox Goban" => "Goban"
"Image Viewer Menu" => "Image Viewer"
"Viewer Menu" => "Text Viewer"
"Menu" => "Chess Clock"
"Do What?" => "Text Editor"
"Mpegplayer Menu" => "MPEG Player"
"Multiboot Settings" => "Multiboot"
"Disktidy" => "Disk Tidy"
...

Change-Id: Ie6d3be7557f31a36309489037ad8b2b27b06706e
2025-12-23 10:25:05 -05:00
Christian Soffke
fe690dfa20 plugins: playing time: adjust error message, keep theme enabled
Replace generic error message  with voiced
info about the number of tracks skipped

Change-Id: I334fac447eeef2eb5c0d302675b98027b01b09d0
2025-12-23 10:22:14 -05:00
Christian Soffke
4e211b55f9 plugins: sort, vbrfix: add warning
Destructive operations should come with a
warning, especially if they are easy to
select by accident from the Open With... menu.
vbrfix even seems to be selected by default
for audio files (which is probably not ideal).

Change-Id: I4d2c79f2f19129d8b0257655e2d7c6093ad86eca
2025-12-23 09:58:23 -05:00
Christian Soffke
f316535684 plugins: view-text, zxbox: fix panic when called without parameter
Change-Id: Ife654e6dcb29916f661ce0c2232f4060ac02f5d2
2025-12-21 23:58:04 -05:00
Solomon Peachy
a2e63fca59 FS#13721: Updated French Translation (Matthieu BACHELIER)
Change-Id: Id49928589f68ff5d77a830c76823a4e21d952360
2025-12-21 17:54:55 -05:00
Christian Soffke
4698be4a17 plugins: flipit: remove 4s delay on devices without instruction
Change-Id: Iab0e54ca20de5318bf3d74e8571d0e6e209e3430
2025-12-20 13:57:03 +01:00
neofright
8cc372c4e4 Add line break to fprintf in database.c
Before:
Scanning files (may take some time)...Read metadata for /Music/foo/bar/baz.ogg

  After:
Scanning files (may take some time)...
Read metadata for /Music/foo/bar/baz.ogg

Change-Id: Id3816104779fd80930cd213bab29765bdd3db451
2025-12-20 02:47:08 -05:00
Roman Artiukhin
c594b58af2 imageviewer: jpegp: Fix downscaled image rendering
Fixed rendering issue when dimension is not divisible by downscale factor

Fixes FS#13719

Change-Id: I3b4ad035d5cce57acd3dc8a8e846bb5303598c8d
2025-12-19 13:35:52 +02:00
Christian Soffke
eb49b82d33 backlight-sw-fading: FS#13717 fix brightness overshoot
Change-Id: If4cb0a1993c93e6ba524cbed8690bb6c1664908e
2025-12-19 08:20:07 +01:00
Solomon Peachy
70e9ae0996 metadata: Explicitly use base 10 when parsing track numbers
Otherwise stuff with a leading 0 gets parsed as octal, leading to failures
to parse '08' and '09'

Change-Id: I997c505617104733793c6c113d4915bd4fd912e5
2025-12-16 15:08:54 -05:00
Solomon Peachy
488b915432 FS#13716 - Update to Latvian translation (Renalds Belaks)
Change-Id: I815f5482d6227be4dd4206311d365dcc949d3ac8
2025-12-15 15:12:13 -05:00
Christian Soffke
16cf7f5d8b plugins: starfield: enable USB audio
forgot about this...

Change-Id: Ib9d1451785390f1fabcaab679271510e76f9e330
2025-12-15 07:48:45 -05:00
William Wilgus
2398616d63 Bugfix lua font_getstringsize ignoring supplied fontid
Change-Id: I62c334300f427670b237957553176302a8589fe7
2025-12-14 17:51:29 -05:00
Solomon Peachy
b9ca4ba456 metadata: MPEG4 'trkn' field is actually numeric
So accept whatever value is supplied as correct.

Change-Id: Ic5ba6909f036957bceeaf7e79ad24273dac2e677
2025-12-13 19:19:52 -05:00
Solomon Peachy
bc627659ec FS13713: Fix null ponter deref with mp4 files with a tracknum of 0
mp4 metadata doesn't use strtol, so needs to handle things differently.

Change-Id: Idb54fae845b08222ea6b79870f6b99390af9c684
2025-12-13 17:54:29 -05:00
Dana Conrad
75df18f2c1 FS#13712: ErosQ: move all of sound hw init to audiohw_init()
Fixes voice not working after booting but before starting music playback
while line-out is plugged in. Doesn't seem to break anything on hw1 or
hw4.

Change-Id: I7b830adeeceae621177c94353e4814aa6ad0e1ec
2025-12-12 22:44:22 -05:00
Aidan MacDonald
a30f822500 plugins: add strstr() to plugin API
Multiple plugins carry their own strstr() implementation because
the in-core version wasn't exported to the plugin API.

Change-Id: Ib57a9b63754c89fb3447ec1d3958963d23145105
2025-12-12 13:30:54 +00:00
Roman Artiukhin
2e1af37536 plugins: imageviewer: don't downscale unscaled image if it fits on screen
Change-Id: Ifd686884d1d8fe3dca9da58ba38ee2de822b5787
2025-12-12 08:06:20 -05:00
Christian Soffke
3ee26f761b manual: html: fix unrecognized --parent(s) option on BSD/Darwin
Replace --parents (specific to GNU cp)
with separate mkdir -p command.

See https://www.gnu.org/software/coreutils/manual/html_node/cp-invocation.html#index-_002d_002dparents

Change-Id: I80dd5e513300dc921a59227aff9454ddb5766671
2025-12-11 19:14:48 +01:00
Aidan MacDonald
fe11a04579 mips: show version info on exception panic screen
Change-Id: Iff315869e9190ce7d68c672c6cc78cb1fc301264
2025-12-11 15:48:50 +00:00
Roman Artiukhin
4e18f60987 cuesheet: allow playback from arbitrarily named cue file
The removed filename check is required for proper cuesheet recognition in WPS, but it should not prevent playback from an otherwise valid cuesheet.

Change-Id: I2876a8855f06fb569e3ac171b04931af8be16cd1
2025-12-10 17:37:19 -05:00
Roman Artiukhin
4e655be473 dsp: Optimize fractional multiplication in audio processing
Removed duplicated multiplications

Change-Id: Iafe1030cd96f16664d6b136ebbe429313b6e6448
2025-12-08 16:14:06 +02:00