Commit graph

35785 commits

Author SHA1 Message Date
Solomon Peachy
412e76b487 configure: --no-ccache must disable CCACHE for $HOSTCC too!
Accomplish this by setting CCACHE_DISABLE=true

Change-Id: Ie930fc4e828ebb7a29234c1a8f371980489d5668
2021-09-20 20:14:37 -04:00
Aidan MacDonald
672bbe434b usb: rename usb_drv_recv() to usb_recv_recv_nonblocking()
IMHO the current name is somewhat misleading:

- usb_drv_send() is blocking and we have usb_drv_send_nonblocking()
  for the non-blocking case. This inconsistent naming can only
  promote confusion. (And what would we call a blocking receive?)

- Other hardware abstraction APIs in Rockbox are usually blocking:
  storage, LCD, backlight, audio... in other words, blocking is the
  default expected behavior, with non-blocking calls being a rarity.

Change-Id: I05b41088d09eab582697674f4f06fdca0c8950af
2021-09-20 22:41:29 +01:00
Aidan MacDonald
99f333c64f usb_hid: fix accidental fallthrough
Successful SET REPORT requests would spuriously fail because of the
fall through to GET REPORT.

Change-Id: I8e7d1a1120afc6975d07d47b11c12c9e9ca51dd2
2021-09-20 17:38:56 -04:00
James D. Smith
483563a1b2 Fix the build for 67716c6b.
Change-Id: I3917f64313345cf39d6105a0c0bc2f2a4617be8a
2021-09-19 21:28:10 -06:00
Dana Conrad
0ca0940f01 Make USB Charging default value configurable per device
A reasonable default assumption for a user
would be that they can plug their device into
a USB AC adapter and it will charge with as much
current as it reasonably can. With the previous
default, an AC adapter will only do 100mA, basically
a trickle charge.

Make this configurable default per-device, so as not
to break old devices without testing.

Define TARGET_USB_CHARGING_DEFAULT to USB_CHARGING_FORCE
to use the new default.

Tested on both erosQ Native and M3K.

Change-Id: I77265d356a41d67357ebc6e9f7e0c25a37b74931
2021-09-19 21:13:09 -04:00
James D. Smith
5765deb08e Add Fabrice Bellard to the CREDITS.
Change-Id: I62ec626007408d1d760b048cfd4899128c54be4a
2021-09-19 21:06:09 -04:00
James D. Smith
760277e096 Dir cache: Fix resume of relative path playlists.
Slightly modified from original patch by Fabrice Bellard.

Change-Id: I9ae04fa460f0f1b9c616e6f99505d4c5d4358f68
2021-09-19 21:05:58 -04:00
James D. Smith
67716c6b46 Playlist Viewer: Add file properties to playlist entry menu.
Change-Id: I8fb0da7d117e4a011345bae7f6137ab3253fea4f
2021-09-19 21:05:38 -04:00
Solomon Peachy
5312fe6bda FS13255: Partial update of Hungarian Translation (Gergely Békési)
(plus a lot of patch rebaseing by myself)

Change-Id: I184638147daceb5b60838763bc3d12a2959b337f
2021-09-19 00:05:48 -04:00
James D. Smith
60125f6bc9 Pictureflow: Update for tag_virt_canonicalartist.
Change-Id: Ie9fc906b6f863347174b383b01514961b307c4f1
2021-09-17 21:42:05 -04:00
James D. Smith
fb04b9b5ee Database: Merge 'Album Artist' entry with 'Artist' entry.
-Link 'Artist' entry to canonicalartist field.
-Convert all possible users of artist field to canonicalartist.
-Tweak 'Same as current -> Artist' menu to also include albumartist field matches.

