Rockbox.org home
release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



whenwhatwherewho
Yesterday 20:24 92140752d7: FiiO M3K: disable CPU frequency switching

After conducting some simplistic tests, I found that the power usage did not appear to be affected by the CPU frequency.

I tested by playing back a 44.1 KHz FLAC file on single track repeat, and measured current with the AXP173's battery discharge current ADC. The button and LCD backlights were set to always on. Headphones were unplugged and the volume was muted to eliminate any influence from the headphone amp.

On average the current usage was between 78-81 mA at 1008 MHz, 252 MHz, and 112 MHz. If anything, 1008 MHz drew _less_ current than the lower frequencies, by about 1-3 mA.

A possible explanation for this, assuming it's not just a bias of the test, is that the CPU idle state saves so much power that it's better to maximize the real time that the CPU spends idling. More systematic testing is needed to confirm this.
firmware/export/config/fiiom3k.h [diff]
firmware/target/mips/ingenic_x1000/kernel-x1000.c [diff]
Aidan MacDonald
Yesterday 20:24 fceffb7d4a: x1000: disable CPU idle stats by default

There's no point including this in normal builds: the stats are not used for anything, they are not really of interest to anyone except developers, and add a small overhead to the kernel tick.
firmware/target/mips/ingenic_x1000/debug-x1000.c [diff]
firmware/target/mips/ingenic_x1000/kernel-x1000.c [diff]
firmware/target/mips/ingenic_x1000/system-target.h [diff]
firmware/target/mips/ingenic_x1000/system-x1000.c [diff]
Aidan MacDonald
Yesterday 20:24 01d1eb4258: FiiO M3K/X1000: Do system clock initialization in the SPL

Initializing the clocks in the SPL brings Rockbox in line with how the FiiO M3K's original SPL works. It's likely other X1000 devices do this too.

There was a logic error in the previous setup: the code falsely assumed that DDR memory would always be running from MPLL, but it would be switched to APLL by the bootloader. Rockbox would then try to re-init APLL, albeit with the same parameters. Maybe this was the cause of the boot hang on some units.
firmware/target/mips/ingenic_x1000/fiiom3k/spl-fiiom3k.c [diff]
firmware/target/mips/ingenic_x1000/spl-x1000.c [diff]
firmware/target/mips/ingenic_x1000/spl-x1000.h [diff]
firmware/target/mips/ingenic_x1000/system-x1000.c [diff]
Aidan MacDonald
Yesterday 20:23 e123c5d2f2: x1000: don't reset all GPIOs at boot

What we really want is to avoid any interrupts being generated before the drivers which handle them are properly initialized. Intead of trashing all GPIOs, search for the problem pins and fix them, leaving the others alone.

This fixes the M3K's button light flickering on boot and should stop the M3K from entering a potentially confusing "dead" state where all the lights are off but the CPU is still on.
firmware/target/mips/ingenic_x1000/gpio-x1000.c [diff]
Aidan MacDonald
Yesterday 20:23 b41d53792c: jztool: New utility for installing a bootloader on FiiO M3K

At present, this is just a command line tool for Linux only.

Integrating this with the Rockbox utility and porting to other platforms should be straightforward; the README contains more information.
.gitignore [diff]
rbutil/jztool/Makefile [new]
rbutil/jztool/README.md [new]
rbutil/jztool/include/jztool.h [new]
rbutil/jztool/jztool.c [new]
rbutil/jztool/src/buffer.c [new]
rbutil/jztool/src/context.c [new]
rbutil/jztool/src/device_info.c [new]
rbutil/jztool/src/fiiom3k.c [new]
rbutil/jztool/src/identify_file.c [new]
rbutil/jztool/src/jztool_private.h [new]
rbutil/jztool/src/paramlist.c [new]
rbutil/jztool/src/usb.c [new]
rbutil/jztool/src/x1000.c [new]
Aidan MacDonald
Yesterday 20:22 1b8542490d: x1000: Redesign SPL, and allow it to flash the bootloader

SPL is now designed so core X1000 code is in control of the boot, under the reasonable assumption that the device boots from flash. It should not be too hard to adapt to other X1000 ports.

The biggest functional change is that the SPL can now read/write the flash, under the control of a host computer. The SPL relies on the boot ROM for USB communication, so the host has to execute the SPL multiple times following a protocol.
bootloader/SOURCES [diff]
firmware/SOURCES [diff]
bootloader/fiiom3k-spl.c firmware/target/mips/ingenic_x1000/fiiom3k/spl-fiiom3k.c [rename]
firmware/target/mips/ingenic_x1000/fiiom3k/spl-target.h [new]
firmware/target/mips/ingenic_x1000/spl-x1000-defs.h [new]
bootloader/x1000-spl.c firmware/target/mips/ingenic_x1000/spl-x1000.c [rename]
firmware/target/mips/ingenic_x1000/spl-x1000.h [new]
Aidan MacDonald
Yesterday 15:33 85fbbd9c7f: 16 bit lcd_mono_bitmap

'Bugfix' mono_bitmap_part reads ahead in the buffer, if the height is <= char bit pixels other memory gets read
firmware/drivers/lcd-16bit-common.c [diff]
William Wilgus
Yesterday 13:06 afe80742a5: Fix Pictureflow bugs

It turns out that aa_cache.buf, used to store decoded album art during background scanning, was not correctly allocated and overlapped with memory allocated for buflib. This was what caused all the segfaults.

Also fixed a logic error in read_pfraw(), which returns a buflib handle on success, but also returned 0 on failure -- since 0 is a valid buflib handle, it should return -1 on failure instead.
apps/plugins/pictureflow/pictureflow.c [diff]
Aidan MacDonald
Yesterday 12:09 4dc602dd7f: erosq: Tweak volume scale to be approximately correct

Tested on eros q, everything measured from line out, open circuit.

- volume steps were approximately double the dB they were labelled as, so "-2 dB" would result in a change of about -4 dB from maximum (0, +6.2dBV)
- maximum volume defining the line out volume only changed every 10 values, and then was not close to correct- "-10 dB" resulted in -2.5 dB from maximum

This gets the volume dB approximately correct, and maximum volume correctly sets the line out volume. I was unable to get odd values in the max volume to work, so set the step size to 2 instead of one.

For "consumer level" (-10dBV), set to -16. For "Pro level" (+4dBu -> ~1.8dBV), set to -4.
firmware/drivers/audio/erosqlinux_codec.c [diff]
firmware/export/erosqlinux_codec.h [diff]
Dana Conrad
Friday 14:10 a9d3e9a13d: The Matrix plugin -- Bugfix

Off by one errorS in the matrix plugin

might even say its the matrix plugin re-loaded
apps/plugins/matrix.c [diff]
William Wilgus
Wednesday 01:39 42dba708e3: hosted: Don't open alsa control device directly

It was just being used as a proxy "yeah, we called hw_init()" so just use a flag for that directly.

affects rocker, erosq, xduoo x3ii/x20, and fiiom3klinux
firmware/drivers/audio/erosqlinux_codec.c [diff]
firmware/drivers/audio/fiiolinux_codec.c [diff]
firmware/drivers/audio/rocker_codec.c [diff]
firmware/drivers/audio/xduoolinux_codec.c [diff]
Solomon Peachy
13th Apr 14:28 ec4b5c794e: ibasso: Found a reliable way to determine if SD card is present at startup
firmware/target/hosted/ibasso/vold-ibasso.c [diff]
Solomon Peachy
12th Apr 21:54 c0a49d9bdf: ibasso: Default to assuming the external SD card is inserted

Detection at startup is proving to be unreliable. Even if card is not present at startup, upon insertion it will sort itself out properly.
firmware/target/hosted/ibasso/vold-ibasso.c [diff]
Solomon Peachy
12th Apr 18:19 b6fce99046: ibasso: Implement proper PIVOT_ROOT filesystem access

Including direct use of the external SD card mount

Known issue: If SD card is inserted at startup, it must be ejected and reinserted to be registered.
firmware/export/config/ibassodx50.h [diff]
firmware/export/config/ibassodx90.h [diff]
firmware/target/hosted/ibasso/system-ibasso.c [diff]
firmware/target/hosted/ibasso/vold-ibasso.c [diff]
firmware/target/hosted/ibasso/vold-ibasso.h [diff]
Solomon Peachy
11th Apr 02:59 e4345f2db8: build: Make the lang.h and genlang.h depend on the genlang tool

(So if genlang is updated, regenerate the language headers)
apps/lang/lang.make [diff]
Solomon Peachy
11th Apr 01:06 6ae2b7140c: Fix red in bc416ff590

Most of it was due to checkwps breaking, the rest was m68k with radios.
apps/gui/skin_engine/skin_parser.c [diff]
apps/radio/presets.c [diff]
Solomon Peachy
10th Apr 16:08 bc416ff590: misc: Only include rbpaths.h and string-extra.h in places that need it

