Commit graph

1129 commits

Author SHA1 Message Date
Solomon Peachy
a2c10f6189 unicode: Support characters beyond the first unicode plane
We used 16-bit variables to store the 'character code' everywhere but
this won't let us represent anything beyond U+FFFF.

This patch changes those variables to a custom type that can be 32 or 16
bits depending on the build, and adjusts numerous internal APIs and
datastructures to match.  This includes:

 * utf8decode() and friends
 * font manipulation, caching, rendering, and generation
 * on-screen keyboard
 * FAT filesystem (parsing and generating utf16 LFNs)
 * WIN32 simulator platform code

Note that this patch doesn't _enable_ >16bit unicode support; a followup
patch will turn that on for appropriate targets.

Appears to work on:

  * hosted linux, native, linux simulator in both 16/32-bit modes.

Needs testing on:

  * windows and macos simulator (16bit+32bit)

Change-Id: Iba111b27d2433019b6bff937cf1ebd2c4353a0e8
2025-09-12 09:24:30 -04:00
Solomon Peachy
6f7dbc2153 FS#13661: Major Spanish translation update (Sergio Delgado)
* Added some missing strings and updated some others that made no sense
   (were literal/poor translations).
 * More usage of music-relevant terms.
 * This translation fits a standard-internationally spoken Spanish,
   supported with the use of DLE (Spanish language dictionary) of RAE
   (Real Spanish Academmy)

Change-Id: Ie891520bcafe1e880e25dd42ce81393b1f10840d
2025-08-31 21:31:04 -04:00
Solomon Peachy
84504c7471 Revert "internals: Support characters beyond the first unicode plane (WIP)"
This reverts commit d05c59f35b.
2025-08-20 16:09:49 -04:00
Solomon Peachy
d05c59f35b internals: Support characters beyond the first unicode plane (WIP)
We used 16-bit variables to store the 'character code' everywhere but
this won't let us represent anything beyond U+FFFF.

This patch changes those variables to a custom type that can be 32 or 16
bits depending on the build, and adjusts numerous internal APIs and
datastructures to match.  This includes:

 * utf8decode() and friends
 * on-screen keyboard
 * font manipulation, caching, rendering, and generation
 * VFAT code parses and generates utf16 dirents
 * WIN32 simulator reads and writes utf16 filenames

Note that this patch doesn't _enable_ >16bit unicode support; a followup
patch will turn that on for appropriate targets.

Known bugs:

  * Native players in 32-bit unicode mode generate mangled filename
    entries if they include UTF16 surrogate codepoints.  Root cause
    is unclear, and may reside in core dircache code.

Needs testing on:

 * windows simulator (16bit+32bit)

Change-Id: I193a00fe2a11a4181ddc82df2d71be52bf00b6e6
2025-08-20 16:08:43 -04:00
Hairo R. Carela
48392bab94 New port: Anbernic RG Nano
A bit of context, this device is a clone of the FunKey-S with a different form factor, hardware is mostly identical, the relevant difference is it has audio out (via usb-c, adapter to 3.5mm is included), this is the reason why the FunKey-SDK is needed for bulding.

This port is based on the old SDL 1.2 code because the device doesn't have SDL2 support. Alongside what was supported in the SDL 1.2 builds this port supports battery level, charging status and backlight control.