Change-Id: I52e87cc0bd6ca50f1645447819ca55669df37354
2021-09-17 21:42:05 -04:00
James D. Smith
fcb9c06852 Database: Fix tag_albumartist; new tag_virt_canonicalartist.
Change-Id: I1d887f8a9d6690b8286407d2502432b0497cfeb9
2021-09-17 21:42:05 -04:00
Solomon Peachy
cb0f4599e1 FS#13304: Updated Dutch translation (Issa Beganović)
Change-Id: I8daaac6feea07eb114259b1e39338979e8a630fa
2021-09-17 21:30:22 -04:00
Solomon Peachy
7bf3b08303 FS#13309: Updated Polish Translation (Adam Rak)
Change-Id: Ie808def000b00514b2929a2aaef6082fc7daa9be
2021-09-17 21:22:23 -04:00
Solomon Peachy
52d4339c3f Synchronize english-us "translation"
Change-Id: I6cdedbced816bce223b9f7579d5fcd0af091f81a
2021-09-17 21:22:23 -04:00
James D. Smith
78f0dc8175 File properties plugin: Add bitrate.
Change-Id: I6160c50685ce1615ef295a472f25cb608b2e6feb
2021-09-16 17:52:53 -06:00
James D. Smith
a9d3e09611 File properties plugin: Add frequency.
Change-Id: I27453b39b5e4a6b4f97eff27a36c8ef2772ec092
2021-09-16 17:52:53 -06:00
James D. Smith
41e471e50e File properties plugin: Add disc number.
Change-Id: I98c9ccdffdaae8c5c9117212365ae82b9bf2147c
2021-09-16 17:52:53 -06:00
James D. Smith
5ddfd37a8c File properties plugin: Add track.
Change-Id: Id8707dc28bf3a9c029066bb55ff584662b2cee6b
2021-09-15 21:57:28 -06:00
James D. Smith
7035e2e2b9 File properties plugin: Add year.
Change-Id: I160507a67354c775ca9695c7e71303fe16beb6db
2021-09-15 21:57:21 -06:00
James D. Smith
3acbab15a1 File properties plugin: Add composer.
Change-Id: I7123ad21af15483594b9d247b89f7712c3a1a6f0
2021-09-15 21:57:13 -06:00
James D. Smith
f3874bda64 File properties plugin: Add comment.
Change-Id: If6b7650f858134098c3628f6e144e8c8d2a242ef
2021-09-15 21:57:06 -06:00
James D. Smith
f971200cee File properties plugin: Add genre.
Change-Id: Ib28e542c51f6e037a31e6d14763ce2abaca248b9
2021-09-15 21:56:58 -06:00
James D. Smith
7882e093b2 File properties plugin: Add album artist.
Change-Id: I150e11ba309953959d374898a63d4250a90651bb
2021-09-15 21:56:50 -06:00
Christian Soffke
67c4231e34 iPod mini backlight initialization
Fixes backlight not turning on after booting (tested on an iPod Mini 2G).

backlight_hw_init() copied from iPod 4G.

Change-Id: I9c32ca5ecd3dc74ea997e6cb843da79d303b0615
2021-09-12 13:35:35 -04:00
Dana Conrad
4ba3231457 Fiio M3K: Fix Yes/No Keymap
The yes/no keymap does not fall back to the Standard
keymapping, so keys other than Back and Power do not
cancel, though the prompt says "any other key".

Adding fallback to standard context as well as explicit
Left, Right, Vol+ and Vol- as they're not present in
the standard context.

Tested on physical m3k

Change-Id: I06409bad8dcde6586e1bf773309ef0ce464cc060
2021-09-05 16:22:25 +00:00
Dana Conrad
17263a813b ErosQ (both): avoid clipping due to DC offset bandaid
Set the maximum volume on both hosted and native ports
to -2 dB.

Verified behavior here on native and by borkitall on irc
for hosted.

Change-Id: I3aebc2bb4b9294a4137a33694c83139c0d76099a
2021-09-05 15:50:21 +00:00
Solomon Peachy
3e52c7c734 rockboxdev: Add 'g++' to the list of required tools for building toolchains
Change-Id: Ia7e4922476c5107e758ee37e80a4553a9441e125
2021-09-03 22:03:54 -04:00
William Wilgus
a8253c57dd lib/argparse fix red
Change-Id: I7bbac6de6319bf86189f079b7330d650ea95de3c
2021-08-31 17:23:47 -04:00
William Wilgus
c04a944c98 lib/argparse scale decimals to int for return to user
scales the fractional portion of the parsed number
by ARGPARSE_FRAC_DEC_MULTIPLIER

   Example ARGPARSE_FRAC_DEC_MULTIPLIER = 10 000
   meaning .0009 returns 9   , 9    / 10000 = .0009
           .009  returns 90
           .099  returns 990
           .09   returns 900
           .9    returns 9000
           .9999 returns 9999

