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-05-10

00:00:29 Quit S_a_i_n_t (Ping timeout: 268 seconds)
00:02:25 Join S_a_i_n_t [0] (S_a_i_n_t@
00:02:59 Quit ender` (Quit: Connection Reset by Gypsies with Wire Cutters)
00:20:25saratogathe MS encoder can mix WMA Pro and WMA Voice into a single WMA file
00:20:40saratogai guess switching between them as it goes
00:34:28saratogamt: heres some sample WMA Pro files made from the rockbox test track:
00:34:54mtsaratoga: Thanks !
00:35:16saratogathey're all wma pro 10 in 'quality vbr' mode and '24 bit'
00:37:50mtIs that encoder free to use ? I want to add some metadata and see how they're handled
00:38:18saratogamt: yes its free
00:38:37saratogatheres a command line interface to it here:
00:39:07saratogayou need to install the WME9 linked from that page before it'll work
00:39:36saratogathe command line tool can edit the metadata, but using WMP might be easier
00:39:49saratogathe command line tool is rather complicated to use
00:40:38saratogathe command i used to make those wma files was something like : cscript.exe Wmcmd.vbs -a_mode 2 -a_codec WMAPRO -a_setting Q95_44_2_ 24 -input sample.wav -output out.wma
00:41:48 Quit MethoS- (Read error: Connection reset by peer)
00:42:04saratogaanyone with a coldfire player feel like testing something?
00:44:02mtsaratoga: Thanks .. I'll try WME9 first
00:45:17 Join MethoS- [0] (~clemens@
00:45:58stripwaxsaratoga - mmmm..?
00:46:54saratogastripwax: would you try FS #11256 with this file:
00:47:10saratogaand report if it works (and if its real time)
00:47:33 Quit Topy44 (Ping timeout: 248 seconds)
00:48:11stripwaxah, test and build .. don't have time right now to build anything.
00:48:29saratogai can build it
00:48:38saratogawhich player?
00:48:39stripwaxi'd imagine it would be realtime on iriver h120, if it's 138% on ipod video
00:48:51saratogayeah but its good to check for endianness too
00:50:02saratogacode looks good, and hes properly scheduled for ARM9 in various places in the asm
00:50:23stripwaxis that his asm?
00:51:09stripwaxis he ever around on irc?
00:51:12saratogaalthough I wonder if doing mla r1, r2, r3, r1 over and over again has a stall because r1 is accumulated from and to
00:51:59saratogayeah last night
00:52:11saratogahes in japan so about 3AM US time is best
00:52:30saratogacan you try an h120 build?
00:53:00stripwaxyep, if you have it already. otherwise will have to wait (basically I'm going to bed)
00:53:29mtsaratoga: Yeah, metadata tags are parsed properly.
00:53:41saratogamt: sounds good
00:54:13*mt heads to sleep
00:55:19amiconnsaratoga: Iirc arm9 and higher does special handling for back-to-back mla and friends
00:55:49saratogaamiconn: do you recall what the restrictions are?
00:56:17amiconnIt's in the respective maunals (instruction cycles and interlocks)
00:57:07saratogai think it should be ok, since the accumulate doesn't happen until after the stall for the multiply, so the registers should have already been updated
00:57:27saratogafor some reason i can never understand the arm reference manual's timing charts
00:57:29stripwaxsaratoga - is that .tta supposed to show up as "(ERR) true_audio" in the playlist viewer?
00:57:41saratogano it should not
00:58:04amiconn(ERR) means the track couldn't be buffered successfully
00:58:04saratogaso it won't play at all?
00:58:16 Join Topy44 [0] (
00:58:28saratogadid i pick the wrong memory size for your player somehow?
00:58:44stripwaxnothing happens when I play that track
00:58:49amiconnMy guess is a problem with metadata reading
00:58:50stripwaxeverything else seems to work fine
00:59:19saratogaok so probably some kind of endianness issue
00:59:27amiconnProbably endian related
00:59:35stripwaxseems to have killed database update also, from the way the disk is flashing, it's in a loop
00:59:35*amiconn slow
00:59:49saratoganot surprising given that its an x86 oriented codec
01:01:04stripwaxwhat endianness does ipod have?
01:01:29saratogaalmost all arm devices are little, just like x86
01:01:53saratogaso actually pretty soon everything will be little endian and we won't have to care anymore
01:02:29 Quit Topy44 (Ping timeout: 248 seconds)
01:02:56saratogatta uses ID3 for metadata, so that should be endian safe
01:04:58*amiconn has a suspicion
01:05:38amiconnapps/metadata/tta.c already uses get_long_le() resp. get_short_le()
01:05:57amiconnAn extra letoh16() resp. letoh32() will make the result wrong on big endian
01:06:09stripwaxping me if you have a fix you would like me to test. I might not be around on irc much this week but i'll check the logs
01:06:19 Quit stripwax (Read error: Connection reset by peer)
01:06:24amiconnBut that's exactly what that patch is doing when processing the tta header
01:08:14saratogaamiconn: so what, drop the letoh16 from the channels and bps parse?
01:09:24amiconnFrom channels, frequency, length, bps... everything that uses GET_HEADER()
01:10:00jhMikeSLlorean: what do you mean? at this moment the auto-speed has no explicit setting available to code but it could. there are bits that can be set by software that are interpreted by DVFS as CPU load.
01:10:38amiconnThat also includes ID, further up
01:12:27*amiconn guesses the thing won't be realtime on cf as-is
01:13:24*S_a_i_n_t wonders what the Fuze runs at boosted out of interest...
01:13:34saratoga248MHz IIRC
01:13:36 Join Topy44 [0] (
01:13:44saratogaor 240 if its a v2
01:14:12saratogastripwax: (for the logs) can you try this test build
01:14:21saratogaor anyone else who feels like testing on coldfire
01:14:36S_a_i_n_tjust wondering about the guy on the forums that puts Rockboy problems solely down to boosting.
01:14:44S_a_i_n_tShouldn't it run boosted anyway?
01:15:05amiconnThe filter is something where cf emac should help a lot
01:20:09S_a_i_n_t(clarify) Errrr, lack of boosting rather.
01:20:24saratogaS_a_i_n_t: yes, looking at the code one of the first things it does is boost
01:21:58S_a_i_n_tI thought so, but I can't look at my checkout from here abd didn't wanna say "Um, you're crazy" without conforming it forst.
01:22:14amiconnIf the filter values (except sum) stay within 16 bit range, speed could be improved even further on cf and armv6+
01:22:20S_a_i_n_t-spelling errors :)
01:23:57 Quit DerPapst (Ping timeout: 276 seconds)
01:23:59amiconnThat's the opposite of what I did with the ape filters. They were 16 bit to begin with - I changed that to 32 bit for armv4 only (because on armv4 the unstuffing consumes more cycles than what is saved by loading only half the amount of data)
01:24:32S_a_i_n_tI don't think I've ever seen rockboy running what I'd call "fine", so I think he may just be remembering things wrong, or playing GameBoy on a DAP was a new & exciting thing and didn't seem as choppy as it actually is. Especially saying the sound was fine seemed weird to me, I find even if the fps is good the sound is terrible.
01:26:36 Join mikroflops [0] (
01:27:53saratogaso no one is around who can test a CF build?
01:30:32 Join DerPapst [0] (
01:30:57 Quit mikroflops_ (Ping timeout: 260 seconds)
01:38:44 Quit DerPapst (Quit: Leaving.)
01:42:54 Quit bieber (Remote host closed the connection)
01:43:57 Quit krazykit (Read error: Connection reset by peer)
01:47:44 Join krazykit [0] (
01:47:53***Saving seen data "./dancer.seen"
01:53:58 Join kushal [0] (~kushal@
01:56:14 Quit kugel (Remote host closed the connection)
01:59:30 Join bieber [0] (
02:11:56 Quit liar (Ping timeout: 252 seconds)
02:17:50 Quit kushal (Quit: Ex-Chat)
02:19:16S_a_i_n_tJdGordon: Going through the logs...not *so* much a fan of the "%Xx[x]" idea myself, but I can see where it would help readability...and probably make it a lot easier to parse.
02:19:47S_a_i_n_tI'm just *so* used to "%Xxx" now, it would take some major getting used to.
02:24:51 Join Rob2223 [0] (
02:25:36 Quit efyx (Remote host closed the connection)
02:28:22 Quit krabador (Remote host closed the connection)
02:28:40 Quit Rob2222 (Ping timeout: 265 seconds)
02:31:29 Quit M3DLG (Quit: RAGE QUIT)
02:34:23S_a_i_n_tThough, I guess...if it's going to happen, [ ]'s are probably the most sensible container for the tags.
02:46:28 Join flatrose [0] (
02:49:43 Join kio [0] (
02:50:44 Quit ps-auxw (Ping timeout: 248 seconds)
02:55:11 Join TechnoKat [0] (
03:00:48 Join ps-auxw [0] (~arneb@2001:470:c807:0:1532:4e5f:2ad3:4123)
03:05:44 Join hebz0rl_ [0] (
03:08:11 Join ischeria1 [0] (
03:09:15 Quit hebz0rl (Ping timeout: 264 seconds)
03:11:19 Quit ischeriad (Ping timeout: 252 seconds)
03:15:24 Join itsnotabigtruck [0] (
03:16:27itsnotabigtrucknot a lot going on here atm, eh
03:16:41 Join n1s [0] (~n1s@rockbox/developer/n1s)
03:24:46 Part itsnotabigtruck
03:26:18 Quit jhulst (Quit: Read error: EOF)
03:33:58 Quit flatrose (Remote host closed the connection)
03:38:43LloreanjhMikeS: I was noticing in one plugin (fft) that the speed changing seemed visible - the scrolling wouldn't move at a constant speed. I'm not sure if that was because of the auto-speed or not though, but I seem to remember it scrolling smoothly before, so I was wondering if that might be the case.
03:43:35n1ssaratoga: fwiw on arm1136 (the beast) mla takes 2 cycles and has 4 cycle result latency but the manual states that "For a subsequent multiply accumulate the result is available one cycle earlier than for all other uses of the result." so to me it sounds like a one cycle stall between consecutive mla instrs
03:45:23saratogan1s: so theres one cycle stall (i guess due to the 16 bit wide multiplier) and then immediately after that the multiplier can be used to evaluate the last product?
03:45:43 Join Boldfilter [0] (
03:47:55***Saving seen data "./dancer.seen"
03:49:52n1shmm, but Rn is also a late reg and not required untill the second cycle of the instr so if you just do straight multiply-accumulate into the same reg it should be stall free
03:50:13n1syeah, pretty sure it's not staling on arm11 at least
03:50:15 Join BHSPitMonkey [0] (~stephen@unaffiliated/bhspitmonkey)
03:50:58saratogan1s: its weird arm doesn't distribute some kind of calculator tool for these things that will tell you how many cycles something would take on a given core
03:51:02saratogai've seen them for mips
03:51:18n1sthat would be very nice indeed
03:51:29 Quit adnyxo (Ping timeout: 276 seconds)
03:55:24n1sarm9E seems to be the same and arm9tdmi the same as arm7tdmi as far as mla timings and interlocks
03:55:51 Join Blue_Dude [0] (~chatzilla@rockbox/developer/Blue-Dude)
03:55:52n1seh arm9E seems to be the same as arm11, in this regard
03:55:54saratogan1s: arm9E has the mutliplier from arm11
03:56:01n1smakes sense
03:56:33saratogayeah >= 9E has the 16 bit multiplier, while arm7tMi has the "fast M" multiplier which is actually a really slow 8 bit one
03:56:50saratogadonno when they finally designed a 32 bit
03:57:07n1smaybe that's in v7?
04:01:01 Quit kio (Quit: Leaving)
04:04:45 Quit pixelma (Disconnected by services)
04:04:46 Join pixelma_ [0] (quassel@rockbox/staff/pixelma)
04:04:49 Quit amiconn (Disconnected by services)
04:04:51 Join amiconn_ [0] (quassel@rockbox/developer/amiconn)
04:05:05 Nick pixelma_ is now known as pixelma (quassel@rockbox/staff/pixelma)
04:05:13 Nick amiconn_ is now known as amiconn (quassel@rockbox/developer/amiconn)
04:10:30 Quit Blue_Dude (Ping timeout: 260 seconds)
04:10:59 Nick fxb is now known as fxb__ (
04:23:39jhMikeSLlorean: In FFT the spectral view jittered even before the auto speed was implemented. It's easy to disable in kernel-gigabeat-s.c (remove dvfs_dptc_start) just to prove it. :)
04:24:29 Part TechnoKat ("Leaving")
04:26:13LloreanjhMikeS: Okay. It just seemed really noticeable to me and I didn't seem to remember it before. But I'll take your word for it. :)
04:28:10jhMikeSI don't think it's the auto speed doing that.
04:29:07*jhMikeS is repeating himself for some reason :\
04:30:55LloreanOther than that the S seems to be working better than ever. :)
04:31:43*jhMikeS likes good news :)
04:37:17*jhMikeS will double check this little fft thing
04:43:42jhMikeSstill jitters the same fixed at 264
04:44:34 Quit TheSeven (Ping timeout: 260 seconds)
04:48:07 Quit MethoS- (Read error: Connection reset by peer)
04:48:09 Join TheSeven [0] (~TheSeven@rockbox/developer/TheSeven)
04:48:38 Part Boldfilter
04:48:53 Join Forsaken_Boy [0] (~chatzilla@
04:48:55 Nick Forsaken_Boy is now known as Forsaken (~chatzilla@
04:51:36 Quit Forsaken (Client Quit)
04:58:53 Join Barahir_ [0] (
05:02:01 Quit Barahir (Ping timeout: 240 seconds)
05:04:36 Quit S_a_i_n_t ()
05:08:41 Quit hebz0rl_ (Quit: Ex-Chat)
05:15:14 Join Forsaken [0] (~chatzilla@
05:20:51 Join funman [0] (~fun@rockbox/developer/funman)
05:23:36funmanmt: you can change a commit log with svn properties
05:36:45 Quit Horscht (Quit: Verlassend)
05:41:16 Join S_a_i_n_t [0] (S_a_i_n_t@
05:47:59***Saving seen data "./dancer.seen"
05:49:20CIA-5New commit by funman (r25924): as3525v2: disable adjustable CPU frequency ...
05:51:54 Join itsnotabigtruck [0] (
05:57:00 Quit Strife89 (Quit: Bedtime! XD)
05:58:51itsnotabigtruckanyone here?
06:03:29S_a_i_n_t117 people in fact
06:03:43itsnotabigtruck116 of which are idling :p
06:03:54itsnotabigtruckanyway, i'm itsnotabigtruck from the openzdk crew
06:03:56Lloreanitsnotabigtruck: Well you haven't asked an on-topic question
06:04:05LloreanYou can't expect 40 people who may be around to all say "yes" any time someone askes that.
06:04:46itsnotabigtruckand it appears there was a bit of talk after our launch about porting rockbox to gen1 zunes
06:05:04LloreanThere's definitely some interest in it, though I don't think any developer has actually expressed a desire to work on it yet.
06:05:25itsnotabigtruckand thought i'd check in and see if anyone has done any experimentation w/r/t a port of rockbox targeting the zune 30 (or at least getting it out of wince, anyway)
06:05:28LloreanThe main question was whether a bootloader was possible, since it seems possible a lot of our GigabeatS port code might provide a good starting place if one is.
06:06:19itsnotabigtruckyou were one of the people who dropped by #zbdf a couple weeks ago, right? @llorean
06:06:46funmanitsnotabigtruck: can you run code in supervisor mode?
06:07:08itsnotabigtruckyou can definitely run code in kernel mode
06:07:19itsnotabigtruckin wince 5.0 that's as simple as an api call (SetKMode(TRUE))
06:08:16itsnotabigtrucknot sure if that's quite the same thing
06:09:35Lloreanitsnotabigtruck: Last I'd heard HaRET was still of interest, but that someone had made a basic attempt at using it and failed.
06:11:11itsnotabigtruckhe didn't give a lot of detail about what he actually did in testing
06:11:20LloreanI don't remember who.
06:11:24LloreanI just remember seeing it mentioned.
06:11:37itsnotabigtruck this post right here
06:11:38LloreanMy interest is pretty casual - I don't own one and am pretty satisfied with my existing pile of players.
06:11:46itsnotabigtruckheh, fair enough
06:12:54funmanitsnotabigtruck: you can check the CPU mode from CPSR
06:13:50itsnotabigtrucki'm not too experienced with that area @funman but i can only assume that once you're in the kernel then getting into supervisor mode wouldn't be much of a problem
06:14:17itsnotabigtruckunless the os runs outside of supervisor mode (?)
06:15:36itsnotabigtrucki don't have a working zune 30 anymore so i can't test directly, i do have an hd however (which has an apx2600 and ce6 vs an i.mx31L and ce5)
06:15:45 Quit Forsaken (Quit: ChatZilla 0.9.86 [Firefox 3.6.3/20100401080539])
06:15:59topikfunman: does it matter if i run a current svn bootloader for the clip+ or should i revert to something older to get rid of the many crashes i'm having?
06:17:56funmantopik: bootloader should have no effect
06:18:53funmanitsnotabigtruck: i suppose kernel mode is supervisor mode, just wanted to confirm
06:19:19itsnotabigtruckit might not be @funman, i'm doing a bit of research atm
06:19:39topikok, will update to 25924 now. hopefully it will cut down on the 'undefined instruction' and 'data abort' festival i had yesterday
06:19:41funmantopik: you mean r25900 caused new problems ?
06:20:01topiki posted some of the errors i had to the forum yesterday
06:20:22itsnotabigtruckanyhow, clearly apps like haret work on ce5, and i suppose that's what matters
06:20:53funmantopik: which nick do you use on the forum?
06:21:11funmanitsnotabigtruck: what's haret?
06:21:22Lloreanfunman: HaRET is a Linux bootloader for CE5
06:21:36LloreanIt's used to boot Linux on several windows mobile PDAs/Phones
06:21:48LloreanRebooting from within the OS even.
06:21:50funmantopik: well these errors are not new
06:22:02topikthe amount of it are new to me
06:22:21funmantopik: just see if you still have problems with last commit
06:22:32topikyep, installing now. will report my experiences
06:23:17funmanLlorean: itsnotabigtruck: well then i guess next step for rockbox on zune is to write a bootloader (or modify haret to load a rockbox binary?)
06:23:42funmanitsnotabigtruck: can you read original zune firmware, to reverse engineer needed drivers? (like lcd)
06:24:23itsnotabigtruckyep @funman there's a firmware dump guide with download links on the zune dev wiki @
06:24:26saratogaassuming its the older Zunes, we've already got drivers for them
06:24:41saratogathe original zune uses nearly identical hardware as the gigabeat S
06:25:13Lloreansaratoga: The older Zunes are the only ones where there's kernel mode access currently (unless the situation as changed) so are the most likely target between the two anyway.
06:25:34itsnotabigtruck@llorean you can still access kernel mode on the hd, it's just more complicated
06:25:43Lloreanitsnotabigtruck: Ah, last I'd heard it was only user mode.
06:25:45itsnotabigtruckyou have to make and load a driver (a la windows proper)
06:26:01saratogathe drivers don't need to be signed?
06:28:20itsnotabigtruckalso haret already exists for ce5, whereas it would require extensive mods for ce6
06:28:33itsnotabigtruckas the kernel was pretty much completely redone
06:28:57saratogawhat does haret actually do?
06:30:00S_a_i_n_tJdGordon: Around?
06:30:09saratogai assumed that once you had root access the kernel doesn't matter at all, since you're just going to blow it away and reinit the hardware yourself
06:30:17itsnotabigtrucki haven't really examined the source but afaik it puts itself into kernel mode, loads the zimage into ram, cleans up the processor state and jumps into the image
06:30:41itsnotabigtruckit also has various commands for scribbling into ram interactively etc.
06:32:12funmansaratoga: root access is still usermode
06:32:44saratogaso root != kernel mode?
06:33:14itsnotabigtruckwell ce doesn't really have any concept of user accounts so there really isn't such a thing as root
06:33:47itsnotabigtruckon ce5 there's untrusted and trusted mode, as far as i can tell everything runs in trusted mode
06:34:31S_a_i_n_tTorne: In the past two days I've had about 10 instances of "Need to hard-reset to turn the player on", which to me is *really* odd.
06:35:01funmansaratoga: nope, for example on linux root can be forbidden to do some kernel stuff (like loading new modules)
06:35:31itsnotabigtruckinteresting, i wasn't aware of that
06:38:42joeygthe SDCFG value i found to use tcctool with the cowon s9 was incorrect
06:38:47joeygi found a working one
06:38:55joeygwho should i contact to get tcctool updated quickly?
06:39:01joeygor should i just submit a patch myself?
06:39:23joeygfor the log-searchers, the correct value was 0xaaac7800
06:39:27S_a_i_n_tlinuxstb is the tcctool guy AFAIK
06:42:05funmanjoeyg: so how did it work if it was incorrect?
06:42:39 Quit n1s (Quit: Lmnar)
06:43:03joeygnot sure, must have been a fluke
06:43:37joeygmy timing values were incorrect, but for some reason i was able to unbrick my S9 the first time
06:44:21 Quit joeyg (Quit: blew out my kernel, have to reboot)
06:45:04itsnotabigtruckanyway, does anyone here have a 1st/2nd gen zune that they're interested in experimenting on?
06:45:20funmanitsnotabigtruck: perhaps it's best to ask on the forum ?
06:45:27itsnotabigtruckprobably doesn't help that ms only sold them in the us and canada, and i get the impression that much of the rockbox dev effort is concentrated outside of north america
06:45:33itsnotabigtrucktrue, true
06:46:56 Join apoelstra [0] (
06:47:01 Nick apoelstra is now known as joeyg (
06:48:36funmanyou want to turn existing zune owners into rockbox developers, not the reverse ;)
06:49:23itsnotabigtrucki know i'm not extremely interested in experimenting on my hardware, i already killed one z30 with haret :p
06:50:33itsnotabigtruckbesides, i'm far more knowledgable re user mode development, i.e. not hacking on bootloaders :(
06:54:36 Quit CaptainKewl (Remote host closed the connection)
07:02:38 Quit saratoga (Quit: Page closed)
07:05:41 Quit bmbl (Quit: Bye!)
07:10:45 Join Buschel [0] (
07:15:56 Join LinusN [0] (~linus@rockbox/developer/LinusN)
07:16:07 Join esperegu [0] (~quassel@
07:19:45 Part itsnotabigtruck
07:20:39pixelmafunman: AFAIK changing a commit message afterwards needs the svn post commit hook enabled/installed/whatever and I only saw talk that this is not the case for Rockbox SVN if things haven't changed lately
07:21:49funmanpixelma: there's no link with post commit hooks, but some features need to be enabled:
07:22:30funmanthere is a post commit hook already, it's the thing which sends the email, trigger new builds, and causes 'svn commit' not to return immediately
07:23:33funmanah it's the "pre-revprop-change" hook
07:23:39funman(which needs to be enabled)
07:40:24 Join stoffel [0] (
07:48:00***Saving seen data "./dancer.seen"
07:52:35 Join Forsaken [0] (~chatzilla@
07:53:42 Quit Forsaken (Client Quit)
07:55:00topikfunman: seems my clip+ is a lot more stable now. it's been running for an hour and a half which is a record in recent history
07:57:42funmanseems to work here too, let's wait some days
07:58:17funmani committed this because I have seen crashes with CPU boosted. Although there could have been a bug which caused the counter to reach 0 and cause boosting/unboosting cycles again
08:00:19 Quit Buschel ()
08:03:28 Quit antil33t (Read error: Connection reset by peer)
08:03:31linuxstbjoeyg: I've built a new Windows tcctool binary with that SDCFG value -"> Has anyone apart from you successfully used that value yet?
08:12:18 Join antil33t [0] (
08:13:30 Join bmbl [0] (
08:13:31 Quit bmbl (Changing host)
08:13:31 Join bmbl [0] (~Miranda@unaffiliated/bmbl)
08:16:18 Join FlynDice [0] (
08:21:07topikit does seem power consumption is a lot higher though
08:21:44funmantopik: afaik it should reduce runtime from 19h~ to 15h~
08:22:12funmani'm running benches on all models, both to see the consumption and to see if they succeed without crashing at all
08:25:47 Join ender` [0] (
08:28:11 Join Zagor [0] (~bjst@rockbox/developer/Zagor)
08:34:21 Quit esperegu (Ping timeout: 240 seconds)
08:39:23amiconnHmm, no saratoga nor stripwax :\
08:39:32 Join esperegu [0] (~quassel@
08:49:43 Join petur [0] (~petur@rockbox/developer/petur)
08:56:40 Join Orion777 [0] (
08:58:13 Quit funman (Quit: free(random());)
08:58:22Orion777will rockbox affect the songs already on my player
08:58:41LloreanNot normally unless it's an apple formatted ipod that needs reformatting
08:59:21Orion777what about a partially support one.
08:59:32linuxstbOrion777: What player have you got?
08:59:34Orion777i have a fuze v2 and there's been alot of progress
08:59:52Orion777just wondering if i can go back to OF without problems
09:00:02Orion777so i don't have to transfer all my songs to the hd and back
09:00:07linuxstbThings should be OK, but it's always wise to have a backup of your music files...
09:01:03Orion777if its dual boot now that means i can use rockbox or normal
09:01:13Orion777the normal menus for my player
09:01:43Orion777is the rockbox eq better than the standard eq usually
09:02:10Orion777mainly i'm trying to improve the sound
09:02:53scorcheit is generally much more customisable than "standard EQs"
09:02:55linuxstbProbably only you can say if the Rockbox EQ sounds better. It's likely to be different to Sandisks's though...
09:05:34 Join flydutch [0] (
09:06:43 Quit esperegu (Read error: Connection reset by peer)
09:07:10*amiconn 's guesstimation from last night turned out to be correct
09:07:22 Join esperegu [0] (~quassel@
09:08:48 Quit esperegu (Remote host closed the connection)
09:10:31 Join B4gder [0] (~daniel@rockbox/developer/bagder)
09:19:58 Join DerPapst [0] (
09:29:33 Quit Orion777 (Ping timeout: 246 seconds)
09:33:04 Quit arbingordon (Quit: `)
09:33:42 Quit BHSPitMonkey (Quit: Ex-Chat)
09:40:42 Join solexx [0] (
09:41:19 Quit solexx_ (Read error: Operation timed out)
09:42:08 Join pamaury [0] (~pamaury@rockbox/developer/pamaury)
09:48:03***Saving seen data "./dancer.seen"
09:49:14 Join lpereira [0] (
09:51:02 Join efyx [0] (
09:57:12 Quit stoffel (Ping timeout: 246 seconds)
09:58:24 Join |DaMaGeD| [0] (~dam@
09:59:19 Quit |DaMaGeD| (Client Quit)
10:01:29 Join loveless [0] (~loveless@2a01:198:3a5:0:216:cbff:feb9:8c8d)
10:03:41 Join KoRn_Thoughtless [0] (
10:16:30 Join wodz [0] (
10:24:51 Quit Kitar|st (Ping timeout: 240 seconds)
10:30:47 Join Kitar|st [0] (
10:37:10 Join dfkt [0] (dfkt@unaffiliated/dfkt)
10:40:25 Join funman [0] (~fun@rockbox/developer/funman)
10:43:38pamauryI hate how MTP breaks at each new release of {libmtp,ubuntu,fucking-dbus-stupidity,rythmbox} !
10:44:43Zagorwhich breaks? rockbox mtp or linux mtp?
10:45:26scorcheZagor: i may be having a brain freeze here, but has anything happened with regards to mentor summit reimbursement?
10:45:52pamauryZagor: I don't know ! I'm investigating :(
10:45:56funmani would guess the 'industry standard test' for MTP is "does windows media player work with it?"
10:46:20Zagorscorche: I was under the impression we finished that up a while ago?
10:46:48 Quit mt (Ping timeout: 252 seconds)
10:46:50scorcheZagor: we could have, but i seem to not remember that at the moment - could be i just need to sleep
10:47:51dfktlinuxstb: <−− not sure what to make of that...
10:48:37scorcheZagor: i dont see it in my paypal, at you recall the means used to transfer the reimbursement?
10:48:55funmandfkt: joeyg already reported it this morning
10:49:02Zagorscorche: I think we did a bank transfer
10:49:07dfktfunman, ah ok
10:49:12linuxstbdfkt: joeyg was here earlier and mentioned that. See the logs from earlier today ( )
10:49:29Zagorscorche: I can't reach my bank right now, but I'll check later
10:50:12 Quit loveless (Quit: loveless)
10:50:21scorcheZagor: i do not see records of any bank transfer in my main account either
10:50:49dfktfunman, by the way - is there now a v2 bootloader for the clip+, or rather a newer one than the v1 in svn?
10:51:00Zagorscorche: ok. I'll look on my side tonight.
10:51:06wodzfunman: I just tested with HZ set to 50 and I don't see any difference so I guess kernel tick is fast
10:51:17scorcheZagor: thanks
10:51:39funmandfkt: i sent v2.0 bootloader to B4gder, just waiting for him to put them on the download server
10:51:51dfktfunman, thanks!
10:51:55funmanwodz: okay, what do you think of profiling?
10:51:59 Join komputes_ubuntu [0] (~komputes@ubuntu/member/komputes)
10:52:34B4gderI'll fix them during the day I hope
10:52:50ThomasAHfunman: Do I assume correctly that testing patch 952230 (mmu) with boosting disabled is no longer needed since you got crashes with that patch applied?
10:53:36wodzfunman: I glanced at wiki page about profiling and I don't see the potential to use it in this case. From what I understood I can compare two implementations of some parts of code with profiling but not the code itself
10:53:37funmanThomasAH: yes, better test current svn since i disabled this function completely to confirm that there are unrelated crashes
10:54:36ThomasAHfunman: ok
10:54:47funmanwodz: perhaps can help?
10:55:21 Nick fxb__ is now known as fxb (
10:55:49wodzfunman: As You see in comments I looked it
10:55:51 Nick fxb is now known as fxb__ (
10:56:15wodzfunman: the data it provides are rather meaningless
10:57:24funmanif a thread took too many ticks compared to others i guess you would have noticed it
10:58:16funmanah i notice profiling is only for specific functions
10:58:33wodzfunman: but when decoding codec thread always hits the highest score
10:58:42 Join mt [0] (~mtee@rockbox/developer/mt)
10:58:50funmanhm well that sounds normal
10:58:58wodzfunman: I checked this on my mini 1G which runs ok
11:00:07funmanis PCM 'decoding' slow as well ?
11:00:46wodzYou mean wav play?
11:01:27wodzlast time I checked it was ok - I mean player runs boosted when rebuffering and than it goes unboosted
11:02:10*pamaury doesn't understand why something on his computer want to reset his mtp device after it started working... probably a fucking conflict between several software
11:04:07funmanwodz: can you access the previous value of program counter when the CPU is interrupted?
11:05:14wodzfunman: You mean backtrace?
11:05:16funmanto know which function was executing before the interrupt
11:05:47wodzfunman: I think no
11:06:03funmani guess for complete backtrace you have to store each function call so it would be more complex, but at least knowing which function is executed would help
11:06:30wodzwell in theory this should be in exception frame stored on the stack
11:06:38 Quit bmbl (Quit: Bye!)
11:07:10funmanwell except from compare profilings between mini 1G and MPIO i don't know what you could do
11:08:03wodzI mean the current value of PC is stored on stack when exception is processed
11:08:17 Join dfkt_ [0] (~dfkt@unaffiliated/dfkt)
11:09:23funmanwhat about this: retrieve the value on each tick interrupt, store it in a fixed size buffer say, (HZ*60*5) for 5 minutes
11:09:33JdGordonS_a_i_n_t: pong
11:09:54 Quit mt (Ping timeout: 252 seconds)
11:10:01funmanrun codec, write log to disk, and retrieve the function name for each PC value, and see if a function is well ahead of the others
11:11:18funmanbtw: button_hold() -> ?true:false isn't needed
11:11:19 Quit dfkt (Ping timeout: 245 seconds)
11:11:31funmanafaik any integer will be promoted to bool
11:12:02 Join mt [0] (~mtee@rockbox/developer/mt)
11:13:25pamauryJdGordon: I'm trying your patch and there are several things that are not great :)
11:13:46 Quit komputes_ubuntu (Ping timeout: 264 seconds)
11:14:04funmanwodz: what is the purpose of lcd_initialized? it is never set to false, and no lcd functions should run before lcd_init_device() ?
11:14:19JdGordonpamaury: hehe
11:14:28JdGordonback in 30 or so though.. tucker time
11:14:54 Join dfkt [0] (dfkt@unaffiliated/dfkt)
11:14:59wodzfunman: it was taken from m3 lcd driver code. I didn't think of it much
11:15:20funmanwodz: in set_cpu_frequency(), a comment says PLL locking can take up to 10ms, did you measure it?
11:15:32 Quit dfkt_ (Disconnected by services)
11:16:12funmanalso iirc lcd performance is pretty fast no?
11:16:16wodzfunman: This is what datasheet for cf5249 sais. Nothing can be done with this
11:16:19 Join komputes_ubuntu [0] (~komputes@ubuntu/member/komputes)
11:16:26wodzfunman: lcd is pretty fast yes
11:16:49funmanwell if RAM & CPU are fast there must be a piece of code slowing things down !
11:17:01 Quit mt (Ping timeout: 240 seconds)
11:17:48wodzfunman: moreover this piece of code is specific to MPIO port since performance penelty is not observed on other CFs
11:18:26wodzBUT pixelma measured mem performance on M5 and results are surprising
11:18:51funmanwhat were the results again?
11:19:13 Join mt [0] (~mtee@rockbox/developer/mt)
11:19:52*pamaury is pretty sure that somehow, libmtp is messing up with mtp sessions but doesn't have the courage look at the code once more
11:20:26pixelmathe lcd init things in the M3 driver sound like they could have to do with the fact that the main unit M3 doesn't have a display and you can only attach an lcd remote (not necessary though)
11:20:50wodztest_mem gives on MPIO: unboosted write 95kB/s, ubusted read 55 kB/s, boosted write 267kB/s and boosted read 154kB/s. Pixelma posted some results on IRC from iaudio M5 "bufsize: 514048, write ticks: 15 (267 kB/s), read ticks: 26 (154 kB/s) - no change when boosted or unboosted"
11:21:07 Join stoffel [0] (
11:22:05funmanthere were some changes to test_mem last days, perhaps worth testing again ?
11:22:38funmanwodz: is the MPIO still slow if you force boosting?
11:23:44wodzfunman: what do You mean still slow? To play mp3 it needs 105-108MHz according to buffering thread debug menu
11:24:13 Quit TheSeven (Ping timeout: 245 seconds)
11:24:29wodzso it decodes realtime but runs mostly boosted which is not the case on other CFs
11:24:51funmanwodz: debug menu -> cpu frqeuency and increase the counter
11:25:09 Join mitk [0] (~mitk@
11:25:26funmanif decoding is much faster then it'll point to a problem in set_cpu_frequency()
11:25:47wodzI don't understand
11:25:57 Join mt_ [0] (~mtee@
11:26:00 Quit mt (Ping timeout: 260 seconds)
11:26:15 Nick mt_ is now known as mt (~mtee@
11:26:49funmanif set_cpu_frequency() is slow, then removing unboosted->boosted or boosted->unboosted transitions should make decoding much faster
11:27:15 Quit komputes_ubuntu (Quit: I haven't slept for ten days, because that would be too long.)
11:28:09wodzset_cpu_frequency() is the same on all CFs
11:28:43funmanreally? i was wondering why it wasn't in a common file
11:28:55 Join komputes_ubuntu [0] (~komputes@ubuntu/member/komputes)
11:29:08funmanthe difference between boosted & unboosted mem speed on m3 and mpio would point to a difference
11:29:16funman*between 2 CFs
11:30:10wodzfunman: But I have some doubts about results from M5
11:30:42wodzfunman: results from MPIO are in simple proportion to cpu/bus frequency
11:31:00wodzand this is what I expected
11:31:41funmani see mpio changes adclk
11:32:01wodzthis is for ADC
11:32:17funmanonly for default freq though?
11:32:27funmanah no sorry, i misread
11:33:18wodzthis controlls how often ADC interrupt fires (adclk/4096)
11:33:52funmanmpio changes CSCR3 but m5 changes CSCR1 ?
11:33:57funman(for LCD)
11:34:16wodzlcd is connected to different chipselect
11:35:06funmanwhich performance does test_codec give if you force CPU boosting like i suggested?
11:35:36wodztest_codec always run boosted
11:35:49 Quit KoRn_Thoughtless ()
11:35:51funmanhm right
11:36:31funmanso, memory speed is the same than M5 (in test_codec at least)
11:37:01funmanyou said test_codec numbers didn't change with HZ set to 50 ?
11:37:29funmanisn't the difference with M5 test_codec numbers like twice slower?
11:37:31 Join bmbl [0] (
11:37:32 Quit bmbl (Changing host)
11:37:32 Join bmbl [0] (~Miranda@unaffiliated/bmbl)
11:38:27wodzI didn't run test_codec with HZ 50.
11:38:54funmandid you test with boosting % in buffering thread debug menu ?
11:39:37funmanIMO it is not very reliable
11:39:53TorneS_a_i_n_t: Weird. You're the only one having the problem still that I know of :)
11:40:25funmanCPU can be boosted during nearly a full tick without being noticed by this menu (provided it isn't boosted at the time of the tick)
11:41:14wodzsure but from what I know people see almost no % boosted when playing mp3 on other CFs
11:48:06***Saving seen data "./dancer.seen"
11:50:51 Nick komputes_ubuntu is now known as komputes (~komputes@ubuntu/member/komputes)
11:51:04 Quit bmbl (Ping timeout: 260 seconds)
11:59:00GodEaterhas Torne's fix for the ipod powering itself on randomly been commited yet?
11:59:35gevaertsI think so
11:59:47JdGordonpamaury: that patch was only proof-of-concept.. obviously not commitable :)
12:00:32gevaertsZagor: does look correct ?
12:00:39gevaertsIt avoids some false reds
12:01:58funmancould it be printed anyway?
12:03:41TorneGodEater: i reverted the change that caused that, yes
12:04:01TorneGodEater: i'm clearing IRAM on shutdown instead, which shouldn't be able to *cause* any problems
12:06:50 Join watto [0] (~watto@
12:14:42GodEaterso update to current build should stop my ipod turning on randomly?
12:15:38 Quit CGL (Remote host closed the connection)
12:16:15 Nick fxb__ is now known as fxb (
12:16:23 Nick fxb is now known as fxb__ (
12:17:53TorneGodEater: yes
12:18:29 Join einhirn [0] (
12:20:57CIA-5New commit by funman (r25925): wmafixed.h: remove double declaration
12:25:48 Quit Zambezi (Changing host)
12:25:48 Join Zambezi [0] (Zulu@unaffiliated/zambezi)
12:28:09 Join kugel [0] (~kugel@rockbox/developer/kugel)
12:35:09JdGordonwe need a better way of knowing which screens info is probably wanted.... current_screen() is terrible to know if we should be showing the radio tokens or music tokens in the sbs
12:35:15JdGordonditto for rec toeksn
12:36:17kugela current_music() token (the function exists already) should probably be added
12:36:44kugelor was it called last_music()?
12:36:58wodzTesting my FS #11254 I saw that usb icon is not centered on screen. Is it my patch problem, sim problem or general problem?
12:37:02JdGordonnot really a token, some like %pb are used in both
12:37:19JdGordonwodz: it could be the theme you are using...
12:37:59wodzI tested default builds of sim for different targets
12:39:52 Join M3DLG [0] (~M3DLG@
12:42:44 Join dfkt_ [0] (~dfkt@unaffiliated/dfkt)
12:43:11pamauryJdGordon: there is bug in you screen if one select HID->battery only, the HID driver is loaded anyway (easy to fix). I also disabled the splash screens because they prevented the usb connection sometimes
12:43:39JdGordonhid->battery only shouldnt be there i think?
12:43:57pamauryJdGordon: it should be renamed to "no hid"
12:43:59pamauryJdGordon: I also don't understand why you poll in usb.c, why don't you send back a message to the usb thread when the choice is made
12:44:09pamauryJdGordon: are there zillions of warning :)
12:44:15pamaury*there are
12:44:19JdGordonwhat type of warnings?
12:44:54JdGordonI didnt use another event because I'm not sure how to cleanly send the event back
12:45:53 Quit dfkt (Ping timeout: 245 seconds)
12:47:08 Quit M3DLG (Ping timeout: 245 seconds)
12:47:10 Quit dfkt_ (Ping timeout: 240 seconds)
12:47:52pamauryJdGordon: functions calls without prototypes
12:48:16JdGordonlike i said, quick and dirty :) i'll have a play now to clean it up
12:48:49JdGordonpixelma: I dont suppose you've played with the fm default skin yet?
12:48:57*JdGordon is ready to commit that
12:49:09funmanlinuxstb: do shorten and flac decoders share the same directory only because of golomb.h and bistream.{c,h} ?
12:51:30pamauryJdGordon: you can wait a bit before cleaning, I have done modifications, I'll pastebin it later
12:51:48JdGordonmods to your code or mine?
12:52:33pamaurymods to your code
12:52:47pamaury(and mine also about MTP)
12:52:52funmanlinuxstb: oh i see shorten was added by lowlight, not by you
12:53:39Zagorgevaerts: how does a note line look?
12:55:26 Join ucchan [0] (
12:56:13JdGordonok, I've just changed it to not poll... testing to see if it actually still works
12:58:07linuxstbfunman: They're both from ffmpeg, so yes, I guess they shared the directory to avoid duplicating things. But that was a long time ago, so maybe we wouldn't do it the same way today (e.g. common things could be moved to the codec lib, which didn't exist back then).
12:58:35 Quit kugel (Remote host closed the connection)
12:59:04pamauryJdGordon: there's no reason for this to not work, just split case USB_INSERTED in case USB_INSERTED: another case USB_USB_SELECTION_ACK or something like that
12:59:18JdGordonpretty much what I've done :)
12:59:20pamauryor SYS_USB_ATTACH_ACK
13:03:34 Quit komputes (Ping timeout: 264 seconds)
13:03:34gevaertsZagor: I'm trying to find out again :)
13:03:36pamauryJdGordon: also, why when I select MTP in the screen for example and then select "connect", the screen does not disappear until next button press ?
13:04:14JdGordonbecause I think it needs to force a redrw on the previous screen.. should be a simple fix
13:04:24JdGordongrr... its no worky
13:12:08JdGordonwe need a vertical centering tag in the wps...
13:13:20CIA-5New commit by uchida (r25926): chunksize decreases 4 bytes regardless wave/wave64.
13:16:20*JdGordon thinks about how he can use the skin engine to draw the lists
13:21:33 Join kugel [0] (~kugel@rockbox/developer/kugel)
13:24:18gevaertsZagor: path/to/file.c:999: note: some text
13:31:20funmangevaerts: would the line still be displayed ?
13:31:44gevaertsfunman: that patch has no influence on what is shown as far as I can see
13:33:13 Join dfkt [0] (~dfkt@unaffiliated/dfkt)
13:37:25funmanlinuxstb: what is the condition of libffmpegFLAC/decoder.c:262 ? in ffmpeg it's simply if (s->bps > 16)
13:38:05funmandisabling the ARM asm and using C here gives a tiny speedup on Clipv1 (my sample decodes in 52 ticks instead of 53, i can't measure longer files due to small buffer of clipv1)
13:39:46 Join mikroflops_ [0] (
13:40:49 Join robin0800 [0] (
13:43:38 Quit mikroflops (Ping timeout: 246 seconds)
13:44:55 Quit kugel (Remote host closed the connection)
13:48:10***Saving seen data "./dancer.seen"
13:51:43 Quit ucchan (Quit: Leaving...)
14:00:37funmana 45s files on fuzev1 decode in 3 ticks faster
14:01:10funmantest_codec gives the same result on 3 runs, but I still would like to make sure my file is executing this case
14:01:49funmanit's a 16 bps file
14:06:15funmanpreglow: ping ^
14:09:08linuxstbfunman: I think that condition is just deciding if the result will overflow 32-bit arithmentic - so it chooses a 32-bit or 64-bit codepath. Our flac decoder can be compiled standalone (see Makefile.test in the libffmpegFLAC directory) if you want to add some printfs for testing.
14:10:11funmanjust wondering why it is different from ffmpeg, it seems you made the change but it's not in svn log
14:11:33linuxstbfunman: Are you comparing with current ffmpeg, or the version we used for Rockbox in 2005?
14:19:08 Join komputes [0] (~komputes@ubuntu/member/komputes)
14:20:41funmanhm it looks like it was added in FFmpeg after you first committed it, but in a different way
14:21:55funmananyone want to benchmark before I remove the asm code?
14:21:58linuxstbfunman: Yes, I was just coming to the same conclusion...
14:30:17 Join Schmogel [0] (
14:30:59 Join M3DLG [0] (~M3DLG@
14:35:43funmani'll try with eabi
14:36:29CIA-5New commit by wodz (r25927): HD200 - Reduce wait states when writing to lcd.
14:36:45funmanwodz: is the LCD still readable when backlight is off?
14:37:00CIA-5New commit by wodz (r25928): HD200 - Remove checks if driver is initialized. lcd_init_device() is always called first.
14:37:31wodzfunman: yes
14:38:22pixelmagreyscale and monochrome displays usually are
14:41:39wodzpixelma: Could You run again test_mem on M5? Running tests on my MPIO I had once the situation that device was boosted all the time, test_mem printed equal results for boosted and unboosted
14:44:09 Part LinusN
14:50:34 Quit mt (Read error: Connection reset by peer)
14:54:58 Join Exqb [0] (
14:56:23funmanusing eabi gcc, there's no difference between C & asm version.
14:56:58wodzamiconn: You were right - reading routine in ata-as-mpio.S is broken while writing seems to work ok.
14:57:08pixelmawodz: today in the evening
14:57:23wodzpixelma: thanks
14:59:11 Join mt [0] (~mtee@rockbox/developer/mt)
15:01:22joeyglinuxstb: no, nobody except me has used the SDCFG value - but for what it's worth, I used it about six times last night
15:01:42CIA-5New commit by funman (r25929): flac: remove ARM assembly ...
15:03:26linuxstbjoeyg: OK. I would like someone else to confirm it before making another release though. Feel free to point people to that tcctool.exe I posted earlier.
15:06:33joeygsure thing
15:06:33 Quit antil33t (Read error: Connection reset by peer)
15:06:39 Join antil33t [0] (
15:06:44CIA-5New commit by wodz (r25930): HD200 - add support for the device in greylib
15:07:41 Quit M3DLG (Ping timeout: 240 seconds)
15:11:29 Join adnyxo [0] (
15:14:11funmanmc2739: +3hours runtime on e200v2 in 2 months, not bad ;)
15:14:16 Join evilnick [0] (~0c140464@rockbox/staff/evilnick)
15:16:30 Quit komputes (Ping timeout: 264 seconds)
15:16:55mc2739funman: yes, that is very good, but still a little bit to go to match or exceed the OF
15:18:44funmanmy clipv1 needs ~ the same current than your e200v2
15:18:54funmanbut bertrik's one needs ~ the same than my fuzev1 (a bit lower)
15:19:06funmanperhaps we can find something there
15:20:09funmani should bench the OF on my fuze to check but it seems on it we match the OF
15:20:32 Join komputes [0] (~komputes@ubuntu/member/komputes)
15:20:46funmanmy fuzev1 needs 37mA (rockbox) and on your e200v2 OF needs 38.4
15:21:07mc2739wasn't the difference on the clip something to do with the backlight?
15:21:33funmanhm no i think it had no effect
15:21:45funmanand afaik bertrik's clip didn't need this change
15:22:18mc2739what battery capacity did you use for that calculation?
15:22:35 Quit komputes (Read error: Connection reset by peer)
15:22:41funmane200v2? 730mAh
15:22:55 Join domonoky [0] (~Domonoky@rockbox/developer/domonoky)
15:23:25funmanBATTERY_CAPACITY_DEFAULT in config/sansae200v2.h
15:23:25 Join komputes [0] (~komputes@ubuntu/member/komputes)
15:24:05mc2739ok, my e200v2 has a 750mah, same battery as e200v1, but it may not be the standard for the v2 (I bought mine refurbed)
15:24:35funmanhm ok
15:24:45CIA-5New commit by wodz (r25931): HD200 - Disable asm optimised reads as it showed to be broken. Enable asm optimised writes. test_disk was failing because of broken read routine.
15:25:31funmancurrent use is closer to 46mA then, not 45
15:26:58CIA-5New commit by funman (r25932): as3525(v1) : correct CPU_FREQ
15:31:04 Quit joeyg (Quit: go to work)
15:31:20 Quit wodz (Quit: Leaving)
15:44:34 Join MrShlee [0] (
15:45:46 Join kugel [0] (~kugel@rockbox/developer/kugel)
15:45:53 Join ezzieyguywuf [0] (
15:47:20ezzieyguywufI thought this would be a good place to ask: are there any linux media players that have as much functionality as rockbox does on my dap? i.e. inserting whole folders "next" or "last" etc?
15:47:20kugelfunman: have you checked arm7?
15:47:20ezzieyguywufI'm trying out mpd, which is pretty awesome, but doesn't give me the flexibility I'm used to on my dap :-P
15:48:08kugelthese asm optimizations often have a strong effect for arm7 but not for arm9+
15:48:08funmanmc2739: could you run and paste the output of debug menu -> ioport?
15:48:08funmankugel: nope i have no arm7
15:48:08 Part Zagor
15:48:11***Saving seen data "./dancer.seen"
15:48:37 Quit mitk (Quit: Leaving)
15:48:50 Join Zagor [0] (~bjst@rockbox/developer/Zagor)
15:51:31 Join bluebrother [0] (
15:51:31 Quit bluebrother (Changing host)
15:51:31 Join bluebrother [0] (~dom@rockbox/developer/bluebrother)
15:53:12funmanthe registers are identical between my fuzev1 & clipv1, safe for ADC, RTC, and ID
15:53:19S_a_i_n_tezzieyguywuf: That question would probably be better suited for #rockbox-community if anything
15:53:28S_a_i_n_tAt least it wouldn;t be off-topic there.
15:53:33ezzieyguywufS_a_i_n_t: yep, I'll head over there thanks
15:54:47 Quit bluebroth3r (Ping timeout: 248 seconds)
15:54:51amiconnfunman: Are you sure gcc isn't slower than asm? arm7tdmi behaviour is probably quite different from fuze
15:55:15amiconnThere is a reason why this asm exists...
15:56:27funmanamiconn: yes, please check the logs
15:56:29 Part ezzieyguywuf
15:57:22amiconn[15:47:48] <funman> kugel: nope i have no arm7
15:57:33 Join jgarvey [0] (
15:57:57amiconnTo me that looks like you disabled the asm for all arm targets, based on performance figures from fuze *only*
15:58:51funmanit is exactly what i did, and i told that in the commit log
15:59:04funman15:54 < amiconn> funman: Are you sure gcc isn't slower than asm?
15:59:45amiconnYes, and my point is that this is bad
16:00:08amiconnWhile gcc isn't slower on your fuze, it might very well be slower on arm7tdmi (e.g. PP)
16:00:14funmanI thought if it was armv4 code there wouldn't be differences if it's run on armv5
16:00:28funmanwell or any version of armv4
16:00:51amiconnI assure you that there are even differences between arm9 (v4) and arm7 (v4)
16:01:02amiconnLet alone v5 or v6
16:01:21funmani only thought about new instructions
16:01:24amiconnPipelining is quite different
16:01:39amiconnAnd execution time of the same instructions is also quite different
16:01:50funmanso we would need benchs on arm7tdmi and armv6 ?
16:02:21kugelat least arm7 I'd say
16:02:42amiconnOn arm 4, a single load is 3 (!) cycles, and ldmia needs n+2 cycles. On arm9 (v4 or v5) a single load is single cycle, and ldm is n cycles
16:03:03funmanbtw i thought flac was slower when using eabi, but here (after upgrading to gcc 4.4.3) it was a tiny bit faster
16:03:15amiconnThat's just one example out of many differences
16:03:34amiconns/arm 4/arm7/
16:04:09amiconnThat means on arm9 it's almost the same whether you use ldm, on arm7 it's crucial
16:04:22funmancan you bench it?
16:04:30amiconnOn arm11 in turn it becomes crucial again
16:04:35kugelfunman: it's slower on arm7, nobody has checked arm9 so far I believe. it'll be faster with -O2 (currently flac is build with -O only)
16:04:43funmanamiconn: i won't touch the asm anyway
16:05:28amiconnI'm quite sure it has been benched when it was added
16:05:36amiconnImo it should just be reactivated
16:06:13funmanwhat's the point of assembly routines if they aren't faster?
16:06:21funman(than C)
16:06:43amiconnThey almost certainly *are* faster on arm7
16:06:51funmanhow much?
16:06:56kugelcan't someone just bench it?
16:07:00amiconnOtherwise they wouldn't have been added in the first place
16:07:19funmangcc could have gone smarter since
16:07:21amiconnBack when the flac codec was new, the only arm targets were arm7tdmi (i.e. PP)
16:07:28amiconnIt's still the same gcc
16:08:08funmanif someone give me numbers i'll reactivate it for arm7
16:09:31funmananyone with a clipv1 which runs longer than 8 hours with current build?
16:09:54funmanor anything more recent than r25900
16:14:28 Join JohannesSM64 [0] (
16:14:58amiconnfunman: "03.55.15 # <preglow> went from 20% to 4% boost at 21/75mhz for a -8 flac file"
16:15:23amiconnThat's from
16:16:18 Quit Battousai (Read error: Operation timed out)
16:17:29 Join Battousai [0] (~bryan@gentoo/developer/battousai)
16:18:42JdGordonso lets say, hypothetically, that the skin engine could be used to draw the individual items in the list... would a single viewport be enough to do it (Similar to how the playlist viewier in the wps works)...
16:19:11JdGordonThe single viewport would move but everything inside it would be relative to that, so the text and icons would line up correctly
16:19:43JdGordonit could then use some smarts to decide to draw in a grid or list mode
16:22:37JdGordonthe only problem I can see with using only a single viewport is you are very limited to text placement
16:23:11*kugel would like the skinning/theming to mature a bit before new additions
16:23:17JdGordonunless a centre vertically tag is added, and/or bottom align tag
16:29:34JdGordonit also needs the obvious "draw the damn icon from the icon code instead of the wps code" thing
16:29:48funmanamiconn: what does test_codec say?
16:30:27funmanboost % in the bufferign thread isn't a reliable performance counter, i'm not even sure why it's here
16:30:36 Quit mc2739 (Ping timeout: 246 seconds)
16:32:30 Join mc2739 [0] (~mc2739@rockbox/developer/mc2739)
16:33:16funmanmc2739: thanks! btw check your date setting i think it's a bit off ;)
16:34:39funmanmc2739: interesting, the 'design version' (at 0x20) is different
16:35:04 Join apoelstra [0] (
16:35:08 Nick apoelstra is now known as joeyg (
16:37:27funmanno other difference (except ID, RTC, ADC, backlight brightness, and HP volume)
16:37:51 Quit Battousai (Remote host closed the connection)
16:39:58 Join MethoS- [0] (~clemens@
16:42:32 Join Battousai [0] (~bryan@gentoo/developer/battousai)
16:46:40 Quit rvvs89 (Changing host)
16:46:40 Join rvvs89 [0] (ivo@pdpc/supporter/base/rvvs89)
16:48:02mc2739funman date setting is fine, screendump format is ddmmyy-hhmmss
16:50:33funmanoops i was misreading the RTC registers
16:52:15mc2739oh, I thought you saw something funny in the filename of the screendump
16:53:47 Join Orion777 [0] (
16:54:35Orion777other than .rockbox what do I need in my root directory?
16:54:53gevaertssome audio files might be useful
16:55:15Orion777i know but I read i'm supposed to have a bin file there
16:55:17TorneOrion777: it depends what player you have.
16:55:29Torneon some players the bootloader is a file that goes in the root directory
16:55:36Torneon others, the bootloader is installed some other way
16:55:50Orion777its a fuze and it says i need fuzpa.bin file but one was pre-patched or something
16:56:06Orion777the link is broken
16:56:54TorneYou shouldn' tbe downloading a pre-patched copy of the fuze firmware; that's a copyright violation
16:57:05Tornethe installation instructions explain how to make one
16:57:24Torne(or the automatic installer will do it for you)
16:57:37Orion777oh ok, it was in a forum
16:57:50Orion777i'll look at the manual
17:00:58 Join Forsaken_ [0] (~chatzilla@
17:03:51 Quit Forsaken_ (Client Quit)
17:03:58 Quit Orion777 (Quit: A fine is a tax for doing wrong. A tax is a fine for doing well)
17:05:07 Part Zagor
17:08:11 Join halmi [0] (~netbook@
17:08:37amiconnfunman: I can't test atm. Back then test_codec didn't exist
17:11:14 Join Hillshum [0] (
17:13:28funmanamiconn: it can wait, please also test eabi when you do
17:13:38funman(if no one beats you to it)
17:15:12 Quit ansuz (Remote host closed the connection)
17:15:56funmanranma: any measured battery performance with your modified rockbox ? (re: forum)
17:19:53ranmaUnfortunately no. Didn't measure today, but when I first tried setting those bits to output it had no effect on power draw, low/high level didn't seem to matter.
17:20:29ranmaI just wanted to repeat reading the GPIO state with the proper io port this time :)
17:21:33funmanok ^^
17:21:38ranmaI should try measuring again to see if the changed DRAM settings have any effect (IIRC you enabled some dynamic clock bit?)
17:21:43funmanbtw do you have a recent battery bench? (post 25900)
17:21:53 Quit Battousai (Remote host closed the connection)
17:22:33funmanwell i guess instant power use would be enough
17:22:59*funman slaps himself repeatedly for not reading your last sentence
17:23:00 Quit parafin (Quit: So long and thanks for all the fish)
17:23:04 Join parafin [0] (
17:23:18 Join dfkt_ [0] (~dfkt@unaffiliated/dfkt)
17:23:33funmanyes in r25900 i changed a setting of memory controller: (one of the numerous?) SDRAM clock is disabled when there is no operation
17:24:28funmani think now on some models we're very close to the OF, i must check my Fuze but i don't want to leave the comp running all night ;)
17:25:11 Quit dfkt (Ping timeout: 260 seconds)
17:27:37ranma20mA idling with display off
17:28:03funmanhm i never benched idling
17:28:35ranmaAround 30mA playing mp3 with display off
17:29:04funmanthat's pretty low, lower than clip/fuze/e200v2
17:29:53ranmaDifferent multimeter though than last time (cheap 1000 Yen multimeter I bought in Akihabara)
17:29:57funmanlowest is fuze at 37, clip/e200v2 at 45
17:33:57funmanbertrik: can you try on your clip and look in debug menu -> io port? (i removed the last 2 spaces), and then compare to what i got on mine: ?
17:35:10 Join Battousai [0] (~bryan@gentoo/developer/battousai)
17:37:11ranmaInteresting, with my locally patched version I now get around 25mA/35mA
17:39:37 Quit lpereira (Quit: Leaving.)
17:41:26 Quit B4gder (Quit: It is time to say moo)
17:42:04funmanwhat do you mean by "B6 is LCD reset"
17:42:19 Join dockimble [0] (~dockimble@
17:44:05 Quit Battousai (Remote host closed the connection)
17:45:42 Join toffe82 [0] (~chatzilla@
17:47:06 Join Battousai [0] (~bryan@gentoo/developer/battousai)
17:47:24ranmafunman: GPIO B6 seems to be connected to LCD reset. Setting it to output and writing 0 resets the display controller.
17:48:02ranma'Display sometimes shuts down' may be because it's an input in svn, so the reset pin is floating...
17:48:15***Saving seen data "./dancer.seen"
17:48:59dockimblehas there been any work on possibly using rockboxed mp3 players as external sound cards?
17:49:02ranmaDon't know if that's valid for the other revision too.
17:49:15funmanranma: perhaps it's visible in the OF
17:49:38funmandockimble: yes, usb audio
17:50:06funmanI don't know the state of it though (it doesn't seem to be in svn yet)
17:50:21dockimbledoes it work?
17:51:00ranmaHmm, can't cross-check with OF for current draw, the drop of the cheap multimeter is too high, it just shuts down with 'battery low'
17:52:11 Quit JohannesSM64 (Max SendQ exceeded)
17:52:23 Join Bullet` [0] (~Bullet`
17:53:59 Part Bullet`
17:55:18 Quit bluebrother (Ping timeout: 246 seconds)
17:56:32 Quit petur (Quit: buggerit)
17:56:40 Quit Exqb (Quit: BitchX: the IRC client with hair on it's balls)
17:56:58 Join bluebrother [0] (
17:56:58 Quit bluebrother (Changing host)
17:56:58 Join bluebrother [0] (~dom@rockbox/developer/bluebrother)
17:57:19 Quit pamaury (Ping timeout: 240 seconds)
18:00:00 Quit halmi (Quit: halmi)
18:01:53 Join jl-- [0] (
18:03:42 Quit jl-- (Client Quit)
18:05:33 Quit freddy_ (Ping timeout: 240 seconds)
18:06:25 Quit MrShlee (Quit: Leaving)
18:06:53ranmafunman: In lcd_init in OF, b6 is set to out and 0 (reset)
18:08:26 Join stooo [0] (
18:10:00 Join JohannesSM64 [0] (
18:11:03CIA-5New commit by ranma (r25933): See 0x429c in OF (lcd_init), B6 is lcd reset line. ...
18:12:24 Quit Hillshum (Ping timeout: 246 seconds)
18:17:14ranmafunman: Looking at the OF there is a third hardware variant for C200v2 determined by A1 strap value?
18:19:31 Join domonoky1 [0] (
18:21:25funmanwhat is 'strap value'
18:21:38 Quit domonoky (Ping timeout: 260 seconds)
18:22:07funmanbtw there is 2 LCD drivers and 2 FM pinout for the fuzev2, but only 1 of each has been seen until now
18:22:21funmanso don't rule out test code being run in production
18:22:47ranmapullup or pulldown on an (usually output) GPIO, so that it you configure it as input, your can read 1 bit of information. :)
18:28:15 Part stooo
18:29:06 Quit komputes (Ping timeout: 260 seconds)
18:32:39 Join watto1 [0] (~watto@
18:33:17 Join Horscht [0] (~Horscht2@xbmc/user/horscht)
18:34:35CIA-5New commit by alle (r25934): Convert quotes to fancy ones in the license text as well
18:35:09 Quit stoffel (Ping timeout: 246 seconds)
18:35:46 Join Barahir [0] (
18:38:13 Join bmbl [0] (~Miranda@unaffiliated/bmbl)
18:38:38 Join M3DLG [0] (~M3DLG@
18:40:18 Quit watto (*.net *.split)
18:40:18 Quit flydutch (*.net *.split)
18:40:18 Quit Barahir_ (*.net *.split)
18:41:19 Join komputes [0] (~komputes@ubuntu/member/komputes)
18:41:46topikfunman: cpu_freq was wrong/broken on as3525v1 too?
18:42:11funmanno, my change was only cosmetics
18:42:43funmanthis value is written to a variable, but then the first call to set_cpu_frequency() will change it before we get the chance to read it
18:43:44topikah ok. my clip+ hasn't crashed since r25924. with the display on (so i can read crash messages) it drains fast though
18:44:02funmanstill running here too
18:45:01funmanwhich makes me think the crashes I have seen while CPU was boosted came while i played stuff from µSD
18:45:24funmantest_disk ran ok but i didn't modify it to test µSD
18:46:47topikhow come that before you disabled set_cpu_frequency it was throwing 'undefined instruction' errors? was something missing?
18:47:56funmanwell, bugs
18:48:35topiki'm trying to understand what "undefined instruction" means :)
18:48:42funmanafaict memory was sometimes misread after modifying CGU_PERI/CGU_PROC
18:49:00funmanit means that the value loaded from memory can't be decoded as an instruction
18:49:51 Join webguestFuze [0] (
18:50:28 Quit DerPapst (Quit: Leaving.)
18:50:39topikthat makes sense
18:52:20kugelthat's the code version of data abort basically
18:53:44funman2 reports on ABI that FM doesn't work on clip+
18:53:48funmannot detected
18:53:56topiki stopped writing those down. they were too many. trying to execute something that's not an instruction sounds like a sure way towards gloom
18:54:59*amiconn grumbles about funman
18:55:09 Join Hillshum [0] (
18:55:32pixelmareminds me a bit of the early days of c200 radio support - sometimes it was just not detected until you started the radio once in the OF
18:55:42 Join DerPapst [0] (
18:56:04funmanamiconn: what's wrong?
18:56:40funmanpixelma: ah, nice to know. did it require rebooting fast enough to rockbox?
18:57:01preglowfunman: hey, why remove perfectly working asm code?
18:57:22funmanpreglow: well did you read the commit log?
18:57:22amiconnYeah, that's what I'm grumbling about as well
18:57:39preglowtiny bit slower, yes
18:57:48preglowbut the code was there, and it's slower now, doesn't matter how much slower
18:57:57funmanno, it's faster now.
18:58:05preglowi find that really unlikely
18:58:07amiconnWhile providing (imo) enough evidence that this asm is a good thing, I'm now essentially forced to run a speed test
18:58:16preglowwhat target?
18:58:16*amiconn is building
18:58:25funmanit's mentioned in the log.
18:58:31preglowif c is faster on ipods, i'll eat a hat or two
18:58:50amiconnAnd I pointed you to the log that shows on PP the asm is significantly better
18:58:58*amiconn will soon have percentages
18:59:00funmandoesn't show anything
18:59:07 Quit DerPapst (Client Quit)
18:59:14amiconn2006-03-06 *does* show it
18:59:27funmanboost % doesn't show anything
18:59:34preglowplease also test BOTH decode paths
18:59:44pixelmafunman: no (the radio thing)
18:59:49amiconnpreglow: hmm?
19:00:10funmanpreglow: i tested the one path which had an ASM version
19:00:42preglowtwo asm versions, afaik
19:00:46preglowi'll check, long time since i wrote that
19:00:48funman24bit decoding has only a coldfire helper
19:00:55pixelmafunman: it worked for a while then but sometimes it just vanished again. (guess some startup sequence was wrong or so)
19:01:57preglowweird, i remember coding one for arm as well :>
19:02:41FlynDicefunman: Test_disk passed just fine when I tested write & verify on uSD for 4 bit bus and that was after you moved the boosting to uncached mem as I recall.
19:03:01funmanFlynDice: i didn't move it, it was just a patch never committed
19:03:24FlynDiceah well then....... nevermind
19:03:55preglowbut yeah, i'd expect that asm to be faster on both arm7 and arm9tdmi
19:04:01preglowmore so on arm7, ofc
19:04:21funmanpreglow: i've given numbers on irc today
19:05:00amiconnOn arm9 I think it won't matter much
19:05:40amiconnBut the asm is most definitely faster on arm7tdmi (I'm about to get exact numbers for funman), and I guess it might also be faster on arm11
19:05:51amiconn(will test that as well)
19:05:59 Quit webguestFuze (Quit: CGI:IRC (EOF))
19:06:32preglowcan't remember how the pipeline is set up on arm9 atm
19:06:42 Quit M3DLG (Ping timeout: 252 seconds)
19:06:54 Quit S_a_i_n_t ()
19:07:29amiconnArm9 pipeline is pretty much the same for v4 and v5. v5 just has those few extra instructions
19:08:14preglowall i remember is that arm7 pretty much never overlaps instruction, while some of the newer archs do and have dependencies as a result
19:08:32preglowwhich i didn't think about at all when arm7tdmi was all there was
19:08:44preglowor know about, for that matter :>
19:09:34 Join halmi [0] (~netbook@
19:09:43preglowah, nvm, remember now
19:11:05amiconnIt can be somewhat irritating that the importance of ldm/stm changes in a weird way across arm versions
19:11:18preglowit's important as hell on arm7tdmi
19:11:36preglowbut afaik matters little, or can even be bad if you don't load many regs, on some other
19:13:30amiconnIt doesn't really matter on arm9 (both v4 and v5), but then suddenly becomes important again on arm11
19:13:38 Quit komputes (Ping timeout: 240 seconds)
19:14:19preglowwell, if it doesn't matter it's not too bad
19:14:26preglowif it had a negative impact it would be more annoying
19:16:06funmanthere was no noticeable difference when using eabi gcc (difference less than 0.01s on a 45s file)
19:16:10 Join dys [0] (
19:16:54funmanwhen using default gcc on the same file the difference was between 30ms and 40ms)
19:17:33joeygcompiling gcc and binutils is easier, and the gnu people claim to support eabi more
19:17:54preglowfrom what i've read, eabi is definitely a good thing
19:20:38 Quit einhirn (Quit: Miranda IM! Smaller, Faster, Easier.
19:20:49joeygi couldn't compile arm-elf-gcc without the rockbox patch (which I didn't notice for a while) because there were incompatibilities with the FPU instructions of gcc and newlib
19:21:01joeygwith eabi these kind of incompatibilities don't happen, from what ive read
19:21:16joeygand for floating-point specifically, things are much faster
19:22:38preglowwho needs that anyway :P
19:22:42 Join Xerion [0] (
19:22:43 Quit scorche|sh (Ping timeout: 265 seconds)
19:23:09 Join scorche|sh [0] (~scorche@rockbox/administrator/scorche)
19:23:11funmangigabeast owners ? ;)
19:24:13preglowpft, disable it for power savings!
19:24:22preglowlet them chug integers like the rest of us
19:28:58 Join CGL [0] (~CGL@
19:32:13 Quit dockimble (Quit: Leaving)
19:32:20amiconnDid anyone try building libmad with VFP for the beast?
19:34:56CIA-5New commit by FlynDice (r25935): sd-as3525v2: Add delay after SD_SWITCH_FUNC to while switching to high speed timings and wait until after this switch to bring the card clock back up ...
19:35:02CIA-5New commit by FlynDice (r25936): sd-as3525v2: Set LP bits in MCI_CLKENA for cards after they have been initialized. ...
19:36:52 Join DataGhost [0] (
19:36:52 Quit DataGhost (Changing host)
19:36:52 Join DataGhost [0] (~dataghost@unaffiliated/dataghost)
19:39:45 Join Buschel [0] (
19:40:49amiconnfunman, preglow: FLAC speed C -> ASM
19:41:34amiconniPod G2 (PP5002, ARM7TDMI, broken cache): 387.7% -> 587.5% realtime (51% faster)
19:42:18amiconnMini G2 (PP5022, ARM7TDMI): 395,1% -> 605.3% realtime (53% faster)
19:42:57amiconnGigabeat S (i.MX31, ARM1136): 2582% -> 4110% realtime (59% faster)
19:43:22amiconnfunman: Is that enough evidence to show the ASM is better? </sarcasm>
19:43:24Buschelquite some speed up ;) so, better undo r25929?
19:44:00funmanamiconn: well i had no evidence to trust it
19:44:36amiconnReally, if it wouldn't have been faster, do you think preglow would have done it in the first place?
19:44:54amiconnNow you have, though
19:44:57funmantesting showed it was not fast enough
19:45:01 Join stripwax [0] (
19:45:30 Quit stripwax (Client Quit)
19:45:49amiconnpreglow: Interestingly enough it works rather well on the ARM11 pipeline
19:45:55funmanamiconn: why all the ranting?
19:46:53 Join captainewkl [0] (~2669ecc2@gateway/web/freenode/x-cgmdbodxidgpunbd)
19:48:11funmani just hope it's not a personal problem with me
19:48:16amiconnBecause (imo) you rushed r25929 based on findings from a single arm target, ignoring that there are others, and there is usually a reason for asm blobs
19:48:18***Saving seen data "./dancer.seen"
19:49:00amiconnThe side effect is that we now have more meaningful numbers for the speedup
19:49:15funmanwell i got since the start that there are other targets
19:49:26funmanno need for hours of sarcasm
19:50:09funmani wondered about putting a patch on flyspray but in my experience flyspray patches just get no testing and rot
19:50:52funmanif you have spare arm7 targets and can bring one at devcon next time i'll test on it
19:51:06Lloreanfunman: I think the problem is that you assumed that the original code served no purpose based on a single test, rather than putting in a good faith effort to double check.
19:51:34funmani thought gcc got better, and i did several tests in fact
19:51:37LloreanEven without putting a patch on flyspray, what harm would it have caused to wait a few days and try several times to find testers?
19:51:40kugelgevaerts: I made some progress with the sim-target-tree
19:51:46Lloreanfunman: You did several tests on one target, though?
19:51:47funmani'd have forgotten then
19:51:54LloreanThat's "a single test"
19:52:00LloreanAs in, a single test subject, at least
19:52:03funmanwell i have only one target
19:52:05amiconnfunman: gcc can't have gotten better. We're using gcc 4.0.x for arm from the beginning
19:52:36funmanwell if x changed gcc changed?
19:52:40Lloreanfunman: Why was the ASM so harmful that it would be bad if you forgot to remove it?
19:52:49amiconnx is just bug fixes
19:53:03funmanSometimes assembly is faster, but C is always more
19:53:04funmanreadable and maintainable.
19:53:23funmani'm not a gcc developer
19:53:45funmanamiconn: then go and change our contributing guidelines
19:53:57gevaertskugel: great
19:54:46kugelgevaerts: it will be a bit tricky to use a proper target tree for the sim, but still include some files from the real target's tree (e.g. button-target.h)
19:55:27kugelalso tricky is the location of main() for the sim, and the fact that the actual main runs from a thread separated from the sim main()
19:55:30 Quit funman (Quit: free(random());)
19:55:47 Join DerPapst [0] (
19:56:05kugeli would've been farther if my ide stopped crashing!
19:56:21 Quit DataGhost (Ping timeout: 240 seconds)
20:01:20 Quit JohannesSM64 (Max SendQ exceeded)
20:02:30 Join elinenbe [0] (
20:02:35 Join JohannesSM64 [0] (
20:05:15 Quit JohannesSM64 (Max SendQ exceeded)
20:05:21 Join petur [0] (~petur@rockbox/developer/petur)
20:06:30 Join JohannesSM64 [0] (
20:08:08preglowfunman: for the logs, as a general rule, assembly code will pretty much always be faster, it the coder has done his job well
20:08:13preglowamiconn: sweet numbers...
20:08:42preglowfunman: so in general, if a test says asm slows something down, test again ;)
20:08:54amiconnI'm testing eabi right now (that also means gcc 4.4.3)
20:09:27preglowany reason we're not using 4.4.3? i think i remember it was pretty decent
20:09:35amiconnFor the beast it's 15% faster than (old abi) gcc 4.0.3 - still significantly slower than asm
20:09:54amiconnWe'll go 4.4.3 when going eabi
20:10:05amiconnMost things work with eabi, some things need fixing
20:10:17amiconnThe most notable thing that needs fixing is doom
20:10:17preglowas expected
20:10:37amiconnThis is in fact not due to eabi as such, but due to eabi gcc defaulting to short enums
20:11:06amiconnDoom makes the (silly) assumption that sizeof(enum blargh) == sizeof(int)
20:11:16preglowany language support to fix that, or do we need to go compiler flags?
20:11:46amiconnWe could compile with long enums - but imo it would be much better to fix doom
20:12:25amiconnIt would mean to compile the whole thing with long enums - if you compile just doom that way, the plugin won't be compatible with the core anymore
20:14:09 Quit CGL (Remote host closed the connection)
20:16:05amiconnfunman (for the logs): eabi (gcc 4.4.3) is ~15% faster than old abi on the beast, but even slower (!) than old abi on PP5022 (Mini G2) - by ~4%
20:17:03*amiconn thinks that PP would be better off with thumb for most C code, due to the memory interface
20:19:31kugelI doubt fixing doom is going to happen anytime soon
20:23:26pixelmawe could also just get rid of doom ;)
20:23:52*kugel would actually prefer that
20:24:06amiconnkugel: Imo it's not even difficult - it's just a lot of work
20:24:15amiconnIirc it's "just" the settings code
20:24:32kugelthe settings code is easy to fix
20:24:36*amiconn wonders whether current prboom may even have that fixed already
20:24:46kugelI did that and I even got to the main menu, but it then crashed
20:24:50amiconn(iirc rockdoom is based on that)
20:25:02kugelthe main menu=where you choose the difficulty, i.e. in-game
20:26:00amiconnDid you actually fix the enum types, or just add a high-value sentinel?
20:26:28kugelnot sure right now
20:27:14kugelah, I simply made them int :p
20:28:24amiconnHmm. Just the settings code?
20:28:40 Quit bmbl (Quit: Bye!)
20:29:24kugelamiconn: yes. this is just the settings "fixed"
20:29:48amiconnSo there are probably some more enums hiding in other parts :\
20:30:08amiconnEnums which aren't handled properly wrt pointers, that is
20:31:10amiconnHmm, also booleans of course
20:31:28kugelamiconn: debian has armel prboom packages
20:32:13kugelaww, linux generally uses long enums, doesn't it?
20:32:48*amiconn doesn't know
20:35:07 Join arbingordon [0] (~w@unaffiliated/arbingordon)
20:39:56preglowit seems eabi is only faster for targets that pretend to use hardfloat
20:39:59preglowwe always use softfloat
20:41:27 Join webguest33 [0] (
20:41:51 Join flydutch [0] (
20:43:29 Quit webguest33 (Client Quit)
20:44:35amiconnEABI has a fundamental advantage though: It has clean handling of long calls (inserting veneers if necessary), so we can do away with -mlong-calls and the STATICIRAM hackery
20:46:39preglowyeah, that's the part i'm excited about
20:48:03 Nick dfkt_ is now known as dfkt (~dfkt@unaffiliated/dfkt)
20:54:57amiconnI think that most of the performance differences are not due to eabi vs. old abi, but rather due to the different gcc versions
20:55:25preglowmost definitely
20:55:38preglowbut eabi should give a good size difference
20:56:32amiconnYeah, at least for targets where we're using long calls
20:57:18amiconnrockbox.ipod for Mini G2: old abi 542KB, eabi 486KB
21:04:23 Quit Horscht (Quit: Verlassend)
21:05:14 Quit robin0800 (Remote host closed the connection)
21:05:28CIA-5New commit by amiconn (r25937): Revert r25929. Test have shown that the assembler code is more than 50% faster than the C code both on ARM7TDMI (tested on PP5002 and PP5022) and on ...
21:09:22 Join wincent [0] (
21:10:16 Quit JohannesSM64 (Quit: WeeChat 0.3.3-dev)
21:10:47*kugel votes for long enums and eabi *now*
21:10:59kugelshort enums aren't worth the delay. nobody is going to do the work
21:11:26 Join M3DLG [0] (~M3DLG@
21:11:55kugelaccording linux does the same
21:12:04CIA-5New commit by Buschel (r25938): Minor speed up (+3%) of iPod Video screen updates.
21:13:28kugeldoes anyone disagree?
21:14:45Unhelpfulwhere do we actually still need to do the work?
21:14:48 Quit Xerion (Quit: )
21:15:00amiconnWhat about booleans?
21:15:11Unhelpfulbut yeah, going forward short enums will probably not be good for portability w/ POSIX software
21:15:55kugelamiconn: booleans aren't handled differently AFAIK. their also 1byte with the current abi
21:16:14amiconnThen doom would probably crash
21:16:34kugelI've had sizeof(bool) == 1 a few times
21:16:54kugelit may still be luck that doom doesn't crash
21:17:33kugelI've not heard that eabi changes boolean behavior anywhere
21:17:41amiconnThe doom settings code also assumes sizeof(bool) == sizeof(int). Your settings code patch shows that
21:18:03kugeland doom does not crash with -fno-short-enums, try it yourself
21:18:28kugelI only replaced bool for the sake of safety, I didn't have problems with particular bool variables
21:18:51kugelmy patch shows nothing w.r.t. bool
21:20:33 Join Horscht [0] (~Horscht2@xbmc/user/horscht)
21:20:47 Quit Horscht (Client Quit)
21:21:19*Unhelpful thought bool was "whatever size is convenient/efficient" too, and generally was a platform int?
21:21:46Unhelpfulalso isn't bool in rockbox a typedef?
21:23:58kugelUnhelpful: it's whatever gcc wants it to be
21:24:07Unhelpfulhrm, it's in a compiler-provided header, actually. #define bool _Bool :)
21:24:13 Join Horscht [0] (~Horscht2@xbmc/user/horscht)
21:24:36kugelwe get it from stdbool.h, which is not part if our source but (I think) of the gcc distribtion
21:24:42amiconn-bool rotate_screen=0;
21:24:42amiconn+int rotate_screen=0;
21:24:48amiconnJust one example
21:25:01kugelso what?
21:25:10Unhelpful_Bool must be compiler-defined?
21:25:17kugelI changed it, but it doesn't mean it was problematic
21:25:30kugelUnhelpful: _Bool is a c99 type
21:25:35kugelso I guess yes
21:25:57Buschelhmm, using 24MHz clock on svn builds does not reliably work anymore on PP502x targets. e.g. when switching to 24MHz by hand and trying to measure the fps rate via test_fps plugin.
21:25:58amiconnIt probably is
21:26:03*amiconn needs to grep a bit
21:26:11kugelamiconn: just run doom without changes but -fno-short enums, and see yourself that it runs
21:26:23Buschelthe plugin does not load due to the DMA change which is configured to run at speeds >24 MHz
21:26:37amiconnDid you run it on the Beast or e200 or another portrait screen target?
21:26:45kugele200 and fuze
21:26:59BuschelATA DMA read not working @24 MHz on svn builds -> is this acceptable?
21:27:24kugelBuschel: there's an error. there are no svn builds with 24MHz :)
21:27:45kugelwhich is why it probably is acceptable
21:27:46Buschelkugel: you can enable 24 MHz in the engineering menu
21:27:53kugeloh really?
21:28:09Buschelyes, but of course this a "hands off" menu for standard users
21:29:25amiconnkugel: The reason why I'm asking is the following: Doom doesn't use 'bool' - it uses 'boolean' all over
21:29:47amiconnAnd 'boolean' is an enum (!) when compiling doom as C - see doomtype.h
21:30:04amiconnThe only exception is rotate_screen, because that was added by us
21:30:46 Quit M3DLG (Ping timeout: 240 seconds)
21:30:50kugelwould that matter if bool is 1 byte in the old abi too?
21:30:59kugelhm, I guess it does
21:31:07amiconnIt would
21:31:25amiconnIt could be that we're just lucky and alignment make it work
21:31:34amiconnBut imo we shouldn't rely on that
21:32:13amiconnbool size differs between architectures. It might also differ between arm old abi and eabi
21:32:38amiconnIirc it is 1 byte on SH1 as well (but can be changed with a compiler option) and 4 byte on CF
21:33:24kugelwell, if we do long enums that doom's bool is fixed by that too
21:33:24Hillshum4 is a lot of bytes for dealing with a bool
21:34:56amiconnHmm, no such compiler option
21:34:57kugelisn't it?
21:35:01 Join stoffel [0] (
21:36:06Unhelpfulwe could redef bool == int ourselves ;)
21:37:25amiconnWell if we use 'boolean' instead of 'bool' in doom for rotate_screen *and* use long enums, it would work of course
21:41:43kugelso, let's do it
21:41:53kugelI don't think short enums is a huge advantage anyway
21:42:20amiconnImo it is an advantage
21:42:33kugelyes, but not huge
21:42:39amiconnThe question is just whether we should do it at the same time as the eabi switch
21:42:59kugelwe can of course fix doom later
21:43:02amiconnDid you compare binsize and ram usage with and without short enums?
21:43:58 Nick YPSY is now known as Ypsy (
21:44:23 Quit kugel (Remote host closed the connection)
21:45:44amiconnAh, gcc for osx has a command line switch: -mone-byte-bool
21:45:54amiconnDefault is 4 bytes there, obviously
21:46:10amiconn(PPC only)
21:47:20amiconnOur doom code is quite different from latest prboom
21:48:06amiconnPrboom still has that wrong settings handling though - they extended settings, and replaced the (void*) with (int*)
21:48:21***Saving seen data "./dancer.seen"
21:48:25Unhelpfulcompile with and without short enums and compare? easy enough to do.
21:49:27 Part watto1
21:55:51amiconnI'm just trying it, and found that it's not that simple
21:55:55 Join Xerion [0] (
21:56:11amiconnFor this to work, libgcc needs to be built using long enums as well
21:57:18amiconnOtherwise it throws a lot of warnings, and the result will be inconsistent and probably crash
21:57:39 Quit wombat23 (Ping timeout: 240 seconds)
21:58:18 Quit n17ikh (Ping timeout: 276 seconds)
22:03:36 Join Xerion_ [0] (
22:03:39 Quit Xerion (Ping timeout: 265 seconds)
22:03:48 Nick Xerion_ is now known as Xerion (
22:04:11 Quit joeyg (Quit: WeeChat 0.3.0)
22:05:43 Join n17ikh [0] (
22:06:20amiconnHmm, if this preliminary result can be trusted, -fno-short-enums reduces binsize a tiny bit (tested with a beast build)
22:07:21amiconnJust 80 bytes. RAM usage shrinks a little less (64 bytes), meaning 16 bytes bss increase
22:08:03*amiconn thinks we could indeed live with that, but and/or our arm patch needs fxing/ extension for -fno-short-enums
22:09:29amiconnBuschel: Btw, alternating registers shouldn't matter at all on PP - ARM7 has no interlocks like this
22:10:13amiconnIt's interesting though that 2 regs/ copy instead of 4 regs is faster
22:12:43Buschelamiconn: the idea was to read next registers during the both are still written. this is the outcome
22:13:14amiconnDid you try reusing the same two registers? It should end up exactly the same
22:15:43BuschelI am not 100% sure and need to re-test
22:17:48Buschelbuilding will take some time...
22:23:09Buschelamiconn: any idea why this is faster?
22:23:18amiconnThe effect might indeed be writing in the background - but if it is, it's a memory controller thing. The core is synchronous
22:24:52 Quit Hillshum (Ping timeout: 264 seconds)
22:25:19 Quit stoffel (Remote host closed the connection)
22:25:41 Quit domonoky1 (Read error: Connection reset by peer)
22:25:55Buschelalso: when reading 4 regs and writing them and then read other 4 regs and writing then (so: 4:4 instead of 2:2:2:2) is exactly as fast as svn.
22:27:29Buschelwhat is a hint towards your expectation that using the same 2 regs will be as fast as svn with my change
22:29:26*amiconn wonders whether Buschel also tried 3-3-2
22:29:41 Join Hillshum [0] (
22:29:51Buschelamiconn: I tried. Faster than 4:4 but slower than 2:2:2:2
22:30:12Buschelamiconn: btw, using the same two registers is the same than alternating them
22:30:17Buschelspeed wise
22:30:37mtIt seems for now I'll use AVCodecContext to hold the data for the wma pro decoder ...
22:34:30amiconnhmm, interesting indeed
22:35:58CIA-5New commit by Buschel (r25939): No need to use alternating registers for dual register read/write sequence. Correct comment.
22:36:23Buschelr25939 to avoid misunderstanding of the code/changes
22:37:29amiconnNow you could also save the saving of r4 and lr, for a tiny bit of extra speedup
22:38:12amiconnUse r12 instead of lr for the data port
22:38:53amiconnOh, of course you'd need to fix up the 4-word case as well
22:39:16BuschelI remember this to be slower for the 1:4 screen test.
22:40:30 Nick Ypsy is now known as YPSY (
22:43:25amiconnThat's weird - why would the same change cause a slowdown in the 4-word case if it causes a speedup in the main loop?
22:44:31amiconnOf course too many conditional instructions are bad - even if the condition isn't met, they will act like a 'nop' i.e. consume one cycle each
22:45:19Buschelbecause it will not peform the load/store and go just walk through (width/2 = 160, 160%16 = 0)
22:45:41*amiconn thinks that the tail can be optimized with a computed branch
22:45:41Buschel*just walk through
22:45:43 Join apoelstra [0] (
22:46:00 Join Ipsi [0] (
22:46:28 Nick apoelstra is now known as joeyg (
22:46:43Buschelamiconn: is the lcd updated more in the 1:1 fassion or in updating non-1:1-rectangles?
22:47:23Buschel(weird sentence)
22:48:08*amiconn doesn't understand it
22:48:20Buschel:o) let me try again
22:49:05Buschelwhen using the gui -> are most of the lcd updates fullscreen or part screen?
22:49:27Buschel(hopefully better to understand)
22:49:46amiconnI don't know.
22:50:10amiconnThere are probably all sorts of partial updates, depending on the theme, plus some fullscreen ones
22:55:34amiconnpreglow: Are you planning to do something about the lack of arm asm for 24 bit flac?
22:55:49Buschelgood night!
22:55:53 Quit Buschel ()
22:58:15 Join stripwax [0] (
23:12:55 Quit DerPapst (Quit: Leaving.)
23:13:44pixelmatest_mem is weird at least on my M5 - the "boosted", "unboosted" doesn't seem to mean anything if I believe the other numbers (clock and DRAM/IRAM rd and wr - which change in a way that make sense)
23:14:14pixelmaand sometimes it just exits without me doing anything and I don't see a pattern
23:15:47 Join M3DLG [0] (
23:23:04 Quit Schmogel (Quit: Miranda IM! Smaller, Faster, Easier.
23:30:20 Quit petur (Remote host closed the connection)
23:33:10 Join wodz [0] (
23:38:03wodzamiconn: Could You look at I think it should fix unaligned reads
23:39:36 Quit Xerion (Quit: )
23:48:25***Saving seen data "./dancer.seen"
23:50:02wodzIn my opinion test_mem should use memcpy/memset to test memory operation speed. It can include also tests for DRAM<->IRAM copy (but don't know if this types of transfers are in use in rockbox)
23:50:47 Quit M3DLG (Read error: Connection reset by peer)
23:56:37 Join fml [0] (
23:57:34 Join bluebro [0] (~4d2c4024@gateway/web/freenode/x-weofialziviwrkbw)
23:57:58fmlA note for Blue_Dude: now that the possible hotkey options are explicitly listed in the settings, I don't see the need for the flags HOTKEY_CTX_xxx. They can be dropped IMO.
23:58:05 Quit bluebro (Changing host)
23:58:05 Join bluebro [0] (~4d2c4024@rockbox/developer/bluebrother)
23:58:28 Quit fml (Client Quit)

Previous day | Next day