(Don't include rbpaths.h in settings.h, or string-extra.h in rbpaths.h)

Build-tested on rocker, erosq, mini2g, nano2g, xduoox3, clipzip, dx50, and uisim
apps/gui/icon.c [diff]
apps/gui/skin_engine/skin_engine.c [diff]
apps/menus/eq_menu.c [diff]
apps/menus/playlist_menu.c [diff]
apps/menus/recording_menu.c [diff]
apps/menus/settings_menu.c [diff]
apps/menus/theme_menu.c [diff]
apps/playlist_catalog.c [diff]
apps/radio/presets.c [diff]
apps/radio/radioart.c [diff]
apps/scrobbler.c [diff]
apps/settings.h [diff]
apps/settings_list.c [diff]
apps/shortcuts.c [diff]
firmware/drivers/audio/erosqlinux_codec.c [diff]
firmware/export/rbpaths.h [diff]
firmware/font.c [diff]
Solomon Peachy
10th Apr 14:25 1303be3437: ibasso: Get rid of #include "settings.h" in the button code

(It mucks with paths causing the input device open to fail)
firmware/target/hosted/ibasso/button-ibasso.c [diff]
Solomon Peachy
10th Apr 01:13 448f98d9c0: pp: fix adc mistake where base 10 was used instead of base 16
firmware/target/arm/pp/adc-pp5020.c [diff]
James Buren
9th Apr 23:21 13dbcab6c0: erosq: When mucking with the clickwheel, ensure we keep the screen awake!
firmware/drivers/button.c [diff]
firmware/target/hosted/button-devinput.c [diff]
Solomon Peachy
9th Apr 19:54 cd64aa2b10: xduoox3: Global volume_limit now applies to the line output as well

The X3's line out is a bit hot, at ~4.3Vpp, so allow it to be backed off.

(On my X3, backing it off to -6dB brings Vpp down to ~3.4V)
firmware/target/mips/ingenic_jz47xx/codec-jz4760.c [diff]
manual/configure_rockbox/sound_settings.tex [diff]
Solomon Peachy
9th Apr 10:53 10facef17b: Skin engine: respect volume decimalization

This is basically the same problem as FS #13272, except it happens on certain themes, eg. rayboradio. The issue only affects targets with decimal volume levels.

Tested the fix using the rayboradio theme on the FiiO M3K and the Fuze+ simulator. Volume was displayed correctly on both.
apps/gui/skin_engine/skin_tokens.c [diff]
Aidan MacDonald
9th Apr 10:53 9847f9c85e: x1000: don't add pointless '1' after SPL signature

I added this because it is present on the FiiO M3K's SPL, but nothing in Ingenic docs suggest this means anything.

Just get rid of it; the M3K boots fine without it.
tools/mkspl-x1000.c [diff]
Aidan MacDonald
9th Apr 10:53 c0a823e2ab: x1000: Trim unused cache functions from the SPL build
firmware/target/mips/ingenic_x1000/system-target.h [diff]
Aidan MacDonald
9th Apr 10:52 54b8e9131c: Revert "sound: add sound_numdecimals() to round out the sound setting query API"

There is already a sound_numdecimals() function, according to Git it's been around since 2005. No need to add another one :).

This reverts commit 92a0ab8789c622afecc47f3b399eda8abf26ee9e.
firmware/export/sound.h [diff]
firmware/sound.c [diff]
Aidan MacDonald
9th Apr 03:58 1e2a9a651c: erosq: Switch to 32-bit PCM output, and do volume scaling in driver

Should improve audio output quality, especially at lower volumes.
firmware/drivers/audio/erosqlinux_codec.c [diff]
firmware/export/config/aigoerosq.h [diff]
firmware/export/erosqlinux_codec.h [diff]
firmware/target/hosted/pcm-alsa.c [diff]
Solomon Peachy
9th Apr 03:10 e86d90905b: alsa: Fix an #ifdef typo in 54fcb907c1

HAE_ALSA_32BIT -> HAVE_ALSA_32BIT
firmware/target/hosted/pcm-alsa.c [diff]
Solomon Peachy
9th Apr 03:02 54fcb907c1: alsa: instead of per-target tests, use HAVE_ALSA_32BIT

Affects all Sony NWZ (linux) and the fiio m3k linux targets.
firmware/export/config/fiiom3klinux.h [diff]
firmware/export/config/sonynwzlinux.h [diff]
firmware/target/hosted/pcm-alsa.c [diff]
firmware/target/hosted/pcm-alsa.h [diff]
Solomon Peachy
9th Apr 01:58 e17337c9aa: ErosQ: fix panic on startup caused by ad55da5f

It turns out #include "settings.h" pulls in rbpaths.h which ends up remapping open() to the path-mangling rockbox open().

By defining RB_FILESYSTEM_OS we prevent the remap. My mistake for not testing this before committing!
firmware/drivers/audio/erosqlinux_codec.c [diff]
Solomon Peachy
8th Apr 18:37 ad55da5f87: ErosQ: Set Line Level Output volume

With a full-scale 440Hz tone, the line out voltage measured approx. 5.8Vpp at the 0 setting. WAY too hot!
(9 dBV, in fact)

For 0.894Vpp (-10 dBV - consumer devices), -18 appears to be about right for line level signals, but for "pro" equipment a different level may be desired.

Therefore, the user to cap the line out level by re-using the global volume limit setting.
firmware/drivers/audio/erosqlinux_codec.c [diff]
Dana Conrad
8th Apr 04:15 c77cd7027f: lua print_table add ability to draw a line separator

allows you to draw a line between items
apps/plugins/lua/include_lua/print.lua [diff]
apps/plugins/lua/include_lua/printtable.lua [diff]
William Wilgus
8th Apr 01:50 f8ce18c286: Update the english-us "translation"
apps/lang/english-us.lang [diff]
Solomon Peachy
8th Apr 01:48 d2f694696f: configure: Enable easy use of AddressSanitizer with sim builds
tools/configure [diff]
Solomon Peachy
7th Apr 21:02 1b82ebc6e4: Fix: Directory stream not closed in Shortcuts menu
apps/shortcuts.c [diff]
Christian Soffke
7th Apr 18:59 4b26372591: MIPS: make sure to fill 'jr' branch delay slot with 'nop'

Inline assembly in RoLO and the FiiO M3K bootloader used 'jr' to jump to a newly loaded Rockbox binary, but incorrectly left the branch delay slot open. That gives GCC an opening to place illegal instrutions, etc, which might cause an unhandled exception.
bootloader/fiiom3k-spl.c [diff]
bootloader/fiiom3k.c [diff]
firmware/rolo.c [diff]
Aidan MacDonald
7th Apr 18:38 213d372c92: FS #13272: Fix up volume_limit to respect decimilaztion.
apps/menus/sound_menu.c [diff]
firmware/sound.c [diff]
Solomon Peachy
7th Apr 16:22 c5cf15ed02: menu.c submenu items should be limited to MAX_MENU_SUBITEMS

maybe someone is checking somewhere but pretty sure the error message is a buffer overflow
apps/menu.c [diff]
William Wilgus
7th Apr 14:42 da542020c4: FS #13285: Updated Italian Translation (Alessio Lenzi)
apps/lang/italiano.lang [diff]
Solomon Peachy
7th Apr 11:02 8b56476a2c: list: After drawing scrollbars, explcitly switch back to old viewport.

The viewport used for the scrollbar is allocated on the stack, and falls out of scope before the next call to set_viewport(), which sets a flag in the now-out-of-scope "last" viewport.
apps/gui/bitmap/list.c [diff]
Solomon Peachy
6th Apr 16:27 28c89386af: x1000: Improve NAND driver API

- Proper error codes are now returned from all functions. These codes will be used by a host-side flash tool for error reporting.

- nand_erase_block() was replaced by nand_erase_bytes(). The caller can't know how big an eraseblock is with the current API, so next best thing is to verify the correct alignment inside the call and reject the erase if it isn't properly aligned.

- Fixed typo in nandcmd_block_erase() which would cause an SFC error to be interpreted as success. Yikes.
firmware/target/mips/ingenic_x1000/fiiom3k/installer-fiiom3k.c [diff]
firmware/target/mips/ingenic_x1000/nand-x1000-err.h [new]
firmware/target/mips/ingenic_x1000/nand-x1000.c [diff]
firmware/target/mips/ingenic_x1000/nand-x1000.h [diff]
amachronic
6th Apr 16:27 b5558c1cf9: x1000: place SPL's NAND bounce buffers in DRAM

This frees up 2 KiB in the SPL's memory map, leaving more room for code.
firmware/target/mips/ingenic_x1000/nand-x1000.c [diff]
firmware/target/mips/ingenic_x1000/spl.lds [diff]
amachronic
6th Apr 16:27 1b314502c8: Remove a duplicate const
firmware/target/mips/ingenic_x1000/fiiom3k/power-fiiom3k.c [diff]
amachronic
6th Apr 16:27 0fb333c85e: rbcodec: Fix typo in include guard
lib/rbcodec/codecs/libgme/m3u_playlist.h [diff]
amachronic
5th Apr 13:57 74ae18cc8a: fiiom3k_linux: Enable HAVE_TOUCHPAD and add in missing bits
firmware/export/config/fiiom3klinux.h [diff]
firmware/target/hosted/fiio/button-fiio.c [diff]
firmware/target/hosted/fiio/button-target.h [diff]
Solomon Peachy
5th Apr 11:09 1aed109fa8: Add ability to always have autolock on

Tested on ErosQ

Added a setting in the Advanced Softlock menu to always have autolock on, rather than having to "arm" it with the softlock button. Lock/Unlock still works the same with this on, but when the screen turns off, the device always ends up in the locked state. Requires Autolock On to be set as well, and the normal Autolock functionality is unchanged with this off.

Caveat: the power/softlock button must be pressed at least once after powering on the device or enabling the feature. After that, it should consistently always "arm" the autolock.

Added feature to manual in manual/configure_rockbox/system_options.tex. Also updated some labels I had changed in the Advanced Key Lock menu and added information for Disable All Lock Notifications in a previous commit. Shared items also updated in manual/configure_rockbox/display_options.tex for selective backlight.
apps/action.c [diff]
apps/action.h [diff]
apps/lang/english.lang [diff]
apps/menus/settings_menu.c [diff]
manual/configure_rockbox/display_options.tex [diff]
manual/configure_rockbox/system_options.tex [diff]
Dana Conrad
4th Apr 13:27 962d412917: hdd1630/hdd6330: update battery capacities

Ensure the default setting reflects what the service manual says the official battery capacity is. Change the ranges to reflect what replacement batteries are actually available.

This range is actually much shorter in reality due to these units requiring the rarer 3 pin battery type that uses a thermistor. As such there's only one real replacement battery for each.

So the HDD1630 caps out around 700 mah while the HDD6330 caps out around 680 mah.
firmware/export/config/gogearhdd1630.h [diff]
firmware/export/config/gogearhdd6330.h [diff]
James Buren
4th Apr 09:14 4bc7bafc68: Enable QuickScreen in filtered dir modes & playlist viewer

Will allow the QuickScreen to be accessed in the playlist catalogue and when editing a playlist using the playlist viewer.
apps/playlist_viewer.c [diff]
apps/tree.c [diff]
Christian Soffke
3rd Apr 22:14 4f374b3862: QuickScreen: Update status bar after changing volume

So that (e.g.) a skin's custom volume bar doesn't appear choppy during volume adjustments
apps/gui/quickscreen.c [diff]
Christian Soffke
3rd Apr 00:28 e09df1ce5b: Fix accidental fallthrough in FiiO M3K simulator keymap
uisimulator/buttonmap/fiio-m3k.c [diff]
Aidan MacDonald
2nd Apr 15:29 5d292d9283: README: Update cross-toolchain info
docs/README [diff]
Solomon Peachy
2nd Apr 15:25 2ebfbd3b7c: docs: Add myself to revelant parts of the MAINTAINERS file.
docs/MAINTAINERS [diff]
Solomon Peachy
2nd Apr 15:16 39db911164: h300: Fix html manual generation
manual/platform/iriverh300.tex [diff]
Solomon Peachy
2nd Apr 00:24 afec380a0d: gigabeats: Fix hang on startup caused by a stack overflow

headphone ADC thread stack was slightly too small. Bump it up a bit.

(it was _perfectly_ sized for the prior older toolchain+optimization flags...)
firmware/target/arm/imx31/gigabeat-s/headphone-gigabeat-s.c [diff]
Solomon Peachy
1st Apr 19:45 9e15c19891: build: Make it easier to disable plugins

Instead of 'ifdef ENABLEPLUGINS' (which always gets set) use
'ifeq(yes,$(ENABLEPLUGINS))' which means any value other than 'yes' is treated as a negative.
tools/root.make [diff]
Solomon Peachy
1st Apr 14:57 2f785c7797: PP: More cache invalidation fixes

Take into account the size of the pointer in the loop termination condition.
firmware/target/arm/pp/system-pp502x.c [diff]
Solomon Peachy
1st Apr 12:45 9f7f1a841a: PP: Use CURRENT_CORE instead of IF_COP_CORE(CPU)

Use of IF_COP_CORE was mistakenly introduced as part of 89acde6af2, effectively short-circuiting multiple tests resulting in the code paths always being executed, on both cores.

Use the correct macro, so per-CPU paths are handled properly.
firmware/target/arm/pp/system-pp502x.c [diff]
Solomon Peachy
1st Apr 10:54 0b20038d87: FiiO M3K: Hopefully fix the sim build
firmware/export/config/fiiom3k.h [diff]
Solomon Peachy
1st Apr 05:57 674c07d654: (Fix FS #13281) Revert "Restore playlist state as necessary before checking whether current playlist has been modified"

This reverts commit 46085c897854d145b5313c009fb70af428f0e6bd.
apps/playlist.c [diff]
Christian Soffke
1st Apr 04:52 89acde6af2: H10 PP Crash -- Fixed

This appears to finally fix the issue turns out the status register we were writing was only for the CPU COP cache flush wiped out the CPU cache
--

Added some defines to cut down on the magic numbers Added some comments explaining such

Set the address to full 20 bit address 0x1FFFFF which is then left shifted 11 internally -- somewhere around 4GB?

Link explains the cache status bits https://daniel.haxx.se/sansa/memory_controller.txt
firmware/export/pp5020.h [diff]
firmware/target/arm/pp/system-pp502x.c [diff]
William Wilgus
28th Mar 16:08 058a9ec945: Add M3K native to the simulator
apps/debug_menu.c [diff]
firmware/export/config/fiiom3k.h [diff]
firmware/target/hosted/sdl/sim-ui-defines.h [diff]
uisimulator/bitmaps/UI-fiiom3k.bmp [new]
uisimulator/buttonmap/SOURCES [diff]
uisimulator/buttonmap/fiio-m3k.c [new]
Solomon Peachy
28th Mar 14:46 afd8361d08: Add native FiiO M3K to builds.pm

Note: It's marked as 'unusable' right now, so it won't show up on build.rockbox.org, nor will daily & voice files be created.
tools/builds.pm [diff]
Solomon Peachy
28th Mar 00:01 3ec66893e3: New port: FiiO M3K on bare metal
.gitignore [diff]
apps/SOURCES [diff]
apps/debug_menu.c [diff]
apps/features.txt [diff]
apps/gui/option_select.h [diff]
apps/keymaps/keymap-fiiom3k.c [new]
apps/lang/english-us.lang [diff]
apps/lang/english.lang [diff]
apps/plugins/battery_bench.c [diff]
apps/plugins/blackjack.c [diff]
apps/plugins/brickmania.c [diff]
apps/plugins/calculator.c [diff]
apps/plugins/calendar.c [diff]
apps/plugins/chessbox/chessbox_pgn.h [diff]
apps/plugins/chessclock.c [diff]
apps/plugins/chip8.c [diff]
apps/plugins/chopper.c [diff]
apps/plugins/clix.c [diff]
apps/plugins/cube.c [diff]
apps/plugins/doom/i_video.c [diff]
apps/plugins/flipit.c [diff]
apps/plugins/fractals/fractal.h [diff]
apps/plugins/goban/goban.h [diff]
apps/plugins/imageviewer/imageviewer_button.h [diff]
apps/plugins/invadrox.c [diff]
apps/plugins/jewels.c [diff]
apps/plugins/lib/keymaps.h [diff]
apps/plugins/lib/pluginlib_actions.c [diff]
apps/plugins/midi/midiplay.c [diff]
apps/plugins/minesweeper.c [diff]
...and 113 more files.
Aidan MacDonald
27th Mar 21:18 83fcbedc65: rk27xx: Take advantage of STORAGE_NEEDS_BOUNCE_BUFFER

(And get rid of its custom realignment code)
firmware/target/arm/rk27xx/sd-rk27xx.c [diff]
firmware/target/arm/rk27xx/system-target.h [diff]
Solomon Peachy
27th Mar 19:02 961ffa61dd: Use STORAGE_NEEDS_BOUNCE_BUFFER instead of STORAGE_NEEDS_ALIGN

Enable its use in the jz47xx MIPS targets.

(accidently committed g#3249 before making these changes)
firmware/drivers/fat.c [diff]
firmware/target/mips/ingenic_jz47xx/system-target.h [diff]
Solomon Peachy
27th Mar 18:43 c96dc1c886: xduoox3ii: Wrap the remote key detection in USE_REMOTE

Makes it straightforward to disable for debugging or defective hardware
firmware/target/hosted/xduoo/button-xduoo.c [diff]
Solomon Peachy
27th Mar 18:43 ea1aef9b82: Have FAT filesystem respect storage buffer alignment on reads

This is just a minor cleanup of Solomon Peachy's code, and using per-filesystem buffers instead of a single static buffer.

Tested and working on the FiiO M3K.
firmware/drivers/fat.c [diff]
Aidan MacDonald
26th Mar 01:58 f00eea4434: ErosQ: Fix text entry keymap

Text entry keymap was almost completely backwards, and it was impossible to submit without adding one last character.
apps/keymaps/keymap-erosq.c [diff]
Dana Conrad
25th Mar 18:26 018372bf39: usb: implement macro for initializing USB strings

This uses the new unicode string literal feature that is available now to greatly simplify the initialization of these special string types. This makes them much more readable at a quick glance.
firmware/export/usb_drv.h [diff]
firmware/usbstack/usb_core.c [diff]
utils/hwstub/stub/main.c [diff]
utils/hwstub/stub/usb_drv.h [diff]
James Buren
25th Mar 16:23 7652e6f8df: rk27xx: Get rid of duplicate STORAGE_WANTS_ALIGN
firmware/export/config/ihifi770.h [diff]
firmware/export/config/ihifi770c.h [diff]
firmware/export/config/ihifi800.h [diff]
Solomon Peachy
25th Mar 16:20 d5cc74ebd8: build: Get rid of suplerflous '-Os' references in linker calls

We should be using global optimization flags, and -Os is already our default.
firmware/target/hosted/agptek/rocker.make [diff]
firmware/target/hosted/aigo/erosq.make [diff]
firmware/target/hosted/fiio/fiio.make [diff]
firmware/target/hosted/samsungypr/ypr0/ypr0.make [diff]
firmware/target/hosted/samsungypr/ypr1/ypr1.make [diff]
firmware/target/hosted/sonynwz/sonynwz.make [diff]
firmware/target/hosted/xduoo/xduoo.make [diff]
tools/root.make [diff]
Solomon Peachy
25th Mar 16:20 d121aa3fe8: build: We don't need sh-specific flags in the pictureflow build.
apps/plugins/pictureflow/pictureflow.make [diff]
Solomon Peachy
25th Mar 06:34 3d9d2de34d: Revert "lcd framebuffer - Bugfix #2 ensure proper alignment"

This reverts commit 3a5c5edbf6cb3ac5e4b65fe036ca50b41fabaa89.

Reason for revert:pulling in system.h breaks SDL

:(
firmware/export/lcd.h [diff]
William Wilgus
25th Mar 04:32 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
firmware/export/lcd.h [diff]
William Wilgus
24th Mar 18:50 a53864ed4a: build: Don't overwrite autoconf.h unless it has actually changed

This way we only rebuild the world if something relevant changed.
tools/configure [diff]
Solomon Peachy
24th Mar 18:44 ed99b305a9: Revert "lcd framebuffer - Bugfix ensure proper alignment"

This reverts commit ffee661ab70e9622a05c9c2f24ecf474dad8f042.

Reason for revert: <INSERT REASONING HERE> iAudio M5 `IRAM' overflowed by 48 bytes
firmware/drivers/lcd-1bit-vert.c [diff]
firmware/drivers/lcd-2bit-horz.c [diff]
firmware/drivers/lcd-2bit-vert.c [diff]
firmware/drivers/lcd-2bit-vi.c [diff]
firmware/drivers/lcd-color-common.c [diff]
William Wilgus
24th Mar 18:22 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
firmware/drivers/lcd-1bit-vert.c [diff]
firmware/drivers/lcd-2bit-horz.c [diff]
firmware/drivers/lcd-2bit-vert.c [diff]
firmware/drivers/lcd-2bit-vi.c [diff]
firmware/drivers/lcd-color-common.c [diff]
William Wilgus
23rd Mar 15:42 94b40ed314: Add asynchronous I2C bus API

The driver core is based off of the i.MX233 I2C implementation and should work on any platform.
firmware/SOURCES [diff]
firmware/drivers/i2c-async.c [new]
firmware/export/i2c-async.h [new]
Aidan MacDonald
23rd Mar 13:01 eedc8934a9: FS13279: Update Polish Translation (Adam Rak)
apps/lang/polski.lang [diff]
Solomon Peachy
23rd Mar 13:01 9a8ec7e0df: Update english-us "translation"
apps/lang/english-us.lang [diff]
Solomon Peachy
23rd Mar 04:17 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* 46085c897854.
apps/playlist.c [diff]
Christian Soffke
23rd Mar 03:09 3682891772: FS13277: Updated Polish translation (Adam Rak)
apps/lang/polski.lang [diff]
Solomon Peachy
23rd Mar 03:03 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.
firmware/powermgmt.c [diff]
Aidan MacDonald
23rd Mar 02:05 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.
apps/action.c [diff]
apps/action.h [diff]
apps/lang/english.lang [diff]
apps/menus/display_menu.c [diff]
apps/menus/settings_menu.c [diff]
Dana Conrad
22nd Mar 13:22 bf9fdb13c4: Remove some HAVE_FUNCTIONAL_MODE bits

This was dead code introduced by 0662793c, and got missed by 08ab3aea which should've removed it.
apps/menus/sound_menu.c [diff]
apps/settings.h [diff]
Aidan MacDonald
22nd Mar 13:22 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.
apps/debug_menu.c [diff]
James Buren
22nd Mar 13:00 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.
apps/lang/english-us.lang [diff]
apps/lang/english.lang [diff]
apps/menus/sound_menu.c [diff]
apps/settings.c [diff]
apps/settings.h [diff]
apps/settings_list.c [diff]
firmware/drivers/audio/sdl.c [diff]
firmware/export/audiohw.h [diff]
firmware/export/audiohw_settings.h [diff]
firmware/export/sound.h [diff]
firmware/sound.c [diff]
Aidan MacDonald
22nd Mar 11:30 3a254a92c7: debug_menu: Fix compile error from previous commit
apps/debug_menu.c [diff]
James Buren
22nd Mar 10:51 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.
apps/debug_menu.c [diff]
James Buren
22nd Mar 02:50 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.
lib/rbcodec/metadata/metadata.h [diff]
Christian Soffke
20th Mar 03:10 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.
apps/action.c [diff]
Dana Conrad
18th Mar 17:23 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
apps/open_plugin.c [diff]
William Wilgus
18th Mar 04:46 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
apps/root_menu.c [diff]
William Wilgus
18th Mar 02:39 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
apps/misc.c [diff]
apps/open_plugin.c [diff]
apps/open_plugin.h [diff]
apps/root_menu.c [diff]
William Wilgus
17th Mar 22:09 10b873c407: xduoox3: In ROLO, allow the ADC to be shut down.

The hang we were seeing was due to IRAM wonkiness. that's fixed.
firmware/rolo.c [diff]
Solomon Peachy
17th Mar 13:29 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.
apps/keymaps/keymap-erosq.c [diff]
Dana Conrad
17th Mar 12:13 25c9f716ce: Manual: Mention/reference viewing playlists through the File Browser
manual/working_with_playlists/main.tex [diff]
Christian Soffke
17th Mar 11:49 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.
manual/working_with_playlists/main.tex [diff]
Christian Soffke
16th Mar 15:11 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.
apps/playlist.c [diff]
Christian Soffke
16th Mar 13:05 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.
apps/lang/english.lang [diff]
apps/onplay.c [diff]
manual/working_with_playlists/main.tex [diff]
Christian Soffke
16th Mar 12:56 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.
apps/playlist.c [diff]
Christian Soffke
15th Mar 12:17 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.
firmware/export/config/ipodvideo.h [diff]
Solomon Peachy
14th Mar 23:36 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.
apps/lang/english.lang [diff]
apps/menus/playlist_menu.c [diff]
apps/onplay.c [diff]
apps/settings.h [diff]
apps/settings_list.c [diff]
manual/appendix/config_file_options.tex [diff]
manual/configure_rockbox/playlist_options.tex [diff]
manual/main_menu/main.tex [diff]
manual/working_with_playlists/main.tex [diff]
Christian Soffke
14th Mar 17:06 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
apps/keymaps/keymap-erosq.c [diff]
docs/CREDITS [diff]
Dana Conrad
14th Mar 17:04 6b39e23074: Updated Italian Translation (Alessio Lenzi)
apps/lang/italiano.lang [diff]
Solomon Peachy
14th Mar 17:04 406136f7c7: Update english-US "translation"
apps/lang/english-us.lang [diff]
Solomon Peachy
14th Mar 16:33 92a0ab8789: sound: add sound_numdecimals() to round out the sound setting query API

A necessary prerequisite for fixing FS #13272
firmware/export/sound.h [diff]
firmware/sound.c [diff]
Solomon Peachy
14th Mar 03:17 714f7a21da: erosq: Have tree context fall back to list context rather than mainmenu.

Allows 'back' to cancel vs always popping into wps, for example.
apps/keymaps/keymap-erosq.c [diff]
Solomon Peachy
14th Mar 03:17 b44dd11b6b: Add soft-keylock to standard context on the x20/x3ii/erosq targets

tap power to lock!
apps/keymaps/keymap-erosq.c [diff]
apps/keymaps/keymap-xduoox20.c [diff]
apps/keymaps/keymap-xduoox3ii.c [diff]
Solomon Peachy
12th Mar 18:20 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
manual/working_with_playlists/main.tex [diff]
Christian Soffke
12th Mar 15:04 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.
firmware/drivers/ata.c [diff]
Solomon Peachy
12th Mar 14:39 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
docs/CREDITS [diff]
firmware/export/config/ipod6g.h [diff]
Caleb Connolly
11th Mar 19:43 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.
manual/main_menu/main.tex [diff]
manual/rockbox_interface/wps.tex [diff]
Christian Soffke
11th Mar 19:43 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.)
apps/playlist_viewer.c [diff]
Christian Soffke
11th Mar 19:43 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.
apps/playlist_catalog.c [diff]
Christian Soffke
11th Mar 19:43 49c230f630: Manual: fix spelling
manual/rockbox_interface/main.tex [diff]
Christian Soffke
11th Mar 19:28 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.
firmware/drivers/ata.c [diff]
Solomon Peachy
11th Mar 03:43 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
apps/plugins/imageviewer/jpeg/yuv2rgb.c [diff]
William Wilgus
11th Mar 02:35 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.
apps/keymaps/keymap-xduoox20.c [diff]
apps/keymaps/keymap-xduoox3ii.c [diff]
firmware/drivers/audio/xduoolinux_codec.c [diff]
firmware/target/hosted/button-devinput.c [diff]
firmware/target/hosted/xduoo/button-target.h [diff]
firmware/target/hosted/xduoo/button-xduoo.c [diff]
Solomon Peachy
11th Mar 00:01 a87abdb28f: Special-case the storage names for hibylinux-based hosted targets
apps/features.txt [diff]
apps/lang/english.lang [diff]
Solomon Peachy
11th Mar 00:01 7201c3a685: fiiom3klinux: Fix a build warning.
firmware/target/hosted/power-linux.c [diff]
Solomon Peachy
10th Mar 23:29 555299af9f: hosted: Consolidate the code that polls the battery charging status

affects all hiby targets, fiiom3k, and ibasso dx50/dx90

As well as deduplicating a small pile of code, this also implements hysteresis so we're not doing a sysfs read/lookup multiple times back-to-back every time the power management tick fires.
firmware/SOURCES [diff]
firmware/export/config/fiiom3klinux.h [diff]
firmware/export/config/hibylinux.h [diff]
firmware/export/config/ibassodx50.h [diff]
firmware/export/config/ibassodx90.h [diff]
firmware/target/hosted/agptek/power-agptek.c [diff]
firmware/target/hosted/agptek/power-agptek.h [diff]
firmware/target/hosted/agptek/powermgmt-agptek.c [diff]
firmware/target/hosted/aigo/power-erosq.c [diff]
firmware/target/hosted/aigo/power-erosq.h [diff]
firmware/target/hosted/aigo/powermgmt-erosq.c [diff]
firmware/target/hosted/fiio/power-fiio.c [diff]
firmware/target/hosted/fiio/power-fiio.h [diff]
firmware/target/hosted/fiio/powermgmt-fiio.c [diff]
firmware/target/hosted/ibasso/power-ibasso.c [diff]
firmware/target/hosted/power-linux.c [new]
firmware/target/hosted/xduoo/power-xduoo.c [diff]
firmware/target/hosted/xduoo/power-xduoo.h [diff]
firmware/target/hosted/xduoo/powermgmt-xduoo.c [diff]
Solomon Peachy
10th Mar 13:10 b3b8310e4e: Move "View" option for playlists up one level

The "View" option for playlists/.m3u files is currently part of the "Current Playlist" submenu even though it refers to the selected file/playlist and has nothing to do with the current playlist. It has been relocated to the context menu of the playlist file where it makes more sense and is easier to get to.
apps/onplay.c [diff]
manual/rockbox_interface/browsing_and_playing.tex [diff]
Christian Soffke
10th Mar 13:10 73ec3971f7: Fix "Playlist" vs. "Current Playlist" menu terminology in manual

The manual has been updated to reflect the fact that the current title of the submenu for adding music in the context menu is "Current Playlist". (The WPS context menu has a different submenu called "Playlist")
manual/rockbox_interface/browsing_and_playing.tex [diff]
manual/working_with_playlists/main.tex [diff]
Christian Soffke
10th Mar 10:09 0ba174789b: usb_hid: switch Battery Strength to use feature reports

This means we will no longer send them routinely and instead rely on the HID driver to send them when the host requests it. This also moves the reporting out of the power management code where it probably did not belong in the first place.
firmware/export/powermgmt.h [diff]
firmware/powermgmt.c [diff]
firmware/usbstack/usb_hid.c [diff]
James Buren
9th Mar 20:04 777f63d529: Move MIPS cache management functions to IRAM

Previously these were placed in DRAM, which is overwritten by RoLo when it loads a new image, but RoLo must call commit_discard_idcache() after loading the image.
firmware/target/mips/mmu-mips.h [diff]
Aidan MacDonald
9th Mar 17:24 4e6609e9f2: Update english-US translation.
apps/lang/english-us.lang [diff]
Solomon Peachy
9th Mar 15:10 b2d13f1793: UI: Rename "Play Next" to "Clear List & Play Next"

The "Play Next" function replaces the current dynamic playlist, so it makes sense to convey that information to the user when displaying the option in a context menu.
apps/lang/deutsch.lang [diff]
apps/lang/english.lang [diff]
apps/onplay.c [diff]
manual/working_with_playlists/main.tex [diff]
Christian Soffke
9th Mar 14:48 f4b891e408: Shortcuts Menu -- remove debug statements
apps/shortcuts.c [diff]
William Wilgus
9th Mar 13:26 f348d921b6: Shortcuts Menu -- Update2

make shortcuts menu drop back into WPS on exit different icons for plugins and files versus folders
apps/gui/wps.c [diff]
apps/shortcuts.c [diff]
William Wilgus
9th Mar 11:28 d0ab6b24dc: Updated Italian translation (Alessio Lenzi)
apps/lang/italiano.lang [diff]
Solomon Peachy
9th Mar 11:26 6387d0352e: FS #13263: Rockbox deletes wrong file

The WPS calls onplay() with a pointer to the path of the current track . We need to make a copy of the path so it isn't affected by track changes.
apps/onplay.c [diff]
Christian Soffke
9th Mar 11:18 5c3bbc6a9c: Reset filetype colors when resetting theme colors

Even though filetype colors can't currently be changed by going to Settings->Theme Settings->Colors, a user likely wishes to still reset them when selecting 'Reset Colors' after a .colours file may have been applied by a theme.
apps/menus/theme_menu.c [diff]
Christian Soffke
9th Mar 11:18 3b9a803a5b: Show 'Play Next' option when playback is stopped

1) The Insert functionality was changed in abebc6b to not delete unfinished dynamic playlists anymore. "Play Next" has now been added as an option when playback is stopped. The behavior of
"Play Next" as such has not changed and it is now the consistent way to replace a current playlist in all playback modes.

2) The 'Insert' and 'Insert Shuffle' options will now only be displayed if there is a resumable dynamic playlist
apps/onplay.c [diff]
manual/working_with_playlists/main.tex [diff]
Christian Soffke
9th Mar 03:17 13178d23b8: Shortcuts Menu Update

Change Browser shortcut to the plugin icon drop back into WPS on opx return allow same action to exit shortcut menu as entered -- might be problematic
apps/menu.c [diff]
apps/root_menu.c [diff]
apps/shortcuts.c [diff]
William Wilgus
8th Mar 00:42 c9e8d96e77: ibasso: Fix the dx50/dx90 build (and usb_mode selection)

(The usb_mode selection setting was actually broken even though it had been previously compiling...)
apps/menus/settings_menu.c [diff]
apps/settings.c [diff]
apps/settings.h [diff]
apps/settings_list.c [diff]
Solomon Peachy
7th Mar 23:31 7c58b6f0db: usb_mode: Missed a #define that led to some sim build failures.
apps/menus/settings_menu.c [diff]
Solomon Peachy
7th Mar 23:12 bbd85cf0c1: settings: Fix inconsistent #ifdefs wrapping the usb_mode stuff

It should be:

#if defined(HAVE_USB_POWER) && !defined(USB_NONE) && !defined(SIMULATOR)
apps/menus/settings_menu.c [diff]
apps/settings.h [diff]
Solomon Peachy
7th Mar 15:07 9712d375ce: Shortcuts.c -- Update

Fix returns from shortcuts -- should now run plugins Fix formatting of file names to remove path from browser shortcuts
apps/gui/quickscreen.c [diff]
apps/gui/quickscreen.h [diff]
apps/gui/wps.c [diff]
apps/menu.c [diff]
apps/root_menu.c [diff]
apps/shortcuts.c [diff]
apps/tree.c [diff]
William Wilgus
7th Mar 13:22 0dce973729: OpenPlugins Allow opx shortcuts

Allow opx shortcuts to be run through the shortcut menu
apps/open_plugin.c [diff]
apps/plugins/open_plugins.c [diff]
William Wilgus
7th Mar 12:51 207514fb25: voice: Allow voice prompt volume to be configurable

It defaults to 100%, allow it to be dialed back
apps/lang/english.lang [diff]
apps/menus/settings_menu.c [diff]
apps/settings.h [diff]
apps/settings_list.c [diff]
apps/voice_thread.c [diff]
apps/voice_thread.h [diff]
manual/configure_rockbox/voice.tex [diff]
Solomon Peachy
7th Mar 04:10 c16f9142f7: build: Make all other language files "depend" on english.lang

If we update english.lang, we need to re-run genlang on the other language files so any changes are picked up.
apps/lang/lang.make [diff]
Solomon Peachy
6th Mar 18:00 308dd4ffee: Open_plugins.c fix red

rb->strncasecmp
apps/plugins/open_plugins.c [diff]
William Wilgus
6th Mar 17:21 87ad55b06e: Open_Plugins Add Features

Added an entry 'Add' to the main screen to lessen confusion

side note: its actually a shortcut back to this plugin with flag '-add' passed as a parameter
apps/plugins/open_plugins.c [diff]
William Wilgus
6th Mar 04:15 f647cde3c7: usb_hid: add support for Battery Strength

This allows rockbox to report its battery status through the HID Battery Strength method that is available through the Device Controls usage page.
firmware/export/powermgmt.h [diff]
firmware/powermgmt.c [diff]
firmware/usbstack/usb_hid.c [diff]
firmware/usbstack/usb_hid_usage_tables.h [diff]
James Buren
6th Mar 02:12 9cf45374e0: Announce_status plugin bugfix use artist prior to albumartist

give id3->artist higer precedence than id3->albumartist
apps/plugins/announce_status.c [diff]
William Wilgus
5th Mar 17:43 bac897381c: updatelang: Handle/flag the bad data that led to english-us breaking
tools/updatelang [diff]
Solomon Peachy
5th Mar 17:37 0c958d2b4a: announce_status trackchange bugfix

!Properly remove callback! don't play voice prompt at startup if something is actively playing
apps/plugins/announce_status.c [diff]
William Wilgus
5th Mar 17:20 83111eeece: English-US language had some issues that caused it to fail.
apps/lang/english-us.lang [diff]
Solomon Peachy
5th Mar 05:11 925dc59126: OOM on Audio_Reset_Buffer

Allow the talk file to be unloaded
apps/playback.c [diff]
William Wilgus
5th Mar 04:31 895ed92496: Talk.c, playlist.c fix bugs

fix bug in talk.c

playlist.c only dump voice buffer if we are out of space
apps/playlist.c [diff]
apps/talk.c [diff]
William Wilgus
5th Mar 03:55 03ae4e6019: Announce_status plugin make USB plug aware

Announce_status was blocking USB from working it now quits on USB plug
apps/plugins/announce_status.c [diff]
William Wilgus
5th Mar 02:57 10b6707131: Talk Fix outright disable after first clip

Oops Sorry bout that ;P
apps/talk.c [diff]
William Wilgus
5th Mar 02:22 b2732222e9: Talk.c Guard against use after free / failure to load voicefile

load_voicefile_data wasn't checked for success leading to a use after free situation

get_clip now checks for valid index_handle before using it
apps/talk.c [diff]
William Wilgus
4th Mar 22:37 56a1e87501: ata: Make ata_disk_is_active() only special-case powermgmt-less devices.

SSDs that respect powermgmt commands should be treated the same, as the powermgmt commands are an important part of ensuring it's safe to shut down.

And greatly expand the comment explaining things.
firmware/drivers/ata.c [diff]
Solomon Peachy
4th Mar 21:50 be99033cbb: Always indicate inactive ata disk if device is solid state or doesn't support power management

Commit 5462907 made sure that SLEEP commands weren't issued on devices that don't support ATA power management commands (e.g. certain CF->SD converters including several iFlash models).

Since Rockbox waits for the disk to become inactive in shutdown_hw(), which won't happen in this case, the OS would previously stall during the shutdown process until a timeout was reached.
firmware/drivers/ata.c [diff]
Christian Soffke
4th Mar 19:39 fb99d890a8: Fix typo in MIPS cache discard
firmware/target/mips/mmu-mips.c [diff]
Aidan MacDonald
4th Mar 17:00 cbace906c6: mips: Revert to commiting the cache when we're told to discard an unaligned block.

The filesystem API often passes in unaligned receive buffers, and some code (eg BMP reader) processes data in-place, leading to data loss when we dropped the cache.

(And document exactly what we're doing, so we don't go through this again at $future_date)
firmware/target/mips/mmu-mips.c [diff]
Solomon Peachy
4th Mar 14:49 bcee955169: rolo: use audio_hard_stop() instead of audio_stop()

This kills the audio thread entirely, including voice stuff.
firmware/rolo.c [diff]
Solomon Peachy
4th Mar 14:25 a4a5f5f33f: Check core max allocations for valid handle

fix rolo warnings
apps/radio/radioart.c [diff]
apps/tagtree.c [diff]
firmware/rolo.c [diff]
William Wilgus
4th Mar 14:14 2628155fc9: Clean up places that use #if defined(CPU_ARM | CPU_COLDFIRE | CPU_MIPS)

Since that encompasses _all_ of our native targets in a post-archos world, either replace it with #if (CONFIG_PLATFORM & PLATFORM_NATIVE) or delete it altogher as appropriate.
firmware/rolo.c [diff]
lib/rbcodec/codecs/libtremor/oggmalloc.c [diff]
lib/rbcodec/codecs/vorbis.c [diff]
Solomon Peachy
4th Mar 13:58 15b4d22913: ROLO check for OOM

Splqash failure and return on OOM
firmware/rolo.c [diff]
William Wilgus
4th Mar 13:32 80be135d0d: OOM on playlist_resume

Discovered on ClipZip but applicable to other LOW MEM targets

Back off voice buffer on playlist_resume
apps/playlist.c [diff]
William Wilgus
4th Mar 02:47 de53965e3f: Third try fixing MIPS cache code

Changing this to be a pure discard operation after discussion on IRC
firmware/target/mips/mmu-mips.c [diff]
Aidan MacDonald
4th Mar 02:44 b82298ae2c: jz4740: Fix incorrect dcache flush in the USB RX DMA code.
firmware/target/mips/ingenic_jz47xx/usb-jz4740.c [diff]
Solomon Peachy
3rd Mar 23:57 8cb4c18310: Really fix the MIPS cache bug this time

In fixing the original bug I tried to optimize discard_dcache_range() to minimize writeback and inadvertently introduced a second bug, which typically ends in a TLB refill panic.

It occurs only if the range fits within one cache line, and when both the start and end of the range are not aligned to a cache line. This causes ptr to be incremented and end to be decremented, so ptr > end, and the loop can't terminate.
firmware/target/mips/mmu-mips.c [diff]
Aidan MacDonald
3rd Mar 22:37 cde5ae755f: iPods: Allow using scroll wheel to change volume on QuickScreen

As suggested by forum user yuuiko
apps/action.h [diff]
apps/gui/quickscreen.c [diff]
apps/keymaps/keymap-ipod.c [diff]
manual/main_menu/main.tex [diff]
Christian Soffke
3rd Mar 22:05 0f439bee99: ihifi: use STORAGE_WANTS_ALIGN rather than STORAGE_NEEDS_ALIGN
firmware/export/config/ihifi770.h [diff]
firmware/export/config/ihifi770c.h [diff]
firmware/export/config/ihifi800.h [diff]
Solomon Peachy
3rd Mar 20:50 74a3d1f5be: Fix MIPS cache operations and enable HAVE_CPU_CACHE_ALIGN on MIPS

- The range-based cache operations on MIPS were broken and only worked properly when BOTH the address and size were multiples of the cache line size. If this was not the case, the last cache line of the range would not be touched!

Fix is to align start/end pointers to cache lines before iterating.

- To my knowledge all MIPS processors have a cache, so I enabled HAVE_CPU_CACHE_ALIGN by default. This also allows mmu-mips.c to use the CACHEALIGN_UP/DOWN macros.

- Make jz4760/system-target.h define its cache line size properly.
firmware/export/system.h [diff]
firmware/target/mips/ingenic_jz47xx/system-target.h [diff]
firmware/target/mips/mmu-mips.c [diff]
Aidan MacDonald
3rd Mar 18:37 f906df017d: Open Plugin -- Make first run show at least one item to user

Open plugin needs the context menu to allow the user to add an item on the first run there are no items and therefore nothing to pop the context menu from
apps/plugins/open_plugins.c [diff]
William Wilgus
3rd Mar 03:11 5317953f4a: Battery Icon, Remove Hardcoded Overall Width

Icon no longer showed 100% with some fonts
apps/gui/statusbar.c [diff]
William Wilgus
3rd Mar 02:58 2cde135cfe: flac fix dumb typo
lib/rbcodec/codecs/libffmpegFLAC/decoder.c [diff]
William Wilgus
3rd Mar 02:36 93d8be80ce: Remove a couple more stragglers from the Archos purge
apps/player/icons.h [deleted]
apps/player/keyboard.c [deleted]
Solomon Peachy
3rd Mar 00:47 118191479d: Nudge flac towards upstream FS #13266 -- Fix the Yellow still?
lib/rbcodec/codecs/libffmpegFLAC/decoder.c [diff]
William Wilgus
3rd Mar 00:20 2252bde144: Nudge flac towards upstream FS #13266 -- Fix Yellow

unused variables
lib/rbcodec/codecs/libffmpegFLAC/decoder.c [diff]
William Wilgus
2nd Mar 23:48 a017219488: Nudge flac towards upstream FS #13266

Some flac encoded files contain junk that our decoder picked up

upstream has some sign and overflow fixes too
lib/rbcodec/codecs/libffmpegFLAC/decoder.c [diff]
lib/rbcodec/codecs/libffmpegFLAC/decoder.h [diff]
lib/rbcodec/codecs/libffmpegFLAC/golomb.h [diff]
William Wilgus
2nd Mar 18:33 7d78958f9d: Reset unknown file color when resetting filetype colors

The unknown file color is handled as a special case and also needs to be reset here
apps/filetypes.c [diff]
Christian Soffke
2nd Mar 12:51 22cc4e4fcf: Fixed bug in Fiio M3K port where up button didnt work in some menus
apps/keymaps/keymap-fiiom3klinux.c [diff]
docs/CREDITS [diff]
spencer-brennessel
2nd Mar 02:10 a6eafc86f8: Remove execute bit from file permissions from recent commit
apps/buffering.c [diff]
apps/buffering.h [diff]
apps/playback.c [diff]
apps/radio/radioart.c [diff]
apps/recorder/jpeg_load.c [diff]
William Wilgus
2nd Mar 00:36 73cee8f177: Add RegGen-NG tool and definitions for Ingenic X1000
utils/reggen-ng/reggen-ng.py [new]
utils/reggen-ng/x1000.reggen [new]
Aidan MacDonald
1st Mar 19:02 7418ec5009: FS #13267: Fix crash when enabling Perceptual Bass Enhancment during playback

I think the assumption is that during playback, the DSP is already running so it assumes PBE needs to be flushed before it is properly enabled.
lib/rbcodec/dsp/pbe.c [diff]
Solomon Peachy
1st Mar 12:33 640b14c08c: Fix inability to reset filetype colors without restarting

0ce42df prevented read_color_theme_file() from being executed when applying settings (from a cfg file) if the filetype colors setting was set to "-". Resetting custom filetype colors happens in that function though and thus wouldn't work. You had to restart Rockbox for the setting to be applied (at which point read_color_theme_file() is called from filetype_init() which is called by the init() function in main.c)

The safety check has been moved from settings.c directly into read_color_theme_file(). This has the added advantage that it will also apply during the init process where there existed no check before (prevents the problem mentioned in 2e3a8c7).
apps/filetypes.c [diff]
apps/settings.c [diff]
Christian Soffke
28th Feb 16:11 670812a44a: Support MP3 audiostreams embedded in ASF containers.

Full credit to Igor Poretsky
lib/rbcodec/codecs/codecs.make [diff]
lib/rbcodec/codecs/libasf/asf.h [diff]
lib/rbcodec/codecs/mpa.c [diff]
lib/rbcodec/metadata/asf.c [diff]
lib/rbcodec/metadata/metadata.h [diff]
Solomon Peachy
28th Feb 02:52 13c7f482ce: Add ingenic_tools/usbboot utility

This is essentially an expanded version of jz4760_tools/usbboot, able to support both X1000 and JZ4760 CPUs and easily extended to handle other Ingenic CPUs using the same boot protocol.
.gitignore [diff]
utils/ingenic_tools/Makefile [new]
utils/ingenic_tools/usbboot.c [new]
Aidan MacDonald
27th Feb 23:53 a3d41098c7: Adding myself to the credits
docs/CREDITS [diff]
Aidan MacDonald
27th Feb 23:53 aacb0811d9: Rename symbols of FiiO M3K Linux-based port

Mainly a straight replacement of FIIO_M3K -> FIIO_M3K_LINUX.
apps/SOURCES [diff]
apps/bitmaps/native/SOURCES [diff]
apps/debug_menu.c [diff]
apps/keymaps/keymap-fiiom3k.c apps/keymaps/keymap-fiiom3klinux.c [rename]
apps/plugins/battery_bench.c [diff]
apps/plugins/blackjack.c [diff]
apps/plugins/brickmania.c [diff]
apps/plugins/calculator.c [diff]
apps/plugins/calendar.c [diff]
apps/plugins/chessbox/chessbox_pgn.h [diff]
apps/plugins/chessclock.c [diff]
apps/plugins/chip8.c [diff]
apps/plugins/chopper.c [diff]
apps/plugins/clix.c [diff]
apps/plugins/cube.c [diff]
apps/plugins/doom/i_video.c [diff]
apps/plugins/flipit.c [diff]
apps/plugins/fractals/fractal.h [diff]
apps/plugins/goban/goban.h [diff]
apps/plugins/imageviewer/imageviewer_button.h [diff]
apps/plugins/invadrox.c [diff]
apps/plugins/jewels.c [diff]
apps/plugins/lib/keymaps.h [diff]
apps/plugins/lib/pluginlib_actions.c [diff]
apps/plugins/midi/midiplay.c [diff]
apps/plugins/minesweeper.c [diff]
apps/plugins/mp3_encoder.c [diff]
apps/plugins/mpegplayer/mpeg_settings.c [diff]
apps/plugins/mpegplayer/mpegplayer.c [diff]
apps/plugins/oscilloscope.c [diff]
...and 35 more files.
Aidan MacDonald
27th Feb 23:39 55dc86f5db: Specify correct dependencies for tools/descramble

Fixes the red introduced in 6224efb2
tools/tools.make [diff]
Solomon Peachy
27th Feb 23:29 dad23a0607: database: Database tool was excluding all SWCODECs!

When fixing this, I used this this opportunity to clean up the Makefile
tools/database/database.make [diff]
Solomon Peachy
27th Feb 22:53 ef685cc6da: Update manual to reflect new behavior from abebc6b

When playback is stopped and the user inserts songs, Rockbox will not erase a dynamic playlist anymore, unless it has finished playing.
manual/working_with_playlists/main.tex [diff]
Christian Soffke
27th Feb 22:51 6224efb238: Fix build system not respecting TOOLSET

It seems that 'toolset=' in tools/configure was set but not used, with the build system only generating a hardcoded set of tools. This change fixes the issue by exporting the required tools in the TOOLSET variable, and having root.make append those to the TOOLS list.
tools/configure [diff]
tools/root.make [diff]
Aidan MacDonald
27th Feb 22:03 96019d23aa: Add regtools binaries to gitignore
.gitignore [diff]
Aidan MacDonald
27th Feb 22:02 b8945734f5: Make headergen_v2's output include what it uses
utils/regtools/headergen_v2.cpp [diff]
Aidan MacDonald
27th Feb 14:41 7d7a3156d3: Fix skin rendering issue entering dirbrowse

If the custom UI viewport (for displaying lists) changes size when entering dirbrowse, other viewports won't be correctly rendered and require a redraw.

The following is a minimal test case for an example SBS where (the specified background color for) the viewport at the top of the screen won't appear after the user has entered the (root menu of the) file or database browser:

%?if(%cs,=,1)<%VI(main)|%VI(other)>

%V(0,0,-,21,-)
%Vb(ededed)

%Vi(main,0,22,-,-,-)

%Vi(other,0,60,-,-,-)
apps/tree.c [diff]
Christian Soffke
27th Feb 14:38 7d7850368e: Disable UDMA 2 on iPod4G target

ATA DMA was enabled for all PP502x targets in d118f47 after previously reported instabilities were thought to have been fixed. The iPod 4G target remains unstable when UDMA 2 is enabled. File system corruption will eventually occur even using stock hardware in normal usage, according to both my own experience and that of several other forum users. UDMA 1 appears to be stable.
firmware/target/arm/pp/ata-target.h [diff]
Christian Soffke
27th Feb 14:38 317908e8c3: Warn before permanently reshuffling the current playlist

Reshuffling a playlist using the WPS context menu for the current playlist is a destructive operation since the previous order of items can't be restored. A warning should be displayed, so that the user can still cancel the operation in case they intended to select another menu item (e.g. one of the harmless "Playing Time" or "Save Current Playlist" items right next to it).
apps/onplay.c [diff]
Christian Soffke
21st Feb 04:23 05f1006246: Convttf makefile: Replace freetype-config with pkg-config

Freetype-config has been deprecated and is no longer included in libfreetype-dev. Pkg-config serves as its replacement.

Convttf isn't built as part of Rockbox by default, but manually doing so will currently fail even when libfreetype-dev is installed.
tools/Makefile [diff]
tools/tools.make [diff]
Christian Soffke
19th Feb 13:35 bdc3dd4fca: MP4: append mdat sections together in metadata parser

mp4 files can have multiple 'mdat' chunks. This is common for audiobooks, where there is often a secondary mdat containing the chapter names, but it's also legal to have multiple mdat chunks for a single logical "track"

This confuses the mp4 metadata parser, which assumes there is only a single mdat, and always uses the last mdat seen to determine the "filesize" of the data we're trying to decode.

Work around this by appending each mdat's size to result in the final
"filesize"
lib/rbcodec/metadata/mp4.c [diff]
Solomon Peachy
19th Feb 13:35 8c76c1b1c2: Revert "Always resume audio after user picks a new song from a playlist"

This reverts commit 69746d840086c3e9e4499c3c19257cd981a9203a.
apps/playlist.c [diff]
Solomon Peachy
17th Feb 11:34 436e64e09e: Fix playback queue bug when "Insert Next" is used with multiple songs at once

After using “Insert Next” to insert multiple songs at once (e.g. an album from the database browser or folder from the file browser), subsequent Insert operations will incorrectly insert items after the first song of all items that were previously inserted, instead of after the last song of the previously inserted items.

A bug fix was originally written by Costas Calamvokis for the file browser only. I adopted the original fix and added code analogous to it so that it works from the database browser as well.

See FS #7898, FS #7363 or this forum post for more info: https://forums.rockbox.org/index.php/topic,53741.0.html
apps/playlist.c [diff]
apps/tagtree.c [diff]
Christian Soffke
17th Feb 11:33 abebc6b9ac: Don’t erase a user’s stopped dynamic playlist when inserting/queuing songs

Rockbox would unexpectedly and without warning erase the current dynamic playlist (when it hadn’t finished playing) if the user inserted or queued up items while playback was stopped.

This fix ensures that the playlist is only deleted if it has either finished playing or can't be resumed.
apps/onplay.c [diff]
Christian Soffke
17th Feb 11:32 69746d8400: Always resume audio after user picks a new song from a playlist

Music currently doesn't begin playing after the user has selected a new song in a playlist, 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 the song they select for playback regardless of the previous player state.
apps/playlist.c [diff]
Christian Soffke
5th Feb 17:29 422aa56243: rockboxdev: fix issues with relative paths for commandline options

I wanted to build into a 'toolchain' directory like this:

$ tools/rockboxdev.sh --dlwhere=toolchain --builddir=toolchain/build --prefix=toolchain/bin

This failed twice:

a) the extraction stage could not uncompress because of the relative paths, so convert them to absolute paths in the script to fix the issue.

b) patches could not be applied because 'rockboxdevdir' was assigned a string with the directory twice and '\n' in the middle. Using readlink, this now works.
tools/rockboxdev.sh [diff]
Wolfram Sang
5th Feb 17:29 a67c6934c1: rockboxdev: better error message for unknown compression

I hit this error and its message confused me because I interpreted it as
"bzip2 executable could not be found". The message was also outdated because xz is supported meanwhile. Update the message to something hopefully more helpful.
tools/rockboxdev.sh [diff]
Wolfram Sang
5th Feb 17:29 e23d45536e: rockboxdev: fix summary output of options

'--download' is now named '--dlwhere' and 'target' was missing the '='
tools/rockboxdev.sh [diff]
Wolfram Sang
5th Feb 17:27 165d926a63: rbutil: Add a new entry for the Hifiwalker H2 v1.3 variant
rbutil/rbutilqt/rbutil.ini [diff]
Solomon Peachy
4th Feb 21:47 e7e9cbb852: puzzles: only build manual for color targets

'SUBDIRS' file has puzzles inside a 'HAVE_LCD_COLOR' block. I found this issue because sgt-puzzles was in the Clip+ docs while they were not installed on the target.
docs/CREDITS [diff]
manual/plugins/main.tex [diff]
Wolfram Sang
27th Jan 17:21 278e7457ea: skin_engine: Fix %if() when comparing against a negative number.

If the tag being checked returns a negative number (e.g. %LI does that when the current list item does not have an icon) the tag's value would always end up being 1.
apps/gui/skin_engine/skin_tokens.c [diff]
docs/CREDITS [diff]
Georg Gadinger
21st Jan 14:27 befae2909f: Make delete_file_dir() more threadsafe

This should fix FS #13263
apps/onplay.c [diff]
Moshe Piekarski
21st Jan 13:39 fe10830384: hiby_patcher: Tweak the fix needed to work around v1.31 AGPtek Rockers.
tools/hiby_patcher.pl [diff]
Solomon Peachy
2nd Jan 20:31 707f77c6a7: rbutil: Update german translation.
rbutil/rbutilqt/lang/rbutil_de.ts [diff]
Dominik Riebeling
2nd Jan 20:31 95cfa9a8c4: rbutil: Rework action texts for ipod6g bootloader installation.

The logging entries do word wrapping, so no need to add hard line breaks. Those will become problematic for translations and in some cases on UI scaling. Instead add an empty line after the header to make things clearer.
rbutil/rbutilqt/base/bootloaderinstalls5l.cpp [diff]
Dominik Riebeling
2nd Jan 20:31 e74cde1c6e: rbutil: Remove unused function.
rbutil/rbutilqt/base/progressloggerinterface.h [diff]
rbutil/rbutilqt/progressloggergui.cpp [diff]
rbutil/rbutilqt/progressloggergui.h [diff]
Dominik Riebeling
2nd Jan 20:31 bf17c347fc: rbutil: Fix some texts.
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
Dominik Riebeling
2nd Jan 20:31 f9d23bfd41: rbutil: Modernize connect() to new pointer-to-member syntax.
rbutil/rbutilqt/base/talkfile.cpp [diff]
rbutil/rbutilqt/base/ttsfestival.cpp [diff]
rbutil/rbutilqt/base/ttssapi.cpp [diff]
rbutil/rbutilqt/base/voicefile.cpp [diff]
rbutil/rbutilqt/base/zipinstaller.cpp [diff]
Dominik Riebeling
2nd Jan 20:31 022bbad762: rbutil: Fix cleaning cache.

As with calculating the size cleaning the cache folder needs to be recursive.
rbutil/rbutilqt/configure.cpp [diff]
Dominik Riebeling
2nd Jan 20:31 ec01c57022: rbutil: Fix cache size calculation.

We're using Qt's caching mechanism since long, which uses subfolders, so we need to recursively traverse that to get the size of the cache folder.
rbutil/rbutilqt/base/utils.cpp [diff]
rbutil/rbutilqt/base/utils.h [diff]
rbutil/rbutilqt/configure.cpp [diff]
Dominik Riebeling
2nd Jan 20:31 65d0867a25: rbutil: Add option to langstat to pass git hash.

Don't always operate on the remote head, instead default to the local HEAD, and allow passing a hash to use for calculating statistics.
rbutil/rbutilqt/langstats.py [diff]
utils/common/gitscraper.py [diff]
Dominik Riebeling
2nd Jan 20:31 eaf86a22d3: rbutil: Add missing Q_OBJECT macro to PlayerBuildInfo.

Needed to make translated strings actually get translated.
rbutil/rbutilqt/base/playerbuildinfo.h [diff]
Dominik Riebeling
31th Dec 13:11 10e2f53ff5: bspatch: Fix the standalone build

(broken by 1e12990)
rbutil/libtools.make [diff]
Solomon Peachy
25th Dec 17:47 ca09f91f64: Fix deadlocks when trying to buffer large album art.

Internally, buffering tries to load the entire album art file into the audio buffer, which will fail if the file is larger than the buffer. Playback.c interprets a file failing to buffer to mean that the buffer is full, so it waits for more space and tries again. This results in a deadlock since the file will never fit.

Change bufopen to return a new error condition when an image file will not fit on the buffer because it is too large: ERR_BITMAP_TOO_LARGE. Note that we arbitrarily set "too large" to be within 64KB of the entire buffer size or larger, this could be adjusted if needed.

Change audio_load_albumart to pass through error messages from bufopen.

In playback.c, check to see why audio_load_albumart fails. If it fails because the file is too large to buffer, simply ignore the file. If it fails because the file would fit but the buffer is full, try again later.
apps/buffering.c [diff]
apps/buffering.h [diff]
apps/playback.c [diff]
apps/radio/radioart.c [diff]
Michael Giacomelli
24th Dec 05:40 b5e6c30a61: USB: Reset poweroff timer for all USB events

Without this, if a device is left plugged in and idle, unplugging it will trigger an immediate shutdown.
firmware/usb.c [diff]
Solomon Peachy
17th Dec 18:29 c842a13651: voice: Fix accidental warnings
apps/voice_thread.c [diff]
Solomon Peachy
17th Dec 18:11 1aaa2824b6: voice: Increase voice thread stack size on hosted targets

Fixes a stack overflow on Sony NWZ players when loading the voice file
apps/voice_thread.c [diff]
Solomon Peachy
16th Dec 19:54 02119357dc: erosq: Enable HAVE_SCROLLWHEEL for saner scroll wheel handling

Basically no longer treat SCROLL_FWD/BACK as "button" events, instead relying on the scrollwheel hooks to handle things properly.
firmware/export/config/aigoerosq.h [diff]
firmware/target/hosted/button-devinput.c [diff]
Solomon Peachy
14th Dec 19:19 0215c37ceb: rbutil: Remove logo that isn't used anymore.
rbutil/rbutilqt/icons/rblogo.png [deleted]
Dominik Riebeling
14th Dec 19:18 2b00166a00: rbutil: Always use svg icon for Window icon.

Since we now have svg support enabled (and used) for all platforms we can simply use the svg one, and bring it in line with the rest of the icon.
rbutil/rbutilqt/icons/rockbox-128.png [deleted]
rbutil/rbutilqt/icons/rockbox-16.png [deleted]
rbutil/rbutilqt/icons/rockbox-256.png [deleted]
rbutil/rbutilqt/icons/rockbox-32.png [deleted]
rbutil/rbutilqt/icons/rockbox-48.png [deleted]
rbutil/rbutilqt/icons/rockbox-64.png [deleted]
rbutil/rbutilqt/rbutilqt.cpp [diff]
rbutil/rbutilqt/rbutilqt.qrc [diff]
Dominik Riebeling
14th Dec 17:29 7ae98845f0: rbutil: Change style to Fusion on Windows.

The default UI style has some issues with HiDPI support. Use the Qt built-in Fusion instead. This looks somewhat different to the native Windows UI, but works better on HiDPI displays.
rbutil/rbutilqt/main.cpp [diff]
Dominik Riebeling
14th Dec 17:29 f3371c1d78: rbutil: Improve HiDPI support.

Since we embed a manifest file on Windows we also need to indicate HiDPI support in it. Otherwise it will only work partially.
rbutil/rbutilqt/rbutilqt.manifest [diff]
Dominik Riebeling
14th Dec 04:14 64cc9aad73: Do not resize images greater than 32767 pixels in either dimension

Internally, the resizing code uses the rockbox dim structure, which uses signed shorts.
apps/recorder/jpeg_load.c [diff]
Michael Giacomelli
14th Dec 01:46 56f4ec9668: voices: Enable Russian in the nightly voice builds.

It's using espeak-ng's default 'zle/ru' voice, which have to do until someone suggests better settings or engine.
tools/builds.pm [diff]
Solomon Peachy
14th Dec 00:21 da1fbb6d1a: skinengine: Make sure logical IF operator doesn't compare a garbage value
apps/gui/skin_engine/skin_tokens.c [diff]
Solomon Peachy
14th Dec 00:20 b6a16949e8: playlist: Fix out-of-bounds array access when the directory is blank
apps/playlist.c [diff]
Solomon Peachy
14th Dec 00:19 ce7731527a: announce_status: Fix incorrect function prototype definition
apps/plugins/announce_status.c [diff]
Solomon Peachy
13th Dec 04:17 72e9b61061: manual: Replace all rockbox.org urls with https.

In the process, utilize the \download{} and \wikilink{} commands instead of direct URLs.
manual/advanced_topics/main.tex [diff]
manual/appendix/appendix.tex [diff]
manual/configure_rockbox/theme_settings.tex [diff]
manual/getting_started/gigabeat_install.tex [diff]
manual/getting_started/h10_install.tex [diff]
manual/getting_started/iaudio_install.tex [diff]
manual/getting_started/installation.tex [diff]
manual/getting_started/iriver_install.tex [diff]
manual/getting_started/main.tex [diff]
manual/getting_started/mpio_install.tex [diff]
manual/getting_started/mrobe100_install.tex [diff]
manual/getting_started/samsungyh_install.tex [diff]
manual/getting_started/vibe500_install.tex [diff]
manual/getting_started/xduoox3_install.tex [diff]
manual/intro/main.tex [diff]
manual/plugins/pdbox.tex [diff]
manual/plugins/sgt-puzzles.tex [diff]
manual/preamble.tex [diff]
manual/rockbox-html.cfg [diff]
Solomon Peachy
13th Dec 03:26 b459ded533: updatelang: Fix a couple of typos in the output used by the translate site
tools/updatelang [diff]
Solomon Peachy
13th Dec 03:10 55d301184d: Get rid of a _long_ obsolete tool.
tools/svnupcheck.pl [deleted]
Solomon Peachy
12th Dec 18:43 f7005eb4e4: voice: Generate Dutch voice file now that the translation is complete
tools/builds.pm [diff]
tools/voice.pl [diff]
Solomon Peachy
12th Dec 18:43 afad2c1dcc: FS #13261: Update Dutch Translation (Issa Beganović)
apps/lang/nederlands.lang [diff]
docs/CREDITS [diff]
Solomon Peachy
12th Dec 05:36 512be370c6: list: reset viewport to avoid corrupting the text in the first line

While using Rockbox for a while on my 1st-gen iPod mini I noticed that the first entry of a list sometimes displays a wrong character at the 18th column. For example, the ':' character would display as 'z', the
'-' character as 'm', 0x00 would display '@' and so on. Oddly enough this only occurred when the scrollbar was enabled.

I figured that the call to `display->set_viewport(list_text_vp);` in the for loop inside `list_draw(...)` causes this. Digging deeper I noticed that in the `lcd-bitmap-common.c` driver the `current_viewport` was pointing to the start of the line's text. From what I can tell the cause of this was that the viewport was set to a struct with a shorter scope than the entire function.

The actual fix for this is quite straightforward -- once the scrollbar has been drawn the viewport is now changed back to the default one.
apps/gui/bitmap/list.c [diff]
Georg Gadinger
11th Dec 21:26 b339400531: voice: Last commit didn't work from a clean build.
apps/lang/lang.make [diff]
Solomon Peachy
11th Dec 21:15 227ac2b715: voice: Add voice-corrections.txt to voicestrings.zip

This is in keeping with un-hardcoding stuff from rbutil.
apps/lang/lang.make [diff]
Solomon Peachy
11th Dec 20:39 60139cf9f1: FS #9273: Add a bunch of voice corrections for Japanese.

Heavily modified from the original patches.
tools/voice-corrections.txt [diff]
Solomon Peachy
11th Dec 20:35 e4b514917e: lang: The "InvalidVoice" language file wasn't being included properly

It ended up inside the 'langs/voicestrings.zip' with an absolute path when it should of landed in langs/ directly.
apps/lang/SOURCES [diff]
tools/buildzip.pl [diff]
Solomon Peachy
10th Dec 20:30 9ad1ef0e55: rbutil: Fix encoding for themes info data.

The themes info data uses utf-8 encoding, while QSettings defaults to ASCII and uses escape sequences, resulting in non-ASCII characters being garbled. Use the correct encoding.
rbutil/rbutilqt/themesinstallwindow.cpp [diff]
Dominik Riebeling
10th Dec 04:46 52d437b33e: FS13260: Updated Polish Translation (Adam Rak)
apps/lang/polski.lang [diff]
Solomon Peachy
10th Dec 04:31 d99320047c: Correct the filenames for the Sony NWZ-A680 pictures
manual/rockbox_interface/images/sonynwa860-front.pdf manual/rockbox_interface/images/sonynzwa860-front.pdf [rename]
manual/rockbox_interface/images/sonynwa860-front.png manual/rockbox_interface/images/sonynzwa860-front.png [rename]
manual/rockbox_interface/images/sonynwa860-front.svg manual/rockbox_interface/images/sonynzwa860-front.svg [rename]
Solomon Peachy
10th Dec 03:40 c07c08506b: SVG image of the Sony NWZ-A860 and other formats for the manual.
manual/rockbox_interface/images/sonynwa860-front.pdf [new]
manual/rockbox_interface/images/sonynwa860-front.png [new]
manual/rockbox_interface/images/sonynwa860-front.svg [new]
Szymon Dziok
10th Dec 03:40 dac0610626: SVG image of the FiiO M3K and other formats for the manual.
manual/rockbox_interface/images/fiiom3k-front.pdf [new]
manual/rockbox_interface/images/fiiom3k-front.png [new]
manual/rockbox_interface/images/fiiom3k-front.svg [new]
Szymon Dziok
8th Dec 21:13 0b8c6bd5f0: rbutil: Fix log strings in s5l bootloader installation.

We can't use a ternary expression within the tr() function. While this initially might work as expected it completely breaks translating the actual string -- we need to use separate strings here, and replacing a single word in a sentence will also not work for translations.
rbutil/rbutilqt/base/bootloaderinstalls5l.cpp [diff]
Dominik Riebeling
8th Dec 21:13 d148afca3b: rbutil: Improve HiDPI support.

Replace the Rockbox logo with an svg version. Since the file size (i.e. the page size in the svg) that isn't intended for use as icon we need to enable scaling, and since scaling the label content doesn't keep the aspect ratio we need to explicitly set the desired values.

Notably improves representation on HiDPI monitors. Now only the player icons are still raster images.
rbutil/rbutilqt/rbutilqtfrm.ui [diff]
Dominik Riebeling
8th Dec 19:12 792f05f82a: lcd: Wrap anonymous union initializer in braces

GCC 4.9.4 is apparently smart enough to compile this, but 4.4.4 is not.
firmware/drivers/lcd-color-common.c [diff]
Franklin Wei
7th Dec 07:11 40b6897f4f: puzzles: tooling to automate the resyncing process

This adds a resync.sh script that handles most of the resyncing process: copying new sources, regenerating help, and staging for commit. I also took this opportunity to make the process more efficient and consistent by only selecting the types of files that we care about and ignoring any autogenerated temporary files that may be in the upstream tree.
apps/plugins/puzzles/genhelp.sh [diff]
apps/plugins/puzzles/resync.sh [new]
Franklin Wei
7th Dec 07:11 b7ce408f65: puzzles: update frontend for new midend_get_cursor_location semantics

midend_get_cursor_location now returns a bool indicating success.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
7th Dec 07:08 84cd812ccd: puzzles: resync with upstream

This updates the upstream sources to include a modified get_cursor_location patch that I anticipate Simon will merge shortly. Also, I've streamlined the resync process to only copy the exact files we need to reduce clutter.
apps/plugins/puzzles/help/blackbox.c [diff]
apps/plugins/puzzles/help/bridges.c [diff]
apps/plugins/puzzles/help/cube.c [diff]
apps/plugins/puzzles/help/dominosa.c [diff]
apps/plugins/puzzles/help/fifteen.c [diff]
apps/plugins/puzzles/help/filling.c [diff]
apps/plugins/puzzles/help/flip.c [diff]
apps/plugins/puzzles/help/flood.c [diff]
apps/plugins/puzzles/help/galaxies.c [diff]
apps/plugins/puzzles/help/guess.c [diff]
apps/plugins/puzzles/help/inertia.c [diff]
apps/plugins/puzzles/help/keen.c [diff]
apps/plugins/puzzles/help/lightup.c [diff]
apps/plugins/puzzles/help/loopy.c [diff]
apps/plugins/puzzles/help/magnets.c [diff]
apps/plugins/puzzles/help/map.c [diff]
apps/plugins/puzzles/help/mines.c [diff]
apps/plugins/puzzles/help/net.c [diff]
apps/plugins/puzzles/help/netslide.c [diff]
apps/plugins/puzzles/help/palisade.c [diff]
apps/plugins/puzzles/help/pattern.c [diff]
apps/plugins/puzzles/help/pearl.c [diff]
apps/plugins/puzzles/help/pegs.c [diff]
apps/plugins/puzzles/help/range.c [diff]
apps/plugins/puzzles/help/rect.c [diff]
apps/plugins/puzzles/help/samegame.c [diff]
apps/plugins/puzzles/help/signpost.c [diff]
apps/plugins/puzzles/help/singles.c [diff]
apps/plugins/puzzles/help/sixteen.c [diff]
apps/plugins/puzzles/help/slant.c [diff]
...and 139 more files.
Franklin Wei
5th Dec 18:11 ae59995553: rbutil: Update changelog.

Add changes that haven't been added yet.
rbutil/rbutilqt/changelog.txt [diff]
Dominik Riebeling
5th Dec 18:11 731c5db875: rbutil: Fix autodetection messing up with multiple players.

When multiple players are connected, and at least one of them has a USB ID that is shared between multiple targets the resulting list would be off. Fix that by avoiding to modify a list while iterating over it, that's usually not a good idea.
rbutil/rbutilqt/base/autodetection.cpp [diff]
Dominik Riebeling
5th Dec 18:11 82b53ebf54: rbutil: Merge finding player by USB ID with PlayerBuildInfo.

Remaining rework of player info data handling.
rbutil/rbutilqt/base/autodetection.cpp [diff]
rbutil/rbutilqt/base/playerbuildinfo.cpp [diff]
rbutil/rbutilqt/base/playerbuildinfo.h [diff]
rbutil/rbutilqt/base/systeminfo.cpp [deleted]
rbutil/rbutilqt/base/systeminfo.h [deleted]
rbutil/rbutilqt/configure.cpp [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.h [diff]
rbutil/rbutilqt/installtalkwindow.cpp [diff]
rbutil/rbutilqt/rbutilqt.cpp [diff]
rbutil/rbutilqt/rbutilqt.pri [diff]
Dominik Riebeling
5th Dec 12:44 0e315e848a: rbutil: Rework handling of available voice languages.

- Move Rockbox voice language names handling to PlayerBuildInfo, and handle it similarly to the rest of the device specific values. Rework internal handling to simplify things.
- Enable language list from build server for installing prerendered voice files other than english.
- Extend unit tests.
rbutil/rbutilqt/base/playerbuildinfo.cpp [diff]
rbutil/rbutilqt/base/playerbuildinfo.h [diff]
rbutil/rbutilqt/base/systeminfo.cpp [diff]
rbutil/rbutilqt/base/systeminfo.h [diff]
rbutil/rbutilqt/base/ttssapi.cpp [diff]
rbutil/rbutilqt/createvoicewindow.cpp [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.h [diff]
rbutil/rbutilqt/test/test-playerbuildinfo.cpp [diff]
Dominik Riebeling
5th Dec 10:19 ac5fc26085: rbutil: Make target list part of new player info.

Also remove the unused cases.
rbutil/rbutilqt/base/playerbuildinfo.cpp [diff]
rbutil/rbutilqt/base/playerbuildinfo.h [diff]
rbutil/rbutilqt/base/systeminfo.cpp [diff]
rbutil/rbutilqt/base/systeminfo.h [diff]
rbutil/rbutilqt/configure.cpp [diff]
Dominik Riebeling
4th Dec 20:26 c51c6c1eb3: rbutil: Add MIDI patchset to plugin data installation.

Add installing the MIDI patchset, and subsequently rename from Game Files to Plugin Data Files.
rbutil/rbutilqt/base/rbsettings.cpp [diff]
rbutil/rbutilqt/base/rbsettings.h [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.h [diff]
rbutil/rbutilqt/gui/selectiveinstallwidgetfrm.ui [diff]
Dominik Riebeling
3rd Dec 21:25 7739bb31b3: rbutil: Convert RockboxInfo unit test to data driven QTest.
rbutil/rbutilqt/test/test-rockboxinfo.cpp [diff]
rbutil/rbutilqt/test/test-rockboxinfo.pro [diff]
Dominik Riebeling
3rd Dec 21:25 3300815c44: rbutil: Update and fix unit tests.

- Fix changed dependencies and provide real stubs.
- Update to use QTest global data for test table, so individual test vector entries show up as individual tests. That way a single comparison failing doesn't make all appear as failed and provide better indication what went wrong.
rbutil/rbutilqt/test/stubs/stubs-compareversion.cpp [new]
rbutil/rbutilqt/test/test-compareversion.cpp [diff]
rbutil/rbutilqt/test/test-compareversion.pro [diff]
Dominik Riebeling
3rd Dec 21:25 b064a6cbb5: rbutil: Rework and merge player and build server info handling.

Handling the data for players from rbutil.ini and the build-info data from the server is closely related. Splitting things up into different classes only creates tightly coupling, which is unnecessary, and the need to differentiate between them in the application.

Merge both classes into a single one and rework handling so the application doesn't have to deal with two separate classes anymore.

Furthermore, change URL templates to use new values from build-info instead of hard coding them.
rbutil/rbutilqt/base/autodetection.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstalls5l.cpp [diff]
rbutil/rbutilqt/base/playerbuildinfo.cpp [new]
rbutil/rbutilqt/base/playerbuildinfo.h [new]
rbutil/rbutilqt/base/rbsettings.cpp [diff]
rbutil/rbutilqt/base/serverinfo.cpp [deleted]
rbutil/rbutilqt/base/serverinfo.h [deleted]
rbutil/rbutilqt/base/systeminfo.cpp [diff]
rbutil/rbutilqt/base/systeminfo.h [diff]
rbutil/rbutilqt/base/talkgenerator.cpp [diff]
rbutil/rbutilqt/base/utils.cpp [diff]
rbutil/rbutilqt/base/voicefile.cpp [diff]
rbutil/rbutilqt/configure.cpp [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.h [diff]
rbutil/rbutilqt/rbutil.ini [diff]
rbutil/rbutilqt/rbutilqt.cpp [diff]
rbutil/rbutilqt/rbutilqt.pri [diff]
rbutil/rbutilqt/test/stubs/stubs-playerbuildinfo.cpp [new]
rbutil/rbutilqt/test/stubs/stubs-serverinfo.cpp [deleted]
rbutil/rbutilqt/test/test-playerbuildinfo.cpp [new]
rbutil/rbutilqt/test/test-serverinfo.pro rbutil/rbutilqt/test/test-playerbuildinfo.pro [rename]
rbutil/rbutilqt/test/test-serverinfo.cpp [deleted]
rbutil/rbutilqt/themesinstallwindow.cpp [diff]
Dominik Riebeling
3rd Dec 21:25 78a01db47c: rbutil: Get rid of configure_modelname in rbutil.ini.

The target selection string used for configure is the same as the internally used player string, minus the (optional) variant suffix. Don't duplicate things, simply strip the suffix.
rbutil/rbutilqt/base/systeminfo.cpp [diff]
rbutil/rbutilqt/base/systeminfo.h [diff]
rbutil/rbutilqt/base/utils.cpp [diff]
rbutil/rbutilqt/rbutil.ini [diff]
rbutil/rbutilqt/themesinstallwindow.cpp [diff]
Dominik Riebeling
29th Nov 14:54 10f05b3b27: build-info: Replace %MODEL% with %TARGET%
tools/build-info.pl [diff]
Solomon Peachy
29th Nov 13:51 a5961c944b: FS #5320: Keypad hold doesn't let go until scrolling is used (ipod 4g/5g)

Patch by Boris Gjenero
firmware/target/arm/ipod/button-clickwheel.c [diff]
Solomon Peachy
27th Nov 20:30 c8da2bc145: rbutil: Treat Aigo Eros clones as variant of it.

Fixes installing those builds, since they relied on the broken buildserver_modelname. Also simplifies internal handling.
rbutil/rbutilqt/rbutil.ini [diff]
Dominik Riebeling
27th Nov 19:54 8765650fe0: rbutil: Remove buildserver modelname string.

This isn't needed anymore, and the only player it was actually used for were the 8MB modded Archos ones, for which the usage was broken.
rbutil/rbutilqt/base/systeminfo.cpp [diff]
rbutil/rbutilqt/base/systeminfo.h [diff]
rbutil/rbutilqt/rbutil.ini [diff]
Dominik Riebeling
27th Nov 19:48 716643572d: rbutil: Remove Archos 8MB modded players.

The Archos Recorder has 2MB RAM and can be modded to 8MB. While we previously had separate builds for those the last release which it was built for is 3.4; installing for 8MB modded players was broken and installed the normal 2MB build.

Since we never provided builds for other hardware mods (like Ondio backlight mod, h100 series RTC mod) there isn't much reason to do so for the 8MB mod. Furthermore, given that the current state is broken and nobody complained the number of users of the mod can be assumed to be very low, and people with a modded player also building Rockbox on their own.
rbutil/rbutilqt/rbutil.ini [diff]
Dominik Riebeling
26th Nov 21:41 3ee6ce956f: rbutil: Remove duplicated enum entry.

SystemInfo::PlatformName and Name actually retrieve the same value. That's not usefule, so remove one of both.
rbutil/rbutilqt/base/systeminfo.cpp [diff]
rbutil/rbutilqt/base/systeminfo.h [diff]
rbutil/rbutilqt/base/utils.cpp [diff]
rbutil/rbutilqt/configure.cpp [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
Dominik Riebeling
23rd Nov 19:44 185dfb42c2: rbutil: Fix wrong format string.

Only caused a warning, but no need to pass format parameters if there is no format string.
rbutil/rbutilqt/configure.cpp [diff]
Dominik Riebeling
23rd Nov 19:44 9a52991bbd: rbutil: Add support for installing daily builds.
rbutil/rbutilqt/base/serverinfo.cpp [diff]
Dominik Riebeling
23rd Nov 19:44 1ba6785e46: rbutil: Modernize connect() to new pointer-to-member syntax.
rbutil/rbutilqt/sysinfo.cpp [diff]
rbutil/rbutilqt/systrace.cpp [diff]
Dominik Riebeling
23rd Nov 19:44 ec730f1609: rbutil: Fix selecting the previously selected build type.

When starting Rockbox Utility select the same build type that was used during the previous run. This broke during refactoring, fix it.
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
Dominik Riebeling
22nd Nov 17:41 64fe7e03a8: build-info: Additions for new rbutil.
tools/build-info.pl [diff]
Solomon Peachy
22nd Nov 17:30 f598ef9c27: rbutil: Add support for installing daily builds.
rbutil/rbutilqt/base/serverinfo.cpp [diff]
rbutil/rbutilqt/base/serverinfo.h [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
rbutil/rbutilqt/rbutil.ini [diff]
Dominik Riebeling
22nd Nov 17:30 0ea8f074ed: rbutil: Remove Install Voice button from Accessibility tab.

Installing the voice file is now done via the main installation.
rbutil/rbutilqt/rbutilqt.cpp [diff]
rbutil/rbutilqt/rbutilqt.h [diff]
rbutil/rbutilqt/rbutilqtfrm.ui [diff]
Dominik Riebeling
22nd Nov 17:30 0b911b7500: rbutil: Fix wrong section name in installation log.
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
Dominik Riebeling
22nd Nov 17:30 ff7e8b4293: deploy: Update sources list for Rockbox Utility.
utils/common/deploy-rbutil.py [diff]
Dominik Riebeling
22nd Nov 14:45 25529e4fe0: lang: More automated rejiggering, USB_MODE_* is no longer ibasso-specific
apps/lang/bulgarian.lang [diff]
apps/lang/chinese-simp.lang [diff]
apps/lang/chinese-trad.lang [diff]
apps/lang/deutsch.lang [diff]
apps/lang/francais.lang [diff]
apps/lang/greek.lang [diff]
apps/lang/italiano.lang [diff]
apps/lang/japanese.lang [diff]
apps/lang/magyar.lang [diff]
apps/lang/nederlands.lang [diff]
apps/lang/norsk.lang [diff]
apps/lang/polski.lang [diff]
apps/lang/portugues.lang [diff]
apps/lang/slovak.lang [diff]
apps/lang/srpski.lang [diff]
apps/lang/svenska.lang [diff]
apps/lang/turkce.lang [diff]
apps/lang/vlaams.lang [diff]
tools/updatelang [diff]
Solomon Peachy
22nd Nov 13:52 e8f8df4ee0: rbutil: Update Iriver h100 / h300 series bootloader paths.

The patching code now requires the new version 8.0 bootloaders.
rbutil/rbutilqt/rbutil.ini [diff]
Dominik Riebeling
22nd Nov 13:43 1b9eebb39d: rbutil: Update Windows application icon.

Bring it in line with the other icons and always show the same image, regardless of size.
rbutil/rbutilqt/icons/rockbox.ico [diff]
Dominik Riebeling
22nd Nov 13:43 ba2bbd60bd: rbutil: Move Manual installation to main tab.

The manual tab didn't show the manual, so it's clearer to have that as part of the main tab.

Also fixes the wrong manual getting downloaded for releases.
rbutil/rbutilqt/base/rbsettings.cpp [diff]
rbutil/rbutilqt/base/rbsettings.h [diff]
rbutil/rbutilqt/base/serverinfo.cpp [diff]
rbutil/rbutilqt/base/serverinfo.h [diff]
rbutil/rbutilqt/base/systeminfo.cpp [diff]
rbutil/rbutilqt/gui/manualwidget.cpp [deleted]
rbutil/rbutilqt/gui/manualwidget.h [deleted]
rbutil/rbutilqt/gui/manualwidgetfrm.ui [deleted]
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.h [diff]
rbutil/rbutilqt/gui/selectiveinstallwidgetfrm.ui [diff]
rbutil/rbutilqt/rbutil.ini [diff]
rbutil/rbutilqt/rbutilqt.cpp [diff]
rbutil/rbutilqt/rbutilqt.h [diff]
rbutil/rbutilqt/rbutilqt.pri [diff]
rbutil/rbutilqt/rbutilqtfrm.ui [diff]
Dominik Riebeling
22nd Nov 13:43 5f36aed4bf: rbutil: Unify template parameter for release version.

Don't use different parameter names for the same parameter.
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
rbutil/rbutilqt/rbutil.ini [diff]
Dominik Riebeling
22nd Nov 13:43 dfe9d63640: rbutil: Modernize connect() to new pointer-to-member syntax.
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
Dominik Riebeling
22nd Nov 13:43 1a3d12ceea: rbutil: Don't try to install voice file if it's not available.
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
Dominik Riebeling
22nd Nov 13:43 0d2257d1f7: rbutil: Replace stringly types build type handling with enum.

Avoid having to repeat the same strings for lookup again and again and use an enum instead, which is also less error prone.
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.h [diff]
Dominik Riebeling
22nd Nov 13:43 c2dacf6736: rbutil: Add voice installation to main widget.

Add checkbox for installing the prerendered voice file to the main install widget. Current limitations:
- only english for now. The available languages are available from the build server but are not yet taken into account.
- only for releases. This is the same limitations we had before. We do have voices for daily builds, but that requires adding daily builds again (those have been removed some time back.)
- Old voice installation dialog still present.
rbutil/rbutilqt/base/rbsettings.cpp [diff]
rbutil/rbutilqt/base/rbsettings.h [diff]
rbutil/rbutilqt/base/systeminfo.cpp [diff]
rbutil/rbutilqt/base/systeminfo.h [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.h [diff]
rbutil/rbutilqt/gui/selectiveinstallwidgetfrm.ui [diff]
rbutil/rbutilqt/rbutil.ini [diff]
rbutil/rbutilqt/rbutilqt.cpp [diff]
Dominik Riebeling
22nd Nov 13:43 ad37655687: rbutil: Use pattern replacement for SystemInfo build type.

Use pattern replacement for lookup instead of expanded values. Will allow simplifying things later for better handling of different build types.
rbutil/rbutilqt/base/serverinfo.cpp [diff]
rbutil/rbutilqt/base/systeminfo.cpp [diff]
rbutil/rbutilqt/base/systeminfo.h [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
rbutil/rbutilqt/rbutil.ini [diff]
rbutil/rbutilqt/rbutilqt.cpp [diff]
rbutil/rbutilqt/test/stubs/stubs-serverinfo.cpp [diff]
rbutil/rbutilqt/test/test-serverinfo.cpp [diff]
Dominik Riebeling
22nd Nov 05:12 6b3b4df6f6: rockbox: move firmware checksum algorithms into a common header

Before this was just implemented inline wherever it was needed. Now it is provided as 2 inline functions in a header called checksum.h. There should be no differences in actual behavior.
apps/plugins/crypt_firmware.c [diff]
apps/plugins/iriver_flash.c [diff]
firmware/common/rb-loader.c [diff]
firmware/include/checksum.h [new]
James Buren
22nd Nov 04:55 2eb191a3f4: manual: hopefully fix html generation

(by using the 'scrhack' package)
manual/preamble.tex [diff]
Solomon Peachy
22nd Nov 04:17 9d33ed10ab: manual: Remove some (very) obsolete latex style files.

* scrreprt.4ht
* booktabs.sty
* optional.sty
* pdfdraftcopy.sty

Use system-provided stuff instead.
manual/booktabs.sty [deleted]
manual/optional.sty [deleted]
manual/pdfdraftcopy.sty [deleted]
manual/scrreprt.4ht [deleted]
Solomon Peachy
22nd Nov 03:48 332433eb3d: fix a few manual warnings
manual/appendix/config_file_options.tex [diff]
manual/frontpage/frontpage.tex [diff]
manual/getting_started/main.tex [diff]
manual/intro/main.tex [diff]
manual/preamble.tex [diff]
manual/rockbox_interface/main.tex [diff]
Moshe Piekarski
22nd Nov 00:55 4641d86c46: xduoox3: Fix a few issues with the manual
manual/platform/keymap-xduoox3.tex [diff]
manual/plugins/pegbox.tex [diff]
manual/plugins/wormlet.tex [diff]
Solomon Peachy
21st Nov 09:21 efacce58eb: rbutil: Modernize connect() to new pointer-to-member syntax.
rbutil/rbutilqt/base/bootloaderinstallams.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallbase.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallbspatch.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallchinachip.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallfile.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallhex.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallimx.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallipod.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallmi4.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallmpio.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstalls5l.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallsansa.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstalltcc.cpp [diff]
Dominik Riebeling
19th Nov 20:32 f29b81d521: rbutil: Avoid creating temporary object.

There's a static function for that.
rbutil/rbutilqt/configure.cpp [diff]
rbutil/rbutilqt/systrace.cpp [diff]
Dominik Riebeling
19th Nov 20:32 fb6840e572: rbutil: Remove done() signal from Themes Install window.

This shadows a slot from the base class. Since it isn't used simply remove it.
rbutil/rbutilqt/themesinstallwindow.cpp [diff]
rbutil/rbutilqt/themesinstallwindow.h [diff]
Dominik Riebeling
19th Nov 20:32 12764781c6: rbutil: Modernize code to use C++11 nullptr.
rbutil/rbutilqt/base/autodetection.cpp [diff]
rbutil/rbutilqt/base/autodetection.h [diff]
rbutil/rbutilqt/base/bootloaderinstallams.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallbase.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallbspatch.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallchinachip.h [diff]
rbutil/rbutilqt/base/bootloaderinstallhelper.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallhex.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallhex.h [diff]
rbutil/rbutilqt/base/bootloaderinstallimx.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallipod.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallsansa.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallsansa.h [diff]
rbutil/rbutilqt/base/bootloaderinstalltcc.cpp [diff]
rbutil/rbutilqt/base/encoderexe.h [diff]
rbutil/rbutilqt/base/encoderrbspeex.cpp [diff]
rbutil/rbutilqt/base/encoderrbspeex.h [diff]
rbutil/rbutilqt/base/httpget.h [diff]
rbutil/rbutilqt/base/mspackutil.cpp [diff]
rbutil/rbutilqt/base/rbsettings.cpp [diff]
rbutil/rbutilqt/base/system.cpp [diff]
rbutil/rbutilqt/base/systeminfo.cpp [diff]
rbutil/rbutilqt/base/talkfile.cpp [diff]
rbutil/rbutilqt/base/ttsbase.cpp [diff]
rbutil/rbutilqt/base/ttsespeak.h [diff]
rbutil/rbutilqt/base/ttsespeakng.h [diff]
rbutil/rbutilqt/base/ttsexes.h [diff]
rbutil/rbutilqt/base/ttsfestival.h [diff]
rbutil/rbutilqt/base/ttsflite.h [diff]
rbutil/rbutilqt/base/ttsmimic.h [diff]
...and 28 more files.
Dominik Riebeling
19th Nov 20:32 f608de723c: rbutil: Convert ServerInfo to singleton.
rbutil/rbutilqt/base/serverinfo.cpp [diff]
rbutil/rbutilqt/base/serverinfo.h [diff]
rbutil/rbutilqt/configure.cpp [diff]
rbutil/rbutilqt/gui/manualwidget.cpp [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
rbutil/rbutilqt/rbutilqt.cpp [diff]
rbutil/rbutilqt/test/test-serverinfo.cpp [diff]
Dominik Riebeling
19th Nov 19:53 f8fb4274ee: rbutil: Rework server info data handling.

Remove map that isn't used anymore.
rbutil/rbutilqt/base/serverinfo.cpp [diff]
rbutil/rbutilqt/base/serverinfo.h [diff]
Dominik Riebeling
19th Nov 17:33 497618e51e: Add libraries to native MIPS toolchain to enable bluetooth support

libffi, zlib, glib, expat, and dbus
tools/rockboxdev.sh [diff]
Solomon Peachy
19th Nov 14:52 b7b0c7c648: languages: convert recording_swcodec -> recording
apps/features.txt [diff]
apps/lang/arabic.lang [diff]
apps/lang/basque.lang [diff]
apps/lang/bulgarian.lang [diff]
apps/lang/catala.lang [diff]
apps/lang/chinese-simp.lang [diff]
apps/lang/chinese-trad.lang [diff]
apps/lang/czech.lang [diff]
apps/lang/dansk.lang [diff]
apps/lang/deutsch.lang [diff]
apps/lang/english-us.lang [diff]
apps/lang/english.lang [diff]
apps/lang/espanol.lang [diff]
apps/lang/finnish.lang [diff]
apps/lang/francais.lang [diff]
apps/lang/galego.lang [diff]
apps/lang/greek.lang [diff]
apps/lang/hebrew.lang [diff]
apps/lang/hrvatski.lang [diff]
apps/lang/islenska.lang [diff]
apps/lang/italiano.lang [diff]
apps/lang/japanese.lang [diff]
apps/lang/korean.lang [diff]
apps/lang/latviesu.lang [diff]
apps/lang/lietuviu.lang [diff]
apps/lang/magyar.lang [diff]
apps/lang/nederlands.lang [diff]
apps/lang/norsk-nynorsk.lang [diff]
apps/lang/norsk.lang [diff]
apps/lang/polski.lang [diff]
...and 17 more files.
Solomon Peachy
19th Nov 14:52 6d62a7a1bd: Clean out some obsolete strings from the Russian translation
apps/lang/russian.lang [diff]
Solomon Peachy
18th Nov 19:38 3027cead01: hosted: Improve buffer underrun handling in the ALSA driver

* Bump internal mix buffer size by 4x, to 1K frames (matching ALSA period)
* Handle an underrun that occurs when filling the audio buffer
* Log underruns and make them available in the debug info
firmware/export/pcm_mixer.h [diff]
firmware/target/hosted/agptek/debug-agptek.c [diff]
firmware/target/hosted/pcm-alsa.c [diff]
firmware/target/hosted/pcm-alsa.h [diff]
Solomon Peachy
18th Nov 14:50 473aa615de: Minor additions to g#3035
manual/plugins/main.tex [diff]
Moshe Piekarski
18th Nov 14:35 0aa702836b: Manual: remove most HWCODEC artifacts

This causes 3 changes in layout. 2 I can't track down and 1 is better this way.
manual/advanced_topics/main.tex [diff]
manual/appendix/appendix.tex [diff]
manual/appendix/config_file_options.tex [diff]
manual/appendix/file_formats.tex [diff]
manual/appendix/wps_tags.tex [diff]
manual/configure_rockbox/bookmarking.tex [diff]
manual/configure_rockbox/display_options.tex [diff]
manual/configure_rockbox/main.tex [diff]
manual/configure_rockbox/playback_options.tex [diff]
manual/configure_rockbox/recording_settings.tex [diff]
manual/configure_rockbox/sound_settings.tex [diff]
manual/configure_rockbox/system_options.tex [diff]
manual/configure_rockbox/theme_settings.tex [diff]
manual/getting_started/installation.tex [diff]
manual/main_menu/fmradio.tex [diff]
manual/plugins/lrcplayer.tex [diff]
manual/plugins/main.tex [diff]
manual/plugins/oscilloscope.tex [diff]
manual/plugins/pictureflow.tex [diff]
manual/plugins/text_viewer.tex [diff]
manual/plugins/theme_remove.tex [diff]
manual/rockbox_interface/main.tex [diff]
manual/rockbox_interface/tagcache.tex [diff]
manual/rockbox_interface/wps.tex [diff]
Moshe Piekarski
18th Nov 13:50 7c87467ba4: configure: Add prompt for USB Serial into the advanced mode

And explicitly disable USB_ENABLE_SERIAL when HAVE_USBSTACK is not define
firmware/logf.c [diff]
tools/configure [diff]
Solomon Peachy
17th Nov 16:06 20774d88b5: Update english-US language
apps/lang/english-us.lang [diff]
Solomon Peachy
17th Nov 16:06 170f72156b: lang: Drop all deprecated strings, and rename LANG__NEVER to LANG_NEVER
apps/lang/arabic.lang [diff]
apps/lang/basque.lang [diff]
apps/lang/bulgarian.lang [diff]
apps/lang/catala.lang [diff]
apps/lang/chinese-simp.lang [diff]
apps/lang/chinese-trad.lang [diff]
apps/lang/czech.lang [diff]
apps/lang/dansk.lang [diff]
apps/lang/deutsch.lang [diff]
apps/lang/eesti.lang [diff]
apps/lang/english-us.lang [diff]
apps/lang/english.lang [diff]
apps/lang/espanol.lang [diff]
apps/lang/esperanto.lang [diff]
apps/lang/finnish.lang [diff]
apps/lang/francais.lang [diff]
apps/lang/galego.lang [diff]
apps/lang/greek.lang [diff]
apps/lang/hebrew.lang [diff]
apps/lang/hindi.lang [diff]
apps/lang/hrvatski.lang [diff]
apps/lang/islenska.lang [diff]
apps/lang/italiano.lang [diff]
apps/lang/japanese.lang [diff]
apps/lang/korean.lang [diff]
apps/lang/latviesu.lang [diff]
apps/lang/lietuviu.lang [diff]
apps/lang/magyar.lang [diff]
apps/lang/nederlands.lang [diff]
apps/lang/norsk-nynorsk.lang [diff]
...and 17 more files.
Solomon Peachy
17th Nov 16:06 7ff3c94e13: lang: Make all swcodec &| lcd_bitmap strings default.
apps/lang/afrikaans.lang [diff]
apps/lang/arabic.lang [diff]
apps/lang/basque.lang [diff]
apps/lang/bulgarian.lang [diff]
apps/lang/catala.lang [diff]
apps/lang/chinese-simp.lang [diff]
apps/lang/chinese-trad.lang [diff]
apps/lang/czech.lang [diff]
apps/lang/dansk.lang [diff]
apps/lang/deutsch.lang [diff]
apps/lang/eesti.lang [diff]
apps/lang/english-us.lang [diff]
apps/lang/english.lang [diff]
apps/lang/espanol.lang [diff]
apps/lang/esperanto.lang [diff]
apps/lang/finnish.lang [diff]
apps/lang/francais.lang [diff]
apps/lang/galego.lang [diff]
apps/lang/greek.lang [diff]
apps/lang/hebrew.lang [diff]
apps/lang/hindi.lang [diff]
apps/lang/hrvatski.lang [diff]
apps/lang/islenska.lang [diff]
apps/lang/italiano.lang [diff]
apps/lang/japanese.lang [diff]
apps/lang/korean.lang [diff]
apps/lang/latviesu.lang [diff]
apps/lang/lietuviu.lang [diff]
apps/lang/magyar.lang [diff]
apps/lang/nederlands.lang [diff]
...and 19 more files.
Solomon Peachy
17th Nov 11:58 0400a391d3: usb: increase the stack size.

It's not large enough on some targets.

(this will be revisited when the USB insertion prompt stuff is moved out of the USB helper and over to the main thread)
firmware/usb.c [diff]
Solomon Peachy
16th Nov 23:31 ad665a04d2: Manual Bugfix SetWPSContextPlugin
manual/configure_rockbox/wps_context_plugin.tex [diff]
William Wilgus
16th Nov 21:05 4fd1e4364b: fwpatcher: fix compile errors and warnings on modern Linux
tools/fwpatcher/Makefile [diff]
tools/fwpatcher/main.c [diff]
James Buren
16th Nov 20:51 84086af957: update fwpatcher and rbutil checksums for iriver h1x0/h300 V8 bootloader
rbutil/rbutilqt/irivertools/h100sums.h [diff]
rbutil/rbutilqt/irivertools/h120sums.h [diff]
rbutil/rbutilqt/irivertools/h300sums.h [diff]
tools/fwpatcher/h100sums.h [diff]
tools/fwpatcher/h120sums.h [diff]
tools/fwpatcher/h300sums.h [diff]
James Buren
16th Nov 19:44 adee6a11bf: rockbox: fix iriver firmware validation for larger bootloaders

It turns out the code for the firmware size validation was incorrectly using the total length of the firmware file to check if it was too big for the flash rom which caused it to incorrectly flag larger bootloaders as too big even though they would still fit.

As it happens this situation can only really arise after mkboot has been run on the decoded firmware image. Because mkboot writes the actual binary size to the ESTFBINR header we will be using that to check if the firmware image is too large for the flash rom.

Now because this information is embedded in the decrypted / encrypted region we have to collect it as the region is processed so the validation is also moved to after the data processing loop.
tools/fwpatcher/iriver.c [diff]
tools/iriver.c [diff]
James Buren
16th Nov 18:23 64ea644269: mkboot: fix the buffer size used for constructing the final firmware image

It was short by a fair number of bytes which could be reached when attempting to insert bootloaders near the maximum size of 64k. This ensures even the largest acceptable bootloader will not overflow the buffer.
tools/mkboot.c [diff]
James Buren
16th Nov 17:55 63691ad106: Fix the fix, which managed to make things _worse_
apps/settings.c [diff]
Solomon Peachy
16th Nov 17:35 3e32521be5: Fix the red introduced in 9c68c69
apps/settings.c [diff]
Solomon Peachy
16th Nov 17:11 9c68c69cf0: FS13257: Fix inconsistent defaults in the USB mode selection
apps/settings.c [diff]
apps/settings_list.c [diff]
firmware/export/usb.h [diff]
firmware/usb.c [diff]
Solomon Peachy
16th Nov 14:05 5252523937: fwpatcher: fix a few issues with the mksums.pl script

First, the way it was invoking mkboot was no longer correct so it was not producing files used in the later commands.

Second, support for the H300 1.31k firmware was added sometime ago but not to this script.
tools/fwpatcher/mksums.pl [diff]
James Buren
16th Nov 11:57 c79ddb6bf4: iriver_flash: update valid bootloaders table

This removes all the pre-release bootloader of version 7 and replaces them with production releases of version 8. The pre-releases have their own problems and should be left behind as they were never officially released.
apps/plugins/iriver_flash.c [diff]
firmware/export/eeprom_settings.h [diff]
James Buren
15th Nov 20:55 dec5421ca2: rbutil: Rework server info data handling.

Return status as int, not as string, and provide a separate function for converting to string. This allows to filter based on the actual status, not a (localized) status string, which is more robust.

Fix a regression that made players with missing status value show up as retired.
rbutil/rbutilqt/base/serverinfo.cpp [diff]
rbutil/rbutilqt/configure.cpp [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
rbutil/rbutilqt/rbutilqt.cpp [diff]
rbutil/rbutilqt/test/test-serverinfo.cpp [diff]
Dominik Riebeling
15th Nov 20:25 af766ae10e: rbutil: Fix style warnings.
rbutil/rbutilqt/base/systeminfo.cpp [diff]
Dominik Riebeling
15th Nov 20:24 6c2780e709: rbutil: Rework server info data handling.

Allow constructing release candidate URL from configuration the same way we construct the URL for releases.

Note that the server path used does not exist, taken from old release candidate builds not available anymore.
rbutil/rbutilqt/base/serverinfo.cpp [diff]
rbutil/rbutilqt/base/systeminfo.cpp [diff]
rbutil/rbutilqt/base/systeminfo.h [diff]
rbutil/rbutilqt/rbutil.ini [diff]
rbutil/rbutilqt/test/stubs/stubs-serverinfo.cpp [diff]
rbutil/rbutilqt/test/test-serverinfo.cpp [diff]
Dominik Riebeling
15th Nov 20:06 9bb60b7d85: rbutil: Rework server info data handling.

Allow extracting release candidate version even if no URL is present. Avoids a special case for version handling.
rbutil/rbutilqt/base/serverinfo.cpp [diff]
rbutil/rbutilqt/test/test-serverinfo.cpp [diff]
Dominik Riebeling
15th Nov 20:01 104ff3433a: rbutil: Rework server info data handling.

Don't create our own in-memory map with server data. Instead use the configuration file retrieved from the download server, and do the resolve / replacement on the fly.

Simplifies things, and prepares for cleaner handling for different build types.
rbutil/rbutilqt/base/serverinfo.cpp [diff]
rbutil/rbutilqt/base/serverinfo.h [diff]
rbutil/rbutilqt/rbutil.ini [diff]
rbutil/rbutilqt/test/stubs/stubs-serverinfo.cpp [diff]
Dominik Riebeling
15th Nov 17:52 2b2a7b9ae3: rbutil: Simplify manual download URL handling.

- Don't construct the URL directly. The ServerInfo already has it, use that instead.
- Don't manually construct the output filename. ZipInstaller will use the server filename automatically.
rbutil/rbutilqt/gui/manualwidget.cpp [diff]
Dominik Riebeling
15th Nov 13:22 687edc1866: rbutil: Extend test for ServerInfo.

- Further extend stubs, pull in less non-stubbed implementations.
- Change some test URLs to make sure the code actually uses the correct ones.
rbutil/rbutilqt/test/stubs/stubs-serverinfo.cpp [diff]
rbutil/rbutilqt/test/test-serverinfo.cpp [diff]
rbutil/rbutilqt/test/test-serverinfo.pro [diff]
Dominik Riebeling
15th Nov 13:22 cb71e2154c: rbutil: Extend test for ServerInfo.

- Add tests for missing info values.
- Extend stubs, pull in less non-stubbed implementations.
rbutil/rbutilqt/test/stubs/stubs-serverinfo.cpp [new]
rbutil/rbutilqt/test/test-serverinfo.cpp [diff]
rbutil/rbutilqt/test/test-serverinfo.pro [diff]
Dominik Riebeling
15th Nov 13:22 7d1078a9d5: rbutil: Fix unit test.
rbutil/rbutilqt/test/test-serverinfo.cpp [diff]
Dominik Riebeling
15th Nov 11:01 1bc68d5ad7: h1x0/h300: change when the hold switch and failsafe are used

After reviewing the code awhile I realized that the failsafe and hold switch have no impact on the boot process when the usb or charger is connected. That makes no real sense to me. If these are connected then neither will be used at all. The boot process will never revisit it either once those other modes end and resume the boot process. It will just continue to try to boot from disk as if these emergency settings never existed.

I have decided it makes more sense for them to be evaluated once the higher priority charge and disk mode have finished their roles. Given how the code was originally written it seems to be they were not intended to run prior to these at the very least since the logical conditions preclude that possibility as they include the inverse of the conditions that trigger the charge and disk modes.
bootloader/iriver_h1x0.c [diff]
bootloader/iriver_h300.c [diff]
James Buren
15th Nov 10:11 fc5c8192ff: h1x0/h300: fix h300 bootloader hold switch check

This fixes an early boot bug on the h300 where hold_status is read before it has a chance to properly check whether the hold switch is even active. This was accomplished by porting over the method the h1x0 uses to perform the same check.
bootloader/iriver_h1x0.c [diff]
bootloader/iriver_h300.c [diff]
James Buren
15th Nov 09:49 29a20bd209: h1x0/h300: consolidate a few code paths to logical equivalents

This saves a few bytes of precious space by consolidating paths where they can be combined with no change to the underlying algorithm.
bootloader/iriver_h1x0.c [diff]
bootloader/iriver_h300.c [diff]
James Buren
15th Nov 00:20 3ef8455626: Remove some SWCODEC artifacts
apps/plugins/text_viewer/readme.txt [diff]
firmware/export/config/fiiom3k.h [diff]
Moshe Piekarski
14th Nov 23:21 c10eea46a9: iriver_flash: add macros to reduce the rom chip table

The table is now gated by the FLASH_SIZE macro as any given target will not have a known rom chip of a differing size than the FLASH_SIZE. This will reduce the resulting code a bit as well.
apps/plugins/iriver_flash.c [diff]
James Buren
14th Nov 23:20 7d9ac021b5: h1x0/h300: bring the two bootloaders more in sync

The most major change here is the porting of the failsafe boot menu and eeprom settings support from the h1x0 bootloader to the h300 bootloader. This has been successfully tested already and indeed works about the same as it does on the h1x0 bootloader.

The other major change is the addition of new code to both bootloaders that will retry the flash boot function after exitting disk mode. It still falls back to booting from disk if this either fails or is not configured to boot from flash.

There were also various other modifications to bring the two closer in sync so there are fewer differences.
bootloader/iriver_h1x0.c [diff]
bootloader/iriver_h300.c [diff]
James Buren
14th Nov 18:47 33d42c20de: iriver_flash: do not let the backlight timeout while running

I discovered it was doing this on the H300 during longer operations and I freaked out at first. This disables this feature until the program is finished so as to not give anyone else an unnecessary fright while using it. It will also cut down on frivilous reports.
apps/plugins/iriver_flash.c [diff]
James Buren
14th Nov 15:42 be1be797b2: rbutil: Rework player configuration.

Rename config entries and remove now unnecessary default value handling.
rbutil/rbutilqt/base/autodetection.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstalls5l.cpp [diff]
rbutil/rbutilqt/base/rbsettings.cpp [diff]
rbutil/rbutilqt/base/serverinfo.cpp [diff]
rbutil/rbutilqt/base/serverinfo.h [diff]
rbutil/rbutilqt/base/systeminfo.cpp [diff]
rbutil/rbutilqt/base/systeminfo.h [diff]
rbutil/rbutilqt/base/talkgenerator.cpp [diff]
rbutil/rbutilqt/base/utils.cpp [diff]
rbutil/rbutilqt/configure.cpp [diff]
rbutil/rbutilqt/gui/manualwidget.cpp [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
rbutil/rbutilqt/rbutilqt.cpp [diff]
rbutil/rbutilqt/themesinstallwindow.cpp [diff]
Dominik Riebeling
14th Nov 15:42 2509def164: rbutil: Rework player configuration.

- Split internal configuration into player specific and common parts. Always require passing the player for player specific data instead of implicitly assuming the currently selected one; only use the currently selected one if the player name is explicitly passed as empty.
- Similarly adjust handling of server info data; prepare for splitting into build type specific values so the naming becomes cleaner.
rbutil/rbutilqt/base/autodetection.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstalls5l.cpp [diff]
rbutil/rbutilqt/base/rbsettings.cpp [diff]
rbutil/rbutilqt/base/serverinfo.cpp [diff]
rbutil/rbutilqt/base/serverinfo.h [diff]
rbutil/rbutilqt/base/systeminfo.cpp [diff]
rbutil/rbutilqt/base/systeminfo.h [diff]
rbutil/rbutilqt/base/talkgenerator.cpp [diff]
rbutil/rbutilqt/base/utils.cpp [diff]
rbutil/rbutilqt/configure.cpp [diff]
rbutil/rbutilqt/gui/manualwidget.cpp [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
rbutil/rbutilqt/rbutilqt.cpp [diff]
rbutil/rbutilqt/themesinstallwindow.cpp [diff]
Dominik Riebeling
14th Nov 15:42 440083af87: rbutil: Show HTTP error string on download failure.

Also show the error string, which usually is more helpful than just showing the HTTP error code.
rbutil/rbutilqt/base/zipinstaller.cpp [diff]
Dominik Riebeling
14th Nov 14:29 aaa9a2ccee: h1x0/h300: clean up the bootloader source a bit

First this removes most of the conditionals for the CPP as they are always true for the targets that use the bootloader source.

Second this moves some global variable references around to reduce some redundancy in the h1x0 bootloader source.

All of this is done to make it easier to compare the two bootloaders as they are very heavily related to each other.
bootloader/iriver_h1x0.c [diff]
bootloader/iriver_h300.c [diff]
James Buren
14th Nov 14:16 37eabbfe51: h1x0/h300: remove trailing whitespace from bootloaders
bootloader/iriver_h1x0.c [diff]
bootloader/iriver_h300.c [diff]
James Buren
14th Nov 12:11 5a223080fa: h300: enable usb charging for charge mode and disk mode

This enables USB charging when the bootloader is in charge mode or disk mode. As a byproduct there is a small change in behavior where charge mode is all that is available if it is triggered by the USB cable insertion. Disk mode only becomes available if the user requests to continue the boot process by pressing the power button. It had to be done this way as there's no way to tell this early whether the user wants to simply charge or trigger disk mode as well.
bootloader/iriver_h300.c [diff]
James Buren
14th Nov 11:57 d5a2aeb6c4: rockbox: revise charger_inserted and power_input_present functions

This makes it so the thread cached variable is only read if building the regular firmware. For bootloaders the data is now read directly.

This fixes the functions for bootloaders so they do not have to import the power management code just so these functions will work when in the bootloader.
firmware/powermgmt.c [diff]
James Buren
14th Nov 01:04 03cd773051: ibasso: Hopefully hack usb into building again.
apps/menus/settings_menu.c [diff]
firmware/export/config/ibassodx50.h [diff]
firmware/export/config/ibassodx90.h [diff]
firmware/target/hosted/ibasso/usb-ibasso.c [diff]
firmware/usb.c [diff]
Solomon Peachy
14th Nov 00:01 43f90746d5: synclist add method for setting selection color
apps/gui/bitmap/list.c [diff]
apps/gui/list.c [diff]
apps/gui/list.h [diff]
William Wilgus
13th Nov 23:17 610ad6f6e3: ibasso: Fix red introduced in 60f581e
firmware/target/hosted/ibasso/usb-ibasso.c [diff]
Solomon Peachy
13th Nov 21:44 60f581e8f5: usb: Add ability to prompt user about what to do upon usb insertion

v3: Add in config option v4: Bugfixes v5: Force a redraw upon exiting v6: keypress-in-chargeonly mode enables mass storage (and vice versa) v7: Fix bootloader builds v8: Update manual, and have bootloader respect keypresses v9: Change default to mass storage (ie no change in behavior)

todo:
* test-build dx50/dx90
* Switch from yes/no to proper menu?
* prevent WPS progress bar from drawing over us


...
apps/lang/bulgarian.lang [diff]
apps/lang/chinese-simp.lang [diff]
apps/lang/chinese-trad.lang [diff]
apps/lang/deutsch.lang [diff]
apps/lang/english-us.lang [diff]
apps/lang/english.lang [diff]
apps/lang/francais.lang [diff]
apps/lang/greek.lang [diff]
apps/lang/italiano.lang [diff]
apps/lang/japanese.lang [diff]
apps/lang/magyar.lang [diff]
apps/lang/nederlands.lang [diff]
apps/lang/norsk.lang [diff]
apps/lang/polski.lang [diff]
apps/lang/portugues.lang [diff]
apps/lang/russian.lang [diff]
apps/lang/slovak.lang [diff]
apps/lang/srpski.lang [diff]
apps/lang/svenska.lang [diff]
apps/lang/turkce.lang [diff]
apps/lang/vlaams.lang [diff]
apps/menus/settings_menu.c [diff]
apps/settings.h [diff]
apps/settings_list.c [diff]
firmware/export/usb.h [diff]
firmware/target/hosted/ibasso/usb-ibasso.c [diff]
firmware/target/hosted/ibasso/usb-ibasso.h [diff]
firmware/usb.c [diff]
manual/configure_rockbox/system_options.tex [diff]
manual/rockbox_interface/main.tex [diff]
Solomon Peachy
13th Nov 21:40 fc4fff0b81: builds: Enable German voicefile generation in the nightly builds
tools/builds.pm [diff]
Solomon Peachy
13th Nov 19:14 6c3cc1cbb9: Skin_engine optimize element switches

it takes a lot of code to check validity and dereference a pointer for every numeric tag branch in get_token_value

apparently about 900 bytes actually
apps/gui/skin_engine/skin_render.c [diff]
apps/gui/skin_engine/skin_tokens.c [diff]
William Wilgus
13th Nov 18:57 47e1f96427: Bugfix Backlight_init should be called after lcd_init

the rest..
bootloader/ipod.c [diff]
bootloader/ipodnano2g.c [diff]
bootloader/iriver_h1x0.c [diff]
utils/atj2137/adfuload/test_binary/lcm/test_lcm.c [diff]
William Wilgus
13th Nov 18:08 f65fb2a64a: h300, Others Bugfix Bootloader backlight_init()

backlight_init needs to be called after lcd_init when using lcd_enable()
bootloader/creativezvm.c [diff]
bootloader/iriver_h300.c [diff]
bootloader/meizu_m3.c [diff]
bootloader/mini2440.c [diff]
bootloader/sansaconnect.c [diff]
firmware/target/coldfire/iriver/h300/lcd-h300.c [diff]
William Wilgus
13th Nov 18:08 8ac46f844f: h300: fix one long-standing bootloader bug

This was introduced in e13c6001332882291363bdf2f1155875439fe187 back when the author was trying to optimize the LCD code with DMA. For whatever reason this broke the bootloader for the last 10 years or so and no one could figure out why. This is now fixed.

However the bootloader is still currently broken in HEAD due to recent changes to the LCD code. A fix for that is not yet known.
firmware/target/coldfire/iriver/h300/lcd-h300.c [diff]
James Buren
12th Nov 21:23 362f7a3220: Quickscreen: don't apply glabal settings
apps/gui/quickscreen.c [diff]
Moshe Piekarski
12th Nov 16:23 b912ad5088: plugin: Un-export find_next_frame()

No in-tree users
apps/plugin.c [diff]
apps/plugin.h [diff]
docs/PLUGIN_API [diff]
Solomon Peachy
12th Nov 15:59 388adff3cc: pcm: Further cleanup of unused bits of the PCM ACPI:

* pcm_get_bytes_remaining()
* pcm_calculate_peaks()
* pcm_get_peak_buffer()

Nothing in-tree uses these at all (except for the lua plugin wrapper)
apps/plugin.c [diff]
apps/plugin.h [diff]
apps/plugins/lua/include_lua/pcm.lua [diff]
apps/plugins/lua/rocklib.c [diff]
docs/PLUGIN_API [diff]
firmware/export/pcm.h [diff]
firmware/pcm.c [diff]
firmware/target/arm/as3525/pcm-as3525.c [diff]
firmware/target/arm/imx233/pcm-imx233.c [diff]
firmware/target/arm/imx31/gigabeat-s/pcm-gigabeat-s.c [diff]
firmware/target/arm/pcm-telechips.c [diff]
firmware/target/arm/pnx0101/pcm-pnx0101.c [diff]
firmware/target/arm/pp/pcm-pp.c [diff]
firmware/target/arm/rk27xx/pcm-rk27xx.c [diff]
firmware/target/arm/s3c2440/gigabeat-fx/pcm-meg-fx.c [diff]
firmware/target/arm/s3c2440/mini2440/pcm-mini2440.c [diff]
firmware/target/arm/s5l8700/pcm-s5l8700.c [diff]
firmware/target/arm/s5l8702/pcm-s5l8702.c [diff]
firmware/target/arm/tms320dm320/creative-zvm/pcm-creativezvm.c [diff]
firmware/target/arm/tms320dm320/mrobe-500/pcm-mr500.c [diff]
firmware/target/arm/tms320dm320/sansa-connect/pcm-sansaconnect.c [diff]
firmware/target/coldfire/pcm-coldfire.c [diff]
firmware/target/hosted/android/pcm-android.c [diff]
firmware/target/hosted/ibasso/pcm-ibasso.c [diff]
firmware/target/hosted/maemo/pcm-gstreamer.c [diff]
firmware/target/hosted/pcm-alsa.c [diff]
firmware/target/hosted/sdl/pcm-sdl.c [diff]
firmware/target/mips/ingenic_jz47xx/pcm-jz4740.c [diff]
firmware/target/mips/ingenic_jz47xx/pcm-jz4760.c [diff]
Solomon Peachy
12th Nov 06:22 1a68856f52: Rocker Add WPS and Tree Hotkey, button codes in debug menu VolUp+VolDown becomes the wps and tree (file browser) hotkey
apps/keymaps/keymap-agptekrocker.c [diff]
firmware/export/config/agptekrocker.h [diff]
firmware/target/hosted/agptek/debug-agptek.c [diff]
William Wilgus
12th Nov 03:25 4e5499606b: Russian translations update
apps/lang/russian.lang [diff]
Igor B. Poretsky
12th Nov 03:25 b7560ce0af: Czech translations fix
apps/lang/czech.lang [diff]
Igor B. Poretsky
12th Nov 03:25 b8ada839ee: Voice strings fixes
apps/lang/catala.lang [diff]
apps/lang/chinese-simp.lang [diff]
apps/lang/deutsch.lang [diff]
apps/lang/english-us.lang [diff]
apps/lang/english.lang [diff]
apps/lang/espanol.lang [diff]
apps/lang/esperanto.lang [diff]
apps/lang/francais.lang [diff]
apps/lang/galego.lang [diff]
apps/lang/hebrew.lang [diff]
apps/lang/islenska.lang [diff]
apps/lang/italiano.lang [diff]
apps/lang/japanese.lang [diff]
apps/lang/korean.lang [diff]
apps/lang/latviesu.lang [diff]
apps/lang/nederlands.lang [diff]
apps/lang/polski.lang [diff]
apps/lang/portugues.lang [diff]
apps/lang/romaneste.lang [diff]
apps/lang/russian.lang [diff]
apps/lang/srpski.lang [diff]
apps/lang/tagalog.lang [diff]
apps/lang/vlaams.lang [diff]
apps/lang/walon.lang [diff]
Igor B. Poretsky
11th Nov 15:39 869a8bfbe7: YesNo: Clear the button queue so a latent keypress doesn't skip the prompt
apps/gui/yesno.c [diff]
Solomon Peachy
11th Nov 13:30 4aa749b59d: iriver_flash: refactor code to be easier to understand

This overhauls most of the code to be easier to understand in terms of the interactions with the flash. I found the original to be rather confusing with how it kept switching between byte and word offsets.

My solution was to make all external access to the flash in terms of sectors and bytes. Whatever the flash uses internally is now handled by the subroutines for performing the erase, program, and verify operations.

This helps make it far more consistent for the code that actually uses these operations as they do not need to concern themselves with word sizes and offsets anymore.

As a side effect of this change the flash operations are now done entirely by subroutines; even the batch operations that used to use custom loops.

Additionally some functions were merged with other functions in order to reduce the amount of functions as well as consolidating common code fragments.
apps/plugins/iriver_flash.c [diff]
firmware/export/config/iriverh100.h [diff]
firmware/export/config/iriverh120.h [diff]
firmware/export/config/iriverh300.h [diff]
firmware/export/system.h [diff]
James Buren
8th Nov 03:19 c4254d10fc: Fuze+: Fix misplaced rectangle when lcd_flip set
firmware/target/arm/imx233/sansa-fuzeplus/lcd-fuzeplus.c [diff]
Moshe Piekarski
7th Nov 20:48 9fcdb44e55: rbutil: Show the license of all libraries included.

Replace the Speex license tab in the about dialog with one that lists all used libraries and their respective licenses, including Speex.

Previously only Speex required including the license in binary distribution; the recently added bspatch also wants this. Show the license for all used libraries so we can more easily add new ones in the future.
rbutil/rbutilqt/aboutbox.ui [diff]
rbutil/rbutilqt/rbutilqt.cpp [diff]
rbutil/rbutilqt/rbutilqt.qrc [diff]
Dominik Riebeling
7th Nov 20:48 db7c4424e4: bspatch: Store license text in separate file.

Allow to easily show the license by having it in a separate file.
rbutil/bspatch/LICENSE [new]
Dominik Riebeling
7th Nov 20:48 4820072a42: bzip: Add missing license to our copy of bzip2.
rbutil/bzip2/LICENSE [new]
Dominik Riebeling
7th Nov 11:50 ba34b0fac3: rbutil: Modernize HttpGet implementation.

- Change signal-slot connections to new style, and fix renamed signal for Qt6.
- Make more use of RAII.
rbutil/rbutilqt/base/httpget.cpp [diff]
rbutil/rbutilqt/base/httpget.h [diff]
Dominik Riebeling
7th Nov 11:50 4815a64f93: rbutil: Explicitly enable svg module.

Since most icons are svg now we need this. Linux implicitly enables it, Windows doesn't.
rbutil/rbutilqt/rbutilqt.pro [diff]
Dominik Riebeling
7th Nov 10:34 87325ff957: rbutil: Enable HiDPI support on MacOS.

Since we provide our own Info.plist file we need to enable HiDPI support here.
rbutil/rbutilqt/Info.plist [diff]
Dominik Riebeling
7th Nov 10:33 2e6a0df40e: rbutil: Enable HiDPI support on recent Qt versions.
rbutil/rbutilqt/main.cpp [diff]
Dominik Riebeling
7th Nov 10:33 2e96657c36: rbutil: Replace most icons with their svg variant.

Replace png icons with svg ones for better HiDPI support.
rbutil/rbutilqt/configure.cpp [diff]
rbutil/rbutilqt/configurefrm.ui [diff]
rbutil/rbutilqt/createvoicefrm.ui [diff]
rbutil/rbutilqt/encttscfggui.cpp [diff]
rbutil/rbutilqt/gui/backupdialogfrm.ui [diff]
rbutil/rbutilqt/gui/changelogfrm.ui [diff]
rbutil/rbutilqt/gui/selectiveinstallwidgetfrm.ui [diff]
rbutil/rbutilqt/icons/audio-input-microphone.png [deleted]
rbutil/rbutilqt/icons/audio-input-microphone.svg [new]
rbutil/rbutilqt/icons/audio-volume-high.svg [new]
rbutil/rbutilqt/icons/bootloader_btn.png [deleted]
rbutil/rbutilqt/icons/dialog-error.png [deleted]
rbutil/rbutilqt/icons/dialog-error.svg [new]
rbutil/rbutilqt/icons/dialog-information.png [deleted]
rbutil/rbutilqt/icons/dialog-information.svg [new]
rbutil/rbutilqt/icons/dialog-warning.png [deleted]
rbutil/rbutilqt/icons/dialog-warning.svg [new]
rbutil/rbutilqt/icons/document-save.png [deleted]
rbutil/rbutilqt/icons/document-save.svg [new]
rbutil/rbutilqt/icons/doom_btn.png [deleted]
rbutil/rbutilqt/icons/edit-clear.svg [new]
rbutil/rbutilqt/icons/edit-find.png [deleted]
rbutil/rbutilqt/icons/edit-find.svg [new]
rbutil/rbutilqt/icons/font_btn.png [deleted]
rbutil/rbutilqt/icons/go-next.png [deleted]
rbutil/rbutilqt/icons/go-next.svg [new]
rbutil/rbutilqt/icons/input-gaming.svg [new]
rbutil/rbutilqt/icons/media-eject.png [deleted]
rbutil/rbutilqt/icons/media-eject.svg [new]
rbutil/rbutilqt/icons/multimedia-player.svg [new]
...and 34 more files.
Dominik Riebeling
6th Nov 20:24 4f1888dfc8: rbutil: Redo MacOS application icon.

Don't use different icons depending on the display size and recreate properly including all scaled formats.
rbutil/rbutilqt/icons/rbutilqt.icns [diff]
Dominik Riebeling
6th Nov 20:22 f9d8a0e210: rbutil: Simplify qmake check.
rbutil/rbutilqt/rbutilqt.pro [diff]
Dominik Riebeling
6th Nov 20:13 6bc737cb1d: rbutil: Enable use of libmp3lame on macOS.

Since we're now automatically falling back to using the command line lame if we cannot load the library we can enable it on macOS as well.
rbutil/rbutilqt/base/encoderbase.cpp [diff]
Dominik Riebeling
6th Nov 20:13 07604d62ab: rbutil: Command line fallback on libmp3lame failure.

When loading libmp3lame fails fall back to using the command line lame. Avoids an unresolvable error when trying to create voice / talk files for Archos. Modernize code a bit.
rbutil/rbutilqt/base/encoderbase.cpp [diff]
rbutil/rbutilqt/base/encoderlame.cpp [diff]
rbutil/rbutilqt/base/encoderlame.h [diff]
Dominik Riebeling
4th Nov 13:20 bb7aa6f311: rk27generic: keymap tweaks
apps/keymaps/keymap-rk27xx-generic.c [diff]
Marcin Bukat
4th Nov 13:14 235cdeca73: qeditor: add better fallback mecanism for icons
utils/regtools/qeditor/utils.cpp [diff]
utils/regtools/qeditor/utils.h [diff]
Amaury Pouly
4th Nov 13:00 b200cd7e4a: test_mem: fix asm variant of read/write test
apps/plugins/test_mem.c [diff]
Mihail Zenkov
4th Nov 12:57 db87e1aae5: Fix typos and wording
apps/plugins/text_viewer/readme.txt [diff]
apps/plugins/text_viewer/tv_settings.c [diff]
Avi Eisenberg
4th Nov 03:03 5db83c155a: pp5020: use ipod firmware timings for ATA PIO.

Some mSATA adapters seem to have trouble working with Rockbox using our normal PIO timings; the timing value we use is probably out of spec and is different to the OF. Switch to using the OF's timings according to which PIO mode we select. This may not completely resolve problems with these adapters but allows Rockbox to boot and play audio.
firmware/drivers/ata.c [diff]
firmware/export/ata.h [diff]
firmware/target/arm/pp/ata-pp5020.c [diff]
firmware/target/arm/pp/ata-target.h [diff]
Torne Wuff
3rd Nov 23:43 090bd9592d: Remove the firmware decompressor and a few more other SH-stragglers.
apps/plugins/chessbox/chessbox.make [diff]
firmware/decompressor/Makefile [deleted]
firmware/decompressor/decompressor.c [deleted]
firmware/decompressor/link.lds [deleted]
firmware/decompressor/sh_nrv2e_d8.S [deleted]
firmware/decompressor/startup.S [deleted]
gdb/linker.cfg [diff]
gdb/start.s [deleted]
tools/configure [diff]
Solomon Peachy
3rd Nov 19:29 066d471ae6: ATA: Check to see if the ATA device is solid-state (WIP)

Not all devices advertise this flag, unfortunately.
firmware/drivers/ata.c [diff]
Solomon Peachy
3rd Nov 13:23 8029c89808: erosq: Fix scrollwheel regression introduced in 125e97b0
firmware/target/hosted/button-devinput.c [diff]
Solomon Peachy
3rd Nov 02:38 611c18704c: FuzePlus USB+screen dump overflows usbstack

Bump USB stack by 128 bytes

adds USB_EXTRA_STACK
firmware/export/config/sansafuzeplus.h [diff]
firmware/usb.c [diff]
William Wilgus
1st Nov 17:43 0c99a3f9fb: Skin engine Onda Vx747

Fixing issues that existed before framebuf rewrite

Fix swap issue
apps/gui/skin_engine/skin_engine.c [diff]
apps/gui/skin_engine/skin_render.c [diff]
William Wilgus
1st Nov 12:23 f9ba96cade: rbutil: Remove unneeded includes.
rbutil/rbutilqt/base/serverinfo.cpp [diff]
rbutil/rbutilqt/base/systeminfo.cpp [diff]
Dominik Riebeling
1st Nov 12:23 1fa826738d: rbutil: Simplify extenal encoder binary handling.

We only use lame as external encoder for voice on the Archos targets. Simplify the implementation by removing (unused) handling of (potential) other encoders.
rbutil/rbutilqt/base/encoderexe.cpp [diff]
rbutil/rbutilqt/base/encoderexe.h [diff]
Dominik Riebeling
31th Oct 20:26 daefd5686f: Rocker: Fix a boneheaded bug introduced in dd82f13fa1
firmware/drivers/audio/rocker_codec.c [diff]
Solomon Peachy
31th Oct 18:20 1058ed5b25: tomcrypt: Set target macOS version.

Make sure the target version isn't the default one so it also runs on older macOS version than the current one.
utils/tomcrypt/Makefile [diff]
Dominik Riebeling
31th Oct 18:20 5aa7245077: rbutil: Create more fancy dmg on macOS using dmgbuild.

Add target to build a dmg containing Rockbox Utility, ipodpatcher and sansapatcher as single app bundle, and create a more fancy dmg using dmgbuild.
rbutil/rbutil.pro [diff]
rbutil/rbutilqt/dmgbuild.cfg [new]
Dominik Riebeling
31th Oct 14:17 125e97b0bf: hosted: Consolidate common /dev/input code shared by the hiby targets

* Enable dynamic number of input devices, needed for bluetooth support
firmware/SOURCES [diff]
firmware/target/hosted/agptek/button-agptek.c [diff]
firmware/target/hosted/agptek/button-target.h [diff]
firmware/target/hosted/aigo/button-erosq.c [diff]
firmware/target/hosted/aigo/button-target.h [diff]
firmware/target/hosted/button-devinput.c [new]
firmware/target/hosted/fiio/button-fiio.c [diff]
firmware/target/hosted/xduoo/button-target.h [diff]
firmware/target/hosted/xduoo/button-xduoo.c [diff]
Solomon Peachy
31th Oct 14:16 dd82f13fa1: nwz/alsa: various improvements

Also audiohw driver to specific device name, rewrite alsa controls code to cache more data, thus making the code easier and use less stack. Avoid using short/long in pcm alsa code since it's the wrong size on 64-bit (simulator for example)
firmware/drivers/audio/erosqlinux_codec.c [diff]
firmware/drivers/audio/fiiolinux_codec.c [diff]
firmware/drivers/audio/nwzlinux-codec.c [diff]
firmware/drivers/audio/rocker_codec.c [diff]
firmware/drivers/audio/xduoolinux_codec.c [diff]
firmware/target/hosted/alsa-controls.c [diff]
firmware/target/hosted/alsa-controls.h [diff]
firmware/target/hosted/pcm-alsa.c [diff]
firmware/target/hosted/pcm-alsa.h [diff]
firmware/target/hosted/sonynwz/debug-nwz.c [diff]
Amaury Pouly
31th Oct 14:10 ce9e7e7122: hosted: fix warning when LOGF is enabled
firmware/target/hosted/system-hosted.c [diff]
Solomon Peachy
31th Oct 14:10 8e5c57a822: plugins: bump api version (missed it in fe2d52c)
apps/plugin.h [diff]
Solomon Peachy
31th Oct 05:11 60f642ba4f: lcd_framebuffer bugfixes, sanity checks

several issues I saw that could pontentially cause problems scroll engine doesn't take text height into account when checking bounds

NBELEMS was one whole row too large hopefully I got them right this time
firmware/drivers/lcd-16bit-common.c [diff]
firmware/drivers/lcd-16bit-vert.c [diff]
firmware/drivers/lcd-16bit.c [diff]
firmware/drivers/lcd-24bit.c [diff]
firmware/drivers/lcd-bitmap-common.c [diff]
firmware/export/lcd-remote.h [diff]
firmware/export/lcd.h [diff]
William Wilgus
31th Oct 04:30 202f9df0c1: Test_Viewports BUGFIX

putting a framebuffer on the stack is never a good idea

Added comments
apps/plugins/test_viewports.c [diff]
William Wilgus
31th Oct 01:44 7eee526e6a: fix red introduced in the android pcm driver (rev fe2d52c)
firmware/target/hosted/android/pcm-android.c [diff]
Solomon Peachy
31th Oct 01:18 fe2d52cc7d: pcm: Get rid of pcm_play_pause() and associated APIs

Nothing in the core has used it for some time. It's exported to the plugin API but the last plugins to use it were switched to the mixer API back in 2011.

This allows us to get rid of pcm_play_dma_pause() from all audio drivers
apps/plugin.c [diff]
apps/plugin.h [diff]
apps/plugins/lua/include_lua/pcm.lua [diff]
apps/plugins/lua/rocklib.c [diff]
docs/PLUGIN_API [diff]
firmware/drivers/audio/rocker_codec.c [diff]
firmware/export/fiiolinux_codec.h [diff]
firmware/export/pcm-internal.h [diff]
firmware/export/pcm.h [diff]
firmware/export/rocker_codec.h [diff]
firmware/export/xduoolinux_codec.h [diff]
firmware/pcm.c [diff]
firmware/pcm_sw_volume.c [diff]
firmware/target/arm/as3525/pcm-as3525.c [diff]
firmware/target/arm/imx233/pcm-imx233.c [diff]
firmware/target/arm/imx31/gigabeat-s/pcm-gigabeat-s.c [diff]
firmware/target/arm/pcm-telechips.c [diff]
firmware/target/arm/pnx0101/pcm-pnx0101.c [diff]
firmware/target/arm/pp/pcm-pp.c [diff]
firmware/target/arm/rk27xx/pcm-rk27xx.c [diff]
firmware/target/arm/s3c2440/gigabeat-fx/pcm-meg-fx.c [diff]
firmware/target/arm/s3c2440/mini2440/pcm-mini2440.c [diff]
firmware/target/arm/s5l8700/pcm-s5l8700.c [diff]
firmware/target/arm/s5l8702/pcm-s5l8702.c [diff]
firmware/target/arm/tms320dm320/creative-zvm/pcm-creativezvm.c [diff]
firmware/target/arm/tms320dm320/mrobe-500/pcm-mr500.c [diff]
firmware/target/arm/tms320dm320/sansa-connect/pcm-sansaconnect.c [diff]
firmware/target/coldfire/pcm-coldfire.c [diff]
firmware/target/hosted/android/pcm-android.c [diff]
firmware/target/hosted/ibasso/pcm-ibasso.c [diff]
...and 5 more files.
Solomon Peachy
30th Oct 15:55 2d85c72151: iriver_flash: fix issues with DoUserDialog

First the argument should be const since the original parameter is.

Second the pointer arithmetic for detecting whether rockbox is running from ROM or not is incorrect. It ends up being at a location twice as far as intended since the arithmetic does not account for the pointer type's underlying size. It should also be dependent on the target's FLASH_SIZE.

Third the LCD setup is moved to the entry point since it is the best place to setup and restore the LCD changes.
apps/plugins/iriver_flash.c [diff]
James Buren
30th Oct 06:25 fa3184f951: iriver_flash: make most remaining functions static

This increases opportunities for optimizations as well.
apps/plugins/iriver_flash.c [diff]
James Buren
30th Oct 05:40 7c498b9043: iriver_flash: revise valid_bootloaders and detect_valid_bootloader

The main change is revising how the checksums are guarded by macros. But both are also converted to static linkage so they can be better optimized by GCC. I also change the types around to reflect how the space the data types actually need. Furthermore I make use of C99 changes to how variables can be declared to move them closer to where they are used.
apps/plugins/iriver_flash.c [diff]
James Buren
30th Oct 05:20 6bc6af6a0e: iriver_flash: revise load_firmware_file function

This moves the checksum into the local stack and turns the second parameter into an optional argument. This also reads the model segment that was previously unused so it can also be checked as an extra safeguard in the event the checksum somehow matches yet the model is incorrect.
apps/plugins/iriver_flash.c [diff]
James Buren
30th Oct 00:26 07fcced4fb: Fix volume handling of steps in radio
apps/radio/radio.c [diff]
Amaury Pouly
30th Oct 00:08 44023eb430: Volume adjustment in LISTS ignored AUDIOHW_SETTING values

AUDIOHW_SETTING() defines number of decimals and step size. This is taken into account in sound menu but ignored in lists
(had been recently fixed in WPS). This was not a problem so far since all drivers used 0 decimal places and step size equal 1.
apps/gui/list.c [diff]
Johannes Rauh
29th Oct 23:01 f1bfbb52f1: iriver_flash: revise cfi_read_id and cfi_get_flash_info

First neither of these functions can fail on supported targets so they have become void functions. Their return values were not being used anyway.

Second support for other flash chips not even used on the supported targets has been removed. It appears they were only ever used on the discontinued Arch devices.

Third cfi_read_id was restructured to remove obsolete code for error checking that is not necessary at all. The datasheets appear to indicate that the commands used cannot fail.

Fourth cfi_get_flash_info was restructured to use a new approach to initializing the flash_info struct. It no longer initializes the structure twice.

Fifth the relevant code has been updated to use the full 16 bits that are exposed by the flash rom ID interface.
apps/plugins/iriver_flash.c [diff]
James Buren
29th Oct 20:28 96f82f828a: rbutil: More Qt6 compatibility.

Qt6 doesn't contain QTextCodec anymore but instead provides it in the optional core5compat module.
rbutil/rbutilqt/quazip/quazip.h [diff]
rbutil/rbutilqt/rbutilqt.pro [diff]
rbutil/rbutilqt/themesinstallwindow.cpp [diff]
Dominik Riebeling
29th Oct 20:28 4594541b5f: rbutil: Simplify search.

No need to get keys from the map to search a key, we can check directly.
rbutil/rbutilqt/base/systeminfo.cpp [diff]
Dominik Riebeling
29th Oct 20:28 2d62f2d017: rbutil: More Qt6 compatibility.

Replace QProcess::pid() which has been replaced with QProcess::processId() starting with Qt5.3 and removed from Qt6.
rbutil/rbutilqt/base/ttsfestival.cpp [diff]
Dominik Riebeling
29th Oct 20:28 86420bbe2b: rbutil: Remove unused assignment.
rbutil/rbutilqt/configure.cpp [diff]
Dominik Riebeling
29th Oct 05:30 f65e410497: iriver_flash: rewrite how the flash commands wait for the ROM

This uses the toggle bit method referenced in the datasheets for the supported ROM chips and moves the code to a reusable subroutine. It also introduces a short delay to give the bus a chance to recover. The older ROM datasheet doesn't mention this delay as necessary but the newer one does so it now does this for both.
apps/plugins/iriver_flash.c [diff]
James Buren
29th Oct 02:55 c5c17fa799: Fix display regression from c85d8e2

Basically setting a null buffer is valid but it must be selected into a screen to initialize to the default buffer

I wrongly assumed screen type wouldn't matter but since I decided to reference backdrops directly to the default buffer
(since they are saved as an offset from what it later assumes to be the default framebuffer) SCREEN_MAIN/SCREEN_REMOTE are not longer optional
apps/gui/skin_engine/skin_backdrops.c [diff]
William Wilgus
28th Oct 23:38 c7fb319151: fix checkwps build (introduced in a5a8e00)
apps/gui/skin_engine/skin_parser.c [diff]
Solomon Peachy
28th Oct 22:51 a5a8e00b6d: Fix a crash introduced in a605cdf70

Pretty subtle problem; looks like the skin core was relying on a destructor to actually help initialize things.
apps/gui/skin_engine/skin_parser.c [diff]
Solomon Peachy
28th Oct 21:53 8c8284bbe6: Fix statusbar display regression from a605cdf700
apps/gui/skin_engine/skin_parser.c [diff]
Solomon Peachy
28th Oct 17:25 c85d8e2865: Framebuffer_viewport Rewrite -- BUG FIX

stride was not initialized for the skin_viewport

fixed a few other questionable areas
apps/gui/skin_engine/skin_backdrops.c [diff]
apps/gui/skin_engine/skin_render.c [diff]
apps/gui/skin_engine/wps_internals.h [diff]
William Wilgus
28th Oct 12:42 a605cdf700: Fix multiple potential null pointer dereferencess

GCC's optimizer thinks all of these _will_ fail at some point
apps/gui/bitmap/list-skinned.c [diff]
apps/gui/skin_engine/skin_display.c [diff]
apps/gui/skin_engine/skin_parser.c [diff]
apps/gui/skin_engine/skin_render.c [diff]
apps/gui/skin_engine/skin_tokens.c [diff]
apps/gui/statusbar-skinned.c [diff]
apps/plugins/chessbox/chessbox_pgn.c [diff]
apps/plugins/reversi/reversi-gui.c [diff]
Solomon Peachy
28th Oct 11:30 621e363e70: libgme: Fix yellow in hosted MIPS builds
lib/rbcodec/codecs/libgme/nsfe_info.c [diff]
Solomon Peachy
28th Oct 04:10 41a6da6043: builds: Enable -fno-delete-null-pointer-checks globally

* arm failures in lua, wolf3d, quake, flac
* m68k failures in lua, wmapro
* mips ???

I still think that most of these are actually due to latent bugs or ambiguous code.
tools/configure [diff]
Solomon Peachy
28th Oct 02:12 bcbf8bbf0a: wmapro: Backport multiple fixes

upstream commits:

780d454 b28c678 9166f48 97a5add b21ba20 f734671 b86dd1 b4027d9 50f0a6b 4c0080b c7a7605 5dcb990 7ad698e
lib/rbcodec/codecs/libwmapro/wmaprodec.c [diff]
Solomon Peachy
28th Oct 01:57 a5a19a3370: dircache: Fix a NULL pointer dereference

if idx == 0, get_idx_dcvolp() will return NULL.
firmware/common/dircache.c [diff]
Solomon Peachy
27th Oct 18:49 7dbfda6c55: iaudiom5: Fix build.

Basically we're overflowing IRAM by 48 bytes. Shrink the stack by 48 bytes to compensate.

Fixing this properly will require careful decisions about what
(code and/or data) to eject from IRAM.
firmware/target/coldfire/app.lds [diff]
Solomon Peachy
27th Oct 16:01 bee736f3ea: iriver_flash: make cfi_read_id use FB directly
apps/plugins/iriver_flash.c [diff]
James Buren
27th Oct 16:00 e5b963b8e1: iriver_flash: remove trailing whitespaces
apps/plugins/iriver_flash.c [diff]
James Buren
27th Oct 14:29 61f698715d: coldfire: We need -fno-delete-null-pointer-checks in flash controller code
firmware/target/coldfire/debug-coldfire.c [diff]
Solomon Peachy
27th Oct 01:27 f62eee569c: iriver_flash: we need -fno-delete-null-pointer-checks
apps/plugins/iriver_flash.c [diff]
Solomon Peachy
26th Oct 19:52 804a49886a: statusbar: Make statusbar height equal SYSFONT_HEIGHT

And size elements horizaontally based on SYSFONT_WIDTH

Unfortunately we need 16px icons to make 16px statusbar look right but at least it _works_ properly now.

Also: all targets currently use 8-px SYSFONT, except some hosted bootloaders
apps/gui/statusbar-skinned.c [diff]
apps/gui/statusbar.c [diff]
apps/gui/statusbar.h [diff]
apps/recorder/icons.h [diff]
apps/recorder/peakmeter.c [diff]
tools/configure [diff]
Solomon Peachy
26th Oct 19:50 299c237075: 'Fix RED e200 Framebuffer_viewport_rewrite

Free malloc in checkwps too
firmware/target/arm/as3525/sansa-e200v2/lcd-e200v2.c [diff]
tools/checkwps/checkwps.c [diff]
William Wilgus
26th Oct 19:25 04e7bacc4c: FIX RED Framebuffer_viewport_rewrite
apps/plugins/reversi/reversi-gui.c [diff]
tools/checkwps/checkwps.c [diff]
William Wilgus
26th Oct 18:35 ada919fc11: FIX RED framebuffer viewport rewrite
apps/plugins/rockboy/lcd.c [diff]
firmware/drivers/lcd-bitmap-common.c [diff]
firmware/target/coldfire/iaudio/x5/lcd-x5.c [diff]
William Wilgus
26th Oct 18:02 9b295ce135: FIX RED/YELLOW framebuffer viewport rewrite
apps/plugins/reversi/reversi-gui.c [diff]
firmware/drivers/lcd-bitmap-common.c [diff]
William Wilgus
26th Oct 16:38 40e98a2e49: Whitespace cleanup on fb_viewport Rewrite
apps/gui/pitchscreen.c [diff]
apps/gui/skin_engine/skin_display.c [diff]
apps/gui/skin_engine/skin_render.c [diff]
apps/gui/skin_engine/wps_internals.h [diff]
apps/gui/splash.c [diff]
apps/gui/viewport.c [diff]
apps/gui/viewport.h [diff]
apps/gui/yesno.c [diff]
apps/plugins/lib/xlcd_draw.c [diff]
apps/plugins/lib/xlcd_scroll.c [diff]
apps/plugins/lua/rocklib_img.c [diff]
apps/screen_access.c [diff]
apps/screen_access.h [diff]
apps/screens.c [diff]
bootloader/common.c [diff]
firmware/drivers/lcd-16bit-vert.c [diff]
firmware/drivers/lcd-16bit.c [diff]
firmware/drivers/lcd-1bit-vert.c [diff]
firmware/drivers/lcd-24bit.c [diff]
firmware/drivers/lcd-2bit-horz.c [diff]
firmware/drivers/lcd-2bit-vert.c [diff]
firmware/drivers/lcd-2bit-vi.c [diff]
firmware/drivers/lcd-bitmap-common.c [diff]
firmware/drivers/lcd-color-common.c [diff]
firmware/export/config/mrobe500.h [diff]
firmware/export/lcd.h [diff]
William Wilgus
26th Oct 16:28 3237ae4a4f: LCD core move buf ptr and address look up function viewport struct

I'm currently running up against the limitations of the lcd_draw functions I want these functions to be able to be used on any size buffer not just buffers with a stride matching the underlying device

[DONE] allow the framebuffer to be decoupled from the device framebuffer
[DONE need examples] allow for some simple blit like transformations
[DONE] remove the device framebuffer from the plugin api
[DONE}ditto remote framebuffer
[DONE] remove _viewport_get_framebuffer you can call struct *vp = lcd_set_viewport(NULL) and vp->buffer->fb_ptr

while remote lcds may compile (and work in the sim) its not been tested on targets

[FIXED] backdrops need work to be screen agnostic

[FIXED] screen statusbar is not being combined into the main viewport correctly yet

[FIXED] screen elements are displayed incorrectly after switch to void*

[FIXED] core didn't restore proper viewport on splash etc.

[NEEDS TESTING] remote lcd garbled data

[FIXED] osd lib garbled screen on bmp_part

[FIXED] grey_set_vp needs to return old viewport like lcd_set_viewport

[FIXED] Viewport update now handles viewports with differing buffers/strides by copying to the main buffer

[FIXED] splash on top of WPS leaves old framebuffer data (doesn't redraw)
[UPDATE] refined this a bit more to have clear_viewport set the clean bit and have skin_render do its own screen clear scrolling viewports no longer trigger wps refresh also fixed a bug where guisyncyesno was displaying and then disappearing

[ADDED!] New LCD macros that allow you to create properly size frame buffers in you desired size without wasting bytes
(LCD_ and LCD_REMOTE_) LCD_STRIDE(w, h) same as STRIDE_MAIN LCD_FBSTRIDE(w, h) returns target specific stride for a buffer W x H LCD_NBELEMS(w, h) returns the number of fb_data sized elemenst needed for a buffer W x H LCD_NATIVE_STRIDE(s) conversion between rockbox native vertical and lcd native stride (2bitH) test_viewports.c has an example of usage

[FIXED!!] 2bit targets don't respect non-native strides
[FIXED] Few define snags
apps/alarm_menu.c [diff]
apps/gui/bitmap/list.c [diff]
apps/gui/color_picker.c [diff]
apps/gui/pitchscreen.c [diff]
apps/gui/quickscreen.c [diff]
apps/gui/skin_engine/skin_backdrops.c [diff]
apps/gui/skin_engine/skin_engine.c [diff]
apps/gui/skin_engine/skin_engine.h [diff]
apps/gui/skin_engine/skin_parser.c [diff]
apps/gui/skin_engine/skin_render.c [diff]
apps/gui/skin_engine/wps_internals.h [diff]
apps/gui/splash.c [diff]
apps/gui/statusbar.c [diff]
apps/gui/usb_screen.c [diff]
apps/gui/viewport.c [diff]
apps/gui/viewport.h [diff]
apps/gui/yesno.c [diff]
apps/menus/time_menu.c [diff]
apps/misc.c [diff]
apps/onplay.c [diff]
apps/plugin.c [diff]
apps/plugin.h [diff]
apps/plugins/doom/i_video.c [diff]
apps/plugins/fire.c [diff]
apps/plugins/imageviewer/imageviewer.c [diff]
apps/plugins/imageviewer/jpeg/yuv2rgb.c [diff]
apps/plugins/invadrox.c [diff]
apps/plugins/lib/grey.h [diff]
apps/plugins/lib/grey_core.c [diff]
apps/plugins/lib/grey_parm.c [diff]
...and 44 more files.
William Wilgus
26th Oct 16:28 12f3ed1699: make the plugin API frambuffer agnostic
apps/plugin.c [diff]
apps/plugin.h [diff]
apps/plugins/doom/i_video.c [diff]
apps/plugins/fire.c [diff]
apps/plugins/imageviewer/imageviewer.c [diff]
apps/plugins/imageviewer/jpeg/yuv2rgb.c [diff]
apps/plugins/invadrox.c [diff]
apps/plugins/lib/grey_core.c [diff]
apps/plugins/lib/osd.c [diff]
apps/plugins/lib/xlcd_draw.c [diff]
apps/plugins/lib/xlcd_scroll.c [diff]
apps/plugins/lua/rocklib_img.c [diff]
apps/plugins/mpegplayer/mpegplayer.c [diff]
apps/plugins/pacbox/pacbox.c [diff]
apps/plugins/pictureflow/pictureflow.c [diff]
apps/plugins/plasma.c [diff]
apps/plugins/puzzles/rockbox.c [diff]
apps/plugins/rockboy/lcd.c [diff]
apps/plugins/rockboy/sys_rockbox.c [diff]
apps/plugins/sdl/src/video/rockbox/SDL_rockboxvideo.c [diff]
apps/plugins/test_resize.c [diff]
apps/plugins/xworld/sys.c [diff]
apps/plugins/zxbox/zxvid_16bpp.c [diff]
apps/plugins/zxbox/zxvid_2bpp.c [diff]
firmware/export/lcd.h [diff]
Moshe Piekarski
26th Oct 12:28 5d5f8169b5: statusbar: Respect 'numdecimals' when displaying the volume setting

eg with numdecimals=1, a value of "-300" actually means "-30.0" So divide it down appropriately, and only display the whole integer portion.
apps/gui/statusbar.c [diff]
Solomon Peachy
26th Oct 11:42 845e5a4f03: sonynwz: A10 and A20 series support high bitrates
firmware/export/config/sonynwzlinux.h [diff]
Solomon Peachy
26th Oct 02:29 dd3ea521ad: iriver_flash: correctly calculate when to stop erasing the bootloader

It was originally hard-coded at 0x200 which is 512 sectors. This only works for the H100 and H120. The larger ROM of the H300 is 1024 sectors in size. In either case the bootloader starts 16 sectors before the end of the ROM so rely on this fact to correctly calculate where to stop the bootloader erasure.
apps/plugins/iriver_flash.c [diff]
James Buren
26th Oct 01:37 c5d7cd5f9f: h300: add support for ROM image generation
firmware/export/config/iriverh300.h [diff]
firmware/rom.lds [diff]
tools/configure [diff]
James Buren
26th Oct 01:07 28b9c8bfeb: rocker: Disable mute-on-pause, due to a platform kernel bug.

In short, the display fading back in after a pause resuming interferes with the audio codec, causing BadThings(tm) that cannot be recovered from

This really is just avoiding a known trigger; there's no guarantee this condition won't occur under random circumstances during normal use, and there's no good way to work around this from within rockbox.

I suspect the underlying problem is that both the display control and codec control share an i2c bus, but the kernel drivers implementing them isn't using proper linux bus access/locking.
firmware/drivers/audio/rocker_codec.c [diff]
firmware/export/rocker_codec.h [diff]
Solomon Peachy
26th Oct 01:07 bde72efa30: coldfire: make the RAM and ROM image locations configurable by macros
firmware/export/config/iaudiom3.h [diff]
firmware/export/config/iaudiom5.h [diff]
firmware/export/config/iaudiox5.h [diff]
firmware/export/config/mpiohd200.h [diff]
firmware/export/config/mpiohd300.h [diff]
firmware/target/coldfire/crt0.S [diff]
James Buren
26th Oct 01:07 129001909d: h300: enable support for iriver_flash

This also modifies the configuration file to include macros defined in the H100 / H120 implementation.
apps/plugins/SOURCES [diff]
apps/plugins/iriver_flash.c [diff]
firmware/export/config/iriverh300.h [diff]
James Buren
26th Oct 01:07 f7e0ce8fb9: h300: expose the firmware functions in the plugin API
apps/plugin.c [diff]
apps/plugin.h [diff]
James Buren
26th Oct 00:12 39a0d8bf86: x3ii/x20/rocker: Fix volume scaling.
firmware/export/rocker_codec.h [diff]
firmware/export/xduoolinux_codec.h [diff]
Solomon Peachy
26th Oct 00:12 49c4577fa6: Get rid of another vestigal SH remnant in the rom linker script
firmware/rom.lds [diff]
Solomon Peachy
25th Oct 23:18 1419070b3d: iriver_flash: add support for SST39VF3201 ROM chips

These are used in the iRiver H300 series.
apps/plugins/iriver_flash.c [diff]
James Buren
25th Oct 16:21 3fbca49929: Revert Non-Alpha Updated 8x8 tango icons

The new icons have no alpha channel thus these are being removed in favor of the old icons (that have alpha and match the rest of the set too)

This reverts commit 326b7a5c0c00b1d13cfd1319c1f290d18da8d824.
docs/CREDITS [diff]
icons/tango_icons.8x8.bmp [diff]
William Wilgus
25th Oct 12:38 d4a80ce94b: pcm-alsa: fix red.
firmware/target/hosted/pcm-alsa.c [diff]
Solomon Peachy
25th Oct 04:42 4afd1f9aa6: hosted: Document HW capabilities of audio drivers

One surprise: X3ii is capable of 384KHz playback
firmware/drivers/audio/erosqlinux_codec.c [diff]
firmware/drivers/audio/xduoolinux_codec.c [diff]
Solomon Peachy
25th Oct 04:42 e7a492ef55: hosted: alsa: Fix two bugs when recording
firmware/target/hosted/pcm-alsa.c [diff]
Solomon Peachy
24th Oct 02:00 ec2a34b321: pcm_mixer: Fix an idle frame calculation bug introduced in 2e708c48c5

Resulted in playback sometimes hanging after switching tracks
firmware/pcm_mixer.c [diff]
Solomon Peachy
24th Oct 00:38 d78a37676e: ClipPlus BOOTLOADER DONT FIT!

REMOVED FROM ALL NATIVE BOOTLOADERS: finish removing the text scrolling pare down printf to a minimal subset (%c %s %l %d %u and %x(%p)) remove diacritic and rtl language support

GOAL 134000

START 135305

CURRENT 133700

SUCCESS! (ASSUMING IT WORKS -- UNESTED)
bootloader/SOURCES [diff]
bootloader/format.c [new]
bootloader/format.h [new]
bootloader/snprintf.c [new]
firmware/common/diacritic.c [diff]
firmware/drivers/lcd-bitmap-common.c [diff]
firmware/scroll_engine.c [diff]
William Wilgus
23rd Oct 21:49 a8aa8403ad: samsungyp: Enable recording feature. No idea if it works. :D
firmware/export/config/samsungypr0.h [diff]
firmware/export/config/samsungypr1.h [diff]
Solomon Peachy
23rd Oct 21:48 46e357f1bb: ALSA: Further rework:

* Get rid of non-async (ie tick task) mode due to inherent brokenness
* Get rid of nonblock mode; we never write if buffers aren't sufficient
* Move driver init into pcm_open() instead of pcm_init()
* Much better underrun handling
* Better error handling in some situations
* Add in recording functionality
* Use smaller audio buffers to avoid glitching
* Don't start audio buffer with silence
* Allow device name to be overridden by target

Recording portions based on work done by Lorenzo Miori in g#633
firmware/target/hosted/pcm-alsa.c [diff]
firmware/target/hosted/pcm-alsa.h [diff]
Solomon Peachy
23rd Oct 16:09 2cf75bf008: fire: exit out of the plugin with both PLA_EXIT and PLA_CANCEL
apps/plugins/fire.c [diff]
Solomon Peachy
23rd Oct 15:35 3a7a46d1c0: Hosted targets Fix timer cycle calculation overflow

at 1 GHZ the intermediate calculation for cycles overflows 32 bits this makes timer fail even with sensible values solution divide both sides by 100
apps/plugins/lua/rocklib_events.c [diff]
firmware/target/hosted/kernel-unix.c [diff]
William Wilgus
23rd Oct 13:41 186dbb4527: Convert FFT plugin to using PLA keymapings

Based on an old patch (g#188) by Jean-Louis Biasini
apps/plugins/fft/fft.c [diff]
Solomon Peachy
23rd Oct 08:41 7c06a9e208: SVG image of the Aigo Eros Q and other formats for the manual.
manual/rockbox_interface/images/aigoerosq-front.pdf [new]
manual/rockbox_interface/images/aigoerosq-front.png [new]
manual/rockbox_interface/images/aigoerosq-front.svg [new]
Szymon Dziok
22nd Oct 17:20 1e12990ba9: rbutil: Rename libbzip2.a to libbz2.a.

When cross compiling for Windows (at least mxe) links bz2, causing both our copy and the system one getting linked, resulting in symbol clashes. Make sure we use the same name as the system one, so the linker can pick one of both.
rbutil/bspatch/Makefile [diff]
rbutil/bzip2/Makefile [diff]
rbutil/rbutilqt/Makefile.libs [diff]
rbutil/rbutilqt/rbutilqt.pro [diff]
Dominik Riebeling
22nd Oct 17:16 02c5dd3641: fiio: Another bugfix in the mute code.
firmware/drivers/audio/fiiolinux_codec.c [diff]
Solomon Peachy
22nd Oct 16:14 97b8692b65: fiio: add in a missing audiohw_mute() call.
firmware/drivers/audio/fiiolinux_codec.c [diff]
Solomon Peachy
21st Oct 19:33 ce3da6238f: rbutil: Fix linking zlib on Windows.

With Qt4 zlib was linked implicitly (and explicitly linking it caused errors). This was a Qt issue that has been resolved with (at least current) Qt5, now we need to explicitly link zlib on native Windows.
rbutil/rbutilqt/rbutilqt.pro [diff]
Dominik Riebeling
21st Oct 19:33 1801dcc999: rbutil: Fix native Windows build for tools.

- When make on Windows finds sh.exe it will try to use that. We use cmd.exe calls when detecting Windows, so make sure we use cmd.exe as shell.
- Add missing Windows compatibility to tomcrypt Makefile.
rbutil/libtools.make [diff]
tools/rbspeex/Makefile [diff]
tools/ucl/src/Makefile [diff]
utils/tomcrypt/Makefile [diff]
Dominik Riebeling
21st Oct 13:24 884d8922e3: hosted: Allow ALSA driver to switch output device at runtime

* Allow output device name to be specified
* Set hw/swparams prior to actual playback start, not at init
* If told to open a new device, cleanly close down old one.
firmware/target/hosted/pcm-alsa.c [diff]
Solomon Peachy
21st Oct 13:24 6b13437aff: Add UI Simulator for Eros Q / K series
firmware/target/hosted/sdl/sim-ui-defines.h [diff]
uisimulator/bitmaps/UI-aigoerosq.bmp [new]
uisimulator/buttonmap/SOURCES [diff]
uisimulator/buttonmap/erosq.c [new]
Solomon Peachy
20th Oct 21:07 6834d1a02f: xduoox20: Start unmuted, as the least-worst option
firmware/drivers/audio/xduoolinux_codec.c [diff]
firmware/export/xduoolinux_codec.h [diff]
Solomon Peachy
19th Oct 03:39 dfae5d881d: nwza860: fix simulator build
apps/audio_path.c [diff]
Amaury Pouly
18th Oct 20:34 08513103c6: nwzstools: add NW-A820 nvp nodes
firmware/target/hosted/sonynwz/nwz-db.c [diff]
utils/nwztools/database/nvp/nwz-a820.txt [new]
Amaury Pouly
18th Oct 17:22 1a1338c379: rbutil: Fix ipodpatcher qmake based build on macOS.

On macOS we need to pass the used frameworks, otherwise linking will fail.
rbutil/ipodpatcher/ipodpatcher.pro [diff]
Dominik Riebeling
18th Oct 17:16 a05d061aa3: rbutil: Pass isysroot to rbutil libs on macOS.

On macOS we pass the full path to the compiler. On recent versions this causes the compiler to not find its SDK path, this needs to get passed via the isysroot option.
rbutil/libtools.make [diff]
rbutil/rbutilqt/Makefile.libs [diff]
rbutil/rbutilqt/rbutilqt.pro [diff]
tools/rbspeex/Makefile [diff]
tools/ucl/src/Makefile [diff]
utils/tomcrypt/Makefile [diff]
Dominik Riebeling
18th Oct 17:08 d097742155: sbtools: Change crypto wrapper implementation to C.

There's nothing C++ left.
rbutil/mkimxboot/Makefile [diff]
utils/imxtools/sbtools/Makefile [diff]
utils/imxtools/sbtools/crypto.cpp utils/imxtools/sbtools/crypto.c [rename]
Dominik Riebeling
18th Oct 17:08 2037b837f8: sbtools: convert crypto to libtomcrypt.

Replace the use of crypto++ with tomcrypt, which is much smaller and C. This gets rid of various build issues for systems that don't ship crypo++ (i.e. everything except Linux.)
rbutil/mkimxboot/Makefile [diff]
rbutil/rbutilqt/Makefile.libs [diff]
rbutil/rbutilqt/rbutilqt.pro [diff]
utils/imxtools/sbtools/Makefile [diff]
utils/imxtools/sbtools/crypto.cpp [diff]
utils/imxtools/sbtools/crypto.h [diff]
Dominik Riebeling
18th Oct 17:08 815b289cb3: imxtools: Replace use of "byte" with its underlying uint8_t.

libtomcrypt uses a macro "byte" which conflicts with this type. Since the underlying type is uint8_t and there's no real benefit from using a custom type use the actual underlying type.
rbutil/mkimxboot/mkimxboot.c [diff]
utils/imxtools/sbtools/crc.c [diff]
utils/imxtools/sbtools/crypto.cpp [diff]
utils/imxtools/sbtools/crypto.h [diff]
utils/imxtools/sbtools/dbparser.c [diff]
utils/imxtools/sbtools/misc.c [diff]
utils/imxtools/sbtools/misc.h [diff]
utils/imxtools/sbtools/sb.c [diff]
Dominik Riebeling
18th Oct 17:08 387a45923c: utils: Add Makefile for our copy of libtomcrypt.
utils/tomcrypt/Makefile [new]
Dominik Riebeling
18th Oct 17:08 caa9d9c1c5: utils: Add (partial) libtomcrypt.

Add the parts of libtomcrypt that we're about to use.
docs/CREDITS [diff]
utils/tomcrypt/LICENSE [new]
utils/tomcrypt/README.ROCKBOX [new]
utils/tomcrypt/src/ciphers/aes/aes.c [new]
utils/tomcrypt/src/ciphers/aes/aes_tab.c [new]
utils/tomcrypt/src/hashes/sha1.c [new]
utils/tomcrypt/src/headers/tomcrypt.h [new]
utils/tomcrypt/src/headers/tomcrypt_argchk.h [new]
utils/tomcrypt/src/headers/tomcrypt_cfg.h [new]
utils/tomcrypt/src/headers/tomcrypt_cipher.h [new]
utils/tomcrypt/src/headers/tomcrypt_custom.h [new]
utils/tomcrypt/src/headers/tomcrypt_hash.h [new]
utils/tomcrypt/src/headers/tomcrypt_mac.h [new]
utils/tomcrypt/src/headers/tomcrypt_macros.h [new]
utils/tomcrypt/src/headers/tomcrypt_math.h [new]
utils/tomcrypt/src/headers/tomcrypt_misc.h [new]
utils/tomcrypt/src/headers/tomcrypt_pk.h [new]
utils/tomcrypt/src/headers/tomcrypt_pkcs.h [new]
utils/tomcrypt/src/headers/tomcrypt_private.h [new]
utils/tomcrypt/src/headers/tomcrypt_prng.h [new]
utils/tomcrypt/src/misc/compare_testvector.c [new]
utils/tomcrypt/src/misc/crypt/crypt_argchk.c [new]
utils/tomcrypt/src/misc/crypt/crypt_cipher_descriptor.c [new]
utils/tomcrypt/src/misc/crypt/crypt_cipher_is_valid.c [new]
utils/tomcrypt/src/misc/crypt/crypt_register_cipher.c [new]
utils/tomcrypt/src/misc/zeromem.c [new]
utils/tomcrypt/src/modes/cbc/cbc_decrypt.c [new]
utils/tomcrypt/src/modes/cbc/cbc_encrypt.c [new]
utils/tomcrypt/src/modes/cbc/cbc_start.c [new]
Dominik Riebeling
18th Oct 17:07 7603533f7f: tools: Modernize rbspeex Makefile.

- Replace echo with make internal info function.
- Make dependency generation implicit to avoid another compiler call.
- Align object handling with libtools.make.
tools/rbspeex/Makefile [diff]
Dominik Riebeling
18th Oct 14:19 6a94f1e995: sonynwz: Properly support multidrive, with hotswap of the SD card
firmware/export/config/samsungypr0.h [diff]
firmware/export/config/sonynwa20.h [diff]
firmware/export/config/sonynwza10.h [diff]
firmware/export/config/sonynwzlinux.h [diff]
firmware/target/hosted/sonynwz/system-nwz.c [diff]
Solomon Peachy
18th Oct 02:52 5f75c493e3: xduoox20: Remove a duplicate config option
firmware/export/config/xduoox20.h [diff]
Solomon Peachy
18th Oct 01:40 edbdefa09a: hosted: Drop a bootloader version string in /etc, and report it in debug menu
firmware/target/hosted/agptek/debug-agptek.c [diff]
tools/hiby_patcher.pl [diff]
Solomon Peachy
18th Oct 01:30 4cdb28c167: Fix sim build for STORAGE_USB
uisimulator/common/sim_tasks.c [diff]
Solomon Peachy
18th Oct 00:45 b1e21bbd7a: hosted: Consolidate common config of hiby-based units into a common header

* Enabled MULTIDRIVE and ROOTFS_HOTPLUG for full hotswap!
(Requires updated bootloader/integration!)
firmware/export/config/agptekrocker.h [diff]
firmware/export/config/aigoerosq.h [diff]
firmware/export/config/hibylinux.h [new]
firmware/export/config/xduoox20.h [diff]
firmware/export/config/xduoox3ii.h [diff]
tools/hiby_patcher.pl [diff]
Solomon Peachy
17th Oct 22:38 7d3e39cfd8: hiby_patcher: Fix a couple of bugs in the hotplug scripts
tools/hiby_patcher.pl [diff]
Solomon Peachy
17th Oct 22:38 6f9a157fca: hosted: Fix USB mounting code to work with HAVE_MULTIDRIVE enabled
firmware/target/hosted/fiio/usb-fiio.c [diff]
firmware/target/hosted/filesystem-app.c [diff]
firmware/target/hosted/usb-hiby.c [diff]
Solomon Peachy
17th Oct 22:38 f3ec58c05b: hosted: Support hot-swappable internal and external storage
firmware/target/hosted/fiio/system-fiio.c [diff]
firmware/target/hosted/system-hosted.c [diff]
Solomon Peachy
17th Oct 22:38 d8d37ffdb8: Define a USB storage type, and hook it up for hosted targets
firmware/common/pathfuncs.c [diff]
firmware/export/config.h [diff]
firmware/export/hostfs.h [diff]
firmware/export/mv.h [diff]
firmware/export/storage.h [diff]
firmware/target/hosted/fiio/system-fiio.c [diff]
firmware/target/hosted/system-hosted.c [diff]
Solomon Peachy
17th Oct 22:38 0a4a920029: hosted: ROLO: Fixes for PIVOT_ROOT targets
firmware/target/hosted/rolo.c [diff]
Solomon Peachy
17th Oct 21:10 012908e064: hosted: Fix HAVE_MULTIDRIVE to work properly with PIVOT_ROOT
firmware/export/config/samsungypr0.h [diff]
firmware/target/hosted/filesystem-app.c [diff]
Solomon Peachy
17th Oct 21:10 a68fc3b6c2: xduoox3ii/erosq: Fix CPU frequency declared in header

(108 MHz -> 1008 MHz)
firmware/export/config/aigoerosq.h [diff]
firmware/export/config/xduoox3ii.h [diff]
Solomon Peachy
17th Oct 18:37 13f5e123f9: samsung yp-r0/r1: use os-native opendir() in the low-level driver code

Fixes blank LCD on both R0/R1 and the PMU on the R1
firmware/target/hosted/samsungypr/lcd-ypr.c [diff]
firmware/target/hosted/samsungypr/ypr1/powermgmt-ypr1.c [diff]
Solomon Peachy
17th Oct 18:22 0e667ff5b0: sonynwz: use os-native opendir() in the low-level input driver code

instead of the rockbox opendir() wrapper.
firmware/target/hosted/sonynwz/button-nwz.c [diff]
Solomon Peachy
17th Oct 01:16 cd721754d0: Fix configure target name for the erosq/k series.
rbutil/rbutilqt/rbutil.ini [diff]
tools/configure [diff]
Solomon Peachy
17th Oct 01:02 1b110daf08: rbutil: Add in the EROS Q / EROS K and clones
rbutil/rbutilqt/rbutil.ini [diff]
Solomon Peachy
17th Oct 00:34 ce40ef42ff: hosted: Make sure we don't call mixer/etc controls when we're not ready

(Might fix the rocker crash-on-shutdown bug)
firmware/drivers/audio/erosqlinux_codec.c [diff]
firmware/drivers/audio/fiiolinux_codec.c [diff]
firmware/drivers/audio/rocker_codec.c [diff]
firmware/drivers/audio/xduoolinux_codec.c [diff]
Solomon Peachy
16th Oct 21:28 d993448c9f: Add Samsung YP-R1 to the builds.pm file, as an unstable (but usable) target.
tools/builds.pm [diff]
Solomon Peachy
16th Oct 19:31 318229e742: rbutil: Fix incorrect USB IDs for the xDuoo X3ii and X20
rbutil/rbutilqt/rbutil.ini [diff]
Solomon Peachy
16th Oct 18:37 c6d2a0358f: hosted: open input device as read-only.
firmware/target/hosted/agptek/button-agptek.c [diff]
firmware/target/hosted/aigo/button-erosq.c [diff]
firmware/target/hosted/fiio/button-fiio.c [diff]
firmware/target/hosted/sonynwz/button-nwz.c [diff]
firmware/target/hosted/xduoo/button-xduoo.c [diff]
Solomon Peachy
15th Oct 21:34 1a76bc403e: erosq: Fix up builds.pm to match what we actually call the target
tools/builds.pm [diff]
tools/configure [diff]
Solomon Peachy
15th Oct 21:03 df8b817c96: nwztools/scsitool: fix incorrect declaration in header file
utils/nwztools/scsitools/para_noise.h [diff]
Amaury Pouly
15th Oct 18:11 2e07223690: m3k: Fixes for the M3K.

* Cannot turn off the LCD directly (have to rely on backlight)
* Only insmod/rmmod the usb gadget modules if state changes
firmware/export/config/fiiom3k.h [diff]
firmware/target/hosted/fiio/usb-fiio.c [diff]
Solomon Peachy
15th Oct 17:33 455a23bdab: Promote the eros q/k to "unstable"
tools/builds.pm [diff]
Solomon Peachy
15th Oct 17:31 82787709bd: update the hibi patcher script to handle initial m3k stuff
firmware/drivers/audio/fiiolinux_codec.c [diff]
tools/hiby_patcher.pl [diff]
Solomon Peachy
15th Oct 17:30 0cde20fadb: xduoox3: Disable the DAC's digital de-emphasis filter.

Whether or not this is correct depends on how the source material was mastered, digitized, and/or encoded. There is no setting appropriate for everything.

Eventually I'd like to make this configurable, but I'd want to have it shared with more than one target first.
firmware/target/mips/ingenic_jz47xx/codec-jz4760.c [diff]
Solomon Peachy
15th Oct 14:18 d544ce46a7: hosted: Unify the USB code for the hiby-based players.

* Specify exported USB VID/PID in target config header
* Don't fail if the sd filesystem has already been remounted
(ie due to platform hotplug)
firmware/SOURCES [diff]
firmware/export/config/agptekrocker.h [diff]
firmware/export/config/aigoerosq.h [diff]
firmware/export/config/xduoox20.h [diff]
firmware/export/config/xduoox3ii.h [diff]
firmware/target/hosted/aigo/usb-erosq.c [deleted]
firmware/target/hosted/agptek/usb-agptek.c firmware/target/hosted/usb-hiby.c [rename]
firmware/target/hosted/xduoo/usb-xduoo.c [deleted]
Solomon Peachy
15th Oct 11:43 4873a1ac61: fiiom3k: Temporarily disable filter rolloff programming

(Hardware control isn't wired into ALSA properly)
bootloader/rocker_linux.c [diff]
firmware/drivers/audio/fiiolinux_codec.c [diff]
Solomon Peachy
14th Oct 17:42 ca4d63d4d9: m3k: Fixes to the launcher/loader.

* Execute the correct OF player binary
* We don't have adb, so error out
bootloader/rocker_linux.c [diff]
Solomon Peachy
14th Oct 12:37 1b449abf39: erosq: Add battery discharge curve and initial runtime estimation.

(playing mp3 with headphones inserted lasted just over 13 hours)
firmware/export/config/aigoerosq.h [diff]
firmware/target/hosted/aigo/powermgmt-erosq.c [diff]
Solomon Peachy
14th Oct 01:48 19d45c9257: Work around wonky inline asm issue with creativezenvm build.

The right thing here probably to just not bother at all, as this bootloader can't launch rockbox yet anyway.
firmware/target/arm/system-arm.h [diff]
Solomon Peachy
14th Oct 01:33 105a0eb0b7: mrobe500 bootloader fix
bootloader/mrobe500.c [diff]
Solomon Peachy
14th Oct 00:09 cddd8d66e2: Silence warnings that happen on newer GCCs

(code is presumably correct)
apps/plugins/pdbox/PDa/src/m_obj.c [diff]
apps/plugins/rockboy/mem.c [diff]
Solomon Peachy
13th Oct 23:45 26bebd77ab: Fix more red.
firmware/drivers/isp1583.c [diff]
firmware/target/arm/rk27xx/hm60x/button-hm60x.c [diff]
Solomon Peachy
13th Oct 23:02 e2adc6781f: bootloader: Work around linker wonkiness that broke PP bootloader builds.
bootloader/bootloader.make [diff]
Solomon Peachy
13th Oct 21:23 09785a8499: fix more yellow
apps/debug_menu.c [diff]
apps/plugins/iriver_flash.c [diff]
firmware/drivers/isp1583.c [diff]
firmware/target/arm/rk27xx/hm801/button-hm801.c [diff]
firmware/target/arm/sandisk/sansa-c200/button-c200.c [diff]
firmware/target/coldfire/mpio/hd300/button-hd300.c [diff]
Solomon Peachy
13th Oct 19:48 b94db707fb: Fix more warnings.
apps/plugins/iriver_flash.c [diff]
bootloader/ipod6g.c [diff]
firmware/drivers/rtc/rtc_e8564.c [diff]
firmware/target/arm/pbell/vibe500/button-vibe500.c [diff]
firmware/target/arm/samsung/button-yh82x_yh92x.c [diff]
firmware/target/arm/usb-drv-arc.c [diff]
firmware/target/coldfire/iaudio/m3/button-m3.c [diff]
firmware/target/coldfire/iriver/h100/button-h100.c [diff]
firmware/target/coldfire/iriver/h300/button-h300.c [diff]
firmware/target/coldfire/mpio/ata-mpio.c [diff]
firmware/target/coldfire/mpio/hd200/button-hd200.c [diff]
Solomon Peachy
13th Oct 19:48 431caa4311: imx31: Work around an apparently not-quite-kosher abuse of CPP

(we were trying to foward-declare functions from within static initializer context. GCC no longer accepts this)
firmware/export/mc13783.h [diff]
firmware/target/arm/imx31/gigabeat-s/gpio-target.h [diff]
firmware/target/arm/imx31/gigabeat-s/mc13783-target.h [diff]
firmware/target/arm/imx31/gpio-imx31.h [diff]
Solomon Peachy
13th Oct 18:18 f8bd54d575: iaudiox5: Fix red, due to slightly bogus asm
firmware/target/coldfire/iaudio/x5/button-x5.c [diff]
firmware/target/coldfire/iaudio/x5/lcd-as-x5.S [diff]
Solomon Peachy
13th Oct 17:37 ca326896d0: Fix compile warnings (set-but-not-used) on big endian targets
apps/plugins/lib/jhash.c [diff]
apps/talk.c [diff]
Solomon Peachy
13th Oct 17:37 4a3d046545: Fix a pile of yellow in the bootloader
firmware/drivers/rtc/rtc_e8564.c [diff]
firmware/target/arm/iriver/h10/button-h10.c [diff]
firmware/target/arm/s3c2440/gigabeat-fx/button-meg-fx.c [diff]
firmware/target/arm/s5l8702/system-s5l8702.c [diff]
firmware/target/arm/tcc780x/cowond2/button-cowond2.c [diff]
firmware/target/arm/tms320dm320/mrobe-500/powermgmt-mr500.c [diff]
firmware/target/arm/tms320dm320/system-dm320.c [diff]
firmware/target/coldfire/iaudio/m3/button-m3.c [diff]
firmware/target/coldfire/iaudio/m5/button-m5.c [diff]
Solomon Peachy
13th Oct 16:27 b4865b05b0: Build: Bump all toolchains to GCC 4.9.4 + Binutils 2.26.1

GCC 4.9.4 was already used for MIPS and all hosted targets; this enables it across the board for everything (ie m68k and arm native)

Other changes:

* Use '-Os' as the default optiomization for all targets
(was only disabled for arm native)
* Enable -funit-at-a-time and -Wextra
* Drop all obsolete toolchain patches
* Update ARM multilib/exception patch
* Bump toolchain libs (gmp, mpfr, mpc) to recommended versions, and add 'isl' to enable better optimization & vectorization opportunities.

(Will revisit optimization for the codecs and plugins at a later date)

Confirmed working:

* armv4t (ipodmini2g and many other PP502x targets)
* arm >= v5 (sansaclipplus, ipod6g, ipodnano2g, sansafuzeplus)
* m68k (ihp100)
lib/rbcodec/codecs/codecs.make [diff]
tools/configure [diff]
tools/rockboxdev.sh [diff]
tools/toolchain-patches/binutils-2.16.1-texinfo-fix.diff [deleted]
tools/toolchain-patches/binutils-2.20.1-ld-thumb-interwork-long-call.diff [deleted]
tools/toolchain-patches/binutils-2.20.1-texinfo-fix.diff [deleted]
tools/toolchain-patches/rockbox-multilibs-noexceptions-arm-elf-eabi-gcc-4.4.2_1.diff [deleted]
tools/toolchain-patches/rockbox-multilibs-noexceptions-arm-elf-eabi-gcc-4.9.4.diff [new]
Solomon Peachy
13th Oct 16:01 e91f89a410: xduoox3ii: Update battery curve.
firmware/export/config/xduoox3ii.h [diff]
firmware/target/hosted/xduoo/powermgmt-xduoo.c [diff]
Solomon Peachy
12th Oct 23:26 f68463c53e: quickscreen: Get rid of a vestigal remnant of the Archos code.
apps/gui/quickscreen.c [diff]
apps/gui/quickscreen.h [diff]
Solomon Peachy
12th Oct 15:48 688575368c: rocker: Fix red introduced in 01dc81c
firmware/drivers/audio/rocker_codec.c [diff]
Solomon Peachy
12th Oct 15:46 17244177ee: hosted: Fix a corner case in umuting the x3ii and erosq
firmware/drivers/audio/erosqlinux_codec.c [diff]
firmware/drivers/audio/xduoolinux_codec.c [diff]
Solomon Peachy
12th Oct 15:33 b5c2a4ab96: Add support for new bootloaders for iRiver h1x0 series

This resolves a long-standing issue with ATA errors in certain situations, mostly in CF card modified units.
apps/plugins/iriver_flash.c [diff]
docs/CREDITS [diff]
James Buren
12th Oct 15:33 078c34e951: hosted: More PCM muting work

* Track mute state, only call hw if actual change is needed
* Don't unmute in audiohw_postinit()
* sample rate tracking fixes
* erosq: Don't start up muted
firmware/drivers/audio/erosqlinux_codec.c [diff]
firmware/drivers/audio/rocker_codec.c [diff]
firmware/drivers/audio/xduoolinux_codec.c [diff]
firmware/export/erosqlinux_codec.h [diff]
firmware/target/hosted/pcm-alsa.c [diff]
Solomon Peachy
12th Oct 15:16 01dc81cd94: rolo: hosted: Make display output non-glitchy
firmware/target/hosted/rolo.c [diff]
Solomon Peachy
12th Oct 13:40 141e91ef1f: Hosted PCM: Rework auto-muting code a bit

* If AUDIOHW_MUTE_ON_PAUSE, no meaningful change
* Unconditionally unmute on playback start
* xduoox3ii: Mute on sample rate change
* rocker/xduoo: Stay muted after startup

This avoids the nasty "pop" on startup, without doing the full mute-on-pause stuff that causes unacceptable dropouts on the X3ii.
firmware/drivers/audio/erosqlinux_codec.c [diff]
firmware/drivers/audio/rocker_codec.c [diff]
firmware/drivers/audio/xduoolinux_codec.c [diff]
firmware/export/xduoolinux_codec.h [diff]
firmware/target/hosted/pcm-alsa.c [diff]
Solomon Peachy
12th Oct 13:40 9ad30869b8: xduoox3ii/x20: Work around a nasty OF interaction bug

...that can result in your sd card getting wiped at startup
tools/hiby_patcher.pl [diff]
Solomon Peachy
11th Oct 22:35 135b3f6416: Fix inverted test that made SDL_APP unhappy
firmware/target/hosted/filesystem-app.c [diff]
Solomon Peachy
11th Oct 22:34 e1bc36ca31: Turn on ROLO for M3K too
firmware/export/config/fiiom3k.h [diff]
firmware/target/hosted/rolo.c [diff]
Solomon Peachy
11th Oct 21:47 db6f21e295: hosted: sanitize handling of HOME_DIR

* HOME_DIR is now either "/" or special "<HOME>"
* target-specific "home dir path" is defined solely by PIVOT_ROOT
* PIVOT_ROOT path is now defined in toplevel config files
* Make Samsung YP-R0/R1 and SONY_NWZ use PIVOT_ROOT too
* Do not prepend PIVOT_ROOT path if the path already has it!
* Do not play these games for __PCTOOL__ builds
apps/plugins/battery_bench.c [diff]
apps/scrobbler.c [diff]
bootloader/rocker_linux.c [diff]
firmware/export/config/agptekrocker.h [diff]
firmware/export/config/aigoerosq.h [diff]
firmware/export/config/fiiom3k.h [diff]
firmware/export/config/ibassodx50.h [diff]
firmware/export/config/ibassodx90.h [diff]
firmware/export/config/samsungypr0.h [diff]
firmware/export/config/samsungypr1.h [diff]
firmware/export/config/sonynwzlinux.h [diff]
firmware/export/config/xduoox20.h [diff]
firmware/export/config/xduoox3ii.h [diff]
firmware/export/rbpaths.h [diff]
firmware/target/hosted/filesystem-app.c [diff]
firmware/target/hosted/rolo.c [diff]
Solomon Peachy
11th Oct 21:20 a5add3982b: Fix red introduced from keymap typos
apps/plugins/battery_bench.c [diff]
apps/plugins/pegbox.c [diff]
apps/plugins/xobox.c [diff]
Solomon Peachy
11th Oct 20:37 2a471e288c: New port: AIGO EROS Q / EROS K

The Q and K have a slightly different case, but the hardware under the shell is completely identical.

These models are rebadged versions:

* Hifiwalker H2 (== Q)
* AGPTek H3 (== K)
* Surfans F20 (== K)

Other notes:

* Significant improvements in the shared Hiby-platform launcher/loader
* SD card can theoretically be hot-swapped now
* Support external USB mass storage!
* Some consolidation of Hiby-platform targets
* Some consolidation of plugin keymaps

Todo/known issues:

* Keymaps need to be gone over properly
* Convert to HAVE_SCROLLWHEEL?
apps/SOURCES [diff]
apps/bitmaps/native/SOURCES [diff]
apps/debug_menu.c [diff]
apps/keymaps/keymap-erosq.c [new]
apps/plugins/battery_bench.c [diff]
apps/plugins/blackjack.c [diff]
apps/plugins/brickmania.c [diff]
apps/plugins/calculator.c [diff]
apps/plugins/calendar.c [diff]
apps/plugins/chessbox/chessbox_pgn.h [diff]
apps/plugins/chessclock.c [diff]
apps/plugins/chip8.c [diff]
apps/plugins/chopper.c [diff]
apps/plugins/clix.c [diff]
apps/plugins/cube.c [diff]
apps/plugins/doom/i_video.c [diff]
apps/plugins/fft/fft.c [diff]
apps/plugins/flipit.c [diff]
apps/plugins/fractals/fractal.h [diff]
apps/plugins/goban/goban.h [diff]
apps/plugins/imageviewer/imageviewer_button.h [diff]
apps/plugins/invadrox.c [diff]
apps/plugins/jewels.c [diff]
apps/plugins/lib/keymaps.h [diff]
apps/plugins/lib/pluginlib_actions.c [diff]
apps/plugins/midi/midiplay.c [diff]
apps/plugins/minesweeper.c [diff]
apps/plugins/mp3_encoder.c [diff]
apps/plugins/mpegplayer/mpeg_settings.c [diff]
apps/plugins/mpegplayer/mpegplayer.c [diff]
...and 56 more files.
Solomon Peachy
11th Oct 16:05 5efaa9ef80: rbutil: Use globalPos() for getting mouse position.

globalX() / globalY() are deprecated for Qt6. Use globalPos() instead, which gives the same result.
rbutil/rbutilqt/preview.cpp [diff]
rbutil/rbutilqt/preview.h [diff]
Dominik Riebeling
11th Oct 14:20 4e89e0e0ea: nwztools: fix wrongly generate MD5 files

When generating the MD5 using -z index,name the tool would add the entry but forgot to increase the file size, hence truncating the file.
utils/nwztools/upgtools/upgtool.c [diff]
Amaury Pouly
11th Oct 14:18 6533d983ca: hosted: Add ROLO support for hosted targets
apps/filetree.c [diff]
firmware/SOURCES [diff]
firmware/export/config/agptekrocker.h [diff]
firmware/export/config/xduoox20.h [diff]
firmware/export/config/xduoox3ii.h [diff]
firmware/export/rolo.h [diff]
firmware/rolo.c [diff]
firmware/target/hosted/rolo.c [new]
Solomon Peachy
11th Oct 12:10 fcdfeb2a45: nwztools: re-implement MD5 on Windows

I forgot to fixup the windows up and missed it because of conditional compilation
utils/nwztools/upgtools/mg.cpp [diff]
utils/nwztools/upgtools/upgtool.c [diff]
Amaury Pouly
11th Oct 11:08 e371dee4a3: nwztool: fix computation

It turns out the calculation gives the right result for the wrong reason, this fixes it.
utils/nwztools/upgtools/upg.c [diff]
Amaury Pouly
11th Oct 11:08 8ce60c54f7: nwztools/upgtool: add support for MD5

When compressing, it is possible to tell the tool to add an entry to the MD5 file (index 1), it is still necessary to give an empty file for that index. To do so, pass the option "-z idx,name" insteas of "-z idx". This will create an entry of the form "size md5 name". For instance "-z 6,system.img". When decompressing, if one passes "-z idx,name" instead of "-z idx", the tool will decompress and check against the value in the MD5 file.
utils/nwztools/upgtools/mg.cpp [diff]
utils/nwztools/upgtools/mg.h [diff]
utils/nwztools/upgtools/upgtool.c [diff]
Amaury Pouly
11th Oct 11:08 7cba599106: nwztool/upgtools: add NW-A55 and DMP-Z1 KAS, reorganize list
utils/nwztools/upgtools/upg.c [diff]
Amaury Pouly
11th Oct 11:08 1b5e824405: nwztool/upgtool: add support for compression

To decompress some output file(s), simply pass -z <idx> where idx is the index of the file to decompress, starting from 0. For example upgtool -e NW_WM_FW.UPG -o tmp/ -m nw-wm1a -z 6 -z 7 to decompress files 6 and 7. To compress file, use the same options: upgtool -c NW_WM_FW.UPG -m nw-wm1a -z 2 script.sh md5sum.txt system.img
utils/nwztools/upgtools/Makefile [diff]
utils/nwztools/upgtools/make_release.sh [new]
utils/nwztools/upgtools/upg.c [diff]
utils/nwztools/upgtools/upgtool.c [diff]
Amaury Pouly
11th Oct 11:08 1f338f7078: nwztools/upgtools: add support for windows

In order to avoid the crypto++ mess, the code uses the Windows Cryptography API, which is standard. There is also some makefile magic to cross-compile: make PREFIX=i686-w64-mingw32- EXE_EXT=.exe I selected the option so that it should statically link supports libraries used by gcc (slsj and libwinpthread).
utils/nwztools/upgtools/Makefile [diff]
utils/nwztools/upgtools/keysig_search.h [diff]
utils/nwztools/upgtools/md5.cpp [deleted]
utils/nwztools/upgtools/md5.h [deleted]
utils/nwztools/upgtools/mg.cpp [diff]
utils/nwztools/upgtools/mg.h [diff]
utils/nwztools/upgtools/misc.c [diff]
utils/nwztools/upgtools/upg.c [diff]
utils/nwztools/upgtools/upgtool.c [diff]
Amaury Pouly
11th Oct 11:08 05fa8fc343: scsitools: typo
utils/nwztools/scsitools/scsitool.c [diff]
Amaury Pouly
11th Oct 11:08 53d2742a48: nwztools: add support for new UPG format on post-WM1/A30 devices

The new code supports reading and writing UPG files. I kept the old keysig search code but it only supports the old format (the new format has too long keys anyway). Since we now have to support two types of encryption(DES and AES), I reorganized the crypto routines and clean-up some code.
utils/nwztools/upgtools/Makefile [diff]
utils/nwztools/upgtools/fwp.c [deleted]
utils/nwztools/upgtools/fwp.h [deleted]
utils/nwztools/upgtools/keysig_search.c [diff]
utils/nwztools/upgtools/keysig_search.h [diff]
utils/nwztools/upgtools/mg.cpp [diff]
utils/nwztools/upgtools/mg.h [diff]
utils/nwztools/upgtools/upg.c [diff]
utils/nwztools/upgtools/upg.h [diff]
utils/nwztools/upgtools/upgtool.c [diff]
Amaury Pouly
11th Oct 11:08 cda16f9439: scsitools: const correctness and add "get_dnk_nvp all" subcommand.
utils/nwztools/scsitools/Makefile [diff]
utils/nwztools/scsitools/scsitool.c [diff]
Amaury Pouly
11th Oct 11:08 76fbb33adf: nwztools: fix MW-WM1/A30 KAS, fix KAS length

Split WM1A/WM1Z because they don't have the same KAS. On newer devices, the KAS is actually 64 bytes, not 60. The strange thing is that "get_dnk_nvp kas" returns 60 bytes whereas "get_dnk_prop kas" returns 64, not sure why.
firmware/target/hosted/sonynwz/nwz-db.c [diff]
firmware/target/hosted/sonynwz/nwz-db.h [diff]
utils/nwztools/database/nvp/nw-wm1.txt utils/nwztools/database/nvp/nw-wm1a.txt [rename]
utils/nwztools/database/nvp/nw-wm1z.txt [new]
utils/nwztools/database/series.txt [diff]
utils/nwztools/scsitools/scsitool.c [diff]
utils/nwztools/upgtools/upg.c [diff]
Amaury Pouly
11th Oct 07:42 c8fa53050d: rbutil: Add project file for building multiple binaries.

To use ipodpatcher and sansapatcher as external binaries (so we can do proper permission elevation) we need to build them using qmake as part of the main build. Add a subdirs template based project file to do that, and project files for the patchers.

Move Linux appimage rules one level up, since it needs to include the patchers as well.
rbutil/ipodpatcher/ipodpatcher.pro [new]
rbutil/rbutil.pro [new]
rbutil/rbutilqt/rbutilqt.pro [diff]
rbutil/sansapatcher/sansapatcher.pro [new]
Dominik Riebeling
11th Oct 07:42 cd192f239b: rbutil: Fix encoding of turkish translation.

The file encoding was messed up long ago. Since the translation wasn't updated since reimport the original patch (FS #8407).
rbutil/rbutilqt/lang/rbutil_tr.ts [diff]
Dominik Riebeling
11th Oct 05:47 5cfd3ae4e6: hosted: Use O_CLOEXEC for all open() and "e" for fopen() calls

This way we'll automatically close the files upon exec()
firmware/target/hosted/agptek/button-agptek.c [diff]
firmware/target/hosted/cpufreq-linux.c [diff]
firmware/target/hosted/cpuinfo-linux.c [diff]
firmware/target/hosted/fiio/button-fiio.c [diff]
firmware/target/hosted/fiio/system-fiio.c [diff]
firmware/target/hosted/filesystem-app.c [diff]
firmware/target/hosted/filesystem-unix.c [diff]
firmware/target/hosted/ibasso/sysfs-ibasso.c [diff]
firmware/target/hosted/lcd-linuxfb.c [diff]
firmware/target/hosted/rtc.c [diff]
firmware/target/hosted/sdl/pcm-sdl.c [diff]
firmware/target/hosted/sonynwz/system-nwz.c [diff]
firmware/target/hosted/sysfs.c [diff]
firmware/target/hosted/xduoo/button-xduoo.c [diff]
Solomon Peachy
11th Oct 02:30 4f8736909a: SVG image of the xDuoo X3 and other formats for the manual.
manual/rockbox_interface/images/xduoox3-front.pdf [new]
manual/rockbox_interface/images/xduoox3-front.png [diff]
manual/rockbox_interface/images/xduoox3-front.svg [new]
Szymon Dziok
10th Oct 02:01 7c00e9b30b: puzzles: improve frontend documentation

What it says on the tin.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
10th Oct 00:52 4b10aacbc2: xduoox3ii/x20: headphones take precedence over line out

so if both are plugged in, assume headphones (and respect volume)
firmware/drivers/audio/xduoolinux_codec.c [diff]
Solomon Peachy
9th Oct 23:54 6c6642e8d5: m3k: Fix red bootloader build
firmware/target/hosted/fiio/button-target.h [diff]
Solomon Peachy
9th Oct 21:33 02a49386a9: Fix the FILTER_ROLL_OFF build; got a test inverted.
apps/settings_list.c [diff]
Solomon Peachy
9th Oct 16:41 aabc8aca47: New port: FiiO M3K

Most credit goes to: Roman Skylarov Additional integration and refactoring by myself.

*** COMPLETELY UNTESTED ***
apps/SOURCES [diff]
apps/bitmaps/native/SOURCES [diff]
apps/bitmaps/native/fiioicon.130x130x16.bmp [new]
apps/features.txt [diff]
apps/keymaps/keymap-fiiom3k.c [new]
apps/lang/english.lang [diff]
apps/plugins/battery_bench.c [diff]
apps/plugins/blackjack.c [diff]
apps/plugins/brickmania.c [diff]
apps/plugins/calculator.c [diff]
apps/plugins/calendar.c [diff]
apps/plugins/chessbox/chessbox_pgn.h [diff]
apps/plugins/chessclock.c [diff]
apps/plugins/chip8.c [diff]
apps/plugins/chopper.c [diff]
apps/plugins/clix.c [diff]
apps/plugins/cube.c [diff]
apps/plugins/doom/i_video.c [diff]
apps/plugins/fft/fft.c [diff]
apps/plugins/flipit.c [diff]
apps/plugins/fractals/fractal.h [diff]
apps/plugins/goban/goban.h [diff]
apps/plugins/imageviewer/imageviewer_button.h [diff]
apps/plugins/invadrox.c [diff]
apps/plugins/jewels.c [diff]
apps/plugins/lib/keymaps.h [diff]
apps/plugins/lib/pluginlib_actions.c [diff]
apps/plugins/midi/midiplay.c [diff]
apps/plugins/minesweeper.c [diff]
apps/plugins/mp3_encoder.c [diff]
...and 54 more files.
Solomon Peachy
9th Oct 15:39 4231c2c83f: codecs: Add support for the 'VTX' ZX Spectrum chiptunes format.

This codec requires floating point.

Original author: Peter Sovietov Ported to Rockbox: Roman Skylarov Further integration and bugfixes: Solomon Peachy
apps/filetypes.c [diff]
apps/plugins/sdl/sdl.make [diff]
firmware/export/config/agptekrocker.h [diff]
firmware/export/config/android.h [diff]
firmware/export/config/gigabeats.h [diff]
firmware/export/config/ibassodx50.h [diff]
firmware/export/config/ibassodx90.h [diff]
firmware/export/config/nokian8xx.h [diff]
firmware/export/config/nokian900.h [diff]
firmware/export/config/sdlapp.h [diff]
firmware/export/config/xduoox20.h [diff]
firmware/export/config/xduoox3ii.h [diff]
lib/rbcodec/SOURCES [diff]
lib/rbcodec/codecs/SOURCES [diff]
lib/rbcodec/codecs/codecs.make [diff]
lib/rbcodec/codecs/libayumi/SOURCES [new]
lib/rbcodec/codecs/libayumi/ayumi.c [new]
lib/rbcodec/codecs/libayumi/ayumi.h [new]
lib/rbcodec/codecs/libayumi/ayumi_render.c [new]
lib/rbcodec/codecs/libayumi/ayumi_render.h [new]
lib/rbcodec/codecs/libayumi/libayumi.make [new]
lib/rbcodec/codecs/libayumi/lzh.c [new]
lib/rbcodec/codecs/libayumi/lzh.h [new]
lib/rbcodec/codecs/vtx.c [new]
lib/rbcodec/metadata/metadata.c [diff]
lib/rbcodec/metadata/metadata.h [diff]
lib/rbcodec/metadata/metadata_parsers.h [diff]
lib/rbcodec/metadata/vtx.c [new]
tools/configure [diff]
Solomon Peachy
9th Oct 13:30 278522f811: plugins: Enable overlay features for all targets
apps/plugins/lib/SOURCES [diff]
Solomon Peachy
9th Oct 13:04 c18839e3f8: Fix red, hopefully.
apps/plugins/SOURCES [diff]
apps/plugins/lib/overlay.h [diff]
Solomon Peachy
9th Oct 12:35 7ad8b2eb3c: Clean up some of the plugin SOURCES
apps/plugins/SOURCES [diff]
Solomon Peachy
9th Oct 12:15 88b2a45b5f: xduoox3ii/x20: Define a sane BUTTON_LEFT/RIGHT alias
firmware/target/hosted/xduoo/button-target.h [diff]
Solomon Peachy
9th Oct 00:30 7a1bf01541: Undo the hacks that allowed targets without LEFT/RIGHT (UP/DN) to build.

Replaced them with warnings until they are fixed *PROPERLY*
apps/action.c [diff]
apps/plugins/pictureflow/pictureflow.c [diff]
apps/plugins/rockboy/rockboy.c [diff]
firmware/drivers/button.c [diff]
firmware/target/arm/rk27xx/ihifi2/button-target.h [diff]
firmware/target/arm/s5l8700/meizu-m3/button-target.h [diff]
firmware/target/mips/ingenic_jz47xx/onda_vx767/button-target.h [diff]
firmware/target/mips/ingenic_jz47xx/xduoo_x3/button-target.h [diff]
Solomon Peachy
8th Oct 23:20 dc81f96fd1: Don't compile audio codecs into native bootloader builds.
firmware/SOURCES [diff]
firmware/target/hosted/agptek/rocker.make [diff]
firmware/target/hosted/xduoo/button-xduoo.c [diff]
firmware/target/hosted/xduoo/xduoo.make [diff]
Solomon Peachy
8th Oct 23:20 ff6e175c20: get rid of ACTION_F3 (leftover from Archos days)
apps/action.h [diff]
apps/gui/wps.c [diff]
apps/keymaps/keymap-mpio-hd200.c [diff]
apps/keymaps/keymap-mpio-hd300.c [diff]
apps/radio/presets.c [diff]
apps/tree.c [diff]
Solomon Peachy
7th Oct 05:01 2e2e899869: more DEBUG build fixes
firmware/drivers/fat.c [diff]
Moshe Piekarski
6th Oct 20:27 cb9280c9e1: Fix DEBUG builds
apps/plugins/announce_status.c [diff]
Moshe Piekarski
5th Oct 22:55 914114fd21: FS13241: Get rid of the hacky hold switch emulation on the X3ii & X20

It doesn't work properly and interferes with the power button in the keymap.

Rework WPS keymap a bit to make single-tap power emulate lock.
apps/keymaps/keymap-xduoox20.c [diff]
apps/keymaps/keymap-xduoox3ii.c [diff]
firmware/export/config/xduoox20.h [diff]
firmware/export/config/xduoox3ii.h [diff]
firmware/target/hosted/xduoo/button-target.h [diff]
firmware/target/hosted/xduoo/button-xduoo.c [diff]
Solomon Peachy
5th Oct 22:54 c6f66cf696: agptekrocker: Rework WPS keymap a bit; replace direct pitchscreen access with browse
apps/keymaps/keymap-agptekrocker.c [diff]
Solomon Peachy
5th Oct 15:53 ef34126913: lua add better memory stats

lua gives you a memory used number that only reflects the current allocations if fact it doesn't even give you a way to get the amount of ram free

rb.mem_stats() seeks to fill this gap by marking the memory allocated for lua with a sentinel value which can later be checked to get a high water mark of the ram used by lua and a pretty good idea of how much ram is available

Also includes an example script usage: used, allocd, free = rb.mem_stats()
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/tlsf_helper.c [diff]
apps/plugins/lua_scripts/memchk.lua [new]
William Wilgus
4th Oct 09:31 74258fca31: rbutil: Replace sysinfo filesystem cluster size with type.

The cluster size isn't too useful. Show the filesystem type instead, since that makes it easier to identify a device not showing up because of its filesystem type.
rbutil/rbutilqt/base/utils.cpp [diff]
rbutil/rbutilqt/base/utils.h [diff]
rbutil/rbutilqt/base/zipinstaller.cpp [diff]
rbutil/rbutilqt/sysinfo.cpp [diff]
Dominik Riebeling
4th Oct 08:00 1aa739e3c3: lua misc tweaks and cleanup

checks button_status in rockev strpbrk_n custom implementation allows setting max search len in source string add some branch prediction where appropriate fix formatting in splash_scroller script
apps/plugins/lua/rockaux.c [diff]
apps/plugins/lua/rocklib_events.c [diff]
apps/plugins/lua/strpbrk.c [diff]
apps/plugins/lua/strtol.c [diff]
apps/plugins/lua/strtoul.c [diff]
apps/plugins/lua_scripts/splashscroller.lua [diff]
William Wilgus
4th Oct 00:12 f3ae48f552: hosted: control buttonlights along with the display backlight.
firmware/target/hosted/backlight-unix.c [diff]
Solomon Peachy
4th Oct 00:12 7642184fd9: alsa: Refactor pcm_dma_apply_settings_nolock()
firmware/target/hosted/pcm-alsa.c [diff]
Solomon Peachy
3rd Oct 22:09 80c3b84e08: lua Add scrollable stack traceback WIP

lua currently splashes a stack traceback on error for deep tracebacks and especially on devices with smaller screens this leaves out a lot of vital information

in the past I have resorted to splitting the traceback string or even saving the return to a file

This patch provides a scrollable buffer with rudimentary text reflow to allow you to read the whole traceback string

Upon traceback if you press nothing the screen will display for 5 seconds If you press OK or CANCEL it will quit immediately PREV/NEXT scrolls the list on button press timeout is disabled

lua now provides rb.splash_scroller(timeout, str)

example script provided too
apps/plugins/lua/rockaux.c [diff]
apps/plugins/lua/rockconf.h [diff]
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklua.c [diff]
apps/plugins/lua_scripts/splashscroller.lua [new]
William Wilgus
3rd Oct 20:56 1916aca7f3: imx233: Enable 96/192K playback for all imx233 targets that have room
firmware/export/config/creativezen.h [diff]
firmware/export/config/creativezenmozaic.h [diff]
firmware/export/config/creativezenv.h [diff]
firmware/export/config/creativezenxfi.h [diff]
firmware/export/config/creativezenxfi2.h [diff]
firmware/export/config/creativezenxfi3.h [diff]
firmware/export/config/creativezenxfistyle.h [diff]
firmware/export/config/sansafuzeplus.h [diff]
firmware/export/config/sonynwze360.h [diff]
firmware/export/config/sonynwze370.h [diff]
firmware/export/fiiolinux_codec.h [new]
Solomon Peachy
3rd Oct 20:56 c1d4bf290c: coldfire: Fix iAudio M5 build
firmware/target/coldfire/pcm-coldfire.c [diff]
Solomon Peachy
3rd Oct 19:57 d5167b1221: coldfire: Allow building when 88KHz audio is disabled
firmware/drivers/audio/uda1380.c [diff]
firmware/target/coldfire/pcm-coldfire.c [diff]
Solomon Peachy
3rd Oct 19:27 2b358ffa7f: Disable 88/96KHz from targets that lack the IRAM to hold the mix buffers
firmware/export/config/gogearhdd1630.h [diff]
firmware/export/config/iaudiom5.h [diff]
firmware/export/config/ipodmini1g.h [diff]
firmware/export/config/ipodmini2g.h [diff]
firmware/export/config/iriverh10.h [diff]
firmware/export/config/iriverh100.h [diff]
firmware/export/config/iriverh120.h [diff]
firmware/export/config/vibe500.h [diff]
Solomon Peachy
3rd Oct 18:19 2e708c48c5: pcm: Dynamically-size the mixer buffer at higher audio bitrates.

Basically, existing sizes apply for <= 48KHz audio. Up to 96K, we double the mix buffer. up to 192K, we double it again.

Will help reduce the interrupt load and overall latency, keeping it roughtly constant as a function of time, regardless of bitrate.

(It is acutally a fixed-size buffer, statically-allocated to handle the worst-case bitrate the player supports. However, at runtime if we are using a lower bitrate we will only use a portion of it in order to keep latancies down)
firmware/pcm_mixer.c [diff]
Solomon Peachy
3rd Oct 14:41 d4a620e85a: alsa: introduce AUDIOHW_MUTE_ON_PAUSE, and have rocker use it.
firmware/drivers/audio/rocker_codec.c [diff]
firmware/export/rocker_codec.h [diff]
firmware/target/hosted/pcm-alsa.c [diff]
Solomon Peachy
3rd Oct 14:41 d18157608d: xduoo codec cleanups
firmware/drivers/audio/xduoolinux_codec.c [diff]
Solomon Peachy
3rd Oct 04:13 1824f8b103: xduoox3ii/x20: Rework the mute control to actually function properly.

(By switching the output away from the audio jacks)
firmware/drivers/audio/xduoolinux_codec.c [diff]
Solomon Peachy
3rd Oct 04:12 90c30bc7ef: alsa: Explicitly mute the output when we stop playing, and unmute after playback starts

Allows us to avoid hearing the codec powering on and off.
firmware/target/hosted/pcm-alsa.c [diff]
Solomon Peachy
3rd Oct 01:04 c7eceea183: alsa: Handle underruns when starting a new stream

Unsure why this is happening, but now we detect and recover errors at startup.

Also clean up the mismash of printf(), DEBUGF(), etc in favor of panicf() for the really serious stuff and logf() for everything else.
firmware/target/hosted/pcm-alsa.c [diff]
Solomon Peachy
2nd Oct 13:50 b0e1b245b4: alsa: Use larger playback buffers for higher bitrates

(existing ones apply up to 48KHz, scale up linearly to 192KHz)
firmware/target/hosted/pcm-alsa.c [diff]
Solomon Peachy
2nd Oct 13:50 90af40e90c: imx233: Hardware codec supports up to 192KHz. Make it so!
firmware/target/arm/imx233/audioin-imx233.c [diff]
firmware/target/arm/imx233/audioout-imx233.c [diff]
Solomon Peachy
2nd Oct 13:48 9892e468d5: hosted: Don't use O_SYNC for the framebuffer handle.
firmware/target/hosted/lcd-linuxfb.c [diff]
Solomon Peachy
2nd Oct 02:45 b5cb99a7bf: For backlights that have a wide control, support skipping steps.

the rocker, x3ii, and x20 now take advantage of this, and fades are far faster now.
firmware/backlight-sw-fading.c [diff]
firmware/export/config/agptekrocker.h [diff]
firmware/export/config/xduoox20.h [diff]
firmware/export/config/xduoox3ii.h [diff]
Solomon Peachy
2nd Oct 02:24 9ee618e889: hosted: Fix overzealous spamming of backlight and lcd enable

This caused random delays in LCD activity, and also caused key inputs to go nuts
firmware/target/hosted/backlight-unix.c [diff]
firmware/target/hosted/lcd-linuxfb.c [diff]
Solomon Peachy
1st Oct 21:30 f4f3255edf: xduoox3: Work out clocks for 176/192KHz support.

Note: PCM mix buffer sizes are _way_ too small for these high bitrates

(We really need to make the mixer stuff use dynamic buffer sizes based on the bitrate. Maybe pre-allocate a max size based on upper bitrate limit, but use only part of it at lower bitrates? So we can have sane latency..)
firmware/export/config/xduoox3.h [diff]
firmware/target/mips/ingenic_jz47xx/codec-jz4760.c [diff]
Solomon Peachy
1st Oct 20:39 db22dae2f9: fix more red.
firmware/drivers/audio/sdl.c [diff]
Solomon Peachy
1st Oct 20:08 a96eb1a7f7: Fix warnings and errors introduced in b030bf5
apps/misc.c [diff]
firmware/drivers/audio/sdl.c [diff]
firmware/target/hosted/xduoo/button-xduoo.c [diff]
Solomon Peachy
1st Oct 19:41 b030bf5885: xduoox3ii/x20: Proper lineout detection and volume mangling.

hotplugging hp and lineout works, without blowing out eardrums.
apps/playback.c [diff]
firmware/drivers/audio/xduoolinux_codec.c [diff]
firmware/export/audiohw.h [diff]
firmware/export/config/xduoox20.h [diff]
firmware/export/config/xduoox3.h [diff]
firmware/export/config/xduoox3ii.h [diff]
firmware/export/xduoolinux_codec.h [diff]
firmware/target/hosted/agptek/debug-agptek.c [diff]
firmware/target/hosted/alsa-controls.c [diff]
firmware/target/hosted/xduoo/button-xduoo.c [diff]
Solomon Peachy
1st Oct 16:55 6d47dc9a88: fix some of the red introduced in e43726d
apps/debug_menu.c [diff]
firmware/drivers/audio/nwzlinux-codec.c [diff]
firmware/export/config/agptekrocker.h [diff]
firmware/export/config/xduoox20.h [diff]
firmware/export/config/xduoox3ii.h [diff]
firmware/target/hosted/sonynwz/debug-nwz.c [diff]
Solomon Peachy
1st Oct 15:56 e43726df2c: hosted pcm-alsa improvements

* xduoo x3ii/x20: Better line out support
* less granular volume settings (too many steps before)
* Better handling of swiching sample rates
* Log actual sample rate in debug menu

Most credit goes to Roman Stolyarov Additional integration [re]work by myself
apps/debug_menu.c [diff]
apps/playback.c [diff]
firmware/drivers/audio/rocker_codec.c [diff]
firmware/drivers/audio/xduoolinux_codec.c [diff]
firmware/export/audiohw.h [diff]
firmware/export/config/agptekrocker.h [diff]
firmware/export/config/xduoox20.h [diff]
firmware/export/config/xduoox3ii.h [diff]
firmware/export/rocker_codec.h [diff]
firmware/export/system.h [diff]
firmware/export/xduoolinux_codec.h [diff]
firmware/target/hosted/agptek/debug-agptek.c [diff]
firmware/target/hosted/pcm-alsa.c [diff]
firmware/target/hosted/pcm-alsa.h [diff]
firmware/target/hosted/xduoo/debug-xduoo.c [diff]
Solomon Peachy
1st Oct 15:18 6459fa0765: scrobbler: Fix logfile location on most hosted targets.
apps/scrobbler.c [diff]
Solomon Peachy
1st Oct 14:01 021b55735b: hosted: fix shutdown crash in framebuffer code.
firmware/target/hosted/lcd-linuxfb.c [diff]
Solomon Peachy
1st Oct 12:49 0a7b23097a: Hosted: Improvements in the LCD code. (Roman Stolyarov)

* Kill LCD when turning off the backlight
* Fix logic errors in lcd_enable() calls
* Use ioctls instead of sysfs to twiddle lcd enable
firmware/target/hosted/backlight-unix.c [diff]
firmware/target/hosted/lcd-linuxfb.c [diff]
Solomon Peachy
1st Oct 02:52 cb9b5d3b50: Add 192 and 176KHz to mikmod and test_sampr plugins
apps/plugins/mikmod/mikmod.c [diff]
apps/plugins/test_sampr.c [diff]
Solomon Peachy
1st Oct 02:03 1cd004ff5b: pcm: Missed a file for the 192/176K playback.
firmware/pcm_sampr.c [diff]
Solomon Peachy
1st Oct 01:37 01650b8bc9: audio: Add support for 192 and 176KHz playback

* SAMPR_CAPS_ALL -> SAMPR_CAPS_ALL_48/96/192
* All targets claiming SAMPR_CAPS_ALL now get appropriate subset
* No need to explicitly define HAVE_PLAY_FREQ
* Rates that are a multiple of 44 or 48KHz can be used for playback

Inspired by a patch by Roman Stolyarov, but substantially rewritten by myself.
apps/enc_config.c [diff]
apps/playback.c [diff]
apps/settings_list.c [diff]
firmware/export/config.h [diff]
firmware/export/config/agptekrocker.h [diff]
firmware/export/config/creativezen.h [diff]
firmware/export/config/creativezenmozaic.h [diff]
firmware/export/config/creativezenv.h [diff]
firmware/export/config/creativezenxfi.h [diff]
firmware/export/config/creativezenxfi2.h [diff]
firmware/export/config/creativezenxfi3.h [diff]
firmware/export/config/creativezenxfistyle.h [diff]
firmware/export/config/ibassodx50.h [diff]
firmware/export/config/ibassodx90.h [diff]
firmware/export/config/samsungypz5.h [diff]
firmware/export/config/sansac200v2.h [diff]
firmware/export/config/sansaclip.h [diff]
firmware/export/config/sansaclipplus.h [diff]
firmware/export/config/sansaclipv2.h [diff]
firmware/export/config/sansaclipzip.h [diff]
firmware/export/config/sansae200v2.h [diff]
firmware/export/config/sansafuze.h [diff]
firmware/export/config/sansafuzeplus.h [diff]
firmware/export/config/sansafuzev2.h [diff]
firmware/export/config/sansam200v4.h [diff]
firmware/export/config/sonynwze360.h [diff]
firmware/export/config/sonynwze370.h [diff]
firmware/export/config/xduoox20.h [diff]
firmware/export/config/xduoox3.h [diff]
firmware/export/config/xduoox3ii.h [diff]
...and 2 more files.
Solomon Peachy
1st Oct 01:24 c2c59457e1: lua: fix ipod builds broken by 127862c
apps/plugins/lua/lua.make [diff]
Solomon Peachy
1st Oct 00:13 127862c947: lua: Include $TARGET when preprocessing the headers for the button helper
apps/plugins/lua/lua.make [diff]
Solomon Peachy
30th Sep 21:07 91197dd59b: xduoox3: Fix an error in a comment
apps/keymaps/keymap-xduoox3.c [diff]
Solomon Peachy
2020-09-30 728299e322: rbutil: Fix unnecessary implicit cast.
rbutil/rbutilqt/base/utils.cpp [diff]
Dominik Riebeling
2020-09-30 c8f79d31b1: rbutil: Add postinstall hint for rocker and xduoo player.
rbutil/rbutilqt/base/bootloaderinstallhelper.cpp [diff]
Dominik Riebeling
2020-09-30 ff408fd717: Leave HOME_DIR out of default recording and playlist paths

The hosted filesystem code will automatically prepend HOME_DIR.
firmware/export/rbpaths.h [diff]
firmware/target/hosted/filesystem-app.c [diff]
Solomon Peachy
2020-09-30 1c0648c603: lua rockevents reduce context switching for action and buttons

check if any buttons are waiting in the queue before triggering the event thread for action & button events

makes button events quicker and also spend less time interrupting lua both wins
apps/plugins/lua/rocklib_events.c [diff]
apps/plugins/lua_scripts/playback.lua [diff]
William Wilgus
2020-09-29 a511917f18: configure: Compact the target selection a bit
tools/configure [diff]
Solomon Peachy
2020-09-29 977a03a1a4: fix x20 and yp-r1 builds.
firmware/powermgmt.c [diff]
Solomon Peachy
2020-09-29 0ebfe3dfcf: xduoo: x3ii and x20 have filter_roll_off support
apps/features.txt [diff]
Solomon Peachy
2020-09-29 0fe7db2460: xduoo: x3ii and x20 also have their CPUs clocked at 1008 MHz.
firmware/export/config/xduoox20.h [diff]
firmware/export/config/xduoox3ii.h [diff]
Solomon Peachy
2020-09-29 ae58b5aafe: xduoox20: UI Simulator support
firmware/export/powermgmt.h [diff]
firmware/powermgmt.c [diff]
firmware/target/hosted/sdl/sim-ui-defines.h [diff]
uisimulator/bitmaps/UI-xduoox20.bmp [new]
uisimulator/buttonmap/SOURCES [diff]
uisimulator/buttonmap/xduoo-x20.c [new]
Solomon Peachy
2020-09-29 43980bb877: rocker: CPU is actually running at 1008MHz, not 532.
firmware/export/config/agptekrocker.h [diff]
Solomon Peachy
2020-09-29 7719010ed7: hosted: Slightly cleaner shutdown; kill the display first.
firmware/target/hosted/system-hosted.c [diff]
Solomon Peachy
2020-09-29 fd2e65e94d: rocker: Increase the long-press shutdown delay a bit.
firmware/target/hosted/agptek/button-target.h [diff]
Solomon Peachy
2020-09-28 466156f0b5: SVG image of the xDuoo X20 and other formats for the manual.
manual/rockbox_interface/images/xduoox20-front.pdf [new]
manual/rockbox_interface/images/xduoox20-front.png [new]
manual/rockbox_interface/images/xduoox20-front.svg [new]
Szymon Dziok
2020-09-27 018e0051bc: lua playback example

cool little lua based audio player creates dynamic playlist of 10 mp3s found on device if no music loaded

I had to limit the depth of search to 3 levels due to the recursive nature of the current dirbrowser functions this could be rectified with a bit more code

fixed a bug in print.lua that kept scrolling text even after screen clear
apps/plugins/lua/include_lua/print.lua [diff]
apps/plugins/lua_scripts/playback.lua [new]
William Wilgus
2020-09-27 201e9bcde8: rbutil: Fix some minor issues found by clazy.
rbutil/rbutilqt/base/bootloaderinstallmi4.cpp [diff]
rbutil/rbutilqt/base/talkfile.cpp [diff]
rbutil/rbutilqt/base/ttsexes.cpp [diff]
rbutil/rbutilqt/base/ttssapi.cpp [diff]
rbutil/rbutilqt/base/uninstall.cpp [diff]
rbutil/rbutilqt/base/utils.cpp [diff]
Dominik Riebeling
2020-09-27 f1f72ff8df: rbutil: Code cleanup.

- Fix naming.
- Remove non-functional functionality to set cache folder.
- Use URL filename part when copying the file if target filename is not set.
rbutil/rbutilqt/base/zipinstaller.cpp [diff]
rbutil/rbutilqt/base/zipinstaller.h [diff]
Dominik Riebeling
2020-09-27 9d8bcbeb2a: sansapatcher: rework exit code handling.

- #define all exit codes and use them for indicating further errors.
- only enable interactive (i.e. wait for keypress before exiting) mode when built with bootloaders.
rbutil/sansapatcher/main.c [diff]
rbutil/sansapatcher/sansapatcher.h [diff]
Dominik Riebeling
2020-09-27 af76fa3e7a: ipodpatcher: Rework exit codes.

- #define all exit codes used so they can be checked more easily.
- Use exit codes to indicate more error states.
rbutil/ipodpatcher/ipodpatcher.h [diff]
rbutil/ipodpatcher/main.c [diff]
Dominik Riebeling
2020-09-27 3806f57ed8: ipodpatcher: Fix some type warnings.
rbutil/ipodpatcher/ipodpatcher.c [diff]
rbutil/ipodpatcher/ipodpatcher.h [diff]
Dominik Riebeling
2020-09-26 0f23cadbca: lua -- add sort by name, size, date to filebrowse include

I had previously added the fuctionality to luadir but I didn't update the examples

also breaks out the file_browser function to be a bit more accessible
apps/plugins/lua_scripts/file_browser.lua [new]
apps/plugins/lua_scripts/filebrowse.lua [diff]
William Wilgus
2020-09-20 1f9e16e4df: InvalidVoice prompt Fix red for devices w/o physical hold buttons

left in there from debugging
apps/talk.c [diff]
William Wilgus
2020-09-20 2ffe87902d: Add Invalid Voice Announcement to the voice system FS #13216

When a voice file is invalid or fails to load the voice system splash a message 'Invalid Voice'

Now we supply a single voice file (currently only english is used) the support for other languages is in but I haven't set it up to look for anything but InvalidVoice_english.talk

Also adds a one time kill voice thread function ie. it doesn't allow re-init after killing the voice thread & queue
apps/lang/InvalidVoice_english.talk [new]
apps/lang/SOURCES [diff]
apps/lang/lang.make [diff]
apps/main.c [diff]
apps/talk.c [diff]
apps/talk.h [diff]
apps/voice_thread.c [diff]
apps/voice_thread.h [diff]
tools/buildzip.pl [diff]
William Wilgus
2020-09-20 c528c01312: plugin: Fix pile of warnings.

(Bad Solomon)
apps/plugin.c [diff]
Solomon Peachy
2020-09-20 5d40d97585: voice: rename mp3_play_* functions to voice_play_*

Remove mp3_is_playing() entirely, in favor of pcm_is_playing() Remove mp3_play_pause() entirely, as it's a dummy/no-op call Remoce some archos-specific comments
apps/plugin.c [diff]
apps/plugin.h [diff]
apps/plugins/imageviewer/imageviewer.c [diff]
apps/talk.c [diff]
apps/voice_thread.c [diff]
apps/voice_thread.h [diff]
docs/PLUGIN_API [diff]
Solomon Peachy
2020-09-18 e404026308: jz4760: Implement USB DMA RX

Can be disabled at runtime by setting hold switch.

Boosts sysbench sequential write performance by 34-58%
firmware/target/mips/ingenic_jz47xx/usb-jz4760.c [diff]
Solomon Peachy
2020-09-18 2df3a5b04c: Headphone / lineout pause/resume #FS13237

Allow Lineout to behave like headphone port in regards to plug/unplug pause/resume
apps/audio_path.c [diff]
apps/misc.c [diff]
apps/root_menu.c [diff]
apps/settings.h [diff]
firmware/drivers/button.c [diff]
firmware/target/mips/ingenic_jz47xx/xduoo_x3/sadc-xduoo_x3.c [diff]
William Wilgus
2020-09-17 4fa945d810: disktest_sysbench script

a script to help make disk benchmarks across USB
tools/disktest_sysbench.sh [new]
William Wilgus
2020-09-17 ec413f7692: jz4760: Heavily rework USB driver to add working DMA support

* DMA Bulk IN (ie our TX) results in sequential transfers 33-68% faster.
* DMA Bulk OUT (ie RX) is mostly stripped out due to complete brokenness.
* Interrupt and control endpoints remain PIO-driven.

Other improvements:

1) Use consistent endpoint references (no magic numbers) 2) Greatly enhanced logging 3) DMA support can be compiled out completely 4) Setting lockswitch will disable all DMA operations at runtime 5) Much more robust error checking and recovery
firmware/export/jz4760b.h [diff]
firmware/target/mips/ingenic_jz47xx/system-target.h [diff]
firmware/target/mips/ingenic_jz47xx/usb-jz4760.c [diff]
utils/hwstub/stub/jz4760b/jz4760b.h [diff]
Solomon Peachy
2020-09-17 a66b908801: Xduoo X3 add headphone and lineout status to IO Ports debug menu
firmware/target/mips/ingenic_jz47xx/debug-jz4760.c [diff]
William Wilgus
2020-09-13 3c2b6809d9: Xduoo X3 no ADC after ROLO

Speachy suggested we don't shut down the adc on ROLO this fixes the random adc drop out on ROLO
firmware/rolo.c [diff]
firmware/target/mips/ingenic_jz47xx/xduoo_x3/sadc-xduoo_x3.c [diff]
William Wilgus
2020-09-13 c62493e98a: Xduoo X3 Add tree scrolling FS #13240, Emulate Multibutton presses

Fixes deficiencies with the button system on the X3

The x3 has an interesting button layout. Multiple key presses are NOT supported unless
[BUTTON_POWER] is one of the combined keys

As you can imagine this causes problems as the power button takes precedence in the button system and initiates a shutdown if the key is held too long instead of BUTTON_POWER use BUTTON_PWRALT in combination with other keys IF using as a prerequsite button then BUTTON_POWER should be used

Multiple buttons are emulated by button_read_device but there are a few caveats to be aware of:

Button Order Matters! different keys have different priorities, higher priority keys 'overide' the lower priority keys VOLUP[7] VOLDN[6] PREV[5] NEXT[4] PLAY[3] OPTION[2] HOME[1]

There will be no true release or repeat events, the user can let off the button pressed initially and it will still continue to appear to be pressed as long as the second key is held

Tree scrolling is PLAY+NEXT or PLAY+PREV
apps/keymaps/keymap-xduoox3.c [diff]
apps/plugins/doom/i_video.c [diff]
apps/plugins/fft/fft.c [diff]
apps/plugins/goban/goban.h [diff]
apps/plugins/imageviewer/imageviewer_button.h [diff]
apps/plugins/pegbox.c [diff]
apps/plugins/rockpaint.c [diff]
apps/plugins/sliding_puzzle.c [diff]
apps/plugins/sokoban.c [diff]
apps/plugins/sudoku/sudoku.h [diff]
apps/plugins/text_viewer/tv_button.h [diff]
apps/plugins/wormlet.c [diff]
firmware/target/mips/ingenic_jz47xx/xduoo_x3/button-target.h [diff]
firmware/target/mips/ingenic_jz47xx/xduoo_x3/sadc-xduoo_x3.c [diff]
William Wilgus
2020-09-12 6b674a6a0a: get rid of a tab in a translated string
apps/lang/english-us.lang [diff]
Solomon Peachy
2020-09-10 14c2f55ab3: FS #13239: Fix typo in the xduoo x3 manual
manual/rockbox_interface/main.tex [diff]
Solomon Peachy
2020-09-08 6f13fe73c5: xduoox3: more screenshots and keymaps for the manual
manual/plugins/images/ss-2048-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-oscilloscope-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-snake-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-snake2-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-solitaire-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-vumeter-128x64x1-xduoox3.png [new]
manual/plugins/main.tex [diff]
manual/plugins/oscilloscope.tex [diff]
manual/plugins/snake.tex [diff]
manual/plugins/snake2.tex [diff]
manual/plugins/solitaire.tex [diff]
manual/plugins/vumeter.tex [diff]
Solomon Peachy
2020-09-08 e18c2f3001: XduooX3 LCD tweaks #2

Group commands for a bit more speed

bitdelay was not being inlined lower bitdelay to 12 cycles

Clean-up magic numbers
firmware/target/mips/ingenic_jz47xx/xduoo_x3/lcd-xduoo_x3.c [diff]
William Wilgus
2020-09-08 49a2953ade: surround: Fix two issues with the haas surround code.

1) Handle ID 0 is legal 2) Make sure handle is initialized before trying to memset its buffer
lib/rbcodec/dsp/surround.c [diff]
Solomon Peachy
2020-09-06 af24ff1fc3: XduooX3 Gpio reconfigure button system #2

Fix issue with first battery sample taking 30 seconds

Clean up code
firmware/target/mips/ingenic_jz47xx/xduoo_x3/sadc-xduoo_x3.c [diff]
William Wilgus
2020-09-06 53142ae9f5: jz4760: Fix and re-enable the hardware udelay() timer
firmware/target/mips/ingenic_jz47xx/system-jz4760.c [diff]
Solomon Peachy
2020-09-06 2dadb8c7d6: jz4760: Use a #define for the timer id, not a raw number
firmware/target/mips/ingenic_jz47xx/timer-jz4760.c [diff]
Solomon Peachy
2020-09-05 d015165bc5: mips: Convert 'nop' to 'ssnop' -- for future-proofing
firmware/target/mips/ingenic_jz47xx/crt0.S [diff]
firmware/target/mips/ingenic_jz47xx/onda_vx747/lcd-onda_vx747.c [diff]
firmware/target/mips/ingenic_jz47xx/onda_vx767/lcd-onda_vx767.c [diff]
firmware/target/mips/ingenic_jz47xx/system-jz4740.c [diff]
firmware/target/mips/ingenic_jz47xx/system-jz4760.c [diff]
firmware/target/mips/mmu-mips.c [diff]
Solomon Peachy
2020-09-05 8188588f14: Update of the Serbian translation
apps/lang/srpski.lang [diff]
Ivan Pesic
2020-09-04 90a4f28c27: jz47xx: Audio path tweaks:

* Increase audio buffer size to better handle IRQ latency (256->2048)
* Ensure DMA engine is idle prior to starting transfers
* Set AIC to repeat last sample in case of underflows
firmware/export/pcm_mixer.h [diff]
firmware/target/mips/ingenic_jz47xx/codec-jz4740.c [diff]
firmware/target/mips/ingenic_jz47xx/codec-jz4760.c [diff]
firmware/target/mips/ingenic_jz47xx/pcm-jz4740.c [diff]
firmware/target/mips/ingenic_jz47xx/pcm-jz4760.c [diff]
Solomon Peachy
2020-09-04 5f5e44f593: skin_parser: Modernize Makefile.

- Avoid use of uname, instead ask the compiler about the binaries it creates.
- Move platform specific commands used into functions.
- Replace use of echo with make functions.
lib/skin_parser/Makefile [diff]
Dominik Riebeling
2020-09-04 db350ac3e2: themeeditor: Get revision info from git.

We're not using svn anymore. This isn't used, but at least try to get the right value.
utils/themeeditor/themeeditor.pro [diff]
Dominik Riebeling
2020-09-03 9a28912f26: ondavx747: Fix bootloader build
bootloader/ondavx747.c [diff]
Solomon Peachy
2020-09-03 48a2b80c77: Xduoo Gpio fix bug
firmware/target/mips/ingenic_jz47xx/xduoo_x3/sadc-xduoo_x3.c [diff]
William Wilgus
2020-09-03 0cb162a76b: mips: Heavily rework DMA & caching code

Based on code originally written by Amaury Pouly (g#1789, g#1791, g#1527) but rebased and heavily updated.
firmware/rolo.c [diff]
firmware/target/mips/ingenic_jz47xx/ata-nand-jz4740.c [diff]
firmware/target/mips/ingenic_jz47xx/ata-nand-jz4760.c [diff]
firmware/target/mips/ingenic_jz47xx/ata-sd-jz4740.c [diff]
firmware/target/mips/ingenic_jz47xx/ata-sd-jz4760.c [diff]
firmware/target/mips/ingenic_jz47xx/dma_acc-jz4740.c [diff]
firmware/target/mips/ingenic_jz47xx/dma_acc-jz4760.c [diff]
firmware/target/mips/ingenic_jz47xx/lcd-jz4740.c [diff]
firmware/target/mips/ingenic_jz47xx/pcm-jz4740.c [diff]
firmware/target/mips/ingenic_jz47xx/pcm-jz4760.c [diff]
firmware/target/mips/ingenic_jz47xx/system-jz4740.c [diff]
firmware/target/mips/ingenic_jz47xx/system-jz4760.c [diff]
firmware/target/mips/ingenic_jz47xx/usb-jz4740.c [diff]
firmware/target/mips/ingenic_jz47xx/usb-jz4760.c [diff]
firmware/target/mips/mmu-mips.c [diff]
firmware/target/mips/mmu-mips.h [diff]
Solomon Peachy
2020-09-03 1ae8213a64: XduooX3 Gpio reconfigure button system

only check button values with adc when buttons are actually pressed

battery level check frequency is now around 30 seconds switched to polling for the battery voltage w/ timeout

Ifdef functions Allow BACK OPTION PLAY to be the first of a two key combo
firmware/target/mips/ingenic_jz47xx/xduoo_x3/sadc-xduoo_x3.c [diff]
William Wilgus
2020-09-03 6810d83686: themeeditor: Update targetdb.
utils/themeeditor/resources/targetdb [diff]
Dominik Riebeling
2020-09-03 93bb14c877: themeeditor: Make NSIS script work with mxe.
utils/themeeditor/themeeditor.nsi [diff]
Dominik Riebeling
2020-09-03 fa330c109d: themeeditor: Make it compile with current Qt5.

- Replace use of obsolete members with their replacements.
- Fix type issue that requires explicitly creating the right object now.
- Update project file to work with Qt5.
utils/themeeditor/graphics/rbscreen.cpp [diff]
utils/themeeditor/gui/configdocument.cpp [diff]
utils/themeeditor/gui/editorwindow.cpp [diff]
utils/themeeditor/gui/preferencesdialog.cpp [diff]
utils/themeeditor/gui/projectexporter.cpp [diff]
utils/themeeditor/gui/skindocument.cpp [diff]
utils/themeeditor/gui/skinhighlighter.cpp [diff]
utils/themeeditor/main.cpp [diff]
utils/themeeditor/models/parsetreemodel.cpp [diff]
utils/themeeditor/themeeditor.pro [diff]
Dominik Riebeling
2020-09-03 ff38666a19: themeeditor: Fix download URL for targetdb.

We're not using svn anymore since long.
utils/themeeditor/gui/targetdownloader.cpp [diff]
Dominik Riebeling
2020-09-03 3ff7dc75a1: themeeditor: Fix menu Quit entry not working.
utils/themeeditor/gui/editorwindow.ui [diff]
Dominik Riebeling
2020-09-02 546212a977: jz4760: Dial down PIXCLK as low as possible

We don't use it on the X3. Should we ever get another jz4760 target we can revisit this.
firmware/target/mips/ingenic_jz47xx/system-jz4760.c [diff]
Solomon Peachy
2020-09-02 f913829d06: xduoox3: Disable the LCD and MSC0 clocks as we don't use them
firmware/target/mips/ingenic_jz47xx/ata-sd-jz4760.c [diff]
firmware/target/mips/ingenic_jz47xx/xduoo_x3/lcd-xduoo_x3.c [diff]
Solomon Peachy
2020-09-02 1a8939cc3d: XduooX3 Slow down greylib framerate

halves cpu usage
firmware/target/mips/ingenic_jz47xx/xduoo_x3/lcd-xduoo_x3.c [diff]
William Wilgus
2020-09-02 35371df671: XduooX3 Debug Menu -- HW_info

add scrolling for clocks and such

moved to a switch based structure.. this ends up a lot cleaner
firmware/target/mips/ingenic_jz47xx/debug-jz4760.c [diff]
William Wilgus
2020-09-02 bb6fc21244: mips: use .set push/pop in asm code
firmware/asm/mips/thread-mips32.c [diff]
firmware/target/mips/ingenic_jz47xx/system-target.h [diff]
Solomon Peachy
2020-09-01 963e979e6c: Manual: add Multiboot for Sansa E200
manual/advanced_topics/main.tex [diff]
Johannes Rauh
2020-08-31 a7ebd92ec8: jz4760: use SYSFONT in the hw info debug screen, and restore old font
firmware/target/mips/ingenic_jz47xx/debug-jz4760.c [diff]
Solomon Peachy
2020-08-31 56b49b3074: fonts: Use '08-Rockfont' as FONT_SYSFIXED on targets with 128x64 screens

..It's already the default UI font on those targets
firmware/firmware.make [diff]
tools/configure [diff]
Solomon Peachy
2020-08-31 790a5bb0ca: Xduoo_x3 Boot Fix red from debug menu changes
firmware/target/mips/ingenic_jz47xx/debug-jz4760.c [diff]
William Wilgus
2020-08-31 63e6aec260: xduooX3 debug menu add GPIO IO Ports
apps/debug_menu.c [diff]
firmware/target/mips/ingenic_jz47xx/debug-jz4760.c [diff]
William Wilgus
2020-08-31 748133cf9d: xduoox3: Fix bootloader build
firmware/target/mips/ingenic_jz47xx/debug-jz4760.c [diff]
Solomon Peachy
2020-08-31 8dadce5c4c: jz4760: Explicitly disable UARTs at startup

(Bootloader uses UART1, and leaves it running when it hands it off to us)
firmware/target/mips/ingenic_jz47xx/debug-jz4760.c [diff]
firmware/target/mips/ingenic_jz47xx/system-jz4760.c [diff]
firmware/target/mips/ingenic_jz47xx/system-target.h [diff]
Solomon Peachy
2020-08-30 06e9abc428: XduooX3 Tweak LCD drive strength and slew
firmware/export/jz4760b.h [diff]
firmware/target/mips/ingenic_jz47xx/xduoo_x3/lcd-xduoo_x3.c [diff]
William Wilgus
2020-08-30 e06ab68166: xduoox3: Use correct "ms_clk" divider for SADC and be smarter with polling
firmware/target/mips/ingenic_jz47xx/xduoo_x3/sadc-xduoo_x3.c [diff]
Solomon Peachy
2020-08-30 cc5b0439a8: jz4760: Prioritize Audio DMA and TCU0 (systick) above all others

(And loop in the IRQ handler to make sure we catch everything!)
firmware/target/mips/ingenic_jz47xx/system-jz4760.c [diff]
firmware/target/mips/ingenic_jz47xx/system-target.h [diff]
Solomon Peachy
2020-08-30 b01e9295e4: jz4760: Revert back to the delay loop udelay()

... the timer-based version used the same timer as our os tick!
firmware/target/mips/ingenic_jz47xx/system-jz4760.c [diff]
Solomon Peachy
2020-08-29 733821b592: jz4760: Rework IRQ priorities, make audio the highest.

(it was effectively the _lowest_ prior to this. wtf?)
firmware/target/mips/ingenic_jz47xx/system-jz4760.c [diff]
Solomon Peachy
2020-08-29 3dc4f817de: jz4760: Disable dynamic clocking entirely.

Back off to 480MHz [max] clock, bus/mem clock of 120MHz.

576 is unstable on at least one unit, and 528 still glitches.
firmware/export/config/xduoox3.h [diff]
firmware/target/mips/ingenic_jz47xx/system-jz4760.c [diff]
Solomon Peachy
2020-08-29 3867f0b959: XduooX3 Sources WS changes
firmware/target/mips/ingenic_jz47xx/ata-nand-jz4740.c [diff]
firmware/target/mips/ingenic_jz47xx/ata-nand-jz4760.c [diff]
firmware/target/mips/ingenic_jz47xx/dma_acc-jz4740.c [diff]
firmware/target/mips/ingenic_jz47xx/lcd-jz4740.c [diff]
firmware/target/mips/mmu-mips.c [diff]
William Wilgus
2020-08-29 6296b220e5: cs4398: Change default volume to -25 dB (from 0 dB)
firmware/export/cs4398.h [diff]
Solomon Peachy
2020-08-29 31a1a29004: Xduoo X3 Tweak LCD settings

Adds contrast setting which actually sets the drive voltage
firmware/export/config/xduoox3.h [diff]
firmware/target/mips/ingenic_jz47xx/xduoo_x3/lcd-xduoo_x3.c [diff]
William Wilgus
2020-08-29 5e335f5c33: jz4760: do the MSC (ie SD) clocking setup when we change PLL0
firmware/target/mips/ingenic_jz47xx/ata-sd-jz4760.c [diff]
firmware/target/mips/ingenic_jz47xx/system-jz4760.c [diff]
Solomon Peachy
2020-08-29 fc7eb3b2a3: xduoox3: When not using dynamic clocks, use max cpu
firmware/export/config/xduoox3.h [diff]
Solomon Peachy
2020-08-28 a2b77446c2: xduoox3: enable HAVE_GUI_BOOST
firmware/export/config/xduoox3.h [diff]
Solomon Peachy
2020-08-28 4a6d8e91bb: jz4740: Timer not re-enabled properly

(same fix as g#2703 for the jz4760)
firmware/target/mips/ingenic_jz47xx/timer-jz4740.c [diff]
Solomon Peachy
2020-08-28 77019c2c3c: Xduoo_X3 Fix timer_set_period fail to reenable

when timer_set_period is called timer is stopped but never reenabled
firmware/target/mips/ingenic_jz47xx/timer-jz4760.c [diff]
William Wilgus
2020-08-28 1aee168398: jz4760: Pull non-PLL init out of pll0_init() code.

So it only gets called once, at system startup.
firmware/target/mips/ingenic_jz47xx/system-jz4760.c [diff]
Solomon Peachy
2020-08-27 5fb4c74bfb: Xduoo X3 - Grey scale lib update

greylib on the xduoo x3 now matches the rest of the 1bit targets
firmware/export/jz4760b.h [diff]
firmware/target/mips/ingenic_jz47xx/xduoo_x3/lcd-xduoo_x3.c [diff]
William Wilgus
2020-08-27 8990c90b87: xduoox3: More screenshots and keymaps for the manual
manual/plugins/cube.tex [diff]
manual/plugins/fractals.tex [diff]
manual/plugins/images/ss-cube-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-mandlebrot-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-star-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-sudoku-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-wormlet-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-xobox-128x64x1-xduoox3.png [new]
manual/plugins/star.tex [diff]
manual/plugins/sudoku.tex [diff]
manual/plugins/wormlet.tex [diff]
manual/plugins/xobox.tex [diff]
Solomon Peachy
2020-08-26 a52eb1d8cc: xduoox3: Include curves for both battery types

There is no way to detect this at runtime so it is a user setting
apps/lang/arabic.lang [diff]
apps/lang/basque.lang [diff]
apps/lang/bulgarian.lang [diff]
apps/lang/catala.lang [diff]
apps/lang/chinese-simp.lang [diff]
apps/lang/chinese-trad.lang [diff]
apps/lang/czech.lang [diff]
apps/lang/dansk.lang [diff]
apps/lang/deutsch.lang [diff]
apps/lang/eesti.lang [diff]
apps/lang/english-us.lang [diff]
apps/lang/english.lang [diff]
apps/lang/espanol.lang [diff]
apps/lang/esperanto.lang [diff]
apps/lang/finnish.lang [diff]
apps/lang/francais.lang [diff]
apps/lang/galego.lang [diff]
apps/lang/greek.lang [diff]
apps/lang/hebrew.lang [diff]
apps/lang/hrvatski.lang [diff]
apps/lang/islenska.lang [diff]
apps/lang/italiano.lang [diff]
apps/lang/japanese.lang [diff]
apps/lang/korean.lang [diff]
apps/lang/latviesu.lang [diff]
apps/lang/lietuviu.lang [diff]
apps/lang/magyar.lang [diff]
apps/lang/nederlands.lang [diff]
apps/lang/norsk-nynorsk.lang [diff]
apps/lang/norsk.lang [diff]
...and 19 more files.
Solomon Peachy
2020-08-26 f4bf27c26e: jz4760: fix the new udelay() to use _micro_seconds, not milliseconds
firmware/target/mips/ingenic_jz47xx/system-jz4760.c [diff]
Solomon Peachy
2020-08-26 f791df1375: xduoox3: Update battery discharge curve and runtime estimates

(Brand new unit lasted one minute shy of 12 hours!)
firmware/export/config/xduoox3.h [diff]
firmware/target/mips/ingenic_jz47xx/xduoo_x3/sadc-xduoo_x3.c [diff]
Solomon Peachy
2020-08-26 099bde885d: mikmod: Fix emulated fseek()

Was causing XM loader to fail
apps/plugins/mikmod/mmio.c [diff]
Solomon Peachy
2020-08-25 7972f8e448: xduoox3: Fix minesweeper plugin keymap.

(Broke in a654cecf8)
apps/plugins/minesweeper.c [diff]
manual/plugins/minesweeper.tex [diff]
Solomon Peachy
2020-08-25 9e64e31d56: xduoox3: More screenshots and button maps for plugins
apps/plugins/minesweeper.c [diff]
manual/plugins/images/ss-bounce-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-demystify-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-fire-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-jewels-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-mazezam-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-minesweeper-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-mosaic-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-pegbox-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-plasma-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-pong-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-robotfindskitten-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-snow-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-starfield-128x64x1-xduoox3.png [new]
manual/plugins/jewels.tex [diff]
manual/plugins/minesweeper.tex [diff]
manual/plugins/pegbox.tex [diff]
manual/plugins/pong.tex [diff]
Solomon Peachy
2020-08-25 c0bfd7ceee: manual: Remove charcell screenshots
manual/configure_rockbox/images/ss-general-settings-charx11x1.png [deleted]
manual/configure_rockbox/images/ss-sound-settings-charx11x1.png [deleted]
manual/main_menu/images/ss-list-bookmarks-charx11x1.png [deleted]
manual/main_menu/images/ss-main-menu-charx11x1.png [deleted]
manual/plugins/images/ss-chess_clock-charx11x1.png [deleted]
manual/plugins/images/ss-cube-charx11x1.png [deleted]
manual/plugins/images/ss-flipit-charx11x1.png [deleted]
manual/plugins/images/ss-jackpot-charx11x1.png [deleted]
manual/plugins/images/ss-mosaic-charx11x1.png [deleted]
manual/plugins/images/ss-nim-charx11x1.png [deleted]
manual/plugins/images/ss-rockblox-charx11x1.png [deleted]
manual/plugins/images/ss-snow-charx11x1.png [deleted]
manual/plugins/images/ss-stats-charx11x1.png [deleted]
manual/plugins/images/ss-stopwatch-charx11x1.png [deleted]
manual/plugins/images/ss-text_viewer-bookmark-charx11x1.png [deleted]
manual/plugins/images/ss-text_viewer-main-charx11x1.png [deleted]
manual/plugins/images/ss-text_viewer-sel_bk_menu-charx11x1.png [deleted]
manual/rockbox_interface/images/ss-context-menu-charx11x1.png [deleted]
manual/rockbox_interface/images/ss-file-browser-charx11x1.png [deleted]
manual/rockbox_interface/images/ss-id3-viewer-charx11x1.png [deleted]
manual/rockbox_interface/images/ss-playlist-menu-charx11x1.png [deleted]
manual/rockbox_interface/images/ss-virtual-keyboard-charx11x1.png [deleted]
Solomon Peachy
2020-08-25 6920c089af: jz4740: SD clock sequencing changes.

* Don't stop clock before switching speeds
* Don't stop clock prior to transactions
* Stop clock at the end of transactions

Will result in slightly better performance and some power saving when we're not actively using the SD peripheral.
firmware/target/mips/ingenic_jz47xx/ata-sd-jz4740.c [diff]
Solomon Peachy
2020-08-25 0aa2197d93: jz4760: SD driver enhancements:

* Check to see if clock is [not] running prior to [en|dis]abling it
* Stop clock _prior_ to resetting controller
* Stop clock after transaction is completed, not before initiating it
* Use controller's low power mode (disables clocks when idle)
* Fix, and enable, interrupt-driven DMA transfers
* Fixes for full interrupt-driven operation (WIP, still broken)
firmware/target/mips/ingenic_jz47xx/ata-sd-jz4760.c [diff]
Solomon Peachy
2020-08-25 1b31101fdd: jz4740: Fix potential deadlock in SD init code.

There's a code path that calls sd_init_device() while we hold sd_mtx, but sd_init_device() tries to obtain the mutex while doing its work.
firmware/target/mips/ingenic_jz47xx/ata-sd-jz4740.c [diff]
Solomon Peachy
2020-08-25 63ef81de31: jz4760: Give each SD interface its own DMA channel, semaphore, and mutex

* Allows both SD interfaces to have requests in flight simultaneously
* Fixed a deadlock in the hotswap code
* Ensure TX DMA is idle before initiating a request (bug due to a typo)
firmware/target/mips/ingenic_jz47xx/ata-sd-jz4760.c [diff]
firmware/target/mips/ingenic_jz47xx/system-jz4760.c [diff]
firmware/target/mips/ingenic_jz47xx/system-target.h [diff]
Solomon Peachy
2020-08-25 c06766bbeb: voice: Increase voice stack size a bit for MIPS by 256 bytes.

MIPS is stack hungry due to the large number of GPRs we have to save. With this extra headroom we now _idle_ at 75% stack use of a 2K stack!
apps/voice_thread.c [diff]
Solomon Peachy
2020-08-25 5dd4c00697: filetree.c fix null entry check fs#13222

behavior found on xduoo x3

I had already fixed this once but I was checking entry instead of dptr :(
apps/filetree.c [diff]
William Wilgus
2020-08-25 6099767a18: SDL: If our eventloop fails, log the reason!
firmware/target/hosted/sdl/button-sdl.c [diff]
Solomon Peachy
2020-08-24 22eb2300b1: manual: Document all mikmod configuration options
manual/plugins/mikmod.tex [diff]
manual/rockbox_interface/main.tex [diff]
Solomon Peachy
2020-08-24 062c597f79: xduoox3: Manual updates and screenshots for a pile of plugins
manual/platform/keymap-xduoox3.tex [diff]
manual/plugins/blackjack.tex [diff]
manual/plugins/brickmania.tex [diff]
manual/plugins/chessbox.tex [diff]
manual/plugins/chopper.tex [diff]
manual/plugins/flipit.tex [diff]
manual/plugins/goban.tex [diff]
manual/plugins/images/ss-blackjack-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-brickmania-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-bubbles-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-chessbox-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-chopper-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-flipit-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-goban-128x64x1-xduoox3.png [new]
manual/plugins/images/ss-jackpot-128x64x1-xduoox3.png [new]
manual/rockbox_interface/main.tex [diff]
Solomon Peachy
2020-08-24 e06d7e8516: manual: Add section for mikmod and document its formats
manual/plugins/main.tex [diff]
manual/plugins/mikmod.tex [new]
Solomon Peachy
2020-08-24 910e600ba2: Mark xDuoo X3 as "stable" in the build system as it now has a manual
tools/builds.pm [diff]
Solomon Peachy
2020-08-24 c7cbd494eb: FS #13154: Don't discard return code in storage_init()
firmware/storage.c [diff]
Solomon Peachy
2020-08-24 b2af685380: manual: Get rid of more archos-specific manual leftovers
manual/configure_rockbox/images/ss-general-settings-112x64x1-ondio.png [deleted]
manual/configure_rockbox/images/ss-sound-settings-112x64x1-ondio.png [deleted]
manual/main_menu/images/ss-fm-radio-screen-112x64x1-archosondiofm.png [deleted]
manual/main_menu/images/ss-main-menu-112x64x1-archosondiofm.png [deleted]
manual/main_menu/images/ss-main-menu-112x64x1-archosondiosp.png [deleted]
manual/main_menu/images/ss-recording-settings-112x64x1-archosondiofm.png [deleted]
manual/main_menu/images/ss-while-recording-screen-112x64x1-archosondiofm.png [deleted]
manual/platform/keymap-archosondio.tex [deleted]
manual/platform/keymap-archosplayer.tex [deleted]
manual/platform/keymap-archosrecorder.tex [deleted]
manual/plugins/images/ss-bounce-112x64x1-ondio.png [deleted]
manual/rockbox_interface/images/archosfmrecorder-front.pdf [deleted]
manual/rockbox_interface/images/archosfmrecorder-front.png [deleted]
manual/rockbox_interface/images/archosfmrecorder-front.svg [deleted]
manual/rockbox_interface/images/archosplayer-front.pdf [deleted]
manual/rockbox_interface/images/archosplayer-front.png [deleted]
manual/rockbox_interface/images/archosplayer-front.svg [deleted]
manual/rockbox_interface/images/archosrecorder-front.pdf [deleted]
manual/rockbox_interface/images/archosrecorder-front.png [deleted]
manual/rockbox_interface/images/archosrecorder-front.svg [deleted]
Solomon Peachy
2020-08-24 6e4ab9a5c1: xduoox3: Fill in the core UI screenshots

TODO:

* Plugin screenshots
* Plugin keymaps
manual/configure_rockbox/images/ss-equalizer-128x64x1-xduoox3.png [new]
manual/configure_rockbox/images/ss-general-settings-128x64x1-xduoox3.png [new]
manual/configure_rockbox/images/ss-sound-settings-128x64x1-xduoox3.png [new]
manual/main_menu/images/ss-list-bookmarks-128x64x1-xduoox3.png [new]
manual/main_menu/images/ss-main-menu-128x64x1-xduoox3.png [new]
manual/rockbox_interface/images/ss-context-menu-128x64x1-xduoox3.png [new]
manual/rockbox_interface/images/ss-file-browser-128x64x1-xduoox3.png [new]
manual/rockbox_interface/images/ss-id3-viewer-128x64x1-xduoox3.png [new]
manual/rockbox_interface/images/ss-playlist-menu-128x64x1-xduoox3.png [new]
manual/rockbox_interface/images/ss-virtual-keyboard-128x64x1-xduoox3.png [new]
manual/rockbox_interface/wps.tex [diff]
Solomon Peachy
2020-08-24 ef04cd8b1e: archosondio: get rid of screenshots and other manual leftovers
manual/rockbox_interface/images/archosondiofm-front.pdf [deleted]
manual/rockbox_interface/images/archosondiofm-front.png [deleted]
manual/rockbox_interface/images/archosondiofm-front.svg [deleted]
manual/rockbox_interface/images/archosondiosp-front.pdf [deleted]
manual/rockbox_interface/images/archosondiosp-front.png [deleted]
manual/rockbox_interface/images/archosondiosp-front.svg [deleted]
manual/rockbox_interface/images/ss-context-menu-112x64x1-ondio.png [deleted]
manual/rockbox_interface/images/ss-file-browser-112x64x1-ondio.png [deleted]
manual/rockbox_interface/images/ss-id3-viewer-112x64x1-ondio.png [deleted]
manual/rockbox_interface/images/ss-playlist-menu-112x64x1-ondio.png [deleted]
manual/rockbox_interface/images/ss-virtual-keyboard-112x64x1-ondio.png [deleted]
Solomon Peachy
2020-08-24 675b22e76b: xduoox3: Initial manual

TODO:

* Screenshots
* Plugin keymaps
apps/keymaps/keymap-xduoox3.c [diff]
manual/configure_rockbox/display_options.tex [diff]
manual/configure_rockbox/sound_settings.tex [diff]
manual/configure_rockbox/system_options.tex [diff]
manual/getting_started/installation.tex [diff]
manual/getting_started/xduoox3_install.tex [new]
manual/platform/keymap-xduoox3.tex [new]
manual/platform/xduoox3.tex [new]
manual/rockbox_interface/images/xduoox3-front.png [new]
manual/rockbox_interface/main.tex [diff]
Solomon Peachy
2020-08-24 c3a8268432: xduoox3: Fix a missing keymap entry in the virtual keyboard
apps/keymaps/keymap-xduoox3.c [diff]
Solomon Peachy
2020-08-23 0b5f0b9284: rbutil: Fix Xduoo bootloader installation.

- Don't try to unzip the bootloader file if we're actually looking for a zip file.
- Fix wrong bootloader file name for X3.
- There's no QThread::terminated() signal, don't connect it.
rbutil/rbutilqt/base/bootloaderinstallbase.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstallbspatch.cpp [diff]
rbutil/rbutilqt/rbutil.ini [diff]
Dominik Riebeling
2020-08-23 53dedd47b9: FS #13235: Update Polish translation (Adam Rak)
apps/lang/polski.lang [diff]
Solomon Peachy
2020-08-21 c7c4672668: builds: Don't exclude 'retired' targets from the build list
tools/builds.pm [diff]
Solomon Peachy
2020-08-21 e0021744cf: rbutil: Fix wrong fall-through.

Fortunately it didn't break anything.
rbutil/rbutilqt/encttscfggui.cpp [diff]
Dominik Riebeling
2020-08-21 2aecb3b9ea: rbutil: Use a non-zero default value for status.

When resolving the status values downloaded from the server use a negative value as default. Since 0 is the default in QSettings but now considered as "retired" a missing status value would make that target appear as retired instead of unknown status.
rbutil/rbutilqt/base/serverinfo.cpp [diff]
Dominik Riebeling
2020-08-21 f850bbbbc4: Revert root_redirect :(

This reverts commit 31fc46ded69be7438cca2ba2c2b93c1f200165a6.
apps/debug_menu.c [diff]
firmware/SOURCES [diff]
firmware/common/dir.c [diff]
firmware/common/dircache.c [diff]
firmware/common/disk.c [diff]
firmware/common/file.c [diff]
firmware/common/file_internal.c [diff]
firmware/common/fileobj_mgr.c [diff]
firmware/common/pathfuncs.c [diff]
firmware/common/rb_namespace.c [deleted]
firmware/export/mv.h [diff]
firmware/export/pathfuncs.h [diff]
firmware/export/rbpaths.h [diff]
firmware/include/dircache_redirect.h [diff]
firmware/include/file_internal.h [diff]
firmware/include/fileobj_mgr.h [diff]
firmware/include/fs_defines.h [diff]
firmware/include/rb_namespace.h [deleted]
uisimulator/common/filesystem-sim.c [diff]
William Wilgus
2020-08-20 bd744059cf: Multiboot Firmware Root Redirect

Firmware now includes rudimentary redirect functionality but this only supports /.rockbox in the root of the device

This patch allows loading external drive and directory into root namespace

Root Redirects can now be put into different folders For instance placing '/_test' into SD1/rockbox_main.<playername> will redirect to /<1>/_test/.rockbox

Debug menu>Bootdata now has root directory listed in addition to RAW Bootdata

Redirect root work from Michael Sevakis g#1556

Redirect will be updated if code refactor is ever done

Requires Multiboot bootloader (already in main)
apps/debug_menu.c [diff]
firmware/common/disk.c [diff]
firmware/include/dircache_redirect.h [diff]
William Wilgus
2020-08-20 5ef28cccf9: Allow mounting of any directory as the root directory.

Provide definitions for the macros:
* RB_ROOT_VOL_HIDDEN(v) to exclude certain items from the root.
* RB_ROOT_CONTENTS to return a string with the name of the directory to mount in the root.

Defaults are in export/rbpaths.h

It's a bit much for those that don't need the full functionality. Some conditional define can cut it back a lot to cut out things only needed if alternate root mounts are required. I'm just not bothering yet. The basic concept would be applied to all targets to keep file code from forking too much.
firmware/SOURCES [diff]
firmware/common/dir.c [diff]
firmware/common/dircache.c [diff]
firmware/common/disk.c [diff]
firmware/common/file.c [diff]
firmware/common/file_internal.c [diff]
firmware/common/fileobj_mgr.c [diff]
firmware/common/pathfuncs.c [diff]
firmware/common/rb_namespace.c [new]
firmware/export/mv.h [diff]
firmware/export/pathfuncs.h [diff]
firmware/export/rbpaths.h [diff]
firmware/include/dircache_redirect.h [diff]
firmware/include/file_internal.h [diff]
firmware/include/fileobj_mgr.h [diff]
firmware/include/fs_defines.h [diff]
firmware/include/rb_namespace.h [new]
uisimulator/common/filesystem-sim.c [diff]
William Wilgus
2020-08-20 31fc46ded6: Revert g#1612
apps/debug_menu.c [diff]
firmware/common/disk.c [diff]
William Wilgus
2020-08-20 71846b09ab: Update English (US) translation
apps/lang/english-us.lang [diff]
Solomon Peachy
2020-08-20 0459bfe6cd: Updated Italian translation (Alessio Lenzi)
apps/lang/italiano.lang [diff]
Solomon Peachy
2020-08-19 da190727e7: Enable boot from SD for Sansa e200
bootloader/main-pp.c [diff]
firmware/export/config/sansae200.h [diff]
firmware/export/mi4-loader.h [diff]
firmware/rolo.c [diff]
firmware/target/arm/pp/crt0-pp.S [diff]
firmware/target/arm/pp/mi4-loader.c [diff]
Johannes Rauh
2020-08-19 8ee035b6c8: Open_plugin add ability to import opx shortcuts, bug fix

shortcuts can be exported as .opx; now they can import as well

if parameter is a valid file.. plugins with parameters are now hashed on the parameter path

fix bug with empty parameters not overwriting last valid parameter
apps/open_plugin.c [diff]
apps/plugins/open_plugins.c [diff]
William Wilgus
2020-08-18 889bcc0f76: WIP open_plugins.rock viewer

OP allows you to use Open With.. to call plugins with parameters called directly it acts as a shortcut list for plugins

open_plugins.rock interfaces with the open_plugin core

When opened directly it acts as a viewer for the plugin.dat file this allows you to edit the paths and parameters for core shortcuts as well as your added plugins

If a plugin is supplied to the viewer it is added to the dat file

If instead the plugin has previously been added then it is run with the parameters you previously supplied

----------------------------------------------------------------------------- Added export to .opx files this allows shortcuts to plugins with parameters to be called from the file browser
apps/lang/english.lang [diff]
apps/plugins/CATEGORIES [diff]
apps/plugins/SOURCES [diff]
apps/plugins/open_plugins.c [new]
apps/plugins/plugins.make [diff]
apps/plugins/viewers.config [diff]
tools/buildzip.pl [diff]
William Wilgus
2020-08-18 96e1bb6556: Open Plugin cleanup

cleanup a few unneded functions
apps/open_plugin.c [diff]
apps/open_plugin.h [diff]
William Wilgus
2020-08-17 f029078f0d: Slovak language update (From Peter Lecký)
apps/lang/slovak.lang [diff]
Solomon Peachy
2020-08-17 3550283442: Add open_plugin to core

open_plugin allows arbitrary plugins to be called in hotkey and start screen

replaces PictureFlow Integration shortcuts menu plays plugins now too

rather than store paths and parameters in the settings that reside in memory instead entries in a file are searched by hash. after all, the plugin has to be loaded from disk anyways

---------------------------------------------------------------------------- shortcut_viewer.rock-- can now call plugins rather than taking you to them in the browser
----------------------------------------------------------------------------- Added a new option to menus: F_CB_ON_SELECT_ONLY instead of option callback every time a item is accessed F_CB_ON_SELECT_ONLY fires callback only when item is selected
----------------------------------------------------------------------------- Added manual entries
-----------------------------------------------------------------------------
apps/SOURCES [diff]
apps/filetree.c [diff]
apps/filetypes.c [diff]
apps/filetypes.h [diff]
apps/gui/option_select.c [diff]
apps/gui/wps.c [diff]
apps/lang/english.lang [diff]
apps/menus/settings_menu.c [diff]
apps/onplay.c [diff]
apps/onplay.h [diff]
apps/open_plugin.c [new]
apps/open_plugin.h [new]
apps/plugin.c [diff]
apps/plugin.h [diff]
apps/plugins/pictureflow/pictureflow.c [diff]
apps/plugins/shortcuts/shortcuts_view.c [diff]
apps/root_menu.c [diff]
apps/root_menu.h [diff]
apps/settings_list.c [diff]
apps/settings_list.h [diff]
apps/shortcuts.c [diff]
apps/tree.c [diff]
manual/advanced_topics/main.tex [diff]
manual/configure_rockbox/main.tex [diff]
manual/configure_rockbox/wps_context_plugin.tex [new]
William Wilgus
2020-08-16 d553bb1149: root_menu move tag cache init check to pictureflow plugin

let pictureflow decide if the tag cache is ready instead of core
apps/plugin.c [diff]
apps/plugin.h [diff]
apps/plugins/pictureflow/pictureflow.c [diff]
apps/root_menu.c [diff]
William Wilgus
2020-08-16 94eb1df58b: rbutil: Logger Qt6 fixes.

Fix various issues with building CuteLogger with Qt6.
rbutil/rbutilqt/logger/include/Logger.h [diff]
rbutil/rbutilqt/logger/src/AbstractStringAppender.cpp [diff]
rbutil/rbutilqt/logger/src/Logger.cpp [diff]
Dominik Riebeling
2020-08-16 cd352d9052: rbutil: QString::split() changed with Qt 5.14.

Avoid a deprecated warning, and make it compile with Qt6, which removes the old version.
rbutil/rbutilqt/base/ttsfestival.cpp [diff]
rbutil/rbutilqt/base/ttssapi.cpp [diff]
rbutil/rbutilqt/base/utils.cpp [diff]
rbutil/rbutilqt/installtalkwindow.cpp [diff]
Dominik Riebeling
2020-08-16 d5820ff779: rbutil: Qt6: allow building without Multimedia module.

Qt6 beta doesn't include the Multimedia module. Allow building without, and disable on Qt6 for now.
rbutil/rbutilqt/configure.cpp [diff]
rbutil/rbutilqt/rbutilqt.pro [diff]
Dominik Riebeling
2020-08-16 7c9a7ed406: rbutil: Initial Qt6 support.

Qt6 replaces QTextStream::setCodec() with QTextStream::setEncoding().
rbutil/rbutilqt/base/ttssapi.cpp [diff]
rbutil/rbutilqt/base/voicefile.cpp [diff]
rbutil/rbutilqt/gui/changelog.cpp [diff]
rbutil/rbutilqt/rbutilqt.cpp [diff]
Dominik Riebeling
2020-08-16 9cd37337de: rbutil: Fix various warnings.

Replace use of deprecated APIs with their replacements, and fix some other minor warnings.
rbutil/rbutilqt/base/encoderexe.cpp [diff]
rbutil/rbutilqt/base/system.cpp [diff]
rbutil/rbutilqt/base/system.h [diff]
rbutil/rbutilqt/base/utils.cpp [diff]
rbutil/rbutilqt/configure.cpp [diff]
rbutil/rbutilqt/rbutilqt.cpp [diff]
rbutil/rbutilqt/sysinfo.cpp [diff]
Dominik Riebeling
2020-08-16 b1332d974a: rbutil: Fix compile warning in unit test.
rbutil/rbutilqt/test/test-compareversion.cpp [diff]
Dominik Riebeling
2020-08-15 84bfd68fb5: Battery_bench & announce_status stack fix

had stack growing the wrong way
apps/plugins/announce_status.c [diff]
apps/plugins/battery_bench.c [diff]
William Wilgus
2020-08-13 a9ac2d0ba3: jz4760: Use HW timer for more a more accurate udelay()

(More specifically, use the SoC's "OS Timer", slaved to the main XTAL so it doesn't matter how the main CPU is clocked)
firmware/target/mips/ingenic_jz47xx/system-jz4760.c [diff]
Solomon Peachy
2020-08-13 7ed126386a: FS #1232: Update Italian translation (Alessio Lenzi)
apps/lang/italiano.lang [diff]
Solomon Peachy
2020-08-13 fa7ba2df3a: Update english-us translation
apps/lang/english-us.lang [diff]
Solomon Peachy
2020-08-13 4d9f190cab: xduoox3: Fix build when disabling adjustable cpu freq
firmware/export/config/xduoox3.h [diff]
Solomon Peachy
2020-08-11 b4e70422a3: mikmod: Upgrade mikmod core from v3.2.0 to v3.3.11

* Get rid of the non-functional GT2 loader
* Add the UMX loader
* Add HQ mixer routines (and make it configurable)
* Allow samplerate to be configured at run/playtime
* Support >64KHz mixing/playback
* Correctly restore non-boost status

(The diff to upstream is much smaller now too!)
apps/lang/english.lang [diff]
apps/plugins/mikmod/SOURCES [diff]
apps/plugins/mikmod/load_669.c [diff]
apps/plugins/mikmod/load_amf.c [diff]
apps/plugins/mikmod/load_asy.c [diff]
apps/plugins/mikmod/load_dsm.c [diff]
apps/plugins/mikmod/load_far.c [diff]
apps/plugins/mikmod/load_gdm.c [diff]
apps/plugins/mikmod/load_gt2.c [deleted]
apps/plugins/mikmod/load_imf.c [diff]
apps/plugins/mikmod/load_it.c [diff]
apps/plugins/mikmod/load_m15.c [diff]
apps/plugins/mikmod/load_med.c [diff]
apps/plugins/mikmod/load_mod.c [diff]
apps/plugins/mikmod/load_mtm.c [diff]
apps/plugins/mikmod/load_okt.c [diff]
apps/plugins/mikmod/load_s3m.c [diff]
apps/plugins/mikmod/load_stm.c [diff]
apps/plugins/mikmod/load_stx.c [diff]
apps/plugins/mikmod/load_ult.c [diff]
apps/plugins/mikmod/load_umx.c [new]
apps/plugins/mikmod/load_uni.c [diff]
apps/plugins/mikmod/load_xm.c [diff]
apps/plugins/mikmod/mdreg.c [diff]
apps/plugins/mikmod/mdriver.c [diff]
apps/plugins/mikmod/mikmod.c [diff]
apps/plugins/mikmod/mikmod.h [diff]
apps/plugins/mikmod/mikmod_internals.h [diff]
apps/plugins/mikmod/mikmod_supp.h [diff]
apps/plugins/mikmod/mloader.c [diff]
...and 13 more files.
Solomon Peachy
2020-08-10 8c7780bafc: flac: fix warning introduced in 5758a05
lib/rbcodec/metadata/flac.c [diff]
Solomon Peachy
2020-08-10 5758a055fb: Handle EOF properly in get_flac_metadata
docs/CREDITS [diff]
lib/rbcodec/metadata/flac.c [diff]
Yuxuan Shui
2020-08-10 e4ccd23bac: Update .gitignore
.gitignore [diff]
Solomon Peachy
2020-08-09 ae18cac2a9: Enable full sample rate sets for X3ii, X20, and Rocker
firmware/export/config/agptekrocker.h [diff]
firmware/export/config/xduoox20.h [diff]
firmware/export/config/xduoox3ii.h [diff]
Solomon Peachy
2020-08-09 491b696669: Fix HOME_DIR path for Rocker, X3ii, and X20

Prevented plugins from accessing their config files properly
firmware/export/rbpaths.h [diff]
firmware/target/hosted/filesystem-app.c [diff]
Solomon Peachy
2020-08-09 92d66f761f: Un-hardcode 44.1KHz settings from ALSA and iBasso PCM code
firmware/target/hosted/ibasso/pcm-ibasso.c [diff]
firmware/target/hosted/pcm-alsa.c [diff]
Solomon Peachy
2020-08-09 0d4752e3f6: plugins: Make 'struct configdata' argument to the configfile helper const

So plugins can use const structures, possibly saving a little bit of RAM.
apps/plugins/lib/configfile.c [diff]
apps/plugins/lib/configfile.h [diff]
Solomon Peachy
2020-08-09 08c4b708ae: jz4760: Move 11/22/44/88KHz back onto the PLL

PLL1 clock for those frequencies has been dropped from 508 to 169.5 MHz, so it's still a respectable reduction.

(I'm not sure how/why it ever worked with the XTAL source, but it did, and was off by an audible amount)
firmware/target/mips/ingenic_jz47xx/codec-jz4760.c [diff]
Solomon Peachy
2020-08-08 be2c8734cb: plugins: properly build duke3d/quake/wolf3d on MIPS and HOSTED targets
apps/plugins/SOURCES [diff]
Solomon Peachy
2020-08-08 de8f95f95f: xDuoo X3 II, X20: Add power button mapping

These are copied from the e200 mapping, adding the power button to contexts where it's unused.
apps/keymaps/keymap-xduoox20.c [diff]
apps/keymaps/keymap-xduoox3ii.c [diff]
Ori Avtalion
2020-08-08 48d2927ecc: rbutil: Update CuteLogger to most recent upstream.

Update to the most recent git version.

This changes the folder structure and renames some classes to follow upstream.

Restore MSVC static link fix, and fix wrong variable in qmake project file.
rbutil/rbutilqt/logger/AbstractAppender.cpp [deleted]
rbutil/rbutilqt/logger/AbstractAppender.h [deleted]
rbutil/rbutilqt/logger/AbstractStringAppender.cpp [deleted]
rbutil/rbutilqt/logger/AbstractStringAppender.h [deleted]
rbutil/rbutilqt/logger/ConsoleAppender.cpp [deleted]
rbutil/rbutilqt/logger/Logger.cpp [deleted]
rbutil/rbutilqt/logger/Logger.h [deleted]
rbutil/rbutilqt/logger/README.ROCKBOX [diff]
rbutil/rbutilqt/logger/include/AbstractAppender.h [new]