Commit graph

38172 commits

Author SHA1 Message Date
Solomon Peachy
6ae4933d6e gitignore: Add the output directory of the release scripts
Change-Id: Ifd43889c442b97814f77412b42ce56e7fe570168
2025-04-29 20:20:16 -04:00
Solomon Peachy
c31518201c disk: In "superfloppy" mode, create a fake partition entry
We normally create a table of the partition sizes/types present
on a drive.  Howeever, if the drive is set up as a "superfloppy",
where there is no partition table and a single filesystem starting
at sector 0, this "pinfo" table is not populated.

So now, populate the pinfo table with a single entry that matches
the filesystem type, start, and size.

Change-Id: Ifa8760909109d67ff96481b1fc7f26c64280a00a
2025-04-29 20:20:16 -04:00
Solomon Peachy
12b9419006 Some fixes for language and voice scripts:
Languages:
  * Get rid of leading space on LANG_ID3_VBR [ " (VBR)" ]
  * Fix up sole user to insert the space programmically
 updatelang:
  * strip leading and trailing spaces on all phrases except VOICE_PAUSE
 voice.pl
  * Debug logging with UTF-8 output
  * Explicitly delete tab character from voiced strings

Change-Id: Ie466793479ce15ce7a9553770583a070530e7afd
2025-04-29 20:03:11 -04:00
Solomon Peachy
0ea02f0268 translations: Delete trailing spaces and tabs in Ukranian translation
Change-Id: If9a7ed7e002cef9012d5849e1ea972d5939e2040
2025-04-29 20:03:10 -04:00
Solomon Peachy
a3dfdb32f6 Revert "Toolchains: Update to GCC 9.5.0"
This reverts commit d87e9b99a6.

Reason for revert: Accidentally merged

Change-Id: Ib69e88cc93faa7d1a08c137977600d0659944128
2025-04-29 15:09:46 -04:00
Solomon Peachy
bbca8e3bd9 Another Ukrainian translation update (Pavlo Rudy)
This should bring coverage to a full 100%

Change-Id: Ief051d6e774e94b3dde5b07203a18e7a5ae97b21
2025-04-29 15:08:32 -04:00
Solomon Peachy
d87e9b99a6 Toolchains: Update to GCC 9.5.0
All toolchain dependencies are circa the GCC 9.5.0 release:

  GCC 9.5.0, binutils 2.38, gmp 6.2.1, mpfr 4.1.1, mpc 1.2.1, isl 0.18

Native:

 * arm - mini2g, nano2g seems to work
       - ipod6g boot hang on 9.5.0 (possibly leading to disk corruption)
 * mips - xduoox3 seems stable so far
 * m68k - binaries untested

Hosted:

 * arm - binaries untested
 * mips - erosq seems stable so far
 * Android NDK - unchanged at GCC 4.9.4

Change-Id: I4ca00edd49e1936b32f68f1e7b34df38e1d1d76e
2025-04-29 14:56:12 -04:00
Solomon Peachy
e72c42df20 voice: Add the bits needed to voice Ukrainian, and enable it by default
Change-Id: I002fd5022539db6f8e4270c24e0112e151f7e516
2025-04-29 14:33:35 -04:00
Solomon Peachy
232e5b4daf FS#13611: Major update to Ukranian translation (Pavlo Rudy)
Change-Id: I8aca68a151451f710a0069d8a5e1325a21ce901d
2025-04-29 14:26:34 -04:00
Solomon Peachy
6b063acaae toolchains: Ensure toolchain builds with C23 compilers
* binutils (mips) uses its own 'static_assert'
 * linux (mips) uses constexpr when generating headers

With these patches, all toolchains build successfully under GCC15

(These patches are still needed with the pending GCC9.5 bump)

Change-Id: Id2f8cca414d2907b6aa29612ae4fb0e8b5f79f79
2025-04-28 15:17:30 -04:00
Solomon Peachy
9159fc0159 builds: Enable nightly Romanian voice generation.
Change-Id: I1bb84d1c9e68158ea240be37f65721857e5181c2
2025-04-28 10:52:11 -04:00
Solomon Peachy
20512b03a9 FS#13610: Updated Romanian translation (Mihai Alexandru Vasiliu)
Change-Id: Ib39f0a7ad8a8790e1a93563a087df0e58fa4afdc
2025-04-28 10:27:09 -04:00
Solomon Peachy
fb2f56f8a6 hibyos: "run script" now invokes "/bin/sh" instead of "sh"
Change-Id: I409b8deaf7150abb0c00204e596bf8906b3fdc46
2025-04-26 09:57:59 -04:00
Solomon Peachy
310e380056 voice: Add the bits necessary to generate Romanian voices.
Due to the coverage being below 85%, disabled for nightlies

Change-Id: I90641f472e5a5cbca147986501236bd1b2ca8a5b
2025-04-25 20:47:27 -04:00
Solomon Peachy
d3e0f44f3b builds: Correct short language ID for Swedish (sr->sv)
Change-Id: Ia0d4abe8a0c893518b913de9ee1d0680a3ebb828
2025-04-25 07:04:46 -04:00
Solomon Peachy
2d820bfc7d lang: Correct clock set/revert text for erosq.
All translations with at least 80% coverage are upated.

