Commit graph

35362 commits

Author SHA1 Message Date
Solomon Peachy
d121aa3fe8 build: We don't need sh-specific flags in the pictureflow build.
Change-Id: I1e9ab4332cbeb5aabc01edf825eace6152347e0a
2021-03-25 12:20:15 -04:00
William Wilgus
3d9d2de34d Revert "lcd framebuffer - Bugfix #2 ensure proper alignment"
This reverts commit 3a5c5edbf6.

Reason for revert:pulling in system.h breaks SDL

:(

Change-Id: Ied5e08de4770aa0da87c14b304480448db349423
2021-03-25 06:34:58 +00:00
William Wilgus
3a5c5edbf6 lcd framebuffer - Bugfix #2 ensure proper alignment
-- apparenty 0x4 aligned doesn't work properly

requires 0x8 alignment at least for the h10 20gb
but enabled for all processors that define MEM_ALIGN_ATTR

Change-Id: I11edaab183b91a6d158f1f439f173b9b699dc914
2021-03-25 00:32:26 -04:00
Solomon Peachy
a53864ed4a build: Don't overwrite autoconf.h unless it has actually changed
This way we only rebuild the world if something relevant changed.

Change-Id: Ia7d104cadec185a3227acbf330bb3b359296f0fb
2021-03-24 18:50:58 +00:00
William Wilgus
ed99b305a9 Revert "lcd framebuffer - Bugfix ensure proper alignment"
This reverts commit ffee661ab7.

Reason for revert: <INSERT REASONING HERE>
iAudio M5  `IRAM' overflowed by 48 bytes

Change-Id: Id808a72c6eacabc562d53eac8acd36b45f678a97
2021-03-24 18:44:35 +00:00
William Wilgus
ffee661ab7 lcd framebuffer - Bugfix ensure proper alignment
-- apparenty 0x4 aligned doesn't work properly

requires 0x8 alignment at least for the h10 20gb
but enabled for all arm processors

assign the default framebuffer to the default_vp as well

Change-Id: I0b76c30f2ddb5d6d2f7c6a132e4081aee58da17b
2021-03-24 18:22:01 +00:00
Aidan MacDonald
94b40ed314 Add asynchronous I2C bus API
The driver core is based off of the i.MX233 I2C implementation and
should work on any platform.

Change-Id: I3b9c15e12a689ef02a51c285be08d29d35e323dc
2021-03-23 15:42:54 +00:00
Solomon Peachy
eedc8934a9 FS13279: Update Polish Translation (Adam Rak)
Change-Id: Ib05bc51e3fa082a20862929f318bfd2e50d0dd66
2021-03-23 09:01:41 -04:00
Solomon Peachy
9a8ec7e0df Update english-us "translation"
Change-Id: I757e6b96473f714497bab45d17e754b5e344a5c4
2021-03-23 09:01:41 -04:00
Christian Soffke
e862816773 Fix FS#13278: error message when playing a song with Rockbox for the very first time
The function to check whether a playlist has been modified
will now only try to resume a playlist, if the global resume index
is not -1.

This also means that replacing a finished (modified) playlist will not
produce a warning anymore if Rockbox has been restarted in
between. In that respect, the behavior is identical to
what it was *before* 46085c8978.

Change-Id: Ib95f89043274f1c72c75023d1506fc093aaf4cf9
2021-03-23 05:17:56 +01:00
Solomon Peachy
3682891772 FS13277: Updated Polish translation (Adam Rak)
Change-Id: Iae27b78c66ebd0d9d185efaeef9131b86505bf9f
2021-03-22 23:09:21 -04:00
Aidan MacDonald
4d83f7a192 Call powermgmt_init_target() before polling the battery
In the old position of the call, the first battery reading would
be made before initializing the target's power management code.

If the target needs to initialize before giving a battery reading,
then the first reading would be wrong and the power thread might
inappropriately shut down based on a false zero reading.

The new position avoids forcing special-case logic onto the target
power management code.

Change-Id: I483cfabe30c6881d80a1094fd526fa0065523d19
2021-03-23 03:03:57 +00:00
Dana Conrad
1c54c5227b Add disable setting for all softlock notifications
Tested on erosq

Added ability to disable all softlock notifications. Setting is
"Disable All Lock Notifications" under Advanced Key Lock
Settings.

Tested to make sure it doesn't interfere with backlight
exemptions, keylock exemptions, or first press enables backlight
only. When enabled, this overrules the existing Disable Notify
setting, which only disables the reminders when a button is
pressed while the device is already locked.

Also changed phrases in the Advanced Key Lock settings menu
to make it more obvious what the options do. Changed
LANG_ACTION_PLAY, LANG_ACTION_SEEK, and LANG_ACTION_SKIP from
"[button]" to "Exempt [button]". These language changes will
also affect the Backlight Exemptions list, but the wording
should be appropriate there as well.

Added LANG_SOFTLOCK_DISABLE_ALL_NOTIFY and LANG_ACTION_VOLUME,
changed LANG_VOLUME to LANG_ACTION_VOLUME in display_menu.c
for consistency.

Change-Id: I914fe154ba5d508a842165aea7c7755e4e6b9c57
2021-03-23 02:05:20 +00:00
Aidan MacDonald
bf9fdb13c4 Remove some HAVE_FUNCTIONAL_MODE bits
This was dead code introduced by 0662793c, and got missed
by 08ab3aea which should've removed it.

Change-Id: I87d02eab11479133c66524e58efc504ff093dfbd
2021-03-22 13:22:13 +00:00
James Buren
90ad920d44 debug_menu: revise how the ATA device bit is reported
According to the ATA specification this bit is used to indicate
either an ATA device or a CF compatible card. We use it currently
to indicate CF compatible status. So let's change the wording
accordingly.

Change-Id: Iee87197dee80e6225e4c62c40bceedfbc4e659c2
2021-03-22 13:22:00 +00:00
Aidan MacDonald
55805e13a4 Add new audiohw capability: POWER_MODE_CAP
This allows the user to make use of the DAC's power-saving abilities.
The two modes are "high performance" and "battery saver". This feature
is supported by the AK4376 DAC in the upcoming FiiO M3K port.

The setting is only a manual toggle right now, but in the future it
could be hooked up to the battery level (via another setting) so it
can be toggled automatically when the battery gets too low.

Change-Id: I482af6e2f969fcbdeb3411bd3ff91f866b12d027
2021-03-22 13:00:11 +00:00
James Buren
3a254a92c7 debug_menu: Fix compile error from previous commit
Change-Id: If01ba31a34be3e277a98adb93861aa2a19d8829d
2021-03-22 06:30:06 -05:00
James Buren
3f88512b3b debug_menu: report on ATA device type bits
This reports the ATA device type bits in a human readable format
so that users can easily identify what their ATA device is claiming
to be. This is mainly useful for troubleshooting a possible source
of compatibility issues with their DAP. As such this is mainly an aid
to CF modders.

Change-Id: I40f581fc0805a2753789452373cc6e179d8f3074
2021-03-22 05:51:32 -05:00
Christian Soffke
a8846e3003 Increase id3v2 max item size on high mem targets
As per multiple user requests:
https://forums.rockbox.org/index.php/topic,53319.msg

The acceptable size for id3v2 fields currently maxes out at
240 bytes on targets with more than 2MB of memory.

The comments field, especially for Podcasts, can sometimes
contain significantly more characters than Rockbox allows.

The limit for devices with more than 8MB of memory
is increased to 500 bytes for individual fields, and
to 1800 bytes for the buffer containing all fields.

Change-Id: I4593372229158756f102f67bcc4a43e64f632d58
2021-03-22 02:50:51 +00:00
Dana Conrad
d5676fcd90 If backlight is off and keys are unlocked, power button wakes screen only
tested on erosq

On devices with both a backlight and a softlock button, currently
pressing the softlock button while the screen is off and the keypad is
unlocked will wake the screen and also lock the keypad. Presumably, the
user's intention is to use the device when they hit the softlock button
in this state, so wake the screen without locking the keypad.

Change-Id: Ib00e1c37142e5d3d9317775de5cf0dd67f3f2569
2021-03-20 03:10:52 +00:00
William Wilgus
775645e649 Shortcuts.c fix regression from last bugfix
wiped out the lang id check which causes shortcuts menu to
pop error message when browsing to folders

shortcut menu uses the return to check for validity

Change-Id: I30061f034f99ea66844e45ea842e52843ea6062b
2021-03-18 13:23:24 -04:00
William Wilgus
48952d498d shortcuts menu bugfix wps context plugin fallthrough
if you ran a plugin from shortcut menu that originated from the WPS
next time you pressed select in the wps it would attempt to run the
wps context plugin

Change-Id: Id72eb6a20522586efeb479aea0b1c50b53942346
2021-03-18 00:46:43 -04:00
William Wilgus
29fa47d43d Open Plugin cache plugin entry when possible
leave plugin entries in ram and try not to save them unless necessary
doesn't use more space just a bit of careful ordering with the buffer

Change-Id: I1973e9ad4655c2544f596b37cee35601a0cffa94
2021-03-18 02:39:30 +00:00
Solomon Peachy
10b873c407 xduoox3: In ROLO, allow the ADC to be shut down.
The hang we were seeing was due to IRAM wonkiness. that's fixed.

Change-Id: Ie33a1110639fe51ad540e4e172e41f22f3bf875b
2021-03-17 18:09:40 -04:00
Dana Conrad
e049099165 erosq: Move ACTION_TREE_WPS to list context for use in Files and Database
The ACTION_TREE_WPS (held back button) was a part of the mainmenu context, moved to list context so it would work in Files and Database as well for consistency.

Change-Id: I3749d7b4fd041db80e81c1a79d30c2c7bdd64829
2021-03-17 13:29:00 +00:00
Christian Soffke
25c9f716ce Manual: Mention/reference viewing playlists through the File Browser
Change-Id: Ia81cc15fea65af52fede0b417e62e8f3d7f6bdc3
2021-03-17 13:13:14 +01:00
Christian Soffke
cdf99f8564 Manual: update description of Current Playlist menu options
- note that availability of options depends on player state
- present options that only insert tracks separately from those that also remove tracks
- add short intro for the latter.

Change-Id: Ie99ef7dff77da0cb136c761da1c11f83936f86f5
2021-03-17 12:49:43 +01:00
Christian Soffke
3bb78b468d Resume audio after user selects a new song
Music currently doesn't begin playing after the user has selected a new song from a playlist or using the database/file browser, unless another item was already playing or the previous player state was "stopped" but not "paused". This results in an inconsistent user experience. The user's likely intention is to immediately listen to a song they select regardless of the previous player state.

Change-Id: I574c3fe5c12fee544da0569182fc9573d307ac2f
2021-03-16 15:11:33 +00:00
Christian Soffke
576b56b35a Offer function to Clear List & Play Shuffled when playback is stopped
(as per multiple user requests)

When playback is stopped, Rockbox will display an option to
clear the current playlist and add selected tracks in random order, if
Shuffled Adding options are enabled in Settings.

Insert options will not be displayed anymore when playback is stopped to
lessen confusion.

Change-Id: I5e5819149027e63e5c6f30213e838c0d7e7de8d5
2021-03-16 13:05:12 +00:00
Christian Soffke
46085c8978 Restore playlist state as necessary before checking whether current playlist has been modified
Rockbox would previously not present a warning when you were about
to replace a modified playlist after restarting the player,
unless you first resumed playback.

Change-Id: I9752228f84b105747e41ce6e1c8f95f0f9f14c10
2021-03-16 12:56:18 +00:00
Solomon Peachy
efe493de3d FS13274: Bump max battery capacity for iPod Videos to 3000mAh
3rd party batteries can go this high for users that have performed SSD mods.

Change-Id: Icb34ce08e5ea345bc0fdb555bd3fd8ea9cf9e0d9
2021-03-15 12:17:30 +00:00
Christian Soffke
2d8e0f7c90 Customizable Current Playlist Submenu
Options to add shuffled tracks and to queue tracks in the
Current Playlist Submenu can now be hidden, or the latter
can also be put into its own submenu.
Users can customize this in Settings  by going to
"General Settings - Playlists -> Current Playlist" and
choosing from "Show Shuffled Adding Options"  (No / Yes)
or "Show Queue Options" (No / Yes / In Submenu).

Allows for the paring down of the set of choices to
a minimum of the 4 more common ones for adding tracks
to a dynamic playlist (coming from the current total
of 11).

Defaults have been set so that users have to actively
modify their settings to notice any difference, which
makes it unlikely that anybody's workflow would be
negatively affected by this change.

Change-Id: Ibe48fc4da2c79f54cd7272df8e1e3ba9955203e5
2021-03-14 23:36:03 +00:00
Dana Conrad
99383a0f9b erosq: change keymap to fix back button
Back button's ACTION_TREE_WPS state in the mainmenu context causes
a jump back to the main menu root from anywhere in the settings tree.
Changing it to a held button fixes this.

Also changed the ACTION_STD_CANCEL functionality of the back button
in the standard context to be on release, just because I think
it feels better to use.

Also added myself to docs/CREDITS

Change-Id: Ia5892f4d995431abe0616f00fd5cc8368dd750a2
2021-03-14 17:06:22 +00:00
Solomon Peachy
6b39e23074 Updated Italian Translation (Alessio Lenzi)
Change-Id: I7b98b1c6af99f2e43d9b4dc4dc46f63ed8b0192c
2021-03-14 13:04:31 -04:00
Solomon Peachy
406136f7c7 Update english-US "translation"
Change-Id: Ifecdc68911c7805e9744647cb1510a2a474afff6
2021-03-14 13:04:31 -04:00
Solomon Peachy
92a0ab8789 sound: add sound_numdecimals() to round out the sound setting query API
A necessary prerequisite for fixing FS#13272

Change-Id: Ice288af39a4f08bea376f920d855932bdac69a52
2021-03-14 12:33:49 -04:00
Solomon Peachy
714f7a21da erosq: Have tree context fall back to list context rather than mainmenu.
Allows 'back' to cancel vs always popping into wps, for example.

Change-Id: Ia9f27f884c6076906ff023d666872c566c60aa37
2021-03-13 22:17:26 -05:00
Solomon Peachy
b44dd11b6b Add soft-keylock to standard context on the x20/x3ii/erosq targets
tap power to lock!

Change-Id: I819c90757a9082eab485828727d76e5ed33a29ed
2021-03-13 22:17:26 -05:00
Christian Soffke
3d2783f367 Update manual (Working with Playlists)
- Bring description of "Create Playlist" command up to date
- Explain that entries added by Insert Shuffled aren't contiguous
- Introduce Queue options in a short paragraph

Change-Id: I1104449f72a78794368b6d8c4d0574bb645c93b2
2021-03-12 19:20:18 +01:00
Solomon Peachy
2743bde09b ATA: Increase delay to power-off when device doesn't support ATA SLEEP
The storage subsystem aggressively issues SLEEPNOW events when idle
and power off happened a fixed 2s later.  This turns out to not be
enough time for FC1307A (eg iFlash) adapters to flush outstanding writes.

So, when we detect a lack of PM support, increase the poweroff delay to
5 seconds to compensate for not being able to issue the ATA SLEEP command.

Hopefully this is enough time.  If not, we will have to re-disable PM
entirely when we detect these popular adapters.  Thankfully that is now
just an #ifdef away.

Change-Id: I4112b9acb965973d81f70483bd9d595461c7301c
2021-03-12 10:04:52 -05:00
Caleb Connolly
04c29984ce
ipod6g: increase max battery capacity
It's possible to get up to 3000mAh batteries for this device, although
it requires that you use an iFlash adapter to make enough space.

Signed-off-by: Caleb Connolly <caleb@connolly.tech>
Change-Id: I0d0d02aa30caffcae4a7e8c805516a1266eef359
2021-03-12 14:39:03 +00:00
Christian Soffke
043e8a0c5c Manual: Updates to Playlist Catalogue menu
Keeping in sync with how Rockbox currently works:
- Context menu doesn't include an option to "View Catalogue" anymore
- What used to be the "Playlists" menu is now the context menu of the "Playlist Catalogue"
- Context menu includes an option to "Reset Playlist Catalogue Directory"

Also updated info regarding the "Create Playlist" option.

Change-Id: I717bab9d26a9a08fb95083b67a779541e00a0fd3
2021-03-11 19:43:48 +00:00
Christian Soffke
76c9e3f558 Use "Save" instead of "Save Current Playlist" in Playlist Viewer
LANG_SAVE_DYNAMIC_PLAYLIST refers to dynamic playlists.

A playlist being edited is only the "current playlist" in case of a
dynamic playlist. When other playlists are edited, the current
playlist is different from the edited/selected playlist.

(A possible motivation for differentiating between the two here
is because "Current Playlist" is already the title of a submenu in that
same context menu where the name refers to the dynamic playlist
and not to the selected playlist. "Save Current Playlist" is also used
in the Playlist Catalogue's context menu for example, referring to
the dynamic playlist.)

Change-Id: If320b3c804bb98fccb2e945ae1a30ffc92673c7e
2021-03-11 19:43:48 +00:00
Christian Soffke
adac2c8880 Fix "Create Playlist" option in context menu of "Playlist Catalogue"
If the previously selected directory in the file browser was the playlist directory,
creating a playlist with all files wouldn't work due to the fact that
PLAYLIST_CATALOG_DEFAULT_DIR has an unexpected duplicate leading '/'.

The initialize_catalog function makes sure to remove this from playlist_dir.

Change-Id: I0f8300140fa23321d362d2a75dfaf82be0b4b12a
2021-03-11 19:43:48 +00:00
Christian Soffke
49c230f630 Manual: fix spelling
Change-Id: Ief54632bd3c6e672e0574226f5d7edf760b43875
2021-03-11 19:43:48 +00:00
Solomon Peachy
bd507fc7b4 ATA: When device doesn't support powermgmt, only gate ata sleep command.
The FC1307A ATA->SD chipset (used by the common iFlash adapters)
doesn't support mandatory ATA power management commands, leading to
massive data corruption if they were issued.

A workaround was identified (54629073ae) that basically disabled all of
rockbox's power management code for these adapters, which extends well
beyond the specific ATA commands issued.

This patch moves the gating test to the issuance of the actual SLEEP,
so that the rest of rockbox's PM code can function as intended.  This
allows the device to get powered down when idle, yielding potentially
significant improvements in battery life.

Change-Id: Ia13e2405243fe5efe6f68c3a549ab4933567790b
2021-03-11 19:28:52 +00:00
William Wilgus
eb9f05f835 ImageViewer Fix jpeg decoder
Image viewer compiles decoders as a plugin and removes CRT0
A  resuklt static vars do not get initialized in decoders

Change-Id: I72da326967c7b404b297897000f82852661a7ebb
2021-03-11 03:43:56 +00:00
Solomon Peachy
87e37a4d48 xduoo_x3ii: Improvements in the meymappings!
* PREV/NEXT now swapped so they do what is expected in most contexts
 * List and setting context retains prior behavior
 * Enable the ADC that reads the headset remote and map the keys.
 * As ADC-based remote "events" arrive as press/release pairs,
   delay the button release.

Change-Id: I22d4eac3bfe1573b50eca795cf377bdafdeb5336
2021-03-10 21:35:44 -05:00
Solomon Peachy
a87abdb28f Special-case the storage names for hibylinux-based hosted targets
Change-Id: I66a4eebe244e9656f851d83aae0346af4367728f
2021-03-10 19:01:42 -05:00
Solomon Peachy
7201c3a685 fiiom3klinux: Fix a build warning.
Change-Id: I1355c87d17376422d54b259db2078ea5f886bedb
2021-03-10 19:01:12 -05:00