Change-Id: I38573dbc1877760b0d52df8686a6647894d76196
2021-08-31 21:05:36 +00:00
Dana Conrad
d929444a41 iPod: Fix Yes/No Keymap
Add fallback to CONTEXT_STD and add explicit Play button cancel -
Play button is not present in standard context, so it won't do
anything if unknown actions are ignored.

tested on ipod simulator

Change-Id: Ic259fa97b6195ebbc66fcfae31265cc7aeefa421
2021-08-31 18:59:42 +00:00
Aidan MacDonald
c11ed99cb4 bugfix: redraw yes/no screen after a full skin update
This fixes a bug reported on IRC:

1. Set 'bookmark on stop' to 'ask'
2. Play a track from the file browser
3. Stop playback, yes/no screen briefly flashes then disappears.

The screen still handles input correctly but the prompt will not
be displayed on the LCD. Long story short, get_action() can cause
the skin engine to do a full redraw which cleared the screen and
erased the prompt.

There is a special event, GUI_EVENT_NEED_UI_UPDATE, which the list
code uses to avoid precisely this problem.

Hooking up a handler for this event and redrawing the yes/no prompt
fixes the bug.

Change-Id: If3c26655540c13b488b3a11bd46e1d60d4111469
2021-08-29 21:15:34 +01:00
Aidan MacDonald
6322e66219 Remove long-deprecated old style EQ settings
These were deprecated by 1eb17dc9f4 back in 2013 just prior to the
3.13 release. We've had 3.14 and 3.15 since then and I guess nobody
will complain if we finally remove them (fingers crossed...)

Also fix a line which got missed when converting hardcoded numbers
to EQ_NUM_BANDS in that commit.

Change-Id: I79dd71f1f2810bf19bc135999868fafc5fee6e04
2021-08-28 13:23:34 +00:00
William Wilgus
965572705b plugin lib/arg_helper parse 'command line' args
add a helper function to allow plugins to parse the parameter string
passed into plugins
support included for bool, char, string and numbers+decimals

Change-Id: I39f35c8bd3c21b83097a538c19f46d362c468fa4
2021-08-27 05:19:28 +00:00
William Wilgus
cab8cea0f0 lcd_putsxyofs 16 bit lcd_mono_bitmap_part [AS] part duex
'Bugfix' mono_bitmap_part reads ahead in the buffer,
if the height is <= char bit pixels other memory gets read
found with [Address Sanitizer]

also g#3332 since this is clearly a problem across the code
instead place the check for height < 8 in the lcd_mono_bitmap_part function

second try places the check above the negative y offset
this was causing glitches on the Q1 and likely other TS targets
since a negative y was added to height it made it < CHAR_BIT setting
stride = 0 even though the bitmap was >= CHAR_BIT high

Change-Id: I13bb8ab472c2ae61302a6de5d9e2c78243354460
2021-08-26 20:19:26 +00:00
Aidan MacDonald
30e96a3732 quickscreen: fix EQ enable not working in quickscreen
The EQ enabled setting needs to call into the DSP core when it's
changed but this was only hooked into the EQ menu. The quickscreen
uses option_select_next_val() so those DSP hooks were not getting
called because the setting did not have any callback defined.

It seems this bug was introduced by 362f7a3220 removing the blanket
call to settings_apply(). Other settings might be affected too.

Change-Id: Idcce5809c525fa619e6bdf1be50c98a5df103fec
2021-08-26 19:34:18 +00:00
Solomon Peachy
b2386405b9 xduoox3: Disable bootloader USB mode entirely
It's not yet working and because all storage is removable (and the OF
works fine) it's of limited utility aynway.

