1
0
Fork 0
forked from len0rd/rockbox
Commit graph

17435 commits

Author SHA1 Message Date
William Wilgus
188f025f51 [Bug Fix] Data Abort on Usb Unplug, database browser ran on USB dc
current_lists holds a pointer to whatver the current list is only problem
is when in one of the function type menus like the plugin viewer, playlist viewer, shortcut menu
probably a few others on usb unplug current_lists holds stale data and updates the list however
the data has already been freed when the function returned

the issue with db browser was a return of true from dirbrowse() which was the value 1 which is the
enum for GO_TO_DBBROWSER

Change-Id: I7349dfab2752e11f8e746925501740e959851cd5
2024-07-21 01:45:25 -04:00
Solomon Peachy
6bfcba4422 FS#13450: 100% Chinese-Simplified translation (Medu Hedan)
Change-Id: If6911a2f6f6b912c35379f46cc5f4635f1557c7a
2024-07-20 10:41:34 -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
William Wilgus
f24271c73c [Bugfix] Plugin Viewer Don't display SYSTEM folders or Volumes
recent changes added first level folders to the plugin viewer
inserting a drive enumerates new folders into the namespace of the plugin viewer
filter these entries OUT

Change-Id: I53c383584511b54940f9dffec4737107a69f6673
2024-07-20 08:19:14 -04:00
William Wilgus
7e90760a48 [Feature] Playlis to cue plugin
generate valid cue files from a playlist

uses remarks to store extra id3 info and display and playlist index

Change-Id: I00c9f6389445bb601dde6eb8f36157044024f8cb
2024-07-20 07:27:01 -04:00
William Wilgus
072228bb70 [feature] playlist. show search progressbar when iterating playlist entries
Change-Id: Ib38363f7495ca523e7cc401c0d39e060ed1705ad
2024-07-20 00:08:39 -04:00
Solomon Peachy
6af637645a FS12727: Fix buggy strength calculation in superdom
Change-Id: Ib72385a488d7459af80b42972143b18ac2c2982f
2024-07-19 18:26:28 -04:00
Solomon Peachy
5f3d3b0550 FS#13443: Further updates to Chinese (Simplified) translation (Medu Hedan)
Change-Id: Iee40059fcd63feba39bb2ce104650e57bf028e74
2024-07-19 09:34:02 -04:00
Solomon Peachy
16094fca33 voice: Minor tweaks for Chineese TTS
Change-Id: I717a40cd00e9deabf093aabd05bc2608488c5f56
2024-07-18 10:30:34 -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
27a0cda6ac PP5020: Unconditionally use stock PIO timings
The SSD detection heuristic is flawed, and when it fails
(due to very crappy CF->SD adapters) we end up corrupting things.

So let's give up a slight amount of performance on the original hard
drives (which are aging out anyway) in favor of guaranteeing safety.

Change-Id: Id92583a6b9ae6ec543b91b3e0f8f28b57ac38cb0
2024-07-16 17:35:53 -04:00
Evan Kenny
96f42a5646 skin engine: Add tags to display Quickscreen Items
A set of new tags for themes that allow them to display a quickscreen item's name or value like what is displayed on the default quickscreen.

There are 8 tags in total, 2 for each direction or "item".
One type of tag displays the setting name, while the other displays the setting's value.

All tags output an "ERR" string if no valid setting is found for that item.

Quickscreen Item name tags: %QT, %QR, %QB and %QL.
Quickscreen Item value tags: %Qt, %Qr, %Qb and %Ql.

Change-Id: Ia08ba5940e38065e051a0aefa2cff142c9e58684
2024-07-13 19:07:06 -04:00
William Wilgus
3891bcf3b9 [Revert] id3 title display playlist_viewer.c
reading the disk works fine for on disk playlist but
trying to read from the disk with the current playlist
becomes unbearably slow

removes the static playlist_track_info prefering the unused one
already on the stack from search_playlist()

Change-Id: I01b836b4fe46bb51ef6a28d5db6b3f9cdc7d1e51
2024-07-13 01:39:50 -04:00
William Wilgus
da8d6152ad playlist_viewer reduce bss usage
the extra title pointer and alignment adds around 1k to the bss area
since we already have a pointer to track->name we can just save an offset
for the title data

Change-Id: I3a19857631d70276134bcc97940824a3e2f80e4a
2024-07-12 10:55:24 -04:00
Solomon Peachy
fec9f69ac8 agptekrocker: Fix manual build due to missing Quickscreen enter/exit
(Required adding a std quickscreen context keymap!)

Change-Id: Icd6bd656d826ea3be73b025242d2405f489e3eeb
2024-07-12 08:52:24 -04:00
William Wilgus
a2747a1bd1 Playlist_viewer.c clean-up and a bit of optimization
Change-Id: I049020ab5da0b3b3c6495a4be1bc8f296d472e01
2024-07-12 00:35:32 -04:00
William Wilgus
bdb5bf1511 [Bugfix] playlist_viewer.c
had the conditional backwards

changing display settings now reloads list

