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 2009-07-11

00:07:15UnhelpfulZagor: this came up when core jpeg was committed. 747 got a binsize hit, 767 didn't, as 767 doesn't enable album art, and so also doesn't get bitmap scaling or jpeg in core.
00:08:31Unhelpfulthere may be other things as well, but the jpeg loader and the scaler are quite expensive
00:09:11CIA-71New commit by zagor (r21765): Report "wasted" time spent on cancelled builds.
00:09:47 Quit domonoky1 (Read error: 104 (Connection reset by peer))
00:11:19BagderI was thinking we should make the client report upload time/size as well, so that we get some speeds logged
00:13:28ZagorBagder: yes, I think so too
00:23:29 Join barrywardell [0] (n=barrywar@
00:31:02CIA-71New commit by zagor (r21766): Added upload time & size logging.
00:32:26CIA-71New commit by zagor (r21767): Added "wasted time" calculation and upload time & size logging.
00:40:32 Join Rondom [0] (
00:42:04 Join AndyI [0] (i=AndyI@
00:44:24kugelZagor: how can the build time be lower the maximum total time?
00:44:58Zagorkugel: because the client times overlap. the time shown is complete time, including upload
00:45:27kugelah ok
00:45:58kugel330s isn't bad. now if I would take the bootloaders away :)
00:46:34 Quit bmbl ("Bye!")
00:48:34 Join Thundercloud [0] (
00:53:19 Quit AndyIL (Read error: 110 (Connection timed out))
00:55:41***Saving seen data "./dancer.seen"
00:56:38amiconnThere is an image missing
00:57:11Bagderthe new onda
00:58:17BagderI've been pondering on using somewhat longer names for the players, including the company name
00:58:25Bagderin the image titles I mean
00:58:59 Quit funman ("free(random());")
00:59:24 Quit Rondom ("Ex-Chat")
01:00:05 Part toffe82
01:02:02gevaertsBagder, Zagor: there are still problems on arm. I get a lot of Server socket disconnected! Cleanup and restart on my sheevaplug
01:02:16Zagorgevaerts: that's ping timeout
01:02:30Zagori.e. controlled restart
01:02:46Zagorit seems to happen a bit too much though
01:03:11*rasher points to">
01:03:20gevaertshm, not arm-specific. My core2duo has them too
01:03:51gevaertsNot the eee that's on the same network though
01:18:00 Quit barrywardell ()
01:19:56CIA-71New commit by zagor (r21768): Added logging of upload time and size.
01:20:30 Join webguest65 [0] (n=5a1b123c@gateway/web/cgi-irc/
01:20:44GreatBeaveri put a new 2300mah battery in my mp3 player, and set battery capacity option to 2300, do i have to do something to make it update the estimated battery life? it still says 24 hours
01:20:46 Join polobricolo [0] (
01:21:38 Quit ender` (" It's all fun and games until someone loses an eye. Then it's fun and games you can't see.")
01:24:27 Quit webguest65 (Client Quit)
01:27:45UnhelpfulTorne: i don't suppose any new ideas have occurred to you? is there some way we could just disable exception handling in libgcc entirely? gcc's configure doesn't really list much in the way of options...
01:34:48 Part polobricolo
01:41:24 Quit killan ("( :: NoNameScript 4.22 :: )")
01:42:59 Join Zandro [0] (
01:45:15ZandroHeyos, I'm one of the SPC format listeners. Has anyone asked to look into providing .rsn (rar'd .spc) support?
01:48:17Zandroexample: earthbound shrinks from 190 files totalling 12MB to only 1 file at 840KB
01:50:28 Join Blue_Dude [0] (
01:50:45Blue_DudeJust posted my first functional attempt at a limiter DSP process at FS #10199. Please take a look. Thanks.
01:50:54soapZandro, do zipped ones exist?
01:51:42Zandrorsn is specifically solid rar archives. zip does not have the merging capability, so I would say no
01:52:58Zandrospc dumps are self-contained−−instead of separating the samplebank into a separate file, it is copied in each file
01:53:36Zandroso there is much redundancy, and takes up considerable space without merging
01:54:27Zandro.rsn is very popular for this reason. an 'entire' collection of SNES music takes only 100MB of space as .rsn files, but >1GB if not
01:59:57soap"merging capability"?
01:59:57 Quit GreatBeaver ("ChatZilla 0.9.85 [Firefox 3.0.11/2009060215]")
02:00:10 Quit JdGordon| ("Miranda IM! Smaller, Faster, Easier.")
02:03:18 Join evilnick_ [0] (i=620ec27e@gateway/web/freenode/x-e3694d4923db02c0)
02:05:18Zandrosoap, it is similiar to the LZMA algorithm, but is limited to a dictioary (max individual file size) of 4MB. This is ok, since .spc files are only 65KB. solid archiving first compares and compressed any identical data among a set of files as a master chunk, then any small differential data for each file and references to reconstitute it during extraction... I think?
02:06:05Zandroanyway, it's a big space/file# saver :)
02:07:13 Quit Blue_Dude ("ChatZilla 0.9.85 [Firefox 3.0.11/2009060215]")
02:07:32 Quit matsl (Read error: 110 (Connection timed out))
02:08:29 Nick fxb__ is now known as fxb (
02:12:24*Unhelpful thought that "solid" archiving just didn't reset the dictionary between files...
02:13:17Zandrohm, sure.. I've been reading that it's just a continuous data stream
02:15:28 Join JdGordon| [0] (i=441d77e2@gateway/web/freenode/x-858e296b5d6dab88)
02:16:31Zandroand by saying that I wish to debunk myself
02:16:45 Quit Zagor ("Clint excited")
02:21:17 Quit Thundercloud (Remote closed the connection)
02:22:31CIA-71New commit by unhelpful (r21769): Fix type mismatch warnings and errors exposed when building with EABI toolchain.
02:22:33CIA-71New commit by jdgordon (r21770): FS #10421 - clip keymap updates. ...
02:29:58 Quit tessarakt ("Client exiting")
02:33:40 Nick fxb is now known as fxb__ (
02:47:53 Quit r0b- (Read error: 110 (Connection timed out))
02:48:21 Quit dfkt ("-= SysReset 2.53=- Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn.")
02:48:37 Quit atb (Client Quit)
02:52:56 Quit JdGordon| (Ping timeout: 180 seconds)
02:55:45***Saving seen data "./dancer.seen"
03:00:56 Quit kugel (Remote closed the connection)
03:15:32 Join ucchan [0] (
03:18:29 Quit Tuplanolla (Read error: 60 (Operation timed out))
03:19:23 Quit Zandro ("ChatZilla 0.9.85 [Firefox 3.5/20090624025744]")
03:20:14 Join kamlurker [0] (
03:23:56 Join Lss [0] (
03:26:34 Quit scorche (" rawr...that is all...rawr")
03:42:47 Quit evilnick_ ("Page closed")
03:49:58 Quit mt (Read error: 113 (No route to host))
04:25:19UnhelpfulTorne: it looks like non-EABI gcc uses a different relocation type for function calls than EABI. this is how binutils "knows" to only generate veneers for EABI. i wonder if just patching binutils to use the same handling for R_ARM_PC24 would suffice to get the stub calls without the other EABI baggage?
04:30:38Unhelpfulor patch gcc to change the relocations used without EABI...
04:53:38Unhelpfulit looks like it's the gcc side that would need to change. there are actually two different relocations replacing R_ARM_PC24, depending on whether it's a jump or a function call, so binutils has to have gcc issue the correct one... i'm digging throught what -eabi changes now :/
04:55:47***Saving seen data "./dancer.seen"
05:11:15 Quit kamlurker ("ChatZilla 0.9.85 [Firefox 3.0.11/2009060310]")
05:22:09 Quit efyx_ (Remote closed the connection)
05:31:56 Join soycamo|duchando [0] (n=camo@
05:36:36 Join ReKleSS [0] (
06:00:06 Quit fdinel ("Miranda IM! Smaller, Faster, Easier.")
06:09:16 Quit soycamo|duchando (Read error: 113 (No route to host))
06:54:34 Join uwill [0] (
06:55:46uwillIs this true? > Disconnecting an e200 while files are being transferred to it can mess up Rockbox, but can't mess up the OF.
06:55:52***Saving seen data "./dancer.seen"
07:02:31Unhelpfulum... perhaps the OF can *start* with the main filesystem in a bad state, but it can't very well play files from it, etc.
07:02:59Unhelpfuldon't disconnect any storage device during transfer. you will lose data. :P
07:03:01uwillYeah - Just starting right is all I'm asking about.
07:03:24uwillI didn't mean to disconnect (bad cable).
07:04:34Unhelpfulif rockbox is still running, just reconnect it and fix the filesystem. :)
07:05:52 Join Riku [0] (i=Lss@
07:06:16uwillThe problem was that when I connected to the PC with RB running, I would get the "This device can perform faster with a USB 2.0...", but the OF was working right.
07:07:50 Quit Riku (Client Quit)
07:08:34Unhelpfulthat's very odd.
07:09:32uwillI just tried again. This time (RB) I got no message, just the Windows error sound (three very rapid bell sounds).
07:09:39uwillBut OF works.
07:11:55uwillthat error sound is the "Device failed to connect" sound.
07:13:48Dhraakellianyay! my miniscule one-liner patch got accepted!
07:14:11 Join Riku [0] (n=Lss@
07:14:57*Dhraakellian wonders if he should submit another patch changing the key to mark possibles in sudoku on the fuze from select+up to just select
07:15:15Dhraakellianor if that would be too easy to press accidentally
07:15:37 Join ybit [0] (n=ybit@unaffiliated/ybit)
07:15:43ybiter, all my files are gone
07:15:48ybitonly the folders remain
07:15:59ybitbut all my audio is gone
07:16:03Dhraakellianor, even if that's the case, and I'm not being overcritical of my ideas, would such be less annoying than misclicks when trying to do the combo too quickly
07:16:48ybiti didn't think too much of it when all my videos were missing, thought maybe i did something, but how did all of the songs go missing, many albums and singles
07:16:55ybithas this happened to anyone else?
07:20:58scorche|shybit: and what are you using to look at the files?
07:22:00ybitit's still there..
07:22:12ybitwhy was there nothing there
07:22:17ybitwhen i went to the folders
07:22:39uwillSay I connect a c200 to the computer while running Rockbox - are there any files that get used that wouldn't be inside a from a "normal" build? Like a bootloader or something? (I said e200 earlier, but meant c200)
07:23:34scorche|shuwill: yes...yes, the bootloader is not in there
07:23:56uwilland the bootloader gets used when I connect to the PC?
07:25:13scorche|shperhaps it is better if you mention why you are asking this?...i dont understand what you are asking
07:25:53 Quit Lss (Read error: 110 (Connection timed out))
07:26:07uwillBecause if I connect while in RB I get the Windows "Device failed to connect" sound (and can't access the DAP), but OF works fine.
07:26:26scorche|shwhat version of rockbox are you running?
07:31:10Dhraakelliandang... I was going to try to reproduce the USB problems I was having on my e200
07:31:52Dhraakellianbut I never got around to it and now no longer have that e200, since I let my brother take it home with him
07:32:01 Part ybit
07:34:21 Quit amiconn (Nick collision from services.)
07:34:25 Join amiconn_ [50] (n=jens@rockbox/developer/amiconn)
07:34:26 Quit pixelma (Nick collision from services.)
07:34:26 Join pixelma_ [50] (n=pixelma@rockbox/staff/pixelma)
07:34:31 Nick amiconn_ is now known as amiconn (n=jens@rockbox/developer/amiconn)
07:34:44 Nick pixelma_ is now known as pixelma (n=pixelma@rockbox/staff/pixelma)
07:47:43 Join Horschti [0] (n=Horscht2@xbmc/user/horscht)
07:48:31Unhelpfulhrm... is there a way to build structures in asm wich will use the packing and alignment specified by the ABI used by the C compiler? it would be nice if while i'm fixing asm broken by EABI packing changes i could arrange things so that we won't have such a problem the *next* time something like that changes...
07:48:49uwillok - I just ran "make veryclean", built and installed the latest from SVN (r21770), and I'm still getting "Device failed to connect" when connecting to my PC in RB, but OF connects fine.
07:53:46ej0rgeuwill: stupid question - does 3.3 work?
07:54:29 Quit courtc (Read error: 104 (Connection reset by peer))
07:55:00uwillI've always used SVN. I'll look for 3.3 in a minute (reinstalling RB bootloader).
07:56:40ej0rgei get that - i often do too - but if something broke we need a reference point of when it did work
07:57:43uwillSansapather output: [ERR] No E200s or C200s found, aborting
07:58:08ej0rgethat's with the OF booted?
07:58:49 Join courtc [0] (n=court@unaffiliated/courtc)
07:59:47ej0rgehuh. I have a pile of c200's here, I guess i can install latest svn on one of them . . .
08:00:02ej0rgeuwill: Drop out the battery for a few seconds and try again?
08:00:47uwillBattery - ok. I also just installed 3.3. Here we go...
08:01:58uwillOne of those two things just fixed it.
08:03:03ej0rgewell, in a second here I'll have current svn on a c240 . . .
08:03:34uwillCurrent SVN is the problem.
08:04:29 Join n1s [0] (n=n1s@rockbox/developer/n1s)
08:05:43uwillIs it normal for sansapatcher.exe to not detect a c200 if it already contains a RB bootloader?
08:05:58 Quit Horscht (Read error: 110 (Connection timed out))
08:08:29ej0rgeIt might be. I don't know.
08:09:15uwillI did it twice - RB 3.3 USB works, current SVN does not.
08:10:19ej0rgehuh, r21770 on my c240 has working usb for me
08:10:24ej0rgewhat OS are you on?
08:11:38ej0rgewhat version? I'm on XP here
08:11:54uwillIs it safe to install the RB bootloader while in RB? Strangely sansapatcher recognizes my player on if I connect in RB.
08:12:05ej0rgenot only does it work, the usb HID feature is pretty neat
08:12:05uwillXP SP3 Pro
08:12:28ej0rgehm, I'm on sp3 as well iirc
08:12:29uwill*on = only
08:12:53ej0rgeIt's probably safe to use sansapatcher whenever it recognizes the player but I'm by no means an expert there
08:13:03ej0rgeare you using the released sansapatcher or the official test build or svn?
08:13:19uwillLink from manual
08:14:07ej0rgerelease then
08:14:15uwill*crosses fingers
08:14:56ej0rgethat's the thread with the v6.0 bootloader / sansapatcher
08:15:12ej0rgethe main thing is that it boots rockbox instead of the OF when you plug in the usb cable while turned off
08:16:33uwillregular sansapatcher worked while in RB.
08:16:43ej0rgeprobably normal then
08:17:03ej0rgewell, it's unusual that svn usb doesn't work for you but 3.3 does
08:17:25ej0rgeUnfortunately I'm not the guy who can help you out with it directly - I'm just the guy who happens to be awake right now
08:17:50uwillRan sansapatcher to reinstall bootloader. Current SVN USB on RB still not working.
08:18:12uwillI appreciate all you have done.
08:18:25ej0rgedo you have another computer handy? maybe it's just something gummed up in XP
08:18:55uwillLinux live CD though
08:19:13ej0rgeso windows just gives you the unhappy noise when you plug it in?
08:19:45uwillYeah, I found the sound in "Sounds and audio devices" the sound is "Device failed to connect"
08:20:16ej0rgemight be worth seeing if linux can see it - that would at least rule out whether it's a software issue on your computer
08:20:36uwillI'll give it a go...
08:21:35 Quit uwill ("ChatZilla 0.9.85 [Firefox 3.0.11/2009060215]")
08:33:20 Join uwill [0] (
08:34:09uwillej0rge: I'm in Ubuntu, and the player is recognized.
08:34:45uwillI uninstalled all my Windows USB devices before I even brought my problem here. What else could it be?
08:36:03 Join flydutch [0] (
08:36:30ej0rgeuwill: Well the only recent commit that looks relevant is this one: 2009-07-01 00:34 r21582: Use the USB pid normally used by the OF when in UMS mode. This might make misbehaving pc software play nice. firmware/export/config-c200.h [diff]
08:37:29uwillIs there an SVN command to download the commit right before that?
08:37:40ej0rgethat might have confused windows slightly, but sounds like the sort of thing that might not last through a reboot
08:37:50ej0rgeuh, probably? I'm not a coder :)
08:37:52Unhelpfulsvn up -r 21581 i believe?
08:38:53uwillI'll get back in Windows and try that.
08:40:33 Quit uwill ("ChatZilla 0.9.85 [Firefox 3.0.5/2008121621]")
08:44:22 Join petur [0] (
08:44:35mrkikohi petur
08:44:42Unhelpfulugh... am i right in thinking that adding another set of multilib options will result in having 2x as many copies of libgcc and friends built? :/
08:47:42*petur waves
08:48:30 Join uwill [0] (
08:48:53uwillIs deleting everything in the build dir just as good as "make veryclean"?
08:49:04 Join Lss__ [0] (
08:49:37Unhelpfulit's as good as a make clean. veryclean will also delete tools that are built in the source directory.
08:50:02uwillguess I should run veryclean
08:51:31ej0rgeuwill: Still not working for you in windows?
08:52:15 Join Rob2223 [0] (
08:52:22uwillDon't know (building). I just wondered if I should "make veryclean" before building an old version.
08:54:22Unhelpfuli'd imagine it doesn't matter most of the time. those tools are not our fastest-changing code, at least for supported targets.
08:54:44 Join amishrobots [0] (
08:54:52*ej0rge just grabbed a current build off the website
08:55:38uwillhow do I write a line like that?
08:55:56***Saving seen data "./dancer.seen"
08:56:30Unhelpfula what?
08:57:01uwillnevermind (off-topic)
09:03:46uwillr21581 works
09:06:53 Quit freqmod (
09:06:53 Quit AlexP (
09:06:53 Quit BlakeJohnson86 (
09:06:53 Quit Kohlrabi (
09:06:53 Quit Kopfgeldjaeger (
09:06:53 Quit Mikachu (
09:06:53 Quit Galois (
09:06:53 Quit shodanX (
09:06:53 Quit dionoea (
09:06:53 Quit Overand (
09:07:26 Quit Riku (Read error: 110 (Connection timed out))
09:07:37NJoinKohlrabi [0] (
09:07:58NJoinshodanX [0] (
09:08:07NJoinOverand [0] (
09:08:20ej0rgeuwill: That's very interesting
09:09:24NJoinfreqmod [0] (
09:09:24NJoinAlexP [0] (n=alex@rockbox/staff/AlexP)
09:09:24NJoinBlakeJohnson86 [0] (
09:09:24NJoinKopfgeldjaeger [0] (
09:09:24NJoinMikachu [0] (
09:09:24NJoinGalois [0] (i=djao@
09:09:24NJoindionoea [0] (n=dionoea@videolan/developer/dionoea)
09:09:39 Quit Rob2222 (Read error: 110 (Connection timed out))
09:10:07 Quit Kopfgeldjaeger (Broken pipe)
09:10:10 Join _Kopfgeldjaeger [0] (
09:10:14uwillI'm building r21582 now
09:10:20 Quit dionoea (Success)
09:10:34 Nick _Kopfgeldjaeger is now known as Kopfgeldjaeger (
09:11:16 Join dionoea [0] (
09:13:16uwillr21582 seems to be the problem.
09:17:44ReKleSSnot really, the patcher is probably searching by USB id, so if you change the id...
09:17:57uwillRight now I'm building the current SVN with one file changed (config-c200.h from r 21581)
09:18:13ej0rgeReKleSS: I thought the issue was that usb mode doesn't work at all in windows
09:21:03ReKleSSoh, hrm...
09:22:13 Quit MrDuck (No route to host)
09:22:26ej0rgeyeah, but it works for me on my c240
09:23:45uwillMy motherboard is an ASUS M3N78 Pro
09:24:24ej0rgeI'm on a laptop so old it only has usb1.1 ports, so I'm using a usb2 cardbus card
09:30:13UnhelpfulReKleSS: not to mention it at least *claims* to be making the id the *same* as the one used in the OF.
09:33:26uwillIt worked - current SVN with "firmware/export/config-c200.h" from r21581. Player is now recognized by Windows in RB mode.
09:35:10ej0rgeuwill: I wonder if something in windows is recognizing the usb pid for the OF and trying to use some other driver
09:35:50Unhelpfulej0rge: but the same usb pid works in windows when the OF uses it in its MSC mode...
09:36:06ej0rgeUnhelpful: yeah . . .
09:36:51 Quit petur ("real-life")
09:41:10uwillDo I have this right > The player connects, Windows reads the pid, and then checks to see if some other attribute coresponds to a Sansa c200 running it's OF?
09:42:13Unhelpfulwe don't know. :)
09:43:14uwillYou guys are gonna kick me.
09:43:37uwillDevice Manager > Unknown Device > Update Driver
09:44:50uwillI think it might be something I did when I had the bad cable, before I knew, and was trying to connect.
09:44:58uwillUnhelpful: Yeah.
09:45:23Unhelpfullooking at that revision, nothing *but* a define for the ID changed :/
09:45:53 Join bmbl [0] (n=Miranda@unaffiliated/bmbl)
09:46:20uwillThanks for all the help guys.
09:47:01amiconnUnhelpful: I think that if we're already touching arm binutils and gcc version in order to get rid of -mlong-calls, we should also go for eabi
09:48:04Unhelpfulamiconn: i finally got rid of the exception spam and breakage... and without having to modify the linker script either, by way of another patch for gcc :)
09:48:07amiconnRegarding the struct offsets - maybe it's possible to do something with offsetof() ?
09:48:30Unhelpfulare offsetof/sizeof supported for calculated literals by gas?
09:48:47 Quit uwill ("ChatZilla 0.9.85 [Firefox 3.0.11/2009060309]")
09:49:11amiconnThey're C exteinsions supported by gcc
09:49:13Unhelpful...i'll check as soon as this compiler build is done. i should have patches up shortly... i think i have "everything" working, aside from the rockbox asm bits that will need to be fixed.
09:50:57Unhelpful4.3 is the oldest revision that can build EABI for arm9e... is there a reason we should be using arm9e rather than arm946e-s? it looks like all of the targets that use arm9e are actually arm946e-s, and i can't really see why more specific would not be better.
09:51:27amiconnI'm not sure, but I think it is possible to compile C code into asm files with gcc. Now use it in a .c file that contains nothing but a global asm() block with the needed offsetof() values as parameters
09:53:17Unhelpfulyou can do something like that. i threw a pure-asm function into one of my test-harness plugins as inline asm, just by putting an asm() which included the label etc.
09:53:34amiconnThe block would contain one .equ directive per offset parameter. Then you can use the generated file as an include file for the asm
09:54:31amiconnYou'll probably need a new make rule for this
09:55:06Unhelpfulbad news... gcc 4.3.3 seems to build larger for targets that aren't getting a space savings from EABI. at least gcc did, anyway.
09:55:19Unhelpful*beast* did, rather
09:55:57Unhelpfuland it did so even when building without EABI... probably just version differences, some new space-vs-speed optimization tradeoff or such.
09:56:01amiconn(1) How much larger? (2) There may still a speed advantage
09:56:43amiconnAlternatively we could convert each .S file into a .c file containing the asm in a global asm() block, but that would be quite messy
09:58:33*amiconn isn't sure whether global asm() blocks can take parameters
10:01:12Unhelpfulyou can't have multi-line string literals in C, can you? we'd have to quote each line of asm and add newlines. :/
10:02:31amiconnYes, that's how asm() blocks work
10:03:07*amiconn just found a mail that shows how simple offsetof() actually is to implement in plain C
10:03:41amiconnWon't help with the asm problem, of course
10:05:12Unhelpfulno. i think that some macros to auto-generate asm blocks that provide asm macros for offsetof or sizeof would be the thing to do... and i think beyond that we only need a rule to create a .S file.
10:05:54Unhelpfuloh, as to the size increase, 4-5KB or so.
10:06:30Unhelpfulthe arm7 code got larger too... when i got it to work with gcc4.0 it was ~60KB smaller in memory on e200, now it's "only" ~45KB :)
10:12:57 Quit flydutch ("/* empty */")
10:13:06amiconnlibdemac is one of those places which need C struct offsets in asm
10:15:26 Quit AlexP ("No Ping reply in 90 seconds.")
10:15:28Unhelpfulwhat about libmad?
10:15:36 Join AlexP [0] (n=alex@rockbox/staff/AlexP)
10:16:26amiconnI'm not sure what the other places are, but I would expect several. It's just that I happen to know the libmad asm optimisatiions fairly well
10:17:01Unhelpfulcore jpeg is as well. not offsets, so much, but both the C and asm versions of jpeg_idct*h write directly to the output buffer as an array of bytes, and pass it on as an array of uint8_rgb, so the size of that struct is important on color targets.
10:21:47Unhelpfulother than places that somebody knows fairly well... it's just a matter of checking all of the CPU_ARM stuff :)
10:25:55n1sposibly some of the dsp stuff too, dunno how much of that is asm for ARM though
10:28:01bertrikmarkun, how about we create an MeizuM3Port wiki page?
10:30:37*amiconn notices some slight nonsense in rockbox' arm asm files
10:31:22 Join mt [0] (n=MTee@
10:31:25amiconn(1) r12 is a sscratch reg, but some asm files save it, and some others use and save other regs while r12 would be available
10:32:44amiconn(2) r9 needs to be preserved in rockbox, but it seems the wavpack asm violates this rule
10:34:02*Unhelpful tried to allocate r12 and r14 first for the most part... r14 because if you're going to have to save *any* registers you may as well save lr and load it into pc.
10:36:08pixelmaej0rge: my c200 works fine in Windows XP, also connects correctly running r21718. The only thing after that change of USB IDs was that Windows found a "new device" and had to set it up once more
10:38:14markunbertrik: good plan
10:38:28pixelmaDhraakellian: I would expect "Select" to change the number in Sudoku - but don't have a Fuze and don't know what that is mapped to
10:44:09amiconnThe method for changing numbers in sudoku varies wildly across targets
10:45:08amiconniPods now have a rather odd method. They change numbers with Left and Right. Mving the cursor is done using the wheel; Select selects whether the wheel moves horizontally or vertically
10:45:20amiconnThere is no visible indicator of the current wheel mode :\
10:46:24Unhelpfuli think we've confirmed my hypothesis of blaming breakage on struct packing - changing all of the 4*x strb's in jpeg_idct*h gets core jpeg working again :D
10:49:00markunbertrik: will NAND be more difficult than USB for the Meizu port?
10:49:30bertrikmarkun, at this point, yes I think so
10:50:40bertrikmaybe NAND suddenly becomes very easy when the iphone people reverse engineer it and it turns out to be 100% compatible with the meizu
10:51:19*Unhelpful wonders if he could band-aid the codecs stuff by just putting an #ifndef CODEC around the CPU_ARM define...
10:51:53markunbertrik: it's not working yet on the iphone?
10:52:12bertrikusb-tcc.c will need some work to make it common for the meizus and the tccs
10:52:37bertrikmarkun, I don't know exactly what the status is
10:55:22markundid you take a look at their openiboot/ftl.c?
10:55:40markunwe would have to ask planetbeing what the status is
10:55:58***Saving seen data "./dancer.seen"
10:56:41bertrikI remember seeing a page where it said iphone NAND was quite well supported now, but can't find it anymore ...
10:57:10markunbertrik: I just asked him. It's not completely off topic in the nano channel :)
11:03:38 Join DarkDefender [0] (
11:03:40bertrikthere was also a discussion here a few days ago about possibly creating a rockbox flash layer, e.g. based on UBI
11:04:10bertrikTorne knows a lot about it
11:08:32pixelmawait... wasn't timestretch was added right after the 3.3 release?
11:11:43 Quit n1s (Read error: 110 (Connection timed out))
11:14:33UnhelpfulEABI work is up at FS #10430. kugel, you'd said you wanted to test it...
11:14:48 Part amishrobots
11:19:21 Join matsl [0] (
11:24:05*pixelma doesn't understand why the forum's "spell check" window is always to small to reach the buttons at its bottom without scrolling
11:24:17pixelmatoo small even
11:26:08*Bagder simply uses Firefox's spell check...
11:29:12bertrikmarkun, I'm quite curious about whether we could run a "real rockbox" on the meizu (with a lot of stubs for stuff we don't support yet), to see the main menu and browse around a bit etc
11:30:56bertrikof course we still need a button driver for that (and a reasonable start at mapping the touch strip actions to "buttons" for example)
11:36:13 Join kugel [0] (n=kugel@rockbox/developer/kugel)
11:36:25kugelUnhelpful: indeed
11:37:18Unhelpfulkugel: have fun. probably almost anything that uses asm that relies on the size of a C struct, or the offset of a member of a C struct, is going to be broken.
11:37:39kugelhave you made benchmarks?
11:38:25kugelI was playing with gcc4.3.3 or so already and I was getting slightly slower codecsc as well as some codecs not working
11:38:53Unhelpfuli can hardly make benchmarks when codecs are broken. ;)
11:39:19Unhelpfulalso, it might be worth revisiting any choices we made about -O levels when changing gcc versions
11:40:59kugelUnhelpful: all are broken?
11:44:54 Join Shaid [0] (
11:47:10Unhelpfuli only *have* mp3 and vorbis files on my e200.
11:47:27ShaidI lost my e200.
11:47:45ShaidIf anyone in Melbourne finds one with Rockbox on it somewhere, it's probably mine...
11:48:45ReKleSSI lost an H120 at melbourne uni
11:53:06Unhelpfulamiconn: how would you suggest going about creating a rule to build compile, but not assemble, a C file for later inclusion by an asm file? i guess we'd want to treat the output pretty much the same as a generated header file, like the bitmaps and such?
11:56:47 Join mcuelenaere [0] (
11:57:56tmztUnhelpful: gcc should habe a switch for that
11:59:21Unhelpfultmzt: indeed it does... i'm thinking of how we deal with that in terms of our build system, and dependencies.
12:01:31tmztah, ok
12:02:15tmztamiconn: how low level is the iPod wheel? could youbmap left and right to the left and right parts of it?
12:02:35tmztif it's just a standard touchpad device but circular
12:03:52amiconnYou can do that on some ipods but not all
12:04:30 Join ender` [0] (
12:04:43amiconn1st Gen iPod has a mechanical wheel. 2nd Gen, 3rd Gen and 1st Gen Mini replicate that behaviour using a touch device
12:05:00amiconn4th Gen iPod, 2nd Gen Mini and later are position aware
12:05:45tmztso for consistency it's not worht it?
12:05:47amiconnBut doing that would rule out using the buttons integrated into the wheel, so I don't think it would make sense
12:06:00tmztwhy is that?
12:06:12tmztwhy would it prevent using the buttons?
12:06:24amiconnYou'll always cause a position touch event when pressing one of the 4buttons
12:06:38tmztif anything it could allow you to detect where on the button you pressed
12:06:47tmztyes, so you would combine those
12:07:00tmztthe htc navi works like that
12:07:12*amiconn doesn't seem to understand
12:07:45tmztthey have one hardware button with two functions and detect which one was intended by a capacatative sensor
12:08:38tmztI mean of your lowlevel driver supports it you could absorb the position event and not pass it to the event handler
12:08:39 Join Tuplanolla [0] (n=jani@unaffiliated/tuplanolla)
12:09:17tmztI'm just saying I find navigating left and right with a wheel very counterintuitive
12:09:41tmztif the left and right are perpendicular to the mition
12:10:24tmztit makes sense for naivgating on a time line but not moving a cursor
12:19:07soapwith Llorean stepped down, scorche|sh, Zagor, and LinusN are the only forum admins. scorche|sh you're the only one outside Llorean here - can we talk about why people's post counts don't increase depending on where they post?
12:41:04 Join domonoky [0] (n=Domonoky@rockbox/developer/domonoky)
12:41:27Unhelpfulamiconn: yes, gcc appears to forbid global asm statements from taking parameters... in fact, it appears to do so in a rather confusing and silly way, by having a different syntax for asm if used outside an expression, so you don't get a helpful error message like "global asm can't have inputs or outpus", just "expected ‘)’ before ‘:’ token"
12:45:47Unhelpfulwe could make things really ugly and complicated, by producing an object file with const globals initialized to sizeof(foo) and offsetof(bar), and then run that through objdump and parse the result :/
12:47:33amiconnI don't think we'll need sizeof(), except perhaps for structs as a whole
12:48:17Unhelpfulbut that's exactly what jpeg needs it for :)
12:48:40Unhelpfulhrm, actually, we could do gcc -S -o - and parse the asm output directly...
12:48:48kugelcan't you just use #defines?
12:49:20Unhelpfulkugel: sizeof and offsetof are not valid in preprocessor macros.
12:50:21kugelI know, but eabi defines __EABI__ or so, so you could do #ifdef __EABI__ \n #define SIZE 3 \n #else #define SIZE 4 #endif
12:50:52kugelI don't think both abis are going the change their behavior soon
12:51:17 Nick fxb__ is now known as fxb (
12:51:26Unhelpfulkugel: but i'm thinking that a more general solution might be worthwhile, which would not require that we manually determine sizes and offsets for each abi for each struct or member where it's relevant.
12:51:36amiconnThis would probably work, but (1) it will be quite some work to figure out all those values and (2) it keeps the current, error prone way
12:51:45Unhelpfulsuppose we need to support yet a third abi?
12:52:32amiconnAtm you need to sync changes between asm and C. If you forget to change one of them, or make a slight mistake -> crash or wrong behaviour
12:52:49amiconnThis applies to all architectures, not just arm
12:52:52Unhelpfulamiconn: i think gcc -S -o - and a perl script that looks for labels with, say, a s_ or o_ prefix, and converts them and the following .word to a .equ, might do the job.
12:53:49kugelwhen is sizeof evaluated? not at runtime, is it?
12:54:28kugelCouldn't you just call a function from as which does nothing but return a sizeof?
12:55:04kugelor pad those structs...
12:55:11Unhelpfulno, at compile time
12:55:40Unhelpfulbut only by the *compiler*, not the preprocessor, and not the assembler, so preprocessed assembly can't solve this problem alone. :/
12:56:02***Saving seen data "./dancer.seen"
12:56:17amiconnsizeof() is essentially this: #define offsetof(s,m) (size_t)&(((s *)0)->m)
12:56:27amiconnErr, offsetof()
12:58:09amiconnUnhelpful: Alternatively we could have a script that converts .S files into global asm blocks in a .c file
12:59:32amiconnThen have the sizes and offsets as static variables in that .c file, and reference them in the asm code
12:59:54amiconnIt might be rather tricky to do this, otoh it doesn't even involve gcc
13:00:13amiconn(the preparation step, that is)
13:02:39kugelcalling a function returning the sizeof doesn't work?
13:03:32kugelIt could maybe also be inline, so that it comes down to "mov r0, sizeof(x)"
13:04:36amiconnObviously you cannot inline C functions into asm
13:06:23kugelhm, yea
13:07:28amiconnAnd the whole purpose of asm is speed, so calling functions just for getting the struct layout would be counter productive
13:10:12*amiconn refuses to believe that nobody else ran into this problem before and solved it
13:12:51 Join Thundercloud [0] (
13:13:48kugelamiconn: static variables aren't much better (especially with short-calls). You'd also only need to call the function one at the beginning, you could then keep the size in a register
13:14:31amiconnStatic variables are essentially the same as the (automatic) constant pool
13:15:09amiconnHmm, of course they need to reside in the .text section for relative loads to work
13:16:29 Join _0x90u [0] (
13:17:38_0x90uAnyone here have any info on the stmp3504 CPU? Such as arch? Or anything?
13:18:24bertrik_0x90u, is what we have on the wiki
13:19:12_0x90uThanks bertrik. Kinda feel stupid now for not search.
13:21:33 Quit Thundercloud (Remote closed the connection)
13:25:45bertrikwe don't have any code for it in rockbox yet
13:29:37 Quit mt (Read error: 110 (Connection timed out))
13:31:27 Quit matsl (Read error: 110 (Connection timed out))
13:33:41 Quit gevaerts (Nick collision from services.)
13:33:53 Join gevaerts [0] (n=fg@rockbox/developer/gevaerts)
13:38:55Unhelpfulamiconn: but you probably don't even need the values in a register for the sort of thing we want to do with them - they're mostly going to be used as immediate offsets, right?
13:39:41 Join martian67_ [0] (n=martian6@about/linux/regular/martian67)
13:40:43 Quit martian67_ (SendQ exceeded)
13:41:12 Join martian67_ [0] (n=martian6@about/linux/regular/martian67)
13:42:57amiconnHmm, true
13:43:58bertrikgevaerts, do you have any tips on what to do to use the tcc USB stack for the meizus?
13:44:55bertrikit looks like the #defines for the usb registers can be re-used more-or-less easily by just defining USB_BASE
13:44:59Unhelpfuland besides, we can't convert whole functions into asm(), because global asm() can't have arguments. :/
13:45:35amiconnWhy now. The asm() can't have arguments, but there can be a pure asm function inside the block
13:46:06Unhelpfulbut we can't insert any C-generated information into it
13:46:37amiconnNo, just into static variables outside the block
13:47:01amiconnAnd then there's the problem with immediate offsets
13:47:11Unhelpfulright, but that means that we can't generate efficient asm for immediate offsets
13:47:35Unhelpfulwhich is *all* that jpeg idct needs of C struct information, and i'd be suprised to find the case otherwise for most of our other asm :/
13:48:30 Quit martian67 (Read error: 110 (Connection timed out))
13:50:36Unhelpfuli think that using gcc -S as a preprocessor is an acceptable solution, and the most flexible as well. and it should let us do the equivalent of strb r4, [r0, #(sizeof(pixel) )] ; strb r5 [r0, #(sizeof(pixel)*2)]; etc
13:52:14Unhelpfuldon't we already use inline calls to cpp to filter SOURCES, and the linker scripts?
13:53:09Bagderwe do, yes
13:55:09 Join martian67 [0] (n=martian6@about/linux/regular/martian67)
13:55:17Unhelpfulhrm... yes, as i thought, if we can put the numerical value in a #define, we can do whatever math we want, within reason, on it in asm as an immediate :D
13:55:59 Quit martian67 (SendQ exceeded)
13:57:18Unhelpfulso, we could do something like this: but with the defines all included from a file that includes some headers, and defines a bunch of globals initialized to sizeof() and offsetof() various things.
13:59:00Unhelpfula perl that takes gcc-produced asm and turns label: .word value into #define label value should be pretty easy...
13:59:25amiconnOr just turn .word into .equ
14:00:40Unhelpfuli thought .equ needed to be ".equ label value" ?
14:01:41amiconnErr, yes
14:02:29 Join Thundercloud [0] (
14:02:45 Quit at0m ("it is now safe to turn of your machine.")
14:03:02 Quit martian67_ (Read error: 110 (Connection timed out))
14:03:13Unhelpfulwill .equ assignments that are never used cause any trouble? one benefit of #define is that we *know* it won't cause a problem if the macro is never used, so we could conceivable put all of these definitions in one file if we wanted to...
14:05:30 Join martian67 [0] (n=martian6@about/linux/regular/martian67)
14:06:28 Quit martian67 (SendQ exceeded)
14:07:00 Join martian67 [0] (n=martian6@about/linux/regular/martian67)
14:11:21bertrikmarkun, we're now doing backlight PWM by toggling GPIO on the PWM interrupts, but looking at the M6 schematics, it may also actually be possible to do this without interrupts
14:14:12kugelwhy would you want to do it without?
14:15:32bertrikwhen you have no other choice
14:17:39bertrikthe datasheet is very ambiguous about the function of the pin that enables the backlight, i.e. at one place it's called tcout but indicated as an input
14:20:56bertrikyay, it works, this makes it a lot easier
14:21:31 Quit linuxstb (Read error: 113 (No route to host))
14:23:51Dhraakellianpixelma: Select isn't mapped to anything. Select takes you to Sudoku's menu on the e200
14:26:43Unhelpfuli think i have something that works. also i feel dirty.
14:26:51 Quit ucchan (Read error: 104 (Connection reset by peer))
14:28:51markunbertrik: do it with a timer output?
14:29:22bertrikmarkun, yes, P0.2 (backlight enable) is actually a timer output
14:29:23DhraakellianI suppose Select = menu with (short) Home = possible would be more like the e200 (which used Rec for possible)
14:29:33Unhelpfulit could just as easily use .equ... i'm not really sure it matters which we use?
14:29:48_0x90uyo guys. I just wanted to say thanks before I went to bed for how hopefull rockbox's site is and how much that everyone puts in it.. I'm downloading the datasheet and a toolchain I found for the STMP35XX. Hopefully get something running on my GoGear 3020 tommorow. Peace Out
14:29:53bertrikwhen we configure this timer for PWM, we don't need interrupts at all
14:29:58markunbertrik: that's what I thought, remember? But then when we read the datasheet together we decided it wasn't after all.
14:30:09markuncan you try it?
14:30:24 Nick _0x90u is now known as _0x90u[Sleep] (
14:30:34bertrikmarkun, yes it works :P but I get a flash when going from the lowest PWM level to off
14:30:49Dhraakellianbut I was thinking that menu would be less annoying than possible in the event that someone accidently did a long home
14:31:23markunbertrik: any idea why that happens?
14:31:42bertrikI think there is one PWM cycle fully on
14:31:53markunand can that be fixed?
14:32:11bertrikI think so, or we could special case it
14:32:47markunbtw, does the OF use backlight fading? I don't remember it from the M6. Maybe it only had brightness control.
14:33:04bertrikthe M3 does use it
14:33:49 Join robin0800 [0] (
14:33:50bertrikit fades to half brightness or so when no buttons are pressed for some time
14:34:46markunactually that wouldn't be bad to have in rockbox as well. amiconn has talked about that before as well.
14:35:18bertrikI like the half-fade idea too
14:35:45 Quit robin0800 (Client Quit)
14:36:07 Join robin0800 [0] (
14:36:31amiconnIt will also work on targets which only have coarse brightness control, where the brightness control based fading works rather poorly
14:37:11amiconnWell, except if brightness is already set to the lowest possible level
14:37:35 Quit Rob2223 ()
14:37:51 Join Rob2222 [0] (
14:37:52markunyes, then it doesn't matter
14:38:21markunamiconn: should the 2nd stage brightness be configurable?
14:39:09amiconnThat might be a good idea
14:41:08markunthe only thing is, I sometimes have to change my backlight brightness on my gigabeat depeding on the lightening conditions around me. Would be a bit silly to have to change the 2nd stage brightness as well.
14:41:09 Quit jon-kha (Read error: 131 (Connection reset by peer))
14:41:09 Join jon-kha_ [0] (
14:41:17 Nick jon-kha_ is now known as jon-kha (
14:41:22markunbut then I chould just keep it on the lowest setting.
14:45:44bertrikWe could have a lot of settings just for the backlight ... :) and wheel/button light too
14:47:08mcuelenaeremarkun: perhaps if you set the first stage brightness lower then the 2nd stage one, adjust the 2nd stage also?
14:47:40mcuelenaere(or always keep the 2nd stage at half the 1st stage)
14:49:41bertrikthat sounds reasona ble
14:51:22bertrikwe could combine the fade-to-half timeout with the button light timeout
14:54:22markunand if we're at the lowest we'll just keep it there
14:55:19kugelamiconn: feel free to improve it, I wouldn't call it poor though
14:56:04***Saving seen data "./dancer.seen"
14:56:15amiconnbertrik: What about targets w/o buttonlight?
14:57:21amiconnkugel: It is poor due to hardware limitation. It cannot be improved
14:57:23 Join mcuelenaere_ [0] (
14:58:24 Quit mcuelenaere (Read error: 104 (Connection reset by peer))
14:59:44Unhelpfuli think this should work?
15:01:35bertrikamiconn, for those targets we keep the timer, but don't switch the button light
15:03:17 Join teru [0] (
15:03:30 Join n1s [0] (n=n1s@rockbox/developer/n1s)
15:03:37bertrikmaybe I'm thinking too far ahead with this
15:04:35gevaertsbertrik: from what I can see it should be a combination of USB_BASE, tying interrupt handlers together, and maybe initialising the controller and clock stuff.
15:05:55*gevaerts has some crazy ideas that might be simple enough to implement as a compromise in the "what to do with slow build clients" discussion
15:06:50bertrikjust don't give them a build ... then they won't complain about killed builds :P
15:07:19gevaertsThat's one position, but I don't think it can be called a compromise :)
15:09:26gevaertsWhat I'm thinking is basically to add the concept of a slow client (maybe initially defined as the 20% lowest bogomips clients, or maybe just a setting that's passed to the server?), and for slow clients start allocating from the other end of the build list
15:10:50 Quit robin0800 ("Leaving")
15:11:25 Join robin0800 [0] (
15:12:03gevaertsThe only change needed would be to reverse the list at "while (scalar @blist) {
15:12:20gevaerts" in (around line 650)
15:13:48*gevaerts actually thinks that that bit of code is slightly buggy
15:13:59 Quit _0x90u[Sleep] (Read error: 113 (No route to host))
15:15:06gevaertsSorting takes the number of times a build has been handed out into account, but the handoutbuilds function loops over all clients handing out builds doesn't re-sort the list in between, so the handed-out count will often be wrong near the end of the round
15:16:29gevaertsso I think it needs to be re-sorted for every client, and if we do that we could conceivably even have a totally different sorting order per client. That means we could do things like having a slow client class, a slowly-networked client class, and a fast class
15:17:21 Join dfkt [0] (i=dfkt@unaffiliated/dfkt)
15:18:04gevaertsrasher: you had strong opinions about my string opinions last night :) What do you think about this scheme?
15:20:26rasherSounds good. "Slow client" even has a strict definition
15:20:39 Join _0x90u[Sleep] [0] (
15:20:42rasherie. doesn't manage to do a proper build in the time the round takes
15:23:21gevaertsBagder, Zagor: am I right in thinking that this would only need re-sorting in the client loop in handoutbuilds?
15:24:46*gevaerts has even more crazy ideas
15:26:02gevaertsYou could extend the scheme to give priority to builds that are mentioned in the commit message, so if the real-time table updating gets done, you'll see results the targets you're especially interested in faster :)
15:27:27 Quit lyngaas (Read error: 110 (Connection timed out))
15:32:53 Quit n1s (Read error: 110 (Connection timed out))
15:35:13CIA-71New commit by teru (r21771): Correct return value when quit sudoku from the menu.
15:39:23 Join funman [0] (n=fun@rockbox/developer/funman)
15:39:32gevaertsThe portalplayer bootloaders in all seem to work properly. The only missing things are osx builds of sansapatcher and e200rpatcher, so we can release *very* soon :)
15:41:07funmangevaerts: i can contribute intel builds, not sure if i can cross compile ppc builds out of the box on an intel machine
15:43:07CIA-71New commit by bertrik (r21772): Meizu: use hardware PWM instead of interrupts+GPIO to set the backlight brightness level
15:43:24gevaertsfunman: you could have a go. From what I can see it's just "make sansapatcher-mac" in rbutil/sansapatcher
15:45:59 Join saLOUt [0] (
15:46:13CIA-71New commit by funman (r21773): Sansa AMS: handle properly SD transfer errors ...
15:46:58saLOUthi all - just installed rb on my e240 v2 - works really fine, but: do Recoding from mic works? I could not find any menuoption...
15:47:04funmangevaerts: should I use make VERSION=6.0 from a trunk checkout ?
15:47:33funmansaLOUt: no, did you see ?
15:48:50gevaertsfunman: no. Download and use the bootloaders from there (those are the exact binaries that were tested). You need e200/PP5022.mi4 and c200/firmware.mi4 from that. sansapatcher versions are in the source, and are correct anyway
15:49:45saLOUtfunman: ok
15:50:54 Join n1s [0] (n=n1s@rockbox/developer/n1s)
15:51:01saLOUtbtw: rockbox is awesom - thx for such a great piece of sotware...
15:52:03funmanyou're welcome ;)
15:53:29 Quit Kohlrabi (Nick collision from services.)
15:53:31 Join Kohlrabi [0] (
15:53:40 Quit Kohlrabi (Nick collision from services.)
15:53:47 Nick Kohlrabi_ is now known as Kohlrabi (
15:56:34funmangevaerts: sansapatcher binaries are in your mailbox
15:58:33 Join Kohlrabi_ [0] (
15:59:32saLOUtFor what do i have the empty folder ##MUSIC# in my root-directory?
15:59:59funmansaLOUt: it's created by the Sansa (OF) Original Firmware, so it's not on topic on this channel
16:02:41saLOUtfunman: can i delete these folders?
16:03:20funmansaLOUt: if you want to discuss about this come on #rockbox-community because it's not on topic here
16:03:35saLOUtthx for the link..
16:03:40bertrikfunman, but it's *rockbox* that shows them
16:04:56 Quit robin0800 (Read error: 110 (Connection timed out))
16:05:43 Join robin0800 [0] (
16:06:03CIA-71New commit by teru (r21774): clix: fix bug that game isn't over when no move is possible. ...
16:06:23funmanbertrik: true, is it possible to hide some files from the filebrowser with a configurable list ? (like database.ignore)
16:07:21bertrikI mean, rockbox must be doing something special with it, because these directories are not visible on windows and linux IIRC
16:07:27gevaertsfunman: thanks!
16:07:55 Join fdinel [0] (n=Miranda@
16:08:28bertrikI wonder if we can do something with these directories to prevent the OF updating its database after transferring files
16:08:52funmanbertrik: I think it's some property of the directory entry of the FAT filesystem
16:09:58n1sthey are probably "superhidden"
16:10:19n1sor protected operating system files or w/e windows calls it
16:10:48funmani doubt ls on linux will hide protected operating system files
16:11:10n1sthey don't show on linux either?
16:11:58n1sah, dont't know then, does ls respect the regular hidden flag?
16:12:05CIA-71New commit by bertrik (r21775): S5L8700: mask away status bits from ADC conversion result
16:13:39 Quit Thundercloud (Remote closed the connection)
16:13:40 Join Deesl [0] (n=subhro@unaffiliated/deesl)
16:14:00gevaertsfunman: can you do the same in rbutil/e200rpatcher? That one needs gevaerts/bootloader.bin"> to build. It also needs libusb, and I'm not sure how that is handled :\
16:15:12gevaertshm, sansapatcher for mac is distributed as a .dmg file...
16:15:26*gevaerts thinks that mac people are difficult
16:15:32 Join efyx_ [0] (
16:16:14funmanperhaps lambdacalculus37 can add a new Makefile rule for creating a disk image
16:17:10kugelbertrik: they show because they have the volume bit set
16:17:24Deeslgevaerts: mac people difficult eh??!! :)
16:17:30kugelrockbox shows volumes in the filebrowser, while linux & windows dont
16:18:00gevaertsfunman: maybe. Anyway I think we're probably better of waiting for him to do the builds. He probably knows how :)
16:18:02funmangevaerts: perhaps it's better to wait advice from a mac person (which i am not)
16:18:48gevaertsfunman: the multiarch sansapatcher binary you built works anyway (I have access to a mac, but I can't do things like installing dev tools on it)
16:19:35gevaertsDeesl: yes :)
16:20:03Deeslgevaerts: that is so not true. I take it this way, every platform has its own pros AND cons
16:20:13Deeslso does windows so does linux and so does mac
16:20:16Deeslbut it could just be me
16:20:35Deeslbtw I am a mac person
16:20:38Deeslwhats the issue here?
16:20:57kugelhmm, if it says that 15k cpu seconds are wasted, does that mean we approximately could be finished 15k / <number of cients> earlier?
16:21:13 Join mc2739 [0] (
16:21:33kugelhm, not that doesn't seem to make sense
16:22:09pixelmagevaerts: speaking of Macs... I couldn't connect my c250 recently to it in Rockbox USB while OF worked (went by "it appears automatically on the screen" since I don't know much about Macs and nobody was willing to help me find out more)
16:23:37funmanDeesl: application packaging (a plain executable file doesn't seem to be enough for distribution on macosx)
16:23:41pixelmafirst running an old version before the USB ID change, then updated and there was no change
16:24:12Deeslfunman: yes that is correct
16:24:17kugelwasn't there some weirdness with the c250 pid/vid?
16:24:19Deeslyou need to repackage it as a DMG
16:24:53kugelI seem to remeber the c250 MSC was listed incorrectly on DeviceDetection
16:25:27DeeslI am not sure whether there is any utility to perform the packaging on non Mac systems
16:25:32Deeslbut you can do about Xcode
16:26:35Deesli mean do it in Xcode
16:26:48pixelmakugel: hence my statement that I tried both
16:27:10kugeloh I didn't see that, sorry
16:27:18funmanDeesl: i am used to command line tools so dependency on Xcode is not nice
16:27:20Deeslfunman if you wish I can build the DMG for you
16:27:22Deeslif you give me the binaries
16:27:31CIA-71New commit by funman (r21776): Sansa AMS: panic with the PL180 controller status register in case of errors ...
16:27:35Deeslfunman: there are command line equivalents to Xcode as well
16:27:53DeeslI mean Xcode has a full suite of command line tools as well
16:27:56Deeslsorry about my english
16:28:02Deesli am not a native english speaker
16:28:08gevaertsDeesl: the main problem I see with macs is that they are popular enough to not be easily ignorable, but in this sort of project you don't often find developers who use macs
16:28:28Deeslgevaerts: I do not deny to what you say
16:28:41Deesldevelopers in macs ARE rarer than non macs
16:28:55Deeslthere are substancial number of users though
16:29:22 Quit _0x90u[Sleep] (Read error: 110 (Connection timed out))
16:29:35Deeslbrb in a few moments.. someone at door....
16:29:41gevaertsthat's also a problem with windows, but because it's more popular, it's less of a problem
16:30:32gevaertspixelma: I'll see what happens here
16:30:32domonokyfor creating a .dmg you could look at the script in rbutil/rbutilqt/
16:31:31domonokyfunman: the tool for creating a .dmg is "hdiutil"
16:32:15funmani'm trying to understand its use
16:33:31funmanit needs a folder as a source, not a single file
16:33:51 Quit saLOUt (Remote closed the connection)
16:35:00Deeslfuman yes
16:35:09Deeslyou can consider dmg as a archived version
16:35:20Deeslyou need to point it to the build directory
16:35:29Deeslthe one created on compilation using Xcode
16:35:29funmangevaerts: please check if the .dmg i sent to you looks fine in OSX file browser
16:36:05Deeslfunman I am on leopard
16:36:09Deeslso just incase....
16:36:37gevaertsfunman: on my way :)
16:40:01pixelmakugel: will the posted pla_rework patch still apply to a current SVN?
16:40:17kugelI think it should
16:41:45gevaertsfunman: it works fine. Maybe rename that sansapatcher-mac file to sansapatcher though
16:41:47CIA-71New commit by bertrik (r21777): S5L8700: add skeleton for __dbg_hw_info and __dbg_ports items in the debug menu
16:42:03gevaertspixelma: I just tried a current build on c200 on this mac, and it works
16:42:58gevaertsfunman: would that dmg thing be easy to put in the makefile?
16:43:13funmanyes, i'm doing it
16:43:19gevaertsgreat :)
16:43:38 Quit robin0800 (Read error: 60 (Operation timed out))
16:46:12CIA-71New commit by funman (r21778): sansapatcher: new sansapatcher.dmg creation rule for OSX
16:48:27 Quit efyx_ (Remote closed the connection)
16:48:46 Join efyx_ [0] (
16:49:33pixelmagevaerts: so what can I do to help what's going on? (I only have access to the Mac at work and only the time to try something afterwards - and need to be guided a lot, I guess :\ )
16:50:00pixelma+finding out
16:50:46 Quit vedlith (Read error: 110 (Connection timed out))
16:52:38 Quit trisiak (
16:52:38 Quit Ridayah (
16:52:38 Quit Llorean (
16:52:38 Quit tmzt (
16:54:28NJointrisiak [0] (
16:54:28NJoinRidayah [0] (
16:54:28NJoinLlorean [0] (n=DarkkOne@rockbox/user/Llorean)
16:54:28NJointmzt [0] (
16:54:45funmangcc reports undefined symbol _strerror$UNIX2003 , i'm not sure where this one is defined (not in -lc)
16:56:06***Saving seen data "./dancer.seen"
16:56:16gevaertspixelma: does 3.3 work?
16:57:21*gevaerts thinks that this might be related to HID, but he isn't sure at all
16:58:01pixelmahaven't tried, just r21287M-090615 and then updated to r21718
16:58:56pixelmais HID disabled in the release?
16:59:26 Join robin0800 [0] (
16:59:36gevaertsyes and no. It's enabled, but it doesn't send events
16:59:55gevaertsI'm pretty sure that that won't make a difference though, unless you press buttons
17:00:25bertrikhm, the power management chip in the meizu allows charge current measurement, I hope this is available to the SoC
17:01:13 Quit Best_ (Read error: 110 (Connection timed out))
17:02:10gevaertspixelma: one thing that's probably worth trying is, which will fully disable HID when in storage mode (it will still enumerate as HID for charging-only)
17:02:12pixelmahrrmmm... there is a problem with the WPS context menu on long select when select is also used for a lot of button combos - you can make sure that it isn't triggered when holding select for too long if someone tries the combo by adding a BUTTON_REL but then you don't know if you already held sekect long enough for the context menu until you release the button... :\
17:02:35pixelmaselect too
17:02:44 Quit DarkDefender (Remote closed the connection)
17:02:57 Quit Deesl ()
17:03:03pixelmagevaerts: going to try somewhen next week then
17:03:11gevaertspixelma: I can send you a build for that if you like. I have it here anyway
17:04:17markunbertrik: should that be connected to the ADC?
17:04:47bertrikmarkun, I'm looking at the M6 schematic now and trying to make sense of all the power signals
17:05:12 Join DarkDefender [0] (
17:05:12pixelmagevaerts: going to build one now, one patch more or less won't hurt and since I have to wait till I get the chance to try, I'm not in a hurry
17:05:13bertrikdoes the M6 have an 'enter' button? (that also doubles as a power-on)?
17:05:22gevaertspixelma: ok :)
17:05:33markunwell, the M6SL does
17:05:39markunthe M6SP has 2 buttons
17:05:51markunand the schematics are from the SP
17:07:11 Join Sajber^ [0] (
17:12:19bertrikI'd like to implement/stub stuff so I can build a normal rockbox image for the meizus
17:13:02gevaertshm, who built e200rpatcher for windows last time?
17:15:26 Join domonoky1 [0] (
17:16:18 Quit ReKleSS ("Leaving")
17:20:17 Join kugel__ [0] (
17:20:31 Quit kugel (Nick collision from services.)
17:20:35 Nick kugel__ is now known as kugel (
17:22:36funmangevaerts: i could build a e200rpatcher.dmg
17:23:44gevaertsfunman: thanks! Let's hope it actually works. I have no e200r to test...
17:24:02CIA-71New commit by funman (r21779): e200rpatcher: new e200rpatcher.dmg creation rule for OSX
17:24:41mc2739funman: yellow with r21776
17:24:59 Join n00b81 [0] (n=taylor@unaffiliated/n00b81)
17:27:01CIA-71New commit by funman (r21780): fix yellow : panicf() is declared in panic.h
17:27:02funmanmc2739: thanks
17:27:19mc2739you're welcome
17:27:45funmanI think a rule in e200rpatcher/Makefile for building libusb would be nice
17:31:05 Join Thundercloud [0] (
17:32:50 Quit domonoky (Read error: 110 (Connection timed out))
17:35:26 Quit funman ("free(random());")
17:36:31 Join linuxstb [0] (n=linuxstb@rockbox/developer/linuxstb)
17:36:35 Join robin0800_ [0] (
17:37:03pixelmakugel: it doesn't apply cleanly anymore - one hunk failed in mazezam (I think Ubuntuxer changed something there recently)
17:39:26pixelmaor some of the new ports
17:42:24 Join dash32 [0] (
17:43:11 Join at0m [0] (
17:43:33 Quit robin0800 (Read error: 110 (Connection timed out))
17:44:10 Join sitwon [0] (
17:45:10kugelok, I'll have a look
17:45:31 Join BryanJacobs [0] (
17:54:00 Quit teru ("Quit")
18:00:52 Quit yosafbridge (Read error: 104 (Connection reset by peer))
18:03:37 Join yosafbridge [0] (
18:05:34 Quit Kopfgeldjaeger (Read error: 104 (Connection reset by peer))
18:06:52*bertrik doesn't understand the pfn_unregister mechanism for timers in rockbox
18:07:00bertrikI'll just copy what the other drivers do ...
18:10:19bertrikthe 'start' argument seems to indicate that the timer has to stop
18:10:54pixelmakugel: am I right that the changes in that hunk mean "use actions from pluginlib_actions.h except for the 3rd gen Ipod" and the patch was just from before the addition of the Fuze pad etc. which now define their own? If those shall use the lib actions now too, I only need the IPOD_3G_exceptions, right?
18:12:35kugelI think the ipod 3g uses his own mapping, but that was before me (a patch by Ubuntuxer)
18:12:59gevaertsBagder, Zagor: is my attempt at implementing what I proposed earlier. Not tested yet
18:14:30pixelmakugel: the Fuze, e200, Ipod 1g2g and the Ipod 4g pad which currently got own exceptions recently (which is probably why the hunk fails)
18:16:14pixelmadue to
18:16:59pixelmawhich is probably still not in the manual....
18:17:34pixelmaand Ubuntuxer seldom around
18:19:13 Join toffe82 [0] (
18:24:30kugelpixelma: but yea, you're right
18:24:55kugelI was looking at a picture of a 3G and decided it might be better w/o pla
18:28:30 Nick Horschti is now known as Horscht (n=Horscht2@xbmc/user/horscht)
18:31:09 Quit Thundercloud (Remote closed the connection)
18:31:35 Join wincent [0] (
18:32:35 Join Bas82 [0] (n=Sebas@
18:33:54 Join LambdaCalculus37 [0] (n=rmenes@rockbox/staff/LambdaCalculus37)
18:34:43 Quit n1s (Read error: 60 (Operation timed out))
18:35:28 Join fml [0] (n=4fd3df32@gateway/web/cgi-irc/
18:36:16fmlHello. SHould I bump the plugin API version if I change the type of a function parameter from int to int32_t?
18:38:13FlynDicemc2739: Do you get the uSD panic if you set CVDD to 1.10 also?
18:38:25kugelpixelma: I synced
18:39:01mc2739FlynDice: I have not tried 1.10v. What do I change to try that?
18:39:30kugel#define HAVE_ADJUSTABLE_CORE_VOLTAGE somewhere
18:39:54FlynDiceIt's the same failure that you were getting with voltage scaling. Your card was more sensitive than mine
18:40:23mc2739kugel: does that change the voltage to 1.10v or 1.05v
18:40:38kugelit just enables voltage scaling
18:40:54kugeli.e. 1.10V
18:41:39 Join mt [0] (n=mt@
18:46:22CIA-71New commit by alle (r21781): Improvements to the pitch screen UI (FS #10359 by David Johnston)
18:46:29 Quit Beta2K (Read error: 60 (Operation timed out))
18:46:44 Join kushalone [0] (n=kushal@
18:46:56pixelmakugel: woulod be nice if you could add in the comments that the patch is made with git now because that requires -p1 when applying (though one who looks into the patch before might see...)
18:47:09kugelah, sorry
18:47:36kugelnot that it matters though, it's pretty clear if it failed to apply the first time
18:48:12pixelmayeah, just for convenience
18:48:42 Join n1s [0] (n=n1s@rockbox/developer/n1s)
18:55:11kugelthe old system is gotton much slower, did anyone deattach his client?
18:55:21kugelthe new system is about 5min faster this way
18:56:07***Saving seen data "./dancer.seen"
19:01:17kugelfml: red!?
19:01:52mc2739FlynDice: same symptoms with cvdd at 1.10v
19:03:18kugelcan't we just boost when inserting?
19:04:18 Join toffe82_ [0] (
19:04:19mc2739I think you would need to boost on insert and also on any access
19:04:33kugelI'm not sure of that
19:04:51kugelanywhere, almost all fileaccess in rockbox are boosted anyway
19:05:17kugelso that the HDs in HD targets can spin-down asap (they way more power demanding than the cpu)
19:05:40mc2739if I insert with cpu boosted (i.e. cvdd = 1.20v) it works, if I then unboost, it hangs
19:06:22fmlkugel: yes. I don't see why. The error message is make: *** No rule to make target `pitchscreen.h', needed by `/home/rbclient/build-ipodcolorboot/firmware/sound.o'. What can be the reason?
19:06:27kugelmc2739: can you insert cpu_boost(true) and cpu_boost(false) in the if ( == SYS_INSERTED) block in ata_sd_as3525.c?
19:06:48kugelfml: apps/ code is completely ignored for bootloaders
19:07:00kugeland it should!
19:07:36fmlSo what? Is apps code used somewhere where it shouldn't?
19:08:19kugelin sound.c you include apps stuff (that's a nogo anyway)
19:08:26fmlAh, I see! pitchscreen.h is included in sound.c. Brrrr!
19:08:38kugeljust do the #defines in sound.h, and include that in pitchscreen
19:08:51mc2739kugel: did you mean ( == SYS_HOTSWAP_INSERTED) ?
19:08:57kugelmc2739: yes
19:10:12 Quit toffe82 (Read error: 60 (Operation timed out))
19:10:17 Nick toffe82_ is now known as toffe82 (
19:11:51kugelwe can also (un-)boost in sd_enable(), that won't even make a big difference runtime wise
19:12:51BryanJacobsthere doesn't seem to be a way for a codec to do something before buffering starts without changing the whole codec API
19:13:09BryanJacobsam I missing something, or do I have to add the callback to struct codec_header?
19:16:26CIA-71New commit by alle (r21782): Fix red in bootloaders
19:19:41 Join linuxguy4 [0] (
19:25:28 Quit robin0800_ (Read error: 110 (Connection timed out))
19:25:38 Quit pixelma (Read error: 104 (Connection reset by peer))
19:25:38 Quit amiconn (Read error: 104 (Connection reset by peer))
19:25:54 Join pixelma [50] (n=pixelma@rockbox/staff/pixelma)
19:25:59 Join amiconn [50] (n=jens@rockbox/developer/amiconn)
19:27:26LambdaCalculus37Quick patch question... I want to create a patch for the SA9200 plugin keymap work I've done so far. What's a quick way of creating a diff of all of the files in apps/plugins without having to enter each and every single filename at the command line?
19:27:47kugelsvn diff apps/plugins
19:27:48gevaertssvn diff apps/plugins
19:28:02LambdaCalculus37Of course. :)
19:28:09LambdaCalculus37And tools/configure, as well. :)
19:28:10kugelsvn help is also nice
19:28:48 Quit mt (Read error: 113 (No route to host))
19:29:16LambdaCalculus37It's not done yet, but I'll post what I have so far.
19:31:41 Quit n1s (Read error: 104 (Connection reset by peer))
19:31:56 Join n1s [0] (n=n1s@rockbox/developer/n1s)
19:32:02LambdaCalculus37Patch is up at FS #10431 and is still being worked on.
19:32:13fmlDoes sansa m200 have the pitch screen?
19:32:24 Quit amiconn (Read error: 104 (Connection reset by peer))
19:32:24 Quit pixelma (Read error: 104 (Connection reset by peer))
19:32:34 Join pixelma [50] (n=pixelma@rockbox/staff/pixelma)
19:32:39 Join amiconn [50] (n=jens@rockbox/developer/amiconn)
19:33:16LambdaCalculus37fml: I don't know.
19:34:41 Join Blue_Dude [0] (n=chatzill@
19:34:54fmlI protected some #defone's with #ifdef HAVE_PITCHSCREEN and that gives compile errors for sansa m200. Either my protection is wrong or the config.h for sansa m200 lacks #define HAVE_PITCHSCREEN
19:36:24 Quit linuxguy3 (Read error: 110 (Connection timed out))
19:36:35gevaertsfml: any idea why apps/tdspeed.c isn't guarded by #ifdef HAVE_PITCHSCREEN at all?
19:36:52mc2739kugel: boost on insert fixed the panic but it still hung when accessing the microsd. I added boost on sd_transfer_sectors() and the fixed access hangs. Here is the diff −−
19:37:39kugelmc2739: Clip owner reported problems with internal flash also
19:37:49kugelI think just boosting in sd_enable does the job
19:38:05fmlgevaerts: no, no idea. I'll uncomment the #defines for sansa m200v4. They are present for sansa m200, so I assume they should also be present for v4
19:39:07gevaertsfml: probably. Someone at some point should find fix this for real though
19:39:22 Join flydutch [0] (
19:39:31fmlgevaerts: yes. I'll do the smallest possible fix for now.
19:39:59gevaertsindeed. This isn't new after all
19:40:55CIA-71New commit by alle (r21783): Fix red for sansa m200v4 (it also should have the pitchscreenif sansa m200 has it)
19:41:58 Join Kopfgeldjaeger [0] (
19:42:33 Quit mcuelenaere_ (Remote closed the connection)
19:45:44 Quit bmbl ("Bye!")
19:46:24 Join petur [0] (
19:46:30 Quit n00b81 ("Leaving")
19:48:03 Join pixthor [0] (n=48c1aacc@gateway/web/cgi-irc/
19:50:15 Quit pixthor (Client Quit)
19:50:51mc2739kugel: boost in sd_enable works good also −−
19:53:58fmlYyesssss! No red!
19:56:15 Quit thegeek (Read error: 104 (Connection reset by peer))
20:01:41 Quit linuxstb (Remote closed the connection)
20:02:38 Quit dash32 (Remote closed the connection)
20:04:59 Join n00b81 [0] (n=taylor@unaffiliated/n00b81)
20:05:44 Quit Kopfgeldjaeger (Read error: 113 (No route to host))
20:05:44 Quit fml ("CGI:IRC (EOF)")
20:07:14 Join dash32 [0] (
20:07:48 Join Kopfgeldjaeger [0] (
20:08:38bertrikwow, did m200v4 get really that much bigger (4838) than the other targets?
20:12:30 Join linuxstb [0] (n=linuxstb@rockbox/developer/linuxstb)
20:14:17kugelBagder: heh, nice
20:15:08mc2739Bagder: in case you didn't see it the other day, e200v2sim is not in the build table
20:29:25 Quit Blue_Dude ("ChatZilla 0.9.85 [Firefox 3.0.11/2009060215]")
20:29:31CIA-71New commit by bagder (r21784): Added "SanDisk Sansa e200v2 - Simulator"
20:35:37LambdaCalculus37Bagder: Can you add the GoGear SA9200 to the build table?
20:36:02Bagdernormal only, or?
20:36:15LambdaCalculus37Bagder: Normal for now.
20:36:22LambdaCalculus37Bagder: lowlight was asking about that earlier.
20:37:52rasherThe sim compiles also
20:38:16CIA-71New commit by bagder (r21785): Added Philips SA9200 normal build, add added sa9200 and e200v2sim to the scores
20:39:38Bagderanyway, I hope this will show you all how easy it is to add new builds now...
20:40:25BagderI'll need to fix the script for the sizes too though
20:40:59 Quit LambdaCalculus37 ("Fwump")
20:42:12 Quit n1s (Read error: 110 (Connection timed out))
20:42:38Unhelpfulis one of the build system folks around? i think i need a bit of help with a rule for generated headers. they'd be generated from c source files, but the files in question will not be compiled and linked into rockbox. i guess i'd run a mkdepfile for these files, and there'd need to be some new expressions in mkdepfile to fix up the targets and dependcies for them?
20:43:45*bertrik is trying to come up with meaningful names for the meizu m3 buttons
20:48:40BryanJacobslinuxstb: I'm having some trouble adding a second codec entry point
20:49:46BryanJacobsand buffering happens before codec_main gets called, so for the moment I'm putting the custom buffering functions in the rockbox core instead of the codec dlobject
20:50:58linuxstbBryanJacobs: You have to put it in the core - the codec may not be loaded at buffering time.
20:52:50BryanJacobsalright then :-)
20:56:09***Saving seen data "./dancer.seen"
20:57:27bertrikhah, the meizu m3 could be the first target without left/right buttons
20:58:15Unhelpfulwoo, i've successfully added a ASMDEFS_SRC, and deps handling for it. now i just need a rule for building *_asmdefs.h from *_asmdefs.c :)
21:02:31CIA-71New commit by rasher (r21786): Add some more sims that actually compile
21:08:50 Join p3tur [50] (n=petur@rockbox/developer/petur)
21:15:40 Quit dash32 ("Verlassend")
21:36:30gevaertsBagder: did you see my proposed patch for the build system earlier?
21:36:40 Join saLOUt [0] (
21:36:44saLOUtin my file browser there a only directories shown... whats wrong?
21:37:23saLOUtapplications -> stats shows, that there are houndrets of files...
21:37:33rashersaLOUt: you set the file browser to only show direcotries
21:37:57saLOUtrasher: how do i deactivate that...
21:38:30rashersaLOUt: settings > file browser > something
21:39:00rasherShould hopefully be obvious once you get there
21:39:20saLOUtgot it
21:39:23saLOUtrasher: thx
21:40:00gevaertssaLOUt: have a look in the manual for the quickscreen if you want to know how you managed to change that
21:40:26rasherI increasingly of the opinion that this setting shouldn't be in the quickscreen by default
21:40:46gevaertsrasher: which option should be there in its place?
21:41:34rashergevaerts: Well there are plenty to chose from. I don't have a preference, but this sort of thing happens rather often
21:41:35*gevaerts isn't opposed to changing it (he never uses that option), but he isn't convinced that there's another option that will give less support issues
21:42:00 Join mc2739_ [0] (
21:42:17 Quit mc2739 (Nick collision from services.)
21:42:19 Nick mc2739_ is now known as mc2739 (
21:42:41 Nick n00b81 is now known as n00b81|afk (n=taylor@unaffiliated/n00b81)
21:42:44saratogai dislike some of the show files options, they seem to cause a lot of confusion compared to how usful some are
21:43:56linuxstbIsn't it mainly that they're in the quickscreen by default?
21:44:05gevaertsthat too
21:44:31linuxstbBut yes, I'm not sure who would want a "playlists only" view
21:44:38kugelnah, also that the default doesn't show hidden files
21:45:01gevaertskugel: I'm pretty sure that that is on purpose :)
21:45:31kugelbut this is why Rockbox doesn't show music for many people
21:45:32gevaertsbut yes, it's one of the things I always change
21:45:41linuxstbkugel: On a few targets, yes.
21:45:45gevaertss/many people/sansa users/, but yes
21:46:08*gevaerts thinks that maybe there should be special code somewhere for that special casew
21:46:12 Quit DarkDefender ("Leaving")
21:46:14 Join dash32 [0] (
21:46:52kugelgevaerts: many people == sansa users
21:47:23gevaertskugel: true, but people tend to read it as "most people" (I know, it's not the same...)
21:47:32gevaertsAnyway, it's a real problem
21:47:46kugelsaid "many" for a reason :/
21:47:58linuxstbWhat about ignoring the FAT hidden attribute, and just supporting "dot" ?
21:48:15*gevaerts votes for an extra setting "Don't show hidden files, except when called 'Music'"
21:48:27linuxstbgevaerts: Catchy name
21:48:30kugellinuxstb: I would vote for it
21:48:48*linuxstb doesn't know if showing iPod_Control would help or not...
21:48:49gevaertslinuxstb: that would work as well. As an extra option I'd say, so people who really use the FAT hidden attribute aren't left out
21:49:12gevaertslinuxstb: we can have different defaults on different targets
21:49:55*gevaerts apologises to kugel
21:50:15kugelif iPod_Control is hidden too, "most" would probably even true also
21:50:45gevaertskugel: is iPod_Control useful to see?
21:50:58gevaertsI know the files are there, but does that help?
21:50:58kugelalthough they'd probably still wonder where their music is
21:51:10 Quit saLOUt (Remote closed the connection)
21:51:37 Quit fdinel (Read error: 104 (Connection reset by peer))
21:52:06gevaertsAnyway, if we add the setting, we can still debate about the proper default on ipod later
21:52:25 Quit dash32 ("Verlassend")
21:52:28kugelI'd rather have linuxstb's solution though
21:52:35linuxstbkugel: People (even sansa users) can still find their music in the database. Maybe simply changing the default value for the existing setting to "all" on targets where the OF hides music is sensible though.
21:52:59linuxstbAlthough that exposes .rockbox...
21:53:03*linuxstb agrees with his earlier self
21:53:07gevaertskugel: yes, I agree. It's better than mine.
22:00:11CIA-71New commit by bertrik (r21787): Meizu M3: implement rudimentary button driver
22:05:20Unhelpfulhrm... i've added a pattern rule for %.h: %.c, but even trying to build the output .h file explicitly doesn't work - i just get a "nothing to be done for <file>"
22:05:45Unhelpfulshouldn't make pattern rules always run if the output file doesn't exist?
22:11:06linuxstbUnhelpful: Have you tried "make -d" ? That prints more information about what's going on. Or the −−debug option (see the Make manpage)
22:17:44gevaertsBagder: did you see my proposed patch for the build system earlier?
22:18:02Unhelpfullinuxstb: wow, that is *extremely* spammy :/
22:18:08BagderI saw a mention of it but I didn't read the details yet
22:18:28BagderI might have a bit too many projects going on atm
22:18:44gevaertsI'll poke Zagor if he appears then :)
22:19:01Bagderhe seems to be more into the new build stuff atm
22:19:33BagderI'll soon spend some more time with him and then we can coordinate some more I think
22:19:41Unhelpfulhrm... making the input %.asmdefs.c changes things, but not in a helpful way... now it claims there's no rule to make the output file. :/
22:19:51gevaertsI'd commit, but I haven't tested it at all..
22:20:13Bagderyeah, getting a sensible test is a bit tricky
22:20:28Bagderit's not hard to run your own server, but its' hard to get a fair test set of clients
22:20:36*Bagder moves that '
22:21:29gevaertsAlso, I suspect that there might be a cleaner way to do some of the bits, but that needs more perl knowledge than I have. Can you put function pointers (or something like them) in one of those struct lookalikes?
22:22:01Bagderyou can do "function pointers", yes
22:23:32gevaertsI think the sorting functions should be referenced directly from the client object, not in a (possibly lon)g if/else if sequence
22:24:02BagderI also have an idea that is similar to your idea
22:24:27Bagderit is to hand out builsd that have the same relative position in the build list as the client's relative position in the client list is
22:25:02Bagderso if the 20 out of 20 client ask for a build, it gets one from the lowest 5% of the builds
22:25:35kugelgevaerts: commit, test, revert if needed
22:26:15gevaertskugel: I need a Swede to activate the code and see if it doesn't crash, so talking first is needed anyway :)
22:26:23 Join tvelocity [0] (
22:27:42gevaertsBagder: I've been thinking about that as well. It could work, but I wasn't convinced if it would work well, and the other scheme seemed a bit easier to understand the implications of
22:28:36Bagderyes, and I'm also scared of "waiting" to hand out heavy builds for later
22:29:14BagderI mean, one or more "powerclients" could disconnect at any time
22:29:16gevaertsthat too. In my scheme I don't see us marking clients as "slow" unless they really are, so maybe at most 10% or so of them
22:29:40Unhelpfulhrm... make wouldn't be doing something funny because the target file is .h, would it?
22:29:44Bagderyeah, it needs to be dynamic so that they can be upgraded again if several non-slow clients disappear
22:30:30gevaertsThat's also the reason I didn't implement a "slow upload" class. That would just make those get the big upload builds later, which actually makes things worse
22:32:00gevaertsBagder: last night we had this big discussion about what to do with clients that are so slow that if they don't get a bootloader, they don't finish a build at all. Those were mostly what I had in mind. Upgrading them to "fast" isn't going to help much if a really fast build disappears
22:32:32Bagderwell, then imagine 4 fast clients disappearing. or 6. or 10
22:33:06BagderI just want a system that works basically as long as least one client is around
22:33:35gevaertsI agree, that's why classes in my scheme are just a different order, not a different set of builds
22:33:43Bagderah right
22:33:59 Join matsl [0] (
22:34:23gevaertsThe case where fast clients disappear might be slightly worse due to big uploads near the end, but that's about it
22:35:11Bagderoptimizing towards the most common scenario is still fine I think, as long as also handle the edge cases
22:35:33gevaertsi.e. my sheevaplug would really struggle with main builds (and sim builds if it did them), but if all other clients disappear (and you give it a few days), it will get there
22:39:32*gevaerts wanted a scheme that can degrades as gracefully as possible while keeping the allocation system simple
22:40:15Bagdera worthy goal indeed
22:40:32rasherCouldn't simply put the sim builds after normal builds? That way no order will have uploads last
22:40:50gevaertswell, I knew that you and Zagor would veto it if it didn't have those properties :)
22:41:59Bagderthe uploads are now scored += 10000 anyway, so they get the highest prio
22:42:24 Join CaptainKewl [0] (
22:42:34gevaertsrasher: one problem with sim builds in my case is that for e.g. my laptop I really can't guarantee that sdl will be installed at any given time, so I wouldn't have it do sim builds at all
22:43:10rasherWhat does the build system do if no client is available for a given build? (ie. no client with mipsel is online?)
22:43:21Bagderit will just not build those
22:43:27Bagderand end the round with unbuilt builds
22:43:40rasherAh. Could be worse
22:43:58Unhelpfuli see what the problem was... the target flattens things into $(BUILDDIR)/asmdefs, so naturally a rule for %.h: %.c won't match $(ROOTDIR)/apps/core.asmdefs.h with $(BUILDDIR)/apps/core.asmdefs.c
22:44:16Unhelpfulerm, swaps that last apps for asmdefs... but you get the idea :)
22:46:15 Join Zagor [242] (n=bjst@rockbox/developer/Zagor)
22:46:31Bagdernow quick, attack Zagor with crazy ideas!
22:46:38*Zagor ducks
22:48:14gevaertsZagor: Can you have a look at It's an attempt to support slow build clients usefully by having them get easy builds first, by sorting builds differently for different classes of clients
22:48:51 Quit BryanJacobs ("Java user signed off")
22:49:30ZagorIn general I'm not a fan of the client deciding these things.
22:49:51Bagderno, I think the server needs to decide
22:49:58gevaertsDiscussion at and
22:50:17domonoky1another "cracy" idea for the buildserver, would be to send the complete commands for all buildsteps (prepare="configure.." build="make" .. finish="make zip") from the server to the client. The it would be easy to adapt to build other things.. (ie rbutil for example).
22:50:25rasherThe criterium is rather easy "did we hand out builds to this client last round, but it didn't finish?"
22:50:36rasherfinish any*
22:50:44ZagorI'm thinking about testing with two categories: above average and below average. those below average simply get the low-score builds first, while those above the high-score builds.
22:51:37Unhelpfulif i add BUILDDIR and ROOTDIR to the rules, and stop flattening the source tree into /asmdefs... it seems to work, now i just need to fix the asmdefs2file function :)
22:51:52Zagorit would give slow clients a little breathing room at the start of the round, to have a chance of finishing a few builds at least. before the big dogs come chase them down.
22:52:29gevaertsZagor: I don't care too much about which side decides. What do you think about the idea of just using a different sorting order to define classes though? That's the main bit I think
22:52:32Zagoralso a vital thing is to change the stats presentation. number of builds is a crappy sort key. total build score is better.
22:52:51Zagorgevaerts: I think it's worth experimenting with
22:53:13gevaertsdomonoky1: I don't really like that. It would basically allow remote logins again, which was seen as one of the bigger problems with the old one
22:53:25 Quit kushalone (Success)
22:55:10gevaertsZagor: I'm pretty sure that the sortbuilds call should be inside the client loop whatever happens, since the sort criteria change during the loop (the allocation count)
22:56:11***Saving seen data "./dancer.seen"
22:56:20Zagorgevaerts: one would think so, but handoutbuilds is only called for multiple clients the first time. so it will only be an issue when we get more clients than builds.
22:56:29domonoky1gevaerts: true, it might be a bit dangerious. But maybe we could seperate the build steps into functions in the client, and just use another build function when the target is something like: "rbutil-w32" :-)
22:56:32gevaertsah ok
22:56:54amiconnQuite some delta for the pitchscreen stuff
22:57:31amiconnThe string isn't defined properly in english.lang. Only targets which have the pitchscreen should have those strings
23:05:49CIA-71New commit by amiconn (r21788): Those strings only apply to targets having the pitchscreen feature.
23:07:30 Quit p3tur ("Zzzzz")
23:09:15 Nick n00b81|afk is now known as n00b81 (n=taylor@unaffiliated/n00b81)
23:09:30 Nick linuxguy4 is now known as linuxguy3 (
23:09:43*gevaerts likes the idea of marking clients who didn't manage to finish a build as slow, but he doesn't understand the build master well enough to implement that
23:10:48Bagdercurrently the master saves no such state from the round before
23:12:04FlynDicemc2739: kugel: Your boost/unboost in sd_enable solution seems to work fabulously for me so far...
23:12:24kugelthat doesn't surprise me, actually
23:13:51kugelI think we can go that way. We boost on most sd transfers anyway (such as during buffering). It won't make transfers faster though I guess because we do dma.
23:13:58Zagorpersistent client knowledge doesn't feel terribly tempting to me. I think we can solve it without that.
23:14:06gevaertsno, and I'm not sure about the best way to add it. A fixed list is not a good idea at all, just adding client names to a list whenever they don't finish a build despite being connected during the entire round works to build the list, but it risks having all clients in the list after a while...
23:14:34gevaertsI don't think we need persistent knowledge, unless we're going to restart the server every few hours
23:15:19rasherJust remembering the last build round seems enough. I'm not sure you even need to include "despite being connected during the entire round"
23:15:22gevaertsThe first step is probably to keep track of the total build score of each client
23:15:39*amiconn grumbles
23:15:40rasherA few false positives now and then doesn't harm
23:16:44gevaertsrasher: if you just do it that way, half the time the slow clients did manage to build something during the previous round, i.e. a bootloader. It's a bit more complicated
23:16:47 Quit petur ("Zzzzz too!")
23:17:11ZagorI want to try simply splitting the client list in two based on the reported speed.
23:17:17rashergevaerts: Yeah, change it to "didn't manage to build a full build"
23:17:55rasherOr "scored less than n buildpoints" maybe
23:18:23saratogakugel: I've been wondering why the unboosted speed for AMS is what it is and not lower like on most targets?
23:18:57gevaertsZagor: that's certainly a good start
23:19:12kugelsaratoga: dma bypasses the cpu, so cpu speed doesn't matter. all other parts aren't affected by boosting
23:19:49saratogakugel: I mean why is it 60MHz and not ~30MHz like on PP
23:20:49kugel60MHz showed a good battery life time (better than 31MHz). FlynDice tested some settings
23:21:07saratogathe datasheet says the core uses 0.25mW per MHz, and we ought to be able to decode most formats at 30-40MHz, so we're wasting 5-7mW
23:21:09Zagornew score sort
23:21:18kugeland, particularly with voltage scaling, 60MHz will give better runtime due to less boosting
23:21:20saratogakugel: this was without voltage scaling?
23:21:36CIA-71New commit by amiconn (r21789): Properly ifdef the pitchscreen settings as well (aka fix red Player build).
23:22:10kugelsaratoga: we're not wasting if we needed to boost more often (and boosting raises the bar to 250MHz, which is much)
23:22:50saratogakugel: without voltage scaling, there should be no additional cost to boosting more frequently assuming the average clock speed doesn't change
23:22:58saratogathat fact that one was observed means something else is going on
23:23:21kugellast but not least, we decided for fastbus for unboosting, but that means we need all other peripherals clocked low too (dbop, sd, etc) and that affects UI performance
23:23:52 Part domonoky1
23:24:04 Join evilnick_home1 [0] (
23:24:10saratogawas all this testing pre-MMU?
23:24:40saratogabut it was all done by battery benches?
23:24:51kugelbefore that, tests below 200MHz were illogical
23:25:10kugelI'm not sure if the avarage is the same. constantly at 60, or switching between 30 and 250
23:25:48 Quit Bas82 ("Saliendo")
23:25:50kugelanyway, we should avoid boosting with voltage scaling, i.e. design the default clock so that it can handle typical codecs without boosting
23:25:57saratogayou said it was "better than 31MHz"
23:25:59 Quit matsl (Read error: 110 (Connection timed out))
23:26:11kugelyea, by several hours
23:26:16Bagderkugel: why avoid boosting?
23:26:35Bagderthat just implies that you're too high when not doing intense stuff, doesn't it?
23:26:56saratogait does imply that, but with voltage scaling consumption is no longer linear
23:27:08Bagderah yes
23:27:08kugel62MHz is a fine setting.
23:27:13saratogahowever the fact that we still an improvement with voltage scaling disabled, means that its still not linear, and I'd like an explination of that
23:27:18BagderI read "without" when he said "with" ...
23:27:29saratogawell its a fine setting except that we're still about 6 hours short of the OF on the Fuze IIRC :)
23:27:32kugelfor dbop for example, going below that immediately makes the UI more sluggish
23:28:02Bagderbut that's just the old argument for boosting when the ui is used...
23:28:03kugelwell, the OF apparently doesn't run ever at 250MHz
23:28:25saratogai suppose it doesn't ever do anything that needs that kind of clock speed
23:29:02kugelhence it never even raises the voltage
23:29:20kugelbut we want max. performance if plugins/codecs demand it, dont we?
23:29:31saratogakugel: how flexible is the DBOP clock speed? can we decouple it from the core clock if needed?
23:29:58Bagderkugel: no, we don't want "max performance" we want the longest battery life
23:30:07kugelBagder: FlynDice did a test with 31/192 and 62/248 IIRC, and the latter was better by several hours
23:30:18saratogatheres the old argument about a multi-teered boost system (i.e. mpegplayer and ape get a "boostreallyhard" function)
23:30:20Bagderyou're mixinig your arguments
23:31:13*pixelma wonders why accessing (for ViewVC) is reaallly slow
23:31:16 Join cxamer [0] (n=josephdy@
23:31:45rasherpixelma: Because you're in Germany?
23:32:00saratogai'm setup to do high voltage resolution, high time resolution measurements on AMS now, I think these should be done to explore in more detail what impact settings have on power
23:32:06gevaertsrasher: that's only amiconn!
23:32:17saratogabut I didn't follow the AMS clocking discussion all that closely
23:32:23rasherpixelma: Well, amiconn often has issues with rockbox servers, and I'm pretty sure I've seen other Germans complain about the same
23:32:39saratogacan we adjust the DBOP clock independently of the core clock for purposes of testing (even if it imposses a performance penalty)?
23:33:12pixelmathat's comparing how it worked here today. The speed issues amiconn and I saw as well from Berlin are related to that one provider
23:33:42amiconnRight now is rather slow for me too
23:33:43kugelsaratoga: no, we cant
23:33:49CIA-71New commit by alle (r21790): Remove an unneeded include
23:34:05kugelcore clock is always at least peripheral clock
23:34:09rasherSeems plenty fast for me
23:34:28saratogakugel: I thought there were two PLLs on AMS?
23:34:33amiconnIt's actually a bit unpredictable. Opening a page sometimes times out, and on retry it's quick
23:35:03Bagdertimes out!?
23:35:18Bagderthat's not only slow, that's insane
23:35:38rasherSomewhere between Germany and Sweden, something's terribly wrong
23:35:54gevaertsrasher: you mean in Denmark?
23:36:45saratogakugel: the datasheet shows that we can drive DBOP off of PLLB and the CPU off PLLA
23:36:45kugelBagder: have you seen the chart? 32/62 is way worse than 62/248
23:37:12Bagderit's not what I care about, I was just protesting against your description
23:37:51pixelmausually I don't have that problem (in Potsdam with a different provider never, as far as I remember) - and didn't see it here until now either (for 1.5 weeks, different provider again)
23:37:53kugelsaratoga: it also says that core clock is same or higher than ahb/ahp
23:38:36*amiconn has a patch for stack savings in various arm drivers which affects quite a number of targets
23:39:17amiconnI cannot test all of them (in fact I can only test a minority). I'm fairly sure nothing will break, but perhaps it should be tested on some more targets
23:39:40 Part cxamer
23:39:45 Quit evilnick_home (Read error: 113 (No route to host))
23:39:51pixelmaseems to be working ok again now, but I had timeouts before too. Just wondered if the server might be busy or so...
23:39:52kugelwe'll see stkovs quickly enough if you just commit it :)
23:40:13amiconnNo stovs, rather wrong behaviour (it's mostly gfx drivers)
23:41:32saratogakugel: looking into this more, i'm a little confused about the DBOP clock, why does it need to be 60MHz if the DBOP data rate is only a couple MHz?
23:42:16kugelWhat dbop data rate?
23:42:37saratogakugel: the DBOP output clock rate is max of 4MHz
23:42:38bertriksaratoga, the DBOP has LCD access cycles of 16 DBOP clocks
23:42:46kugelfps linearly increases with dbop
23:43:01gevaertsZagor: maybe the time spent on non-cancelled builds would be useful as well?
23:43:06saratogabertrik: could you explain that in more detail?
23:43:11 Quit Zagor ("Leaving")
23:43:13amiconnAffected targets: iPod G1..G4, Mini G1..G2, iPod Video, H10 big, Sansa c200, mrobe100, YH-820, YH-925, Hdd1630, Clip, e200v2, Fuze, Sansa e200, Gigabeat F/X/S, mrobe 500, Creative ZVM, Cowon D2
23:43:30amiconnAdditionally all ata based PP targets
23:43:44kugelwhich arm is not in that list?
23:44:34bertriksaratoga, for every data word out, it uses 16 DBOP clock periods
23:44:51gevaertsamiconn: what sort of breakage are you looking for? Would it be obvious with just building and booting?
23:46:11amiconnkugel: The Meizus, iAudio 7, Sansa m200 (various versions), c100, logixdax, iFP7xx, iPod Nano, iPod Color, Tatung Elio, H10 small, SA9200
23:46:31amiconngevaerts: Gfx errors, possibly crashes (very unlikely)
23:46:52kugelboth should be pretty obvious
23:47:04saratogabetrik: ok I see, what an odd design
23:47:13amiconnFor greyscale targets also test greylib (the current patch only touches firmware/, but the greylib has a special support function there), for colour targets also test mpegplayer (yuv blitting)
23:47:37gevaertsI can test some tomorrow (mini G2, ipod video, sansa c200, mr100, clip, e200, gigabeat F/S, mr500, D2)
23:47:38amiconniPod G1/G2, Mini G2, c200, and Beast I can test myself
23:48:03bertrikyou can program the control lines to go high or low within this 16 period cycles, as far as I know you can not shorten this access cycle (but you can select an even longer 32 period cycle)
23:48:20amiconnBeast, Gigabeat F/X, e200 and some other all use the same asm file (lcd-as-memframe.S), so testing one of these should be enough
23:49:08amiconne200v2 and fuze also share a file, as well as the greyscale ipods, but in the latter there are 3 code paths
23:49:27 Quit daurn (Read error: 113 (No route to host))
23:49:33amiconnFor those I would be interested in a mini G1 test, with display flip enabled
23:51:13saratogabertrik: how odd that they made a 16 bit bus and then force you to spend 16 cycles loading it, rather then just use a 1 bit bus and send one bit per cycle
23:53:02kugel1bit per cycle would be rather slow
23:54:44kugelthat would only be 1.5MB/s, but we do 8MB/s
23:55:27amiconnHrrr, what's up with pastebin?
23:56:53 Join mc2739_ [0] (
23:57:11 Quit mc2739 (Nick collision from services.)
23:57:12amiconn This patch makes use of the fact that r12 is a scratch reg
23:57:13 Nick mc2739_ is now known as mc2739 (
23:58:05Unhelpfulamiconn: i have asmdefs working... as a bonus this can remove all of those #ifdef HAVE_LCD_COLOR from jpeg asm, since it will just use #pix8_size*(x)
23:58:27 Quit mc2739 (Read error: 104 (Connection reset by peer))
23:58:43amiconnThis patch only touches firmware/; apps/ will follow in a separate patch/commit
23:58:49 Join mc2739 [0] (

Previous day | Next day