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 2010-11-20

00:03:31 Quit ender` (Quit: A computer program will always do what you tell it to, and seldom what you want it to.)
00:06:50kugelgrml, I can't use apache v2 code in rockbox (?)
00:07:41 Quit LambdaCalculus37 (Quit: Fwump)
00:08:20saratogagoogle says its GPLv3, not v2, so you probably shouldn't
00:10:25 Quit user890104 (Read error: Connection reset by peer)
00:10:33 Join user890104 [0] (
00:10:56 Join freddyb [0] (
00:10:57kugelthis is xml, I can't just re-implement it without ending up with the exact same (besides indentation maybe)
00:11:16 Quit freddyb (Client Quit)
00:13:53saratogaassuming you re-implement it without copying from the old to the new you're ok
00:14:25saratogaso i guess make a note of the fields and then construct an XML file to store them using your knowledge of XML file structure
00:18:26 Quit Buschel (Ping timeout: 255 seconds)
00:25:44 Join Buschel [0] (
00:27:24 Join user890104_ [0] (
00:27:57 Quit user890104 (Read error: Connection reset by peer)
00:27:59 Quit user890104_ (Read error: Connection reset by peer)
00:28:06 Join user890104 [0] (
00:30:30 Quit bertrik (Quit: :tiuQ)
00:33:18Buschelimho it is a good assumption that FS #11627 is a duplicate of FS11608. any objections to close FS #11627?
00:40:27 Quit user890104 (Ping timeout: 272 seconds)
00:44:20 Quit sideral (Quit: Leaving.)
00:49:10 Part toffe82_
00:51:27 Quit krazykit (Quit: brb locally)
00:51:50 Join krazykit [0] (
00:53:21***Saving seen data "./dancer.seen"
01:02:19 Quit Buschel (Ping timeout: 240 seconds)
01:02:59 Quit {phoenix} (Remote host closed the connection)
01:16:17 Quit BlakeJohnson86 (Quit: Leaving.)
01:23:17 Quit ReimuHakurei_ (Quit: Leaving)
01:24:15 Join ReimuHakurei [0] (~reimu@
01:25:57 Join BHSPitMonkey [0] (~stephen@unaffiliated/bhspitmonkey)
01:26:23 Quit factor (Ping timeout: 255 seconds)
01:29:35 Join BlakeJohnson86 [0] (
01:31:05 Quit DerPapst (Quit: Leaving.)
01:31:17 Quit Kupop (Ping timeout: 264 seconds)
01:46:31 Quit kugel (Ping timeout: 252 seconds)
01:46:51 Quit S00row (Read error: Connection reset by peer)
01:49:24 Join S00row [0] (
01:55:09 Join Boldfilter [0] (
02:00:59 Quit domonoky1 (Read error: Connection reset by peer)
02:01:09 Quit GeekShadow (Quit: The cake is a lie !)
02:15:20 Quit dfkt (Quit: -= SysReset 2.53=- Sic gorgiamus allos subjectatos nunc.)
02:20:08 Join Loto_ [0] (
02:22:46 Quit Loto (Ping timeout: 240 seconds)
02:33:48 Quit InsDel (Read error: Connection reset by peer)
02:40:34 Quit xxcv ()
02:45:51 Join LambdaCalculus37 [0] (~rmenes@rockbox/staff/LambdaCalculus37)
02:45:52 Quit S00row (Read error: Connection reset by peer)
02:47:19 Join S00row [0] (
02:53:23***Saving seen data "./dancer.seen"
03:22:34 Quit BHSPitMonkey (Read error: Connection reset by peer)
03:33:01 Quit liar (Quit: Leaving)
03:38:24 Quit madalu (Remote host closed the connection)
03:48:14 Join factor [0] (
03:54:10 Join anewuser [0] (anewuser@unaffiliated/anewuser)
03:56:14 Join InsDel [0] (
03:57:56 Quit S00row (Read error: Connection reset by peer)
04:00:31 Join S00row [0] (
04:03:02 Quit bluebrother (Disconnected by services)
04:03:03 Join bluebroth3r [0] (~dom@rockbox/developer/bluebrother)
04:15:36 Join Barahir [0] (
04:19:41 Quit Barahir_ (Ping timeout: 276 seconds)
04:24:07 Quit anewuser (Ping timeout: 240 seconds)
04:34:58 Join anewuser [0] (anewuser@unaffiliated/anewuser)
04:37:00 Quit ReimuHakurei (Quit: Leaving)
04:37:12 Join ReimuHakurei [0] (~reimu@
04:46:20 Quit dys (Ping timeout: 276 seconds)
04:46:28 Join dys [0] (
04:51:32 Quit TheSeven (Ping timeout: 276 seconds)
04:53:27***Saving seen data "./dancer.seen"
04:54:29 Join S_a_i_n_t [0] (S_a_i_n_t@
04:54:44 Join TheSeven [0] (~TheSeven@rockbox/developer/TheSeven)
04:54:45saratogaoh hell i just converted a filter to ASM that isn't actually used
04:57:38 Quit amiconn (Disconnected by services)
04:57:38 Join amiconn_ [0] (quassel@rockbox/developer/amiconn)
04:57:39 Quit pixelma (Disconnected by services)
04:57:41 Join pixelma_ [0] (quassel@rockbox/staff/pixelma)
04:57:43 Nick pixelma_ is now known as pixelma (quassel@rockbox/staff/pixelma)
04:57:58 Nick amiconn_ is now known as amiconn (quassel@rockbox/developer/amiconn)
04:58:11 Quit LambdaCalculus37 (Quit: Zzzzzzz)
05:01:31 Quit S_a_i_n_t (Ping timeout: 240 seconds)
05:34:08 Quit ps-auxw (Ping timeout: 255 seconds)
05:41:20 Quit clone4crw (Ping timeout: 245 seconds)
05:43:32 Join clone4crw [0] (
05:44:07 Quit anewuser (Ping timeout: 240 seconds)
05:45:29 Join ps-auxw [0] (
05:45:40 Quit clone4crw (Client Quit)
05:48:28 Join froggyman [0] (~seth@unaffiliated/froggyman)
05:52:45 Quit panni_ (Quit: ( :: NoNameScript 3.81 :: ))
06:07:36 Quit InsDel (Read error: Connection reset by peer)
06:25:07 Join ReimuHakurei_ [0] (~reimu@
06:25:09 Quit ReimuHakurei_ (Client Quit)
06:53:28***Saving seen data "./dancer.seen"
06:57:26 Join xxcv [0] (
07:01:55 Quit froggyman (Read error: Connection reset by peer)
07:04:04 Join froggyman [0] (~seth@unaffiliated/froggyman)
07:10:52 Join Horschti [0] (~Horschti@xbmc/user/horscht)
07:11:48 Join mordocai [0] (~mordocai@
07:14:06 Quit Horscht (Ping timeout: 265 seconds)
07:23:07mordocaiJust dobule checking, but it looks like rockbox does not support iRiver e200's?
07:25:58saratogai've never even heard of that player
07:27:56mordocai :P. It looks pretty nice to me. Luckily it already plays .ogg, so I wouldn't -have- to use rockbox to get ogg to work. (I assume rockbox makes ogg work?). [I'm looking into what portable music player to buy]
07:29:53Sundiveririver was making pretty neat players
07:30:30mordocaiSundiver: Was?
07:30:48SundiverWell, I meant flash players
07:31:01saratogaif you guys want to talk about iriver, go over to rockbox-community
07:31:39SundiverI just finished theme for RB for my clip+
07:32:23 Part mordocai ("Leaving")
07:32:27saratogadoes anyone understand pipeline scheduling on arm11 particularly well?
07:32:32saratogai'm confused by their diagrams
07:32:44SundiverI'm not
07:33:14Sundiverarm has awful datasheet
07:34:57SundiverBTW, can I just delete unused plugins, themes from my player?
07:36:59SundiverThanks saratoga!
07:46:22 Quit Boldfilter (Quit: Boldfilter)
08:09:33 Quit xavieran (Remote host closed the connection)
08:12:04 Join xavieran [0] (
08:13:39 Join stoffel [0] (
08:14:18 Quit JesusFreak316 (Ping timeout: 245 seconds)
08:39:08 Quit xxcv ()
08:53:31***Saving seen data "./dancer.seen"
08:54:24 Join Buschel [0] (
08:57:44 Quit stoffel (Remote host closed the connection)
08:59:08 Quit Buschel (Ping timeout: 240 seconds)
09:20:43 Quit amiconn (Remote host closed the connection)
09:20:43 Quit pixelma (Remote host closed the connection)
09:25:23 Join amiconn [0] (quassel@rockbox/developer/amiconn)
09:25:26 Join pixelma_ [0] (quassel@rockbox/staff/pixelma)
09:25:28 Nick pixelma_ is now known as pixelma (quassel@rockbox/staff/pixelma)
09:26:57 Join Rob2223 [0] (
09:30:24 Quit Rob2222 (Ping timeout: 276 seconds)
09:30:27 Join Kupop [0] (
09:33:29 Join bertrik [0] (
09:33:29 Quit bertrik (Changing host)
09:33:29 Join bertrik [0] (~bertrik@rockbox/developer/bertrik)
09:51:08 Quit Horschti (Read error: Connection reset by peer)
09:51:30 Join Horscht [0] (
09:51:30 Quit Horscht (Changing host)
09:51:30 Join Horscht [0] (~Horschti@xbmc/user/horscht)
09:52:08 Quit S00row (Read error: Connection reset by peer)
09:54:23 Join S00row [0] (
09:59:03 Quit sasquatch (Quit: WeeChat 0.3.2)
09:59:29 Join sasquatch [0] (
10:08:32 Join Buschel [0] (
10:15:37 Join xxcv [0] (
10:21:27 Join kevku [0] (~kevku@2001:7d0:0:f000::135d)
10:23:22Buschelare there any thoughts, comments or ideas regarding FS #11753 (alignment definition/usage)?
10:30:20 Join JdGordon [0] (~jonno@rockbox/developer/JdGordon)
10:30:42 Quit Buschel (Ping timeout: 276 seconds)
10:30:44 Join TheLemonMan [0] (
10:37:09 Join user890104 [0] (
10:39:19 Join ender` [0] (
10:47:36 Join bmbl [0] (~bmbl@unaffiliated/bmbl)
10:53:34***Saving seen data "./dancer.seen"
11:03:54 Quit feisar- (Ping timeout: 250 seconds)
11:05:16 Join {phoenix} [0] (
11:18:56 Join Gnea [0] (~gnea@unaffiliated/gnea)
11:22:33 Join dfkt [0] (dfkt@unaffiliated/dfkt)
11:29:44 Join GeekShadow [0] (
11:29:44 Quit GeekShadow (Changing host)
11:29:44 Join GeekShadow [0] (~Antoine@reactos/tester/GeekShadow)
11:39:02 Part dodddummy ("Leaving")
11:54:19 Join Jaykay [0] (
11:55:39n17ikhwhat is the behavior of "idle poweroff" in rockbox-on-android? does it just stop the service?
12:03:44 Join teru [0] (
12:29:47 Join dfkt_ [0] (~dfkt@unaffiliated/dfkt)
12:33:33 Quit dfkt (Ping timeout: 255 seconds)
12:42:03 Quit Keripo (Ping timeout: 240 seconds)
12:45:33 Join Keripo [0] (
12:53:35***Saving seen data "./dancer.seen"
12:57:28 Quit Gnea (Ping timeout: 245 seconds)
13:03:05 Join DerPapst [0] (
13:10:31 Join stoffel [0] (
13:14:06 Quit Jaykay (Quit: ChatZilla 0.9.86 [Firefox 3.6.12/20101026210630])
13:16:19 Join domonoky [0] (~Domonoky@rockbox/developer/domonoky)
13:18:32 Quit mystica555_ (Ping timeout: 272 seconds)
13:26:32 Quit stoffel (Remote host closed the connection)
13:31:15 Join Gnea [0] (~gnea@unaffiliated/gnea)
13:44:48 Quit xxcv (Ping timeout: 255 seconds)
13:57:33 Join Buschel [0] (
13:58:39 Quit S00row (Read error: Connection reset by peer)
13:59:31 Join S00row [0] (
14:05:20 Join piggz [0] (~piggz@
14:06:54piggzlo, i was wondering if there was a sleep mode in rockbox for my ipod video, as i noticed my daughters ipod video lasts a lot longer when not in use, and its faster than power cycling
14:11:43JdGordonn17ikh: idle poweroff doesnt do anything on android (yet)
14:11:56JdGordonpiggz: rockbox doesnt sleep the ipod, it turns it off
14:17:39piggzJdGordon: shame, sleep would be cool
14:18:11JdGordonnot really... it just uses up battery life doing nothing and rockbox boots to playing music in 3s or so anyway
14:23:04 Quit Buschel (Ping timeout: 240 seconds)
14:29:04 Join kugel [0] (~kugel@rockbox/developer/kugel)
14:32:31 Join Topy [0] (
14:34:46 Quit GeekShadow (Read error: Connection reset by peer)
14:36:25 Join GeekShadow [0] (~Antoine@reactos/tester/GeekShadow)
14:36:29 Join Buschel [0] (
14:36:30 Quit T44 (Ping timeout: 252 seconds)
14:37:53 Join n1s [0] (~n1s@rockbox/developer/n1s)
14:43:36 Quit Buschel (Ping timeout: 255 seconds)
14:53:36***Saving seen data "./dancer.seen"
14:57:15 Join hkmix [0] (
14:58:24 Quit hkmix (Client Quit)
15:02:06 Join Lear [0] (chatzilla@rockbox/developer/lear)
15:07:10 Join Buschel [0] (
15:17:34 Join feisar- [0] (
15:39:13 Quit guymann (Quit: BYE!)
16:00:13 Quit teru (Quit: Quit)
16:10:33 Join panni_ [0] (
16:10:56 Quit S00row (Read error: Connection reset by peer)
16:13:14 Join S00row [0] (
16:15:52 Quit Lear (Quit: ChatZilla 0.9.86 [Firefox 4.0b8pre/20101119031701])
16:18:06 Join InsDel [0] (
16:28:16 Join freddyb [0] (
16:28:37 Quit freddyb (Client Quit)
16:32:43soapIf your daughter's iPod video with the Apple Original Firmware has a longer shelf life than your iPod video with Rockbox something is seriously wrong.
16:35:21soapFor, piggz, as JdGordo n said her Video is actually consuming power while sitting on the shelf, and yours is not. In general your iPod should achieve a longer battery life than hers, all things being equal, and if you turn on some of Rockbox's optional power-savings tricks you should be able to smoke her runtime. I am referring to the turning off of the Accessory Power Supply if/when you are not using dock connector accessories and setting the screen it
16:35:21soapself to turn off when the backlight is off.
16:37:09piggzsoap: i understand that, its just nice that, with the stock firmware, although it is using power while alseep, it lasts for days anyway, and instantly comes on when needed
16:38:41 Join Dreamxtreme [0] (~Dre@
16:39:13soapI understand the "responsiveness" point, as it is one of those subtle things which add up, but 3s boot in the grand scheme of things is not really problematic. But more importantly last I saw nobody actually knew how to put the iPod to sleep, much less expressed terrible interest in doing so. :(
16:40:01piggzi should probably configure my ipod to turn off when not used, as opposed to me always forgetting and it being constantly flat ;)
16:41:00soapYes, I have mine set to turn off the screen when backlight is off, and power down after an hour at idle. That is a quite generous idle time and doesn't affect my music playback time significantly.
16:42:00 Join mc2739_ [0] (~mc2739@rockbox/developer/mc2739)
16:42:13 Quit mc2739_ (Client Quit)
16:42:57n1sfiguring out how to "sleep" the ipod probably comes down to RE'ing the various device inits required to bring devices up again after shutting them down
16:43:36n1spower off everyting but the cpu and amybe ram and clock the cpu the lowest possible
16:43:36Dreamxtremewhats the highest bitrate and sample freq that rockbox supports
16:44:14n1sDreamxtreme: rockbox resamples everything that isn't 44.1kHz to 44.1kHz and >16 bps is truncated or dithered to 16bps
16:44:33soapDreamxtreme, do you mean the highest bitdepth of files, or of hardware playback?
16:44:42n1s(as long as we are talking about music playback)
16:44:57Dreamxtremehardware playback really
16:44:59Dreamxtremei think
16:45:12n1sthen it differs from player to player
16:45:18Dreamxtremei have a DVD of Foo Fighters that ive converted to FLAC 88200 24bit
16:45:40soapbit_rate_ would depend on how fast your storage is. And as n1s mentioned everything is taken brutally to 44.1/16, though some of the target hardware could support higher.
16:45:47gevaertsTh 88200 will work, not sure about the 24bit
16:45:47Dreamxtremeso the bit rate is around 3000kbps
16:46:10gevaertsBut I suspect it should play fine on most players
16:46:18soapNot to get off topic, but 88.2 is an odd sample rate from a DVD.
16:46:20n1syes, we support 24 bit flac
16:46:35Dreamxtremeo good
16:46:39soapand saratoga just mentioned fixing insane samplerates in the forums.
16:46:40Dreamxtremeyes i know
16:46:53n1salthough there's a bug report about stupidly huge flac files not playing
16:46:57gevaertsIf you care at all about battery life, I'd suggest reencoding to 44.1/16
16:47:34Dreamxtremewith a Classic 3G (when its cracked) it shouldnt be a problem
16:53:38***Saving seen data "./dancer.seen"
17:04:16*kugel has track info in the notification area of android working
17:25:18 Quit TheLemonMan (Quit: Help me, i got shot! *DIES*)
17:28:21 Quit crwl (Ping timeout: 240 seconds)
17:35:47 Join kreislauf [0] (
17:37:27kreislaufhi guys. does anybody know, what vorbis decoder rockbox uses?
17:37:41kreislaufi read i review of libvorbis vs. ffvorbis
17:37:48kreislaufregarding battery life
17:39:16 Quit froggyman (Quit: Bye)
17:39:33gevaertsI think it's based on libtremor
17:39:57*gevaerts doesn't know much about the codec side of rockbox though
17:40:37kreislaufdidn't find any docs
17:40:42kreislaufbut thanks
17:41:25gevaertsapps/codecs/libtremor in our sources
17:44:08n1sit is based on libtremor, yes
17:44:29n1swith quite a bit of our own optimizations by now
17:46:19n1skreislauf: both libvorbis and the ffmpeg vorbis decoders are floating point and would need to be converted to fixed point to be usable in rockbox, also the ffmpeg one requires several MB of memory which makes it a bad fit on rockbox (mostly due to it always allocating worst-case sizes)
17:46:38 Quit S00row (Read error: Connection reset by peer)
17:49:43 Quit avacore (Ping timeout: 265 seconds)
17:50:23 Join S00row [0] (
17:50:41 Quit InsDel (Read error: Connection reset by peer)
17:51:10 Join avacore [0] (
18:03:20 Join liar [0] (
18:03:46Buscheln1s: if you should have any free time left -> could you measure, if there is any difference in decoding speed with introduction of r28561 on your CF target?
18:04:46Buschelcool :)
18:04:56 Join mystica555_ [0] (
18:05:44 Join Daeken [0] (
18:06:38Daekenhello all. does anyone happen to be working on ipod nano 6g support? i'm considering getting one to hack on, but i don't want to replicate work if possible.
18:07:18BuschelDaeken: ask TheSeven
18:07:47n1sDaeken: don't think anyone's working on it around here at least, AFAIK noone has found a working exploit for it yet
18:08:24Daekenah, fun −− a challenge ;)
18:08:43Daekenhrm, think i'll walk over to the apple store in a bit and grab one.
18:11:01bertrikI think you're underestimating the challenge
18:11:39Daekenbertrik: i've spent the last 5 years reverse-engineering apple products :)
18:12:55Daekenusually very difficult, always a blast. well worth it
18:14:09n1sBuschel: seems to slow down 0.1MHz decoding the 128kbps test file
18:15:29 Quit mc2739 (Quit: leaving)
18:16:06Buschelhmm, then it would be interesting to introduce target dependent defines...
18:16:54 Quit bmbl (Read error: Connection reset by peer)
18:17:03Buschelwhich are set to CACHEALIGN_ATTR for ARM and maybe left empty for Coldfire...
18:17:04gevaertsDaeken: well, good luck with it :)
18:17:09Buschel(at least for mpc)
18:17:35Daekengevaerts: thanks :)
18:18:25Daekenstep one is getting access to a decrypted firmware... then, well, probably a file format vuln. quicktime's file format handling is insanely insecure −− can't be much (if any) better on the nano.
18:18:30n1sBuschel: well, the only thing that cares about alignment > the size of the members is movem in dram, the only place in mpc that uses movem is mpc_decoder_windowing_D and i thought that always worked on iram so this is probably just different code layout causing the icache to miss a little more
18:18:32TheSevenDaeken: what products have you previously been working on?
18:18:41TheSevenare you coming from the iphone scene?
18:19:44DaekenTheSeven: back in 2005, the itunes music store (dunno if you ever heard of pymusique, but it allowed you to purchase drm-free music from itms on linux); in recent-ish history, fairplay DRM a couple years back, and i worked on the dev team up through the initial unlock
18:19:44 Quit kreislauf (Quit: CGI:IRC (EOF))
18:19:46Buscheln1s: ok, only movem in dram would benefit on CF?
18:20:29TheSevenDaeken: the problem here is that you probably have to find an exploit blindly, because there is probably no way to get your hands on unencrypted main firmware code.
18:20:31DaekenTheSeven: i guess it's been a good 2 years since i've worked on anything apple-wise. been working on some odd things, like reversing a consumer EEG
18:20:44DaekenTheSeven: hmm, interesting. why is that?
18:20:49n1syes, movem in dram does burst acces when alignment is 16bytes nothing else cares about large alignments
18:20:56TheSevenif you're incredibly lucky, there's an unencrypted (only signed) DFU image or bootloader on phobos, the main firmware is certainly encrypted
18:21:37TheSevenand if you have no way to run code on the device, you probably have no way to decrypt that
18:22:08TheSevenit might be worth to try one of those recently found bootrom exploits though
18:22:25DaekenTheSeven: do you have reason to believe that they're storing keys anywhere other than the flash? e.g. on the app cpu somewhere?
18:22:42TheSeven(i think there were at least two USB control message handling bugs in apple bootloader code recently, which may or may not have been fixed in that SoC)
18:22:56TheSevenfrom what we know, the nano6g uses an S5L8723 SoC
18:23:19 Join Kitr88 [0] (~Kitarist@
18:23:41TheSevenon the previous devices, not even code on the CPU in privileged mode can access the keys, they can only be used by a hardware AES coprocessor
18:24:00TheSevenso you can only use the keys, but not read them out, and only if you can run code on it.
18:24:11n1sBuschel: also i don't think 0.1MHz is worth introducing more complexity ;)
18:24:21Daekenoh nice. they're starting to get this right :)
18:24:24TheSevenalso they seem to be using asymmetric cryptography nowadays
18:24:37Daekenok, so, are the keys actually /on/ the cpu, or are they stored somewhere in flash that's inaccessible?
18:24:50TheSevenDaeken: the hardware key thingy started with the ipod nano2g and the initial iphone i think
18:25:18TheSevenon the early iphones they were only using encrypted nonces to generate keys they use at runtime, while on the nano2g they used the hardware key directly
18:25:51TheSevenstarting with the 3g, they introduced PKI for DFU images, starting with the 4g they seem to be using it for almost everything
18:26:00Daekennah, the original iphone barely used the hardware aes accelerator −− at least i know that much on the baseband, not sure on the app cpu (i ran a good bit of baseband code in an emulator while reversing it, and the AES stuff was minimally used)
18:26:12Daekenhmm, interesting
18:26:22 Quit Kitar|st (Ping timeout: 255 seconds)
18:27:09Daekeni haven't paid attention to apple's stuff in a few years now, so i have a lot to learn, history-wise.
18:27:24 Quit Kitr88 (Ping timeout: 240 seconds)
18:28:47Daekeni just saw earlier and decided that not only must i get one of those, but i have to be able to run my own code on it, so here i am ;)
18:29:25 Join CaptainKewl [0] (
18:30:11gevaertsDoes one need a special patch to get at the ipod accessory protocol debug info?
18:30:30bertrikgevaerts, I think so, I haven't seen anything like that in SVN code
18:30:58TheSevenDaeken: to get back to your original question, I don't know of anyone working on it
18:30:59bertrikif it's not too intrusive, I'd say we add the debug info and enable it with a define
18:31:19 Join toffe82 [0] (
18:31:34TheSevenand I myself am not planning to do anything with that one in the next couple of months unless maybe we accidentally discover a possible exploit
18:31:53DaekenTheSeven: alright, well, i appreciate your help. i'll idle here and if i discover anything fun, i'll let you guys know :)
18:32:00TheSevenfeel free to try it, but this is going to be really hard
18:32:12TheSevenin case you find a working exploit, we would be glad to re-use it on the nano5g :)
18:32:18gevaertsbertrik: any idea about the task number?
18:32:32DaekenTheSeven: i sincerely hope so. i haven't had a good challenge in a long time.
18:32:45Daekenapple doesn't tend to let me down in that regard, so i'm looking forward to it ;)
18:32:46TheSevenDaeken: you might want to idle in #freemyipod :)
18:33:02 Join Kitar|st [0] (
18:33:04TheSeventhat's where we're currently poking at the ipod nano 3g/4g and classic
18:33:14Daekengreat, thanks.
18:33:28bertriknot sure if it still applies
18:34:09gevaertshm, do I need the logging patch, or both, or only the last one?
18:34:42DaekenTheSeven: do you know if it's possible to get the unencrypted bootloader/dfu image for the 6g?
18:35:12TheSevencheck the files on phobos, i haven't looked at them yet
18:35:18bertrikI guess the aug 23th patch is the relevant one
18:35:34 Join Boldfilter [0] (
18:35:44Daekenok, cool. thanks again :)
18:35:52gevaertsYes, that one seems to apply at least
18:36:29TheSeventhere might be something unencrypted in one of them, but i rather doubt it
18:37:39 Join domonoky1 [0] (
18:38:30Daekenyea, the dfu image is encrypted, from 0x400 on
18:38:30 Quit domonoky (Ping timeout: 245 seconds)
18:39:13Daekenhrm... they use CBC mode, right?
18:40:23Buscheln1s: it's not worth to introduce them for this 0.1 MHz, true. but if we should use alignment mactos for ARM we need to find a solution to cope with CF. see FS #11753. (might be interesting to make measurements on arm11)
18:40:44Daekenah shit, need to get to the bank... back shortly.
18:41:14Buscheln1s: saratoga introduced 32 byte aligment in atrac3 to optimize for arm11
18:42:38n1sBuschel: well, since large alignment doesn't really hurt anywhere i don't see why not just always align to 32 bytes (it would waste some space but that's usually very little9
18:43:59n1sas an example in mpc, 5 arrays aligned to 32 bytes would waste a max of 31*5=155 bytes
18:44:11Buscheln1s: tha's the easiest way :) but I don't think such solution would be accepted in general
18:45:46TheSevenDaeken: they used CBC on the older platforms at least
18:48:28 Join benedikt93 [0] (~benedikt9@unaffiliated/benedikt93)
18:48:39n1sBuschel: maybe we can use something global like FAST_ALIGN where we just align for the sake of speed and not something else which would then be 16 bytes on CF
18:49:07n1si don't really like abusing CACHE_ALIGN for this on CF
18:53:40***Saving seen data "./dancer.seen"
18:54:14Buschelyes, that's why I proposed to have something else. e.g. MEM_ALIGN_ATTR or FAST_ALIGN_ATTR. this can be same as CACHEALIGN_ATTR for ARM an something else for other CPUs.
18:54:44Buschelit could be simply defined in system.h as well
18:54:58n1ssounds good to me if you don't want to do unconditional 32byte alignment :)
18:55:20Buscheldepends on what we want to use as default ;)
18:56:47 Quit Rob2223 (Remote host closed the connection)
18:57:23 Join Rob2222 [0] (
18:57:24Buschele.g. it might be ok to use 32 byte alignment on unknown ARM CPUs. the newer ones have this alignment. so, the probability that it fits for a new port is high
18:58:03 Join dfkt [0] (dfkt@unaffiliated/dfkt)
18:58:22n1si think the cores that use the cache from ARM have 32b cache lines but that the PP cores have custom caches
18:58:45gevaertsAnyone with IAP knowledge around who understands what means?
18:58:46n1sso, yes 32 bytes is very likely for newer ARM's
19:00:58 Quit rvvs89 (Remote host closed the connection)
19:01:02bertrikgevaerts, 1st is length, 2nd is mode. Mode 0 is used for negotiation into other modes IIRC
19:01:50kugelI'm with n1s
19:01:58gevaertsWhich presumably fails here since we have no idea how to deal with the thing
19:02:10 Quit dfkt_ (Ping timeout: 252 seconds)
19:05:37 Quit Gnea (Ping timeout: 272 seconds)
19:05:45 Join guymann [0] (~charles@
19:07:06 Quit piggz (Ping timeout: 250 seconds)
19:11:25 Join T44 [0] (
19:14:21 Quit Topy (Ping timeout: 245 seconds)
19:14:31kugelFS #11766
19:19:41 Quit guymann (Quit: brb lol)
19:25:13 Join guymann [0] (~charles@
19:25:13 Quit S00row (Read error: Connection reset by peer)
19:25:59 Join S00row [0] (
19:30:58 Quit n1s (Quit: Lämnar)
19:35:22DaekenTheSeven: any idea how they handle/have handled padding in the past?
19:36:07TheSeventhey usually pad data to 16 byte blocks with 0xff
19:36:13Daekenah, ok
19:37:13Daeken... huh, the bootloader in the firmware update (the main one) isn't encrypted.
19:40:40 Join Topy [0] (
19:43:31 Quit T44 (Ping timeout: 245 seconds)
19:43:55 Join anewuser [0] (anewuser@unaffiliated/anewuser)
19:43:56 Quit Boldfilter (Quit: Boldfilter)
19:44:38saratogaBuschel: do you mind if I commit FS #11235?
19:45:06 Quit dfkt (Read error: Connection reset by peer)
19:45:06saratogai want to look at arm9 scheduling in more detail for libmad, so getting that patch in first would be nice
19:45:07 Join dfkt_ [0] (dfkt@unaffiliated/dfkt)
19:45:45 Join JesusFreak316 [0] (
19:46:07Buschelcan this still be applied to svn?
19:46:57Buschelif so, I do not mind if you would submit
19:46:58 Quit dfkt_ (Read error: Connection reset by peer)
19:47:00 Join dfkt [0] (dfkt@unaffiliated/dfkt)
19:48:19 Quit dfkt (Read error: Connection reset by peer)
19:48:20 Join dfkt_ [0] (dfkt@unaffiliated/dfkt)
19:48:23saratogait doesn't apply, but it should be easy enough to fix
19:48:53saratogaalso, i got the c version of libmad working with 32x16 muls and no "SSO" optimization
19:48:57saratogai've started on the asm code
19:50:14saratogascheduling this for arm11 is . . . interesting
19:50:39saratogai didn't realize on arm11 doing two multiply accumulates into the same register on sequential cycles was a stall
19:51:24saratogathe optimal arm11 code should run with no speed hit on arm9e, but i'm thinking of splitting them up anyway just because the arm9e version is comprehensible while the arm11 version is going to be a mess
19:51:24 Quit S00row (Read error: Connection reset by peer)
19:53:34 Join S00row [0] (
19:53:46saratogaBuschel: hmm i don't see why this patch is failing exactly, you wouldn't happen to have your synth.c for you last version of that patch handy?
19:57:29saratogaah nevermind, got it
20:01:59 Quit iq (Ping timeout: 240 seconds)
20:03:18 Join BHSPitMonkey [0] (~stephen@unaffiliated/bhspitmonkey)
20:05:58 Quit GeekShadow (Quit: The cake is a lie !)
20:06:13CIA-7New commit by saratoga (r28624): Commit first part of FS #11235 by Buschel and I. Improves scheduling on arm9 for two filter macros in libmad that are almost never called. A larger ...
20:06:29saratogaBuschel: I'm going to leave that task open for now, I want to play around with arm < 9E scheduling some more
20:08:28CIA-7r28624 build result: All green
20:11:36 Quit dfkt_ (Read error: Connection reset by peer)
20:11:38 Join dfkt [0] (dfkt@unaffiliated/dfkt)
20:25:51 Join pamaury [0] (
20:25:51 Quit pamaury (Changing host)
20:25:51 Join pamaury [0] (~quassel@rockbox/developer/pamaury)
20:38:32kugelusing the layout values for the inbuilt media player doesn't work for htc sense
20:39:59 Quit user890104 (Ping timeout: 272 seconds)
20:52:17 Quit Buschel (Ping timeout: 264 seconds)
20:52:20 Quit liar (Ping timeout: 255 seconds)
20:53:43***Saving seen data "./dancer.seen"
20:53:52 Join liar [0] (
21:00:18 Join u42p [0] (
21:00:43u42p(how) can i use in combinaton with RockboxUtility on linux?
21:01:38u42pi mean, my clip+ boots sansa firmware if i connect it to the pc and since it then hangs i'd like it to boot rockbox instead
21:01:39soapu42p, there is no need to use RockboxUtility in combination with that patch.
21:01:58u42poh i dont know how to install anything without that tool :)
21:02:38soapWhat you want to do is build your own rockbox (starting with ) using those patches and test.
21:03:11soapu42p, one would simply copy the compiled .rockbox folder to their player overwriting the old one in the process.
21:05:10u42poh, now that you say it, i think i looked at that page before and got scared.
21:06:44soapit is step by step. Lots of steps, but little left to the imagination. If soap can do it you can!
21:08:40u42pok, gonna try it. :)
21:10:44soapif you're on Windows using the VMWare image is likely easier than cgywin
21:11:08u42pnope, archlinux
21:11:16soapthen you're set.
21:22:19u42pok, i have run . how do i apply those patches?
21:24:11TheSevenDaeken: you mean the whatever.bootloader.rb3 file?
21:24:28TheSevenhave fun disassembling that :)
21:25:41u42p"patch -p0 <file" in the root i guess
21:26:04TheSevenso they're still not encrypting that. nice.
21:26:17u42pno, cant find the file
21:26:31TheSevenDaeken: prepare yourself for a disassembling odyssey :)
21:28:15TheSevenseccore/peicore will be rather easy, but the rest will be rather evil.
21:28:40TheSevenin case you haven't noticed yet what's in there:
21:28:57TheSevenit's an EFI volume. yes, they're using EFI on those players. no idea why.
21:29:10u42pok, did it manually
21:29:15 Join mc2739 [0] (~mc2739@
21:29:16TheSevenit contains a shitload of compressed PE executables
21:29:18 Quit mc2739 (Changing host)
21:29:18 Join mc2739 [0] (~mc2739@rockbox/developer/mc2739)
21:29:32u42pif i want the complete makeover i need to build the Bbootloader and Normal, correct?
21:29:35saratogalooks like I can save 1-2MHz on arm9 (non-E) decoding mp3
21:29:38TheSeventhose are relocated at runtime, lots of dynamic memory allocation involved
21:29:49saratogaunless you're changing the bootloader you shouldn't touch it
21:30:14DaekenTheSeven: how much of the bootloader code depends on weird hardware features? e.g. does it use the aes accel?
21:30:24TheSevenand the worst is probably that they call each other through those runtime-registered guid to function table mappings
21:30:36TheSeveneven some of the function tables are generated at runtime
21:30:57TheSevenit does, but the individual modules are nicely separated
21:31:15TheSeventhe ugly thing are the cross-module calls/callbacks/events/triggers/whatever
21:31:23Daekenhmm... so running this in emulation might be a feasible approach.
21:31:35Daeken(that's how i did a lot of baseband reversing for the original iphone)
21:32:34TheSevenfinding a vuln there will be hard, it's hardly doing any user interaction
21:33:10Daekeni'm mainly interested in it to understand the boot process better
21:33:29TheSeventhe only possible route of exploitation that i can see is cracking the firmware update protocol, corrupting the firmware partition somehow, and exploiting the firmware file system reading code
21:34:00u42paaargh, build failed:
21:34:47TheSevenor maybe some signature validation code
21:35:18TheSeventhe boot logo will probably still be a bitmap, so it's not very likely that there will be a vuln in the decoder
21:35:24saratogau42p: as I said before you dno't want to build a bootloader
21:35:45u42psorry, i missed that line
21:36:12saratogaalthough since you haven't changed the bootloader, and its failing to build, you're probably still doing something else wrong
21:36:25*TheSeven asks for a general opinion: should we move this discussion to #freemyipod or stay here?
21:36:27u42pi don't know what exactly i am changing. but since it is related to the bootloader i suspect it might be it. it is this patch i want to try
21:37:52gevaertsTheSeven: I don't think it's wrong to have it here
21:42:03saratogaTheSeven: i hate having to read two sets of logs, so i say keep it here
21:42:46DaekenTheSeven: during the bootloader, what is active? is there a way to do anything usb-wise from the bootloader level, or does that come later?
21:43:21Daekeni imagine there's /something/ usb-wise there, to start the flashing process...
21:44:02TheSeventhere are three points where USB is used:
21:44:06 Join fdinel [0] (
21:44:06TheSeven- bootrom DFU (too early)
21:44:13TheSeven- USB mass storage device (too late)
21:44:18TheSeven- Disk mode (too late)
21:45:16TheSeventhere's also a USB EFI module, but I'm not sure what this one is doing
21:45:28TheSevenmight only be used to determine if there is voltage on the bus
21:45:38TheSevenor maybe in diagmode (which in integrated into this efi hell)
21:48:18saratogastupid arm and its lack of registers, even storing the stack pointer so I can use it, I still have 1.5 cycles of stall per PCM sample produced in libmad on arm9 (non-E)
21:50:19Daekenyou know, i wonder if it'd be possible to employ a timing attack against the signature check for the bootloader update process.
21:50:36Daekeni find it doubtful that they're doing it in constant time, unless someone's employed the same attack against them in the past...
21:51:30Daekenthe timing would be precise enough to do it pretty damn quickly, especially if the update procedure works anything like bbupdate did.
21:52:34TheSevenyou mean trying to figure out the hardware AES key by analyzing the time decryption takes?
21:52:51saratoga16 hr, 20 min using freddyb's patch
21:52:56saratogaon fuzev1
21:53:33Daekenno −− that'd pretty much require having code running on the device in the first place (might be feasible from there, though i think a power measurement attack would be more likely to succeed) ... i mean measuring the time it takes to check the signature during the update process.
21:54:15Daekenthe bootloader code isn't encrypted, so modifying it would be easy (for some value of easy) ... if you can measure the time it takes to check the signature and they're not doing it in constant time, it'd be possible to find a matching signature... in theory.
21:54:19Daekendepends on how they're doing it, really
21:54:26TheSeventhe only place where such an attack could be mounted is bootrom DFU IIUC
21:55:15Daekenthat may well be the best way to get code running on it initially... as soon as one tiny bit of code runs on it, it's game over.
21:55:16TheSevenI still think that jitter introduced by USB will be way too big to do this
21:55:48 Quit factor (Read error: Connection reset by peer)
21:56:31Daekennah, noise is a nonissue in this regard. you can achieve nanosecond resolution over the internet with a timing attack... very practical on anything local. the only concern i have is that they're doing the check in constant time.
21:56:38Daekenbut that's easy enough to figure out
21:56:55TheSevenwell, try it :)
21:57:26 Join factor [0] (
21:57:36Daekenyea, think i'm going to... probably gonna go pick up a nano this week.
21:57:46Daekenwas going to do it today, but didn't feel like walking over there after i hit the bank :P
21:57:58TheSevenare the DFU images encrypted?
21:58:11TheSevenhm, that's not good
21:58:16Daekenwhy so?
21:58:30TheSevenbecause it means we would have to encrypt the code
21:59:06Daekenwhy? if you're patching the bootloader, it should take it no problem as long as the signature matches.
21:59:35TheSevenhow would you get feedback on the time it takes for the bootloader signature to be verified?
22:00:02TheSeven(assuming they let you flash whatever you want, and will just fail on the next reboot)
22:00:22Daekendepends on how they're doing the updates. is it a situation where you simply ship the data off to the nano and it hands back an error or somesuch, or does it allow you some semblance of control?
22:00:41Daekeni imagine it won't flash the bootloader unless it validates the signature first, right?
22:01:18TheSeveni'm not sure about that
22:01:47TheSevenwhy should they check it?
22:02:01 Join froggyman [0] (~seth@unaffiliated/froggyman)
22:02:08Daekenbecause if there's an error on the line, the user gets a brick.
22:02:17Daekenhow so?
22:02:34TheSevenif the bootloader isn't signed correctly, the bootrom will enter DFU, itunes will pick it up, upload WTF and disk mode, and flash it again
22:02:43Daekenah, good point...
22:03:32TheSevenand "errors on the line" would have to pass USB CRCs
22:04:11Daekenthe one big thing that makes me think this could work is that bytes 0x40-0x54 of the bootloader look to me like an sha1, most likely hmac.
22:04:35Daekenif they verify that in a non-constant-time way at flashtime, it'd be easy.
22:04:36*TheSeven bets it's plain sha1 of bytes 0-0x3f
22:04:39Daekenotherwise... not so much.
22:05:01TheSevenand bytes 0x10-0x14 will probably be plain sha1 of the payload
22:05:22Daekenyou mean 0x10-0x24?
22:05:29TheSevenyes, of course
22:05:40Daekennope, not in this case... this is the only thing that looks like an sha1.
22:05:42Daekenat all
22:05:50TheSevenhm, interesting
22:05:58TheSevenon the nano2g those were HMACs
22:06:00Daekenone sec, i'll pastebin the header.
22:06:13TheSevenon the nano3g/classic they switched to SHA1 run through the AES hardware key
22:06:22TheSevenand on the nano4g I've seen plain SHA1s somewhere
22:07:26 Join user890104 [0] (
22:11:38Daeken <−− header plus first 16 bytes of payload.
22:12:53Daekenif they were to run sha1 through aes, either they'd truncate the hash first, meaning we'd have 4 bytes less data, or they'd pad it out, meaning we'd have 12 bytes more... i'd put money on that being an hmac
22:15:21Daekenwell, there is one other possibility, but i find this insanely unlikely: SHA1 encrypted then truncated to 20 bytes... they couldn't decrypt it, but they could do the same thing on the hardware, allowing them to verify it.
22:15:26Daekenbut i can't see why they would ever, ever do that :P
22:16:03TheSeventhat's why i think it's a plain one
22:16:15TheSeventhey seem to have accepted that encrypting those hashes buys them nothing
22:16:15Daekenhow would they verify it?
22:16:27Daekenthat is, how could they verify it wasn't tampered with
22:17:20TheSeventhat's why they have a digital signature of the header (or even the payload?) at the end
22:17:35 Quit alexbobP (Quit: leaving)
22:18:02Daekenthere's none in the header... and i don't see one in the payload, but it could very well be there and simply not have anything to stand out.
22:18:33kugelsaratoga: how much is 1.5c per sample improved over svn? and why 1.5c?
22:18:35 Join alexbobP [0] (~alex@
22:19:03saratogakugel: saves about 2 MHz on the Fuze v1
22:19:17Daekenand in this case, hmacs would be identical to signatures for their purposes. except even more secure, in theory
22:19:32Daeken(personally disagree with that point, but i'm in the minority there)
22:19:37saratoga1.5 cycles * 44100*2 = 132kHz
22:19:59saratogaso not too bad, but still annoying
22:20:17kugel2MHz is nice
22:20:27Daekenbrb, need a smoke.
22:22:42saratogayeah i'm pretty happy with it
22:22:56saratogai think we can get a much, much bigger improvement on arm9e and arm11 though
22:23:40saratogaprobably on the order of 3-4 times that
22:23:58saratogawould make mp3 fast like vorbis
22:24:27u42pif i built a new, should i remove the old .rockbox on my player before unpacking?
22:24:32 Join stoffel [0] (
22:25:28 Join ReimuHakurei_ [0] (~reimu@
22:25:32 Quit ReimuHakurei (Read error: Connection reset by peer)
22:28:05u42pok, done. still boots sansa if i plug it in
22:29:01u42pah, i had to launch rockbox and then plug it in
22:30:27u42phooray, works like a charm
22:30:32u42pthanks for your help guys!
22:31:13u42ppamaury: another satisfied customer here for . sansa clip+
22:31:16kugelsaratoga: your work already helps on armv5+, no?
22:32:01saratogakugel: yes, same on arm9, but i'm going to replace this code with armv5 optimized versions soonish
22:32:08saratoga"same on all arm9"
22:32:20pamauryyes I saw, apparently the patch is working quite well with linux, but windows is still doing crap
22:32:47kugelsaratoga: can you post the patch? I can test on my phone then
22:33:13saratogakugel: sure, give me 5, tracking down a glitch in the audio sometimes
22:36:22saratogaok there i think i got it working
22:36:58 Join casainho [0] (~chatzilla@
22:39:10kugelI'll apply Buschel's alignment patch as well and make a new test codec batch
22:39:12 Quit froggyman (Quit: Bye)
22:39:20saratogaaccording to test_codec, libmad has gotten 3.5MHz faster on the fuzev1 since the spring
22:44:55kugelsaratoga: does your patch hurt PP?
22:45:10saratogakugel: shouldn't
22:45:32saratogadoesn't really matter anyway thanks to the COP patch
22:45:38saratogaall this code runs on the COP
22:46:18saratogaTheSeven: my ipod says its blank and the OF wants me to restore it, whats the easiest way to fix this
22:46:33saratoga(haven't used it in a month or so FWIW)
22:47:35TheSevensaratoga: what kind of ipod?
22:47:44saratogasorry, 2g
22:47:53TheSeven"use itunes to restore"
22:48:07TheSevenhas it ever seen iloader?
22:48:15saratogano, just whatever rbutil installed
22:48:22TheSeventhat's weird
22:48:33saratogai'll go find a machine with itunes
22:48:58TheSevenyou could try handcrafting a firmwarefs with a rockbox bootloader inside :)
22:49:12TheSevenbut itunes is certainly the easier way
22:49:29saratogawhats weird is the rockbox bootloader seems gone
22:49:59TheSeven"use itunes to restore" means that it failed to load the rockbox bootloader for whatever reason
22:50:13TheSeventhis is displayed by the NOR bootloader
22:51:36 Quit stoffel (Remote host closed the connection)
22:52:16 Part u42p ("Leaving")
22:53:45***Saving seen data "./dancer.seen"
22:56:48 Quit benedikt93 (Quit: Bye ;))
23:00:01kugelsaratoga: good thing you fixed test codec to work with files larger than ram
23:00:29saratogayes thats quite handy
23:00:46saratogai'm thinking of next adding options to do boosted, unboosted, and "dynamic" boosted tests
23:00:57saratogathe last one attempting to boost and unboost as needed like during normal playback
23:01:34kugeli.e. testing how much boost happens in realtime decoding?
23:01:47kugelgood idea generally but tests will take ages this way
23:02:04saratogastill faster then unboosted :)
23:02:26saratogathe thing is performance with boosting locked on is often a lot different then when it flips on and off on some players
23:02:34kugelnot on android :)
23:03:02saratogaalthough i guess figuring out the right ratio of boosted to unboosted could be tough if we want to go a lot faster then real time
23:03:59kugelloading the file from disk basically takes longer than decoding for some codecs on android
23:04:44kugel(that's perhaps exaggerated)
23:05:15saratogahuh test codec is slightly slower then what the wiki says mp3 should be
23:05:18saratogai wonder whats going on
23:05:40kugelthe async clock mode change?
23:06:23saratogasorry, i mean on the nano2g
23:06:27saratogafuzev1 is faster
23:11:39saratogahmm no its faster, however the nano2g has gotten slower since I tested it over the summer
23:12:27kugelthe alignment patches already make some difference. most codecs are a good deal faster than in my last test
23:13:29saratogahmm well this is TheSeven's problem
23:13:36saratogai'll make the codecs faster, he has to figure out the hardware
23:15:03TheSevensaratoga: what exactly is slower now?
23:15:14TheSevenso decoding without the pcm driver running and always fully boosted?
23:15:25saratogaTheSeven: correct
23:16:07TheSevenis test_codec loading the complete file to RAM before decoding?
23:16:21saratogayou got 51.06MHz with r24786, I'm getting about 53MHz now
23:16:35saratogait loads as much as fits into RAM, then pauses the timer to rebuffer if needed
23:16:46saratogafor 128k mp3 it shouldn't be rebuffering
23:17:01TheSevenso it can't be coming from the FTL/NAND
23:17:03saratogahave you changed any clocks in the last 3000 revisions
23:17:52TheSeveni have changed the boosting/unboosting operation a bit, but this shouldn't have an effect
23:18:08saratogapretty much the only thing that should matter is the bus and memory clocks
23:18:32saratogais it possible my ipod is somehow faster then yours?
23:18:41TheSeventhey should always have been the same (CPU: 192MHz, AHB: 96MHz, async mode)
23:18:41 Quit xavieran (Ping timeout: 265 seconds)
23:18:55TheSeveni can have a check on mine if you like
23:19:01 Join Gnea [0] (~gnea@unaffiliated/gnea)
23:19:02saratogayeah probably a good idea
23:19:24 Join MethoS- [0] (~clemens@
23:19:28 Quit MethoS- (Read error: Connection reset by peer)
23:19:34TheSevenwhich file is that? lame128?
23:20:17 Join MethoS- [0] (~clemens@
23:20:26 Quit MethoS- (Remote host closed the connection)
23:20:39saratogathe difference is even more pronounced when you consider that the fuzev1 seems to have gotten faster over that time due to better optimization in libmad
23:20:57TheSevenhm, no test_codec installed :/
23:22:13*TheSeven needs to rebuild first
23:23:14kugelI get upto 20% speedups with the alignment patches
23:23:26saratogaon which target?
23:23:32kugelmy phone
23:24:47saratogaarm11 or cortex?
23:25:05saratogai guess alignment will matter a lot on either, since they have the 64 bit bus for aligned transfers
23:25:33 Join MethoS- [0] (~clemens@
23:26:02kugelI'll have new charts up in a few minutes
23:28:14TheSevensaratoga: 53.56MHz on r28602 with aafonts and hw keyclick patch applied, iLike theme
23:28:41TheSeventouched the clickwheel a few times during the process to keep the display awake
23:29:10saratogaok same as i then
23:29:19TheSevenmaybe one of Buschel's IRAM changes are related?
23:29:33TheSevenIRAM isn't really fast on this one, but I wouldn't expect it to be slower than DRAM
23:29:39saratogathat would make sense, ams doesn't use the iram defines
23:30:00TheSevenwe'll probably have to bisect that
23:30:37 Join robin0800 [0] (
23:31:13kugelI'm redoing the svn test with backlight on this time
23:32:25 Join alexxel [0] (
23:32:43kugelthe left is svn, the right is svn+asm enabled+alignment patches
23:32:48 Quit MethoS- (Remote host closed the connection)
23:32:55alexxelHey ?
23:33:30saratogawow those are amazing
23:33:35saratogais the alignment patch in SVN yet?
23:33:43 Join MethoS- [0] (~clemens@
23:34:10alexxelrockbox for nano 3g ipod is it real ??
23:34:23kugelI'll prepare a graph that has my last test codec benches in it
23:34:30saratogayou should get that patch in then
23:34:33kugeljust need to find the right files
23:34:36saratogawhats the fs number?
23:34:47kugelFS #11753
23:35:42saratogadoes it help with any other CPUs?
23:35:51saratogaprobably not much on arm9 i guess
23:36:53saratogai should probably double check that everything in libmad is aligned
23:37:36saratogahuh it isn't
23:38:36saratogawhat define should I be using to align things?
23:41:05TheSevenalexxel: not yet at least. it might be coming one day, i'm working on it :)
23:43:23alexxel :(
23:43:31alexxelfunny guy
23:44:41kugelsaratoga: pretty amazing:
23:45:15kugelsaratoga: CACHEALIGN_ATTR, or whatever the outcome of fs#11753 is
23:45:17saratogakugel: i wonder what those look like if libmad is actually aligned
23:46:20kugelwow, look at the mpc numbers
23:46:30saratogaalignment makes no real difference on arm9 that i can see
23:46:47kugelalso, mp3 is faster now, and even faster with your patch and asm enabled (in svn C is faster)
23:47:08TheSevenalexxel: who is claiming that rockbox would run on it?
23:48:53kugelI'm surprised that cache align makes such a vast difference. or did something else change since a month ago?
23:49:24saratogaon arm11 aligned loads/stores are basically 2x as fast as unaligned ones
23:49:58alexxelWhy not?? this is open sourse, it may run even on my tv if anybody cares...
23:50:02saratogahmm i take back what i said about alignment on arm9, its more complicated to align libmad because of all those packed structs
23:50:17saratogaalexxel: no one cared until recently
23:50:46saratogai'll have to dig into alignment more once buschel's patch is committed, theres probably a lot of room for improvement here
23:51:17saratogakugel: also if possible having the raw MHz needed is nice too, since it makes it easier to see the actual magnitude of an improvement
23:51:58alexxelso very sad
23:53:52kugelsaratoga: it should be possible, but you need to know the actual clock frequency of the device, luckily my parse_testcodec can do that
23:54:28 Quit kevku (Quit: KVIrc 4.0.2 Insomnia
23:57:18saratogasomeone should try doing test_codec on the nano2g without boosting
23:57:44kugelgah, ape is messing up the chart
23:58:39 Quit advcomp2019 (Quit: There are two major products that come out of Berkeley: LSD and UNIX. We don't believe this to be a coincidence.)

Previous day | Next day