Most of these also got a few mechanical corrections as well.

Change-Id: Id4cf5e6c066cb7cd0a73bcd5ad68135c9aeb3294
2025-04-24 22:01:49 -04:00
Solomon Peachy
de74b8738b nano4g: Make real bootloader fit in limited IRAM
...Trim support for alpha-blended bitmaps and stack trace.

Change-Id: I2d10af6c8bcb261cdbfb3f17ed81b6ee9bb0cc4b
2025-04-24 20:35:27 -04:00
Solomon Peachy
2dd422ffcf FS#13609: Updated Swedish Translation (Wilton Millfjord)
Change-Id: If7df3c6c57ee09e80ac74bcf79081e38494acd3d
2025-04-24 16:19:19 -04:00
Solomon Peachy
8f41516e96 lang: Fix a typo in the Swedish translation
Change-Id: I3bba6ef52a35d9cd9fda8fe94e437b5e691627e0
2025-04-24 16:16:49 -04:00
Solomon Peachy
dd53e99870 FS#13608: Updated Swedish Translation (Wilton Millfjord)
Change-Id: I73e4692375166c55c5171de491895bb3fd8bc3e9
2025-04-24 14:52:43 -04:00
Solomon Peachy
17c7357efe builds: Enable nightly Swedish voice
Via Piper's sv_SE-nst-medium

Change-Id: Idffbfdb0931085ce5d0015ed181fa92d66d06a51
2025-04-24 12:27:45 -04:00
Solomon Peachy
299d255743 FS#13607: Updated Swedish Translation (Wilton Millfjord)
Change-Id: Id780d45ec2057d46f53278be4a4f6460746b411c
2025-04-24 11:23:51 -04:00
Solomon Peachy
1eb06ea0d2 FS#13606: Updated Swedish Translation (Wilton Millfjord)
Change-Id: I96e143d935330a44335b98c5d0c0aeeeb7719169
2025-04-24 11:03:52 -04:00
Solomon Peachy
0771d38c1e FS#13605: Updated Romanian translation (Mihai Alexandru Vasiliu)
Change-Id: I0af77ebe5aaff50961ad14cfc4d5ce70209e07a3
2025-04-24 11:02:19 -04:00
Solomon Peachy
27ad208024 FS#13604: Updated Swedish Translation (wilton millfjord)
Change-Id: I9a5e5b83501b25488033b6edaf31e7c4254e4692
2025-04-23 15:02:31 -04:00
Solomon Peachy
28a3ac6b30 FS#13603: Updated Spanish Translation (Guillermo Garcia Rojas)
Change-Id: I06539c94e216da3bf5bf79248c07dace2dce2791
2025-04-23 13:50:48 -04:00
Solomon Peachy
5b1158e64a misc: Properly annotate some intentional case fallthroughs
Change-Id: Ie758f17fefac72aca1aa28a8ba1126b9334fe134
2025-04-22 20:54:37 -04:00
Aidan MacDonald
83950bf233 New WIP port: Echo R1
The Echo R1 is a new open-hardware music player design, based
on the STM32H743 microcontroller. Schematics and hardware
documentation for it can be found here:

- https://github.com/amachronic/echoplayer

This is an incomplete port. The bootloader can be loaded using
OpenOCD and it can draw to the LCD using SPI. SDRAM is working
but hasn't been extensively tested.

Change-Id: Ifd2bee15c49868fbc989683d3ca14dce48bf3e18
2025-04-22 20:08:08 -04:00
Paul Sauro
abae4660e2 fr translation: 100% coverage
Change-Id: I7b45562f98257139b8c611ed42b52de664bd22f8
2025-04-22 13:10:53 -04:00
Solomon Peachy
fb096e64b4 misc: Re-enable the -Wtautological-compare warning (GCC>=6)
Every globally surpressed warning potentially hides real bugs.  Let's
fix up the false positives.

Change-Id: I8f4ed43fac4c2496f7fcfafa1cb33633dcc7a9be
2025-04-22 12:48:36 -04:00
Aidan MacDonald
71d3bd2091 erosqnative: use same target ID for hw3/hw4 bootloaders
The bootloaders for version 3 and 4 hardware used separate target
IDs which now overlap with the Nano 3G / Nano 4G ports. It likely
makes sense for all the ErosQ native builds to share the same ID.

Change-Id: I40d166758744e8ba25931e568da11f374b2d7b90
2025-04-22 10:48:13 -04:00
Solomon Peachy
4096669eb5 dsp: Partial revert of previous commit, just disable warning
The "fix" produces different asm and I don't have the bandwidth
to determine if it's functionally equivalent.

Change-Id: I822557d1244f8e8a05e7ebfc45da2643152345a4
2025-04-22 10:23:14 -04:00
Solomon Peachy
865de6b907 dsp: Another warning fix in the compressor.
Change-Id: Ie4266d4d71d7b8f2faae9c5f4924e0d07ceae4e6
2025-04-22 10:09:53 -04:00
Solomon Peachy
303f262acb dsp: Silence a warning in the compressor code
/* offset = -3db * (ratio - 1) / ratio */
    db_curve[2].offset = (int32_t)((long long)(-3 << 16)
        * (ratio - 1) / ratio);

