Rockbox

IDTask TypeCategoryPrioritySummaryOpenedOpened byLast Edited  desc
10916PatchesSimulatorVery LowAdd usb capability to simulator on Linux hosts2010-01-17amaury pouly32010-02-074 Task Description

This patch adds to the simulator the ability to simulate usb on a Linux host.
To do this, you'll need to download, build and install a device driver. You can download it here:
http://sourceforge.net/projects/usb-vhci/files/ Just download the "linux kernel module". See install instruction in it but it's make && make install. Of course you'll need root rights. There also a wiki about it (http://sourceforge.net/apps/mediawiki/usb-vhci/index.php?title=Main_Page)

Now to have usb simulation works correctly you'll of course need to load the driver
modprobe vhci-hcd
And you'll probably need to edit the access rights of the device control device:
violent example: chmod 0666 /dev/vhci-ctrl
other example: chown root:<myself> /dev/vhci-ctrl
Or you can add a udev rule if you can make this work.

You can then run the simulator normally (note the the detection is at runtime so you don't need to have it work before launching the simulator).
Press 'u' to simulate usb insertion and 'u' once more the simulate usb removal.

Some miscellaneous remarks:
-the patch enables usb hid but for some reasons it doesn't work in main menu. However, the remote_control plugins works
-the patch enables usbserial which of no interest here but a way to test bulk transfers
-the patch DOESN'T enable usbstorage because storage simulation is a stub currently.

If it doesn't work, you can still uncomment this line in usb-drc.c:
/*#define USB_VHCI_DRIVER_DEBUG*/
And this line in usb-core.c:
/*#define LOGF_ENABLE*/
But beware ! Your console will end up full of obscure messages.

I'm particulary interested in compile feedback under Windows and OSX.
And of course I'm interested in working feedback ranging from device detection to working state (HID and usbserial) for example.

11356PatchesGamesVery Lowimprovements for game "jewels"2010-06-05Michael Stummvoll42020-06-294 Task Description

preamble first :) I am new at the rockbox-project, so this is my first commit. I hope that I am right here with that. If not, please notify, and say, where somewhat would be better.
Strictly speaking this is my first contribition to an opensource-project ever. I am a friend of OSS since years and now I want to give something back ;) I am thinking, rockbox is a nice project to get in the open source scene.

To get in the rockbox-project I tried to improve the jewels-game. First I changed the controls for the Sansa Fuse in the Simulator. The old controls are good for the real Fuse, but very unconfortable at simulator.

Then I wanted jewels to get more difficult with higher levels. To do so I changed it to start with 4 types of jewels only and get one more each three levels till they are 7 types.

Greetings,
Michael

11541PatchesUser InterfaceVery LowAdd Voice Announcement of Summary Info to WPS hotkey2010-08-15Sean Inglis342020-07-154 Task Description

This patch adds an additional menu option to the list of WPS hotkey choices, “Announce Information”. This voices basic information about the player, currently playing file and current tracklist.

This feature reads a simple definition with a single line of no more than 20 characters from the file “announce.cfg” in the .rockbox directory.

This definition consists of a string of single character tokens, each of which announces a particular canned piece of information.

The tokens are:

A - current time
B - elapsed time and total length of the current track
C - current track number and total tracks in playlist
D - battery level as a percentage
E - battery remaining in hours and minutes
F - sleep timer remaining in minutes

If more than one token is specified, more than one piece of information is announced, so:

AB

would announce the time followed by elapsed time and track length

Multiple announcements may be bound to the hotkey by separating one or more groups of tokens with a “:”

A:DF

In this example, the first time the hotkey is pressed, the time is announced. If it is pressed again within 10 seconds, the battery level and sleep timer are announced and so on.

A space between tokens adds a short pause to the announcement.

If no announce.cfg file is present, the time is announced by default.

11864PatchesPluginsVery LowWorking LUA Flashcard Program2011-01-07Steve42011-04-294 Task Description

I have written a basic flashcard program for LUA and am attaching source code and an example data file. I am using a Sansa Clip+ so YMMV. It uses ANKI format text files which are tab delimited txt. You may use UTF8 for the flashcard if you have your device set as such. To use, save the two included text files in the same directory and run. The card data file, Russian.txt, is a typically UTF8 encoded text file exported straight from ANKI with no modifications. I am using a size 8-fixed font in the screen shots.

Things I would like to see done:

1. Making the code more generic to run on all rockbox platforms.

2. If someone would tell me how to play vorbis files from LUA on a clip+, I might be able to implement playing the vocabulary words as they are displayed on the device. I am already parsing the audio file names from the database, but I need a function to play them.

3. If LUA/Rockbox supported SQLite, It might be possible to read and write native ANKI database with scheduling information. This would facilitate programming of advanced flashcard scheduling for efficient learning.

4. A menu to select different databases.

Looking forward to feedback!

12075PatchesSettingsVery LowAdd timeout to quickscreen2011-04-19Rob Walker122013-10-104 Task Description

