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).

#rockbox log for 2012-07-05

00:01:00 Quit aevin (Ping timeout: 246 seconds)
00:02:13 Join mystica555 [0] (
00:05:33 Quit prof_wolfff (Ping timeout: 246 seconds)
00:06:19 Quit mystica555 (Read error: Connection reset by peer)
00:26:16 Quit bipton (Quit: CGI:IRC (EOF))
00:28:30 Join Scromple [0] (~Simon@
00:41:55 Quit Wardo (Quit: Blarglarg)
00:47:39 Quit domonoky (Read error: Connection reset by peer)
01:02:06 Quit stripwax (Quit: Miranda IM! Smaller, Faster, Easier.
01:02:58 Quit mgottschlag (Ping timeout: 244 seconds)
01:06:04 Quit fs-bluebot (Ping timeout: 264 seconds)
01:09:53 Join fs-bluebot [0] (
01:18:20 Quit bertrik (Quit: And That, My Liege, Is How We Know the Earth to Be Banana Shaped)
01:23:13 Quit nathris2 (Ping timeout: 265 seconds)
01:26:43***Saving seen data "./dancer.seen"
01:36:31 Join Thra11_ [0] (~thrall@
01:36:55 Join pacovila [0] (
01:37:18 Quit Thra11 (Ping timeout: 246 seconds)
01:38:04 Part pacovila
01:39:05 Quit Rower85 (Quit: Hmmm...)
01:41:28 Quit pamaury (Remote host closed the connection)
01:53:01 Quit liar (Ping timeout: 245 seconds)
01:53:24[Saint]What does my client need to advertise to say it can complete a manual build?
01:53:30[Saint](I've tested, and, it can)
01:53:56[Saint]I notice its not included in <stumped>
02:05:15 Quit ender^ (Ping timeout: 272 seconds)
02:05:45JdGordonyou need to specify all the compilers you have
02:08:13[Saint]apparently not.
02:08:25[Saint]logs may have answered me, though: "<AlexP> What should a build client advertise to do manual? latex?"
02:08:41[Saint]"<gevaerts> AlexP: yes. That might change though"
02:09:03JdGordonoh woops, didnt read "manual"
02:09:16[Saint]creepy similarity between AlexP's wirding and mine is creepy.
02:09:24[Saint]*wording too
02:11:13 Quit Xerion (Quit: )
02:22:47 Join ender| [0] (
02:33:42 Nick tchan1 is now known as tchan (
02:33:48 Quit tchan (Changing host)
02:33:48 Join tchan [0] (~tchan@lunar-linux/developer/tchan)
02:47:35 Quit BHSPitMonkey (Read error: Connection reset by peer)
02:59:55 Quit dfkt (Quit: -= SysReset 2.55=- Sic gorgiamus allos subjectatos nunc.)
03:11:41[Saint]JdGordon: the only testing I managed to give 284 (how are we 'sposed to format that so the bot picks it up?) before I fell asleep was making sure everything "just worked" if I turned it off for all the bars my skin was using and specifying touch areas manually still worked.
03:12:24JdGordonthats pretty much it
03:12:31JdGordondid you like the padding that got added?
03:12:35JdGordonThat might need some tweaking
03:12:45JdGordonand g#284 is how you get the bot to pick it up
03:12:47fs-bluebotGerrit review #284 at : skin_engine: Automatically create touch regions for skin bars by Jonathan Gordon (changes/84/284/5)
03:15:09[Saint]I like the fact that there's a padding added, but I can imagine it might be non-obvious.
03:16:55 Quit anewuser (Read error: Connection reset by peer)
03:17:05[Saint]And, as I said last night, I say so without understanding the implementation...but I'm not a fan of the default to 'touch' and having to pass 'notouch' as a param if its not wanted.
03:17:37[Saint]purely because I don't think its a nice default, nothing at all code related.
03:18:15[Saint]It doesn't really bother me an ounce either way to be honest, but its my "ideal world" scenario :)
03:18:33JdGordonyeah, im gonna just disgaree there
03:19:11CIA-5Commit d336eb3 in rockbox by Jonathan Gordon: skin_engine: Automatically create touch regions for skin bars
03:19:25 Join anewuser [0] (~anewuser@
03:19:25 Quit anewuser (Changing host)
03:19:25 Join anewuser [0] (~anewuser@unaffiliated/anewuser)
03:19:35JdGordonhaving it on by default means it will always "just work"
03:21:46CIA-5d336eb3 build result: 0 errors, 6 warnings (Jonathan Gordon committed)
03:24:15CIA-5Commit c413591 in rockbox by Jonathan Gordon: fix build warnings
03:26:06 Quit Thra11_ (Ping timeout: 246 seconds)
03:26:45***Saving seen data "./dancer.seen"
03:26:52CIA-5c413591 build result: All green
04:03:13 Join TheSphinX^ [0] (
04:06:05[Saint]Frankly, I don't think thats important at all.
04:06:18[Saint]The author needs to make that descision. They need to allow for it.
04:06:22 Quit TheSphinX_ (Ping timeout: 240 seconds)
04:07:30[Saint]If the docs clearly say "weird shit you might not expect could possibly happen with the touch areas, as although you can specify them manually, ...don't, because unless you turn it off they'll be created for you" then all is well and good.
04:07:42[Saint]I just don't think defaulting on is very nice.
04:09:01 Quit MethoS- (Ping timeout: 265 seconds)
04:09:03[Saint]Its *great* that the skin engine can do this, but, I think it should be a choice the author makes as opposed to just trying to make it "just work" with existing themes.
04:09:17 Join mystica555 [0] (
04:11:33*JdGordon had an insnae idea last night
04:11:46JdGordonallow the bar tag to show setting values generically
04:11:53JdGordon(unless we already can do that?)
04:12:10JdGordonif that is possible you could then implement the graphical EQ in the skin engine entirely!
04:14:00[Saint]"(unless we already can do that?)" <−− nup, not that I know of.
04:14:53JdGordondoing a bar for the repeat mode might be look a bit stupid :)
04:14:59JdGordonbut i dont see why it shouldnt work
04:15:05 Quit mystica555 (Ping timeout: 264 seconds)
04:17:09 Join mystica555 [0] (
04:18:55 Join amiconn_ [0] (amiconn@rockbox/developer/amiconn)
04:18:56 Quit amiconn (Disconnected by services)
04:18:59 Nick amiconn_ is now known as amiconn (amiconn@rockbox/developer/amiconn)
04:19:46 Quit pixelma (Disconnected by services)
04:19:47 Join pixelma_ [0] (pixelma@rockbox/staff/pixelma)
04:19:49 Nick pixelma_ is now known as pixelma (pixelma@rockbox/staff/pixelma)
04:23:05 Quit mystica555 (Read error: Operation timed out)
04:51:49 Join kevku [0] (
04:57:18 Quit TheSeven (Disconnected by services)
04:57:28 Join [7] [0] (~quassel@rockbox/developer/TheSeven)
05:02:48[Saint]Can someone help me to understand why I keep seeing: "Uploading foo";" <curl_command_to_upload_foo>; "No upload" in my client's build log?
05:03:35[Saint]I assume that means the upload started, but another client beat me to it?
05:06:27JdGordonor you did bootloader builds which dont need an upload
05:06:41[Saint]a bunch of WPSes it seems.
05:07:31[Saint]If they didn't need to be uploaded, I assumed the curl magic wouldn't be there...or am I giving the script too much credit?
05:21:13 Join soap [0] (
05:21:14 Quit soap (Changing host)
05:21:14 Join soap [0] (~soap@rockbox/staff/soap)
05:26:49***Saving seen data "./dancer.seen"
05:34:01 Quit tchan (Quit: WeeChat 0.3.7)
05:40:56 Join rockdoom [0] (
05:42:18rockdoomHi. Doom runs really really fast on my MP3 player and it's basically unplayable. Is there a way to fix it?
05:43:44 Join tchan [0] (
05:43:44 Quit tchan (Changing host)
05:43:44 Join tchan [0] (~tchan@lunar-linux/developer/tchan)
05:49:31 Quit rockdoom (Quit: CGI:IRC (EOF))
05:58:02 Quit tchan (Quit: WeeChat 0.3.7)
05:58:33 Join tchan [0] (~tchan@lunar-linux/developer/tchan)
06:22:33 Join Thra11 [0] (~thrall@
06:27:21 Quit anewuser (Read error: Connection reset by peer)
06:46:49 Join [Saint_] [0] (~Saint]@unaffiliated/saint/x-8516940)
06:54:19 Join nathris [0] (
06:54:20 Part nathris
06:56:44 Quit soap (Quit: soap)
06:58:53 Quit [Saint_] (Ping timeout: 264 seconds)
07:02:56 Join [Saint_] [0] (~Saint]@unaffiliated/saint/x-8516940)
07:06:47 Quit T44 (Ping timeout: 245 seconds)
07:10:38 Quit [Saint_] (Remote host closed the connection)
07:12:28*[Saint] has a horrible thought...
07:13:23[Saint]Just because I (foolishly? ;)) started this cabbie-touch stuff, does that mean I have to kludge it into the vuild system too?
07:13:32[Saint]*build, even.
07:26:13 Join Topy44 [0] (
07:26:50***Saving seen data "./dancer.seen"
07:27:42 Quit factor (Read error: Connection reset by peer)
07:45:34 Join factor [0] (
08:07:00 Quit tchan (Quit: WeeChat 0.3.8)
08:15:37 Join tchan [0] (
08:15:41 Quit tchan (Changing host)
08:15:41 Join tchan [0] (~tchan@lunar-linux/developer/tchan)
08:17:51 Join jlbiasini [0] (
08:18:51 Part jlbiasini
08:34:23 Join ender` [0] (
08:35:51 Join liar [0] (
08:36:12 Quit mshathlonxp (Ping timeout: 252 seconds)
08:39:08 Join einhirn [0] (
09:16:36 Join pacovila [0] (
09:20:03 Join polemon [0] (
09:20:26polemonhow do you guys actually taylor Rockbox to the chipsets of so many devices?
09:20:31polemonare they that similar?
09:24:02Bagderlots of hard work
09:24:08Bagderby many people
09:24:14Bagderover a long period of time
09:25:08 Join mgottschlag [0] (
09:25:08 Quit mgottschlag (Changing host)
09:25:08 Join mgottschlag [0] (~quassel@reactos/tester/phoenix64)
09:26:52***Saving seen data "./dancer.seen"
09:31:48 Join petur [0] (~petur@rockbox/developer/petur)
09:32:04 Join pamaury [0] (
09:32:05 Quit pamaury (Changing host)
09:32:05 Join pamaury [0] (~quassel@rockbox/developer/pamaury)
09:35:56[Saint]polemon: some targets share hardware, or have similar (slightly older/newer, etc.) hardware, which makes things easier. But generally speaking pretty much everything needs to be reverse engineered.
09:38:33[Saint]Sometimes you might get lucky and find a datasheet for the component(s), but even then it may not be complete (undocumented registers, for example).
09:42:37 Quit pacovila (Remote host closed the connection)
09:56:57 Quit mgottschlag (Read error: Operation timed out)
10:18:59 Quit Scromple (Read error: Connection reset by peer)
10:19:48 Quit pamaury (Ping timeout: 246 seconds)
10:48:04 Join jlbiasini [0] (
10:48:09 Part jlbiasini
10:49:01 Join mgottschlag [0] (~quassel@2a00:1398:200:200:8439:f60b:5fdd:fb96)
10:49:01 Quit mgottschlag (Changing host)
10:49:01 Join mgottschlag [0] (~quassel@reactos/tester/phoenix64)
11:03:22*[Saint] considers editing to be a bit smarter
11:04:16gevaertsIn what way?
11:04:47[Saint]by way of having the archlist blank by default, and offering a menu (similar to the toolchain compilation prompt) allowing you to specify the arch(s) you want to broadcast support for.
11:05:00 Join Tanguy [0] (~tanguy@2a01:e34:ee8f:150:208:9bff:febe:e3d3)
11:05:21*gevaerts wonders why this would be better
11:06:11[Saint]easier is better, isn't it? I mean, sure, its essentially a one-time thing but I just thought it would be nice to do it this way.
11:06:53gevaertsYou mean we'd have to add another script to run
11:06:59gevaertsHow is that easier?
11:08:16[Saint]Why would it need to be another script? It could just perform the checks itself could it not?
11:08:34*gevaerts is confused
11:08:38 Join Rower85 [0] (
11:11:06gevaertsI guess I have no idea what you're proposing
11:11:47 Quit tmzt_ (Ping timeout: 248 seconds)
11:14:58[Saint]I was just thinking on the first run of a menu similar to would be nice, showing a list of arch its possible to broadcast support for and the character(s) you should type in a space separated list to edit the arch list so you don't have to. Then enter the client name, your name, etc.
11:15:39[Saint]More work for essentially little gain, but its something I could potter on that I thought might be nice.
11:16:45gevaertsYou'd essentially have to move to a separate config file then
11:17:01gevaertsI'm not convinced it's worth the effort
11:21:08TanguyI am looking for a player model to buy, preferably to run Rockbox on it. :-)
11:22:48TanguyThe Sandisk Sansa Clip Zip has two qualities I would be interested in: standard micro-USB, micro-SD card reader. But it is tiny, which is not something I am specifically looking for.
11:24:28TanguyDo you know if there is another /current/ model that I should consider? Imperatively with micro-USB or possibly mini-USB (I shall not buy anything with a poprietary cable), and preferably with an SD or micro-SD reader.
11:26:22 Join pamaury [0] (
11:26:22 Quit pamaury (Changing host)
11:26:22 Join pamaury [0] (~quassel@rockbox/developer/pamaury)
11:26:56***Saving seen data "./dancer.seen"
11:28:41pamaurymgottschlag: ping
11:28:59 Quit einhirn (Ping timeout: 250 seconds)
11:29:45pamauryyeah, I forgot to tell you something very important about the stmp3710: it is not the same as the imx233, the registers are differents in some places
11:30:39pamauryI'm doing a port for a stmp3760 based player (which is basically the same as the stmp3710) so you might want to wait a bit before trying to reuse our code
11:31:14mgottschlag"<pamaury> yeah, I forgot to tell you something very important about the stmp3710: it is not the same as the imx233, the registers are differents in some places" - I already thought so, some register writes/reads simply didn't make sense, thanks for the notice :)
11:31:43pamauryyou can use this:
11:32:11 Join dfkt [0] (dfkt@unaffiliated/dfkt)
11:32:13pamauryit's a pdf I generated containing the register list of both chips and the differences. I'm in a process of producing a better one but it's already a good start
11:33:50 Join tmzt [0] (~tmzt@
11:33:57pamauryand if you are interested, I can send you some code which can run on the stmp37xx which allows to poke at random registers/memory via usb
11:40:05mgottschlag*that* indeed would be awesome
11:40:38pamauryok, I need to leave right now, be back in one hour, I'll publish on my repo the stuff so you can use it
11:56:39[Saint]so, sorry...what is it I add to my client(s) archlist(s) to advertise support for building manuals?
11:56:41 Join evilnick [0] (~evilnick@rockbox/staff/evilnick)
11:56:55[Saint]I have checked, and I can indeed build the manuals.
11:57:57[Saint]I think I found it answered in the logs earlier, but it wasn't actually confirmed so I'm sot sure.
12:05:27[Saint]"android15,arm-eabi-gcc444,arm-ypr0-gcc446,latex,mipsel,m68k-gcc452,sdl,sh", that's all of 'em, yes? has the list
12:06:59[Saint]right, but the entry for the manuals isn't included it doesn't seem.
12:07:13gevaertssure it is
12:08:04 Join einhirn [0] (
12:08:13[Saint]right, that's not in there when you download it initially.
12:08:46gevaertsIt is
12:10:06[Saint]No, its not.
12:10:19gevaertsIt is
12:10:41[Saint]I had to add it, it just so happened I found AlexP asking the same question this morning (my time)
12:11:03*gevaerts thinks he sees where the confusion comes from
12:11:04[Saint]I just re-downloaded it to be sure, and "latex" is *not* in the archlist.
12:11:08gevaerts12:06:14 <gevaerts> has the list doesn't, no
12:11:28[Saint]Ahhhhhh....shit, sorry man.
12:12:07[Saint]I did in fact see "12:06:14 <gevaerts> has the list" as well, but my mind replaced it with
12:13:12[Saint]Sorry, uuugh. That felt like ramming my head against a wall :) "I can *seeeeee* its not there, dammit! Don't tell me it is!.....ohh..ok, whoops..."
12:14:55 Join T44 [0] (
12:15:26*evilnick hands [Saint] some glasses
12:16:35 Quit einhirn (Quit: Miranda IM! Smaller, Faster, Easier.
12:19:17 Quit Topy44 (Ping timeout: 264 seconds)
12:23:45JdGordongevaerts: what "intresting" things can you tihnk of with making a bar capable of showing setting?
12:24:40gevaertsJdGordon: that depends. I'd say your repeat mode example would actually be nice, *if* there's a way to put proper labels next to it
12:25:14JdGordonrepeat mode makes absolutly no sense :)
12:25:23JdGordoni shold probably work on auto rtl-ing though
12:25:27JdGordonsomething thats actually usefu;l
12:25:43gevaertsSure it does. You could make it like one of those selector sliders
12:25:58gevaertsI'm not sure what to call them, really
12:26:40JdGordonoh, if you're tihnking what im thinking then a couple of bitmaps would be a better way to do that specific example :)
12:27:03gevaertsYou can't slide bitmaps!
12:36:16gevaertsJdGordon: I'll agree that most people use rotary selector switches or a row of pushbuttons for this, but there are some sliding ones, and I don't think those are easy to do in the skin engine right now (neither are the rotary ones of course)
12:48:45JdGordondid my patch to allow the shortcuts menu to be the quickscreen ever get merged?
12:49:18JdGordonah yes, /me can nuke that git branch
13:00:06 Join anewuser [0] (~anewuser@
13:00:06 Quit anewuser (Changing host)
13:00:06 Join anewuser [0] (~anewuser@unaffiliated/anewuser)
13:06:40polemonhave you guys ever thought of porting RockBox to one of those portable DVD player?
13:06:59 Join XavierGr [0] (~xavier@rockbox/staff/XavierGr)
13:09:48evilnickpolemon: Ports happen by those with the hardware who want to spend a lot of time working out all the problems, but to the best of my knowledge that hasn't been attempted
13:10:18polemona friend of mine got one of those things
13:10:23polemonthey're actually pretty awful
13:10:40evilnickI can well believe that :)
13:10:41polemonno HDMI, MP3, WMA, and WAV, as for audio
13:11:01polemonvery few codecs
13:11:20polemonit has only composite out, and only stereo audio
13:11:36polemonpretty horrible OSD, too
13:16:21evilnickWell, the code is open source, but I'm not sure that there's a lot of crossover between Rockbox and a portable DVD player
13:17:31polemonI believe there is...
13:17:49polemonI mean, the audio formats alone
13:17:57polemonplus playing videos
13:20:44evilnickThis might help:
13:21:46evilnick"The Rockbox developers can and will try to help out with development, advice, hints and other general things, but only as much as they can and if they have the time." is one of the most important parts
13:24:45polemonyeah, well, it's not like I want to, since I don't even have that kind of player
13:25:02polemonI was just wondering, if people were discussing that already
13:25:21gevaertspolemon: you're aware that rockbox *only* supports mpeg1 and mpeg2 for video?
13:25:36polemonyeah, I know
13:25:43polemonI use Rockbox on my iPod Nano
13:26:57***Saving seen data "./dancer.seen"
13:30:15JdGordonwhats the trick to make gdb not barf on the USR1 signals?
13:31:56gevaertshandle USR1 pass IIRC
13:32:03gevaertsOr just configure −−sdl-threads :)
13:33:21 Quit petur (Ping timeout: 246 seconds)
13:34:26JdGordonwhat file does that go in?
13:34:51gevaertsThat's a gdb command
13:35:09JdGordonyeah, it can go in a gdb load script
13:35:09JdGordonbut i dont r
13:35:12JdGordonemember the filename
13:35:31gevaertsNo idea
13:37:51JdGordonhandle SIGUSR1 nostop in ~/.gdbinit
13:38:20 Join einhirn [0] (
13:52:23 Join petur [0] (~petur@rockbox/developer/petur)
13:57:07 Quit einhirn (Ping timeout: 246 seconds)
14:01:53 Quit petur (Remote host closed the connection)
14:02:07kugelc413591 was nicely catched by the build system. very useful
14:12:36 Quit factor (Quit: Leaving)
14:20:55 Quit evilnick (Quit: Leaving)
14:22:32 Join MethoS- [0] (~clemens@
14:43:27JdGordongevaerts: I got the setting bar working, you want to test it, or should i just commit it?
14:47:10CIA-5Commit 4c94b98 in rockbox by Jonathan Gordon: skin_engine: Fix a obscure parser bug
14:49:29CIA-54c94b98 build result: All green
14:56:29JdGordonfast_readline() has an annoying bug
14:56:39JdGordonit doesnt handle \r very well... or at all even
15:00:31 Join mortalis [0] (~mortalis@
15:01:24JdGordondoes osx use \r for new lines?
15:02:12JdGordonwikipedia says no
15:02:58CIA-5Commit f6d6a46 in rockbox by Jonathan Gordon: Fix fast_readline to handle windows line endings (\r\n)
15:03:37 Quit Torne (Quit: moving to a new shell)
15:04:33gevaertsJdGordon: feel free to commit (as far as I'm concerned anyway). I want to test it, but I'm not in a hurry and I don't know when that will happen...
15:05:01CIA-5f6d6a46 build result: 3 errors, 0 warnings (Jonathan Gordon committed)
15:06:13 Join stoffel [0] (
15:09:15*JdGordon *thought* he had it working :/
15:12:02JdGordon... it helps to be on the right git branch :p
15:12:04 Quit mgottschlag (Ping timeout: 264 seconds)
15:13:50JdGordongevaerts: [Saint]: should I bother trying to reuse %St for the bar and normal type? or is it ok to use 2 different tags?
15:14:02JdGordonusing the one works but might be a bit more error prone
15:15:00 Join mgottschlag [0] (~quassel@2a00:1398:200:200:58da:8332:954e:77dd)
15:15:01 Quit mgottschlag (Changing host)
15:15:01 Join mgottschlag [0] (~quassel@reactos/tester/phoenix64)
15:15:34kugelJdGordon: shouldn't the \r check come before \n?
15:18:52JdGordonno, because the \n check \0's it and sets the next to after, then leaving the \r as the last char which can be safely \0'ed
15:19:00JdGordonit probably coiuld go first but this works
15:19:23JdGordonthis also works with \r as the only EOL char (which apparently only os9 does)
15:21:25 Join soap [0] (
15:21:25 Quit soap (Changing host)
15:21:25 Join soap [0] (~soap@rockbox/staff/soap)
15:26:59***Saving seen data "./dancer.seen"
15:30:07 Quit mortalis (Ping timeout: 245 seconds)
15:30:13 Join Torne [0] (~torne@rockbox/developer/Torne)
15:30:29CIA-5Commit 65f9df3 in rockbox by Jonathan Gordon: skin_engine: Allow the %St() (setting) skin tag be used as a bar
15:30:44*JdGordon hopes someone has some fun with that ^
15:32:45CIA-565f9df3 build result: All green
15:34:16 Quit mgottschlag (Ping timeout: 264 seconds)
15:38:03 Join amayer [0] (
15:43:31 Quit stoffel (Remote host closed the connection)
15:51:25 Join mgottschlag [0] (~quassel@2a00:1398:200:200:6df5:e407:2d4c:51e)
15:51:26 Quit mgottschlag (Changing host)
15:51:26 Join mgottschlag [0] (~quassel@reactos/tester/phoenix64)
15:58:00 Quit GeekShadow (Remote host closed the connection)
15:58:15 Join GeekShadow [0] (
15:59:28 Quit mgottschlag (Ping timeout: 264 seconds)
16:01:41kugelJdGordon: if the first line is \r\n then the \r will missed, no?
16:02:12kugelperhaps I'm reading it wrong
16:14:55 Join einhirn [0] (
16:31:01 Part belak
16:31:16 Quit einhirn (Quit: Miranda IM! Smaller, Faster, Easier.
16:34:12 Join evilnick [0] (~evilnick@rockbox/staff/evilnick)
16:46:41 Join einhirn [0] (
16:47:45 Join mshathlonxp [0] (msh@
17:12:07 Quit einhirn (Quit: Miranda IM! Smaller, Faster, Easier.
17:27:01***Saving seen data "./dancer.seen"
17:30:00 Join einhirn [0] (
17:34:06 Quit einhirn (Ping timeout: 240 seconds)
17:34:40 Join n1s [0] (
17:34:41 Quit n1s (Changing host)
17:34:41 Join n1s [0] (~n1s@rockbox/developer/n1s)
17:36:09 Part amayer
17:49:44 Join perrikwp [0] (
17:49:57 Quit perrikwp_ (Ping timeout: 244 seconds)
17:51:10 Join amayer [0] (
17:59:10 Join mgottschlag [0] (
17:59:11 Quit mgottschlag (Changing host)
17:59:11 Join mgottschlag [0] (~quassel@reactos/tester/phoenix64)
18:07:26 Join megal0maniac [0] (~megal0man@
18:31:55pamaurymgottschlag: pamaury/rockbox-1/tree/creativezenxfi/utils/imxtools/hwemul">
18:38:16 Quit mgottschlag (Disconnected by services)
18:43:19 Quit pamaury (Read error: Operation timed out)
18:51:59 Join domonoky [0] (~Domonoky@rockbox/developer/domonoky)
18:52:37 Join lebellium [0] (
18:52:44 Join prof_wolfff [0] (
19:02:19 Join andai [0] (
19:02:54andaiHello! When I plug my [rockbox enhanced] iPod into my solar USB charger, it switches to USB charging mode and doesn't let me listen to music. Can I make it not-do that?
19:03:17andai( I remember the standard firmware let you charge it while playing, without switching into brick mode )
19:04:31 Join WalkGood [0] (~4@unaffiliated/walkgood)
19:04:37Mirandai: there is a way
19:04:49Miryou can set it to Car Mode
19:05:06gevaertsMir: car adapter mode has *nothing* to do with that
19:05:22Miryes it does
19:05:29AlexPNo it doesn't
19:05:44AlexPandai: You can hold a button to stop it charging, check the manual for which one
19:05:52Mirif he selectws car mode it will allow him to listen to music when plugged into his solar charger
19:05:58AlexPNot necessary
19:06:08gevaertsMir: first of all there is no such thing as "car mode"
19:06:09AlexPJust hold the relevent button when attaching USB
19:06:22Miryes there is
19:06:27gevaertsThere is "car adapter mode", but that does entirely different things and has nothing to do with this
19:07:21 Join mortalis [0] (~mortalis@
19:07:21Mirgevaerts: you need to read
19:07:23Mir Hello! When I plug my [rockbox enhanced] iPod into my solar USB charger, it switches to USB charging mode and doesn't let me listen to music. Can I make it not-do that?
19:07:30Mirthat was the question
19:07:50AlexPyes, and you hold a button when inserting USB to stop that
19:08:28Miror you say yes to car adapter mode
19:08:35AlexPThat is car adaptor mode
19:08:50Miri have several FUZEs and C240's
19:09:03Mirand a E260 in front of me plugged into the wall
19:09:07AlexPAnd gevaerts and I are core Rockbox members
19:09:15AlexPWith probably 30 targets between us
19:09:20Miri also have an ipod with the feature he is speaking about in stock firmware
19:09:47AlexPOF is irrelevent
19:10:20Mirat least he has a choice
19:10:27 Quit mortalis (Remote host closed the connection)
19:11:40Mirall i know is that the car adapter mode alows me to play music while its charging on either a wall, car or my solar charger
19:12:03Mirhence why i thought m y situation was the answer
19:12:48*Mir waves at gevaerts and AlexP and then lurks off to lunch
19:17:06pixelmaAlexP: which button is the famous any button now IIRC (for a while already). Checking the manual doesn't hurt though
19:18:14andaiCar adapter mode doesn't work on the iPod, does it?
19:18:32andaiI see you can tell it not to charge while USB connected, but on a USB that *only* charges that wouldn't really solve my problem :D
19:20:00andaiActually, upon rephrasing my problem ( I need battery outside for about 12 hours ) on a sunny day ( hence USB charger ) I realized that my iPod's battery is excellent and lasts longer than that
19:20:42 Join mortalis [0] (~mortalis@
19:20:46andaibut it would be nice to know for future reference
19:25:13 Quit bluebrother (Disconnected by services)
19:25:18 Join bluebrother^ [0] (~dom@rockbox/developer/bluebrother)
19:27:03***Saving seen data "./dancer.seen"
19:27:12 Quit fs-bluebot (Ping timeout: 246 seconds)
19:27:28gevaertsMir: please show me eitehr official documentation or code that supports your claim
19:28:09gevaertsandai: I don't understand what you mean by "on a USB that *only* charges that wouldn't really solve my problem"
19:28:30 Join fs-bluebot [0] (
19:28:54Mirgevaerts: on the car adapter mode it works on the Sansa models
19:29:19Mirif someone has said "oh that doesnt work on the ipod" then i would have shut the fuck up
19:29:21gevaertsMir: please show me either official documentation or code that supports your claim
19:29:49gevaertsCar adapter mode has *nothing* to do with USB or charging
19:30:02Mirthen what does it do
19:30:30gevaertsAlexP linked you to the relevant part of the manualk
19:30:35Mircar adpter mode is to allow for charging and playing through the car stereo at the same time
19:30:58gevaertsPlease stop trying to deliberately mislead people *now*
19:31:43Mirit doesnt work like that then on my E260
19:32:54gevaertsThen you're either not observing correctly, or you're not running rockbox
19:32:59Mirso i guess its broken on my mp3 players
19:33:36 Join PRETTY_FUNCTION [0] (~sigBART@
19:34:02 Quit Thra11 (Remote host closed the connection)
19:34:37Miri think the manual is miswritten then
19:34:49Miri will have to make a video to prove my point
19:34:57Mirwill do that when i get back from work
19:36:01Mirso no i dont have any official support to my claim gevaerts
19:36:11gevaertsJust in case, showing that it doesn't go to USB mode if you connect while in car adaper mode won't prove your point
19:36:24 Join Thra11 [0] (~thrall@
19:36:42 Quit Thra11 (Remote host closed the connection)
19:37:05Mirshowing that plugging into a car adapter and then playing music while it charges wont prove my point?
19:37:25gevaertsIf that would prove your point, you could just as well claim that it won't go to USB mode if the volume is not muted
19:37:27Miri am sorry gevaerts but you are confusing me pretty bad now
19:38:00Miri never said anything about mute
19:38:16 Join Thra11 [0] (~thrall@
19:38:16gevaertsThat was an analogy. Please learn to read
19:38:39 Join saratoga [0] (
19:39:00saratogaCar adapter mode doesn't change how charging works
19:39:10Mirit still charges
19:39:20gevaertsAnd if that's *still* not clear, you have to prove that car adapter mode makes a *difference*
19:39:23saratogaIt just pauses music when you unplug
19:39:27Mirbut you dont get that USB HID thing in the way
19:39:37Mirsaratoga: thank you
19:39:46bluebrother^USB HID is a completely different setting
19:39:56saratogaMir: nothing to do with what you are thinking
19:40:02gevaertsIf you don't want HID, you can disable that separately
19:40:03AlexPMir: saratoga just disagreed with you...
19:40:52*Mir gives up
19:41:02saratogaMir: was there something about the manual that made you think it was related to USB ? If so we should fix that
19:41:08AlexPpixelma: thanks, didn't realise that
19:41:56Mircar adapter mode allows one to charge and listen to music right?
19:42:08Miram i incorrect on how that feature functions?
19:42:12 Quit liar (Ping timeout: 245 seconds)
19:42:34saratogaLike I said it just pauses music after charging
19:42:43Miryou just said it pauses the track
19:42:43saratogaNothing else
19:42:49Mirand one can always unpause
19:43:05saratogaIt pauses for you
19:43:16gevaertsAnd unpause begins with a U, so it must be related to USB? Is that your point?
19:43:28saratogaSaves you from having to turn off the player
19:44:28saratogaIf you don't mind turning off the player yourself it does nothing for you
19:44:35saratogaMake sense ?
19:45:08saratogaBasically its a way to turn off the player when a car turns off
19:46:12saratogaDoes anyone have opinions about my new logging patch ?
19:46:16bluebrother^but this *has* to affect charging and usb!
19:46:20*bluebrother^ ducks and runs
19:47:01*Mir started playing something on his E260 and when he plugged it into the wall it did not pause or stop playing
19:47:09saratogaI want to have logging enabled on all swcodec targets
19:47:17AlexPWere you pressing a button?
19:47:21Miror go to the screen that says "CHARGING"
19:47:30saratogaYou don't need to press a button
19:47:30Mirno button was pressed
19:47:44saratogaRockbox always charges
19:47:53AlexPsaratoga: oh, did that change?
19:47:55saratogaDoing otherwise would be dumb
19:47:59AlexPFor many years it has gone to USB
19:48:00gevaertsMir: was it Tuesday when you plugged it in?
19:48:14bluebrother^well, there's also this charger detection thing ...
19:48:19AlexPah right
19:48:23Mirgevaerts: i am sorry if i have pissed you off
19:48:24saratogaIf it goes to USB from a charger that's a broken USB driver
19:48:24gevaertsIn that case, it must be that it doesn't go to USB mode on Tuesdays
19:48:25AlexPI was assuming aUSB connection
19:48:29AlexPNot a wall charger
19:48:40AlexPSo yeah
19:49:25bluebrother^if that solar charger makes Rockbox go into USB mode it can't detect the charger as charger.
19:49:38saratogaAnyway does anyone care what I call the logf and debugf replacement
19:49:50bluebrother^saratoga: looks like a nice idea to me
19:49:52Mirbluebrother^: you have a point there
19:50:06gevaertsbluebrother^: might be a nano2g. Charger detection isn't properly up to spec there yet
19:50:09 Join pamaury [0] (
19:50:10 Quit pamaury (Changing host)
19:50:10 Join pamaury [0] (~quassel@rockbox/developer/pamaury)
19:50:21saratogaRight now I just call it logdiskf
19:50:23bluebrother^maybe make that some kind of hidden option, so we can ask people to enable it on development builds in case of errors?
19:50:37saratogaYeah that will happen
19:50:40Mirgevaerts: sorry is i annoyed angered or pissed you off in anyway
19:50:59bluebrother^gevaerts: my mini2g doesn't detect my older Apple charger either. IIRC there was something newer chargers do to identify themselves as charger
19:51:05*Mir now goes to work
19:51:12saratogaI'm going to have a int argument that says what the message is
19:51:29saratogaLike error warning or debug
19:51:55saratogaStock builds will compile only with error enabled
19:52:05gevaertsbluebrother^: there are basically three different kinds of connection: a USB host, a thing that provides 5V on the power lines and has unconnected data lines, and a proper charger that has the data lines shorted
19:52:34gevaertssaratoga: I like the idea (and the future plans), but I haven't looked properly at the implementation yet
19:52:46saratogaThe implementation is crap
19:52:54saratogaBut I'll improve it
19:53:07gevaertsOK :)
19:53:23saratogaThe hit should be very small from this
19:53:25Bagdersaratoga: an alternative approach is to have a number first in the string, as then basically all existing invokes can get the default
19:53:38Bagderlike "[1] moo"
19:53:47saratogaCouple KB at most
19:54:04saratogaAnd parse the string to get the level ?
19:54:09Bagderiirc, the linux kernel does something like that
19:54:13gevaertsI'd say we should use buflib for the buffer, so we can increase it at runtime if we need that
19:54:24saratogaI was just going to do some preprocessor magic
19:54:38gevaertsBagder: that means we can't let the compiler throw away debug output
19:54:38 Quit WalkGood (Quit: ♪ ♫ ♪ ♫ ♪ ♫ ♪)
19:54:46Bagdersaratoga: right, that is probably better
19:54:58Bagderyeah, bad idea
19:55:05saratogaI want to avoid compiling debug info
19:55:18*Bagder says no more
19:55:19saratogaSince it may waste a lot of space
19:55:41saratogaBut yes if people have ideas please tell me
19:55:57saratogaIdeally you will all be forced to use this thing
19:56:11gevaertsI think the level selection we discussed a few days ago is fine
19:56:44saratogaRight now the system is built into logf which is kind of ugly
19:57:05saratogaBut I want to get rid of logf
19:57:40gevaertsIf we want to fully replace logf with this, a bit of preprocessor magic can help with rstricting the lower levels to particular files
19:57:55gevaerts(and yes, I think having a single system is good)
19:58:50andaigevaerts: What I meant was, I found an option to make it NOT charge the battery when you connect it by USB... if you're connecting it to a laptop with limited battery, for example
19:59:17 Quit saratoga (Read error: Connection reset by peer)
19:59:31andaigevaerts: considering my device can ONLY charge it ( it is basically a brick with a solar panel and Li-ion battery glued to it ) that wouldn't help me :D
19:59:33 Join saratoga [0] (
19:59:40gevaertsandai: ah, ok. That's unrelated.
19:59:50 Join saratoga__ [0] (980329b4@gateway/web/freenode/ip.
20:00:12andaigevaerts: Yeah, but I meant it's the most relevant thing I could find in the iPod's Rockbox manual. I guess Car Mode is only supported on the sansa fuze?
20:00:15saratoga__isn't there some gcc magic to print the source file name ?
20:00:30gevaertsandai: car adapter mode is even more unrelated
20:00:37gevaertssaratoga__: __FILE__
20:00:41 Quit saratoga (Client Quit)
20:00:41andaigevaerts: isn't that exactly the thing I needed to solve all my problems?
20:00:48gevaertssaratoga__: actually standard C
20:01:03andaiOh, oh I see
20:01:15saratoga__so we could in theory have the log prepend each entry with the file it came from and then filter it afterwards
20:01:17gevaertsandai: no, absolutely not. Car adapter mode is to make audio pause when you stop the engine
20:01:41saratoga__ok if some c wizard who remembers more then matlab programming wants to help that would be nice
20:01:51gevaertsandai: which ipod is this?
20:01:59andaiiPod Classic 160GB ( new one )
20:02:04andainot yet fully supported, I think
20:02:08andaiI was lucky in getting it to work apparently
20:02:32saratoga__basic goals i think should be to properly set this up using the preprocessor so that regular builds only print errors and ignore warnings and debug statements, and then figuring out how to format the log so that it can be parsed and read easily
20:02:40gevaertsandai: OK, that explains why you see the USB screen at all. Most players have better USB/charger distinction logic now
20:03:10gevaertsandai: if you want to play audio while charging, hold any button while connecting
20:04:33 Quit Thra11 (Ping timeout: 252 seconds)
20:04:46gevaertssaratoga__: seeing how many logf statements we have, I'd say we need to keep the compile-time selection of which files/subsystems to log for debug logging
20:06:30bluebrother^there's also __line__
20:06:36bluebrother^(or was it __LINE__?)
20:06:59gevaerts__LINE__. I don't think that's as useful for filtering purposes though
20:07:16 Quit PRETTY_FUNCTION (Quit: bb all have fun)
20:07:43bluebrother^not for filtering, true :)
20:09:06*gevaerts recommends staying away from #line though
20:09:58andaigevaerts: Hey, it works! Thanks :)
20:10:07gevaertsGood :)
20:10:43saratoga__for the ata delayed write mechanism, is it safe to assume that it won't call during USB and stuff like that?
20:11:04saratoga__right now my callback doesn't check for USB or anything, it just blindly open's and write()s
20:11:04gevaertsI'm fairly sure, yes
20:11:05andaiAlso, could someone change the status of the iPod Classic from "Unusable" to "Unstable"? Apart from occasional bugs and crashes ( less than once a day! ) it's been working just fine for me!
20:11:25saratoga__i think we were waiting for a proper bootloader mechanism for the classic
20:11:32saratoga__but maybe we don't really need that
20:11:43gevaertsandai: "unusable" means (in part, but this is the main one for the classic) that you can't install using just rockbox tools
20:12:04gevaertsIt doesn't actually have anything to do with how buggy it is
20:12:12andaigevaerts: Oh that's right, i did have to boot into recovery mode, then run an .exe file... and then wait 5 minutes!
20:12:30gevaertsYes, and the exe file isn't from
20:12:40andaiI... see
20:12:46andaibut it makes Rockbox work!
20:12:52andaishouldn't this be endorsed by the project? :D
20:13:01andaiis it closed source
20:13:16gevaertsNot that we dislike the freemyipod people of course, it's just that we can't support outside code
20:13:34gevaertsAnd support issues are kind of important
20:13:40andaiis EMCore not usually a part of the rockbox bootscreen?
20:14:10gevaertsEMCore is a separate project, run by the freemyipod people (some of whom are also rockbox developers, by the way)
20:14:17gevaertsIt's all a bit complicated :)
20:15:01*[7] being one of those
20:15:18[7]emCORE is basically our development platform that we use to figure out how all the hardware works
20:15:26gevaertsI guess we could technically change that port from being for the ipod classic to being for the ipod classic with emcore, which would remove that particular obstacle
20:15:38gevaertsBut that would be even more misleading for most people
20:15:46[7]and because there's no other bootable code for the ipod classic yet, we're using emcore as a bootloader on the ipod classic
20:16:12andaino i'm really loving Rockbox... after the first week of frustration ( expecting the interface to be more iPod-like ) it's been great :D
20:16:16 Quit perrikwp (Ping timeout: 264 seconds)
20:16:19bluebrother^how much work would it be to create a Rockbox bootloader for the classic?
20:16:27[7]gevaerts: the port itself doesn't really rely on emcore - it's just that there's no rockbox bootloader and rockbox installer yet
20:16:46gevaerts[7]: I know. We need to fix that, really
20:16:55[Saint]"was it Tuesday when you...."
20:16:56[7]bluebrother^: the bootloader isn't much of a problem, the installation method is
20:17:11bluebrother^hmm. So nothing similar to the nano2g?
20:17:27andaiit felt a lot like flashing my android device ( cheap off-brand eBook reader )
20:17:30[7]the classic is basically the nano3g platform
20:17:48[7]and they have patched all the known holes in their bootloader
20:17:57andaiAlso, wasn't there some kind of protection that Apple put on it which made it impossible for Rockbox to work on it? At least that's what i remember reading like 5 years ago
20:17:59[7]and switched to asymmetric crypto
20:18:08[7]so we can't just inject our bootloader like on the nano2g
20:18:08gevaertsandai: yes, but then [7] turned up
20:18:23bluebrother^too bad.
20:18:36[7]we currently have to rely on a DFU exploit to bootstrap this
20:18:40gevaertsWe also need to fix that USB detection thing on the nano2g and the classic one of these days, so charger detection works properly
20:18:47[7]this works slightly like iphone jailbreaking
20:18:49andaiI'm trying to understand how it is _ever_ a good thing to specifically limit the kind of things people can do with the device you sell
20:19:09bluebrother^you can make people buy the next generation next year?
20:19:42[7]andai: DRM concerns, warranty concerns, and most importantly, using it as a playground platform to test out the iphone security strategy before launching that
20:19:52[Saint]andai: I actually have a skin floating around (that I need to fix) that mimics the iPod OF entirely, but it confused the hell out of people because I did it too well.
20:20:01[7]we have some pretty hard evidence of the nano2g being apple's iphone security guinea pig
20:20:09[Saint]It made it almost impossible to tell if you were in Rockbox or the OF :)
20:20:58bluebrother^[Saint]: you need to put that on the theme site :)
20:20:58saratoga__gevaerts: is it not worth printing the line number in debug statements?
20:21:01[7]gevaerts, bluebrother^: for first-generation classics that have never been updated we can in fact boot through apple's bootloader, similar to how it works on the nn2g
20:21:08bluebrother^and then we need to make it the default theme on ipods :)
20:21:29[7]but for everything more recent we need to attack the bootrom directly because they fixed all bugs that they could patch on flash
20:21:37[7]so we *have* to flash the NOR on that device
20:21:38andai[Saint]: LINK
20:21:59[Saint]bluebrother^: I need to fix it first, there was one or two skin breaking changes since I stopped poking at it (and several new skin toys allow me to improve on it)
20:22:01andai[Saint]: I spent the first few days trying to make it as much like the iPod as possible, but most of the attempts at themes i found were just really depressing
20:22:05[Saint]But you're right, I should.
20:22:13saratoga__also, does __FILE__ print the entire path from the machine compiling rockbox, or the path relative to our source tree?
20:22:16gevaertssaratoga__: maybe. I'm not sure. That's a detail though, easy to change any time we like
20:22:22[7]saratoga__: I think the latter
20:22:24[Saint]I had Nano and Color versions up, but I was always slack about the Video port.
20:22:34andaiIt's also been fun showing off to friends: Hey, look, my iPod does fractals!
20:23:30bluebrother^wasn't it the path as passed to the compiler?
20:23:33gevaertssaratoga__: "The presumed name of the current source file (a character string literal)" is what the standard says. Not very helpful :)
20:24:37 Part andai
20:24:46saratoga__void _logdiskf(const char* file, const char *format, ...) ATTRIBUTE_PRINTF(2, 3);
20:24:53saratoga__that look right with the ATTRIBUTE statement?
20:24:56amayeris there an overall codec that uses the least battery life?
20:24:59amayeri looked at the ipod runtime wiki page but the numbers seem to be all over the place and alot of the data is old(6 years or so).
20:25:01amayeri use alot of mp3's but i listen to alot of podcasts that also offer ogg feeds.
20:25:03amayerso i was wondering if there is a better audio format i should be useing?
20:25:37gevaertsamayer: might help (or not, it's not a simple question :)
20:26:10saratoga__mpc, vorbis, wma are probably very slightly more efficient then mp3, and most other things will be less efficient
20:26:25gevaertsamayer: I'm not sure if there are results for the classic on there, but you can probably use the nano2g numbers
20:26:44amayerthats the one i was looking at
20:26:50saratoga__if hes talking about 6 year old results its probably not hte classic?
20:26:52saratoga__which ipod
20:27:04amayerthe classic on the site is the 80gb version, i have the 120
20:27:23saratoga__ok then you're probably looking at results for different mp3 players then you own
20:27:30saratoga__since we've only had a classic port for a little while now
20:27:45amayerbut yes i was looking at all the apple ipod results to see if (for exampe) ogg had better performace across the board
20:27:53saratoga__thats not the best idea
20:27:58saratoga__IIRC the classic gets something like 30 hours in rockbox
20:28:10gevaertsamayer: the classic and the other ipods have rather different CPUs
20:28:24amayeroh really?
20:28:40*gevaerts nods
20:28:57amayerso different cpu's work better with different codecs?
20:29:18gevaertsYes, for more or less subtle reasons
20:29:44amayerthank you very much for your help. I will keep this in mind when doing research in the future
20:29:57gevaertsFor instance, on the "old" ipods mp3 is better than anything else because it makes use of both CPU cores while other codecs don't. The classic is single-core
20:30:14gevaertsThat's one of the less subtle differences :)
20:31:07amayerok... so ogg files would do better(slightly) then mp3 on my 120Gb classic?
20:31:55gevaertsI think they're going to be very close
20:32:03amayerthese are podcasts close to an hour long(does buffering come into play here?). so i wasnt sure if a "real time" codec or "buffered"? would be better
20:32:13 Quit evilnick (Remote host closed the connection)
20:32:43amayeror am i way off in my thinking?
20:33:02gevaertsBuffering always comes into play on HDD players, but mp3 and vorbis bitrates for the same quality aren't going to differ hugely
20:33:31gevaertsSo that won't make a big difference either. You'll run into that when you start comparing e.g. mp3 and flac
20:34:50kevkuso flac saves battery? not likely more flash reads
20:35:19gevaertskevku: no, rather the opposite, although on flash-based devices the effect is a lot less than on hdd
20:37:34amayergevaerts: so then its personal preference mp3 vs ogg not really performance. Is there a sound quality difference or something? i read that they are both lossy.
20:38:21gevaertsamayer: they will sound different (up to a point, not everyone's hearing is that good), and you can get into fights over which is better
20:39:27amayer*zips bullet proof vest*
20:39:29amayerwell thank you for your help.
20:39:31amayerIll try ogg and see how i like it compaired to mp3
20:40:10gevaertsJust don't transcode between them. That *will* hurt the quality
20:41:59amayerim not sure how the podcast sites handle that. but they offer mp3 and ogg feeds
20:43:01gevaertsThey have the original lossless recordings
20:43:10gevaertsYou can transcode from those
20:43:26amayergood enough
20:43:44amayerso something like flac would have better sound quality but use more battery to play? correct?
20:43:56amayer(assuming it wasnt transcoded)
20:44:02gevaertsIt mainly takes a lot more space
20:44:12amayerbut not better quality?
20:44:43scorche|shflac is actually a more efficient codec from what i understand, but those gains are offset by the quantity of reads due to enlarged size
20:44:47gevaertsMaybe. For podcasts probably no noticeably better quality. For music, it depends on the kind of music, the bittrate you use for the lossy codec, and your ears
20:45:02scorche|shamayer: well, flac is lossless - you are comparing it to many lossy codecs...
20:45:46scorche|shby definition, lossless is better sound quality, but that depends on the source and just because it has better "sound quality", that doesnt mean you can perceive the difference
20:46:26amayerscorche|sh: thank you very much
20:46:27amayerYou guys are very helpful
20:52:06saratoga__gevaerts: crap, it prints the whole machine path from the build client
20:52:33saratoga__is there some simple way to correct that or am i going to have to parse through strings
20:54:44 Join mgottschlag [0] (~quassel@reactos/tester/phoenix64)
20:55:36saratoga__there is the __func__ option, which would just print the function name and could be grepped for i guess
20:57:05gevaertsI don't think there's a good way to shorten __FILE__, unless we overhaul the build system
20:58:09gevaertsWell, you can change what __LINE__ and __FILE__ are using #line, but that's not going to be trivial at all
20:58:21saratoga__i guess the init function could parse the string once and figure out how many bytes to clip
20:58:27saratoga__wouldn't be much overhead
20:59:06gevaertsFor dev builds that's fine I guess, but I don't think we want that for release builds
20:59:11saratoga__since it knows that it will be in /firmware/logf.c it could count how many bytes to get to /firmware and then just truncate
20:59:24saratoga__are release builds different?
21:00:03gevaertsIf we have a lot of messages, the RAM overhead might add up
21:01:07gevaertsI'd expect the toolchain to only keep a single copy per file, but still, I think we need to check before deciding it's fine
21:01:26saratoga__not sure i understand what you mean?
21:02:54 Quit megal0maniac (Quit: megal0maniac)
21:03:06gevaertsI mean, if you use __FILE__ twice in one file, I expect only one string in the binary
21:03:35saratoga__ah ok
21:03:38saratoga__yeah probably
21:03:44gevaertsBut the bit of path we don't want is still there once per file, which might add up
21:04:06saratoga__hmm this is going to mean that the binary size changes for each build client
21:04:08gevaertsWe could demand that all build clients run in / :)
21:04:18gevaertsRight, that too...
21:04:45saratoga__can the preprocessor somehow do the clipping before its compiled?
21:05:15gevaertsA quick web search says no
21:05:27saratoga__i mean could we write code in the preprocessor to do it
21:05:42saratoga__like CLIP(__FILE__)
21:05:45saratoga__where clip truncates __FILE__)
21:08:24saratoga__googling this i feel like i'm heading into a bad place
21:09:41gevaertsThe only way I can think of is changing the build system to use relative paths from the source root, but that's going to be rather tricky
21:10:05 Quit tchan (Read error: No route to host)
21:10:06saratoga__how tricky?
21:10:07gevaertsHmmm, there's one thing to try
21:10:23gevaertsHard to say
21:10:33saratoga__actually it strikes me as odd that the build clients include their full paths in the first place since they're variable
21:10:50 Join tchan [0] (~tchan@lunar-linux/developer/tchan)
21:10:59gevaertsThe problem is that we build in a separate directory from the source
21:11:13saratoga__so it would have to be ../
21:11:15saratoga__rather then /
21:12:08 Join JohnML [0] (
21:12:40gevaertsIn theory we can run gcc from the source root directory and be careful with -o (which we have to be anyway, but not as strictly in all cass I think)
21:13:29saratoga__ok well how about for now we just use the __func__ define for now
21:13:47saratoga__its not ideal but its better then nothing and we can change it later if we find a solution
21:14:04*gevaerts nods
21:14:40saratoga__hmm editing my new logdisk.h file doesn't trigger a rebuild
21:14:51saratoga__do i have to do some magic to get the makefile to recognize it as changed?
21:15:02 Join Xerion [0] (
21:15:08 Join bertrik [0] (~bertrik@rockbox/developer/bertrik)
21:15:23JohnMLdo we really have not a feature for a sansa clip+ to remove duplicates from a playlist?
21:16:04 Quit mgottschlag (Read error: Connection reset by peer)
21:16:22saratoga__i doubt it
21:16:51JohnMLsaratoga__: so i do a feature request ?
21:16:55gevaertssaratoga__: there *is* a way
21:16:56saratoga__you don't
21:17:05saratoga__ah what do you have?
21:17:58saratoga__the function magic works ok, although just testing it the funciton name i'm in is "init" is is a little ambiguous ...
21:17:59bertrikjust doing stuff right in the first place?
21:18:15gevaertsHm, not entirely
21:19:40gevaertssaratoga__: if you put "#line 1 MYFILENAME" at the top of the file, and then add -DMYFILENAME=\"something.c\", __FILE__ will be something.c
21:19:59gevaertsNow I'm trying to figure out how to do that without adding that line
21:20:12saratoga__we could put it in the logdisk.h header file i guess
21:20:34saratoga__although you'd still have to figure out a way to truncate the string so maybet hat doesn't work
21:20:43gevaertsNo. That doesn't work, it only overrides __FILE__ as used from logdisk.h
21:20:59saratoga__smarter then i assumed
21:21:11gevaertsAlso you have to be careful with that "1". It resets __LINE__
21:21:50saratoga__surprising the gcc people have figured out a better solution yet
21:21:53gevaertsAnd __LINE__ and __FILE__ are also used for compiler warnings and errors
21:22:08 Join Thra11 [0] (~thrall@
21:22:16saratoga__i guess in our makefiles we process those strings ?
21:22:31saratoga__to CC apps/main.c or whatever
21:22:34gevaertsSo if you get those wrong, you're going to be confused for a while before you understand error messages again
21:22:49saratoga__that is infuriating
21:22:59saratoga__is there some way to pass that argument directly to CC in the make file
21:23:13saratoga__i guess that is the -D thing you were looking at?
21:23:25 Join liar [0] (
21:24:04*gevaerts nods
21:26:12saratoga__ok i am beginning to understand
21:27:05***Saving seen data "./dancer.seen"
21:32:56*gevaerts decides to have a look at the build system instead
21:32:57 Quit mortalis (Quit: Leaving)
21:34:00saratoga__alright, i set it to log the calling function name for now, and introduced a error levels
21:34:05saratoga__i'll push to gerrit
21:36:46 Part JohnML ("Konversation terminated!")
21:40:03saratoga__ g#288 if anyone is interested
21:40:05fs-bluebotGerrit review #288 at : Introduce logging to disk feature into rockbox. by Michael Giacomelli (changes/88/288/4)
21:41:09saratoga__i guess with some preprocessor magic we could just convert all LOGF macros into logdiskf(LOG_DEBUG, ...) calls
21:41:39saratoga__although there would be no way (yet) to specify that you only want logs from certain files, other then to filter the resulting text file
21:53:27gevaertssaratoga__: something like seems to do the trick, *but* that needs to be done for every single CC invocation in the makefiles, and disabling -Wbuiltin-macro-redefined also doesn't seem very nice
21:55:40gevaertsHm, if we decide to do something like that, we don't have to use __FILE__...
21:55:58gevaertsSo no need to undefine anything
21:57:14gevaertsBut still, having to add magic to every CC line in all makefiles is error-prone
21:59:35 Join Scromple [0] (~Simon@
22:28:15 Quit Thra11 (Read error: Connection reset by peer)
22:29:49 Join Thra11 [0] (~thrall@
22:34:25 Join nosa [0] (
22:35:28 Quit nosa-j (Ping timeout: 264 seconds)
22:35:29 Nick nosa is now known as nosa-j (
22:37:44saratoga__gevaerts: that sounds good to me
22:39:25 Join nosa [0] (
22:40:59 Quit nosa-j (Ping timeout: 246 seconds)
22:41:04 Nick nosa is now known as nosa-j (
22:41:39 Join Wardo [0] (
22:42:48 Quit dfkt (Quit: -= SysReset 2.55=- Sic gorgiamus allos subjectatos nunc.)
22:45:59saratoga__do we want error logging enabled for Android builds, or do they have their own system for debugging?
22:57:33 Part amayer
23:01:02kugelJdGordon: fwiw, I'm not happy how you outright ignored [Saint]'s and my opinions
23:09:57 Join perrikwp [0] (
23:17:55 Join nosa [0] (
23:18:01 Quit nosa-j (Ping timeout: 245 seconds)
23:18:04 Nick nosa is now known as nosa-j (
23:18:10funmansaratoga__: logcat ?
23:25:15[Saint]does Rockbox offer anything logcat wouldn't wrt: error logging?
23:27:08***Saving seen data "./dancer.seen"
23:30:26 Join mgottschlag [0] (
23:30:26 Quit mgottschlag (Changing host)
23:30:26 Join mgottschlag [0] (~quassel@reactos/tester/phoenix64)
23:30:32 Quit perrikwp (Ping timeout: 255 seconds)
23:33:19 Join perrikwp [0] (
23:35:03 Join factor [0] (
23:35:45 Join [Saint_] [0] (~Saint]@unaffiliated/saint/x-8516940)
23:43:49saratoga__alright i'll leave alone android for now, but i guess eventually we want to redirect logs to its mechanism
23:44:20 Quit mgottschlag (Ping timeout: 246 seconds)
23:44:27saratoga__is it possible to have a preprocessor macro check if the argument to a function is equal to a certain value (assuming its known at compile time)?
23:44:41Tornewell no
23:44:45Tornebut you can pretend
23:44:51Tornetoken paste the argument to something
23:44:53saratoga__i saw your solution the other day, but its not great if we want to have the threshold change i think
23:45:47Tornewhy not>
23:46:11saratoga__i was hoping to define a minimum warning level for different builds and have everything below it be removed by the preprocessor
23:46:21saratoga__but that is hard if we're just prepending strings right?
23:46:22Torneyou can trivially do that by token pasting the level onto the macro name
23:46:37saratoga__can you give an example?
23:46:38Torneno, you paste the log level such that it becomes the name of another macro
23:46:49Tornewhich can be conditionally defined to either log something or do nothing
23:48:23saratoga__i'm assuming you mean to have 0_log, 1_log, 2_log functions and then just define some of them to be blank based on the warning level right?
23:49:02Torneno, macros
23:49:15Torneand the levels don't have to be numbers, names are nicer :)
23:50:24saratoga__so #define DEBUGF(prio, args) DEBUGF_ ## prio ## (args)
23:50:49saratoga__then #define DEBUGF_ERROR function_name
23:51:04saratoga__and I guess put that in an IF block that checks to see if that level of warning should be printed?
23:51:15Torne#define DEBUGF_ERROR(args)
23:51:22Tornesuch that you can make the macro expand to nothing
23:51:34 Join amayer [0] (~amayer@
23:51:39Tornethe token pasting trickery is not even really important
23:51:47saratoga__let me try that and pastebin what i get
23:51:50Tornechromium logging uses it to fuck about with C++ stream macros
23:51:58Torneyou can just use DEBUGF_ERROR() to start with
23:52:17Torneor whatever you feel like calling it
23:52:38Tornemake the level part of the name of the macro you call at the callsite, instead of a parameter
23:52:39saratoga__yeah i was thinking about that
23:52:44Tornethen you don't need to do naything special at all
23:53:50Tornethis needn't be complicated
23:56:59Tornei would use much shorter names though
23:57:09Torneprobably just ERROR() WARN() etc :)
23:57:20saratoga__yeah that sounds good
23:57:22Tornethe mechanism is not important
23:57:27Tornein fact you may have more than one mechanism
23:57:56saratoga__i bet DEBUG is going to be a name collision
23:58:01gevaertsTorne: can you think of a good way to make __FILE__ (or a similar macro) produce short names by magic without having to change *every* CC invocation in the makefiles?
23:58:52Tornesaratoga__: LOG_DEBUG or something?

Previous day | Next day