Change-Id: I7fcb85be62748644b667c0efebabf59d6e9c5ade
2025-07-29 21:01:53 -04:00
Solomon Peachy
336d42c72b FS#13618: Updated German translation (Yannic Schmidt)
Change-Id: Ic3585574ebfd4a5757c326da174ca6376d8b0e30
2025-05-04 07:14:05 -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
27ad208024 FS#13604: Updated Swedish Translation (wilton millfjord)
Change-Id: I9a5e5b83501b25488033b6edaf31e7c4254e4692
2025-04-23 15:02:31 -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
Solomon Peachy
96f5cb728c docs: Update the Plugin API document, which was _very_ out of date
Change-Id: I2490e86e6cc4d949eca0298498d384c3dba733f4
2025-04-20 17:07:40 -04:00
Solomon Peachy
3383060990 docs: Delete some _very_ obsolete documentation
Change-Id: I9c04c8eed8d7400d9d16f80c7dab1d6c8c42674f
2025-04-20 16:53:57 -04:00
Solomon Peachy
b7b20c4a77 FS#13599: Updated Romanian translation (Mihai Alexandru Vasiliu)
Change-Id: Ia87c6a34c6776059e51c06f96708040914d3a97b
2025-04-19 17:43:14 -04:00
Solomon Peachy
d307568410 FS#13598: Updated Spanish translation (Guillermo Garcia Rojas)
Change-Id: Ida5f5319c0b9f37b04ac2d7be35186f798e3480a
2025-04-18 17:30:41 -04:00
Solomon Peachy
d835a294ef Minor mechanical correction to the Russian translation
(Now at 100%)

Change-Id: I236dd37ab9d4b88f7a42314ae22b8540aaf56b1d
2025-04-03 11:03:26 -04:00
Solomon Peachy
4347d41076 CREDITS: legal name change
Change-Id: Iec092f3e8d7f8dba165ff0a99d996d7076f6baa2
2025-04-01 20:02:08 -04:00
Solomon Peachy
83edee4224 FS#13579: Brazilian Portuguese translation update (Luyara Muniz)
Change-Id: I03401efac719dbcef27abf32593bc30e1b2fe15f
2025-03-23 21:12:35 -04:00
Solomon Peachy
19bb4a06ee FS#13577: Latvian language fixes (Renalds Belaks)
Hopefully the first step in getting this translation current

Change-Id: I3c1f70fc6324bd47c179c742be42b73ccc658034
2025-03-22 22:12:02 -04:00
Solomon Peachy
ee4591d9e7 FS#13565: Updated Serbian translation (Ivan Pešić)
Change-Id: Iea26a845a1d1d1e5a354133f0a5a323a665f5498
2025-02-16 07:59:19 -05:00
Solomon Peachy
078699ef49 FS#13555: Updated French Translation (CHAPUIS Adhemar)
Change-Id: I6e9229710392cd85010230457c284f3ac3b21e81
2025-02-02 08:05:26 -05:00
Solomon Peachy
e4179e4ff9 FS#13554: Updated Japanese translation (Emi Foster)
Not quite 100%, but _very_ close!

Change-Id: I56848fbd5ae3791828aacdae833a8742aeaab4a3
2025-02-01 13:05:53 -05:00
Nick Feldmann
f1b53d129f android: make installToolchains.sh work again
Google changed their site and the layout of downloaded SDK zips.
Also add a warning to configure if a r2x series NDK version is used, because those aren't supported - they no longer contain GCC, only clang.

Change-Id: I48a42c38c9b657ac6662162a39763aac73ec502a
2025-01-01 09:59:34 -05:00
Solomon Peachy
9b725a9fad voice: Add Spanish (Mexican) to the nightly voice sets.
This uses the piper engine.

Peninsular Spanish sounds markedly different from Central/South American
Spanish, so it seems prudent to offer both.

...We'll see how the masses feel.

Change-Id: Idfd3edd92c2dde7f9288afd99f474e59984689c9
2024-11-20 20:46:09 -05:00
Solomon Peachy
85330eb5fe Update multiple translations:
- English-US (Solomon Peachy)
 - German (Wilfried Winkler)
 - Italian (Alessio Lenzi)
 - Korean (Hoseok Seo)
 - Polish (Adam Rak)
 - Turkish (Mustafa YILDIZ)

Change-Id: I8ca5d6acb46bb86004e2d393cfce058dc85dc426
2024-10-31 08:08:22 -04:00
Solomon Peachy
c1bcebd998 FS#9059: Add WenQangYi Unibt font (William Poetra Yoga Hadisoeseno)
Change-Id: I8411349fdfdddf67f0d4a692d35176925498a7f6
2024-10-27 22:04:54 -04:00
Roman Artiukhin
64ad7354b6 imageviewer: Initial support for JPEG progressive images. Add lib sources
Added unmodified files from RAINBOW library by Attila Tarpai
Full sources:
https://github.com/Halicery/vc_rainbow