Following my patch to control line-out on the Fuze via a setting on the quickscreen (FS#12074), I found I kept forgetting to leave the quickscreen. This meant that when I intended to change track, I was actually changing the shuffle / repeat settings etc and had to fiddle around to get back to where I wanted to - not a good idea when driving at >70mph!

The attached patch adds a configurable timeout to the quickscreen so that it returns to the WPS screen if no button is touched within N seconds. 0 (the default) will disable the timeout preserving the existing behaviour.

12474PatchesDatabaseVery Low[PATCH] Database: Support for multiple search roots.2011-12-21Thomas Martitz102012-07-184 Task Description

The setting works similar to the autoresume dirs: Directories are seperated
by colon, e.g. "/Music:/Podcasts". Default is "/sdcard" on android, "/" on
all other targets.

A maximum of 8 dirs can be selected, the setting cannot be longer than 80 chars.

Note: There's one problem. If you specifiy "/Music:/" (or any folder and one if its parents afterwards), then /Music is scanned twice. It's tricky to fix, and I'm not sure if it's worth it. This does not happen for "/:/Music" as it can be detected more easily in this order (and this is already implemented).

12568PatchesConfigurationVery LowiPod Classic - limit volume to +6db2012-01-29Albert Barca122012-02-134 Task Description

The iPod Classic Cirrus CS42L55 DAC+amp chip is specified to output audio up to +12dB versus the reference level (0.775V RMS) and the current Rockbox driver implements this accordingly (note that the OF limits the amplification to a lower level).

However, any amplification above +3dB applied to a 0dB signal results in serious clipping errors, the sound being distorted (oscilloscope measurements attached). This is not a surprise, given that +12dB translates in over 8V peak-to-peak output, way above what the iPod is capable of with its 3.7V battery.

Distortions aside, +12dB can be overkill for most of the earphones (depending on the sensitivity) and not a very pleasant experience. If you put the iPod in your pocket and forget to lock it you may experience this frequently.

In practice not all tracks have peaks reaching the 0dB level (actually nowadays this is quite common given the "loudness war"). To provide some room for additional amplification when needed, I found the +6dB limit to be a good compromise.

12771BugsFM TunerVery LowFMS display problem when using themes that exhibit radi...2012-10-19Terry Layton2012-10-194 Task Description

Device: Sansa Fuze v2 (stable port)
Rockbox Release: 3.12

Recently I have been noticing a problem with themes that allow radio station logos to be displayed on the FMS screen. This is most noticeable with the analog and Fuzemod themes. While the logo displays properly, other images on the screen do not. In the case of the analog theme, the VU meter appears corrupted and with the Fuzemod theme the battery animation, tuning bar slider and playmode indicator icons fail to appear as expected. This problem was not present when either of these themes was used with the releases before version 3.12. In fact this bug appears to have been introduced by one of the experimental daily development builds either in May or June. I have tried different sets of radio station logos and preset lists with these themes but I always get the same result when using version 3.12; everything is fine with any previous release. Since this problem occurs with two different themes along with any combination of radio station logos and preset lists, I can only conclude that it originates with the firmware.

I have attached to this report three generic radio station logos in bitmap format along with a generic preset list. You can put these into /.rockbox/fmpresets and try your own tests. Since the frequencies were selected at random, don’t expect them to tune in anything. Besides, there is nothing wrong with the ability of the Rockbox firmware to tune in radio stations or play their music. The problem starts as soon as the user starts flipping through the station presets, so don’t be shy about changing the station frequently during your tests. I also find that in order to accurately reproduce this problem the Sansa Fuze v2 should be powered off then on again whenever a new theme or preset list is loaded.

12953BugsThemesVery LowFMS display issue with my "lebellium Samsung-like" them...2014-02-23Ludovic Jacques22014-03-014 Task Description

With my theme “lebellium Samsung-like” for Clip Zip there are some display issues in FMS, more precisely the status bar, while the code is the same as in WPS and SBS. See the pics in attachment.

How it should look like instead:
http://themes.rockbox.org/themes/96x96/lebellium_samsung-like_%28big_aa%29_96x96_v1.00/3-FM_radio_bigAA.png http://themes.rockbox.org/themes/96x96/lebellium_samsung-like_96x96_v1.45/2-FM_radio3.png

After bisecting, I found out that the 1st bad commit is acf3af4 by JdGordon: radio: fix  FS#12747  http://git.rockbox.org/?p=rockbox.git;a=commit;h=acf3af4

5757PatchesDriversVery LowCorrectly display short DOS file names in file browser2006-08-01Alexander Levin32006-08-053 Task Description

This is a sequel for  FS#5736 . It correctly displays the OEM-encoded short DOS file names.

Following code pages are supported: cp850 (western Europe), cp852 (central Europe), cp737 (greek), cp866 (cyriliic), cp862 (hebrew).

If you change the default code page (in the settings menu) and there are files that are displayed with the short DOS names, you’d better rebuild the dir cache (if it’s activated) since the UTF8-name of the file changes.

When I compile the modified sources, I get the following warning which I don’t understand:
CC common/unicode.c
common/unicode.c:136: warning: function declaration isn’t a prototype

Could anyone tell me what that means and what the reason is?

6721PatchesDriversVery LowRoLo ipod disk mode from ROM instead of rebooting2007-03-03Dave Chapman222010-02-103 Task Description

This patch should apply to all ipods, but needs testing - on both a mixture of ipods and mixture of operating systems. I’ve tested it successfully on my Color with both Linux and Mac OS X.

Current SVN behaviour is to write some magic to the end of IRAM and reboot the ipod when a USB connection is detected. This causes the Apple bootloader to start the disk mode application which is stored in flash ROM.

This patch cuts out the reboot stage and uses rolo to start the disk mode application directly from flash - meaning the ipod enters disk mode almost immediately. This is done in a new rolo_load_rom() function which copies the image from ROM to RAM and then executes it.

7660PatchesPluginsVery LowPlugin espeak TTS engine for rockbox2007-08-26Toni302012-06-133 Task Description

A first port of espeak running on rockbox.
Warning: Only tested on Sansa player!

I have skipped some advanced features of espeak, for example:
- mbrola
- on the fly Translator language switching (try: ‘spring’ with german selected)

Because this plugin is very basic, there is no file input selection.
It always reads from the ‘test.txt’ in the root.
You have to unzip the espeak-data to the root of your player.

7984PatchesDatabaseVery LowTalk clip support for Database2007-10-17Jonas Häggqvist42007-10-213 Task Description

Before you get carried away, this is the script that will build talk clips in /.rockbox/talkclips/* for all tags and labels (reading tagnavi.config as well as the database_[0-9]*.tcd files).

The idea is that the database code will then look here for talk clips.

In the long term, the same method could be used for the file browser if desired.

Hopefully someone will help me out with the database code side of things, as I don’t think I’m up to that challenge.

8295PatchesDatabaseVery Lowdatabase integration of pictureflow2007-12-10Robert Kukla32009-03-073 Task Description

This is the first step of being able to use the pictureflow plugin from a database search. The database now indexes the path to the coverimage for each audio file. In the database browser you can select “Cover by...” genre, artist, composer, year or all and will be presented with a list of cover image paths. (Imagine a call to the pictureflow plugin at this stage, so instead of a list of boring paths you get nice and shiny images). After selecting a path it will display the list of files that would be queued when a cover image is picked in the plugin.

Next step is to work out how to safely call the plugin without losing the context and utilise the return value from it to queue the files.

Issues so far are:

- the preferred size of 100×100 is hardcoded (this should be configurable or at least be consistent with the value in the pictureflow
the db update for covers has the same restrictions as the other tags, i.e. it will only detect changed cover art on
the coverflow plugin needs to work while music is playing (or stop playback if needs
since there is no guaranteed relation between album name and image file, the album name can’t be displayed

8305PatchesOperating System/DriversVery Lowc200: support docking stations with audio2007-12-12Jerry52008-06-163 Task Description

When the c200 is docked (as detected by the charger discrete being active), switch to line out. This was necessary for the Griffen “iTrip Auto for Sansa” adapter to produce output. I would assume this is necessary for other docking stations.

This is *NOT* a perfect patch, but it is a start and is necessary to make docking stations with audio output work.

Limitations:
* I mute the headphone output, so plugging in a non-docking charger will prevent listening via the headphones while charging. Both can be enabled… if the charger is plugged in, it probably isn’t an issue but that is what the Sansa firmware does.

* The charger/headphones detection is done only on power up. This is suboptimal, but usually “correct.” A better technique would be to hook into the charger status announcements, but I don’t have time right now. :-(

8764PatchesFM TunerVery LowAuto mute weak stations2008-03-20Joel Garske72008-03-203 Task Description

Hi there,

first of all: this is my first contribution to rockbox and I tried my best to make myself familiar with the way things work there. I am sure, not everything is where it belongs. Please help me to get things in order :).

second: thanks to the author of Patch  FS#1803  that made this possible.

The purpose of this patch is to watch the tuner reported field strength (estimate) and mute, when it drops below a customizable threshold. Wether muting or not as well as the threshold are customizable in the fm tuner menu. It should not interfere with manual muting and should not affect recording (i didn’t test that yet). THe threshold is specified in pseudo-dBuV.
It also adjusts frequency display to display as MMM.KKK instead of MMM.KK. This is for people who adjust region settings and channel widths.

My testing conditions were limited to the sansa c250.  FS#1803  reports to work on the tuner chips LV24020LP (e.g. sansa c250) and TEA5767. I only tested the first. Please report back possible field strength values you see on devices using these chips.

This code should not break anything. I did a testbuild for some iPods (without tuner) that compiled cleanly. Simulator also works.

Currently only english and german translation are done.

User guide:
This patch conditionally adds 1 or 2 lines to the tuner main window that look like this:

Sig: [-M] -235dBuV
Automute below -555dBuV

The second line is only displayed if automute is enabled. The first line shows the status of the tuner. The 2 characters in the braces exlain as [ab]:

a: either 'O' or '-' 
   'O': current field strength is above threshold
   '-': current field strength is equal to or below threshold
b: either 'M' or '-'
   'M': will mute on or below threshold
   '-': automute disabled.
(both are only updated on field strength change)

The second line should be selfexplaining, same for the menu entries.

Request for comments!

9043PatchesUser InterfaceVery Lowslim down 'open with..' list2008-05-27Lee Kang Hyuk22010-08-293 Task Description

Obviously there is no one who wants to open a mp3 file with text viewer. With this patch applied, ‘Open With..’ only shows plugins that are associated in ‘viewers.config’. To see a full list of viewers plugin, just set the ‘Show Files’ option to ‘All’ and try again.

Some builtin filetypes are text file, so I added them into ‘viewers.config’ for the accessibility.

9059PatchesFont/charsetVery LowWenQuanYi Unibit font2008-05-31William Poetra Yoga Hadisoeseno2008-05-313 Task Description

This font is part of the WenQuanYi Project at [1]. It’s in Chinese, but there’s an english page at [2].

I’m adding this font because:
1. Currently there is no good Chinese font for Rockbox.
2. The best Chinese font (unifont) has unevenly sized Chinese characters, while this font has uniformly sized Chinese characters.

The attachments contain screenshots of the simulator, to show how this font would look like on the iPod Nano. I’ve also attached a screenshot using the Unifont font to show the uneven sizes of Chinese characters, for comparison. I don’t know about other languages, but I’d think other CJK languages work better in this font as well, due to the merging of WenQuanYi Bitmap Song.

According to the project[3], this font is made by combining the GNU Unifont (GPL), WenQuanYi Bitmap Song (GPL) and Fixed-16×8 (Public Domain) fonts. The maintainer of GNU Unifont also acknowledges this fact at [4].

This font is licensed under the GPLv2 with a font embedding exception[3]:

[quote]
** GPL v2 license with font embedding exception:

As a special exception, if you create a document which uses this
font, and embed this font or unaltered portions of this font into
the document, this font does not by itself cause the resulting
document to be covered by the GNU General Public License. This
exception does not however invalidate any other reasons why the
document might be covered by the GNU General Public License. If you
modify this font, you may extend this exception to your version of
the font, but you are not obligated to do so. If you do not wish to
do so, delete this exception statement from your version.
[/quote]

I don’t mind either way, but it would be up to Rockbox developers whether to strip off this exception. And either way, the font is compatible with Rockbox’s license (GPLv2).

The font I’m attaching is a modified version (and only the bdf); you can download the original version from [5]. My modification is:

— wqy-unibit.bdf.orig 2008-06-01 04:47:36.839752214 +0800
+++ wqy-unibit.bdf 2008-06-01 05:01:51.031748178 +0800
@@ -64,7 +64,7 @@
CHARSET_ENCODING “-1” CHARSET_COLLECTIONS “ASCII ISO8859-5 GB2312.1980 BIG5-0 KSC5601.1989-0 JISX0208.1997 ISO10646-1” ENDPROPERTIES
-CHARS 46443
+CHARS 46444
STARTCHAR uni0000
ENCODING 0
SWIDTH 500 0

This is because convbdf will emit a warning “Warning: DWIDTH spec > max FONTBOUNDINGBOX” when converting the font. This is because there are actually 46444 STARTCHAR entries, but only 46443 glyphs – the character “mu” is encoded as 181 and 956, with the exact same glyph. The generated .fnt file is exactly the same with or without my modification.

Additionally, this font is quite big so it’s a bit big on the screen of the iPod Nano. But it would be great on larger screens. Please take a look at the screenshots in the attachments.

Links:
[1] http://www.wenq.org/ [2] http://wqy.sourceforge.net/cgi-bin/enindex.cgi [3] http://www.wenq.org/index.cgi?Unibit_README [4] http://www.unifoundry.com/unifont.html [5] http://downloads.sourceforge.net/wqy/wqy-unibit-bdf-1.1.0-1.tar.gz?use_mirror=osdn

9068PatchesGamesVery Low[chessbox] Playing with touchpad2008-06-03André Twupack112009-10-133 Task Description

This patch adds more touchpad functionality to the game. It is possible to play by selecting the pieces directly instead of using the simulated buttons.
The changes are:
1. Added touchpad_get_mode to the plugin API.
2. Added menu entry for touchpad devices the switch between button mode and direct mode.
3. The user’s default touchpad mode is save during start-up of the plugin and restored after quitting.
4. The direct input mode is set only during the game (not in menu or view).
5. Extended play loop to handle BUTTON_TOUCHPAD event.
6. A piece is selected by clicking twice on it, moving is also done by clicking the target field twice.

The patch has been tested on the COWON D2 and also seems to compile fine for devices w/o touchpad. The patch has been created with

svn diff -x -w apps > touch_chess.diff

in the root directory. It would be nice if someone could test this (also on non-touchpad devices) and give me some feedback (bugs and improvements).

9087PatchesPluginsVery LowThe wake-up alarm on ipods starts rockbox even if hold ...2008-06-11Johan Swetzén82009-10-173 Task Description

When the wake-up alarm starts up the iPod, you wouldn’t want it to boot the OF, but it will do so if hold is on. This patch makes the bootloader check if the alarm is active and start rockbox regardless of the hold state if it is. Also, if the hold switch is on during start up rockbox would normally reset all settings, but this is inactivated if rockbox was started by the alarm.

Applying the patch:
Besides building the firmware, you will need to build and upload the bootloader to your ipod using ipodpatcher.

Limitations:
The bootloader doesn’t check if the alarm started ipod, it only checks if the alarm is active. If you have set the alarm you will have to use the MENU button to start the OF.

I don’t know if this works on any other iPods than the iPod video, but it will probably work on all of them.

9093BugsDatabaseVery LowDatabase initialization hangs if there's no music file ...2008-06-16William Poetra Yoga Hadisoeseno82014-01-163 Task Description

The database hangs when doing initialization if there is no music file on the player.

How to reproduce:
1. Install Rockbox.
2. Put some music files onto the device.
3. Initialize database.
4. Reboot.
5. Remove all music files from the player.
6. Initialize database.

9112PatchesBuild environmentVery LowAutomatically set correct cross compiler path based on ...2008-06-23William Poetra Yoga Hadisoeseno52009-05-103 Task Description

This is an attempt to automate the setting of $PATH in tools/rockboxdev.sh, tools/configure and the generated Makefile.

The directory prefix of the cross compilers is stored in ~/.config/rockbox.org/RockboxCompilerPrefix. As the default path (in tools/rockboxdev.sh) is /usr/local, if that file is empty, then $PATH won’t be modified. Otherwise, the value stored inside that file will be read, the target platform type appended, and lastly /bin appended. The resulting string will be appended to $PATH.

This patch doesn’t break existing configuration. But it’s most probably incomplete, so please provide feedback on which files need to be modified as well.

9186BugsCodecsVery Lowflac decoder doesn't handle truncated files nicely2008-07-11PaulJam62011-03-293 Task Description

When you play back a broken flac file (in this case a file that was truncated) it can happen that he decoder outputs constant loud noise instead of just skipping to the next track.

I’m not sure if this is really a bug since you are not supposed to play back broken files.

Attached is a file where this happens.

H300 r18009 (happens in the uisim too).

9252PatchesSimulatorVery LowCommon keyboard actions for Simulator2008-08-08Tomer Shalev62009-12-153 Task Description

Note: This is work in progress.
Status: Code implemented

      Manual not updated
      Wiki not updated (only after commit)

The idea of this patch is to have the same keyboard keys assign to the same actions in all platforms.

For example, have +/- keys (both on keyboard and on Numpad) are assigned to Volume Up and Volume Down keys of the original platform.
For platforms which do not have these keys, pressing the +/- keys in the simulator will do nothing.

This change will help developers to do manual regression testing on lots of platforms easily, as they do not have to memorize each platform’s key assignment.

Future development: Display key assignment on screen, and/or on console

9330PatchesRbutilVery Lowpatch for openBSD support for ipodpatcher2008-08-28Brian22008-10-083 Task Description

The following patches will allow someone running openBSD to run ipodpatcher. This is my first pass at these patches, so they cannot be integrated without some problems.

A few outstanding questions remain:

1) should I use /dev/sd0c or /dev/rsd0c?

2) why do byteorder(3) functions exist in fat32format.c?

3) how do the developers want to handle disk geometry?

I ask the last question because my patch overwrites the existing ioctl with what works for openBSD, rather than separate it out. And the patch doesn't fully use what is available in struct disklabel. I plan to re-write this one.

The fat32format.diff comments out byteorder(3) functions. The ipodio-posix.diff converts the file to openBSD disk geometry. The ipodpatcher.diff corrects the device used.

I have only tested the patches above for ipodpatcher on iPod nano 1st gen.

9419PatchesOperating System/DriversVery Lowtime structure tm.tm_yday implemented2008-09-25Christian Lees42011-02-163 Task Description

Here is a path that implements the year day variable in the tm structure. It does leap year checking. It uses a lookup table to find the number of days, the same as the mktime function. It creates another copy of the lookup table, this could be moved outside to conserve space if required.

As I don't have SVN access from behind the firewall its been built against 18563.

9621PatchesOperating System/DriversVery LowFAT read-ahead when filling buffer2008-12-10Boris Gjenero62010-03-263 Task Description

I noticed that when filling the buffer my Video iPod (32MB RAM) does noticeable seeks at semi-regular intervals even if reading from a single non-fragmented file. It seems this is due to having to read the next FAT sector. In firmware/drivers/fat.c there is a FAT cache but no read-ahead of the FAT.

I created fat_preload( struct fat_file *file, long sectorcount ) in firmware/drivers/fat.c to preload the FAT cache. In firmware/common/file.c I created file_preloadfat(int fd, size_t count) because calling a fat_ function directly would be too much of a kludge. I use file_preloadfat in apps/buffering.c just before filling the buffer.

This got rid of that regular seeking and it seems to it can remove about two seconds from the time needed to fill the buffer when reading a single non-fragmented file. Currently the code is quite simple and unintelligent. Fragmentation or other activity can overwrite the pre-loaded FAT sectors in the cache, and in such cases the pre-load leads to needless extra reads. More work is probably needed before this can be included in Rockbox.

Currently this patch is for SW-codec only. I think file_preloadfat could be called from HW-codec buffering code also, though few seeks would be prevented with 2MB of RAM. This patch is also probably useless with flash storage.

10023PatchesDriversVery LowiTunes communication for software USB targets2009-03-14Jonas Häggqvist22009-03-173 Task Description

This patch will make an e200 present its SD card as an ipod mini 2G when queried by iTunes. It does this by changing a number of things:

1) Responding to SCSI inqueries
2) Using Ipod USB vid/pid and other usb details

The patch also enables logf for the usb_storage.c because I’m in a bit of a hurry.

To use this, make sure you have a partition on the SD card of type 0 (any size should do) and also the appropriate Ipod file structure (can be generated with e.g. gtkpod).

10117PatchesMusic playbackVery LowBehaviour of PREV/NEXT when "skip length" > 0 and "prev...2009-04-09Alexander Levin2009-04-093 Task Description

I put up the three patches (before they expire on pastebin.com) that correspond to the three proposals of how the behaviour of PREV/NEXT could/should be changed. Note that only the situation described in the “subject” of this task is considered and changed.

The IRC discussion is at http://www.rockbox.org/irc/log-20090406#21:35:42

The start of the discussion on the mail list is at http://www.rockbox.org/mail/archive/rockbox-dev-archive-2009-04/0057.shtml

10156BugsLCDVery LowLCD sleep can theoretically happen after the backlight ...2009-04-21Boris Gjenero202009-04-253 Task Description

If LCD_SLEEP is put on the backlight queue immediatly after BACKLIGHT_ON, the LCD will go to sleep immediately after the backlight turns on. On the 5G iPod, the next backlight_on() call will wake it, but on some other targets it might not wake again.

For example, consider the following sequence of events:
1) backlight_on() is called, putting BACKLIGHT_ON on the queue
2) The LCD sleep timeout from the previous backlight shutoff puts LCD_SLEEP on the queue
3) BACKLIGHT_ON is received and the backlight is turned on. The call of backlight_lcd_sleep_countdown(false) does nothing about the LCD_SLEEP on the queue.
5) The LCD_SLEEP is received, putting the LCD to sleep again.

This patch causes LCD_SLEEP to be ignored by backlight_thread() when the backlight is on. It also removes a workaround from 5G iPod LCD sleep code.

This issue is theoretical and very improbable. I am not able to trigger this bug in r20774.

10188PatchesPluginsVery LowRockLock plugin - locks your player with a 4-digit code2009-05-03Mattitiah Curtis142009-10-093 Task Description

This is a plugin that locks your player with a 4-digit code. The default code is "0000", until you change it.

10343PatchesPlaylistsVery LowResume playback even if it reached the end and stopped2009-06-16Mikael Magnusson132011-07-223 Task Description

If playback finished with repeat off, let you resume the last playlist by pressing play or selecting the 'resume playlist' option in the main menu instead of showing the dreaded "nothing to resume" splash.
As a side effect it will also resume if you restart the player and have it set to resume which you would probably want to fix. I didn't update to the latest revision (i have 21295) that has jdgordon's namechange thing so it will probably show 'nothing to resume' if you apply it but still actually resume.

10394PatchesPlaylistsVery LowAdd a "Move after current" item to the playlist viewer ...2009-06-29Doru Barbu12009-06-293 Task Description

This patch implements a menu function to the playlist viewer's contextual menu that moves the selected track after the current playing track. It is especially useful as a simple queuing method.

I have tried to properly handle the situation in which the current playing track is the last in the playlist, but since I don't know exactly how (when) the playlist indexes are updated I wasn't able to do much in that respect, any help is very welcomed.

Since this patch adds the LANG_MOVE_AFTER_CURRENT string, I have also attached a diff with updates to the English and the Romanian translation file.

10590BugsPluginsVery LowAliasing when playing MIDI files on iPod 5G2009-09-06kzuse222012-05-163 Task Description

Starting from the daily build from mid August (can’t exactly say when, because I don’t play MIDIs so often), the MIDI playback on my iPod 5G 30GB sounds distorted, especially the Piano sample.

It sounds as if the higher frequencies are chopped of and instead replaced by “alias frequencies”. Maybe something has been messed up in the mixing routine concerning decimation filter / interpolation.

I am using the original patchset provided here at rockbox.org.

Maybe somebody could check this - thank you!

Keep up the great work!

10631PatchesGamesVery LowSpider (spider solitare) rework!2009-10-01Ben Basha82019-03-053 Task Description

Spider solitare game on easy level

uses solitare card suit

try it!

working on color and grayscale targets

10754PatchesMusic playbackVery LowAmend Sleep Timeout to Pause Timeout2009-11-02Sean Inglis262012-01-043 Task Description

Amend the sleep timeout behaviour to pause when the timeout matures.

This allows the idle timeout to power off the player if it remains untouched, or the sleep / pause timeout to recycle if the user unpauses before idle timeout kicks in.

10804PatchesUser InterfaceVery LowAdd touchscreen mode indication to status bar2009-11-22Rob Purchase132010-06-153 Task Description

The attached patch adds an indication of the current touchscreen mode to the "classic_statusbar" skin. This is useful since some screens automatically change mode, and there's currently no indication the user when this happens. The patch does the following:

- Adds a new WPS tag (%Tm) to return the current touch mode (Absolute|Grid)
- Updates classic_statusbar.sbs to conditionally show the correct icon

The reason I've made this a Flyspray task rather than just committing it is because the additions to classic_statusbar.sbs will also apply to non-touchscreen targets (though nothing will appear on screen). While the impact on these targets is minimal, I'm not sure about committing it since it will at least cause the new touchmode.bmp to be loaded unneccesarily.

Also, feel free to design some better icons!

10905PatchesThemesVery LowSong-Specific AlbumArt should also look for Songname in...2010-01-09Mike Schmitt42010-01-143 Task Description

There should be another option on the list of prioritized options for where to place Album Art images and the filenames. There are currently 7:
http://www.rockbox.org/wiki/AlbumArt

My suggested addition would become the new option 2, pushing all others down.
The first option is currently the only option to allow for song-specific artwork to be displayed, but this requires naming the image files *exactly* like the corresponding sound file, which screws up directory sorting.

Therefore the option should be added that if no image file has an identical name to the sound file playing, it then looks for an image file which matches the current song's Title metadata, similarly to how the following option looks for a match to the Album metadata.

This could cause conflicts when two songs have the same name, or when a song shares the album's name, or the song name contains unusable characters, but such conflicts are rare and minimal, and if anyone cares all that much about such things there is already the built-in flexibility to get around such issues. The additional code required should be minimal (and already blueprinted within the other options), and have essentially zero impact on any other functionality.

I may try to write this patch myself (as i did with "shuffle + track skip"), but if anyone beats me to it, it would be appreciated :)

10932PatchesPluginsVery LowVocabulary trainer2010-01-25Birgit Pavel52011-01-283 Task Description

General:
The trainer works with (three) cardboxes. Known cards will be moved from left to right to the next box, unknown to the first. You have finished the test if all cards are in the last box. The actual filling status of the boxes is graphically shown.

How the user handles the trainer during the test:
- a word is displayed
- the user thinks about the translation
- after pressing a button the solution is displayed
- the user decides by pressing the forward or backward button if he was right or wrong
- according the selection the card is shifted to the next box or to the first

Options:
- select vocabulary file
- reset (statistic) of vacabulary file
- change direction of inquiry
- display comment on/off
- colour settings

Vocabulary files:


The vocabulary is stored in files in the following format:
word1;word2;comment (optional)

Example:
lernen;to learn;verb

File format:
Maximum length of words:50
Maximum number of lines:500
File format: UTF-8

10959PatchesGamesVery LowBrickmania - Ball disappears. 2010-02-03Bert Wooster182012-08-123 Task Description

Running “current build” r24477-100203 on Sansa e200 V1

Game Brickmania bug:
The ball just disappears (often on Level 2, but maybe on others). Ball will just usually go to the top corner and not “bounce” back, but the game acts as if a ball is still alive (doesn’t register a lost ball) though there is no further movement on screen. I just have to quit the game.

The ball doesn’t bounce back. No further ball is issued. It just disappears and I can’t interact w/ the game anymore due to no active ball.

FIRST APPEARED: This began a few weeks ago (sorry I can’t be more specific), but has persisted in several “daily build” updates I’ve done and is in the current build I just installed.

REPRODUCIBLE: I reproduce the bug each time I just play through Brickmania. It generally happens in level 2 of the game though it may happen in subsequent levels– I don’t get through to them to see.

I’ve installed with rbuitil and manually, same thing happens. I have 2 different V1 e200s and it happens on both of them.

Thanks for all your work on the great Rockbox.

11101PatchesConfigurationVery Lowuser selectable USB cable bevaviour2010-03-14Oron Lavi102010-03-293 Task Description

Added new menu item under Settings.General.System, to select whether USB cable connection enters charging mode by default, or data transfer mode.

By default, the option is set to "No". Meaning, in order to have RB enter charging mode, a specific button should be pressed by the user.

If the option is set to "Yes", USB connection causes RB to enter charging mode, unless the specified button is pressed, causing RB to switch into data xfer mode.

11108PatchesDriversVery LowUSB Audio support2010-03-15amaury pouly132013-08-133 Task Description

This flyspray task will hold the development of a potential usb audio driver for rockbox.
It will also serve for the development of the isochronous transfer support support in usb code.

11619PatchesMusic playbackVery LowRestore pitch and speed settings on resume2010-09-10Frank Gevaerts112017-12-103 Task Description

This patch should save pitch and speed settings to nvram, and restore them after reboot if needed.

If I read the code correctly, there should be enough room in nvram (and anyway, the way this is done doesn't apply to any targets that actually use real nvram)

This code compiles, but apart from that it's completely untested.

Of course, since this patch increments the nvram data version, you'll lose resume info the first time you reboot.

11639PatchesThemesVery LowAndroid port: add theme downloader activity2010-09-22Maurus Cuelenaere152011-08-153 Task Description

This patch introduces 2 new activities, one which lists available themes for a specified target and another which lists more details and the option to install the specific theme. Currently this is more a proof-of-concept, as the communication with the theme server is handled by the same API RBUtil uses, which isn't perfect for the intended usage (e.g. offers no possibility to filter by screen size, only uses INI as output format, ..).

(this also includes some minor unrelated changes to the main Rockbox extraction functionality which won't be in the final patch)

TODO:
- make translatable
- better UI
- uninstall/update functionality
- show only themes fit for the displays' resolution
- use different protocol to communicate with theme server to get rid of iniparser dependency (XML, JSON, .. ?)

11734PatchesPluginsVery LowResistor Calculator: Calculator-like number pad library2010-11-07Calvin Walden42011-12-063 Task Description

r28529

This patch adds a new library that creates a calculator-like keyboard for easy number entry as an alternative to the on-screen keyboard. A lot of the code for drawing the buttons was taken from the calculator plugin.

Tested on the e200.

11752PatchesPluginsVery Lowpitch_detector: Mixed accidentals and Key Transposition2010-11-12Robert Horn112011-01-153 Task Description

Patch against r28560.

Adds options for displaying pitches according to key (for transposing instruments) and “mixed” accidentals a la Korg (C#, Eb, F#, G#, Bb).

I’d also like to add some kind of support for alternate temperaments (perhaps even just intonation), however this isn’t trivial and I probably won’t undertake the project unless some interest is expressed.

11989PatchesPluginsVery LowContacts plugin written in LUA2011-03-03Gabriel Maia82011-04-163 Task Description

Rockbox already exists for several years (fortunately), however it doesn't include a contacts list plugin by default, most likely because no one had coded one until now. As it's something that sometimes becomes handy, I decided to write my own, and as it's a simple enough plugin I've written it in LUA, to serve the purpose of a contacts plugin, to have a working example of a LUA plugin (that is not a game) and to explore the (im)possibilities of the LUA interpreter of Rockbox.

So this task will handle the development of a contacts plugin. Attached goes a BETA (but already very complete) version of the plugin. Just copy to your device (any location) and "play" the file.
The database where the contacts are stored is located at the root of your player, in a file called contacts.txt. The name and location of this file is subject to change in future versions, but the way contents are stored will probably keep being the same, so you can start adding your contacts (you can edit the file in the PC as long as you keep the format valid for LUA interpretation).

Key features (already implemented):
- View first, middle and last name of the contacts just after you open the plugin (fixed name order)
- Add contacts (lots of fields, I won't be adding more for now)
- Delete contacts (permanently and without confirmation, take care)
- View contact fields (after selecting it in the menu)
- View specific fields in their own screen (where you can also clear and, in the future, edit them)
- (Should be) Compatible with any Rockbox target that interprets LUA because the interface is entirely made of standard RB menus
- Works (at least) on my iPod Nano 2nd Gen
- Wonderful LACK OF warranty that it will work or that the plugin won't delete your contacts accidentally. Use keeping in mind this is a BETA version

To be implemented (for sure):
- Edit contacts
To be implemented (when I have time):
- Order the way names are displayed (e.g. first→middle→last to last→first→middle)
- Search for contacts by inputing part of any of the fields content
- Order contacts by categories (that's why there's a "Category" field on them)
To be implemented (if my programming skills allow it):
- Associate a image file to a contact, which will be shown when the contact is selected (and if someone codes it, why not a pictureflow of contacts?)
- Import and export contacts as vCards
- More configurable settings

Another additional note is that the current code of the plugin is not in agreement with the Rockbox coding style guidelines, I've tried to keep the number of chars in each line under 80, but there are lines where this is false. Also, the tabs are double-space instead of four spaces. This will be corrected when I finish the plugin.

Please test on your player and share the results, as well as any bugs or suggestions you might find.

12025PatchesPluginsVery LowOhm's Law Calculator added to resistor.c plugin2011-03-23Leif Andersen52011-03-283 Task Description

(Made using r29635)

This plugin adds an Ohm's Law calculator feature to the resistor.c plugin. It takes two inputs, of either (voltage, resistance, current, power), but not both of the same time, it will then calculate the other two values.

12054PatchesDatabaseVery LowHighlight each album's last-played track in database vi...2011-04-07sideral72011-08-093 Task Description

The attached proof-of-concept patch highlights (places the cursor at) each album's last-played track in database views. The intention is to allow easy resuming of multi-track audiobooks or podcasts where they were last left off. This works best when autoresume has also been enabled.

The patch relies on runtime statistics gathering being enabled (and the DB needs to be enables as well, of course).

The current patch has some caveats that I plan to address in future revisions:

Right now, it's unconditionally enabled for all database-based track views. We might consider allowing to turn this off for regular music albums.

When the last-played track has been completed (played through to its end), we should actually highlight the next track (or the first track if the last-played track was the final track of the album). [EDIT: fixed – see latest patch in comments section]

It would be great if a similar feature was available for the file browser. I'd find it acceptable if that would require the DB as well (as that's the place where the last-played info is stored). It could benefit from an add-to-DB-as-files-are-played feature (aka FS#12073).

Comments?

[EDIT: Clarified summary. Fixed a rather severe bug in the patch to make it actually work. :) ]
[ EDIT 2: Linked to FS#12073. Addressed one caveat. ]

12125PatchesOperating System/DriversVery LowUse persistent dircache without HAVE_EEPROM_SETTINGS2011-05-22Rosso Maltese62011-07-063 Task Description

The patch allows to use the persistent dircache even in targets that do not define HAVE_EEPROM_SETTINGS.

Starting trying to implement such a feature for my iPod Video, I "discovered" the functions dircache_load/save (I have a slight knowledge of the RB software). Investigating why it was not used on my target, I saw that it's conditioned to the define HAVE_EEPROM_SETTINGS without an apparently reason to limit them just to some targets.
So, I simply "detach" the functions definition and use from the define.
I'm using it since an hour, starting up and shutting down the DAP various times, jumping back and forth inside the dynamic play list, and I got no problems at all.

If I guess correctly the code, the dircache should be updated also when changing the DAP content, if the USB connection is done by RB and not the OF.

It's applied to r29907.

Showing tasks 101 - 150 of 669 Page 3 of 14 - 1 - 2 - 3 - 4 - 5 - Last >>

Available keyboard shortcuts

Tasklist

Task Details

Task Editing