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



whenwhatwherewho
Sunday 00:38 b2fb095: rbutil: include nwztools source in release tarball
utils/common/deploy-rbutil.py [diff]
Franklin Wei
Sunday 00:38 a8be52c: rbutil: fix windows release build

This fixes two of them: not finding the lrelease binary and not compiling for C++11 (which is required by some Qt headers now).
rbutil/rbutilqt/rbutilqt.pro [diff]
Franklin Wei
Saturday 19:52 a5f228e: rbutil: fix windows cross compile (via M cross environment)

This fixes a couple of issues when cross-compiling for windows:
- lib builds (i.e. mks5lboot) were overriding the cross CC/CXX with the native CC, producing incompatible binaries.
- Qt made the accessibility plugin part of the core library, so we no longer need to import it.
rbutil/rbutilqt/Makefile.libs [diff]
rbutil/rbutilqt/main.cpp [diff]
rbutil/rbutilqt/rbutilqt.pro [diff]
utils/imxtools/sbtools/crypto.h [diff]
Franklin Wei
4th Nov 15:49 1925d04: Greek language update. Thanks to Constantine Mountantonakis (FS #13179)
apps/lang/greek.lang [diff]
Frank Gevaerts
3rd Nov 20:44 05dd439: solitaire: reword menu to "Quit without Saving" and "Quit"

Patch submitted by Michael Carr.
apps/plugins/solitaire.c [diff]
Franklin Wei
3rd Nov 16:46 85a4377: Pacbox AI Improvements

-Make pacbox AI score agnostic.
-Fix corner case of Game Over/reset with AI on.
-AI can now start on level where pattern starts facing right.
apps/plugins/pacbox/pacbox.c [diff]
Moshe Piekarski
30th Oct 00:18 86a313a: rbutil: update game data URLs to official download server

Do not merge until files are in place.
rbutil/rbutilqt/rbutil.ini [diff]
Franklin Wei
30th Oct 00:17 26b55ba: rbutil: extend game file installation

RbUtil will now install freely distributable data files for Duke Nukem 3D, Quake, SGT-Puzzles (fonts), Wolfenstein 3-D, and Another World. Currently the urls point to my personal server, pending upload to the main download server.
rbutil/rbutilqt/base/systeminfo.cpp [diff]
rbutil/rbutilqt/base/systeminfo.h [diff]
rbutil/rbutilqt/gui/selectiveinstallwidget.cpp [diff]
rbutil/rbutilqt/rbutil.ini [diff]
Franklin Wei
30th Oct 22:56 ec8b3d3: Add some scripts to automate target listing and generating build-info

This adds tools/list_targets.pl and tools/build-info.pl. list_targets does exactly what it sounds like - it lists targets by target status. build-info automates the generation of build-info.release for new releases.
tools/build-info.pl [new]
tools/list_targets.pl [new]
Franklin Wei
29th Oct 23:07 19c154f: wolf3d: change version to shareware

This makes wolf3d work with the shareware files available on the wiki. This will make things work out-of-the-box with Rockbox Utility.
apps/plugins/sdl/progs/wolf3d/version.h [diff]
Franklin Wei
28th Oct 00:14 06a26ab: Bump RockboxUtility version to 1.4.1

Needed to get ipod6g bootloader support in place for upcoming 3.15 release.
rbutil/rbutilqt/Info.plist [diff]
rbutil/rbutilqt/version.h [diff]
Franklin Wei
28th Oct 16:29 d1fda5e: rbutil: enable ipod6g
rbutil/rbutilqt/rbutil.ini [diff]
Franklin Wei
27th Oct 23:07 f72b908: Promote ipod6g to stable.

Manual is done and rbutil support is merged.
tools/builds.pm [diff]
Franklin Wei
27th Oct 23:06 370f9fa: builds.pm: Note that last Recorder build was 3.13

We didn't build for the Recorder when doing 3.14.
tools/builds.pm [diff]
Franklin Wei
2016-02-04 e43ef1f: rbutil: add support for iPod Classic 6G bootloader
rbutil/rbutilqt/Makefile.libs [diff]
rbutil/rbutilqt/base/bootloaderinstallhelper.cpp [diff]
rbutil/rbutilqt/base/bootloaderinstalls5l.cpp [new]
rbutil/rbutilqt/base/bootloaderinstalls5l.h [new]
rbutil/rbutilqt/changelog.txt [diff]
rbutil/rbutilqt/progressloggerfrm.ui [diff]
rbutil/rbutilqt/rbutil.ini [diff]
rbutil/rbutilqt/rbutilqt.pri [diff]
rbutil/rbutilqt/rbutilqt.pro [diff]
Cástor Muñoz
2016-02-04 c353bef: rbutil: add function to suspend/resume processes
rbutil/rbutilqt/base/utils.cpp [diff]
rbutil/rbutilqt/base/utils.h [diff]
Cástor Muñoz
2017-04-12 9f7968e: iPod Classic: add manual

Content is mostly from Vencislav's page on Freemyipod.
manual/getting_started/installation.tex [diff]
manual/getting_started/ipod_install.tex [diff]
manual/platform/ipod6g.tex [new]
Franklin Wei
9th Oct 15:22 1da2708: Fix timer Agptek Rocker (other hosted players)

on timer_unregister callbacks are not removed

It seems (at least on the Rocker) timers continue to fire (for a bit??)

Now we store the registered callback in the sigev structure and check that the callback matches the one registered when the timer is created.

This should stop the possible case of a new timer getting spurious callbacks We also now NULL the callbacks on un-register which should stop the segfaults

Added some notes to timer.c and timer.h
firmware/export/timer.h [diff]
firmware/target/hosted/kernel-unix.c [diff]
firmware/timer.c [diff]
William Wilgus
13th Oct 21:21 3d6d903: iPod Classic: enable IRAM1 in bootloader

7442742 ("iPod Classic: disable IRAM1") was causing subsequent ipod6g bootloader builds to result in a completely black screen upon installation, with recovery only possible with a reflash through DFU mode.

IRAM1 is re-enabled for bootloader only.
firmware/target/arm/s5l8702/system-s5l8702.c [diff]
Franklin Wei
7th Oct 19:26 7f1e6b4: lua rockev cleanup

with the addition of suspending all events on thread start and exit we don't really need to block on THREAD_QUIT in so many places

Removed suspend clearing on event unregister and updated comments
apps/plugins/lua/rocklib_events.c [diff]
William Wilgus
7th Oct 11:35 1908418: lua rockev fix possible race on thread exit

report of call after free on event thread on Agptek Rocker I'm guessing its a race condition between the thread and the timer but can't say for sure without some more testing
apps/plugins/lua/rocklib_events.c [diff]
William Wilgus
7th Oct 12:48 c0cc9aa: quake: clean up asm mixer

Fixes my ugly formatting.
apps/plugins/sdl/progs/quake/snd_mix_arm.S [diff]
Franklin Wei
27th Sep 18:08 01cccaf: lua move strip_extension and create_numbered_filename out of main binary

rb.strip_extension and rb.create_numbered_filename have been moved to include_lua/files.lua to use simply add require('files') to your script
apps/plugins/lua/include_lua/files.lua [new]
apps/plugins/lua/lua.make [diff]
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib_aux.pl [diff]
William Wilgus
27th Sep 01:15 4fb7835: lua rocklib_aux.pl support for enums

everything that would have been added has already been added or needs more supporting functions so they've been excluded for the time being
apps/plugins/lua/rocklib_aux.pl [diff]
William Wilgus
26th Sep 22:15 bad739c: Fix red lua remove and consolidate some rb plugin functions

I'll revisit adding enums once I research it a bit more
apps/plugins/lua/rocklib_aux.pl [diff]
William Wilgus
26th Sep 21:23 de06a06: lua remove and consolidate some rb plugin functions

removes some usless / duplicated functions removes atoi - lua tonumber() does this for you removes strlen - lua string.len does this for you removes system_memory_guard - if a device that actually implements system_memory_guard needs it we can add it back conditionally

consolidates talk_number and talk_spell (on backend) consolidates talk_shutup and talk_force_shutup talk_shutup(bForce)
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib_aux.pl [diff]
William Wilgus
24th Sep 21:40 5afdcdd: Bug fix icon.c crashes with negative icon index

The index for Icon_NOICON is -1 which is caught properly as is icon > Icon_Last_Themeable

But if you pass an index lower than Icon_NOICON screen_put_iconxy() tries to read memory prior to the iconset resulting in a crash
apps/gui/icon.c [diff]
apps/player/icons.c [diff]
William Wilgus
20th Sep 17:23 6082597: Bug fix menu -- general

Several places in the menu code assume MT_MENU though no guarantee existed menu type is now explicitly checked prior to use of the submenu variable
apps/menu.c [diff]
William Wilgus
20th Sep 01:57 70aeac4: Fix red dynamic menus

missed one.
apps/menus/audiohw_eq_menu.c [diff]
William Wilgus
20th Sep 01:07 10e5e56: Bug fix dynamic menus

Dynamic menus had a buffer_len variable in the parent function but it was discarded before passing to the callbacks

Why!!?? No clue but everything that used it was assuming MAXPATH Wouldn't be surprised to see some bugs pop out from this one..

init_menu_lists() was assuming MENU_HAS_DESC and setting the menu title + icon based on such even though it could be invalid didn't see anywhere in the code that was currently using MENU_DYNAMIC_DESC in relation to a top level menu but considering it caused all kinds of corruption to the menu when I tried its probably been tried and abandoned before...
apps/menu.c [diff]
apps/menu.h [diff]
apps/menus/audiohw_eq_menu.c [diff]
apps/menus/radio_menu.c [diff]
apps/menus/settings_menu.c [diff]
apps/root_menu.c [diff]
William Wilgus
18th Sep 19:20 d0883d7: lua give luadir the ability to return table of attributes

for fname, isdir, attrib in luadir.dir(scrpath, true) do

passing true for the second argument returns table of file/dir attributes in attrib
apps/plugins/lua/luadir.c [diff]
William Wilgus
14th Sep 02:35 13245eb: lua add menu callback

forum user fprockboxer asked for a way to detect long presses within the do_menu routine this adds that functionality

result = rb.do_menu("Title",t_items, start, menu_callback)

function menu_callback(action)
... return action end
apps/plugins/lua/rocklib.c [diff]
William Wilgus
6th Sep 19:13 f9225da: Fix red Lua extend error splash timeout and stop cutting off info
apps/plugins/lua/rocklua.c [diff]
William Wilgus
6th Sep 18:19 bbd4a6c: Lua extend error splash timeout and stop cutting off info
apps/plugins/lua/ldebug.c [diff]
apps/plugins/lua/rocklua.c [diff]
William Wilgus
6th Sep 17:24 267d04d: Lua add metadata and settings reading helper module

Adds example scripts for reading track metadata + dumping albumart and rockbox settings

settings are now stored as a table of strings rather than a table of tables as it saves ~15 kb of ram without adding much complexity
apps/plugins/lua/include_lua/rbsettings.lua [new]
apps/plugins/lua/lua.make [diff]
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/settings_helper.pl [diff]
apps/plugins/lua_scripts/dump_rbsettings.lua [new]
apps/plugins/lua_scripts/track_metadata.lua [new]
William Wilgus
1st Sep 07:05 a3cbd86: Slovak language update (From Peter Lecký)
apps/lang/slovak.lang [diff]
Solomon Peachy
27th Aug 22:56 c251d18: lua fix mem_read_write, strtol

back when I wrote this I was running the sim on a 32 bit machine I didn't catch the hardcoded LONG_MAX reference or the fact that lua_tointeger maxes ot at 32 bits

on 64 bit machines strtol caused all kinds of issues especially since it returned the real LONG_MIN/MAX values
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/strtol.c [diff]
William Wilgus
26th Aug 20:17 b99d4d7: lua optimize poly_draw add draw_number, poly_points modules
apps/plugins/lua/include_lua/draw_num.lua [new]
apps/plugins/lua/include_lua/draw_poly.lua [diff]
apps/plugins/lua/include_lua/poly_points.lua [new]
apps/plugins/lua/lua.make [diff]
William Wilgus
22nd Aug 19:58 9f551b0: sdl: Fix path substitution in log messages, fix game names in comments
apps/plugins/quake.c [diff]
apps/plugins/sdl/sdl.make [diff]
apps/plugins/wolf3d.c [diff]
Vencislav Atanasov
2017-02-28 9e186e3: Save and apply settings after resetting settings in menu.
apps/menu.c [diff]
Igor B. Poretsky
2017-02-04 293e3e0: FS #9213 - Fix for audio dropout after startup

Original Patch by Martin Buck Updated by Igor Poretsky
apps/tagcache.c [diff]
docs/CREDITS [diff]
Igor B. Poretsky
19th Aug 22:50 ecfb459: lua fix polydraw missing functions
apps/plugins/lua/include_lua/draw_poly.lua [diff]
William Wilgus
17th Aug 21:40 8b7ae89: Playlist rework

consolidate some of the playlist create functions remove extensions from playlist naming (you can still add it if you desire) switch to strlcpy, strlcpy functions
apps/menus/playlist_menu.c [diff]
apps/playlist_catalog.c [diff]
apps/tree.c [diff]
William Wilgus
17th Aug 07:06 5a4cdb9: Playlist Fix failure to append default file name pt2

fix create_playlist too
apps/tree.c [diff]
William Wilgus
17th Aug 04:05 fd19a2c: Playlist Fix failure to append default file name

FS #12992 - Can't create playlist with all tracks on device (regression) references this issue

empty_playlist() only sets filename[0] = '\0' the code was checking filename[1].. bug ensued

strip extra leading '/' from default path
apps/menus/playlist_menu.c [diff]
apps/playlist_catalog.c [diff]
William Wilgus
12th Aug 20:57 0ff6a31: opus reset decoder on seek completion to prevent stack overflow

apparently we should be doing this anyway

mark4o> The packets overlap and may reuse state set by other recent packets, so if you seek to a different position, resetting the state helps to ensure that the subsequent packets won't use the state set by the unrelated packets that were processed before the seek.

remove stack bump WORKAROUND_FS13060
apps/codec_thread.c [diff]
lib/rbcodec/codecs/opus.c [diff]
William Wilgus
14th Aug 08:44 8570d40: Fix build on IHIFI 800 and iBasso DX50
apps/features.txt [diff]
Solomon Peachy
14th Aug 07:54 de68310: Fix compile on IHIFI770/770C/800 targets.
apps/features.txt [diff]
Solomon Peachy
14th Aug 06:55 58452a4: Make 'filter roll off' strings conditional, for specific targets only.

Patch by Igor Poretsky
apps/features.txt [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/deutsch.lang [diff]
apps/lang/english.lang [diff]
apps/lang/francais.lang [diff]
apps/lang/greek.lang [diff]
apps/lang/italiano.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/romaneste.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]
Solomon Peachy
8th Aug 14:49 22c6326: Improvements for vbrfix plugin:

* Properly account for ID3v1 tags
* Play time computation fixes
* Add speech feedback

Patch by Igor Poretsky
apps/lang/english.lang [diff]
apps/plugins/vbrfix.c [diff]
lib/rbcodec/metadata/id3tags.c [diff]
lib/rbcodec/metadata/metadata_parsers.h [diff]
lib/rbcodec/metadata/mp3.c [diff]
lib/rbcodec/metadata/mp3data.c [diff]
Solomon Peachy
7th Aug 10:45 c46147c: Tweak how the pictureflow plugin is invoked

- Only load when database is ready
- Assign to file browser only when returning to WPS
- Minor speech fixes

Patch by Igor Poretsky Re-synchronized by myself
apps/root_menu.c [diff]
Solomon Peachy
2015-05-18 e3ed277: Enhanced shortcuts speech feedback

Trying to guess proper talk clip if it is not specified explicitly. Using spelling as a fallback.
apps/shortcuts.c [diff]
Igor B. Poretsky
11th Aug 21:56 3d06d35: lua rock events crash on error in main state

on errors thread stack overflows yielding before thread_exit() is a bad idea apparently
apps/plugins/lua/rocklib_events.c [diff]
William Wilgus
11th Aug 20:57 3b75f98: Windows shortcuts: remove warnings
apps/plugins/windows_lnk.c [diff]
Sebastian Leonhardt
2017-09-15 5c701b0: Add support for Windows shortcuts (*.lnk files)

Supports only relative links across the same volume.
apps/plugins/SOURCES [diff]
apps/plugins/viewers.config [diff]
apps/plugins/windows_lnk.c [new]
manual/plugins/main.tex [diff]
manual/plugins/shortcuts.tex [diff]
manual/plugins/winshortcuts.tex [new]
Sebastian Leonhardt
9th Aug 21:03 a9a891b: quake: credit the PQ authors

We do use their code...
docs/CREDITS [diff]
Franklin Wei
9th Aug 20:51 49dd38c: quake: further optimize D_DrawSpans8

Found on http://forums.insideqc.com/viewtopic.php?f=3&t=3327

Adds 1.1FPS (+8%) on ipod6g.
apps/plugins/sdl/progs/quake/d_scan.c [diff]
Franklin Wei
9th Aug 19:17 4397194: quake: enable PQ_OPT5 (a fixed-point DrawSpans8)

This boosts performance to 13.0FPS on ipod6g for `timedemo demo1'. That's a
+34% increase from baseline.
apps/plugins/sdl/progs/quake/d_local.h [diff]
apps/plugins/sdl/progs/quake/d_vars.c [diff]
apps/plugins/sdl/progs/quake/quakedef.h [diff]
Franklin Wei
9th Aug 18:31 f5bb7fd: quake: merge the remaining Pocket Quake PQ_OPT changes

I didn't do _OPT3 because it's disabled in the PQ source.

This gives as +0.2FPS boost over the last commit.
apps/plugins/sdl/progs/quake/d_scan.c [diff]
apps/plugins/sdl/progs/quake/model.c [diff]
apps/plugins/sdl/progs/quake/quakedef.h [diff]
apps/plugins/sdl/progs/quake/r_draw.c [diff]
apps/plugins/sdl/progs/quake/r_local.h [diff]
apps/plugins/sdl/progs/quake/r_main.c [diff]
apps/plugins/sdl/progs/quake/r_misc.c [diff]
Franklin Wei
9th Aug 18:08 ee70dad: quake: merge some fixed-point optimizations from PocketQuake

The PocketQuake project, available below, has some nice fixed-point code:

https://web.archive.org/web/20150412233306/http://quake.pocketmatrix.com/PocketQuake0062_src.zip

I'd like to see most of them merged into our Quake port. This commit gives +0.9FPS on ipod6g. (A big change given that it was running at only 9.7FPS to begin with!)
apps/plugins/sdl/progs/quake/FixedPointMath.h [new]
apps/plugins/sdl/progs/quake/d_polyse.c [diff]
apps/plugins/sdl/progs/quake/mathlib.h [diff]
apps/plugins/sdl/progs/quake/model.h [diff]
apps/plugins/sdl/progs/quake/quakedef.h [diff]
apps/plugins/sdl/progs/quake/r_bsp.c [diff]
apps/plugins/sdl/progs/quake/r_draw.c [diff]
apps/plugins/sdl/progs/quake/r_local.h [diff]
apps/plugins/sdl/progs/quake/r_main.c [diff]
apps/plugins/sdl/progs/quake/render.h [diff]
Franklin Wei
2017-02-13 3fffabf: Negative values speaking fix for some certain situations apps/talk.h [diff]
Igor B. Poretsky
5th Aug 18:17 20798aa: xduoox3: LANG_DISK_NAME strings for non-English languages and proper corresponding voice strings 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/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]
apps/lang/polski.lang [diff]
apps/lang/portugues-brasileiro.lang [diff]
apps/lang/portugues.lang [diff]
...and 11 more files.
Igor B. Poretsky
8th Aug 00:01 0340513: Russian translations fix apps/lang/russian.lang [diff]
Igor B. Poretsky
8th Aug 15:02 7737327: Fix mikmod plugin build on armv4 targets (broke in 5b23c9e)
apps/plugins/mikmod/mikmod_supp.h [diff]
Solomon Peachy
7th Aug 15:16 5b23c9e: Introduce HW_SAMPR_MIN_GE_22 macro

Gives us the lowest HW sample rate that's >= 22KHz.

Needed because some targets that don't support 22K support 11K or 8K, so HW_SAMPR_MIN will give us much lower quality than is acceptable.

Take advantage of this new macro in the SDL, MIDI, and MIKMOD plugins, and implement a crude "fast enough" test to enable higher sample rates on more capable targets.
apps/plugins/midi/midiutil.h [diff]
apps/plugins/mikmod/mikmod_supp.h [diff]
apps/plugins/sdl/include/SDL_config_rockbox.h [diff]
firmware/export/pcm_sampr.h [diff]
Solomon Peachy
8th Aug 07:07 a430e27: Fix lua compile error on most targets, introduced in 8d77ec8
apps/plugins/lua/ldebug.c [diff]
Solomon Peachy
8th Aug 05:23 8d77ec8: lua LCD fix

forgot to set new size after realloc

forgot to set sizelineinfo to 0 after free
apps/plugins/lua/ldebug.c [diff]
apps/plugins/lua/lparser.c [diff]
William Wilgus
4th Aug 22:03 d61ea6c: lua LCD (Lua Compact Debug) patch

LCD developed 9/2015 by Terry Ellison

We've already discarded the ldebug module from lua it only makes sense to discard the debug info as well adds 1.5 K to the binary saves 8 Kb on the base state once scripts start getting called i've seen 10-50Kb savings but it all depends on what exactly you are running
apps/plugins/lua/lbaselib.c [diff]
apps/plugins/lua/lcode.c [diff]
apps/plugins/lua/ldebug.c [diff]
apps/plugins/lua/ldebug.h [diff]
apps/plugins/lua/ldump.c [diff]
apps/plugins/lua/lfunc.c [diff]
apps/plugins/lua/lgc.c [diff]
apps/plugins/lua/lobject.h [diff]
apps/plugins/lua/lparser.c [diff]
apps/plugins/lua/lparser.h [diff]
apps/plugins/lua/lua.h [diff]
apps/plugins/lua/luaconf.h [diff]
apps/plugins/lua/lundump.c [diff]
William Wilgus
7th Aug 22:10 1dabca6: sdl: document some pointer voodoo

This was lifted straight from pictureflow...
apps/plugins/sdl/main.c [diff]
Franklin Wei
7th Aug 12:05 cd77d92: Further lanuage tweaks:

- Corrected X3 mSD slot voices
- Synchronized English-US
- Synchronized Russian
apps/lang/english-us.lang [diff]
apps/lang/english.lang [diff]
apps/lang/russian.lang [diff]
Solomon Peachy
7th Aug 09:18 4b12b68: Further updates to the Russian voiced strings, by Igor Poretsky

(These had to be fixed up by hand)
apps/lang/russian.lang [diff]
Solomon Peachy
7th Aug 08:38 5ace14b: Major update to Russian Translation, by Igor Poretsky

(Not all chunks made it due to dependencies on non-merged stuff)
apps/lang/russian.lang [diff]
Solomon Peachy
5th Aug 20:03 b1f2c79: Speech feedback in the pictureflow plugin

Patch by Igor Poretsky
apps/lang/english.lang [diff]
apps/lang/russian.lang [diff]
apps/plugins/pictureflow/pictureflow.c [diff]
Solomon Peachy
4th Aug 14:51 2ebb8da: Mikmod plugin improvements

- Improved sound quality (use 44.1KHz)
- Conventional mixer is now used
- Playback is performed in a separate thread
- Speech feedback in menus

Patch by Igor Poretsky
apps/lang/english.lang [diff]
apps/lang/russian.lang [diff]
apps/plugins/mikmod/mikmod.c [diff]
apps/plugins/mikmod/mikmod_supp.h [diff]
Solomon Peachy
21st Jul 07:03 e6b03ff: Respect age when freeing thumbnails from clip cache.

Otherwise they could get freed while queued.

Patch by Igor Poretsky
apps/talk.c [diff]
Solomon Peachy
5th Aug 20:05 2d70fdc: Improved reliability of runtime accounting and speaking it.
apps/misc.c [diff]
apps/plugin.c [diff]
apps/screens.c [diff]
Solomon Peachy
5th Aug 20:00 4c481d2: Fix some bad strings in two language files.

Patch by Igor Poretsky
apps/lang/italiano.lang [diff]
apps/lang/svenska.lang [diff]
Solomon Peachy
5th Aug 19:25 951a614: lua fix lua_close on os.exit(0)
apps/plugins/lua/rocklua.c [diff]
William Wilgus
5th Aug 19:20 1b41e6e: lua fix crashes EGC failure to lock stack in concat
apps/plugins/lua/lvm.c [diff]
William Wilgus
4th Aug 16:51 305ec12: Synchronize the english-US translation, including missing voice strings.
apps/lang/english-us.lang [diff]
Solomon Peachy
5th Aug 19:14 0544d97: Fix rockbox info screen on non-MULTIVOLUME targets

Regression introduced in c3a775c05b70ea538076c3f02909137e9474c52e
apps/menus/main_menu.c [diff]
Solomon Peachy
4th Aug 14:58 ed724fe: Midiplay plugin ehancements

- Improved robustness
- Improved sound quality
- Use mixer and DSP

Patch by Igor Poretsky
apps/plugins/midi/guspat.c [diff]
apps/plugins/midi/midifile.c [diff]
apps/plugins/midi/midiplay.c [diff]
apps/plugins/midi/midiutil.c [diff]
apps/plugins/midi/midiutil.h [diff]
apps/plugins/midi/synth.c [diff]
apps/plugins/midi/synth.h [diff]
Solomon Peachy
5th Aug 07:58 eea5bfc: Two more warning fixes for the Chinese (Traditional) translation.
apps/lang/chinese-trad.lang [diff]
Solomon Peachy
5th Aug 07:15 9c8bccb: Fix up warnings introduced by Traditional Chinese Language update.

I think I got them all.
apps/lang/chinese-trad.lang [diff]
Solomon Peachy
5th Aug 06:13 ca5bb32: FS #13071: Updated Chinese (Traditional) Translation

Courtesy of Guo Zhong Kai
apps/lang/chinese-trad.lang [diff]
docs/CREDITS [diff]
Solomon Peachy
4th Aug 19:38 0d3ea82: Update documentation build to use saner version extraction

Patch by Igor Poretsky
manual/Makefile [diff]
manual/Makefile.pdflatex [diff]
Solomon Peachy
4th Aug 20:42 8143e44: Speech Feedback improvements on the Quickscreen

Patch by Igor Poretsky
apps/gui/option_select.c [diff]
apps/gui/quickscreen.c [diff]
Solomon Peachy
4th Aug 20:46 3b7ae5e: Improved robustness in talk code

Patch by Igor Poretsky
apps/talk.c [diff]
Solomon Peachy
24th Jul 12:09 701bf06: Voice enable properties plugin

Patch by Igor Poretsky Updated by Solomon Peachy
apps/lang/english.lang [diff]
apps/plugins/properties.c [diff]
Solomon Peachy
24th Jul 12:08 2a737d3: Fix stack overflow issues in properties plugin

Patch by Igor Poretsky Updated by Solomon Peachy
apps/plugins/properties.c [diff]
Solomon Peachy
21st Jul 06:55 40da2f7: Speech enabled main menu config plugin

Patch by Igor Poretsky
apps/lang/english.lang [diff]
apps/lang/russian.lang [diff]
apps/plugins/main_menu_config.c [diff]
Solomon Peachy
4th Aug 16:08 5e05484: Synchronize english-us language files
apps/lang/english-us.lang [diff]
Solomon Peachy
4th Aug 15:00 4d5dfab: Several minor voice string corrections.

Patch by Igor Poretsky
apps/lang/catala.lang [diff]
apps/lang/english.lang [diff]
apps/lang/russian.lang [diff]
apps/lang/wallisertitsch.lang [diff]
Solomon Peachy
4th Aug 14:55 08fd69c: sdl: fall back to minimum supported sample rate if 22 kHz is not supported

Fixes too-fast audio playback on devices that don't support 22 kHz.
apps/plugins/sdl/include/SDL_config_rockbox.h [diff]
Franklin Wei
20th Jul 15:32 4ad7665: Speech feedback in mpegplayer menus

Patch by Igor Poretsky
apps/lang/english.lang [diff]
apps/plugins/mpegplayer/mpeg_settings.c [diff]
apps/plugins/mpegplayer/mpegplayer.c [diff]
apps/plugins/mpegplayer/mpegplayer.h [diff]
apps/plugins/mpegplayer/pcm_output.c [diff]
Solomon Peachy
4th Aug 12:57 7234de5: sdl: don't set alignment trap if < ARMv5

This should fix crashes on ARM7TDMI as reported by foolsh.
apps/plugins/sdl/main.c [diff]
Franklin Wei
4th Aug 11:38 448b97a: fix recording.c file split time in seconds not minutes

FS #13173
apps/recorder/recording.c [diff]
William Wilgus
4th Aug 08:35 d1f349b: lua optimize print include, fix draw_poly
apps/plugins/lua/include_lua/draw_poly.lua [diff]
apps/plugins/lua/include_lua/print.lua [diff]
apps/plugins/lua_scripts/print_lua_func.lua [diff]
William Wilgus
3rd Aug 20:10 668eed3: Remove doubled name from docs/CREDITS
docs/CREDITS [diff]
Moshe Piekarski
4th Aug 07:48 f85df30: lua add rlimg.lua example script split large includes to separate files
apps/plugins/lua/include_lua/draw.lua [diff]
apps/plugins/lua/include_lua/draw_floodfill.lua [new]
apps/plugins/lua/include_lua/draw_poly.lua [new]
apps/plugins/lua/include_lua/draw_text.lua [new]
apps/plugins/lua/include_lua/image.lua [diff]
apps/plugins/lua/include_lua/image_save.lua [new]
apps/plugins/lua/lua.make [diff]
apps/plugins/lua_scripts/rlimg.lua [new]
William Wilgus
3rd Aug 19:24 4209c09: Fix warning on Fuze+ introduced by a09d4adb
apps/keymaps/keymap-fuzeplus.c [diff]
Solomon Peachy
11th Jun 09:09 9d79cef: Fuze+ hotkeys and quickscreen

Add bottom left as quickscreen and bottom right as hotkey acroos the board for fuze+. Meant as a stopgap until gesture support becomes good enough that it is unnecessary

Also adds my name to CREDITS
apps/keymaps/keymap-fuzeplus.c [diff]
docs/CREDITS [diff]
manual/platform/keymap-sansafuzeplus.tex [diff]
Moshe Piekarski
3rd Aug 16:01 a18803a: Creative Zen keymap fixes:

- Assigned hotkey to long back
- Assigned quickscreen invocation to long menu
- Fixed pitchscreen control
- Assigned long presses in pitchscreen

Patch by Igor Poretsky
apps/keymaps/keymap-zen.c [diff]
Solomon Peachy
3rd Aug 15:59 51d47c5: Pitchscreen keymap fixes for Sony NWZ targets

- Pitchscreen control fixed
- Long press assigned

Patch by Igor Poretsky
apps/keymaps/keymap-nwz.c [diff]
Solomon Peachy
21st Jul 07:01 e73ef01: Correct speech feedback for volume limit setting

Patch by Igor Poretsky
apps/menus/sound_menu.c [diff]
Solomon Peachy
3rd Aug 10:30 827c881: quake: update readme
apps/plugins/sdl/progs/quake/README.rockbox [diff]
Franklin Wei
2nd Aug 20:54 7ba2ef5: sdl: use mutex in printf()

This prevents lines of output being overwritten by different threads.
apps/plugins/sdl/wrappers.c [diff]
Franklin Wei
2nd Aug 21:00 fee68fc: quake: synchronize Mod_LoadModel and S_LoadSound

This is not a very pretty fix, but code that doesn't crash is better than code that crashes... "If it runs, it's done."
apps/plugins/sdl/progs/quake/model.c [diff]
apps/plugins/sdl/progs/quake/snd_mem.c [diff]
Franklin Wei
31th Jul 20:59 9d2af87: lua update tagnav.lua with reload menu and bug fixes
apps/plugins/lua_scripts/dbgettags.lua [diff]
apps/plugins/lua_scripts/tagnav.lua [diff]
William Wilgus
29th Jul 18:49 501404d: tagtree add %reload to allow hot reloading of tagnavi config

adds (static) function tagtree_unload frees all buflib allocations for tagtree

adds command %reload that allows a new tagnavi file to be loaded without device restart use it like so..
"Reload..." -> %reload

Allocations are now checked for validity (probably a good idea anyway)
apps/tagtree.c [diff]
William Wilgus
1st Aug 21:10 d3a3a41: Remove "HAVE_TRANSFLECTIVE_LCD" from iPod 6G config

The screen content is only poorly visible without backlight, it's not really usable this way. Removing HAVE_TRANSFLECTIVE_LCD also fixes the "flashing screen" issue that appeared on some models when "lcd_awake()" is called.
firmware/export/config/ipod6g.h [diff]
Sebastian Leonhardt
31th Jul 09:18 e6fae44: xduoox3: Use correct LANG_DISK_NAME strings.
apps/lang/english.lang [diff]
Solomon Peachy
28th Jul 12:36 c3a775c: Make info screen properly multi-volume aware.

It will now display a line for every volume that's backed by a real drive.
apps/lang/english.lang [diff]
apps/menus/main_menu.c [diff]
Solomon Peachy
28th Jul 19:02 722ddcf: sdl: Fixes for the SDL apps, so they support building simulator on Windows
apps/plugins/sdl/include/SDL_config_rockbox.h [diff]
apps/plugins/sdl/include/SDL_platform.h [diff]
apps/plugins/sdl/progs/duke3d/Engine/src/filesystem.h [diff]
apps/plugins/sdl/progs/duke3d/Game/src/global.h [diff]
apps/plugins/sdl/progs/wolf3d/wl_def.h [diff]
apps/plugins/sdl/src/video/SDL_video.c [diff]
Vencislav Atanasov
31th Jul 09:07 349e111: Revert "cleanup: Remove HAVE_MULTIVOLUME from targets with HAVE_MULTIDRIVE"

This reverts commit a89bf68e889dd989e486b0a131618f69e5fc26c6.

HAVE_MULTIVOLUME && HAVE_MULTIDRIVE implicitly means "allow 4 volumes per drive" whereas the normal MULTIDRIVE behavior is to only allow 1 volume per drive.
firmware/export/config/creativezen.h [diff]
firmware/export/config/creativezenxfi.h [diff]
firmware/export/config/creativezenxfi2.h [diff]
firmware/export/config/creativezenxfi3.h [diff]
Solomon Peachy
24th Jul 11:56 f2fd8fe: FS #11052 -- SID Playback in Stereo

Original patch by Stefan Waigand Updated by Igor Poretsky
docs/CREDITS [diff]
lib/rbcodec/codecs/sid.c [diff]
Solomon Peachy
29th Jul 20:16 a89bf68: cleanup: Remove HAVE_MULTIVOLUME from targets with HAVE_MULTIDRIVE

The latter always enables the former.

There are no remaining HAVE_MULTIVOLUME users in-tree.
firmware/export/config/creativezen.h [diff]
firmware/export/config/creativezenxfi.h [diff]
firmware/export/config/creativezenxfi2.h [diff]
firmware/export/config/creativezenxfi3.h [diff]
Solomon Peachy
29th Jul 19:05 94109a9: quake: fix file loading errors

Forgot a return statement in Sys_FileRead (which slipped by since I've made the questionable decision to disable all warnings...)
apps/plugins/sdl/progs/quake/sys_sdl.c [diff]
Franklin Wei
29th Jul 19:00 5e0bd5b: quake: add notification upon strange error

For some reason a NULL pointer creeps in, on the simulator only, it seems. This makes sure that if it happens on target we'll know about it.
apps/plugins/sdl/progs/quake/r_edge.c [diff]
Franklin Wei
29th Jul 18:59 caee6c5: quake: fix race condition

COM_LoadStackFile was not thread-safe since it relied on a global variable to pass the loadbuf parameter to COM_LoadFile. This was causing mysterious crashes when model loading and audio mixing were happening simultaneously.
apps/plugins/sdl/progs/quake/common.c [diff]
apps/plugins/sdl/progs/quake/model.c [diff]
Franklin Wei
29th Jul 18:53 0b23348: sdl: forward-declare fscanf_wrapper

Silences a few warnings (if you enable them).
apps/plugins/sdl/include/SDL_config_rockbox.h [diff]
Franklin Wei
29th Jul 19:37 c31700f: quake: properly synchronize zone.c

Preventative measures. Somehow SDLQuake managed without these...
apps/plugins/sdl/progs/quake/zone.c [diff]
Franklin Wei
29th Jul 19:25 4f469e9: Debug menu now show partitions on all drives, not just the first.
apps/debug_menu.c [diff]
Solomon Peachy
29th Jul 14:45 bad461a: Correct MODEL_NUMBERs used by xDuoo X3, and IHIFI 770, 770C, and 800.

This should correct ROLO operation on all targets.
firmware/export/config/ihifi770.h [diff]
firmware/export/config/ihifi770c.h [diff]
firmware/export/config/ihifi800.h [diff]
firmware/export/config/xduoox3.h [diff]
Solomon Peachy
29th Jul 09:12 83963fc: XduooX3: Uncomment code that prevented hotswap from working.
firmware/target/mips/ingenic_jz47xx/ata-sd-jz4760.c [diff]
Solomon Peachy
29th Jul 02:41 138a4f9: lua rocklib_img optimize functions with multiple checkint calls

Uses int arrays and calls luaL_checkint in a loop
apps/plugins/lua/rocklib_aux.pl [diff]
apps/plugins/lua/rocklib_img.c [diff]
William Wilgus
25th Jul 23:30 90118f1: lua add demo scripts, atexit handler, gui_scrollbar_draw
apps/plugins/CATEGORIES [diff]
apps/plugins/SOURCES [diff]
apps/plugins/SUBDIRS [diff]
apps/plugins/SUBDIRS.app_build [diff]
apps/plugins/lua/include_lua/printtable.lua [new]
apps/plugins/lua/loslib.c [diff]
apps/plugins/lua/lua.make [diff]
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib_events.c [diff]
apps/plugins/lua/rocklib_img.c [diff]
apps/plugins/lua/rocklua.c [diff]
apps/plugins/lua_scripts.lua [new]
apps/plugins/lua_scripts/dbgettags.lua [new]
apps/plugins/lua_scripts/fade2sleep.lua [new]
apps/plugins/lua_scripts/filebrowse.lua [new]
apps/plugins/lua_scripts/fileview.lua [new]
apps/plugins/lua_scripts/fileviewers.lua [new]
apps/plugins/lua_scripts/lua_scripts.make [new]
apps/plugins/lua_scripts/print_lua_func.lua [new]
apps/plugins/lua_scripts/printmenu.lua [new]
apps/plugins/lua_scripts/tagnav.lua [new]
tools/buildzip.pl [diff]
William Wilgus
28th Jul 19:20 60c5a29: Add Moshe Piekarski to CREDITS
docs/CREDITS [diff]
Franklin Wei
28th Jul 19:03 8bafa1b: pacbox: fix red and enable AI on all targets
apps/plugins/pacbox/pacbox.c [diff]
apps/plugins/pacbox/pacbox.h [diff]
Franklin Wei
2018-04-01 b3295f0: Pacbox AI

Pacman can make moves by itself
apps/plugins/pacbox/pacbox.c [diff]
apps/plugins/pacbox/pacbox.h [diff]
Moshe Piekarski
28th Jul 21:31 183e45e: sdl: Remove platform-specific code

Also nuke the Makefiles of Duke Nukem 3D (pun intended).
apps/plugins/sdl/SDL_mixer/music.c [diff]
apps/plugins/sdl/include/SDL_config.h.in [diff]
apps/plugins/sdl/include/SDL_opengl.h [diff]
apps/plugins/sdl/progs/duke3d/Engine/src/build.h [diff]
apps/plugins/sdl/progs/duke3d/Engine/src/display.c [diff]
apps/plugins/sdl/progs/duke3d/Engine/src/draw.h [diff]
apps/plugins/sdl/progs/duke3d/Engine/src/engine.c [diff]
apps/plugins/sdl/progs/duke3d/Engine/src/filesystem.h [diff]
apps/plugins/sdl/progs/duke3d/Engine/src/macos_compat.h [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/mmulti.c [diff]
apps/plugins/sdl/progs/duke3d/Engine/src/multi.c [diff]
apps/plugins/sdl/progs/duke3d/Engine/src/platform.h [diff]
apps/plugins/sdl/progs/duke3d/Engine/src/unix_compat.h [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/win32_compat.h [deleted]
apps/plugins/sdl/progs/duke3d/Game/src/audiolib/dpmi.h [diff]
apps/plugins/sdl/progs/duke3d/Game/src/audiolib/fx_man.h [diff]
apps/plugins/sdl/progs/duke3d/Game/src/audiolib/task_man.c [diff]
apps/plugins/sdl/progs/duke3d/Game/src/config.c [diff]
apps/plugins/sdl/progs/duke3d/Game/src/cvar_defs.h [diff]
apps/plugins/sdl/progs/duke3d/Game/src/cvars.h [diff]
apps/plugins/sdl/progs/duke3d/Game/src/duke3d.h [diff]
apps/plugins/sdl/progs/duke3d/Game/src/dukerockbox.h [diff]
apps/plugins/sdl/progs/duke3d/Game/src/dukeunix.h [deleted]
apps/plugins/sdl/progs/duke3d/Game/src/dukewin.h [deleted]
apps/plugins/sdl/progs/duke3d/Game/src/game.c [diff]
apps/plugins/sdl/progs/duke3d/Game/src/gamedef.c [diff]
apps/plugins/sdl/progs/duke3d/Game/src/global.c [diff]
apps/plugins/sdl/progs/duke3d/Game/src/global.h [diff]
apps/plugins/sdl/progs/duke3d/Game/src/menues.c [diff]
apps/plugins/sdl/progs/duke3d/Game/src/sounds.c [diff]
...and 19 more files.
Vencislav Atanasov
28th Jul 16:49 e19857e: duke3d: remove unused files

A bunch of cruft left over when I copied the files...
apps/plugins/sdl/progs/duke3d/Engine/src/Makefile [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/Makefile.am [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/Makefile.in [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/enet/ChangeLog [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/enet/LICENSE [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/enet/README [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/enet/include/callbacks.h [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/enet/include/enet.h [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/enet/include/list.h [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/enet/include/protocol.h [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/enet/include/time.h [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/enet/include/types.h [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/enet/include/unix.h [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/enet/include/utility.h [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/enet/include/win32.h [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/mmulti.c [diff]
apps/plugins/sdl/progs/duke3d/Engine/src/mmulti.cpp [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/windows/inttypes.h [deleted]
apps/plugins/sdl/progs/duke3d/Engine/src/windows/stdint.h [deleted]
apps/plugins/sdl/progs/duke3d/Game/src/Makefile [deleted]
apps/plugins/sdl/progs/duke3d/Game/src/Makefile.am [deleted]
apps/plugins/sdl/progs/duke3d/Game/src/Makefile.in [deleted]
apps/plugins/sdl/progs/duke3d/Game/src/audiolib/Makefile [deleted]
apps/plugins/sdl/progs/duke3d/Game/src/audiolib/Makefile.am [deleted]
apps/plugins/sdl/progs/duke3d/Game/src/audiolib/Makefile.in [deleted]
Franklin Wei
28th Jul 12:56 8379b23: lua: wrap thread_set_priority with #ifdef HAVE_PRIORITY_SCHEDULING

Should fix a compile-time error on simulator.
apps/plugins/lua/rocklib.c [diff]
Franklin Wei
15th Jul 08:49 5572904: chessbox: Fixes and enhancements

- Unfinished game is now saved along with current position.
- All savings are automatically done on shutdown.
- Implemented facility to view played games.
- Fixed bug that prevented program from the very first move.

Patch by Igor Poretsky
apps/lang/english.lang [diff]
apps/plugins/chessbox/chessbox.c [diff]
apps/plugins/chessbox/chessbox_pgn.c [diff]
apps/plugins/chessbox/chessbox_pgn.h [diff]
apps/plugins/chessbox/gnuchess.c [diff]
Solomon Peachy
28th Jul 13:39 c5ed45d: docker-rbclient: update README
tools/docker_rbclient/README [diff]
Franklin Wei
28th Jul 13:31 e499b75: docker-rbclient: whitespace fix

Gerrit's web editor can't be trusted.
tools/docker_rbclient/README [diff]
Franklin Wei
21st Jul 16:17 02a6985: Add build code for Docker development environment

This simplifies the tedious task of building all the Rockbox toolchains manually by providing a build code for a Docker container image. It's useful for quickly spinning up a build client with just a couple commands and no waiting to compile (though downloading takes a little while).

I've built an image as built1n/rbclient on Docker Hub.

All toolchains (even the weird ones) are included, except android16.
tools/docker_rbclient/Dockerfile [new]
tools/docker_rbclient/README [new]
tools/docker_rbclient/runclient_modified.sh [new]
Franklin Wei
28th Jul 17:44 7f9fc20: Use full_path_subst on more places, to avoid replacing the wrong occurrences in paths.

If ROOTDIR=/rockbox and BUILDDIR=/rockbox/build-something, it is now possible to successfully build both target binaries and simulators.
apps/plugins/bitmaps/pluginbitmaps.make [diff]
apps/plugins/plugins.make [diff]
tools/database/database.make [diff]
tools/functions.make [diff]
Vencislav Atanasov
28th Jul 12:27 d8330c9: sdl: gut OS/2, win32 code from SDL.c

This should help with compiling win32 simulators.
apps/plugins/sdl/src/SDL.c [diff]
Franklin Wei
28th Jul 12:06 090bded: quake: add README with some notes
apps/plugins/sdl/progs/quake/README.rockbox [new]
Franklin Wei
28th Jul 11:58 711ddfd: sdl: gut non-Rockbox platform detection code

This should prevent false positives when simulators for other systems (e.g. win32).
apps/plugins/sdl/include/SDL_config.h [diff]
apps/plugins/sdl/include/SDL_platform.h [diff]
Franklin Wei
28th Jul 08:05 c2139db: Ninety-nine bugs on the wall, Fix one bug, pass it around, 101 bugs on the wall..

Properly fixes bug introduced in 4beafe1 (and incorrectly fixed in 51fe1b6)
apps/menus/main_menu.c [diff]
Solomon Peachy
28th Jul 07:24 51fe1b6: volume_ismounted is gated by HAVE_DIRCACHE rather than HAVE_MULTIVOLUME

Should fix the various sim builds.
apps/menus/main_menu.c [diff]
firmware/export/mv.h [diff]
Solomon Peachy
12th Jul 03:23 45bd14b: Lua Add Emergency Garbage Collector

Derivative of work by RobertGabrielJakabosky http://lua-users.org/wiki/EmergencyGarbageCollector

I've only implemented the not enough memory part and expanded this idea to adding a mechanism to signal the OOM condition of the plugin buffer which allows us to only grab the playback buffer after garbage collection fails
(SO THE MUSIC KEEPS PLAYING AS LONG AS POSSIBLE)
apps/plugins/lua/SOURCES [diff]
apps/plugins/lua/lapi.c [diff]
apps/plugins/lua/lauxlib.c [diff]
apps/plugins/lua/ldo.c [diff]
apps/plugins/lua/lfunc.c [diff]
apps/plugins/lua/lgc.c [diff]
apps/plugins/lua/lgc.h [diff]
apps/plugins/lua/lobject.h [diff]
apps/plugins/lua/lparser.c [diff]
apps/plugins/lua/lstate.c [diff]
apps/plugins/lua/lstate.h [diff]
apps/plugins/lua/lstring.c [diff]
apps/plugins/lua/ltable.c [diff]
apps/plugins/lua/lua_user.c [new]
apps/plugins/lua/lua_user.h [new]
apps/plugins/lua/luaconf.h [diff]
apps/plugins/lua/lvm.c [diff]
apps/plugins/lua/lzio.h [diff]
apps/plugins/lua/rockconf.h [diff]
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/tlsf_helper.c [diff]
William Wilgus
2019-02-08 4beafe1: Show time, date, and recording directory in the info screen

Patch by Igor Poretsky
apps/gui/list.c [diff]
apps/gui/list.h [diff]
apps/lang/english.lang [diff]
apps/menus/main_menu.c [diff]
Solomon Peachy
28th Jul 05:26 ddf612c: lua remove unneeded plugin functions
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib_aux.pl [diff]
William Wilgus
2014-04-25 fd20114: robotfindskitten: clear message line before cinema scene

Just writes a bunch of spaces to clear the space before playing our animation.
apps/plugins/robotfindskitten.c [diff]
Franklin Wei
27th Jul 14:07 feacbcd: quake: cache files in memory to eliminate skips

This caches large files (arbitrarily defined as >1MB) in memory, which reduces the delay when a new model or sound is needed.
apps/plugins/sdl/progs/quake/sys_sdl.c [diff]
Franklin Wei
2018-10-23 4226315: Multiboot update manual entry
apps/features.txt [diff]
manual/advanced_topics/main.tex [diff]
William Wilgus
16th Jul 22:39 e1475a3: Fix non aligned crashes with tlsf

When the starting address of the plugin buffer is not aligned to 8 bytes crashes occur in tlsf
(on ARM atleast)
apps/plugin.c [diff]
lib/tlsf/src/tlsf.c [diff]
William Wilgus
2017-05-01 321de68: Add Vagrant configuration for creating a development VM

Vagrant is an application that automates creation and provisioning of a virtual machine for development. The config here creates an Ubuntu 16.04 LTS machine, updates it, downloads and installs the toolchains for sh, m68k and arm, mingw-w64, SDL (for Windows simulators) and other packages needed for building Rockbox.

It works fine for building a Windows simulator and compiling iPod classic binaries. It should be possible to make the other build types, too.

MIPS toolchain fails to build, ARM-APP is not tested because the files download very slow on my connection. Please test if it works for you, and let me know.

Quick start: download and install Vagrant and VirtualBox for your operating system, make sure VT-x / AMD-V is enabled in your BIOS/EFI setup, open a shell in rockbox/tools and input the command "vagrant up"
.gitignore [diff]
tools/Vagrantfile [new]
tools/vagrant/provision-nonprivileged.sh [new]
tools/vagrant/provision.sh [new]
tools/vagrant/startup.sh [new]
Vencislav Atanasov
26th Jul 18:17 4e35716: Add Andy Potter to CREDITS

Again, this is inferred from their Gerrit username. I've also emailed them to confirm the name.
docs/CREDITS [diff]
Franklin Wei
2018-11-17 d462d26: Fix issue with building the UI Simulator for Windows

Addition of rtc support for AGPtEK ROCKER broke building the UI Simulator for Windows. This patch removes the rtc support if building UI Simulator for Windows.
firmware/target/hosted/rtc.c [diff]
LiveboxAndy
25th Jul 16:17 c8ec64e: Add Yangyong Wu to CREDITS

This name is inferred from the contributor's Github account email
(interpreted using the standard given-family name Chinese convention).
docs/CREDITS [diff]
Franklin Wei
2016-08-09 975e309: fixed alac_set_info() issues. lib/rbcodec/codecs/libalac/alac.c [diff]
aozima
25th Jul 12:26 cdfb7d4: sdl: fix video regression introduced by 5d05b9d

The quake commit tried to optimize lcd updates but inadvertently broke wolf3d (which always uses a 320x200 screen size). This fixes that and also lets direct mode truly exit early to hopefully save some cycles.
apps/plugins/sdl/src/video/rockbox/SDL_rockboxvideo.c [diff]
Franklin Wei
25th Jul 08:17 6e32e06: lua add sound_current, consolidate sound_ functions

add defines for sound functions SOUND_VOLUME, SOUND_BALANCE, SOUND_CHANNELS, SOUND_STEREO_WIDTH ... defines depend on target require "sound_defines" to add them to rb.sound_settings[]

consolidates: sound_set, sound_current, sound_default, sound_min, sound_max, sound_unit, sound_pitch, sound_val2phys to a single function

rb.sound("name", setting, [value])

require "sound.lua" for old functionality
apps/plugins/lua/include_lua/sound.lua [new]
apps/plugins/lua/lua.make [diff]
apps/plugins/lua/rbdefines_helper.pl [diff]
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib_aux.pl [diff]
William Wilgus
25th Jul 06:49 3834094: Fix Red -- sound_current #_2
firmware/sound.c [diff]
William Wilgus
25th Jul 06:03 b5b43a0: Fix Red -- sound_current

Remove dependency on settings.g for bootloader

ifdef out AUDIOHW_HAVE_EQ Settings these should be indexing the global_settings.hw_eq_bands[AUDIOHW_EQ_BAND_NUM] struct
firmware/sound.c [diff]
William Wilgus
24th Jul 22:48 5f9d1f5: Add sound_current to plugin api

Adds: sound_current(int setting) returns the current sound setting from global_settings complements sound_max, sound_min and sound_default
apps/plugin.c [diff]
firmware/export/sound.h [diff]
firmware/sound.c [diff]
William Wilgus
24th Jul 19:01 7e4902b: quake: fix errorneous endian-correcting reads

ef9ee89 introduced Read{Big,Little}{Short,Long,Float} functions to safely read a value in memory. These incorrectly take char*, which causes them to output erroneous 0xff bytes when given bytes with bit 7 set.
apps/plugins/sdl/progs/quake/common.c [diff]
apps/plugins/sdl/progs/quake/common.h [diff]
apps/plugins/sdl/progs/quake/model.c [diff]
Franklin Wei
24th Jul 12:17 7bef453: FS #12887: Fix playlist order after moving a track before current

Original patch by Juan Gonzalez Updated by Igor Poretsky
apps/playlist.c [diff]
docs/CREDITS [diff]
Solomon Peachy
20th Jul 18:40 ef9ee89: quake: fix unaligned accesses in model.c

Allows playing registered episodes.
apps/plugins/sdl/progs/quake/common.c [diff]
apps/plugins/sdl/progs/quake/common.h [diff]
apps/plugins/sdl/progs/quake/model.c [diff]
Franklin Wei
20th Jul 17:52 2ca4717: quake: pack structs which could potentially be unaligned

The d*_t structs are from "d"isk, which means they could be unaligned. Packing them saves me from having to rewrite every single access to them.
apps/plugins/sdl/progs/quake/bspfile.h [diff]
Franklin Wei
20th Jul 15:36 f83de42: quake: enable building Quake2
apps/plugins/sdl/progs/quake/host_cmd.c [diff]
Franklin Wei
2019-02-06 5a84239: Add speech feedback to imageviewer plugin

Patch by Igor Poretsky
apps/lang/english.lang [diff]
apps/plugins/imageviewer/imageviewer.c [diff]
Solomon Peachy
20th Jul 20:06 859f762: Move get_codepage_name() back out of #ifdef HAVE_LCD_BITMAP

55eb1c54 accidentally put it there.
apps/plugin.c [diff]
apps/plugin.h [diff]
Frank Gevaerts
20th Jul 19:32 4d2874f: Don't have the inclusion of lang_enum.h depend on PLUGIN

This #ifdef apparcntly confuses dependency generation, and since lang_enum.h just declares an enum, including it unconditionally is harmless.
apps/plugin.h [diff]
Frank Gevaerts
2019-02-06 78892b5: FS #7705: Voice enable battery bench plugin

Original patch by Daniel Dalton Updated by Igor Poretsky
apps/lang/english.lang [diff]
apps/plugins/battery_bench.c [diff]
Solomon Peachy
2019-02-06 4edaf3f: FS #7912: Voice enable the chessbox plugin

Original patch by Mario Lang Heavily updated by Igor Poretsky
apps/lang/english.lang [diff]
apps/plugins/chessbox/chessbox.c [diff]
apps/plugins/chessbox/chessbox_pgn.c [diff]
apps/plugins/chessbox/gnuchess.c [diff]
Solomon Peachy
20th Jul 11:36 ee659d4: Move date/time strings out of RTC context

Should fix plugin build.
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/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]
apps/lang/norsk.lang [diff]
apps/lang/polski.lang [diff]
...and 14 more files.
Franklin Wei
20th Jul 10:58 d1b8b39: Fix build on non-RTC targets.

talk_time and talk_date are now exposed to plugins, so the strings they reference need to be moved from rtc-only to global.
apps/lang/english.lang [diff]
apps/settings.h [diff]
apps/settings_list.c [diff]
Solomon Peachy
20th Jul 15:11 3665eec: Increase set_time_screen() buffer size for hosted to keep the compiler happy.

The format strings in the snprintf can in theory need 60 characters This will not happen in practice (because seconds are 0..60 and not full-range integers etc.), but -D_FORTIFY_SOURCE will still warn about it, so we use 60 characters for HOSTED to make the compiler happy. Native builds still use 20, which is enough in practice.
apps/screens.c [diff]
Frank Gevaerts
20th Jul 08:04 3cb272c: build: Fix puzzles build due to missing dependency

As rbcompat.h is -include'd on the command line, the mkdep script doesn't pick it up. Explicitly add the dependency to lang_enum.h to the makefile.

Also add lang_enum.h to the 'make clean' target!
apps/plugins/puzzles/puzzles.make [diff]
tools/root.make [diff]
Solomon Peachy
20th Jul 03:46 14d91ca: Fix Red - Talk support for plugins

generate lang_enum prior to apps
tools/root.make [diff]
William Wilgus
20th Jul 02:46 6392e05: Plugin API

Reorganize Plugin functions in prep for API bump

Stub in sound_current

add sleep_timer
apps/plugin.c [diff]
apps/plugin.h [diff]
William Wilgus
2019-02-03 55eb1c5: FS #7704 - Talk support for plugins

Original patch by Mario Lang Heavily updated by Igor Poretsky Further updated by myself

This patch breaks binary API compatibility by placing the new functions where they make the most logical sense. IMO this is the better approach to take given the scope of the changes needed for talk support.

Since binary API is changing, the patch also moves some other functions around to more logical locations.

As well as voice support in plugins, this patch voice-enables several simple plugins. There will be follow-up patches for many plugins that build on this one.
apps/lang/english.lang [diff]
apps/lang/lang.make [diff]
apps/plugin.c [diff]
apps/plugin.h [diff]
apps/plugins/dice.c [diff]
apps/plugins/fireworks.c [diff]
apps/plugins/lib/playback_control.c [diff]
apps/plugins/wavrecord.c [diff]
apps/plugins/wormlet.c [diff]
apps/talk.c [diff]
apps/talk.h [diff]
tools/genlang [diff]
Solomon Peachy
19th Jul 21:51 9c17734: Silence warning in stdio_compat.h
apps/plugins/lib/stdio_compat.h [diff]
Franklin Wei
19th Jul 21:20 b0e9bb1: Limit float formatting to only targets building Quake

The Quake plugin is the only code that actually relies on float formatting. Because Quake only runs on targets with huge memory anyway, limiting their formatting to just those targets will minimize the increased memory use in the core.
firmware/common/vuprintf.c [diff]
Franklin Wei
2018-02-11 5d05b9d: Quake!

This ports id Software's Quake to run on the SDL plugin runtime. The source code originated from id under the GPLv2 license. I used https://github.com/ahefner/sdlquake as the base of my port.

Performance is, unsurprisingly, not on par with what you're probably used to on PC. I average about 10FPS on ipod6g, but it's still playable.

Sound works well enough, but in-game music is not supported. I've written ARM assembly routines for the inner sound loop. Make sure you turn the "brightness" all the way down, or colors will look funky.

To run, extract Quake's data files to /.rockbox/quake. Have fun!
apps/plugins/CATEGORIES [diff]
apps/plugins/SOURCES [diff]
apps/plugins/SUBDIRS [diff]
apps/plugins/lib/stdio_compat.h [diff]
apps/plugins/quake.c [new]
apps/plugins/sdl/SOURCES.quake [new]
apps/plugins/sdl/include/SDL_config_rockbox.h [diff]
apps/plugins/sdl/include/SDL_platform.h [diff]
apps/plugins/sdl/main.c [diff]
apps/plugins/sdl/progs/quake/Makefile.linuxi386 [new]
apps/plugins/sdl/progs/quake/adivtab.h [new]
apps/plugins/sdl/progs/quake/anorm_dots.h [new]
apps/plugins/sdl/progs/quake/anorms.h [new]
apps/plugins/sdl/progs/quake/asm_draw.h [new]
apps/plugins/sdl/progs/quake/asm_i386.h [new]
apps/plugins/sdl/progs/quake/block16.h [new]
apps/plugins/sdl/progs/quake/block8.h [new]
apps/plugins/sdl/progs/quake/bspfile.h [new]
apps/plugins/sdl/progs/quake/cd_linux.c [new]
apps/plugins/sdl/progs/quake/cd_null.c [new]
apps/plugins/sdl/progs/quake/cd_sdl.c [new]
apps/plugins/sdl/progs/quake/cdaudio.h [new]
apps/plugins/sdl/progs/quake/chase.c [new]
apps/plugins/sdl/progs/quake/cl_demo.c [new]
apps/plugins/sdl/progs/quake/cl_input.c [new]
apps/plugins/sdl/progs/quake/cl_main.c [new]
apps/plugins/sdl/progs/quake/cl_parse.c [new]
apps/plugins/sdl/progs/quake/cl_tent.c [new]
apps/plugins/sdl/progs/quake/clean.bat [new]
apps/plugins/sdl/progs/quake/client.h [new]
...and 141 more files.
Franklin Wei
2018-01-06 b70fecf: Add proper float formatting to vuprintf

Wanted to see how gnarly it is to do.

Big number handling could be done with better algorithms since it can get a bit slow with large integers or tiny fractions with many lead zeros when only a few digits are needed.

Anyway, it supports %e, %E, %f, %F, %g and %G. No %a or long double support seems warranted at the moment.

Assumes IEEE 754 double format but it's laid out to be able to replace a function to handle others if needed.

Tested in a driver program that has a duplicate vuprintf and the content was pasted in once it looked sound enough to put up a patch.
firmware/SOURCES [diff]
firmware/common/ap_int.c [new]
firmware/common/vuprintf.c [diff]
firmware/include/ap_int.h [new]
Michael Sevakis
27th Jun 09:28 3e2b50e: lua events from rockbox

This library allows events to be subscribed / recieved within a lua script most events in rb are synchronous so flags are set and later checked by a secondary thread to make them (semi?) asynchronous.

There are a few caveats to be aware of:

FIRST, The main lua state is halted till the lua callback(s) are finished Yielding will not return control to your script from within a callback Also, subsequent callbacks may be delayed by the code in your lua callback SECOND, You must store the value returned from the event_register function you might get away with it for a bit but gc will destroy your callback eventually if you do not store the event THIRD, You only get one cb per event type
["action", "button", "custom", "playback", "timer"]
(Re-registration of an event overwrites the previous one)

Usage: possible events =["action", "button", "custom", "playback", "timer"]

local evX = rockev.register("event", cb_function, [timeout / flags]) cb_function([id] [, data]) ... end

rockev.suspend(["event"/nil][true/false]) passing nil affects all events stops event from executing, any but the last event before re-enabling will be lost, passing false, unregistering or re-registering an event will clear the suspend

rockev.trigger("event", [true/false], [id]) sets an event to triggered, NOTE!, CUSTOM_EVENT must be unset manually id is only passed to callback by custom and playback events

rockev.unregister(evX) Use unregister(evX) to remove an event Unregistering is not necessary before script end, it will be cleaned up on script exit
apps/plugins/lua/SOURCES [diff]
apps/plugins/lua/rbdefines_helper.pl [diff]
apps/plugins/lua/rockaux.c [diff]
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib.h [diff]
apps/plugins/lua/rocklib_events.c [new]
apps/plugins/lua/rocklib_events.h [new]
apps/plugins/lua/rocklua.c [diff]
William Wilgus
19th Jul 13:16 b0de98a: Put -lfirmware in CORE_LIBS, to fix -thumb builds

For unknown reasons, -thumb builds need -lfirmware after -lrbcodec (but still before -lunwarminder)i. Other builds are still happy if we do that. Including it via CORE_LIBS instead of explicitly achieves that.
firmware/firmware.make [diff]
tools/root.make [diff]
Frank Gevaerts
18th Jul 12:50 8bd992c: lua disable bytecode dump & undump functions

Adds a flag to remove the ability to dump and load lua bytecode

saves 6+kb
apps/plugins/lua/ldump.c [diff]
apps/plugins/lua/luaconf.h [diff]
apps/plugins/lua/lundump.c [diff]
apps/plugins/lua/lundump.h [diff]
William Wilgus
18th Jul 07:41 d5908f5: Fix Red lua move constants out of binary image

didn't consider sims might have reserved enums
apps/plugins/lua/rbdefines_helper.pl [diff]
William Wilgus
18th Jul 06:42 c9aeb42: lua move constants out of binary image

Rockbox constants are auto generated by a perl script like the majority of the plugin functions.

Constants are contained in rb_defines.lua, if the file exists it is auto loaded by the lua state for backwards compatibility

Frees ~1k
apps/plugins/lua/lua.make [diff]
apps/plugins/lua/rbdefines_helper.pl [new]
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklua.c [diff]
William Wilgus
17th Jul 08:22 47639fb: lua alphabetically sort perl generated rocklib_aux functions
apps/plugins/lua/rocklib_aux.pl [diff]
William Wilgus
15th Jul 13:55 4e44c9c: sdl: credit the authors

Long overdue, but better late than never.
docs/CREDITS [diff]
Franklin Wei
20th Jun 12:35 03e6b17: Updated Serbian translation
apps/lang/srpski.lang [diff]
eevan78
13th Jul 05:46 fc25562: lua close state on os.exit
apps/plugins/lua/loslib.c [diff]
William Wilgus
12th Jul 13:57 7739ad6: wolf3d: allow entering in-game jukebox by holding fire button
apps/plugins/sdl/progs/wolf3d/wl_main.c [diff]
Franklin Wei
11th Jul 09:57 ee58f26: lua reduce heap allocated buffer sizes, organize luaconf.h
apps/plugins/lua/luaconf.h [diff]
William Wilgus
2018-11-17 a332924: lua late bound cfunction tables

We have quite a bit of ram tied up in lua with our c libraries I was searching for a way to free up some of this when I came across read only tables in e-lua but that involved a lot of patching through the source

Instead I came up with this.. it frees about 15k ram without much slowdown in code execution since after a function gets called it is automatically added to the table

If you have a performance issue you can call the bind method to bind a specific function or the whole table in one shot

for instance rb table rb("lcd_clear") -- binds/returns function rb.lcd_clear() rb(nil) -- binds every function in rb table + removes latebind metatable ..

-- added pairs and ipairs code from lua 5.2
-- cleaned up code + made more seamless existing fields are now saved rather than overwritten when table is bound
apps/plugins/lua/lauxlib.c [diff]
William Wilgus
2018-11-11 c6fcb1c: lua inbinary strings

Allows saving of ram by reusing strings already stored in the binary and storing a pointer instead of malloc and copy to get them inside the lua state

Saves about 1.5K overall

Derivative of work by bogdanm RAM optimizations: pseudo RO strings, functions in Flash https://github.com/elua/elua/commit/d54659b5723bcd2b1e3900362398c72c18a9aa0b
apps/plugins/lua/lauxlib.c [diff]
apps/plugins/lua/lgc.c [diff]
apps/plugins/lua/llex.c [diff]
apps/plugins/lua/lobject.c [diff]
apps/plugins/lua/lobject.h [diff]
apps/plugins/lua/lstring.c [diff]
apps/plugins/lua/lstring.h [diff]
apps/plugins/lua/ltm.c [diff]
apps/plugins/lua/rockconf.h [diff]
apps/plugins/lua/rocklib.c [diff]
William Wilgus
10th Jul 14:59 42240f6: wolf3d: increase default viewport size

Makes things a little bigger by default (but not maximized).
apps/plugins/sdl/progs/wolf3d/wl_main.c [diff]
Franklin Wei
10th Jul 14:58 89aea2d: wolf3d: write configs to /.rockbox/wolf3d instead of /.wolf4sdl

Let's keep things neat.
apps/plugins/sdl/progs/wolf3d/version.h [diff]
apps/plugins/sdl/progs/wolf3d/wl_menu.c [diff]
Franklin Wei
2018-12-22 3e27705: tagtree.c->loadroot() guard against overflow

forum user chris_s noted an possible unhandled cache overflow
apps/tagtree.c [diff]
William Wilgus
2018-12-06 5264a6e: Fix Truncation warning cpufreq-linux.c->cpufreq_available_governors

limit cpu identifer to 0xFFFF
firmware/target/hosted/cpufreq-linux.c [diff]
William Wilgus
2018-12-06 cf6584a: Fix possible truncation playlist_catalog.c->catalog_add_to_a_playlist
apps/playlist_catalog.c [diff]
William Wilgus
2018-12-06 3ec002e: Fix truncation warning color_picker.c->draw_screen
apps/gui/color_picker.c [diff]
William Wilgus
2018-12-05 a980c0b: Fix possible truncation statusbar.c->gui_statusbar_icon_battery

limit percent range to 0 - 100%
apps/gui/statusbar.c [diff]
William Wilgus
9th Jul 20:58 fc7a458: Fix possible truncation albumart.c
apps/recorder/albumart.c [diff]
William Wilgus
9th Jul 09:10 c0dbfc8: lua add track length & elapsed to rb.audio()

track elapsed is needed to use fast-forward and rewind effectively track length might as well be added too..
apps/plugins/lua/rocklib.c [diff]
William Wilgus
9th Jul 15:34 152e415: wolf3d: fix FM OPL alignment bug in a cleaner way

wl_def.h has a #pragma pack(1), which causes issues when we take the address of an unaligned struct field. This fixes the issue by disabling packing in fmopl_gpl.c.
apps/plugins/sdl/progs/wolf3d/fmopl_gpl.c [diff]
apps/plugins/sdl/progs/wolf3d/wl_def.h [diff]
Franklin Wei
9th Jul 11:07 b1f1637: sdl: fix build

-T flag is program-specific.
apps/plugins/sdl/sdl.make [diff]
Franklin Wei
9th Jul 10:30 a1353a3: wolf3d: add missing SOURCES.wolf

I'm dumb...
apps/plugins/sdl/SOURCES.wolf [new]
Franklin Wei
7th Jul 20:00 3f59fc8: Wolfenstein 3-D!

This is a port of Wolf4SDL, which is derived from the original id software source release. The port runs on top of the SDL plugin runtime and is loaded as an overlay.

Licensing of the game code is not an issue, as discussed below
(essentially, the Debian project treats Wolf4SDL as GPLv2, with an email from John Carmack backing it up):

http://forums.rockbox.org/index.php?topic=52872

Included is a copy of MAME's Yamaha OPL sound chip emulator
(fmopl_gpl.c). This file was not part of the original Wolf4SDL source
(which includes a non-GPL'd version), but was rather rebased from from a later MAME source which had been relicensed to GPLv2.
apps/plugins/CATEGORIES [diff]
apps/plugins/SOURCES [diff]
apps/plugins/SUBDIRS [diff]
apps/plugins/sdl/progs/wolf3d/Changes-dc.txt [new]
apps/plugins/sdl/progs/wolf3d/Changes.txt [new]
apps/plugins/sdl/progs/wolf3d/README-GP2X.txt [new]
apps/plugins/sdl/progs/wolf3d/README-dc.txt [new]
apps/plugins/sdl/progs/wolf3d/README-devcpp.txt [new]
apps/plugins/sdl/progs/wolf3d/README.txt [new]
apps/plugins/sdl/progs/wolf3d/audiosod.h [new]
apps/plugins/sdl/progs/wolf3d/audiowl6.h [new]
apps/plugins/sdl/progs/wolf3d/f_spear.h [new]
apps/plugins/sdl/progs/wolf3d/fmopl.h [new]
apps/plugins/sdl/progs/wolf3d/fmopl_gpl.c [new]
apps/plugins/sdl/progs/wolf3d/fmopl_gpl.h [new]
apps/plugins/sdl/progs/wolf3d/foreign.h [new]
apps/plugins/sdl/progs/wolf3d/gfxv_apo.h [new]
apps/plugins/sdl/progs/wolf3d/gfxv_sod.h [new]
apps/plugins/sdl/progs/wolf3d/gfxv_wl6.h [new]
apps/plugins/sdl/progs/wolf3d/gp2x.h [new]
apps/plugins/sdl/progs/wolf3d/id_ca.c [new]
apps/plugins/sdl/progs/wolf3d/id_ca.h [new]
apps/plugins/sdl/progs/wolf3d/id_in.c [new]
apps/plugins/sdl/progs/wolf3d/id_in.h [new]
apps/plugins/sdl/progs/wolf3d/id_pm.c [new]
apps/plugins/sdl/progs/wolf3d/id_pm.h [new]
apps/plugins/sdl/progs/wolf3d/id_sd.c [new]
apps/plugins/sdl/progs/wolf3d/id_sd.h [new]
apps/plugins/sdl/progs/wolf3d/id_us.h [new]
apps/plugins/sdl/progs/wolf3d/id_us_1.c [new]
...and 38 more files.
Franklin Wei
7th Jul 20:02 439a0d1: rbendian.h: fall back to generic swap macros
firmware/include/rbendian.h [diff]
Franklin Wei
7th Jul 20:01 c2411f7: sdl: silence audio driver debug output
apps/plugins/sdl/src/audio/rockbox/SDL_rockboxaudio.c [diff]
Franklin Wei
7th Jul 19:51 71922db: sdl: a couple minor fixes

Prevents system SDL from interfering with thread driver selection. Also adds test code for alignment faults.
apps/plugins/sdl/include/SDL_config_rockbox.h [diff]
apps/plugins/sdl/main.c [diff]
apps/plugins/sdl/src/thread/SDL_thread_c.h [diff]
Franklin Wei
27th Jun 17:19 c7f26de: lua remove error messages for pre-compiled chunks

We don't have the functionality in the viewer to run pre-compiled chunks plus if anyone ever wants to add it its easy enough to remove the define frees 3K
apps/plugins/lua/luaconf.h [diff]
apps/plugins/lua/lundump.c [diff]
William Wilgus
25th Jun 20:32 3e504c3: Fix reversal of "always/never" in "LCD setting > Sleep (After Backlight Off)"

The bug was introduced in a06d9c8. The patch also fixes some (more or less) related obsolete comments.
apps/settings.h [diff]
firmware/backlight.c [diff]
Sebastian Leonhardt
17th Jun 21:04 7b118ec: configure: add --32-bit option to build a 32-bit simulator/application

I use this to test duke3d in the sim, because it does some nasty pointer arithmetic with 32-bit ints.

Should be useful for other things as well.
tools/configure [diff]
Franklin Wei
17th Jun 14:03 213cdfc: Boomshine Fix rb.touchscreen_set_mode()
apps/plugins/boomshine.lua [diff]
William Wilgus
16th Jun 12:51 edd9341: sdl: add pointer to wiki for docs
apps/plugins/sdl/NOTES [diff]
Franklin Wei
16th Jun 12:22 b04f267: sdl: prevent simulator build from using pthreads

The simulator build will pull in the host SDL headers, which we can't filter out easily. A simple workaround is to simply remove the pthread include from our SDL.
apps/plugins/sdl/src/thread/SDL_thread_c.h [diff]
Franklin Wei
16th Jun 12:23 94e6a7d: duke3d: improve manual

Adds screenshots for all supported targets. Also adds a bit of information to point users to the data files.
manual/plugins/duke3d.tex [diff]
manual/plugins/images/ss-duke3d-128x128x16.png [new]
manual/plugins/images/ss-duke3d-128x160x16.png [new]
manual/plugins/images/ss-duke3d-128x96x16.png [new]
manual/plugins/images/ss-duke3d-132x80x16.png [new]
manual/plugins/images/ss-duke3d-160x128x16.png [new]
manual/plugins/images/ss-duke3d-176x132x16.png [new]
manual/plugins/images/ss-duke3d-176x220x16.png [new]
manual/plugins/images/ss-duke3d-220x176x16.png [new]
manual/plugins/images/ss-duke3d-240x320x16.png [new]
manual/plugins/images/ss-duke3d-240x400x16.png [new]
manual/plugins/images/ss-duke3d-320x240x16.png [new]
manual/plugins/images/ss-duke3d-320x240x24.png [new]
Franklin Wei
22nd May 08:38 1e076a7: jz7460: Disable IRQ-driven DMA transfers.

This greatly increases the stability of SD card write operations.

(I suspect the underlying problem is not IRQ operation itself, instead being exacerbated by it..)
firmware/target/mips/ingenic_jz47xx/ata-sd-jz4760.c [diff]
Solomon Peachy
31th May 13:17 e85a3ba: Agptek rocker: do not update display when not active
firmware/target/hosted/agptek/lcd-agptek.c [diff]
Marcin Bukat
31th May 08:40 2de2636: Fix IRAM overflow introduced in 7a8c9daf7ef

There is no easy way to determine iram available for test_mem plugin and PLUGIN_BUFFER_SIZE is definitely wrong.

Restore previous IRAM buffer sizing
apps/plugins/test_mem.c [diff]
Marcin Bukat
15th May 18:39 38cceb9: Work around DX90 compile error
apps/plugins/puzzles/rbcompat.h [diff]
Franklin Wei
15th May 16:17 75fe15a: puzzles: refactor rockbox frontend

Cleaned up a bit of copy-pasted code and added some useful comments.
apps/plugins/puzzles/README.rockbox [diff]
apps/plugins/puzzles/puzzles.make [diff]
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
15th May 16:16 f940276: puzzles: resync with upstream

This brings the puzzles source to upstream commit e2135d5. (I've made my own changes on top of that.)

This brings in a couple bugfixes and a new solver for Dominosa.
apps/plugins/puzzles/SOURCES [diff]
apps/plugins/puzzles/src/benchmark.pl [diff]
apps/plugins/puzzles/src/dominosa.R [diff]
apps/plugins/puzzles/src/dominosa.c [diff]
apps/plugins/puzzles/src/emccpre.js [diff]
apps/plugins/puzzles/src/findloop.c [diff]
apps/plugins/puzzles/src/galaxies.c [diff]
apps/plugins/puzzles/src/midend.c [diff]
apps/plugins/puzzles/src/pegs.c [diff]
apps/plugins/puzzles/src/puzzles.h [diff]
apps/plugins/puzzles/src/sort.c [new]
Franklin Wei
2019-04-22 4ed5727: nwztools: fix Makefile

Seems like newer versions of mingw will sponteanously add a .exe suffix to the output path if it doesn't have one, for example mingw-gcc -o scsitool bla will actually create scsitool.exe and of course this breaks my release script. Fix this by explicitely adding the .exe to avoid any problem
utils/nwztools/scsitools/Makefile [diff]
Amaury Pouly
2019-04-22 063ff29: nwztools: add DMP-Z1 to the database

This is one of those fancy gold-plated devices. Of course it breaks my scripts that were nicely expecting every device to start with NW.
firmware/target/hosted/sonynwz/nwz-db.c [diff]
firmware/target/hosted/sonynwz/nwz-db.h [diff]
utils/nwztools/database/gen_db.py [diff]
utils/nwztools/database/models.txt [diff]
utils/nwztools/database/nvp/dmp-z1.txt [new]
utils/nwztools/database/nvp/parse_all_nvp_headers.sh [diff]
utils/nwztools/database/series.txt [diff]
Amaury Pouly
2019-04-22 e41a563: Fix REMOTE_CONTEXT failure

IRC user <sazmap> brought an error in the action system to my attention the REMOTE_CONTEXT flag should be added if any remote button is pressed
apps/action.c [diff]
William Wilgus
2019-02-07 075108e: Fix skin_engine.c Album Art never dealloc'd on theme change

Patch from forum user Chris_s

http://forums.rockbox.org/index.php/topic,52708.0.html
apps/gui/skin_engine/skin_engine.c [diff]
docs/CREDITS [diff]
William Wilgus
2019-02-08 ed269af: Fix simulator/transflective: Display wasn't enabled on first keypress when backlight always off
uisimulator/common/lcd-common.c [diff]
Sebastian Leonhardt
2019-02-07 168e242: Fix the fix
firmware/target/hosted/sdl/lcd-bitmap.c [diff]
uisimulator/common/lcd-common.c [diff]
Sebastian Leonhardt
2019-02-07 26e0c64: Fix red and remove duplicated function declaration
firmware/export/backlight.h [diff]
firmware/target/hosted/sdl/lcd-bitmap.c [diff]
uisimulator/common/lcd-common.c [diff]
Sebastian Leonhardt
2016-05-02 e662ae4: Add YH820 current usage for runtime estimation
firmware/export/config/samsungyh820.h [diff]
Sebastian Leonhardt
2016-10-01 1c095a1: YH-820: prohibit to change time/date on some hardware versions

This patch will autodetect these players, where setting the time/date would leave the player in an unusable state.
apps/menus/time_menu.c [diff]
Sebastian Leonhardt
2016-06-29 053c4d0: transflective LCDs: fix "first buttonpress enables backlight only"

This should be done even if the backlight is set to "always off", i.e. if the LCD is sleeping, a button press should be "eaten" and just wake up the LCD.
firmware/drivers/button.c [diff]
Sebastian Leonhardt
2018-04-04 666405f: Simulator: improve simulation of transflective screens

This patch simulates the three possible states of a transflective LCD: backlight on (bright screen as usual), backlight off (dimmed screen) and LCD off (black screen). Makes use of already defined 'BACKLIGHT_OFF_ALPHA'.
firmware/target/hosted/sdl/lcd-bitmap.c [diff]
uisimulator/common/lcd-common.c [diff]
Sebastian Leonhardt
2016-06-28 2876859: Fix lcd not waking up when backlight is always off

This patch is relevant for targets with a transflective display. If the backlight was set to "always off" (e.g. to use the lcd in a pure passive way), and the sleep timer ran off, the LCD would stay disabled and didn't wake up when a button is pressed.
firmware/backlight.c [diff]
firmware/export/backlight.h [diff]
Sebastian Leonhardt
2016-06-25 03e63da: YH820: implement LCD sleep

use sleep setting to keep transflective LCD active without backlight
firmware/export/backlight.h [diff]
firmware/export/config/samsungyh820.h [diff]
firmware/target/arm/samsung/yh820/backlight-yh820.c [diff]
firmware/target/arm/samsung/yh820/lcd-yh820.c [diff]
Sebastian Leonhardt
2019-02-06 60f60d9: Fix tree.c static allocation detection during buffer move
apps/tree.c [diff]
William Wilgus
2019-02-03 1d893a0: pitchscreen: Fix compile on HWCODEC players.
apps/gui/pitchscreen.c [diff]
Solomon Peachy
2019-02-03 32e0745: Fix minor issues introduced in fe95127 (Playlist playing time)

* Custom statusbars inappropriately overwriten
* Off-by-one error displaying playlist position.
apps/onplay.c [diff]
Solomon Peachy
2019-01-01 fd9d4a8: Add speech feedback in pitchscreen

Patch by Igor Poretsky
apps/gui/pitchscreen.c [diff]
apps/lang/english.lang [diff]
Solomon Peachy
2019-01-31 ee2ab04: rocker: Correct a bad keymap in the bookmark screen

Bascially made it impossible to back out of the screen.
apps/keymaps/keymap-agptekrocker.c [diff]
Solomon Peachy
2019-01-01 0a6cad7: FS #12353: For car adapter mode, make delay before resuming configurable

Original patch by Stanislav Chizhik Udpated by Igor Poretsky & myself
apps/lang/english.lang [diff]
apps/lang/russian.lang [diff]
apps/menus/settings_menu.c [diff]
apps/misc.c [diff]
apps/settings.h [diff]
apps/settings_list.c [diff]
manual/configure_rockbox/system_options.tex [diff]
Solomon Peachy
2019-01-30 60c9df0: blackjack: various fixes

- fix double down wins/looses too much money
- fix splitting doubles lost/won amount of first split
- fix insurance pays out too litle
- fix splitting allows to overdraw account
- fix insurance allows to overdraw account
apps/plugins/blackjack.c [diff]
Sebastian Leonhardt
2018-12-14 fe95127: FS6338: Playlist playing time

Originally by Stephane Doyon. Updated by Alex Wallis, Igor Poretsky, and myself.
apps/lang/english.lang [diff]
apps/onplay.c [diff]
docs/CREDITS [diff]
manual/rockbox_interface/wps.tex [diff]
manual/working_with_playlists/main.tex [diff]
Solomon Peachy
2018-12-15 39b64f7: FS #10311 -- Add beep when navigating to beginning or end of list.

Originally by Stephane Doyon. Updated by Alex Wallis, Igor Poretsky, and myself.
apps/gui/list.c [diff]
apps/misc.c [diff]
apps/misc.h [diff]
Solomon Peachy
2019-01-25 f7a2c72: FS #13169: Initial Flemish translation from Nathan Follens
apps/lang/SOURCES [diff]
apps/lang/vlaams.lang [new]
Solomon Peachy
2019-01-25 b28709f: FS #13168: Updated Dutch translation from Nathan Follens
apps/lang/nederlands.lang [diff]
Solomon Peachy
2019-01-24 8cadef4: opus fix playback opustag skipping
lib/rbcodec/codecs/opus.c [diff]
William Wilgus
2019-01-24 07084f6: Fix host build of mkimxboot, mknwzboot, nwztools, and rbutil with crypto++

Necessary to get working builds on my Fedora 29 system.
rbutil/mkimxboot/Makefile [diff]
rbutil/mknwzboot/Makefile [diff]
rbutil/rbutilqt/rbutilqt.pro [diff]
utils/nwztools/upgtools/Makefile [diff]
utils/nwztools/upgtools/md5.cpp [diff]
utils/nwztools/upgtools/mg.cpp [diff]
Solomon Peachy
2019-01-24 9605237: opus fix comment skipping code

opus requires the comment header to be a valid file our codec attemps to skip the comment data in order to reduce the ram allocated originally it caused files with large album art to skip the beginning of tracks my first attempt at fixing this then caused files with low bitrates to do the same while fixing files with large album art

This patch should fix both although the initial start might be a bit slower but this shouldn't cause too much of an issue
lib/rbcodec/codecs/opus.c [diff]
William Wilgus
2018-11-25 cdd4708: lua rewrite boomshine

rewrite the logic of boomshine to make it more difficult especially small screens

rewrite of the game engine to make memory usage more consistent throught the level and decrease overall memory usage this also removes most of the stuttering in play

Add test of device speed this should improve very slow devices but the threshold might still need tweaked
apps/plugins/boomshine.lua [diff]
William Wilgus
2019-01-23 f3b532a: FS #13170: Updated Greek translation from Constantine Mountantonakis
apps/lang/greek.lang [diff]
Solomon Peachy
2019-01-12 0094353: opus optimize playback function

knocks off about .5 second from decode time not a big change but might help a bit on devices that barely achieve realtime
lib/rbcodec/codecs/opus.c [diff]
William Wilgus
2019-01-12 c70e40f: Add HAVE_LINEOUT_DETECTION to features.txt
apps/features.txt [diff]
Solomon Peachy
2018-11-05 7d24ef1: Add F_BANFROMQS to Advanced Keylock and Blacklight Exemptions

Both had 'Enabled' showing up a Add to Quick Screen option
apps/settings_list.c [diff]
William Wilgus
2018-11-07 3f6fed8: Fix potential buffer overflow in settings.c
apps/settings.c [diff]
William Wilgus
2019-01-03 d24edc6: Add HAVE_LINEOUT_DETECTION and associated logic

This allows targets to automatically switch audio settings when the line out is plugged/unplugged.

Only hooked up on the xDuoo X3, but there are other potential users.
apps/misc.c [diff]
firmware/drivers/button.c [diff]
firmware/export/button.h [diff]
firmware/export/config/xduoox3.h [diff]
firmware/kernel/include/queue.h [diff]
firmware/target/mips/ingenic_jz47xx/codec-jz4760.c [diff]
firmware/target/mips/ingenic_jz47xx/xduoo_x3/sadc-xduoo_x3.c [diff]
Solomon Peachy
2018-12-31 100f433: Fix Opus FS #13133 - Files with embedded artwork 45.8KiB+ skip near beginning

ogg_sync_reset() causes issues on the partial page boundary due to the next page (already in buffer) being discarded

instead seek next page boundary past complete page
lib/rbcodec/codecs/opus.c [diff]
William Wilgus
2018-12-14 976831e: Buflib add range checks blocks and crc_slot raise panic if out of range
firmware/buflib.c [diff]
William Wilgus
2018-12-26 929ea73: playlist.c suppress playlist access error on usb plug
apps/playlist.c [diff]
William Wilgus
2019-01-02 52ed74a: mips: Adjust main & irq stack sizes to fit in IRAM on all targets

New amounts:

7.50K main stack 0.75K irq stack

Prior values of 8K+1K overflowed IRAM by ~660 bytes on Onda 7x7 targets, but worked on the xDuoo X3.

(The discrepancy is due to the Onda targets having more LCD code shoved into IRAM.)
firmware/target/mips/ingenic_jz47xx/app.lds [diff]
firmware/target/mips/ingenic_jz47xx/boot.lds [diff]
Solomon Peachy
2018-12-25 36a50dd: mips: Use a separate IRQ stack & optimize IRQ handling a little

Should prevent the IRQ-related stack overflows seen on MIPS targets.
firmware/target/mips/ingenic_jz47xx/app.lds [diff]
firmware/target/mips/ingenic_jz47xx/boot.lds [diff]
firmware/target/mips/ingenic_jz47xx/crt0.S [diff]
Solomon Peachy
2019-01-01 5e8db16: FS #11711: Add ability to create bookmark from WPS hotkey

Original patch Michael Gentry Updated by Igor Poretsky
apps/onplay.c [diff]
apps/onplay.h [diff]
apps/settings_list.c [diff]
Solomon Peachy
2019-01-02 1b2fd89: Fix a capitalization typo in the ihifi770c configure target name.
tools/configure [diff]
Solomon Peachy
2019-01-02 9c86ac2: Fix compile wanings in pacbox and invadrox introduced in d4942cc
apps/plugins/invadrox.c [diff]
apps/plugins/pacbox/pacbox.h [diff]
Solomon Peachy
2018-06-29 d4942cc: Add Xuelin iHIFI 770/770C/800 support

Taken from the xvortex fork (Roman Stolyarov) Ported, rebased, and cleaned up by myself.
apps/SOURCES [diff]
apps/keymaps/keymap-ihifi770.c [new]
apps/keymaps/keymap-ihifi800.c [new]
apps/lang/english.lang [diff]
apps/lang/russian.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]
apps/plugins/mpegplayer/mpeg_settings.c [diff]
...and 65 more files.
Solomon Peachy
2019-01-01 af9459a: Updated Czech translation

Taken from Igor Poretsky's tree
apps/lang/czech.lang [diff]
Solomon Peachy
2019-01-01 88cae9d: Coldfire: Don't clobber alwarm wakeup signal in dualboot mode

(See FS #7814 for details)
firmware/target/coldfire/crt0.S [diff]
Solomon Peachy
2018-12-29 7e7ca0c: Fix Xduoo X3 bootloader build, and silence all warnings.

Also enable USB bootloader mode
bootloader/xduoox3.c [diff]
firmware/export/config/xduoox3.h [diff]
firmware/target/mips/ingenic_jz47xx/debug-jz4760.c [diff]
firmware/target/mips/ingenic_jz47xx/xduoo_x3/sadc-xduoo_x3.c [diff]
Solomon Peachy
2019-01-01 35930dd: Keymap improvements for the xDuoo X3

- Synchronized with actual state of Vortex version in general.
- Playback resume has been moved to the Power button.
- Option button acts identically in most contexts: main menu on short press and quickscreen on long press.
- Defined A-B repeat mode control buttons.
- Level change action in chessbox has been moved to the volume down button.

(Patch by Igor Poretsky)
apps/keymaps/keymap-xduoox3.c [diff]
apps/plugins/chessbox/chessbox_pgn.h [diff]
Solomon Peachy
2018-12-28 2c60948: Third attempt to shut up the warble build printf() warning.

(resorting to an explicit cast this time)
lib/rbcodec/codecs/librm/rm.c [diff]
Solomon Peachy
2018-12-28 c77348f: Another attempt to silence the warble build warning on 32-bit hosts
lib/rbcodec/codecs/librm/rm.c [diff]
Solomon Peachy
2018-12-25 6c2a7dd: build: Put all codec optiomization definitions in one place

It was already mostly there.
lib/rbcodec/codecs/codecs.make [diff]
lib/rbcodec/codecs/lib/libcodec.make [diff]
lib/rbcodec/codecs/libmad/libmad.make [diff]
lib/rbcodec/codecs/libspeex/libspeex.make [diff]
lib/rbcodec/codecs/libwmavoice/libwmavoice.make [diff]
Solomon Peachy
2018-12-25 4c933a1: build: Properly generate build dependency for autogenerated bitmap .h files

* bmp2rb generated a .h file that rockbox .c files used.
* .h files in .c files were used to generate dependency graphs for make
* When Make saw the .h file for the bitmap, it didn't know how what to do with them
* Only arose in parallel builds

Fixed this by adding explicit dependencies for the .h files as part of the existing 'bmpdepfile' function.

Solves the Xduoo X3 bootloader build failure that I could trigger 100% of the time by using 'make -j8'
tools/functions.make [diff]
Solomon Peachy
2018-12-23 9b3f22a: FS #7814 - Enable RTC Alarms on H300, X5, and M5

Original patch by Alexander Spyridakis Modified by Steve Bavin and Igor Poretsky Keymap fixes by Marianne Arnold
apps/keymaps/keymap-x5.c [diff]
firmware/drivers/rtc/rtc_pcf50606.c [diff]
firmware/export/config/iaudiom5.h [diff]
firmware/export/config/iaudiox5.h [diff]
firmware/export/config/iriverh300.h [diff]
manual/platform/iriverh300.tex [diff]
manual/platform/keymap-iaudiomx5.tex [diff]
Solomon Peachy
2018-12-24 df1d386: Hopefully silence the warning in the warble codec build.
lib/rbcodec/codecs/librm/rm.c [diff]
Solomon Peachy
2018-12-24 a71af17: Fix lua helpers -- supress line markers in preproc source generation scripts

In newer builds line markers prevent lua helper scripts from grabbing some inputs especially _bool

This patch adds the -P switch Inhibit generation of linemarkers in the output from the preprocessor. This might be useful when running the preprocessor on something that is not C code, and will be sent to a program which might be confused by the linemarkers.
apps/plugins/lua/lua.make [diff]
William Wilgus
2018-12-24 c45016d: Clean up a wanring with the updated turkish translation on ZEN targets.
apps/lang/turkce.lang [diff]
Solomon Peachy
2018-12-24 40b6d02: FS #13043: Updated Hungarian translation

(Thanks to Gergely Békési)
apps/lang/magyar.lang [diff]
docs/CREDITS [diff]
Solomon Peachy
2018-12-24 ccf9683: FS #13144: Updated Dutch translation

(Thanks to Nathan Follens)
apps/lang/nederlands.lang [diff]
docs/CREDITS [diff]
Solomon Peachy
2018-12-23 2c94ad9: Credits: Add Roman Levkin-Taymenev

(Updated Russian Translation)
apps/lang/russian.lang [diff]
docs/CREDITS [diff]
Solomon Peachy
2018-12-22 75fe78c: Handle SYS_POWEROFF event in recorder and chessbox plugins

Credit to Igor Poretsky
apps/plugins/chessbox/chessbox.c [diff]
apps/recorder/recording.c [diff]
Solomon Peachy
2018-12-22 7a718fc: Do not touch FM tuner when it is turned off

Credit to Igor Poretsky
apps/radio/presets.c [diff]
apps/radio/radio.c [diff]
Solomon Peachy
2018-12-23 d636c5e: FS #13148: Considerably updated Turkish translation

(Thanks to Malik Safak)
apps/lang/turkce.lang [diff]
docs/CREDITS [diff]
Solomon Peachy
2018-12-23 9c63292: Add missing CREDITS for updated French translation
docs/CREDITS [diff]
Solomon Peachy
2018-12-23 93f447a: FS13137: Update Polish translation

(Thanks, Adam Rak!)
apps/lang/polski.lang [diff]
docs/CREDITS [diff]
Solomon Peachy
2018-12-23 1ecc94e: FS #13162: Update French translation

(Thanks Guinness)
apps/lang/francais.lang [diff]
Solomon Peachy
2018-12-23 206a644: FS #13165: Updated Russian translation

(Thanks, Roman!)
apps/lang/russian.lang [diff]
Solomon Peachy
2018-12-22 e598ba1: Support using 'rbspeak' to generate voice files.

(Full credit to Igor Poretsky)
tools/configure [diff]
tools/voice.pl [diff]
Solomon Peachy
2018-12-22 928557b: AAC bitstream format files support

Files with extension "aac" in ADTS or ADIF format are now playable.

Full credit goes to Igor Poretsky.
apps/filetypes.c [diff]
lib/rbcodec/SOURCES [diff]
lib/rbcodec/codecs/SOURCES [diff]
lib/rbcodec/codecs/aac_bsf.c [new]
lib/rbcodec/codecs/codecs.make [diff]
lib/rbcodec/metadata/aac.c [new]
lib/rbcodec/metadata/metadata.c [diff]
lib/rbcodec/metadata/metadata.h [diff]
lib/rbcodec/metadata/metadata_parsers.h [diff]
Solomon Peachy
2018-12-22 9b9b30b: Realmedia related codecs fixes and enhancements

* More tolerance to the file format variations.
* AC3 coded files in realaudio format are now playable

Full credit to Igor Poretsky
lib/rbcodec/codecs/a52_rm.c [diff]
lib/rbcodec/codecs/atrac3_rm.c [diff]
lib/rbcodec/codecs/cook.c [diff]
lib/rbcodec/codecs/librm/rm.c [diff]
lib/rbcodec/codecs/librm/rm.h [diff]
lib/rbcodec/codecs/raac.c [diff]
lib/rbcodec/metadata/metadata.c [diff]
lib/rbcodec/metadata/rm.c [diff]
Solomon Peachy
2018-12-22 eee3f0c: FS #12610 - Clip+ Ticking Noise Fixed in Radio

Patch taken from Igor Poretsky's tree.

Original clip-radio-tick.patch modified to acts only when screen is deemed, or when recording, in order to preserve indicators functionality.
firmware/drivers/tuner/rda5802.c [diff]
firmware/drivers/tuner/si4700.c [diff]
Solomon Peachy
2018-12-22 6416c22: Czech translation update from Marek Salaba
apps/lang/czech.lang [diff]
Solomon Peachy
2018-12-15 b519959: Improved seeking in a52 codec

(Patch by Igor Poretsky)
lib/rbcodec/codecs/a52.c [diff]
Solomon Peachy
2018-12-22 d258edb: Fix Auto Ranged Time Fix Red for Database
apps/misc.c [diff]
William Wilgus
2018-12-22 4a8f263: Fix Auto Ranged Time Fix Red for Checkwps
apps/misc.c [diff]
apps/settings_list.c [diff]
William Wilgus
2018-12-17 a06d9c8: Auto-Ranging Time Formatting For Menus (hh:mm:ss:mss)

Unifies time formatting in settings_list.c allows time format to display as HH:MM:SS.MSS or any consecutive combination thereof
(hh:mm:ss, mm:ss, mm:ss.mss, ss.mss, hh, mm, ss ,mss) works in INT and TABLE settings with the addition of flag 'F_TIME_SETTING'

Time is auto-ranged dependent on value

Adds talk_time_intervals to allow time values to be spoken similar to display format: x Hours, x Minutes, x Seconds, x Milliseconds

Table lookups merged or removed from recording, clip meter and lcd timeout
-String_Choice replaced with TABLE_SETTING or INT_SETTING for these functions as well, cleaned-up cfg_vals that get saved to cfgfile

RTL Languages ARE supported

Negative values ARE supported

Backlight on/off are now Always and Never to share formatter with LCD Timeout

Added flag to allow ranged units to be locked to a minimum index

Added flag to allow leading zero to be supressed from the largest unit

merged talk_time_unit() and talk_time_intervals()

optimized time_split()

optimized format_time_auto()

Backlight time-out list same as original
apps/gui/option_select.c [diff]
apps/lang/english.lang [diff]
apps/misc.c [diff]
apps/misc.h [diff]
apps/playback.c [diff]
apps/recorder/peakmeter.c [diff]
apps/recorder/peakmeter.h [diff]
apps/recorder/recording.c [diff]
apps/screens.c [diff]
apps/settings.h [diff]
apps/settings_list.c [diff]
apps/settings_list.h [diff]
apps/talk.c [diff]
apps/talk.h [diff]
firmware/backlight.c [diff]
firmware/export/audio.h [diff]
firmware/export/backlight.h [diff]
William Wilgus
2018-12-21 b3356e3: puzzles: resync with upstream

This brings the code to upstream commit 3ece3d6 (I've made my own Rockbox- specific changes on top of that).

Changes include using C99 `bool' throughout, and minor logic fixes for some puzzles.
apps/plugins/puzzles/README.rockbox [diff]
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]
...and 86 more files.
Franklin Wei
2018-12-20 f08d218: Fix tree.c->dirbrowse panic from database browser