Change-Id: I356486b6a332aa3f610ddcae57f8a2044653b051
2024-10-14 09:19:34 -04:00
Solomon Peachy
d98cad4301 docs: we use xz, not bz2, for tarballs
Change-Id: I6ba825da18fc7617e5ea051f9d3c0714a0a09a84
2024-10-13 09:33:00 -04:00
Solomon Peachy
5ab334f07f FS#13488: Updated Russian translation (Dmitry Prozorov)
Change-Id: I2950fdef4ba5b8373b7661ececd15c02822dd403
2024-09-15 09:57:59 -04:00
Solomon Peachy
1aa5d24a25 CREDITS: No nicks/handles, just RealNames.
Change-Id: I71bd9ae0551acf63f88d7fc528fb046a61d9f9a0
2024-09-08 12:31:35 -04:00
Paul Sauro
fbc8b2156f Credits: Adding me to the credits of the project
Change-Id: Id80f83e2b8d95c8b4e0881b59395a0a82bff2f62
2024-08-28 20:26:16 -04:00
William Wilgus
a0f66dea9c update MAINTAINERS
Change-Id: I1ece943b3aeeab929c025ca412ab90e3c1f9e346
2024-08-11 17:00:55 -04:00
Solomon Peachy
ea5e494ae9 fonts: Update to v4.49.1 of the Terminus font family
Doubles the number of glyphs (691->1356) and adds 18 and 22px sizes

Change-Id: I722399c124e3a8c29d9a738bf48f72731db49994
2024-07-29 22:18:31 -04:00
Christian Soffke
23e5f77ab0 Remove mp3info function & remove list_do_action from plugin_api
Change-Id: Ia9a2d6889679832f23b19a989927277ba886cba4
2024-07-26 15:15:06 -04:00
Solomon Peachy
4e953434c3 FS#13446 - Updated Korean translation (Hoseok Seo)
Change-Id: I127ca48fac9ad8c75b529f2718b564e5bc8a9759
2024-07-20 09:13:38 -04:00
Solomon Peachy
66b0280bb1 FS#13445: Fix AI regression in Superdom (Uwe Schächterle)
The fix in e72bae7c3f was subtly wrong due to variable re-use.

Change-Id: Ibad3ad675a70682580dda0e7b2097702aa880524
2024-07-20 08:25:05 -04:00
Solomon Peachy
19b85e51e0 tex4ht can't handle Chinese unicode.
Change-Id: I51c3a68883a76b70b9d7901221f7b44cdbde31e5
2024-07-18 09:11:10 -04:00
Solomon Peachy
bb563da87a FS#13442: Updated Chinese-Simplified translation (王吉 / Medu Hedan)
Change-Id: Ib9490b9f4970adc0695d8bce9476b9719e76d3ea
2024-07-18 08:46:19 -04:00
Solomon Peachy
9049d30da9 Add Evan Kenny to CREDITS
Change-Id: Ia349c73da59dff6f4da7f727d9bfcf298ed25fce
2024-07-13 19:08:22 -04:00
Solomon Peachy
7ea7112220 MAINTAINERS update
Largely consists of adding myself in a bunch more places, though
I did "volunteer" a few folks in some places due to their existing
and ongoing work.

The other noteworthy change is adding Alessio Lenzi as the Italian
translation maintainer.

Change-Id: Ia754ff6ff1174622b2e17c3e7449a9c55b3039b4
2024-07-07 08:12:42 -04:00
Solomon Peachy
9b8cfd1bb3 FS#10959: Fix multiple bugs in brickmania (Matteo Italia)
- offscreen ball check;
 - "suicide button", with its documentation in the help (defaults to Down+Fire+Quit on targets that have DOWN defined, Fire+Quit held for some time for the others) ;
 - help screen made a little more clear (IMO) by underlining the key names;
 - help screen *code* made a little easier to handle, adding the last element number in the words array (this eases the formatting specified in the other array);
 - now the game does not delete the savefile after it loads it, but only by request (to do it a new menu entry was added); so, now "Quit without saving" will actually leave you to the state of the last savefile instead of resetting the game;