Change-Id: I8a6a59ac16503d0f4574c3934f473cac54e86858
2021-08-26 11:59:01 -04:00
Solomon Peachy
93c98606f1 xduoox3: Further bootloader improvements
* Power button is what forces entry into USB mode
   (can't use the other buttons due to the long SADC warmup)
 * Inching closer to working USB disk mode (starts then disconnects!

Change-Id: I45ff1c61f39e0e0c3615b38278f5c91b6ef2ed6c
2021-08-26 11:59:01 -04:00
William Wilgus
987d195134 Plugin Api add core bitmaps Fix Yellow
Change-Id: I4cded8733f8ae4d26b013a944ee5e884ed1363d9
2021-08-26 09:37:31 -04:00
William Wilgus
b56372bbcb Plugin Api add core bitmaps
share all the core icons with plugins
these are all small mono icons like usb plug icon or
play, fast forward, rewind icons

--include the icon_helper function

Change-Id: I385028815a4dd368515f491a9e19dee3d500252d
2021-08-26 12:55:34 +00:00
Aidan MacDonald
cbf1970b56 Shanling Q1: minor update to keymap
- Enable repeat for prev/next keys
- Provide a way to access the context menu using buttons
- Update the manual

Change-Id: I53a7474cc64f915851175aea0695229c581fd8a6
2021-08-25 23:28:59 +01:00
William Wilgus
dbd051394e Revert "lcd_putsxyofs 16 bit lcd_mono_bitmap_part [AS]"
This reverts commit 49edfc237b.

Reason for revert: font rendering bug, https://gist.github.com/amachronic/5fa75da280432127de4b44ee2d760281

Change-Id: I13b5f0eedb2926bce67051c8f0bb2ae5dea9f299
2021-08-25 13:05:02 +00:00
Solomon Peachy
97b0e5b5a1 xduoox3: More minor bootloader tweaks
Change-Id: I16b5ada06842822e14c0e4fc262f2cb8067aff72
2021-08-22 11:58:30 -04:00
Aidan MacDonald
d1653bc4d8 touchscreen: fix smooth scrolling in lists
This fixes those annoying jumps that happen when you hit the end of
a list while scrolling.

Change-Id: I2e41111f9415dce1692b52a2600e7ce77c8f0291
2021-08-22 14:57:54 +00:00
Aidan MacDonald
569b165cff touchscreen: handle scrollbar properly when UI viewport is used
Change-Id: I3b55233f4d50f5b8ae38f9f337ebdee6f93ad44e
2021-08-22 14:45:26 +00:00
Aidan MacDonald
a59a629514 filetypes: handle missing or empty viewers.config
We want to load builtin filetypes and other config files even if
there is a problem loading viewers.config. A lot of menus expect
the builtin types to be there and don't work if they're missing.

Change-Id: Ie39c8b9ef184fe0d638bacbe18e5f2d22900bd81
2021-08-22 15:24:51 +01:00
Solomon Peachy
d282424ef2 xduoox3: Allow user to gracefully exit USB disk mode by pressing power
Change-Id: Ic0382059646b7169c275aebe88867b5c0b7dd672
2021-08-22 07:57:24 -04:00
Solomon Peachy
4c745fe8ac xduoox3: A few manual improvements
* Fix a typo in a URL
 * Note how to enter the OF from the bootloader
 * Document how to perform a hard reset

Change-Id: I96d0d64cbd251573e1c5c55657ee5c5db510d9a6
2021-08-22 07:57:24 -04:00
Solomon Peachy
7059183438 bootloader: nuke a long-unused (and broken) code block
Change-Id: I8177c70ef01fd8938f3683e74adc0e008034f92d
2021-08-22 07:49:06 -04:00
Solomon Peachy
2c9e2db721 xduoox3: More bootloader updates
* Rework the LCD initialization a bit
 * Power off after 5 seconds if we hit a fatal error
 * Turn on verbose output if PLAY is held down on powerup
 * Minor code style cleanups

The goal is to not perform the LCD init unless it's needed; ie
only if we run into an error or enter USB mode.

Change-Id: I3f93e881ff55d104f453985ed452f35b433a7d99
2021-08-21 22:20:20 -04:00