Change-Id: Iea8f6bb1c7323b316a386135a6ccb192b214f6db
2024-07-10 17:07:03 -04:00
William Wilgus
fdbaf7df59 [Feature] playlist_viewer id3 title display
Not sure this is a great idea from disk and battery standpoint
but there is no reason you can't..

using the name buffer to fill title data
prevent hitting the disk for each screen scroll

add get_metadata_ex to allow flags
 METADATA_EXCLUDE_ID3_PATH
  prevent copying the filename to the ID3 struct
 METADATA_CLOSE_FD_ON_EXIT
  instead of seeking to the beginning the file is closed before
  get_metadata returns

add logic to allow a invalid fd to signal that get_metadata
should open and close the file within its call

bugfix per Chris_s don't use the tagcache for the trackinfo

Change-Id: Ic7a595b39a8d7a57f975312bc9c8bb4111f22a88
2024-07-09 01:40:02 -04:00
William Wilgus
e4ee8c8879 [Fix Yellow] file_op.c Bad DEBUGF statement
Change-Id: I22fa470599b0c22fae0bc5492eda38fd1e0c0b55
2024-07-04 13:01:36 -04:00
William Wilgus
b0dfcde2f5 [Cleanup] onplay.c fileop.c
clean-up a bit more
add/correct some comments

fix some error passing
guard delete path on PATH_TOO_LONG

add some cpu_boost

Change-Id: Icf179dd727271bdc61ab78400e10847222b9f858
2024-07-04 12:44:04 -04:00
Solomon Peachy
5e13a1bb05 FS#13439: Fully updated Italian translation (Alessio Lenzi)
Change-Id: I2efba438f4c915af6b249776d663d4f5b41df17b
2024-07-04 09:56:50 -04:00
Solomon Peachy
311f27606c xrick: Fix build on RGB888 targets
Didn't realise they needed the same hand-holding as XRGB8888

Change-Id: I28274b7326747093ef94427b1ddbcb948c907a2b
2024-06-30 20:57:34 -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
Solomon Peachy
423350ec4d xrick: Fix various errors/warnings
* Piles of warnings in miniz when built with modern toolchain
  * Pointer arithematic error in PRNG
  * Casting between int and void * for file descriptors
  * Warning on non-color targets

Remaining:

  * Failure on XRGB888 LCDs due to issue with core LCD macros
  * Failure on interleaved greyscale LCDs (?)
  * HTML manual build failure

Change-Id: Ibf6d2c001ec8daf583731d5da15b86b5352773e7
2024-06-30 18:45:07 -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
William Wilgus
dc7486c7de [Feature] onplay.c show file progress
first some clean-up of onplay.c

extend/move fileobject copy, move, delete routines in prep for other users

add error checking, better error codes
pre scan to make sure the operation doesn't exceed system resources
show progress for file and directory copies

Change-Id: Ife2e62df554892dab651bab40433bf70b27e73ff
2024-06-30 02:09:40 -04:00
Solomon Peachy
c87c09658a Minor German translation update (add credit, and one mecanical correction)
Change-Id: I0c7d42d1da4f901252b7dd965a5d125b3dabc5e0
2024-06-29 22:09:00 -04:00
Solomon Peachy
16a3f6d41e FS#13436: Updated German Translation (Wilfried Winkler)
Change-Id: Id985c78761a5e7268343e8420fb36ac9efc1d2b5
2024-06-29 21:25:47 -04:00
Solomon Peachy
f3de4729ce Fix an issue building the fft plugin on greyscale targets on some simulator toolchains
The fft plugin uses pluginlib osd stuff _and_ greylib together,
which results in two conflicting declarations of the _grey_info struct.

Normally we treat the one in pluginlib as __weak but we disable that on
windows simulator builds, because the osd code ends up requiring it.
due to not using-function-sections and -fdata-sections on simulator builds.
Simply disabling all of that crap doesn't seem to help.

So instead, for simulator builds, mark the fft's struct as extern, only
using the one in pluginlib.

Change-Id: I1adf9acc265a60f91b8ac0fcad9d792e3240a9d9
2024-06-27 20:42:32 -04:00
Solomon Peachy
3611266d0f simulator: fix ipod6g simulator build.
This wasn't caught because the ipod6gsim target was inadvertantly left
out of the buildfarm.

Change-Id: Id0c250f29a999f8722f8911e061166f0e9c35502
2024-06-26 07:50:19 -04:00
Vencislav Atanasov
4691152f92 Add SysCfg viewer for iPod 6G in the debug menu
Change-Id: I4e142f40777c7f8ae58f2b46fc6a3ec4f12aa530
2024-06-24 21:00:25 -04:00
Solomon Peachy
f22a8c1c9b FS#13438: Updated Polish translation (Adam Rak)
(With a few "Intentionally same as English" additions by me)

