1
0
Fork 0
forked from len0rd/rockbox
Commit graph

37023 commits

Author SHA1 Message Date
neofright
ebb7f33a9f Fix backlight undefined preprocessor typo
Change-Id: I8df1000def19688df57fab0c4c49e0c099e8060b
2023-10-16 20:36:48 -04:00
Solomon Peachy
5c791f2d2b lang: Update english-us "translation"
Change-Id: Icafb2252898483075ce02d3d7573c989917af8ec
2023-10-16 17:33:31 -04:00
William Wilgus
3c89adbdbd [Feature] lastfm_scrobbler don't return to plugin on WPS resume failure
if resume playback on start was set and there was nothing to
resume the menu was entered

Change-Id: Iab5f48e94f3de68091cf42781d6e3ab4575c1a84
2023-10-11 07:12:31 -04:00
Christian Soffke
75befe19ef Hide Bookmark menu for new dynamically generated playlists
The bookmark menu with the option to create a bookmark
was inadvertently displayed for new dynamic playlists,
that had no associated folder or playlist file on disk.
(e.g. after selecting some track from the database for
playback), until the playlist was modified by the user.

Change-Id: I9d6809e4d03603c651459415327f28e38162ad53
2023-10-10 12:03:52 -04:00
William Wilgus
a0c29d8857 db_commit swap threads, add ability to cancel, backup/restore
extends the db_commit plugin with the ability to delete the database
backup, restore, dis/enable auto-commit

Change-Id: Id61546e463d151399d2ac8459480e6adc5d6fac6
2023-10-10 05:48:37 -04:00
William Wilgus
eb13628bb8 [BUGFIX] yesno.c use TIME_AFTER macro
Change-Id: I52561dd70e182b3540638d6a7c05474e14fa7a2e
2023-10-09 20:23:03 -04:00
William Wilgus
ff0055ba6b list allow VOICE_ONLY strings
Change-Id: Ie42ba8de986a10f68e05af0ecdb735b020aa9d1a
2023-10-09 08:40:06 -04:00
Solomon Peachy
57713f6308 ipod: Support IAP remote MENU/SELECT/UP/DOWN keys in MODE2
Only the primary contexts (standard, wps, quckscreen, tree, radio)
handle the new keys so far.

Todo contexts:  Settings, keyboard, pitchscreen, bookmark, & recording.

Available docs for MODE4 don't list anything other than playback
controls, so it's not clear if there is a path forward here.

Change-Id: I91908092f75d96813e2e155e447129ba15f58051
2023-10-06 11:31:59 -04:00
William Wilgus
17a8a54780 [BugFix] tagcache/tagtree remove static buffer from tagcache_get_next
remove sizeof(buf) infavor of the actual size provided by bufsz

Change-Id: I9fc1b2ce0937526d7acbb98738c8eb1aef15683f
2023-10-06 09:17:25 -04:00
William Wilgus
2e184d129d [FixRed] db_commit
Non Tagcache targets

Change-Id: I0e6c1e8551859863105f97f393b308bca947c6d4
2023-10-05 22:59:05 -04:00
William Wilgus
f3baff762a [FixRed] db_commit add rb-> to plugin function
Change-Id: I9c47142c0075df47149805ec87effc6ee0b94a24
2023-10-05 22:33:01 -04:00
William Wilgus
f671c3339e [FixRed] db_commit plugin
Fix Hosted and Touchscreen targets

Change-Id: I3c7ef3ca6ebc0703e0455f3405b683dff1384864
2023-10-05 22:07:03 -04:00
William Wilgus
1ed640da24 [Feature] db_commit plugin allows a more verbose commit
prints logf messages to the screen buffer and dumps the
output to .rockbox/db_commit_log.txt

logs warnings about tags that can't
be displayed by the current font

adds an option to the tagcache using the file
.rockbox/database_commit.ignore to prevent auto commit

Change-Id: Ib381b3b6d9dd19d76c95d0e87e605f7378e29674
2023-10-05 21:24:37 -04:00
William Wilgus
6634a60bf0 tagcache/tagtree remove static buffer from tagcache_get_next
callers can supply their own buffer