I set up panics on invalid entries throughout tree.c dirbrowser was checking for file attributes even when the result was unused, the database browser called this code with an invalid (to the tagcache) index

This patch fixes that oversight and also adds __func__ to the panics for easier sleuthing in the future
apps/tree.c [diff]
William Wilgus
2018-12-17 28f91ff: Lua Fix settings_helper for the gigaBeastS

the gigabeatS has an embedded struct that needs to be parsed
apps/plugins/lua/lua.make [diff]
apps/plugins/lua/settings_helper.pl [diff]
William Wilgus
2018-12-16 622f3f2: Synchronize Slovak language

(Thank you, Peter!)
apps/lang/slovak.lang [diff]
Solomon Peachy
2018-12-15 9d66b54: Lua add read/write access to global_status, global_settings, audio_current_track

moved items to rb.system added read access to audio_current_track and audio_next_track
apps/plugins/lua/lua.make [diff]
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/settings_helper.pl [new]
William Wilgus
2018-12-15 c2308bd: Fix HWCODEC builds.
apps/screens.c [diff]
apps/talk.c [diff]
Solomon Peachy
2018-12-15 d8ce84c: Fix compile failure due to a merge error in 4adad0bc1f508360999de176048f89025ce84b3e
apps/screens.c [diff]
Solomon Peachy
2018-12-08 75f7481: Voice: Don't omit "shutting down" speech warning when battery dies.