Results in a warning: left shift of negative value [-Wshift-negative-value]

To fix this, replace the '-3' with -3UL.

(As that is effectively what is already happening)

Change-Id: I5aa269ff332703d3c2d889fa032d2fdc403ff14f
2025-04-22 09:45:24 -04:00
Solomon Peachy
6f5760b41a jpeg: Silence -Wshift-negative-value warnings
These are all from upstream code, so just force-ignore the warnings

Change-Id: I9936e1cb79636b0bfee5dd4db0c98a06792d2f69
2025-04-22 09:43:40 -04:00
Solomon Peachy
9e52dcc7e7 iriverify: Fix a build warning
Change-Id: I12a50a8e71c50c232dad89342f59f5afe8d0aace
2025-04-22 09:34:30 -04:00
Solomon Peachy
8f3b8390d1 codecs: hopefully silence a -Wshift-negative warning in the metadata code
Change-Id: I023499e098bbc706c2f677a7f7a156ec58bd5b14
2025-04-22 09:00:21 -04:00
Solomon Peachy
bcf925a35f codecs: Silence two sets of warnings in musepak and wma codecs
The warnings triggered by -Wshift-negative-value are in the
upstream code, and presumably "correct"

Change-Id: I1cf20e12208f493c69e0852477d800cd417a67c6
2025-04-22 08:55:37 -04:00
Solomon Peachy
3975584497 mikmod: We don't need its custom 'strdup()' function
Fixes a warning with newer GCCs

Change-Id: I9ccf7bf77a40a0ad79122e9cf4a5e8e6859cfcfa
2025-04-22 08:54:19 -04:00
Solomon Peachy
4cac35b603 misc: re-enable -Wshift-negative-value and -Wnonnull-compare (GCC6+)
Change-Id: I37c98da8d42fb6825b43006a549980b59d179698
2025-04-22 07:50:11 -04:00
Solomon Peachy
6d24ff3257 h1x0/h3x0: Fix missing TIME context in remote button map
It was actually defined but not actually mapped in.

Also shut up a warning in the peakmeter code when not using a color
display.

Both caught by -Wunused-const-variable

Change-Id: Ie2403c0cd77e6fdf3468fd45115a1e0f228238e8
2025-04-22 07:40:27 -04:00
Solomon Peachy
3b974e791a misc: Fix more build warnings uncovered with GCC15 and -Wunused-const-variable
Change-Id: I43f5d03d8496b2ac8b30df30b14d1c6e816ef0e2
2025-04-21 21:55:03 -04:00
Solomon Peachy
9d4632b0c3 misc: Clean up a pile of -Wunused-const-variable warnings
And re-enable the warning (applies to GCC 6+)

Change-Id: I7aa679ec65707db12de83c0433966b3821d07087
2025-04-21 21:13:59 -04:00
Solomon Peachy
c7eda36341 misc: Clean up a large pile of -Wexpansion-to-defined warnings
And re-enable the warning (applies with GCC 7+)

Change-Id: I406ce796ebd06bad53cab911e17a28265a79b420
2025-04-21 21:04:05 -04:00
Aidan MacDonald
6fc87143df stm32: add sample files for OpenOCD and GDB usage
Change-Id: I674ebab9c25a8dcd69bcebf665dc8d749c380b42
2025-04-21 18:15:15 -04:00
Solomon Peachy
0d8f99e78c Fix red in 180753ce0a
Change-Id: Ie324d923a322bb8fbf429498ad653d4e83b6f97d
2025-04-21 16:59:10 -04:00
Solomon Peachy
180753ce0a misc: Correct various -Wunterminated-string-initialization warnings
-Wunterminates-string-initialization will complain if we try to shove
a "string" into a fixed array that is too small.  Sometimes this is
intentional; when you are merely using "string" as a standin for
"non-terminated sequence of bytes".  In these cases we need to mark
the "string" as "not actually a string" with an attribute.  Applies to
GCC >=8, but this warning isn't pulled in by -Wextra until GCC >= 15.

Change-Id: Ib94410a22f4587940b16cf03d539fbadc3373686
2025-04-21 16:39:00 -04:00
Solomon Peachy
c65050571e docs: Do a proper "merge" with the API docs
This keeps all the old descriptions etc that were there before.

Had to fix up the tools some more, honestly feels better to just
rewrite this crap in perl.

Change-Id: Ic15deae200c143ba5457423e12c81f871c0fef09
2025-04-21 15:59:00 -04:00
Aidan MacDonald
bf689e9b5d stm32h743: add intitial register definitions
Change-Id: I0c9f94103eedb333b2167a8ef49568c8e50c2218
2025-04-21 14:15:31 -04:00
Aidan MacDonald
d68efd3363 arm: add NVIC utility functions
Change-Id: I85567251fb00dec0f38be2a63261ad5509f4ec4f
2025-04-21 13:07:38 -04:00