Change-Id: I2a074a83addb5d18d4959e9556537d30def550ad
2024-06-24 12:50:26 -04:00
Solomon Peachy
b4bcabe532 Update english-us "Translation"
Change-Id: Idcebbb841bfa9df2e21abdd7626a7550d8b8f266
2024-06-24 11:17:23 -04:00
Solomon Peachy
a9254da767 build: Fix yellow introduced in 5d39d987c0
Change-Id: If17a04922006e1fa1f65543563da69f8bb6c503a
2024-06-24 10:59:27 -04:00
Roman Artiukhin
95d8168385 plugins: playing time: Increase buffer for size strings
10 is too short for some localizations (for instance russian 103.23МиБ requires 13 chars due to utf8 encoding). Use 20 instead

Change-Id: I4c7d1233358c8322545fce45dc798691410dd21e
2024-06-24 16:59:14 +03:00
Roman Artiukhin
5d39d987c0 plugins: playing time: Show info in 2 lines (header + details)
Improves readability on small screens.
See WPS -> Context Menu -> Current Playlist -> Playing time

Also, Russian translation is adjusted accordingly.

Change-Id: I23662ccb324f07a742179ff274453416bb8eff08
2024-06-24 16:59:14 +03:00
Solomon Peachy
4c9d346cb2 translations: Add VOICE_LANG_NAME for Czech.
Change-Id: I415fa9b49443954b2d8c839b3c70475048542b85
2024-06-23 14:18:47 -04:00
Vencislav Atanasov
4ea3732bd7 Add ATA serial number to Disk info debug menu
Change-Id: I73cc3d85ac28c7bd090859b6c19a5b67a41cfa04
2024-06-23 07:29:15 -04:00
Solomon Peachy
a1c526f35f lua: Fix Windows Simulator build.
(Basically, use the OS-provided gmtime() instead.  It's pulled in via
 another header we need..)

Change-Id: Ia09609a3a38dc58133a4a209cc803f0d9d0802f4
2024-06-22 10:06:47 -04:00
Solomon Peachy
231797dfa8 mikmod: use -DMIKMOD_STATIC to make building under windows happier
Change-Id: Ib42c336d592358c7b53bbd94d43c69ed9977679f
2024-06-22 10:03:01 -04:00
Solomon Peachy
fa6b6b6c2d talk: Don't kill the talk engine after voicing the "invalid voice" clip
Unfortunately, this brings us back to the "Default" behavior of simply
not voicing talk clips at all if there's no voice file.

Change-Id: I457ec4e3fcefaaffcbf6222fe01617bf0903518c
2024-06-22 07:03:59 -04:00
Solomon Peachy
e100daf343 voice: Voiced strings for INVALID_VOICE and LANGUAGE_NAME
* Voice generation script will create standalone .talk clips
 * These talk clips will be included in the rockbox .zip file
 * All .voice files will be included in the rockbox .zip file
 * Added LANGUAGE_NAME for all languages in the nightly builds

This way, any voice pack installed will give you a the langauge
voiced in the browser, and if the voice file fails to load you
will get a natively translated error message.

Change-Id: I6b627a51746cd088d6e200666dd326ea2745f55f
2024-06-20 17:31:31 -04:00
William Wilgus
8cb8a30f9d [Feature] talk.c allow Invalid voice files for selected language
(if it exists)

Change-Id: I3aacfc31e3e8a9cac7c9dae0e99c234e43da953a
2024-06-20 16:00:27 -04:00
Solomon Peachy
53a43522a3 mikmod: Fix null pointer dereference in mikmod plugin
While playing, the user can switch between
status/samples/instruments/comments screens.  The instrument names are
blindly passed to printf, which will lead to a null pointer dereference if
the instrument name is NULL.

...Which happens with some .IT modules that I have.

This should arguably be fixed in the printf implementation, but we still
shouldn't be passing in NULLs as string arguments!

Change-Id: I2899e2f7e10565c251e495752b3ef1bbccea82c7
2024-06-20 15:16:22 -04:00
William Wilgus
4d0d41a0f4 [Cleanup] abrepeat.c
ab_repeat_init() doesn't do anything and some of the checks are redundant

Change-Id: Icc861c57b119f541c0cbdb9e0074b78f1f4f10bb
2024-06-20 11:14:27 -04:00
William Wilgus
204551444e [Cleanup] viewport.c
hopefully the order of the events enable / disable don't matter
as far as I can tell it doesn't

Change-Id: Ia6bbe83ede788712e67aae6599585d6f79bfbcdc
2024-06-19 14:28:28 -04:00
Vencislav Atanasov
b3e6b12266 Prevent rebooting in early USB mode in case of a RAM disk
If disk_mount_all() fails at startup, the device should enter USB mode,
so the storage can be repartitioned/reformatted. After
unmounting/ejecting, the device is rebooted. Unfortunately if the
storage is a RAM disk, the data won't persist after a reboot, so this
patch tries to mount the storage again, instead of just rebooting.

Change-Id: I421a9fd8ae536bee07d292f27d1da0615456df62
2024-06-18 20:45:40 -04:00
Solomon Peachy
eb2146d683 plugins: add lang_is_rtl() to the plugin API.
So plugins can put stuff in the correct order, if they care.

Change-Id: Iac322bcb8cf78b37d3caef4c8d7b2a14923669f4
2024-06-18 12:50:52 -04:00