(Taken from Igor Poretsky's tree)
apps/misc.c [diff]
Solomon Peachy
2018-10-30 4adad0b: FS #6323: Speech for ID3 viewer, playlist catalog and playlist viewer

Modified from original ticket, Taken from Igor Poretsky's tree, and further modified by myself to incorporate feedback.
apps/bookmark.c [diff]
apps/filetypes.c [diff]
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/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]
...and 22 more files.
Solomon Peachy
2018-10-31 f061330: Fix Manual(s) -- Advanced Keylock

Manuals were showing Advanced Keylock even for devices that don't support it
manual/configure_rockbox/system_options.tex [diff]
William Wilgus
2018-10-30 bea9cf7: FS11473: Add bookmarking option: one per track.

Modified version from ticket, taken from Igor Poretsky's tree, and further modified to incorporate feedback.
apps/bookmark.c [diff]
apps/lang/english.lang [diff]
apps/settings.h [diff]
apps/settings_list.c [diff]
manual/appendix/config_file_options.tex [diff]
manual/configure_rockbox/bookmarking.tex [diff]
Solomon Peachy
2018-12-14 6f020ef: filetree.c add checks for invalid file entries

Admittedly I can not really think of a reason this would occur in normal use but if it does it'll result in a crash so better safe than sorry
apps/filetree.c [diff]
William Wilgus
2018-12-13 3f110da: Fix tree.c->tree_get_entry_at() buffer overflow

I observed a crash on buflib>move_block after dumping ram I noticed that the buffer for filetypes was being corrupted

tree_get_entry_at returns a entry from the buflib 'tree entry' buffer filetree.c->ft_load writes data to this buffer before checking if it has reached the last entry resulting in buffer overflow that overwrites the next entry in the buffer ['filetypes']

Patch checks that the index passed to tree_get_entry_at() is in range otherwise it returns NULL

Added checks + panic in other functions using tree_get_entry_at() Fixed tree_lock_cache() calls in playlist and filetree
apps/filetree.c [diff]
apps/playlist.c [diff]
apps/tree.c [diff]
apps/tree.h [diff]
William Wilgus
2018-12-10 ce0b31d: Shortcuts, Fix FS #13151 Deleting shortcut removes name, icon, talkclip

FS #13151 - Deleting item from shortcut menu corrupts the menu's display

The function that writes shortcut.txt didn't write existing name, icon or talkclip items

Now: writes all three supplying default values if the items don't exist
apps/shortcuts.c [diff]
William Wilgus
2018-12-10 4055f90: Fix host build for newer linux distros

I realized there was a better way to do this..

Instead of specifying a path just have gcc run the preprocessor (-E) on an input file consisting of only '#include <byteswap.h>' if it succeeds then we can use it if not then don't define OS_USE_BYTESWAP_H
tools/configure [diff]
William Wilgus
2018-12-09 62a5ed4: Fix possible truncation misc.c->output_dyn_value + use Kibytes

output_dyn_value now requires the count for number of units