Change-Id: I8996ecfb88e30926296a0cb0563cf6c46977323e
2023-10-03 21:54:19 -04:00
William Wilgus
eee48dca39 tagcache reduce stack usage in tmpbuf_insert and build_index functions #2
move some functions around for later ifdef for tagcache commit plugin

used fixed width variables in struct temp_file_entry

Change-Id: I7f66b15cd1bdf5abcefa700086d390d22d3b5e21
2023-10-03 13:56:00 -04:00
roman.artiukhin
69f62b7891 Codecs: mp4: Fix seek to end of track
Fix possible crash due to out of bound access.

Fixes FS#13371

Change-Id: I90d28fa89ceb22e6561d33abc5f2b4c7f32d323c
2023-10-03 18:36:22 +03:00
William Wilgus
b64d46d9d4 Revert "tagcache reduce stack usage in tmpbuf_insert and build_index functions"
This reverts commit 3bb3e3d1a6.

Reason for revert: lifetimes do not overlap but patch has issues

Change-Id: I3f831599dd1523c156205aa6565ff8afc2f4d8f6
2023-10-03 11:07:49 -04:00
William Wilgus
3bb3e3d1a6 tagcache reduce stack usage in tmpbuf_insert and build_index functions
move some functions around for later ifdef for tagcache commit plugin

used fixed width variables in struct temp_file_entry

Change-Id: Idf9c37d67fc048550366e3d3504601a19c31f31e
2023-10-03 10:08:13 -04:00
roman.artiukhin
7616822fbb Codecs: mp4: Ignore decode errors till next chunk present in lookup_table
In files with gaps between chunks and reduced lookup_table we can't properly detect all gaps in m4a_check_sample_offset. So just ignore decode errors till next chunk present in lookup_table

Change-Id: I317864dce6a2251cdb6ddb8c0ad4d7c1640cb7a1
2023-10-02 12:54:57 -04:00
William Wilgus
f017ef9617 [FixRed] android yesno dialog
add a dummy fn with not for future dev

Change-Id: I2afc06bb1eaeb19b4972b625b6245c2361d8b8e7
2023-10-01 12:21:54 -04:00
William Wilgus
1c47722226 [Feature] add a prompt to database commit on start-up
adds a new function:
gui_syncyesno_run_w_tmo(ticks, tmo_default_res, main_msg,yes_msg, no_msg)

when a database needs committed on start-up
a yes no prompt will appear if not answered within 5 seconds
it defaults to Yes

if instead you choose No next start-up you will be asked again

you could rebuild the db still and waste time but it wouldn't hurt
anything so I don't think that path needs blocked

Change-Id: I58411f6e6bfebb6f142d99f33a1e8885ae7785c1
2023-10-01 11:51:38 -04:00
Aidan MacDonald
7ccbd705f4 playlist: Rework playlist modified detection and dirplay
The modified state is now an explicit flag that has to be
set whenever a user-triggered modification occurs. This is
recorded in the control file to ensure it doesn't get lost
after resume. There may be some places I missed where the
modified flag should be set/cleared, but it seems to work
well enough right now.

Change-Id: I3bdba358fc495b4ca84e389ac6e7bcbef820c219
2023-10-01 11:05:29 -04:00
Aidan MacDonald
781f955aa2 Remove structec API
In my opinion this API is just not very useful - design is kind
of questionable. There are hidden limits on the struct size and
bugs on 64-bit platforms due to assuming sizeof(long) == 4.

At the end of the day, the only major user was the tagcache and
it's actually less code size to do endian swapping manually.

Change-Id: I451c7f1a10cf3e28744c32c0f1f39a710d5cc100
2023-10-01 12:10:41 +01:00
Aidan MacDonald
d3b588678f Remove structec API from tagcache
Replace structec usage with explicit endian swapping routines
for the various data types. Simplify endianness detection when
loading the database. Make foreign endianness support optional,
but leave it enabled for now.