Change-Id: If3eeabada1566dcd4a9473d3d1e361d4921e4005
2024-06-30 20:32:38 -04:00
Solomon Peachy
eacb4daa2d More xrick-related cleanups
* Correct broken CREDITS file causing HTML manual build failures
 * Fix warning on iAudio M3 and MPIO HD200
 * Fix XRGB888 pixelformat builds, hopefully correctly.

This should bring the board back to green.

Change-Id: Ia7d54641d37db19d4cee3b5d9f5d8ab1567ac30b
2024-06-30 20:30:49 -04:00
Sebastian Leonhardt
102c374248 added xrick game
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
2024-06-30 17:24:16 -04:00
Solomon Peachy
11c70c6164 MAINTAINERS: Add our German translation maintiner
Change-Id: I123bf20428f5e61ed61dbe7e6a511a9299305b9b
2024-06-11 10:13:40 -04:00
Solomon Peachy
8c6b579b32 FS#13435: Update Polish Translation (Adam Rak)
...Also list Adam as the Polish language maintainer

Change-Id: I51501af0f341372eb999e94dc4bcb136c7e6a884
2024-06-09 09:03:50 -04:00
Solomon Peachy
8259c12a2f docs: Update MAINTAINERS file to add a "this is pretty out of date" blurb
List myself as the active maintainer of a few more pieces

Change-Id: I538b1d355661f921f8d571004b59a64c9718ac89
2024-06-09 09:03:50 -04:00
Solomon Peachy
6485a489cf FS#13418: Partial update of Turkish translation (Eren Akpolat)
Change-Id: Ibb89ade1e049f1b79d47a12b6a348beff61296fb
2024-04-30 18:48:02 -04:00
Solomon Peachy
bf325de48e FS#13417: Updated Dutch translation (Leander Lismond)
Change-Id: I3576b74aba0830fb0e277de01836f70ff376fbea
2024-04-29 13:44:24 -04:00
Franklin Wei
6efd7f8f3e FS#8647: Amaze - 3D maze game plugin
- update to build against latest Git
- cleanup (whitespace, indentation)
- fixed old PLA handling
- update indentation/curly brace style
- improve load/save mechanism
- enable marking ground with "select" button
- add compass view
- improve display on 1-bit-targets (floor pattern)
- graphics update: add 3x3 and 5x5 tiles, rework 7x7 and 9x9 tiles,
  load tiles dependant of screen size
- fix: on some targets (Fuze+) division by 0 could occur.
  Fix by calculating the exact view depth on all targets.
- fix: duplicate error checks when saving prefs
- Fully translate it
- Add a simple manual entry (including screenshots for some platforms)

Change-Id: Ic84d98650c1152ab0ad268b51bd060f714ace288
2024-04-24 17:37:58 -04:00
JJ Style
49910eca4b Implement dart scorer plugin application.
Edit:
    - Add name to credits
    - Add entry in manual

Change-Id: I0e0b062e001ae9134db3ee6e4fba21e93ddd04ee
2024-01-23 22:32:22 -05:00
Solomon Peachy
58ec8c62bb fonts: Update the 16px GNU Unifont to a derivative of 15.0.06-JP
Sourced from the UnifontEX (https://github.com/stgiga/UnifontEX) fork

The existing one is over 15 years old (5.1.20080820) and there has been
a LOT of progress since then, even before the additional work done
in the UnifontEX fork.

Change-Id: I86d115d09c0b4bce9c11e92295ec7265464f94ae
2023-12-02 22:31:02 -05:00
Uwe Kleine-König
1ee152b5a4 sansaclipplus: enable usb-hid mouse support
Change-Id: Ifbebf9ff8474882a29378515e010e9c9d39df5c3
2023-10-27 19:31:41 +02:00