Binary scale now shows Kibibytes instead of kilobytes (g#1742)

Fixes output for negative values as well
apps/debug_menu.c [diff]
apps/lang/english.lang [diff]
apps/menus/main_menu.c [diff]
apps/misc.c [diff]
apps/misc.h [diff]
apps/recorder/recording.c [diff]
apps/screens.c [diff]
apps/talk.c [diff]
William Wilgus
2018-12-08 74701a1: Decrease static code size recording.c

Forgot static for recording_step_levels()

There is no need to re-calculate split_time or split_bytes each loop you can't change them within recording screen -- these become constants

We don't need longs to store the conversion of minutes to seconds or MB to bytes these are now shorts and the conversion takes place within rec_timesplit_seconds() and rec_sizesplit_bytes() respectively
apps/recorder/recording.c [diff]
William Wilgus
2018-12-08 7907eb8: Fix truncation warning recording.c->recording_screen

Limit buf2 to enough characters(16) to display signed int & label

consolidate gain/volume settings
apps/recorder/recording.c [diff]
William Wilgus
2018-12-08 ed63ef0: Fix overlapping string region ape.c->read_ape_tags

Switch to strrchr to find the extension
lib/rbcodec/metadata/ape.c [diff]
William Wilgus
2018-12-08 78b2d13: Pdbox hide cast-function-type fix overlapping memcpy

dsoundfile.c used memcpy for overlapping memory regions switched to memmove Suppress the 160+ warnings for cast-function-type This plugin would require major work to fix these warnings
apps/plugins/pdbox/PDa/src/d_soundfile.c [diff]
apps/plugins/pdbox/pdbox.make [diff]
William Wilgus
2018-12-08 6bfd7da: Fix Truncation warning in cuesheet.c->browse_cuesheet

give user concrete indication that track title has been truncated by adding '~' at end of string
apps/cuesheet.c [diff]
William Wilgus
2018-12-08 0f5f5c3: Fix Sim & checkwps for newer distros

__builtin found fix for rbendian.h tools/configure defines SIM_USE_BYTESWAP_H if byteswap.h is found in
/usr/include/ maybe there is a better mechanism for this
firmware/include/rbendian.h [diff]
tools/configure [diff]
William Wilgus
2018-12-08 69c6c77: Fix speex warning lsp.c->lsp_to_lpc

I'm pretty sure this was a false positive
lib/rbcodec/codecs/libspeex/lsp.c [diff]
William Wilgus
2018-12-05 9450689: Fix Sim for newer distros

__builtin found fix for rbendian.h tools/configure defines SIM_USE_BYTESWAP_H if byteswap.h is found in
/usr/include/ maybe there is a better mechanism for this

genshortcut.sh is a simple script to make .desktop shortcut files several newer distros don't allow you to run the simulator from the file manager, this or perhaps a different method can probably be included while building a sim at a later date.

for now it can be run manually like so: similar to ../tools/configure run from your simulator folder
../tools/genshortcut.sh exepath shortname icon ex. ../tools/genshortcut.sh ./rockboxui clip+sim music-app
firmware/include/rbendian.h [diff]
tools/configure [diff]
tools/genshortcut.sh [new]
William Wilgus
2018-12-06 4e8ef17: More keymap refinements
apps/keymaps/keymap-agptekrocker.c [diff]
firmware/export/config/agptekrocker.h [diff]
Marcin Bukat
2018-12-03 b552a37: Tweak keymaps

Taken partly from: http://forums.rockbox.org/index.php/topic,51653.msg243214/topicseen.html#msg243214
apps/keymaps/keymap-agptekrocker.c [diff]
Marcin Bukat
2018-11-30 c1194ae: sonynwz: add NW-ZX300G nvp info

There is something weird going on: the Sony website has two different entries:
- NW-ZX300/NW-ZX300A/NW-A45/NW-A47/NW-A45HN/NW-A46HN
- NW-ZX300,NW-ZX300A update(20181004)/NW-ZX300G with slightly different nvp entries, but it is impossible to tell whether an NW-ZX300(A) belong to one or the other. Since the diff is very small, I am adding this as nw-zx300g but treat all devices as nz-zx300 since the destination node is the same and that is the main usage of the tool anyway.
utils/nwztools/database/nvp/nw-zx300g.txt [new]
Amaury Pouly
2018-11-30 110e3b4: sonynwz: add NW-A57 and NW-ZX300G to the database
firmware/target/hosted/sonynwz/nwz-db.c [diff]
firmware/target/hosted/sonynwz/nwz-db.h [diff]
utils/nwztools/database/models.txt [diff]
utils/nwztools/database/series.txt [diff]
Amaury Pouly
2018-11-30 4c31805: nwzstools/scsitool: try to guess series if possible

If the model is not known (ie model ID in the database) but another device from the same series is known, then the database information probably applies and one can use the "force" option -s to tell the tool to ignore the model ID. Automatically print such advice when the series can be guessed.
utils/nwztools/scsitools/scsitool.c [diff]
Amaury Pouly
2018-11-30 da752d0: nwztools/scsitool: add experimental command to list Sony devices
utils/nwztools/scsitools/scsitool.c [diff]
Amaury Pouly
2018-11-30 e01248e: rbscsi: add experimental API to list connected SCSI devices

For now it is only implemented on linux using /sys scanning
utils/scsi/rbscsi.c [diff]
utils/scsi/rbscsi.h [diff]
Amaury Pouly
2018-11-29 4365437: Indentation fix
utils/nwztools/scsitools/scsitool.c [diff]
Amaury Pouly
2018-06-01 110fd2c: Add the NWZ-A844 to the database

For some reason even Sony didn't have it in its list...
firmware/target/hosted/sonynwz/nwz-db.c [diff]
firmware/target/hosted/sonynwz/nwz-db.h [diff]
utils/nwztools/database/models.txt [diff]
utils/nwztools/database/series.txt [diff]
Amaury Pouly
2018-11-26 3d72119: mpegplayer fix warnings

this should fix 'warning: cast between incompatible function types'
apps/plugins/mpegplayer/disk_buf.c [diff]
apps/plugins/mpegplayer/mpeg_misc.c [diff]
apps/plugins/mpegplayer/mpeg_misc.h [diff]
apps/plugins/mpegplayer/stream_mgr.c [diff]
William Wilgus
2018-11-24 9ed486b: lua add LCD_DEFAULT_FG, fix 2-bit screen fg/bg inversion
apps/plugins/lua/include_lua/draw.lua [diff]
apps/plugins/lua/rocklib.c [diff]
William Wilgus
2018-11-17 e36edae: Lua fix crash on arm devices

This is a seemingly random bug that only affects (as far as I can tell) arm devices it isn't actually random as code changes cause it to appear/disappear based on alignment
apps/plugins/lua/rocklib.h [diff]
William Wilgus
2018-11-09 03718bd: Lua fix reader bug in lzio

When loading a file, Lua may call the reader function again after it returned end of input

https://www.lua.org/bugs.html#5.1.5-2
apps/plugins/lua/lzio.c [diff]
William Wilgus
2018-11-08 b69faf0: lua update to 5.1.5

Modify Rocklua towards upstream 5.1.5

Clean up some of the Rocklua implementation
apps/plugins/lua/lauxlib.c [diff]
apps/plugins/lua/lauxlib.h [diff]
apps/plugins/lua/lbaselib.c [diff]
apps/plugins/lua/lcode.c [diff]
apps/plugins/lua/ldo.c [diff]
apps/plugins/lua/lgc.c [diff]
apps/plugins/lua/liolib.c [diff]
apps/plugins/lua/llex.c [diff]
apps/plugins/lua/lmathlib.c [diff]
apps/plugins/lua/loadlib.c [diff]
apps/plugins/lua/lparser.c [diff]
apps/plugins/lua/lstrlib.c [diff]
apps/plugins/lua/lua.h [diff]
apps/plugins/lua/lvm.c [diff]
apps/plugins/lua/rocklibc.h [diff]
William Wilgus
2018-11-06 de6618a: Fix vuprintf fix possible %s buffer over-read

when precision is not specified memchr recieved -1 for count count is unsigned so it looks in a potentially very large area for a terminator and returns this whole area if \0 is not found

Instead we should use memchr when precision is specified and if precision is not specified use strlen

Fixes 60+Mb Config.cfg files
firmware/common/vuprintf.c [diff]
William Wilgus
2018-10-30 fa87607: speech: additional correction rules for acronyms etc.

Taken from Igor Poretsky's tree.
tools/voice-corrections.txt [diff]
Solomon Peachy
2018-08-06 74dd276: debug: Wrap rb_backtrace with HAVE_RB_BACKTRACE instead of CPU_ARM

Basically, preparation for a non-ARM backtrace support.
firmware/export/system.h [diff]
firmware/panic.c [diff]
Solomon Peachy
2018-11-02 b5fb978: Lua fix pixel-painter score save

pixel-painter was depending on the old readline code that returned nil for empty lines however empty lines should have returned an empty string
apps/plugins/pixel-painter.lua [diff]
William Wilgus
2018-10-17 8507948: Lua Boomshine Update with circles + levels

added a few more levels and increased difficulty based on level

Rliimage allows us to use circles in boomshine Optimized some of the code to exceed the speed of the original
apps/plugins/boomshine.lua [diff]
William Wilgus
2018-11-02 d9f9def: Lua fix failure to read lines longer than LUAL_BUFFERSIZE

Readline didn't handle lines longer than LUAL_BUFFERSIZE it now reads these in chunks.
apps/plugins/lua/liolib.c [diff]
William Wilgus
2018-11-01 f6e10b8: Lua optimize combine and rework similar functions

rb.strncasecmp strcasecmp just exclude count -> rb.strncasecmp(s1, s2)

rb.backlight_brightness_set backlight_set_brightness -- redundant rb.backlight_brightness_use_setting -> rb.backlight_brightness_set()

rb.buttonlight_brightness_set buttonlight_set_brightness -- redundant rb.buttonlight_brightness_use_setting -> rb.buttonlight_brightness_set()

rb.mixer_frequency rb.mixer_set_frequency -> mixer_frequency(freq) rb.mixer_get_frequency -> mixer_frequency

rb.backlight_onoff rb.backlight_on -> rb.backlight_onoff(true) rb.backlight_off -> rb.backlight_onoff(false)

rb.touchscreen_mode rb.touchscreen_set_mode -> rb.touchscreen_mode(mode) rb.touchscreen_get_mode -> rb.touchscreen_mode()

rb.schedule_cpu_boost rb.trigger_cpu_boost -> rb.schedule_cpu_boost(true) rb.cancel_cpu_boost -> rb.schedule_cpu_boost(false)

Includes rbcompat.lua for backwards compatibility if your script is broken by this change you simply add
`require("rbcompat")` to the top for the old functionality
apps/plugins/lua/include_lua/rbcompat.lua [new]
apps/plugins/lua/lua.make [diff]
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib_aux.pl [diff]
William Wilgus
2018-11-01 bb025e3: lua fix rlimage FB_SCALARPACK()

FB_SCALARPACK(lua_tointeger()) was calling lua_tointeger 3x on color targets
apps/plugins/lua/rocklib_img.c [diff]
William Wilgus
2018-11-01 9b385f3: Lua fix dir string constants and pcm_play_pause & pcm_set_frequency

String constants were already expanded in the first macro pcm functions were looking for stack position #1 when they needed stack pos #2
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib.h [diff]
William Wilgus
2018-10-30 be7a58c: Lua Fix utf8encode, remove utf16 functions

The auto generated utf8/16 encode/decode functions did not work. Upon implementing them correctly I found that lua handles the utf-8 form properly but I could not get utf-16 to work without crashing maybe someone can come along later and implement utf-16 safe string functions but for now utf-16 is removed.
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib_aux.pl [diff]
William Wilgus
2018-10-31 bbfe477: Lua Add underscores in audio, pcm, playlist functions

Lessen confusion for end users looking for the underlying function names in plugin.h
apps/plugins/lua/include_lua/audio.lua [diff]
apps/plugins/lua/include_lua/pcm.lua [diff]
apps/plugins/lua/include_lua/playlist.lua [diff]
apps/plugins/lua/rocklib.c [diff]
William Wilgus
2018-10-30 74fe520: lua consolidate pcm_ functions

The way to call the pcm functions has changed rb.pcm("option", var) rb.pcm_set_frequency(freq) = becomes rb.pcm("pcmsetfrequency", freq)

added pcm.lua to the includes for conversion to old functions if your script is broken by this change you simply add
`require("pcm")` to the top for the old functionality

added rb.pcm("calculatepeaks")
apps/plugins/lua/include_lua/pcm.lua [new]
apps/plugins/lua/lua.make [diff]
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib_aux.pl [diff]
William Wilgus
2018-10-30 2e1ca20: Lua restore audio_set_recording_gain, audio_set_output,input

Did not mean to wipe out these function when I consolidated audio

Made the regex for audio_ and playlist_ exact matches instead of fuzzy
apps/plugins/lua/rocklib_aux.pl [diff]
William Wilgus
2018-10-30 6d8d242: Lua update strftime.c from dietlibc source

Adds %F -- %Y-%m-%d Fixes possible buffer overflow when writing final \0 Frees a bit of code on NON-RTC targets
apps/plugins/lua/strftime.c [diff]
William Wilgus
2018-10-29 eab73b3: Lua replace fscanf

Rocklua was using the full fscanf implementation to simply read %ld for the file:read("*n") function wasting 1k on unneeded/unused functionality

Instead, I've implemented a filetol function to duplicate it without the extra overhead using strtol which as an added bonus ERANGE errors now resolve to LONG_MIN and LONGMAX instead of integer overflow

filetol() reads long int from an open file, skips preceding whitespaces returns -1 if error, 1 on success.
*num set to LONG_MAX or LONG_MIN on overflow. If number of digits is > than LUAI_MAXNUMBER2STR filepointer will continue till the next non digit but buffer will stop being filled with characters. Preceding zero is ignored.
apps/plugins/lua/SOURCES [diff]
apps/plugins/lua/fscanf.c [deleted]
apps/plugins/lua/liolib.c [diff]
apps/plugins/lua/rockaux.c [diff]
apps/plugins/lua/rocklib.h [diff]
apps/plugins/lua/rocklibc.h [diff]
William Wilgus
2018-10-28 cc0a4c6: Lua remove strncat.c & strcspn.c
apps/plugins/lua/README [diff]
apps/plugins/lua/SOURCES [diff]
apps/plugins/lua/lobject.c [diff]
apps/plugins/lua/strcspn.c [deleted]
apps/plugins/lua/strncat.c [deleted]
William Wilgus
2018-10-27 df8233e: Lua expand multiple screen support

Some of the lcd functions had support for multiple screens but this wasn't very safe since the screen number wasn't bounded within the screens[] array This adds support for all the lcd functions along with checking that screen# is bounded properly, adds around 600 bytes to devices with a remote screen devices without a remote screen lock to SCREEN_MAIN
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib_aux.pl [diff]
apps/plugins/lua/rocklib_img.c [diff]
William Wilgus
2018-10-26 80352c2: Lua rliimage optimize rli_marshal, rli_copy, lcd_xxx_bitmap

rli_marshal and rli_copy allow the use of a custom lua function instead of the built-ins, this custom function can signal to stop before the whole image is iterated.

Originally it was checking for a return of 0 which was additional overhead for the built-in functions
(which never stop early) as well. Now custom_transform sets the x & y deltas to 0 to indicate early exit removing an extra 'if' per cycle and return from all of the rli_transform functions

The lcd_xxx_bitmap functions all require x, y, w, h, screen these calls have been consolidated into a single function get_bmp_bounds()
apps/plugins/lua/rocklib_img.c [diff]
William Wilgus
2018-10-15 20b91a8: codecs: Fix elapsed time calculation for large files

In particular, this solves seeking glitches seen in ~6 hr mp3 files.

(Patch taken from Igor Poretsky's tree)
lib/rbcodec/codecs/aac.c [diff]
lib/rbcodec/codecs/alac.c [diff]
lib/rbcodec/codecs/ape.c [diff]
lib/rbcodec/codecs/mpa.c [diff]
lib/rbcodec/codecs/mpc.c [diff]
lib/rbcodec/codecs/shorten.c [diff]
lib/rbcodec/codecs/speex.c [diff]
Solomon Peachy
2018-10-29 0120ecd: sonynwz: add nvp map for NW-A50 series
firmware/target/hosted/sonynwz/nwz-db.c [diff]
firmware/target/hosted/sonynwz/nwz-db.h [diff]
utils/nwztools/database/nvp/nw-a50.txt [new]
Amaury Pouly
2018-10-29 8a4cb5e: sonynwz: add NW-A55 to database
firmware/target/hosted/sonynwz/nwz-db.c [diff]
firmware/target/hosted/sonynwz/nwz-db.h [diff]
utils/nwztools/database/models.txt [diff]
utils/nwztools/database/series.txt [diff]
Amaury Pouly
2018-10-28 73f2bd9: Lua remove gmtime.c use rb_plugin version instead
apps/plugins/lua/SOURCES [diff]
apps/plugins/lua/gmtime.c [deleted]
apps/plugins/lua/rockaux.c [diff]
William Wilgus
2018-10-25 5449500: Lua Rlimage metatable

Put rliimage functions into the rb.image metatable instead of the rb. table
apps/plugins/lua/rocklib_img.c [diff]
William Wilgus
2018-10-25 55533c4: Lua Fix kbd_input

While luaL_addstring() works perfectly fine for the final buffer once Lual_pushresult() is called kbd_input doesn't display a previous input properly since the buffer hasn't been finalized yet
apps/plugins/lua/rocklib.c [diff]
William Wilgus
2018-10-22 b5786de: Lua cleanup kbd_input, gui_syncyesno_run, do_menu

Removes unneeded functions from kbd_input Consolidates message filling function for gui_syncyesno_run & do_menu
apps/plugins/lua/rocklib.c [diff]
William Wilgus
2018-10-24 e4c5f5d: lua consolidate playlist_ functions

The way to call the playlist functions has changed rb.playlist("option", var) rb.playlist_add(filename) = becomes rb.playlist("add", filename)

added playlist.lua to the includes for conversion to old functions if your script is broken by this change you simply add `require("playlist")` to the top for the old functionality

added rb.playlist_tracks(dir, filename) to playlist.lua this will allow you to add all tracks in a playlist.m3u8 to a lua table
apps/plugins/lua/include_lua/playlist.lua [new]
apps/plugins/lua/lua.make [diff]
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib_aux.pl [diff]
William Wilgus
2018-10-24 b670fcd: lua add audio_play consolidate audio_ functions

audio_play was removed from the rocklib I assume due to inconsistent behavior I've readded it with a check for audio paused which instead uses rewind/ff and then resumes audio

the way to call the audio functions has changed as well rb.audio("option", var) so rb.audio_play(0, 0) becomes rb.audio("play", 0, 0) audio_audio_flush_and_reload_tracks becomes rb.audio("flushandreloadtracks")

all functions except audio("getfilepos") return the previous (or still current) status

added audio.lua to the includes for conversion to old functions if your script is broken by this change you simply add `require("audio")` to the top for the old functionality
apps/plugins/lua/include_lua/audio.lua [new]
apps/plugins/lua/lua.make [diff]
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib_aux.pl [diff]
William Wilgus
2018-10-24 20b98f6: Lua fix create_numbered_filename

I didn't realize that some devices used the *num variable this fixes that oversight
apps/plugins/lua/rocklib.c [diff]
William Wilgus
2018-10-22 df4cb9b: Lua fix strip_extension and create_numbered_filename

Both of these functions modified the string in the lua stack

per lua manual:
'When a C function receives a string argument from Lua, there are only two rules that it must observe: Not to pop the string from the stack while accessing it and never to modify the string'

strip_extension will still work with old parameters and is thus backwards compatible strip_extension("filename")

create_numbered_filename has changed slightly and IS NOT backwards compatible

create_numbered_filename(path, prefix, suffix, [number])
(number defaults to -1)
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib_aux.pl [diff]
William Wilgus
2018-10-22 9489843: lua move rocklib_img to its own separate loadable module

allows rocklib_img to be excluded if needed

stops rocklib_aux from generating redundant prototypes for lcd_mono_bitmap[_part]
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib_aux.pl [diff]
apps/plugins/lua/rocklib_img.c [diff]
apps/plugins/lua/rocklib_img.h [diff]
apps/plugins/lua/rocklua.c [diff]
William Wilgus
2018-10-18 7a132a2: Fix playback.c audio_track_count() warning

changes return to unsigned int to match underlying aliased function
apps/debug_menu.c [diff]
apps/playback.c [diff]
apps/playback.h [diff]
William Wilgus
2018-10-18 7c2295e: Diacritic.c add newline to EOF
firmware/common/diacritic.c [diff]
William Wilgus
2017-11-09 b977b77: Optimize is_diacritic

is_diacritic is used for pretty much all of the text display sizing Timing here matters, so important it uses a priority buffer in order to cut down on searching the database.

This patch is verified functionally equlivalent but saves 80 bytes and is ~20% faster for the clip+ I tested it on

Several things were done:

Optimizing the copy loop for the priority buffer

Globbing some operations together

but the main one has to do with the database structure its self
-- Rather than a bit packed struct it combines the lower 8 bytes into one value [info] and uses flags to access the values instead
firmware/common/diacritic.c [diff]
William Wilgus
2018-10-15 dd40c46: Fix menu warnings

change offending bool return to int

warning: cast between incompatible function types from
'_Bool (*)(void)' to 'int (*)(void)' [-Wcast-function-type]

forgot to remove -- typedef int (*menu_function)(void);
apps/alarm_menu.c [diff]
apps/alarm_menu.h [diff]
apps/debug_menu.c [diff]
apps/debug_menu.h [diff]
apps/enc_config.c [diff]
apps/enc_config.h [diff]
apps/menu.h [diff]
apps/menus/eq_menu.c [diff]
apps/menus/eq_menu.h [diff]
apps/menus/main_menu.c [diff]
apps/menus/playlist_menu.c [diff]
apps/menus/radio_menu.c [diff]
apps/menus/recording_menu.c [diff]
apps/menus/settings_menu.c [diff]
apps/menus/time_menu.c [diff]
apps/screens.c [diff]
apps/screens.h [diff]
apps/settings.c [diff]
apps/sound_menu.h [diff]
apps/tagtree.c [diff]
apps/tagtree.h [diff]
apps/tree.c [diff]
apps/tree.h [diff]
William Wilgus
2018-10-15 e6b23a8: onda: fix compiler warning in boot loader
bootloader/ondavx747.c [diff]
Solomon Peachy
2018-10-13 07fed90: lua optimize current_path function

frees up around 500 bytes by using the builtin string functionality
apps/plugins/lua/loadlib.c [diff]
apps/plugins/lua/rockaux.c [diff]
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib.h [diff]
William Wilgus
2018-10-12 0b7a8d5: Lua remove unusable/unneeded functions from rocklib_aux

rocklib_aux is auto generated from plugin.h there are a few functions that get added automatically that are unusable without their companion functions or duplicate functionality already supplied by lua

Duplicated functionality: rb->rand, rb->srand
-- see math.rand math.srand

rb->remove, rb->rename
-- see os.remove, os.rename

Unusable: rb->open_utf8
-- this should be added to the lua file open routines (if at all)

rb->codec_run_proc, rb->codec_close
-- without rb->codec_load_file these are pointless

rb->timer_set_period, timer_unregister
-- even with timer_register implemented lua is not
-- reentrant and crashes the state when timer fires

Shouldn't be used!: rb->strlcpy, rb->strlcat, rb->strcpy, rb->strcat
-- lua reuses strings by hashed values you break this contract if
-- you change strings behind its back plus lua provides a way to
-- do these functions safely within the strings api
apps/plugins/lua/rocklib_aux.pl [diff]
William Wilgus
2018-10-09 d2cef81: mips: fix some compile warnings.
apps/plugins/mpegplayer/video_out_rockbox.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/onda_vx747/sadc-onda_vx747.c [diff]
firmware/target/mips/ingenic_jz47xx/onda_vx767/sadc-onda_vx767.c [diff]
Solomon Peachy
2018-10-09 53d72a8: fix builds broken by the selective stack bump for opus seeking.
apps/codec_thread.c [diff]
Solomon Peachy
2018-10-09 71abdf5: mips: jz4740: JZ4740 does not have a MSC clock source select.
firmware/target/mips/ingenic_jz47xx/ata-sd-jz4740.c [diff]
Solomon Peachy
2018-10-08 046cc49: Fix red rocklib_img 32-24 bit targets

int is an incompatible type for targets that have 32bit fb_data need to use FB_SCALARPACK for them
apps/plugins/lua/include_lua/color.lua [diff]
apps/plugins/lua/include_lua/draw.lua [diff]
apps/plugins/lua/include_lua/lcd.lua [diff]
apps/plugins/lua/include_lua/print.lua [diff]
apps/plugins/lua/rocklib_img.c [diff]
William Wilgus
2018-09-23 c0682e0: Clean up rocklib_img

optimize both size and speed fix invert for color screens
apps/plugins/lua/include_lua/blit.lua [diff]
apps/plugins/lua/include_lua/color.lua [diff]
apps/plugins/lua/include_lua/draw.lua [diff]
apps/plugins/lua/include_lua/image.lua [diff]
apps/plugins/lua/include_lua/lcd.lua [diff]
apps/plugins/lua/include_lua/print.lua [diff]
apps/plugins/lua/rocklib_img.c [diff]
William Wilgus
2018-09-17 e4b8433: lua rocklib cleanup

removes tslf allocations from do_menu and gui_syncyesno_run in favor of lua_newuserdata

removes some luaL_opt functions in favor of equivalent lua_to functions

moves some definitions to the rocklib.h file
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib.h [diff]
William Wilgus
2018-08-31 ebaddc6: build: Log the zipfile creation
tools/root.make [diff]
Solomon Peachy
2018-09-21 3e209f3: misc: Fix some assorted compiler warnings
apps/codec_thread.c [diff]
firmware/storage.c [diff]
tools/rbspeex/rbspeexdec.c [diff]
tools/voicefont.c [diff]
Solomon Peachy
2018-08-19 e184251: fix FS #13060 - Seeking in long opus files leads to crash on Sansa Clip+

- increase decoder thread stack size just enough (2KiB) to avoid stack overflows when seeking in opus files
- only do so on devices with at least 8MiB of RAM
apps/codec_thread.c [diff]
Martin Nowak
2018-09-20 a454b7f: jz4760: Lots of stability fixes to the USB driver.

It actually works for transferring data now!

Igor Poretsky gets full credit for this patch.
docs/CREDITS [diff]
firmware/target/mips/ingenic_jz47xx/usb-jz4760.c [diff]
Solomon Peachy
2018-09-05 a26c1c1: xduoo_x3: Disable keypress IRQ since we poll for keypresses.
firmware/target/mips/ingenic_jz47xx/xduoo_x3/sadc-xduoo_x3.c [diff]
Solomon Peachy
2018-09-05 640ada0: jz4760: Enhancements and fixes to SD driver.

* Fully Interrupt-driven, with proper task yielding
* Much more robust error handling
* Eliminate duplicate code
* Pile of bugfixes

(Much of this adapted from Igor Poretsky's tree)
firmware/target/mips/ingenic_jz47xx/ata-sd-jz4760.c [diff]
Solomon Peachy
2018-09-05 8edf405: jz7460: Silence codec when changing playback frequency/mode

Silences some annoying clicks.
firmware/target/mips/ingenic_jz47xx/codec-jz4760.c [diff]
Solomon Peachy
2018-08-31 1020897: jz7640: SD driver improvements:

* Better multidrive support
* Common slot1/slot2 handling code
firmware/target/mips/ingenic_jz47xx/ata-sd-jz4760.c [diff]
Solomon Peachy
2018-08-30 679a0bd: jz74x0: MSC clock needs to be divided from PLL clock.
firmware/target/mips/ingenic_jz47xx/ata-sd-jz4740.c [diff]
firmware/target/mips/ingenic_jz47xx/ata-sd-jz4760.c [diff]
Solomon Peachy
2018-08-29 72820d8: jz4760: Greatly enhance debug code and silence some compilation warnings.
firmware/export/jz4760b.h [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/debug-jz4760.c [diff]
firmware/target/mips/ingenic_jz47xx/i2c-jz4760.c [diff]
Solomon Peachy
2018-07-28 08ab3ae: Get rid of the last remnants of HAVE_FUNCTIONAL_MODE

Signed-off-by: Solomon Peachy
firmware/export/audiohw_settings.h [diff]
firmware/sound.c [diff]
Solomon Peachy
2018-08-29 3671f92: Xduoo_X3: Update target configuration
firmware/export/config/xduoox3.h [diff]
Solomon Peachy
2018-09-13 dc6f23e: lua optimize integer and string consts in rocklib

use a table approach for registering integer / string constants
apps/plugins/lua/rocklib.c [diff]
William Wilgus
2018-08-23 733c20d: lua move RLIMAGE to own file
apps/plugins/lua/SOURCES [diff]
apps/plugins/lua/rocklib.c [diff]
apps/plugins/lua/rocklib.h [diff]
apps/plugins/lua/rocklib_img.c [new]
apps/plugins/lua/rocklib_img.h [new]
William Wilgus
2018-08-20 be801c6: mips: Update the MIPS threading code

Taken from Amaury Pouly's Fiio X1 patches in gerrit.

Xduoo X3 no longer panics on startup
firmware/asm/mips/thread-mips32.c [diff]
firmware/asm/mips/thread.h [diff]
Solomon Peachy
2018-09-07 734be0d: MIPS: fix memset()

swr/swl instructions used for word aligning were wrong. This made memset() terribly broken. I can't imagine how it went uncaught for soooo long. Spotted by Solomon Peachy.

I run unit tests for alignments 0,1,2,3 size 1, 2, 3, 4, 5, 63, 64, 65, 127, 128, 129; and fill pattern 0x00 and other (since 0 is special case in this implementation).
firmware/asm/mips/memset.S [diff]
utils/hwstub/stub/asm/mips/memset.S [diff]
Marcin Bukat
2018-09-01 b1ee789: libmad: Back out a change that disabled optimization for libmad.

(Caused non-realtime playback on mips..)
lib/rbcodec/codecs/libmad/libmad.make [diff]
Solomon Peachy
2018-07-27 91500e1: pacbox: fix screen and buttons for Creative Zen

* rotate screen counterclockwise
* rotate directional buttons
apps/plugins/pacbox/pacbox.h [diff]
apps/plugins/pacbox/pacbox_lcd.c [diff]
Sebastian Leonhardt
2018-07-31 5dfcadc: manual: nitpicking on '-' character and other minor details
manual/advanced_topics/main.tex [diff]
manual/appendix/appendix.tex [diff]
manual/appendix/config_file_options.tex [diff]
manual/appendix/fdl.tex [diff]
manual/appendix/wps_tags.tex [diff]
manual/getting_started/installation.tex [diff]
manual/plugins/frotz.tex [diff]
manual/plugins/main.tex [diff]
manual/plugins/mpegplayer.tex [diff]
manual/plugins/superdom.tex [diff]
manual/plugins/zxbox.tex [diff]
manual/rockbox_interface/tagcache.tex [diff]
Sebastian Leonhardt
2017-01-13 7442742: iPod Classic: disable IRAM1

On Classic, IRAM1 (second 128Kb of a total of 256KB available IRAM) is slower than DRAM. Codecs that actually are using regions of IRAM1 runs faster when DRAM is used, so IRAM1 is disabled and only IRAM0 remains enabled: 48KB for core and 80KB for codecs/plugins.

The next test_codec results shows how decode time is decreased:

file boosted unboosted
*.ra ~1.5% ~0.5%
*.mpc ~21% ~4.5%
*.ogg ~0.5% ~0% nero_he*.m4a ~8% ~1% nero*.m4a ~25% ~7% wmapro*.wma ~4.5% ~0% wma*.wma ~25% ~7%

In addition there is a small power save when IRAM1 HW is disabled.
apps/plugins/plugin.lds [diff]
firmware/target/arm/s5l8702/app.lds [diff]
firmware/target/arm/s5l8702/pcm-s5l8702.c [diff]
firmware/target/arm/s5l8702/system-s5l8702.c [diff]
lib/rbcodec/codecs/libcook/cook.h [diff]
lib/rbcodec/codecs/libfaad/common.h [diff]
lib/rbcodec/codecs/libffmpegFLAC/bitstream.h [diff]
lib/rbcodec/codecs/libmusepack/mpcdec.h [diff]
lib/rbcodec/codecs/libspc/spc_codec.h [diff]
lib/rbcodec/codecs/libwma/wmadec.h [diff]
lib/rbcodec/codecs/libwmapro/wmaprodec.h [diff]
Cástor Muñoz
2016-07-31 8f38f85: Workaround for usb_storage_init_connection() panic

For s5l8701, s5l8702 and as3525v2 targets.

The crash occurs when USB is inserted or extracted while the playlist is being loaded or updated (it could take a few seconds for huge playlists), at this point all buflib memory is allocated and not freed before usb_starage_init_connection() is executed.

This workaround mitigates this panic by using static memory for USB buffers, so this memory cannot be used for other tasks, in addition the problem still persist when playlist load is 'paused' by USB insertion and then updated after USB extraction.
firmware/usbstack/usb_storage.c [diff]
Cástor Muñoz
2018-07-29 210881c: Remove leftover merge conflict marker
firmware/target/hosted/sdl/sim-ui-defines.h [diff]
Franklin Wei
2018-07-29 e9bdb4b: Fix syntax error in builds.pm

This should fix the build system.
tools/builds.pm [diff]
Franklin Wei
2018-07-28 d8bd356: Revert "As3525 v1/v2 Add power savings menu"

This reverts commit 6f0320a9535bc1aa81d83fa879ac14d5ee603658.
apps/features.txt [diff]
apps/lang/english.lang [diff]
apps/menus/settings_menu.c [diff]
apps/settings.h [diff]
apps/settings_list.c [diff]
firmware/export/config.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/sansafuzev2.h [diff]
firmware/target/arm/as3525/ascodec-as3525.c [diff]
firmware/target/arm/as3525/clock-target.h [diff]
firmware/target/arm/as3525/sansa-clipplus/lcd-clip-plus.c [diff]
firmware/target/arm/as3525/sansa-clipzip/lcd-clipzip.c [diff]
firmware/target/arm/as3525/sd-as3525.c [diff]
firmware/target/arm/as3525/sd-as3525v2.c [diff]
firmware/target/arm/as3525/system-as3525.c [diff]
firmware/target/arm/as3525/system-target.h [diff]
manual/configure_rockbox/system_options.tex [diff]
William Wilgus
2018-07-28 16f10e2: Revert "Fix Red on PowerSave in Simulator"

This reverts commit 568b81202ebd24a3f7e9efe0558b5f6beed05b44.
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/sansafuzev2.h [diff]
firmware/target/arm/as3525/sd-as3525.c [diff]
William Wilgus
2018-07-28 c75aac8: Slightly raise voltage on FuzeV2 devices.

Some devices seem to have trouble accessing the storage at lower voltages.
firmware/target/arm/as3525/system-as3525.c [diff]
Michael Giacomelli
2018-07-28 3e91ad5: Fix download link for the MIPS toolchain. tools/rockboxdev.sh [diff]
Michael Giacomelli
2018-06-28 0662793: Add cleaned-up xDuoo X3 support

Cleaned up, rebased, and forward-ported from the xvortex fork.

(original credit to vsoftster@gmail.com)

Signed-off-by: Solomon Peachy
apps/SOURCES [diff]
apps/keymaps/keymap-xduoox3.c [new]
apps/menus/sound_menu.c [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/greyscale.c [diff]
apps/plugins/imageviewer/imageviewer_button.h [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 84 more files.
Solomon Peachy
2017-11-19 b3e2bd6: Update MIPS toolchain to GCC 4.9.4 and binutils 2.26.1, update configure
tools/configure [diff]
tools/rockboxdev.sh [diff]
Amaury Pouly
2018-07-28 8fb1740: Fix scroll_engine truncation

fix one off error
firmware/export/scroll_engine.h [diff]
William Wilgus
2018-07-28 568b812: Fix Red on PowerSave in Simulator
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/sansafuzev2.h [diff]
firmware/target/arm/as3525/sd-as3525.c [diff]
William Wilgus
2018-07-27 6f0320a: As3525 v1/v2 Add power savings menu

Allow user to select cpu undervolt

There have been quite a few issues across the SANSA AMS line related to CPU undervolting while most players show greatly increased runtime some crash. Rather than constanly upping the voltage we now have a setting with a safe value for all players and the option for lower voltages

I plan to add a few other options here later such as disk timings and maybe some other clocks/experimental settings

Added: Disk Low speed option for AS3525v2 devices cuts frequency to 12 MHz from 24 MHz Added: Disk Low speed option for AS3525v1 devices cuts frequency to 15.5 MHz from 31 MHz

Added: I2c Low Speed AS3525 devices, should be bigger improvement for v1 devices

Fixed: Debug menu for AS3525v2 No SDSLOT frequency, Showed IDE freq though it is unused

Added: DBOP and SSP underclocking affects display on v1/v2 respectively

Fixed: debug menu now has SSP frequency, and SSP_CPSR

Update: made settings menu more generic

Update: cleaned up code

Added: Clip v1 & Fuze v1 didn't have HAVE_ADJUSTABLE_CPU_VOLTAGE. not sure why but, waiting on testing to confirm

Added: C200v2 and E200v2 devices and HAVE_ADJUSTABLE_CPU_VOLTAGE.

Fixed: v1 devices don't like display timing set lower (dbop) v1 devices don't have a divider set for ssp (causes divide by 0)

Fixed: ClipZip display lags with Max SSP divider changed from 0xFE to 0x32

Fixed: v1 devices didn't work properly with highspeed sd cards Added code from http://gerrit.rockbox.org/r/#/c/1704/ Added powersave and IDE interface enable/disable

Added: V2 devices now have powersave enabled on sd interface

Update: cleaned up code, lang defines, added manual entries

Update ssp clock mechanism added calculated ssp divider to clipzip

Update turn display clock off when clip+ turns off display

Fixed: clipzip wrong register for SSP clock

TODO: add other players?
apps/features.txt [diff]
apps/lang/english.lang [diff]
apps/menus/settings_menu.c [diff]
apps/settings.h [diff]
apps/settings_list.c [diff]
firmware/export/config.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/sansafuzev2.h [diff]
firmware/target/arm/as3525/ascodec-as3525.c [diff]
firmware/target/arm/as3525/clock-target.h [diff]
firmware/target/arm/as3525/sansa-clipplus/lcd-clip-plus.c [diff]
firmware/target/arm/as3525/sansa-clipzip/lcd-clipzip.c [diff]
firmware/target/arm/as3525/sd-as3525.c [diff]
firmware/target/arm/as3525/sd-as3525v2.c [diff]
firmware/target/arm/as3525/system-as3525.c [diff]
firmware/target/arm/as3525/system-target.h [diff]
manual/configure_rockbox/system_options.tex [diff]
William Wilgus
2018-07-27 400603a: Lua -- Fix device hang when scroll function active on clear_screen

I previously noticed that manually clearing the framebuffer while scroll function was active caused lua to crash

I could reproduce in sim and on device but I thought using the plugin supplied rb->lcd_clear_screen was immune to this issue

Unfortunately some devices exhibit this behavior with the plugin function as well

This patch adds rb->lcd_scroll_stop() before lcd_clear_screen at lua start-up and to the supplied include file lcd.lua
apps/plugins/lua/include_lua/lcd.lua [diff]
apps/plugins/lua/rocklua.c [diff]
William Wilgus
2017-12-14 dcd71e6: Optimize lcd-ssd1303 driver (clip series)

Saves 100+ bytes (50 of it in iram), saves a bit of power

Internal LCD clock decreased but with added efficiency of drawing routines loses only around 2 Hz on the scanrate (~75Hz) while fps is slightly increased

Column offsets are now calculated outside the loops saving a few instructions

Passing a LCD_NOP command after lcd_update turns off Data/Cmd# gpio saving a bit more power

Added a function lcd_write_cmd_triple() that allows 3 commands to be sent at once when enabled with LCD_USE_FIFO_FOR_COMMANDS it sends them back to back without checking FIFO status in between or sending to thhe D/C# Gpio. Makes an assumption about the FIFO being large enough to accept 3 commands after being emptied which should be the case on the clipv1, clipv2, clipplus. I have only enabled it for the clip plus as thats the only device I have to test it on.

On clip+ the SSP clock is now turned off when screen is off
firmware/target/arm/as3525/lcd-clip.h [diff]
firmware/target/arm/as3525/lcd-ssd1303.c [diff]
firmware/target/arm/as3525/sansa-clip/lcd-clip.c [diff]
firmware/target/arm/as3525/sansa-clipplus/lcd-clip-plus.c [diff]
firmware/target/arm/as3525/sansa-clipv2/lcd-clipv2.c [diff]
William Wilgus
2017-11-14 056d4b0: Update AS3525 v1/v2 debug menu; add scrolling and missing frequencies

On the clip zip most debug menu items get cut off and there is no way to read most of the debug menu items.

This patch makes the menu button scroll the text 1 character to the right with each press and the center (select) button re-aligns the text

Adds SSP frequency(v2) & register Adds SD slot frequency(v2)
apps/debug_menu.c [diff]
firmware/target/arm/as3525/debug-as3525.c [diff]
William Wilgus
2018-07-25 ff7d2bd: Fix lcd-scroll.c truncation warnings
firmware/export/scroll_engine.h [diff]
William Wilgus
2018-07-25 1054b57: Revert "Ignore truncation in lcd-scroll.c"

This reverts commit 540637ed3334364fe9d1b54cdc96a52f59afda83.
firmware/drivers/lcd-scroll.c [diff]
William Wilgus
2018-07-25 7b5ce73: Fix playersim CHAR_WIDTH re-definition
uisimulator/common/lcd-playersim.h [diff]
William Wilgus
2018-07-25 540637e: Ignore truncation in lcd-scroll.c
firmware/drivers/lcd-scroll.c [diff]
William Wilgus
2018-07-25 5e5ddce: Fix truncation warnings in tree.c, filetree.c
apps/filetree.c [diff]
apps/tree.c [diff]
William Wilgus
2018-07-25 7bec713: Fix formatting cuesheet.c
apps/cuesheet.c [diff]
William Wilgus
2018-07-25 2fb6b2b: Fix truncation warning playlist.c, tree.c
apps/playlist.c [diff]
apps/tree.c [diff]
William Wilgus
2018-07-25 2eeb338: Ignore cuesheet title truncation
apps/cuesheet.c [diff]
William Wilgus
2018-07-25 bdbc7f7: Revert "Remove truncation from cuesheet"

This reverts commit a81c63160c5d1da3a5c2b407fae58daead6199a8.
apps/cuesheet.c [diff]
William Wilgus
2018-07-25 021124f: Revert "Fix cuesheet printf truncation"

This reverts commit c332180afd8ac408883ba79c6c4d9c86120198e0.
apps/cuesheet.c [diff]
William Wilgus
2018-07-25 c332180: Fix cuesheet printf truncation
apps/cuesheet.c [diff]
William Wilgus
2018-07-25 a81c631: Remove truncation from cuesheet

Lets see if this works..
apps/cuesheet.c [diff]
William Wilgus
2017-10-30 c15af64: AMS v1/v2: Fix I2C2_CSPR debug menu entry

I2c controller needs to be enabled in order to read CSPR0, CSPR1 registers function sets CGU_I2C_AUDIO_MASTER_CLOCK_ENABLE and only clears if it wasn't previously enabled

Use divider set in register to calculate frequency rather than hard coded divider
firmware/target/arm/as3525/ascodec-as3525.c [diff]
firmware/target/arm/as3525/debug-as3525.c [diff]
firmware/target/arm/as3525/system-target.h [diff]
William Wilgus
2017-12-09 6a56876: CLIPPLUS -- Remove un-needed handling for power button button button_read_device()

switching GPIOB in order to read GPIOD96)
(power button) is apparently unneeded
firmware/target/arm/as3525/sansa-clipplus/button-clip.c [diff]
William Wilgus
2018-07-24 1b68aea: Try #4 for lua make

Last commit was just a test to see if it work this one cleans it up a bit and should be a bit faster
apps/plugins/lua/lua.make [diff]
William Wilgus
2018-07-24 1482a31: Try # 3 for lua make file
apps/plugins/lua/include_lua/image.lua [diff]
apps/plugins/lua/lua.make [diff]
William Wilgus
2018-07-24 aefdd20: Lua Fix image saving for 32 bit targets -- update make file

Hopefully this will fix the build faliures for a few targets
apps/plugins/lua/include_lua/image.lua [diff]
apps/plugins/lua/lua.make [diff]
William Wilgus
2018-07-23 af35d19: Rocklua -- Extend / Fix rliImage

Some devices(1-bit / 2-bit displays) have packed bit formats that need to be unpacked in order to work on them at a pixel level.

This caused a few issues on 1 & 2-bit devices: Greatly Oversized data arrays for bitmaps Improper handling of native image data Framebuffer data was near unusable without jumping through hoops

Conversion between native addressing and per pixel addressing incurs extra overhead but it is much faster to do it on the 'C' side rather than in lua.

Not to mention the advantage of a unified interface for the end programer

------------------------------------------------------------------- Adds a sane way to access each pixel of image data Adds:
-------------------------------------------------------------------- img:clear([color],[x1],[y1],[x2],[y2])
(set whole image or a portion to a particular value)
-------------------------------------------------------------------- img:invert([x1],[y1],[x2],[y2])
(inverts whole image or a portion)
-------------------------------------------------------------------- img:marshal([x1],[y1],[x2],[y2],[funct])
(calls funct for each point defined by rect of x1,y1 x2,y2 returns value and allows setting value of each point return nil to terminate early)
-------------------------------------------------------------------- img:points([x1],[y1],[x2],[y2],[dx],[dy])
(returns iterator function that steps delta-x and delta-y pixels each call returns value of pixel each call but doesn't allow setting to a new value compare to lua pairs method)
-------------------------------------------------------------------- img:copy(src,[x1],[y1],[x2],[y2],[w],[h],[clip][operation][clr/funct])
(copies all or part of an image -- straight copy or special ops optionally calls funct for each point defined by rect of x1, y1, w, h and x2, y2, w, h for dest and src images returns value of dst and src and allows setting value of each point return nil to terminate early)
-------------------------------------------------------------------- img:line(x1, y1, x2, y2, color)
-------------------------------------------------------------------- img:ellipse(x1, y1, x2, y2, color, [fillcolor]
-------------------------------------------------------------------- Fixed handling of 2-bit vertical integrated screens

Added direct element access for saving / restoring native image etc.

Added more data to tostring() handler and a way to access individual items

Added equals method to see if two variables reference the same image address
(doesn't check if two separate images contain the same 'picture')

Optimized get and set routines

Fixed out of bound x coord access shifting to next line

Added lua include files to expose new functionality

Finished image saving routine

Static allocation of set_viewport struct faster + saves ram over dynamic

Cleaned up code

Fixed pixel get/set for 1/2 bit devices

Fixed handling for 24-bit devices (32?)

------------------------------------------------------------------------- Example lua script to follow on forums
-------------------------------------------------------------------------
apps/plugins/lua/include_lua/blit.lua [new]
apps/plugins/lua/include_lua/color.lua [new]
apps/plugins/lua/include_lua/draw.lua [new]
apps/plugins/lua/include_lua/image.lua [new]
apps/plugins/lua/include_lua/lcd.lua [new]
apps/plugins/lua/include_lua/math_ex.lua [new]
apps/plugins/lua/include_lua/print.lua [new]
apps/plugins/lua/include_lua/timer.lua [new]
apps/plugins/lua/lua.make [diff]
apps/plugins/lua/rocklib.c [diff]
William Wilgus
2018-07-22 ef210b5: Revert "Rocklua -- Extend / Fix rliImage"

This reverts commit 2daec3d3c3d84e7176a22bc073ca5530e8e44c6d.
apps/plugins/lua/include_lua/blit.lua [deleted]
apps/plugins/lua/include_lua/color.lua [deleted]
apps/plugins/lua/include_lua/draw.lua [deleted]
apps/plugins/lua/include_lua/image.lua [deleted]
apps/plugins/lua/include_lua/lcd.lua [deleted]
apps/plugins/lua/include_lua/math_ex.lua [deleted]
apps/plugins/lua/include_lua/print.lua [deleted]
apps/plugins/lua/include_lua/timer.lua [deleted]
apps/plugins/lua/lua.make [diff]
apps/plugins/lua/rocklib.c [diff]
William Wilgus
2018-05-28 2daec3d: Rocklua -- Extend / Fix rliImage

Some devices(1-bit / 2-bit displays) have packed bit formats that need to be unpacked in order to work on them at a pixel level.

This caused a few issues on 1 & 2-bit devices: Greatly Oversized data arrays for bitmaps Improper handling of native image data Framebuffer data was near unusable without jumping through hoops

Conversion between native addressing and per pixel addressing incurs extra overhead but it is much faster to do it on the 'C' side rather than in lua.

Not to mention the advantage of a unified interface for the end programer

------------------------------------------------------------------- Adds a sane way to access each pixel of image data Adds:
-------------------------------------------------------------------- img:clear([color],[x1],[y1],[x2],[y2])
(set whole image or a portion to a particular value)
-------------------------------------------------------------------- img:invert([x1],[y1],[x2],[y2])
(inverts whole image or a portion)
-------------------------------------------------------------------- img:marshal([x1],[y1],[x2],[y2],[funct])
(calls funct for each point defined by rect of x1,y1 x2,y2 returns value and allows setting value of each point return nil to terminate early)
-------------------------------------------------------------------- img:points([x1],[y1],[x2],[y2],[dx],[dy])
(returns iterator function that steps delta-x and delta-y pixels each call returns value of pixel each call but doesn't allow setting to a new value compare to lua pairs method)
-------------------------------------------------------------------- img:copy(src,[x1],[y1],[x2],[y2],[w],[h],[clip][operation][clr/funct])
(copies all or part of an image -- straight copy or special ops optionally calls funct for each point defined by rect of x1, y1, w, h and x2, y2, w, h for dest and src images returns value of dst and src and allows setting value of each point return nil to terminate early)
-------------------------------------------------------------------- img:line(x1, y1, x2, y2, color)
-------------------------------------------------------------------- img:ellipse(x1, y1, x2, y2, color, [fillcolor]
-------------------------------------------------------------------- Fixed handling of 2-bit vertical integrated screens

Added direct element access for saving / restoring native image etc.

Added more data to tostring() handler and a way to access individual items

Added equals method to see if two variables reference the same image address
(doesn't check if two separate images contain the same 'picture')

Optimized get and set routines

Fixed out of bound x coord access shifting to next line

Added lua include files to expose new functionality

Finished image saving routine

Static allocation of set_viewport struct faster + saves ram over dynamic

Cleaned up code

Fixed pixel get/set for 1/2 bit devices
------------------------------------------------------------------------- Example lua script to follow on forums
-------------------------------------------------------------------------
apps/plugins/lua/include_lua/blit.lua [new]
apps/plugins/lua/include_lua/color.lua [new]
apps/plugins/lua/include_lua/draw.lua [new]
apps/plugins/lua/include_lua/image.lua [new]
apps/plugins/lua/include_lua/lcd.lua [new]
apps/plugins/lua/include_lua/math_ex.lua [new]
apps/plugins/lua/include_lua/print.lua [new]
apps/plugins/lua/include_lua/timer.lua [new]
apps/plugins/lua/lua.make [diff]
apps/plugins/lua/rocklib.c [diff]
William Wilgus
2017-10-30 19b2964: AMS v1/v2: Remove sd_enabled as an externally-visible variable.

Also removes the sd_enable() function call. It was only used in the debug screen on AMSv1 and not used at all on AMS v2.

For v1,obtain debug info in a struture passed to a dedicated debug info function so that enabling and disabling the controller isn't racy.
firmware/target/arm/as3525/debug-as3525.c [diff]
firmware/target/arm/as3525/sd-as3525.c [diff]
firmware/target/arm/as3525/sd-as3525v2.c [diff]
firmware/target/arm/as3525/system-target.h [diff]
Michael Sevakis
2018-04-03 ab1b67f: Textviewer night mode

Add a night mode to textviewer.
apps/plugins/text_viewer/tv_display.c [diff]
apps/plugins/text_viewer/tv_display.h [diff]
apps/plugins/text_viewer/tv_menu.c [diff]
apps/plugins/text_viewer/tv_preferences.c [diff]
apps/plugins/text_viewer/tv_preferences.h [diff]
apps/plugins/text_viewer/tv_settings.c [diff]
Moshe Piekarski
2018-06-28 8742f6f: Agptek: Fix headphones detection
firmware/target/hosted/agptek/button-agptek.c [diff]
Marcin Bukat
2018-06-28 971001d: Agptek: Fix support for empty strings in sysfs helper functions
firmware/target/hosted/agptek/sysfs.c [diff]
Marcin Bukat
2018-06-20 d64ff86: puzzles: resync with upstream

This brings the source to upstream commit 506b073 (though I have made some extra commits on top of that). Notably this includes a fix for a double-free bug that I myself introduced upstream.
apps/plugins/puzzles/rbcompat.h [diff]
apps/plugins/puzzles/src/Buildscr [diff]
apps/plugins/puzzles/src/HACKING [deleted]
apps/plugins/puzzles/src/Makefile [deleted]
apps/plugins/puzzles/src/Makefile.am [deleted]
apps/plugins/puzzles/src/Makefile.clangcl [deleted]
apps/plugins/puzzles/src/Makefile.cyg [deleted]
apps/plugins/puzzles/src/Makefile.emcc [deleted]
apps/plugins/puzzles/src/Makefile.gnustep [deleted]
apps/plugins/puzzles/src/Makefile.gtk [deleted]
apps/plugins/puzzles/src/Makefile.in [deleted]
apps/plugins/puzzles/src/Makefile.nestedvm [deleted]
apps/plugins/puzzles/src/Makefile.osx [deleted]
apps/plugins/puzzles/src/Makefile.vc [deleted]
apps/plugins/puzzles/src/Makefile.wce [deleted]
apps/plugins/puzzles/src/Recipe [diff]
apps/plugins/puzzles/src/aclocal.m4 [deleted]
apps/plugins/puzzles/src/compile [deleted]
apps/plugins/puzzles/src/config.log [deleted]
apps/plugins/puzzles/src/config.status [deleted]
apps/plugins/puzzles/src/configure [deleted]
apps/plugins/puzzles/src/depcomp [deleted]
apps/plugins/puzzles/src/filling.c [diff]
apps/plugins/puzzles/src/gtk.c [diff]
apps/plugins/puzzles/src/install-sh [deleted]
apps/plugins/puzzles/src/keen.c [diff]
apps/plugins/puzzles/src/latin.c [diff]
apps/plugins/puzzles/src/list.c [deleted]
apps/plugins/puzzles/src/misc.c [diff]
apps/plugins/puzzles/src/missing [deleted]
...and 6 more files.
Franklin Wei
2018-06-20 708a54d: Fix yellow for LCD_DEPTH == 32
apps/plugins/fractals/mandelbrot_set.c [diff]
Marcin Bukat
2018-06-20 28cfeed: Agptek Rocker: Add missing lcd_set_active(true) in lcd_init_device()

This should fix problem introduced in 5c015ad resulting in not updating screen properly in wps.
firmware/target/hosted/agptek/lcd-agptek.c [diff]
firmware/target/hosted/agptek/lcd-target.h [diff]
Marcin Bukat
2018-06-20 706e31b: Volume adjustment in WPS ignored AUDIOHW_SETTING values

AUDIOHW_SETTING() defines number of decimals and step size. This is taken into account in sound menu but ignored in WPS. This was not a problem so far since all drivers used 0 decimal places and step size equal 1.
apps/gui/wps.c [diff]
Marcin Bukat
2018-06-14 20bdfa8: Agptek Rocker: Add to builds.pm
tools/builds.pm [diff]
Marcin Bukat
2018-06-14 203e4ad: Agptek Rocker: Slightly tweak build procedure

In bootloader build create stripped binary bootloader.rocker
firmware/target/hosted/agptek/rocker.make [diff]
tools/agptek_rocker/bootloader_install.sh [diff]
Marcin Bukat
2018-06-14 5c015ad: Agptek Rocker: Implement lcd_enable()

In theory this should slightly improve battery life.
firmware/SOURCES [diff]
firmware/export/config/agptekrocker.h [diff]
firmware/target/hosted/agptek/lcd-agptek.c [diff]
firmware/target/hosted/agptek/lcd-target.h [diff]
Marcin Bukat
2018-06-14 755b824: Agptek Rocker: Fix mpegplayer keymap
apps/plugins/mpegplayer/mpeg_settings.c [diff]
Marcin Bukat
2018-06-13 419219e: Agptek Rocker: Update tools to alter .upt update images

Change all references to official rockbox repository
tools/agptek_rocker/Dockerfile [diff]
tools/agptek_rocker/README [diff]
tools/agptek_rocker/bootloader_install.sh [diff]
Marcin Bukat
2018-06-12 f727b07: puzzles: minor nitpicks to fbb6a2f

Just some whitespace changes to maintain stylistic consistency.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2018-06-12 c2d5ac1: puzzles: fix typo introduced by fbb6a2f

When zoomed in, the original commit made a mono bitmap (a.k.a. text) always have the red component set to 255. This would cause drawn text to always be red. Fixed.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2018-06-12 f2075a5: Add XRGB8888 native format

This got lost somehow during Agptek port merge
firmware/export/lcd.h [diff]
Marcin Bukat
2018-06-12 0e48cb7: Silence warnings
firmware/target/hosted/rtc.c [diff]
Marcin Bukat
2018-06-12 32e8028: Cleanup comment
firmware/drivers/lcd-24bit.c [diff]
Marcin Bukat
2018-06-12 f439079: bmp2rb: Add XRGB 32bit native format
tools/bmp2rb.c [diff]
Marcin Bukat
2018-06-12 307ea83: Fix merge errors which broke sony linux targets
firmware/SOURCES [diff]
Marcin Bukat
2018-06-12 71dc1a7: Fix MIPS threading code to compile with older compiler

Official rockbox mips gcc is old and doesn't support symbolic register names in inline assembly
firmware/asm/mips/thread-mips32.c [diff]
Marcin Bukat
2018-06-12 9be14c0: Fix merge error
firmware/target/hosted/alsa-controls.h [diff]
Marcin Bukat
2018-06-12 7f4d183: Fix ipod classic build
firmware/SOURCES [diff]
Marcin Bukat
2018-06-08 c0bdbb4: Agptek Rocker: Callibrate power discharge/charge curve

Thanks 'elakir' and 'pechenyh' rockbox forum users for performing battery bench.
firmware/target/hosted/agptek/powermgmt-agptek.c [diff]
Marcin Bukat
2018-04-11 0952f59: Agptek Rocker: Fix keymap in time/date screen
apps/keymaps/keymap-agptekrocker.c [diff]
Marcin Bukat
2018-04-10 a81391b: Agptek Rocker: Fix saving time in hwclock

Rocker is configured with CST (China Standard Time) timezone which is UTC+8. Time in RTC is stored in UTC.
firmware/target/hosted/rtc.c [diff]
Marcin Bukat
2018-04-10 1af78b9: Agptek Rocker: fix rockboy pallete

Contributed by Aapo Tahkola.
apps/plugins/rockboy/sys_rockbox.c [diff]
Marcin Bukat
2018-04-10 fbaa974: Agptek Rocker: Implement RTC support

Add define in config file to enable RTC support in rockbox, Fix time_menu.c to include radio.h only when tuner is present Implement time setting function on linux (was empty stub)

Not tested.
apps/menus/time_menu.c [diff]
firmware/export/config/agptekrocker.h [diff]
firmware/target/hosted/rtc.c [diff]
Marcin Bukat
2018-03-13 937589c: Agptek Rocker: Add bass, treble and balance controls
firmware/export/config/agptekrocker.h [diff]
Marcin Bukat
2018-03-13 7692558: Agptek Rocker: Implement USB mass storage driver

Agptek uses composite android driver.
apps/main.c [diff]
bootloader/rocker_linux.c [diff]
firmware/SOURCES [diff]
firmware/export/config/agptekrocker.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/agptek/usb-agptek.c [new]
Marcin Bukat
2018-03-04 d5889b3: Agptek Rocker: Make simulator compile and run

There are some things to fix left but at least it starts and you can navigate.
firmware/SOURCES [diff]
firmware/target/hosted/sdl/lcd-bitmap.c [diff]
Marcin Bukat
2018-03-02 fbb6a2f: Agptek Rocker: Build plugins

Patch provided by Aapo Tahkola.
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/jewels.c [diff]
apps/plugins/lib/keymaps.h [diff]
apps/plugins/lib/osd.c [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]
apps/plugins/pacbox/pacbox.h [diff]
apps/plugins/pegbox.c [diff]
apps/plugins/pictureflow/pictureflow.c [diff]
...and 22 more files.
Marcin Bukat
2018-03-02 0538ba3: Agptek Rocker: Restrict root directory to SD only

Actual / of underlying linux OS should not be available to user. I am still not sure if implementation is correct. It doesn't perform any relative path sandboxing for example.
firmware/export/rbpaths.h [diff]
firmware/target/hosted/filesystem-app.c [diff]
firmware/target/hosted/lc-unix.c [diff]
tools/configure [diff]
Marcin Bukat
2018-02-26 09fde79: Agptek Rocker: Add tools to work with OF update images

Original firmware update is provided as .upt file. This file is actually ISO9660 image containing uBoot, kernel image and UBIFS rootfs and additional control files. Installing bootloader means patching UBIFS rootfs image.
tools/agptek_rocker/Dockerfile [new]
tools/agptek_rocker/README [new]
tools/agptek_rocker/bootloader_install.sh [new]
tools/agptek_rocker/hiby_player.sh [new]
tools/agptek_rocker/update_update.py [new]
Marcin Bukat
2017-04-27 d556809: Agptek Rocker: Initial commit
apps/SOURCES [diff]
apps/bitmaps/native/SOURCES [diff]
apps/bitmaps/native/hibyicon.70x70x16.bmp [new]
apps/bitmaps/native/rockboxicon.70x70x16.bmp [new]
apps/bitmaps/native/toolsicon.70x70x16.bmp [new]
apps/keymaps/keymap-agptekrocker.c [new]
apps/recorder/bmp.c [diff]
bootloader/SOURCES [diff]
bootloader/rocker_linux.c [new]
firmware/SOURCES [diff]
firmware/asm/SOURCES [diff]
firmware/asm/mips/thread-mips32.c [diff]
firmware/asm/mips/thread.h [diff]
firmware/drivers/audio/rocker_codec.c [new]
firmware/drivers/lcd-24bit.c [diff]
firmware/export/audiohw.h [diff]
firmware/export/config.h [diff]
firmware/export/config/agptekrocker.h [new]
firmware/export/rbpaths.h [diff]
firmware/export/rocker_codec.h [new]
firmware/include/bitarray.h [diff]
firmware/kernel/thread.c [diff]
firmware/screendump.c [diff]
firmware/target/hosted/agptek/adc-target.h [new]
firmware/target/hosted/agptek/backlight-agptek.c [new]
firmware/target/hosted/agptek/backlight-target.h [new]
firmware/target/hosted/agptek/button-agptek.c [new]
firmware/target/hosted/agptek/button-target.h [new]
firmware/target/hosted/agptek/debug-agptek.c [new]
firmware/target/hosted/agptek/lcd-agptek.c [new]
...and 20 more files.
Marcin Bukat
2018-02-22 beef52c: mipsel-rockbox-linux toolchain build fix

If we use mips-rockbox-linux target resulting toolchain is big endian. If we use mipsel-rockbox-linux build fail since linux doesn't have separate archs for BE and LE mips. So we tweak arch passed to linux-headers stage to fix this.
tools/rockboxdev.sh [diff]
Marcin Bukat
2017-02-23 1b2faea: Add generic linux MIPS toolchain
tools/rockboxdev.sh [diff]
Amaury Pouly
2018-02-05 9a9c7f2: Fix lua failure to catch divide by zero and NaN exceptions

I can only assume in the course of the original conversion to fixed point math in RbLua the fact that division by zero and NaN handling was to be caught as a graceful exception by the floating point handler was overlooked.

As a result lua doesn't handle these exceptions and instead results in a panic on the device.

This patch fixes this handling in the lexer for compile time Inf and Nan results and in the luavm for runtime division by zero (Inf)

I missed the runtime exception of n%0 added checks for that as well..
apps/plugins/lua/lcode.c [diff]
apps/plugins/lua/lvm.c [diff]
William Wilgus
2017-09-09 80bb6cc: Make short press of SELECT in FMS return ACTION_NONE on Sansa Fuze

Fixes action fall through of select|release on fuze during FMS screen allowing detection of unmapped button
apps/keymaps/keymap-fuze.c [diff]
William Wilgus
2016-12-21 8db6d20: Fix FMS Volume-long press Up and Down button actions for SANSA CLIP derivatives

When long pressing PLAY/PAUSE and FM_MODE on devices that use the clip keymap the volume changes in addition to toggling PLAY/PAUSE and SCAN/SEEK,this patch removes the volume functionality as these devices provide dedicated volume buttons
apps/keymaps/keymap-clip.c [diff]
William Wilgus
2017-09-07 0c06e5f: Add file view menu to file browser

Allows changing file sort options directly through context menu in the file browser rather than having to exit the browser and go through General Settings>File_View
apps/onplay.c [diff]
apps/tree.c [diff]
William Wilgus
2018-05-31 641e033: Revert "rocklib -- Fix Red"

This reverts commit 37a20dffb6c285e625f049820a6aaadbbd7952aa.
apps/plugins/lua/rocklib.c [diff]
William Wilgus
2018-05-31 4508ee9: Revert "Rocklua -- Clean-up source"

This reverts commit 0565f671181f10e6eb38156d9f409825e2513290. Removing Typedef from rliimage
apps/plugins/lua/rocklib.c [diff]
William Wilgus
2018-05-28 37a20df: rocklib -- Fix Red
apps/plugins/lua/rocklib.c [diff]
William Wilgus
2017-12-18 0565f67: Rocklua -- Clean-up source
apps/plugins/lua/rocklib.c [diff]
William Wilgus
2018-05-28 07a0f20: Lua liolib

Add Whitespace to EOF
apps/plugins/lua/liolib.c [diff]
William Wilgus
2018-01-29 0d41e13: Fix lua lseek command / io lib

lua would not return or set arbitrary file positions file:seek("set", 0) worked file:seek("cur") worked but setting an offset or file:seek("end") failed

I tracked this down to a bug checking the return of rb->lseek

on error lseek returns a negative number and returns the file position otherwise, the function was checking for if(N) instead of if(N < 0)

Fixed - limited size of lseek to size of signed LuaNumber

Fixed - io:lines() stopped after first line containing only a newline instead of returning a blank line and continuing till EOF this fixes file:read("*l") as well

Fixed - ssize_t for read() with error checking
apps/plugins/lua/liolib.c [diff]
William Wilgus
2017-11-30 1f63604: Fuze PLUS Fix lcd_update_rect()

Lcd_update rect was hanging during horizontal screen update x = 238 and width = 2 which was within the bounds of the screen, this seems to be a weird corner case but more testing needs done.

Update_rect now properly bounded between 0 - screen w/h
--Cleaned up code

Pixels in x are now multiples of 4.

Datasheet states:
------------------------------------------------------------------------------------------- WORD_LENGTH=0 implies the input frame buffer is RGB 16 bits per pixel. DATA_FORMAT_16_BIT field indicates if the pixels are in RGB 555 or RGB 565 format. Limitations:
— BYTE_PACKING_FORMAT [3:0] should be 0x3 or 0xC if there is only one pixel per word.
— If there are two pixels per word, BYTE_PACKING_FORMAT [3:0] should be 0xF and H_COUNT will be restricted to be a multiple of 2 pixels.

and

WORD_LENGTH=3 indicates that the input frame-buffer is RGB 24 bits per pixel (RGB 888). If BYTE_PACKING_FORMAT [3:0] is 0x7, it indicates that there is only one pixel per 32-bit word and there is no restriction on H_COUNT. Limitations:
— If BYTE_PACKING_FORMAT [3:0] is 0xF, it indicates that the pixels are packed, i.e. there are 4 pixels in 3 words or 12 bytes. In that case, H_COUNT must be a multiple of 4 pixels.
-------------------------------------------------------------------------------------------

We are using 16 bits per pixel and byte_packing = 0xF but device crashes with multiple of 2 pixels

Behaviour can be verified with plugin - oscilloscope, Horizontal mode device hangs as indicator reaches right of screen
firmware/target/arm/imx233/sansa-fuzeplus/lcd-fuzeplus.c [diff]
William Wilgus
2018-05-25 038a102: Fix Remove lcd_scroll_worker from bootloader except remote displays/charcell

This patch was supposed to only remove scroll worker from devices without remote displays, the build system said otherwise

fixed: conditional define
firmware/drivers/lcd-scroll.c [diff]
William Wilgus
2017-11-06 0999a22: Remove lcd_scroll_worker from bootloader except remote displays and charcell

Removes unneeded scrolling fuctionality from bootloaders
firmware/drivers/lcd-scroll.c [diff]
firmware/scroll_engine.c [diff]
William Wilgus
2018-05-22 0b2f518: Don't enable full vuprintf file in bootloader. Saves ~2KB packed space when patching clip+ OF.
firmware/common/vuprintf.c [diff]
Michael Giacomelli
2018-04-24 992a126: puzzles: update frontend for new upstream, misc. changes

The upstream code changed a little bit with regard to the request_keys() API. Also, we save some bytes (especially on the c200v2) by compiling with
-ffunction-sections and -fdata-sections, which allows Net to fit once again.
apps/plugins/puzzles/SOURCES [diff]
apps/plugins/puzzles/SOURCES.games [diff]
apps/plugins/puzzles/puzzles.make [diff]
apps/plugins/puzzles/rbcompat.h [diff]
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2018-04-24 b29611f: puzzles: update help text, make generation and testing cleaner

This includes an upstream change to the Galaxies help text. `genhelp.sh' no longer leaves temporary files sitting around, and the self-test feature of lz4tiny.c works again.
apps/plugins/puzzles/genhelp.sh [diff]
apps/plugins/puzzles/help.h [diff]
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]
...and 12 more files.
Franklin Wei
2018-04-24 8f23493: puzzles: resync with upstream

This brings the upstream version to b3da238 (though some of my own changes are included on top of that).
apps/plugins/puzzles/src/Buildscr [diff]
apps/plugins/puzzles/src/HACKING [new]
apps/plugins/puzzles/src/Makefile [new]
apps/plugins/puzzles/src/Makefile.am [new]
apps/plugins/puzzles/src/Makefile.clangcl [new]
apps/plugins/puzzles/src/Makefile.cyg [new]
apps/plugins/puzzles/src/Makefile.emcc [new]
apps/plugins/puzzles/src/Makefile.gnustep [new]
apps/plugins/puzzles/src/Makefile.gtk [new]
apps/plugins/puzzles/src/Makefile.in [new]
apps/plugins/puzzles/src/Makefile.nestedvm [new]
apps/plugins/puzzles/src/Makefile.osx [new]
apps/plugins/puzzles/src/Makefile.vc [new]
apps/plugins/puzzles/src/Makefile.wce [new]
apps/plugins/puzzles/src/Recipe [diff]
apps/plugins/puzzles/src/aclocal.m4 [new]
apps/plugins/puzzles/src/compile [new]
apps/plugins/puzzles/src/config.log [new]
apps/plugins/puzzles/src/config.status [new]
apps/plugins/puzzles/src/configure [new]
apps/plugins/puzzles/src/depcomp [new]
apps/plugins/puzzles/src/devel.but [diff]
apps/plugins/puzzles/src/filling.c [diff]
apps/plugins/puzzles/src/gamedesc.txt [new]
apps/plugins/puzzles/src/gtk.c [diff]
apps/plugins/puzzles/src/html/galaxies.html [diff]
apps/plugins/puzzles/src/icons/Makefile [diff]
apps/plugins/puzzles/src/install-sh [new]
apps/plugins/puzzles/src/keen.R [diff]
apps/plugins/puzzles/src/keen.c [diff]
...and 31 more files.
Franklin Wei
2018-04-22 ef0fb52: puzzles: silence some warnings
apps/plugins/puzzles/compress.c [diff]
apps/plugins/puzzles/help.h [diff]
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]
...and 12 more files.
Franklin Wei
2018-04-20 56803c8: Add battery calibration for Sony NWZ A10. firmware/target/hosted/sonynwz/powermgmt-nwz.c [diff]
Michael Giacomelli
2018-04-17 22823e2: puzzles: save some bytes

This should cut just enough size off the binary to let Net still compile for the c200v2. This is probably close to the last time I'll be able to do this; I'm already resorting to dirty hacks like writing super terse error messages.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2018-04-17 e84fc26: puzzles: clean up for rockbox

Disabled vprintf() call in Filling, and reordered vertices in Unequal.
apps/plugins/puzzles/src/filling.c [diff]
apps/plugins/puzzles/src/unequal.c [diff]
Franklin Wei
2018-04-17 6dc9d1d: puzzles: enable all the remaining games

They all work now :). I merged in part of Chris Boyle's Android port of Puzzles to give the front end a way to know what keys the back end needs. This also re-syncs to the latest upstream sources.
apps/plugins/puzzles/README.rockbox [diff]
apps/plugins/puzzles/SOURCES.games [diff]
apps/plugins/puzzles/rockbox.c [diff]
apps/plugins/puzzles/src/blackbox.c [diff]
apps/plugins/puzzles/src/bridges.c [diff]
apps/plugins/puzzles/src/cube.c [diff]
apps/plugins/puzzles/src/dominosa.c [diff]
apps/plugins/puzzles/src/fifteen.c [diff]
apps/plugins/puzzles/src/filling.c [diff]
apps/plugins/puzzles/src/flip.c [diff]
apps/plugins/puzzles/src/flood.c [diff]
apps/plugins/puzzles/src/galaxies.c [diff]
apps/plugins/puzzles/src/guess.c [diff]
apps/plugins/puzzles/src/inertia.c [diff]
apps/plugins/puzzles/src/keen.c [diff]
apps/plugins/puzzles/src/latin.c [diff]
apps/plugins/puzzles/src/lightup.c [diff]
apps/plugins/puzzles/src/loopy.c [diff]
apps/plugins/puzzles/src/magnets.c [diff]
apps/plugins/puzzles/src/map.c [diff]
apps/plugins/puzzles/src/midend.c [diff]
apps/plugins/puzzles/src/mines.c [diff]
apps/plugins/puzzles/src/net.c [diff]
apps/plugins/puzzles/src/netslide.c [diff]
apps/plugins/puzzles/src/nullgame.c [diff]
apps/plugins/puzzles/src/palisade.c [diff]
apps/plugins/puzzles/src/pattern.c [diff]
apps/plugins/puzzles/src/pearl.c [diff]
apps/plugins/puzzles/src/pegs.c [diff]
apps/plugins/puzzles/src/puzzles.h [diff]
...and 16 more files.
Franklin Wei
2018-02-25 7a12e79: Oscilloscope plugin: bundle #define NEED_LASTBUTTON to a single place

This fixes a warning that was introduced with enabling plugins for the Zen XFi-2.
apps/plugins/oscilloscope.c [diff]
Sebastian Leonhardt
2018-02-22 0486e5b: Zen XFi2: Enable Plugins

Keymaps aren't tested, there may be room for improvement.

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/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/imageviewer/imageviewer_button.h [diff]
apps/plugins/invadrox.c [diff]
apps/plugins/jewels.c [diff]
apps/plugins/lib/keymaps.h [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]
apps/plugins/pacbox/pacbox.h [diff]
apps/plugins/pegbox.c [diff]
apps/plugins/pong.c [diff]
apps/plugins/reversi/reversi-gui.h [diff]
apps/plugins/rockblox.c [diff]
apps/plugins/rockboy/rockboy.c [diff]
apps/plugins/rockpaint.c [diff]
...and 16 more files.
Sebastian Leonhardt
2016-04-12 fb3f765: pacbox for small screens, up to 75x96
apps/plugins/SUBDIRS [diff]
apps/plugins/pacbox/pacbox.h [diff]
apps/plugins/pacbox/pacbox_lcd.c [diff]
manual/plugins/images/ss-pacbox-128x96x16.png [new]
manual/plugins/images/ss-pacbox-96x96x16.png [new]
manual/plugins/main.tex [diff]
Sebastian Leonhardt
2016-04-11 96335a7: pacbox: clean-up screen size code

removes the code duplication for lcd scaling in pacbox.h/pacbox_lcd.h
apps/plugins/pacbox/pacbox.h [diff]
apps/plugins/pacbox/pacbox_lcd.c [diff]
Sebastian Leonhardt
2018-03-18 d5847e8: duke3d: add manual entry

Oops. Apparently I neglected to add this and it's gone unnoticed until now.
manual/plugins/duke3d.tex [new]
Franklin Wei
2018-03-18 9006e75: puzzles: fix typo
apps/plugins/puzzles/compress.c [diff]
Franklin Wei
2018-03-17 77641d5: puzzles: add formatting to help viewer

The help text is now processed to generate a style array to pass to the display_text library in addition to the text itself. The help text is still compressed using LZ4, and still fits on the c200v2.
apps/plugins/puzzles/README.rockbox [diff]
apps/plugins/puzzles/compress.c [diff]
apps/plugins/puzzles/genhelp.sh [diff]
apps/plugins/puzzles/help.h [diff]
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]
...and 14 more files.
Franklin Wei
2018-02-07 6039eb0: sdl: remove non-rockbox drivers

We never use any of these other drivers, so having them around just takes up space.
apps/plugins/sdl/src/audio/alsa/SDL_alsa_audio.c [deleted]
apps/plugins/sdl/src/audio/alsa/SDL_alsa_audio.h [deleted]
apps/plugins/sdl/src/audio/arts/SDL_artsaudio.c [deleted]
apps/plugins/sdl/src/audio/arts/SDL_artsaudio.h [deleted]
apps/plugins/sdl/src/audio/baudio/SDL_beaudio.cc [deleted]
apps/plugins/sdl/src/audio/baudio/SDL_beaudio.h [deleted]
apps/plugins/sdl/src/audio/bsd/SDL_bsdaudio.c [deleted]
apps/plugins/sdl/src/audio/bsd/SDL_bsdaudio.h [deleted]
apps/plugins/sdl/src/audio/dart/SDL_dart.c [deleted]
apps/plugins/sdl/src/audio/dart/SDL_dart.h [deleted]
apps/plugins/sdl/src/audio/dc/SDL_dcaudio.c [deleted]
apps/plugins/sdl/src/audio/dc/SDL_dcaudio.h [deleted]
apps/plugins/sdl/src/audio/dc/aica.c [deleted]
apps/plugins/sdl/src/audio/dc/aica.h [deleted]
apps/plugins/sdl/src/audio/disk/SDL_diskaudio.c [deleted]
apps/plugins/sdl/src/audio/disk/SDL_diskaudio.h [deleted]
apps/plugins/sdl/src/audio/dma/SDL_dmaaudio.c [deleted]
apps/plugins/sdl/src/audio/dma/SDL_dmaaudio.h [deleted]
apps/plugins/sdl/src/audio/dmedia/SDL_irixaudio.c [deleted]
apps/plugins/sdl/src/audio/dmedia/SDL_irixaudio.h [deleted]
apps/plugins/sdl/src/audio/dsp/SDL_dspaudio.c [deleted]
apps/plugins/sdl/src/audio/dsp/SDL_dspaudio.h [deleted]
apps/plugins/sdl/src/audio/esd/SDL_esdaudio.c [deleted]
apps/plugins/sdl/src/audio/esd/SDL_esdaudio.h [deleted]
apps/plugins/sdl/src/audio/macosx/SDL_coreaudio.c [deleted]
apps/plugins/sdl/src/audio/macosx/SDL_coreaudio.h [deleted]
apps/plugins/sdl/src/audio/macrom/SDL_romaudio.c [deleted]
apps/plugins/sdl/src/audio/macrom/SDL_romaudio.h [deleted]
apps/plugins/sdl/src/audio/mint/SDL_mintaudio.c [deleted]
apps/plugins/sdl/src/audio/mint/SDL_mintaudio.h [deleted]
...and 500 more files.
Franklin Wei
2018-01-05 ef373c0: sdl: clean up audio driver

This prevents a (highly improbable) race condition when exiting, and uses pcm_set_frequency() instead of mixer_set_frequency(), since that seems like the Right Thing to Do (TM).
apps/plugins/sdl/src/audio/rockbox/SDL_rockboxaudio.c [diff]
Franklin Wei
2018-01-05 beaeb28: duke3d: bump audio sample rate to 22.1KHz

Recent optimizations to sound mixing should allow this, up from 16KHz.
apps/plugins/sdl/include/SDL_config_rockbox.h [diff]
Franklin Wei
2018-01-05 cf07bb3: duke3d: further optimize audio mixing

Rather than holding intermediate results as fixed-point, this converts them directly to normal integers (in the range of the PCM sample) while mixing, instead of waiting till the end to perform a separate shifting step. Also, this precalculates some constants in the reverb code.
apps/plugins/sdl/progs/duke3d/Engine/src/display.c [diff]
apps/plugins/sdl/progs/duke3d/Game/src/audiolib/multivoc.c [diff]
apps/plugins/sdl/progs/duke3d/Game/src/audiolib/mv_mix.c [diff]
apps/plugins/sdl/progs/duke3d/Game/src/audiolib/mvreverb.c [diff]
apps/plugins/sdl/progs/duke3d/Game/src/config.c [diff]
Franklin Wei
2018-01-14 69ff35a: sdl: correct misleading comments
apps/plugins/sdl/src/thread/rockbox/SDL_sysmutex.c [diff]
apps/plugins/sdl/src/thread/rockbox/SDL_syssem.c [diff]
Franklin Wei
2018-01-13 769d73d: Use sleep(0) instead of yield() in SDL_WaitAudio

This allows CPU load to drop below 100%, which is good for anything that scales frequency and voltage based on CPU load. Also conserves some energy by letting the core go idle if there aren't any available buffers.
apps/plugins/sdl/src/audio/rockbox/SDL_rockboxaudio.c [diff]
Michael Sevakis
2018-01-14 a1123de: Gigabeat S: Remove unwanted partitions on the fly

Windows now ignores the hidden flag, so just nullify the entries to hide depending upon whether or not bootloader install mode is activated.
firmware/target/arm/imx31/gigabeat-s/usb-gigabeat-s.c [diff]
Michael Sevakis
2018-01-13 1143766: nwztools/scsitool: fix completely stupid code
utils/nwztools/scsitools/scsitool.c [diff]
Amaury Pouly
2018-01-13 4d988d4: nwztools/scsitool: print clearer message when nvp info is incomplete
utils/nwztools/scsitools/scsitool.c [diff]
Amaury Pouly
2018-01-13 6c856c4: Add information for NWZ-S630 and NWZ-S730
firmware/target/hosted/sonynwz/nwz-db.c [diff]
utils/nwztools/database/nvp/nwz-s630.txt [new]
utils/nwztools/database/nvp/nwz-s730.txt [new]
Amaury Pouly
2018-01-11 ccd6123: sdl: fix freeze on startup on PP targets

Using the coprocessor was a good idea in theory, but didn't actually work. This moves all SDL threads to the main core, which isn't ideal, but at least works. Additionally, this also adds some good-practice stuff such as setting the default sample rate on exit.
apps/plugins/sdl/SDL_mixer/mixer.c [diff]
apps/plugins/sdl/src/audio/rockbox/SDL_rockboxaudio.c [diff]
apps/plugins/sdl/src/thread/rockbox/SDL_systhread.c [diff]
Franklin Wei
2018-01-07 0d794c0: sonynwz: Add NVP information for NWZ-A810
firmware/target/hosted/sonynwz/nwz-db.c [diff]
utils/nwztools/database/nvp/nwz-a810.txt [new]
utils/nwztools/database/nvp/parse_all_nvp_headers.sh [diff]
Amaury Pouly
2018-01-05 896c828: duke3d: unregister timer on exit

This was leading to a crash upon audio playback after running the game.
apps/plugins/sdl/main.c [diff]
apps/plugins/sdl/src/timer/rockbox/SDL_systimer.c [diff]
Franklin Wei
2017-12-25 9f6ce04: duke3d: rewrite sound mixing to use fixed-point

Gives significant performance improvement on ipod6g.
apps/plugins/sdl/include/SDL_config_rockbox.h [diff]
apps/plugins/sdl/progs/duke3d/Game/src/audiolib/multivoc.c [diff]
apps/plugins/sdl/progs/duke3d/Game/src/audiolib/multivoc.h [diff]
apps/plugins/sdl/progs/duke3d/Game/src/audiolib/mv_mix.c [diff]
apps/plugins/sdl/progs/duke3d/Game/src/audiolib/mvreverb.c [diff]
apps/plugins/sdl/progs/duke3d/Game/src/game.c [diff]
apps/plugins/sdl/progs/duke3d/Game/src/global.c [diff]
apps/plugins/sdl/progs/duke3d/Game/src/global.h [diff]
apps/plugins/sdl/progs/duke3d/Game/src/sounds.c [diff]
apps/plugins/sdl/progs/duke3d/Game/src/util_lib.h [diff]
Franklin Wei
2017-12-26 78db1d9: duke3d: use hardware FPU if available
apps/plugins/sdl/sdl.make [diff]
Franklin Wei
2017-12-24 6a843ca: Revert "Support floating-point formatting"

This reverts commit 01c6dcf6c7b9bb1ad2fa0450f99bacc5f3d3e04b.

The hack isn't used in duke, so having it is redundant.
firmware/common/vuprintf.c [diff]
Franklin Wei
2017-12-24 8a705f6: duke3d: Credit the authors
docs/CREDITS [diff]
Franklin Wei
2017-12-24 56d14b0: duke3d: restrict manual building to enabled targets
manual/plugins/main.tex [diff]
Franklin Wei
2017-12-24 54d8e67: duke3d: restrict targets to ARM only
apps/plugins/SOURCES [diff]
apps/plugins/SUBDIRS [diff]
Franklin Wei
2017-12-24 8d3e305: fix red once more
apps/plugins/SOURCES [diff]
apps/plugins/SUBDIRS [diff]
apps/plugins/lib/stdio_compat.c [diff]
apps/plugins/sdl/main.c [diff]
Franklin Wei
2017-12-24 2b49724: attempt to fix sysfont.h errors
apps/plugins/sdl/sdl.make [diff]
Franklin Wei
2017-12-24 581a82e: Undef potentially conflicting macros in stdio_compat.h
apps/plugins/lib/stdio_compat.h [diff]
Franklin Wei
2017-12-24 7ea37bb: fix red
apps/plugins/lib/stdio_compat.c [diff]
apps/plugins/lib/stdio_compat.h [diff]
apps/plugins/sdl/progs/duke3d/Game/src/global.c [diff]
Franklin Wei
2017-12-23 6416d96: fix red
apps/plugins/sdl/sdl.make [diff]
apps/plugins/sdl/src/video/rockbox/SDL_rockboxvideo.c [diff]
apps/plugins/sdl/src/video/rockbox/keymaps_extra.h [diff]
firmware/common/vuprintf.c [diff]
Franklin Wei
2017-01-21 a855d62: Port of Duke Nukem 3D

This ports Fabien Sanglard's Chocolate Duke to run on a version of SDL for Rockbox.
apps/plugins/CATEGORIES [diff]
apps/plugins/SOURCES [diff]
apps/plugins/SUBDIRS [diff]
apps/plugins/duke3d.c [new]
apps/plugins/lib/stdio_compat.c [diff]
apps/plugins/lib/stdio_compat.h [diff]
apps/plugins/sdl/COPYING [new]
apps/plugins/sdl/CREDITS [new]
apps/plugins/sdl/NOTES [new]
apps/plugins/sdl/README [new]
apps/plugins/sdl/README-SDL.txt [new]
apps/plugins/sdl/README.Porting [new]
apps/plugins/sdl/SDL_image/CHANGES [new]
apps/plugins/sdl/SDL_image/COPYING [new]
apps/plugins/sdl/SDL_image/IMG.c [new]
apps/plugins/sdl/SDL_image/IMG_bmp.c [new]
apps/plugins/sdl/SDL_image/IMG_gif.c [new]
apps/plugins/sdl/SDL_image/IMG_jpg.c [new]
apps/plugins/sdl/SDL_image/IMG_lbm.c [new]
apps/plugins/sdl/SDL_image/IMG_pcx.c [new]
apps/plugins/sdl/SDL_image/IMG_png.c [new]
apps/plugins/sdl/SDL_image/IMG_pnm.c [new]
apps/plugins/sdl/SDL_image/IMG_tga.c [new]
apps/plugins/sdl/SDL_image/IMG_tif.c [new]
apps/plugins/sdl/SDL_image/IMG_webp.c [new]
apps/plugins/sdl/SDL_image/IMG_xcf.c [new]
apps/plugins/sdl/SDL_image/IMG_xpm.c [new]
apps/plugins/sdl/SDL_image/IMG_xv.c [new]
apps/plugins/sdl/SDL_image/IMG_xxx.c [new]
apps/plugins/sdl/SDL_image/README [new]
...and 964 more files.
Franklin Wei
2017-09-29 01c6dcf: Support floating-point formatting

This is just a quick and dirty way to get %f formatting to work for some games. It works.
firmware/common/vuprintf.c [diff]
Franklin Wei
2013-01-18 a842332: stdio compat layer for plugins

This is attempt to simplify porting programs to rockbox (as plugins). Currently this compat layer implements: fopen(), fclose(), fflush(), fread(), fwrite(), fseek(), fseeko(), ftell(), ftello(), fgetc(), ungetc(), fputc(), fgets(), clearerr(), ferror(), feof(), fprintf()

In order to use it you need to include in ported sources
"lib/stdio_compat.h"
apps/plugins/lib/SOURCES [diff]
apps/plugins/lib/stdio_compat.c [new]
apps/plugins/lib/stdio_compat.h [new]
firmware/libc/include/stdint.h [diff]
Marcin Bukat
2017-12-19 d35a18f: Buffering: Missed converting one case assuming const handle size.

Must now be h->size, not sizeof (type).
apps/buffering.c [diff]
Michael Sevakis
2017-12-11 71e3f6c: Fix error with action subsystem and custom context mapping

I removed the mechanism to fall through to internally mapped contexts after plugin contexts were exhausted
apps/action.c [diff]
William Wilgus
2017-12-17 786fbbf: Buffering: Get rid of disabled code I have no intention of using
apps/buffering.c [diff]
Michael Sevakis
2017-12-17 95ec1f7: Remove buffering functions from plugin API.

They aren't used by anything. Must bump min API version.
apps/plugin.c [diff]
apps/plugin.h [diff]
Michael Sevakis
2017-12-17 dfff938: Get rid of useless playlist probing and fix up some data types.

Playback checked the files' presence before attempting to buffer the track. Just get rid of that and save an extra open/close call. It will find out if the path is bad when the metadata fails.

Fix some size_t/off_t conflation. No need to update plugin version because no plugin actually uses bufopen().
apps/buffering.c [diff]
apps/buffering.h [diff]
apps/playback.c [diff]
apps/plugin.h [diff]
Michael Sevakis
2017-12-16 d14e3f4: Fix last commit
apps/plugins/lib/keymaps.h [diff]
Franklin Wei
2017-12-16 430534b: Change button mappings in plugins/lib/keymaps.h

Some of the previous mappings didn't make much sense.
apps/plugins/lib/keymaps.h [diff]
Franklin Wei
2017-12-15 02d20eb: Fix big WTF when closing the current track.

It must be set to something else valid (unless it's the only one left) when closing it, IN ALL CASES, not just if it's first or last. Don't know what was in my head. Hopefully takes care of a reported issue. Even if it's not causing any issues, it was still incorrect.
apps/playback.c [diff]
Michael Sevakis
2017-12-12 c8564f1: Get voice event out of playback.c

Purpose: A step in removing all voice references from playback code and prelude to other changes.
apps/appevents.h [diff]
apps/audio_thread.c [diff]
apps/playback.c [diff]
apps/voice_thread.c [diff]
firmware/export/events.h [diff]
Michael Sevakis
2017-12-12 838ff9c: Add a 32 byte read buffer to read_line.

Do as with fdprintf and avoid filesystem calls for every single byte. If it overreads, just put the excess back with lseek, which does no I/O itself.
apps/misc.c [diff]
Michael Sevakis
2017-12-09 cd3ea08: Buffering: Remove statically-sized path buffer from handle struct

Paths are stored after the structure at their actual length plus any aligment padding. In principle, any type of auxilliary data could go there.
apps/buffering.c [diff]
Michael Sevakis
2017-12-09 6ee3b6f: buffering.c: Fix oopses with caching handle pointer

The location of the handle cannot be kept across calls to shrink_handle() since it may move the structure. The error was there in one place at the inception, corrected, then reintroduced.

Make shrink_handle() return the new location and use it, which makes the side effects of the function clearer.
apps/buffering.c [diff]
Michael Sevakis
2017-12-09 8be4074: Remove recursion from shrink_buffer()

There's no need for it any longer since the list is now doubly- linked. As a bonus, stack limits pose no barrier to the length of the list.
apps/buffering.c [diff]
Michael Sevakis
2017-12-09 65515f3: Fix yellow on hosted targets from c1a01be
apps/playback.c [diff]
Michael Sevakis
2017-12-08 c1a01be: Playback: Move internal track list onto buffer

Does away the statically-allocated track list which frees quite a fair amount of in-RAM size.

There's no compile-time hard track limit.

Recommended TODO (but not right away): Have data small enough use the handle structure as its buffer data area. Almost the entire handle structure is unused for simple allocations without any associated filesystem path.
apps/buffering.c [diff]
apps/buffering.h [diff]
apps/playback.c [diff]
firmware/export/system.h [diff]
Michael Sevakis
2017-12-08 e86ea6b: Get test_codec synced with changes in 6c868dd
apps/plugins/test_codec.c [diff]
Michael Sevakis
2017-12-07 6c868dd: Remove explicit 'enum codec_command_action' in codec API

Just use long so the compiler potentially doesn't complain about use of other values not in the enum. It's also the type used around the system for event ids.

Increase min codec API version.

No functional changes.
apps/codec_thread.c [diff]
lib/rbcodec/codecs/a52.c [diff]
lib/rbcodec/codecs/a52_rm.c [diff]
lib/rbcodec/codecs/aac.c [diff]
lib/rbcodec/codecs/adx.c [diff]
lib/rbcodec/codecs/aiff.c [diff]
lib/rbcodec/codecs/aiff_enc.c [diff]
lib/rbcodec/codecs/alac.c [diff]
lib/rbcodec/codecs/ape.c [diff]
lib/rbcodec/codecs/asap.c [diff]
lib/rbcodec/codecs/atrac3_oma.c [diff]
lib/rbcodec/codecs/atrac3_rm.c [diff]
lib/rbcodec/codecs/au.c [diff]
lib/rbcodec/codecs/ay.c [diff]
lib/rbcodec/codecs/codecs.h [diff]
lib/rbcodec/codecs/cook.c [diff]
lib/rbcodec/codecs/flac.c [diff]
lib/rbcodec/codecs/gbs.c [diff]
lib/rbcodec/codecs/hes.c [diff]
lib/rbcodec/codecs/kss.c [diff]
lib/rbcodec/codecs/mod.c [diff]
lib/rbcodec/codecs/mp3_enc.c [diff]
lib/rbcodec/codecs/mpa.c [diff]
lib/rbcodec/codecs/mpc.c [diff]
lib/rbcodec/codecs/nsf.c [diff]
lib/rbcodec/codecs/opus.c [diff]
lib/rbcodec/codecs/raac.c [diff]
lib/rbcodec/codecs/sgc.c [diff]
lib/rbcodec/codecs/shorten.c [diff]
lib/rbcodec/codecs/sid.c [diff]
...and 16 more files.
Michael Sevakis
2017-12-07 83e8e35: Ensure ci is properly updated if seeking before track load completes

If in the middle of a manual skip, playback would try to seek, and therefore start, the codec before the audio handle was available. This wasn't really a problem since the codec would just bail out and be retried later. But, it is a problem for a change I was working on with seeking where the codec could get caught in a full-speed loop trying to seek itself (stoppable, not lockup).

The main side effect of this change that you may notice, if using an HDD with dircache turned on and the disk is not spinning, is that you can keep holding down prev/next if dir skipping and the WPS will start FF/RW mode. By the time the new track shows up, you will have seeked into it some amount.

Well, the PBE is getting the info ASAP anyway and as far as it's concerned, the next track is under way. On that end of things, it's correct. Perhaps WPS should lock out its own seek mode at certain times.
apps/playback.c [diff]
Michael Sevakis
2017-12-04 bef75a9: Playback: C99-ize FOREACH_ALBUMART; make loop counter local
apps/playback.c [diff]
Michael Sevakis
2017-11-28 055e211: Add a small 32-byte write buffer to fdprintf.

Avoids a call to write() for every output character. It doesn't need to be very large to have a great effect on speed and realize most of the potential.
firmware/common/fdprintf.c [diff]
Michael Sevakis
2017-11-24 d728b97: puzzles: fix off-by-one in blitter clipping

Nobody to blame except myself for this one...
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-11-21 f51544a: puzzles: polish mouse mode

Reduces lag when dragging. Also throws some comments in.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-11-21 ab6e40b: puzzles: fix copy-paste typo
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-11-24 abef236: Do playback restarts the proper way

It isn't necessary to explicitly stop and restart playback to force it to update something that must cause rebuffering.
apps/gui/skin_engine/skin_parser.c [diff]
apps/menus/playback_menu.c [diff]
apps/playback.c [diff]
apps/playback.h [diff]
apps/settings.c [diff]
apps/settings.h [diff]
Michael Sevakis
2017-11-21 75d2e1f: puzzles: add missing file
apps/plugins/bitmaps/native/puzzles_cursor.11x16x24.bmp [new]
Franklin Wei
2017-11-21 c1dc957: puzzles: clean junk files

These are really not needed.
apps/plugins/puzzles/src/Makefile [deleted]
apps/plugins/puzzles/src/Makefile.am [deleted]
apps/plugins/puzzles/src/Makefile.cyg [deleted]
apps/plugins/puzzles/src/Makefile.emcc [deleted]
apps/plugins/puzzles/src/Makefile.gnustep [deleted]
apps/plugins/puzzles/src/Makefile.gtk [deleted]
apps/plugins/puzzles/src/Makefile.in [deleted]
apps/plugins/puzzles/src/Makefile.nestedvm [deleted]
apps/plugins/puzzles/src/Makefile.osx [deleted]
apps/plugins/puzzles/src/Makefile.vc [deleted]
apps/plugins/puzzles/src/Makefile.wce [deleted]
apps/plugins/puzzles/src/aclocal.m4 [deleted]
apps/plugins/puzzles/src/blackbox.html [deleted]
apps/plugins/puzzles/src/bridges.html [deleted]
apps/plugins/puzzles/src/common.html [deleted]
apps/plugins/puzzles/src/compile [deleted]
apps/plugins/puzzles/src/config.log [deleted]
apps/plugins/puzzles/src/configure [deleted]
apps/plugins/puzzles/src/cube.html [deleted]
apps/plugins/puzzles/src/depcomp [deleted]
apps/plugins/puzzles/src/docindex.html [deleted]
apps/plugins/puzzles/src/dominosa.html [deleted]
apps/plugins/puzzles/src/fifteen.html [deleted]
apps/plugins/puzzles/src/filling.html [deleted]
apps/plugins/puzzles/src/flip.html [deleted]
apps/plugins/puzzles/src/flood.html [deleted]
apps/plugins/puzzles/src/galaxies.html [deleted]
apps/plugins/puzzles/src/gamedesc.txt [deleted]
apps/plugins/puzzles/src/guess.html [deleted]
apps/plugins/puzzles/src/index.html [deleted]
...and 37 more files.
Franklin Wei
2017-11-21 e8e85c5: puzzles: resync with upstream; add Loopy and Palisade, mouse mode

This brings a various small changes to the drawing and input code, as well as a brand new "mouse mode", where input goes to a virtual mouse cursor. Only Loopy has this mouse mode enabled by default, while other games have it hidden away under the debug menu. Some changes by me to Palisade were required to make it playable; those are included here as well. Right now, sgt-net is pushing the c200v2's upper limit on size and may have to be dropped in a future commit.
apps/plugins/bitmaps/native/SOURCES [diff]
apps/plugins/puzzles/SOURCES.games [diff]
apps/plugins/puzzles/rbmalloc.c [diff]
apps/plugins/puzzles/rockbox.c [diff]
apps/plugins/puzzles/src/LICENCE [diff]
apps/plugins/puzzles/src/filling.c [diff]
apps/plugins/puzzles/src/grid.c [diff]
apps/plugins/puzzles/src/grid.h [diff]
apps/plugins/puzzles/src/loopy.c [diff]
apps/plugins/puzzles/src/palisade.c [diff]
Franklin Wei
2017-01-26 f4c4221: Convert i.MX31 and AMS target to use RTC interrupt

Instead of checking ticks, set a sticky dirty flag that indicates that the RTC needs to be read. This gives a timely update and more accurate readout without actually reading the RTC until it changes. The implementation should atomically read the flag and clear it. Setting the flag would typically happen in an RTC tick ISR.
firmware/common/timefuncs.c [diff]
firmware/drivers/rtc/rtc_mc13783.c [diff]
firmware/export/config.h [diff]
firmware/target/arm/as3525/ascodec-as3525.c [diff]
firmware/target/arm/as3525/rtc-target.h [new]
firmware/target/arm/imx31/gigabeat-s/mc13783-target.h [diff]
firmware/target/arm/imx31/rtc-target.h [new]
Michael Sevakis
2017-11-21 12bc24a: aced667 forgot about those pesky __PCTOOL__ things.

It was so close to aced666.
apps/misc.c [diff]
Michael Sevakis
2017-09-18 aced667: Undo hacks to meant to get around string formatting limitations

The new vuprintf makes unnecessary workarounds due to formatting limitations. I checked grep output for whatever appeared to fit but it's possible I missed some instances because they weren't so obvious.

Also, this means sound settings can dynamically work with any number of decimals rather than the current assumption of one or two. Add an ipow() function to help and take advantage of dynamic field width and precision. Consolidate string formatting of sound settings.
apps/debug_menu.c [diff]
apps/gui/option_select.c [diff]
apps/gui/skin_engine/skin_tokens.c [diff]
apps/misc.c [diff]
apps/misc.h [diff]
apps/plugins/doom/hu_stuff.c [diff]
apps/plugins/doom/wi_stuff.c [diff]
apps/plugins/otp.c [diff]
apps/recorder/recording.c [diff]
firmware/general.c [diff]
lib/fixedpoint/fixedpoint.c [diff]
lib/fixedpoint/fixedpoint.h [diff]
lib/fixedpoint/fixedpoint.make [diff]
Michael Sevakis
2017-09-08 5c96889: Implement a much more capable vuprintf()

New support as well as some buggy support fixed.

Still no floating point support if ever that would be desired.

Support (*):
* Flags: '-', '+', ' ', '#', '0'

* Width and precision: 'n', '.n', '*' and '.*'

* Length modifiers: 'hh', 'h', 'j', 'l', 'll', 't', 'z'

* Radix: 'c', 'd', 'i', 'n', 'o', 'p/P', 's', 'u', 'x/X'

(*) Provision exists to switch lesser-used stuff on or off or when certain functionality isn't desired (bootloader?). The compulsory radixes are everything but 'o', 'n', 'p/P' and 'x/X' with length modifiers being optional. The default setup is 'l', 'z', 'c', 'd',
'p/P', 's', 'u', 'x/X'.

* Move fdprintf() to its own file. It was in a strange place.

* Make callers compatible and fix a couple snprintf() bugs while at it.

Could smush it down in size but I'm gonna get over the binsize neurosis and just the let optimizer do its thing.
firmware/SOURCES [diff]
firmware/common/fdprintf.c [new]
firmware/common/format.c [deleted]
firmware/common/vuprintf.c [new]
firmware/include/format.h [deleted]
firmware/include/vuprintf.h [new]
firmware/libc/sprintf.c [diff]
firmware/logf.c [diff]
firmware/target/arm/s3c2440/uart-s3c2440.c [diff]
Michael Sevakis
2017-11-18 52af55e: Action Rewrite - Fix red
apps/action.c [diff]
William Wilgus
2017-09-26 b10c0e5: Action.c FIX / Rework / Clean-up Action System

FIX - softlock not allowing power button to shutdown device when active FIX - autolock not working unless Selective backlight enabled

Rework - get_action_worker split into more managable chunks

Rework - moved all static variables to a single struct action_last to be passed through all internal functions

Rework - current action state moved to struct action_current to be initialized at each get_action /get_action_custom call

Rework - action lookup in button maps changed slightly to prefer fully formed actions rather than blindly returning action with BUTTON_NONE as pre_button this should allow actions defined in keymaps positional independence

Rework / Clean-up - moved conditionals on internal functions to inside the functions
-Allows much cleaner code & empty functions should be optimized out by compiler

Rework / Clean-up - softlock and backlight exemptions code

Clean-up - remove a lot of (now) unused defines

Clean-up - organize / move all exported functions to their own section in the file

Comments added to all internal functions to better explain their purpose
apps/action.c [diff]
apps/action.h [diff]
William Wilgus
2017-11-14 ff08c52: nwz: improve keymap

- enable various features in radio screen (like mode switch)
- improve keyboard (short play to select, long play to finish, power to abort)
- enable volume keys in radio screen if available
apps/keymaps/keymap-nwz.c [diff]
apps/radio/radio.c [diff]
Amaury Pouly
2017-11-13 5da0cbe: nwz: enable plugins on all targets except NWZ-A860

Keymap might be suboptimal.
tools/configure [diff]
Amaury Pouly
2017-11-13 bd8dd62: nwz: fix tuner on older players (also fixes audio because Sony)
firmware/target/hosted/sonynwz/nwz_tuner.h [diff]
firmware/target/hosted/sonynwz/radio-nwz.c [diff]
Amaury Pouly
2017-10-20 7272f82: Imx233 Disable Autoslow only at maximum cpu frequency

At normal loads:
- disabling auto slow boosts performance at the cost of runtime (~ -5%)
- disabling at max cpu does not noticibly decrease runtime
firmware/target/arm/imx233/system-imx233.c [diff]
William Wilgus
2017-11-12 ec4fa03: hwstub: add code to dump STMP rom
utils/hwstub/tools/lua/stmp.lua [diff]
utils/hwstub/tools/lua/stmp/rom.lua [new]
Amaury Pouly
2017-11-12 dd6b842: hwstub: expose read/write functions

Previously only atomic read/write 8/16/32 were exposed. But it is useful to be able to read a whole buffer at once, this is more efficient than N times read8.
utils/hwstub/tools/hwstub_shell.cpp [diff]
Amaury Pouly
2017-11-12 df0edba: hwstub: fix horrible bug

It's a wonder it worked, basically any big transfer returned garbage
utils/hwstub/lib/hwstub.cpp [diff]
Amaury Pouly
2017-11-07 63eae43: rolo.c: Change 'int errno' to 'int err'

It can cause issues if errno.h finds itself included there
firmware/rolo.c [diff]
Michael Sevakis
2017-11-06 826f99e: libpcm: Get unbranded structure tag out of my way.

No functional changes.
lib/rbcodec/codecs/aiff.c [diff]
lib/rbcodec/codecs/au.c [diff]
lib/rbcodec/codecs/libpcm/dialogic_oki_adpcm.c [diff]
lib/rbcodec/codecs/libpcm/dvi_adpcm.c [diff]
lib/rbcodec/codecs/libpcm/ieee_float.c [diff]
lib/rbcodec/codecs/libpcm/itut_g711.c [diff]
lib/rbcodec/codecs/libpcm/linear_pcm.c [diff]
lib/rbcodec/codecs/libpcm/ms_adpcm.c [diff]
lib/rbcodec/codecs/libpcm/pcm_common.h [diff]
lib/rbcodec/codecs/libpcm/qt_ima_adpcm.c [diff]
lib/rbcodec/codecs/libpcm/swf_adpcm.c [diff]
lib/rbcodec/codecs/libpcm/yamaha_adpcm.c [diff]
lib/rbcodec/codecs/smaf.c [diff]
lib/rbcodec/codecs/vox.c [diff]
lib/rbcodec/codecs/wav.c [diff]
lib/rbcodec/codecs/wav64.c [diff]
Michael Sevakis
2017-11-06 1015e1f: fix red
apps/debug_menu.c [diff]
Amaury Pouly
2017-11-03 0fe7b8b: nwzlinux: add support for radio

None of the Sony up to A15 seem to support RDS (they use either Si4702 or Si4708), thus I did not add any code to support RDS.
apps/audio_path.c [diff]
apps/debug_menu.c [diff]
firmware/SOURCES [diff]
firmware/drivers/audio/nwzlinux-codec.c [diff]
firmware/export/config/sonynwzlinux.h [diff]
firmware/export/nwzlinux_codec.h [diff]
firmware/target/hosted/sonynwz/audio-nwz.c [new]
firmware/target/hosted/sonynwz/nwz_tuner.h [new]
firmware/target/hosted/sonynwz/radio-nwz.c [new]
tools/configure [diff]
Amaury Pouly
2017-11-05 ee2eb13: mkimxboot: small fixes and display a human readable error
rbutil/mkimxboot/main.c [diff]
rbutil/mkimxboot/mkimxboot.c [diff]
rbutil/mkimxboot/mkimxboot.h [diff]
Amaury Pouly
2017-11-04 5a3b30d: Add support for ZEN Mozaic firmware Version 1.06.01 to mkzenboot
rbutil/mkzenboot/mkzenboot.c [diff]
Amaury Pouly
2017-11-04 8a925d2: fuzep: fix rds
firmware/target/arm/imx233/sansa-fuzeplus/fmradio-i2c-fuzeplus.c [diff]
Amaury Pouly
2017-11-04 d9a55ac: puzzles: fix blitting when zoomed

Both blitter_save() and blitter_load() functioned incorrectly when zoomed in -- blitter_save() would copy from the wrong location, and blitter_load() would ignore the y-coordinate of the destination.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-11-04 7f1dd6f: puzzles: clarify code and documentation

This adds no functionality, but instead cleans up the source and adds some more substantial documentation.
apps/plugins/puzzles/README.rockbox [diff]
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-11-03 9f62373: puzzles: fix title drawing

This fixes two separate bugs: The first was that the drawmode was not reliably set when drawing the title, occasionally leading to a black rectangle where the title should be; the second that the title bar's space wasn't being cleared before drawing, leading to artifacts when the length of the title string changed.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-11-01 07d3b3c: nwztools/scsitools: print device list when listing series
utils/nwztools/scsitools/scsitool.c [diff]
Amaury Pouly
2017-11-01 62f0ba1: nwztools: add NW-A46 to the database
firmware/target/hosted/sonynwz/nwz-db.c [diff]
firmware/target/hosted/sonynwz/nwz-db.h [diff]
utils/nwztools/database/models.txt [diff]
utils/nwztools/database/series.txt [diff]
Amaury Pouly
2017-10-30 8ef33f4: AMS: Convert ascodec_endofch() to use bit mod function's return value.

It cleans up the code and it was the initial inspiring reason to change them.
firmware/target/arm/as3525/ascodec-as3525.c [diff]
Michael Sevakis
2017-01-24 f728559: Make atomic bit modification functions return previous value.
firmware/export/system.h [diff]
firmware/target/arm/bits-armv4.S [diff]
firmware/target/arm/bits-armv6.S [diff]
Michael Sevakis
2017-10-30 65e7617: puzzles: add an interaction mode to the "Zoom In" feature

This makes it possible to play the game while zoomed in. Read the manual entry if you want to know more.
apps/plugins/puzzles/rockbox.c [diff]
manual/plugins/sgt-puzzles.tex [diff]
Franklin Wei
2017-10-29 1f3e70a: puzzles: sync with upstream

This includes the fix for Map's incorrect cursor positioning when zoomed in.
apps/plugins/puzzles/src/gtk.c [diff]
apps/plugins/puzzles/src/map.c [diff]
apps/plugins/puzzles/src/solo.c [diff]
Franklin Wei
2017-10-29 2423d3d: Revert "tlsf: pack info structs"

This reverts commit 8a6d7cefc9bf45b979ff064d87141949e9b81ca4.

Packing the structs was mostly a precautionary measure, tlsf should still work without it.
lib/tlsf/src/tlsf.c [diff]
Franklin Wei
2017-02-10 e9de9c1: Add boot from other volumes in bootloader on targets with HAVE_MULTIVOLUME

Adds the ability to load firmware from other drives on MULTIVOLUME targets Mihail Zenkov had posted a hard coded patch to allow this on several Sansa players, I made it more universal

Redirect file rockbox_main.<name> should placed in root of drive you would like to be main, if this file empty or there a single slash '/' firmware will be loaded from /.rockbox in root of this drive If instead a /<*DIRECTORY*> is supplied in rockbox_main.<name> then firmware will be loaded from /<dir>/.rockbox/

NOTES*

The directory can have multiple levels however.. leading slash MUST be included trailing slash can be omitted
(eg. /test/.rockbox would be simply '/test' in the redirect file)

Redirect file will not work on internal drive (whatever is default boot drive)

Volume with the highest index containing redirect file will be loaded first.

Firmware file is checked for boot data region, if missing, firmware image will not be loaded.

On failure or if no redirect file is found load will fallback to internal drive

Currently only Sansa Fuze+, Sansa Clip+, Sansa Clip Zip, Sansa Fuzev2, and Sansa Fuzev1 are implemented.

Players (with HAVE_MULTIVOLUME) will need #define HAVE_BOOTDATA and #define BOOT_REDIR "rockbox_main.<name>" added to their config file

boot_data is implemented in crt0.s file (See g#1552) ARM and IMX233 have aleady been implemented

Once these conditions are met <HAVE_MULTIBOOT> will be defined by config.h

Partitions on the drives are able to have a redirect as well.
firmware/common/rb-loader.c [diff]
firmware/export/config.h [diff]
firmware/export/config/sansaclipplus.h [diff]
firmware/export/config/sansaclipzip.h [diff]
firmware/export/config/sansafuze.h [diff]
firmware/export/config/sansafuzeplus.h [diff]
firmware/export/config/sansafuzev2.h [diff]
firmware/include/rb-loader.h [diff]
William Wilgus
2017-02-08 efb71ed: Add boot data to MOST AS3525 Devices

Adds boot data to as3525 devices Sansa C200v2 E200v2 Clip Clipv2 Clip+ ClipZip fuze, fuzev2 m200v4

Adds boot_data to features.txt

default arm crt0.s now had boot data if HAVE_BOOTDATA is defined
apps/features.txt [diff]
firmware/export/config/sansaclipplus.h [diff]
firmware/export/config/sansaclipv2.h [diff]
firmware/export/config/sansaclipzip.h [diff]
firmware/export/config/sansafuze.h [diff]
firmware/export/config/sansafuzev2.h [diff]
firmware/target/arm/crt0.S [diff]
William Wilgus
2017-02-05 41869a6: Add boot data support to rockbox.

Bootdata is a special location in the Firmware marked by a magic header The bootloader is able to copy information to the firmware by locating this struct and passing data to the firmware when it is loaded but before it is actually executed

Data is verified by a crc of the bootdata

apps/debug_menu.c [diff]
firmware/common/rb-loader.c [diff]
firmware/export/bootdata.h [new]
firmware/export/config/creativezen.h [diff]
firmware/export/config/creativezenxfi2.h [diff]
firmware/export/config/creativezenxfi3.h [diff]
firmware/export/config/samsungypz5.h [diff]
firmware/export/config/sansafuzeplus.h [diff]
firmware/export/config/sonynwze360.h [diff]
firmware/export/config/sonynwze370.h [diff]
firmware/target/arm/imx233/crt0.S [diff]
William Wilgus
2017-10-29 60e5cd7: tlsf: remove memset() call in add_new_area()

This call was not needed in the first place, but was causing crashes in sgt-puzzles. Removing it fixes the crashes.
lib/tlsf/src/tlsf.c [diff]
Franklin Wei
2017-10-29 8a6d7ce: tlsf: pack info structs

This should make it build cleanly under -Wcast-align, which should hopefully avoid any alignment issues on ARM.
lib/tlsf/src/tlsf.c [diff]
Franklin Wei
2017-10-29 47ebf62: puzzles: improve zoom rendering

This adds colored font rendering, as well as a workaround for font loading while zoomed. Additionally, the frontend has been modified to match the new upstream API.
apps/plugins/puzzles/rbmalloc.c [diff]
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-10-13 b2c4707: imx233: Implement mutex for cpu_boost_lock/unlock

Playing AAC-HE files resulted in a race condition between audio/codec/buffering for set_cpu_frequency
firmware/target/arm/imx233/system-imx233.c [diff]
firmware/target/arm/imx233/system-target.h [diff]
William Wilgus
2017-10-02 4284647: SVG image of the Sony NWZ-E580 and other formats for the manual.
manual/rockbox_interface/images/nwze580-front.pdf [new]
manual/rockbox_interface/images/nwze580-front.png [new]
manual/rockbox_interface/images/nwze580-front.svg [new]
Szymon Dziok
2017-10-27 9ba899f: puzzles: fix clipping and 24-bit handling

Should fix the build.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-10-27 8b8e25f: puzzles: add "Zoom In" option to improve usability

This adds a "Zoom In" option to the pause menu of each puzzle, which displays the puzzle at triple size (subject to change). This should help with tiny screens, modulo memory concerns associated with allocating the temporary framebuffer to which drawing operations are redirected. Coincidentally, there's an upstream bug with Map that causes the cursor's positioning to be incorrectly displayed when zoomed.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-10-26 e4a46c8: Fix a few missed things in 16454efc (and hopefully clear the red).
firmware/export/storage.h [diff]
firmware/target/arm/rk27xx/ata-nand-rk27xx.c [diff]
firmware/target/mips/ingenic_jz47xx/ata-sd-jz4740.c [diff]
firmware/usb.c [diff]
Michael Sevakis
2017-03-15 1654efc: Unify storage threads into one

* Editing a bunch of drivers' thread routines in order to implement a new feature is tedious.

* No matter the number of storage drivers, they share one thread. No extra threads needed for CONFIG_STORAGE_MULTI.

* Each has an event callback called by the storage thread.

* A default callback is provided to fake sleeping in order to trigger idle callbacks. It could also do other default processing. Changes to it will be part of driver code without editing each one.

* Drivers may sleep and wake as they please as long as they give a low pulse on their storage bit to ask to go into sleep mode. Idle callback is called on its behalf and driver immediately put into sleep mode.

* Drivers may indicate they are to continue receiving events in USB mode, otherwise they receve nothing until disconnect (they do receive SYS_USB_DISCONNECTED no matter what).

* Rework a few things to keep the callback implementation sane and maintainable. ata.c was dreadful with all those bools; make it a state machine and easier to follow. Remove last_user_activity; it has no purpose that isn't served by keeping the disk active through last_disk_activity instead.

* Even-out stack sizes partly because of a lack of a decent place to define them by driver or SoC or whatever; it doesn't seem too critical to do that anyway. Many are simply too large while at least one isn't really adequate. They may be individually overridden if necessary (figure out where). The thread uses the greatest size demanded. Newer file code is much more frugal with stack space. I barely see use crack 50% after idle callbacks
(usually mid-40s). Card insert/eject doesn't demand much.

* No forcing of idle callbacks. If it isn't necessary for one or more non-disk storage types, it really isn't any more necessary for disk storage. Besides, it makes the whole thing easier to implement.
firmware/drivers/ata.c [diff]
firmware/drivers/ramdisk.c [diff]
firmware/export/ata.h [diff]
firmware/export/ata_mmc.h [diff]
firmware/export/sd.h [diff]
firmware/export/storage.h [diff]
firmware/storage.c [diff]
firmware/target/arm/as3525/sd-as3525.c [diff]
firmware/target/arm/as3525/sd-as3525v2.c [diff]
firmware/target/arm/ata-nand-telechips.c [diff]
firmware/target/arm/imx233/ata-target.h [diff]
firmware/target/arm/imx233/sdmmc-imx233.c [diff]
firmware/target/arm/imx31/ata-target.h [diff]
firmware/target/arm/pp/ata-sd-pp.c [diff]
firmware/target/arm/pp/ata-target.h [diff]
firmware/target/arm/rk27xx/sd-rk27xx.c [diff]
firmware/target/arm/s3c2440/gigabeat-fx/ata-target.h [diff]
firmware/target/arm/s3c2440/sd-s3c2440.c [diff]
firmware/target/arm/s5l8700/ata-nand-s5l8700.c [diff]
firmware/target/arm/s5l8700/ipodnano2g/nand-nano2g.c [diff]
firmware/target/arm/s5l8702/ipod6g/storage_ata-6g.c [diff]
firmware/target/arm/tcc780x/sd-tcc780x.c [diff]
firmware/target/arm/tms320dm320/sdmmc-dm320.c [diff]
firmware/target/mips/ingenic_jz47xx/ata-sd-jz4740.c [diff]
firmware/target/sh/archos/ondio/ata_mmc.c [diff]
Michael Sevakis
2017-10-26 7807934: atjboottool: document more header fields and crypto code

The encryption definitely uses some standard elliptic curve encryption over binary fields (163 and 233 bits, standard polynomials). It is still unclear how this is used in the actual encryption, the key authentification and derivation do not look standard.
utils/atj2137/atjboottool/atj_tables.c [diff]
utils/atj2137/atjboottool/atj_tables.h [diff]
utils/atj2137/atjboottool/fwu.c [diff]
Amaury Pouly
2017-10-24 3ad9cae: puzzles: make Untangle's input code return UI_UPDATE instead of ""

This was changed upstream and slipped by when I was merging the changes.
apps/plugins/puzzles/src/untangle.c [diff]
Franklin Wei
2017-10-24 819d3ee: nwztools: add NW-A45
firmware/target/hosted/sonynwz/nwz-db.c [diff]
firmware/target/hosted/sonynwz/nwz-db.h [diff]
utils/nwztools/database/models.txt [diff]
utils/nwztools/database/series.txt [diff]
Amaury Pouly
2017-10-24 2ae792c: nwztools: add NW-ZX300A
firmware/target/hosted/sonynwz/nwz-db.c [diff]
firmware/target/hosted/sonynwz/nwz-db.h [diff]
utils/nwztools/database/models.txt [diff]
utils/nwztools/database/series.txt [diff]
Amaury Pouly
2017-10-23 a644489: puzzles: adapt frontend to upstream changes
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-10-23 ef13067: puzzles: resync with upstream

There have been some improvements with regard to small screen sizes, which will be nice to have.
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 77 more files.
Franklin Wei
2017-10-12 7a8c9da: test_mem: increase dram buffer if possible, cap number of iterations
apps/plugins/test_mem.c [diff]
Amaury Pouly
2017-10-08 e441c26: nwztools/upgtools: make the tool print the whole kas, not just 16 bytes
utils/nwztools/upgtools/upgtool.c [diff]
Amaury Pouly
2017-10-20 7e42e90: atjboottool: add support for FwuTail
utils/atj2137/atjboottool/fwu.c [diff]
Amaury Pouly
2017-10-20 6e79c4c: nwztools: add KAS for NW-A40 series
utils/nwztools/upgtools/upg.c [diff]
Amaury Pouly
2017-10-17 1eab18c: nwztools/scsitools: don't try to get nodes when we don't know about the device
utils/nwztools/scsitools/scsitool.c [diff]
Amaury Pouly
2017-10-17 9a8a52c: nwztools/scsitool: slightly rework of help_us and help

Now print list of devices immediately even if the rest of the command line is empty (ie 'scsitool -s ?' works, whereas before one would need an actual device to even get a list). Add more information in the help_us command: print kas, lyr and fpi.
utils/nwztools/scsitools/scsitool.c [diff]
Amaury Pouly
2017-10-17 6922323: sonynwz: add NW-A47 to the database and regenerate nwz_db.{c,h}
firmware/target/hosted/sonynwz/nwz-db.c [diff]
firmware/target/hosted/sonynwz/nwz-db.h [diff]
utils/nwztools/database/models.txt [diff]
utils/nwztools/database/series.txt [diff]
Amaury Pouly
2017-10-14 81f5a22: Fix plugin core_alloc_maximum functionality

One mustn't assume a plugin will only call plugin_get_audio_buffer one time or that the buffer_size pointer is always non-NULL. At least one plugin, pacbox, will call it each time it (re)starts audio, with a NULL param (which is intentional because it only wants to kill audio playback), and leak away all the RAM because the handle gets clobbered by further calls and the memory can't be released.
apps/plugin.c [diff]
Michael Sevakis
2017-10-12 a8e4b3a: PBE+Surround: Localize some variables and fixup some flush ops
lib/rbcodec/dsp/pbe.c [diff]
lib/rbcodec/dsp/surround.c [diff]
Michael Sevakis
2017-10-12 5eee28e: Nitpick configuration code in a few DSP filters to fix some bugs

Most importantly is surround shouldn't operate in mono mode. Have it watch and (de)activate itself on relevant format changes as it should.

Other changes to better handle buffer allocation failure.

PBE was set internally at 100 by default; SBZ.
lib/rbcodec/dsp/afr.c [diff]
lib/rbcodec/dsp/pbe.c [diff]
lib/rbcodec/dsp/surround.c [diff]
Michael Sevakis
2017-10-07 afbae17: sonynwz: add api and debug entries for "acoustic" and "cue/rev" mode

We don't really know what those are supposed to do. They seem to change the volume curve but it is not very clear what is the intended purpose.
firmware/drivers/audio/nwzlinux-codec.c [diff]
firmware/export/nwzlinux_codec.h [diff]
firmware/target/hosted/sonynwz/debug-nwz.c [diff]
Amaury Pouly
2017-10-07 26d18fd: Add alsa wrappers to get control values
firmware/target/hosted/alsa-controls.c [diff]
firmware/target/hosted/alsa-controls.h [diff]
Amaury Pouly
2017-10-07 5af813c: nwztools: add NW-ZX300 KAS, extracted from a device

Now this is very weird, is it yet another format/encryption?
utils/nwztools/upgtools/upg.c [diff]
Amaury Pouly
2017-10-03 ff62528: Make playlist CRC the correct path when saving resume info

Playlist was CRC-ing the path from the id3, which may have been modified to remove "bogus dirs". This would cause a CRC mismatch in the resume information.

Now, just use the current playlist's current index and call playlist_get_filename_crc32() to get the original path when updating resume info.

While technically correct, if this causes any issue(s) it's just a one-line change and painless to revert.
apps/playlist.c [diff]
Michael Sevakis
2017-10-07 0fbd93b: nwztools/scsitools: fix database

I forgot to add the NW-ZX300 to its series
firmware/target/hosted/sonynwz/nwz-db.c [diff]
utils/nwztools/database/series.txt [diff]
Amaury Pouly
2017-10-07 7eb240a: Add Sony NW-ZX300 model id to database
firmware/target/hosted/sonynwz/nwz-db.c [diff]
firmware/target/hosted/sonynwz/nwz-db.h [diff]
utils/nwztools/database/models.txt [diff]
Amaury Pouly
2017-10-06 4382f87: cleanup linux cpuinfo code sonynwz: quirk for cpufreq broken driver

There was some redundancy between frequency_linux(cpu, true) and current_scaling_frequency(), also I see no reason to compile the cpuinfo stuff unconditionally and the scaling info only on DX since it was already printed some partial scaling info anyway. Thus compile all the code unconditionally and simplify the logic in the debug menu. Also avoid putting buffers of size PATH_MAX on stack since it can be quite big and we only requires 64 bytes for those paths.

On Sony NWZ, the cpu driver reports frequency in MHz instead of kHz thus we need to make the cpuinfo code aware of that bug.
apps/debug_menu.c [diff]
firmware/target/hosted/cpuinfo-linux.c [diff]
firmware/target/hosted/cpuinfo-linux.h [diff]
Amaury Pouly
2017-10-06 2f3801b: fix typo
utils/nwztools/scsitools/scsitool.c [diff]
Amaury Pouly
2017-10-06 d9da483: nwztools/scsitool: various improvements

The tool now provides more useful information for developers when the device is not supported. Is also has a new verb "help_us" that also prints all this information (notably the device info and model ID).
utils/nwztools/scsitools/scsitool.c [diff]
Amaury Pouly
2017-10-06 698779e: sonynwz: add nvp nodes for NW-A40/ZX300, various fixes for tools

We still miss the model IDS for those device so scsitool won't be able to recognize them automatically.
firmware/target/hosted/sonynwz/nwz-db.c [diff]
firmware/target/hosted/sonynwz/nwz-db.h [diff]
utils/nwztools/database/gen_db.py [diff]
utils/nwztools/database/nvp/nw-a40.txt [new]
utils/nwztools/database/nvp/nw-zx300.txt [new]
utils/nwztools/database/nvp/parse_nvp_header.sh [diff]
utils/nwztools/database/series.txt [diff]
Amaury Pouly
2017-10-02 3f1e4a0: xworld: only build manual for color targets
manual/plugins/main.tex [diff]
Franklin Wei
2017-10-01 66b49dc: Need limits.h for hosted builds
lib/fixedpoint/fixedpoint.c [diff]
Michael Sevakis
2017-09-30 b2a373e: Replace fp_sqrt function with one that only uses shift, or and sub.

Simply extends the current isqrt() to be able to do fractional bits and improves the initial estimate using clz(). iqrt() itself is no more and is equivalent to fp_sqrt(x, 0). The original also had a small bug where the guess comparision should have been >=, not >.

Uses no large integer math or division and is very accurate
(simply returns a truncated fraction).
apps/plugins/fft/fft.c [diff]
lib/fixedpoint/fixedpoint.c [diff]
lib/fixedpoint/fixedpoint.h [diff]
Michael Sevakis
2017-10-01 679ae2d: sonynwzlinux: print debug info to log on crash

Print the crash info and dump the memory map from /proc/self/maps
firmware/target/hosted/sonynwz/system-nwz.c [diff]
Amaury Pouly
2017-10-01 a82ebac: sonynwza10/a20: enable pcm frequency selection
firmware/drivers/audio/nwzlinux-codec.c [diff]
firmware/export/config/sonynwzlinux.h [diff]
firmware/target/hosted/alsa-controls.c [diff]
firmware/target/hosted/alsa-controls.h [diff]
firmware/target/hosted/pcm-alsa.c [diff]
Amaury Pouly
2017-10-01 50e93d5: sonynwzlinux: enable software tone controls

As far as I know, they are not supported by the hardware
firmware/export/config/sonynwzlinux.h [diff]
Amaury Pouly
2017-09-30 23e7d0e: xworld: support diagonal buttons on Zen X-Fi
apps/plugins/lib/keymaps.h [diff]
apps/plugins/xworld/resource.c [diff]
apps/plugins/xworld/sys.c [diff]
apps/plugins/xworld/sys.h [diff]
Franklin Wei
2017-09-30 bb55fce: Remove old keymaps from xworld and puzzles

They've been replaced by the one in apps/plugins/lib/
apps/plugins/puzzles/keymaps.h [deleted]
apps/plugins/xworld/keymaps.h [deleted]
Franklin Wei
2017-03-29 752f7b1: Harmonize plugin keymaps

Aims to provide a lib/keymaps.h for plugins needing simple button functionality beyond that provided by PLA. Currently used by puzzles and xworld.
apps/plugins/lib/keymaps.h [new]
apps/plugins/puzzles/rockbox.c [diff]
apps/plugins/xworld/sys.c [diff]
Franklin Wei
2017-09-30 b938610: puzzles: resync with upstream

This brings puzzles to upstream commit 84d3fd2.
apps/plugins/puzzles/src/Buildscr [diff]
apps/plugins/puzzles/src/PuzzleApplet.java [diff]
apps/plugins/puzzles/src/Recipe [diff]
apps/plugins/puzzles/src/chm.but [deleted]
apps/plugins/puzzles/src/devel.but [diff]
apps/plugins/puzzles/src/drawing.c [diff]
apps/plugins/puzzles/src/emcc.c [diff]
apps/plugins/puzzles/src/emcclib.js [diff]
apps/plugins/puzzles/src/emccpre.js [diff]
apps/plugins/puzzles/src/emccx.json [diff]
apps/plugins/puzzles/src/gtk.c [diff]
apps/plugins/puzzles/src/html/jspage.pl [diff]
apps/plugins/puzzles/src/loopy.c [diff]
apps/plugins/puzzles/src/midend.c [diff]
apps/plugins/puzzles/src/mines.c [diff]
apps/plugins/puzzles/src/misc.c [diff]
apps/plugins/puzzles/src/mkfiles.pl [diff]
apps/plugins/puzzles/src/nestedvm.c [diff]
apps/plugins/puzzles/src/net.c [diff]
apps/plugins/puzzles/src/osx.m [diff]
apps/plugins/puzzles/src/pattern.c [diff]
apps/plugins/puzzles/src/puzzles.h [diff]
apps/plugins/puzzles/src/tracks.c [diff]
apps/plugins/puzzles/src/webpage.pl [diff]
apps/plugins/puzzles/src/windows.c [diff]
apps/plugins/puzzles/src/winwix.mc [diff]
Franklin Wei
2017-09-29 ea679de: atjboottool: put afi and fw code in its own files
utils/atj2137/atjboottool/Makefile [diff]
utils/atj2137/atjboottool/afi.c [new]
utils/atj2137/atjboottool/afi.h [diff]
utils/atj2137/atjboottool/atjboottool.c [diff]
utils/atj2137/atjboottool/fw.c [new]
utils/atj2137/atjboottool/fw.h [new]
utils/atj2137/atjboottool/fwu.c [diff]
Amaury Pouly
2017-09-29 95c32a5: atjboottool: split fwu code into its own file

Slightly cleanup the code by removing the old and dangerous --force option.
utils/atj2137/atjboottool/Makefile [diff]
utils/atj2137/atjboottool/afi.h [new]
utils/atj2137/atjboottool/atjboottool.c [diff]
utils/atj2137/atjboottool/fwu.c [new]
utils/atj2137/atjboottool/fwu.h [new]
utils/atj2137/atjboottool/misc.c [diff]
utils/atj2137/atjboottool/misc.h [diff]
Amaury Pouly
2017-09-24 13364c5: Fix make race conditions reharding lang.h

The bug is due to a stupid make misfeature. The article [1] contains much more information but in a nutshell, the following code:

a b: c bla

is equivalent to:

a: c bla b: c bla

This is bad because in parallel runs (make -j typically), "bla" can be run TWICE and even worse, twice in PARALLEL. Obviously the result will be completely unexpected. This is a real bummer because on the other hand, the following code:

%.c %.h: %:in bla

actually expresses the fact that bla produces two files. For some reasons, pattern rules work differently from implicit rules.

This commit attempts to fix the problem with lang.h by rewriting (simplified):

lang.c lang.h: lang.in genlang

as

lang.h: lang.in genlang lang.c: lang.h

This works (it correctly expresses the dependency chain and ensures genlang runs once) but as one drawback: if one manually removes lang.c, then genlang will not re-run since the second rule does nothing. This is minor drawback since no one ever removes lang.c manually and "clean" removes lang.h which triggers a rebuild.

[1]: https://www.gnu.org/software/automake/manual/html_node/Multiple-Outputs.html
apps/lang/lang.make [diff]
Amaury Pouly
2016-09-03 533b2da: Rockbox Utility: updated Czech translation

translated missing strings and revised existing
rbutil/rbutilqt/lang/rbutil_cs.ts [diff]
Pavel Rzehák
2017-09-22 acc3ef3: Print "GEN lang.h" when generated language header.

Hopefully this will help narrow down the problem with LANG_* error message, I have the feeling that lang.h is not generated in time but it's very hard to reproduce.
apps/lang/lang.make [diff]
Amaury Pouly
2017-09-22 9c83e07: Fix bug in pcm-alsa.c

I introduced the bug by mistake when adding support for 32-bit sample rate.
firmware/target/hosted/pcm-alsa.c [diff]
Amaury Pouly
2017-08-14 638eaeb: Fix keymap for YP-R0 regarding broken keylock, add more key maps

Keylock is now toggled by the key combo User&Power for WPS and FMS. Pitchscreen has been added as long press of User.

While in bookmark screen, short press of Power deletes bookmark. While in (most) menus or tree, first press of MENU takes you back to the main menu, second press to WPS (aka button_context_tree).

Removed ACTION_WPSAB_SINGLE as long press of USER is now Pitchscreen.
apps/keymaps/keymap-ypr0.c [diff]
Johannes Rauh
2017-04-30 c1097cc: Rename "Selective Backlight" to "Backlight Exemptions" and add German translation


Calling the menu entry "Backlight Exemptions" as this better describes the functionality. Adding the German translation.
apps/lang/deutsch.lang [diff]
apps/lang/english.lang [diff]
manual/configure_rockbox/display_options.tex [diff]
Johannes Rauh
2017-09-20 cee7f5c: Fix some warnings due to the previous commit
apps/lang/greek.lang [diff]
Frank Gevaerts
2017-09-20 c2698c6: Update Greek, Swedish, Italian and Serbian.

Thanks to Constantine Mountantonakis, Jonatan Nyberg, Alessandro Stoppani and Ivan Pesic
(FS #13130, FS #13124, FS #13126, FS #13112)
apps/lang/greek.lang [diff]
apps/lang/italiano.lang [diff]
apps/lang/srpski.lang [diff]
apps/lang/svenska.lang [diff]
docs/CREDITS [diff]
Frank Gevaerts
2017-09-20 af8d719: Remove STORAGE_NEEDS_ALIGN from config headers

It's no longer required or used in the file code.
firmware/export/config/hifietma8.h [diff]
firmware/export/config/hifietma8c.h [diff]
firmware/export/config/hifietma9.h [diff]
firmware/export/config/hifietma9c.h [diff]
firmware/export/config/hifimanhm60x.h [diff]
firmware/export/config/hifimanhm801.h [diff]
firmware/export/config/ihifi760.h [diff]
firmware/export/config/ihifi960.h [diff]
firmware/export/config/ipod6g.h [diff]
firmware/export/config/rk27generic.h [diff]
Michael Sevakis
2017-09-19 5f4de5b: nwztools/scsitools: make do_fw_upgrade output less confusing
utils/nwztools/scsitools/scsitool.c [diff]
Amaury Pouly
2017-09-19 99cc8f8: upgtools: fix bug in brute force search

DES ignores the parity bit of each byte (making the 64-bit key really 56-bit), but the current code skipped the parity bit of each half-byte, thus missing some keys.
utils/nwztools/upgtools/keysig_search.c [diff]
Amaury Pouly
2017-09-18 048aecd: remove inaccurate comment
bootloader/nwz_linux.c [diff]
Amaury Pouly
2017-09-17 6a62cc1: Add NWZ-E350 as unstable
tools/builds.pm [diff]
Amaury Pouly
2017-09-17 127e6bb: Add support for the NWZ-E350

Strangely it has the SAME encryption key as the E450. Either they didn't bother changing it or more likely they have exactly the same internals and a slightly different case.
firmware/export/config.h [diff]
firmware/export/config/sonynwze350.h [new]
rbutil/mknwzboot/mknwzboot.c [diff]
tools/configure [diff]
tools/scramble.c [diff]
utils/nwztools/upgtools/upg.c [diff]
Amaury Pouly
2017-09-17 aedf4d2: nwzlinux: print version and model in bootloader
bootloader/nwz_linux.c [diff]
Amaury Pouly
2017-09-17 7de1d8b: mknwzboot: add support for uninstallation

There is not need for a bootloader file to create an uninstall firmware so one needs to provide a model. Also cleanup the install script a bit by factoring message into a function, also print them to the log so that the user can report what was printed on the screen easily. The uninstall script is quite trivial, it remounts the rootfs and restores the backed up OF to its right place.
rbutil/mknwzboot/Makefile [diff]
rbutil/mknwzboot/install_script.sh [diff]
rbutil/mknwzboot/main.c [diff]
rbutil/mknwzboot/mknwzboot.c [diff]
rbutil/mknwzboot/mknwzboot.h [diff]
rbutil/mknwzboot/uninstall_script.sh [new]
Amaury Pouly
2017-09-17 ac59669: fix warning in lcd-as-memframe.c

The fix is to actually remove unused variables. Those were unused from day 1, which I find slightly suspicious so either there is some problem or the code was copy-pasted and modified, making some variables useless.
firmware/asm/lcd-as-memframe.c [diff]
Amaury Pouly
2017-09-17 3b7263b: fix warning in vorbis
lib/rbcodec/codecs/vorbis.c [diff]
Amaury Pouly
2017-09-17 91d3c8e: Add support for the Sony NWZ-S750
firmware/export/config.h [diff]
firmware/export/config/sonynwzs750.h [new]
rbutil/mknwzboot/mknwzboot.c [diff]
tools/builds.pm [diff]
tools/configure [diff]
tools/scramble.c [diff]
Amaury Pouly
2017-09-16 3d81540: Don't call touchscreen functions when we don't have a touchscreen
firmware/target/arm/imx233/debug-imx233.c [diff]
Amaury Pouly
2017-09-16 a486ee4: fix red on ypr0/ypr1

Always compile in pcm_alsa_set_digital_volume, the linker will optimize it away on targets that don't use it.
firmware/target/hosted/pcm-alsa.c [diff]
Amaury Pouly
2017-09-16 53ebdbc: Add NWZ-A860 as unstable
tools/builds.pm [diff]
Amaury Pouly
2017-09-16 546d229: imx233: make debug usable with a touchscreen
firmware/target/arm/imx233/debug-imx233.c [diff]
Amaury Pouly
2017-09-16 064fa90: zenxfi2: fix touchscreen bug

Due to some undocumented behavior, the touchscreen was almost unusable in point mode. Now it's much better but still not very nice to use, probably it needs some filtering.
firmware/target/arm/imx233/creative-zenxfi2/button-zenxfi2.c [diff]
Amaury Pouly
2017-09-16 a0fca0c: Add simulator support for the A860

This requires a few changes unrelated to the A860 because configure unsets APPLICATION but the NWZ is an application!
apps/debug_menu.c [diff]
firmware/SOURCES [diff]
firmware/export/config/sonynwzlinux.h [diff]
firmware/export/hostfs.h [diff]
firmware/target/hosted/sdl/sim-ui-defines.h [diff]
uisimulator/bitmaps/UI-sonynwza860.bmp [new]
uisimulator/buttonmap/SOURCES [diff]
uisimulator/buttonmap/sony-nwza860.c [new]
Amaury Pouly
2017-09-10 ac57f96: Add support for the NWZ-A860
apps/SOURCES [diff]
apps/keymaps/keymap-nwza860.c [new]
bootloader/nwz_linux.c [diff]
firmware/export/config.h [diff]
firmware/export/config/sonynwza860.h [new]
firmware/target/hosted/sonynwz/button-nwz.c [diff]
firmware/target/hosted/sonynwz/button-target.h [diff]
rbutil/mknwzboot/mknwzboot.c [diff]
tools/configure [diff]
tools/scramble.c [diff]
Amaury Pouly
2017-09-06 f22ccab: sonynwz: fix various drivers, notably touchscreen related
firmware/target/hosted/sonynwz/button-nwz.c [diff]
firmware/target/hosted/sonynwz/lcd-nwz.c [diff]
firmware/target/hosted/sonynwz/system-nwz.c [diff]
Amaury Pouly
2017-04-18 0291db3: For Sony players that have explicit volume keys, make better use of the up and down button


Longpress Up: pitch screen Down: playlist view
apps/keymaps/keymap-nwz.c [diff]
Johannes Rauh
2017-09-15 8b74457: ATJ hwstub: Add cache coherency

All the hard work was done by pamaury. I simply added proper defines.
utils/hwstub/stub/atj213x/target-config.h [diff]
Marcin Bukat
2017-09-07 c6d5cd7: ARM support: provide compiler a better popcount function

Just the 32-bit one for now. The default uses lookup tables and is ungainly and bloated.
lib/arm_support/support-arm.S [diff]
Michael Sevakis
2017-09-07 28591f2: Explicitly provide both cases in conditional (fixes warning)
apps/gui/bitmap/list.c [diff]
Frank Gevaerts
2017-08-30 e6de6c1: qeditor: add workaround for c++11 in qt4, suggest to use qt5
utils/regtools/qeditor/qeditor.pro [diff]
Amaury Pouly
2017-09-06 1d58667: Make android build work with both old and new locations of zipalign
android/android.make [diff]
Frank Gevaerts
2017-09-06 4580897: fix yellows
firmware/target/hosted/sonynwz/debug-nwz.c [diff]
tools/creative.c [diff]
Amaury Pouly
2017-09-06 2354854: Forgot to add the name to CREDIT in 3a5ae7d
docs/CREDITS [diff]
Amaury Pouly
2017-09-06 6e819f8: Add NWZ-E450/E460/E470/E580/A10/A20 as unstable
tools/builds.pm [diff]
Amaury Pouly
2017-04-29 3a5ae7d: Add support for Sony NW-A20

Add original author to CREDITS
firmware/export/config.h [diff]
firmware/export/config/sonynwa20.h [new]
rbutil/mknwzboot/mknwzboot.c [diff]
tools/configure [diff]
tools/scramble.c [diff]
Johannes Rauh
2017-02-23 1d121e8: Initial commit for the Sony NWZ linux port

SUPPORTED SERIES:
- NWZ-E450
- NWZ-E460
- NWZ-E470
- NWZ-E580
- NWZ-A10

NOTES:
- bootloader makefile convert an extra font to be installed alongside the bootloader since sysfont is way too small
- the toolsicon bitmap comes from the Oxygen iconset
- touchscreen driver is untested

TODO:
- implement audio routing driver (pcm is handled by pcm-alsa)
- fix playback: it crashes on illegal instruction in DEBUG builds
- find out why the browser starts at / instead of /contents
- implement radio support
- implement return to OF for usb handling
- calibrate battery curve (NB: of can report a battery level on a 0-5 scale but probabl don't want to use that ?)
- implement simulator build (we need a nice image of the player)
- figure out if we can detect jack removal

POTENTIAL TODOS:
- try to build a usb serial gadget and gdbserver
apps/bitmaps/bitmaps.make [diff]
apps/bitmaps/native/SOURCES [diff]
apps/bitmaps/native/rockboxicon.130x130x16.bmp [new]
apps/bitmaps/native/toolsicon.130x130x16.bmp [new]
apps/debug_menu.c [diff]
apps/keymaps/keymap-nwz.c [diff]
bootloader/SOURCES [diff]
bootloader/common.c [diff]
bootloader/common.h [diff]
bootloader/nwz_linux.c [new]
firmware/SOURCES [diff]
firmware/asm/SOURCES [diff]
firmware/drivers/audio/nwzlinux-codec.c [new]
firmware/export/audiohw.h [diff]
firmware/export/backtrace.h [new]
firmware/export/config.h [diff]
firmware/export/config/sonynwza10.h [new]
firmware/export/config/sonynwze450.h [new]
firmware/export/config/sonynwze460.h [new]
firmware/export/config/sonynwze470.h [new]
firmware/export/config/sonynwze580.h [new]
firmware/export/config/sonynwzlinux.h [new]
firmware/export/nwzlinux_codec.h [new]
firmware/export/rbpaths.h [diff]
firmware/export/system.h [diff]
firmware/font.c [diff]
firmware/panic.c [diff]
firmware/target/arm/system-arm.c [diff]
firmware/target/hosted/alsa-controls.c [new]
firmware/target/hosted/alsa-controls.h [new]
...and 71 more files.
Amaury Pouly
2017-02-23 142f80f: Modernize toolchain script and add generic arm toolchain

I did some cleanup of redudant stuff, simplify some logic, also switch to bash because sh in the pain when ones want to locally define variables for functions calls. I also added support to download more stuff like alsa-lib and more recent gccs that use a different naming convention, as well as linux kernels.

I also add some build to build linux toolchains without ct-ng. The biggest problem with ct-ng is that they regularly drop support for old stuff and as a result it rots really quickly for old toolchains. I add a new toolchain for generic linux arm with the minimum requirements, it works fine on Sony NWZ and also on YP-R0.

Finally, rockboxdev.sh now understand options on its command line (see --help). Notably --target to give the list of targets (useful for noninteractive scripts),
--restart to restart at a step, --makeflags and others (instead of the environment variables)
tools/rockboxdev.sh [diff]
Amaury Pouly
2017-09-01 25a29e7: Silence warnings in mp3_encoder

`const' only needs to be used once (a const pointer to const data is
`const type * const').
apps/plugins/mp3_encoder.c [diff]
Franklin Wei
2017-09-01 5a724bb: Fix typo in goban

Pointer wasn't dereferenced as it should be.
apps/plugins/goban/sgf_parse.c [diff]
Franklin Wei
2017-08-29 34dd278: Add missing strings Italian translation

Should make us all green once again.
apps/lang/italiano.lang [diff]
Franklin Wei
2017-08-29 3a39f24: puzzles: remove unused overlay loader

Just cluttering the plugins directory as there is no COMBINED support anymore.
apps/plugins/SOURCES [diff]
apps/plugins/sgt-puzzles.c [deleted]
Franklin Wei
2017-08-28 e2271ed: qeditor: fix compile error and some comments
utils/hwstub/include/hwstub.hpp [diff]
utils/hwstub/lib/hwstub_net.cpp [diff]
Amaury Pouly
2017-08-27 1cd96b4: Keybox: display the entry name along with the password

The dereference of entry->name was originally omitted, which meant that only the password would ever be displayed.
apps/plugins/keybox.c [diff]
Franklin Wei
2017-08-27 b31ae45: fix yellow, commit f2f1889 left a variable unused
apps/plugins/sokoban.c [diff]
Amaury Pouly
2017-08-27 27ca56d: Implement warning silencing in a cleaner way
tools/configure [diff]
Franklin Wei
2017-08-27 99e467e: Revert "Silence GCC 7.x warnings when building simulator"

This reverts commit b13f6e5b67abda2e466731f39d221eec2c9eb576.
tools/configure [diff]
Franklin Wei
2017-08-27 c7f897f: zen/zenxfi: always set EMI frequency to 130MHz

The ZEN/X-Fi (STMP3700) don't handle memory frequency scaling really well, for this reason we run it at a fixed frequency. That frequency was previously set to 64Mhz because when the CPU run at its lowest frequency, we set the VDD voltage to 0.975 V and on STMP3700, VDDD=VDDDMEM and this is too low to run EMI at 130Mhz. This is not a good solution because under heavy load, running the EMI at 64Mhz results in frame drops and a sluggish device. Thus we now run the EMI at 130Mhz all the time now. To do so, increase the minimum VDD voltage to 1.275 V. This may result is a decreased battery life on those targets but it will also avoid all sorts of glictches and all the device to truly run at full speed.
firmware/target/arm/imx233/system-imx233.c [diff]
Amaury Pouly
2017-08-27 b81c155: imx233: fix potential bug in udelay
firmware/target/arm/imx233/system-imx233.c [diff]
Amaury Pouly
2017-08-27 7677a99: zen/zenxfi: increase LCD clock frequency
firmware/target/arm/imx233/creative-zen/lcd-zen.c [diff]
Amaury Pouly
2017-08-27 5d2d747: imx233: update comment about vbusvalid
firmware/target/arm/imx233/power-imx233.c [diff]
Amaury Pouly
2017-08-27 7ce764c: zen/zenxfi: fix backlight white flash on backlight on
firmware/target/arm/imx233/creative-zen/backlight-zen.c [diff]
Amaury Pouly
2017-08-23 b13f6e5: Silence GCC 7.x warnings when building simulator

Adds -Wno-expansion-to-defined and -Wimplicit-fallthrough=0 to sim opts.
tools/configure [diff]
Franklin Wei
2017-08-23 3c514f8: puzzles: misc. changes and sync with upstream

This brings puzzles up-to-date with Simon's tree, along with the rockbox-specific changes I made. Note that I also got rid of some of the ugly floating-point code in rbwrappers.c and replaced it with wrappers for our fixed-point library.
apps/plugins/puzzles/rbcompat.h [diff]
apps/plugins/puzzles/rbwrappers.c [diff]
apps/plugins/puzzles/src/Buildscr [diff]
apps/plugins/puzzles/src/Makefile.doc [diff]
apps/plugins/puzzles/src/README [diff]
apps/plugins/puzzles/src/icons/tracks.sav [diff]
apps/plugins/puzzles/src/loopy.c [diff]
apps/plugins/puzzles/src/map.c [diff]
apps/plugins/puzzles/src/midend.c [diff]
apps/plugins/puzzles/src/misc.c [diff]
apps/plugins/puzzles/src/net.c [diff]
apps/plugins/puzzles/src/netslide.c [diff]
apps/plugins/puzzles/src/puzzles.but [diff]
apps/plugins/puzzles/src/puzzles.h [diff]
apps/plugins/puzzles/src/range.c [diff]
apps/plugins/puzzles/src/rect.c [diff]
apps/plugins/puzzles/src/tracks.c [diff]
apps/plugins/puzzles/src/untangle.c [diff]
apps/plugins/puzzles/src/website.url [diff]
apps/plugins/puzzles/src/winiss.pl [diff]
Franklin Wei
2017-08-23 4dd300d: puzzles: remove old combined build code

We don't really need it anymore.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-08-17 ec1a74a: puzzles: faster, smaller sqrt()
apps/plugins/puzzles/rbwrappers.c [diff]
Franklin Wei
2017-08-01 f2f1889: Sokoban: enable restarting level via "Select Level"

This patch disables the (deliberate) feature of "Select Level", that selecting the current level wouldn't restart but rather resume. (i.e. now selecting any level will always start this from scratch).

There definitely should be a way to restart the current level via menu. Currently the only possibility to do this is via button presses, but (a) these are hard to remember combos, and
(b) they are not defined on all targets. This patch is meant as a lightwight alternative to g#1356
(adding a "restart level" option to the menu).
apps/plugins/sokoban.c [diff]
Sebastian Leonhardt
2017-08-22 492dda0: Add myself to docs/COMMITTERS
docs/COMMITTERS [diff]
Sebastian Leonhardt
2016-09-22 28ae700: FS #11922: Lua game - Pixel Painter

* Changed keymaps to PLA and added to SOURCES and CATEGORIES file
* improved keymaps: implement wrap-around and key repeat
* change keymap according to screen orientation
* fix font size calculation
* use blocking button query in main loop
* replace tabs with spaces
* added manual entry
* added original author to CREDITS
apps/plugins/CATEGORIES [diff]
apps/plugins/SOURCES [diff]
apps/plugins/pixel-painter.lua [new]
docs/CREDITS [diff]
manual/plugins/images/ss-pixelpainter-128x128x16.png [new]
manual/plugins/images/ss-pixelpainter-128x160x16.png [new]
manual/plugins/images/ss-pixelpainter-128x96x16.png [new]
manual/plugins/images/ss-pixelpainter-132x80x16.png [new]
manual/plugins/images/ss-pixelpainter-160x128x16.png [new]
manual/plugins/images/ss-pixelpainter-176x132x16.png [new]
manual/plugins/images/ss-pixelpainter-176x220x16.png [new]
manual/plugins/images/ss-pixelpainter-220x176x16.png [new]
manual/plugins/images/ss-pixelpainter-240x320x16.png [new]
manual/plugins/images/ss-pixelpainter-240x400x16.png [new]
manual/plugins/images/ss-pixelpainter-320x240x16.png [new]
manual/plugins/images/ss-pixelpainter-320x240x24.png [new]
manual/plugins/images/ss-pixelpainter-96x96x16.png [new]
manual/plugins/main.tex [diff]
manual/plugins/pixelpainter.tex [new]
Sebastian Leonhardt
2017-08-16 7944969: puzzles: fix build
apps/plugins/puzzles/compress.c [diff]
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]
...and 10 more files.
Franklin Wei
2017-08-16 71850e8: puzzles: various useless tweaks
apps/plugins/puzzles/README.rockbox [diff]
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-08-16 d0c4ef4: puzzles: enable long-press in Map

This allows for stippling regions.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-08-16 ef9c2f4: puzzles: fix polygon drawing in Inertia

Yet another hack to accommodate our polygon algorithm...
apps/plugins/puzzles/src/inertia.c [diff]
Franklin Wei
2017-08-16 f31a400: puzzles: add more parameter validation checks

Fixes some annoying crashes.
apps/plugins/puzzles/src/blackbox.c [diff]
apps/plugins/puzzles/src/flood.c [diff]
apps/plugins/puzzles/src/mines.c [diff]
apps/plugins/puzzles/src/netslide.c [diff]
apps/plugins/puzzles/src/pattern.c [diff]
apps/plugins/puzzles/src/sixteen.c [diff]
apps/plugins/puzzles/src/twiddle.c [diff]
Franklin Wei
2017-08-16 c78ff7f: puzzles: fix floating-point formatting

This is pretty ad-hoc, but the only other ways are to rewrite sprintf (which would use too much memory on the c200v2), or implement support for floats in rockbox's formatter, neither of which are acceptable.
apps/plugins/puzzles/rbcompat.h [diff]
apps/plugins/puzzles/rbwrappers.c [diff]
apps/plugins/puzzles/src/midend.c [diff]
apps/plugins/puzzles/src/net.c [diff]
apps/plugins/puzzles/src/netslide.c [diff]
apps/plugins/puzzles/src/rect.c [diff]
Franklin Wei
2017-08-16 bf25f3e: puzzles: compress extensive help text

This is only really needed to save a few bytes on the c200v2, but since it adds negligible overhead, so it's implemented for all targets.

A stripped down version of the LZ4 reference implementation is found in lz4tiny.c.
apps/plugins/puzzles/SOURCES [diff]
apps/plugins/puzzles/compress.c [new]
apps/plugins/puzzles/genhelp.sh [diff]
apps/plugins/puzzles/help.h [diff]
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]
...and 16 more files.
Franklin Wei
2017-08-16 5645135: Fix stupid omission
firmware/target/arm/tms320dm320/spi-dm320.c [diff]
Franklin Wei
2017-08-16 6df15ea: Remove mutex_* calls from the MR:500 SPI driver

As before, they would trigger a panic.
firmware/target/arm/tms320dm320/spi-dm320.c [diff]
Franklin Wei
2017-08-10 e00d78d: Remove bad mutex lock/unlock from tcc780x SD driver

This should make cowond2 work again.
firmware/target/arm/tcc780x/sd-tcc780x.c [diff]
Franklin Wei
2017-08-10 0dbf701: Remove bad mutex_* calls in telechips i2c driver

These were being called in a cpu mode they shouldn't have been, leading to panics.
firmware/target/arm/i2c-telechips.c [diff]
Franklin Wei
2017-08-09 ca228d3: puzzles: cut size for c200v2

- font caching is disabled
- font table is dynamically allocated
- side effect: tlsf isn't reset between runs anymore, memory leaks will have a bigger impact
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-07-31 3e1c8cc: fix yellow
firmware/target/arm/imx233/debug-imx233.c [diff]
Amaury Pouly
2017-07-30 70b4d1a: imx233: fix horrible bug in linreg offset calculation

This was actually harmless because it was only used for the debug screen.
firmware/target/arm/imx233/power-imx233.c [diff]
Amaury Pouly
2017-07-30 17e48e8: imx233: don't print stmp3780 debug info on stmp3700
firmware/target/arm/imx233/debug-imx233.c [diff]
firmware/target/arm/imx233/power-imx233.h [diff]
Amaury Pouly
2017-07-30 ce39850: rbcodec: remove useless include

metadata.c does not need cuesheet.h, which in apps/ and has nothing to do with rbcodec library.
lib/rbcodec/metadata/metadata.c [diff]
Amaury Pouly
2017-07-30 928d660: rbcodec: fix compilation in debug mode
lib/rbcodec/dsp/channel_mode.c [diff]
lib/rbcodec/dsp/crossfeed.c [diff]
lib/rbcodec/dsp/dsp_proc_entry.h [diff]
Amaury Pouly
2017-07-30 d1ca2e4: atjboottool: cleanup and add support for atj2127

Several people asked me recently how to decrypt atj2127 firmware. Someone posted on github (https://github.com/nfd/atj2127decrypt) a decrypt utility clearly reverse engineered from some unknown source. The code is an absolute horror but I concluded that ATJ changed very little between ATJ213x and ATJ2127 so I added support for the ATJ2127, credit to this github code that I stole and rewrite (code was under MIT licence). At the same time do some small code cleanups. Note that there is not 100% sure way that I know to distinguish between the two firmware types, so the code tries to do an educated guess to detect ATJ2127. If this does not work, use --atj21217 option. Also note that contrary to the github tool that decrypts and unpack in one go, this tool only does one step at once. So first decrypt: HEX -> AFI, then unpack AFI -> files. I also added for a different version of AFI. Based on AFI files I have, there are, I think, two versions: the "old" ones (pre-ATJ213x) and "new" ones. The tool only supported the new one but for some reason the ATJ2127 uses the old ones without a mostly empty header. Strangely, even this mostly empty header does not seem to follow the old layout as reverse engineered by the s1mp3 project (https://sourceforge.net/p/s1mp3/code/HEAD/tree/trunk/s1fwx/heads.h), so in fact there might be three versions. In any case, only the header is different, the rest of the file is identical so at the moment I just don't print any header info for "old" files.
utils/atj2137/atjboottool/atjboottool.c [diff]
Amaury Pouly
2017-07-26 5198409: puzzles: enable Mines

It should work now that arm memset() has been fixed for negative values. This is the last puzzle that was disabled due to a crash.
apps/plugins/puzzles/SOURCES.games [diff]
Franklin Wei
2017-07-26 c2546d3: Fix arm memset() handling of negative arguments

This fixes the sgt-mines plugin. Same issue was present in an old glibc as well:

https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=a7ed1adbecb6aac49af75aae3b3498798cf63abc
firmware/asm/arm/memset.S [diff]
Franklin Wei
2017-07-26 076cf0a: puzzles: new input scheme for Mines and Magnets

Both these puzzles now have long press mapped to spacebar.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-07-26 f1b82b1: puzzles: polish up the config menus apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-07-26 1a5149a: puzzles: tweak text positioning apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-07-26 aa7b168: puzzles: font caching

This lets puzzles remember which fonts were loaded previously so they can be preloaded when the puzzle is started (and the disk is spinning), instead of while the game is being played.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-07-26 eb43bce: puzzles: add number chooser for integer settings

Sure beats typing on the virtual keyboard.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-07-26 513fb8b: puzzles: update debug menu

Add an option to visualize polygon rendering to aid in diagnosing artifacts.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-07-26 403d011: puzzles: fix flag drawing in Mines

Yet another workaround to accomodate our polygon drawing "algorithm" (if you can call it that).
apps/plugins/puzzles/src/mines.c [diff]
Franklin Wei
2017-06-03 68c5f93: puzzles: update manual entry
manual/plugins/main.tex [diff]
manual/plugins/puzzles.tex [deleted]
manual/plugins/sgt-puzzles.tex [new]
Franklin Wei
2017-07-26 34998e3: Update manual copyright information for 2017 (FS #13095)

We're still working on this.
manual/intro/main.tex [diff]
Sebastian Leonhardt
2017-07-26 a3e191e: Manual (iRiver H300): Update list of supported FW versions (FS #13109)
manual/getting_started/installation.tex [diff]
Sebastian Leonhardt
2017-07-26 087f4d5: Fix misspelling in Credits (FS #13093)
docs/CREDITS [diff]
Sebastian Leonhardt
2017-07-13 3a70222: puzzles: fix star drawing in Signpost

- change point ordering to make concave polygon rendering work
- also enables an "Easter egg" of sorts
apps/plugins/puzzles/rbwrappers.c [diff]
apps/plugins/puzzles/src/signpost.c [diff]
Franklin Wei
2017-07-12 e7a35ba: puzzles: dynamic text size via custom font pack

Up to now, we'd just ignore whatever font size the puzzle asked for, and instead just go with either the UI font or system font regardless of their size, which led to some horrible-looking puzzles. This patch adds the ability to automatically load fonts of the proper size when they are available, which makes text-based puzzles such as Pattern and Slant function correctly with any UI font.

The font pack, which should be extracted to the system-wide fonts directory consists of 3 small bitmap fonts from 7px to 10px and then anti-aliased Deja Vu fonts from 10px to 36px. It is available in the source tree (apps/plugins/puzzles/fonts.zip), or from
<http://download.rockbox.org/useful/sgt-fonts.zip>.
apps/plugins/puzzles/SOURCES [diff]
apps/plugins/puzzles/fonts.zip [new]
apps/plugins/puzzles/help.c [deleted]
apps/plugins/puzzles/help.h [diff]
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-07-12 84e13d5: puzzles: allow using hints in Fifteen

This maps the select button to the "h" key for Fifteen only.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-06-29 f9198ba: zen/zenxfi: map menu button to pitch screen toggle mode

The toggle action was unmapped for some reason
apps/keymaps/keymap-zen.c [diff]
Amaury Pouly
2017-04-13 d645272: mkimxboot: fix compilation issues with crypto lib
rbutil/mkimxboot/Makefile [diff]
Cástor Muñoz
2017-05-04 fbbba92: mks5lboot: updates

- fix Makefile to allow cross compilation
- Windows: use Sleep() instead of nanosleep()
- Windows: libusb now is optional
- OS X: use IOKit instead of libusb
- small rework on the DFU API
rbutil/mks5lboot/.gitignore [diff]
rbutil/mks5lboot/Makefile [diff]
rbutil/mks5lboot/README [diff]
rbutil/mks5lboot/ipoddfu.c [diff]
rbutil/mks5lboot/main.c [diff]
rbutil/mks5lboot/mkdfu.c [diff]
Cástor Muñoz
2017-05-06 cf168d4: ipodpatcher: remove external ddk/ntddscsi.h dependency
rbutil/ipodpatcher/ipodio-win32-scsi.c [diff]
Cástor Muñoz
2017-06-18 37a945d: nwztools/scsitool: add a command to query multiple nvp nodes at once
utils/nwztools/scsitools/scsitool.c [diff]
Amaury Pouly
2017-06-18 91ede1e: nwztools/scsitool: fix devinfo, add dhp

The devinfo request returned the raw data, now the tool prints the various fields. Also add support for the dhp (destination/headphones/color ...): this one is untested because it's only supported starting from A10 or A20. There is still a problem with the dpcc prop: although it should work for DEVINFO, it does not, despite the fact that the get_dev_info command works and is internally (on the Sony) translated into a dpcc request. I keep the code just in case.
utils/nwztools/scsitools/scsitool.c [diff]
Amaury Pouly
2017-06-18 8d5dcd3: nwztools/scsitool: print error on check sense

The detailled error message is only printed if -d switch is on command line, otherwise there is no error message which is wrong so fix that.
utils/nwztools/scsitools/scsitool.c [diff]
Amaury Pouly
2017-06-14 365a005: Slightly increase CVDD2 on AMSv2.

At least one person found an SD card that wouldn't work at 2.7v.
firmware/target/arm/as3525/system-as3525.c [diff]
Michael Giacomelli
2017-06-13 e9bb9a2: nwztools: add KAS for NW-S10 (brute-forced using upgtool)
utils/nwztools/upgtools/upg.c [diff]
Amaury Pouly
2017-06-13 cd81221: nwztools: add nvp description for NW-S10 series
utils/nwztools/database/nvp/nw-s10.txt [new]
utils/nwztools/database/nwz_db.c [diff]
Amaury Pouly
2017-06-05 28c3f6b: Add NW-A36 and NW-A37 model IDs, based on the A30 service manual.

I am unsure about the names of the player, the manual says A36HN and A37HN but at the same time there is a A35 and A35HN with the same ID, and Sony does not usually put the "HN" in its device list.
utils/nwztools/database/models.txt [diff]
utils/nwztools/database/nwz_db.c [diff]
utils/nwztools/database/nwz_db.h [diff]
utils/nwztools/database/series.txt [diff]
Amaury Pouly
2017-06-03 552a271: puzzles: remove redundant help content

It used to be that each puzzle had a complete copy of the entire puzzles manual and the "quick help" text for every single puzzle. This was obviously a waste, so now each puzzle only has the sections of the manual that apply to it, saving about 100KB or so per puzzle. This also has the added benefit of shrinking binary size enough to allow full help support on the c200v2, which has been enabled.
apps/plugins/puzzles/SOURCES [diff]
apps/plugins/puzzles/genhelp.sh [diff]
apps/plugins/puzzles/help.c [diff]
apps/plugins/puzzles/help.h [diff]
apps/plugins/puzzles/help/blackbox.c [new]
apps/plugins/puzzles/help/bridges.c [new]
apps/plugins/puzzles/help/cube.c [new]
apps/plugins/puzzles/help/dominosa.c [new]
apps/plugins/puzzles/help/fifteen.c [new]
apps/plugins/puzzles/help/filling.c [new]
apps/plugins/puzzles/help/flip.c [new]
apps/plugins/puzzles/help/flood.c [new]
apps/plugins/puzzles/help/galaxies.c [new]
apps/plugins/puzzles/help/guess.c [new]
apps/plugins/puzzles/help/inertia.c [new]
apps/plugins/puzzles/help/keen.c [new]
apps/plugins/puzzles/help/lightup.c [new]
apps/plugins/puzzles/help/loopy.c [new]
apps/plugins/puzzles/help/magnets.c [new]
apps/plugins/puzzles/help/map.c [new]
apps/plugins/puzzles/help/mines.c [new]
apps/plugins/puzzles/help/net.c [new]
apps/plugins/puzzles/help/netslide.c [new]
apps/plugins/puzzles/help/palisade.c [new]
apps/plugins/puzzles/help/pattern.c [new]
apps/plugins/puzzles/help/pearl.c [new]
apps/plugins/puzzles/help/pegs.c [new]
apps/plugins/puzzles/help/range.c [new]
apps/plugins/puzzles/help/rect.c [new]
apps/plugins/puzzles/help/samegame.c [new]
...and 16 more files.
Franklin Wei
2017-06-02 cefbde0: puzzles: correct drawmode for text

DRMODE_FG should be used instead of DRMODE_COMPLEMENT to allow text to be drawn in color, benefitting puzzles such as Slant and Pattern.
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-05-22 6d541fe: puzzles: work around inconsistent naming
apps/plugins/puzzles/help.c [diff]
Franklin Wei
2017-05-21 6bba062: puzzles: clarify target-specific macros
apps/plugins/puzzles/SOURCES.games [diff]
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-05-18 504346a: puzzles: fix Bridges crash on Clip Zip

- small screen could lead to invalid viewport coordinates
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-05-17 7b6f34a: puzzles: fix building

- disables help on c200v2
- renames conflicting function
apps/plugins/puzzles/SOURCES [diff]
apps/plugins/puzzles/rockbox.c [diff]
apps/plugins/puzzles/src/misc.c [diff]
Franklin Wei
2017-05-09 001860c: puzzles: full help system

- embeds the upstream halibut documentation for plugin use

- currently every plugin has a copy of the help text, but in the future a centralized system using overlays might be better
apps/plugins/puzzles/SOURCES [diff]
apps/plugins/puzzles/genhelp.sh [new]
apps/plugins/puzzles/help.c [new]
apps/plugins/puzzles/help.h [new]
apps/plugins/puzzles/helpcontent.c [new]
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-05-16 7482b82: Fix formatting in configure
tools/configure [diff]
Amaury Pouly
2017-05-16 3210457: imx233: fix touchscreen driver

One cannot call lradc_acquire in IRQ context. The solution is to reserve the channel once at init. There is an additional complication on STMP3600 where channel mapping is fixed.
firmware/target/arm/imx233/kernel-imx233.h [diff]
firmware/target/arm/imx233/touchscreen-imx233.c [diff]
Amaury Pouly
2017-05-16 5dd443c: Fix YP-Z5 plugin/codec buffer size
firmware/export/config/samsungypz5.h [diff]
Amaury Pouly
2017-05-06 e9f7385: Samsung YP-Z5: keypad adaption to the new button API

After compiling the ypz5 target, I have discovered that the keypad system was refusing to compile, due to a much newer button API. This patch adapts the target to the current imx233 implementation. Additonally, some ADC button values have been re-adjusted.
firmware/SOURCES [diff]
firmware/target/arm/imx233/samsung-ypz5/button-ypz5.c [diff]
Lorenzo Miori
2017-04-29 6e69e3a: zenxfi3,fuzeplus: disable AB repeat (not enough keys) zenxki3: disable hotkey (not enough keys)
firmware/export/config/creativezenxfi3.h [diff]
firmware/export/config/sansafuzeplus.h [diff]
Amaury Pouly
2017-05-12 b959655: Fix unsafe substitutions in Makefile.

Strange things can happen in the (unlikely) case that ROOTDIR=/rockbox
apps/bitmaps/bitmaps.make [diff]
tools/functions.make [diff]
tools/root.make [diff]
Amaury Pouly
2017-04-13 65c6a14: Buffering: Switch to a more general handle caching type

It sort of implemented an MRU cache but just kept track of the most recent access and checked the one after it, otherwise searching from the beginning.

Implement a true MRU list of all open handles. Handles of the current track will tend to stay up front for faster access.

Switch to common linked list functions

Use double-linked lists to have insert, remove and move_handle operations in O(1)-- no more searching to find the previous handle, which is very often required.

Smaller code too. :)
apps/buffering.c [diff]
Michael Sevakis
2017-04-23 1b4ee1f: Fix Samsung YH92X/YH820 keypad conditional in text_editor

All the *_PAD values are always #defined. So the change made in 5e91ec1 was applied to all devices instead of only those it was meant to be applied to.
apps/plugins/text_editor.c [diff]
Boris Gjenero
2017-05-04 271c30f: puzzles: remember the previous preset when selecting
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-05-04 f15c117: puzzles: fix optimization flags
apps/plugins/puzzles/puzzles.make [diff]
Franklin Wei
2017-05-02 4bc3bfe6: puzzles: simplify makefile
apps/plugins/puzzles/puzzles.make [diff]
Franklin Wei
2017-05-02 115806f: Commit FS #13111 by Sebastiano Pistore.

Updates Italian translation.
apps/lang/italiano.lang [diff]
docs/CREDITS [diff]
Michael Giacomelli
2017-04-30 e016a16: fix nano status (3=stable)
tools/builds.pm [diff]
Franklin Wei
2017-04-30 a8fa696: N2G is stable and 6G is unstable
tools/builds.pm [diff]
Franklin Wei
2017-04-30 4519027: Actually bump version to 3.14

This reverts commit e59197f07869d63bfc90dbce000d6af9c0fb73de.
tools/builds.pm [diff]
tools/release/bins.pl [diff]
tools/release/manuals.pl [diff]
tools/release/voices.pl [diff]
Franklin Wei
2017-04-30 cce3adb: add fake stdio.h
apps/plugins/puzzles/dummy/stdio.h [new]
Franklin Wei
2017-04-30 ecd7c72: add rule for rbcompat.h
apps/plugins/puzzles/puzzles.make [diff]
Franklin Wei
2017-04-30 078d52c: fix puzzles: round 4
apps/plugins/puzzles/puzzles.make [diff]
Franklin Wei
2017-04-30 c7d6457: fix puzzles... round 3
apps/plugins/puzzles/puzzles.make [diff]
Franklin Wei
2017-04-30 36aedfd: fix puzzles... round 3
apps/plugins/puzzles/puzzles.make [diff]
Franklin Wei
2017-04-30 28fef2e: Fix puzzles... again
apps/plugins/puzzles/keymaps.h [new]
apps/plugins/puzzles/puzzles.make [diff]
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei
2017-04-30 39fe30f: Fix puzzles... again
apps/plugins/puzzles/keymaps.h [new]
apps/plugins/puzzles/puzzles.make [diff]
apps/plugins/puzzles/rockbox.c [diff]
Franklin Wei

Page was last modified "Oct 24 2016" The Rockbox Crew
aaa