Change-Id: Ia1efb72c8830f63bbe0e51f7271c4552b5279878
2023-10-01 12:10:41 +01:00
Aidan MacDonald
825ec0b601 Remove structec API from debug_menu.c
Change-Id: I6b35bcdc4e676e81faf5353ca01ba4bd728ffb14
2023-10-01 12:10:41 +01:00
Aidan MacDonald
18fc68401c Remove structec API from talk.c
Change-Id: I6e3bae2a893c932b67b4b5a7c4bf46060e5dc32a
2023-10-01 12:10:41 +01:00
Aidan MacDonald
1131320d48 Remove structec API from codecs
Change-Id: I1e67582c0521e6354b0175a11fcf690ae40dbd88
2023-10-01 12:10:41 +01:00
Aidan MacDonald
4745970974 playlist: Use PLAYLIST_QUEUED instead of PLAYLIST_QUEUE_MASK
We don't need two names for the same 1-bit field.

Change-Id: I71ed61198da8d6e4bf4d449d8704982918099f7d
2023-09-30 09:03:58 +01:00
Aidan MacDonald
a6eaffe40d powermgmt: Remove CURRENT_USB
CURRENT_USB overrides CURRENT_NORMAL when USB is plugged.
It defaults to 2 mA and wasn't defined on any target, but
this doesn't make sense to me. After all, the current
drawn by the CPU or other components won't change just
because USB was plugged in.

As far as I can tell, the only side effect of removing
this is reducing the estimated USB charging current.
This might mean CURRENT_MAX_CHG should be increased by
CURRENT_NORMAL on some (all?) targets to compensate,
but I'm not sure which targets would be affected.

Change-Id: I5aa5c3893ae1e4ce6b8803ab4e8c897d534eb08f
2023-09-30 03:21:52 -04:00
roman.artiukhin
d05f6aac2d Codecs: mp4: Skip FOURCC filetype chunk check
Instead of FOURCC it needs ignore-case text match. Also value can contain \0 ('m4a\0' instead of expected 'm4a ').But let's simply skip it and let decoder handle it.

Change-Id: I87eefcabbc9010481286257c26cee09e61d1221c
2023-09-29 08:21:27 -04:00
Aidan MacDonald
fee5013514 disk: Remember the partition number for each volume
Change-Id: Ied6b0a558eec57435f9299f3e3326714f5e3cdca
2023-09-28 18:07:26 -04:00
Aidan MacDonald
028f283ee5 disk: Add "struct volumeinfo" to store volume related info
Change-Id: Ifd338d38db127d7896c43d1d25e70d0fae29fa1c
2023-09-28 18:07:26 -04:00
Marcin Bukat
440fcb86d6 ATJ213x: minor changes to hwstub port
1) Make use of $gp addressing. This saves some bin size and makes
   code slightly faster.
2) Substitute jr with simple j instruction in exception handling.
   Code is small and j can easily encode target address.
3) Remove nop after eret in interrupt handler. According to mips32r2
   ISA manual eret does not have branch delay slot.

Change-Id: If63feb12eef189f08f7b50c832a8091be5e6f570
2023-09-28 22:04:11 +02:00
Marcin Bukat
0bfdb73b4d ATJ213x: Convert register description to v2 format 2023-09-27 22:49:38 +02:00
Marcin Bukat
609db995d5 hwstub: Remove code duplication in ATJ213x exception handling 2023-09-27 22:49:33 +02:00
Marcin Bukat
bf81914217 hwstub: Force alignment of the context buffer
Exception handling code assumes at least word alignment of the
context buffer. So far we were lucky that compiler placed it
correctly but after compiler upgrade I was hit by the bug
caused by missalignment of the context buffer.

Credit goes to pamaury
2023-09-27 22:49:09 +02:00
William Wilgus
4c533475d8 codec.h fix ifdef for older compilers
elifdef appears to be finally supported in C23
elif defined() works everywhere

Change-Id: I8ac6c215bedc81cc9ea8f79850be40cef131594b
2023-09-26 15:03:13 -04:00
roman.artiukhin
ec2c507e60 Support per file logging with LOGF_ENABLE in codecs
Codecs mostly use custom LOGF define for logging (i.e. see aac.c). Now such logging can be enabled in single file with #define LOGF_ENABLE

Change-Id: I36312fbcd2d9166fb1fe5ead31e7354342d8828d
2023-09-26 08:38:31 -04:00
William Wilgus
62db16c82c [BugFix] bookmark.c root_dir bookmark
in some calls to generate_bookmark_file_name()

