Previous day | Jump to hour: 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | Next day

Seconds: Show Hide | Joins: Show Hide | View raw
Font: Serif Sans-Serif Monospace | Size: Small Medium Large

Click in the nick column to highlight everything a person has said.
The Logo icon identifies that the person is a core developer (has commit access).

Notice: Only Gecko based browsers prior to FF4 support the multipart/mixed "server push" method used by this log reader to auto-update. Since you do not appear to use such a browser, this page will simply show the current log, and not automatically update.

#rockbox log for 2011-01-18

00:00:58bluebrothersideral: you're welcome. I really wanted that to get fixed :)
00:01:04 Quit bmbl (Quit: Verlassend)
00:01:21sideralmoos: Nevermind, in exchange you can arrange for a Wiki account that doesn't include it :)
00:01:23bluebrotherand it also fixes the pause issue described in the task. At least for me. No idea why pausing causes an issue ...
00:01:32 Join slooopy [0] (
00:01:51*bluebrother guesses that getting a wiki account that doesn't include ones name is pretty much impossible
00:01:55moossideral: hehe :)
00:02:02sideralbluebrother: because pause needs the audio thread, which was blocked waiting for the DB to come online
00:02:06 Quit efyx (Quit: Quitte)
00:02:30bluebrotherunless you're good enough at lying at us to trick us into believing you've got a different name :)
00:02:46bluebrothersideral: but if the audio thread is needed, why does playback continue?
00:03:23 Join markun [0] (
00:03:23 Quit markun (Changing host)
00:03:23 Join markun [0] (~markun@rockbox/developer/markun)
00:03:31sideralbecause the audio thread controls the codec and buffering threads AFAIU
00:04:21sideralif the audio thread is blocked, the other threads continue to work their magic until they run out of data
00:05:24sideralwell, fortunately sideral is my real first name
00:05:35sideralof my new pseudonym ;)
00:05:49 Quit [Saint] (Ping timeout: 250 seconds)
00:07:54 Join [Saint] [0] (S_a_i_n_t@
00:12:46 Join DerPapst1 [0] (
00:13:01 Join JdGordon1 [0] (
00:13:29 Quit DerPapst (Ping timeout: 240 seconds)
00:14:54mudd1sideral, how is your multi-resume patch going? Any idea if we'll see it in mainline any time soon?
00:15:45mudd1can't wait to get a decent podcast experience with Rockbox ...
00:15:49 Join tchan [0] (~tchan@lunar-linux/developer/tchan)
00:16:43 Quit stripwax (Quit: Miranda IM! Smaller, Faster, Easier.
00:17:26kugelmudd1: there are still some concerns about the patch
00:18:33mudd1too bad :/
00:19:10sideralmudd1: The base functionality is committed already
00:20:18mudd1yeah, I activated the autoresume feature ... my WPS kept blocking – although I still experience that without the feature
00:20:28sideralmudd1: The next step will be to make it possible to jump to the previous track w/o losing the resume position, and to jump forward across an unplayed track w/o setting a resume position
00:20:45mudd1thought it might be a problem of the partial implementation of your whole patch though and never dared to activate that option again
00:20:48sideralmudd1: Try tomorrow's daily build ;)
00:20:49 Quit tchan (Quit: WeeChat 0.3.4)
00:21:20sideralbluebrother just committed a fix that may cause that when your DB schema is out of date
00:21:30mudd1is it in the SVN already?
00:21:38pixelmawhy wait for tomorrow's daily then?
00:21:45mudd1going to do an svn up
00:21:45 Join tchan [0] (~tchan@lunar-linux/developer/tchan)
00:21:54sideralyeah, if you can, do that :)
00:22:04sideralor simply rebuild the DB
00:22:17pixelmathere are SVN "recent" builds, compiled on every commit
00:22:56sideralpixelma: ah ok
00:22:57mudd1I have a build environment anyway
00:23:18sideralmudd1: saratoga said he's willing to commit this 2nd part eventually
00:23:34mudd1great news :)
00:24:26sideralthe other features (most notably, autoresume on automatic track change) are still under discussion, although I recently sensed a lack of disagreement on the developers' mailing list ;)
00:25:46mudd1Is the podcast recognition heuristic committed already?
00:26:26mudd1or will it autoresume for my music, too?
00:27:48sideralNo, not committed yet. Right now, it will try to resume all manually selected tracks, but not on automatic track change
00:27:49sideralI'd like to make the feature as configurable as possible (allow to configure which tracks can be autoresumed at all, and at automatic track change), but others (most notably Llorean) found the configuration too complex
00:28:45pixelmame too, just didn't take part in the discussion because the thread was already almost unreadable
00:29:24mudd1worst part of the Rockbox installation workflow is the original firmware having to rebuild its database all the fricking time
00:30:36sideralpixelma: yeah, sorry for the long thread. Both Llorean and I tried to summarize it every now and then, but it wasn't easy :)
00:31:39***Saving seen data "./dancer.seen"
00:31:44sideralpixelma: why are you opposed to making the feature configurable?
00:31:56mudd1sideral, the heuristic described in the tracker thread would work for me but I wouldn't mind being able to reconfigure that
00:32:07mudd1there are people listening to music podcasts after all
00:33:07sideralmudd1: same here, I actually use the 20-min heuristic to great satisfaction
00:34:08mudd1well, *that* wouldn't work for me ... I meant the *podcast* pattern in path or genre tag
00:34:12 Quit DerPapst1 (Quit: Leaving.)
00:34:49sideralah, that one :) yeah, I like that as well as it is more general, but I personally don't need it
00:34:58pixelmasounds like much complication for such a thing... my other reasons for not taking part in the discussion is that I don't listen to podcasts or audiobooks, and that Llorean already said most of the things I would have said
00:35:13 Join fdinel [0] (
00:35:49mudd1I like segmented podcasts when they are available so there you almost always get below the 20 minutes
00:35:53n1ssideral: one common complaint from users is that we already have too many settings
00:36:02sideralpixelma: I understand, but, well, people's preferences differ, and I see no need not to cater for that. I for one love Rockbox's level of configurability
00:36:26n1sand, well it does make it more complex
00:36:49sideralmudd1: I see
00:37:19mudd1n1s, I think you could hide these settings away from the average user
00:37:47sideraln1s: I actually think that I could live with just the one additional option to configure which tracks are allowed to resume after automatic track change
00:38:15mudd1looking for a podcast substring will work for 95% of the users I guess
00:38:48mudd1other possibility would be implementing the whole thing as a plugin ... but as far as I know plugins can't be loaded automatically on startup, can they?
00:38:51n1shistorically, features were added with lots of knobs that very few people used, and when someone used them stuff broke ;)
00:39:18pixelmabtw. having a fixed setting is also two-sided: if you are someone who would switch it on and off often because of you listening to different things it can hinder and the context menu way would be quicker. For example I like listening to my "various tracks" folders shuffled and to albums in order, since "insert shuffled" got added, I never needed to en- and disable again
00:39:27mudd1maybe that would be a good way to handle the ever growing amount of features without cluttering the core settings
00:39:28n1slately we have tried to think about what settings are really needed for new features since it's always harder to remove settings
00:39:29sideralnot being able to separately configure whether the manually selected track should be resumed or not doesn't hurt too much because the a user willing to use autoresume can be bothered to skip back to 0:00 if a track he's selected accidentally starts in the middle
00:39:32Lloreansideral: One option is to come up with another proposal. As you saw, I was trying to suggest a way to get the same level of functionality with far less options (and I came very close, but you didn't like the option I presented)
00:39:39LloreanYou could always propose a third way of doing it.
00:41:54sideralLlorean: I'm not opposed to additionally support the use cases you want. But I do not want to lose the automatic selection of tracks to resume on automatic track change.
00:42:29 Quit n1s (Quit: Lämnar)
00:42:50Lloreansideral: My way would allow you to queue up tracks with the ability to auto resume on track change. It just removes automation from it, in favor of flexibility *while* reducing the number of options. It addresses an awful lot of complaints with the feature.
00:43:06LloreanWhy does it need to be automatic, when it can be a (simple) couple button presses instead and remove false positives?
00:43:14LloreanPeople manage "insert" and "queue" all the time without difficulty
00:43:21LloreanAnd it would, literally, be no more complex than that.
00:44:40mudd1well, isn't the whole point of this patch to protect podcast listeners from stupid mistakes?
00:45:04sideralLlorean: Because the automation prevents me from accidentally losing my "precious" resume points ;) , and is damn convenient.
00:45:04sideralI for one don't like the insert/queue menu all, it's way to complex as it is without me adding another option to it
00:45:05 Quit sasquatch (Quit: WeeChat 0.3.2)
00:45:08gevaertsrockbox isn't there to protect people against mistakes
00:45:32 Join sasquatch [0] (
00:45:44Lloreansideral: It's not complex at all. There's no submenus or anything, just a list of a few options.
00:46:02mudd1I might have to duck and run but: any software should
00:46:07Lloreangevaerts: I would say that it should *when* that doesn't cost usability elsewhere (which I feel this automation does)
00:46:07 Quit pamaury (Read error: Connection reset by peer)
00:46:25gevaertsmudd1: then you're wrong
00:46:49sideralgevaerts: Are you implying Rockbox is there for people allowing to do crazy stuff with it, such as *gasp* configure it the way they want it? *ducks*
00:46:56mudd1gevaerts, no, I'm just working in HCI ;)
00:47:01gevaertssideral: no
00:47:04Lloreanmudd1: Protecting users is fine when it doesn't get in the way of other things. You shouldn't protect them when it means preventing them from doing stuff they might want to.
00:47:26gevaertsmudd1: ah, so you're one of those people who work on making things as unusable as possible?
00:47:49Lloreanmudd1: If you read the two proposals, sideral's is actually the more restrictive, as well as automating things which means it can have more accidental behaviour.
00:47:51sideralLlorean: I'm not proposing preventing anyone from doing anything.
00:48:15mudd1but automatically activating autoresume for tracks that the user put in the directory /PODCASTS is hardly getting in anybody's way, is it?
00:48:21Lloreansideral: The only way to get the functionality I'd like is to add my options in on top of yours, so if it's just yours, yes it'd prevent things.
00:48:32 Quit ender` (Quit: I was in the grocery store. I saw a sign that said "pet supplies." So I did. Then I went outside and saw a sign that said "compact cars"...)
00:48:48mudd1gevaerts, you seem to have some kind of trauma that I don't know of :)
00:48:50sideralRight. I'm not opposed to add your features at all
00:49:18Lloreansideral: but mine duplicate nearly the entire functionality of yours, just without the automation.
00:49:55mudd1computers are all about automation
00:50:12sideralLlorean: correct. But as I want automation, I'd loose with just your feature.
00:50:26Lloreanmudd1: That's a meaningless statement. Automation when it means the user doesn't have control of how their playback goes isn't a positive thing
00:50:53mudd1Llorean, I don't see why users couldn't have both
00:50:53sideralLlorean: I want to give users full control via configuration.
00:51:02Lloreansideral: You'd be able to have playback proceed *exactly* how it would with your features, it would just require *slightly* more preparation in starting playback.
00:51:17sideralConfigure one time for once, not every time I want autoresume
00:51:56sideralLlorean: I'm well aware of the tradeoffs. I'm willing to give you your feature, but without sacrificing mine.
00:52:02Lloreansideral: And you'd make people who want to conditionally autoresume constantly turn it on and off, rather than making people who want to autoresume only have to do something when they want to use it.
00:52:35sideralLlorean: Wrong. The condition should be in the config.
00:52:43LloreanThere's been a history of "make the people who want to use the feature have to do the work, and try to not to interfere with the people who aren't using it" and in a conditional use situation that'd be "don't interfere when they're not using it, interfere when they do"
00:52:54pixelmasideral: huh, which config?
00:53:17Lloreansideral: Your config doesn't meet the cases I expressed in the emails, so "should be in the config" doesn't really apply now does it?
00:53:35sideralpixelma: The configuration should determine whether a track is a candidate for resume-on-automatic-track change
00:53:59sideralLlorean: will you give that your use cases aren't mine?
00:54:24Lloreansideral: Yes, but your cases can be covered by my method, and mine can't be covered by yours. So if only one method is picked, mine's the more flexible.
00:54:59 Quit saratoga (Quit: Page closed)
00:55:52sideralWhy should there be a death match between our features?
00:56:12pixelmasideral: I hate software that tries to be smarter than me
00:56:14LloreanBecause we don't generally include duplicate features.
00:56:29 Quit leavittx (Ping timeout: 255 seconds)
00:56:32LloreanIf they both do nearly the same thing, generally one should be picked and the other discarded rather than leaving overlapping features.
00:56:35sideralI love your feature, and I love mine. They address different use cases.
00:56:41LloreanThat's why I suggested it should be rolled into bookmarking.
00:57:01sideralpixelma: So do I, but the smarts are in the configuration that _you_ do.
00:57:21 Join scorche [0] (~scorche@rockbox/administrator/scorche)
00:57:44Lloreansideral: Once playback starts, mine addresses your entire use case. The only thing it doesn't address is automation in starting playback, something that we don't generally have anyway. One option could be the integrate the automation into Database searches. Create the ability to have a filter tagged as "resume". Then you could filter "tracks tagged podcast, resume" and let it automate that way
00:58:07LloreanRather than trying to automate it *always* only automate it through an explicit addition to your tagnavi
00:58:30mudd1"automation in starting playback, something that we don't generally have anyway" sounds like a bad omen for the patch I'm working on ...
00:58:52Lloreanmudd1: What are you working on?
00:58:53sideralLlorean: I don't follow your point regarding the bookmarks. I suggest you take that to the mailing list, where you left my last bookmark-related message unanswered.
00:59:06mudd1autoplay on inserting a MicroSD card
00:59:27mudd1it's a plugin so far but as plugins can't get started automatically, this isn't practical in the long run
00:59:30sideral"something we don't have anyway" is what almost every new feature is about. Kind of a moot point
00:59:38Lloreansideral: Store the resume points in bookmarks, rather than in the database so that it doesn't require a database to use. Then fix your problems with bookmarks, rather than having co-existing systems for essentially the same thing
01:00:00Lloreanmudd1: There's a feature for a plugin to be run on boot.
01:00:05LloreanIt's disabled currently though
01:00:37mudd1oh ok
01:00:42mudd1gives me hope though
01:00:47mudd1why is it disabled?
01:00:57kugelnobody knows
01:01:10LloreanNo clue here either
01:01:18LloreanMy guess is that it may have increased boot times when autorock isn't present?
01:01:44mudd1there could be an option to enable the feature ;)
01:01:57LloreanThere is
01:02:00LloreanChange one line
01:02:02LloreanIn the source
01:02:02kugelI doubt the boot time is noticeably affected
01:02:34gevaertsIt's not disabled as such. It's just not enabled. There's a subtle difference :)
01:03:14kugelI think I would also prefer a solution with bookmarks for auto resume
01:03:40LloreanI think bookmarks would make the most sense. It doesn't have a prerequisite requirement like the database.
01:03:47sideralLlorean: I also don't understand your proposal of tying resume-on-track-change to the DB views.
01:03:47sideralRe: bookmarks: please reread my last message to the mailing list and reply there.
01:04:25mudd1Well then couldn't the whole autoresume autoenable thing be a plugin which might be as bloated as sideral wants and we won't have to discuss this anymore?
01:04:35gevaertssideral: how are bookmarks hard to use?
01:04:40Lloreansideral: create a way in which DB filters can be tagged "use autoresume" so that when any track is launched from that filtered list it automatically resumes. Then you can use any of the database's searching configurability as your method for configuring the use of autoresume
01:05:15Lloreanmudd1: Ideally good autoresume should be a core feature.
01:05:33kugeltying it to tracks selected from the database is not ideal either, and contradicts with the idea to make it work via bookmarks
01:05:48mudd1Llorean, it could but there could be a plugin that enables autoresume for all tracks that match a certain pattern
01:05:58mudd1and that plugin could be loaded automatically
01:06:03mudd1for people who want it
01:06:12mudd1problem solved ... call me naive
01:06:21Lloreankugel: No, I think you're missing what I'm saying. I would like it to work how I've proposed on the list, but as an option for *automating* it, allow it through the database so that the configurability can be maintained (by way of database filters, rather than by an array of menus)
01:06:23sideralmudd1: I agree that ideally, we'd be able to have behavioral plugins such as autoresume, but Rockbox won't be there for a foreseeable future
01:07:32mudd1sideral, no you'd have autoresume in core but a plugin API call along the lines of enable_autoresume(track)
01:07:40Lloreankugel: Basically, we already *have* a means for filtering out and selecting tracks by genre, tags, or otherwise, so use that rather than menus if it must be automated.
01:08:16mudd1then you have a plugin that searches for a pattern and enables autoresume for all tracks that match
01:08:18Lloreankugel: Though I guess an "insert resumed" option means you could just "insert resumed" on a database search
01:08:24sideralLlorean: Your idea for having the DB views tag the playlist for resume-on-trackchange isn't bad, but it sacrifices one crucial advantage of my patch: My feature is agnostic to the way in which the track was added to the playlist. I don't like that some features don't work when tracks are started by a specific means
01:08:45mudd1the config for that pattern would be in the plugin, too, so you don't even have that discussion
01:09:25Lloreansideral: Your feature requires a database *anyway* so I don't see why it shouldn't be dependent on launching them through it. If you feature could work without the database at all, it might make more sense to me that you'd be against using it.
01:09:26kugelcontrolling the way songs are played via database filters seems awkward
01:09:57sideralgevaerts: I compared the relative merits of bookmarks and DB-based autoresume at length in the ML thread and would prefer to keep that discussion there
01:10:29gevaertssideral: ok, in that case I'm stating here that bookmarks are easy to use
01:10:40gevaertsWhich you now can not oppose :)
01:10:59Lloreangevaerts: His objection (from my perspective) seems to be that there are some bugs in bookmarks, and rather than fixing them he'd like to just create a simple system that does what he needs.
01:11:10sideralgevaerts: Looks like a Pyrrhus (sp?) victory to me :)
01:11:16gevaertssideral: for who?
01:11:23sideralfor you :)
01:11:39gevaertscan't be
01:11:55sideralLlorean: please, not this again
01:11:55 Quit froggyman (Quit: Ex-Chat)
01:12:01gevaertsA pyrrhic victory would be if I'd have read that entire thread to learn something entirely trivial
01:12:20Lloreansideral: Not what? That's more or less how you explained it to me. You listed problems with the bookmarking system, and then stated that autoresume was such a simple feature that you felt you should enable it your way instead.
01:12:31LloreanIf that's not really what you meant, please explain it to me rather than being upset that I misunderstood you.
01:13:02sideralLlorean: Using the DB to generate query-based views is a different use case than using it to query some metadata for playback. The two are not related from a UI point of view.
01:13:04gevaertssideral: at least point to the mail where you explain this. "Please read the thread" is *not* helpful
01:13:39 Join froggyman [0] (~seth@unaffiliated/froggyman)
01:14:08Lloreansideral: If you want to find a subset of tracks, the database is *literally* the tool created for that. So why should there be menu options for it?
01:15:20sideralLlorean: I did, in my last couple of ML messages. I was rather upset when you first stated that I didn't want to fix bugs in the bookmarking system, and thought we had cleared up that misunderstanding.
01:16:25Lloreansideral: Your last message simply stated "bookmarks are harder to use, and incorporating autoresume would make them even harder"
01:16:39LloreanIf you have ""bookmark on stop" enabled and a feature to auto-resume bookmarks, what else *is* there to their use?
01:17:03LloreanHow would that be "harder to use" than your autoresume? A bookmark is stored on stop, and loaded on start...
01:17:29JdGordon1putting myself in the lions den here... I would also prefer a bookmark rewrite (even if it means using a subset of the db) than adding workarounds for its crappinesss
01:17:37LloreanSince there's already a system for parsing and writing bookmarks, your objection of "no need to write or parse them" seems somewhat obtuse since you already have the tools for this.
01:18:14sideralgevaerts: I don't question the usability of bookmarks, at least not here and now. But I regard them as two extra step to take (browse + select) to get autoresume, whereas in my feature I use the way I normally use to select tracks
01:19:08JdGordon1sideral: autoresume could be done with "bookmarks" just as easily... the problem here is having two implementations doing very similar things
01:19:09mudd1Llorean, what else there is is easy to say: bookmark on skip, bookmark on rewind ...
01:19:20mudd1not saying that it couldn't or shouldn't be done
01:19:21Lloreansideral: If it were *auto* resume you would neither need to browse nor select the bookmark... Selecting a bookmark is *manual* resume
01:19:31sideralI regard bookmarks and autoresume as complementary.
01:19:50LloreanAutoresume would be "if present, load the bookmark when the track is selected"
01:19:58JdGordon1exactly... autoresume should build on bookmarks, not be a side thing
01:21:10Lloreanmudd1: Skip maybe, but rewind is a little odd. If you rewind erroneously, just fast forward back to where you were. If you rewind intentionally, then you'll want the bookmark at your final position, rather than where you started rewinding.
01:21:54mudd1Llorean, by rewind I meant jumping back to 0:00
01:22:04mudd1sorry if that falls under 'skip', too
01:22:12mudd1then it would just be bookmark on skip
01:22:17sideralBookmarks are for manual things in my view. Want to remember something forever? Create a bookmark.
01:22:18JdGordon1sideral: the absolute best system for this should be a single system (maybe built on the DB) which keeps track of track stoppages/changes/restarts which bookmark and autoreumse both use for their logic
01:22:31JdGordon1having bookmarks and autoresume use 2 different systems is not nice
01:22:48sideralFor automatic resume, I don't want my bookmark library / filesystem to be cluttered with autogenerated bookmarks
01:23:05JdGordon1especially when bookmarks currently doesnt work on DB playlists (and some others iirc) and autoresume requires the db to be fully initialiszed
01:23:36Lloreansideral: So add a simple flag for the autoresume bookmark so that it's hidden, and never overwritten by manual bookmarks.
01:23:43 Quit sudela (Ping timeout: 260 seconds)
01:24:05sideralbookmarks are to snapshot playlists, autoresume is to conveniently store a per-track attribute
01:24:05LloreanYou still get filesystem clutter, but that's solved by "show music" rather than "show supported" or just by ignoring it. And comes with the benefit of not requiring the database to have autoresume
01:24:31sideralLlorean: you're proposing another hack, more complexity −− not a good idea
01:24:32Lloreansideral: per-track bookmarks has been a wanted feature in the past.
01:25:12sideralAs has been autoresume −− so?
01:25:37JdGordon1so build them together
01:27:17sideralmore complexity for little gain −− no
01:27:18 Quit GeekShadow (Quit: The cake is a lie !)
01:28:23sideralgevaerts: Here's the msg in which I summarize my reasoning for not basing autoresume on the bookmarking system:
01:28:53Lloreansideral: Once bookmarks are "working as we want them" adding autoresume to them makes much more sense. Which is why adding it in as a separate feature *before* they work right, rather than fixing them, doesn't make sense.
01:29:16gevaertssideral: you state there that bookmarks are hard to use. What I want to know it, what's hard about them?
01:30:06sideralI'd be willing to port autoresume over to any system better than the DB. I just don't see any arriving any time soon.
01:30:50sideralgevaerts: No, I've only stated that autoresume is much easier to use, which is true: It works without UI additons (besides configuration)
01:31:23*moos is going to commit FS #11885 "Whitespace fixes". Less controversial :)
01:31:42JdGordon1what type of whitespace?
01:31:46 Quit domonoky (Read error: Connection reset by peer)
01:31:48sideralBut the usability of bookmarks has nothing to do with me not basing autoresume on the bookmarking infrastructure
01:31:58JdGordon1as long as you dont do \t -> space in imported code,...
01:32:07Lloreansideral: Then why was it part of your objection to doing so?
01:32:31JdGordon1sideral: I'm not saying you should base it on the current bookmarking code.. that is shite
01:33:41*gevaerts thinks that there should actually be a summary of the different points of contention
01:33:46sideralIt only served to make my point that bookmarking is more complex than autoresume in every respect, yet is has been accepted in the code, whereas autoresume faces much more rigor and criticism
01:34:20JdGordon1bookmarks was added YEARS ago, at least 5...
01:34:21gevaertssideral: see earlier. The more complex code gets as a whole, the more critical one is to new additions
01:34:48gevaertsWe probably have several features that probably wouldn't get in today
01:35:08pixelmayou have to also look at it historically... basically what gevaerts said and bookmarking is really old AFAIK
01:35:50kugelbookmarking doesn't interfere with normal playback, but auto resume does
01:36:36gevaertsI think we should try to keep the different issues apart. Autoresume != resume points != database vs. bookmarks
01:36:48mudd1I'm sorry for starting this uhm ... heated debate and now leaving early but I have to get some sleep
01:37:15mudd1good luck with finding a satisfying solution for everyone
01:37:20CIA-7New commit by 03moos (r29082): Few whitespace fixes by Michael Hohmuth FS #11885
01:37:36sideralThanks moos
01:38:15moosYou are welcome
01:38:47mudd1good night
01:39:04 Quit mudd1 (Quit: Ex-Chat)
01:39:47sideralkugel: Yes, that's the whole point of the feature. Don't like that? Don't enable it
01:40:39*gevaerts wonders how many people make use of the feature that bookmarks can be copied to another player
01:41:34Lloreangevaerts: I know that I have, but I can't imagine too many people do.
01:41:49LloreanI also like that they come with my MicroSD card when I move it into another player.
01:41:59LloreanIt means that on very long trips where charging isn't possible, I can chain players.
01:42:03pixelmamy guess is that most would use it for some tracks but not others and then this enable/disable business is a weird thing and may be one reason for this discussion
01:42:10gevaertsright. That's useful indeed (and technically the same thing)
01:42:17CIA-7r29082 build result: All green
01:42:39sideralgevaerts: that's actually a nice feature. I haven't ever used it, though
01:43:01Lloreangevaerts: Well, there's no copying involved when you move the card. But it's an aspect of the same thing, sure. :)
01:43:47pixelmadatabase files are also said to be interchangeable, it got a lot of code to make them endianness independent
01:43:49JdGordon1bookmarks only work on single folders right?
01:43:54JdGordon1single folder playlists*
01:44:27 Quit dfkt (Quit: -= SysReset 2.53=- Sic gorgiamus allos subjectatos nunc.)
01:44:29LloreanJdGordon1: Single folders, or actual .m3u files, but not multi-folder dynamic playlists (yet)
01:44:43JdGordon1or db
01:44:49LloreanYes, or db.
01:45:13LloreanWhich I imagine multi-folder dynamic playlists being fixed would also solve (since both would essentially require storing the playlist in the bookmark, I think?)
01:45:14JdGordon11) remove bookmarks system
01:45:43JdGordon12) add a new system to store all track stoppages (with info to rebuild playlist, ondisk but not linked to tagcache)
01:46:05JdGordon13) on track start see if autoresume or bookmark is enabled and use that system to do your thing
01:47:22 Quit kugel (Remote host closed the connection)
01:47:47*gevaerts isn't sure
01:47:48sideralone can always dream... :)
01:49:05sideralhas anyone actually looked at the autoresume implementation? It's literally only a dozen lines of code or so, excluding configuration. It certainly does't warrant building a new infrastructure, or making an existing infrastructure more complex (bookmarks)
01:49:07gevaertsThe two disadvantages that I see to linking it to tagcache are (a) tagcache is too big for some people (but that might be solvable by not scanning everything and only adding things when needed), and (b) real portability of flash cards
01:49:52JdGordon1sideral: the current bookmark infrastructe is outdated and crap.. it NEEDS major work
01:50:01gevaerts(b) is actually a pretty serious shortcoming of the database today already I'd say
01:50:26*JdGordon1 said *not* linked to tagcache
01:50:31gevaertsJdGordon1: yes
01:50:49sideralJdGordon: agreed. but don't make the whole world depend on it
01:51:05gevaertsJdGordon1: I'm trying to enumerate why not
01:51:30gevaertsBecause linking to tagcache *does* have some advantages if you use it
01:52:34*sideral nods wisely
01:53:09 Part Llorean
01:53:27 Join Llorean [0] (~DarkkOne@rockbox/user/Llorean)
01:53:43Lloreangevaerts: Advantages to the user or implementor? And if to the user, can't they be duplicated without database?
01:54:01JdGordon1sideral: makeing one system which everything depends on is good. It means much smaller changes when things need updating
01:54:13sideralLlorean: both, please see the msg I linked to above
01:54:40JdGordon1and.. autoresume REQUIRES "bookmarks" anyway... its not like they are two seperate ideas
01:54:55sideralJdGordon: I don't disagree with that. I'm meant to say please don't stop the world until that system is done
01:55:06Lloreansideral: Well, it's the user we should be worrying about first. Implementation may be more complex, but it's also something that only happens once.
01:55:23gevaertsLlorean: I was thinking about usage. The ability to use the resume information in database queries can be nice I expect
01:55:41sideralyes it is. I use it daily
01:55:42Lloreansideral: And if it's the email you replied to me, you didn't describe in any detail how it's beneficial for the user. Just an assertion that bookmarks are too complicated.
01:55:57JdGordon1sideral: you have to understand though, we are being hugely critical because there are better ways to do it... if someone patched it to do my suggestion it would be accepted without any of this argument
01:56:11JdGordon1gevaerts: that could be done anyway
01:56:15Lloreangevaerts: That's something that could be incorporated into the database *anyway* though independently. "Does a bookmark for this file exist" is something I'd like to know in the database anyway, if i used it.
01:56:22*JdGordon1 needs to move his car
01:56:35*gevaerts isn't sure if it could be done *cleanly*
01:56:37Lloreangevaerts: In fact, databasing bookmarks overall would be nice, so that I could have a list of all bookmarks for podcasts, or all bookmarks for audiobooks.
01:57:06gevaertsLlorean: yes. But it has to be per volume :)
01:57:12Lloreansideral: There's, as a whole, a pretty strong objection to "put in one way of doing it, that's good enough for now, until we can do it the 'right' final way"
01:57:23sideralLlorean: more unrelated feature request won't help getting this resolved.
01:57:24Lloreangevaerts: Doesn't the database handle stuff on MicroSD already?
01:57:59gevaertsLlorean: as far as I know, yes, but you can't easily move the data with the card
01:58:01Lloreansideral: My point, in case you missed it, was that your benefits to users can still be duplicated, so they aren't exclusive benefits that make your idea better than others.
01:58:33Lloreangevaerts: This is true. I think the bookmarks should stay separate files, just that database should scan them just like it scans audio files, and allow their information to be searched.
01:59:04gevaertsLlorean: ah, so bookmark changes would also prod the database code to do something?
01:59:08*gevaerts nods first sight. the devil's in the details
02:00:03Lloreangevaerts: If the database was present, sure.
02:01:18 Quit robin0800 (Quit: Leaving)
02:08:02sideralI need to go to bed. My interim conclusion for tonight: I now wasted _much_ more time having arguments on how to do a small feature right in the perfect world than actually coding it. So far it looks like it has not been worth it.
02:08:02sideralWhat's your bottom line?
02:10:50pixelmathat you took an unfurtunate feature to get involved into Rockbox work</semi-serious> ;)
02:10:58pixelmaunfortunate too
02:12:13gevaertssideral: I think the biggest problem right now is that anyone who looks at the mailing list thread just turns around, so *nobody* (except maybe three people) actually even knows any more exactly what we're discussing
02:12:50sideralpixelma: Because it immediately shows the most pronounced traits of this community? It's better to find out now than later ;)
02:14:18sideralgevaerts: yes, TL;DR seems to be one of those key traits ;)
02:15:14gevaertssideral: you said there are summaries in that thread. Why don't the subject lines indicate that?
02:16:25gevaertsIf you really expect everyone to follow the discussion and try to identify which mails are worth reading, I'd say there's something wrong with your expectations
02:17:08sideralthis is a simple feature in comparison to what other people work on (say, the Android port and the touch interface), and I do have trouble understanding how you can get so worked up about it.
02:17:09sideralgevaerts, I'd say commit the damn thing and let people play with it to become "experts" in this area. If they hate it, back it out before the next release.
02:17:57JdGordon1doesnt work that way
02:18:07gevaertssideral: commit *what*?
02:18:44gevaertsThat's my point. You can't get a consensus if people don't know what the consensus is supposed to be about
02:18:46sideralgevaerts: FS #11748, latest patch set
02:19:53*gevaerts looks at the latest patches on FS #11748 and suspects that those are not what sideral means
02:20:39sideralThis is a good place to start:
02:21:07gevaertsRight, so *not*
02:21:28sideralexcept that patches 0001 and 0008 have been committed already
02:22:06sideraland patch 0007 is not necessarily needed any more
02:22:35gevaertsSee what I mean? :)
02:22:38pixelmasideral: we usually don't remove features (and try to avoid half-baked solutions because they have a way to stay around for longer than wanted) which is probably why the bar is higher initially
02:23:26sideralgevaerts: What _do_ you mean? That I should summarize the complete discussion in each tracker comment?
02:23:44sideralI'd be happy do create a new complete patch set at any time
02:24:04sideralbut the next step is patch 0002, which is why it is in the latest comment
02:25:35sideralIt's not my fault that FS is crap for conveying an evolving patch set. I'd be happy to point you to a git: URL if you want.
02:26:32 Quit moos (Quit: ChatZilla 0.9.86 [Firefox 3.6.13/20101203075014])
02:26:43 Quit Gareth (Ping timeout: 276 seconds)
02:27:48sideralpixelma: I respect that, but backing out stuff before a release is not what I'd consider removing a feature.
02:28:18JdGordon1we have odd ideas about releases
02:28:34gevaertsNot really
02:28:46gevaertsWell, we're trying to fix that
02:30:14pixelmasideral: maybe I misunderstand "backing out" here, you mean only disabling it for a release?
02:30:48sideralpixelma: I mean removing the code again from the SVN repo
02:31:14pixelmawell, then it's removing a feature to me
02:31:40sideralOK :)
02:31:44***Saving seen data "./dancer.seen"
02:32:24gevaertssideral: actually, I'd say the first TODO in patch 0002 there is a nice illustration of why one can have too many options :)
02:33:41sideralgevaerts: Good point. fortunately, Thomas Martitz did not insist on this particular behavior. :)
02:35:58 Join sudela [0] (
02:37:15 Join sideral1 [0] (~sideral@unaffiliated/sideral)
02:39:05 Quit sideral (Ping timeout: 255 seconds)
02:43:24sideral1Really need to leave now. Too bad no one else came forward with their interim conclusion.
02:44:02*gevaerts doesn't really *have* a conclusion, because he isn't 100% sure where the contention is *exaxctly*
02:44:14gevaertsBut yes, sleep sounds like a good idea
02:50:25 Join evilnick_ [0] (
02:51:06 Quit sideral1 (Ping timeout: 265 seconds)
02:52:28 Quit evilnick (Ping timeout: 240 seconds)
02:56:47 Quit sudela (Ping timeout: 240 seconds)
03:08:28 Join Strife89 [0] (
03:20:36 Join sudela [0] (
03:23:00 Quit Llorean (Quit: Leaving.)
03:26:01 Join Llorean [0] (~DarkkOne@rockbox/user/Llorean)
03:29:05 Quit designate72 (Quit: Leaving)
03:45:09 Join mystica555 [0] (
03:45:29 Join mystica555_ [0] (
03:45:30 Quit mystica555_ (Excess Flood)
03:45:58 Join mystica555_ [0] (
04:13:40 Quit fdinel (Quit: Miranda IM! Smaller, Faster, Easier.
04:16:19 Join t0rc [0] (~t0rc@unaffiliated/t0rc/x-5233201)
04:21:34 Quit Strife89 (Quit: Not sure what to do, and I need sleep.)
04:24:47 Join Barahir_ [0] (
04:28:03 Quit Barahir (Ping timeout: 260 seconds)
04:31:46***Saving seen data "./dancer.seen"
04:32:00 Quit amiconn (Disconnected by services)
04:32:01 Join amiconn_ [0] (quassel@rockbox/developer/amiconn)
04:32:15 Quit sudela (Ping timeout: 240 seconds)
04:32:19 Nick amiconn_ is now known as amiconn (quassel@rockbox/developer/amiconn)
04:32:31 Quit pixelma (Disconnected by services)
04:32:33 Join pixelma_ [0] (quassel@rockbox/staff/pixelma)
04:32:35 Nick pixelma_ is now known as pixelma (quassel@rockbox/staff/pixelma)
04:44:16 Quit TheSeven (Ping timeout: 240 seconds)
04:44:58 Join perrikwp_ [0] (18a7a08e@gateway/web/freenode/ip.
04:45:20 Part perrikwp_
04:47:28 Quit perrikwp (Ping timeout: 265 seconds)
04:48:28 Join TheSeven [0] (~TheSeven@rockbox/developer/TheSeven)
04:48:44 Quit guymann (Ping timeout: 250 seconds)
05:01:29 Join guymann [0] (
05:02:10 Quit Rob2222 (Ping timeout: 276 seconds)
05:04:15 Join Rob2222 [0] (
05:10:54 Join Rob2223 [0] (
05:11:47 Quit Rob2222 (Ping timeout: 240 seconds)
05:12:45 Quit mystica555 (Read error: Connection reset by peer)
05:12:46 Quit mystica555_ (Read error: Connection reset by peer)
05:13:29 Join mystica555 [0] (
05:19:17 Join Cowboy308 [0] (
05:25:46 Join mystica555_ [0] (
05:41:12 Quit Horscht (Quit: Verlassend)
06:04:35 Quit t0rc (Quit: Give someone code, help them with one project. Teach someone to code, help them rule the world.)
06:14:31 Quit Cowboy308 (Ping timeout: 272 seconds)
06:17:47 Quit mystica555_ (Read error: No route to host)
06:18:58 Join Cowboy308 [0] (
06:20:46 Join perrikwp [0] (18a7a08e@gateway/web/freenode/ip.
06:31:48***Saving seen data "./dancer.seen"
07:07:26 Join leavittx [0] (~leavittx@
07:18:19 Join sideral [0] (~sideral@unaffiliated/sideral)
07:19:42 Join GWXerxes [0] (
07:21:39 Quit sideral (Client Quit)
07:23:38 Quit GWXerxes (Client Quit)
07:38:48 Quit milk (Quit: baaaiiii)
07:51:51 Quit liar (Read error: No route to host)
07:53:19 Quit MethoS- (Remote host closed the connection)
07:56:13 Quit TheSeven (Ping timeout: 276 seconds)
07:56:17 Quit JdGordon1 (Quit: leaving)
07:57:23 Join LinusN [0] (~linus@rockbox/developer/LinusN)
08:01:31 Join liar [0] (
08:05:55 Quit panni_ (Read error: Connection reset by peer)
08:09:36 Quit liar (Read error: No route to host)
08:11:18 Join GeekShadow [0] (~Antoine@reactos/tester/GeekShadow)
08:17:04 Join liar [0] (
08:21:28 Join sideral [0] (~sideral@unaffiliated/sideral)
08:27:35 Quit liar (Ping timeout: 276 seconds)
08:31:52***Saving seen data "./dancer.seen"
08:31:57 Join Zagor [0] (~bjst@rockbox/developer/Zagor)
08:35:47 Join liar [0] (
08:36:14 Quit Cowboy308 (Ping timeout: 240 seconds)
08:36:30 Join mystica555_ [0] (
08:37:03 Join n1s [0] (
08:37:04 Quit n1s (Changing host)
08:37:04 Join n1s [0] (~n1s@rockbox/developer/n1s)
08:38:08 Quit bug2000 (Ping timeout: 240 seconds)
08:38:39 Join TheSeven [0] (~TheSeven@rockbox/developer/TheSeven)
08:40:50 Quit liar (Ping timeout: 255 seconds)
08:41:39 Join liar [0] (
08:43:55 Join bertrik [0] (~bertrik@rockbox/developer/bertrik)
08:49:39 Join ender` [0] (
08:49:50 Join bug2000 [0] (~bug@unaffiliated/bug2000)
08:53:09 Join petur [0] (d408b802@rockbox/developer/petur)
09:01:55 Join JdGord [0] (~jonno@
09:02:51 Quit bluebrother (Disconnected by services)
09:02:53 Join bluebroth3r [0] (~dom@rockbox/developer/bluebrother)
09:04:58 Join bmbl [0] (
09:04:58 Quit bmbl (Changing host)
09:04:58 Join bmbl [0] (~bmbl@unaffiliated/bmbl)
09:13:00 Join swilde [0] (
09:16:35 Join bimbel [0] (
09:16:35 Quit bimbel (Changing host)
09:16:35 Join bimbel [0] (~bmbl@unaffiliated/bmbl)
09:16:48 Quit bmbl (Disconnected by services)
09:16:54 Nick bimbel is now known as bmbl (~bmbl@unaffiliated/bmbl)
09:18:28 Quit bertrik (Ping timeout: 240 seconds)
09:22:54 Join PurlingNayuki [0] (~PurlingNa@
09:37:53PurlingNayukiHi everyone.
09:37:54PurlingNayukiI've posted a patch in Rockbox:FS #11888 - Fix Onda VX777 display error without define #USB_BOOT when compile
09:38:05PurlingNayukiPlease try it and apply it.
09:50:05 Quit bmbl (Quit: Verlassend)
09:57:22 Quit PurlingNayuki (Ping timeout: 265 seconds)
09:58:01 Join bmbl [0] (
09:58:02 Quit bmbl (Changing host)
09:58:02 Join bmbl [0] (~bmbl@unaffiliated/bmbl)
10:01:09 Quit JdGord (Quit: Bye)
10:30:16 Join einhirn [0] (
10:31:53***Saving seen data "./dancer.seen"
10:36:42 Quit mc2739 (Ping timeout: 264 seconds)
10:36:51 Join DerPapst [0] (
10:38:09 Join mc2739 [0] (~mc2739@rockbox/developer/mc2739)
10:51:49 Join lombax [0] (
10:52:22lombaxSo I've just managed to get rockbox back onto my gigabeat S after upgrading the drive to a 120GB model
10:52:48lombaxAnd I'm finding that rockbox is actually slower to write to the device
10:53:32lombaxSeeing as the new drive has four times the data density and four times the cache, while only a slightly slower spindle speed, is there any reason it'd be slower?
10:54:29jhMikeSmake sure it's using UDMA mode
10:54:39lombaxHow can I do this?
10:55:06 Nick lombax is now known as bluefoxx (
10:55:08jhMikeSgo to System->Debug (Keep Out!)->View Disk Info
10:55:51jhMikeSat the bottom it should show "DMA Mode: UDMA 4"
10:56:55bluefoxxNew disk is
10:57:26bluefoxxHow loss of speed /is/ actually due to rockbox anyhow?
10:58:55n1sthat disk has 4k sectors, wouldn't that hit the sector emulation stuff?
10:59:12n1sthe 512b sector emulation stuff
10:59:37jhMikeSit should be made with the emulation stuff
10:59:45 Part sideral
11:00:13bluefoxx...Oh for the love of-
11:00:18jhMikeSit could dynamically switch away from DMA mode if the transfers can't be done because they're too large (just thinking out loud)
11:00:23 Quit GeekShadow (Read error: Operation timed out)
11:00:35bluefoxxRight, my bootloader's been lost it seems
11:00:49bluefoxxBoot it up and it jumps right into wiping the drive
11:01:42bluefoxxI practically had to stuff my head up my ass and out my own mouth again to get it rockbox on this new disk in the first place
11:02:39bluefoxxIs there a nice, well written guide for a proper drive upgrade and firmware restoration?
11:02:50n1sthe original firmware's bootloader is a bit quirky
11:03:07n1sbluefoxx: is it asking you fo a firmware?
11:03:37bluefoxxI kind of had to do a bunch of guesswork based on a half dozen sources and then discover that 7x64 and the windows tools don't get along
11:04:00bluefoxxn1s: It's jumping into wiping the drive data and then asking for firmware, yeah
11:04:06bluefoxxNOT something I want to do
11:04:13bluefoxxIt booted into rockbox once
11:04:29bluefoxxAnd then I shut it down and rebooted it, whereupon we are now
11:04:34n1syou should be able to send a new firmware with sendfirm or beastpatcher i think
11:04:50jhMikeSneed to downgrade
11:04:51bluefoxxbeastpatcher won't actually see the device
11:05:22bluefoxxWindows actually wasn't able to figure out what the thing was, past "Gigabeat S series" or sommat
11:05:49bluefoxxI'm going to need food before I go any farther with this
11:06:07*bluefoxx thinks he's found a more despicable company for software than ATI now
11:07:24 Join PurlingNayuki [0] (~PurlingNa@
11:09:38jhMikeSbluefoxx: see
11:17:49bluefoxxThere a solution to this at all?
11:17:53bluefoxxA work around?
11:18:19bluefoxxI still have the original drive, could I make an exact copy of the partitions and then expand the second one into the new space?
11:33:17 Join robin0800 [0] (
11:41:04 Quit TheSeven (Read error: Connection reset by peer)
11:41:08bluefoxxI take it nobody in here could provide an answer for"> ?
11:41:08 Join TheSeven [0] (~TheSeven@rockbox/developer/TheSeven)
11:47:53pixelmabluefoxx: MTP mode? I'm purely guessing though and don't know how you switch between MSC and MTP on the Gigabeat S
11:48:47bluefoxxI don't think you can, else using it would be a lot less painful
11:50:45*jhMikeS 's to answer switch between those would be to switch between OF and rockbox
11:50:51 Join GeekShadow [0] (~Antoine@reactos/tester/GeekShadow)
11:51:09bluefoxxThat's kind of not my issue right now though
11:51:50jhMikeSdid you look at that link? does anything seem familiar
11:51:56bluefoxxCurrently I'm trying to get the new drive to not automagically wipe itself when I reboot the thing after forcing myself inside out to get rockbox on there
11:52:54bluefoxxjhMikeS: A more straighforward version of what I wound up with, yes
11:53:20bluefoxxI've still got my original drive with the original firmware it was loaded with, can I use that to my advantage at all?
11:53:41jhMikeSmake sure rockbox installs in the first place
11:53:46bluefoxxIs there a way I can rip the firmware from that and get it working, like can be done with say an e200
11:54:08bluefoxxRockbox did indeed install, though I had to run beastpatcher from a linux install
11:54:10jhMikeSput it in somethat that can read the disk
11:55:15jhMikeShave you had rockbox on it before or are you modding the hardware and trying to change OS?
11:55:27bluefoxxChanging drives entirely
11:55:49bluefoxxThe stock thirty gig drive simply isn't enough for my liking, so I ordered a 120 for it
11:56:00bluefoxxMy woes lie in trying to even get the stock firmware on there
11:57:16jhMikeSwell, I asked if you had rockbox successfully with the 30GB if I wasn't clear
11:57:36bluefoxxI've happily had rockbox on the original drive for almost a year now
11:58:41bluefoxxI've got a bit-for-bit copy of the 150MB partition from the 30GB drive, could I perhaps use DD to write it onto the new drive?
12:00:10jhMikeSwouldn't hurt I suppose if you can access it while not in the player
12:00:33bluefoxxDon't have anything else with a ZIF interface other than the player :/
12:00:41 Quit GodEater (Remote host closed the connection)
12:01:22bluefoxxI managed to get beastpatcher to run on a linux box after some work, after which the drive becomes accessable to either of my machines
12:01:35*PurlingNayuki is working on VX757 in order to port Rockbox on it.
12:31:56***Saving seen data "./dancer.seen"
12:34:53 Join GodEater [0] (
12:34:53 Quit GodEater (Changing host)
12:34:53 Join GodEater [0] (~bibble@rockbox/staff/GodEater)
12:36:03 Quit jhMikeS (Ping timeout: 259 seconds)
12:36:41 Join jhMikeS [0] (
12:36:41 Quit jhMikeS (Changing host)
12:36:41 Join jhMikeS [0] (~jethead71@rockbox/developer/jhMikeS)
12:36:44 Quit esperegu (Remote host closed the connection)
12:46:09 Part PurlingNayuki
12:50:41 Join lifeless__ [0] (~lifeless@
12:52:39 Quit lifeless_ (Ping timeout: 240 seconds)
12:57:50 Quit maraz (Ping timeout: 276 seconds)
13:05:39 Join maraz [0] (
13:08:01 Join mcuelenaere [0] (~mcuelenae@rockbox/developer/mcuelenaere)
13:10:15CIA-7New commit by 03mcuelenaere (r29083): Fix Onda VX777 LCD not working on boot ...
13:14:10 Quit mcuelenaere ()
13:14:23CIA-7r29083 build result: All green
13:18:30Dreamxtremethis may sound completly insane
13:19:01Dreamxtremebut is there any way of the volume being lower from dropping a ipod ?
13:20:30bluefoxxDDing the firmware partition copy from the old gigabeat drive to the new one did nothing
13:21:25bluefoxxFat load of good this has done me. I could have bought food with the same money I dropped on this dammed thing...
13:29:33 Join sudela [0] (
13:29:47bluefoxxI'm going to go sleep, and take another stab at this when I'm a touch more rested
13:33:27bluefoxxMaybe take some stabs at making a bootloader myself or something
13:35:47 Join dfkt [0] (dfkt@unaffiliated/dfkt)
14:07:10*amiconn finally managed to build m68k-elf-gcc 4.5.2 on Cygwin
14:07:25amiconnAfter 8 failed attempts or so...
14:07:52n1samiconn: how did you make it work?
14:07:57amiconnYou know what's odd?
14:08:18amiconnThe fork error was 100% reproducable, but not permanent
14:08:32amiconnAnd it only hit when building multilibs for mcf 53xx
14:09:03amiconnSo the solution was to not start over, but cd /tmp/rbdev-build/build-gcc and repeatedly type 'make'
14:09:24amiconnHad to do that 3 times, and after that '
14:09:29amiconnmake install'
14:09:45n1sah, very strange
14:11:05*amiconn even reinstalled the whole cygwin installation
14:14:44n1sdo you think patchin out the multilibs for that cpu would help?
14:15:23amiconnIt might even be a specific problem of my system
14:15:30 Quit evilnick_ (Read error: Connection reset by peer)
14:15:36amiconnI just don't have an idea what it could be
14:15:56 Join evilnick_ [0] (
14:15:58n1si guess we'll hear about it if other cygwin users run into it
14:16:14n1sgreat thing you found a workaround
14:16:56B4gderanother barrier to entry to the cygwin land =)
14:20:31 Join esperegu [0] (~quassel@
14:26:28 Quit liar (Ping timeout: 255 seconds)
14:29:44 Join liar [0] (
14:29:53 Join T44 [0] (
14:30:50n1sbluebroth3r: would it be hard to get rbutil to use the script to get the string corrections?
14:31:58***Saving seen data "./dancer.seen"
14:32:23 Join evilnick_1 [0] (3ebd62aa@rockbox/staff/evilnick)
14:32:33n1sor maybe the string corrections should be stored in some other way that both the script and rbutil can use
14:33:27 Quit Topy44 (Ping timeout: 240 seconds)
14:34:20n1sas it's just a collcetion of regexes to be applied to each string depending on which language and tts is used
14:35:00 Quit liar (Ping timeout: 255 seconds)
14:36:21 Join liar [0] (
14:36:39 Join ruckus [0] (
14:42:59 Quit Galois (Remote host closed the connection)
14:43:11n1si should tackle that inlining thing
14:43:13 Join Galois [0] (
14:47:40n1si wonder if -Os and a lot of force inlining will be much better than going back to regular -O though
14:48:17 Quit evilnick_1 (Ping timeout: 265 seconds)
14:48:37 Join komputes [0] (~komputes@ubuntu/member/komputes)
14:49:00 Quit kkit|sh (Ping timeout: 255 seconds)
14:50:11 Join kevku [0] (~kevku@2001:7d0:0:f9af:feed:feed:feed:feed)
14:50:19 Quit liar (Ping timeout: 255 seconds)
14:54:22 Join TheLemonMan [0] (
14:59:44 Join liar [0] (
15:01:44 Join evilnick_1 [0] (3ebd62aa@rockbox/staff/evilnick)
15:01:59 Join antil33tfuu [0] (
15:02:01 Quit antil33t (Disconnected by services)
15:04:21 Join AlexP_ [0] (~alex@rockbox/staff/AlexP)
15:05:07 Quit scorche (Disconnected by services)
15:05:17 Join scorche` [0] (~scorche@rockbox/administrator/scorche)
15:05:20 Quit einhirn (*.net *.split)
15:05:21 Quit aevin (*.net *.split)
15:05:21 Quit ehntoo (*.net *.split)
15:05:21 Quit AlexP (*.net *.split)
15:05:21 Quit Utchy (*.net *.split)
15:05:21 Quit ack (*.net *.split)
15:06:13 Join ack [0] (
15:06:38 Join evilnick__ [0] (
15:06:56 Join Zambezi_ [0] (Zulu@
15:07:38 Join bzed_ [0] (
15:08:27 Quit kevku (*.net *.split)
15:08:27 Quit komputes (*.net *.split)
15:08:27 Quit evilnick_ (*.net *.split)
15:08:28 Quit guymann (*.net *.split)
15:08:28 Quit Loto (*.net *.split)
15:08:28 Quit niekie (*.net *.split)
15:08:28 Quit Zambezi (*.net *.split)
15:08:28 Quit bzed (*.net *.split)
15:08:28 Quit zu (*.net *.split)
15:08:35 Join guymann [0] (
15:08:37 Join zu [0] (
15:08:42 Join Loto [0] (
15:08:42 Quit Loto (Changing host)
15:08:42 Join Loto [0] (~nfs@xbmc/user/Loto)
15:08:57 Join niekie [0] (~niek@CAcert/Assurer/niekie)
15:10:11CIA-7New commit by 03jethead71 (r29084): Try to get some control over #ifdef hell in usb.c by refactoring and inline function use. SYS_USB_DISCONNECTED_ACK hasn't been doing anything useful ...
15:10:13 Join komputes [0] (~komputes@ubuntu/member/komputes)
15:10:47 Join kevku [0] (~kevku@2001:7d0:0:f9af:feed:feed:feed:feed)
15:11:19 Join aevin [0] (eivindsy@unaffiliated/aevin)
15:11:19 Join ehntoo [0] (
15:11:19 Join Utchy [0] (
15:13:56 Quit thegeek (Read error: Connection reset by peer)
15:14:01 Join thegeek [0] (
15:15:01 Join Xerion_ [0] (
15:15:17 Join Guinness` [0] (
15:15:33CIA-7r29084 build result: 8 errors, 30 warnings (jethead71 committed)
15:16:11 Join bzed [0] (
15:17:25 Join Topy [0] (
15:18:59 Join dfkt_ [0] (dfkt@unaffiliated/dfkt)
15:19:01 Join lifeless_ [0] (~lifeless@
15:19:05 Join AlexP [0] (~alex@rockbox/staff/AlexP)
15:20:33 Quit Guinness (Ping timeout: 240 seconds)
15:20:33 Quit Xerion (Ping timeout: 240 seconds)
15:20:33 Quit bzed_ (Ping timeout: 240 seconds)
15:20:33 Quit AlexP_ (Ping timeout: 240 seconds)
15:20:35 Quit T44 (Ping timeout: 240 seconds)
15:20:35 Quit robin0800 (Ping timeout: 240 seconds)
15:20:35 Join robin0800 [0] (
15:20:40 Quit lifeless__ (Ping timeout: 240 seconds)
15:20:40 Nick Xerion_ is now known as Xerion (
15:21:52 Quit dfkt (Ping timeout: 240 seconds)
15:22:08n1sah, i can fix the inlining problem with a much less intrusive but far hackier solution
15:22:18n1s#define inline inline __attribute__((always_inline))
15:22:22n1ssimple as that :)
15:23:14B4gderdoes that inline even when you build with just -g?
15:24:05n1sdunno, but i can try
15:33:05 Quit swilde (Read error: Connection reset by peer)
15:35:59CIA-7New commit by 03jethead71 (r29085): Fix colors from r29084. Had some things in the wrong preprocessor blocks.
15:37:08 Quit Rondom (Disconnected by services)
15:37:09n1sB4gder: yes it does, although the FORCE_INLINE macro i had planned to use would have the same problem but would be more obvious, however it can be worked around by making if conditional on __NO_INLINE__
15:37:10 Quit LinusN (Ping timeout: 260 seconds)
15:37:21 Join LinusN [0] (~linus@rockbox/developer/LinusN)
15:37:33 Join Rondom [0] (
15:38:01B4gderright, it's just a detail to remember
15:38:55 Quit TBCOOL (Ping timeout: 260 seconds)
15:39:25 Join TBCOOL [0] (
15:40:26n1si'm interested in what people think is better, redefine inline like this or using a FORCE_INLINE macro
15:40:39CIA-7r29085 build result: All green
15:43:24jhMikeSwhat is the purpose overall? to stop automatic inlining?
15:44:08n1sno, to actually make gcc inline inline functions when building with -Os
15:44:38n1sthe new gcc seems to pretty much not inline anything called from more than one place with -Os
15:45:02n1sit's still a size save of about 25k over plain -O
15:46:04n1sand it also doesn't inline calls that end up in brances that are marked with UNLIKELY no matter what optimization level
15:46:41n1s... unless they are the only call so it saves size
15:48:19jhMikeSI think I like the macro
15:49:30jhMikeSbe sure to check all the stuff in the targets' system files, like interrupt enable/disable functions
15:52:18n1syes, it's clearer that there's magic going on with that
15:53:18 Quit CaptainKewl (Ping timeout: 241 seconds)
15:53:36 Quit sudela (Ping timeout: 265 seconds)
15:54:06n1sshould i go through all targets or only the ones actually using -Os?
15:54:48n1shmm, i should check if 4.4 does this too since the lowmem sansas use -Os i think
16:00:07jhMikeShow do they not get errors since some constraints are strictly 'i'?
16:02:42n1syou mean for asm?
16:04:27n1shaven't look at those, maybe they have some magic for it
16:15:35 Join Kitr88 [0] (
16:18:35n1si only spotted one using an argument as "i" input and that's the coldfire_set_macsr and it uses "i,r" but is inlined, i assumed since it's only 1 instr
16:18:51 Quit Kitar|st (Ping timeout: 276 seconds)
16:20:31 Quit Kitr88 (Ping timeout: 264 seconds)
16:21:01jhMikeScoldfire doesn't seem a problem
16:21:28n1show do you mean?
16:22:37jhMikeSwith constraints, nothing forces 'i' that's also a parameter
16:24:59jhMikeSmaybe gcc just does it if there's no way to not inline it, if the lowmem sansas use -Os
16:25:27 Join Kitar|st [0] (
16:28:56 Join designate72 [0] (
16:28:58 Quit tchan (Quit: WeeChat 0.3.4)
16:29:00n1sjhMikeS: i hope so, also i don't know if 4.4 is doing this as much as 4.5, i'll check it out
16:31:18 Quit TheSeven (Ping timeout: 240 seconds)
16:31:59***Saving seen data "./dancer.seen"
16:35:18 Join kkit|sh [0] (
16:36:41 Join jae_ [0] (
16:37:32 Nick jae_ is now known as jae (
16:38:26 Join tchan [0] (~tchan@lunar-linux/developer/tchan)
16:39:11 Nick dfkt_ is now known as dfkt (dfkt@unaffiliated/dfkt)
16:46:41 Join toffe82 [0] (
16:50:30 Join evilnick [0] (
16:51:28 Quit robin0800 (Ping timeout: 240 seconds)
16:52:39 Quit evilnick__ (Ping timeout: 246 seconds)
16:58:52 Join captainkewll [0] (2669ecc2@gateway/web/freenode/ip.
17:02:22 Part LinusN
17:06:34 Join panni_ [0] (
17:08:31 Quit evilnick_1 (Quit: Page closed)
17:09:42jhMikeSn1s: it's probably just gonna pick the smallest way to use the function, if for a moment one could think of gcc as logical and hazard a guess :)
17:11:12n1syeah, it tries to but i've already found at least a few cases where it was wrong but i imagine that the interactions of inlining and other optimizatiosn make it a hard problem to solve
17:11:37CIA-7New commit by 03nls (r29086): abrepeat: drop some inline's and rearrange code to save some size since this stuff is hardly speed critical.
17:12:27*jhMikeS would've thought getting from A to B, then repeating as fast as possible would be the goal
17:15:09n1sit's just the drawing of the little marks on the progressbar, i checked in a sim and they are drawn about twice a second when enabled and it's a pretty obscure feature
17:15:39n1si also discovered it's not enabled for the beast but the manual mentions it...
17:15:43CIA-7r29086 build result: All green
17:17:23*jhMikeS never tried using it on anything
17:17:58n1si've only used it to test if it works :)
17:19:03 Part Zagor
17:20:23n1s4.4 seems to be less catious, a sansa clip build with -Winline gave only 3 warnings in the rtc driver although this was with the apps code patched up
17:20:47n1sand, the common firmware code, i'll just diable the macro and retest
17:22:25n1syeah, it gives a couple of the same ones as 4.5 but not nearly as many
17:22:45 Quit kevku (Ping timeout: 260 seconds)
17:34:33 Join kevku [0] (~kevku@2001:7d0:0:f9af:215:c5ff:fe7e:794d)
17:35:23 Quit krazykit (Ping timeout: 272 seconds)
17:38:15n1shmm, the plugins and codecs are built with the core -O switch too, but for coldfire those are not sensitive to size however on a real lowmem target they are
17:38:42n1si think we should just drop -Os for the cf targets as this becomes too frigging ugly
17:40:04 Join TheSeven [0] (~TheSeven@rockbox/developer/TheSeven)
17:40:20n1sthe -O vs -Os delat on an x5 build is only about 30k and that isn't much of 16MB
17:44:40bluebroth3rn1s: well, having Rockbox Utility use would mean it need to include Perl ...
17:45:11bluebroth3rIMO a good way would be to have a formatted file holding the corrections as regexpes that both Rockbox Utility and can read
17:48:01bluebroth3rhmm, wasn't I thinking about something like that in the past at some time?
17:48:17n1si don't know :)
17:48:56n1sbut it would be nice since to use the script now and a sapi voice people have to use cygwin :(
17:49:31bluebroth3rmaybe something like language/engine/regexp/replacement?
17:49:57bluebroth3rafaics all replacements are of type s/foo/bar/ig so it should be sufficient to save foo and bar
17:50:12bluebroth3rand it shouldn't be too hard to make Rockbox Utility use that
17:50:29n1ssome are a little different like for plugins
17:51:26bluebroth3rah, USB and ID3 aren't i
17:51:59n1shaving a list for each language and engine would mean a bit of duplication but i don't know if that matters
17:52:25bluebroth3rwe could make it use * as matchall for language and engine
17:52:50bluebroth3rlike */*/USB/U S B/g
17:53:06bluebroth3rand deutsch/*/alkaline/alkalein/g
17:53:11n1sso 3 regexes :)
17:53:19n1si like it
17:53:33 Quit B4gder (Remote host closed the connection)
17:53:47bluebroth3rok, we could make engine and language regexpes as well :)
17:53:50n1swell, ok 2 match expressions and one replace
17:54:07n1syes, that's what i though
17:54:21 Quit petur (Quit: Page closed)
17:54:38bluebroth3rhmm, there's a case that has language / engine / vendor
17:54:51bluebroth3rso maybe even another match expression
17:55:39 Quit GeekShadow (Ping timeout: 272 seconds)
17:55:48 Quit Sajber^ (Read error: Connection reset by peer)
17:56:35*bluebroth3r should find some time and motivation to look into that
17:56:54bluebroth3rtoo bad I'm quite limited on free time this week
17:57:02*n1s doesn't really know c++ or perl so would be fairly useless
17:57:46n1sFS #11887 was what got me thunking about this again
17:57:55n1sdoes rbutil do sapi voices on windows?
17:59:12bluebroth3rI'm not too familiar with Perl either but since I did some Perl stuff a couple of weeks ago it might be a good excercise
17:59:30bluebroth3ryes, it uses the sapi_voice.vbs script
18:02:19bluebroth3rit should be possible to use the SAPI voices directly but nobody did implement that yet. I'm also not sure if it's worth the work given that sapi_voice.vbs works :)
18:03:07 Part ruckus
18:03:08n1syeah, i guess vbs runs everywhere sapi does
18:03:46 Join {phoenix} [0] (
18:05:25 Join GeekShadow [0] (~Antoine@reactos/tester/GeekShadow)
18:07:16 Join Cowboy308 [0] (
18:08:05 Join benedikt93 [0] (~benedikt9@unaffiliated/benedikt93)
18:09:04 Quit {phoenix} (Ping timeout: 240 seconds)
18:09:14 Join {phoenix} [0] (
18:22:08 Join kugel [0] (~kugel@rockbox/developer/kugel)
18:29:02 Join thomasjfox [0] (
18:32:03***Saving seen data "./dancer.seen"
18:32:35 Quit TheLemonMan (Quit: free(me))
18:33:52 Join pamaury [0] (
18:33:52 Quit pamaury (Changing host)
18:33:52 Join pamaury [0] (~quassel@rockbox/developer/pamaury)
18:34:07 Join domonoky [0] (~Domonoky@rockbox/developer/domonoky)
18:34:33 Join LambdaCalculus37 [0] (~3f74f70d@rockbox/staff/LambdaCalculus37)
18:35:15 Quit n1s (Quit: Lämnar)
18:38:55LambdaCalculus37Can someone with an HWCODEC target check something? On my JBRv1, I've flashed v3.7.1, and I'm noticing a very high-pitched whine on it whenever music playback is stopped. It may exist on other HWCODEC targets.
18:46:20 Join Sajber^ [0] (~Sajber^
18:53:37 Join splinter [0] (~splinter@
18:54:42pixelmanothing with either the flashed r28369-101028 or with a RoLo'ed r29034-110112 on my OndioFM
18:56:39pixelmaLambdaCalculus37: ^
18:57:37 Join tobias [0] (
18:57:42 Quit tobias (Client Quit)
18:58:04 Join tobi16516 [0] (
18:58:59tobi16516hi, i'm using the sansa fuze v2 and a fat32 sandisc 16gb sdhc:
18:59:05tobi16516problem: card is detected by the sansa OF and indicated in rockbox developement-area but not in the info-area and filesystem, so i think it's related to this bug:
18:59:16tobi16516i tried to fix this by loading the sources adding the delay-command and using this new compiled .rockbox as described but it didn't work. right now im using build r29086.
18:59:22tobi16516i also tested a 2gb sdhc card and it worked with rockbox
19:00:25tobi16516is there anything i can do, do i have to wait for a new release or buy an other sdhc
19:00:45splinterI'm sure there is a quick answer to this but i can't locate :( (sorry in advance). i have an 80gb ipod video with rockbox installed (current version) and it will detect my old music that was on the ipod but i can't get it to read any new music i load. is there something i'm missing? thanks
19:00:52amiconnbluebroth3r: Using SAPI directly via its C++ interface would have one advantage for SAPI4.
19:01:21amiconnSAPI5 has a direct recording mode where it works as fast as it can instead of realtime
19:02:28LambdaCalculus37pixelma: Hmmm, can you try again with 3.7.1?
19:02:31 Quit designate72 (Ping timeout: 260 seconds)
19:02:41amiconnSAPI4 doesn't offer that. Instead it has a parameter that can be set when recording to file which sets operation to a multiple of realtime (x2, x4 or x8)
19:02:59amiconnFor some reason this parameter doesn't work through the scripting API
19:03:38LambdaCalculus37pixelma: Try this: play some music for a few seconds, then stop playback. After a few seconds, the whining sound starts.
19:03:55 Nick splinter is now known as splinty (~splinter@
19:04:12amiconnThat said, SAPI4 is quite old and in most cases not needed anymore, but some people may have old commercial voices which are SAPI4 only
19:04:15splintysorry for the duplicate, i'm unsure if my first message worked
19:04:18splintyI'm sure there is a quick answer to this but i can't locate :( (sorry in advance). i have an 80gb ipod video with rockbox installed (current version) and it will detect my old music that was on the ipod but i can't get it to read any new music i load. is there something i'm missing? thanks
19:06:25amiconnn1s (logs): Imo forcing inlining is a bad idea
19:09:07 Join bertrik [0] (~bertrik@rockbox/developer/bertrik)
19:10:38amiconnbluebroth3r: Otoh, if we devise a way to store the regexes separate from the perl script, sapi_voice.vbs could apply them as well. VBScript does have a regex engine
19:11:45amiconnHmm, this would enable them in rbutil for sapi only though
19:15:27bluebroth3ramiconn: Rockbox Utility could / should apply those regexpes before sending the strings to the voicing engine, so all engines should benefit (at least for the engine unspecific regexpes)
19:15:36 Join designate72 [0] (
19:16:56bluebroth3rah, so sapi_voice.vbs runs realtime only?
19:17:15bluebroth3rthat would indeed be an advantage for directly using SAPI
19:18:20bluebroth3rsplinty: define "read new music", and how do you transfer the music to the Ipod? Are you using Itunes? If yes, is auto update of the database enabled?
19:19:15splintyhi Blue, sorry i transfered music in using explorer, created a new folder on the root of the ipod. i just spotted the auto update option so going to try that as soon as it stops scanning the database
19:19:41splintythanks for the response though, very much appreciated. will pop back if i have any problems :)
19:25:19 Quit DerPapst (Quit: Leaving.)
19:26:28amiconnbluebroth3r: sapi_voice runs realtime *in SAPI4 mode*
19:26:47amiconnIn SAPI5 mode it runs at max speed
19:28:31 Quit LambdaCalculus37 (Quit: CGI:IRC 0.5.9 (2006/06/06))
19:29:48 Quit splinty (Quit: Leaving)
19:38:23 Join Horscht [0] (
19:38:23 Quit Horscht (Changing host)
19:38:23 Join Horscht [0] (~Horscht@xbmc/user/horscht)
19:40:01 Join mudd1 [0] (
19:51:04 Join solexx [0] (
19:52:24 Quit solexx_ (Read error: Operation timed out)
20:00:23 Quit liar (Ping timeout: 255 seconds)
20:02:33 Join sudela [0] (
20:15:43 Quit mystica555 (Read error: Connection reset by peer)
20:15:44 Quit mystica555_ (Write error: Connection reset by peer)
20:16:38 Quit chattr (Ping timeout: 250 seconds)
20:20:42 Quit thomasjfox (Ping timeout: 272 seconds)
20:23:37 Join chattr [0] (
20:28:50 Join n1s [0] (
20:28:50 Quit n1s (Changing host)
20:28:50 Join n1s [0] (~n1s@rockbox/developer/n1s)
20:29:11 Join liar [0] (
20:31:20 Join jaykay [0] (
20:32:06***Saving seen data "./dancer.seen"
20:34:14n1samiconn: i'm not going to do the forced inlining since it turned out to become a big mess, i wonder if we should drop -Os for coldfire and go back to -O though
20:35:42n1sfor the old compiler -Os basically did all optmizations that -O2 does except padding functions etc to align them, now it alters heuristics a lot too so very little inlining happens
20:36:06 Part jaykay
20:36:55n1swhy i thought about forcing inlining was that hopefully people have actually marked functions that should be inline with "inline"
20:44:52 Nick YPSY is now known as Ypsy (
20:51:20 Join thomasjfox [0] (
20:53:22amiconn-Os basically does everything -O2 does, except those things which increase code size
20:54:46n1syes, but now it does less of those things -O2 does
20:54:47amiconn*Sometimes* inlining a function which is called more than once still reduces code size (for very small functions where the call overhead is large). In such cases the new gcc should still inline
20:55:34n1samiconn: it doesn't always get that right, i found some cases when poking around where forcing inlining of some small functions would save space
20:55:42amiconnIn theory, code optimised with -O2 should be faster than -O (== -O1), and in turn -O3 should produce faster code than -O2
20:55:54amiconn-Os is usually something between -O and -O2
20:56:37n1sbut there's more to it, gcc can't know how much the code will grow without doing the optimization all the way so it guesses
20:57:03amiconnWhen dealing with non-lowmem targets, we shouldn't use -Os, unless it actually produces faster code than -O2,, imo
20:57:46 Nick Ypsy is now known as YPSY (
20:57:55 Join TheLemonMan [0] (
20:58:16amiconnIf this happens, it is imo a gcc bug as well
20:59:06 Join DerPapst [0] (
20:59:12n1swhy i switched for the old gcc was that it produced smaller code that was usually faster than -O
21:00:20amiconnYea, -Os is supposed to be faster than -O, but not faster than -O2
21:00:48amiconnOtoh, -O3 is supposed to be faster than -O2, but often isn't (at least in the cases I tried)
21:01:51n1sso do you agree that we should switch coldfire back to -O ?
21:02:55amiconnWe might also switch to -O2 if it helps
21:03:26n1syes but we need to be able to do some usefull benchmarks then imo
21:03:57n1smost of the core benchmarks are for stuff that's written in asm anyway
21:04:48n1ssomething like a database init test, a dircache scan test or something would be good
21:05:30n1s-O2 added about 50k over -O for an x5 build btw
21:09:15 Quit GeekShadow (Ping timeout: 240 seconds)
21:18:20 Quit Galois (Ping timeout: 272 seconds)
21:19:41 Nick YPSY is now known as Ypsy (
21:20:35kugeln1s: how many functions are there which *need* to be inlined
21:21:40n1skugel: that depends on what you mean, things that don't *work* without being inline should already be marked with the always_inline attribute
21:21:50kugelI suspect it's hard for gcc to decide to inline in -Os, it needs to know the size of the function before inlining but inlining enables much more optimization (e.g. const propagation) so it's kind of a circle
21:22:07n1skugel: yes
21:22:25kugelperhaps I didn't understand the problem enoug. what's wrong with -Os and the new gcc?
21:22:45n1sbut things marked with "inline", i think is usually marked so for a reason, that the autor thinks it is called enough to give a speed up
21:23:18n1skugel: it inlines much fewer functions than the old gcc,
21:24:30kugelwasn't there gcc option to tell it about when to inline?
21:25:19n1sas far as i can tell there's no option to tell it to inline functions marked "inline" there are *lots* of other switches fro inlining though
21:25:46bertrikI think there are a lot of inlines where there is no good reason for them
21:26:02n1sbertrik: maybe so
21:28:40n1skugel: that would be a complete guess too
21:28:44kugelwe should probably just trust gcc
21:29:28kugeleven if it's not always right, the old gcc probably also wasn't
21:30:28kugelif it fails to inline a real performance critical function, then add FORCE_INLINE. but IIUC this is about the core where no such function exists (codecs usually specify their own -O level anyway?)
21:30:46n1syes and no
21:31:27n1sthere are some performance sensitive stuff in the core, like lcd drivers etc (which is where i stumbled upon this in the first place)
21:31:49n1sand only codecs with their own makefiles set -O levels
21:31:58n1sso the single file codecs use the core setting
21:32:10kugelare you sure inling in the lcd driver affects the frame rate?
21:32:58n1sand the old gcc didn't seem to apply the heuristic to functions marked inline since it didn't print a single warning with -Winline whereas 4.5 prints hundreds
21:33:05kugelI'd think writing to the video memory makes all code around it rather neglible
21:33:55n1skugel: not really since that was for the x5 which i don't have but there's a comment saying the function doing reg writes should be inlined since it is called often
21:34:00kugelthat means that the old gcc may have missed to un-inline functions that are better not inlined with -Os
21:34:46kugelthe linux kernel has this setting "allow gcc to un-inline functions", perhaps that corresponds to a gcc switch?
21:34:50n1syes, since i don't think it did that at all
21:35:39n1skugel: perhaps but i don't know my way around that huge pile of code so i don't know where to look but i expect they have something similar to a FORCE_INLINE macro
21:37:28kugeli always set this option since I trust gcc more than kernel developers :)
21:37:58n1skugel: don't start looking at disassemblies of gcc output then :)
21:38:33kugelit even defaults to on on x86
21:38:39n1sah they do # define inlineinline__attribute__((always_inline))
21:38:51n1sif you tell the config to force it
21:39:40n1si suggested that in here earlier today but some people didn't like it, and i thik it's kind of ugly too
21:44:30 Quit dfkt (Quit: -= SysReset 2.53=- Sic gorgiamus allos subjectatos nunc.)
21:54:47 Quit tobi16516 (Quit: CGI:IRC)
21:54:51 Join tobi16516 [0] (
21:54:56 Quit tobi16516 (Client Quit)
21:55:12 Join Zarggg [0] (
21:56:10 Quit markun (Read error: Connection reset by peer)
22:01:43 Quit bmbl (Quit: Verlassend)
22:07:55 Quit slooopy (Ping timeout: 276 seconds)
22:08:22 Join markun [0] (
22:08:22 Quit markun (Changing host)
22:08:22 Join markun [0] (~markun@rockbox/developer/markun)
22:08:47 Quit markun (Read error: Connection reset by peer)
22:19:38 Join kjosh62 [0] (
22:20:13kjosh62can someone answer a question about iboy please :D ?
22:20:52AlexPiboy is ipodlinux
22:21:15kjosh62so it's only for ipods?
22:21:27AlexPIt is for ipodlinux, not Rockbox at all
22:21:35AlexPRockbox has Rockboy
22:21:46kjosh62oh, i guess thats my problem
22:22:00kjosh62when i first downloaded iboy, it worked perfectly fine on rockbox
22:22:04kjosh62but now its not working
22:22:05AlexPNo it didn't
22:22:09AlexPIt never worked
22:22:14AlexPIt is impossible
22:22:15kjosh62it worked for me
22:22:21AlexPNo it didn't
22:22:35kjosh62im pretty sure that i played some gbc games on rockbox
22:22:37AlexPIf you were running gameboy games in Rockbox you were using Rockboy
22:22:39kjosh62on my sansa fuze
22:22:51AlexPAnd Rockboy comes with Rockbox, it isn't seperate
22:23:08AlexPI can assure you one million percent that you did not use iboy on Rockbox
22:23:26kjosh62im confused, well, this is wat i did...umm
22:23:34kjosh62i downloaded rockbox
22:23:40kjosh62then downloaded iboy
22:23:42kjosh62got a few roms
22:23:52kjosh62and dragged it on my mp3 player
22:23:57kisakand iboy did nothing to run them
22:23:58AlexPiboy does not and never has worked on Rockbox.
22:24:04kisakrockboy did
22:24:09kjosh62so how do i use rockboy?
22:24:10AlexPWhen you clicked on the ROM, Rockboy ran them
22:24:17 Quit Keripo (Quit: Leaving.)
22:24:17 Join markun [0] (
22:24:17 Quit markun (Changing host)
22:24:17 Join markun [0] (~markun@rockbox/developer/markun)
22:24:19AlexPit works like clicking on a music file
22:24:24kjosh62i do not see my roms anymore
22:24:34AlexPYou sticking a random iboy file on there is irrelevant
22:24:41AlexPCheck your show files setting
22:24:48AlexPYou acidently changed it
22:24:57kjosh62okay let me check
22:26:14kjosh62thank you so much alexP :DD
22:26:17kjosh62it works now
22:26:20AlexPNo worries :)
22:26:34kjosh62it was set on playlists
22:26:47AlexPIt is on the quickscreen and easy to change by mistake
22:27:17AlexPWe keep meaning to change it for another default, but haven't been able to agree on what yet :)
22:28:11kjosh62im completely new to rockbox, so IRC is a chat room with ppl who help design rockbox stuff?
22:28:27AlexPNo, IRC is much more general
22:29:00AlexP#rockbox is just one of the millions of channels, which happens to be for support and development for Rockbox
22:29:41kjosh62oh i have another question alex :)
22:29:52AlexPIf it is Rockbox related, go ahead :)
22:30:42kjosh62when i'm playing music, and i skip a song, how come half the time, it delays or freezes for the next song? like before i downloaded rockbox, it would just instantly go to a new song, but now i have to wait an extra five seconds for a new song
22:31:26AlexPIt probably depends on whether it is buffered or not, but on flash players that shouldn't make much difference
22:31:56AlexPTry turning on dircache, I don't expect it to do much here but it is worth a go
22:32:08***Saving seen data "./dancer.seen"
22:32:11kisakkjosh62: about how many songs do you have on your player?
22:32:21kjosh62about 700
22:32:27kjosh62in a 4 gb player
22:32:45kisaknot nearly as bad as what I had
22:33:16kjosh62what did u have (kisak)
22:33:22kisakI agree with AlexP, Dircache is the setting to try
22:33:41kjosh62how do u acess that setting?
22:33:45kisakoh ... about 12000
22:33:46 Quit benedikt93 (Quit: Bye ;))
22:33:48AlexPIn system IIRC
22:34:49kjosh62im sry but i can't find system IIRC?
22:35:00 Nick Ypsy is now known as YPSY (
22:35:06AlexPsettings -> general settings -> disk
22:35:16AlexPbtw, the manual is well worth a read
22:35:35kjosh62oh i read half, i'm still reading it
22:36:26kjosh62i got to general settings but there's no disk tab
22:36:43kjosh62wait found it
22:37:03kjosh62its general settings −−system−−disk
22:37:05 Part thomasjfox ("Konversation terminated!")
22:38:07 Join Keripo [0] (
22:38:57kjosh62is there another option than that, b/c its still delaying till the next song
22:39:18AlexPYou rebooted after turning it on?
22:39:34AlexPIf it didn't help I'd turn it off again to save RAM
22:40:06kisakfor a Sansa Fuze, it's better to keep it on
22:40:15kisakin my experience
22:40:24AlexPI wastes RAM and shouldn't be necessary on flash
22:40:34kisakthe IO is laggy otherwise
22:40:46AlexPIf you haven't got any problems with slow navigation of the file tree, then turn it off
22:40:48kjosh62kisak i have a fuze
22:40:58AlexPSo do I (amongst others)
22:41:18AlexPAnyway, try using the player with and without then make a decision
22:41:32kjosh62cool, so any other good ideas to make it less glitchy or delaying?
22:41:44kisakAlexP: I had problems with basic playback which was solved by turning on dircache
22:41:53AlexPkisak: I didn't :)
22:42:01AlexPkisak: But anyway, he should just try
22:42:30kisakAlexP: well, odds are you haven't thrown 12000 sound files on it
22:42:35AlexPfree RAM isn't anywhere near as important on flash targets anyway, so it probably isn't that important
22:42:38AlexPkisak: No, more
22:42:48AlexPsorry, less :)
22:42:53AlexPI missed a 0 there :)
22:43:11kjosh62so is there any options in fixing this playback problem? :)
22:43:39kjosh62omg it works yay
22:43:57AlexPHeh, dircache to the rescue :)
22:43:58kjosh62okay, one more question please?
22:44:03AlexPkisak: there we are then :)
22:44:04kisakAlexP: fuze v1 or v2?
22:44:08AlexPkisak: v2
22:44:24AlexPBut, I don't do lots of skipping, I tend to listen to playlists
22:44:32AlexPAlso, it isn't the player I use most
22:44:51AlexPkjosh62: go ahead
22:45:12kjosh62actually lol i have two now, um (
22:45:56 Quit {phoenix} (Remote host closed the connection)
22:46:25AlexPkisak: I was also going on him initially saying it didn't help, but if it fixes things then great :)
22:46:38kjosh62first..i downloaded all the album art for my songs and used an rockbox extraction tool but some of the album art is missing and is instead replaced with a default album art (this default is usually album art from a certain album)
22:47:09AlexPkjosh62: Did you have a look at the manual where to put your album art and with what file names?
22:47:42kjosh62yes i did, i think it said jpeg and bmp files right?
22:47:50AlexPeither/or, yeah
22:48:09[Saint]some people seem to have all sorts of stress getting album art to work, in my opinion the way that "just works" is to make sure that every one of your albums has a "Folder.jpg" in it.
22:48:17AlexPbut they have to be named correctly and in the right place
22:48:29[Saint]Some media players even use that as their default naming scheme, so you don't have to do squat.
22:48:34AlexP[Saint]: sure, if you are organised album per folder (I am too)
22:48:50AlexPalthough I prefer folder.jpg :)
22:49:00[Saint]AlexP: The only sane way ;)
22:49:15AlexPIMO yes :)
22:49:28kjosh62its no big deal rly but it sometimes bothers me to see some paper route album art on occasional albums when its acdc playing
22:49:51AlexPHow did you name the album art files, and how is your music organised?
22:49:54kjosh62my big problem that i just can't figure out is to make playlists
22:50:06AlexPOne thing at a time :)
22:50:07kjosh62oh um, its mixed in with my music files
22:50:19AlexPSo all in one big jumble?
22:50:24kjosh62like this is how i do it
22:50:34kjosh62i have the music on windows media player
22:50:56kjosh62and i download the album art and click and drag the album art unto the song in the windows media player (wmp)
22:51:01[Saint]if you have the music in WMP, then all you should need to do is a straight copy to the DAP
22:51:03kjosh62then it tags the mp3 file
22:51:13AlexPWe don't support album art in tags
22:51:31AlexPHow is your music organised on the player?
22:51:51kjosh62umm, for sansa fuze, i just click and drag files to the music folder
22:51:57[Saint]WMP uses "Folder.jpg" for it's album art, so if WMP has the correct album art it should "just work" without you doing anything...
22:52:00[Saint]that's all I do.
22:52:08kjosh62and when i add album art, it creates a system file with the music file
22:53:00AlexPI don't know what you mean by a system file with the music file
22:53:11kjosh62so within my folder i have the music file, the downloaded album art file, and the converted 100 x 100 btmp art file in the music folder
22:53:25AlexPSo, everything in one folder?
22:53:26kjosh62album art system file
22:53:38AlexPwhat does album art system file mean?
22:54:27kjosh62like when i delete the file, it says "r u sure u want to delete system file?"
22:54:38AlexPThat doesn't mean anything
22:54:53kjosh62like if i delete it, the album art doesn't show up
22:54:55AlexPIn that case the album art needs to be names something like "artist-album.jpg" (check the manual for the exact name) where artist and album EXACTLY match the values in the tags of the music file
22:55:02AlexPkjosh62: What is it called
22:55:30kjosh62ohh so u have to have it named in a certain format to tag it to a specific file>?
22:55:52AlexPIf you mash everything in the same folder, yes
22:56:05kjosh62what if you don't?
22:56:16[Saint]our fine manual covers this process quite nicely.
22:56:31kjosh62i guess i haven't read that part yet :)
22:56:37kjosh62i'll keep reading the second half
22:56:51kjosh62btw the sound eq is amazing
22:57:13kjosh62is it just me or regular custom eq in the sansa fuze is not as good as rockbox right?
22:57:56kjosh62oh i download v1 already
22:58:12AlexPThat is the link to the specific album art section
22:58:26AlexPv2 and v1 are the same in that respect
23:00:41kjosh62thank you so much for ur help AlexP!!!
23:00:48AlexPNo problem
23:00:50kjosh62u helped a lot
23:01:04 Quit kjosh62 (Quit: CGI:IRC)
23:06:01 Join logiclost [0] (
23:06:04 Quit lostlogic (Ping timeout: 250 seconds)
23:07:07 Join eRivas [0] (
23:07:23eRivashello, what does a Data abort error mean?
23:07:49eRivasI get one when I try to load the radio screen
23:09:16 Quit bertrik (Quit: :tiuQ)
23:09:17n1sit means that there probably is a bug in rockbox
23:09:43eRivasI changed the theme for the radio screen and it works now
23:10:08[Saint]what theme didn't work.
23:10:20[Saint]A theme shouldn't be able to mess anything up like that.
23:10:46eRivasiLike for Sansa Fuze
23:11:08eRivasI guess, though it may be a cfg file mistake
23:11:23[Saint]did *I* give that to you?
23:11:39n1san invalid theme should still not crash rockbox
23:11:46eRivassee, I loaded a new theme, but the new theme didn't specify a new radio screen, so it used the old, in this case, iLike
23:12:02[Saint]no...especially not one I wrote ;)
23:12:07eRivasdont worry saint, someone must have ported your theme
23:12:32[Saint]is it one the themesite?
23:12:47 Join wodz [0] (
23:12:53n1seRivas: could you file a bugreport in the tracker explaining what you did and which exact theme it was?
23:13:33[Saint]who the hell...
23:13:59pixelmayour friend Drew Vosburg ;)
23:14:13wodzn1s: regarding your earlier talk about new m68k-elf-gcc - is not inlining some of the functions really the problem?
23:14:14[Saint]I have iLike for Fuze sitting on my I can't put it on the themesite because some other jerk made a hack job of it?
23:14:37AlexP[Saint]: I'd message him on the forums
23:14:56n1swodz: i don't have any numbers but why would people mark functions inline if they shouldn't be?
23:15:08eRivascome on man, its creative commons
23:15:30[Saint]yes...but I have the ACTUAL port ready to upload.
23:15:47 Join GeekShadow [0] (
23:15:47 Quit GeekShadow (Changing host)
23:15:47 Join GeekShadow [0] (~Antoine@reactos/tester/GeekShadow)
23:15:52[Saint]not a "quick port of another port"
23:16:58wodzn1s: Because they *think* this will work better for some reason. That doesn't mean they are right or the impact is negligible.
23:17:56n1swodz: yes but without some numbers we don't know either way
23:18:27wodzn1s: anyway benchmarking lcd routines is quite easy and number of coldfire based targets is rather limited.
23:18:34eRivasbtw, is there a way to modify a theme in the site, I made some changes to my Classic Fuze, but they are not worth a v2 reupload
23:18:56n1swodz: yes, i should check wether this affects the h300 too and do a bench
23:20:00[Saint]eRivas: upload it again with the same credentials
23:20:03wodzn1s: where should be placed this ackward define to force inlining? I may bench hd300 eventually.
23:20:04[Saint]it will be replaced.
23:20:15eRivascan I update the description?
23:21:04AlexPyeah, it is names (theme and yours) and e-mail that need to be the same I think
23:21:18n1sif it matters, the h300 yuv blit should be affected, the regular lcd_update is dma and doesn't call anything in a loop
23:22:01n1swodz: easiest is just to #define inline inline __attribute__((always_inline)) in some global header file like gcc_extenisons.h
23:22:28[Saint] the very least, this guy should upload my version in place of his if he won't rename it.
23:22:42[Saint]well, that sounds a bit demanding.."it would be nice if..."
23:22:45amiconnForced inlining or uninlining should be used really carefully. If used for other things than nasty hacks which are needed for implementing threading, it should be tested on each architecture before enabling it
23:23:23amiconnAnd if it's a small snippet which always works better when inlined, it can be converted into a macro instead. That's "inlined" without forcing anyhing
23:23:24 Join Galois [0] (
23:24:24amiconnRegular partial updates on H300 do use a loop in the isr
23:26:34eRivas[Saint]: but all of those credentials exactly secret, wouldn't that make rewriting other's theme possible?
23:26:40amiconnThat only applies to updates which don't span whole lines, and it loops just once per line
23:26:51eRivas*arent exactly...*
23:26:53 Quit TheLemonMan (Quit: free(me))
23:27:35[Saint]eRivas: Yes, but...that's not the point here. I don't think it's an unreasonable request to ask him to rename the theme.
23:27:43[Saint]I don't want him to take it down.
23:28:10amiconnSpeaking about small snippets - lcd_write_reg() and lcd_begin_write_gram() are candidates...
23:28:18n1samiconn: exactly
23:28:52n1slcd_write_reg is at least not inlined on the x5 and there it is called a lot in loops
23:29:47n1sah, but they are inlined on the h300, probably because they are shorter
23:30:51eRivas[Saint]: I know, lol, just saying, imagine any troll ruining themes by reuploading useless files, etc
23:31:38eRivas[Saint]: and yeah, it wouldnt be a great deal, since you are the 'official' designer
23:31:59[Saint]eRivas:'s just the name "iLike" that I have a particular fondness to, I actually love the fact that someone couldn't wait for me to finish the real version...perhaps he didn't even know.
23:32:17[Saint]I just...I'm just a bit gutted it stops me from uploading mine.
23:32:49[Saint]I'm sure I'll get over it ;)
23:33:06 Quit captainkewll (Quit: Page closed)
23:34:50 Quit wodz (Quit: Leaving)
23:36:59 Quit domonoky (Read error: Connection reset by peer)
23:37:15 Join kugel_ [0] (
23:37:25 Quit kugel (Disconnected by services)
23:37:29 Quit kugel_ (Changing host)
23:37:29 Join kugel_ [0] (~kugel@rockbox/developer/kugel)
23:37:29 Quit Keripo (Quit: Leaving.)
23:38:49n1samiconn: with those 2 uninlined for the h300 the yuv tests (both 1/1 and 1/4) were 1 fps slower when boosted so it probably makes a measurable diff on the x5 too
23:45:27 Quit kevku (Read error: Operation timed out)
23:46:43 Quit komputes (Read error: Connection reset by peer)
23:47:20 Join milk [0] (
23:55:25 Join lifeless__ [0] (~lifeless@
23:57:44 Quit kugel_ (Quit: exit(0);)
23:57:53 Join kugel_ [0] (
23:57:58 Quit esperegu (Remote host closed the connection)
23:58:17 Quit kugel_ (Changing host)
23:58:17 Join kugel_ [0] (~kugel@rockbox/developer/kugel)
23:58:28 Quit lifeless_ (Ping timeout: 240 seconds)

Previous day | Next day