len gets specified in order to not NULL terminate the buffer string
unfortunately, I missed the root_dir case in g#4839

Change-Id: I24d1360bbe72e6a1b2ed3332ff5854d039d58ca5
2023-09-23 11:19:59 -04:00
William Wilgus
fcc82dfdca [BugFix] REPEAT_ONE manual track skip
Still having problems with determining the type of track change

lets try just watching the audio_next/prev functions

Change-Id: Ie4233ff4d4bf49792a6549d7bcd169ff4b1afd20
2023-09-23 00:52:38 -04:00
roman.artiukhin
a45204f5df Codecs: mp4: Fix seek in files with single element in lookup_table
lookup_table offset shouldn't be zero terminated.
And fix possible out of bound access.

Change-Id: I212a5fcc1868a2ca519b0052b170e836276fe9de
2023-09-22 10:37:38 -04:00
Solomon Peachy
57a47ef67a calculator: Fix compile issue in mingw32
Change-Id: I7d70b4f0d6fd574575298b0709e78b9096801c07
2023-09-22 10:32:09 -04:00
Solomon Peachy
74ded2bdd7 settings: Fix up the remaining stragglers from 8cc3266b
Change-Id: I20e98d1e7cf13a59194f62935a8f46e96f83a1f9
2023-09-22 10:31:00 -04:00
Solomon Peachy
8cc3266b2a Settings: Rename INT/BOOL setting type enum to RB_INT/RB_BOOL
....Because INT and BOOL are already defined in mingw32.

Change-Id: I28ab8189c00002c8f68bc9d0c23d2ae78d9e33d0
2023-09-22 10:00:46 -04:00
Christian Soffke
cb3a6877fc RFC: Turn Playing Time function into plugin
Since this function already requires hitting the
disk, it may make sense to turn it into a plugin.

A minor advantage (apart from cleaning up onplay.c
and saving RAM) is that you can now access the menu
not just from the WPS context menu, but also from
the Shortcuts Menu or using the WPS plugin shortcut.

On the other hand,  TSR plugins would have to be
terminated when Playing Time is launched, as is
already the case for other plugins such as PictureFlow.

Change-Id: Iea85229486887463ffc52f05e33e2340437f69a4
2023-09-20 23:57:39 -04:00
Christian Soffke
6ac55adc88 Fix suggested file name when saving dirplay playlist
The suggested name was identical to the complete path
of the played folder, with a slash at the end, which,
if accepted, resulted in a file called only ".m3u8"
being saved there.

In case the path contained one or more dots, the string
was also stripped of the last dot and all chars following it.

Use Playlist Catalogue as the destination folder instead,
and pick last path component as the file name.

Change-Id: Ia2b7f7ebca746613d650bbab6d7a62ca1106efc6
2023-09-21 05:09:39 +02:00
Christian Soffke
8f3cb75df0 Delete bookmarks when replacing unrelated playlist
After saving a playlist to an existing file with
a different name, any saved bookmarks for the old
playlist were still displayed for the new one.

Change-Id: Ic2666bdaf7ec6e25456283fc15760c568dd7ac38
2023-09-21 04:55:25 +02:00
Christian Soffke
e43c703480 fiiom3k: Recording keymap adjustment
Long button presses to create a new file
were in conflict with button presses to
play/pause.

Pressing SELECT is now used to create a new file
(and start recording, if stopped),
pressing PLAY/PAUSE will start or pause recording.

Change-Id: If2e568b9b05500d73fd54b691262a64d1a0ff487
2023-09-21 04:48:57 +02:00
roman.artiukhin
35150b83d4 Codecs: mp4: Fix sbr detections for some files
Use logic from libfaad/mp4.c AudioSpecificConfig2 for sbr detection

Fixes FS#12856

Change-Id: I235aa27830aa99f1307b303347f7affe7deafbe3
2023-09-20 10:03:27 -04:00
roman.artiukhin
951e239517 Cache folder album art
Fixes FS#13372

Change-Id: Ia50f5252cb8375a97c093abeda89d830bf003ff3
2023-09-20 10:01:47 -04:00